summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--AUTHORS1
-rw-r--r--COPYING340
-rw-r--r--ChangeLog1
-rw-r--r--HACKING298
-rw-r--r--MAINTAINERS43
-rw-r--r--Makefile.am7
-rw-r--r--NEWS1
-rw-r--r--README473
-rwxr-xr-xautogen.sh25
-rw-r--r--configure.in582
-rwxr-xr-xdepcomp630
-rw-r--r--distro/archlinux/PKGBUILD40
-rw-r--r--distro/archlinux/mate-window-manager.install17
-rw-r--r--distro/archlinux/metacity-restartstyle.patch139
-rwxr-xr-xdistro/ubuntu/build35
-rwxr-xr-xdistro/ubuntu/postinst9
-rwxr-xr-xdistro/ubuntu/preinst8
-rwxr-xr-xdistro/ubuntu/prerm11
-rw-r--r--doc/Makefile.am4
-rw-r--r--doc/Makefile.in609
-rw-r--r--doc/code-overview.txt185
-rw-r--r--doc/creating_themes/C/calstblx.dtd215
-rw-r--r--doc/creating_themes/C/creating-marco-themes.xml286
-rw-r--r--doc/creating_themes/C/dbcentx.mod384
-rw-r--r--doc/creating_themes/C/dbgenent.mod41
-rw-r--r--doc/creating_themes/C/dbhierx.mod2193
-rw-r--r--doc/creating_themes/C/dbnotnx.mod101
-rw-r--r--doc/creating_themes/C/dbpoolx.mod8701
-rw-r--r--doc/creating_themes/C/docbookx.dtd170
-rw-r--r--doc/creating_themes/C/htmltblx.mod245
-rw-r--r--doc/creating_themes/C/soextblx.dtd321
-rw-r--r--doc/creating_themes/Makefile.am24
-rw-r--r--doc/creating_themes/Makefile.in981
-rw-r--r--doc/dialogs.txt32
-rw-r--r--doc/how-to-get-focus-right.txt253
-rw-r--r--doc/man/Makefile.am4
-rw-r--r--doc/man/Makefile.in489
-rw-r--r--doc/man/marco-message.160
-rw-r--r--doc/man/marco-theme-viewer.143
-rw-r--r--doc/man/marco-window-demo.125
-rw-r--r--doc/man/marco.160
-rw-r--r--doc/marco-theme.dtd273
-rw-r--r--doc/theme-format.txt330
-rw-r--r--po/ChangeLog4964
-rw-r--r--po/LINGUAS95
-rw-r--r--po/Makefile.in.in217
-rw-r--r--po/POTFILES.in32
-rw-r--r--po/POTFILES.skip2
-rw-r--r--po/am.po2695
-rw-r--r--po/ar.po3571
-rw-r--r--po/as.po3706
-rw-r--r--po/ast.po2472
-rw-r--r--po/az.po3172
-rw-r--r--po/be.po2403
-rw-r--r--po/[email protected]3877
-rw-r--r--po/bg.po2420
-rw-r--r--po/bn.po3570
-rw-r--r--po/bn_IN.po2404
-rw-r--r--po/br.po2058
-rw-r--r--po/bs.po3263
-rw-r--r--po/ca.po3947
-rw-r--r--po/[email protected]3946
-rw-r--r--po/crh.po2614
-rw-r--r--po/cs.po2370
-rw-r--r--po/cy.po3804
-rw-r--r--po/da.po2679
-rw-r--r--po/de.po3833
-rw-r--r--po/dz.po2576
-rw-r--r--po/el.po2486
-rw-r--r--po/[email protected]2291
-rw-r--r--po/en_CA.po3631
-rw-r--r--po/en_GB.po3776
-rw-r--r--po/eo.po2190
-rw-r--r--po/es.po3818
-rw-r--r--po/et.po1942
-rw-r--r--po/eu.po2382
-rw-r--r--po/fa.po3236
-rw-r--r--po/fi.po2402
-rw-r--r--po/fr.po2489
-rw-r--r--po/ga.po2169
-rw-r--r--po/gl.po2426
-rw-r--r--po/gu.po2339
-rw-r--r--po/ha.po3599
-rw-r--r--po/he.po3736
-rw-r--r--po/hi.po2448
-rw-r--r--po/hr.po3679
-rw-r--r--po/hu.po2422
-rw-r--r--po/hy.po2853
-rw-r--r--po/id.po2035
-rw-r--r--po/ig.po3513
-rw-r--r--po/is.po2720
-rw-r--r--po/it.po2511
-rw-r--r--po/ja.po3684
-rw-r--r--po/ka.po3417
-rw-r--r--po/kn.po2453
-rw-r--r--po/ko.po2345
-rw-r--r--po/ku.po2383
-rw-r--r--po/la.po2182
-rw-r--r--po/lt.po3962
-rw-r--r--po/lv.po2416
-rw-r--r--po/mai.po2240
-rw-r--r--po/mg.po3484
-rw-r--r--po/mk.po3610
-rw-r--r--po/ml.po2311
-rw-r--r--po/mn.po3312
-rw-r--r--po/mr.po2311
-rw-r--r--po/ms.po2754
-rw-r--r--po/nb.po2325
-rw-r--r--po/nds.po2002
-rw-r--r--po/ne.po3338
-rw-r--r--po/nl.po2481
-rw-r--r--po/nn.po3809
-rw-r--r--po/oc.po2462
-rw-r--r--po/or.po2475
-rw-r--r--po/pa.po3537
-rw-r--r--po/pl.po2436
-rw-r--r--po/pt.po3917
-rw-r--r--po/pt_BR.po3916
-rw-r--r--po/ro.po2418
-rw-r--r--po/ru.po2415
-rw-r--r--po/rw.po3240
-rw-r--r--po/si.po2987
-rw-r--r--po/sk.po3822
-rw-r--r--po/sl.po2078
-rw-r--r--po/sq.po3999
-rw-r--r--po/sr.po3833
-rw-r--r--po/[email protected]3833
-rw-r--r--po/sv.po2082
-rw-r--r--po/ta.po2331
-rw-r--r--po/te.po2332
-rw-r--r--po/th.po3546
-rw-r--r--po/tk.po2679
-rw-r--r--po/tr.po3735
-rw-r--r--po/uk.po2401
-rw-r--r--po/vi.po3752
-rw-r--r--po/wa.po2715
-rw-r--r--po/xh.po3294
-rw-r--r--po/yo.po3493
-rw-r--r--po/zh_CN.po2330
-rw-r--r--po/zh_HK.po3396
-rw-r--r--po/zh_TW.po3510
-rw-r--r--rationales.txt79
-rw-r--r--src/50-marco-desktop-key.xml.in20
-rw-r--r--src/50-marco-key.xml.in269
-rw-r--r--src/Makefile.am223
-rw-r--r--src/compositor/compositor-private.h54
-rw-r--r--src/compositor/compositor-xrender.c3078
-rw-r--r--src/compositor/compositor-xrender.h31
-rw-r--r--src/compositor/compositor.c159
-rw-r--r--src/core/async-getprop.c680
-rw-r--r--src/core/async-getprop.h67
-rw-r--r--src/core/atomnames.h166
-rw-r--r--src/core/bell.c397
-rw-r--r--src/core/bell.h108
-rw-r--r--src/core/boxes.c1926
-rw-r--r--src/core/constraints.c1382
-rw-r--r--src/core/constraints.h48
-rw-r--r--src/core/core.c779
-rw-r--r--src/core/delete.c266
-rw-r--r--src/core/display-private.h513
-rw-r--r--src/core/display.c5355
-rw-r--r--src/core/edge-resistance.c1277
-rw-r--r--src/core/edge-resistance.h48
-rw-r--r--src/core/effects.c735
-rw-r--r--src/core/effects.h170
-rw-r--r--src/core/errors.c288
-rw-r--r--src/core/eventqueue.c184
-rw-r--r--src/core/eventqueue.h40
-rw-r--r--src/core/frame-private.h88
-rw-r--r--src/core/frame.c421
-rw-r--r--src/core/group-private.h43
-rw-r--r--src/core/group-props.c234
-rw-r--r--src/core/group-props.h37
-rw-r--r--src/core/group.c274
-rw-r--r--src/core/group.h53
-rw-r--r--src/core/iconcache.c849
-rw-r--r--src/core/iconcache.h79
-rw-r--r--src/core/keybindings.c3352
-rw-r--r--src/core/keybindings.h60
-rw-r--r--src/core/main.c673
-rw-r--r--src/core/marco-Xatomtype.h136
-rw-r--r--src/core/place.c932
-rw-r--r--src/core/place.h37
-rw-r--r--src/core/prefs.c2794
-rw-r--r--src/core/schema-bindings.c195
-rw-r--r--src/core/screen-private.h226
-rw-r--r--src/core/screen.c2815
-rw-r--r--src/core/session.c1831
-rw-r--r--src/core/session.h91
-rw-r--r--src/core/stack.c1661
-rw-r--r--src/core/stack.h402
-rw-r--r--src/core/testasyncgetprop.c497
-rw-r--r--src/core/testboxes.c1416
-rw-r--r--src/core/util.c641
-rw-r--r--src/core/window-private.h640
-rw-r--r--src/core/window-props.c1553
-rw-r--r--src/core/window-props.h129
-rw-r--r--src/core/window.c8178
-rw-r--r--src/core/workspace.c1038
-rw-r--r--src/core/workspace.h113
-rw-r--r--src/core/xprops.c1238
-rw-r--r--src/include/all-keybindings.h386
-rw-r--r--src/include/boxes.h290
-rw-r--r--src/include/common.h300
-rw-r--r--src/include/compositor.h76
-rw-r--r--src/include/core.h208
-rw-r--r--src/include/display.h48
-rw-r--r--src/include/errors.h51
-rw-r--r--src/include/frame.h31
-rw-r--r--src/include/main.h43
-rw-r--r--src/include/prefs.h233
-rw-r--r--src/include/resizepopup.h47
-rw-r--r--src/include/screen.h48
-rw-r--r--src/include/tabpopup.h67
-rw-r--r--src/include/types.h31
-rw-r--r--src/include/ui.h209
-rw-r--r--src/include/util.h136
-rw-r--r--src/include/window.h39
-rw-r--r--src/include/xprops.h227
-rw-r--r--src/libmarco-private.pc.in12
-rw-r--r--src/marco-wm.desktop.in20
-rw-r--r--src/marco.desktop.in17
-rw-r--r--src/marco.schemas.in.in573
-rw-r--r--src/themes/ClearlooksRe/metacity-theme-1.xml1013
-rw-r--r--src/themes/Dopple-Left/metacity-theme-1.xml1135
-rw-r--r--src/themes/Dopple/metacity-theme-1.xml1135
-rw-r--r--src/themes/DustBlue/button_close_normal.pngbin0 -> 3830 bytes
-rw-r--r--src/themes/DustBlue/button_close_prelight.pngbin0 -> 1393 bytes
-rw-r--r--src/themes/DustBlue/button_close_pressed.pngbin0 -> 4087 bytes
-rw-r--r--src/themes/DustBlue/button_max_normal.pngbin0 -> 3185 bytes
-rw-r--r--src/themes/DustBlue/button_max_prelight.pngbin0 -> 1326 bytes
-rw-r--r--src/themes/DustBlue/button_max_pressed.pngbin0 -> 4029 bytes
-rw-r--r--src/themes/DustBlue/button_menu_normal.pngbin0 -> 3450 bytes
-rw-r--r--src/themes/DustBlue/button_menu_prelight.pngbin0 -> 4041 bytes
-rw-r--r--src/themes/DustBlue/button_menu_pressed.pngbin0 -> 4065 bytes
-rw-r--r--src/themes/DustBlue/button_min_normal.pngbin0 -> 3152 bytes
-rw-r--r--src/themes/DustBlue/button_min_prelight.pngbin0 -> 1413 bytes
-rw-r--r--src/themes/DustBlue/button_min_pressed.pngbin0 -> 4093 bytes
-rw-r--r--src/themes/DustBlue/menu.pngbin0 -> 164 bytes
-rw-r--r--src/themes/DustBlue/metacity-theme-1.xml409
-rw-r--r--src/themes/Makefile.am53
-rw-r--r--src/themes/Spidey-Left/metacity-theme-1.xml1086
-rw-r--r--src/themes/Spidey/metacity-theme-1.xml1086
-rw-r--r--src/themes/Splint-Left/metacity-theme-1.xml802
-rw-r--r--src/themes/Splint/metacity-theme-1.xml802
-rw-r--r--src/themes/WinMe/close_normal.pngbin0 -> 256 bytes
-rw-r--r--src/themes/WinMe/close_normal_small.pngbin0 -> 223 bytes
-rw-r--r--src/themes/WinMe/close_pressed.pngbin0 -> 256 bytes
-rw-r--r--src/themes/WinMe/close_pressed_small.pngbin0 -> 219 bytes
-rw-r--r--src/themes/WinMe/maximize_normal.pngbin0 -> 220 bytes
-rw-r--r--src/themes/WinMe/maximize_pressed.pngbin0 -> 241 bytes
-rw-r--r--src/themes/WinMe/metacity-theme-1.xml375
-rw-r--r--src/themes/WinMe/minimize_normal.pngbin0 -> 213 bytes
-rw-r--r--src/themes/WinMe/minimize_pressed.pngbin0 -> 216 bytes
-rw-r--r--src/themes/WinMe/restore_normal.pngbin0 -> 235 bytes
-rw-r--r--src/themes/WinMe/restore_pressed.pngbin0 -> 257 bytes
-rw-r--r--src/themes/eOS/close.pngbin0 -> 1031 bytes
-rw-r--r--src/themes/eOS/close_unfocused.pngbin0 -> 775 bytes
-rw-r--r--src/themes/eOS/close_unfocused_over.pngbin0 -> 1031 bytes
-rw-r--r--src/themes/eOS/maximize.pngbin0 -> 845 bytes
-rw-r--r--src/themes/eOS/maximize_unfocused.pngbin0 -> 775 bytes
-rw-r--r--src/themes/eOS/maximize_unfocused_over.pngbin0 -> 845 bytes
-rw-r--r--src/themes/eOS/menu.pngbin0 -> 775 bytes
-rw-r--r--src/themes/eOS/menu_prelight.pngbin0 -> 755 bytes
-rw-r--r--src/themes/eOS/metacity-theme-1.xml537
-rw-r--r--src/themes/eOS/minimize.pngbin0 -> 800 bytes
-rw-r--r--src/themes/eOS/minimize_unfocused.pngbin0 -> 775 bytes
-rw-r--r--src/themes/eOS/minimize_unfocused_over.pngbin0 -> 800 bytes
-rw-r--r--src/themes/eOS/trough_left.pngbin0 -> 322 bytes
-rw-r--r--src/themes/eOS/trough_left_unfocused.pngbin0 -> 324 bytes
-rw-r--r--src/themes/eOS/trough_middle.pngbin0 -> 188 bytes
-rw-r--r--src/themes/eOS/trough_middle_unfocused.pngbin0 -> 195 bytes
-rw-r--r--src/themes/eOS/trough_right.pngbin0 -> 330 bytes
-rw-r--r--src/themes/eOS/trough_right_unfocused.pngbin0 -> 335 bytes
-rw-r--r--src/themes/eOS/unmaximize.pngbin0 -> 845 bytes
-rw-r--r--src/themes/eOS/unmaximize_unfocused.pngbin0 -> 775 bytes
-rw-r--r--src/themes/eOS/unmaximize_unfocused_over.pngbin0 -> 845 bytes
-rw-r--r--src/tools/Makefile.am33
-rw-r--r--src/tools/marco-grayscale.c109
-rw-r--r--src/tools/marco-mag.c278
-rw-r--r--src/tools/marco-message.c187
-rw-r--r--src/tools/marco-window-demo.c1016
-rw-r--r--src/tools/marco-window-demo.pngbin0 -> 3453 bytes
-rw-r--r--src/ui/draw-workspace.c229
-rw-r--r--src/ui/draw-workspace.h61
-rw-r--r--src/ui/fixedtip.c133
-rw-r--r--src/ui/fixedtip.h69
-rw-r--r--src/ui/frames.c2940
-rw-r--r--src/ui/frames.h163
-rw-r--r--src/ui/gradient.c842
-rw-r--r--src/ui/gradient.h65
-rw-r--r--src/ui/menu.c509
-rw-r--r--src/ui/menu.h51
-rw-r--r--src/ui/metaaccellabel.c456
-rw-r--r--src/ui/metaaccellabel.h106
-rw-r--r--src/ui/preview-widget.c601
-rw-r--r--src/ui/preview-widget.h87
-rw-r--r--src/ui/resizepopup.c217
-rw-r--r--src/ui/tabpopup.c967
-rw-r--r--src/ui/testgradient.c336
-rw-r--r--src/ui/theme-parser.c4212
-rw-r--r--src/ui/theme-parser.h32
-rw-r--r--src/ui/theme-viewer.c1338
-rw-r--r--src/ui/theme.c6652
-rw-r--r--src/ui/theme.h1190
-rw-r--r--src/ui/themewidget.c183
-rw-r--r--src/ui/themewidget.h78
-rw-r--r--src/ui/ui.c1117
-rw-r--r--src/wm-tester/Makefile.am25
-rw-r--r--src/wm-tester/Makefile.in574
-rw-r--r--src/wm-tester/focus-window.c37
-rw-r--r--src/wm-tester/main.c245
-rw-r--r--src/wm-tester/test-gravity.c308
-rw-r--r--src/wm-tester/test-resizing.c257
-rw-r--r--src/wm-tester/test-size-hints.c136
315 files changed, 386687 insertions, 0 deletions
diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 00000000..9971ab08
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1 @@
+Havoc Pennington <[email protected]>
diff --git a/COPYING b/COPYING
new file mode 100644
index 00000000..d60c31a9
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/ChangeLog b/ChangeLog
new file mode 100644
index 00000000..8b137891
--- /dev/null
+++ b/ChangeLog
@@ -0,0 +1 @@
+
diff --git a/HACKING b/HACKING
new file mode 100644
index 00000000..e669b7a1
--- /dev/null
+++ b/HACKING
@@ -0,0 +1,298 @@
+Intro...
+
+Window managers have a few ways in which they are significantly different
+from other applications. This file, combined with the code overview in
+doc/code-overview.txt, should hopefully provide a series of relatively
+quick pointers (hopefully only a few minutes each) to some of the places
+one can look to orient themselves and get started. Some of this will be
+general to window managers on X, much will be specific to Marco, and
+there's probably some information that's common to programs in general but
+is nonetheless useful.
+
+Overview
+ Administrative issues
+ Minimal Building/Testing Environment
+ Relevant standards and X properties
+ Debugging and testing
+ Debugging logs
+ Adding information to the log
+ Valgrind
+ Testing Utilities
+ Technical gotchas to keep in mind
+ Other important reading
+ Extra reading
+ Ideas for tasks to work on
+
+
+Administrative issues
+ Don't commit substantive code in here without asking [email protected].
+ Adding translations, no-brainer typo fixes, etc. is fine.
+
+ The code could use cleanup in a lot of places, feel free to do so.
+
+ See http://developer.gnome.org/dotplan/for_maintainers.html for
+ information on how to make a release. The only difference from those
+ instructions is that the minor version number of a Marco release
+ should always be a number from the Fibonacci sequence.
+
+Minimal Building/Testing Environment
+ You do not need to _install_ a development version of Marco to
+ build, run and test it; you can run it from some temporary
+ directory. Also, you do not need to build all of Mate in order to
+ build a development version of Marco -- odds are, you may be able
+ to build marco from CVS without building any other modules.
+
+ As long as you have gtk+ >= 2.10 and MateConf with your distro (gtk+ >=
+ 2.6 if you manually revert the change from bug 348633), you should
+ be able to install your distro's development packages
+ (e.g. gtk2-devel, MateConf2-devel, startup-notification-devel on
+ Fedora; also, remember to install the mate-common package which is
+ needed for building cvs versions of Mate modules like Marco) as
+ well as the standard development tools (gcc, autoconf, automake,
+ pkg-config, intltool, and libtool) and be ready to build and test
+ Marco. Steps to do so:
+
+ $ svn checkout http://svn.gnome.org/svn/marco/trunk marco
+ $ cd marco
+ $ ./autogen.sh --prefix /usr
+ $ make
+ $ ./src/marco --replace
+
+ Again, note that you do not need to run 'make install'.
+
+Relevant standards and X properties
+ There are two documents that describe some basics about how window
+ managers should behave: the ICCCM (Inter-Client Communication Conventions
+ Manual) and EWMH (Extended Window Manager Hints). You can find these at
+ the following locations:
+ ICCCM - http://tronche.com/gui/x/icccm/
+ EWMH - :pserver:[email protected]:/cvs
+ The ICCCM is usually available in RPM or DEB format as well. There is
+ actually an online version of the EWMH, but it is almost always woefully
+ out of date. Just get it from cvs with these commands (the backslash
+ means include the stuff from the next line):
+ cvs -d :pserver:[email protected]:/cvs/icccm-extensions login
+ cvs -d :pserver:[email protected]:/cvs/icccm-extensions \
+ checkout wm-spec
+
+ DO NOT GO AND READ THOSE THINGS. THEY ARE REALLY, REALLY BORING.
+
+ If you do, you'll probably end up catching up on your sleep instead of
+ hacking on Marco. ;-) Instead, just look at the table of contents and
+ glance at a page or two to get an idea of what's in there. Then only
+ refer to it if you see something weird in the code and you don't know
+ what it is but has some funny looking name like you see in one of those
+ two documents.
+
+ You can refer to the COMPLIANCE file for additional information on these
+ specifications and Marco's compliance therewith.
+
+ One of the major things those documents cover that are useful to learn
+ about immediately are X properties. The right way to learn about those,
+ though, is through hand on experimentation with the xprop command (and
+ then look up things you find from xprop in those two manuals if you're
+ curious enough). First, try running
+ xprop
+ in a terminal and click on one of the windows on your screen. That gives
+ you the x properties for that window. Look through them and get a basic
+ idea of what's there for kicks. Note that you can get rid of some of the
+ verboseness by grepping out the _NET_WM_ICON stuff, i.e.
+ xprop | grep -v _NET_WM_ICON
+ Next, try running
+ xprop -root
+ in a terminal. There's all the properties of the root window (which you
+ can think of as the "main" Xserver window). You can also manually
+ specify individual windows that you want the properties of with
+ xprop -id <id>
+ if you know the id of the window in question. You can get the id of a
+ given window by either running xwininfo, e.g.
+ xwininfo | grep "Window id" | cut -f 4 -d ' '
+ or by looking at the _NET_CLIENT_STACKING property of the root
+ window. Finally, it can also be useful to add "-spy" (without the
+ quotes) to the xprop command to get it to continually monitor that
+ window and report any changes to you.
+
+Debugging information
+ Trying to run a window manager under a typical debugger, such as gdb,
+ unfortunately just doesn't work very well. So, we have to resort to
+ other methods.
+
+ Debugging logs
+
+ First, note that you can start a new version of marco to replace the
+ existing one by running
+ marco --replace
+ (which also comes in handy in the form "./src/marco --replace" when
+ trying to quickly test a small change while hacking on marco without
+ doing a full "make install", though I'm going off topic...) This will
+ allow you to see any warnings printed at the terminal. Sometimes it's
+ useful to have these directed to a logfile instead, which you can do by
+ running
+ MARCO_USE_LOGFILE=1 marco --replace
+ The logfile it uses will be printed in the terminal. Sometimes, it's
+ useful to get more information than just warnings. You can set
+ MARCO_VERBOSE to do that, like so:
+ MARCO_VERBOSE=1 MARCO_USE_LOGFILE=1 marco --replace
+ (note that MARCO_VERBOSE=1 can be problematic without
+ MARCO_USE_LOGFILE=1; avoid it unless running in from something that
+ won't be managed by the new Marco--see bug 305091 for more details).
+ There are also other flags, such as MARCO_DEBUG, most of which I
+ haven't tried and don't know what they do. Go to the source code
+ directory and run
+ grep "MARCO_" * | grep getenv
+ to find out what the other ones are.
+
+ Adding information to the log
+
+ Since we can't single step with a debugger, we often have to fall back to
+ the primitive method of getting information we want to know: adding
+ "print" statements. Marco has a fairly structured way to do this,
+ using the functions meta_warning, meta_topic, and meta_verbose. All
+ three have the same basic format as printf, except that meta_topic also
+ takes a leading enumeration parameter to specify the type of message
+ being shown (makes it easier for grepping in a verbose log). You'll find
+ tons of examples in the source code if you need them; just do a quick
+ grep or look in most any file. Note that meta_topic and meta_verbose
+ messages only appear if verbosity is turned on. I tend to frequently add
+ temporary meta_warning statements (or switch meta_topic or meta_verbose
+ ones to meta_warning ones) and then undo the changes once I've learned
+ the info that I needed.
+
+ There is also a meta_print_backtrace (which again is only active if
+ verbosity is turned on) that can also be useful if you want to learn how
+ a particular line of code gets called. And, of course, there's always
+ g_assert if you want to make sure some section isn't executed (or isn't
+ executed under certain conditions).
+
+ Valgrind
+
+ Valgrind is awesome for finding memory leaks or corruption and
+ uninitialized variables. But I also tend to use it in a non-traditional
+ way as a partial substitute for a normal debugger: it can provide me with
+ a stack trace of where marco is crashing if I made a change that
+ caused it to do so, which is one of the major uses of debuggers. (And,
+ what makes it cooler than a debugger is that there will also often be
+ warnings pinpointing the cause of the crash from either some kind of
+ simple memory corruption or an uninitialized variable). Sometimes, when
+ I merely want to know what is calling a particular function I'll just
+ throw in an "int i; printf("%d\n", i);" just because valgrind will give
+ me a full stacktrace whenever it sees that uninitialized variable being
+ used (yes, I could use meta_print_backtrace, but that means I have to
+ turn verbosity on).
+
+ To run marco under valgrind, use options typical for any Mate
+ program, such as
+ valgrind --log-file=marco.log --tool=memcheck --num-callers=48 \
+ --leak-check=yes --leak-resolution=high --show-reachable=yes \
+ ./src/marco --replace
+ where, again, the backslashes mean to join all the stuff on the following
+ line with the previous one.
+
+ However, there is a downside. Things run a little bit slowly, and it
+ appears that you'll need about 1.5GB of ram, which unfortunately prevents
+ most people from trying this.
+
+ Testing Utilities
+
+ src/run-marco.sh
+ The script src/run-marco.sh is useful to hack on the window manager.
+ It runs marco in an Xnest. e.g.:
+ CLIENTS=3 ./run-marco.sh
+ or
+ DEBUG=memprof ./run-marco.sh
+ or
+ DEBUG_TEST=1 ./run-marco-sh
+ or whatever.
+
+ marco-message
+ The tool marco-message can be used as follows:
+ marco-message reload-theme
+ marco-message restart
+ marco-message enable-keybindings
+ marco-message disable-keybindings
+ The first of these is useful for testing themes, the second is just
+ another way (besides the --restart flag to marco itself) of
+ restarting marco, and the third is useful for testing Marco when
+ running it under an Xnest (typically, the Marco under the Xnest
+ wouldn't get keybinding notifications--making keyboard navigation not
+ work--but if you disable the keybindings for the global Marco then
+ the Marco under the Xnest can then get those keybinding notifications).
+
+ marco-window-demo
+ marco-window-demo is good for trying behavior of various kinds
+ of window without launching a full desktop.
+
+Technical gotchas to keep in mind
+ Files that include gdk.h or gtk.h are not supposed to include
+ display.h or window.h or other core files. Files in the core
+ (display.[hc], window.[hc]) are not supposed to include gdk.h or
+ gtk.h. Reasons:
+
+ "Basically you don't want GDK most of the time. It adds
+ abstractions that cause problems, because they aren't designed to
+ be used in a WM where we do weird stuff (display grabs, and just
+ being the WM). At best GDK adds inefficiency, at worst it breaks
+ things in weird ways where you have to be a GDK guru to figure
+ them out. Owen also told me that they didn't want to start adding
+ a lot of hacks to GDK to let a WM use it; we both agreed back in
+ the mists of time that marco would only use it for the "UI"
+ bits as it does.
+
+ Having the split in the source code contains and makes very clear
+ the interface between the WM and GDK/GTK. This keeps people from
+ introducing extra GDK/GTK usage when it isn't needed or
+ appropriate. Also, it speeds up the compilation a bit, though this
+ was perhaps more relevant 5 years ago than it is now.
+
+ There was also a very old worry that the GDK stuff might have to
+ be in a separate process to work right; that turned out to be
+ untrue. Though who knows what issues the CM will introduce."
+
+ Remember that strings stored in X properties are not in UTF-8, and they
+ have to end up in UTF-8 before we try putting them through Pango.
+
+ If you make any X request involving a client window, you have to
+ meta_error_trap_push() around the call; this is not necessary for X
+ requests on the frame windows.
+
+ Remember that not all windows have frames, and window->frame can be NULL.
+
+Other important reading & where to get started
+ Extra reading
+
+ There are some other important things to read to get oriented as well.
+ These are:
+ http://pobox.com/~hp/features.html
+ rationales.txt
+ doc/code-overview.txt
+
+ It pays to read http://pobox.com/~hp/features.html in order
+ to understand the philosophy of Marco.
+
+ The rationales.txt file has two things: (1) a list of design choices with
+ links in the form of bugzilla bugs that discuss the issue, and (2) a list
+ outstanding bug categories, each of which is tracked by a particular
+ tracker bug in bugzilla from which you can find several closely related
+ bug reports.
+
+ doc/code-overview.txt provides a fairly good overview of the code,
+ including coverage of the function of the various files, the main
+ structures and their relationships, and places to start looking in the
+ code tailored to general categories of tasks.
+
+ Ideas for tasks to work on
+
+ There are a variety of things you could work on in the code. You may
+ have ideas of your own, but in case you don't, let me provide a list of
+ ideas you could choose from:
+
+ If you're ambitious, there's a list of things Havoc made that he'd really
+ like to see tackled, which you can find at
+ http://log.ometer.com/2004-05.html. Be sure to double check with someone
+ to make sure the item is still relevant if you're interested in one of
+ these. Another place to look for ideas, of course, is bugzilla. One can
+ just do queries and look for things that look fixable.
+
+ However, perhaps the best way of getting ideas of related tasks to work
+ on, is to look at the second half of the rationales.txt file, which tries
+ to group bugs by type.
diff --git a/MAINTAINERS b/MAINTAINERS
new file mode 100644
index 00000000..07873d66
--- /dev/null
+++ b/MAINTAINERS
@@ -0,0 +1,43 @@
+Currently active maintainers
+--------------------------------
+
+Elijah Newren
+Email: newren gmail com
+Userid: newren
+
+ - Usually won't touch the theme bugs (isn't interested) or the
+ compositor (until open source nvidia drivers are up to snuff).
+ Tends to be most interested in libwnck/gtk interactions, focus
+ issues, constraints problems, and raising/stacking, but works on
+ just about anything other than themes and the compositor.
+
+Thomas Thurman
+Email: thomas thurman org uk
+Userid: tthurman
+
+ - Responsible for all theme bugs and the compositor (thank goodness
+ Thomas got involved, eh?). I'm sure he'll replace this sentence
+ with his interests when he reads it. ;-)
+
+
+Semi-active maintainers
+--------------------------------
+
+Havoc Pennington
+Email: hp redhat com
+Userid: hp
+ - Original author. Doesn't patch marco anymore, but is active in
+ answering questions, responding to bugs, providing very helpful
+ suggestions and insight, and even assisting with debugging.
+
+
+Important historical figureheads
+--------------------------------
+
+Rob Adams (readams readams net)
+ - Was the main maintainer of marco for a while; particular areas
+ of focus included xinerama, placement, and an older version of the
+ constraints code. Still responds to bugs every once in a while.
+
+Søren Sandmann (sandmann redhat com)
+ - Wrote most of the current compositing manager code + libcm
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 00000000..725c69c9
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,7 @@
+
+SUBDIRS=src po doc
+
+EXTRA_DIST = HACKING MAINTAINERS rationales.txt \
+ intltool-extract.in intltool-merge.in intltool-update.in
+
+DISTCLEANFILES = intltool-extract intltool-merge intltool-update po/stamp-it po/.intltool-merge-cache
diff --git a/NEWS b/NEWS
new file mode 100644
index 00000000..8b137891
--- /dev/null
+++ b/NEWS
@@ -0,0 +1 @@
+
diff --git a/README b/README
new file mode 100644
index 00000000..66040291
--- /dev/null
+++ b/README
@@ -0,0 +1,473 @@
+Marco is not a meta-City as in an urban center, but rather
+Meta-ness as in the state of being meta. i.e. marco : meta as
+opacity : opaque. Also it may have something to do with the Meta key
+on UNIX keyboards.
+
+The first release of Marco was version 2.3. Marco has no need for
+your petty hangups about version numbers.
+
+The stable releases so far are 2.4.x, 2.6.x, 2.8.[01], 2.8.1.x, 2.8.5-,
+2.10.x, 2.12.x, 2.14.x, 2.16.x.
+
+Unstable branches are 2.3.x, 2.5.x, 2.8.2-4, 2.9.x, 2.11.x, 2.13.x,
+2.15.x, 2.17.x.
+
+COMPILING MARCO
+===
+
+You need GTK+ 2.2. For startup notification to work you need
+libstartup-notification at
+http://www.freedesktop.org/software/startup-notification/ or on the
+MATE ftp site. You also need MateConf 1.2 (unless building a funky
+extra-small embedded marco with --disable-mateconf, see below).
+
+REPORTING BUGS AND SUBMITTING PATCHES
+===
+
+Report new bugs on http://bugzilla.gnome.org. Please check for
+duplicates, *especially* if you are reporting a feature request.
+
+Please do *not* add "me too!" or "yes I really want this!" comments to
+feature requests in bugzilla. Please read
+http://pobox.com/~hp/features.html prior to adding any kind of flame
+about missing features or misfeatures.
+
+Feel free to send patches too; Marco is relatively small and
+simple, so if you find a bug or want to add a feature it should be
+pretty easy. Send me mail, or put the patch in bugzilla.
+
+See the HACKING file for some notes on hacking Marco.
+
+SHRINKING MARCO
+===
+
+Not that marco is huge, but a substantial amount of code is in
+preferences handling, in static strings that aren't essential, and in
+the theme engine.
+
+You can strip about 70K from the marco binary by compiling with
+options such as:
+
+ --disable-mateconf
+ --disable-sm
+ --disable-verbose-mode
+ --disable-startup-notification
+
+However the result is no good for desktop use, all prefs have to be
+hardcoded in the binary, for example. If you wanted to make a really
+small marco, here's some additional stuff you might consider
+implementing:
+
+ - add --disable-themes, which would replace theme.c and theme-parser.c
+ with a hardcoded implementation of the interface in theme.h,
+ should save about 80K. This should be fairly easy.
+
+ - add --disable-gtk, which would implement the interface in ui.h
+ without using GTK. This one is easier than you think because the
+ main part of the window manager doesn't use GTK directly, but is
+ still fairly hard to do. You would probably have to give up some
+ of the features, such as window menus, as menus are pretty complex
+ to implement well. So time may be better spent adding a GTK
+ configure script feature to build GTK with only a small core set of
+ functionality.
+
+MARCO FEATURES
+===
+
+ - Boring window manager for the adult in you. Many window managers
+ are like Marshmallow Froot Loops; Marco is like Cheerios.
+
+ - Uses GTK+ 2.0 for drawing window frames. This means colors, fonts,
+ etc. come from GTK+ theme.
+
+ - Does not expose the concept of "window manager" to the user. Some
+ of the features in the MATE control panel and other parts of the
+ desktop happen to be implemented in marco, such as changing your
+ window border theme, or changing your window navigation shortcuts,
+ but the user doesn't need to know this.
+
+ - Includes only the window manager; does not try to be a desktop
+ environment. The pager, configuration, etc. are all separate and
+ modular. The "libwnck" library (which I also wrote) is available
+ for writing marco extensions, pagers, and so on. (But libwnck
+ isn't marco specific, or MATE-dependent; it requires only GTK,
+ and should work with KWin, fvwm2, and other EWMH-compliant WMs.)
+
+ - Has a simple theme system and a couple of extra themes come with it.
+ Change themes via mateconf-editor or mateconftool or MATE themes control
+ panel:
+ mateconftool-2 --type=string --set /apps/marco/general/theme Crux
+ mateconftool-2 --type=string --set /apps/marco/general/theme Gorilla
+ mateconftool-2 --type=string --set /apps/marco/general/theme Atlanta
+ mateconftool-2 --type=string --set /apps/marco/general/theme Bright
+
+ See theme-format.txt for docs on the theme format. Use
+ marco-theme-viewer to preview themes.
+
+ - Change number of workspaces via mateconf-editor or mateconftool:
+ mateconftool-2 --type=int --set /apps/marco/general/num_workspaces 5
+
+ Can also change workspaces from MATE 2 pager.
+
+ - Change focus mode:
+ mateconftool-2 --type=string --set /apps/marco/general/focus_mode mouse
+ mateconftool-2 --type=string --set /apps/marco/general/focus_mode sloppy
+ mateconftool-2 --type=string --set /apps/marco/general/focus_mode click
+
+ - Global keybinding defaults include:
+
+ Alt-Tab forward cycle window focus
+ Alt-Shift-Tab backward cycle focus
+ Alt-Ctrl-Tab forward cycle focus among panels
+ Alt-Ctrl-Shift-Tab backward cycle focus among panels
+ Alt-Escape cycle window focus without a popup thingy
+ Ctrl-Alt-Left Arrow previous workspace
+ Ctrl-Alt-Right Arrow next workspace
+ Ctrl-Alt-D minimize/unminimize all, to show desktop
+
+ Change keybindings for example:
+
+ unst mateconftool-2 --type=string --set /apps/marco/global_keybindings/switch_to_workspace_1 '<Alt>F1'
+
+ Also try the MATE keyboard shortcuts control panel, or
+ mateconf-editor.
+
+ See marco.schemas for all available bindings.
+
+ - Window keybindings:
+
+ Alt-space window menu
+
+ Mnemonics work in the menu. That is, Alt-space then underlined
+ letter in the menu item works.
+
+ Choose Move from menu, and arrow keys to move the window.
+
+ While moving, hold down Control to move slower, and
+ Shift to snap to edges.
+
+ Choose Resize from menu, and nothing happens yet, but
+ eventually I might implement something.
+
+ Keybindings for things like maximize window, vertical maximize,
+ etc. can be bound, but may not all exist by default. See
+ marco.schemas.
+
+ - Window mouse bindings:
+
+ Clicking anywhere on frame with button 1 will raise/focus window
+
+ If you click a window control, such as the close button, then the
+ control will activate on button release if you are still over it
+ on release (as with most GUI toolkits)
+
+ If you click and drag borders with button 1 it resizes the window
+
+ If you click and drag the titlebar with button 1 it moves the
+ window.
+
+ If you click anywhere on the frame with button 2 it lowers the
+ window.
+
+ If you click anywhere on the frame with button 3 it shows the
+ window menu.
+
+ If you hold down Super (windows key) and click inside a window, it
+ will move the window (buttons 1 and 2) or show menu (button 3).
+ Or you can configure a different modifier for this.
+
+ If you pick up a window with button 1 and then switch workspaces
+ the window will come with you to the new workspace, this is
+ a feature copied from Enlightenment.
+
+ If you hold down Shift while moving a window, the window snaps
+ to edges of other windows and the screen.
+
+ - Session management:
+
+ Marco connects to the session manager and will set itself up to
+ be respawned. It theoretically restores sizes/positions/workspace
+ for session-aware applications.
+
+ - Marco implements much of the EWMH window manager specification
+ from freedesktop.org, as well as the older ICCCM. Please refer to
+ the COMPLIANCE file for information on marco compliance with
+ these standards.
+
+ - Uses Pango to render text, so has cool i18n capabilities.
+ Supports UTF-8 window titles and such.
+
+ - There are simple animations for actions such as minimization,
+ to help users see what is happening. Should probably
+ have a few more of these and make them nicer.
+
+ - if you have the proper X setup, set the GDK_USE_XFT=1
+ environment variable to get antialiased window titles.
+
+ - considers the panel when placing windows and maximizing
+ them.
+
+ - handles the window manager selection from the ICCCM. Will exit if
+ another WM claims it, and can claim it from another WM if you pass
+ the --replace argument. So if you're running another
+ ICCCM-compliant WM, you can run "marco --replace" to replace it
+ with Marco.
+
+ - does basic colormap handling
+
+ - and much more! well, maybe not a lot more.
+
+HOW TO ADD EXTERNAL FEATURES
+===
+
+You can write a marco "plugin" such as a pager, window list, icon
+box, task menu, or even things like "window matching" using the
+Extended Window Manager Hints. See http://www.freedesktop.org for the
+EWMH specification. An easy-to-use library called "libwnck" is
+available that uses the EWMH and is specifically designed for writing
+WM accessories.
+
+You might be interested in existing accessories such as "Devil's Pie"
+by Ross Burton, which add features to Marco (or other
+EWMH-compliant WMs).
+
+MARCO BUGS, NON-FEATURES, AND CAVEATS
+===
+
+See bugzilla: http://bugzilla.gnome.org/query.cgi
+
+FAQ
+===
+
+Q: Will you add my feature?
+
+A: If it makes sense to turn on unconditionally, or is genuinely a
+ harmless preference that I would not be embarrassed to put in a
+ simple, uncluttered, user-friendly configuration dialog.
+
+ If the only rationale for your feature is that other window
+ managers have it, or that you are personally used to it, or
+ something like that, then I will not be impressed. Marco is
+ firmly in the "choose good defaults" camp rather than the "offer 6
+ equally broken ways to do it, and let the user pick one" camp.
+
+ This is part of a "no crackrock" policy, despite some exceptions
+ I'm mildly embarrassed about. For example, multiple workspaces
+ probably constitute crackrock, they confuse most users and really
+ are not that useful if you have a decent tasklist and so on. But I
+ am too used to them to turn them off. Or alternatively
+ iconification/tasklist is crack, and workspaces/pager are good. But
+ having both is certainly a bit wrong. Sloppy focus is probably
+ crackrock too.
+
+ But don't think unlimited crack is OK just because I slipped up a
+ little. No slippery slope here.
+
+ Don't let this discourage patches and fixes - I love those. ;-)
+ Just be prepared to hear the above objections if your patch adds
+ some crack-ridden configuration option.
+
+ http://pobox.com/~hp/free-software-ui.html
+ http://pobox.com/~hp/features.html
+
+Q: Will Marco be part of MATE?
+
+A: It is officially part of MATE as of MATE 2.2. Prior to that,
+ it was unofficially shipped as the default MATE WM by several
+ OS vendors.
+
+Q: Is Marco a Red Hat project?
+
+A: Marco's original creation was in no way funded, endorsed, or
+ encouraged by Red Hat, Inc. - I'm guessing Red Hat would not
+ consider "insufficient number of window managers for Linux" an
+ urgent problem. Just a wild guess though.
+
+ Now that marco is the default WM however, Red Hat supports some
+ bugfixing and other work.
+
+Q: Why does Marco remember the workspace/position of some apps
+ but not others across logout/login?
+
+A: Marco only stores sizes/positions for apps that are session
+ managed. As far as I can determine, there is no way to attempt to
+ remember workspace/position for non-session-aware apps without
+ causing a lot of weird effects.
+
+ The reason is that you don't know which non-SM-aware apps were
+ launched by the session. When you initially log in, Marco sees a
+ bunch of new windows appear. But it can't distinguish between
+ windows that were stored in your session, or windows you just
+ launched after logging in. If Marco tried to guess that a window
+ was from the session, it could e.g. end up maximizing a dialog, or
+ put a window you just launched on another desktop or in a weird
+ place. And in fact I see a lot of bugs like this in window managers
+ that try to handle non-session-aware apps.
+
+ However, for session-aware apps, Marco can tell that the
+ application instance is from the session and thus restore it
+ reliably, assuming the app properly restores the windows it had
+ open on session save.
+
+ So the correct way to fix the situation is to make apps
+ session-aware. libSM has come with X for years, it's very
+ standardized, it's shared by MATE and KDE - even twm is
+ session-aware. So anyone who won't take a patch to add SM is more
+ archaic than twm - and you should flame them. ;-)
+
+ Docs on session management:
+ http://www.fifi.org/doc/xspecs/xsmp.txt.gz
+ http://www.fifi.org/doc/xspecs/SMlib.txt.gz
+
+ See also the ICCCM section on SM. For MATE apps, use the
+ MateClient object. For a simple example of using libSM directly,
+ twm/session.c in the twm source code is pretty easy to understand.
+
+Q: How about adding viewports in addition to workspaces?
+
+A: I could conceivably be convinced to use viewports _instead_ of
+ workspaces, though currently I'm not thinking that. But I don't
+ think it makes any sense to have both; it's just confusing. They
+ are functionally equivalent.
+
+ You may think this means that you won't have certain keybindings,
+ or something like that. This is a misconception. The only
+ _fundamental_ difference between viewports and workspaces is that
+ with viewports, windows can "overlap" and appear partially on
+ one and partially on another. All other differences that
+ traditionally exist in other window managers are accidental -
+ the features commonly associated with viewports can be implemented
+ for workspaces, and vice versa.
+
+ So I don't want to have two kinds of
+ workspace/desktop/viewport/whatever, but I'm willing to add
+ features traditionally associated with either kind if those
+ features make sense.
+
+Q: Why is the panel always on top?
+
+A: Because it's a better user interface, and until we made this not
+ configurable a bunch of apps were not getting fixed (the app
+ authors were just saying "put your panel on the bottom" instead of
+ properly supporting fullscreen mode, and such).
+
+ rationales.txt has the bugzilla URL for some flamefesting on this,
+ if you want to go back and relive the glory.
+ Read these and the bugzilla stuff before asking/commenting:
+ http://pobox.com/~hp/free-software-ui.html
+ http://pobox.com/~hp/features.html
+
+Q: Why is there no edge flipping?
+
+A: This one is also in rationales.txt. Because "ouija board" UI, where
+ you just move the mouse around and the computer guesses what you
+ mean, has a lot of issues. This includes mouse focus, shade-hover
+ mode, edge flipping, autoraise, etc. Marco has mouse focus and
+ autoraise as a compromise, but these features are all confusing for
+ many users, and cause problems with accessibility, fitt's law, and
+ so on.
+
+ Read these and the bugzilla stuff before asking/commenting:
+ http://pobox.com/~hp/free-software-ui.html
+ http://pobox.com/~hp/features.html
+
+Q: Why does wireframe move/resize suck?
+
+A: You can turn it on with the reduced_resources setting.
+
+ But: it has low usability, and is a pain
+ to implement, and there's no reason opaque move/resize should be a
+ problem on any setup that can run a modern desktop worth a darn to
+ begin with.
+
+ Read these and the bugzilla stuff before asking/commenting:
+ http://pobox.com/~hp/free-software-ui.html
+ http://pobox.com/~hp/features.html
+
+ The reason we had to add wireframe anyway was broken
+ proprietary apps that can't handle lots of resize events.
+
+Q: Why no XYZ?
+
+A: You are probably getting the idea by now - check rationales.txt,
+ query/search bugzilla, and read http://pobox.com/~hp/features.html
+ and http://pobox.com/~hp/free-software-ui.html
+
+ Then sit down and answer the question for yourself. Is the feature
+ good? What's the rationale for it? Answer "why" not just "why not."
+ Justify in terms of users as a whole, not just users like
+ yourself. How else can you solve the same problem? etc. If that
+ leads you to a strong opinion, then please, post the rationale for
+ discussion to an appropriate bugzilla bug, or to
+
+ Please don't just "me too!" on bugzilla bugs, please don't think
+ flames will get you anywhere, and please don't repeat rationale
+ that's already been offered.
+
+Q: Your dumb web pages you made me read talk about solving problems in
+ fundamental ways instead of adding preferences or workarounds.
+ What are some examples where marco has done this?
+
+A: There are quite a few, though many opportunities remain. Sometimes
+ the real fix involves application changes. The marco approach is
+ that it's OK to require apps to change, though there are also
+ plenty of workarounds in marco for battles considered too hard
+ to fight.
+
+ Here are some examples:
+
+ - fullscreen mode was introduced to allow position constraints,
+ panel-on-top, and other such things to apply to normal windows
+ while still allowing video players etc. to "just work"
+
+ - "whether to include minimized windows in Alt+Tab" was solved
+ by putting minimized windows at the *end* of the tab order.
+
+ - Whether to pop up a feedback display during Alt+Tab was solved by
+ having both Alt+Tab and Alt+Esc
+
+ - Whether to have a "kill" feature was solved by automatically
+ detecting and offering to kill stuck apps. Better, marco
+ actually does "kill -9" on the process, it doesn't just
+ disconnect the process from the X server. You'll appreciate this
+ if you ever did a "kill" on Netscape 4, and watched it keep
+ eating 100% CPU even though the X server had booted it.
+
+ - The workspaces vs. viewports mess was avoided by adding
+ directional navigation and such to workspaces, see discussion
+ earlier in this file.
+
+ - Instead of configurable placement algorithms, there's just one
+ that works fairly well most of the time.
+
+ - To avoid excess CPU use during opaque move/resize, we rate limit
+ the updates to the application window's size.
+
+ - Instead of configurable "show size of window while resizing,"
+ it's only shown for windows where it matters, such as terminals.
+ (Only use-case given for all windows is for web designers
+ choosing their web browser size, but there are web sites and
+ desktop backgrounds that do this for you.)
+
+ - Using startup notification, applications open on the workspace
+ where you launched them, not the active workspace when their
+ window is opened.
+
+ - and much more.
+
+Q: I think marco sucks.
+
+A: Feel free to use any WM you like. The reason marco follows the
+ ICCCM and EWMH specifications is that it makes marco a modular,
+ interchangeable part in the desktop. libwnck-based apps such as the
+ MATE window list will work just fine with any EWMH-compliant WM.
+
+Q: Did you spend a lot of time on this?
+
+A: Originally the answer was no. Sadly the answer is now yes.
+
+Q: How can you claim that you are anti-crack, while still
+ writing a window manager?
+
+A: I have no comment on that.
diff --git a/autogen.sh b/autogen.sh
new file mode 100755
index 00000000..612e6f4f
--- /dev/null
+++ b/autogen.sh
@@ -0,0 +1,25 @@
+#!/bin/sh
+# Run this to generate all the initial makefiles, etc.
+
+srcdir=`dirname $0`
+test -z "$srcdir" && srcdir=.
+
+PKG_NAME="mate-window-manager"
+
+(test -f $srcdir/configure.in) || {
+ echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
+ echo " top-level $PKG_NAME directory"
+ exit 1
+}
+
+which mate-autogen.sh || {
+ echo "You need to install mate-common from the MATE Git"
+ exit 1
+}
+
+REQUIRED_AUTOMAKE_VERSION=1.9
+USE_MATE2_MACROS=1
+USE_COMMON_DOC_BUILD=yes
+
+. mate-autogen.sh
+
diff --git a/configure.in b/configure.in
new file mode 100644
index 00000000..8a8544f7
--- /dev/null
+++ b/configure.in
@@ -0,0 +1,582 @@
+AC_PREREQ(2.50)
+
+m4_define([marco_major_version], [2011])
+m4_define([marco_minor_version], [11])
+# Fibonacci sequence for micro version numbering:
+# 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987
+m4_define([marco_micro_version], [28])
+
+m4_define([marco_version],
+ [marco_major_version.marco_minor_version.marco_micro_version])
+AC_INIT([marco], [marco_version], [https://github.com/perberos/mate-desktop-environment])
+
+AC_CONFIG_SRCDIR(src/core/display.c)
+AC_CONFIG_HEADERS(config.h)
+
+AM_INIT_AUTOMAKE
+AM_MAINTAINER_MODE
+
+# Honor aclocal flags
+AC_SUBST(ACLOCAL_AMFLAGS, "\${ACLOCAL_FLAGS}")
+
+GETTEXT_PACKAGE=marco
+AC_SUBST(GETTEXT_PACKAGE)
+AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE",[Name of default gettext domain])
+
+IT_PROG_INTLTOOL([0.34.90])
+AC_PROG_CC
+AC_ISC_POSIX
+AC_HEADER_STDC
+AC_LIBTOOL_WIN32_DLL
+AM_PROG_LIBTOOL
+
+#### Integer sizes
+
+AC_CHECK_SIZEOF(char)
+AC_CHECK_SIZEOF(short)
+AC_CHECK_SIZEOF(long)
+AC_CHECK_SIZEOF(int)
+AC_CHECK_SIZEOF(void *)
+AC_CHECK_SIZEOF(long long)
+AC_CHECK_SIZEOF(__int64)
+
+## byte order
+AC_C_BIGENDIAN
+
+#### Warnings
+
+changequote(,)dnl
+if test "x$GCC" = "xyes"; then
+ case " $CFLAGS " in
+ *[\ \ ]-Wall[\ \ ]*) ;;
+ *) CFLAGS="$CFLAGS -Wall" ;;
+ esac
+
+# case " $CFLAGS " in
+# *[\ \ ]-Wshadow[\ \ ]*) ;;
+# *) CFLAGS="$CFLAGS -Wshadow" ;;
+# esac
+
+ case " $CFLAGS " in
+ *[\ \ ]-Wchar-subscripts[\ \ ]*) ;;
+ *) CFLAGS="$CFLAGS -Wchar-subscripts" ;;
+ esac
+
+ case " $CFLAGS " in
+ *[\ \ ]-Wmissing-declarations[\ \ ]*) ;;
+ *) CFLAGS="$CFLAGS -Wmissing-declarations" ;;
+ esac
+
+ case " $CFLAGS " in
+ *[\ \ ]-Wmissing-prototypes[\ \ ]*) ;;
+ *) CFLAGS="$CFLAGS -Wmissing-prototypes" ;;
+ esac
+
+ case " $CFLAGS " in
+ *[\ \ ]-Wnested-externs[\ \ ]*) ;;
+ *) CFLAGS="$CFLAGS -Wnested-externs" ;;
+ esac
+
+ case " $CFLAGS " in
+ *[\ \ ]-Wpointer-arith[\ \ ]*) ;;
+ *) CFLAGS="$CFLAGS -Wpointer-arith" ;;
+ esac
+
+ case " $CFLAGS " in
+ *[\ \ ]-Wcast-align[\ \ ]*) ;;
+ *) CFLAGS="$CFLAGS -Wcast-align" ;;
+ esac
+
+ case " $CFLAGS " in
+ *[\ \ ]-Wsign-compare[\ \ ]*) ;;
+ *) CFLAGS="$CFLAGS -Wsign-compare" ;;
+ esac
+
+ if test "x$enable_ansi" = "xyes"; then
+ case " $CFLAGS " in
+ *[\ \ ]-ansi[\ \ ]*) ;;
+ *) CFLAGS="$CFLAGS -ansi" ;;
+ esac
+
+ case " $CFLAGS " in
+ *[\ \ ]-pedantic[\ \ ]*) ;;
+ *) CFLAGS="$CFLAGS -pedantic" ;;
+ esac
+ fi
+fi
+changequote([,])dnl
+
+AC_MSG_CHECKING([which gtk+ version to compile against])
+AC_ARG_WITH([gtk],
+ AC_HELP_STRING([--with-gtk=2.0|3.0],
+ [which gtk+ version to compile against (default: 2.0)]),
+ [case "$with_gtk" in
+ 2.0|3.0) ;;
+ *) AC_MSG_ERROR([invalid gtk+ version specified]);;
+ esac],
+ [with_gtk=2.0])
+AC_MSG_RESULT([$with_gtk])
+
+case "$with_gtk" in
+ 2.0) GTK_API_VERSION=2.0
+ GTK_MIN_VERSION=2.20.0
+ CANBERRA_GTK=libcanberra-gtk
+ ;;
+ 3.0) GTK_API_VERSION=3.0
+ GTK_MIN_VERSION=2.90.0
+ CANBERRA_GTK=libcanberra-gtk3
+ ;;
+esac
+
+MARCO_PC_MODULES="gtk+-$GTK_API_VERSION >= $GTK_MIN_VERSION pango >= 1.2.0 $CANBERRA_GTK"
+AC_SUBST(GTK_API_VERSION)
+
+AC_ARG_ENABLE(mateconf,
+ AC_HELP_STRING([--disable-mateconf],
+ [disable mateconf usage, for embedded/size-sensitive non-MATE builds]),,
+ enable_mateconf=yes)
+
+if test x$enable_mateconf = xyes; then
+ AC_DEFINE(HAVE_MATECONF,1,[Build with mateconf support])
+ MARCO_PC_MODULES="$MARCO_PC_MODULES mateconf-2.0 >= 1.2.0"
+fi
+
+AC_ARG_ENABLE(verbose-mode,
+ AC_HELP_STRING([--disable-verbose-mode],
+ [disable marco's ability to do verbose logging, for embedded/size-sensitive custom builds]),,
+ enable_verbose_mode=yes)
+
+if test x$enable_verbose_mode = xyes; then
+ AC_DEFINE(WITH_VERBOSE_MODE,1,[Build with verbose mode support])
+fi
+
+AC_ARG_ENABLE(sm,
+ AC_HELP_STRING([--disable-sm],
+ [disable marco's session management support, for embedded/size-sensitive custom non-MATE builds]),,
+ enable_sm=auto)
+
+AC_ARG_ENABLE(startup-notification,
+ AC_HELP_STRING([--disable-startup-notification],
+ [disable marco's startup notification support, for embedded/size-sensitive custom non-MATE builds]),,
+ enable_startup_notification=auto)
+
+AC_ARG_ENABLE(compositor,
+ AC_HELP_STRING([--disable-compositor],
+ [disable marco's compositing manager]),,
+ enable_compositor=auto)
+
+AC_ARG_ENABLE(xsync,
+ AC_HELP_STRING([--disable-xsync],
+ [disable marco's use of the XSync extension]),,
+ enable_xsync=auto)
+
+AC_ARG_ENABLE(render,
+ AC_HELP_STRING([--disable-render],
+ [disable marco's use of the RENDER extension]),,
+ enable_render=auto)
+
+AC_ARG_ENABLE(shape,
+ AC_HELP_STRING([--disable-shape],
+ [disable marco's use of the shaped window extension]),,
+ enable_shape=auto)
+
+## try definining HAVE_BACKTRACE
+AC_CHECK_HEADERS(execinfo.h, [AC_CHECK_FUNCS(backtrace)])
+
+AM_GLIB_GNU_GETTEXT
+
+## here we get the flags we'll actually use
+# GOptionEntry requires glib-2.6.0
+PKG_CHECK_MODULES(ALL, glib-2.0 >= 2.6.0)
+# gtk_window_set_icon_name requires gtk2+-2.60
+PKG_CHECK_MODULES(MARCO_MESSAGE, gtk+-$GTK_API_VERSION >= $GTK_MIN_VERSION)
+PKG_CHECK_MODULES(MARCO_WINDOW_DEMO, gtk+-$GTK_API_VERSION >= $GTK_MIN_VERSION)
+
+if $PKG_CONFIG --atleast-version 1.2.0 pangoxft; then
+ echo "pangoxft found"
+else
+ AC_MSG_ERROR("Pango 1.2.0 or greater based on Xft2 is required")
+fi
+
+# Unconditionally use this dir to avoid a circular dep with matecc
+MATE_KEYBINDINGS_KEYSDIR="${datadir}/mate-control-center/keybindings"
+AC_SUBST(MATE_KEYBINDINGS_KEYSDIR)
+
+STARTUP_NOTIFICATION_VERSION=0.7
+AC_MSG_CHECKING([Startup notification library >= $STARTUP_NOTIFICATION_VERSION])
+if $PKG_CONFIG --atleast-version $STARTUP_NOTIFICATION_VERSION libstartup-notification-1.0; then
+ have_startup_notification=yes
+else
+ have_startup_notification=no
+fi
+AC_MSG_RESULT($have_startup_notification)
+
+if test x$enable_startup_notification = xyes; then
+ have_startup_notification=yes
+ echo "startup-notification support forced on"
+elif test x$enable_startup_notification = xauto; then
+ true
+else
+ have_startup_notification=no
+fi
+
+if test x$have_startup_notification = xyes; then
+ echo "Building with libstartup-notification"
+ MARCO_PC_MODULES="$MARCO_PC_MODULES libstartup-notification-1.0 >= $STARTUP_NOTIFICATION_VERSION"
+ AC_DEFINE(HAVE_STARTUP_NOTIFICATION, , [Building with startup notification support])
+else
+ echo "Building without libstartup-notification"
+fi
+
+## init this, it gets set either in the compositor check below
+## or the render-specific check later
+have_xrender=no
+
+XCOMPOSITE_VERSION=0.2
+if test x$enable_compositor = xyes; then
+ have_xcomposite=yes
+elif test x$enable_compositor = xauto; then
+ echo "Building compositing manager by default now."
+ have_xcomposite=yes
+else
+ have_xcomposite=no
+fi
+
+if test x$have_xcomposite = xyes; then
+ AC_MSG_CHECKING([Xcomposite >= $XCOMPOSITE_VERSION])
+ if $PKG_CONFIG --atleast-version $XCOMPOSITE_VERSION xcomposite; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_ERROR([no. Use --disable-compositor to disable.])
+ fi
+fi
+
+if test x$have_xcomposite = xyes; then
+ MARCO_PC_MODULES="$MARCO_PC_MODULES xcomposite >= $XCOMPOSITE_VERSION xfixes xrender xdamage"
+ AC_DEFINE(HAVE_COMPOSITE_EXTENSIONS, 1, [Building with compositing manager support])
+ echo "Building with compositing manager"
+
+ ## force on render also
+ have_xrender=yes
+else
+ echo "Building without compositing manager"
+fi
+
+## if no compositor, still possibly enable render
+if test x$have_xcomposite = xno; then
+ XRENDER_VERSION=0.0
+ AC_MSG_CHECKING([xrender >= $XRENDER_VERSION])
+ if $PKG_CONFIG --atleast-version $XRENDER_VERSION xrender; then
+ have_xrender=yes
+ else
+ have_xrender=no
+ fi
+ AC_MSG_RESULT($have_xrender)
+
+ if test x$enable_render = xyes; then
+ have_xrender=yes
+ echo "Render support forced on"
+ elif test x$enable_render = xauto; then
+ true
+ else
+ have_xrender=no
+ fi
+
+ if test x$have_xrender = xyes; then
+ echo "Building with Render"
+ MARCO_PC_MODULES="$MARCO_PC_MODULES xrender >= $XRENDER_VERSION"
+ fi
+fi ## have_composite
+
+if test x$have_xrender = xyes; then
+ AC_DEFINE(HAVE_RENDER, , [Building with Render extension support])
+fi
+
+AC_MSG_CHECKING([Xcursor])
+if $PKG_CONFIG xcursor; then
+ have_xcursor=yes
+ else
+ have_xcursor=no
+ fi
+ AC_MSG_RESULT($have_xcursor)
+
+if test x$have_xcursor = xyes; then
+ echo "Building with Xcursor"
+ MARCO_PC_MODULES="$MARCO_PC_MODULES xcursor"
+ AC_DEFINE(HAVE_XCURSOR, , [Building with Xcursor support])
+fi
+
+AC_MSG_CHECKING([libgtop])
+if $PKG_CONFIG libgtop-2.0; then
+ have_gtop=yes
+ else
+ have_gtop=no
+ fi
+ AC_MSG_RESULT($have_gtop)
+
+if test x$have_gtop = xyes; then
+ echo "Building with libgtop"
+ MARCO_PC_MODULES="$MARCO_PC_MODULES libgtop-2.0"
+ AC_DEFINE(HAVE_GTOP, , [Building with libgtop])
+fi
+
+PKG_CHECK_MODULES(MARCO, $MARCO_PC_MODULES)
+
+AC_PATH_XTRA
+
+ALL_X_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
+
+# Check for Xinerama extension (Solaris impl or Xfree impl)
+marco_save_cppflags="$CPPFLAGS"
+CPPFLAGS="$CPPFLAGS $X_CFLAGS"
+
+AC_ARG_ENABLE(xinerama,
+ AC_HELP_STRING([--disable-xinerama],
+ [disable marco's use of the Xinerama extension]),
+ try_xinerama=$enable_xinerama,try_xinerama=yes)
+
+use_solaris_xinerama=no
+use_xfree_xinerama=no
+if test "${try_xinerama}" != no; then
+ case "$host" in
+ *-*-solaris*)
+ # Check for solaris
+ use_solaris_xinerama=yes
+ AC_CHECK_LIB(Xext, XineramaGetInfo,
+ use_solaris_xinerama=yes, use_solaris_xinerama=no,
+ $ALL_X_LIBS)
+ if test "x$use_solaris_xinerama" = "xyes"; then
+ AC_CHECK_HEADER(X11/extensions/xinerama.h,
+ if test -z "`echo $ALL_X_LIBS | grep "\-lXext" 2> /dev/null`"; then
+ X_EXTRA_LIBS="-lXext $X_EXTRA_LIBS"
+ fi
+ AC_DEFINE(HAVE_SOLARIS_XINERAMA, , [Have Solaris-style Xinerama])
+ AC_DEFINE(HAVE_XINERAMA, , [Have some version of Xinerama]),
+ use_solaris_xinerama=no,
+ [#include <X11/Xlib.h>])
+ fi
+ AC_MSG_CHECKING(for Xinerama support on Solaris)
+ AC_MSG_RESULT($use_solaris_xinerama);
+ ;;
+ *)
+ # Check for XFree
+ use_xfree_xinerama=yes
+ AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
+ [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
+ X_EXTRA_LIBS="-lXinerama $X_EXTRA_LIBS"
+ if test -z "`echo $ALL_X_LIBS | grep "\-lXext" 2> /dev/null`"; then
+ X_EXTRA_LIBS="-lXext $X_EXTRA_LIBS"
+ fi
+ AC_DEFINE(HAVE_XFREE_XINERAMA, , [Have XFree86-style Xinerama])
+ AC_DEFINE(HAVE_XINERAMA,, [Have some version of Xinerama]),
+ use_xfree_xinerama=no,
+ [#include <X11/Xlib.h>])],
+ use_xfree_xinerama=no, -lXext $ALL_X_LIBS)
+ AC_MSG_CHECKING(for Xinerama support on XFree86)
+ AC_MSG_RESULT($use_xfree_xinerama);
+ ;;
+ esac
+fi
+
+CPPFLAGS="$marco_save_cppflags"
+
+SHAPE_LIBS=
+found_shape=no
+AC_CHECK_LIB(Xext, XShapeQueryExtension,
+ [AC_CHECK_HEADER(X11/extensions/shape.h,
+ SHAPE_LIBS=-lXext found_shape=yes)],
+ , $ALL_X_LIBS)
+
+if test x$enable_shape = xno; then
+ found_shape=no
+fi
+
+if test x$enable_shape = xyes; then
+ if test "$found_shape" = "no"; then
+ AC_MSG_ERROR([--enable-shape forced and Shape not found])
+ exit 1
+ fi
+fi
+
+if test "x$found_shape" = "xyes"; then
+ AC_DEFINE(HAVE_SHAPE, , [Have the shape extension library])
+fi
+
+found_xkb=no
+AC_CHECK_LIB(X11, XkbQueryExtension,
+ [AC_CHECK_HEADER(X11/XKBlib.h,
+ found_xkb=yes)],
+ , $ALL_X_LIBS)
+
+if test "x$found_xkb" = "xyes"; then
+ AC_DEFINE(HAVE_XKB, , [Have keyboard extension library])
+fi
+
+
+RANDR_LIBS=
+found_randr=no
+AC_CHECK_LIB(Xrandr, XRRUpdateConfiguration,
+ [AC_CHECK_HEADER(X11/extensions/Xrandr.h,
+ RANDR_LIBS=-lXrandr found_randr=yes,,
+ [#include <X11/Xlib.h>])],
+ , -lXrender -lXext $ALL_X_LIBS)
+
+if test "x$found_randr" = "xyes"; then
+ AC_DEFINE(HAVE_RANDR, , [Have the Xrandr extension library])
+fi
+
+XSYNC_LIBS=
+found_xsync=no
+AC_CHECK_LIB(Xext, XSyncQueryExtension,
+ [AC_CHECK_HEADER(X11/extensions/sync.h,
+ found_xsync=yes,,
+ [#include <X11/Xlib.h>])],
+ , $ALL_X_LIBS)
+
+if test x$enable_xsync = xno; then
+ found_xsync=no
+fi
+
+if test x$enable_xsync = xyes; then
+ if test "$found_xsync" = "no"; then
+ AC_MSG_ERROR([--enable-xsync forced and XSync not found])
+ exit 1
+ fi
+fi
+
+if test "x$found_xsync" = "xyes"; then
+ XSYNC_LIBS=-lXext
+ AC_DEFINE(HAVE_XSYNC, , [Have the Xsync extension library])
+fi
+
+MARCO_LIBS="$MARCO_LIBS $XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS -lm"
+MARCO_MESSAGE_LIBS="$MARCO_MESSAGE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
+MARCO_WINDOW_DEMO_LIBS="$MARCO_WINDOW_DEMO_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
+MARCO_PROPS_LIBS="$MARCO_PROPS_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
+
+found_sm=no
+case "$MARCO_LIBS" in
+ *-lSM*)
+ found_sm=yes
+ ;;
+ *)
+ AC_CHECK_LIB(SM, SmcSaveYourselfDone,
+ [AC_CHECK_HEADERS(X11/SM/SMlib.h,
+ MARCO_LIBS="-lSM -lICE $MARCO_LIBS" found_sm=yes)],
+ , $MARCO_LIBS)
+ ;;
+esac
+
+if test x$enable_sm = xno; then
+ found_sm=no
+fi
+
+if test x$enable_sm = xyes; then
+ if test "$found_sm" = "no"; then
+ AC_MSG_ERROR([--enable-sm forced and -lSM not found])
+ exit 1
+ fi
+fi
+
+if test "$found_sm" = "yes"; then
+ AC_DEFINE(HAVE_SM, , [Building with SM support])
+fi
+
+AM_CONDITIONAL(HAVE_SM, test "$found_sm" = "yes")
+
+HOST_ALIAS=$host_alias
+AC_SUBST(HOST_ALIAS)
+
+AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
+
+if test x"$GDK_PIXBUF_CSOURCE" = xno; then
+ AC_MSG_ERROR([gdk-pixbuf-csource executable not found in your path - should be installed with GTK])
+fi
+
+AC_SUBST(GDK_PIXBUF_CSOURCE)
+
+if test x$enable_mateconf = xyes; then
+ AC_PATH_PROG(MATECONFTOOL, mateconftool-2, no)
+ if test x"$MATECONFTOOL" = xno; then
+ AC_MSG_ERROR([mateconftool-2 executable not found in your path - should be installed with MateConf])
+ fi
+
+ AM_MATECONF_SOURCE_2
+else
+ MATECONF_SCHEMAS_INSTALL_TRUE='#'
+ MATECONF_SCHEMAS_INSTALL_FALSE=
+fi
+
+AC_PATH_PROG(MATEDIALOG, matedialog, no)
+if test x"$MATEDIALOG" = xno; then
+ AC_MSG_ERROR([matedialog not found in your path - needed for dialogs])
+fi
+
+AC_ARG_ENABLE(debug,
+ [ --enable-debug enable debugging],,
+ enable_debug=no)
+if test "x$enable_debug" = "xyes"; then
+ CFLAGS="$CFLAGS -g -O"
+fi
+
+# Warnings are there for a reason
+if test "x$GCC" = "xyes"; then
+ CFLAGS="$CFLAGS -Wall -ansi"
+ if test "x$enable_maintainer_mode" = "xyes"; then
+ CFLAGS="$CFLAGS"
+ fi
+fi
+
+# Use mate-doc-utils:
+MATE_DOC_INIT([0.8.0])
+
+AC_CONFIG_FILES([
+Makefile
+doc/Makefile
+doc/creating_themes/Makefile
+doc/man/Makefile
+src/Makefile
+src/wm-tester/Makefile
+src/libmarco-private.pc
+src/tools/Makefile
+src/themes/Makefile
+po/Makefile.in
+])
+
+AC_OUTPUT
+
+if test x$enable_mateconf = xno; then
+ echo "*** WARNING WARNING WARNING WARNING WARNING"
+ echo "*** Building without MateConf. This means there's no"
+ echo "*** way to change prefs except hacking source code."
+ echo "*** This is intended for embedded systems etc., not for normal use."
+fi
+
+if test x$enable_verbose_mode = xno; then
+ echo "*** WARNING WARNING WARNING WARNING WARNING"
+ echo "*** Building without verbose mode"
+ echo "*** This means there's no way to debug marco problems."
+ echo "*** Please build normal desktop versions of marco"
+ echo "*** with verbose mode enabled so users can use it when they report bugs."
+fi
+
+dnl ==========================================================================
+echo "
+marco-$VERSION (using gtk+-${GTK_API_VERSION}):
+
+ prefix: ${prefix}
+ source code location: ${srcdir}
+ compiler: ${CC}
+
+ MateConf: ${enable_mateconf}
+ XFree86 Xinerama: ${use_xfree_xinerama}
+ Solaris Xinerama: ${use_solaris_xinerama}
+ Startup notification: ${have_startup_notification}
+ Compositing manager: ${have_xcomposite}
+ Session management: ${found_sm}
+ Shape extension: ${found_shape}
+ Resize-and-rotate: ${found_randr}
+ Xsync: ${found_xsync}
+ Render: ${have_xrender}
+ Xcursor: ${have_xcursor}
+"
diff --git a/depcomp b/depcomp
new file mode 100755
index 00000000..df8eea7e
--- /dev/null
+++ b/depcomp
@@ -0,0 +1,630 @@
+#! /bin/sh
+# depcomp - compile a program generating dependencies as side-effects
+
+scriptversion=2009-04-28.21; # UTC
+
+# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
+# Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# Originally written by Alexandre Oliva <[email protected]>.
+
+case $1 in
+ '')
+ echo "$0: No command. Try \`$0 --help' for more information." 1>&2
+ exit 1;
+ ;;
+ -h | --h*)
+ cat <<\EOF
+Usage: depcomp [--help] [--version] PROGRAM [ARGS]
+
+Run PROGRAMS ARGS to compile a file, generating dependencies
+as side-effects.
+
+Environment variables:
+ depmode Dependency tracking mode.
+ source Source file read by `PROGRAMS ARGS'.
+ object Object file output by `PROGRAMS ARGS'.
+ DEPDIR directory where to store dependencies.
+ depfile Dependency file to output.
+ tmpdepfile Temporary file to use when outputing dependencies.
+ libtool Whether libtool is used (yes/no).
+
+Report bugs to <[email protected]>.
+EOF
+ exit $?
+ ;;
+ -v | --v*)
+ echo "depcomp $scriptversion"
+ exit $?
+ ;;
+esac
+
+if test -z "$depmode" || test -z "$source" || test -z "$object"; then
+ echo "depcomp: Variables source, object and depmode must be set" 1>&2
+ exit 1
+fi
+
+# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
+depfile=${depfile-`echo "$object" |
+ sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
+tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
+
+rm -f "$tmpdepfile"
+
+# Some modes work just like other modes, but use different flags. We
+# parameterize here, but still list the modes in the big case below,
+# to make depend.m4 easier to write. Note that we *cannot* use a case
+# here, because this file can only contain one case statement.
+if test "$depmode" = hp; then
+ # HP compiler uses -M and no extra arg.
+ gccflag=-M
+ depmode=gcc
+fi
+
+if test "$depmode" = dashXmstdout; then
+ # This is just like dashmstdout with a different argument.
+ dashmflag=-xM
+ depmode=dashmstdout
+fi
+
+cygpath_u="cygpath -u -f -"
+if test "$depmode" = msvcmsys; then
+ # This is just like msvisualcpp but w/o cygpath translation.
+ # Just convert the backslash-escaped backslashes to single forward
+ # slashes to satisfy depend.m4
+ cygpath_u="sed s,\\\\\\\\,/,g"
+ depmode=msvisualcpp
+fi
+
+case "$depmode" in
+gcc3)
+## gcc 3 implements dependency tracking that does exactly what
+## we want. Yay! Note: for some reason libtool 1.4 doesn't like
+## it if -MD -MP comes after the -MF stuff. Hmm.
+## Unfortunately, FreeBSD c89 acceptance of flags depends upon
+## the command line argument order; so add the flags where they
+## appear in depend2.am. Note that the slowdown incurred here
+## affects only configure: in makefiles, %FASTDEP% shortcuts this.
+ for arg
+ do
+ case $arg in
+ -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
+ *) set fnord "$@" "$arg" ;;
+ esac
+ shift # fnord
+ shift # $arg
+ done
+ "$@"
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ mv "$tmpdepfile" "$depfile"
+ ;;
+
+gcc)
+## There are various ways to get dependency output from gcc. Here's
+## why we pick this rather obscure method:
+## - Don't want to use -MD because we'd like the dependencies to end
+## up in a subdir. Having to rename by hand is ugly.
+## (We might end up doing this anyway to support other compilers.)
+## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
+## -MM, not -M (despite what the docs say).
+## - Using -M directly means running the compiler twice (even worse
+## than renaming).
+ if test -z "$gccflag"; then
+ gccflag=-MD,
+ fi
+ "$@" -Wp,"$gccflag$tmpdepfile"
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ rm -f "$depfile"
+ echo "$object : \\" > "$depfile"
+ alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
+## The second -e expression handles DOS-style file names with drive letters.
+ sed -e 's/^[^:]*: / /' \
+ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
+## This next piece of magic avoids the `deleted header file' problem.
+## The problem is that when a header file which appears in a .P file
+## is deleted, the dependency causes make to die (because there is
+## typically no way to rebuild the header). We avoid this by adding
+## dummy dependencies for each header file. Too bad gcc doesn't do
+## this for us directly.
+ tr ' ' '
+' < "$tmpdepfile" |
+## Some versions of gcc put a space before the `:'. On the theory
+## that the space means something, we add a space to the output as
+## well.
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly. Breaking it into two sed invocations is a workaround.
+ sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+hp)
+ # This case exists only to let depend.m4 do its work. It works by
+ # looking at the text of this script. This case will never be run,
+ # since it is checked for above.
+ exit 1
+ ;;
+
+sgi)
+ if test "$libtool" = yes; then
+ "$@" "-Wp,-MDupdate,$tmpdepfile"
+ else
+ "$@" -MDupdate "$tmpdepfile"
+ fi
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ rm -f "$depfile"
+
+ if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
+ echo "$object : \\" > "$depfile"
+
+ # Clip off the initial element (the dependent). Don't try to be
+ # clever and replace this with sed code, as IRIX sed won't handle
+ # lines with more than a fixed number of characters (4096 in
+ # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
+ # the IRIX cc adds comments like `#:fec' to the end of the
+ # dependency line.
+ tr ' ' '
+' < "$tmpdepfile" \
+ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
+ tr '
+' ' ' >> "$depfile"
+ echo >> "$depfile"
+
+ # The second pass generates a dummy entry for each header file.
+ tr ' ' '
+' < "$tmpdepfile" \
+ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
+ >> "$depfile"
+ else
+ # The sourcefile does not contain any dependencies, so just
+ # store a dummy comment line, to avoid errors with the Makefile
+ # "include basename.Plo" scheme.
+ echo "#dummy" > "$depfile"
+ fi
+ rm -f "$tmpdepfile"
+ ;;
+
+aix)
+ # The C for AIX Compiler uses -M and outputs the dependencies
+ # in a .u file. In older versions, this file always lives in the
+ # current directory. Also, the AIX compiler puts `$object:' at the
+ # start of each line; $object doesn't have directory information.
+ # Version 6 uses the directory in both cases.
+ dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+ test "x$dir" = "x$object" && dir=
+ base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+ if test "$libtool" = yes; then
+ tmpdepfile1=$dir$base.u
+ tmpdepfile2=$base.u
+ tmpdepfile3=$dir.libs/$base.u
+ "$@" -Wc,-M
+ else
+ tmpdepfile1=$dir$base.u
+ tmpdepfile2=$dir$base.u
+ tmpdepfile3=$dir$base.u
+ "$@" -M
+ fi
+ stat=$?
+
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+ exit $stat
+ fi
+
+ for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+ do
+ test -f "$tmpdepfile" && break
+ done
+ if test -f "$tmpdepfile"; then
+ # Each line is of the form `foo.o: dependent.h'.
+ # Do two passes, one to just change these to
+ # `$object: dependent.h' and one to simply `dependent.h:'.
+ sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
+ # That's a tab and a space in the [].
+ sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+ else
+ # The sourcefile does not contain any dependencies, so just
+ # store a dummy comment line, to avoid errors with the Makefile
+ # "include basename.Plo" scheme.
+ echo "#dummy" > "$depfile"
+ fi
+ rm -f "$tmpdepfile"
+ ;;
+
+icc)
+ # Intel's C compiler understands `-MD -MF file'. However on
+ # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
+ # ICC 7.0 will fill foo.d with something like
+ # foo.o: sub/foo.c
+ # foo.o: sub/foo.h
+ # which is wrong. We want:
+ # sub/foo.o: sub/foo.c
+ # sub/foo.o: sub/foo.h
+ # sub/foo.c:
+ # sub/foo.h:
+ # ICC 7.1 will output
+ # foo.o: sub/foo.c sub/foo.h
+ # and will wrap long lines using \ :
+ # foo.o: sub/foo.c ... \
+ # sub/foo.h ... \
+ # ...
+
+ "$@" -MD -MF "$tmpdepfile"
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ rm -f "$depfile"
+ # Each line is of the form `foo.o: dependent.h',
+ # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
+ # Do two passes, one to just change these to
+ # `$object: dependent.h' and one to simply `dependent.h:'.
+ sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
+ # Some versions of the HPUX 10.20 sed can't process this invocation
+ # correctly. Breaking it into two sed invocations is a workaround.
+ sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
+ sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+hp2)
+ # The "hp" stanza above does not work with aCC (C++) and HP's ia64
+ # compilers, which have integrated preprocessors. The correct option
+ # to use with these is +Maked; it writes dependencies to a file named
+ # 'foo.d', which lands next to the object file, wherever that
+ # happens to be.
+ # Much of this is similar to the tru64 case; see comments there.
+ dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+ test "x$dir" = "x$object" && dir=
+ base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+ if test "$libtool" = yes; then
+ tmpdepfile1=$dir$base.d
+ tmpdepfile2=$dir.libs/$base.d
+ "$@" -Wc,+Maked
+ else
+ tmpdepfile1=$dir$base.d
+ tmpdepfile2=$dir$base.d
+ "$@" +Maked
+ fi
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile1" "$tmpdepfile2"
+ exit $stat
+ fi
+
+ for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
+ do
+ test -f "$tmpdepfile" && break
+ done
+ if test -f "$tmpdepfile"; then
+ sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
+ # Add `dependent.h:' lines.
+ sed -ne '2,${
+ s/^ *//
+ s/ \\*$//
+ s/$/:/
+ p
+ }' "$tmpdepfile" >> "$depfile"
+ else
+ echo "#dummy" > "$depfile"
+ fi
+ rm -f "$tmpdepfile" "$tmpdepfile2"
+ ;;
+
+tru64)
+ # The Tru64 compiler uses -MD to generate dependencies as a side
+ # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
+ # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
+ # dependencies in `foo.d' instead, so we check for that too.
+ # Subdirectories are respected.
+ dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+ test "x$dir" = "x$object" && dir=
+ base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+
+ if test "$libtool" = yes; then
+ # With Tru64 cc, shared objects can also be used to make a
+ # static library. This mechanism is used in libtool 1.4 series to
+ # handle both shared and static libraries in a single compilation.
+ # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
+ #
+ # With libtool 1.5 this exception was removed, and libtool now
+ # generates 2 separate objects for the 2 libraries. These two
+ # compilations output dependencies in $dir.libs/$base.o.d and
+ # in $dir$base.o.d. We have to check for both files, because
+ # one of the two compilations can be disabled. We should prefer
+ # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
+ # automatically cleaned when .libs/ is deleted, while ignoring
+ # the former would cause a distcleancheck panic.
+ tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
+ tmpdepfile2=$dir$base.o.d # libtool 1.5
+ tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
+ tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
+ "$@" -Wc,-MD
+ else
+ tmpdepfile1=$dir$base.o.d
+ tmpdepfile2=$dir$base.d
+ tmpdepfile3=$dir$base.d
+ tmpdepfile4=$dir$base.d
+ "$@" -MD
+ fi
+
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
+ exit $stat
+ fi
+
+ for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
+ do
+ test -f "$tmpdepfile" && break
+ done
+ if test -f "$tmpdepfile"; then
+ sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
+ # That's a tab and a space in the [].
+ sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+ else
+ echo "#dummy" > "$depfile"
+ fi
+ rm -f "$tmpdepfile"
+ ;;
+
+#nosideeffect)
+ # This comment above is used by automake to tell side-effect
+ # dependency tracking mechanisms from slower ones.
+
+dashmstdout)
+ # Important note: in order to support this mode, a compiler *must*
+ # always write the preprocessed file to stdout, regardless of -o.
+ "$@" || exit $?
+
+ # Remove the call to Libtool.
+ if test "$libtool" = yes; then
+ while test "X$1" != 'X--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+
+ # Remove `-o $object'.
+ IFS=" "
+ for arg
+ do
+ case $arg in
+ -o)
+ shift
+ ;;
+ $object)
+ shift
+ ;;
+ *)
+ set fnord "$@" "$arg"
+ shift # fnord
+ shift # $arg
+ ;;
+ esac
+ done
+
+ test -z "$dashmflag" && dashmflag=-M
+ # Require at least two characters before searching for `:'
+ # in the target name. This is to cope with DOS-style filenames:
+ # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
+ "$@" $dashmflag |
+ sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
+ rm -f "$depfile"
+ cat < "$tmpdepfile" > "$depfile"
+ tr ' ' '
+' < "$tmpdepfile" | \
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly. Breaking it into two sed invocations is a workaround.
+ sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+dashXmstdout)
+ # This case only exists to satisfy depend.m4. It is never actually
+ # run, as this mode is specially recognized in the preamble.
+ exit 1
+ ;;
+
+makedepend)
+ "$@" || exit $?
+ # Remove any Libtool call
+ if test "$libtool" = yes; then
+ while test "X$1" != 'X--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+ # X makedepend
+ shift
+ cleared=no eat=no
+ for arg
+ do
+ case $cleared in
+ no)
+ set ""; shift
+ cleared=yes ;;
+ esac
+ if test $eat = yes; then
+ eat=no
+ continue
+ fi
+ case "$arg" in
+ -D*|-I*)
+ set fnord "$@" "$arg"; shift ;;
+ # Strip any option that makedepend may not understand. Remove
+ # the object too, otherwise makedepend will parse it as a source file.
+ -arch)
+ eat=yes ;;
+ -*|$object)
+ ;;
+ *)
+ set fnord "$@" "$arg"; shift ;;
+ esac
+ done
+ obj_suffix=`echo "$object" | sed 's/^.*\././'`
+ touch "$tmpdepfile"
+ ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
+ rm -f "$depfile"
+ cat < "$tmpdepfile" > "$depfile"
+ sed '1,2d' "$tmpdepfile" | tr ' ' '
+' | \
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly. Breaking it into two sed invocations is a workaround.
+ sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile" "$tmpdepfile".bak
+ ;;
+
+cpp)
+ # Important note: in order to support this mode, a compiler *must*
+ # always write the preprocessed file to stdout.
+ "$@" || exit $?
+
+ # Remove the call to Libtool.
+ if test "$libtool" = yes; then
+ while test "X$1" != 'X--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+
+ # Remove `-o $object'.
+ IFS=" "
+ for arg
+ do
+ case $arg in
+ -o)
+ shift
+ ;;
+ $object)
+ shift
+ ;;
+ *)
+ set fnord "$@" "$arg"
+ shift # fnord
+ shift # $arg
+ ;;
+ esac
+ done
+
+ "$@" -E |
+ sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
+ sed '$ s: \\$::' > "$tmpdepfile"
+ rm -f "$depfile"
+ echo "$object : \\" > "$depfile"
+ cat < "$tmpdepfile" >> "$depfile"
+ sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+msvisualcpp)
+ # Important note: in order to support this mode, a compiler *must*
+ # always write the preprocessed file to stdout.
+ "$@" || exit $?
+
+ # Remove the call to Libtool.
+ if test "$libtool" = yes; then
+ while test "X$1" != 'X--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+
+ IFS=" "
+ for arg
+ do
+ case "$arg" in
+ -o)
+ shift
+ ;;
+ $object)
+ shift
+ ;;
+ "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
+ set fnord "$@"
+ shift
+ shift
+ ;;
+ *)
+ set fnord "$@" "$arg"
+ shift
+ shift
+ ;;
+ esac
+ done
+ "$@" -E 2>/dev/null |
+ sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
+ rm -f "$depfile"
+ echo "$object : \\" > "$depfile"
+ sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
+ echo " " >> "$depfile"
+ sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+msvcmsys)
+ # This case exists only to let depend.m4 do its work. It works by
+ # looking at the text of this script. This case will never be run,
+ # since it is checked for above.
+ exit 1
+ ;;
+
+none)
+ exec "$@"
+ ;;
+
+*)
+ echo "Unknown depmode $depmode" 1>&2
+ exit 1
+ ;;
+esac
+
+exit 0
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
diff --git a/distro/archlinux/PKGBUILD b/distro/archlinux/PKGBUILD
new file mode 100644
index 00000000..bf4c4f45
--- /dev/null
+++ b/distro/archlinux/PKGBUILD
@@ -0,0 +1,40 @@
+pkgname=mate-window-manager
+pkgver=2011.11.28
+pkgrel=1
+pkgdesc="A window manager for MATE"
+arch=(i686 x86_64)
+license=('GPL')
+depends=('mate-conf' 'mate-dialogs' 'libgtop' 'libwnck') # 'libcanberra' 'startup-notification'
+makedepends=('intltool' 'pkgconfig' 'mate-doc-utils')
+options=('!emptydirs' '!libtool')
+install=mate-window-manager.install
+url="http://matsusoft.com.ar/projects"
+groups=('mate')
+source=(http://sourceforge.net/projects/matede/files/${pkgver}/${pkgname}.tar.gz/download
+ metacity-restartstyle.patch)
+sha256sums=('bbacc3cd0b7cb0d44d0417613d151cc3178a4b0fcf3ff77b4d254c9927f9942e'
+ 'ea2450ca3e4fb59166ec18ff4844cc61cb16865880dc6b125078a3ab47bf2caf')
+
+build() {
+ cd "${srcdir}/${pkgname}"
+ patch -Np1 -i "${srcdir}/metacity-restartstyle.patch" || return 1
+ ./autogen.sh \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --libexecdir=/usr/lib/mate-window-manager \
+ --disable-static \
+ --disable-startup-notification \
+ --disable-scrollkeeper || return 1
+ make || return 1
+}
+
+package() {
+ cd "${srcdir}/${pkgname}"
+
+ make MATECONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install || return 1
+
+ install -m755 -d "${pkgdir}/usr/share/mateconf/schemas"
+ mateconf-merge-schema "${pkgdir}/usr/share/mateconf/schemas/${pkgname}.schemas" --domain ${pkgname} ${pkgdir}/etc/mateconf/schemas/*.schemas
+ rm -f ${pkgdir}/etc/mateconf/schemas/*.schemas
+}
diff --git a/distro/archlinux/mate-window-manager.install b/distro/archlinux/mate-window-manager.install
new file mode 100644
index 00000000..7bdd0c02
--- /dev/null
+++ b/distro/archlinux/mate-window-manager.install
@@ -0,0 +1,17 @@
+ pkgname=mate-window-manager
+
+post_install() {
+ usr/sbin/mateconfpkg --install ${pkgname}
+}
+
+pre_upgrade() {
+ pre_remove $1
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ usr/sbin/mateconfpkg --uninstall ${pkgname}
+}
diff --git a/distro/archlinux/metacity-restartstyle.patch b/distro/archlinux/metacity-restartstyle.patch
new file mode 100644
index 00000000..99fe864a
--- /dev/null
+++ b/distro/archlinux/metacity-restartstyle.patch
@@ -0,0 +1,139 @@
+From a3de65d5d1861f755ced7cad291fbbd4f1b8ef51 Mon Sep 17 00:00:00 2001
+From: Owen W. Taylor <[email protected]>
+Date: Sat, 22 Aug 2009 15:00:57 -0400
+Subject: [PATCH] Should set RestartStyleHint to RestartIfRunning when replaced
+
+This reverts most of commit abbd057eb967e6ab462ffe305f41b2b04d417b25;
+
+ - It's fine to call meta_session_shutdown() after the display
+ is closed, since it's talking over the ICE connection
+ - We should not call warn_about_lame_clients_and_finish_interact()
+ unless we are interacting with the window manager in a session
+ save.
+
+However, the part of abbd057 that fixed accessing freed memory was
+fixing a real problem; this patches does the same thing in a simpler
+way by fixing an obvious type in meta_display_close() where it was
+NULL'ing out the local variable 'display' rather than the global
+variable 'the_display' and adding keeping the check in meta_finalize()
+that was added in abbd057.
+
+The order of calling meta_session_shutdown() and
+calling meta_display_close() is reverted back to the old order to
+make it clear that it's OK if the display way already closed previously.
+
+http://bugzilla.gnome.org/show_bug.cgi?id=588119
+---
+ src/core/display-private.h | 2 +-
+ src/core/display.c | 16 ++++------------
+ src/core/main.c | 5 ++---
+ src/core/session.c | 8 --------
+ 4 files changed, 7 insertions(+), 24 deletions(-)
+
+diff --git a/src/core/display-private.h b/src/core/display-private.h
+index 19287f3..9c8ebc6 100644
+--- a/src/core/display-private.h
++++ b/src/core/display-private.h
+@@ -329,7 +329,7 @@ MetaScreen* meta_display_screen_for_xwindow (MetaDisplay *display,
+ void meta_display_grab (MetaDisplay *display);
+ void meta_display_ungrab (MetaDisplay *display);
+
+-void meta_display_unmanage_screen (MetaDisplay **display,
++void meta_display_unmanage_screen (MetaDisplay *display,
+ MetaScreen *screen,
+ guint32 timestamp);
+
+diff --git a/src/core/display.c b/src/core/display.c
+index 55c374a..8e35a35 100644
+--- a/src/core/display.c
++++ b/src/core/display.c
+@@ -926,7 +926,7 @@ meta_display_close (MetaDisplay *display,
+ meta_compositor_destroy (display->compositor);
+
+ g_free (display);
+- display = NULL;
++ the_display = NULL;
+
+ meta_quit (META_EXIT_SUCCESS);
+ }
+@@ -4762,13 +4762,10 @@ process_selection_clear (MetaDisplay *display,
+ meta_verbose ("Got selection clear for screen %d on display %s\n",
+ screen->number, display->name);
+
+- meta_display_unmanage_screen (&display,
++ meta_display_unmanage_screen (display,
+ screen,
+ event->xselectionclear.time);
+
+- if (!display)
+- the_display = NULL;
+-
+ /* display and screen may both be invalid memory... */
+
+ return;
+@@ -4790,12 +4787,10 @@ process_selection_clear (MetaDisplay *display,
+ }
+
+ void
+-meta_display_unmanage_screen (MetaDisplay **displayp,
++meta_display_unmanage_screen (MetaDisplay *display,
+ MetaScreen *screen,
+ guint32 timestamp)
+ {
+- MetaDisplay *display = *displayp;
+-
+ meta_verbose ("Unmanaging screen %d on display %s\n",
+ screen->number, display->name);
+
+@@ -4805,10 +4800,7 @@ meta_display_unmanage_screen (MetaDisplay **displayp,
+ display->screens = g_slist_remove (display->screens, screen);
+
+ if (display->screens == NULL)
+- {
+- meta_display_close (display, timestamp);
+- *displayp = NULL;
+- }
++ meta_display_close (display, timestamp);
+ }
+
+ void
+diff --git a/src/core/main.c b/src/core/main.c
+index a36a396..44d317e 100644
+--- a/src/core/main.c
++++ b/src/core/main.c
+@@ -361,12 +361,11 @@ static void
+ meta_finalize (void)
+ {
+ MetaDisplay *display = meta_get_display();
+-
+- meta_session_shutdown ();
+-
+ if (display)
+ meta_display_close (display,
+ CurrentTime); /* I doubt correct timestamps matter here */
++
++ meta_session_shutdown ();
+ }
+
+ static void
+diff --git a/src/core/session.c b/src/core/session.c
+index 7e3b389..0d69350 100644
+--- a/src/core/session.c
++++ b/src/core/session.c
+@@ -376,14 +376,6 @@ meta_session_shutdown (void)
+ SmProp *props[1];
+ char hint = SmRestartIfRunning;
+
+- if (!meta_get_display ())
+- {
+- meta_verbose ("Cannot close session because there is no display");
+- return;
+- }
+-
+- warn_about_lame_clients_and_finish_interact (FALSE);
+-
+ if (session_connection == NULL)
+ return;
+
+--
+1.6.4
diff --git a/distro/ubuntu/build b/distro/ubuntu/build
new file mode 100755
index 00000000..776572ca
--- /dev/null
+++ b/distro/ubuntu/build
@@ -0,0 +1,35 @@
+#!/bin/bash
+
+# fill it
+pkgname=mate-window-manager
+pkgver=2011.11.28
+pkgrel=1
+pkgdesc="A window manager for MATE"
+depends=('mate-conf' 'mate-dialogs' 'libgtop2-7' 'libwnck22')
+# editar esta funcion!
+build() {
+ cd $pkgsrc
+ # descomprimir
+ tar xvzf download
+ # entramos a la carpeta
+ cd ${pkgname}
+
+ ./autogen.sh \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --libexecdir=/usr/lib/${pkgname} \
+ --disable-static \
+ --disable-startup-notification \
+ --disable-scrollkeeper || return 1
+ make || return 1
+
+ make MATECONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+
+ install -m755 -d "${pkgdir}/usr/share/mateconf/schemas"
+ mateconf-merge-schema "${pkgdir}/usr/share/mateconf/schemas/${pkgname}.schemas" --domain ${pkgname} ${pkgdir}/etc/mateconf/schemas/*.schemas
+ rm -f ${pkgdir}/etc/mateconf/schemas/*.schemas
+}
+
+# esto incluye la parte que se repite en la mayoria de los builds
+. /usr/share/mate-doc-utils/mate-debian.sh
diff --git a/distro/ubuntu/postinst b/distro/ubuntu/postinst
new file mode 100755
index 00000000..18863d13
--- /dev/null
+++ b/distro/ubuntu/postinst
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+pkgname=mate-window-manager
+
+if [ -f /usr/sbin/mateconfpkg ]; then
+ /usr/sbin/mateconfpkg --install ${pkgname}
+fi
+
+exit 0
diff --git a/distro/ubuntu/preinst b/distro/ubuntu/preinst
new file mode 100755
index 00000000..85d7a724
--- /dev/null
+++ b/distro/ubuntu/preinst
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+pkgname=mate-window-manager
+
+if [ -f /usr/sbin/mateconfpkg ]; then
+ /usr/sbin/mateconfpkg --uninstall ${pkgname}
+fi
+
diff --git a/distro/ubuntu/prerm b/distro/ubuntu/prerm
new file mode 100755
index 00000000..e05519b4
--- /dev/null
+++ b/distro/ubuntu/prerm
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+set -e
+
+pkgname=mate-window-manager
+
+if [ -f /usr/sbin/mateconfpkg ]; then
+ /usr/sbin/mateconfpkg --uninstall ${pkgname}
+fi
+
+exit 0
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 00000000..1c16425a
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1,4 @@
+SUBDIRS = man creating_themes
+
+EXTRA_DIST=theme-format.txt marco-theme.dtd dialogs.txt code-overview.txt \
+ how-to-get-focus-right.txt
diff --git a/doc/Makefile.in b/doc/Makefile.in
new file mode 100644
index 00000000..906b9bbd
--- /dev/null
+++ b/doc/Makefile.in
@@ -0,0 +1,609 @@
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = doc
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.in
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
+ install-html-recursive install-info-recursive \
+ install-pdf-recursive install-ps-recursive install-recursive \
+ installcheck-recursive installdirs-recursive pdf-recursive \
+ ps-recursive uninstall-recursive
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+ distdir
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+ dir0=`pwd`; \
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+ sed_rest='s,^[^/]*/*,,'; \
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+ sed_butlast='s,/*[^/]*$$,,'; \
+ while test -n "$$dir1"; do \
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+ if test "$$first" != "."; then \
+ if test "$$first" = ".."; then \
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+ else \
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+ if test "$$first2" = "$$first"; then \
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+ else \
+ dir2="../$$dir2"; \
+ fi; \
+ dir0="$$dir0"/"$$first"; \
+ fi; \
+ fi; \
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+ done; \
+ reldir="$$dir2"
+ACLOCAL = @ACLOCAL@
+ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
+ALL_CFLAGS = @ALL_CFLAGS@
+ALL_LIBS = @ALL_LIBS@
+ALL_LINGUAS = @ALL_LINGUAS@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATADIRNAME = @DATADIRNAME@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@
+DLLTOOL = @DLLTOOL@
+DOC_USER_FORMATS = @DOC_USER_FORMATS@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GDK_PIXBUF_CSOURCE = @GDK_PIXBUF_CSOURCE@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GREP = @GREP@
+GTK_API_VERSION = @GTK_API_VERSION@
+HELP_DIR = @HELP_DIR@
+HOST_ALIAS = @HOST_ALIAS@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INSTOBJEXT = @INSTOBJEXT@
+INTLLIBS = @INTLLIBS@
+INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
+INTLTOOL_MERGE = @INTLTOOL_MERGE@
+INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MARCO_CFLAGS = @MARCO_CFLAGS@
+MARCO_LIBS = @MARCO_LIBS@
+MARCO_MESSAGE_CFLAGS = @MARCO_MESSAGE_CFLAGS@
+MARCO_MESSAGE_LIBS = @MARCO_MESSAGE_LIBS@
+MARCO_WINDOW_DEMO_CFLAGS = @MARCO_WINDOW_DEMO_CFLAGS@
+MARCO_WINDOW_DEMO_LIBS = @MARCO_WINDOW_DEMO_LIBS@
+MATECONFTOOL = @MATECONFTOOL@
+MATECONF_SCHEMA_CONFIG_SOURCE = @MATECONF_SCHEMA_CONFIG_SOURCE@
+MATECONF_SCHEMA_FILE_DIR = @MATECONF_SCHEMA_FILE_DIR@
+MATEDIALOG = @MATEDIALOG@
+MATE_KEYBINDINGS_KEYSDIR = @MATE_KEYBINDINGS_KEYSDIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+MSGFMT_OPTS = @MSGFMT_OPTS@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OMF_DIR = @OMF_DIR@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+POFILES = @POFILES@
+POSUB = @POSUB@
+PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
+PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+XMKMF = @XMKMF@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+SUBDIRS = man creating_themes
+EXTRA_DIST = theme-format.txt marco-theme.dtd dialogs.txt code-overview.txt \
+ how-to-get-focus-right.txt
+
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu doc/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+$(RECURSIVE_CLEAN_TARGETS):
+ @fail= failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+ $(am__relativize); \
+ new_distdir=$$reldir; \
+ dir1=$$subdir; dir2="$(top_distdir)"; \
+ $(am__relativize); \
+ new_top_distdir=$$reldir; \
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+ ($(am__cd) $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$new_top_distdir" \
+ distdir="$$new_distdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ am__skip_mode_fix=: \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
+ install-am install-strip tags-recursive
+
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+ all all-am check check-am clean clean-generic clean-libtool \
+ ctags ctags-recursive distclean distclean-generic \
+ distclean-libtool distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/doc/code-overview.txt b/doc/code-overview.txt
new file mode 100644
index 00000000..566abd04
--- /dev/null
+++ b/doc/code-overview.txt
@@ -0,0 +1,185 @@
+This is not meant to be comprehensive by any means. Rather it is
+meant as just a brief overview of some of the bigger structures and
+files, with guides for a variety of task categories providing places
+to start looking in the code and things to look for.
+
+Overview
+ Jobs of various files
+ Major data structures and their relationships
+ Getting started -- where to look
+
+
+Jobs of various files
+ src/window.c is where all the guts of the window manager live. This is
+ basically the only remotely scary file.
+
+ src/frames.c is the GtkWidget that handles drawing window frames.
+
+ src/core.h defines the interface used by the GTK portion of the window
+ manager to talk to the other portions. There's some cruft in here that's
+ unused, since nearly all window operations have moved out of this file so
+ frameless apps can have window operations.
+
+ src/ui.h defines the interface the plain Xlib portion of the window
+ manager uses to talk to the GTK portion.
+
+ src/theme.c and src/theme-parser.c have the theme system; this is
+ well-modularized from the rest of the code, since the theme viewer app
+ links to these files in addition to the WM itself.
+
+Major data structures and their relationships
+ Major structs have a "Meta" prefix, thus MetaDisplay, MetaScreen,
+ MetaWindow, etc. This serves as a way of namespacing in C. It also has
+ the side effect of avoiding conflicts with common names that X already
+ uses such as Display, Screen, Window, etc. Note that when I refer to a
+ display below, I'm meaning a MetaDisplay and not a Display.
+
+ Don't confuse displays and screens. While Marco can run with multiple
+ displays, it is kind of useless since you might as well just run two
+ copies of Marco. However, having multiple screens per display is
+ useful and increasingly common (known as "multiscreen" and "xinerama"
+ setups, where users make use of more than one monitor). You should
+ basically think of a display as a combination of one or more monitors
+ with a single keyboard (...and usually only one mouse).
+
+ There is also a significant difference between multiscreen and xinerama
+ as well. Basically, each MetaScreen is a root window (root node in the
+ tree of windows). With Xinerama, a single root window appears to span
+ multiple monitors, whereas with multiscreen a root window is confined to
+ a single monitor. To re-emphasize the distinction between a display and
+ a screen, the pointer and keyboard are shared between all root windows
+ for a given display.
+
+ The display keeps track of a lot of various global quantities, but in
+ particular has a compositor and a list (GList) of screens.
+
+ A compositor is an opaque structure (only defined in compositor.c),
+ meaning that you'll only reference the API for it. It handles (or will
+ handle) cool stuff with the new X extensions, such as smooth resizing and
+ alpha transparency.
+
+ A screen keeps track of a number of quantities as well, in particular a
+ stack and a list of workspaces.
+
+ A stack is basically a list of windows, and the depth order they have
+ relative to each other (which thus determines which windows are on top
+ and which are obscured).
+
+ A workspace mostly contains a list of windows for the workspace, but also
+ has a few other quantities as well (a list of struts which are areas
+ where windows should not be placed and an mru_list or "most recently used
+ window list").
+
+ A window has a huge list of quantities for keeping track of things about
+ a window on the screen. (We want to avoid making this list larger
+ because the memory for all these quantities is per window.) One item in
+ particular that a window has, though, is a frame.
+
+ A frame is the decorations that surround the window (i.e. the titlebar and
+ the minimize and close buttons and the part that you can use to resize),
+ and contains a handful of variables related to that, but no other major
+ structures.
+
+Getting started -- where to look
+ Getting started on developing free software projects can often be like
+ being dropped off in a town that is unknown to you and being told to make
+ a map, when various road and building signs are missing or fading. To
+ try to alleviate that initial difficulty in orientation, below I list a
+ variety of general task categories with file, function, variable, and x
+ property names that may be useful to fixing bugs or writing features that
+ fall within that category.
+
+ First, though, it's useful to note that most event and message passing
+ goes through display.c:event_callback(), so that's often a good place to
+ start reading for general familiarity with the code (actually, I'd
+ suggest skipping down to the first switch statement within that
+ function). Of course, not all events go through that function, as there
+ are a few other places that handle events too such as frames.c.
+
+ Anyway, without further ado, here are the categories and (hopefully)
+ useful things to look at for each:
+
+ Focus issues (i.e. issues with which window is active):
+ doc/how-to-get-focus-right.txt
+ meta_workspace_focus_default_window
+ _NET_ACTIVE_WINDOW
+ _NET_WM_USER_TIME
+ meta_window_focus
+ meta_display_(set_input|focus_the_no)_focus_window
+ XSetInputFocus (only for purposes of understanding how X focus/input works)
+ CurrentTime (mostly, you should just think "Bad; don't use it")
+
+ Compositor stuff (X extension for eye candy like transparency):
+ compositor.c
+ The luminocity module in CVS
+
+ Window depth (i.e. stacking or lowering/raising) issues:
+ stack.c
+ _NET_CLIENT_LIST_STACKING
+ transient_for
+ WM_TRANSIENT_FOR
+ meta_window_(raise|lower)
+ _NET_WM_WINDOW_TYPE
+ _NET_WM_MOUSE_ACTION/_NET_WM_TAKE_ACTIVITY? (aren't yet in EWMH)
+
+ Window placement issues:
+ place.c
+ constraints.c
+ _NET_WM_STRUT
+ WM_SIZE_HINTS
+
+ Moving and resizing issues:
+ constraints.c
+ update_move
+ update_resize
+ meta_window_handle_mouse_grab_op_event
+ _NET_MOVERESIZE_WINDOW
+ _NET_WM_STRUT
+
+ Drag and drop issues:
+ the XDND protocol (see http://www.newplanetsoftware.com/xdnd/ and
+ http://freedesktop.org/Standards/XDND)
+ _NET_WM_MOUSE_ACTION/_NET_WM_TAKE_ACTIVITY (aren't yet in EWMH)
+ A general pointer: what causes the difficulty here is that when the
+ application receives a mouse click to start a drag, it does a grab
+ so that the window manager doesn't get any further events; thus
+ correcting things require standards so that applications and window
+ managers can collaborate correctly
+
+ Theme issues: ???
+ doc/theme-format.txt
+ theme.c
+ theme-parser.c
+ (ui.c, core.c, frames.c, frame.c? I dunno...)
+
+ Session management issues: ???
+ session.c
+ http://www.x.org/X11R6.8.1/doc/SM/xsmp.pdf ?
+ http://www.x.org/X11R6.8.1/doc/SM/SMlib.pdf ?
+ meta_window_apply_session_info
+
+ Tasklist and Workspace switcher issues:
+ window-props.c
+ various functions in screen.c (especially ones using XChangeProperty)
+ xprops.c
+ The libwnck module in cvs
+ meta_window_client_message
+ Lots of the EWMH
+
+ Window and workspace selection/changing issues:
+ tabpopup.c
+ keybindings.c, functions: *_workspace*, *_tab_*
+ meta_screen_ensure_*_popup
+ display.c, functions: *_tab*
+
+ Key and mouse binding actions:
+ keybindings.c
+ meta_frames_button_(press|release)_event
+ display.c: event_callback, but only the (Key|Button)_(Press|Release) cases
+
+ Xinerama and multiscreen: ???
+ In general, just search for Xinerama, but in particular see
+ screen.c
+ window.c
+ place.c
+ constraints.c
diff --git a/doc/creating_themes/C/calstblx.dtd b/doc/creating_themes/C/calstblx.dtd
new file mode 100644
index 00000000..fac58d77
--- /dev/null
+++ b/doc/creating_themes/C/calstblx.dtd
@@ -0,0 +1,215 @@
+<!-- ...................................................................... -->
+<!-- DocBook CALS Table Model V4.5 ........................................ -->
+<!-- File calstblx.mod .................................................... -->
+
+<!-- Copyright 1992-2002 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ This DTD is based on the CALS Table Model
+ PUBLIC "-//USA-DOD//DTD Table Model 951010//EN"
+
+ $Id: calstblx.dtd 6340 2006-10-03 13:23:24Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook DTD
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation for more information.
+
+ Please direct all questions, bug reports, or suggestions for
+ changes to the [email protected] mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the definitions for the CALS Table Model
+ converted to XML. It has been modified slightly for use in the
+ combined HTML/CALS models supported by DocBook V4.5.
+-->
+
+<!-- These definitions are not directly related to the table model, but are
+ used in the default CALS table model and are usually defined elsewhere
+ (and prior to the inclusion of this table module) in a CALS DTD. -->
+
+<!ENTITY % bodyatt "">
+<!ENTITY % secur "">
+
+<!-- no if zero(s),
+ yes if any other digits value -->
+
+<!ENTITY % yesorno 'CDATA'>
+<!ENTITY % titles 'title?'>
+
+<!-- default for use in entry content -->
+
+<!ENTITY % paracon '#PCDATA'>
+
+<!--
+The parameter entities as defined below provide the CALS table model
+as published (as part of the Example DTD) in MIL-HDBK-28001.
+
+These following declarations provide the CALS-compliant default definitions
+for these entities. However, these entities can and should be redefined
+(by giving the appropriate parameter entity declaration(s) prior to the
+reference to this Table Model declaration set entity) to fit the needs
+of the current application.
+-->
+
+<!ENTITY % tbl.table.name "(table|chart)">
+<!ENTITY % tbl.table-titles.mdl "%titles;,">
+<!ENTITY % tbl.table-main.mdl "(tgroup+|graphic+)">
+<!ENTITY % tbl.table.mdl "%tbl.table-titles.mdl; %tbl.table-main.mdl;">
+<!ENTITY % tbl.table.att '
+ tabstyle CDATA #IMPLIED
+ tocentry %yesorno; #IMPLIED
+ shortentry %yesorno; #IMPLIED
+ orient (port|land) #IMPLIED
+ pgwide %yesorno; #IMPLIED '>
+<!ENTITY % tbl.tgroup.mdl "colspec*,spanspec*,thead?,tfoot?,tbody">
+<!ENTITY % tbl.tgroup.att '
+ tgroupstyle CDATA #IMPLIED '>
+<!ENTITY % tbl.hdft.mdl "colspec*,row+">
+<!ENTITY % tbl.row.mdl "(entry|entrytbl)+">
+<!ENTITY % tbl.entrytbl.mdl "colspec*,spanspec*,thead?,tbody">
+<!ENTITY % tbl.entry.mdl "(para|warning|caution|note|legend|%paracon;)*">
+
+<!ENTITY % tbl.frame.attval "top|bottom|topbot|all|sides|none">
+<!ENTITY % tbl.tbody.mdl "row+">
+
+<!-- ===== Element and attribute declarations follow. ===== -->
+
+<!--doc:A formal table in a document.-->
+<!ELEMENT table %ho; (%tbl.table.mdl;)>
+
+<!ATTLIST table
+ frame (%tbl.frame.attval;) #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ %tbl.table.att;
+ %bodyatt;
+ %secur;
+>
+
+<!--doc:A wrapper for the main content of a table, or part of a table.-->
+<!ELEMENT tgroup %ho; (%tbl.tgroup.mdl;) >
+
+<!ATTLIST tgroup
+ cols CDATA #REQUIRED
+ %tbl.tgroup.att;
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED
+ %secur;
+>
+
+<!--doc:Specifications for a column in a table.-->
+<!ELEMENT colspec %ho; EMPTY >
+
+<!ATTLIST colspec
+ colnum CDATA #IMPLIED
+ colname CDATA #IMPLIED
+ colwidth CDATA #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED
+>
+
+<!--doc:Formatting information for a spanned column in a table.-->
+<!ELEMENT spanspec %ho; EMPTY >
+
+<!ATTLIST spanspec
+ namest CDATA #REQUIRED
+ nameend CDATA #REQUIRED
+ spanname CDATA #REQUIRED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED
+>
+
+<!--doc:A table header consisting of one or more rows.-->
+<!ELEMENT thead %ho; (%tbl.hdft.mdl;)>
+<!ATTLIST thead
+ valign (top|middle|bottom) #IMPLIED
+ %secur;
+>
+
+<!--doc:A table footer consisting of one or more rows.-->
+<!ELEMENT tfoot %ho; (%tbl.hdft.mdl;)>
+<!ATTLIST tfoot
+ valign (top|middle|bottom) #IMPLIED
+ %secur;
+>
+
+<!--doc:A wrapper for the rows of a table or informal table.-->
+<!ELEMENT tbody %ho; (%tbl.tbody.mdl;)>
+
+<!ATTLIST tbody
+ valign (top|middle|bottom) #IMPLIED
+ %secur;
+>
+
+<!--doc:A row in a table.-->
+<!ELEMENT row %ho; (%tbl.row.mdl;)>
+
+<!ATTLIST row
+ rowsep %yesorno; #IMPLIED
+ valign (top|middle|bottom) #IMPLIED
+ %secur;
+>
+
+<!--doc:A subtable appearing in place of an Entry in a table.-->
+<!ELEMENT entrytbl %ho; (%tbl.entrytbl.mdl;)>
+
+<!ATTLIST entrytbl
+ cols CDATA #REQUIRED
+ %tbl.tgroup.att;
+ colname CDATA #IMPLIED
+ spanname CDATA #IMPLIED
+ namest CDATA #IMPLIED
+ nameend CDATA #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED
+ %secur;
+>
+
+<!--doc:A cell in a table.-->
+<!ELEMENT entry %ho; (%tbl.entry.mdl;)*>
+
+<!ATTLIST entry
+ colname CDATA #IMPLIED
+ namest CDATA #IMPLIED
+ nameend CDATA #IMPLIED
+ spanname CDATA #IMPLIED
+ morerows CDATA #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED
+ rotate %yesorno; #IMPLIED
+ valign (top|middle|bottom) #IMPLIED
+ %secur;
+>
+
+<!-- End of DocBook CALS Table Model V4.5 ................................. -->
+<!-- ...................................................................... -->
diff --git a/doc/creating_themes/C/creating-marco-themes.xml b/doc/creating_themes/C/creating-marco-themes.xml
new file mode 100644
index 00000000..a2b6da7c
--- /dev/null
+++ b/doc/creating_themes/C/creating-marco-themes.xml
@@ -0,0 +1,286 @@
+<?xml version="1.0"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "docbookx.dtd" [
+]>
+
+<book id="index">
+
+ <bookinfo>
+
+ <title>Understanding Marco Themes</title>
+
+ <authorgroup>
+ <author>
+ <firstname>Thomas</firstname>
+ <surname>Thurman</surname>
+ </author>
+ </authorgroup>
+
+ <abstract>
+
+ <para>
+ We very much appreciate any reports of inaccuracies or other errors in
+ this document. Contributions are also most welcome. Post your
+ suggestions, critiques or addenda to the <ulink
+ url="mailto:[email protected]">team</ulink>.</para>
+
+ </abstract>
+
+ <copyright>
+ <year>2008</year>
+ <holder>Thomas Thurman</holder>
+ </copyright>
+
+ <legalnotice>
+ <para>
+ Permission is granted to copy, distribute and/or modify this document
+ under the terms of the GNU Free Documentation License, Version 1.2
+ or any later version published by the Free Software Foundation;
+ with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
+ You may obtain a copy of the GNU Free Documentation License from the Free Software Foundation by visiting their Web site or by writing to: Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ </para>
+ </legalnotice>
+
+ </bookinfo>
+
+<chapter id="sec-introduction">
+<title>Introduction</title>
+
+<para>This is an article about how to theme Marco. It is a work in progress, and I have had to dig deeply to find some answers; I may well have made mistakes and I welcome corrections and suggestions.</para>
+<para>MATE lets you theme a bunch of different things, but we're only talking about <literal>window border</literal> themes here, which some people call Marco themes; <ulink url="http://en.wikipedia.org/wiki/Marco#Themes">Wikipedia begins a sentence</ulink> with &quot;Despite the incomplete state of Marco theme development documentation&quot;, and though there <emphasis>is</emphasis> <ulink url="http://svn.mate.org/viewvc/marco/trunk/doc/theme-format.txt?view=markup">documentation in the source</ulink>, apparently not many people find it, and it's written more for programmers than theme designers. Glynn Foster also wrote <ulink url="http://developer.mate.org/doc/tutorials/marco/marco-themes.html">a very good introduction to Marco themes</ulink> (<ulink url="http://home.arcor.de/rybaczyk/documents/tutorials/marco/marco-themes.de.html">[de]</ulink>) six years ago, but things have changed a little since then. <ulink url="http://lists.freedesktop.org/archives/compiz/2006-September/000445.html">Marco themes can also be used by Compiz</ulink>, and perhaps by other window managers for all I know.</para>
+
+<para>So, a Marco theme is a set of instructions about how to &quot;decorate&quot; (draw the borders around) a window. Presumably you don't want to style all windows identically, so the format lets you specify details for different kinds of window:</para>
+
+<para>
+<variablelist>
+ <varlistentry>
+ <term>state:</term><listitem><para>Every window must be in exactly one of these states: <literal>normal</literal>, <literal>dialog</literal>, <literal>modal dialog</literal> (i.e. a dialogue which means you can't interact with the rest of the program while it's up), <literal>menu</literal> (torn off from the main application, not that people do that much these days), <literal>utility</literal> (that is, palettes and toolboxes and things), and <literal>border</literal>. X also allows a window to explicitly ask to be undecorated, but of course we don't provide for those in a list of decoration instructions.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>focused</term><listitem><para>Every window is either the active window (which X people call &quot;focused&quot;), or it isn't.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>maximized</term><listitem><para>Every window is either (fully) maximised (horizontal and vertical only don't count), or it isn't.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>shaded</term><listitem><para>Every window is either rolled up to show just its titlebar (which techies call &quot;shaded&quot; for some reason I can't fathom), or it isn't.</para></listitem>
+ </varlistentry>
+</variablelist>
+</para>
+
+<para>
+<itemizedlist>
+<listitem><para><emphasis>If a window is not fully maximised and not shaded,</emphasis> it either allows horizontal resizing, or it doesn't.</para></listitem>
+<listitem><para><emphasis>If a window is not fully maximised and not shaded,</emphasis> it either allows vertical resizing, or it doesn't.</para></listitem>
+</itemizedlist>
+</para>
+
+</chapter>
+
+<chapter>
+<title>What's in the file</title>
+
+<para>The files must be called either</para>
+
+<para>
+<itemizedlist>
+<listitem><para>~/.themes/<varname>N</varname>/marco-1/marco-theme-<varname>V</varname>.xml
+for a theme used only by you, or</para></listitem>
+<listitem><para>/usr/share/themes/<varname>N</varname>/marco-1/marco-theme-<varname>V</varname>.xml
+for a theme installed for all users.</para></listitem>
+</itemizedlist>
+</para>
+
+<para>where <varname>N</varname> is the name of the theme and <varname>V</varname> is the version of the format. Version 2, <ulink url="http://svn.mate.org/viewvc/marco?view=revision&amp;revision=2973">introduced in October 2006</ulink>, adds a few extra features, but it's rarely used. Version 1 is the original format. The formats are fixed once they're stable for both backwards and forwards compatibility; <ulink url="http://bugzilla.mate.org/show_bug.cgi?id=482165">new features</ulink> can't be added without introducing a new version number, which is why improvements come out rarely and in large clumps. <literal>marco-1</literal> in the names is a fossil and doesn't mean version 1 of anything.</para>
+
+<para>The marco-theme-V.xml files are <ulink url="http://blogs.mate.org/tthurman/2008/02/14/gmarkup/">GMarkup files</ulink>, which are very similar to XML. For now, you actually have to write these in a text editor or something; you can either start with a blank page, or modify a theme someone else has made. (I am thinking of writing a general theme editor program, but that'll have to wait until I've reduced Marco's open bug queue a little.) If you want to see a fully-fledged one, you can look at <ulink url="http://svn.mate.org/viewvc/marco/trunk/src/themes/Atlanta/marco-theme-1.xml?view=markup">the current version of &quot;Atlanta&quot;</ulink>, one of the simplest themes, but even that is quite complicated-looking at first.</para>
+<para>So, let's talk about what actually goes inside the files. As in any XML file, &lt;!-<!-- x -->- &#8230; <!-- x -->&gt; are comments. At its most basic, it would go:</para>
+
+<para>
+<programlisting>
+&lt;marco_theme&gt;
+&lt;!-<!-- x -->- Helper stuff: -<!-- x -->-&gt;
+&lt;info &#8230;&gt; &lt;!-<!-- x -->- to be explained -<!-- x -->-&gt;
+&lt;constant &#8230;&gt; &lt;!-<!-- x -->- maybe; to be explained -<!-- x -->-&gt;
+
+&lt;draw_ops &#8230;&gt; &lt;!-<!-- x -->- maybe; to be explained -<!-- x -->-&gt;
+
+&lt;!-<!-- x -->- Things we build the top level onto: -<!-- x -->-&gt;
+&lt;frame_geometry &#8230;&gt; &lt;!-<!-- x -->- to be explained -<!-- x -->-&gt;
+
+&lt;frame_style &#8230;&gt; &lt;!-<!-- x -->- to be explained -<!-- x -->-&gt;
+&lt;frame_style_set &#8230;&gt; &lt;!-<!-- x -->- to be explained -<!-- x -->-&gt;
+
+&lt;!-<!-- x -->- And the top level: -<!-- x -->-&gt;
+
+&lt;window type=&quot;normal&quot; style_set=&quot;&#8230;&quot; /&gt;
+&lt;window type=&quot;dialog&quot; style_set=&quot;&#8230;&quot; /&gt;
+&lt;window type=&quot;modal_dialog&quot; style_set=&quot;&#8230;&quot; /&gt;
+
+&lt;window type=&quot;menu&quot; style_set=&quot;&#8230;&quot; /&gt;
+&lt;window type=&quot;utility&quot; style_set=&quot;&#8230;&quot; /&gt;
+&lt;window type=&quot;border&quot; style_set=&quot;&#8230;&quot; /&gt;
+
+&lt;/marco_theme&gt;
+</programlisting>
+</para>
+
+</chapter>
+
+<chapter>
+<title>Matching windows</title>
+
+<para>
+<variablelist>
+ <varlistentry>
+ <term>window</term><listitem><para>You see that at the top level we have a list of &lt;window&gt; tags, one for each window state we discussed above. The style_set argument of each of these gives the name of a frame_style_set.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>frame_style_set:</term><listitem><para>tells Marco how to draw windows according to whether they're focused or not, maximised or not, shaded or not, and allowing resizing vertically, horizontally, both, or neither. It looks like this:</para></listitem>
+ </varlistentry>
+</variablelist>
+</para>
+
+<para>
+<programlisting>
+&lt;frame_style_set&gt;
+&lt;frame focus=&quot;F&quot; state=&quot;S&quot; resize=&quot;R&quot; style=&quot;N&quot;/&gt;
+&lt;frame&#8230; /&gt;
+
+&#8230;
+&lt;/frame_style_set&gt;
+</programlisting>
+</para>
+
+<para>where:</para>
+
+<para>
+<variablelist>
+ <varlistentry>
+ <term>F</term><listitem><para>is yes for focused, no for unfocused.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>S</term><listitem><para>combines the shaded and maximized flags: normal, maximized, shaded, or maximized_and_shaded.</para></listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>R</term><listitem><para>represents resize permissions that the window gives us: none, vertical, horizontal, or both. Frame settings for maximised windows, which can't be resized, don't have this attribute.</para></listitem>
+ </varlistentry>
+</variablelist>
+</para>
+
+<para>
+<varname>N</varname> is the name of a <literal>frame_style</literal> to apply to a window which has these attributes.</para>
+
+<para>A <literal>frame_style_set</literal> tag may also have a &quot;parent&quot; tag, which should be the name of another <literal>frame_style_set</literal>. This means that if Marco wants to know about a kind of window which that <literal>frame_style_set</literal> doesn't describe, it should look in the parent. Most of the more complicated tags in Marco theme files also have a &quot;parent&quot; attribute which work the same way. This is particularly useful because, taken together, all the <literal>frame_style_set</literal>s in a theme file must be capable of matching every possible kind of window; if a window turns up that they can't match, there will be an error at runtime.</para>
+
+<para>Let's recap what we've seen so far. The combination of a <literal>window</literal>, which matches a window's state (normal, dialog, and so forth), with an entry in the corresponding <literal>frame_style_set</literal>, which matches its focus, shadedness, maximisedness, and resize permissions where relevant, will allow you to make a list of rules to match any window against. The next piece of this puzzle lets you specify what Marco should do with such windows once it's matched them.</para>
+
+</chapter>
+
+<chapter>
+<title>Actually drawing stuff</title>
+
+<para><literal>frame_style:</literal> This is probably the most complicated part of the whole system. A <literal>frame_style</literal> a series of <emphasis><literal>piece</literal></emphasis>s and <emphasis><literal>button</literal></emphasis>s. It looks like this:</para>
+
+<para>
+<programlisting>
+&lt;frame_style name=&quot;&#8230;&quot; geometry=&quot;G&quot;&gt;
+&lt;piece position=&quot;P&quot;&gt;
+&lt;draw_ops&gt;
+&lt;/draw_ops&gt;
+&lt;/piece&gt;
+&#8230;
+&lt;button function=&quot;F&quot; state=&quot;S&quot; draw_ops=&quot;D&quot;/&gt;
+
+&lt;draw_ops&gt;
+&lt;/draw_ops&gt;
+&lt;/button&gt;
+&#8230;
+&lt;/frame_style&gt;
+</programlisting>
+</para>
+
+<para>The <literal>pieces</literal> are pieces of the window frame. When Marco draws a window frame, it renders its various pieces always in the same order. The bolded parts are all the possible values of P:</para>
+
+<para>
+<itemizedlist>
+<listitem><para>the <literal>entire_background</literal>, covering the whole frame</para></listitem>
+
+<listitem><para>the <literal>titlebar</literal>, covering the entire background of the titlebar</para></listitem>
+<listitem><para>the <literal>titlebar_middle</literal>, the part of the titlebar that doesn't touch its edges</para></listitem>
+<listitem><para>the <literal>left_titlebar_edge</literal>, <literal>right_titlebar_edge</literal>, <literal>top_titlebar_edge</literal>, and <literal>bottom_titlebar_edge</literal></para></listitem>
+
+<listitem><para>the <literal>title</literal>, just exactly that area which is covered by the text on the titlebar</para></listitem>
+<listitem><para>the <literal>left_edge</literal>, <literal>right_edge</literal>, and <literal>bottom_edge</literal> of the frame (yes, there is no top_edge: it's identical to top_titlebar_edge, isn't it?)</para></listitem>
+<listitem><para>the <literal>overlay</literal>, which covers everything&#8211; the same as entire_background, but done last instead of first.</para></listitem>
+</itemizedlist>
+</para>
+
+<para><emphasis>What</emphasis> Marco draws in these pieces is decided by the theme. If a <literal>frame_style</literal> or its parents don't specify a particular piece, nothing will be drawn for that piece. You have two ways to specify what to draw: one is that the <literal>piece</literal> tag can have a <literal>draw_ops</literal> tag inside it which lists a sequence of drawing operations in Marco's custom format. <ulink url="http://bugzilla.mate.org/show_bug.cgi?id=107012">You might ask why we don't use SVG</ulink>; one answer is that SVG support wasn't very strong when this format was designed, and another answer is that these days you can use SVG all you like; just include it as an image and Marco will know what to do.</para>
+
+<para>An alternative to including a draw_ops tag inside a piece tag is to add a draw_ops attribute to the piece tag. Then you can add a draw_ops tag at top level (inside the marco_theme tag) with a name attribute, and Marco will use that. This is useful if you use similar draw_ops over and over.</para>
+<para>I'm not going to document draw_ops at present, because this is already very long. I will write it up later and link it from here.</para>
+<para>The <literal>button</literal> tag tells Marco how, but not where, to draw buttons. Buttons are drawn after all the pieces are finished, and the way to draw them is also given using draw_ops. You ought to provide buttons for all the possible kinds of button; if you don't give one it won't be drawn, which is unfortunate for the user who wants to use it:</para>
+
+<para>
+<itemizedlist>
+<listitem><para><literal>left_left_background</literal>, <literal>left_middle_background</literal>, and <literal>left_right_background</literal> don't represent buttons as such, but the background behind them, assuming there can be at most three buttons on the left. These days there can be more, so the extra ones also use left_middle_background.</para></listitem>
+
+<listitem><para><literal>right_left_background</literal>, <literal>right_middle_background</literal>, and <literal>right_right_background</literal> similarly.</para></listitem>
+<listitem><para><literal>close</literal>, <literal>minimize</literal>, <literal>maximize</literal> are the obvious original three buttons.</para></listitem>
+<listitem><para><literal>menu</literal> is the menu button you can click to get a list of actions you can perform on the window.</para></listitem>
+
+<listitem><para><literal>shade</literal>, <literal>above</literal>, <literal>stick</literal> are similar to the original buttons but only allowed in version 2</para></listitem>
+<listitem><para><literal>unshade</literal>, <literal>unabove</literal>, <literal>unstick</literal> are the toggled versions of these buttons. Again, version 2 only.</para></listitem>
+
+</itemizedlist>
+</para>
+
+<para>The reason there are toggled versions of shade, above, and stick, and not maximize, is that by the time you get this far you've probably already decided whether you're drawing a maximised window. So if you <emphasis>are</emphasis> drawing a maximised window, you can make the button called &quot;maximize&quot; look how you want the restore button to be; otherwise, make it look like you want the maximise button to be.</para>
+<para>For each button tag you should also set a &quot;state&quot; attribute; this time the state is either <literal>normal</literal> (the way you see it most of the time), <literal>pressed</literal>, or <literal>prelight</literal> (this makes the buttons subtly light up when you hover over them). You only really need &quot;normal&quot;, but the others are good to have too.</para>
+
+<para>The &quot;geometry&quot; attribute of a <literal>frame_style</literal> tag is the name of a&#8230;</para>
+
+</chapter>
+
+<chapter>
+<title>Geometry</title>
+
+<para>The <literal>geometry</literal> tag defines the sizes of things around the window. It is important, but not easy to explain, and again this file has gone on too long. I'll write it up later.</para>
+
+</chapter>
+
+<chapter>
+<title>Other things which lie around a file</title>
+
+<para>The most important other thing in a theme file is the metadata held in the <literal>info</literal> tag. This contains a set of tags each of which contains some text explaining something about the theme itself, in a sort of <ulink url="http://en.wikipedia.org/wiki/Dublin_Core">Dublin Core</ulink> sort of way. (Next time around, we should probably use the actual Dublin Core.) The tags are <literal>name</literal>, <literal>author</literal>, <literal>copyright</literal>, <literal>date</literal>, and <literal>description</literal>.</para>
+
+<para>Version 1 of the format had a <literal>menu_icon</literal> tag at top level, which let themes specify the icons beside options in the menu you get from the menu icon. This has become redundant; the icons are taken from the icon theme! The tag can still be used in all formats, but does nothing and is deprecated.</para>
+<para>Version 2 of the format has a <literal>fallback</literal> tag at top level, which let the theme specify what icon a window should be considered to have if it doesn't provide an icon of its own. This should also be taken from the icon theme, <ulink url="http://bugzilla.mate.org/show_bug.cgi?id=524343">if anyone fancies fixing it</ulink>, and the tag should also then be deprecated. It shouldn't be hard.</para>
+
+</chapter>
+
+<chapter>
+<title>When you're working on a theme</title>
+
+<para>When you're editing a theme, you can view it without using it on the whole desktop using
+<command>marco-theme-viewer YourThemeName</command></para>
+<para>and view it on the whole desktop using
+<command>mateconftool -<!-- x -->-type=string -<!-- x -->-set /apps/marco/general/theme YourThemeName</command></para>
+
+<para>Whenever you change the selected theme in MateConf, Marco will load the newly-chosen theme. This is how control-center does it. But when you change a theme, as you're working on it, you might want to ask Marco to reload the theme which is currently used on the whole desktop to reflect your changes. You can do this using the little-known <command>marco-message</command> program, with the command <literal>marco-message reload-theme</literal>. This works by sending the ClientMessage <literal>_MARCO_RELOAD_THEME_MESSAGE</literal> to the root window, in case you're interested.</para>
+
+<para>Once you're done with your theme, consider submitting it to <ulink url="http://art.mate.org/themes/marco/">the art.mate.org site</ulink>, or <ulink url="http://www.mate-look.org/index.php?xcontentmode=101">the mate-look site</ulink>.</para>
+
+</chapter>
+
+<chapter>
+<title>The future</title>
+
+<para>Please feel free to link to this so people don't have to keep asking the basic questions and can start asking the deeper ones. One of the important deeper ones is: where should we go in the future? Since this format is becoming something of a de facto standard between window managers, should we set up some kind of freedesktop.org standards discussion? Would it be useful to spin off Marco's theme parsing code into a separate, LGPL-licensed library so that other applications could use it more easily?</para>
+<para>What would a version 3 of this format look like? Could we simplify the window / frame_style_set system? (I can imagine abolishing both, and being able to write <literal>&lt;frame_style for=&quot;normal+unfocused+maximized&quot;&gt;&#8230;</literal> and having Marco assume it applied to all resize permissions and shadednesses.) Maybe we should try to do everything with SVG we can? Getting more wild and handwavey, is it worth keeping XML-like? Maybe if other window managers were dealing with the files, .ini-style files would be more universally useful? Or perhaps not. And then of course we need a decent graphical editor for it. I have a few ideas, but if anyone fancies jumping in...</para>
+</chapter>
+
+</book>
+
+
diff --git a/doc/creating_themes/C/dbcentx.mod b/doc/creating_themes/C/dbcentx.mod
new file mode 100644
index 00000000..60de99f8
--- /dev/null
+++ b/doc/creating_themes/C/dbcentx.mod
@@ -0,0 +1,384 @@
+<!-- ...................................................................... -->
+<!-- DocBook character entities module V4.5 ............................... -->
+<!-- File dbcentx.mod ..................................................... -->
+
+<!-- Copyright 1992-2004 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ $Id: dbcentx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook DTD
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation for more information.
+
+ Please direct all questions, bug reports, or suggestions for
+ changes to the [email protected] mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the entity declarations for the standard ISO
+ entity sets used by DocBook.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbcent PUBLIC
+ "-//OASIS//ENTITIES DocBook Character Entities V4.5//EN"
+ "dbcentx.mod">
+ %dbcent;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!-- ...................................................................... -->
+
+<![%sgml.features;[
+
+<!ENTITY % ISOamsa.module "INCLUDE">
+<![ %ISOamsa.module; [
+<!ENTITY % ISOamsa PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN">
+<!--end of ISOamsa.module-->]]>
+
+<!ENTITY % ISOamsb.module "INCLUDE">
+<![ %ISOamsb.module; [
+<!ENTITY % ISOamsb PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN">
+<!--end of ISOamsb.module-->]]>
+
+<!ENTITY % ISOamsc.module "INCLUDE">
+<![ %ISOamsc.module; [
+<!ENTITY % ISOamsc PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN">
+<!--end of ISOamsc.module-->]]>
+
+<!ENTITY % ISOamsn.module "INCLUDE">
+<![ %ISOamsn.module; [
+<!ENTITY % ISOamsn PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN">
+<!--end of ISOamsn.module-->]]>
+
+<!ENTITY % ISOamso.module "INCLUDE">
+<![ %ISOamso.module; [
+<!ENTITY % ISOamso PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN">
+<!--end of ISOamso.module-->]]>
+
+<!ENTITY % ISOamsr.module "INCLUDE">
+<![ %ISOamsr.module; [
+<!ENTITY % ISOamsr PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN">
+<!--end of ISOamsr.module-->]]>
+
+<!ENTITY % ISObox.module "INCLUDE">
+<![ %ISObox.module; [
+<!ENTITY % ISObox PUBLIC
+"ISO 8879:1986//ENTITIES Box and Line Drawing//EN">
+<!--end of ISObox.module-->]]>
+
+<!ENTITY % ISOcyr1.module "INCLUDE">
+<![ %ISOcyr1.module; [
+<!ENTITY % ISOcyr1 PUBLIC
+"ISO 8879:1986//ENTITIES Russian Cyrillic//EN">
+<!--end of ISOcyr1.module-->]]>
+
+<!ENTITY % ISOcyr2.module "INCLUDE">
+<![ %ISOcyr2.module; [
+<!ENTITY % ISOcyr2 PUBLIC
+"ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN">
+<!--end of ISOcyr2.module-->]]>
+
+<!ENTITY % ISOdia.module "INCLUDE">
+<![ %ISOdia.module; [
+<!ENTITY % ISOdia PUBLIC
+"ISO 8879:1986//ENTITIES Diacritical Marks//EN">
+<!--end of ISOdia.module-->]]>
+
+<!ENTITY % ISOgrk1.module "INCLUDE">
+<![ %ISOgrk1.module; [
+<!ENTITY % ISOgrk1 PUBLIC
+"ISO 8879:1986//ENTITIES Greek Letters//EN">
+<!--end of ISOgrk1.module-->]]>
+
+<!ENTITY % ISOgrk2.module "INCLUDE">
+<![ %ISOgrk2.module; [
+<!ENTITY % ISOgrk2 PUBLIC
+"ISO 8879:1986//ENTITIES Monotoniko Greek//EN">
+<!--end of ISOgrk2.module-->]]>
+
+<!ENTITY % ISOgrk3.module "INCLUDE">
+<![ %ISOgrk3.module; [
+<!ENTITY % ISOgrk3 PUBLIC
+"ISO 8879:1986//ENTITIES Greek Symbols//EN">
+<!--end of ISOgrk3.module-->]]>
+
+<!ENTITY % ISOgrk4.module "INCLUDE">
+<![ %ISOgrk4.module; [
+<!ENTITY % ISOgrk4 PUBLIC
+"ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN">
+<!--end of ISOgrk4.module-->]]>
+
+<!ENTITY % ISOlat1.module "INCLUDE">
+<![ %ISOlat1.module; [
+<!ENTITY % ISOlat1 PUBLIC
+"ISO 8879:1986//ENTITIES Added Latin 1//EN">
+<!--end of ISOlat1.module-->]]>
+
+<!ENTITY % ISOlat2.module "INCLUDE">
+<![ %ISOlat2.module; [
+<!ENTITY % ISOlat2 PUBLIC
+"ISO 8879:1986//ENTITIES Added Latin 2//EN">
+<!--end of ISOlat2.module-->]]>
+
+<!ENTITY % ISOnum.module "INCLUDE">
+<![ %ISOnum.module; [
+<!ENTITY % ISOnum PUBLIC
+"ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN">
+<!--end of ISOnum.module-->]]>
+
+<!ENTITY % ISOpub.module "INCLUDE">
+<![ %ISOpub.module; [
+<!ENTITY % ISOpub PUBLIC
+"ISO 8879:1986//ENTITIES Publishing//EN">
+<!--end of ISOpub.module-->]]>
+
+<!ENTITY % ISOtech.module "INCLUDE">
+<![ %ISOtech.module; [
+<!ENTITY % ISOtech PUBLIC
+"ISO 8879:1986//ENTITIES General Technical//EN">
+<!--end of ISOtech.module-->]]>
+
+<!--end of sgml.features-->]]>
+
+<![%xml.features;[
+
+<!ENTITY % ISOamsa.module "INCLUDE">
+<![%ISOamsa.module;[
+<!ENTITY % ISOamsa PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN//XML"
+"ent/isoamsa.ent">
+<!--end of ISOamsa.module-->]]>
+
+<!ENTITY % ISOamsb.module "INCLUDE">
+<![%ISOamsb.module;[
+<!ENTITY % ISOamsb PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN//XML"
+"ent/isoamsb.ent">
+<!--end of ISOamsb.module-->]]>
+
+<!ENTITY % ISOamsc.module "INCLUDE">
+<![%ISOamsc.module;[
+<!ENTITY % ISOamsc PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN//XML"
+"ent/isoamsc.ent">
+<!--end of ISOamsc.module-->]]>
+
+<!ENTITY % ISOamsn.module "INCLUDE">
+<![%ISOamsn.module;[
+<!ENTITY % ISOamsn PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN//XML"
+"ent/isoamsn.ent">
+<!--end of ISOamsn.module-->]]>
+
+<!ENTITY % ISOamso.module "INCLUDE">
+<![%ISOamso.module;[
+<!ENTITY % ISOamso PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN//XML"
+"ent/isoamso.ent">
+<!--end of ISOamso.module-->]]>
+
+<!ENTITY % ISOamsr.module "INCLUDE">
+<![%ISOamsr.module;[
+<!ENTITY % ISOamsr PUBLIC
+"ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN//XML"
+"ent/isoamsr.ent">
+<!--end of ISOamsr.module-->]]>
+
+<!ENTITY % ISObox.module "INCLUDE">
+<![%ISObox.module;[
+<!ENTITY % ISObox PUBLIC
+"ISO 8879:1986//ENTITIES Box and Line Drawing//EN//XML"
+"ent/isobox.ent">
+<!--end of ISObox.module-->]]>
+
+<!ENTITY % ISOcyr1.module "INCLUDE">
+<![%ISOcyr1.module;[
+<!ENTITY % ISOcyr1 PUBLIC
+"ISO 8879:1986//ENTITIES Russian Cyrillic//EN//XML"
+"ent/isocyr1.ent">
+<!--end of ISOcyr1.module-->]]>
+
+<!ENTITY % ISOcyr2.module "INCLUDE">
+<![%ISOcyr2.module;[
+<!ENTITY % ISOcyr2 PUBLIC
+"ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN//XML"
+"ent/isocyr2.ent">
+<!--end of ISOcyr2.module-->]]>
+
+<!ENTITY % ISOdia.module "INCLUDE">
+<![%ISOdia.module;[
+<!ENTITY % ISOdia PUBLIC
+"ISO 8879:1986//ENTITIES Diacritical Marks//EN//XML"
+"ent/isodia.ent">
+<!--end of ISOdia.module-->]]>
+
+<!ENTITY % ISOgrk1.module "INCLUDE">
+<![%ISOgrk1.module;[
+<!ENTITY % ISOgrk1 PUBLIC
+"ISO 8879:1986//ENTITIES Greek Letters//EN//XML"
+"ent/isogrk1.ent">
+<!--end of ISOgrk1.module-->]]>
+
+<!ENTITY % ISOgrk2.module "INCLUDE">
+<![%ISOgrk2.module;[
+<!ENTITY % ISOgrk2 PUBLIC
+"ISO 8879:1986//ENTITIES Monotoniko Greek//EN//XML"
+"ent/isogrk2.ent">
+<!--end of ISOgrk2.module-->]]>
+
+<!ENTITY % ISOgrk3.module "INCLUDE">
+<![%ISOgrk3.module;[
+<!ENTITY % ISOgrk3 PUBLIC
+"ISO 8879:1986//ENTITIES Greek Symbols//EN//XML"
+"ent/isogrk3.ent">
+<!--end of ISOgrk3.module-->]]>
+
+<!ENTITY % ISOgrk4.module "INCLUDE">
+<![%ISOgrk4.module;[
+<!ENTITY % ISOgrk4 PUBLIC
+"ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN//XML"
+"ent/isogrk4.ent">
+<!--end of ISOgrk4.module-->]]>
+
+<!ENTITY % ISOlat1.module "INCLUDE">
+<![%ISOlat1.module;[
+<!ENTITY % ISOlat1 PUBLIC
+"ISO 8879:1986//ENTITIES Added Latin 1//EN//XML"
+"ent/isolat1.ent">
+<!--end of ISOlat1.module-->]]>
+
+<!ENTITY % ISOlat2.module "INCLUDE">
+<![%ISOlat2.module;[
+<!ENTITY % ISOlat2 PUBLIC
+"ISO 8879:1986//ENTITIES Added Latin 2//EN//XML"
+"ent/isolat2.ent">
+<!--end of ISOlat2.module-->]]>
+
+<!ENTITY % ISOnum.module "INCLUDE">
+<![%ISOnum.module;[
+<!ENTITY % ISOnum PUBLIC
+"ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN//XML"
+"ent/isonum.ent">
+<!--end of ISOnum.module-->]]>
+
+<!ENTITY % ISOpub.module "INCLUDE">
+<![%ISOpub.module;[
+<!ENTITY % ISOpub PUBLIC
+"ISO 8879:1986//ENTITIES Publishing//EN//XML"
+"ent/isopub.ent">
+<!--end of ISOpub.module-->]]>
+
+<!ENTITY % ISOtech.module "INCLUDE">
+<![%ISOtech.module;[
+<!ENTITY % ISOtech PUBLIC
+"ISO 8879:1986//ENTITIES General Technical//EN//XML"
+"ent/isotech.ent">
+<!--end of ISOtech.module-->]]>
+
+<!--end of xml.features-->]]>
+
+<![ %ISOamsa.module; [
+%ISOamsa;
+]]>
+
+<![ %ISOamsb.module; [
+%ISOamsb;
+]]>
+
+<![ %ISOamsc.module; [
+%ISOamsc;
+]]>
+
+<![ %ISOamsn.module; [
+%ISOamsn;
+]]>
+
+<![ %ISOamso.module; [
+%ISOamso;
+]]>
+
+<![ %ISOamsr.module; [
+%ISOamsr;
+]]>
+
+<![ %ISObox.module; [
+%ISObox;
+]]>
+
+<![ %ISOcyr1.module; [
+%ISOcyr1;
+]]>
+
+<![ %ISOcyr2.module; [
+%ISOcyr2;
+]]>
+
+<![ %ISOdia.module; [
+%ISOdia;
+]]>
+
+<![ %ISOgrk1.module; [
+%ISOgrk1;
+]]>
+
+<![ %ISOgrk2.module; [
+%ISOgrk2;
+]]>
+
+<![ %ISOgrk3.module; [
+%ISOgrk3;
+]]>
+
+<![ %ISOgrk4.module; [
+%ISOgrk4;
+]]>
+
+<![ %ISOlat1.module; [
+%ISOlat1;
+]]>
+
+<![ %ISOlat2.module; [
+%ISOlat2;
+]]>
+
+<![ %ISOnum.module; [
+%ISOnum;
+]]>
+
+<![ %ISOpub.module; [
+%ISOpub;
+]]>
+
+<![ %ISOtech.module; [
+%ISOtech;
+]]>
+
+<!-- End of DocBook character entity sets module V4.5 ..................... -->
+<!-- ...................................................................... -->
diff --git a/doc/creating_themes/C/dbgenent.mod b/doc/creating_themes/C/dbgenent.mod
new file mode 100644
index 00000000..ff5ba90d
--- /dev/null
+++ b/doc/creating_themes/C/dbgenent.mod
@@ -0,0 +1,41 @@
+<!-- ...................................................................... -->
+<!-- DocBook additional general entities V4.5 ............................. -->
+
+<!-- Copyright 1992-2004 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbgenent PUBLIC
+ "-//OASIS//ENTITIES DocBook Additional General Entities V4.5//EN"
+ "dbgenent.mod">
+ %dbgenent;
+-->
+
+<!-- File dbgenent.mod .................................................... -->
+
+<!-- You can edit this file to add the following:
+
+ o General entity declarations of any kind. For example:
+
+ <!ENTITY productname "WinWidget"> (small boilerplate)
+ <!ENTITY legal-notice SYSTEM "notice.sgm"> (large boilerplate)
+
+ o Notation declarations. For example:
+
+ <!NOTATION chicken-scratch SYSTEM>
+
+ o Declarations for and references to external parameter entities
+ containing collections of any of the above. For example:
+
+ <!ENTITY % all-titles PUBLIC "-//DocTools//ELEMENTS Book Titles//EN"
+ "booktitles.ent">
+ %all-titles;
+-->
+
+<!-- End of DocBook additional general entities V4.5 ...................... -->
+<!-- ...................................................................... -->
diff --git a/doc/creating_themes/C/dbhierx.mod b/doc/creating_themes/C/dbhierx.mod
new file mode 100644
index 00000000..5f839f56
--- /dev/null
+++ b/doc/creating_themes/C/dbhierx.mod
@@ -0,0 +1,2193 @@
+<!-- ...................................................................... -->
+<!-- DocBook document hierarchy module V4.5 ............................... -->
+<!-- File dbhierx.mod ..................................................... -->
+
+<!-- Copyright 1992-2004 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ $Id: dbhierx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook DTD
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation for more information.
+
+ Please direct all questions, bug reports, or suggestions for
+ changes to the [email protected] mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the definitions for the overall document
+ hierarchies of DocBook documents. It covers computer documentation
+ manuals and manual fragments, as well as reference entries (such as
+ man pages) and technical journals or anthologies containing
+ articles.
+
+ This module depends on the DocBook information pool module. All
+ elements and entities referenced but not defined here are assumed
+ to be defined in the information pool module.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbhier PUBLIC
+ "-//OASIS//ELEMENTS DocBook Document Hierarchy V4.5//EN"
+ "dbhierx.mod">
+ %dbhier;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!-- ...................................................................... -->
+<!-- Entities for module inclusions ....................................... -->
+
+<!ENTITY % dbhier.redecl.module "IGNORE">
+<!ENTITY % dbhier.redecl2.module "IGNORE">
+
+<!-- ...................................................................... -->
+<!-- Entities for element classes ......................................... -->
+
+<!ENTITY % local.appendix.class "">
+<!ENTITY % appendix.class "appendix %local.appendix.class;">
+
+<!ENTITY % local.article.class "">
+<!ENTITY % article.class "article %local.article.class;">
+
+<!ENTITY % local.book.class "">
+<!ENTITY % book.class "book %local.book.class;">
+
+<!ENTITY % local.chapter.class "">
+<!ENTITY % chapter.class "chapter %local.chapter.class;">
+
+<!ENTITY % local.index.class "">
+<!ENTITY % index.class "index|setindex %local.index.class;">
+
+<!ENTITY % local.refentry.class "">
+<!ENTITY % refentry.class "refentry %local.refentry.class;">
+
+<!ENTITY % local.section.class "">
+<!ENTITY % section.class "section %local.section.class;">
+
+<!ENTITY % local.nav.class "">
+<!ENTITY % nav.class "toc|lot|index|glossary|bibliography
+ %local.nav.class;">
+
+<!-- Redeclaration placeholder ............................................ -->
+
+<!-- For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point -->
+
+<![%dbhier.redecl.module;[
+<!-- Defining rdbhier here makes some buggy XML parsers happy. -->
+<!ENTITY % rdbhier "">
+%rdbhier;
+<!--end of dbhier.redecl.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Entities for element mixtures ........................................ -->
+
+<!ENTITY % local.divcomponent.mix "">
+<!ENTITY % divcomponent.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |%compound.class;
+ |%genobj.class; |%descobj.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.divcomponent.mix;">
+
+<!ENTITY % local.refcomponent.mix "">
+<!ENTITY % refcomponent.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |%compound.class;
+ |%genobj.class; |%descobj.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.refcomponent.mix;">
+
+<!ENTITY % local.indexdivcomponent.mix "">
+<!ENTITY % indexdivcomponent.mix
+ "itemizedlist|orderedlist|variablelist|simplelist
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |anchor|remark
+ |%link.char.class;
+ |beginpage
+ %local.indexdivcomponent.mix;">
+
+<!ENTITY % local.refname.char.mix "">
+<!ENTITY % refname.char.mix
+ "#PCDATA
+ |%tech.char.class;
+ %local.refname.char.mix;">
+
+<!ENTITY % local.partcontent.mix "">
+<!ENTITY % partcontent.mix
+ "%appendix.class;|%chapter.class;|%nav.class;|%article.class;
+ |preface|%refentry.class;|reference %local.partcontent.mix;">
+
+<!ENTITY % local.refinline.char.mix "">
+<!ENTITY % refinline.char.mix
+ "#PCDATA
+ |%xref.char.class; |%gen.char.class;
+ |%link.char.class; |%tech.char.class;
+ |%base.char.class; |%docinfo.char.class;
+ |%other.char.class;
+ |%ndxterm.class; |beginpage
+ %local.refinline.char.mix;">
+
+<!ENTITY % local.refclass.char.mix "">
+<!ENTITY % refclass.char.mix
+ "#PCDATA
+ |application
+ %local.refclass.char.mix;">
+
+<!-- Redeclaration placeholder 2 .......................................... -->
+
+<!-- For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point -->
+
+<![%dbhier.redecl2.module;[
+<!-- Defining rdbhier2 here makes some buggy XML parsers happy. -->
+<!ENTITY % rdbhier2 "">
+%rdbhier2;
+<!--end of dbhier.redecl2.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Entities for content models .......................................... -->
+
+<!ENTITY % div.title.content
+ "title, subtitle?, titleabbrev?">
+
+<!ENTITY % bookcomponent.title.content
+ "title, subtitle?, titleabbrev?">
+
+<!ENTITY % sect.title.content
+ "title, subtitle?, titleabbrev?">
+
+<!ENTITY % refsect.title.content
+ "title, subtitle?, titleabbrev?">
+
+<!ENTITY % bookcomponent.content
+ "((%divcomponent.mix;)+,
+ (sect1*|(%refentry.class;)*|simplesect*|(%section.class;)*))
+ | (sect1+|(%refentry.class;)+|simplesect+|(%section.class;)+)">
+
+<!-- ...................................................................... -->
+<!-- Set and SetInfo ...................................................... -->
+
+<!ENTITY % set.content.module "INCLUDE">
+<![%set.content.module;[
+<!ENTITY % set.module "INCLUDE">
+<![%set.module;[
+<!ENTITY % local.set.attrib "">
+<!ENTITY % set.role.attrib "%role.attrib;">
+
+<!ENTITY % set.element "INCLUDE">
+<![%set.element;[
+<!--doc:A collection of books.-->
+<!ELEMENT set %ho; ((%div.title.content;)?, setinfo?, toc?, (set|%book.class;)+,
+ setindex?)
+ %ubiq.inclusion;>
+<!--end of set.element-->]]>
+
+<!-- FPI: SGML formal public identifier -->
+
+
+<!ENTITY % set.attlist "INCLUDE">
+<![%set.attlist;[
+<!ATTLIST set
+ fpi CDATA #IMPLIED
+ %status.attrib;
+ %common.attrib;
+ %set.role.attrib;
+ %local.set.attrib;
+>
+<!--end of set.attlist-->]]>
+<!--end of set.module-->]]>
+
+<!ENTITY % setinfo.module "INCLUDE">
+<![%setinfo.module;[
+<!ENTITY % local.setinfo.attrib "">
+<!ENTITY % setinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % setinfo.element "INCLUDE">
+<![%setinfo.element;[
+<!--doc:Meta-information for a Set.-->
+<!ELEMENT setinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of setinfo.element-->]]>
+
+<!-- Contents: IDs of the ToC, Books, and SetIndex that comprise
+ the set, in the order of their appearance -->
+
+
+<!ENTITY % setinfo.attlist "INCLUDE">
+<![%setinfo.attlist;[
+<!ATTLIST setinfo
+ contents IDREFS #IMPLIED
+ %common.attrib;
+ %setinfo.role.attrib;
+ %local.setinfo.attrib;
+>
+<!--end of setinfo.attlist-->]]>
+<!--end of setinfo.module-->]]>
+<!--end of set.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Book and BookInfo .................................................... -->
+
+<!ENTITY % book.content.module "INCLUDE">
+<![%book.content.module;[
+<!ENTITY % book.module "INCLUDE">
+<![%book.module;[
+
+<!ENTITY % local.book.attrib "">
+<!ENTITY % book.role.attrib "%role.attrib;">
+
+<!ENTITY % book.element "INCLUDE">
+<![%book.element;[
+<!--doc:A book.-->
+<!ELEMENT book %ho; ((%div.title.content;)?, bookinfo?,
+ (dedication | toc | lot
+ | glossary | bibliography | preface
+ | %chapter.class; | reference | part
+ | %article.class;
+ | %appendix.class;
+ | %index.class;
+ | colophon)*)
+ %ubiq.inclusion;>
+<!--end of book.element-->]]>
+
+<!-- FPI: SGML formal public identifier -->
+
+
+<!ENTITY % book.attlist "INCLUDE">
+<![%book.attlist;[
+<!ATTLIST book fpi CDATA #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %book.role.attrib;
+ %local.book.attrib;
+>
+<!--end of book.attlist-->]]>
+<!--end of book.module-->]]>
+
+<!ENTITY % bookinfo.module "INCLUDE">
+<![%bookinfo.module;[
+<!ENTITY % local.bookinfo.attrib "">
+<!ENTITY % bookinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % bookinfo.element "INCLUDE">
+<![%bookinfo.element;[
+<!--doc:Meta-information for a Book.-->
+<!ELEMENT bookinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of bookinfo.element-->]]>
+
+<!-- Contents: IDs of the ToC, LoTs, Prefaces, Parts, Chapters,
+ Appendixes, References, GLossary, Bibliography, and indexes
+ comprising the Book, in the order of their appearance -->
+
+
+<!ENTITY % bookinfo.attlist "INCLUDE">
+<![%bookinfo.attlist;[
+<!ATTLIST bookinfo
+ contents IDREFS #IMPLIED
+ %common.attrib;
+ %bookinfo.role.attrib;
+ %local.bookinfo.attrib;
+>
+<!--end of bookinfo.attlist-->]]>
+<!--end of bookinfo.module-->]]>
+<!--end of book.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Dedication, ToC, and LoT ............................................. -->
+
+<!ENTITY % dedication.module "INCLUDE">
+<![%dedication.module;[
+<!ENTITY % local.dedication.attrib "">
+<!ENTITY % dedication.role.attrib "%role.attrib;">
+
+<!ENTITY % dedication.element "INCLUDE">
+<![%dedication.element;[
+<!--doc:A wrapper for the dedication section of a book.-->
+<!ELEMENT dedication %ho; ((%sect.title.content;)?, (%legalnotice.mix;)+)>
+<!--end of dedication.element-->]]>
+
+<!ENTITY % dedication.attlist "INCLUDE">
+<![%dedication.attlist;[
+<!ATTLIST dedication
+ %status.attrib;
+ %common.attrib;
+ %dedication.role.attrib;
+ %local.dedication.attrib;
+>
+<!--end of dedication.attlist-->]]>
+<!--end of dedication.module-->]]>
+
+<!ENTITY % colophon.module "INCLUDE">
+<![ %colophon.module; [
+<!ENTITY % local.colophon.attrib "">
+<!ENTITY % colophon.role.attrib "%role.attrib;">
+
+<!ENTITY % colophon.element "INCLUDE">
+<![ %colophon.element; [
+<!--doc:Text at the back of a book describing facts about its production.-->
+<!ELEMENT colophon %ho; ((%sect.title.content;)?, (%textobject.mix;)+)>
+<!--end of colophon.element-->]]>
+
+<!ENTITY % colophon.attlist "INCLUDE">
+<![ %colophon.attlist; [
+<!ATTLIST colophon
+ %status.attrib;
+ %common.attrib;
+ %colophon.role.attrib;
+ %local.colophon.attrib;>
+<!--end of colophon.attlist-->]]>
+<!--end of colophon.module-->]]>
+
+<!ENTITY % toc.content.module "INCLUDE">
+<![%toc.content.module;[
+<!ENTITY % toc.module "INCLUDE">
+<![%toc.module;[
+<!ENTITY % local.toc.attrib "">
+<!ENTITY % toc.role.attrib "%role.attrib;">
+
+<!ENTITY % toc.element "INCLUDE">
+<![%toc.element;[
+<!--doc:A table of contents.-->
+<!ELEMENT toc %ho; (beginpage?,
+ (%bookcomponent.title.content;)?,
+ tocfront*,
+ (tocpart | tocchap)*, tocback*)>
+<!--end of toc.element-->]]>
+
+<!ENTITY % toc.attlist "INCLUDE">
+<![%toc.attlist;[
+<!ATTLIST toc
+ %pagenum.attrib;
+ %common.attrib;
+ %toc.role.attrib;
+ %local.toc.attrib;
+>
+<!--end of toc.attlist-->]]>
+<!--end of toc.module-->]]>
+
+<!ENTITY % tocfront.module "INCLUDE">
+<![%tocfront.module;[
+<!ENTITY % local.tocfront.attrib "">
+<!ENTITY % tocfront.role.attrib "%role.attrib;">
+
+<!ENTITY % tocfront.element "INCLUDE">
+<![%tocfront.element;[
+<!--doc:An entry in a table of contents for a front matter component.-->
+<!ELEMENT tocfront %ho; (%para.char.mix;)*>
+<!--end of tocfront.element-->]]>
+
+<!-- to element that this entry represents -->
+
+
+<!ENTITY % tocfront.attlist "INCLUDE">
+<![%tocfront.attlist;[
+<!ATTLIST tocfront
+ %label.attrib;
+ %linkend.attrib; %pagenum.attrib;
+ %common.attrib;
+ %tocfront.role.attrib;
+ %local.tocfront.attrib;
+>
+<!--end of tocfront.attlist-->]]>
+<!--end of tocfront.module-->]]>
+
+<!ENTITY % tocentry.module "INCLUDE">
+<![%tocentry.module;[
+<!ENTITY % local.tocentry.attrib "">
+<!ENTITY % tocentry.role.attrib "%role.attrib;">
+
+<!ENTITY % tocentry.element "INCLUDE">
+<![%tocentry.element;[
+<!--doc:A component title in a table of contents.-->
+<!ELEMENT tocentry %ho; (%para.char.mix;)*>
+<!--end of tocentry.element-->]]>
+
+<!-- to element that this entry represents -->
+
+
+<!ENTITY % tocentry.attlist "INCLUDE">
+<![%tocentry.attlist;[
+<!ATTLIST tocentry
+ %linkend.attrib; %pagenum.attrib;
+ %common.attrib;
+ %tocentry.role.attrib;
+ %local.tocentry.attrib;
+>
+<!--end of tocentry.attlist-->]]>
+<!--end of tocentry.module-->]]>
+
+<!ENTITY % tocpart.module "INCLUDE">
+<![%tocpart.module;[
+<!ENTITY % local.tocpart.attrib "">
+<!ENTITY % tocpart.role.attrib "%role.attrib;">
+
+<!ENTITY % tocpart.element "INCLUDE">
+<![%tocpart.element;[
+<!--doc:An entry in a table of contents for a part of a book.-->
+<!ELEMENT tocpart %ho; (tocentry+, tocchap*)>
+<!--end of tocpart.element-->]]>
+
+<!ENTITY % tocpart.attlist "INCLUDE">
+<![%tocpart.attlist;[
+<!ATTLIST tocpart
+ %common.attrib;
+ %tocpart.role.attrib;
+ %local.tocpart.attrib;
+>
+<!--end of tocpart.attlist-->]]>
+<!--end of tocpart.module-->]]>
+
+<!ENTITY % tocchap.module "INCLUDE">
+<![%tocchap.module;[
+<!ENTITY % local.tocchap.attrib "">
+<!ENTITY % tocchap.role.attrib "%role.attrib;">
+
+<!ENTITY % tocchap.element "INCLUDE">
+<![%tocchap.element;[
+<!--doc:An entry in a table of contents for a component in the body of a document.-->
+<!ELEMENT tocchap %ho; (tocentry+, toclevel1*)>
+<!--end of tocchap.element-->]]>
+
+<!ENTITY % tocchap.attlist "INCLUDE">
+<![%tocchap.attlist;[
+<!ATTLIST tocchap
+ %label.attrib;
+ %common.attrib;
+ %tocchap.role.attrib;
+ %local.tocchap.attrib;
+>
+<!--end of tocchap.attlist-->]]>
+<!--end of tocchap.module-->]]>
+
+<!ENTITY % toclevel1.module "INCLUDE">
+<![%toclevel1.module;[
+<!ENTITY % local.toclevel1.attrib "">
+<!ENTITY % toclevel1.role.attrib "%role.attrib;">
+
+<!ENTITY % toclevel1.element "INCLUDE">
+<![%toclevel1.element;[
+<!--doc:A top-level entry within a table of contents entry for a chapter-like component.-->
+<!ELEMENT toclevel1 %ho; (tocentry+, toclevel2*)>
+<!--end of toclevel1.element-->]]>
+
+<!ENTITY % toclevel1.attlist "INCLUDE">
+<![%toclevel1.attlist;[
+<!ATTLIST toclevel1
+ %common.attrib;
+ %toclevel1.role.attrib;
+ %local.toclevel1.attrib;
+>
+<!--end of toclevel1.attlist-->]]>
+<!--end of toclevel1.module-->]]>
+
+<!ENTITY % toclevel2.module "INCLUDE">
+<![%toclevel2.module;[
+<!ENTITY % local.toclevel2.attrib "">
+<!ENTITY % toclevel2.role.attrib "%role.attrib;">
+
+<!ENTITY % toclevel2.element "INCLUDE">
+<![%toclevel2.element;[
+<!--doc:A second-level entry within a table of contents entry for a chapter-like component.-->
+<!ELEMENT toclevel2 %ho; (tocentry+, toclevel3*)>
+<!--end of toclevel2.element-->]]>
+
+<!ENTITY % toclevel2.attlist "INCLUDE">
+<![%toclevel2.attlist;[
+<!ATTLIST toclevel2
+ %common.attrib;
+ %toclevel2.role.attrib;
+ %local.toclevel2.attrib;
+>
+<!--end of toclevel2.attlist-->]]>
+<!--end of toclevel2.module-->]]>
+
+<!ENTITY % toclevel3.module "INCLUDE">
+<![%toclevel3.module;[
+<!ENTITY % local.toclevel3.attrib "">
+<!ENTITY % toclevel3.role.attrib "%role.attrib;">
+
+<!ENTITY % toclevel3.element "INCLUDE">
+<![%toclevel3.element;[
+<!--doc:A third-level entry within a table of contents entry for a chapter-like component.-->
+<!ELEMENT toclevel3 %ho; (tocentry+, toclevel4*)>
+<!--end of toclevel3.element-->]]>
+
+<!ENTITY % toclevel3.attlist "INCLUDE">
+<![%toclevel3.attlist;[
+<!ATTLIST toclevel3
+ %common.attrib;
+ %toclevel3.role.attrib;
+ %local.toclevel3.attrib;
+>
+<!--end of toclevel3.attlist-->]]>
+<!--end of toclevel3.module-->]]>
+
+<!ENTITY % toclevel4.module "INCLUDE">
+<![%toclevel4.module;[
+<!ENTITY % local.toclevel4.attrib "">
+<!ENTITY % toclevel4.role.attrib "%role.attrib;">
+
+<!ENTITY % toclevel4.element "INCLUDE">
+<![%toclevel4.element;[
+<!--doc:A fourth-level entry within a table of contents entry for a chapter-like component.-->
+<!ELEMENT toclevel4 %ho; (tocentry+, toclevel5*)>
+<!--end of toclevel4.element-->]]>
+
+<!ENTITY % toclevel4.attlist "INCLUDE">
+<![%toclevel4.attlist;[
+<!ATTLIST toclevel4
+ %common.attrib;
+ %toclevel4.role.attrib;
+ %local.toclevel4.attrib;
+>
+<!--end of toclevel4.attlist-->]]>
+<!--end of toclevel4.module-->]]>
+
+<!ENTITY % toclevel5.module "INCLUDE">
+<![%toclevel5.module;[
+<!ENTITY % local.toclevel5.attrib "">
+<!ENTITY % toclevel5.role.attrib "%role.attrib;">
+
+<!ENTITY % toclevel5.element "INCLUDE">
+<![%toclevel5.element;[
+<!--doc:A fifth-level entry within a table of contents entry for a chapter-like component.-->
+<!ELEMENT toclevel5 %ho; (tocentry+)>
+<!--end of toclevel5.element-->]]>
+
+<!ENTITY % toclevel5.attlist "INCLUDE">
+<![%toclevel5.attlist;[
+<!ATTLIST toclevel5
+ %common.attrib;
+ %toclevel5.role.attrib;
+ %local.toclevel5.attrib;
+>
+<!--end of toclevel5.attlist-->]]>
+<!--end of toclevel5.module-->]]>
+
+<!ENTITY % tocback.module "INCLUDE">
+<![%tocback.module;[
+<!ENTITY % local.tocback.attrib "">
+<!ENTITY % tocback.role.attrib "%role.attrib;">
+
+<!ENTITY % tocback.element "INCLUDE">
+<![%tocback.element;[
+<!--doc:An entry in a table of contents for a back matter component.-->
+<!ELEMENT tocback %ho; (%para.char.mix;)*>
+<!--end of tocback.element-->]]>
+
+<!-- to element that this entry represents -->
+
+
+<!ENTITY % tocback.attlist "INCLUDE">
+<![%tocback.attlist;[
+<!ATTLIST tocback
+ %label.attrib;
+ %linkend.attrib; %pagenum.attrib;
+ %common.attrib;
+ %tocback.role.attrib;
+ %local.tocback.attrib;
+>
+<!--end of tocback.attlist-->]]>
+<!--end of tocback.module-->]]>
+<!--end of toc.content.module-->]]>
+
+<!ENTITY % lot.content.module "INCLUDE">
+<![%lot.content.module;[
+<!ENTITY % lot.module "INCLUDE">
+<![%lot.module;[
+<!ENTITY % local.lot.attrib "">
+<!ENTITY % lot.role.attrib "%role.attrib;">
+
+<!ENTITY % lot.element "INCLUDE">
+<![%lot.element;[
+<!--doc:A list of the titles of formal objects (as tables or figures) in a document.-->
+<!ELEMENT lot %ho; (beginpage?, (%bookcomponent.title.content;)?, lotentry*)>
+<!--end of lot.element-->]]>
+
+<!ENTITY % lot.attlist "INCLUDE">
+<![%lot.attlist;[
+<!ATTLIST lot
+ %label.attrib;
+ %common.attrib;
+ %lot.role.attrib;
+ %local.lot.attrib;
+>
+<!--end of lot.attlist-->]]>
+<!--end of lot.module-->]]>
+
+<!ENTITY % lotentry.module "INCLUDE">
+<![%lotentry.module;[
+<!ENTITY % local.lotentry.attrib "">
+<!ENTITY % lotentry.role.attrib "%role.attrib;">
+
+<!ENTITY % lotentry.element "INCLUDE">
+<![%lotentry.element;[
+<!--doc:An entry in a list of titles.-->
+<!ELEMENT lotentry %ho; (%para.char.mix;)*>
+<!--end of lotentry.element-->]]>
+
+<!-- SrcCredit: Information about the source of the entry,
+ as for a list of illustrations -->
+<!-- linkend: to element that this entry represents-->
+<!ENTITY % lotentry.attlist "INCLUDE">
+<![%lotentry.attlist;[
+<!ATTLIST lotentry
+ %linkend.attrib;
+ %pagenum.attrib;
+ srccredit CDATA #IMPLIED
+ %common.attrib;
+ %lotentry.role.attrib;
+ %local.lotentry.attrib;
+>
+<!--end of lotentry.attlist-->]]>
+<!--end of lotentry.module-->]]>
+<!--end of lot.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Appendix, Chapter, Part, Preface, Reference, PartIntro ............... -->
+
+<!ENTITY % appendix.module "INCLUDE">
+<![%appendix.module;[
+<!ENTITY % local.appendix.attrib "">
+<!ENTITY % appendix.role.attrib "%role.attrib;">
+
+<!ENTITY % appendix.element "INCLUDE">
+<![%appendix.element;[
+<!--doc:An appendix in a Book or Article.-->
+<!ELEMENT appendix %ho; (beginpage?,
+ appendixinfo?,
+ (%bookcomponent.title.content;),
+ (%nav.class;)*,
+ tocchap?,
+ (%bookcomponent.content;),
+ (%nav.class;)*)
+ %ubiq.inclusion;>
+<!--end of appendix.element-->]]>
+
+<!ENTITY % appendix.attlist "INCLUDE">
+<![%appendix.attlist;[
+<!ATTLIST appendix
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %appendix.role.attrib;
+ %local.appendix.attrib;
+>
+<!--end of appendix.attlist-->]]>
+<!--end of appendix.module-->]]>
+
+<!ENTITY % chapter.module "INCLUDE">
+<![%chapter.module;[
+<!ENTITY % local.chapter.attrib "">
+<!ENTITY % chapter.role.attrib "%role.attrib;">
+
+<!ENTITY % chapter.element "INCLUDE">
+<![%chapter.element;[
+<!--doc:A chapter, as of a book.-->
+<!ELEMENT chapter %ho; (beginpage?,
+ chapterinfo?,
+ (%bookcomponent.title.content;),
+ (%nav.class;)*,
+ tocchap?,
+ (%bookcomponent.content;),
+ (%nav.class;)*)
+ %ubiq.inclusion;>
+<!--end of chapter.element-->]]>
+
+<!ENTITY % chapter.attlist "INCLUDE">
+<![%chapter.attlist;[
+<!ATTLIST chapter
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %chapter.role.attrib;
+ %local.chapter.attrib;
+>
+<!--end of chapter.attlist-->]]>
+<!--end of chapter.module-->]]>
+
+<!ENTITY % part.module "INCLUDE">
+<![%part.module;[
+
+<!-- Note that Part was to have its content model reduced in V4.5. This
+change will not be made after all. -->
+
+<!ENTITY % local.part.attrib "">
+<!ENTITY % part.role.attrib "%role.attrib;">
+
+<!ENTITY % part.element "INCLUDE">
+<![%part.element;[
+<!--doc:A division in a book.-->
+<!ELEMENT part %ho; (beginpage?,
+ partinfo?, (%bookcomponent.title.content;), partintro?,
+ (%partcontent.mix;)+)
+ %ubiq.inclusion;>
+<!--end of part.element-->]]>
+
+<!ENTITY % part.attlist "INCLUDE">
+<![%part.attlist;[
+<!ATTLIST part
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %part.role.attrib;
+ %local.part.attrib;
+>
+<!--end of part.attlist-->]]>
+<!--ELEMENT PartIntro (defined below)-->
+<!--end of part.module-->]]>
+
+<!ENTITY % preface.module "INCLUDE">
+<![%preface.module;[
+<!ENTITY % local.preface.attrib "">
+<!ENTITY % preface.role.attrib "%role.attrib;">
+
+<!ENTITY % preface.element "INCLUDE">
+<![%preface.element;[
+<!--doc:Introductory matter preceding the first chapter of a book.-->
+<!ELEMENT preface %ho; (beginpage?,
+ prefaceinfo?,
+ (%bookcomponent.title.content;),
+ (%nav.class;)*,
+ tocchap?,
+ (%bookcomponent.content;),
+ (%nav.class;)*)
+ %ubiq.inclusion;>
+<!--end of preface.element-->]]>
+
+<!ENTITY % preface.attlist "INCLUDE">
+<![%preface.attlist;[
+<!ATTLIST preface
+ %status.attrib;
+ %common.attrib;
+ %preface.role.attrib;
+ %local.preface.attrib;
+>
+<!--end of preface.attlist-->]]>
+<!--end of preface.module-->]]>
+
+<!ENTITY % reference.module "INCLUDE">
+<![%reference.module;[
+<!ENTITY % local.reference.attrib "">
+<!ENTITY % reference.role.attrib "%role.attrib;">
+
+<!ENTITY % reference.element "INCLUDE">
+<![%reference.element;[
+<!--doc:A collection of reference entries.-->
+<!ELEMENT reference %ho; (beginpage?,
+ referenceinfo?,
+ (%bookcomponent.title.content;), partintro?,
+ (%refentry.class;)+)
+ %ubiq.inclusion;>
+<!--end of reference.element-->]]>
+
+<!ENTITY % reference.attlist "INCLUDE">
+<![%reference.attlist;[
+<!ATTLIST reference
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %reference.role.attrib;
+ %local.reference.attrib;
+>
+<!--end of reference.attlist-->]]>
+<!--ELEMENT PartIntro (defined below)-->
+<!--end of reference.module-->]]>
+
+<!ENTITY % partintro.module "INCLUDE">
+<![%partintro.module;[
+<!ENTITY % local.partintro.attrib "">
+<!ENTITY % partintro.role.attrib "%role.attrib;">
+
+<!ENTITY % partintro.element "INCLUDE">
+<![%partintro.element;[
+<!--doc:An introduction to the contents of a part.-->
+<!ELEMENT partintro %ho; ((%div.title.content;)?, (%bookcomponent.content;))
+ %ubiq.inclusion;>
+<!--end of partintro.element-->]]>
+
+<!ENTITY % partintro.attlist "INCLUDE">
+<![%partintro.attlist;[
+<!ATTLIST partintro
+ %label.attrib;
+ %common.attrib;
+ %partintro.role.attrib;
+ %local.partintro.attrib;
+>
+<!--end of partintro.attlist-->]]>
+<!--end of partintro.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Other Info elements .................................................. -->
+
+<!ENTITY % appendixinfo.module "INCLUDE">
+<![ %appendixinfo.module; [
+<!ENTITY % local.appendixinfo.attrib "">
+<!ENTITY % appendixinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % appendixinfo.element "INCLUDE">
+<![ %appendixinfo.element; [
+<!--doc:Meta-information for an Appendix.-->
+<!ELEMENT appendixinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of appendixinfo.element-->]]>
+
+<!ENTITY % appendixinfo.attlist "INCLUDE">
+<![ %appendixinfo.attlist; [
+<!ATTLIST appendixinfo
+ %common.attrib;
+ %appendixinfo.role.attrib;
+ %local.appendixinfo.attrib;
+>
+<!--end of appendixinfo.attlist-->]]>
+<!--end of appendixinfo.module-->]]>
+
+<!ENTITY % bibliographyinfo.module "INCLUDE">
+<![ %bibliographyinfo.module; [
+<!ENTITY % local.bibliographyinfo.attrib "">
+<!ENTITY % bibliographyinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliographyinfo.element "INCLUDE">
+<![ %bibliographyinfo.element; [
+<!--doc:Meta-information for a Bibliography.-->
+<!ELEMENT bibliographyinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of bibliographyinfo.element-->]]>
+
+<!ENTITY % bibliographyinfo.attlist "INCLUDE">
+<![ %bibliographyinfo.attlist; [
+<!ATTLIST bibliographyinfo
+ %common.attrib;
+ %bibliographyinfo.role.attrib;
+ %local.bibliographyinfo.attrib;
+>
+<!--end of bibliographyinfo.attlist-->]]>
+<!--end of bibliographyinfo.module-->]]>
+
+<!ENTITY % chapterinfo.module "INCLUDE">
+<![ %chapterinfo.module; [
+<!ENTITY % local.chapterinfo.attrib "">
+<!ENTITY % chapterinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % chapterinfo.element "INCLUDE">
+<![ %chapterinfo.element; [
+<!--doc:Meta-information for a Chapter.-->
+<!ELEMENT chapterinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of chapterinfo.element-->]]>
+
+<!ENTITY % chapterinfo.attlist "INCLUDE">
+<![ %chapterinfo.attlist; [
+<!ATTLIST chapterinfo
+ %common.attrib;
+ %chapterinfo.role.attrib;
+ %local.chapterinfo.attrib;
+>
+<!--end of chapterinfo.attlist-->]]>
+<!--end of chapterinfo.module-->]]>
+
+<!ENTITY % glossaryinfo.module "INCLUDE">
+<![ %glossaryinfo.module; [
+<!ENTITY % local.glossaryinfo.attrib "">
+<!ENTITY % glossaryinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % glossaryinfo.element "INCLUDE">
+<![ %glossaryinfo.element; [
+<!--doc:Meta-information for a Glossary.-->
+<!ELEMENT glossaryinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of glossaryinfo.element-->]]>
+
+<!ENTITY % glossaryinfo.attlist "INCLUDE">
+<![ %glossaryinfo.attlist; [
+<!ATTLIST glossaryinfo
+ %common.attrib;
+ %glossaryinfo.role.attrib;
+ %local.glossaryinfo.attrib;
+>
+<!--end of glossaryinfo.attlist-->]]>
+<!--end of glossaryinfo.module-->]]>
+
+<!ENTITY % indexinfo.module "INCLUDE">
+<![ %indexinfo.module; [
+<!ENTITY % local.indexinfo.attrib "">
+<!ENTITY % indexinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % indexinfo.element "INCLUDE">
+<![ %indexinfo.element; [
+<!--doc:Meta-information for an Index.-->
+<!ELEMENT indexinfo %ho; ((%info.class;)+)>
+<!--end of indexinfo.element-->]]>
+
+<!ENTITY % indexinfo.attlist "INCLUDE">
+<![ %indexinfo.attlist; [
+<!ATTLIST indexinfo
+ %common.attrib;
+ %indexinfo.role.attrib;
+ %local.indexinfo.attrib;
+>
+<!--end of indexinfo.attlist-->]]>
+<!--end of indexinfo.module-->]]>
+
+<!ENTITY % setindexinfo.module "INCLUDE">
+<![ %setindexinfo.module; [
+<!ENTITY % local.setindexinfo.attrib "">
+<!ENTITY % setindexinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % setindexinfo.element "INCLUDE">
+<![ %setindexinfo.element; [
+<!--doc:Meta-information for a SetIndex.-->
+<!ELEMENT setindexinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of setindexinfo.element-->]]>
+
+<!ENTITY % setindexinfo.attlist "INCLUDE">
+<![ %setindexinfo.attlist; [
+<!ATTLIST setindexinfo
+ %common.attrib;
+ %setindexinfo.role.attrib;
+ %local.setindexinfo.attrib;
+>
+<!--end of setindexinfo.attlist-->]]>
+<!--end of setindexinfo.module-->]]>
+
+<!ENTITY % partinfo.module "INCLUDE">
+<![ %partinfo.module; [
+<!ENTITY % local.partinfo.attrib "">
+<!ENTITY % partinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % partinfo.element "INCLUDE">
+<![ %partinfo.element; [
+<!--doc:Meta-information for a Part.-->
+<!ELEMENT partinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of partinfo.element-->]]>
+
+<!ENTITY % partinfo.attlist "INCLUDE">
+<![ %partinfo.attlist; [
+<!ATTLIST partinfo
+ %common.attrib;
+ %partinfo.role.attrib;
+ %local.partinfo.attrib;
+>
+<!--end of partinfo.attlist-->]]>
+<!--end of partinfo.module-->]]>
+
+<!ENTITY % prefaceinfo.module "INCLUDE">
+<![ %prefaceinfo.module; [
+<!ENTITY % local.prefaceinfo.attrib "">
+<!ENTITY % prefaceinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % prefaceinfo.element "INCLUDE">
+<![ %prefaceinfo.element; [
+<!--doc:Meta-information for a Preface.-->
+<!ELEMENT prefaceinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of prefaceinfo.element-->]]>
+
+<!ENTITY % prefaceinfo.attlist "INCLUDE">
+<![ %prefaceinfo.attlist; [
+<!ATTLIST prefaceinfo
+ %common.attrib;
+ %prefaceinfo.role.attrib;
+ %local.prefaceinfo.attrib;
+>
+<!--end of prefaceinfo.attlist-->]]>
+<!--end of prefaceinfo.module-->]]>
+
+<!ENTITY % refentryinfo.module "INCLUDE">
+<![ %refentryinfo.module; [
+<!ENTITY % local.refentryinfo.attrib "">
+<!ENTITY % refentryinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % refentryinfo.element "INCLUDE">
+<![ %refentryinfo.element; [
+<!--doc:Meta-information for a Refentry.-->
+<!ELEMENT refentryinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refentryinfo.element-->]]>
+
+<!ENTITY % refentryinfo.attlist "INCLUDE">
+<![ %refentryinfo.attlist; [
+<!ATTLIST refentryinfo
+ %common.attrib;
+ %refentryinfo.role.attrib;
+ %local.refentryinfo.attrib;
+>
+<!--end of refentryinfo.attlist-->]]>
+<!--end of refentryinfo.module-->]]>
+
+<!ENTITY % refsectioninfo.module "INCLUDE">
+<![ %refsectioninfo.module; [
+<!ENTITY % local.refsectioninfo.attrib "">
+<!ENTITY % refsectioninfo.role.attrib "%role.attrib;">
+
+<!ENTITY % refsectioninfo.element "INCLUDE">
+<![ %refsectioninfo.element; [
+<!--doc:Meta-information for a refsection.-->
+<!ELEMENT refsectioninfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refsectioninfo.element-->]]>
+
+<!ENTITY % refsectioninfo.attlist "INCLUDE">
+<![ %refsectioninfo.attlist; [
+<!ATTLIST refsectioninfo
+ %common.attrib;
+ %refsectioninfo.role.attrib;
+ %local.refsectioninfo.attrib;
+>
+<!--end of refsectioninfo.attlist-->]]>
+<!--end of refsectioninfo.module-->]]>
+
+<!ENTITY % refsect1info.module "INCLUDE">
+<![ %refsect1info.module; [
+<!ENTITY % local.refsect1info.attrib "">
+<!ENTITY % refsect1info.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect1info.element "INCLUDE">
+<![ %refsect1info.element; [
+<!--doc:Meta-information for a RefSect1.-->
+<!ELEMENT refsect1info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refsect1info.element-->]]>
+
+<!ENTITY % refsect1info.attlist "INCLUDE">
+<![ %refsect1info.attlist; [
+<!ATTLIST refsect1info
+ %common.attrib;
+ %refsect1info.role.attrib;
+ %local.refsect1info.attrib;
+>
+<!--end of refsect1info.attlist-->]]>
+<!--end of refsect1info.module-->]]>
+
+<!ENTITY % refsect2info.module "INCLUDE">
+<![ %refsect2info.module; [
+<!ENTITY % local.refsect2info.attrib "">
+<!ENTITY % refsect2info.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect2info.element "INCLUDE">
+<![ %refsect2info.element; [
+<!--doc:Meta-information for a RefSect2.-->
+<!ELEMENT refsect2info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refsect2info.element-->]]>
+
+<!ENTITY % refsect2info.attlist "INCLUDE">
+<![ %refsect2info.attlist; [
+<!ATTLIST refsect2info
+ %common.attrib;
+ %refsect2info.role.attrib;
+ %local.refsect2info.attrib;
+>
+<!--end of refsect2info.attlist-->]]>
+<!--end of refsect2info.module-->]]>
+
+<!ENTITY % refsect3info.module "INCLUDE">
+<![ %refsect3info.module; [
+<!ENTITY % local.refsect3info.attrib "">
+<!ENTITY % refsect3info.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect3info.element "INCLUDE">
+<![ %refsect3info.element; [
+<!--doc:Meta-information for a RefSect3.-->
+<!ELEMENT refsect3info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refsect3info.element-->]]>
+
+<!ENTITY % refsect3info.attlist "INCLUDE">
+<![ %refsect3info.attlist; [
+<!ATTLIST refsect3info
+ %common.attrib;
+ %refsect3info.role.attrib;
+ %local.refsect3info.attrib;
+>
+<!--end of refsect3info.attlist-->]]>
+<!--end of refsect3info.module-->]]>
+
+<!ENTITY % refsynopsisdivinfo.module "INCLUDE">
+<![ %refsynopsisdivinfo.module; [
+<!ENTITY % local.refsynopsisdivinfo.attrib "">
+<!ENTITY % refsynopsisdivinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % refsynopsisdivinfo.element "INCLUDE">
+<![ %refsynopsisdivinfo.element; [
+<!--doc:Meta-information for a RefSynopsisDiv.-->
+<!ELEMENT refsynopsisdivinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of refsynopsisdivinfo.element-->]]>
+
+<!ENTITY % refsynopsisdivinfo.attlist "INCLUDE">
+<![ %refsynopsisdivinfo.attlist; [
+<!ATTLIST refsynopsisdivinfo
+ %common.attrib;
+ %refsynopsisdivinfo.role.attrib;
+ %local.refsynopsisdivinfo.attrib;
+>
+<!--end of refsynopsisdivinfo.attlist-->]]>
+<!--end of refsynopsisdivinfo.module-->]]>
+
+<!ENTITY % referenceinfo.module "INCLUDE">
+<![ %referenceinfo.module; [
+<!ENTITY % local.referenceinfo.attrib "">
+<!ENTITY % referenceinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % referenceinfo.element "INCLUDE">
+<![ %referenceinfo.element; [
+<!--doc:Meta-information for a Reference.-->
+<!ELEMENT referenceinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of referenceinfo.element-->]]>
+
+<!ENTITY % referenceinfo.attlist "INCLUDE">
+<![ %referenceinfo.attlist; [
+<!ATTLIST referenceinfo
+ %common.attrib;
+ %referenceinfo.role.attrib;
+ %local.referenceinfo.attrib;
+>
+<!--end of referenceinfo.attlist-->]]>
+<!--end of referenceinfo.module-->]]>
+
+<!ENTITY % local.sect1info.attrib "">
+<!ENTITY % sect1info.role.attrib "%role.attrib;">
+
+<!ENTITY % sect1info.element "INCLUDE">
+<![%sect1info.element;[
+<!--doc:Meta-information for a Sect1.-->
+<!ELEMENT sect1info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sect1info.element-->]]>
+
+<!ENTITY % sect1info.attlist "INCLUDE">
+<![%sect1info.attlist;[
+<!ATTLIST sect1info
+ %common.attrib;
+ %sect1info.role.attrib;
+ %local.sect1info.attrib;
+>
+<!--end of sect1info.attlist-->]]>
+
+<!ENTITY % local.sect2info.attrib "">
+<!ENTITY % sect2info.role.attrib "%role.attrib;">
+
+<!ENTITY % sect2info.element "INCLUDE">
+<![%sect2info.element;[
+<!--doc:Meta-information for a Sect2.-->
+<!ELEMENT sect2info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sect2info.element-->]]>
+
+<!ENTITY % sect2info.attlist "INCLUDE">
+<![%sect2info.attlist;[
+<!ATTLIST sect2info
+ %common.attrib;
+ %sect2info.role.attrib;
+ %local.sect2info.attrib;
+>
+<!--end of sect2info.attlist-->]]>
+
+<!ENTITY % local.sect3info.attrib "">
+<!ENTITY % sect3info.role.attrib "%role.attrib;">
+
+<!ENTITY % sect3info.element "INCLUDE">
+<![%sect3info.element;[
+<!--doc:Meta-information for a Sect3.-->
+<!ELEMENT sect3info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sect3info.element-->]]>
+
+<!ENTITY % sect3info.attlist "INCLUDE">
+<![%sect3info.attlist;[
+<!ATTLIST sect3info
+ %common.attrib;
+ %sect3info.role.attrib;
+ %local.sect3info.attrib;
+>
+<!--end of sect3info.attlist-->]]>
+
+<!ENTITY % local.sect4info.attrib "">
+<!ENTITY % sect4info.role.attrib "%role.attrib;">
+
+<!ENTITY % sect4info.element "INCLUDE">
+<![%sect4info.element;[
+<!--doc:Meta-information for a Sect4.-->
+<!ELEMENT sect4info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sect4info.element-->]]>
+
+<!ENTITY % sect4info.attlist "INCLUDE">
+<![%sect4info.attlist;[
+<!ATTLIST sect4info
+ %common.attrib;
+ %sect4info.role.attrib;
+ %local.sect4info.attrib;
+>
+<!--end of sect4info.attlist-->]]>
+
+<!ENTITY % local.sect5info.attrib "">
+<!ENTITY % sect5info.role.attrib "%role.attrib;">
+
+<!ENTITY % sect5info.element "INCLUDE">
+<![%sect5info.element;[
+<!--doc:Meta-information for a Sect5.-->
+<!ELEMENT sect5info %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sect5info.element-->]]>
+
+<!ENTITY % sect5info.attlist "INCLUDE">
+<![%sect5info.attlist;[
+<!ATTLIST sect5info
+ %common.attrib;
+ %sect5info.role.attrib;
+ %local.sect5info.attrib;
+>
+<!--end of sect5info.attlist-->]]>
+
+<!-- ...................................................................... -->
+<!-- Section (parallel to Sect*) ......................................... -->
+
+<!ENTITY % section.content.module "INCLUDE">
+<![ %section.content.module; [
+<!ENTITY % section.module "INCLUDE">
+<![ %section.module; [
+<!ENTITY % local.section.attrib "">
+<!ENTITY % section.role.attrib "%role.attrib;">
+
+<!ENTITY % section.element "INCLUDE">
+<![ %section.element; [
+<!--doc:A recursive section.-->
+<!ELEMENT section %ho; (sectioninfo?,
+ (%sect.title.content;),
+ (%nav.class;)*,
+ (((%divcomponent.mix;)+,
+ ((%refentry.class;)*|(%section.class;)*|simplesect*))
+ | (%refentry.class;)+|(%section.class;)+|simplesect+),
+ (%nav.class;)*)
+ %ubiq.inclusion;>
+<!--end of section.element-->]]>
+
+<!ENTITY % section.attlist "INCLUDE">
+<![ %section.attlist; [
+<!ATTLIST section
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %section.role.attrib;
+ %local.section.attrib;
+>
+<!--end of section.attlist-->]]>
+<!--end of section.module-->]]>
+
+<!ENTITY % sectioninfo.module "INCLUDE">
+<![ %sectioninfo.module; [
+<!ENTITY % sectioninfo.role.attrib "%role.attrib;">
+<!ENTITY % local.sectioninfo.attrib "">
+
+<!ENTITY % sectioninfo.element "INCLUDE">
+<![ %sectioninfo.element; [
+<!--doc:Meta-information for a recursive section.-->
+<!ELEMENT sectioninfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sectioninfo.element-->]]>
+
+<!ENTITY % sectioninfo.attlist "INCLUDE">
+<![ %sectioninfo.attlist; [
+<!ATTLIST sectioninfo
+ %common.attrib;
+ %sectioninfo.role.attrib;
+ %local.sectioninfo.attrib;
+>
+<!--end of sectioninfo.attlist-->]]>
+<!--end of sectioninfo.module-->]]>
+<!--end of section.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Sect1, Sect2, Sect3, Sect4, Sect5 .................................... -->
+
+<!ENTITY % sect1.module "INCLUDE">
+<![%sect1.module;[
+<!ENTITY % local.sect1.attrib "">
+<!ENTITY % sect1.role.attrib "%role.attrib;">
+
+<!ENTITY % sect1.element "INCLUDE">
+<![%sect1.element;[
+<!--doc:A top-level section of document.-->
+<!ELEMENT sect1 %ho; (sect1info?, (%sect.title.content;), (%nav.class;)*,
+ (((%divcomponent.mix;)+,
+ ((%refentry.class;)* | sect2* | simplesect*))
+ | (%refentry.class;)+ | sect2+ | simplesect+), (%nav.class;)*)
+ %ubiq.inclusion;>
+<!--end of sect1.element-->]]>
+
+<!-- Renderas: Indicates the format in which the heading should
+ appear -->
+
+
+<!ENTITY % sect1.attlist "INCLUDE">
+<![%sect1.attlist;[
+<!ATTLIST sect1
+ renderas (sect2
+ |sect3
+ |sect4
+ |sect5) #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %sect1.role.attrib;
+ %local.sect1.attrib;
+>
+<!--end of sect1.attlist-->]]>
+<!--end of sect1.module-->]]>
+
+<!ENTITY % sect2.module "INCLUDE">
+<![%sect2.module;[
+<!ENTITY % local.sect2.attrib "">
+<!ENTITY % sect2.role.attrib "%role.attrib;">
+
+<!ENTITY % sect2.element "INCLUDE">
+<![%sect2.element;[
+<!--doc:A subsection within a Sect1.-->
+<!ELEMENT sect2 %ho; (sect2info?, (%sect.title.content;), (%nav.class;)*,
+ (((%divcomponent.mix;)+,
+ ((%refentry.class;)* | sect3* | simplesect*))
+ | (%refentry.class;)+ | sect3+ | simplesect+), (%nav.class;)*)>
+<!--end of sect2.element-->]]>
+
+<!-- Renderas: Indicates the format in which the heading should
+ appear -->
+
+
+<!ENTITY % sect2.attlist "INCLUDE">
+<![%sect2.attlist;[
+<!ATTLIST sect2
+ renderas (sect1
+ |sect3
+ |sect4
+ |sect5) #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %sect2.role.attrib;
+ %local.sect2.attrib;
+>
+<!--end of sect2.attlist-->]]>
+<!--end of sect2.module-->]]>
+
+<!ENTITY % sect3.module "INCLUDE">
+<![%sect3.module;[
+<!ENTITY % local.sect3.attrib "">
+<!ENTITY % sect3.role.attrib "%role.attrib;">
+
+<!ENTITY % sect3.element "INCLUDE">
+<![%sect3.element;[
+<!--doc:A subsection within a Sect2.-->
+<!ELEMENT sect3 %ho; (sect3info?, (%sect.title.content;), (%nav.class;)*,
+ (((%divcomponent.mix;)+,
+ ((%refentry.class;)* | sect4* | simplesect*))
+ | (%refentry.class;)+ | sect4+ | simplesect+), (%nav.class;)*)>
+<!--end of sect3.element-->]]>
+
+<!-- Renderas: Indicates the format in which the heading should
+ appear -->
+
+
+<!ENTITY % sect3.attlist "INCLUDE">
+<![%sect3.attlist;[
+<!ATTLIST sect3
+ renderas (sect1
+ |sect2
+ |sect4
+ |sect5) #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %sect3.role.attrib;
+ %local.sect3.attrib;
+>
+<!--end of sect3.attlist-->]]>
+<!--end of sect3.module-->]]>
+
+<!ENTITY % sect4.module "INCLUDE">
+<![%sect4.module;[
+<!ENTITY % local.sect4.attrib "">
+<!ENTITY % sect4.role.attrib "%role.attrib;">
+
+<!ENTITY % sect4.element "INCLUDE">
+<![%sect4.element;[
+<!--doc:A subsection within a Sect3.-->
+<!ELEMENT sect4 %ho; (sect4info?, (%sect.title.content;), (%nav.class;)*,
+ (((%divcomponent.mix;)+,
+ ((%refentry.class;)* | sect5* | simplesect*))
+ | (%refentry.class;)+ | sect5+ | simplesect+), (%nav.class;)*)>
+<!--end of sect4.element-->]]>
+
+<!-- Renderas: Indicates the format in which the heading should
+ appear -->
+
+
+<!ENTITY % sect4.attlist "INCLUDE">
+<![%sect4.attlist;[
+<!ATTLIST sect4
+ renderas (sect1
+ |sect2
+ |sect3
+ |sect5) #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %sect4.role.attrib;
+ %local.sect4.attrib;
+>
+<!--end of sect4.attlist-->]]>
+<!--end of sect4.module-->]]>
+
+<!ENTITY % sect5.module "INCLUDE">
+<![%sect5.module;[
+<!ENTITY % local.sect5.attrib "">
+<!ENTITY % sect5.role.attrib "%role.attrib;">
+
+<!ENTITY % sect5.element "INCLUDE">
+<![%sect5.element;[
+<!--doc:A subsection within a Sect4.-->
+<!ELEMENT sect5 %ho; (sect5info?, (%sect.title.content;), (%nav.class;)*,
+ (((%divcomponent.mix;)+, ((%refentry.class;)* | simplesect*))
+ | (%refentry.class;)+ | simplesect+), (%nav.class;)*)>
+<!--end of sect5.element-->]]>
+
+<!-- Renderas: Indicates the format in which the heading should
+ appear -->
+
+
+<!ENTITY % sect5.attlist "INCLUDE">
+<![%sect5.attlist;[
+<!ATTLIST sect5
+ renderas (sect1
+ |sect2
+ |sect3
+ |sect4) #IMPLIED
+ %label.attrib;
+ %status.attrib;
+ %common.attrib;
+ %sect5.role.attrib;
+ %local.sect5.attrib;
+>
+<!--end of sect5.attlist-->]]>
+<!--end of sect5.module-->]]>
+
+<!ENTITY % simplesect.module "INCLUDE">
+<![%simplesect.module;[
+<!ENTITY % local.simplesect.attrib "">
+<!ENTITY % simplesect.role.attrib "%role.attrib;">
+
+<!ENTITY % simplesect.element "INCLUDE">
+<![%simplesect.element;[
+<!--doc:A section of a document with no subdivisions.-->
+<!ELEMENT simplesect %ho; ((%sect.title.content;), (%divcomponent.mix;)+)
+ %ubiq.inclusion;>
+<!--end of simplesect.element-->]]>
+
+<!ENTITY % simplesect.attlist "INCLUDE">
+<![%simplesect.attlist;[
+<!ATTLIST simplesect
+ %common.attrib;
+ %simplesect.role.attrib;
+ %local.simplesect.attrib;
+>
+<!--end of simplesect.attlist-->]]>
+<!--end of simplesect.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Bibliography ......................................................... -->
+
+<!ENTITY % bibliography.content.module "INCLUDE">
+<![%bibliography.content.module;[
+<!ENTITY % bibliography.module "INCLUDE">
+<![%bibliography.module;[
+<!ENTITY % local.bibliography.attrib "">
+<!ENTITY % bibliography.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliography.element "INCLUDE">
+<![%bibliography.element;[
+<!--doc:A bibliography.-->
+<!ELEMENT bibliography %ho; (bibliographyinfo?,
+ (%bookcomponent.title.content;)?,
+ (%component.mix;)*,
+ (bibliodiv+ | (biblioentry|bibliomixed)+))>
+<!--end of bibliography.element-->]]>
+
+<!ENTITY % bibliography.attlist "INCLUDE">
+<![%bibliography.attlist;[
+<!ATTLIST bibliography
+ %status.attrib;
+ %common.attrib;
+ %bibliography.role.attrib;
+ %local.bibliography.attrib;
+>
+<!--end of bibliography.attlist-->]]>
+<!--end of bibliography.module-->]]>
+
+<!ENTITY % bibliodiv.module "INCLUDE">
+<![%bibliodiv.module;[
+<!ENTITY % local.bibliodiv.attrib "">
+<!ENTITY % bibliodiv.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliodiv.element "INCLUDE">
+<![%bibliodiv.element;[
+<!--doc:A section of a Bibliography.-->
+<!ELEMENT bibliodiv %ho; ((%sect.title.content;)?, (%component.mix;)*,
+ (biblioentry|bibliomixed)+)>
+<!--end of bibliodiv.element-->]]>
+
+<!ENTITY % bibliodiv.attlist "INCLUDE">
+<![%bibliodiv.attlist;[
+<!ATTLIST bibliodiv
+ %status.attrib;
+ %common.attrib;
+ %bibliodiv.role.attrib;
+ %local.bibliodiv.attrib;
+>
+<!--end of bibliodiv.attlist-->]]>
+<!--end of bibliodiv.module-->]]>
+<!--end of bibliography.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Glossary ............................................................. -->
+
+<!ENTITY % glossary.content.module "INCLUDE">
+<![%glossary.content.module;[
+<!ENTITY % glossary.module "INCLUDE">
+<![%glossary.module;[
+<!ENTITY % local.glossary.attrib "">
+<!ENTITY % glossary.role.attrib "%role.attrib;">
+
+<!ENTITY % glossary.element "INCLUDE">
+<![%glossary.element;[
+<!--doc:A glossary.-->
+<!ELEMENT glossary %ho; (glossaryinfo?,
+ (%bookcomponent.title.content;)?,
+ (%component.mix;)*,
+ (glossdiv+ | glossentry+), bibliography?)>
+<!--end of glossary.element-->]]>
+
+<!ENTITY % glossary.attlist "INCLUDE">
+<![%glossary.attlist;[
+<!ATTLIST glossary
+ %status.attrib;
+ %common.attrib;
+ %glossary.role.attrib;
+ %local.glossary.attrib;
+>
+<!--end of glossary.attlist-->]]>
+<!--end of glossary.module-->]]>
+
+<!ENTITY % glossdiv.module "INCLUDE">
+<![%glossdiv.module;[
+<!ENTITY % local.glossdiv.attrib "">
+<!ENTITY % glossdiv.role.attrib "%role.attrib;">
+
+<!ENTITY % glossdiv.element "INCLUDE">
+<![%glossdiv.element;[
+<!--doc:A division in a Glossary.-->
+<!ELEMENT glossdiv %ho; ((%sect.title.content;), (%component.mix;)*,
+ glossentry+)>
+<!--end of glossdiv.element-->]]>
+
+<!ENTITY % glossdiv.attlist "INCLUDE">
+<![%glossdiv.attlist;[
+<!ATTLIST glossdiv
+ %status.attrib;
+ %common.attrib;
+ %glossdiv.role.attrib;
+ %local.glossdiv.attrib;
+>
+<!--end of glossdiv.attlist-->]]>
+<!--end of glossdiv.module-->]]>
+<!--end of glossary.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Index and SetIndex ................................................... -->
+
+<!ENTITY % index.content.module "INCLUDE">
+<![%index.content.module;[
+<!ENTITY % indexes.module "INCLUDE">
+<![%indexes.module;[
+<!ENTITY % local.indexes.attrib "">
+<!ENTITY % indexes.role.attrib "%role.attrib;">
+
+<!ENTITY % index.element "INCLUDE">
+<![%index.element;[
+<!--doc:An index.-->
+<!ELEMENT index %ho; (indexinfo?,
+ (%bookcomponent.title.content;)?,
+ (%component.mix;)*,
+ (indexdiv* | indexentry*))
+ %ndxterm.exclusion;>
+<!--end of index.element-->]]>
+
+<!ENTITY % index.attlist "INCLUDE">
+<![%index.attlist;[
+<!ATTLIST index
+ type CDATA #IMPLIED
+ %common.attrib;
+ %indexes.role.attrib;
+ %local.indexes.attrib;
+>
+<!--end of index.attlist-->]]>
+
+<!ENTITY % setindex.element "INCLUDE">
+<![%setindex.element;[
+<!--doc:An index to a set of books.-->
+<!ELEMENT setindex %ho; (setindexinfo?,
+ (%bookcomponent.title.content;)?,
+ (%component.mix;)*,
+ (indexdiv* | indexentry*))
+ %ndxterm.exclusion;>
+<!--end of setindex.element-->]]>
+
+<!ENTITY % setindex.attlist "INCLUDE">
+<![%setindex.attlist;[
+<!ATTLIST setindex
+ %common.attrib;
+ %indexes.role.attrib;
+ %local.indexes.attrib;
+>
+<!--end of setindex.attlist-->]]>
+<!--end of indexes.module-->]]>
+
+<!ENTITY % indexdiv.module "INCLUDE">
+<![%indexdiv.module;[
+
+<!-- SegmentedList in this content is useful for marking up permuted
+ indices. -->
+
+<!ENTITY % local.indexdiv.attrib "">
+<!ENTITY % indexdiv.role.attrib "%role.attrib;">
+
+<!ENTITY % indexdiv.element "INCLUDE">
+<![%indexdiv.element;[
+<!--doc:A division in an index.-->
+<!ELEMENT indexdiv %ho; ((%sect.title.content;)?, ((%indexdivcomponent.mix;)*,
+ (indexentry+ | segmentedlist)))>
+<!--end of indexdiv.element-->]]>
+
+<!ENTITY % indexdiv.attlist "INCLUDE">
+<![%indexdiv.attlist;[
+<!ATTLIST indexdiv
+ %common.attrib;
+ %indexdiv.role.attrib;
+ %local.indexdiv.attrib;
+>
+<!--end of indexdiv.attlist-->]]>
+<!--end of indexdiv.module-->]]>
+
+<!ENTITY % indexentry.module "INCLUDE">
+<![%indexentry.module;[
+<!-- Index entries appear in the index, not the text. -->
+
+<!ENTITY % local.indexentry.attrib "">
+<!ENTITY % indexentry.role.attrib "%role.attrib;">
+
+<!ENTITY % indexentry.element "INCLUDE">
+<![%indexentry.element;[
+<!--doc:An entry in an index.-->
+<!ELEMENT indexentry %ho; (primaryie, (seeie|seealsoie)*,
+ (secondaryie, (seeie|seealsoie|tertiaryie)*)*)>
+<!--end of indexentry.element-->]]>
+
+<!ENTITY % indexentry.attlist "INCLUDE">
+<![%indexentry.attlist;[
+<!ATTLIST indexentry
+ %common.attrib;
+ %indexentry.role.attrib;
+ %local.indexentry.attrib;
+>
+<!--end of indexentry.attlist-->]]>
+<!--end of indexentry.module-->]]>
+
+<!ENTITY % primsecterie.module "INCLUDE">
+<![%primsecterie.module;[
+<!ENTITY % local.primsecterie.attrib "">
+<!ENTITY % primsecterie.role.attrib "%role.attrib;">
+
+<!ENTITY % primaryie.element "INCLUDE">
+<![%primaryie.element;[
+<!--doc:A primary term in an index entry, not in the text.-->
+<!ELEMENT primaryie %ho; (%ndxterm.char.mix;)*>
+<!--end of primaryie.element-->]]>
+
+<!-- to IndexTerms that these entries represent -->
+
+<!ENTITY % primaryie.attlist "INCLUDE">
+<![%primaryie.attlist;[
+<!ATTLIST primaryie
+ %linkends.attrib; %common.attrib;
+ %primsecterie.role.attrib;
+ %local.primsecterie.attrib;
+>
+<!--end of primaryie.attlist-->]]>
+
+<!ENTITY % secondaryie.element "INCLUDE">
+<![%secondaryie.element;[
+<!--doc:A secondary term in an index entry, rather than in the text.-->
+<!ELEMENT secondaryie %ho; (%ndxterm.char.mix;)*>
+<!--end of secondaryie.element-->]]>
+
+<!-- to IndexTerms that these entries represent -->
+
+<!ENTITY % secondaryie.attlist "INCLUDE">
+<![%secondaryie.attlist;[
+<!ATTLIST secondaryie
+ %linkends.attrib; %common.attrib;
+ %primsecterie.role.attrib;
+ %local.primsecterie.attrib;
+>
+<!--end of secondaryie.attlist-->]]>
+
+<!ENTITY % tertiaryie.element "INCLUDE">
+<![%tertiaryie.element;[
+<!--doc:A tertiary term in an index entry, rather than in the text.-->
+<!ELEMENT tertiaryie %ho; (%ndxterm.char.mix;)*>
+<!--end of tertiaryie.element-->]]>
+
+<!-- to IndexTerms that these entries represent -->
+
+<!ENTITY % tertiaryie.attlist "INCLUDE">
+<![%tertiaryie.attlist;[
+<!ATTLIST tertiaryie
+ %linkends.attrib; %common.attrib;
+ %primsecterie.role.attrib;
+ %local.primsecterie.attrib;
+>
+<!--end of tertiaryie.attlist-->]]>
+
+<!--end of primsecterie.module-->]]>
+
+<!ENTITY % seeie.module "INCLUDE">
+<![%seeie.module;[
+<!ENTITY % local.seeie.attrib "">
+<!ENTITY % seeie.role.attrib "%role.attrib;">
+
+<!ENTITY % seeie.element "INCLUDE">
+<![%seeie.element;[
+<!--doc:A See entry in an index, rather than in the text.-->
+<!ELEMENT seeie %ho; (%ndxterm.char.mix;)*>
+<!--end of seeie.element-->]]>
+
+<!-- to IndexEntry to look up -->
+
+
+<!ENTITY % seeie.attlist "INCLUDE">
+<![%seeie.attlist;[
+<!ATTLIST seeie
+ %linkend.attrib; %common.attrib;
+ %seeie.role.attrib;
+ %local.seeie.attrib;
+>
+<!--end of seeie.attlist-->]]>
+<!--end of seeie.module-->]]>
+
+<!ENTITY % seealsoie.module "INCLUDE">
+<![%seealsoie.module;[
+<!ENTITY % local.seealsoie.attrib "">
+<!ENTITY % seealsoie.role.attrib "%role.attrib;">
+
+<!ENTITY % seealsoie.element "INCLUDE">
+<![%seealsoie.element;[
+<!--doc:A See also entry in an index, rather than in the text.-->
+<!ELEMENT seealsoie %ho; (%ndxterm.char.mix;)*>
+<!--end of seealsoie.element-->]]>
+
+<!-- to related IndexEntries -->
+
+
+<!ENTITY % seealsoie.attlist "INCLUDE">
+<![%seealsoie.attlist;[
+<!ATTLIST seealsoie
+ %linkends.attrib; %common.attrib;
+ %seealsoie.role.attrib;
+ %local.seealsoie.attrib;
+>
+<!--end of seealsoie.attlist-->]]>
+<!--end of seealsoie.module-->]]>
+<!--end of index.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- RefEntry ............................................................. -->
+
+<!ENTITY % refentry.content.module "INCLUDE">
+<![%refentry.content.module;[
+<!ENTITY % refentry.module "INCLUDE">
+<![%refentry.module;[
+<!ENTITY % local.refentry.attrib "">
+<!ENTITY % refentry.role.attrib "%role.attrib;">
+
+<!ENTITY % refentry.element "INCLUDE">
+<![%refentry.element;[
+<!--doc:A reference page (originally a UNIX man-style reference page).-->
+<!ELEMENT refentry %ho; (beginpage?,
+ (%ndxterm.class;)*,
+ refentryinfo?, refmeta?, (remark|%link.char.class;)*,
+ refnamediv+, refsynopsisdiv?, (refsect1+|refsection+))
+ %ubiq.inclusion;>
+<!--end of refentry.element-->]]>
+
+<!ENTITY % refentry.attlist "INCLUDE">
+<![%refentry.attlist;[
+<!ATTLIST refentry
+ %status.attrib;
+ %common.attrib;
+ %refentry.role.attrib;
+ %local.refentry.attrib;
+>
+<!--end of refentry.attlist-->]]>
+<!--end of refentry.module-->]]>
+
+<!ENTITY % refmeta.module "INCLUDE">
+<![%refmeta.module;[
+<!ENTITY % local.refmeta.attrib "">
+<!ENTITY % refmeta.role.attrib "%role.attrib;">
+
+<!ENTITY % refmeta.element "INCLUDE">
+<![%refmeta.element;[
+<!--doc:Meta-information for a reference entry.-->
+<!ELEMENT refmeta %ho; ((%ndxterm.class;)*,
+ refentrytitle, manvolnum?, refmiscinfo*,
+ (%ndxterm.class;)*)
+ %beginpage.exclusion;>
+<!--end of refmeta.element-->]]>
+
+<!ENTITY % refmeta.attlist "INCLUDE">
+<![%refmeta.attlist;[
+<!ATTLIST refmeta
+ %common.attrib;
+ %refmeta.role.attrib;
+ %local.refmeta.attrib;
+>
+<!--end of refmeta.attlist-->]]>
+<!--end of refmeta.module-->]]>
+
+<!ENTITY % refmiscinfo.module "INCLUDE">
+<![%refmiscinfo.module;[
+<!ENTITY % local.refmiscinfo.attrib "">
+<!ENTITY % refmiscinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % refmiscinfo.element "INCLUDE">
+<![%refmiscinfo.element;[
+<!--doc:Meta-information for a reference entry other than the title and volume number.-->
+<!ELEMENT refmiscinfo %ho; (%docinfo.char.mix;)*>
+<!--end of refmiscinfo.element-->]]>
+
+<!-- Class: Freely assignable parameter; no default -->
+
+
+<!ENTITY % refmiscinfo.attlist "INCLUDE">
+<![%refmiscinfo.attlist;[
+<!ATTLIST refmiscinfo
+ class CDATA #IMPLIED
+ %common.attrib;
+ %refmiscinfo.role.attrib;
+ %local.refmiscinfo.attrib;
+>
+<!--end of refmiscinfo.attlist-->]]>
+<!--end of refmiscinfo.module-->]]>
+
+<!ENTITY % refnamediv.module "INCLUDE">
+<![%refnamediv.module;[
+<!ENTITY % local.refnamediv.attrib "">
+<!ENTITY % refnamediv.role.attrib "%role.attrib;">
+
+<!ENTITY % refnamediv.element "INCLUDE">
+<![%refnamediv.element;[
+<!--doc:The name, purpose, and classification of a reference page.-->
+<!ELEMENT refnamediv %ho; (refdescriptor?, refname+, refpurpose, refclass*,
+ (remark|%link.char.class;)*)>
+<!--end of refnamediv.element-->]]>
+
+<!ENTITY % refnamediv.attlist "INCLUDE">
+<![%refnamediv.attlist;[
+<!ATTLIST refnamediv
+ %common.attrib;
+ %refnamediv.role.attrib;
+ %local.refnamediv.attrib;
+>
+<!--end of refnamediv.attlist-->]]>
+<!--end of refnamediv.module-->]]>
+
+<!ENTITY % refdescriptor.module "INCLUDE">
+<![%refdescriptor.module;[
+<!ENTITY % local.refdescriptor.attrib "">
+<!ENTITY % refdescriptor.role.attrib "%role.attrib;">
+
+<!ENTITY % refdescriptor.element "INCLUDE">
+<![%refdescriptor.element;[
+<!--doc:A description of the topic of a reference page.-->
+<!ELEMENT refdescriptor %ho; (%refname.char.mix;)*>
+<!--end of refdescriptor.element-->]]>
+
+<!ENTITY % refdescriptor.attlist "INCLUDE">
+<![%refdescriptor.attlist;[
+<!ATTLIST refdescriptor
+ %common.attrib;
+ %refdescriptor.role.attrib;
+ %local.refdescriptor.attrib;
+>
+<!--end of refdescriptor.attlist-->]]>
+<!--end of refdescriptor.module-->]]>
+
+<!ENTITY % refname.module "INCLUDE">
+<![%refname.module;[
+<!ENTITY % local.refname.attrib "">
+<!ENTITY % refname.role.attrib "%role.attrib;">
+
+<!ENTITY % refname.element "INCLUDE">
+<![%refname.element;[
+<!--doc:The name of (one of) the subject(s) of a reference page.-->
+<!ELEMENT refname %ho; (%refname.char.mix;)*>
+<!--end of refname.element-->]]>
+
+<!ENTITY % refname.attlist "INCLUDE">
+<![%refname.attlist;[
+<!ATTLIST refname
+ %common.attrib;
+ %refname.role.attrib;
+ %local.refname.attrib;
+>
+<!--end of refname.attlist-->]]>
+<!--end of refname.module-->]]>
+
+<!ENTITY % refpurpose.module "INCLUDE">
+<![%refpurpose.module;[
+<!ENTITY % local.refpurpose.attrib "">
+<!ENTITY % refpurpose.role.attrib "%role.attrib;">
+
+<!ENTITY % refpurpose.element "INCLUDE">
+<![%refpurpose.element;[
+<!--doc:A short (one sentence) synopsis of the topic of a reference page.-->
+<!ELEMENT refpurpose %ho; (%refinline.char.mix;)*>
+<!--end of refpurpose.element-->]]>
+
+<!ENTITY % refpurpose.attlist "INCLUDE">
+<![%refpurpose.attlist;[
+<!ATTLIST refpurpose
+ %common.attrib;
+ %refpurpose.role.attrib;
+ %local.refpurpose.attrib;
+>
+<!--end of refpurpose.attlist-->]]>
+<!--end of refpurpose.module-->]]>
+
+<!ENTITY % refclass.module "INCLUDE">
+<![%refclass.module;[
+<!ENTITY % local.refclass.attrib "">
+<!ENTITY % refclass.role.attrib "%role.attrib;">
+
+<!ENTITY % refclass.element "INCLUDE">
+<![%refclass.element;[
+<!--doc:The scope or other indication of applicability of a reference entry.-->
+<!ELEMENT refclass %ho; (%refclass.char.mix;)*>
+<!--end of refclass.element-->]]>
+
+<!ENTITY % refclass.attlist "INCLUDE">
+<![%refclass.attlist;[
+<!ATTLIST refclass
+ %common.attrib;
+ %refclass.role.attrib;
+ %local.refclass.attrib;
+>
+<!--end of refclass.attlist-->]]>
+<!--end of refclass.module-->]]>
+
+<!ENTITY % refsynopsisdiv.module "INCLUDE">
+<![%refsynopsisdiv.module;[
+<!ENTITY % local.refsynopsisdiv.attrib "">
+<!ENTITY % refsynopsisdiv.role.attrib "%role.attrib;">
+
+<!ENTITY % refsynopsisdiv.element "INCLUDE">
+<![%refsynopsisdiv.element;[
+<!--doc:A syntactic synopsis of the subject of the reference page.-->
+<!ELEMENT refsynopsisdiv %ho; (refsynopsisdivinfo?, (%refsect.title.content;)?,
+ (((%refcomponent.mix;)+, refsect2*) | (refsect2+)))>
+<!--end of refsynopsisdiv.element-->]]>
+
+<!ENTITY % refsynopsisdiv.attlist "INCLUDE">
+<![%refsynopsisdiv.attlist;[
+<!ATTLIST refsynopsisdiv
+ %common.attrib;
+ %refsynopsisdiv.role.attrib;
+ %local.refsynopsisdiv.attrib;
+>
+<!--end of refsynopsisdiv.attlist-->]]>
+<!--end of refsynopsisdiv.module-->]]>
+
+<!ENTITY % refsection.module "INCLUDE">
+<![%refsection.module;[
+<!ENTITY % local.refsection.attrib "">
+<!ENTITY % refsection.role.attrib "%role.attrib;">
+
+<!ENTITY % refsection.element "INCLUDE">
+<![%refsection.element;[
+<!--doc:A recursive section in a refentry.-->
+<!ELEMENT refsection %ho; (refsectioninfo?, (%refsect.title.content;),
+ (((%refcomponent.mix;)+, refsection*) | refsection+))>
+<!--end of refsection.element-->]]>
+
+<!ENTITY % refsection.attlist "INCLUDE">
+<![%refsection.attlist;[
+<!ATTLIST refsection
+ %status.attrib;
+ %common.attrib;
+ %refsection.role.attrib;
+ %local.refsection.attrib;
+>
+<!--end of refsection.attlist-->]]>
+<!--end of refsection.module-->]]>
+
+<!ENTITY % refsect1.module "INCLUDE">
+<![%refsect1.module;[
+<!ENTITY % local.refsect1.attrib "">
+<!ENTITY % refsect1.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect1.element "INCLUDE">
+<![%refsect1.element;[
+<!--doc:A major subsection of a reference entry.-->
+<!ELEMENT refsect1 %ho; (refsect1info?, (%refsect.title.content;),
+ (((%refcomponent.mix;)+, refsect2*) | refsect2+))>
+<!--end of refsect1.element-->]]>
+
+<!ENTITY % refsect1.attlist "INCLUDE">
+<![%refsect1.attlist;[
+<!ATTLIST refsect1
+ %status.attrib;
+ %common.attrib;
+ %refsect1.role.attrib;
+ %local.refsect1.attrib;
+>
+<!--end of refsect1.attlist-->]]>
+<!--end of refsect1.module-->]]>
+
+<!ENTITY % refsect2.module "INCLUDE">
+<![%refsect2.module;[
+<!ENTITY % local.refsect2.attrib "">
+<!ENTITY % refsect2.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect2.element "INCLUDE">
+<![%refsect2.element;[
+<!--doc:A subsection of a RefSect1.-->
+<!ELEMENT refsect2 %ho; (refsect2info?, (%refsect.title.content;),
+ (((%refcomponent.mix;)+, refsect3*) | refsect3+))>
+<!--end of refsect2.element-->]]>
+
+<!ENTITY % refsect2.attlist "INCLUDE">
+<![%refsect2.attlist;[
+<!ATTLIST refsect2
+ %status.attrib;
+ %common.attrib;
+ %refsect2.role.attrib;
+ %local.refsect2.attrib;
+>
+<!--end of refsect2.attlist-->]]>
+<!--end of refsect2.module-->]]>
+
+<!ENTITY % refsect3.module "INCLUDE">
+<![%refsect3.module;[
+<!ENTITY % local.refsect3.attrib "">
+<!ENTITY % refsect3.role.attrib "%role.attrib;">
+
+<!ENTITY % refsect3.element "INCLUDE">
+<![%refsect3.element;[
+<!--doc:A subsection of a RefSect2.-->
+<!ELEMENT refsect3 %ho; (refsect3info?, (%refsect.title.content;),
+ (%refcomponent.mix;)+)>
+<!--end of refsect3.element-->]]>
+
+<!ENTITY % refsect3.attlist "INCLUDE">
+<![%refsect3.attlist;[
+<!ATTLIST refsect3
+ %status.attrib;
+ %common.attrib;
+ %refsect3.role.attrib;
+ %local.refsect3.attrib;
+>
+<!--end of refsect3.attlist-->]]>
+<!--end of refsect3.module-->]]>
+<!--end of refentry.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Article .............................................................. -->
+
+<!ENTITY % article.module "INCLUDE">
+<![%article.module;[
+<!-- An Article is a chapter-level, stand-alone document that is often,
+ but need not be, collected into a Book. -->
+
+<!ENTITY % local.article.attrib "">
+<!ENTITY % article.role.attrib "%role.attrib;">
+
+<!ENTITY % article.element "INCLUDE">
+<![%article.element;[
+<!--doc:An article.-->
+<!ELEMENT article %ho; ((%div.title.content;)?, articleinfo?, tocchap?, lot*,
+ (%bookcomponent.content;),
+ (%nav.class;|%appendix.class;|colophon|ackno)*)
+ %ubiq.inclusion;>
+<!--end of article.element-->]]>
+
+<!-- Class: Indicates the type of a particular article;
+ all articles have the same structure and general purpose.
+ No default. -->
+<!-- ParentBook: ID of the enclosing Book -->
+
+
+<!ENTITY % article.attlist "INCLUDE">
+<![%article.attlist;[
+<!ATTLIST article
+ class (journalarticle
+ |productsheet
+ |whitepaper
+ |techreport
+ |specification
+ |faq) #IMPLIED
+ parentbook IDREF #IMPLIED
+ %status.attrib;
+ %common.attrib;
+ %article.role.attrib;
+ %local.article.attrib;
+>
+<!--end of article.attlist-->]]>
+<!--end of article.module-->]]>
+
+<!-- End of DocBook document hierarchy module V4.5 ........................ -->
+<!-- ...................................................................... -->
diff --git a/doc/creating_themes/C/dbnotnx.mod b/doc/creating_themes/C/dbnotnx.mod
new file mode 100644
index 00000000..2416049b
--- /dev/null
+++ b/doc/creating_themes/C/dbnotnx.mod
@@ -0,0 +1,101 @@
+<!-- ...................................................................... -->
+<!-- DocBook notations module V4.5 ........................................ -->
+<!-- File dbnotnx.mod ..................................................... -->
+
+<!-- Copyright 1992-2004 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ $Id: dbnotnx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook DTD
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation for more information.
+
+ Please direct all questions, bug reports, or suggestions for
+ changes to the [email protected] mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the notation declarations used by DocBook.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbnotn PUBLIC
+ "-//OASIS//ENTITIES DocBook Notations V4.5//EN"
+ "dbnotnx.mod">
+ %dbnotn;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!ENTITY % local.notation.class "">
+<!ENTITY % notation.class
+ "BMP| CGM-CHAR | CGM-BINARY | CGM-CLEAR | DITROFF | DVI
+ | EPS | EQN | FAX | GIF | GIF87a | GIF89a
+ | JPG | JPEG | IGES | PCX
+ | PIC | PNG | PS | SGML | TBL | TEX | TIFF | WMF | WPG
+ | SVG | PDF | SWF
+ | linespecific
+ %local.notation.class;">
+
+<!NOTATION BMP PUBLIC
+"+//ISBN 0-7923-94.2-1::Graphic Notation//NOTATION Microsoft Windows bitmap//EN">
+<!NOTATION CGM-CHAR PUBLIC "ISO 8632/2//NOTATION Character encoding//EN">
+<!NOTATION CGM-BINARY PUBLIC "ISO 8632/3//NOTATION Binary encoding//EN">
+<!NOTATION CGM-CLEAR PUBLIC "ISO 8632/4//NOTATION Clear text encoding//EN">
+<!NOTATION DITROFF SYSTEM "DITROFF">
+<!NOTATION DVI SYSTEM "DVI">
+<!NOTATION EPS PUBLIC
+"+//ISBN 0-201-18127-4::Adobe//NOTATION PostScript Language Ref. Manual//EN">
+<!NOTATION EQN SYSTEM "EQN">
+<!NOTATION FAX PUBLIC
+"-//USA-DOD//NOTATION CCITT Group 4 Facsimile Type 1 Untiled Raster//EN">
+<!NOTATION GIF SYSTEM "GIF">
+<!NOTATION GIF87a PUBLIC
+"-//CompuServe//NOTATION Graphics Interchange Format 87a//EN">
+
+<!NOTATION GIF89a PUBLIC
+"-//CompuServe//NOTATION Graphics Interchange Format 89a//EN">
+<!NOTATION JPG SYSTEM "JPG">
+<!NOTATION JPEG SYSTEM "JPG">
+<!NOTATION IGES PUBLIC
+"-//USA-DOD//NOTATION (ASME/ANSI Y14.26M-1987) Initial Graphics Exchange Specification//EN">
+<!NOTATION PCX PUBLIC
+"+//ISBN 0-7923-94.2-1::Graphic Notation//NOTATION ZSoft PCX bitmap//EN">
+<!NOTATION PIC SYSTEM "PIC">
+<!NOTATION PNG SYSTEM "http://www.w3.org/TR/REC-png">
+<!NOTATION PS SYSTEM "PS">
+<!NOTATION SGML PUBLIC
+"ISO 8879:1986//NOTATION Standard Generalized Markup Language//EN">
+<!NOTATION TBL SYSTEM "TBL">
+<!NOTATION TEX PUBLIC
+"+//ISBN 0-201-13448-9::Knuth//NOTATION The TeXbook//EN">
+<!NOTATION TIFF SYSTEM "TIFF">
+<!NOTATION WMF PUBLIC
+"+//ISBN 0-7923-94.2-1::Graphic Notation//NOTATION Microsoft Windows Metafile//EN">
+<!NOTATION WPG SYSTEM "WPG"> <!--WordPerfect Graphic format-->
+<!NOTATION SVG SYSTEM "http://www.w3.org/TR/SVG/">
+<!NOTATION PDF SYSTEM "http://www.adobe.com/products/acrobat/adobepdf.html">
+<!NOTATION SWF SYSTEM "http://www.macromedia.com/software/flash">
+<!NOTATION linespecific SYSTEM "linespecific">
+
+<!-- End of DocBook notations module V4.5 ................................. -->
+<!-- ...................................................................... -->
diff --git a/doc/creating_themes/C/dbpoolx.mod b/doc/creating_themes/C/dbpoolx.mod
new file mode 100644
index 00000000..53b07044
--- /dev/null
+++ b/doc/creating_themes/C/dbpoolx.mod
@@ -0,0 +1,8701 @@
+<!-- ...................................................................... -->
+<!-- DocBook XML information pool module V4.5 ............................. -->
+<!-- File dbpoolx.mod ..................................................... -->
+
+<!-- Copyright 1992-2004 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ $Id: dbpoolx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook XML DTD
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook XML DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation for more information.
+
+ Please direct all questions, bug reports, or suggestions for
+ changes to the [email protected] mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the definitions for the objects, inline
+ elements, and so on that are available to be used as the main
+ content of DocBook documents. Some elements are useful for general
+ publishing, and others are useful specifically for computer
+ documentation.
+
+ This module has the following dependencies on other modules:
+
+ o It assumes that a %notation.class; entity is defined by the
+ driver file or other high-level module. This entity is
+ referenced in the NOTATION attributes for the graphic-related and
+ ModeSpec elements.
+
+ o It assumes that an appropriately parameterized table module is
+ available for use with the table-related elements.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % dbpool PUBLIC
+ "-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN"
+ "dbpoolx.mod">
+ %dbpool;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!-- ...................................................................... -->
+<!-- Forms entities ....................................................... -->
+<!-- These PEs provide the hook by which the forms module can be inserted -->
+<!-- into the DTD. -->
+<!ENTITY % forminlines.hook "">
+<!ENTITY % forms.hook "">
+
+<!-- ...................................................................... -->
+<!-- General-purpose semantics entities ................................... -->
+
+<!ENTITY % yesorno.attvals "CDATA">
+
+<!-- ...................................................................... -->
+<!-- Entities for module inclusions ....................................... -->
+
+<!ENTITY % dbpool.redecl.module "IGNORE">
+
+<!-- ...................................................................... -->
+<!-- Entities for element classes and mixtures ............................ -->
+
+<!-- "Ubiquitous" classes: ndxterm.class and beginpage -->
+
+<!ENTITY % local.ndxterm.class "">
+<!ENTITY % ndxterm.class
+ "indexterm %local.ndxterm.class;">
+
+<!-- Object-level classes ................................................. -->
+
+<!ENTITY % local.list.class "">
+<!ENTITY % list.class
+ "calloutlist|glosslist|bibliolist|itemizedlist|orderedlist|segmentedlist
+ |simplelist|variablelist %local.list.class;">
+
+<!ENTITY % local.admon.class "">
+<!ENTITY % admon.class
+ "caution|important|note|tip|warning %local.admon.class;">
+
+<!ENTITY % local.linespecific.class "">
+<!ENTITY % linespecific.class
+ "literallayout|programlisting|programlistingco|screen
+ |screenco|screenshot %local.linespecific.class;">
+
+<!ENTITY % local.method.synop.class "">
+<!ENTITY % method.synop.class
+ "constructorsynopsis
+ |destructorsynopsis
+ |methodsynopsis %local.method.synop.class;">
+
+<!ENTITY % local.synop.class "">
+<!ENTITY % synop.class
+ "synopsis|cmdsynopsis|funcsynopsis
+ |classsynopsis|fieldsynopsis
+ |%method.synop.class; %local.synop.class;">
+
+<!ENTITY % local.para.class "">
+<!ENTITY % para.class
+ "formalpara|para|simpara %local.para.class;">
+
+<!ENTITY % local.informal.class "">
+<!ENTITY % informal.class
+ "address|blockquote
+ |graphic|graphicco|mediaobject|mediaobjectco
+ |informalequation
+ |informalexample
+ |informalfigure
+ |informaltable %local.informal.class;">
+
+<!ENTITY % local.formal.class "">
+<!ENTITY % formal.class
+ "equation|example|figure|table %local.formal.class;">
+
+<!-- The DocBook TC may produce an official EBNF module for DocBook. -->
+<!-- This PE provides the hook by which it can be inserted into the DTD. -->
+<!ENTITY % ebnf.block.hook "">
+
+<!ENTITY % local.compound.class "">
+<!ENTITY % compound.class
+ "msgset|procedure|sidebar|qandaset|task
+ %ebnf.block.hook;
+ %local.compound.class;">
+
+<!ENTITY % local.genobj.class "">
+<!ENTITY % genobj.class
+ "anchor|bridgehead|remark|highlights
+ %local.genobj.class;">
+
+<!ENTITY % local.descobj.class "">
+<!ENTITY % descobj.class
+ "abstract|authorblurb|epigraph
+ %local.descobj.class;">
+
+<!-- Character-level classes .............................................. -->
+
+<!ENTITY % local.xref.char.class "">
+<!ENTITY % xref.char.class
+ "footnoteref|xref|biblioref %local.xref.char.class;">
+
+<!ENTITY % local.gen.char.class "">
+<!ENTITY % gen.char.class
+ "abbrev|acronym|citation|citerefentry|citetitle|citebiblioid|emphasis
+ |firstterm|foreignphrase|glossterm|termdef|footnote|phrase
+ |orgname|quote|trademark|wordasword
+ |personname %local.gen.char.class;">
+
+<!ENTITY % local.link.char.class "">
+<!ENTITY % link.char.class
+ "link|olink|ulink %local.link.char.class;">
+
+<!-- The DocBook TC may produce an official EBNF module for DocBook. -->
+<!-- This PE provides the hook by which it can be inserted into the DTD. -->
+<!ENTITY % ebnf.inline.hook "">
+
+<!ENTITY % local.tech.char.class "">
+<!ENTITY % tech.char.class
+ "action|application
+ |classname|methodname|interfacename|exceptionname
+ |ooclass|oointerface|ooexception
+ |package
+ |command|computeroutput
+ |database|email|envar|errorcode|errorname|errortype|errortext|filename
+ |function|guibutton|guiicon|guilabel|guimenu|guimenuitem
+ |guisubmenu|hardware|interface|keycap
+ |keycode|keycombo|keysym|literal|code|constant|markup|medialabel
+ |menuchoice|mousebutton|option|optional|parameter
+ |prompt|property|replaceable|returnvalue|sgmltag|structfield
+ |structname|symbol|systemitem|uri|token|type|userinput|varname
+ %ebnf.inline.hook;
+ %local.tech.char.class;">
+
+<!ENTITY % local.base.char.class "">
+<!ENTITY % base.char.class
+ "anchor %local.base.char.class;">
+
+<!ENTITY % local.docinfo.char.class "">
+<!ENTITY % docinfo.char.class
+ "author|authorinitials|corpauthor|corpcredit|modespec|othercredit
+ |productname|productnumber|revhistory
+ %local.docinfo.char.class;">
+
+<!ENTITY % local.other.char.class "">
+<!ENTITY % other.char.class
+ "remark|subscript|superscript %local.other.char.class;">
+
+<!ENTITY % local.inlineobj.char.class "">
+<!ENTITY % inlineobj.char.class
+ "inlinegraphic|inlinemediaobject|inlineequation %local.inlineobj.char.class;">
+
+<!-- ...................................................................... -->
+<!-- Entities for content models .......................................... -->
+
+<!ENTITY % formalobject.title.content "title, titleabbrev?">
+
+<!-- Redeclaration placeholder ............................................ -->
+
+<!-- For redeclaring entities that are declared after this point while
+ retaining their references to the entities that are declared before
+ this point -->
+
+<![%dbpool.redecl.module;[
+<!-- Defining rdbpool here makes some buggy XML parsers happy. -->
+<!ENTITY % rdbpool "">
+%rdbpool;
+<!--end of dbpool.redecl.module-->]]>
+
+<!-- Object-level mixtures ................................................ -->
+
+<!--
+ list admn line synp para infm form cmpd gen desc
+Component mixture X X X X X X X X X X
+Sidebar mixture X X X X X X X a X
+Footnote mixture X X X X X
+Example mixture X X X X X
+Highlights mixture X X X
+Paragraph mixture X X X X
+Admonition mixture X X X X X X b c
+Figure mixture X X X
+Table entry mixture X X X X d
+Glossary def mixture X X X X X e
+Legal notice mixture X X X X f
+
+a. Just Procedure; not Sidebar itself or MsgSet.
+b. No MsgSet.
+c. No Highlights.
+d. Just Graphic; no other informal objects.
+e. No Anchor, BridgeHead, or Highlights.
+f. Just BlockQuote; no other informal objects.
+-->
+
+<!ENTITY % local.component.mix "">
+<!ENTITY % component.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |%compound.class;
+ |%genobj.class; |%descobj.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.component.mix;">
+
+<!ENTITY % local.sidebar.mix "">
+<!ENTITY % sidebar.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |procedure
+ |%genobj.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.sidebar.mix;">
+
+<!ENTITY % local.qandaset.mix "">
+<!ENTITY % qandaset.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |procedure
+ |%genobj.class;
+ |%ndxterm.class;
+ %forms.hook;
+ %local.qandaset.mix;">
+
+<!ENTITY % local.revdescription.mix "">
+<!ENTITY % revdescription.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |procedure
+ |%genobj.class;
+ |%ndxterm.class;
+ %local.revdescription.mix;">
+
+<!ENTITY % local.footnote.mix "">
+<!ENTITY % footnote.mix
+ "%list.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ %local.footnote.mix;">
+
+<!ENTITY % local.example.mix "">
+<!ENTITY % example.mix
+ "%list.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%ndxterm.class; |beginpage
+ |procedure
+ %forms.hook;
+ %local.example.mix;">
+
+<!ENTITY % local.highlights.mix "">
+<!ENTITY % highlights.mix
+ "%list.class; |%admon.class;
+ |%para.class;
+ |%ndxterm.class;
+ %local.highlights.mix;">
+
+<!-- %formal.class; is explicitly excluded from many contexts in which
+ paragraphs are used -->
+<!ENTITY % local.para.mix "">
+<!ENTITY % para.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class;
+ |%informal.class;
+ |%formal.class;
+ %local.para.mix;">
+
+<!ENTITY % local.admon.mix "">
+<!ENTITY % admon.mix
+ "%list.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class; |procedure|sidebar
+ |anchor|bridgehead|remark
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.admon.mix;">
+
+<!ENTITY % local.figure.mix "">
+<!ENTITY % figure.mix
+ "%linespecific.class; |%synop.class;
+ |%informal.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.figure.mix;">
+
+<!ENTITY % local.tabentry.mix "">
+<!ENTITY % tabentry.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class;
+ |%para.class; |graphic|mediaobject
+ %forms.hook;
+ %local.tabentry.mix;">
+
+<!ENTITY % local.glossdef.mix "">
+<!ENTITY % glossdef.mix
+ "%list.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%formal.class;
+ |remark
+ |%ndxterm.class; |beginpage
+ %local.glossdef.mix;">
+
+<!ENTITY % local.legalnotice.mix "">
+<!ENTITY % legalnotice.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class;
+ |%para.class; |blockquote
+ |%ndxterm.class; |beginpage
+ %local.legalnotice.mix;">
+
+<!ENTITY % local.textobject.mix "">
+<!ENTITY % textobject.mix
+ "%list.class; |%admon.class;
+ |%linespecific.class;
+ |%para.class; |blockquote
+ %local.textobject.mix;">
+
+<!ENTITY % local.mediaobject.mix "">
+<!ENTITY % mediaobject.mix
+ "videoobject|audioobject|imageobject|imageobjectco|textobject %local.mediaobject.mix;">
+
+<!ENTITY % local.listpreamble.mix "">
+<!ENTITY % listpreamble.mix
+ " %admon.class;
+ |%linespecific.class; |%synop.class;
+ |%para.class; |%informal.class;
+ |%genobj.class; |%descobj.class;
+ |%ndxterm.class; |beginpage
+ %forms.hook;
+ %local.listpreamble.mix;">
+
+<!-- Character-level mixtures ............................................. -->
+
+<![%sgml.features;[
+<!ENTITY % local.ubiq.mix "">
+<!ENTITY % ubiq.mix "%ndxterm.class;|beginpage %local.ubiq.mix;">
+
+<!ENTITY % ubiq.exclusion "-(%ubiq.mix)">
+<!ENTITY % ubiq.inclusion "+(%ubiq.mix)">
+
+<!ENTITY % footnote.exclusion "-(footnote|%formal.class;)">
+<!ENTITY % highlights.exclusion "-(%ubiq.mix;|%formal.class;)">
+<!ENTITY % admon.exclusion "-(%admon.class;)">
+<!ENTITY % formal.exclusion "-(%formal.class;)">
+<!ENTITY % acronym.exclusion "-(acronym)">
+<!ENTITY % beginpage.exclusion "-(beginpage)">
+<!ENTITY % ndxterm.exclusion "-(%ndxterm.class;)">
+<!ENTITY % blockquote.exclusion "-(epigraph)">
+<!ENTITY % remark.exclusion "-(remark|%ubiq.mix;)">
+<!ENTITY % glossterm.exclusion "-(glossterm)">
+<!ENTITY % links.exclusion "-(link|olink|ulink|xref|biblioref)">
+]]><!-- sgml.features -->
+
+<!-- not [sgml.features[ -->
+<!ENTITY % local.ubiq.mix "">
+<!ENTITY % ubiq.mix "">
+
+<!ENTITY % ubiq.exclusion "">
+<!ENTITY % ubiq.inclusion "">
+
+<!ENTITY % footnote.exclusion "">
+<!ENTITY % highlights.exclusion "">
+<!ENTITY % admon.exclusion "">
+<!ENTITY % formal.exclusion "">
+<!ENTITY % acronym.exclusion "">
+<!ENTITY % beginpage.exclusion "">
+<!ENTITY % ndxterm.exclusion "">
+<!ENTITY % blockquote.exclusion "">
+<!ENTITY % remark.exclusion "">
+<!ENTITY % glossterm.exclusion "">
+<!ENTITY % links.exclusion "">
+<!-- ]] not sgml.features -->
+
+<!--
+ #PCD xref word link cptr base dnfo othr inob (synop)
+para.char.mix X X X X X X X X X
+title.char.mix X X X X X X X X X
+ndxterm.char.mix X X X X X X X X a
+cptr.char.mix X X X X X a
+smallcptr.char.mix X b a
+word.char.mix X c X X X a
+docinfo.char.mix X d X b X a
+
+a. Just InlineGraphic; no InlineEquation.
+b. Just Replaceable; no other computer terms.
+c. Just Emphasis and Trademark; no other word elements.
+d. Just Acronym, Emphasis, and Trademark; no other word elements.
+-->
+
+<!ENTITY % local.para.char.mix "">
+<!ENTITY % para.char.mix
+ "#PCDATA
+ |%xref.char.class; |%gen.char.class;
+ |%link.char.class; |%tech.char.class;
+ |%base.char.class; |%docinfo.char.class;
+ |%other.char.class; |%inlineobj.char.class;
+ |%synop.class;
+ |%ndxterm.class; |beginpage
+ %forminlines.hook;
+ %local.para.char.mix;">
+
+<!ENTITY % local.title.char.mix "">
+<!ENTITY % title.char.mix
+ "#PCDATA
+ |%xref.char.class; |%gen.char.class;
+ |%link.char.class; |%tech.char.class;
+ |%base.char.class; |%docinfo.char.class;
+ |%other.char.class; |%inlineobj.char.class;
+ |%ndxterm.class;
+ %local.title.char.mix;">
+
+<!ENTITY % local.ndxterm.char.mix "">
+<!ENTITY % ndxterm.char.mix
+ "#PCDATA
+ |%xref.char.class; |%gen.char.class;
+ |%link.char.class; |%tech.char.class;
+ |%base.char.class; |%docinfo.char.class;
+ |%other.char.class; |inlinegraphic|inlinemediaobject
+ %local.ndxterm.char.mix;">
+
+<!ENTITY % local.cptr.char.mix "">
+<!ENTITY % cptr.char.mix
+ "#PCDATA
+ |%link.char.class; |%tech.char.class;
+ |%base.char.class;
+ |%other.char.class; |inlinegraphic|inlinemediaobject
+ |%ndxterm.class; |beginpage
+ %local.cptr.char.mix;">
+
+<!ENTITY % local.smallcptr.char.mix "">
+<!ENTITY % smallcptr.char.mix
+ "#PCDATA
+ |replaceable
+ |inlinegraphic|inlinemediaobject
+ |%ndxterm.class; |beginpage
+ %local.smallcptr.char.mix;">
+
+<!ENTITY % local.word.char.mix "">
+<!ENTITY % word.char.mix
+ "#PCDATA
+ |acronym|emphasis|trademark
+ |%link.char.class;
+ |%base.char.class;
+ |%other.char.class; |inlinegraphic|inlinemediaobject
+ |%ndxterm.class; |beginpage
+ %local.word.char.mix;">
+
+<!ENTITY % local.docinfo.char.mix "">
+<!ENTITY % docinfo.char.mix
+ "#PCDATA
+ |%link.char.class;
+ |emphasis|trademark
+ |replaceable
+ |%other.char.class; |inlinegraphic|inlinemediaobject
+ |%ndxterm.class;
+ %local.docinfo.char.mix;">
+<!--ENTITY % bibliocomponent.mix (see Bibliographic section, below)-->
+<!--ENTITY % person.ident.mix (see Bibliographic section, below)-->
+
+<!-- ...................................................................... -->
+<!-- Entities for attributes and attribute components ..................... -->
+
+<!-- Effectivity attributes ............................................... -->
+
+
+<!-- Arch: Computer or chip architecture to which element applies; no
+ default -->
+
+<!ENTITY % arch.attrib
+ "arch CDATA #IMPLIED">
+
+<!-- Condition: General-purpose effectivity attribute -->
+
+<!ENTITY % condition.attrib
+ "condition CDATA #IMPLIED">
+
+<!-- Conformance: Standards conformance characteristics -->
+
+<!ENTITY % conformance.attrib
+ "conformance NMTOKENS #IMPLIED">
+
+
+<!-- OS: Operating system to which element applies; no default -->
+
+<!ENTITY % os.attrib
+ "os CDATA #IMPLIED">
+
+
+<!-- Revision: Editorial revision to which element belongs; no default -->
+
+<!ENTITY % revision.attrib
+ "revision CDATA #IMPLIED">
+
+<!-- Security: Security classification; no default -->
+
+<!ENTITY % security.attrib
+ "security CDATA #IMPLIED">
+
+<!-- UserLevel: Level of user experience to which element applies; no
+ default -->
+
+<!ENTITY % userlevel.attrib
+ "userlevel CDATA #IMPLIED">
+
+<!-- Vendor: Computer vendor to which element applies; no default -->
+
+<!ENTITY % vendor.attrib
+ "vendor CDATA #IMPLIED">
+
+<!-- Wordsize: Computer word size (32 bit, 64 bit, etc.); no default -->
+
+<!ENTITY % wordsize.attrib
+ "wordsize CDATA #IMPLIED">
+
+<!ENTITY % local.effectivity.attrib "">
+<!ENTITY % effectivity.attrib
+ "%arch.attrib;
+ %condition.attrib;
+ %conformance.attrib;
+ %os.attrib;
+ %revision.attrib;
+ %security.attrib;
+ %userlevel.attrib;
+ %vendor.attrib;
+ %wordsize.attrib;
+ %local.effectivity.attrib;"
+>
+
+<!-- Common attributes .................................................... -->
+
+
+<!-- Id: Unique identifier of element; no default -->
+
+<!ENTITY % id.attrib
+ "id ID #IMPLIED">
+
+
+<!-- Id: Unique identifier of element; a value must be supplied; no
+ default -->
+
+<!ENTITY % idreq.attrib
+ "id ID #REQUIRED">
+
+
+<!-- Lang: Indicator of language in which element is written, for
+ translation, character set management, etc.; no default -->
+
+<!ENTITY % lang.attrib
+ "lang CDATA #IMPLIED">
+
+
+<!-- Remap: Previous role of element before conversion; no default -->
+
+<!ENTITY % remap.attrib
+ "remap CDATA #IMPLIED">
+
+
+<!-- Role: New role of element in local environment; no default -->
+
+<!ENTITY % role.attrib
+ "role CDATA #IMPLIED">
+
+
+<!-- XRefLabel: Alternate labeling string for XRef text generation;
+ default is usually title or other appropriate label text already
+ contained in element -->
+
+<!ENTITY % xreflabel.attrib
+ "xreflabel CDATA #IMPLIED">
+
+
+<!-- RevisionFlag: Revision status of element; default is that element
+ wasn't revised -->
+
+<!ENTITY % revisionflag.attrib
+ "revisionflag (changed
+ |added
+ |deleted
+ |off) #IMPLIED">
+
+<!ENTITY % local.common.attrib "">
+
+<!-- dir: Bidirectional override -->
+
+<!ENTITY % dir.attrib
+ "dir (ltr
+ |rtl
+ |lro
+ |rlo) #IMPLIED">
+
+<!-- xml:base: base URI -->
+
+<![%sgml.features;[
+<!ENTITY % xml-base.attrib "">
+]]>
+<!ENTITY % xml-base.attrib
+ "xml:base CDATA #IMPLIED">
+
+<!-- Role is included explicitly on each element -->
+
+<!ENTITY % common.attrib
+ "%id.attrib;
+ %lang.attrib;
+ %remap.attrib;
+ %xreflabel.attrib;
+ %revisionflag.attrib;
+ %effectivity.attrib;
+ %dir.attrib;
+ %xml-base.attrib;
+ %local.common.attrib;"
+>
+
+<!-- Role is included explicitly on each element -->
+
+<!ENTITY % idreq.common.attrib
+ "%idreq.attrib;
+ %lang.attrib;
+ %remap.attrib;
+ %xreflabel.attrib;
+ %revisionflag.attrib;
+ %effectivity.attrib;
+ %dir.attrib;
+ %xml-base.attrib;
+ %local.common.attrib;"
+>
+
+<!-- Semi-common attributes and other attribute entities .................. -->
+
+<!ENTITY % local.graphics.attrib "">
+
+<!-- EntityRef: Name of an external entity containing the content
+ of the graphic -->
+<!-- FileRef: Filename, qualified by a pathname if desired,
+ designating the file containing the content of the graphic -->
+<!-- Format: Notation of the element content, if any -->
+<!-- SrcCredit: Information about the source of the Graphic -->
+<!-- Width: Same as CALS reprowid (desired width) -->
+<!-- Depth: Same as CALS reprodep (desired depth) -->
+<!-- Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific -->
+<!-- Scale: Conflation of CALS hscale and vscale -->
+<!-- Scalefit: Same as CALS scalefit -->
+
+<!ENTITY % graphics.attrib
+ "
+ entityref ENTITY #IMPLIED
+ fileref CDATA #IMPLIED
+ format (%notation.class;) #IMPLIED
+ srccredit CDATA #IMPLIED
+ width CDATA #IMPLIED
+ contentwidth CDATA #IMPLIED
+ depth CDATA #IMPLIED
+ contentdepth CDATA #IMPLIED
+ align (left
+ |right
+ |center) #IMPLIED
+ valign (top
+ |middle
+ |bottom) #IMPLIED
+ scale CDATA #IMPLIED
+ scalefit %yesorno.attvals;
+ #IMPLIED
+ %local.graphics.attrib;"
+>
+
+<!ENTITY % local.keyaction.attrib "">
+
+<!-- Action: Key combination type; default is unspecified if one
+ child element, Simul if there is more than one; if value is
+ Other, the OtherAction attribute must have a nonempty value -->
+<!-- OtherAction: User-defined key combination type -->
+
+<!ENTITY % keyaction.attrib
+ "
+ action (click
+ |double-click
+ |press
+ |seq
+ |simul
+ |other) #IMPLIED
+ otheraction CDATA #IMPLIED
+ %local.keyaction.attrib;"
+>
+
+
+<!-- Label: Identifying number or string; default is usually the
+ appropriate number or string autogenerated by a formatter -->
+
+<!ENTITY % label.attrib
+ "label CDATA #IMPLIED">
+
+
+<!-- xml:space: whitespace treatment -->
+
+<![%sgml.features;[
+<!ENTITY % xml-space.attrib "">
+]]>
+<!ENTITY % xml-space.attrib
+ "xml:space (preserve) #IMPLIED">
+
+<!-- Format: whether element is assumed to contain significant white
+ space -->
+
+<!ENTITY % linespecific.attrib
+ "format NOTATION
+ (linespecific) 'linespecific'
+ %xml-space.attrib;
+ linenumbering (numbered|unnumbered) #IMPLIED
+ continuation (continues|restarts) #IMPLIED
+ startinglinenumber CDATA #IMPLIED
+ language CDATA #IMPLIED">
+
+<!-- Linkend: link to related information; no default -->
+
+<!ENTITY % linkend.attrib
+ "linkend IDREF #IMPLIED">
+
+
+<!-- Linkend: required link to related information -->
+
+<!ENTITY % linkendreq.attrib
+ "linkend IDREF #REQUIRED">
+
+
+<!-- Linkends: link to one or more sets of related information; no
+ default -->
+
+<!ENTITY % linkends.attrib
+ "linkends IDREFS #IMPLIED">
+
+
+<!ENTITY % local.mark.attrib "">
+<!ENTITY % mark.attrib
+ "mark CDATA #IMPLIED
+ %local.mark.attrib;"
+>
+
+
+<!-- MoreInfo: whether element's content has an associated RefEntry -->
+
+<!ENTITY % moreinfo.attrib
+ "moreinfo (refentry|none) 'none'">
+
+
+<!-- Pagenum: number of page on which element appears; no default -->
+
+<!ENTITY % pagenum.attrib
+ "pagenum CDATA #IMPLIED">
+
+<!ENTITY % local.status.attrib "">
+
+<!-- Status: Editorial or publication status of the element
+ it applies to, such as "in review" or "approved for distribution" -->
+
+<!ENTITY % status.attrib
+ "status CDATA #IMPLIED
+ %local.status.attrib;"
+>
+
+
+<!-- Width: width of the longest line in the element to which it
+ pertains, in number of characters -->
+
+<!ENTITY % width.attrib
+ "width CDATA #IMPLIED">
+
+<!-- ...................................................................... -->
+<!-- Title elements ....................................................... -->
+
+<!ENTITY % title.module "INCLUDE">
+<![%title.module;[
+<!ENTITY % local.title.attrib "">
+<!ENTITY % title.role.attrib "%role.attrib;">
+
+<!ENTITY % title.element "INCLUDE">
+<![%title.element;[
+<!--doc:The text of the title of a section of a document or of a formal block-level element.-->
+<!ELEMENT title %ho; (%title.char.mix;)*>
+<!--end of title.element-->]]>
+
+<!ENTITY % title.attlist "INCLUDE">
+<![%title.attlist;[
+<!ATTLIST title
+ %pagenum.attrib;
+ %common.attrib;
+ %title.role.attrib;
+ %local.title.attrib;
+>
+<!--end of title.attlist-->]]>
+<!--end of title.module-->]]>
+
+<!ENTITY % titleabbrev.module "INCLUDE">
+<![%titleabbrev.module;[
+<!ENTITY % local.titleabbrev.attrib "">
+<!ENTITY % titleabbrev.role.attrib "%role.attrib;">
+
+<!ENTITY % titleabbrev.element "INCLUDE">
+<![%titleabbrev.element;[
+<!--doc:The abbreviation of a Title.-->
+<!ELEMENT titleabbrev %ho; (%title.char.mix;)*>
+<!--end of titleabbrev.element-->]]>
+
+<!ENTITY % titleabbrev.attlist "INCLUDE">
+<![%titleabbrev.attlist;[
+<!ATTLIST titleabbrev
+ %common.attrib;
+ %titleabbrev.role.attrib;
+ %local.titleabbrev.attrib;
+>
+<!--end of titleabbrev.attlist-->]]>
+<!--end of titleabbrev.module-->]]>
+
+<!ENTITY % subtitle.module "INCLUDE">
+<![%subtitle.module;[
+<!ENTITY % local.subtitle.attrib "">
+<!ENTITY % subtitle.role.attrib "%role.attrib;">
+
+<!ENTITY % subtitle.element "INCLUDE">
+<![%subtitle.element;[
+<!--doc:The subtitle of a document.-->
+<!ELEMENT subtitle %ho; (%title.char.mix;)*>
+<!--end of subtitle.element-->]]>
+
+<!ENTITY % subtitle.attlist "INCLUDE">
+<![%subtitle.attlist;[
+<!ATTLIST subtitle
+ %common.attrib;
+ %subtitle.role.attrib;
+ %local.subtitle.attrib;
+>
+<!--end of subtitle.attlist-->]]>
+<!--end of subtitle.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Bibliographic entities and elements .................................. -->
+
+<!-- The bibliographic elements are typically used in the document
+ hierarchy. They do not appear in content models of information
+ pool elements. See also the document information elements,
+ below. -->
+
+<!ENTITY % local.person.ident.mix "">
+<!ENTITY % person.ident.mix
+ "honorific|firstname|surname|lineage|othername|affiliation
+ |authorblurb|contrib %local.person.ident.mix;">
+
+<!ENTITY % local.bibliocomponent.mix "">
+<!ENTITY % bibliocomponent.mix
+ "abbrev|abstract|address|artpagenums|author
+ |authorgroup|authorinitials|bibliomisc|biblioset
+ |collab|confgroup|contractnum|contractsponsor
+ |copyright|corpauthor|corpname|corpcredit|date|edition
+ |editor|invpartnumber|isbn|issn|issuenum|orgname
+ |biblioid|citebiblioid|bibliosource|bibliorelation|bibliocoverage
+ |othercredit|pagenums|printhistory|productname
+ |productnumber|pubdate|publisher|publishername
+ |pubsnumber|releaseinfo|revhistory|seriesvolnums
+ |subtitle|title|titleabbrev|volumenum|citetitle
+ |personname|%person.ident.mix;
+ |%ndxterm.class;
+ %local.bibliocomponent.mix;">
+
+<!-- I don't think this is well placed, but it needs to be here because of -->
+<!-- the reference to bibliocomponent.mix -->
+<!ENTITY % local.info.class "">
+<!ENTITY % info.class
+ "graphic | mediaobject | legalnotice | modespec
+ | subjectset | keywordset | itermset | %bibliocomponent.mix;
+ %local.info.class;">
+
+
+<!-- BiblioList ........................ -->
+
+<!ENTITY % bibliolist.module "INCLUDE">
+<![%bibliolist.module;[
+<!ENTITY % local.bibliolist.attrib "">
+<!ENTITY % bibliolist.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliolist.element "INCLUDE">
+<![%bibliolist.element;[
+<!--doc:A wrapper for a set of bibliography entries.-->
+<!ELEMENT bibliolist %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (biblioentry|bibliomixed)+)>
+<!--end of bibliolist.element-->]]>
+
+<!ENTITY % bibliolist.attlist "INCLUDE">
+<![%bibliolist.attlist;[
+<!ATTLIST bibliolist
+ %common.attrib;
+ %bibliolist.role.attrib;
+ %local.bibliolist.attrib;
+>
+<!--end of bibliolist.attlist-->]]>
+<!--end of bibliolist.module-->]]>
+
+<!ENTITY % biblioentry.module "INCLUDE">
+<![%biblioentry.module;[
+<!ENTITY % local.biblioentry.attrib "">
+<!ENTITY % biblioentry.role.attrib "%role.attrib;">
+
+<!ENTITY % biblioentry.element "INCLUDE">
+<![%biblioentry.element;[
+<!--doc:An entry in a Bibliography.-->
+<!ELEMENT biblioentry %ho; ((articleinfo | (%bibliocomponent.mix;))+)
+ %ubiq.exclusion;>
+<!--end of biblioentry.element-->]]>
+
+<!ENTITY % biblioentry.attlist "INCLUDE">
+<![%biblioentry.attlist;[
+<!ATTLIST biblioentry
+ %common.attrib;
+ %biblioentry.role.attrib;
+ %local.biblioentry.attrib;
+>
+<!--end of biblioentry.attlist-->]]>
+<!--end of biblioentry.module-->]]>
+
+<!ENTITY % bibliomixed.module "INCLUDE">
+<![%bibliomixed.module;[
+<!ENTITY % local.bibliomixed.attrib "">
+<!ENTITY % bibliomixed.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliomixed.element "INCLUDE">
+<![%bibliomixed.element;[
+<!--doc:An entry in a Bibliography.-->
+<!ELEMENT bibliomixed %ho; (#PCDATA | %bibliocomponent.mix; | bibliomset)*
+ %ubiq.exclusion;>
+<!--end of bibliomixed.element-->]]>
+
+<!ENTITY % bibliomixed.attlist "INCLUDE">
+<![%bibliomixed.attlist;[
+<!ATTLIST bibliomixed
+ %common.attrib;
+ %bibliomixed.role.attrib;
+ %local.bibliomixed.attrib;
+>
+<!--end of bibliomixed.attlist-->]]>
+<!--end of bibliomixed.module-->]]>
+
+<!ENTITY % articleinfo.module "INCLUDE">
+<![%articleinfo.module;[
+<!ENTITY % local.articleinfo.attrib "">
+<!ENTITY % articleinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % articleinfo.element "INCLUDE">
+<![%articleinfo.element;[
+<!--doc:Meta-information for an Article.-->
+<!ELEMENT articleinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of articleinfo.element-->]]>
+
+<!ENTITY % articleinfo.attlist "INCLUDE">
+<![%articleinfo.attlist;[
+<!ATTLIST articleinfo
+ %common.attrib;
+ %articleinfo.role.attrib;
+ %local.articleinfo.attrib;
+>
+<!--end of articleinfo.attlist-->]]>
+<!--end of articleinfo.module-->]]>
+
+<!ENTITY % biblioset.module "INCLUDE">
+<![%biblioset.module;[
+<!ENTITY % local.biblioset.attrib "">
+<!ENTITY % biblioset.role.attrib "%role.attrib;">
+
+<!ENTITY % biblioset.element "INCLUDE">
+<![%biblioset.element;[
+<!--doc:A "raw" container for related bibliographic information.-->
+<!ELEMENT biblioset %ho; ((%bibliocomponent.mix;)+)
+ %ubiq.exclusion;>
+<!--end of biblioset.element-->]]>
+
+<!-- Relation: Relationship of elements contained within BiblioSet -->
+
+
+<!ENTITY % biblioset.attlist "INCLUDE">
+<![%biblioset.attlist;[
+<!ATTLIST biblioset
+ relation CDATA #IMPLIED
+ %common.attrib;
+ %biblioset.role.attrib;
+ %local.biblioset.attrib;
+>
+<!--end of biblioset.attlist-->]]>
+<!--end of biblioset.module-->]]>
+
+<!ENTITY % bibliomset.module "INCLUDE">
+<![%bibliomset.module;[
+<!ENTITY % bibliomset.role.attrib "%role.attrib;">
+<!ENTITY % local.bibliomset.attrib "">
+
+<!ENTITY % bibliomset.element "INCLUDE">
+<![%bibliomset.element;[
+<!--doc:A "cooked" container for related bibliographic information.-->
+<!ELEMENT bibliomset %ho; (#PCDATA | %bibliocomponent.mix; | bibliomset)*
+ %ubiq.exclusion;>
+<!--end of bibliomset.element-->]]>
+
+<!-- Relation: Relationship of elements contained within BiblioMSet -->
+
+
+<!ENTITY % bibliomset.attlist "INCLUDE">
+<![%bibliomset.attlist;[
+<!ATTLIST bibliomset
+ relation CDATA #IMPLIED
+ %common.attrib;
+ %bibliomset.role.attrib;
+ %local.bibliomset.attrib;
+>
+<!--end of bibliomset.attlist-->]]>
+<!--end of bibliomset.module-->]]>
+
+<!ENTITY % bibliomisc.module "INCLUDE">
+<![%bibliomisc.module;[
+<!ENTITY % local.bibliomisc.attrib "">
+<!ENTITY % bibliomisc.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliomisc.element "INCLUDE">
+<![%bibliomisc.element;[
+<!--doc:Untyped bibliographic information.-->
+<!ELEMENT bibliomisc %ho; (%para.char.mix;)*>
+<!--end of bibliomisc.element-->]]>
+
+<!ENTITY % bibliomisc.attlist "INCLUDE">
+<![%bibliomisc.attlist;[
+<!ATTLIST bibliomisc
+ %common.attrib;
+ %bibliomisc.role.attrib;
+ %local.bibliomisc.attrib;
+>
+<!--end of bibliomisc.attlist-->]]>
+<!--end of bibliomisc.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Subject, Keyword, and ITermSet elements .............................. -->
+
+<!ENTITY % subjectset.content.module "INCLUDE">
+<![%subjectset.content.module;[
+<!ENTITY % subjectset.module "INCLUDE">
+<![%subjectset.module;[
+<!ENTITY % local.subjectset.attrib "">
+<!ENTITY % subjectset.role.attrib "%role.attrib;">
+
+<!ENTITY % subjectset.element "INCLUDE">
+<![%subjectset.element;[
+<!--doc:A set of terms describing the subject matter of a document.-->
+<!ELEMENT subjectset %ho; (subject+)>
+<!--end of subjectset.element-->]]>
+
+<!-- Scheme: Controlled vocabulary employed in SubjectTerms -->
+
+
+<!ENTITY % subjectset.attlist "INCLUDE">
+<![%subjectset.attlist;[
+<!ATTLIST subjectset
+ scheme NMTOKEN #IMPLIED
+ %common.attrib;
+ %subjectset.role.attrib;
+ %local.subjectset.attrib;
+>
+<!--end of subjectset.attlist-->]]>
+<!--end of subjectset.module-->]]>
+
+<!ENTITY % subject.module "INCLUDE">
+<![%subject.module;[
+<!ENTITY % local.subject.attrib "">
+<!ENTITY % subject.role.attrib "%role.attrib;">
+
+<!ENTITY % subject.element "INCLUDE">
+<![%subject.element;[
+<!--doc:One of a group of terms describing the subject matter of a document.-->
+<!ELEMENT subject %ho; (subjectterm+)>
+<!--end of subject.element-->]]>
+
+<!-- Weight: Ranking of this group of SubjectTerms relative
+ to others, 0 is low, no highest value specified -->
+
+
+<!ENTITY % subject.attlist "INCLUDE">
+<![%subject.attlist;[
+<!ATTLIST subject
+ weight CDATA #IMPLIED
+ %common.attrib;
+ %subject.role.attrib;
+ %local.subject.attrib;
+>
+<!--end of subject.attlist-->]]>
+<!--end of subject.module-->]]>
+
+<!ENTITY % subjectterm.module "INCLUDE">
+<![%subjectterm.module;[
+<!ENTITY % local.subjectterm.attrib "">
+<!ENTITY % subjectterm.role.attrib "%role.attrib;">
+
+<!ENTITY % subjectterm.element "INCLUDE">
+<![%subjectterm.element;[
+<!--doc:A term in a group of terms describing the subject matter of a document.-->
+<!ELEMENT subjectterm %ho; (#PCDATA)>
+<!--end of subjectterm.element-->]]>
+
+<!ENTITY % subjectterm.attlist "INCLUDE">
+<![%subjectterm.attlist;[
+<!ATTLIST subjectterm
+ %common.attrib;
+ %subjectterm.role.attrib;
+ %local.subjectterm.attrib;
+>
+<!--end of subjectterm.attlist-->]]>
+<!--end of subjectterm.module-->]]>
+<!--end of subjectset.content.module-->]]>
+
+<!ENTITY % keywordset.content.module "INCLUDE">
+<![%keywordset.content.module;[
+<!ENTITY % keywordset.module "INCLUDE">
+<![%keywordset.module;[
+<!ENTITY % local.keywordset.attrib "">
+<!ENTITY % keywordset.role.attrib "%role.attrib;">
+
+<!ENTITY % keywordset.element "INCLUDE">
+<![%keywordset.element;[
+<!--doc:A set of keywords describing the content of a document.-->
+<!ELEMENT keywordset %ho; (keyword+)>
+<!--end of keywordset.element-->]]>
+
+<!ENTITY % keywordset.attlist "INCLUDE">
+<![%keywordset.attlist;[
+<!ATTLIST keywordset
+ %common.attrib;
+ %keywordset.role.attrib;
+ %local.keywordset.attrib;
+>
+<!--end of keywordset.attlist-->]]>
+<!--end of keywordset.module-->]]>
+
+<!ENTITY % keyword.module "INCLUDE">
+<![%keyword.module;[
+<!ENTITY % local.keyword.attrib "">
+<!ENTITY % keyword.role.attrib "%role.attrib;">
+
+<!ENTITY % keyword.element "INCLUDE">
+<![%keyword.element;[
+<!--doc:One of a set of keywords describing the content of a document.-->
+<!ELEMENT keyword %ho; (#PCDATA)>
+<!--end of keyword.element-->]]>
+
+<!ENTITY % keyword.attlist "INCLUDE">
+<![%keyword.attlist;[
+<!ATTLIST keyword
+ %common.attrib;
+ %keyword.role.attrib;
+ %local.keyword.attrib;
+>
+<!--end of keyword.attlist-->]]>
+<!--end of keyword.module-->]]>
+<!--end of keywordset.content.module-->]]>
+
+<!ENTITY % itermset.module "INCLUDE">
+<![%itermset.module;[
+<!ENTITY % local.itermset.attrib "">
+<!ENTITY % itermset.role.attrib "%role.attrib;">
+
+<!ENTITY % itermset.element "INCLUDE">
+<![%itermset.element;[
+<!--doc:A set of index terms in the meta-information of a document.-->
+<!ELEMENT itermset %ho; (indexterm+)>
+<!--end of itermset.element-->]]>
+
+<!ENTITY % itermset.attlist "INCLUDE">
+<![%itermset.attlist;[
+<!ATTLIST itermset
+ %common.attrib;
+ %itermset.role.attrib;
+ %local.itermset.attrib;
+>
+<!--end of itermset.attlist-->]]>
+<!--end of itermset.module-->]]>
+
+<!-- Bibliographic info for "blocks" -->
+
+<!ENTITY % blockinfo.module "INCLUDE">
+<![ %blockinfo.module; [
+<!ENTITY % local.blockinfo.attrib "">
+<!ENTITY % blockinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % blockinfo.element "INCLUDE">
+<![ %blockinfo.element; [
+<!--doc:Meta-information for a block element.-->
+<!ELEMENT blockinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of blockinfo.element-->]]>
+
+<!ENTITY % blockinfo.attlist "INCLUDE">
+<![ %blockinfo.attlist; [
+<!ATTLIST blockinfo
+ %common.attrib;
+ %blockinfo.role.attrib;
+ %local.blockinfo.attrib;
+>
+<!--end of blockinfo.attlist-->]]>
+<!--end of blockinfo.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Compound (section-ish) elements ...................................... -->
+
+<!-- Message set ...................... -->
+
+<!ENTITY % msgset.content.module "INCLUDE">
+<![%msgset.content.module;[
+<!ENTITY % msgset.module "INCLUDE">
+<![%msgset.module;[
+<!ENTITY % local.msgset.attrib "">
+<!ENTITY % msgset.role.attrib "%role.attrib;">
+
+<!ENTITY % msgset.element "INCLUDE">
+<![%msgset.element;[
+<!--doc:A detailed set of messages, usually error messages.-->
+<!ELEMENT msgset %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (msgentry+|simplemsgentry+))>
+<!--end of msgset.element-->]]>
+
+<!ENTITY % msgset.attlist "INCLUDE">
+<![%msgset.attlist;[
+<!ATTLIST msgset
+ %common.attrib;
+ %msgset.role.attrib;
+ %local.msgset.attrib;
+>
+<!--end of msgset.attlist-->]]>
+<!--end of msgset.module-->]]>
+
+<!ENTITY % msgentry.module "INCLUDE">
+<![%msgentry.module;[
+<!ENTITY % local.msgentry.attrib "">
+<!ENTITY % msgentry.role.attrib "%role.attrib;">
+
+<!ENTITY % msgentry.element "INCLUDE">
+<![%msgentry.element;[
+<!--doc:A wrapper for an entry in a message set.-->
+<!ELEMENT msgentry %ho; (msg+, msginfo?, msgexplan*)>
+<!--end of msgentry.element-->]]>
+
+<!ENTITY % msgentry.attlist "INCLUDE">
+<![%msgentry.attlist;[
+<!ATTLIST msgentry
+ %common.attrib;
+ %msgentry.role.attrib;
+ %local.msgentry.attrib;
+>
+<!--end of msgentry.attlist-->]]>
+<!--end of msgentry.module-->]]>
+
+<!ENTITY % simplemsgentry.module "INCLUDE">
+<![ %simplemsgentry.module; [
+<!ENTITY % local.simplemsgentry.attrib "">
+<!ENTITY % simplemsgentry.role.attrib "%role.attrib;">
+
+<!ENTITY % simplemsgentry.element "INCLUDE">
+<![ %simplemsgentry.element; [
+<!--doc:A wrapper for a simpler entry in a message set.-->
+<!ELEMENT simplemsgentry %ho; (msgtext, msgexplan+)>
+<!--end of simplemsgentry.element-->]]>
+
+<!ENTITY % simplemsgentry.attlist "INCLUDE">
+<![ %simplemsgentry.attlist; [
+<!ATTLIST simplemsgentry
+ audience CDATA #IMPLIED
+ level CDATA #IMPLIED
+ origin CDATA #IMPLIED
+ %common.attrib;
+ %simplemsgentry.role.attrib;
+ %local.simplemsgentry.attrib;
+>
+<!--end of simplemsgentry.attlist-->]]>
+<!--end of simplemsgentry.module-->]]>
+
+<!ENTITY % msg.module "INCLUDE">
+<![%msg.module;[
+<!ENTITY % local.msg.attrib "">
+<!ENTITY % msg.role.attrib "%role.attrib;">
+
+<!ENTITY % msg.element "INCLUDE">
+<![%msg.element;[
+<!--doc:A message in a message set.-->
+<!ELEMENT msg %ho; (title?, msgmain, (msgsub | msgrel)*)>
+<!--end of msg.element-->]]>
+
+<!ENTITY % msg.attlist "INCLUDE">
+<![%msg.attlist;[
+<!ATTLIST msg
+ %common.attrib;
+ %msg.role.attrib;
+ %local.msg.attrib;
+>
+<!--end of msg.attlist-->]]>
+<!--end of msg.module-->]]>
+
+<!ENTITY % msgmain.module "INCLUDE">
+<![%msgmain.module;[
+<!ENTITY % local.msgmain.attrib "">
+<!ENTITY % msgmain.role.attrib "%role.attrib;">
+
+<!ENTITY % msgmain.element "INCLUDE">
+<![%msgmain.element;[
+<!--doc:The primary component of a message in a message set.-->
+<!ELEMENT msgmain %ho; (title?, msgtext)>
+<!--end of msgmain.element-->]]>
+
+<!ENTITY % msgmain.attlist "INCLUDE">
+<![%msgmain.attlist;[
+<!ATTLIST msgmain
+ %common.attrib;
+ %msgmain.role.attrib;
+ %local.msgmain.attrib;
+>
+<!--end of msgmain.attlist-->]]>
+<!--end of msgmain.module-->]]>
+
+<!ENTITY % msgsub.module "INCLUDE">
+<![%msgsub.module;[
+<!ENTITY % local.msgsub.attrib "">
+<!ENTITY % msgsub.role.attrib "%role.attrib;">
+
+<!ENTITY % msgsub.element "INCLUDE">
+<![%msgsub.element;[
+<!--doc:A subcomponent of a message in a message set.-->
+<!ELEMENT msgsub %ho; (title?, msgtext)>
+<!--end of msgsub.element-->]]>
+
+<!ENTITY % msgsub.attlist "INCLUDE">
+<![%msgsub.attlist;[
+<!ATTLIST msgsub
+ %common.attrib;
+ %msgsub.role.attrib;
+ %local.msgsub.attrib;
+>
+<!--end of msgsub.attlist-->]]>
+<!--end of msgsub.module-->]]>
+
+<!ENTITY % msgrel.module "INCLUDE">
+<![%msgrel.module;[
+<!ENTITY % local.msgrel.attrib "">
+<!ENTITY % msgrel.role.attrib "%role.attrib;">
+
+<!ENTITY % msgrel.element "INCLUDE">
+<![%msgrel.element;[
+<!--doc:A related component of a message in a message set.-->
+<!ELEMENT msgrel %ho; (title?, msgtext)>
+<!--end of msgrel.element-->]]>
+
+<!ENTITY % msgrel.attlist "INCLUDE">
+<![%msgrel.attlist;[
+<!ATTLIST msgrel
+ %common.attrib;
+ %msgrel.role.attrib;
+ %local.msgrel.attrib;
+>
+<!--end of msgrel.attlist-->]]>
+<!--end of msgrel.module-->]]>
+
+<!-- MsgText (defined in the Inlines section, below)-->
+
+<!ENTITY % msginfo.module "INCLUDE">
+<![%msginfo.module;[
+<!ENTITY % local.msginfo.attrib "">
+<!ENTITY % msginfo.role.attrib "%role.attrib;">
+
+<!ENTITY % msginfo.element "INCLUDE">
+<![%msginfo.element;[
+<!--doc:Information about a message in a message set.-->
+<!ELEMENT msginfo %ho; ((msglevel | msgorig | msgaud)*)>
+<!--end of msginfo.element-->]]>
+
+<!ENTITY % msginfo.attlist "INCLUDE">
+<![%msginfo.attlist;[
+<!ATTLIST msginfo
+ %common.attrib;
+ %msginfo.role.attrib;
+ %local.msginfo.attrib;
+>
+<!--end of msginfo.attlist-->]]>
+<!--end of msginfo.module-->]]>
+
+<!ENTITY % msglevel.module "INCLUDE">
+<![%msglevel.module;[
+<!ENTITY % local.msglevel.attrib "">
+<!ENTITY % msglevel.role.attrib "%role.attrib;">
+
+<!ENTITY % msglevel.element "INCLUDE">
+<![%msglevel.element;[
+<!--doc:The level of importance or severity of a message in a message set.-->
+<!ELEMENT msglevel %ho; (%smallcptr.char.mix;)*>
+<!--end of msglevel.element-->]]>
+
+<!ENTITY % msglevel.attlist "INCLUDE">
+<![%msglevel.attlist;[
+<!ATTLIST msglevel
+ %common.attrib;
+ %msglevel.role.attrib;
+ %local.msglevel.attrib;
+>
+<!--end of msglevel.attlist-->]]>
+<!--end of msglevel.module-->]]>
+
+<!ENTITY % msgorig.module "INCLUDE">
+<![%msgorig.module;[
+<!ENTITY % local.msgorig.attrib "">
+<!ENTITY % msgorig.role.attrib "%role.attrib;">
+
+<!ENTITY % msgorig.element "INCLUDE">
+<![%msgorig.element;[
+<!--doc:The origin of a message in a message set.-->
+<!ELEMENT msgorig %ho; (%smallcptr.char.mix;)*>
+<!--end of msgorig.element-->]]>
+
+<!ENTITY % msgorig.attlist "INCLUDE">
+<![%msgorig.attlist;[
+<!ATTLIST msgorig
+ %common.attrib;
+ %msgorig.role.attrib;
+ %local.msgorig.attrib;
+>
+<!--end of msgorig.attlist-->]]>
+<!--end of msgorig.module-->]]>
+
+<!ENTITY % msgaud.module "INCLUDE">
+<![%msgaud.module;[
+<!ENTITY % local.msgaud.attrib "">
+<!ENTITY % msgaud.role.attrib "%role.attrib;">
+
+<!ENTITY % msgaud.element "INCLUDE">
+<![%msgaud.element;[
+<!--doc:The audience to which a message in a message set is relevant.-->
+<!ELEMENT msgaud %ho; (%para.char.mix;)*>
+<!--end of msgaud.element-->]]>
+
+<!ENTITY % msgaud.attlist "INCLUDE">
+<![%msgaud.attlist;[
+<!ATTLIST msgaud
+ %common.attrib;
+ %msgaud.role.attrib;
+ %local.msgaud.attrib;
+>
+<!--end of msgaud.attlist-->]]>
+<!--end of msgaud.module-->]]>
+
+<!ENTITY % msgexplan.module "INCLUDE">
+<![%msgexplan.module;[
+<!ENTITY % local.msgexplan.attrib "">
+<!ENTITY % msgexplan.role.attrib "%role.attrib;">
+
+<!ENTITY % msgexplan.element "INCLUDE">
+<![%msgexplan.element;[
+<!--doc:Explanatory material relating to a message in a message set.-->
+<!ELEMENT msgexplan %ho; (title?, (%component.mix;)+)>
+<!--end of msgexplan.element-->]]>
+
+<!ENTITY % msgexplan.attlist "INCLUDE">
+<![%msgexplan.attlist;[
+<!ATTLIST msgexplan
+ %common.attrib;
+ %msgexplan.role.attrib;
+ %local.msgexplan.attrib;
+>
+<!--end of msgexplan.attlist-->]]>
+<!--end of msgexplan.module-->]]>
+<!--end of msgset.content.module-->]]>
+
+<!ENTITY % task.content.module "INCLUDE">
+<![%task.content.module;[
+<!ENTITY % task.module "INCLUDE">
+<![%task.module;[
+<!ENTITY % local.task.attrib "">
+<!ENTITY % task.role.attrib "%role.attrib;">
+
+<!ENTITY % task.element "INCLUDE">
+<![%task.element;[
+<!--doc:A task to be completed.-->
+<!ELEMENT task %ho; (blockinfo?,(%ndxterm.class;)*,
+ (%formalobject.title.content;),
+ tasksummary?,
+ taskprerequisites?,
+ procedure,
+ example*,
+ taskrelated?)>
+<!--end of task.element-->]]>
+
+<!ENTITY % task.attlist "INCLUDE">
+<![%task.attlist;[
+<!ATTLIST task
+ %common.attrib;
+ %task.role.attrib;
+ %local.task.attrib;
+>
+<!--end of task.attlist-->]]>
+<!--end of task.module-->]]>
+
+<!ENTITY % tasksummary.module "INCLUDE">
+<![%tasksummary.module;[
+<!ENTITY % local.tasksummary.attrib "">
+<!ENTITY % tasksummary.role.attrib "%role.attrib;">
+
+<!ENTITY % tasksummary.element "INCLUDE">
+<![%tasksummary.element;[
+<!--doc:A summary of a task.-->
+<!ELEMENT tasksummary %ho; (blockinfo?,
+ (%formalobject.title.content;)?,
+ (%component.mix;)+)>
+<!--end of tasksummary.element-->]]>
+
+<!ENTITY % tasksummary.attlist "INCLUDE">
+<![%tasksummary.attlist;[
+<!ATTLIST tasksummary
+ %common.attrib;
+ %tasksummary.role.attrib;
+ %local.tasksummary.attrib;
+>
+<!--end of tasksummary.attlist-->]]>
+<!--end of tasksummary.module-->]]>
+
+<!ENTITY % taskprerequisites.module "INCLUDE">
+<![%taskprerequisites.module;[
+<!ENTITY % local.taskprerequisites.attrib "">
+<!ENTITY % taskprerequisites.role.attrib "%role.attrib;">
+
+<!ENTITY % taskprerequisites.element "INCLUDE">
+<![%taskprerequisites.element;[
+<!--doc:The prerequisites for a task.-->
+<!ELEMENT taskprerequisites %ho; (blockinfo?,
+ (%formalobject.title.content;)?,
+ (%component.mix;)+)>
+<!--end of taskprerequisites.element-->]]>
+
+<!ENTITY % taskprerequisites.attlist "INCLUDE">
+<![%taskprerequisites.attlist;[
+<!ATTLIST taskprerequisites
+ %common.attrib;
+ %taskprerequisites.role.attrib;
+ %local.taskprerequisites.attrib;
+>
+<!--end of taskprerequisites.attlist-->]]>
+<!--end of taskprerequisites.module-->]]>
+
+<!ENTITY % taskrelated.module "INCLUDE">
+<![%taskrelated.module;[
+<!ENTITY % local.taskrelated.attrib "">
+<!ENTITY % taskrelated.role.attrib "%role.attrib;">
+
+<!ENTITY % taskrelated.element "INCLUDE">
+<![%taskrelated.element;[
+<!--doc:Information related to a task.-->
+<!ELEMENT taskrelated %ho; (blockinfo?,
+ (%formalobject.title.content;)?,
+ (%component.mix;)+)>
+<!--end of taskrelated.element-->]]>
+
+<!ENTITY % taskrelated.attlist "INCLUDE">
+<![%taskrelated.attlist;[
+<!ATTLIST taskrelated
+ %common.attrib;
+ %taskrelated.role.attrib;
+ %local.taskrelated.attrib;
+>
+<!--end of taskrelated.attlist-->]]>
+<!--end of taskrelated.module-->]]>
+<!--end of task.content.module-->]]>
+
+<!-- QandASet ........................ -->
+<!ENTITY % qandaset.content.module "INCLUDE">
+<![ %qandaset.content.module; [
+<!ENTITY % qandaset.module "INCLUDE">
+<![ %qandaset.module; [
+<!ENTITY % local.qandaset.attrib "">
+<!ENTITY % qandaset.role.attrib "%role.attrib;">
+
+<!ENTITY % qandaset.element "INCLUDE">
+<![ %qandaset.element; [
+<!--doc:A question-and-answer set.-->
+<!ELEMENT qandaset %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%qandaset.mix;)*,
+ (qandadiv+|qandaentry+))>
+<!--end of qandaset.element-->]]>
+
+<!ENTITY % qandaset.attlist "INCLUDE">
+<![ %qandaset.attlist; [
+<!ATTLIST qandaset
+ defaultlabel (qanda|number|none) #IMPLIED
+ %common.attrib;
+ %qandaset.role.attrib;
+ %local.qandaset.attrib;>
+<!--end of qandaset.attlist-->]]>
+<!--end of qandaset.module-->]]>
+
+<!ENTITY % qandadiv.module "INCLUDE">
+<![ %qandadiv.module; [
+<!ENTITY % local.qandadiv.attrib "">
+<!ENTITY % qandadiv.role.attrib "%role.attrib;">
+
+<!ENTITY % qandadiv.element "INCLUDE">
+<![ %qandadiv.element; [
+<!--doc:A titled division in a QandASet.-->
+<!ELEMENT qandadiv %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%qandaset.mix;)*,
+ (qandadiv+|qandaentry+))>
+<!--end of qandadiv.element-->]]>
+
+<!ENTITY % qandadiv.attlist "INCLUDE">
+<![ %qandadiv.attlist; [
+<!ATTLIST qandadiv
+ %common.attrib;
+ %qandadiv.role.attrib;
+ %local.qandadiv.attrib;>
+<!--end of qandadiv.attlist-->]]>
+<!--end of qandadiv.module-->]]>
+
+<!ENTITY % qandaentry.module "INCLUDE">
+<![ %qandaentry.module; [
+<!ENTITY % local.qandaentry.attrib "">
+<!ENTITY % qandaentry.role.attrib "%role.attrib;">
+
+<!ENTITY % qandaentry.element "INCLUDE">
+<![ %qandaentry.element; [
+<!--doc:A question/answer set within a QandASet.-->
+<!ELEMENT qandaentry %ho; (blockinfo?, revhistory?, question, answer*)>
+<!--end of qandaentry.element-->]]>
+
+<!ENTITY % qandaentry.attlist "INCLUDE">
+<![ %qandaentry.attlist; [
+<!ATTLIST qandaentry
+ %common.attrib;
+ %qandaentry.role.attrib;
+ %local.qandaentry.attrib;>
+<!--end of qandaentry.attlist-->]]>
+<!--end of qandaentry.module-->]]>
+
+<!ENTITY % question.module "INCLUDE">
+<![ %question.module; [
+<!ENTITY % local.question.attrib "">
+<!ENTITY % question.role.attrib "%role.attrib;">
+
+<!ENTITY % question.element "INCLUDE">
+<![ %question.element; [
+<!--doc:A question in a QandASet.-->
+<!ELEMENT question %ho; (label?, (%qandaset.mix;)+)>
+<!--end of question.element-->]]>
+
+<!ENTITY % question.attlist "INCLUDE">
+<![ %question.attlist; [
+<!ATTLIST question
+ %common.attrib;
+ %question.role.attrib;
+ %local.question.attrib;
+>
+<!--end of question.attlist-->]]>
+<!--end of question.module-->]]>
+
+<!ENTITY % answer.module "INCLUDE">
+<![ %answer.module; [
+<!ENTITY % local.answer.attrib "">
+<!ENTITY % answer.role.attrib "%role.attrib;">
+
+<!ENTITY % answer.element "INCLUDE">
+<![ %answer.element; [
+<!--doc:An answer to a question posed in a QandASet.-->
+<!ELEMENT answer %ho; (label?, (%qandaset.mix;)*, qandaentry*)>
+<!--end of answer.element-->]]>
+
+<!ENTITY % answer.attlist "INCLUDE">
+<![ %answer.attlist; [
+<!ATTLIST answer
+ %common.attrib;
+ %answer.role.attrib;
+ %local.answer.attrib;
+>
+<!--end of answer.attlist-->]]>
+<!--end of answer.module-->]]>
+
+<!ENTITY % label.module "INCLUDE">
+<![ %label.module; [
+<!ENTITY % local.label.attrib "">
+<!ENTITY % label.role.attrib "%role.attrib;">
+
+<!ENTITY % label.element "INCLUDE">
+<![ %label.element; [
+<!--doc:A label on a Question or Answer.-->
+<!ELEMENT label %ho; (%word.char.mix;)*>
+<!--end of label.element-->]]>
+
+<!ENTITY % label.attlist "INCLUDE">
+<![ %label.attlist; [
+<!ATTLIST label
+ %common.attrib;
+ %label.role.attrib;
+ %local.label.attrib;
+>
+<!--end of label.attlist-->]]>
+<!--end of label.module-->]]>
+<!--end of qandaset.content.module-->]]>
+
+<!-- Procedure ........................ -->
+
+<!ENTITY % procedure.content.module "INCLUDE">
+<![%procedure.content.module;[
+<!ENTITY % procedure.module "INCLUDE">
+<![%procedure.module;[
+<!ENTITY % local.procedure.attrib "">
+<!ENTITY % procedure.role.attrib "%role.attrib;">
+
+<!ENTITY % procedure.element "INCLUDE">
+<![%procedure.element;[
+<!--doc:A list of operations to be performed in a well-defined sequence.-->
+<!ELEMENT procedure %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%component.mix;)*, step+)>
+<!--end of procedure.element-->]]>
+
+<!ENTITY % procedure.attlist "INCLUDE">
+<![%procedure.attlist;[
+<!ATTLIST procedure
+ %common.attrib;
+ %procedure.role.attrib;
+ %local.procedure.attrib;
+>
+<!--end of procedure.attlist-->]]>
+<!--end of procedure.module-->]]>
+
+<!ENTITY % step.module "INCLUDE">
+<![%step.module;[
+<!ENTITY % local.step.attrib "">
+<!ENTITY % step.role.attrib "%role.attrib;">
+
+<!ENTITY % step.element "INCLUDE">
+<![%step.element;[
+<!--doc:A unit of action in a procedure.-->
+<!ELEMENT step %ho; (title?, (((%component.mix;)+, ((substeps|stepalternatives), (%component.mix;)*)?)
+ | ((substeps|stepalternatives), (%component.mix;)*)))>
+<!--end of step.element-->]]>
+
+<!-- Performance: Whether the Step must be performed -->
+<!-- not #REQUIRED! -->
+
+
+<!ENTITY % step.attlist "INCLUDE">
+<![%step.attlist;[
+<!ATTLIST step
+ performance (optional
+ |required) "required"
+ %common.attrib;
+ %step.role.attrib;
+ %local.step.attrib;
+>
+<!--end of step.attlist-->]]>
+<!--end of step.module-->]]>
+
+<!ENTITY % substeps.module "INCLUDE">
+<![%substeps.module;[
+<!ENTITY % local.substeps.attrib "">
+<!ENTITY % substeps.role.attrib "%role.attrib;">
+
+<!ENTITY % substeps.element "INCLUDE">
+<![%substeps.element;[
+<!--doc:A wrapper for steps that occur within steps in a procedure.-->
+<!ELEMENT substeps %ho; (step+)>
+<!--end of substeps.element-->]]>
+
+<!-- Performance: whether entire set of substeps must be performed -->
+<!-- not #REQUIRED! -->
+
+<!ENTITY % substeps.attlist "INCLUDE">
+<![%substeps.attlist;[
+<!ATTLIST substeps
+ performance (optional
+ |required) "required"
+ %common.attrib;
+ %substeps.role.attrib;
+ %local.substeps.attrib;
+>
+<!--end of substeps.attlist-->]]>
+<!--end of substeps.module-->]]>
+
+<!ENTITY % stepalternatives.module "INCLUDE">
+<![%stepalternatives.module;[
+<!ENTITY % local.stepalternatives.attrib "">
+<!ENTITY % stepalternatives.role.attrib "%role.attrib;">
+
+<!ENTITY % stepalternatives.element "INCLUDE">
+<![%stepalternatives.element;[
+<!--doc:Alternative steps in a procedure.-->
+<!ELEMENT stepalternatives %ho; (step+)>
+<!--end of stepalternatives.element-->]]>
+
+<!-- Performance: Whether (one of) the alternatives must be performed -->
+<!-- not #REQUIRED! -->
+
+<!ENTITY % stepalternatives.attlist "INCLUDE">
+<![%stepalternatives.attlist;[
+<!ATTLIST stepalternatives
+ performance (optional
+ |required) "required"
+ %common.attrib;
+ %stepalternatives.role.attrib;
+ %local.stepalternatives.attrib;
+>
+<!--end of stepalternatives.attlist-->]]>
+<!--end of stepalternatives.module-->]]>
+<!--end of procedure.content.module-->]]>
+
+<!-- Sidebar .......................... -->
+
+<!ENTITY % sidebar.content.model "INCLUDE">
+<![ %sidebar.content.model; [
+
+<!ENTITY % sidebarinfo.module "INCLUDE">
+<![ %sidebarinfo.module; [
+<!ENTITY % local.sidebarinfo.attrib "">
+<!ENTITY % sidebarinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % sidebarinfo.element "INCLUDE">
+<![ %sidebarinfo.element; [
+<!--doc:Meta-information for a Sidebar.-->
+<!ELEMENT sidebarinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of sidebarinfo.element-->]]>
+
+<!ENTITY % sidebarinfo.attlist "INCLUDE">
+<![ %sidebarinfo.attlist; [
+<!ATTLIST sidebarinfo
+ %common.attrib;
+ %sidebarinfo.role.attrib;
+ %local.sidebarinfo.attrib;
+>
+<!--end of sidebarinfo.attlist-->]]>
+<!--end of sidebarinfo.module-->]]>
+
+<!ENTITY % sidebar.module "INCLUDE">
+<![%sidebar.module;[
+<!ENTITY % local.sidebar.attrib "">
+<!ENTITY % sidebar.role.attrib "%role.attrib;">
+
+<!ENTITY % sidebar.element "INCLUDE">
+<![%sidebar.element;[
+<!--doc:A portion of a document that is isolated from the main narrative flow.-->
+<!ELEMENT sidebar %ho; (sidebarinfo?,
+ (%formalobject.title.content;)?,
+ (%sidebar.mix;)+)>
+<!--end of sidebar.element-->]]>
+
+<!ENTITY % sidebar.attlist "INCLUDE">
+<![%sidebar.attlist;[
+<!ATTLIST sidebar
+ %common.attrib;
+ %sidebar.role.attrib;
+ %local.sidebar.attrib;
+>
+<!--end of sidebar.attlist-->]]>
+<!--end of sidebar.module-->]]>
+<!--end of sidebar.content.model-->]]>
+
+<!-- ...................................................................... -->
+<!-- Paragraph-related elements ........................................... -->
+
+<!ENTITY % abstract.module "INCLUDE">
+<![%abstract.module;[
+<!ENTITY % local.abstract.attrib "">
+<!ENTITY % abstract.role.attrib "%role.attrib;">
+
+<!ENTITY % abstract.element "INCLUDE">
+<![%abstract.element;[
+<!--doc:A summary.-->
+<!ELEMENT abstract %ho; (title?, (%para.class;)+)>
+<!--end of abstract.element-->]]>
+
+<!ENTITY % abstract.attlist "INCLUDE">
+<![%abstract.attlist;[
+<!ATTLIST abstract
+ %common.attrib;
+ %abstract.role.attrib;
+ %local.abstract.attrib;
+>
+<!--end of abstract.attlist-->]]>
+<!--end of abstract.module-->]]>
+
+<!ENTITY % authorblurb.module "INCLUDE">
+<![%authorblurb.module;[
+<!ENTITY % local.authorblurb.attrib "">
+<!ENTITY % authorblurb.role.attrib "%role.attrib;">
+
+<!ENTITY % authorblurb.element "INCLUDE">
+<![%authorblurb.element;[
+<!--doc:A short description or note about an author.-->
+<!ELEMENT authorblurb %ho; (title?, (%para.class;)+)>
+<!--end of authorblurb.element-->]]>
+
+<!ENTITY % authorblurb.attlist "INCLUDE">
+<![%authorblurb.attlist;[
+<!ATTLIST authorblurb
+ %common.attrib;
+ %authorblurb.role.attrib;
+ %local.authorblurb.attrib;
+>
+<!--end of authorblurb.attlist-->]]>
+<!--end of authorblurb.module-->]]>
+
+<!ENTITY % personblurb.module "INCLUDE">
+<![%personblurb.module;[
+<!ENTITY % local.personblurb.attrib "">
+<!ENTITY % personblurb.role.attrib "%role.attrib;">
+
+<!ENTITY % personblurb.element "INCLUDE">
+<![%personblurb.element;[
+<!--doc:A short description or note about a person.-->
+<!ELEMENT personblurb %ho; (title?, (%para.class;)+)>
+<!--end of personblurb.element-->]]>
+
+<!ENTITY % personblurb.attlist "INCLUDE">
+<![%personblurb.attlist;[
+<!ATTLIST personblurb
+ %common.attrib;
+ %personblurb.role.attrib;
+ %local.personblurb.attrib;
+>
+<!--end of personblurb.attlist-->]]>
+<!--end of personblurb.module-->]]>
+
+<!ENTITY % blockquote.module "INCLUDE">
+<![%blockquote.module;[
+
+<!ENTITY % local.blockquote.attrib "">
+<!ENTITY % blockquote.role.attrib "%role.attrib;">
+
+<!ENTITY % blockquote.element "INCLUDE">
+<![%blockquote.element;[
+<!--doc:A quotation set off from the main text.-->
+<!ELEMENT blockquote %ho; (blockinfo?, title?, attribution?, (%component.mix;)+)
+ %blockquote.exclusion;>
+<!--end of blockquote.element-->]]>
+
+<!ENTITY % blockquote.attlist "INCLUDE">
+<![%blockquote.attlist;[
+<!ATTLIST blockquote
+ %common.attrib;
+ %blockquote.role.attrib;
+ %local.blockquote.attrib;
+>
+<!--end of blockquote.attlist-->]]>
+<!--end of blockquote.module-->]]>
+
+<!ENTITY % attribution.module "INCLUDE">
+<![%attribution.module;[
+<!ENTITY % local.attribution.attrib "">
+<!ENTITY % attribution.role.attrib "%role.attrib;">
+
+<!ENTITY % attribution.element "INCLUDE">
+<![%attribution.element;[
+<!--doc:The source of a block quote or epigraph.-->
+<!ELEMENT attribution %ho; (%para.char.mix;)*>
+<!--end of attribution.element-->]]>
+
+<!ENTITY % attribution.attlist "INCLUDE">
+<![%attribution.attlist;[
+<!ATTLIST attribution
+ %common.attrib;
+ %attribution.role.attrib;
+ %local.attribution.attrib;
+>
+<!--end of attribution.attlist-->]]>
+<!--end of attribution.module-->]]>
+
+<!ENTITY % bridgehead.module "INCLUDE">
+<![%bridgehead.module;[
+<!ENTITY % local.bridgehead.attrib "">
+<!ENTITY % bridgehead.role.attrib "%role.attrib;">
+
+<!ENTITY % bridgehead.element "INCLUDE">
+<![%bridgehead.element;[
+<!--doc:A free-floating heading.-->
+<!ELEMENT bridgehead %ho; (%title.char.mix;)*>
+<!--end of bridgehead.element-->]]>
+
+<!-- Renderas: Indicates the format in which the BridgeHead
+ should appear -->
+
+
+<!ENTITY % bridgehead.attlist "INCLUDE">
+<![%bridgehead.attlist;[
+<!ATTLIST bridgehead
+ renderas (other
+ |sect1
+ |sect2
+ |sect3
+ |sect4
+ |sect5) #IMPLIED
+ %common.attrib;
+ %bridgehead.role.attrib;
+ %local.bridgehead.attrib;
+>
+<!--end of bridgehead.attlist-->]]>
+<!--end of bridgehead.module-->]]>
+
+<!ENTITY % remark.module "INCLUDE">
+<![%remark.module;[
+<!ENTITY % local.remark.attrib "">
+<!ENTITY % remark.role.attrib "%role.attrib;">
+
+<!ENTITY % remark.element "INCLUDE">
+<![%remark.element;[
+<!--doc:A remark (or comment) intended for presentation in a draft manuscript.-->
+<!ELEMENT remark %ho; (%para.char.mix;)*
+ %remark.exclusion;>
+<!--end of remark.element-->]]>
+
+<!ENTITY % remark.attlist "INCLUDE">
+<![%remark.attlist;[
+<!ATTLIST remark
+ %common.attrib;
+ %remark.role.attrib;
+ %local.remark.attrib;
+>
+<!--end of remark.attlist-->]]>
+<!--end of remark.module-->]]>
+
+<!ENTITY % epigraph.module "INCLUDE">
+<![%epigraph.module;[
+<!ENTITY % local.epigraph.attrib "">
+<!ENTITY % epigraph.role.attrib "%role.attrib;">
+
+<!ENTITY % epigraph.element "INCLUDE">
+<![%epigraph.element;[
+<!--doc:A short inscription at the beginning of a document or component.-->
+<!ELEMENT epigraph %ho; (attribution?, ((%para.class;)|literallayout)+)>
+<!--end of epigraph.element-->]]>
+
+<!ENTITY % epigraph.attlist "INCLUDE">
+<![%epigraph.attlist;[
+<!ATTLIST epigraph
+ %common.attrib;
+ %epigraph.role.attrib;
+ %local.epigraph.attrib;
+>
+<!--end of epigraph.attlist-->]]>
+<!-- Attribution (defined above)-->
+<!--end of epigraph.module-->]]>
+
+<!ENTITY % footnote.module "INCLUDE">
+<![%footnote.module;[
+<!ENTITY % local.footnote.attrib "">
+<!ENTITY % footnote.role.attrib "%role.attrib;">
+
+<!ENTITY % footnote.element "INCLUDE">
+<![%footnote.element;[
+<!--doc:A footnote.-->
+<!ELEMENT footnote %ho; ((%footnote.mix;)+)
+ %footnote.exclusion;>
+<!--end of footnote.element-->]]>
+
+<!ENTITY % footnote.attlist "INCLUDE">
+<![%footnote.attlist;[
+<!ATTLIST footnote
+ %label.attrib;
+ %common.attrib;
+ %footnote.role.attrib;
+ %local.footnote.attrib;
+>
+<!--end of footnote.attlist-->]]>
+<!--end of footnote.module-->]]>
+
+<!ENTITY % highlights.module "INCLUDE">
+<![%highlights.module;[
+<!ENTITY % local.highlights.attrib "">
+<!ENTITY % highlights.role.attrib "%role.attrib;">
+
+<!ENTITY % highlights.element "INCLUDE">
+<![%highlights.element;[
+<!--doc:A summary of the main points of the discussed component.-->
+<!ELEMENT highlights %ho; ((%highlights.mix;)+)
+ %highlights.exclusion;>
+<!--end of highlights.element-->]]>
+
+<!ENTITY % highlights.attlist "INCLUDE">
+<![%highlights.attlist;[
+<!ATTLIST highlights
+ %common.attrib;
+ %highlights.role.attrib;
+ %local.highlights.attrib;
+>
+<!--end of highlights.attlist-->]]>
+<!--end of highlights.module-->]]>
+
+<!ENTITY % formalpara.module "INCLUDE">
+<![%formalpara.module;[
+<!ENTITY % local.formalpara.attrib "">
+<!ENTITY % formalpara.role.attrib "%role.attrib;">
+
+<!ENTITY % formalpara.element "INCLUDE">
+<![%formalpara.element;[
+<!--doc:A paragraph with a title.-->
+<!ELEMENT formalpara %ho; (title, (%ndxterm.class;)*, para)>
+<!--end of formalpara.element-->]]>
+
+<!ENTITY % formalpara.attlist "INCLUDE">
+<![%formalpara.attlist;[
+<!ATTLIST formalpara
+ %common.attrib;
+ %formalpara.role.attrib;
+ %local.formalpara.attrib;
+>
+<!--end of formalpara.attlist-->]]>
+<!--end of formalpara.module-->]]>
+
+<!ENTITY % para.module "INCLUDE">
+<![%para.module;[
+<!ENTITY % local.para.attrib "">
+<!ENTITY % para.role.attrib "%role.attrib;">
+
+<!ENTITY % para.element "INCLUDE">
+<![%para.element;[
+<!--doc:A paragraph.-->
+<!ELEMENT para %ho; (%para.char.mix; | %para.mix;)*>
+<!--end of para.element-->]]>
+
+<!ENTITY % para.attlist "INCLUDE">
+<![%para.attlist;[
+<!ATTLIST para
+ %common.attrib;
+ %para.role.attrib;
+ %local.para.attrib;
+>
+<!--end of para.attlist-->]]>
+<!--end of para.module-->]]>
+
+<!ENTITY % simpara.module "INCLUDE">
+<![%simpara.module;[
+<!ENTITY % local.simpara.attrib "">
+<!ENTITY % simpara.role.attrib "%role.attrib;">
+
+<!ENTITY % simpara.element "INCLUDE">
+<![%simpara.element;[
+<!--doc:A paragraph that contains only text and inline markup, no block elements.-->
+<!ELEMENT simpara %ho; (%para.char.mix;)*>
+<!--end of simpara.element-->]]>
+
+<!ENTITY % simpara.attlist "INCLUDE">
+<![%simpara.attlist;[
+<!ATTLIST simpara
+ %common.attrib;
+ %simpara.role.attrib;
+ %local.simpara.attrib;
+>
+<!--end of simpara.attlist-->]]>
+<!--end of simpara.module-->]]>
+
+<!ENTITY % admon.module "INCLUDE">
+<![%admon.module;[
+<!ENTITY % local.admon.attrib "">
+<!ENTITY % admon.role.attrib "%role.attrib;">
+
+
+<!ENTITY % caution.element "INCLUDE">
+<![%caution.element;[
+<!--doc:A note of caution.-->
+<!ELEMENT caution %ho; (title?, (%admon.mix;)+)
+ %admon.exclusion;>
+<!--end of caution.element-->]]>
+
+<!ENTITY % caution.attlist "INCLUDE">
+<![%caution.attlist;[
+<!ATTLIST caution
+ %common.attrib;
+ %admon.role.attrib;
+ %local.admon.attrib;
+>
+<!--end of caution.attlist-->]]>
+
+
+<!ENTITY % important.element "INCLUDE">
+<![%important.element;[
+<!--doc:An admonition set off from the text.-->
+<!ELEMENT important %ho; (title?, (%admon.mix;)+)
+ %admon.exclusion;>
+<!--end of important.element-->]]>
+
+<!ENTITY % important.attlist "INCLUDE">
+<![%important.attlist;[
+<!ATTLIST important
+ %common.attrib;
+ %admon.role.attrib;
+ %local.admon.attrib;
+>
+<!--end of important.attlist-->]]>
+
+
+<!ENTITY % note.element "INCLUDE">
+<![%note.element;[
+<!--doc:A message set off from the text.-->
+<!ELEMENT note %ho; (title?, (%admon.mix;)+)
+ %admon.exclusion;>
+<!--end of note.element-->]]>
+
+<!ENTITY % note.attlist "INCLUDE">
+<![%note.attlist;[
+<!ATTLIST note
+ %common.attrib;
+ %admon.role.attrib;
+ %local.admon.attrib;
+>
+<!--end of note.attlist-->]]>
+
+<!ENTITY % tip.element "INCLUDE">
+<![%tip.element;[
+<!--doc:A suggestion to the user, set off from the text.-->
+<!ELEMENT tip %ho; (title?, (%admon.mix;)+)
+ %admon.exclusion;>
+<!--end of tip.element-->]]>
+
+<!ENTITY % tip.attlist "INCLUDE">
+<![%tip.attlist;[
+<!ATTLIST tip
+ %common.attrib;
+ %admon.role.attrib;
+ %local.admon.attrib;
+>
+<!--end of tip.attlist-->]]>
+
+
+<!ENTITY % warning.element "INCLUDE">
+<![%warning.element;[
+<!--doc:An admonition set off from the text.-->
+<!ELEMENT warning %ho; (title?, (%admon.mix;)+)
+ %admon.exclusion;>
+<!--end of warning.element-->]]>
+
+<!ENTITY % warning.attlist "INCLUDE">
+<![%warning.attlist;[
+<!ATTLIST warning
+ %common.attrib;
+ %admon.role.attrib;
+ %local.admon.attrib;
+>
+<!--end of warning.attlist-->]]>
+
+<!--end of admon.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Lists ................................................................ -->
+
+<!-- GlossList ........................ -->
+
+<!ENTITY % glosslist.module "INCLUDE">
+<![%glosslist.module;[
+<!ENTITY % local.glosslist.attrib "">
+<!ENTITY % glosslist.role.attrib "%role.attrib;">
+
+<!ENTITY % glosslist.element "INCLUDE">
+<![%glosslist.element;[
+<!--doc:A wrapper for a set of GlossEntrys.-->
+<!ELEMENT glosslist %ho; (blockinfo?, (%formalobject.title.content;)?, glossentry+)>
+<!--end of glosslist.element-->]]>
+
+<!ENTITY % glosslist.attlist "INCLUDE">
+<![%glosslist.attlist;[
+<!ATTLIST glosslist
+ %common.attrib;
+ %glosslist.role.attrib;
+ %local.glosslist.attrib;
+>
+<!--end of glosslist.attlist-->]]>
+<!--end of glosslist.module-->]]>
+
+<!ENTITY % glossentry.content.module "INCLUDE">
+<![%glossentry.content.module;[
+<!ENTITY % glossentry.module "INCLUDE">
+<![%glossentry.module;[
+<!ENTITY % local.glossentry.attrib "">
+<!ENTITY % glossentry.role.attrib "%role.attrib;">
+
+<!ENTITY % glossentry.element "INCLUDE">
+<![%glossentry.element;[
+<!--doc:An entry in a Glossary or GlossList.-->
+<!ELEMENT glossentry %ho; (glossterm, acronym?, abbrev?,
+ (%ndxterm.class;)*,
+ revhistory?, (glosssee|glossdef+))>
+<!--end of glossentry.element-->]]>
+
+<!-- SortAs: String by which the GlossEntry is to be sorted
+ (alphabetized) in lieu of its proper content -->
+
+
+<!ENTITY % glossentry.attlist "INCLUDE">
+<![%glossentry.attlist;[
+<!ATTLIST glossentry
+ sortas CDATA #IMPLIED
+ %common.attrib;
+ %glossentry.role.attrib;
+ %local.glossentry.attrib;
+>
+<!--end of glossentry.attlist-->]]>
+<!--end of glossentry.module-->]]>
+
+<!-- GlossTerm (defined in the Inlines section, below)-->
+<!ENTITY % glossdef.module "INCLUDE">
+<![%glossdef.module;[
+<!ENTITY % local.glossdef.attrib "">
+<!ENTITY % glossdef.role.attrib "%role.attrib;">
+
+<!ENTITY % glossdef.element "INCLUDE">
+<![%glossdef.element;[
+<!--doc:A definition in a GlossEntry.-->
+<!ELEMENT glossdef %ho; ((%glossdef.mix;)+, glossseealso*)>
+<!--end of glossdef.element-->]]>
+
+<!-- Subject: List of subjects; keywords for the definition -->
+
+
+<!ENTITY % glossdef.attlist "INCLUDE">
+<![%glossdef.attlist;[
+<!ATTLIST glossdef
+ subject CDATA #IMPLIED
+ %common.attrib;
+ %glossdef.role.attrib;
+ %local.glossdef.attrib;
+>
+<!--end of glossdef.attlist-->]]>
+<!--end of glossdef.module-->]]>
+
+<!ENTITY % glosssee.module "INCLUDE">
+<![%glosssee.module;[
+<!ENTITY % local.glosssee.attrib "">
+<!ENTITY % glosssee.role.attrib "%role.attrib;">
+
+<!ENTITY % glosssee.element "INCLUDE">
+<![%glosssee.element;[
+<!--doc:A cross-reference from one GlossEntry to another.-->
+<!ELEMENT glosssee %ho; (%para.char.mix;)*>
+<!--end of glosssee.element-->]]>
+
+<!-- OtherTerm: Reference to the GlossEntry whose GlossTerm
+ should be displayed at the point of the GlossSee -->
+
+
+<!ENTITY % glosssee.attlist "INCLUDE">
+<![%glosssee.attlist;[
+<!ATTLIST glosssee
+ otherterm IDREF #IMPLIED
+ %common.attrib;
+ %glosssee.role.attrib;
+ %local.glosssee.attrib;
+>
+<!--end of glosssee.attlist-->]]>
+<!--end of glosssee.module-->]]>
+
+<!ENTITY % glossseealso.module "INCLUDE">
+<![%glossseealso.module;[
+<!ENTITY % local.glossseealso.attrib "">
+<!ENTITY % glossseealso.role.attrib "%role.attrib;">
+
+<!ENTITY % glossseealso.element "INCLUDE">
+<![%glossseealso.element;[
+<!--doc:A cross-reference from one GlossEntry to another.-->
+<!ELEMENT glossseealso %ho; (%para.char.mix;)*>
+<!--end of glossseealso.element-->]]>
+
+<!-- OtherTerm: Reference to the GlossEntry whose GlossTerm
+ should be displayed at the point of the GlossSeeAlso -->
+
+
+<!ENTITY % glossseealso.attlist "INCLUDE">
+<![%glossseealso.attlist;[
+<!ATTLIST glossseealso
+ otherterm IDREF #IMPLIED
+ %common.attrib;
+ %glossseealso.role.attrib;
+ %local.glossseealso.attrib;
+>
+<!--end of glossseealso.attlist-->]]>
+<!--end of glossseealso.module-->]]>
+<!--end of glossentry.content.module-->]]>
+
+<!-- ItemizedList and OrderedList ..... -->
+
+<!ENTITY % itemizedlist.module "INCLUDE">
+<![%itemizedlist.module;[
+<!ENTITY % local.itemizedlist.attrib "">
+<!ENTITY % itemizedlist.role.attrib "%role.attrib;">
+
+<!ENTITY % itemizedlist.element "INCLUDE">
+<![%itemizedlist.element;[
+<!--doc:A list in which each entry is marked with a bullet or other dingbat.-->
+<!ELEMENT itemizedlist %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%listpreamble.mix;)*, listitem+)>
+
+<!--end of itemizedlist.element-->]]>
+
+<!-- Spacing: Whether the vertical space in the list should be
+ compressed -->
+<!-- Mark: Keyword, e.g., bullet, dash, checkbox, none;
+ list of keywords and defaults are implementation specific -->
+
+
+<!ENTITY % itemizedlist.attlist "INCLUDE">
+<![%itemizedlist.attlist;[
+<!ATTLIST itemizedlist
+ spacing (normal
+ |compact) #IMPLIED
+ %mark.attrib;
+ %common.attrib;
+ %itemizedlist.role.attrib;
+ %local.itemizedlist.attrib;
+>
+<!--end of itemizedlist.attlist-->]]>
+<!--end of itemizedlist.module-->]]>
+
+<!ENTITY % orderedlist.module "INCLUDE">
+<![%orderedlist.module;[
+<!ENTITY % local.orderedlist.attrib "">
+<!ENTITY % orderedlist.role.attrib "%role.attrib;">
+
+<!ENTITY % orderedlist.element "INCLUDE">
+<![%orderedlist.element;[
+<!--doc:A list in which each entry is marked with a sequentially incremented label.-->
+<!ELEMENT orderedlist %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%listpreamble.mix;)*, listitem+)>
+
+<!--end of orderedlist.element-->]]>
+
+<!-- Numeration: Style of ListItem numbered; default is expected
+ to be Arabic -->
+<!-- InheritNum: Specifies for a nested list that the numbering
+ of ListItems should include the number of the item
+ within which they are nested (e.g., 1a and 1b within 1,
+ rather than a and b) -->
+<!-- Continuation: Where list numbering begins afresh (Restarts,
+ the default) or continues that of the immediately preceding
+ list (Continues) -->
+<!-- Spacing: Whether the vertical space in the list should be
+ compressed -->
+
+
+<!ENTITY % orderedlist.attlist "INCLUDE">
+<![%orderedlist.attlist;[
+<!ATTLIST orderedlist
+ numeration (arabic
+ |upperalpha
+ |loweralpha
+ |upperroman
+ |lowerroman) #IMPLIED
+ inheritnum (inherit
+ |ignore) "ignore"
+ continuation (continues
+ |restarts) "restarts"
+ spacing (normal
+ |compact) #IMPLIED
+ %common.attrib;
+ %orderedlist.role.attrib;
+ %local.orderedlist.attrib;
+>
+<!--end of orderedlist.attlist-->]]>
+<!--end of orderedlist.module-->]]>
+
+<!ENTITY % listitem.module "INCLUDE">
+<![%listitem.module;[
+<!ENTITY % local.listitem.attrib "">
+<!ENTITY % listitem.role.attrib "%role.attrib;">
+
+<!ENTITY % listitem.element "INCLUDE">
+<![%listitem.element;[
+<!--doc:A wrapper for the elements of a list item.-->
+<!ELEMENT listitem %ho; ((%component.mix;)+)>
+<!--end of listitem.element-->]]>
+
+<!-- Override: Indicates the mark to be used for this ListItem
+ instead of the default mark or the mark specified by
+ the Mark attribute on the enclosing ItemizedList -->
+
+
+<!ENTITY % listitem.attlist "INCLUDE">
+<![%listitem.attlist;[
+<!ATTLIST listitem
+ override CDATA #IMPLIED
+ %common.attrib;
+ %listitem.role.attrib;
+ %local.listitem.attrib;
+>
+<!--end of listitem.attlist-->]]>
+<!--end of listitem.module-->]]>
+
+<!-- SegmentedList .................... -->
+<!ENTITY % segmentedlist.content.module "INCLUDE">
+<![%segmentedlist.content.module;[
+<!ENTITY % segmentedlist.module "INCLUDE">
+<![%segmentedlist.module;[
+<!ENTITY % local.segmentedlist.attrib "">
+<!ENTITY % segmentedlist.role.attrib "%role.attrib;">
+
+<!ENTITY % segmentedlist.element "INCLUDE">
+<![%segmentedlist.element;[
+<!--doc:A segmented list, a list of sets of elements.-->
+<!ELEMENT segmentedlist %ho; ((%formalobject.title.content;)?,
+ segtitle+,
+ seglistitem+)>
+<!--end of segmentedlist.element-->]]>
+
+<!ENTITY % segmentedlist.attlist "INCLUDE">
+<![%segmentedlist.attlist;[
+<!ATTLIST segmentedlist
+ %common.attrib;
+ %segmentedlist.role.attrib;
+ %local.segmentedlist.attrib;
+>
+<!--end of segmentedlist.attlist-->]]>
+<!--end of segmentedlist.module-->]]>
+
+<!ENTITY % segtitle.module "INCLUDE">
+<![%segtitle.module;[
+<!ENTITY % local.segtitle.attrib "">
+<!ENTITY % segtitle.role.attrib "%role.attrib;">
+
+<!ENTITY % segtitle.element "INCLUDE">
+<![%segtitle.element;[
+<!--doc:The title of an element of a list item in a segmented list.-->
+<!ELEMENT segtitle %ho; (%title.char.mix;)*>
+<!--end of segtitle.element-->]]>
+
+<!ENTITY % segtitle.attlist "INCLUDE">
+<![%segtitle.attlist;[
+<!ATTLIST segtitle
+ %common.attrib;
+ %segtitle.role.attrib;
+ %local.segtitle.attrib;
+>
+<!--end of segtitle.attlist-->]]>
+<!--end of segtitle.module-->]]>
+
+<!ENTITY % seglistitem.module "INCLUDE">
+<![%seglistitem.module;[
+<!ENTITY % local.seglistitem.attrib "">
+<!ENTITY % seglistitem.role.attrib "%role.attrib;">
+
+<!ENTITY % seglistitem.element "INCLUDE">
+<![%seglistitem.element;[
+<!--doc:A list item in a segmented list.-->
+<!ELEMENT seglistitem %ho; (seg+)>
+<!--end of seglistitem.element-->]]>
+
+<!ENTITY % seglistitem.attlist "INCLUDE">
+<![%seglistitem.attlist;[
+<!ATTLIST seglistitem
+ %common.attrib;
+ %seglistitem.role.attrib;
+ %local.seglistitem.attrib;
+>
+<!--end of seglistitem.attlist-->]]>
+<!--end of seglistitem.module-->]]>
+
+<!ENTITY % seg.module "INCLUDE">
+<![%seg.module;[
+<!ENTITY % local.seg.attrib "">
+<!ENTITY % seg.role.attrib "%role.attrib;">
+
+<!ENTITY % seg.element "INCLUDE">
+<![%seg.element;[
+<!--doc:An element of a list item in a segmented list.-->
+<!ELEMENT seg %ho; (%para.char.mix;)*>
+<!--end of seg.element-->]]>
+
+<!ENTITY % seg.attlist "INCLUDE">
+<![%seg.attlist;[
+<!ATTLIST seg
+ %common.attrib;
+ %seg.role.attrib;
+ %local.seg.attrib;
+>
+<!--end of seg.attlist-->]]>
+<!--end of seg.module-->]]>
+<!--end of segmentedlist.content.module-->]]>
+
+<!-- SimpleList ....................... -->
+
+<!ENTITY % simplelist.content.module "INCLUDE">
+<![%simplelist.content.module;[
+<!ENTITY % simplelist.module "INCLUDE">
+<![%simplelist.module;[
+<!ENTITY % local.simplelist.attrib "">
+<!ENTITY % simplelist.role.attrib "%role.attrib;">
+
+<!ENTITY % simplelist.element "INCLUDE">
+<![%simplelist.element;[
+<!--doc:An undecorated list of single words or short phrases.-->
+<!ELEMENT simplelist %ho; (member+)>
+<!--end of simplelist.element-->]]>
+
+<!-- Columns: The number of columns the array should contain -->
+<!-- Type: How the Members of the SimpleList should be
+ formatted: Inline (members separated with commas etc.
+ inline), Vert (top to bottom in n Columns), or Horiz (in
+ the direction of text flow) in n Columns. If Column
+ is 1 or implied, Type=Vert and Type=Horiz give the same
+ results. -->
+
+
+<!ENTITY % simplelist.attlist "INCLUDE">
+<![%simplelist.attlist;[
+<!ATTLIST simplelist
+ columns CDATA #IMPLIED
+ type (inline
+ |vert
+ |horiz) "vert"
+ %common.attrib;
+ %simplelist.role.attrib;
+ %local.simplelist.attrib;
+>
+<!--end of simplelist.attlist-->]]>
+<!--end of simplelist.module-->]]>
+
+<!ENTITY % member.module "INCLUDE">
+<![%member.module;[
+<!ENTITY % local.member.attrib "">
+<!ENTITY % member.role.attrib "%role.attrib;">
+
+<!ENTITY % member.element "INCLUDE">
+<![%member.element;[
+<!--doc:An element of a simple list.-->
+<!ELEMENT member %ho; (%para.char.mix;)*>
+<!--end of member.element-->]]>
+
+<!ENTITY % member.attlist "INCLUDE">
+<![%member.attlist;[
+<!ATTLIST member
+ %common.attrib;
+ %member.role.attrib;
+ %local.member.attrib;
+>
+<!--end of member.attlist-->]]>
+<!--end of member.module-->]]>
+<!--end of simplelist.content.module-->]]>
+
+<!-- VariableList ..................... -->
+
+<!ENTITY % variablelist.content.module "INCLUDE">
+<![%variablelist.content.module;[
+<!ENTITY % variablelist.module "INCLUDE">
+<![%variablelist.module;[
+<!ENTITY % local.variablelist.attrib "">
+<!ENTITY % variablelist.role.attrib "%role.attrib;">
+
+<!ENTITY % variablelist.element "INCLUDE">
+<![%variablelist.element;[
+<!--doc:A list in which each entry is composed of a set of one or more terms and an associated description.-->
+<!ELEMENT variablelist %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (%listpreamble.mix;)*, varlistentry+)>
+<!--end of variablelist.element-->]]>
+
+<!-- TermLength: Length beyond which the presentation engine
+ may consider the Term too long and select an alternate
+ presentation of the Term and, or, its associated ListItem. -->
+
+
+<!ENTITY % variablelist.attlist "INCLUDE">
+<![%variablelist.attlist;[
+<!ATTLIST variablelist
+ termlength CDATA #IMPLIED
+ spacing (normal
+ |compact) #IMPLIED
+ %common.attrib;
+ %variablelist.role.attrib;
+ %local.variablelist.attrib;
+>
+<!--end of variablelist.attlist-->]]>
+<!--end of variablelist.module-->]]>
+
+<!ENTITY % varlistentry.module "INCLUDE">
+<![%varlistentry.module;[
+<!ENTITY % local.varlistentry.attrib "">
+<!ENTITY % varlistentry.role.attrib "%role.attrib;">
+
+<!ENTITY % varlistentry.element "INCLUDE">
+<![%varlistentry.element;[
+<!--doc:A wrapper for a set of terms and the associated description in a variable list.-->
+<!ELEMENT varlistentry %ho; (term+, listitem)>
+<!--end of varlistentry.element-->]]>
+
+<!ENTITY % varlistentry.attlist "INCLUDE">
+<![%varlistentry.attlist;[
+<!ATTLIST varlistentry
+ %common.attrib;
+ %varlistentry.role.attrib;
+ %local.varlistentry.attrib;
+>
+<!--end of varlistentry.attlist-->]]>
+<!--end of varlistentry.module-->]]>
+
+<!ENTITY % term.module "INCLUDE">
+<![%term.module;[
+<!ENTITY % local.term.attrib "">
+<!ENTITY % term.role.attrib "%role.attrib;">
+
+<!ENTITY % term.element "INCLUDE">
+<![%term.element;[
+<!--doc:The word or phrase being defined or described in a variable list.-->
+<!ELEMENT term %ho; (%para.char.mix;)*>
+<!--end of term.element-->]]>
+
+<!ENTITY % term.attlist "INCLUDE">
+<![%term.attlist;[
+<!ATTLIST term
+ %common.attrib;
+ %term.role.attrib;
+ %local.term.attrib;
+>
+<!--end of term.attlist-->]]>
+<!--end of term.module-->]]>
+
+<!-- ListItem (defined above)-->
+<!--end of variablelist.content.module-->]]>
+
+<!-- CalloutList ...................... -->
+
+<!ENTITY % calloutlist.content.module "INCLUDE">
+<![%calloutlist.content.module;[
+<!ENTITY % calloutlist.module "INCLUDE">
+<![%calloutlist.module;[
+<!ENTITY % local.calloutlist.attrib "">
+<!ENTITY % calloutlist.role.attrib "%role.attrib;">
+
+<!ENTITY % calloutlist.element "INCLUDE">
+<![%calloutlist.element;[
+<!--doc:A list of Callouts.-->
+<!ELEMENT calloutlist %ho; ((%formalobject.title.content;)?, callout+)>
+<!--end of calloutlist.element-->]]>
+
+<!ENTITY % calloutlist.attlist "INCLUDE">
+<![%calloutlist.attlist;[
+<!ATTLIST calloutlist
+ %common.attrib;
+ %calloutlist.role.attrib;
+ %local.calloutlist.attrib;
+>
+<!--end of calloutlist.attlist-->]]>
+<!--end of calloutlist.module-->]]>
+
+<!ENTITY % callout.module "INCLUDE">
+<![%callout.module;[
+<!ENTITY % local.callout.attrib "">
+<!ENTITY % callout.role.attrib "%role.attrib;">
+
+<!ENTITY % callout.element "INCLUDE">
+<![%callout.element;[
+<!--doc:A &ldquo;called out&rdquo; description of a marked Area.-->
+<!ELEMENT callout %ho; ((%component.mix;)+)>
+<!--end of callout.element-->]]>
+
+<!-- AreaRefs: IDs of one or more Areas or AreaSets described
+ by this Callout -->
+
+
+<!ENTITY % callout.attlist "INCLUDE">
+<![%callout.attlist;[
+<!ATTLIST callout
+ arearefs IDREFS #REQUIRED
+ %common.attrib;
+ %callout.role.attrib;
+ %local.callout.attrib;
+>
+<!--end of callout.attlist-->]]>
+<!--end of callout.module-->]]>
+<!--end of calloutlist.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Objects .............................................................. -->
+
+<!-- Examples etc. .................... -->
+
+<!ENTITY % example.module "INCLUDE">
+<![%example.module;[
+<!ENTITY % local.example.attrib "">
+<!ENTITY % example.role.attrib "%role.attrib;">
+
+<!ENTITY % example.element "INCLUDE">
+<![%example.element;[
+<!--doc:A formal example, with a title.-->
+<!ELEMENT example %ho; (blockinfo?, (%formalobject.title.content;), (%example.mix;)+)
+ %formal.exclusion;>
+<!--end of example.element-->]]>
+
+<!ENTITY % example.attlist "INCLUDE">
+<![%example.attlist;[
+<!ATTLIST example
+ floatstyle CDATA #IMPLIED
+ %label.attrib;
+ %width.attrib;
+ %common.attrib;
+ %example.role.attrib;
+ %local.example.attrib;
+>
+<!--end of example.attlist-->]]>
+<!--end of example.module-->]]>
+
+<!ENTITY % informalexample.module "INCLUDE">
+<![%informalexample.module;[
+<!ENTITY % local.informalexample.attrib "">
+<!ENTITY % informalexample.role.attrib "%role.attrib;">
+
+<!ENTITY % informalexample.element "INCLUDE">
+<![%informalexample.element;[
+<!--doc:A displayed example without a title.-->
+<!ELEMENT informalexample %ho; (blockinfo?, (%example.mix;)+)>
+<!--end of informalexample.element-->]]>
+
+<!ENTITY % informalexample.attlist "INCLUDE">
+<![%informalexample.attlist;[
+<!ATTLIST informalexample
+ floatstyle CDATA #IMPLIED
+ %width.attrib;
+ %common.attrib;
+ %informalexample.role.attrib;
+ %local.informalexample.attrib;
+>
+<!--end of informalexample.attlist-->]]>
+<!--end of informalexample.module-->]]>
+
+<!ENTITY % programlistingco.module "INCLUDE">
+<![%programlistingco.module;[
+<!ENTITY % local.programlistingco.attrib "">
+<!ENTITY % programlistingco.role.attrib "%role.attrib;">
+
+<!ENTITY % programlistingco.element "INCLUDE">
+<![%programlistingco.element;[
+<!--doc:A program listing with associated areas used in callouts.-->
+<!ELEMENT programlistingco %ho; (areaspec, programlisting, calloutlist*)>
+<!--end of programlistingco.element-->]]>
+
+<!ENTITY % programlistingco.attlist "INCLUDE">
+<![%programlistingco.attlist;[
+<!ATTLIST programlistingco
+ %common.attrib;
+ %programlistingco.role.attrib;
+ %local.programlistingco.attrib;
+>
+<!--end of programlistingco.attlist-->]]>
+<!-- CalloutList (defined above in Lists)-->
+<!--end of informalexample.module-->]]>
+
+<!ENTITY % areaspec.content.module "INCLUDE">
+<![%areaspec.content.module;[
+<!ENTITY % areaspec.module "INCLUDE">
+<![%areaspec.module;[
+<!ENTITY % local.areaspec.attrib "">
+<!ENTITY % areaspec.role.attrib "%role.attrib;">
+
+<!ENTITY % areaspec.element "INCLUDE">
+<![%areaspec.element;[
+<!--doc:A collection of regions in a graphic or code example.-->
+<!ELEMENT areaspec %ho; ((area|areaset)+)>
+<!--end of areaspec.element-->]]>
+
+<!-- Units: global unit of measure in which coordinates in
+ this spec are expressed:
+
+ - CALSPair "x1,y1 x2,y2": lower-left and upper-right
+ coordinates in a rectangle describing repro area in which
+ graphic is placed, where X and Y dimensions are each some
+ number 0..10000 (taken from CALS graphic attributes)
+
+ - LineColumn "line column": line number and column number
+ at which to start callout text in "linespecific" content
+
+ - LineRange "startline endline": whole lines from startline
+ to endline in "linespecific" content
+
+ - LineColumnPair "line1 col1 line2 col2": starting and ending
+ points of area in "linespecific" content that starts at
+ first position and ends at second position (including the
+ beginnings of any intervening lines)
+
+ - Other: directive to look at value of OtherUnits attribute
+ to get implementation-specific keyword
+
+ The default is implementation-specific; usually dependent on
+ the parent element (GraphicCO gets CALSPair, ProgramListingCO
+ and ScreenCO get LineColumn) -->
+<!-- OtherUnits: User-defined units -->
+
+
+<!ENTITY % areaspec.attlist "INCLUDE">
+<![%areaspec.attlist;[
+<!ATTLIST areaspec
+ units (calspair
+ |linecolumn
+ |linerange
+ |linecolumnpair
+ |other) #IMPLIED
+ otherunits NMTOKEN #IMPLIED
+ %common.attrib;
+ %areaspec.role.attrib;
+ %local.areaspec.attrib;
+>
+<!--end of areaspec.attlist-->]]>
+<!--end of areaspec.module-->]]>
+
+<!ENTITY % area.module "INCLUDE">
+<![%area.module;[
+<!ENTITY % local.area.attrib "">
+<!ENTITY % area.role.attrib "%role.attrib;">
+
+<!ENTITY % area.element "INCLUDE">
+<![%area.element;[
+<!--doc:A region defined for a Callout in a graphic or code example.-->
+<!ELEMENT area %ho; EMPTY>
+<!--end of area.element-->]]>
+
+<!-- bug number/symbol override or initialization -->
+<!-- to any related information -->
+<!-- Units: unit of measure in which coordinates in this
+ area are expressed; inherits from AreaSet and AreaSpec -->
+<!-- OtherUnits: User-defined units -->
+
+
+<!ENTITY % area.attlist "INCLUDE">
+<![%area.attlist;[
+<!ATTLIST area
+ %label.attrib;
+ %linkends.attrib;
+ units (calspair
+ |linecolumn
+ |linerange
+ |linecolumnpair
+ |other) #IMPLIED
+ otherunits NMTOKEN #IMPLIED
+ coords CDATA #REQUIRED
+ %idreq.common.attrib;
+ %area.role.attrib;
+ %local.area.attrib;
+>
+<!--end of area.attlist-->]]>
+<!--end of area.module-->]]>
+
+<!ENTITY % areaset.module "INCLUDE">
+<![%areaset.module;[
+<!ENTITY % local.areaset.attrib "">
+<!ENTITY % areaset.role.attrib "%role.attrib;">
+
+<!ENTITY % areaset.element "INCLUDE">
+<![%areaset.element;[
+<!--doc:A set of related areas in a graphic or code example.-->
+<!ELEMENT areaset %ho; (area+)>
+<!--end of areaset.element-->]]>
+
+<!-- bug number/symbol override or initialization -->
+<!-- Units: unit of measure in which coordinates in this
+ area are expressed; inherits from AreaSpec -->
+
+
+<!ENTITY % areaset.attlist "INCLUDE">
+<![%areaset.attlist;[
+<!ATTLIST areaset
+ %label.attrib;
+ units (calspair
+ |linecolumn
+ |linerange
+ |linecolumnpair
+ |other) #IMPLIED
+ otherunits NMTOKEN #IMPLIED
+ coords CDATA #REQUIRED
+ %idreq.common.attrib;
+ %areaset.role.attrib;
+ %local.areaset.attrib;
+>
+<!--end of areaset.attlist-->]]>
+<!--end of areaset.module-->]]>
+<!--end of areaspec.content.module-->]]>
+
+<!ENTITY % programlisting.module "INCLUDE">
+<![%programlisting.module;[
+<!ENTITY % local.programlisting.attrib "">
+<!ENTITY % programlisting.role.attrib "%role.attrib;">
+
+<!ENTITY % programlisting.element "INCLUDE">
+<![%programlisting.element;[
+<!--doc:A literal listing of all or part of a program.-->
+<!ELEMENT programlisting %ho; (%para.char.mix;|co|coref|lineannotation|textobject)*>
+<!--end of programlisting.element-->]]>
+
+<!ENTITY % programlisting.attlist "INCLUDE">
+<![%programlisting.attlist;[
+<!ATTLIST programlisting
+ %width.attrib;
+ %linespecific.attrib;
+ %common.attrib;
+ %programlisting.role.attrib;
+ %local.programlisting.attrib;
+>
+<!--end of programlisting.attlist-->]]>
+<!--end of programlisting.module-->]]>
+
+<!ENTITY % literallayout.module "INCLUDE">
+<![%literallayout.module;[
+<!ENTITY % local.literallayout.attrib "">
+<!ENTITY % literallayout.role.attrib "%role.attrib;">
+
+<!ENTITY % literallayout.element "INCLUDE">
+<![%literallayout.element;[
+<!--doc:A block of text in which line breaks and white space are to be reproduced faithfully.-->
+<!ELEMENT literallayout %ho; (%para.char.mix;|co|coref|textobject|lineannotation)*>
+<!--end of literallayout.element-->]]>
+
+<!ENTITY % literallayout.attlist "INCLUDE">
+<![%literallayout.attlist;[
+<!ATTLIST literallayout
+ %width.attrib;
+ %linespecific.attrib;
+ class (monospaced|normal) "normal"
+ %common.attrib;
+ %literallayout.role.attrib;
+ %local.literallayout.attrib;
+>
+<!--end of literallayout.attlist-->]]>
+<!-- LineAnnotation (defined in the Inlines section, below)-->
+<!--end of literallayout.module-->]]>
+
+<!ENTITY % screenco.module "INCLUDE">
+<![%screenco.module;[
+<!ENTITY % local.screenco.attrib "">
+<!ENTITY % screenco.role.attrib "%role.attrib;">
+
+<!ENTITY % screenco.element "INCLUDE">
+<![%screenco.element;[
+<!--doc:A screen with associated areas used in callouts.-->
+<!ELEMENT screenco %ho; (areaspec, screen, calloutlist*)>
+<!--end of screenco.element-->]]>
+
+<!ENTITY % screenco.attlist "INCLUDE">
+<![%screenco.attlist;[
+<!ATTLIST screenco
+ %common.attrib;
+ %screenco.role.attrib;
+ %local.screenco.attrib;
+>
+<!--end of screenco.attlist-->]]>
+<!-- AreaSpec (defined above)-->
+<!-- CalloutList (defined above in Lists)-->
+<!--end of screenco.module-->]]>
+
+<!ENTITY % screen.module "INCLUDE">
+<![%screen.module;[
+<!ENTITY % local.screen.attrib "">
+<!ENTITY % screen.role.attrib "%role.attrib;">
+
+<!ENTITY % screen.element "INCLUDE">
+<![%screen.element;[
+<!--doc:Text that a user sees or might see on a computer screen.-->
+<!ELEMENT screen %ho; (%para.char.mix;|co|coref|textobject|lineannotation)*>
+<!--end of screen.element-->]]>
+
+<!ENTITY % screen.attlist "INCLUDE">
+<![%screen.attlist;[
+<!ATTLIST screen
+ %width.attrib;
+ %linespecific.attrib;
+ %common.attrib;
+ %screen.role.attrib;
+ %local.screen.attrib;
+>
+<!--end of screen.attlist-->]]>
+<!--end of screen.module-->]]>
+
+<!ENTITY % screenshot.content.module "INCLUDE">
+<![%screenshot.content.module;[
+<!ENTITY % screenshot.module "INCLUDE">
+<![%screenshot.module;[
+<!ENTITY % local.screenshot.attrib "">
+<!ENTITY % screenshot.role.attrib "%role.attrib;">
+
+<!ENTITY % screenshot.element "INCLUDE">
+<![%screenshot.element;[
+<!--doc:A representation of what the user sees or might see on a computer screen.-->
+<!ELEMENT screenshot %ho; (screeninfo?,
+ (graphic|graphicco
+ |mediaobject|mediaobjectco))>
+<!--end of screenshot.element-->]]>
+
+<!ENTITY % screenshot.attlist "INCLUDE">
+<![%screenshot.attlist;[
+<!ATTLIST screenshot
+ %common.attrib;
+ %screenshot.role.attrib;
+ %local.screenshot.attrib;
+>
+<!--end of screenshot.attlist-->]]>
+<!--end of screenshot.module-->]]>
+
+<!ENTITY % screeninfo.module "INCLUDE">
+<![%screeninfo.module;[
+<!ENTITY % local.screeninfo.attrib "">
+<!ENTITY % screeninfo.role.attrib "%role.attrib;">
+
+<!ENTITY % screeninfo.element "INCLUDE">
+<![%screeninfo.element;[
+<!--doc:Information about how a screen shot was produced.-->
+<!ELEMENT screeninfo %ho; (%para.char.mix;)*
+ %ubiq.exclusion;>
+<!--end of screeninfo.element-->]]>
+
+<!ENTITY % screeninfo.attlist "INCLUDE">
+<![%screeninfo.attlist;[
+<!ATTLIST screeninfo
+ %common.attrib;
+ %screeninfo.role.attrib;
+ %local.screeninfo.attrib;
+>
+<!--end of screeninfo.attlist-->]]>
+<!--end of screeninfo.module-->]]>
+<!--end of screenshot.content.module-->]]>
+
+<!-- Figures etc. ..................... -->
+
+<!ENTITY % figure.module "INCLUDE">
+<![%figure.module;[
+<!ENTITY % local.figure.attrib "">
+<!ENTITY % figure.role.attrib "%role.attrib;">
+
+<!ENTITY % figure.element "INCLUDE">
+<![%figure.element;[
+<!--doc:A formal figure, generally an illustration, with a title.-->
+<!ELEMENT figure %ho; (blockinfo?, (%formalobject.title.content;),
+ (%figure.mix; | %link.char.class;)+)>
+<!--end of figure.element-->]]>
+
+<!-- Float: Whether the Figure is supposed to be rendered
+ where convenient (yes (1) value) or at the place it occurs
+ in the text (no (0) value, the default) -->
+
+
+<!ENTITY % figure.attlist "INCLUDE">
+<![%figure.attlist;[
+<!ATTLIST figure
+ float %yesorno.attvals; '0'
+ floatstyle CDATA #IMPLIED
+ pgwide %yesorno.attvals; #IMPLIED
+ %label.attrib;
+ %common.attrib;
+ %figure.role.attrib;
+ %local.figure.attrib;
+>
+<!--end of figure.attlist-->]]>
+<!--end of figure.module-->]]>
+
+<!ENTITY % informalfigure.module "INCLUDE">
+<![ %informalfigure.module; [
+<!ENTITY % local.informalfigure.attrib "">
+<!ENTITY % informalfigure.role.attrib "%role.attrib;">
+
+<!ENTITY % informalfigure.element "INCLUDE">
+<![ %informalfigure.element; [
+<!--doc:A untitled figure.-->
+<!ELEMENT informalfigure %ho; (blockinfo?, (%figure.mix; | %link.char.class;)+)>
+<!--end of informalfigure.element-->]]>
+
+<!ENTITY % informalfigure.attlist "INCLUDE">
+<![ %informalfigure.attlist; [
+<!--
+Float: Whether the Figure is supposed to be rendered
+where convenient (yes (1) value) or at the place it occurs
+in the text (no (0) value, the default)
+-->
+<!ATTLIST informalfigure
+ float %yesorno.attvals; "0"
+ floatstyle CDATA #IMPLIED
+ pgwide %yesorno.attvals; #IMPLIED
+ %label.attrib;
+ %common.attrib;
+ %informalfigure.role.attrib;
+ %local.informalfigure.attrib;
+>
+<!--end of informalfigure.attlist-->]]>
+<!--end of informalfigure.module-->]]>
+
+<!ENTITY % graphicco.module "INCLUDE">
+<![%graphicco.module;[
+<!ENTITY % local.graphicco.attrib "">
+<!ENTITY % graphicco.role.attrib "%role.attrib;">
+
+<!ENTITY % graphicco.element "INCLUDE">
+<![%graphicco.element;[
+<!--doc:A graphic that contains callout areas.-->
+<!ELEMENT graphicco %ho; (areaspec, graphic, calloutlist*)>
+<!--end of graphicco.element-->]]>
+
+<!ENTITY % graphicco.attlist "INCLUDE">
+<![%graphicco.attlist;[
+<!ATTLIST graphicco
+ %common.attrib;
+ %graphicco.role.attrib;
+ %local.graphicco.attrib;
+>
+<!--end of graphicco.attlist-->]]>
+<!-- AreaSpec (defined above in Examples)-->
+<!-- CalloutList (defined above in Lists)-->
+<!--end of graphicco.module-->]]>
+
+<!-- Graphical data can be the content of Graphic, or you can reference
+ an external file either as an entity (Entitref) or a filename
+ (Fileref). -->
+
+<!ENTITY % graphic.module "INCLUDE">
+<![%graphic.module;[
+<!ENTITY % local.graphic.attrib "">
+<!ENTITY % graphic.role.attrib "%role.attrib;">
+
+<!ENTITY % graphic.element "INCLUDE">
+<![%graphic.element;[
+<!--doc:A displayed graphical object (not an inline).-->
+<!ELEMENT graphic %ho; EMPTY>
+<!--end of graphic.element-->]]>
+
+<!ENTITY % graphic.attlist "INCLUDE">
+<![%graphic.attlist;[
+<!ATTLIST graphic
+ %graphics.attrib;
+ %common.attrib;
+ %graphic.role.attrib;
+ %local.graphic.attrib;
+>
+<!--end of graphic.attlist-->]]>
+<!--end of graphic.module-->]]>
+
+<!ENTITY % inlinegraphic.module "INCLUDE">
+<![%inlinegraphic.module;[
+<!ENTITY % local.inlinegraphic.attrib "">
+<!ENTITY % inlinegraphic.role.attrib "%role.attrib;">
+
+<!ENTITY % inlinegraphic.element "INCLUDE">
+<![%inlinegraphic.element;[
+<!--doc:An object containing or pointing to graphical data that will be rendered inline.-->
+<!ELEMENT inlinegraphic %ho; EMPTY>
+<!--end of inlinegraphic.element-->]]>
+
+<!ENTITY % inlinegraphic.attlist "INCLUDE">
+<![%inlinegraphic.attlist;[
+<!ATTLIST inlinegraphic
+ %graphics.attrib;
+ %common.attrib;
+ %inlinegraphic.role.attrib;
+ %local.inlinegraphic.attrib;
+>
+<!--end of inlinegraphic.attlist-->]]>
+<!--end of inlinegraphic.module-->]]>
+
+<!ENTITY % mediaobject.content.module "INCLUDE">
+<![ %mediaobject.content.module; [
+
+<!ENTITY % mediaobject.module "INCLUDE">
+<![ %mediaobject.module; [
+<!ENTITY % local.mediaobject.attrib "">
+<!ENTITY % mediaobject.role.attrib "%role.attrib;">
+
+<!ENTITY % mediaobject.element "INCLUDE">
+<![ %mediaobject.element; [
+<!--doc:A displayed media object (video, audio, image, etc.).-->
+<!ELEMENT mediaobject %ho; (objectinfo?,
+ (%mediaobject.mix;)+,
+ caption?)>
+<!--end of mediaobject.element-->]]>
+
+<!ENTITY % mediaobject.attlist "INCLUDE">
+<![ %mediaobject.attlist; [
+<!ATTLIST mediaobject
+ %common.attrib;
+ %mediaobject.role.attrib;
+ %local.mediaobject.attrib;
+>
+<!--end of mediaobject.attlist-->]]>
+<!--end of mediaobject.module-->]]>
+
+<!ENTITY % inlinemediaobject.module "INCLUDE">
+<![ %inlinemediaobject.module; [
+<!ENTITY % local.inlinemediaobject.attrib "">
+<!ENTITY % inlinemediaobject.role.attrib "%role.attrib;">
+
+<!ENTITY % inlinemediaobject.element "INCLUDE">
+<![ %inlinemediaobject.element; [
+<!--doc:An inline media object (video, audio, image, and so on).-->
+<!ELEMENT inlinemediaobject %ho; (objectinfo?,
+ (%mediaobject.mix;)+)>
+<!--end of inlinemediaobject.element-->]]>
+
+<!ENTITY % inlinemediaobject.attlist "INCLUDE">
+<![ %inlinemediaobject.attlist; [
+<!ATTLIST inlinemediaobject
+ %common.attrib;
+ %inlinemediaobject.role.attrib;
+ %local.inlinemediaobject.attrib;
+>
+<!--end of inlinemediaobject.attlist-->]]>
+<!--end of inlinemediaobject.module-->]]>
+
+<!ENTITY % videoobject.module "INCLUDE">
+<![ %videoobject.module; [
+<!ENTITY % local.videoobject.attrib "">
+<!ENTITY % videoobject.role.attrib "%role.attrib;">
+
+<!ENTITY % videoobject.element "INCLUDE">
+<![ %videoobject.element; [
+<!--doc:A wrapper for video data and its associated meta-information.-->
+<!ELEMENT videoobject %ho; (objectinfo?, videodata)>
+<!--end of videoobject.element-->]]>
+
+<!ENTITY % videoobject.attlist "INCLUDE">
+<![ %videoobject.attlist; [
+<!ATTLIST videoobject
+ %common.attrib;
+ %videoobject.role.attrib;
+ %local.videoobject.attrib;
+>
+<!--end of videoobject.attlist-->]]>
+<!--end of videoobject.module-->]]>
+
+<!ENTITY % audioobject.module "INCLUDE">
+<![ %audioobject.module; [
+<!ENTITY % local.audioobject.attrib "">
+<!ENTITY % audioobject.role.attrib "%role.attrib;">
+
+<!ENTITY % audioobject.element "INCLUDE">
+<![ %audioobject.element; [
+<!--doc:A wrapper for audio data and its associated meta-information.-->
+<!ELEMENT audioobject %ho; (objectinfo?, audiodata)>
+<!--end of audioobject.element-->]]>
+
+<!ENTITY % audioobject.attlist "INCLUDE">
+<![ %audioobject.attlist; [
+<!ATTLIST audioobject
+ %common.attrib;
+ %audioobject.role.attrib;
+ %local.audioobject.attrib;
+>
+<!--end of audioobject.attlist-->]]>
+<!--end of audioobject.module-->]]>
+
+<!ENTITY % imageobject.module "INCLUDE">
+<![ %imageobject.module; [
+<!ENTITY % local.imageobject.attrib "">
+<!ENTITY % imageobject.role.attrib "%role.attrib;">
+
+<!ENTITY % imageobject.element "INCLUDE">
+<![ %imageobject.element; [
+<!--doc:A wrapper for image data and its associated meta-information.-->
+<!ELEMENT imageobject %ho; (objectinfo?, imagedata)>
+<!--end of imageobject.element-->]]>
+
+<!ENTITY % imageobject.attlist "INCLUDE">
+<![ %imageobject.attlist; [
+<!ATTLIST imageobject
+ %common.attrib;
+ %imageobject.role.attrib;
+ %local.imageobject.attrib;
+>
+<!--end of imageobject.attlist-->]]>
+<!--end of imageobject.module-->]]>
+
+<!ENTITY % textobject.module "INCLUDE">
+<![ %textobject.module; [
+<!ENTITY % local.textobject.attrib "">
+<!ENTITY % textobject.role.attrib "%role.attrib;">
+
+<!ENTITY % textobject.element "INCLUDE">
+<![ %textobject.element; [
+<!--doc:A wrapper for a text description of an object and its associated meta-information.-->
+<!ELEMENT textobject %ho; (objectinfo?, (phrase|textdata|(%textobject.mix;)+))>
+<!--end of textobject.element-->]]>
+
+<!ENTITY % textobject.attlist "INCLUDE">
+<![ %textobject.attlist; [
+<!ATTLIST textobject
+ %common.attrib;
+ %textobject.role.attrib;
+ %local.textobject.attrib;
+>
+<!--end of textobject.attlist-->]]>
+<!--end of textobject.module-->]]>
+
+<!ENTITY % objectinfo.module "INCLUDE">
+<![ %objectinfo.module; [
+<!ENTITY % local.objectinfo.attrib "">
+<!ENTITY % objectinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % objectinfo.element "INCLUDE">
+<![ %objectinfo.element; [
+<!--doc:Meta-information for an object.-->
+<!ELEMENT objectinfo %ho; ((%info.class;)+)
+ %beginpage.exclusion;>
+<!--end of objectinfo.element-->]]>
+
+<!ENTITY % objectinfo.attlist "INCLUDE">
+<![ %objectinfo.attlist; [
+<!ATTLIST objectinfo
+ %common.attrib;
+ %objectinfo.role.attrib;
+ %local.objectinfo.attrib;
+>
+<!--end of objectinfo.attlist-->]]>
+<!--end of objectinfo.module-->]]>
+
+<!--EntityRef: Name of an external entity containing the content
+ of the object data-->
+<!--FileRef: Filename, qualified by a pathname if desired,
+ designating the file containing the content of the object data-->
+<!--Format: Notation of the element content, if any-->
+<!--SrcCredit: Information about the source of the image-->
+<!ENTITY % local.objectdata.attrib "">
+<!ENTITY % objectdata.attrib
+ "
+ entityref ENTITY #IMPLIED
+ fileref CDATA #IMPLIED
+ format (%notation.class;)
+ #IMPLIED
+ srccredit CDATA #IMPLIED
+ %local.objectdata.attrib;"
+>
+
+<!ENTITY % videodata.module "INCLUDE">
+<![ %videodata.module; [
+<!ENTITY % local.videodata.attrib "">
+<!ENTITY % videodata.role.attrib "%role.attrib;">
+
+<!ENTITY % videodata.element "INCLUDE">
+<![ %videodata.element; [
+<!--doc:Pointer to external video data.-->
+<!ELEMENT videodata %ho; EMPTY>
+<!--end of videodata.element-->]]>
+
+<!ENTITY % videodata.attlist "INCLUDE">
+<![ %videodata.attlist; [
+
+<!--Width: Same as CALS reprowid (desired width)-->
+<!--Depth: Same as CALS reprodep (desired depth)-->
+<!--Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific-->
+<!--Scale: Conflation of CALS hscale and vscale-->
+<!--Scalefit: Same as CALS scalefit-->
+<!ATTLIST videodata
+ width CDATA #IMPLIED
+ contentwidth CDATA #IMPLIED
+ depth CDATA #IMPLIED
+ contentdepth CDATA #IMPLIED
+ align (left
+ |right
+ |center) #IMPLIED
+ valign (top
+ |middle
+ |bottom) #IMPLIED
+ scale CDATA #IMPLIED
+ scalefit %yesorno.attvals;
+ #IMPLIED
+ %objectdata.attrib;
+ %common.attrib;
+ %videodata.role.attrib;
+ %local.videodata.attrib;
+>
+<!--end of videodata.attlist-->]]>
+<!--end of videodata.module-->]]>
+
+<!ENTITY % audiodata.module "INCLUDE">
+<![ %audiodata.module; [
+<!ENTITY % local.audiodata.attrib "">
+<!ENTITY % audiodata.role.attrib "%role.attrib;">
+
+<!ENTITY % audiodata.element "INCLUDE">
+<![ %audiodata.element; [
+<!--doc:Pointer to external audio data.-->
+<!ELEMENT audiodata %ho; EMPTY>
+<!--end of audiodata.element-->]]>
+
+<!ENTITY % audiodata.attlist "INCLUDE">
+<![ %audiodata.attlist; [
+<!ATTLIST audiodata
+ %objectdata.attrib;
+ %common.attrib;
+ %audiodata.role.attrib;
+ %local.audiodata.attrib;
+>
+<!--end of audiodata.attlist-->]]>
+<!--end of audiodata.module-->]]>
+
+<!ENTITY % imagedata.module "INCLUDE">
+<![ %imagedata.module; [
+<!ENTITY % local.imagedata.attrib "">
+<!ENTITY % imagedata.role.attrib "%role.attrib;">
+
+<!ENTITY % imagedata.element "INCLUDE">
+<![ %imagedata.element; [
+<!--doc:Pointer to external image data.-->
+<!ELEMENT imagedata %ho; EMPTY>
+<!--end of imagedata.element-->]]>
+
+<!ENTITY % imagedata.attlist "INCLUDE">
+<![ %imagedata.attlist; [
+
+<!--Width: Same as CALS reprowid (desired width)-->
+<!--Depth: Same as CALS reprodep (desired depth)-->
+<!--Align: Same as CALS hplace with 'none' removed; #IMPLIED means
+ application-specific-->
+<!--Scale: Conflation of CALS hscale and vscale-->
+<!--Scalefit: Same as CALS scalefit-->
+<!ATTLIST imagedata
+ width CDATA #IMPLIED
+ contentwidth CDATA #IMPLIED
+ depth CDATA #IMPLIED
+ contentdepth CDATA #IMPLIED
+ align (left
+ |right
+ |center) #IMPLIED
+ valign (top
+ |middle
+ |bottom) #IMPLIED
+ scale CDATA #IMPLIED
+ scalefit %yesorno.attvals;
+ #IMPLIED
+ %objectdata.attrib;
+ %common.attrib;
+ %imagedata.role.attrib;
+ %local.imagedata.attrib;
+>
+<!--end of imagedata.attlist-->]]>
+<!--end of imagedata.module-->]]>
+
+<!ENTITY % textdata.module "INCLUDE">
+<![ %textdata.module; [
+<!ENTITY % local.textdata.attrib "">
+<!ENTITY % textdata.role.attrib "%role.attrib;">
+
+<!ENTITY % textdata.element "INCLUDE">
+<![ %textdata.element; [
+<!--doc:Pointer to external text data.-->
+<!ELEMENT textdata %ho; EMPTY>
+<!--end of textdata.element-->]]>
+
+<!ENTITY % textdata.attlist "INCLUDE">
+<![ %textdata.attlist; [
+<!ATTLIST textdata
+ encoding CDATA #IMPLIED
+ %objectdata.attrib;
+ %common.attrib;
+ %textdata.role.attrib;
+ %local.textdata.attrib;
+>
+<!--end of textdata.attlist-->]]>
+<!--end of textdata.module-->]]>
+
+<!ENTITY % mediaobjectco.module "INCLUDE">
+<![ %mediaobjectco.module; [
+<!ENTITY % local.mediaobjectco.attrib "">
+<!ENTITY % mediaobjectco.role.attrib "%role.attrib;">
+
+<!ENTITY % mediaobjectco.element "INCLUDE">
+<![ %mediaobjectco.element; [
+<!--doc:A media object that contains callouts.-->
+<!ELEMENT mediaobjectco %ho; (objectinfo?, imageobjectco,
+ (imageobjectco|textobject)*)>
+<!--end of mediaobjectco.element-->]]>
+
+<!ENTITY % mediaobjectco.attlist "INCLUDE">
+<![ %mediaobjectco.attlist; [
+<!ATTLIST mediaobjectco
+ %common.attrib;
+ %mediaobjectco.role.attrib;
+ %local.mediaobjectco.attrib;
+>
+<!--end of mediaobjectco.attlist-->]]>
+<!--end of mediaobjectco.module-->]]>
+
+<!ENTITY % imageobjectco.module "INCLUDE">
+<![ %imageobjectco.module; [
+<!ENTITY % local.imageobjectco.attrib "">
+<!ENTITY % imageobjectco.role.attrib "%role.attrib;">
+
+<!ENTITY % imageobjectco.element "INCLUDE">
+<![ %imageobjectco.element; [
+<!--doc:A wrapper for an image object with callouts.-->
+<!ELEMENT imageobjectco %ho; (areaspec, imageobject, calloutlist*)>
+<!--end of imageobjectco.element-->]]>
+
+<!ENTITY % imageobjectco.attlist "INCLUDE">
+<![ %imageobjectco.attlist; [
+<!ATTLIST imageobjectco
+ %common.attrib;
+ %imageobjectco.role.attrib;
+ %local.imageobjectco.attrib;
+>
+<!--end of imageobjectco.attlist-->]]>
+<!--end of imageobjectco.module-->]]>
+<!--end of mediaobject.content.module-->]]>
+
+<!-- Equations ........................ -->
+
+<!-- This PE provides a mechanism for replacing equation content, -->
+<!-- perhaps adding a new or different model (e.g., MathML) -->
+<!ENTITY % equation.content "(alt?, (graphic+|mediaobject+|mathphrase+))">
+<!ENTITY % inlineequation.content "(alt?, (graphic+|inlinemediaobject+|mathphrase+))">
+
+<!ENTITY % equation.module "INCLUDE">
+<![%equation.module;[
+<!ENTITY % local.equation.attrib "">
+<!ENTITY % equation.role.attrib "%role.attrib;">
+
+<!ENTITY % equation.element "INCLUDE">
+<![%equation.element;[
+<!--doc:A displayed mathematical equation.-->
+<!ELEMENT equation %ho; (blockinfo?, (%formalobject.title.content;)?,
+ (informalequation | %equation.content;))>
+<!--end of equation.element-->]]>
+
+<!ENTITY % equation.attlist "INCLUDE">
+<![%equation.attlist;[
+<!ATTLIST equation
+ floatstyle CDATA #IMPLIED
+ %label.attrib;
+ %common.attrib;
+ %equation.role.attrib;
+ %local.equation.attrib;
+>
+<!--end of equation.attlist-->]]>
+<!--end of equation.module-->]]>
+
+<!ENTITY % informalequation.module "INCLUDE">
+<![%informalequation.module;[
+<!ENTITY % local.informalequation.attrib "">
+<!ENTITY % informalequation.role.attrib "%role.attrib;">
+
+<!ENTITY % informalequation.element "INCLUDE">
+<![%informalequation.element;[
+<!--doc:A displayed mathematical equation without a title.-->
+<!ELEMENT informalequation %ho; (blockinfo?, %equation.content;) >
+<!--end of informalequation.element-->]]>
+
+<!ENTITY % informalequation.attlist "INCLUDE">
+<![%informalequation.attlist;[
+<!ATTLIST informalequation
+ floatstyle CDATA #IMPLIED
+ %common.attrib;
+ %informalequation.role.attrib;
+ %local.informalequation.attrib;
+>
+<!--end of informalequation.attlist-->]]>
+<!--end of informalequation.module-->]]>
+
+<!ENTITY % inlineequation.module "INCLUDE">
+<![%inlineequation.module;[
+<!ENTITY % local.inlineequation.attrib "">
+<!ENTITY % inlineequation.role.attrib "%role.attrib;">
+
+<!ENTITY % inlineequation.element "INCLUDE">
+<![%inlineequation.element;[
+<!--doc:A mathematical equation or expression occurring inline.-->
+<!ELEMENT inlineequation %ho; (%inlineequation.content;)>
+<!--end of inlineequation.element-->]]>
+
+<!ENTITY % inlineequation.attlist "INCLUDE">
+<![%inlineequation.attlist;[
+<!ATTLIST inlineequation
+ %common.attrib;
+ %inlineequation.role.attrib;
+ %local.inlineequation.attrib;
+>
+<!--end of inlineequation.attlist-->]]>
+<!--end of inlineequation.module-->]]>
+
+<!ENTITY % alt.module "INCLUDE">
+<![%alt.module;[
+<!ENTITY % local.alt.attrib "">
+<!ENTITY % alt.role.attrib "%role.attrib;">
+
+<!ENTITY % alt.element "INCLUDE">
+<![%alt.element;[
+<!--doc:Text representation for a graphical element.-->
+<!ELEMENT alt %ho; (#PCDATA)>
+<!--end of alt.element-->]]>
+
+<!ENTITY % alt.attlist "INCLUDE">
+<![%alt.attlist;[
+<!ATTLIST alt
+ %common.attrib;
+ %alt.role.attrib;
+ %local.alt.attrib;
+>
+<!--end of alt.attlist-->]]>
+<!--end of alt.module-->]]>
+
+<!ENTITY % mathphrase.module "INCLUDE">
+<![%mathphrase.module;[
+<!ENTITY % local.mathphrase.attrib "">
+<!ENTITY % mathphrase.role.attrib "%role.attrib;">
+
+<!ENTITY % mathphrase.element "INCLUDE">
+<![%mathphrase.element;[
+<!--doc:A mathematical phrase, an expression that can be represented with ordinary text and a small amount of markup.-->
+<!ELEMENT mathphrase %ho; (#PCDATA|subscript|superscript|emphasis)*>
+<!--end of mathphrase.element-->]]>
+
+<!ENTITY % mathphrase.attlist "INCLUDE">
+<![%mathphrase.attlist;[
+<!ATTLIST mathphrase
+ %common.attrib;
+ %mathphrase.role.attrib;
+ %local.mathphrase.attrib;
+>
+<!--end of mathphrase.attlist-->]]>
+<!--end of mathphrase.module-->]]>
+
+<!-- Tables ........................... -->
+
+<!ENTITY % table.module "INCLUDE">
+<![%table.module;[
+
+<!-- Choose a table model. CALS or OASIS XML Exchange -->
+
+<!ENTITY % cals.table.module "INCLUDE">
+<![%cals.table.module;[
+<!ENTITY % exchange.table.module "IGNORE">
+]]>
+<!ENTITY % exchange.table.module "INCLUDE">
+
+<!-- Do we allow the HTML table model as well? -->
+<!ENTITY % allow.html.tables "INCLUDE">
+<![%allow.html.tables;[
+ <!-- ====================================================== -->
+ <!-- xhtmltbl.mod defines HTML tables and sets parameter
+ entities so that, when the CALS table module is read,
+ we end up allowing any table to be CALS or HTML.
+ i.e. This include must come first! -->
+ <!-- ====================================================== -->
+
+<!ENTITY % htmltbl
+ PUBLIC "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN"
+ "htmltblx.mod">
+%htmltbl;
+<!--end of allow.html.tables-->]]>
+
+<!ENTITY % tables.role.attrib "%role.attrib;">
+
+<![%cals.table.module;[
+<!-- Add label and role attributes to table and informaltable -->
+<!ENTITY % bodyatt "
+ floatstyle CDATA #IMPLIED
+ rowheader (firstcol|norowheader) #IMPLIED
+ %label.attrib;"
+>
+
+<!-- Add common attributes to Table, TGroup, TBody, THead, TFoot, Row,
+ EntryTbl, and Entry (and InformalTable element). -->
+<!ENTITY % secur
+ "%common.attrib;
+ %tables.role.attrib;">
+
+<!ENTITY % common.table.attribs
+ "%bodyatt;
+ %secur;">
+
+<!-- Content model for Table. -->
+<!ENTITY % tbl.table.mdl
+ "(blockinfo?, (%formalobject.title.content;), (%ndxterm.class;)*,
+ textobject*,
+ (graphic+|mediaobject+|tgroup+))">
+
+<!-- Allow either objects or inlines; beware of REs between elements. -->
+<!ENTITY % tbl.entry.mdl "%para.char.mix; | %tabentry.mix;">
+
+<!-- Reference CALS Table Model -->
+<!ENTITY % tablemodel
+ PUBLIC "-//OASIS//DTD DocBook CALS Table Model V4.5//EN"
+ "calstblx.dtd">
+]]>
+
+<![%exchange.table.module;[
+<!-- Add common attributes and the Label attribute to Table and -->
+<!-- InformalTable. -->
+<!ENTITY % bodyatt
+ "%common.attrib;
+ rowheader (firstcol|norowheader) #IMPLIED
+ %label.attrib;
+ %tables.role.attrib;">
+
+<!ENTITY % common.table.attribs
+ "%bodyatt;">
+
+<!-- Add common attributes to TGroup, ColSpec, TBody, THead, Row, Entry -->
+
+<!ENTITY % tbl.tgroup.att "%common.attrib;">
+<!ENTITY % tbl.colspec.att "%common.attrib;">
+<!ENTITY % tbl.tbody.att "%common.attrib;">
+<!ENTITY % tbl.thead.att "%common.attrib;">
+<!ENTITY % tbl.row.att "%common.attrib;">
+<!ENTITY % tbl.entry.att "%common.attrib;">
+
+<!-- Content model for Table. -->
+<!ENTITY % tbl.table.mdl
+ "(blockinfo?, (%formalobject.title.content;), (%ndxterm.class;)*,
+ textobject*,
+ (graphic+|mediaobject+|tgroup+))">
+
+<!-- Allow either objects or inlines; beware of REs between elements. -->
+<!ENTITY % tbl.entry.mdl "(%para.char.mix; | %tabentry.mix;)*">
+
+<!-- Reference OASIS Exchange Table Model -->
+<!ENTITY % tablemodel
+ PUBLIC "-//OASIS//DTD XML Exchange Table Model 19990315//EN"
+ "soextblx.dtd">
+]]>
+
+%tablemodel;
+
+<!--end of table.module-->]]>
+
+<!ENTITY % informaltable.module "INCLUDE">
+<![%informaltable.module;[
+
+<!-- Note that InformalTable is dependent on some of the entity
+ declarations that customize Table. -->
+
+<!ENTITY % local.informaltable.attrib "">
+
+<!-- the following entity may have been declared by the XHTML table module -->
+<!ENTITY % informal.tbl.table.mdl "textobject*, (graphic+|mediaobject+|tgroup+)">
+
+<!ENTITY % informaltable.element "INCLUDE">
+<![%informaltable.element;[
+<!--doc:A table without a title.-->
+<!ELEMENT informaltable %ho; (blockinfo?, (%informal.tbl.table.mdl;))>
+<!--end of informaltable.element-->]]>
+
+<!-- Frame, Colsep, and Rowsep must be repeated because
+ they are not in entities in the table module. -->
+<!-- includes TabStyle, ToCentry, ShortEntry,
+ Orient, PgWide -->
+<!-- includes Label -->
+<!-- includes common attributes -->
+
+<!ENTITY % informaltable.attlist "INCLUDE">
+<![%informaltable.attlist;[
+<!ATTLIST informaltable
+ frame (%tbl.frame.attval;) #IMPLIED
+ colsep %yesorno.attvals; #IMPLIED
+ rowsep %yesorno.attvals; #IMPLIED
+ %common.table.attribs;
+ %tbl.table.att;
+ %local.informaltable.attrib;
+>
+<!--end of informaltable.attlist-->]]>
+<!--end of informaltable.module-->]]>
+
+<!ENTITY % caption.module "INCLUDE">
+<![ %caption.module; [
+<!ENTITY % local.caption.attrib "">
+<!ENTITY % caption.role.attrib "%role.attrib;">
+
+<!ENTITY % caption.element "INCLUDE">
+<![ %caption.element; [
+<!--doc:A caption.-->
+<!ELEMENT caption %ho; (#PCDATA | %textobject.mix;)*>
+<!--end of caption.element-->]]>
+
+<!ENTITY % caption.attlist "INCLUDE">
+<![ %caption.attlist; [
+<!-- attrs comes from HTML tables ... -->
+
+<![ %allow.html.tables; [
+<!-- common.attrib, but without ID because ID is in attrs -->
+<!ENTITY % caption.attlist.content "
+ %caption.role.attrib;
+ %attrs;
+ align (top|bottom|left|right) #IMPLIED
+ %local.caption.attrib;
+">
+]]>
+<!ENTITY % caption.attlist.content "
+ %common.attrib;
+ %caption.role.attrib;
+ %local.caption.attrib;
+">
+
+<!ATTLIST caption %caption.attlist.content;>
+
+<!--end of caption.attlist-->]]>
+<!--end of caption.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Synopses ............................................................. -->
+
+<!-- Synopsis ......................... -->
+
+<!ENTITY % synopsis.module "INCLUDE">
+<![%synopsis.module;[
+<!ENTITY % local.synopsis.attrib "">
+<!ENTITY % synopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % synopsis.element "INCLUDE">
+<![%synopsis.element;[
+<!--doc:A general-purpose element for representing the syntax of commands or functions.-->
+<!ELEMENT synopsis %ho; (%para.char.mix;|graphic|mediaobject|co|coref|textobject|lineannotation)*>
+<!--end of synopsis.element-->]]>
+
+<!ENTITY % synopsis.attlist "INCLUDE">
+<![%synopsis.attlist;[
+<!ATTLIST synopsis
+ %label.attrib;
+ %linespecific.attrib;
+ %common.attrib;
+ %synopsis.role.attrib;
+ %local.synopsis.attrib;
+>
+<!--end of synopsis.attlist-->]]>
+
+<!-- LineAnnotation (defined in the Inlines section, below)-->
+<!--end of synopsis.module-->]]>
+
+<!-- CmdSynopsis ...................... -->
+
+<!ENTITY % cmdsynopsis.content.module "INCLUDE">
+<![%cmdsynopsis.content.module;[
+<!ENTITY % cmdsynopsis.module "INCLUDE">
+<![%cmdsynopsis.module;[
+<!ENTITY % local.cmdsynopsis.attrib "">
+<!ENTITY % cmdsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % cmdsynopsis.element "INCLUDE">
+<![%cmdsynopsis.element;[
+<!--doc:A syntax summary for a software command.-->
+<!ELEMENT cmdsynopsis %ho; ((command | arg | group | sbr)+, synopfragment*)>
+<!--end of cmdsynopsis.element-->]]>
+
+<!-- Sepchar: Character that should separate command and all
+ top-level arguments; alternate value might be e.g., &Delta; -->
+
+
+<!ENTITY % cmdsynopsis.attlist "INCLUDE">
+<![%cmdsynopsis.attlist;[
+<!ATTLIST cmdsynopsis
+ %label.attrib;
+ sepchar CDATA " "
+ cmdlength CDATA #IMPLIED
+ %common.attrib;
+ %cmdsynopsis.role.attrib;
+ %local.cmdsynopsis.attrib;
+>
+<!--end of cmdsynopsis.attlist-->]]>
+<!--end of cmdsynopsis.module-->]]>
+
+<!ENTITY % arg.module "INCLUDE">
+<![%arg.module;[
+<!ENTITY % local.arg.attrib "">
+<!ENTITY % arg.role.attrib "%role.attrib;">
+
+<!ENTITY % arg.element "INCLUDE">
+<![%arg.element;[
+<!--doc:An argument in a CmdSynopsis.-->
+<!ELEMENT arg %ho; (#PCDATA
+ | arg
+ | group
+ | option
+ | synopfragmentref
+ | replaceable
+ | sbr)*>
+<!--end of arg.element-->]]>
+
+<!-- Choice: Whether Arg must be supplied: Opt (optional to
+ supply, e.g. [arg]; the default), Req (required to supply,
+ e.g. {arg}), or Plain (required to supply, e.g. arg) -->
+<!-- Rep: whether Arg is repeatable: Norepeat (e.g. arg without
+ ellipsis; the default), or Repeat (e.g. arg...) -->
+
+
+<!ENTITY % arg.attlist "INCLUDE">
+<![%arg.attlist;[
+<!ATTLIST arg
+ choice (opt
+ |req
+ |plain) 'opt'
+ rep (norepeat
+ |repeat) 'norepeat'
+ %common.attrib;
+ %arg.role.attrib;
+ %local.arg.attrib;
+>
+<!--end of arg.attlist-->]]>
+<!--end of arg.module-->]]>
+
+<!ENTITY % group.module "INCLUDE">
+<![%group.module;[
+
+<!ENTITY % local.group.attrib "">
+<!ENTITY % group.role.attrib "%role.attrib;">
+
+<!ENTITY % group.element "INCLUDE">
+<![%group.element;[
+<!--doc:A group of elements in a CmdSynopsis.-->
+<!ELEMENT group %ho; ((arg | group | option | synopfragmentref
+ | replaceable | sbr)+)>
+<!--end of group.element-->]]>
+
+<!-- Choice: Whether Group must be supplied: Opt (optional to
+ supply, e.g. [g1|g2|g3]; the default), Req (required to
+ supply, e.g. {g1|g2|g3}), Plain (required to supply,
+ e.g. g1|g2|g3), OptMult (can supply zero or more, e.g.
+ [[g1|g2|g3]]), or ReqMult (must supply one or more, e.g.
+ {{g1|g2|g3}}) -->
+<!-- Rep: whether Group is repeatable: Norepeat (e.g. group
+ without ellipsis; the default), or Repeat (e.g. group...) -->
+
+
+<!ENTITY % group.attlist "INCLUDE">
+<![%group.attlist;[
+<!ATTLIST group
+ choice (opt
+ |req
+ |plain) 'opt'
+ rep (norepeat
+ |repeat) 'norepeat'
+ %common.attrib;
+ %group.role.attrib;
+ %local.group.attrib;
+>
+<!--end of group.attlist-->]]>
+<!--end of group.module-->]]>
+
+<!ENTITY % sbr.module "INCLUDE">
+<![%sbr.module;[
+<!ENTITY % local.sbr.attrib "">
+<!-- Synopsis break -->
+<!ENTITY % sbr.role.attrib "%role.attrib;">
+
+<!ENTITY % sbr.element "INCLUDE">
+<![%sbr.element;[
+<!--doc:An explicit line break in a command synopsis.-->
+<!ELEMENT sbr %ho; EMPTY>
+<!--end of sbr.element-->]]>
+
+<!ENTITY % sbr.attlist "INCLUDE">
+<![%sbr.attlist;[
+<!ATTLIST sbr
+ %common.attrib;
+ %sbr.role.attrib;
+ %local.sbr.attrib;
+>
+<!--end of sbr.attlist-->]]>
+<!--end of sbr.module-->]]>
+
+<!ENTITY % synopfragmentref.module "INCLUDE">
+<![%synopfragmentref.module;[
+<!ENTITY % local.synopfragmentref.attrib "">
+<!ENTITY % synopfragmentref.role.attrib "%role.attrib;">
+
+<!ENTITY % synopfragmentref.element "INCLUDE">
+<![%synopfragmentref.element;[
+<!--doc:A reference to a fragment of a command synopsis.-->
+<!ELEMENT synopfragmentref %ho; (#PCDATA)>
+<!--end of synopfragmentref.element-->]]>
+
+<!-- to SynopFragment of complex synopsis
+ material for separate referencing -->
+
+
+<!ENTITY % synopfragmentref.attlist "INCLUDE">
+<![%synopfragmentref.attlist;[
+<!ATTLIST synopfragmentref
+ %linkendreq.attrib; %common.attrib;
+ %synopfragmentref.role.attrib;
+ %local.synopfragmentref.attrib;
+>
+<!--end of synopfragmentref.attlist-->]]>
+<!--end of synopfragmentref.module-->]]>
+
+<!ENTITY % synopfragment.module "INCLUDE">
+<![%synopfragment.module;[
+<!ENTITY % local.synopfragment.attrib "">
+<!ENTITY % synopfragment.role.attrib "%role.attrib;">
+
+<!ENTITY % synopfragment.element "INCLUDE">
+<![%synopfragment.element;[
+<!--doc:A portion of a CmdSynopsis broken out from the main body of the synopsis.-->
+<!ELEMENT synopfragment %ho; ((arg | group)+)>
+<!--end of synopfragment.element-->]]>
+
+<!ENTITY % synopfragment.attlist "INCLUDE">
+<![%synopfragment.attlist;[
+<!ATTLIST synopfragment
+ %idreq.common.attrib;
+ %synopfragment.role.attrib;
+ %local.synopfragment.attrib;
+>
+<!--end of synopfragment.attlist-->]]>
+<!--end of synopfragment.module-->]]>
+
+<!-- Command (defined in the Inlines section, below)-->
+<!-- Option (defined in the Inlines section, below)-->
+<!-- Replaceable (defined in the Inlines section, below)-->
+<!--end of cmdsynopsis.content.module-->]]>
+
+<!-- FuncSynopsis ..................... -->
+
+<!ENTITY % funcsynopsis.content.module "INCLUDE">
+<![%funcsynopsis.content.module;[
+<!ENTITY % funcsynopsis.module "INCLUDE">
+<![%funcsynopsis.module;[
+
+<!ENTITY % local.funcsynopsis.attrib "">
+<!ENTITY % funcsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % funcsynopsis.element "INCLUDE">
+<![%funcsynopsis.element;[
+<!--doc:The syntax summary for a function definition.-->
+<!ELEMENT funcsynopsis %ho; ((funcsynopsisinfo | funcprototype)+)>
+<!--end of funcsynopsis.element-->]]>
+
+<!ENTITY % funcsynopsis.attlist "INCLUDE">
+<![%funcsynopsis.attlist;[
+<!ATTLIST funcsynopsis
+ %label.attrib;
+ %common.attrib;
+ %funcsynopsis.role.attrib;
+ %local.funcsynopsis.attrib;
+>
+<!--end of funcsynopsis.attlist-->]]>
+<!--end of funcsynopsis.module-->]]>
+
+<!ENTITY % funcsynopsisinfo.module "INCLUDE">
+<![%funcsynopsisinfo.module;[
+<!ENTITY % local.funcsynopsisinfo.attrib "">
+<!ENTITY % funcsynopsisinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % funcsynopsisinfo.element "INCLUDE">
+<![%funcsynopsisinfo.element;[
+<!--doc:Information supplementing the FuncDefs of a FuncSynopsis.-->
+<!ELEMENT funcsynopsisinfo %ho; (%cptr.char.mix;|textobject|lineannotation)*>
+<!--end of funcsynopsisinfo.element-->]]>
+
+<!ENTITY % funcsynopsisinfo.attlist "INCLUDE">
+<![%funcsynopsisinfo.attlist;[
+<!ATTLIST funcsynopsisinfo
+ %linespecific.attrib;
+ %common.attrib;
+ %funcsynopsisinfo.role.attrib;
+ %local.funcsynopsisinfo.attrib;
+>
+<!--end of funcsynopsisinfo.attlist-->]]>
+<!--end of funcsynopsisinfo.module-->]]>
+
+<!ENTITY % funcprototype.module "INCLUDE">
+<![%funcprototype.module;[
+<!ENTITY % local.funcprototype.attrib "">
+<!ENTITY % funcprototype.role.attrib "%role.attrib;">
+
+<!ENTITY % funcprototype.element "INCLUDE">
+<![%funcprototype.element;[
+<!--doc:The prototype of a function.-->
+<!ELEMENT funcprototype %ho; (modifier*,
+ funcdef,
+ (void|varargs|(paramdef+, varargs?)),
+ modifier*)>
+
+<!--end of funcprototype.element-->]]>
+
+<!ENTITY % funcprototype.attlist "INCLUDE">
+<![%funcprototype.attlist;[
+<!ATTLIST funcprototype
+ %common.attrib;
+ %funcprototype.role.attrib;
+ %local.funcprototype.attrib;
+>
+<!--end of funcprototype.attlist-->]]>
+<!--end of funcprototype.module-->]]>
+
+<!ENTITY % funcdef.module "INCLUDE">
+<![%funcdef.module;[
+<!ENTITY % local.funcdef.attrib "">
+<!ENTITY % funcdef.role.attrib "%role.attrib;">
+
+<!ENTITY % funcdef.element "INCLUDE">
+<![%funcdef.element;[
+<!--doc:A function (subroutine) name and its return type.-->
+<!ELEMENT funcdef %ho; (#PCDATA
+ | type
+ | replaceable
+ | function)*>
+<!--end of funcdef.element-->]]>
+
+<!ENTITY % funcdef.attlist "INCLUDE">
+<![%funcdef.attlist;[
+<!ATTLIST funcdef
+ %common.attrib;
+ %funcdef.role.attrib;
+ %local.funcdef.attrib;
+>
+<!--end of funcdef.attlist-->]]>
+<!--end of funcdef.module-->]]>
+
+<!ENTITY % void.module "INCLUDE">
+<![%void.module;[
+<!ENTITY % local.void.attrib "">
+<!ENTITY % void.role.attrib "%role.attrib;">
+
+<!ENTITY % void.element "INCLUDE">
+<![%void.element;[
+<!--doc:An empty element in a function synopsis indicating that the function in question takes no arguments.-->
+<!ELEMENT void %ho; EMPTY>
+<!--end of void.element-->]]>
+
+<!ENTITY % void.attlist "INCLUDE">
+<![%void.attlist;[
+<!ATTLIST void
+ %common.attrib;
+ %void.role.attrib;
+ %local.void.attrib;
+>
+<!--end of void.attlist-->]]>
+<!--end of void.module-->]]>
+
+<!ENTITY % varargs.module "INCLUDE">
+<![%varargs.module;[
+<!ENTITY % local.varargs.attrib "">
+<!ENTITY % varargs.role.attrib "%role.attrib;">
+
+<!ENTITY % varargs.element "INCLUDE">
+<![%varargs.element;[
+<!--doc:An empty element in a function synopsis indicating a variable number of arguments.-->
+<!ELEMENT varargs %ho; EMPTY>
+<!--end of varargs.element-->]]>
+
+<!ENTITY % varargs.attlist "INCLUDE">
+<![%varargs.attlist;[
+<!ATTLIST varargs
+ %common.attrib;
+ %varargs.role.attrib;
+ %local.varargs.attrib;
+>
+<!--end of varargs.attlist-->]]>
+<!--end of varargs.module-->]]>
+
+<!-- Processing assumes that only one Parameter will appear in a
+ ParamDef, and that FuncParams will be used at most once, for
+ providing information on the "inner parameters" for parameters that
+ are pointers to functions. -->
+
+<!ENTITY % paramdef.module "INCLUDE">
+<![%paramdef.module;[
+<!ENTITY % local.paramdef.attrib "">
+<!ENTITY % paramdef.role.attrib "%role.attrib;">
+
+<!ENTITY % paramdef.element "INCLUDE">
+<![%paramdef.element;[
+<!--doc:Information about a function parameter in a programming language.-->
+<!ELEMENT paramdef %ho; (#PCDATA
+ | initializer
+ | type
+ | replaceable
+ | parameter
+ | funcparams)*>
+<!--end of paramdef.element-->]]>
+
+<!ENTITY % paramdef.attlist "INCLUDE">
+<![%paramdef.attlist;[
+<!ATTLIST paramdef
+ choice (opt
+ |req) #IMPLIED
+ %common.attrib;
+ %paramdef.role.attrib;
+ %local.paramdef.attrib;
+>
+<!--end of paramdef.attlist-->]]>
+<!--end of paramdef.module-->]]>
+
+<!ENTITY % funcparams.module "INCLUDE">
+<![%funcparams.module;[
+<!ENTITY % local.funcparams.attrib "">
+<!ENTITY % funcparams.role.attrib "%role.attrib;">
+
+<!ENTITY % funcparams.element "INCLUDE">
+<![%funcparams.element;[
+<!--doc:Parameters for a function referenced through a function pointer in a synopsis.-->
+<!ELEMENT funcparams %ho; (%cptr.char.mix;)*>
+<!--end of funcparams.element-->]]>
+
+<!ENTITY % funcparams.attlist "INCLUDE">
+<![%funcparams.attlist;[
+<!ATTLIST funcparams
+ %common.attrib;
+ %funcparams.role.attrib;
+ %local.funcparams.attrib;
+>
+<!--end of funcparams.attlist-->]]>
+<!--end of funcparams.module-->]]>
+
+<!-- LineAnnotation (defined in the Inlines section, below)-->
+<!-- Replaceable (defined in the Inlines section, below)-->
+<!-- Function (defined in the Inlines section, below)-->
+<!-- Parameter (defined in the Inlines section, below)-->
+<!--end of funcsynopsis.content.module-->]]>
+
+<!-- ClassSynopsis ..................... -->
+
+<!ENTITY % classsynopsis.content.module "INCLUDE">
+<![%classsynopsis.content.module;[
+
+<!ENTITY % classsynopsis.module "INCLUDE">
+<![%classsynopsis.module;[
+<!ENTITY % local.classsynopsis.attrib "">
+<!ENTITY % classsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % classsynopsis.element "INCLUDE">
+<![%classsynopsis.element;[
+<!--doc:The syntax summary for a class definition.-->
+<!ELEMENT classsynopsis %ho; ((ooclass|oointerface|ooexception)+,
+ (classsynopsisinfo
+ |fieldsynopsis|%method.synop.class;)*)>
+<!--end of classsynopsis.element-->]]>
+
+<!ENTITY % classsynopsis.attlist "INCLUDE">
+<![%classsynopsis.attlist;[
+<!ATTLIST classsynopsis
+ language CDATA #IMPLIED
+ class (class|interface) "class"
+ %common.attrib;
+ %classsynopsis.role.attrib;
+ %local.classsynopsis.attrib;
+>
+<!--end of classsynopsis.attlist-->]]>
+<!--end of classsynopsis.module-->]]>
+
+<!ENTITY % classsynopsisinfo.module "INCLUDE">
+<![ %classsynopsisinfo.module; [
+<!ENTITY % local.classsynopsisinfo.attrib "">
+<!ENTITY % classsynopsisinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % classsynopsisinfo.element "INCLUDE">
+<![ %classsynopsisinfo.element; [
+<!--doc:Information supplementing the contents of a ClassSynopsis.-->
+<!ELEMENT classsynopsisinfo %ho; (%cptr.char.mix;|textobject|lineannotation)*>
+<!--end of classsynopsisinfo.element-->]]>
+
+<!ENTITY % classsynopsisinfo.attlist "INCLUDE">
+<![ %classsynopsisinfo.attlist; [
+<!ATTLIST classsynopsisinfo
+ %linespecific.attrib;
+ %common.attrib;
+ %classsynopsisinfo.role.attrib;
+ %local.classsynopsisinfo.attrib;
+>
+<!--end of classsynopsisinfo.attlist-->]]>
+<!--end of classsynopsisinfo.module-->]]>
+
+<!ENTITY % ooclass.module "INCLUDE">
+<![%ooclass.module;[
+<!ENTITY % local.ooclass.attrib "">
+<!ENTITY % ooclass.role.attrib "%role.attrib;">
+
+<!ENTITY % ooclass.element "INCLUDE">
+<![%ooclass.element;[
+<!--doc:A class in an object-oriented programming language.-->
+<!ELEMENT ooclass %ho; ((modifier|package)*, classname)>
+<!--end of ooclass.element-->]]>
+
+<!ENTITY % ooclass.attlist "INCLUDE">
+<![%ooclass.attlist;[
+<!ATTLIST ooclass
+ %common.attrib;
+ %ooclass.role.attrib;
+ %local.ooclass.attrib;
+>
+<!--end of ooclass.attlist-->]]>
+<!--end of ooclass.module-->]]>
+
+<!ENTITY % oointerface.module "INCLUDE">
+<![%oointerface.module;[
+<!ENTITY % local.oointerface.attrib "">
+<!ENTITY % oointerface.role.attrib "%role.attrib;">
+
+<!ENTITY % oointerface.element "INCLUDE">
+<![%oointerface.element;[
+<!--doc:An interface in an object-oriented programming language.-->
+<!ELEMENT oointerface %ho; ((modifier|package)*, interfacename)>
+<!--end of oointerface.element-->]]>
+
+<!ENTITY % oointerface.attlist "INCLUDE">
+<![%oointerface.attlist;[
+<!ATTLIST oointerface
+ %common.attrib;
+ %oointerface.role.attrib;
+ %local.oointerface.attrib;
+>
+<!--end of oointerface.attlist-->]]>
+<!--end of oointerface.module-->]]>
+
+<!ENTITY % ooexception.module "INCLUDE">
+<![%ooexception.module;[
+<!ENTITY % local.ooexception.attrib "">
+<!ENTITY % ooexception.role.attrib "%role.attrib;">
+
+<!ENTITY % ooexception.element "INCLUDE">
+<![%ooexception.element;[
+<!--doc:An exception in an object-oriented programming language.-->
+<!ELEMENT ooexception %ho; ((modifier|package)*, exceptionname)>
+<!--end of ooexception.element-->]]>
+
+<!ENTITY % ooexception.attlist "INCLUDE">
+<![%ooexception.attlist;[
+<!ATTLIST ooexception
+ %common.attrib;
+ %ooexception.role.attrib;
+ %local.ooexception.attrib;
+>
+<!--end of ooexception.attlist-->]]>
+<!--end of ooexception.module-->]]>
+
+<!ENTITY % modifier.module "INCLUDE">
+<![%modifier.module;[
+<!ENTITY % local.modifier.attrib "">
+<!ENTITY % modifier.role.attrib "%role.attrib;">
+
+<!ENTITY % modifier.element "INCLUDE">
+<![%modifier.element;[
+<!--doc:Modifiers in a synopsis.-->
+<!ELEMENT modifier %ho; (%smallcptr.char.mix;)*>
+<!--end of modifier.element-->]]>
+
+<!ENTITY % modifier.attlist "INCLUDE">
+<![%modifier.attlist;[
+<!ATTLIST modifier
+ %common.attrib;
+ %modifier.role.attrib;
+ %local.modifier.attrib;
+>
+<!--end of modifier.attlist-->]]>
+<!--end of modifier.module-->]]>
+
+<!ENTITY % interfacename.module "INCLUDE">
+<![%interfacename.module;[
+<!ENTITY % local.interfacename.attrib "">
+<!ENTITY % interfacename.role.attrib "%role.attrib;">
+
+<!ENTITY % interfacename.element "INCLUDE">
+<![%interfacename.element;[
+<!--doc:The name of an interface.-->
+<!ELEMENT interfacename %ho; (%cptr.char.mix;)*>
+<!--end of interfacename.element-->]]>
+
+<!ENTITY % interfacename.attlist "INCLUDE">
+<![%interfacename.attlist;[
+<!ATTLIST interfacename
+ %common.attrib;
+ %interfacename.role.attrib;
+ %local.interfacename.attrib;
+>
+<!--end of interfacename.attlist-->]]>
+<!--end of interfacename.module-->]]>
+
+<!ENTITY % exceptionname.module "INCLUDE">
+<![%exceptionname.module;[
+<!ENTITY % local.exceptionname.attrib "">
+<!ENTITY % exceptionname.role.attrib "%role.attrib;">
+
+<!ENTITY % exceptionname.element "INCLUDE">
+<![%exceptionname.element;[
+<!--doc:The name of an exception.-->
+<!ELEMENT exceptionname %ho; (%smallcptr.char.mix;)*>
+<!--end of exceptionname.element-->]]>
+
+<!ENTITY % exceptionname.attlist "INCLUDE">
+<![%exceptionname.attlist;[
+<!ATTLIST exceptionname
+ %common.attrib;
+ %exceptionname.role.attrib;
+ %local.exceptionname.attrib;
+>
+<!--end of exceptionname.attlist-->]]>
+<!--end of exceptionname.module-->]]>
+
+<!ENTITY % fieldsynopsis.module "INCLUDE">
+<![%fieldsynopsis.module;[
+<!ENTITY % local.fieldsynopsis.attrib "">
+<!ENTITY % fieldsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % fieldsynopsis.element "INCLUDE">
+<![%fieldsynopsis.element;[
+<!--doc:The name of a field in a class definition.-->
+<!ELEMENT fieldsynopsis %ho; (modifier*, type?, varname, initializer?)>
+<!--end of fieldsynopsis.element-->]]>
+
+<!ENTITY % fieldsynopsis.attlist "INCLUDE">
+<![%fieldsynopsis.attlist;[
+<!ATTLIST fieldsynopsis
+ language CDATA #IMPLIED
+ %common.attrib;
+ %fieldsynopsis.role.attrib;
+ %local.fieldsynopsis.attrib;
+>
+<!--end of fieldsynopsis.attlist-->]]>
+<!--end of fieldsynopsis.module-->]]>
+
+<!ENTITY % initializer.module "INCLUDE">
+<![%initializer.module;[
+<!ENTITY % local.initializer.attrib "">
+<!ENTITY % initializer.role.attrib "%role.attrib;">
+
+<!ENTITY % initializer.element "INCLUDE">
+<![%initializer.element;[
+<!--doc:The initializer for a FieldSynopsis.-->
+<!ELEMENT initializer %ho; (%smallcptr.char.mix;)*>
+<!--end of initializer.element-->]]>
+
+<!ENTITY % initializer.attlist "INCLUDE">
+<![%initializer.attlist;[
+<!ATTLIST initializer
+ %common.attrib;
+ %initializer.role.attrib;
+ %local.initializer.attrib;
+>
+<!--end of initializer.attlist-->]]>
+<!--end of initializer.module-->]]>
+
+<!ENTITY % constructorsynopsis.module "INCLUDE">
+<![%constructorsynopsis.module;[
+<!ENTITY % local.constructorsynopsis.attrib "">
+<!ENTITY % constructorsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % constructorsynopsis.element "INCLUDE">
+<![%constructorsynopsis.element;[
+<!--doc:A syntax summary for a constructor.-->
+<!ELEMENT constructorsynopsis %ho; (modifier*,
+ methodname?,
+ (methodparam+|void?),
+ exceptionname*)>
+<!--end of constructorsynopsis.element-->]]>
+
+<!ENTITY % constructorsynopsis.attlist "INCLUDE">
+<![%constructorsynopsis.attlist;[
+<!ATTLIST constructorsynopsis
+ language CDATA #IMPLIED
+ %common.attrib;
+ %constructorsynopsis.role.attrib;
+ %local.constructorsynopsis.attrib;
+>
+<!--end of constructorsynopsis.attlist-->]]>
+<!--end of constructorsynopsis.module-->]]>
+
+<!ENTITY % destructorsynopsis.module "INCLUDE">
+<![%destructorsynopsis.module;[
+<!ENTITY % local.destructorsynopsis.attrib "">
+<!ENTITY % destructorsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % destructorsynopsis.element "INCLUDE">
+<![%destructorsynopsis.element;[
+<!--doc:A syntax summary for a destructor.-->
+<!ELEMENT destructorsynopsis %ho; (modifier*,
+ methodname?,
+ (methodparam+|void?),
+ exceptionname*)>
+<!--end of destructorsynopsis.element-->]]>
+
+<!ENTITY % destructorsynopsis.attlist "INCLUDE">
+<![%destructorsynopsis.attlist;[
+<!ATTLIST destructorsynopsis
+ language CDATA #IMPLIED
+ %common.attrib;
+ %destructorsynopsis.role.attrib;
+ %local.destructorsynopsis.attrib;
+>
+<!--end of destructorsynopsis.attlist-->]]>
+<!--end of destructorsynopsis.module-->]]>
+
+<!ENTITY % methodsynopsis.module "INCLUDE">
+<![%methodsynopsis.module;[
+<!ENTITY % local.methodsynopsis.attrib "">
+<!ENTITY % methodsynopsis.role.attrib "%role.attrib;">
+
+<!ENTITY % methodsynopsis.element "INCLUDE">
+<![%methodsynopsis.element;[
+<!--doc:A syntax summary for a method.-->
+<!ELEMENT methodsynopsis %ho; (modifier*,
+ (type|void)?,
+ methodname,
+ (methodparam+|void?),
+ exceptionname*,
+ modifier*)>
+<!--end of methodsynopsis.element-->]]>
+
+<!ENTITY % methodsynopsis.attlist "INCLUDE">
+<![%methodsynopsis.attlist;[
+<!ATTLIST methodsynopsis
+ language CDATA #IMPLIED
+ %common.attrib;
+ %methodsynopsis.role.attrib;
+ %local.methodsynopsis.attrib;
+>
+<!--end of methodsynopsis.attlist-->]]>
+<!--end of methodsynopsis.module-->]]>
+
+<!ENTITY % methodname.module "INCLUDE">
+<![%methodname.module;[
+<!ENTITY % local.methodname.attrib "">
+<!ENTITY % methodname.role.attrib "%role.attrib;">
+
+<!ENTITY % methodname.element "INCLUDE">
+<![%methodname.element;[
+<!--doc:The name of a method.-->
+<!ELEMENT methodname %ho; (%smallcptr.char.mix;)*>
+<!--end of methodname.element-->]]>
+
+<!ENTITY % methodname.attlist "INCLUDE">
+<![%methodname.attlist;[
+<!ATTLIST methodname
+ %common.attrib;
+ %methodname.role.attrib;
+ %local.methodname.attrib;
+>
+<!--end of methodname.attlist-->]]>
+<!--end of methodname.module-->]]>
+
+<!ENTITY % methodparam.module "INCLUDE">
+<![%methodparam.module;[
+<!ENTITY % local.methodparam.attrib "">
+<!ENTITY % methodparam.role.attrib "%role.attrib;">
+
+<!ENTITY % methodparam.element "INCLUDE">
+<![%methodparam.element;[
+<!--doc:Parameters to a method.-->
+<!ELEMENT methodparam %ho; (modifier*,
+ type?,
+ ((parameter,initializer?)|funcparams),
+ modifier*)>
+<!--end of methodparam.element-->]]>
+
+<!ENTITY % methodparam.attlist "INCLUDE">
+<![%methodparam.attlist;[
+<!ATTLIST methodparam
+ choice (opt
+ |req
+ |plain) "req"
+ rep (norepeat
+ |repeat) "norepeat"
+ %common.attrib;
+ %methodparam.role.attrib;
+ %local.methodparam.attrib;
+>
+<!--end of methodparam.attlist-->]]>
+<!--end of methodparam.module-->]]>
+<!--end of classsynopsis.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Document information entities and elements ........................... -->
+
+<!-- The document information elements include some elements that are
+ currently used only in the document hierarchy module. They are
+ defined here so that they will be available for use in customized
+ document hierarchies. -->
+
+<!-- .................................. -->
+
+<!ENTITY % docinfo.content.module "INCLUDE">
+<![%docinfo.content.module;[
+
+<!-- Ackno ............................ -->
+
+<!ENTITY % ackno.module "INCLUDE">
+<![%ackno.module;[
+<!ENTITY % local.ackno.attrib "">
+<!ENTITY % ackno.role.attrib "%role.attrib;">
+
+<!ENTITY % ackno.element "INCLUDE">
+<![%ackno.element;[
+<!--doc:Acknowledgements in an Article.-->
+<!ELEMENT ackno %ho; (%docinfo.char.mix;)*>
+<!--end of ackno.element-->]]>
+
+<!ENTITY % ackno.attlist "INCLUDE">
+<![%ackno.attlist;[
+<!ATTLIST ackno
+ %common.attrib;
+ %ackno.role.attrib;
+ %local.ackno.attrib;
+>
+<!--end of ackno.attlist-->]]>
+<!--end of ackno.module-->]]>
+
+<!-- Address .......................... -->
+
+<!ENTITY % address.content.module "INCLUDE">
+<![%address.content.module;[
+<!ENTITY % address.module "INCLUDE">
+<![%address.module;[
+<!ENTITY % local.address.attrib "">
+<!ENTITY % address.role.attrib "%role.attrib;">
+
+<!ENTITY % address.element "INCLUDE">
+<![%address.element;[
+<!--doc:A real-world address, generally a postal address.-->
+<!ELEMENT address %ho; (#PCDATA|personname|%person.ident.mix;
+ |street|pob|postcode|city|state|country|phone
+ |fax|email|otheraddr)*>
+<!--end of address.element-->]]>
+
+<!ENTITY % address.attlist "INCLUDE">
+<![%address.attlist;[
+<!ATTLIST address
+ %linespecific.attrib;
+ %common.attrib;
+ %address.role.attrib;
+ %local.address.attrib;
+>
+<!--end of address.attlist-->]]>
+<!--end of address.module-->]]>
+
+ <!ENTITY % street.module "INCLUDE">
+ <![%street.module;[
+ <!ENTITY % local.street.attrib "">
+ <!ENTITY % street.role.attrib "%role.attrib;">
+
+<!ENTITY % street.element "INCLUDE">
+<![%street.element;[
+<!--doc:A street address in an address.-->
+<!ELEMENT street %ho; (%docinfo.char.mix;)*>
+<!--end of street.element-->]]>
+
+<!ENTITY % street.attlist "INCLUDE">
+<![%street.attlist;[
+<!ATTLIST street
+ %common.attrib;
+ %street.role.attrib;
+ %local.street.attrib;
+>
+<!--end of street.attlist-->]]>
+ <!--end of street.module-->]]>
+
+ <!ENTITY % pob.module "INCLUDE">
+ <![%pob.module;[
+ <!ENTITY % local.pob.attrib "">
+ <!ENTITY % pob.role.attrib "%role.attrib;">
+
+<!ENTITY % pob.element "INCLUDE">
+<![%pob.element;[
+<!--doc:A post office box in an address.-->
+<!ELEMENT pob %ho; (%docinfo.char.mix;)*>
+<!--end of pob.element-->]]>
+
+<!ENTITY % pob.attlist "INCLUDE">
+<![%pob.attlist;[
+<!ATTLIST pob
+ %common.attrib;
+ %pob.role.attrib;
+ %local.pob.attrib;
+>
+<!--end of pob.attlist-->]]>
+ <!--end of pob.module-->]]>
+
+ <!ENTITY % postcode.module "INCLUDE">
+ <![%postcode.module;[
+ <!ENTITY % local.postcode.attrib "">
+ <!ENTITY % postcode.role.attrib "%role.attrib;">
+
+<!ENTITY % postcode.element "INCLUDE">
+<![%postcode.element;[
+<!--doc:A postal code in an address.-->
+<!ELEMENT postcode %ho; (%docinfo.char.mix;)*>
+<!--end of postcode.element-->]]>
+
+<!ENTITY % postcode.attlist "INCLUDE">
+<![%postcode.attlist;[
+<!ATTLIST postcode
+ %common.attrib;
+ %postcode.role.attrib;
+ %local.postcode.attrib;
+>
+<!--end of postcode.attlist-->]]>
+ <!--end of postcode.module-->]]>
+
+ <!ENTITY % city.module "INCLUDE">
+ <![%city.module;[
+ <!ENTITY % local.city.attrib "">
+ <!ENTITY % city.role.attrib "%role.attrib;">
+
+<!ENTITY % city.element "INCLUDE">
+<![%city.element;[
+<!--doc:The name of a city in an address.-->
+<!ELEMENT city %ho; (%docinfo.char.mix;)*>
+<!--end of city.element-->]]>
+
+<!ENTITY % city.attlist "INCLUDE">
+<![%city.attlist;[
+<!ATTLIST city
+ %common.attrib;
+ %city.role.attrib;
+ %local.city.attrib;
+>
+<!--end of city.attlist-->]]>
+ <!--end of city.module-->]]>
+
+ <!ENTITY % state.module "INCLUDE">
+ <![%state.module;[
+ <!ENTITY % local.state.attrib "">
+ <!ENTITY % state.role.attrib "%role.attrib;">
+
+<!ENTITY % state.element "INCLUDE">
+<![%state.element;[
+<!--doc:A state or province in an address.-->
+<!ELEMENT state %ho; (%docinfo.char.mix;)*>
+<!--end of state.element-->]]>
+
+<!ENTITY % state.attlist "INCLUDE">
+<![%state.attlist;[
+<!ATTLIST state
+ %common.attrib;
+ %state.role.attrib;
+ %local.state.attrib;
+>
+<!--end of state.attlist-->]]>
+ <!--end of state.module-->]]>
+
+ <!ENTITY % country.module "INCLUDE">
+ <![%country.module;[
+ <!ENTITY % local.country.attrib "">
+ <!ENTITY % country.role.attrib "%role.attrib;">
+
+<!ENTITY % country.element "INCLUDE">
+<![%country.element;[
+<!--doc:The name of a country.-->
+<!ELEMENT country %ho; (%docinfo.char.mix;)*>
+<!--end of country.element-->]]>
+
+<!ENTITY % country.attlist "INCLUDE">
+<![%country.attlist;[
+<!ATTLIST country
+ %common.attrib;
+ %country.role.attrib;
+ %local.country.attrib;
+>
+<!--end of country.attlist-->]]>
+ <!--end of country.module-->]]>
+
+ <!ENTITY % phone.module "INCLUDE">
+ <![%phone.module;[
+ <!ENTITY % local.phone.attrib "">
+ <!ENTITY % phone.role.attrib "%role.attrib;">
+
+<!ENTITY % phone.element "INCLUDE">
+<![%phone.element;[
+<!--doc:A telephone number.-->
+<!ELEMENT phone %ho; (%docinfo.char.mix;)*>
+<!--end of phone.element-->]]>
+
+<!ENTITY % phone.attlist "INCLUDE">
+<![%phone.attlist;[
+<!ATTLIST phone
+ %common.attrib;
+ %phone.role.attrib;
+ %local.phone.attrib;
+>
+<!--end of phone.attlist-->]]>
+ <!--end of phone.module-->]]>
+
+ <!ENTITY % fax.module "INCLUDE">
+ <![%fax.module;[
+ <!ENTITY % local.fax.attrib "">
+ <!ENTITY % fax.role.attrib "%role.attrib;">
+
+<!ENTITY % fax.element "INCLUDE">
+<![%fax.element;[
+<!--doc:A fax number.-->
+<!ELEMENT fax %ho; (%docinfo.char.mix;)*>
+<!--end of fax.element-->]]>
+
+<!ENTITY % fax.attlist "INCLUDE">
+<![%fax.attlist;[
+<!ATTLIST fax
+ %common.attrib;
+ %fax.role.attrib;
+ %local.fax.attrib;
+>
+<!--end of fax.attlist-->]]>
+ <!--end of fax.module-->]]>
+
+ <!-- Email (defined in the Inlines section, below)-->
+
+ <!ENTITY % otheraddr.module "INCLUDE">
+ <![%otheraddr.module;[
+ <!ENTITY % local.otheraddr.attrib "">
+ <!ENTITY % otheraddr.role.attrib "%role.attrib;">
+
+<!ENTITY % otheraddr.element "INCLUDE">
+<![%otheraddr.element;[
+<!--doc:Uncategorized information in address.-->
+<!ELEMENT otheraddr %ho; (%docinfo.char.mix;)*>
+<!--end of otheraddr.element-->]]>
+
+<!ENTITY % otheraddr.attlist "INCLUDE">
+<![%otheraddr.attlist;[
+<!ATTLIST otheraddr
+ %common.attrib;
+ %otheraddr.role.attrib;
+ %local.otheraddr.attrib;
+>
+<!--end of otheraddr.attlist-->]]>
+ <!--end of otheraddr.module-->]]>
+<!--end of address.content.module-->]]>
+
+<!-- Affiliation ...................... -->
+
+<!ENTITY % affiliation.content.module "INCLUDE">
+<![%affiliation.content.module;[
+<!ENTITY % affiliation.module "INCLUDE">
+<![%affiliation.module;[
+<!ENTITY % local.affiliation.attrib "">
+<!ENTITY % affiliation.role.attrib "%role.attrib;">
+
+<!ENTITY % affiliation.element "INCLUDE">
+<![%affiliation.element;[
+<!--doc:The institutional affiliation of an individual.-->
+<!ELEMENT affiliation %ho; (shortaffil?, jobtitle*, orgname?, orgdiv*,
+ address*)>
+<!--end of affiliation.element-->]]>
+
+<!ENTITY % affiliation.attlist "INCLUDE">
+<![%affiliation.attlist;[
+<!ATTLIST affiliation
+ %common.attrib;
+ %affiliation.role.attrib;
+ %local.affiliation.attrib;
+>
+<!--end of affiliation.attlist-->]]>
+<!--end of affiliation.module-->]]>
+
+ <!ENTITY % shortaffil.module "INCLUDE">
+ <![%shortaffil.module;[
+ <!ENTITY % local.shortaffil.attrib "">
+ <!ENTITY % shortaffil.role.attrib "%role.attrib;">
+
+<!ENTITY % shortaffil.element "INCLUDE">
+<![%shortaffil.element;[
+<!--doc:A brief description of an affiliation.-->
+<!ELEMENT shortaffil %ho; (%docinfo.char.mix;)*>
+<!--end of shortaffil.element-->]]>
+
+<!ENTITY % shortaffil.attlist "INCLUDE">
+<![%shortaffil.attlist;[
+<!ATTLIST shortaffil
+ %common.attrib;
+ %shortaffil.role.attrib;
+ %local.shortaffil.attrib;
+>
+<!--end of shortaffil.attlist-->]]>
+ <!--end of shortaffil.module-->]]>
+
+ <!ENTITY % jobtitle.module "INCLUDE">
+ <![%jobtitle.module;[
+ <!ENTITY % local.jobtitle.attrib "">
+ <!ENTITY % jobtitle.role.attrib "%role.attrib;">
+
+<!ENTITY % jobtitle.element "INCLUDE">
+<![%jobtitle.element;[
+<!--doc:The title of an individual in an organization.-->
+<!ELEMENT jobtitle %ho; (%docinfo.char.mix;)*>
+<!--end of jobtitle.element-->]]>
+
+<!ENTITY % jobtitle.attlist "INCLUDE">
+<![%jobtitle.attlist;[
+<!ATTLIST jobtitle
+ %common.attrib;
+ %jobtitle.role.attrib;
+ %local.jobtitle.attrib;
+>
+<!--end of jobtitle.attlist-->]]>
+ <!--end of jobtitle.module-->]]>
+
+ <!-- OrgName (defined elsewhere in this section)-->
+
+ <!ENTITY % orgdiv.module "INCLUDE">
+ <![%orgdiv.module;[
+ <!ENTITY % local.orgdiv.attrib "">
+ <!ENTITY % orgdiv.role.attrib "%role.attrib;">
+
+<!ENTITY % orgdiv.element "INCLUDE">
+<![%orgdiv.element;[
+<!--doc:A division of an organization.-->
+<!ELEMENT orgdiv %ho; (%docinfo.char.mix;)*>
+<!--end of orgdiv.element-->]]>
+
+<!ENTITY % orgdiv.attlist "INCLUDE">
+<![%orgdiv.attlist;[
+<!ATTLIST orgdiv
+ %common.attrib;
+ %orgdiv.role.attrib;
+ %local.orgdiv.attrib;
+>
+<!--end of orgdiv.attlist-->]]>
+ <!--end of orgdiv.module-->]]>
+
+ <!-- Address (defined elsewhere in this section)-->
+<!--end of affiliation.content.module-->]]>
+
+<!-- ArtPageNums ...................... -->
+
+<!ENTITY % artpagenums.module "INCLUDE">
+<![%artpagenums.module;[
+<!ENTITY % local.artpagenums.attrib "">
+<!ENTITY % artpagenums.role.attrib "%role.attrib;">
+
+<!ENTITY % artpagenums.element "INCLUDE">
+<![%artpagenums.element;[
+<!--doc:The page numbers of an article as published.-->
+<!ELEMENT artpagenums %ho; (%docinfo.char.mix;)*>
+<!--end of artpagenums.element-->]]>
+
+<!ENTITY % artpagenums.attlist "INCLUDE">
+<![%artpagenums.attlist;[
+<!ATTLIST artpagenums
+ %common.attrib;
+ %artpagenums.role.attrib;
+ %local.artpagenums.attrib;
+>
+<!--end of artpagenums.attlist-->]]>
+<!--end of artpagenums.module-->]]>
+
+<!-- PersonName -->
+
+<!ENTITY % personname.module "INCLUDE">
+<![%personname.module;[
+<!ENTITY % local.personname.attrib "">
+<!ENTITY % personname.role.attrib "%role.attrib;">
+
+<!ENTITY % personname.element "INCLUDE">
+<![%personname.element;[
+<!--doc:The personal name of an individual.-->
+<!ELEMENT personname %ho; ((honorific|firstname|surname|lineage|othername)+)>
+<!--end of personname.element-->]]>
+
+<!ENTITY % personname.attlist "INCLUDE">
+<![%personname.attlist;[
+<!ATTLIST personname
+ %common.attrib;
+ %personname.role.attrib;
+ %local.personname.attrib;
+>
+<!--end of personname.attlist-->]]>
+<!--end of personname.module-->]]>
+
+<!-- Author ........................... -->
+
+<!ENTITY % author.module "INCLUDE">
+<![%author.module;[
+<!ENTITY % local.author.attrib "">
+<!ENTITY % author.role.attrib "%role.attrib;">
+
+<!ENTITY % author.element "INCLUDE">
+<![%author.element;[
+<!--doc:The name of an individual author.-->
+<!ELEMENT author %ho; ((personname|(%person.ident.mix;)+),(personblurb|email|address)*)>
+<!--end of author.element-->]]>
+
+<!ENTITY % author.attlist "INCLUDE">
+<![%author.attlist;[
+<!ATTLIST author
+ %common.attrib;
+ %author.role.attrib;
+ %local.author.attrib;
+>
+<!--end of author.attlist-->]]>
+<!--(see "Personal identity elements" for %person.ident.mix;)-->
+<!--end of author.module-->]]>
+
+<!-- AuthorGroup ...................... -->
+
+<!ENTITY % authorgroup.content.module "INCLUDE">
+<![%authorgroup.content.module;[
+<!ENTITY % authorgroup.module "INCLUDE">
+<![%authorgroup.module;[
+<!ENTITY % local.authorgroup.attrib "">
+<!ENTITY % authorgroup.role.attrib "%role.attrib;">
+
+<!ENTITY % authorgroup.element "INCLUDE">
+<![%authorgroup.element;[
+<!--doc:Wrapper for author information when a document has multiple authors or collabarators.-->
+<!ELEMENT authorgroup %ho; ((author|editor|collab|corpauthor|corpcredit|othercredit)+)>
+<!--end of authorgroup.element-->]]>
+
+<!ENTITY % authorgroup.attlist "INCLUDE">
+<![%authorgroup.attlist;[
+<!ATTLIST authorgroup
+ %common.attrib;
+ %authorgroup.role.attrib;
+ %local.authorgroup.attrib;
+>
+<!--end of authorgroup.attlist-->]]>
+<!--end of authorgroup.module-->]]>
+
+ <!-- Author (defined elsewhere in this section)-->
+ <!-- Editor (defined elsewhere in this section)-->
+
+ <!ENTITY % collab.content.module "INCLUDE">
+ <![%collab.content.module;[
+ <!ENTITY % collab.module "INCLUDE">
+ <![%collab.module;[
+ <!ENTITY % local.collab.attrib "">
+ <!ENTITY % collab.role.attrib "%role.attrib;">
+
+<!ENTITY % collab.element "INCLUDE">
+<![%collab.element;[
+<!--doc:Identifies a collaborator.-->
+<!ELEMENT collab %ho; (collabname, affiliation*)>
+<!--end of collab.element-->]]>
+
+<!ENTITY % collab.attlist "INCLUDE">
+<![%collab.attlist;[
+<!ATTLIST collab
+ %common.attrib;
+ %collab.role.attrib;
+ %local.collab.attrib;
+>
+<!--end of collab.attlist-->]]>
+ <!--end of collab.module-->]]>
+
+ <!ENTITY % collabname.module "INCLUDE">
+ <![%collabname.module;[
+ <!ENTITY % local.collabname.attrib "">
+ <!ENTITY % collabname.role.attrib "%role.attrib;">
+
+<!ENTITY % collabname.element "INCLUDE">
+<![%collabname.element;[
+<!--doc:The name of a collaborator.-->
+<!ELEMENT collabname %ho; (%docinfo.char.mix;)*>
+<!--end of collabname.element-->]]>
+
+<!ENTITY % collabname.attlist "INCLUDE">
+<![%collabname.attlist;[
+<!ATTLIST collabname
+ %common.attrib;
+ %collabname.role.attrib;
+ %local.collabname.attrib;
+>
+<!--end of collabname.attlist-->]]>
+ <!--end of collabname.module-->]]>
+
+ <!-- Affiliation (defined elsewhere in this section)-->
+ <!--end of collab.content.module-->]]>
+
+ <!-- CorpAuthor (defined elsewhere in this section)-->
+ <!-- OtherCredit (defined elsewhere in this section)-->
+
+<!--end of authorgroup.content.module-->]]>
+
+<!-- AuthorInitials ................... -->
+
+<!ENTITY % authorinitials.module "INCLUDE">
+<![%authorinitials.module;[
+<!ENTITY % local.authorinitials.attrib "">
+<!ENTITY % authorinitials.role.attrib "%role.attrib;">
+
+<!ENTITY % authorinitials.element "INCLUDE">
+<![%authorinitials.element;[
+<!--doc:The initials or other short identifier for an author.-->
+<!ELEMENT authorinitials %ho; (%docinfo.char.mix;)*>
+<!--end of authorinitials.element-->]]>
+
+<!ENTITY % authorinitials.attlist "INCLUDE">
+<![%authorinitials.attlist;[
+<!ATTLIST authorinitials
+ %common.attrib;
+ %authorinitials.role.attrib;
+ %local.authorinitials.attrib;
+>
+<!--end of authorinitials.attlist-->]]>
+<!--end of authorinitials.module-->]]>
+
+<!-- ConfGroup ........................ -->
+
+<!ENTITY % confgroup.content.module "INCLUDE">
+<![%confgroup.content.module;[
+<!ENTITY % confgroup.module "INCLUDE">
+<![%confgroup.module;[
+<!ENTITY % local.confgroup.attrib "">
+<!ENTITY % confgroup.role.attrib "%role.attrib;">
+
+<!ENTITY % confgroup.element "INCLUDE">
+<![%confgroup.element;[
+<!--doc:A wrapper for document meta-information about a conference.-->
+<!ELEMENT confgroup %ho; ((confdates|conftitle|confnum|address|confsponsor)*)>
+<!--end of confgroup.element-->]]>
+
+<!ENTITY % confgroup.attlist "INCLUDE">
+<![%confgroup.attlist;[
+<!ATTLIST confgroup
+ %common.attrib;
+ %confgroup.role.attrib;
+ %local.confgroup.attrib;
+>
+<!--end of confgroup.attlist-->]]>
+<!--end of confgroup.module-->]]>
+
+ <!ENTITY % confdates.module "INCLUDE">
+ <![%confdates.module;[
+ <!ENTITY % local.confdates.attrib "">
+ <!ENTITY % confdates.role.attrib "%role.attrib;">
+
+<!ENTITY % confdates.element "INCLUDE">
+<![%confdates.element;[
+<!--doc:The dates of a conference for which a document was written.-->
+<!ELEMENT confdates %ho; (%docinfo.char.mix;)*>
+<!--end of confdates.element-->]]>
+
+<!ENTITY % confdates.attlist "INCLUDE">
+<![%confdates.attlist;[
+<!ATTLIST confdates
+ %common.attrib;
+ %confdates.role.attrib;
+ %local.confdates.attrib;
+>
+<!--end of confdates.attlist-->]]>
+ <!--end of confdates.module-->]]>
+
+ <!ENTITY % conftitle.module "INCLUDE">
+ <![%conftitle.module;[
+ <!ENTITY % local.conftitle.attrib "">
+ <!ENTITY % conftitle.role.attrib "%role.attrib;">
+
+<!ENTITY % conftitle.element "INCLUDE">
+<![%conftitle.element;[
+<!--doc:The title of a conference for which a document was written.-->
+<!ELEMENT conftitle %ho; (%docinfo.char.mix;)*>
+<!--end of conftitle.element-->]]>
+
+<!ENTITY % conftitle.attlist "INCLUDE">
+<![%conftitle.attlist;[
+<!ATTLIST conftitle
+ %common.attrib;
+ %conftitle.role.attrib;
+ %local.conftitle.attrib;
+>
+<!--end of conftitle.attlist-->]]>
+ <!--end of conftitle.module-->]]>
+
+ <!ENTITY % confnum.module "INCLUDE">
+ <![%confnum.module;[
+ <!ENTITY % local.confnum.attrib "">
+ <!ENTITY % confnum.role.attrib "%role.attrib;">
+
+<!ENTITY % confnum.element "INCLUDE">
+<![%confnum.element;[
+<!--doc:An identifier, frequently numerical, associated with a conference for which a document was written.-->
+<!ELEMENT confnum %ho; (%docinfo.char.mix;)*>
+<!--end of confnum.element-->]]>
+
+<!ENTITY % confnum.attlist "INCLUDE">
+<![%confnum.attlist;[
+<!ATTLIST confnum
+ %common.attrib;
+ %confnum.role.attrib;
+ %local.confnum.attrib;
+>
+<!--end of confnum.attlist-->]]>
+ <!--end of confnum.module-->]]>
+
+ <!-- Address (defined elsewhere in this section)-->
+
+ <!ENTITY % confsponsor.module "INCLUDE">
+ <![%confsponsor.module;[
+ <!ENTITY % local.confsponsor.attrib "">
+ <!ENTITY % confsponsor.role.attrib "%role.attrib;">
+
+<!ENTITY % confsponsor.element "INCLUDE">
+<![%confsponsor.element;[
+<!--doc:The sponsor of a conference for which a document was written.-->
+<!ELEMENT confsponsor %ho; (%docinfo.char.mix;)*>
+<!--end of confsponsor.element-->]]>
+
+<!ENTITY % confsponsor.attlist "INCLUDE">
+<![%confsponsor.attlist;[
+<!ATTLIST confsponsor
+ %common.attrib;
+ %confsponsor.role.attrib;
+ %local.confsponsor.attrib;
+>
+<!--end of confsponsor.attlist-->]]>
+ <!--end of confsponsor.module-->]]>
+<!--end of confgroup.content.module-->]]>
+
+<!-- ContractNum ...................... -->
+
+<!ENTITY % contractnum.module "INCLUDE">
+<![%contractnum.module;[
+<!ENTITY % local.contractnum.attrib "">
+<!ENTITY % contractnum.role.attrib "%role.attrib;">
+
+<!ENTITY % contractnum.element "INCLUDE">
+<![%contractnum.element;[
+<!--doc:The contract number of a document.-->
+<!ELEMENT contractnum %ho; (%docinfo.char.mix;)*>
+<!--end of contractnum.element-->]]>
+
+<!ENTITY % contractnum.attlist "INCLUDE">
+<![%contractnum.attlist;[
+<!ATTLIST contractnum
+ %common.attrib;
+ %contractnum.role.attrib;
+ %local.contractnum.attrib;
+>
+<!--end of contractnum.attlist-->]]>
+<!--end of contractnum.module-->]]>
+
+<!-- ContractSponsor .................. -->
+
+<!ENTITY % contractsponsor.module "INCLUDE">
+<![%contractsponsor.module;[
+<!ENTITY % local.contractsponsor.attrib "">
+<!ENTITY % contractsponsor.role.attrib "%role.attrib;">
+
+<!ENTITY % contractsponsor.element "INCLUDE">
+<![%contractsponsor.element;[
+<!--doc:The sponsor of a contract.-->
+<!ELEMENT contractsponsor %ho; (%docinfo.char.mix;)*>
+<!--end of contractsponsor.element-->]]>
+
+<!ENTITY % contractsponsor.attlist "INCLUDE">
+<![%contractsponsor.attlist;[
+<!ATTLIST contractsponsor
+ %common.attrib;
+ %contractsponsor.role.attrib;
+ %local.contractsponsor.attrib;
+>
+<!--end of contractsponsor.attlist-->]]>
+<!--end of contractsponsor.module-->]]>
+
+<!-- Copyright ........................ -->
+
+<!ENTITY % copyright.content.module "INCLUDE">
+<![%copyright.content.module;[
+<!ENTITY % copyright.module "INCLUDE">
+<![%copyright.module;[
+<!ENTITY % local.copyright.attrib "">
+<!ENTITY % copyright.role.attrib "%role.attrib;">
+
+<!ENTITY % copyright.element "INCLUDE">
+<![%copyright.element;[
+<!--doc:Copyright information about a document.-->
+<!ELEMENT copyright %ho; (year+, holder*)>
+<!--end of copyright.element-->]]>
+
+<!ENTITY % copyright.attlist "INCLUDE">
+<![%copyright.attlist;[
+<!ATTLIST copyright
+ %common.attrib;
+ %copyright.role.attrib;
+ %local.copyright.attrib;
+>
+<!--end of copyright.attlist-->]]>
+<!--end of copyright.module-->]]>
+
+ <!ENTITY % year.module "INCLUDE">
+ <![%year.module;[
+ <!ENTITY % local.year.attrib "">
+ <!ENTITY % year.role.attrib "%role.attrib;">
+
+<!ENTITY % year.element "INCLUDE">
+<![%year.element;[
+<!--doc:The year of publication of a document.-->
+<!ELEMENT year %ho; (%docinfo.char.mix;)*>
+<!--end of year.element-->]]>
+
+<!ENTITY % year.attlist "INCLUDE">
+<![%year.attlist;[
+<!ATTLIST year
+ %common.attrib;
+ %year.role.attrib;
+ %local.year.attrib;
+>
+<!--end of year.attlist-->]]>
+ <!--end of year.module-->]]>
+
+ <!ENTITY % holder.module "INCLUDE">
+ <![%holder.module;[
+ <!ENTITY % local.holder.attrib "">
+ <!ENTITY % holder.role.attrib "%role.attrib;">
+
+<!ENTITY % holder.element "INCLUDE">
+<![%holder.element;[
+<!--doc:The name of the individual or organization that holds a copyright.-->
+<!ELEMENT holder %ho; (%docinfo.char.mix;)*>
+<!--end of holder.element-->]]>
+
+<!ENTITY % holder.attlist "INCLUDE">
+<![%holder.attlist;[
+<!ATTLIST holder
+ %common.attrib;
+ %holder.role.attrib;
+ %local.holder.attrib;
+>
+<!--end of holder.attlist-->]]>
+ <!--end of holder.module-->]]>
+<!--end of copyright.content.module-->]]>
+
+<!-- CorpAuthor ....................... -->
+
+<!ENTITY % corpauthor.module "INCLUDE">
+<![%corpauthor.module;[
+<!ENTITY % local.corpauthor.attrib "">
+<!ENTITY % corpauthor.role.attrib "%role.attrib;">
+
+<!ENTITY % corpauthor.element "INCLUDE">
+<![%corpauthor.element;[
+<!--doc:A corporate author, as opposed to an individual.-->
+<!ELEMENT corpauthor %ho; (%docinfo.char.mix;)*>
+<!--end of corpauthor.element-->]]>
+
+<!ENTITY % corpauthor.attlist "INCLUDE">
+<![%corpauthor.attlist;[
+<!ATTLIST corpauthor
+ %common.attrib;
+ %corpauthor.role.attrib;
+ %local.corpauthor.attrib;
+>
+<!--end of corpauthor.attlist-->]]>
+<!--end of corpauthor.module-->]]>
+
+<!-- CorpCredit ...................... -->
+
+<!ENTITY % corpcredit.module "INCLUDE">
+<![%corpcredit.module;[
+<!ENTITY % local.corpcredit.attrib "">
+<!ENTITY % corpcredit.role.attrib "%role.attrib;">
+
+<!ENTITY % corpcredit.element "INCLUDE">
+<![%corpcredit.element;[
+<!--doc:A corporation or organization credited in a document.-->
+<!ELEMENT corpcredit %ho; (%docinfo.char.mix;)*>
+<!--end of corpcredit.element-->]]>
+
+<!ENTITY % corpcredit.attlist "INCLUDE">
+<![%corpcredit.attlist;[
+<!ATTLIST corpcredit
+ class (graphicdesigner
+ |productioneditor
+ |copyeditor
+ |technicaleditor
+ |translator
+ |other) #IMPLIED
+ %common.attrib;
+ %corpcredit.role.attrib;
+ %local.corpcredit.attrib;
+>
+<!--end of corpcredit.attlist-->]]>
+<!--end of corpcredit.module-->]]>
+
+<!-- CorpName ......................... -->
+
+<!ENTITY % corpname.module "INCLUDE">
+<![%corpname.module;[
+<!ENTITY % local.corpname.attrib "">
+
+<!ENTITY % corpname.element "INCLUDE">
+<![%corpname.element;[
+<!--doc:The name of a corporation.-->
+<!ELEMENT corpname %ho; (%docinfo.char.mix;)*>
+<!--end of corpname.element-->]]>
+<!ENTITY % corpname.role.attrib "%role.attrib;">
+
+<!ENTITY % corpname.attlist "INCLUDE">
+<![%corpname.attlist;[
+<!ATTLIST corpname
+ %common.attrib;
+ %corpname.role.attrib;
+ %local.corpname.attrib;
+>
+<!--end of corpname.attlist-->]]>
+<!--end of corpname.module-->]]>
+
+<!-- Date ............................. -->
+
+<!ENTITY % date.module "INCLUDE">
+<![%date.module;[
+<!ENTITY % local.date.attrib "">
+<!ENTITY % date.role.attrib "%role.attrib;">
+
+<!ENTITY % date.element "INCLUDE">
+<![%date.element;[
+<!--doc:The date of publication or revision of a document.-->
+<!ELEMENT date %ho; (%docinfo.char.mix;)*>
+<!--end of date.element-->]]>
+
+<!ENTITY % date.attlist "INCLUDE">
+<![%date.attlist;[
+<!ATTLIST date
+ %common.attrib;
+ %date.role.attrib;
+ %local.date.attrib;
+>
+<!--end of date.attlist-->]]>
+<!--end of date.module-->]]>
+
+<!-- Edition .......................... -->
+
+<!ENTITY % edition.module "INCLUDE">
+<![%edition.module;[
+<!ENTITY % local.edition.attrib "">
+<!ENTITY % edition.role.attrib "%role.attrib;">
+
+<!ENTITY % edition.element "INCLUDE">
+<![%edition.element;[
+<!--doc:The name or number of an edition of a document.-->
+<!ELEMENT edition %ho; (%docinfo.char.mix;)*>
+<!--end of edition.element-->]]>
+
+<!ENTITY % edition.attlist "INCLUDE">
+<![%edition.attlist;[
+<!ATTLIST edition
+ %common.attrib;
+ %edition.role.attrib;
+ %local.edition.attrib;
+>
+<!--end of edition.attlist-->]]>
+<!--end of edition.module-->]]>
+
+<!-- Editor ........................... -->
+
+<!ENTITY % editor.module "INCLUDE">
+<![%editor.module;[
+<!ENTITY % local.editor.attrib "">
+<!ENTITY % editor.role.attrib "%role.attrib;">
+
+<!ENTITY % editor.element "INCLUDE">
+<![%editor.element;[
+<!--doc:The name of the editor of a document.-->
+<!ELEMENT editor %ho; ((personname|(%person.ident.mix;)+),(personblurb|email|address)*)>
+<!--end of editor.element-->]]>
+
+<!ENTITY % editor.attlist "INCLUDE">
+<![%editor.attlist;[
+<!ATTLIST editor
+ %common.attrib;
+ %editor.role.attrib;
+ %local.editor.attrib;
+>
+<!--end of editor.attlist-->]]>
+ <!--(see "Personal identity elements" for %person.ident.mix;)-->
+<!--end of editor.module-->]]>
+
+<!-- ISBN ............................. -->
+
+<!ENTITY % isbn.module "INCLUDE">
+<![%isbn.module;[
+<!ENTITY % local.isbn.attrib "">
+<!ENTITY % isbn.role.attrib "%role.attrib;">
+
+<!ENTITY % isbn.element "INCLUDE">
+<![%isbn.element;[
+<!--doc:The International Standard Book Number of a document.-->
+<!ELEMENT isbn %ho; (%docinfo.char.mix;)*>
+<!--end of isbn.element-->]]>
+
+<!ENTITY % isbn.attlist "INCLUDE">
+<![%isbn.attlist;[
+<!ATTLIST isbn
+ %common.attrib;
+ %isbn.role.attrib;
+ %local.isbn.attrib;
+>
+<!--end of isbn.attlist-->]]>
+<!--end of isbn.module-->]]>
+
+<!-- ISSN ............................. -->
+
+<!ENTITY % issn.module "INCLUDE">
+<![%issn.module;[
+<!ENTITY % local.issn.attrib "">
+<!ENTITY % issn.role.attrib "%role.attrib;">
+
+<!ENTITY % issn.element "INCLUDE">
+<![%issn.element;[
+<!--doc:The International Standard Serial Number of a periodical.-->
+<!ELEMENT issn %ho; (%docinfo.char.mix;)*>
+<!--end of issn.element-->]]>
+
+<!ENTITY % issn.attlist "INCLUDE">
+<![%issn.attlist;[
+<!ATTLIST issn
+ %common.attrib;
+ %issn.role.attrib;
+ %local.issn.attrib;
+>
+<!--end of issn.attlist-->]]>
+<!--end of issn.module-->]]>
+
+<!-- BiblioId ................. -->
+<!ENTITY % biblio.class.attrib
+ "class (uri
+ |doi
+ |isbn
+ |isrn
+ |issn
+ |libraryofcongress
+ |pubnumber
+ |other) #IMPLIED
+ otherclass CDATA #IMPLIED"
+>
+
+<!ENTITY % biblioid.module "INCLUDE">
+<![%biblioid.module;[
+<!ENTITY % local.biblioid.attrib "">
+<!ENTITY % biblioid.role.attrib "%role.attrib;">
+
+<!ENTITY % biblioid.element "INCLUDE">
+<![%biblioid.element;[
+<!--doc:An identifier for a document.-->
+<!ELEMENT biblioid %ho; (%docinfo.char.mix;)*>
+<!--end of biblioid.element-->]]>
+
+<!ENTITY % biblioid.attlist "INCLUDE">
+<![%biblioid.attlist;[
+<!ATTLIST biblioid
+ %biblio.class.attrib;
+ %common.attrib;
+ %biblioid.role.attrib;
+ %local.biblioid.attrib;
+>
+<!--end of biblioid.attlist-->]]>
+<!--end of biblioid.module-->]]>
+
+<!-- CiteBiblioId ................. -->
+
+<!ENTITY % citebiblioid.module "INCLUDE">
+<![%citebiblioid.module;[
+<!ENTITY % local.citebiblioid.attrib "">
+<!ENTITY % citebiblioid.role.attrib "%role.attrib;">
+
+<!ENTITY % citebiblioid.element "INCLUDE">
+<![%citebiblioid.element;[
+<!--doc:A citation of a bibliographic identifier.-->
+<!ELEMENT citebiblioid %ho; (%docinfo.char.mix;)*>
+<!--end of citebiblioid.element-->]]>
+
+<!ENTITY % citebiblioid.attlist "INCLUDE">
+<![%citebiblioid.attlist;[
+<!ATTLIST citebiblioid
+ %biblio.class.attrib;
+ %common.attrib;
+ %citebiblioid.role.attrib;
+ %local.citebiblioid.attrib;
+>
+<!--end of citebiblioid.attlist-->]]>
+<!--end of citebiblioid.module-->]]>
+
+<!-- BiblioSource ................. -->
+
+<!ENTITY % bibliosource.module "INCLUDE">
+<![%bibliosource.module;[
+<!ENTITY % local.bibliosource.attrib "">
+<!ENTITY % bibliosource.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliosource.element "INCLUDE">
+<![%bibliosource.element;[
+<!--doc:The source of a document.-->
+<!ELEMENT bibliosource %ho; (%docinfo.char.mix;)*>
+<!--end of bibliosource.element-->]]>
+
+<!ENTITY % bibliosource.attlist "INCLUDE">
+<![%bibliosource.attlist;[
+<!ATTLIST bibliosource
+ %biblio.class.attrib;
+ %common.attrib;
+ %bibliosource.role.attrib;
+ %local.bibliosource.attrib;
+>
+<!--end of bibliosource.attlist-->]]>
+<!--end of bibliosource.module-->]]>
+
+<!-- BiblioRelation ................. -->
+
+<!ENTITY % bibliorelation.module "INCLUDE">
+<![%bibliorelation.module;[
+<!ENTITY % local.bibliorelation.attrib "">
+<!ENTITY % local.bibliorelation.types "">
+
+<!ENTITY % bibliorelation.type.attrib
+ "type (isversionof
+ |hasversion
+ |isreplacedby
+ |replaces
+ |isrequiredby
+ |requires
+ |ispartof
+ |haspart
+ |isreferencedby
+ |references
+ |isformatof
+ |hasformat
+ |othertype
+ %local.bibliorelation.types;) #IMPLIED
+ othertype CDATA #IMPLIED
+">
+
+<!ENTITY % bibliorelation.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliorelation.element "INCLUDE">
+<![%bibliorelation.element;[
+<!--doc:The relationship of a document to another.-->
+<!ELEMENT bibliorelation %ho; (%docinfo.char.mix;)*>
+<!--end of bibliorelation.element-->]]>
+
+<!ENTITY % bibliorelation.attlist "INCLUDE">
+<![%bibliorelation.attlist;[
+<!ATTLIST bibliorelation
+ %biblio.class.attrib;
+ %bibliorelation.type.attrib;
+ %common.attrib;
+ %bibliorelation.role.attrib;
+ %local.bibliorelation.attrib;
+>
+<!--end of bibliorelation.attlist-->]]>
+<!--end of bibliorelation.module-->]]>
+
+<!-- BiblioCoverage ................. -->
+
+<!ENTITY % bibliocoverage.module "INCLUDE">
+<![%bibliocoverage.module;[
+<!ENTITY % local.bibliocoverage.attrib "">
+<!ENTITY % bibliocoverage.role.attrib "%role.attrib;">
+
+<!ENTITY % bibliocoverage.element "INCLUDE">
+<![%bibliocoverage.element;[
+<!--doc:The spatial or temporal coverage of a document.-->
+<!ELEMENT bibliocoverage %ho; (%docinfo.char.mix;)*>
+<!--end of bibliocoverage.element-->]]>
+
+<!ENTITY % bibliocoverage.attlist "INCLUDE">
+<![%bibliocoverage.attlist;[
+<!ATTLIST bibliocoverage
+ spatial (dcmipoint|iso3166|dcmibox|tgn|otherspatial) #IMPLIED
+ otherspatial CDATA #IMPLIED
+ temporal (dcmiperiod|w3c-dtf|othertemporal) #IMPLIED
+ othertemporal CDATA #IMPLIED
+ %common.attrib;
+ %bibliocoverage.role.attrib;
+ %local.bibliocoverage.attrib;
+>
+<!--end of bibliocoverage.attlist-->]]>
+<!--end of bibliocoverage.module-->]]>
+
+<!-- InvPartNumber .................... -->
+
+<!ENTITY % invpartnumber.module "INCLUDE">
+<![%invpartnumber.module;[
+<!ENTITY % local.invpartnumber.attrib "">
+<!ENTITY % invpartnumber.role.attrib "%role.attrib;">
+
+<!ENTITY % invpartnumber.element "INCLUDE">
+<![%invpartnumber.element;[
+<!--doc:An inventory part number.-->
+<!ELEMENT invpartnumber %ho; (%docinfo.char.mix;)*>
+<!--end of invpartnumber.element-->]]>
+
+<!ENTITY % invpartnumber.attlist "INCLUDE">
+<![%invpartnumber.attlist;[
+<!ATTLIST invpartnumber
+ %common.attrib;
+ %invpartnumber.role.attrib;
+ %local.invpartnumber.attrib;
+>
+<!--end of invpartnumber.attlist-->]]>
+<!--end of invpartnumber.module-->]]>
+
+<!-- IssueNum ......................... -->
+
+<!ENTITY % issuenum.module "INCLUDE">
+<![%issuenum.module;[
+<!ENTITY % local.issuenum.attrib "">
+<!ENTITY % issuenum.role.attrib "%role.attrib;">
+
+<!ENTITY % issuenum.element "INCLUDE">
+<![%issuenum.element;[
+<!--doc:The number of an issue of a journal.-->
+<!ELEMENT issuenum %ho; (%docinfo.char.mix;)*>
+<!--end of issuenum.element-->]]>
+
+<!ENTITY % issuenum.attlist "INCLUDE">
+<![%issuenum.attlist;[
+<!ATTLIST issuenum
+ %common.attrib;
+ %issuenum.role.attrib;
+ %local.issuenum.attrib;
+>
+<!--end of issuenum.attlist-->]]>
+<!--end of issuenum.module-->]]>
+
+<!-- LegalNotice ...................... -->
+
+<!ENTITY % legalnotice.module "INCLUDE">
+<![%legalnotice.module;[
+<!ENTITY % local.legalnotice.attrib "">
+<!ENTITY % legalnotice.role.attrib "%role.attrib;">
+
+<!ENTITY % legalnotice.element "INCLUDE">
+<![%legalnotice.element;[
+<!--doc:A statement of legal obligations or requirements.-->
+<!ELEMENT legalnotice %ho; (blockinfo?, title?, (%legalnotice.mix;)+)
+ %formal.exclusion;>
+<!--end of legalnotice.element-->]]>
+
+<!ENTITY % legalnotice.attlist "INCLUDE">
+<![%legalnotice.attlist;[
+<!ATTLIST legalnotice
+ %common.attrib;
+ %legalnotice.role.attrib;
+ %local.legalnotice.attrib;
+>
+<!--end of legalnotice.attlist-->]]>
+<!--end of legalnotice.module-->]]>
+
+<!-- ModeSpec ......................... -->
+
+<!ENTITY % modespec.module "INCLUDE">
+<![%modespec.module;[
+<!ENTITY % local.modespec.attrib "">
+<!ENTITY % modespec.role.attrib "%role.attrib;">
+
+<!ENTITY % modespec.element "INCLUDE">
+<![%modespec.element;[
+<!--doc:Application-specific information necessary for the completion of an OLink.-->
+<!ELEMENT modespec %ho; (%docinfo.char.mix;)*
+ %ubiq.exclusion;>
+<!--end of modespec.element-->]]>
+
+<!-- Application: Type of action required for completion
+ of the links to which the ModeSpec is relevant (e.g.,
+ retrieval query) -->
+
+
+<!ENTITY % modespec.attlist "INCLUDE">
+<![%modespec.attlist;[
+<!ATTLIST modespec
+ application NOTATION
+ (%notation.class;) #IMPLIED
+ %common.attrib;
+ %modespec.role.attrib;
+ %local.modespec.attrib;
+>
+<!--end of modespec.attlist-->]]>
+<!--end of modespec.module-->]]>
+
+<!-- OrgName .......................... -->
+
+<!ENTITY % orgname.module "INCLUDE">
+<![%orgname.module;[
+<!ENTITY % local.orgname.attrib "">
+<!ENTITY % orgname.role.attrib "%role.attrib;">
+
+<!ENTITY % orgname.element "INCLUDE">
+<![%orgname.element;[
+<!--doc:The name of an organization other than a corporation.-->
+<!ELEMENT orgname %ho; (%docinfo.char.mix;)*>
+<!--end of orgname.element-->]]>
+
+<!ENTITY % orgname.attlist "INCLUDE">
+<![%orgname.attlist;[
+<!ATTLIST orgname
+ %common.attrib;
+ class (corporation|nonprofit|consortium|informal|other) #IMPLIED
+ otherclass CDATA #IMPLIED
+ %orgname.role.attrib;
+ %local.orgname.attrib;
+>
+<!--end of orgname.attlist-->]]>
+<!--end of orgname.module-->]]>
+
+<!-- OtherCredit ...................... -->
+
+<!ENTITY % othercredit.module "INCLUDE">
+<![%othercredit.module;[
+<!ENTITY % local.othercredit.attrib "">
+<!ENTITY % othercredit.role.attrib "%role.attrib;">
+
+<!ENTITY % othercredit.element "INCLUDE">
+<![%othercredit.element;[
+<!--doc:A person or entity, other than an author or editor, credited in a document.-->
+<!ELEMENT othercredit %ho; ((personname|(%person.ident.mix;)+),
+ (personblurb|email|address)*)>
+<!--end of othercredit.element-->]]>
+
+<!ENTITY % othercredit.attlist "INCLUDE">
+<![%othercredit.attlist;[
+<!ATTLIST othercredit
+ class (graphicdesigner
+ |productioneditor
+ |copyeditor
+ |technicaleditor
+ |translator
+ |other) #IMPLIED
+ %common.attrib;
+ %othercredit.role.attrib;
+ %local.othercredit.attrib;
+>
+<!--end of othercredit.attlist-->]]>
+ <!--(see "Personal identity elements" for %person.ident.mix;)-->
+<!--end of othercredit.module-->]]>
+
+<!-- PageNums ......................... -->
+
+<!ENTITY % pagenums.module "INCLUDE">
+<![%pagenums.module;[
+<!ENTITY % local.pagenums.attrib "">
+<!ENTITY % pagenums.role.attrib "%role.attrib;">
+
+<!ENTITY % pagenums.element "INCLUDE">
+<![%pagenums.element;[
+<!--doc:The numbers of the pages in a book, for use in a bibliographic entry.-->
+<!ELEMENT pagenums %ho; (%docinfo.char.mix;)*>
+<!--end of pagenums.element-->]]>
+
+<!ENTITY % pagenums.attlist "INCLUDE">
+<![%pagenums.attlist;[
+<!ATTLIST pagenums
+ %common.attrib;
+ %pagenums.role.attrib;
+ %local.pagenums.attrib;
+>
+<!--end of pagenums.attlist-->]]>
+<!--end of pagenums.module-->]]>
+
+<!-- Personal identity elements ....... -->
+
+<!-- These elements are used only within Author, Editor, and
+OtherCredit. -->
+
+<!ENTITY % person.ident.module "INCLUDE">
+<![%person.ident.module;[
+ <!ENTITY % contrib.module "INCLUDE">
+ <![%contrib.module;[
+ <!ENTITY % local.contrib.attrib "">
+ <!ENTITY % contrib.role.attrib "%role.attrib;">
+
+<!ENTITY % contrib.element "INCLUDE">
+<![%contrib.element;[
+<!--doc:A summary of the contributions made to a document by a credited source.-->
+<!ELEMENT contrib %ho; (%docinfo.char.mix;)*>
+<!--end of contrib.element-->]]>
+
+<!ENTITY % contrib.attlist "INCLUDE">
+<![%contrib.attlist;[
+<!ATTLIST contrib
+ %common.attrib;
+ %contrib.role.attrib;
+ %local.contrib.attrib;
+>
+<!--end of contrib.attlist-->]]>
+ <!--end of contrib.module-->]]>
+
+ <!ENTITY % firstname.module "INCLUDE">
+ <![%firstname.module;[
+ <!ENTITY % local.firstname.attrib "">
+ <!ENTITY % firstname.role.attrib "%role.attrib;">
+
+<!ENTITY % firstname.element "INCLUDE">
+<![%firstname.element;[
+<!--doc:The first name of a person.-->
+<!ELEMENT firstname %ho; (%docinfo.char.mix;)*>
+<!--end of firstname.element-->]]>
+
+<!ENTITY % firstname.attlist "INCLUDE">
+<![%firstname.attlist;[
+<!ATTLIST firstname
+ %common.attrib;
+ %firstname.role.attrib;
+ %local.firstname.attrib;
+>
+<!--end of firstname.attlist-->]]>
+ <!--end of firstname.module-->]]>
+
+ <!ENTITY % honorific.module "INCLUDE">
+ <![%honorific.module;[
+ <!ENTITY % local.honorific.attrib "">
+ <!ENTITY % honorific.role.attrib "%role.attrib;">
+
+<!ENTITY % honorific.element "INCLUDE">
+<![%honorific.element;[
+<!--doc:The title of a person.-->
+<!ELEMENT honorific %ho; (%docinfo.char.mix;)*>
+<!--end of honorific.element-->]]>
+
+<!ENTITY % honorific.attlist "INCLUDE">
+<![%honorific.attlist;[
+<!ATTLIST honorific
+ %common.attrib;
+ %honorific.role.attrib;
+ %local.honorific.attrib;
+>
+<!--end of honorific.attlist-->]]>
+ <!--end of honorific.module-->]]>
+
+ <!ENTITY % lineage.module "INCLUDE">
+ <![%lineage.module;[
+ <!ENTITY % local.lineage.attrib "">
+ <!ENTITY % lineage.role.attrib "%role.attrib;">
+
+<!ENTITY % lineage.element "INCLUDE">
+<![%lineage.element;[
+<!--doc:The portion of a person's name indicating a relationship to ancestors.-->
+<!ELEMENT lineage %ho; (%docinfo.char.mix;)*>
+<!--end of lineage.element-->]]>
+
+<!ENTITY % lineage.attlist "INCLUDE">
+<![%lineage.attlist;[
+<!ATTLIST lineage
+ %common.attrib;
+ %lineage.role.attrib;
+ %local.lineage.attrib;
+>
+<!--end of lineage.attlist-->]]>
+ <!--end of lineage.module-->]]>
+
+ <!ENTITY % othername.module "INCLUDE">
+ <![%othername.module;[
+ <!ENTITY % local.othername.attrib "">
+ <!ENTITY % othername.role.attrib "%role.attrib;">
+
+<!ENTITY % othername.element "INCLUDE">
+<![%othername.element;[
+<!--doc:A component of a persons name that is not a first name, surname, or lineage.-->
+<!ELEMENT othername %ho; (%docinfo.char.mix;)*>
+<!--end of othername.element-->]]>
+
+<!ENTITY % othername.attlist "INCLUDE">
+<![%othername.attlist;[
+<!ATTLIST othername
+ %common.attrib;
+ %othername.role.attrib;
+ %local.othername.attrib;
+>
+<!--end of othername.attlist-->]]>
+ <!--end of othername.module-->]]>
+
+ <!ENTITY % surname.module "INCLUDE">
+ <![%surname.module;[
+ <!ENTITY % local.surname.attrib "">
+ <!ENTITY % surname.role.attrib "%role.attrib;">
+
+<!ENTITY % surname.element "INCLUDE">
+<![%surname.element;[
+<!--doc:A family name; in western cultures the last name.-->
+<!ELEMENT surname %ho; (%docinfo.char.mix;)*>
+<!--end of surname.element-->]]>
+
+<!ENTITY % surname.attlist "INCLUDE">
+<![%surname.attlist;[
+<!ATTLIST surname
+ %common.attrib;
+ %surname.role.attrib;
+ %local.surname.attrib;
+>
+<!--end of surname.attlist-->]]>
+ <!--end of surname.module-->]]>
+<!--end of person.ident.module-->]]>
+
+<!-- PrintHistory ..................... -->
+
+<!ENTITY % printhistory.module "INCLUDE">
+<![%printhistory.module;[
+<!ENTITY % local.printhistory.attrib "">
+<!ENTITY % printhistory.role.attrib "%role.attrib;">
+
+<!ENTITY % printhistory.element "INCLUDE">
+<![%printhistory.element;[
+<!--doc:The printing history of a document.-->
+<!ELEMENT printhistory %ho; ((%para.class;)+)>
+<!--end of printhistory.element-->]]>
+
+<!ENTITY % printhistory.attlist "INCLUDE">
+<![%printhistory.attlist;[
+<!ATTLIST printhistory
+ %common.attrib;
+ %printhistory.role.attrib;
+ %local.printhistory.attrib;
+>
+<!--end of printhistory.attlist-->]]>
+<!--end of printhistory.module-->]]>
+
+<!-- ProductName ...................... -->
+
+<!ENTITY % productname.module "INCLUDE">
+<![%productname.module;[
+<!ENTITY % local.productname.attrib "">
+<!ENTITY % productname.role.attrib "%role.attrib;">
+
+<!ENTITY % productname.element "INCLUDE">
+<![%productname.element;[
+<!--doc:The formal name of a product.-->
+<!ELEMENT productname %ho; (%para.char.mix;)*>
+<!--end of productname.element-->]]>
+
+<!-- Class: More precisely identifies the item the element names -->
+
+
+<!ENTITY % productname.attlist "INCLUDE">
+<![%productname.attlist;[
+<!ATTLIST productname
+ class (service
+ |trade
+ |registered
+ |copyright) 'trade'
+ %common.attrib;
+ %productname.role.attrib;
+ %local.productname.attrib;
+>
+<!--end of productname.attlist-->]]>
+<!--end of productname.module-->]]>
+
+<!-- ProductNumber .................... -->
+
+<!ENTITY % productnumber.module "INCLUDE">
+<![%productnumber.module;[
+<!ENTITY % local.productnumber.attrib "">
+<!ENTITY % productnumber.role.attrib "%role.attrib;">
+
+<!ENTITY % productnumber.element "INCLUDE">
+<![%productnumber.element;[
+<!--doc:A number assigned to a product.-->
+<!ELEMENT productnumber %ho; (%docinfo.char.mix;)*>
+<!--end of productnumber.element-->]]>
+
+<!ENTITY % productnumber.attlist "INCLUDE">
+<![%productnumber.attlist;[
+<!ATTLIST productnumber
+ %common.attrib;
+ %productnumber.role.attrib;
+ %local.productnumber.attrib;
+>
+<!--end of productnumber.attlist-->]]>
+<!--end of productnumber.module-->]]>
+
+<!-- PubDate .......................... -->
+
+<!ENTITY % pubdate.module "INCLUDE">
+<![%pubdate.module;[
+<!ENTITY % local.pubdate.attrib "">
+<!ENTITY % pubdate.role.attrib "%role.attrib;">
+
+<!ENTITY % pubdate.element "INCLUDE">
+<![%pubdate.element;[
+<!--doc:The date of publication of a document.-->
+<!ELEMENT pubdate %ho; (%docinfo.char.mix;)*>
+<!--end of pubdate.element-->]]>
+
+<!ENTITY % pubdate.attlist "INCLUDE">
+<![%pubdate.attlist;[
+<!ATTLIST pubdate
+ %common.attrib;
+ %pubdate.role.attrib;
+ %local.pubdate.attrib;
+>
+<!--end of pubdate.attlist-->]]>
+<!--end of pubdate.module-->]]>
+
+<!-- Publisher ........................ -->
+
+<!ENTITY % publisher.content.module "INCLUDE">
+<![%publisher.content.module;[
+<!ENTITY % publisher.module "INCLUDE">
+<![%publisher.module;[
+<!ENTITY % local.publisher.attrib "">
+<!ENTITY % publisher.role.attrib "%role.attrib;">
+
+<!ENTITY % publisher.element "INCLUDE">
+<![%publisher.element;[
+<!--doc:The publisher of a document.-->
+<!ELEMENT publisher %ho; (publishername, address*)>
+<!--end of publisher.element-->]]>
+
+<!ENTITY % publisher.attlist "INCLUDE">
+<![%publisher.attlist;[
+<!ATTLIST publisher
+ %common.attrib;
+ %publisher.role.attrib;
+ %local.publisher.attrib;
+>
+<!--end of publisher.attlist-->]]>
+<!--end of publisher.module-->]]>
+
+ <!ENTITY % publishername.module "INCLUDE">
+ <![%publishername.module;[
+ <!ENTITY % local.publishername.attrib "">
+ <!ENTITY % publishername.role.attrib "%role.attrib;">
+
+<!ENTITY % publishername.element "INCLUDE">
+<![%publishername.element;[
+<!--doc:The name of the publisher of a document.-->
+<!ELEMENT publishername %ho; (%docinfo.char.mix;)*>
+<!--end of publishername.element-->]]>
+
+<!ENTITY % publishername.attlist "INCLUDE">
+<![%publishername.attlist;[
+<!ATTLIST publishername
+ %common.attrib;
+ %publishername.role.attrib;
+ %local.publishername.attrib;
+>
+<!--end of publishername.attlist-->]]>
+ <!--end of publishername.module-->]]>
+
+ <!-- Address (defined elsewhere in this section)-->
+<!--end of publisher.content.module-->]]>
+
+<!-- PubsNumber ....................... -->
+
+<!ENTITY % pubsnumber.module "INCLUDE">
+<![%pubsnumber.module;[
+<!ENTITY % local.pubsnumber.attrib "">
+<!ENTITY % pubsnumber.role.attrib "%role.attrib;">
+
+<!ENTITY % pubsnumber.element "INCLUDE">
+<![%pubsnumber.element;[
+<!--doc:A number assigned to a publication other than an ISBN or ISSN or inventory part number.-->
+<!ELEMENT pubsnumber %ho; (%docinfo.char.mix;)*>
+<!--end of pubsnumber.element-->]]>
+
+<!ENTITY % pubsnumber.attlist "INCLUDE">
+<![%pubsnumber.attlist;[
+<!ATTLIST pubsnumber
+ %common.attrib;
+ %pubsnumber.role.attrib;
+ %local.pubsnumber.attrib;
+>
+<!--end of pubsnumber.attlist-->]]>
+<!--end of pubsnumber.module-->]]>
+
+<!-- ReleaseInfo ...................... -->
+
+<!ENTITY % releaseinfo.module "INCLUDE">
+<![%releaseinfo.module;[
+<!ENTITY % local.releaseinfo.attrib "">
+<!ENTITY % releaseinfo.role.attrib "%role.attrib;">
+
+<!ENTITY % releaseinfo.element "INCLUDE">
+<![%releaseinfo.element;[
+<!--doc:Information about a particular release of a document.-->
+<!ELEMENT releaseinfo %ho; (%docinfo.char.mix;)*>
+<!--end of releaseinfo.element-->]]>
+
+<!ENTITY % releaseinfo.attlist "INCLUDE">
+<![%releaseinfo.attlist;[
+<!ATTLIST releaseinfo
+ %common.attrib;
+ %releaseinfo.role.attrib;
+ %local.releaseinfo.attrib;
+>
+<!--end of releaseinfo.attlist-->]]>
+<!--end of releaseinfo.module-->]]>
+
+<!-- RevHistory ....................... -->
+
+<!ENTITY % revhistory.content.module "INCLUDE">
+<![%revhistory.content.module;[
+<!ENTITY % revhistory.module "INCLUDE">
+<![%revhistory.module;[
+<!ENTITY % local.revhistory.attrib "">
+<!ENTITY % revhistory.role.attrib "%role.attrib;">
+
+<!ENTITY % revhistory.element "INCLUDE">
+<![%revhistory.element;[
+<!--doc:A history of the revisions to a document.-->
+<!ELEMENT revhistory %ho; (revision+)>
+<!--end of revhistory.element-->]]>
+
+<!ENTITY % revhistory.attlist "INCLUDE">
+<![%revhistory.attlist;[
+<!ATTLIST revhistory
+ %common.attrib;
+ %revhistory.role.attrib;
+ %local.revhistory.attrib;
+>
+<!--end of revhistory.attlist-->]]>
+<!--end of revhistory.module-->]]>
+
+<!ENTITY % revision.module "INCLUDE">
+<![%revision.module;[
+<!ENTITY % local.revision.attrib "">
+<!ENTITY % revision.role.attrib "%role.attrib;">
+
+<!ENTITY % revision.element "INCLUDE">
+<![%revision.element;[
+<!--doc:An entry describing a single revision in the history of the revisions to a document.-->
+<!ELEMENT revision %ho; (revnumber?, date, (author|authorinitials)*,
+ (revremark|revdescription)?)>
+<!--end of revision.element-->]]>
+
+<!ENTITY % revision.attlist "INCLUDE">
+<![%revision.attlist;[
+<!ATTLIST revision
+ %common.attrib;
+ %revision.role.attrib;
+ %local.revision.attrib;
+>
+<!--end of revision.attlist-->]]>
+<!--end of revision.module-->]]>
+
+<!ENTITY % revnumber.module "INCLUDE">
+<![%revnumber.module;[
+<!ENTITY % local.revnumber.attrib "">
+<!ENTITY % revnumber.role.attrib "%role.attrib;">
+
+<!ENTITY % revnumber.element "INCLUDE">
+<![%revnumber.element;[
+<!--doc:A document revision number.-->
+<!ELEMENT revnumber %ho; (%docinfo.char.mix;)*>
+<!--end of revnumber.element-->]]>
+
+<!ENTITY % revnumber.attlist "INCLUDE">
+<![%revnumber.attlist;[
+<!ATTLIST revnumber
+ %common.attrib;
+ %revnumber.role.attrib;
+ %local.revnumber.attrib;
+>
+<!--end of revnumber.attlist-->]]>
+<!--end of revnumber.module-->]]>
+
+<!-- Date (defined elsewhere in this section)-->
+<!-- AuthorInitials (defined elsewhere in this section)-->
+
+<!ENTITY % revremark.module "INCLUDE">
+<![%revremark.module;[
+<!ENTITY % local.revremark.attrib "">
+<!ENTITY % revremark.role.attrib "%role.attrib;">
+
+<!ENTITY % revremark.element "INCLUDE">
+<![%revremark.element;[
+<!--doc:A description of a revision to a document.-->
+<!ELEMENT revremark %ho; (%docinfo.char.mix;)*>
+<!--end of revremark.element-->]]>
+
+<!ENTITY % revremark.attlist "INCLUDE">
+<![%revremark.attlist;[
+<!ATTLIST revremark
+ %common.attrib;
+ %revremark.role.attrib;
+ %local.revremark.attrib;
+>
+<!--end of revremark.attlist-->]]>
+<!--end of revremark.module-->]]>
+
+<!ENTITY % revdescription.module "INCLUDE">
+<![ %revdescription.module; [
+<!ENTITY % local.revdescription.attrib "">
+<!ENTITY % revdescription.role.attrib "%role.attrib;">
+
+<!ENTITY % revdescription.element "INCLUDE">
+<![ %revdescription.element; [
+<!--doc:A extended description of a revision to a document.-->
+<!ELEMENT revdescription %ho; ((%revdescription.mix;)+)>
+<!--end of revdescription.element-->]]>
+
+<!ENTITY % revdescription.attlist "INCLUDE">
+<![ %revdescription.attlist; [
+<!ATTLIST revdescription
+ %common.attrib;
+ %revdescription.role.attrib;
+ %local.revdescription.attrib;
+>
+<!--end of revdescription.attlist-->]]>
+<!--end of revdescription.module-->]]>
+<!--end of revhistory.content.module-->]]>
+
+<!-- SeriesVolNums .................... -->
+
+<!ENTITY % seriesvolnums.module "INCLUDE">
+<![%seriesvolnums.module;[
+<!ENTITY % local.seriesvolnums.attrib "">
+<!ENTITY % seriesvolnums.role.attrib "%role.attrib;">
+
+<!ENTITY % seriesvolnums.element "INCLUDE">
+<![%seriesvolnums.element;[
+<!--doc:Numbers of the volumes in a series of books.-->
+<!ELEMENT seriesvolnums %ho; (%docinfo.char.mix;)*>
+<!--end of seriesvolnums.element-->]]>
+
+<!ENTITY % seriesvolnums.attlist "INCLUDE">
+<![%seriesvolnums.attlist;[
+<!ATTLIST seriesvolnums
+ %common.attrib;
+ %seriesvolnums.role.attrib;
+ %local.seriesvolnums.attrib;
+>
+<!--end of seriesvolnums.attlist-->]]>
+<!--end of seriesvolnums.module-->]]>
+
+<!-- VolumeNum ........................ -->
+
+<!ENTITY % volumenum.module "INCLUDE">
+<![%volumenum.module;[
+<!ENTITY % local.volumenum.attrib "">
+<!ENTITY % volumenum.role.attrib "%role.attrib;">
+
+<!ENTITY % volumenum.element "INCLUDE">
+<![%volumenum.element;[
+<!--doc:The volume number of a document in a set (as of books in a set or articles in a journal).-->
+<!ELEMENT volumenum %ho; (%docinfo.char.mix;)*>
+<!--end of volumenum.element-->]]>
+
+<!ENTITY % volumenum.attlist "INCLUDE">
+<![%volumenum.attlist;[
+<!ATTLIST volumenum
+ %common.attrib;
+ %volumenum.role.attrib;
+ %local.volumenum.attrib;
+>
+<!--end of volumenum.attlist-->]]>
+<!--end of volumenum.module-->]]>
+
+<!-- .................................. -->
+
+<!--end of docinfo.content.module-->]]>
+
+<!-- ...................................................................... -->
+<!-- Inline, link, and ubiquitous elements ................................ -->
+
+<!-- Technical and computer terms ......................................... -->
+
+<!ENTITY % accel.module "INCLUDE">
+<![%accel.module;[
+<!ENTITY % local.accel.attrib "">
+<!ENTITY % accel.role.attrib "%role.attrib;">
+
+<!ENTITY % accel.element "INCLUDE">
+<![%accel.element;[
+<!--doc:A graphical user interface (GUI) keyboard shortcut.-->
+<!ELEMENT accel %ho; (%smallcptr.char.mix;)*>
+<!--end of accel.element-->]]>
+
+<!ENTITY % accel.attlist "INCLUDE">
+<![%accel.attlist;[
+<!ATTLIST accel
+ %common.attrib;
+ %accel.role.attrib;
+ %local.accel.attrib;
+>
+<!--end of accel.attlist-->]]>
+<!--end of accel.module-->]]>
+
+<!ENTITY % action.module "INCLUDE">
+<![%action.module;[
+<!ENTITY % local.action.attrib "">
+<!ENTITY % action.role.attrib "%role.attrib;">
+
+<!ENTITY % action.element "INCLUDE">
+<![%action.element;[
+<!--doc:A response to a user event.-->
+<!ELEMENT action %ho; (%cptr.char.mix;)*>
+<!--end of action.element-->]]>
+
+<!ENTITY % action.attlist "INCLUDE">
+<![%action.attlist;[
+<!ATTLIST action
+ %moreinfo.attrib;
+ %common.attrib;
+ %action.role.attrib;
+ %local.action.attrib;
+>
+<!--end of action.attlist-->]]>
+<!--end of action.module-->]]>
+
+<!ENTITY % application.module "INCLUDE">
+<![%application.module;[
+<!ENTITY % local.application.attrib "">
+<!ENTITY % application.role.attrib "%role.attrib;">
+
+<!ENTITY % application.element "INCLUDE">
+<![%application.element;[
+<!--doc:The name of a software program.-->
+<!ELEMENT application %ho; (%para.char.mix;)*>
+<!--end of application.element-->]]>
+
+<!ENTITY % application.attlist "INCLUDE">
+<![%application.attlist;[
+<!ATTLIST application
+ class (hardware
+ |software) #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %application.role.attrib;
+ %local.application.attrib;
+>
+<!--end of application.attlist-->]]>
+<!--end of application.module-->]]>
+
+<!ENTITY % classname.module "INCLUDE">
+<![%classname.module;[
+<!ENTITY % local.classname.attrib "">
+<!ENTITY % classname.role.attrib "%role.attrib;">
+
+<!ENTITY % classname.element "INCLUDE">
+<![%classname.element;[
+<!--doc:The name of a class, in the object-oriented programming sense.-->
+<!ELEMENT classname %ho; (%smallcptr.char.mix;)*>
+<!--end of classname.element-->]]>
+
+<!ENTITY % classname.attlist "INCLUDE">
+<![%classname.attlist;[
+<!ATTLIST classname
+ %common.attrib;
+ %classname.role.attrib;
+ %local.classname.attrib;
+>
+<!--end of classname.attlist-->]]>
+<!--end of classname.module-->]]>
+
+<!ENTITY % package.module "INCLUDE">
+<![%package.module;[
+<!ENTITY % local.package.attrib "">
+<!ENTITY % package.role.attrib "%role.attrib;">
+
+<!ENTITY % package.element "INCLUDE">
+<![%package.element;[
+<!--doc:A package.-->
+<!ELEMENT package %ho; (%smallcptr.char.mix;)*>
+<!--end of package.element-->]]>
+
+<!ENTITY % package.attlist "INCLUDE">
+<![%package.attlist;[
+<!ATTLIST package
+ %common.attrib;
+ %package.role.attrib;
+ %local.package.attrib;
+>
+<!--end of package.attlist-->]]>
+<!--end of package.module-->]]>
+
+<!ENTITY % co.module "INCLUDE">
+<![%co.module;[
+<!ENTITY % local.co.attrib "">
+<!-- CO is a callout area of the LineColumn unit type (a single character
+ position); the position is directly indicated by the location of CO. -->
+<!ENTITY % co.role.attrib "%role.attrib;">
+
+<!ENTITY % co.element "INCLUDE">
+<![%co.element;[
+<!--doc:The location of a callout embedded in text.-->
+<!ELEMENT co %ho; EMPTY>
+<!--end of co.element-->]]>
+
+<!-- bug number/symbol override or initialization -->
+<!-- to any related information -->
+
+
+<!ENTITY % co.attlist "INCLUDE">
+<![%co.attlist;[
+<!ATTLIST co
+ %label.attrib;
+ %linkends.attrib;
+ %idreq.common.attrib;
+ %co.role.attrib;
+ %local.co.attrib;
+>
+<!--end of co.attlist-->]]>
+<!--end of co.module-->]]>
+
+<!ENTITY % coref.module "INCLUDE">
+<![%coref.module;[
+<!ENTITY % local.coref.attrib "">
+<!-- COREF is a reference to a CO -->
+<!ENTITY % coref.role.attrib "%role.attrib;">
+
+<!ENTITY % coref.element "INCLUDE">
+<![%coref.element;[
+<!--doc:A cross reference to a co.-->
+<!ELEMENT coref %ho; EMPTY>
+<!--end of coref.element-->]]>
+
+<!-- bug number/symbol override or initialization -->
+<!-- to any related information -->
+
+<!ENTITY % coref.attlist "INCLUDE">
+<![%coref.attlist;[
+<!ATTLIST coref
+ %label.attrib;
+ %linkendreq.attrib;
+ %common.attrib;
+ %coref.role.attrib;
+ %local.coref.attrib;
+>
+<!--end of coref.attlist-->]]>
+<!--end of coref.module-->]]>
+
+<!ENTITY % command.module "INCLUDE">
+<![%command.module;[
+<!ENTITY % local.command.attrib "">
+<!ENTITY % command.role.attrib "%role.attrib;">
+
+<!ENTITY % command.element "INCLUDE">
+<![%command.element;[
+<!--doc:The name of an executable program or other software command.-->
+<!ELEMENT command %ho; (%cptr.char.mix;)*>
+<!--end of command.element-->]]>
+
+<!ENTITY % command.attlist "INCLUDE">
+<![%command.attlist;[
+<!ATTLIST command
+ %moreinfo.attrib;
+ %common.attrib;
+ %command.role.attrib;
+ %local.command.attrib;
+>
+<!--end of command.attlist-->]]>
+<!--end of command.module-->]]>
+
+<!ENTITY % computeroutput.module "INCLUDE">
+<![%computeroutput.module;[
+<!ENTITY % local.computeroutput.attrib "">
+<!ENTITY % computeroutput.role.attrib "%role.attrib;">
+
+<!ENTITY % computeroutput.element "INCLUDE">
+<![%computeroutput.element;[
+<!--doc:Data, generally text, displayed or presented by a computer.-->
+<!ELEMENT computeroutput %ho; (%cptr.char.mix;|co)*>
+<!--end of computeroutput.element-->]]>
+
+<!ENTITY % computeroutput.attlist "INCLUDE">
+<![%computeroutput.attlist;[
+<!ATTLIST computeroutput
+ %moreinfo.attrib;
+ %common.attrib;
+ %computeroutput.role.attrib;
+ %local.computeroutput.attrib;
+>
+<!--end of computeroutput.attlist-->]]>
+<!--end of computeroutput.module-->]]>
+
+<!ENTITY % database.module "INCLUDE">
+<![%database.module;[
+<!ENTITY % local.database.attrib "">
+<!ENTITY % database.role.attrib "%role.attrib;">
+
+<!ENTITY % database.element "INCLUDE">
+<![%database.element;[
+<!--doc:The name of a database, or part of a database.-->
+<!ELEMENT database %ho; (%cptr.char.mix;)*>
+<!--end of database.element-->]]>
+
+<!-- Class: Type of database the element names; no default -->
+
+
+<!ENTITY % database.attlist "INCLUDE">
+<![%database.attlist;[
+<!ATTLIST database
+ class (name
+ |table
+ |field
+ |key1
+ |key2
+ |record
+ |index
+ |view
+ |primarykey
+ |secondarykey
+ |foreignkey
+ |altkey
+ |procedure
+ |datatype
+ |constraint
+ |rule
+ |user
+ |group) #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %database.role.attrib;
+ %local.database.attrib;
+>
+<!--end of database.attlist-->]]>
+<!--end of database.module-->]]>
+
+<!ENTITY % email.module "INCLUDE">
+<![%email.module;[
+<!ENTITY % local.email.attrib "">
+<!ENTITY % email.role.attrib "%role.attrib;">
+
+<!ENTITY % email.element "INCLUDE">
+<![%email.element;[
+<!--doc:An email address.-->
+<!ELEMENT email %ho; (%docinfo.char.mix;)*>
+<!--end of email.element-->]]>
+
+<!ENTITY % email.attlist "INCLUDE">
+<![%email.attlist;[
+<!ATTLIST email
+ %common.attrib;
+ %email.role.attrib;
+ %local.email.attrib;
+>
+<!--end of email.attlist-->]]>
+<!--end of email.module-->]]>
+
+<!ENTITY % envar.module "INCLUDE">
+<![%envar.module;[
+<!ENTITY % local.envar.attrib "">
+<!ENTITY % envar.role.attrib "%role.attrib;">
+
+<!ENTITY % envar.element "INCLUDE">
+<![%envar.element;[
+<!--doc:A software environment variable.-->
+<!ELEMENT envar %ho; (%smallcptr.char.mix;)*>
+<!--end of envar.element-->]]>
+
+<!ENTITY % envar.attlist "INCLUDE">
+<![%envar.attlist;[
+<!ATTLIST envar
+ %common.attrib;
+ %envar.role.attrib;
+ %local.envar.attrib;
+>
+<!--end of envar.attlist-->]]>
+<!--end of envar.module-->]]>
+
+
+<!ENTITY % errorcode.module "INCLUDE">
+<![%errorcode.module;[
+<!ENTITY % local.errorcode.attrib "">
+<!ENTITY % errorcode.role.attrib "%role.attrib;">
+
+<!ENTITY % errorcode.element "INCLUDE">
+<![%errorcode.element;[
+<!--doc:An error code.-->
+<!ELEMENT errorcode %ho; (%smallcptr.char.mix;)*>
+<!--end of errorcode.element-->]]>
+
+<!ENTITY % errorcode.attlist "INCLUDE">
+<![%errorcode.attlist;[
+<!ATTLIST errorcode
+ %moreinfo.attrib;
+ %common.attrib;
+ %errorcode.role.attrib;
+ %local.errorcode.attrib;
+>
+<!--end of errorcode.attlist-->]]>
+<!--end of errorcode.module-->]]>
+
+<!ENTITY % errorname.module "INCLUDE">
+<![%errorname.module;[
+<!ENTITY % local.errorname.attrib "">
+<!ENTITY % errorname.role.attrib "%role.attrib;">
+
+<!ENTITY % errorname.element "INCLUDE">
+<![%errorname.element;[
+<!--doc:An error name.-->
+<!ELEMENT errorname %ho; (%smallcptr.char.mix;)*>
+<!--end of errorname.element-->]]>
+
+<!ENTITY % errorname.attlist "INCLUDE">
+<![%errorname.attlist;[
+<!ATTLIST errorname
+ %common.attrib;
+ %errorname.role.attrib;
+ %local.errorname.attrib;
+>
+<!--end of errorname.attlist-->]]>
+<!--end of errorname.module-->]]>
+
+<!ENTITY % errortext.module "INCLUDE">
+<![%errortext.module;[
+<!ENTITY % local.errortext.attrib "">
+<!ENTITY % errortext.role.attrib "%role.attrib;">
+
+<!ENTITY % errortext.element "INCLUDE">
+<![%errortext.element;[
+<!--doc:An error message..-->
+<!ELEMENT errortext %ho; (%smallcptr.char.mix;)*>
+<!--end of errortext.element-->]]>
+
+<!ENTITY % errortext.attlist "INCLUDE">
+<![%errortext.attlist;[
+<!ATTLIST errortext
+ %common.attrib;
+ %errortext.role.attrib;
+ %local.errortext.attrib;
+>
+<!--end of errortext.attlist-->]]>
+<!--end of errortext.module-->]]>
+
+<!ENTITY % errortype.module "INCLUDE">
+<![%errortype.module;[
+<!ENTITY % local.errortype.attrib "">
+<!ENTITY % errortype.role.attrib "%role.attrib;">
+
+<!ENTITY % errortype.element "INCLUDE">
+<![%errortype.element;[
+<!--doc:The classification of an error message.-->
+<!ELEMENT errortype %ho; (%smallcptr.char.mix;)*>
+<!--end of errortype.element-->]]>
+
+<!ENTITY % errortype.attlist "INCLUDE">
+<![%errortype.attlist;[
+<!ATTLIST errortype
+ %common.attrib;
+ %errortype.role.attrib;
+ %local.errortype.attrib;
+>
+<!--end of errortype.attlist-->]]>
+<!--end of errortype.module-->]]>
+
+<!ENTITY % filename.module "INCLUDE">
+<![%filename.module;[
+<!ENTITY % local.filename.attrib "">
+<!ENTITY % filename.role.attrib "%role.attrib;">
+
+<!ENTITY % filename.element "INCLUDE">
+<![%filename.element;[
+<!--doc:The name of a file.-->
+<!ELEMENT filename %ho; (%cptr.char.mix;)*>
+<!--end of filename.element-->]]>
+
+<!-- Class: Type of filename the element names; no default -->
+<!-- Path: Search path (possibly system-specific) in which
+ file can be found -->
+
+
+<!ENTITY % filename.attlist "INCLUDE">
+<![%filename.attlist;[
+<!ATTLIST filename
+ class (headerfile
+ |partition
+ |devicefile
+ |libraryfile
+ |directory
+ |extension
+ |symlink) #IMPLIED
+ path CDATA #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %filename.role.attrib;
+ %local.filename.attrib;
+>
+<!--end of filename.attlist-->]]>
+<!--end of filename.module-->]]>
+
+<!ENTITY % function.module "INCLUDE">
+<![%function.module;[
+<!ENTITY % local.function.attrib "">
+<!ENTITY % function.role.attrib "%role.attrib;">
+
+<!ENTITY % function.element "INCLUDE">
+<![%function.element;[
+<!--doc:The name of a function or subroutine, as in a programming language.-->
+<!ELEMENT function %ho; (%cptr.char.mix;)*>
+<!--end of function.element-->]]>
+
+<!ENTITY % function.attlist "INCLUDE">
+<![%function.attlist;[
+<!ATTLIST function
+ %moreinfo.attrib;
+ %common.attrib;
+ %function.role.attrib;
+ %local.function.attrib;
+>
+<!--end of function.attlist-->]]>
+<!--end of function.module-->]]>
+
+<!ENTITY % guibutton.module "INCLUDE">
+<![%guibutton.module;[
+<!ENTITY % local.guibutton.attrib "">
+<!ENTITY % guibutton.role.attrib "%role.attrib;">
+
+<!ENTITY % guibutton.element "INCLUDE">
+<![%guibutton.element;[
+<!--doc:The text on a button in a GUI.-->
+<!ELEMENT guibutton %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guibutton.element-->]]>
+
+<!ENTITY % guibutton.attlist "INCLUDE">
+<![%guibutton.attlist;[
+<!ATTLIST guibutton
+ %moreinfo.attrib;
+ %common.attrib;
+ %guibutton.role.attrib;
+ %local.guibutton.attrib;
+>
+<!--end of guibutton.attlist-->]]>
+<!--end of guibutton.module-->]]>
+
+<!ENTITY % guiicon.module "INCLUDE">
+<![%guiicon.module;[
+<!ENTITY % local.guiicon.attrib "">
+<!ENTITY % guiicon.role.attrib "%role.attrib;">
+
+<!ENTITY % guiicon.element "INCLUDE">
+<![%guiicon.element;[
+<!--doc:Graphic and/or text appearing as a icon in a GUI.-->
+<!ELEMENT guiicon %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guiicon.element-->]]>
+
+<!ENTITY % guiicon.attlist "INCLUDE">
+<![%guiicon.attlist;[
+<!ATTLIST guiicon
+ %moreinfo.attrib;
+ %common.attrib;
+ %guiicon.role.attrib;
+ %local.guiicon.attrib;
+>
+<!--end of guiicon.attlist-->]]>
+<!--end of guiicon.module-->]]>
+
+<!ENTITY % guilabel.module "INCLUDE">
+<![%guilabel.module;[
+<!ENTITY % local.guilabel.attrib "">
+<!ENTITY % guilabel.role.attrib "%role.attrib;">
+
+<!ENTITY % guilabel.element "INCLUDE">
+<![%guilabel.element;[
+<!--doc:The text of a label in a GUI.-->
+<!ELEMENT guilabel %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guilabel.element-->]]>
+
+<!ENTITY % guilabel.attlist "INCLUDE">
+<![%guilabel.attlist;[
+<!ATTLIST guilabel
+ %moreinfo.attrib;
+ %common.attrib;
+ %guilabel.role.attrib;
+ %local.guilabel.attrib;
+>
+<!--end of guilabel.attlist-->]]>
+<!--end of guilabel.module-->]]>
+
+<!ENTITY % guimenu.module "INCLUDE">
+<![%guimenu.module;[
+<!ENTITY % local.guimenu.attrib "">
+<!ENTITY % guimenu.role.attrib "%role.attrib;">
+
+<!ENTITY % guimenu.element "INCLUDE">
+<![%guimenu.element;[
+<!--doc:The name of a menu in a GUI.-->
+<!ELEMENT guimenu %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guimenu.element-->]]>
+
+<!ENTITY % guimenu.attlist "INCLUDE">
+<![%guimenu.attlist;[
+<!ATTLIST guimenu
+ %moreinfo.attrib;
+ %common.attrib;
+ %guimenu.role.attrib;
+ %local.guimenu.attrib;
+>
+<!--end of guimenu.attlist-->]]>
+<!--end of guimenu.module-->]]>
+
+<!ENTITY % guimenuitem.module "INCLUDE">
+<![%guimenuitem.module;[
+<!ENTITY % local.guimenuitem.attrib "">
+<!ENTITY % guimenuitem.role.attrib "%role.attrib;">
+
+<!ENTITY % guimenuitem.element "INCLUDE">
+<![%guimenuitem.element;[
+<!--doc:The name of a terminal menu item in a GUI.-->
+<!ELEMENT guimenuitem %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guimenuitem.element-->]]>
+
+<!ENTITY % guimenuitem.attlist "INCLUDE">
+<![%guimenuitem.attlist;[
+<!ATTLIST guimenuitem
+ %moreinfo.attrib;
+ %common.attrib;
+ %guimenuitem.role.attrib;
+ %local.guimenuitem.attrib;
+>
+<!--end of guimenuitem.attlist-->]]>
+<!--end of guimenuitem.module-->]]>
+
+<!ENTITY % guisubmenu.module "INCLUDE">
+<![%guisubmenu.module;[
+<!ENTITY % local.guisubmenu.attrib "">
+<!ENTITY % guisubmenu.role.attrib "%role.attrib;">
+
+<!ENTITY % guisubmenu.element "INCLUDE">
+<![%guisubmenu.element;[
+<!--doc:The name of a submenu in a GUI.-->
+<!ELEMENT guisubmenu %ho; (%smallcptr.char.mix;|accel|superscript|subscript)*>
+<!--end of guisubmenu.element-->]]>
+
+<!ENTITY % guisubmenu.attlist "INCLUDE">
+<![%guisubmenu.attlist;[
+<!ATTLIST guisubmenu
+ %moreinfo.attrib;
+ %common.attrib;
+ %guisubmenu.role.attrib;
+ %local.guisubmenu.attrib;
+>
+<!--end of guisubmenu.attlist-->]]>
+<!--end of guisubmenu.module-->]]>
+
+<!ENTITY % hardware.module "INCLUDE">
+<![%hardware.module;[
+<!ENTITY % local.hardware.attrib "">
+<!ENTITY % hardware.role.attrib "%role.attrib;">
+
+<!ENTITY % hardware.element "INCLUDE">
+<![%hardware.element;[
+<!--doc:A physical part of a computer system.-->
+<!ELEMENT hardware %ho; (%cptr.char.mix;)*>
+<!--end of hardware.element-->]]>
+
+<!ENTITY % hardware.attlist "INCLUDE">
+<![%hardware.attlist;[
+<!ATTLIST hardware
+ %moreinfo.attrib;
+ %common.attrib;
+ %hardware.role.attrib;
+ %local.hardware.attrib;
+>
+<!--end of hardware.attlist-->]]>
+<!--end of hardware.module-->]]>
+
+<!ENTITY % interface.module "INCLUDE">
+<![%interface.module;[
+<!ENTITY % local.interface.attrib "">
+<!ENTITY % interface.role.attrib "%role.attrib;">
+
+<!ENTITY % interface.element "INCLUDE">
+<![%interface.element;[
+<!--doc:An element of a GUI.-->
+<!ELEMENT interface %ho; (%smallcptr.char.mix;|accel)*>
+<!--end of interface.element-->]]>
+
+<!-- Class: Type of the Interface item; no default -->
+
+
+<!ENTITY % interface.attlist "INCLUDE">
+<![%interface.attlist;[
+<!ATTLIST interface
+ %moreinfo.attrib;
+ %common.attrib;
+ %interface.role.attrib;
+ %local.interface.attrib;
+>
+<!--end of interface.attlist-->]]>
+<!--end of interface.module-->]]>
+
+<!ENTITY % keycap.module "INCLUDE">
+<![%keycap.module;[
+<!ENTITY % local.keycap.attrib "">
+<!ENTITY % keycap.role.attrib "%role.attrib;">
+
+<!ENTITY % keycap.element "INCLUDE">
+<![%keycap.element;[
+<!--doc:The text printed on a key on a keyboard.-->
+<!ELEMENT keycap %ho; (%cptr.char.mix;)*>
+<!--end of keycap.element-->]]>
+
+<!ENTITY % keycap.attlist "INCLUDE">
+<![%keycap.attlist;[
+<!ATTLIST keycap
+ function (alt
+ |control
+ |shift
+ |meta
+ |escape
+ |enter
+ |tab
+ |backspace
+ |command
+ |option
+ |space
+ |delete
+ |insert
+ |up
+ |down
+ |left
+ |right
+ |home
+ |end
+ |pageup
+ |pagedown
+ |other) #IMPLIED
+ otherfunction CDATA #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %keycap.role.attrib;
+ %local.keycap.attrib;
+>
+<!--end of keycap.attlist-->]]>
+<!--end of keycap.module-->]]>
+
+<!ENTITY % keycode.module "INCLUDE">
+<![%keycode.module;[
+<!ENTITY % local.keycode.attrib "">
+<!ENTITY % keycode.role.attrib "%role.attrib;">
+
+<!ENTITY % keycode.element "INCLUDE">
+<![%keycode.element;[
+<!--doc:The internal, frequently numeric, identifier for a key on a keyboard.-->
+<!ELEMENT keycode %ho; (%smallcptr.char.mix;)*>
+<!--end of keycode.element-->]]>
+
+<!ENTITY % keycode.attlist "INCLUDE">
+<![%keycode.attlist;[
+<!ATTLIST keycode
+ %common.attrib;
+ %keycode.role.attrib;
+ %local.keycode.attrib;
+>
+<!--end of keycode.attlist-->]]>
+<!--end of keycode.module-->]]>
+
+<!ENTITY % keycombo.module "INCLUDE">
+<![%keycombo.module;[
+<!ENTITY % local.keycombo.attrib "">
+<!ENTITY % keycombo.role.attrib "%role.attrib;">
+
+<!ENTITY % keycombo.element "INCLUDE">
+<![%keycombo.element;[
+<!--doc:A combination of input actions.-->
+<!ELEMENT keycombo %ho; ((keycap|keycombo|keysym|mousebutton)+)>
+<!--end of keycombo.element-->]]>
+
+<!ENTITY % keycombo.attlist "INCLUDE">
+<![%keycombo.attlist;[
+<!ATTLIST keycombo
+ %keyaction.attrib;
+ %moreinfo.attrib;
+ %common.attrib;
+ %keycombo.role.attrib;
+ %local.keycombo.attrib;
+>
+<!--end of keycombo.attlist-->]]>
+<!--end of keycombo.module-->]]>
+
+<!ENTITY % keysym.module "INCLUDE">
+<![%keysym.module;[
+<!ENTITY % local.keysym.attrib "">
+<!ENTITY % keysysm.role.attrib "%role.attrib;">
+
+<!ENTITY % keysym.element "INCLUDE">
+<![%keysym.element;[
+<!--doc:The symbolic name of a key on a keyboard.-->
+<!ELEMENT keysym %ho; (%smallcptr.char.mix;)*>
+<!--end of keysym.element-->]]>
+
+<!ENTITY % keysym.attlist "INCLUDE">
+<![%keysym.attlist;[
+<!ATTLIST keysym
+ %common.attrib;
+ %keysysm.role.attrib;
+ %local.keysym.attrib;
+>
+<!--end of keysym.attlist-->]]>
+<!--end of keysym.module-->]]>
+
+<!ENTITY % lineannotation.module "INCLUDE">
+<![%lineannotation.module;[
+<!ENTITY % local.lineannotation.attrib "">
+<!ENTITY % lineannotation.role.attrib "%role.attrib;">
+
+<!ENTITY % lineannotation.element "INCLUDE">
+<![%lineannotation.element;[
+<!--doc:A comment on a line in a verbatim listing.-->
+<!ELEMENT lineannotation %ho; (%para.char.mix;)*>
+<!--end of lineannotation.element-->]]>
+
+<!ENTITY % lineannotation.attlist "INCLUDE">
+<![%lineannotation.attlist;[
+<!ATTLIST lineannotation
+ %common.attrib;
+ %lineannotation.role.attrib;
+ %local.lineannotation.attrib;
+>
+<!--end of lineannotation.attlist-->]]>
+<!--end of lineannotation.module-->]]>
+
+<!ENTITY % literal.module "INCLUDE">
+<![%literal.module;[
+<!ENTITY % local.literal.attrib "">
+<!ENTITY % literal.role.attrib "%role.attrib;">
+
+<!ENTITY % literal.element "INCLUDE">
+<![%literal.element;[
+<!--doc:Inline text that is some literal value.-->
+<!ELEMENT literal %ho; (%cptr.char.mix;)*>
+<!--end of literal.element-->]]>
+
+<!ENTITY % literal.attlist "INCLUDE">
+<![%literal.attlist;[
+<!ATTLIST literal
+ %moreinfo.attrib;
+ %common.attrib;
+ %literal.role.attrib;
+ %local.literal.attrib;
+>
+<!--end of literal.attlist-->]]>
+<!--end of literal.module-->]]>
+
+<!ENTITY % code.module "INCLUDE">
+<![%code.module;[
+<!ENTITY % local.code.attrib "">
+<!ENTITY % code.role.attrib "%role.attrib;">
+
+<!ENTITY % code.element "INCLUDE">
+<![%code.element;[
+<!--doc:An inline code fragment.-->
+<!ELEMENT code %ho; (%cptr.char.mix;)*>
+<!--end of code.element-->]]>
+
+<!ENTITY % code.attlist "INCLUDE">
+<![%code.attlist;[
+<!ATTLIST code
+ language CDATA #IMPLIED
+ %common.attrib;
+ %code.role.attrib;
+ %local.code.attrib;
+>
+<!--end of code.attlist-->]]>
+<!--end of code.module-->]]>
+
+<!ENTITY % constant.module "INCLUDE">
+<![ %constant.module; [
+<!ENTITY % local.constant.attrib "">
+<!ENTITY % constant.role.attrib "%role.attrib;">
+
+<!ENTITY % constant.element "INCLUDE">
+<![ %constant.element; [
+<!--doc:A programming or system constant.-->
+<!ELEMENT constant %ho; (%smallcptr.char.mix;)*>
+<!--end of constant.element-->]]>
+
+<!ENTITY % constant.attlist "INCLUDE">
+<![ %constant.attlist; [
+<!ATTLIST constant
+ class (limit) #IMPLIED
+ %common.attrib;
+ %constant.role.attrib;
+ %local.constant.attrib;
+>
+<!--end of constant.attlist-->]]>
+<!--end of constant.module-->]]>
+
+<!ENTITY % varname.module "INCLUDE">
+<![ %varname.module; [
+<!ENTITY % local.varname.attrib "">
+<!ENTITY % varname.role.attrib "%role.attrib;">
+
+<!ENTITY % varname.element "INCLUDE">
+<![ %varname.element; [
+<!--doc:The name of a variable.-->
+<!ELEMENT varname %ho; (%smallcptr.char.mix;)*>
+<!--end of varname.element-->]]>
+
+<!ENTITY % varname.attlist "INCLUDE">
+<![ %varname.attlist; [
+<!ATTLIST varname
+ %common.attrib;
+ %varname.role.attrib;
+ %local.varname.attrib;
+>
+<!--end of varname.attlist-->]]>
+<!--end of varname.module-->]]>
+
+<!ENTITY % markup.module "INCLUDE">
+<![%markup.module;[
+<!ENTITY % local.markup.attrib "">
+<!ENTITY % markup.role.attrib "%role.attrib;">
+
+<!ENTITY % markup.element "INCLUDE">
+<![%markup.element;[
+<!--doc:A string of formatting markup in text that is to be represented literally.-->
+<!ELEMENT markup %ho; (%smallcptr.char.mix;)*>
+<!--end of markup.element-->]]>
+
+<!ENTITY % markup.attlist "INCLUDE">
+<![%markup.attlist;[
+<!ATTLIST markup
+ %common.attrib;
+ %markup.role.attrib;
+ %local.markup.attrib;
+>
+<!--end of markup.attlist-->]]>
+<!--end of markup.module-->]]>
+
+<!ENTITY % medialabel.module "INCLUDE">
+<![%medialabel.module;[
+<!ENTITY % local.medialabel.attrib "">
+<!ENTITY % medialabel.role.attrib "%role.attrib;">
+
+<!ENTITY % medialabel.element "INCLUDE">
+<![%medialabel.element;[
+<!--doc:A name that identifies the physical medium on which some information resides.-->
+<!ELEMENT medialabel %ho; (%smallcptr.char.mix;)*>
+<!--end of medialabel.element-->]]>
+
+<!-- Class: Type of medium named by the element; no default -->
+
+
+<!ENTITY % medialabel.attlist "INCLUDE">
+<![%medialabel.attlist;[
+<!ATTLIST medialabel
+ class (cartridge
+ |cdrom
+ |disk
+ |tape) #IMPLIED
+ %common.attrib;
+ %medialabel.role.attrib;
+ %local.medialabel.attrib;
+>
+<!--end of medialabel.attlist-->]]>
+<!--end of medialabel.module-->]]>
+
+<!ENTITY % menuchoice.content.module "INCLUDE">
+<![%menuchoice.content.module;[
+<!ENTITY % menuchoice.module "INCLUDE">
+<![%menuchoice.module;[
+<!ENTITY % local.menuchoice.attrib "">
+<!ENTITY % menuchoice.role.attrib "%role.attrib;">
+
+<!ENTITY % menuchoice.element "INCLUDE">
+<![%menuchoice.element;[
+<!--doc:A selection or series of selections from a menu.-->
+<!ELEMENT menuchoice %ho; (shortcut?, (guibutton|guiicon|guilabel
+ |guimenu|guimenuitem|guisubmenu|interface)+)>
+<!--end of menuchoice.element-->]]>
+
+<!ENTITY % menuchoice.attlist "INCLUDE">
+<![%menuchoice.attlist;[
+<!ATTLIST menuchoice
+ %moreinfo.attrib;
+ %common.attrib;
+ %menuchoice.role.attrib;
+ %local.menuchoice.attrib;
+>
+<!--end of menuchoice.attlist-->]]>
+<!--end of menuchoice.module-->]]>
+
+<!ENTITY % shortcut.module "INCLUDE">
+<![%shortcut.module;[
+<!-- See also KeyCombo -->
+<!ENTITY % local.shortcut.attrib "">
+<!ENTITY % shortcut.role.attrib "%role.attrib;">
+
+<!ENTITY % shortcut.element "INCLUDE">
+<![%shortcut.element;[
+<!--doc:A key combination for an action that is also accessible through a menu.-->
+<!ELEMENT shortcut %ho; ((keycap|keycombo|keysym|mousebutton)+)>
+<!--end of shortcut.element-->]]>
+
+<!ENTITY % shortcut.attlist "INCLUDE">
+<![%shortcut.attlist;[
+<!ATTLIST shortcut
+ %keyaction.attrib;
+ %moreinfo.attrib;
+ %common.attrib;
+ %shortcut.role.attrib;
+ %local.shortcut.attrib;
+>
+<!--end of shortcut.attlist-->]]>
+<!--end of shortcut.module-->]]>
+<!--end of menuchoice.content.module-->]]>
+
+<!ENTITY % mousebutton.module "INCLUDE">
+<![%mousebutton.module;[
+<!ENTITY % local.mousebutton.attrib "">
+<!ENTITY % mousebutton.role.attrib "%role.attrib;">
+
+<!ENTITY % mousebutton.element "INCLUDE">
+<![%mousebutton.element;[
+<!--doc:The conventional name of a mouse button.-->
+<!ELEMENT mousebutton %ho; (%smallcptr.char.mix;)*>
+<!--end of mousebutton.element-->]]>
+
+<!ENTITY % mousebutton.attlist "INCLUDE">
+<![%mousebutton.attlist;[
+<!ATTLIST mousebutton
+ %moreinfo.attrib;
+ %common.attrib;
+ %mousebutton.role.attrib;
+ %local.mousebutton.attrib;
+>
+<!--end of mousebutton.attlist-->]]>
+<!--end of mousebutton.module-->]]>
+
+<!ENTITY % msgtext.module "INCLUDE">
+<![%msgtext.module;[
+<!ENTITY % local.msgtext.attrib "">
+<!ENTITY % msgtext.role.attrib "%role.attrib;">
+
+<!ENTITY % msgtext.element "INCLUDE">
+<![%msgtext.element;[
+<!--doc:The actual text of a message component in a message set.-->
+<!ELEMENT msgtext %ho; ((%component.mix;)+)>
+<!--end of msgtext.element-->]]>
+
+<!ENTITY % msgtext.attlist "INCLUDE">
+<![%msgtext.attlist;[
+<!ATTLIST msgtext
+ %common.attrib;
+ %msgtext.role.attrib;
+ %local.msgtext.attrib;
+>
+<!--end of msgtext.attlist-->]]>
+<!--end of msgtext.module-->]]>
+
+<!ENTITY % option.module "INCLUDE">
+<![%option.module;[
+<!ENTITY % local.option.attrib "">
+<!ENTITY % option.role.attrib "%role.attrib;">
+
+<!ENTITY % option.element "INCLUDE">
+<![%option.element;[
+<!--doc:An option for a software command.-->
+<!ELEMENT option %ho; (%cptr.char.mix;)*>
+<!--end of option.element-->]]>
+
+<!ENTITY % option.attlist "INCLUDE">
+<![%option.attlist;[
+<!ATTLIST option
+ %common.attrib;
+ %option.role.attrib;
+ %local.option.attrib;
+>
+<!--end of option.attlist-->]]>
+<!--end of option.module-->]]>
+
+<!ENTITY % optional.module "INCLUDE">
+<![%optional.module;[
+<!ENTITY % local.optional.attrib "">
+<!ENTITY % optional.role.attrib "%role.attrib;">
+
+<!ENTITY % optional.element "INCLUDE">
+<![%optional.element;[
+<!--doc:Optional information.-->
+<!ELEMENT optional %ho; (%cptr.char.mix;)*>
+<!--end of optional.element-->]]>
+
+<!ENTITY % optional.attlist "INCLUDE">
+<![%optional.attlist;[
+<!ATTLIST optional
+ %common.attrib;
+ %optional.role.attrib;
+ %local.optional.attrib;
+>
+<!--end of optional.attlist-->]]>
+<!--end of optional.module-->]]>
+
+<!ENTITY % parameter.module "INCLUDE">
+<![%parameter.module;[
+<!ENTITY % local.parameter.attrib "">
+<!ENTITY % parameter.role.attrib "%role.attrib;">
+
+<!ENTITY % parameter.element "INCLUDE">
+<![%parameter.element;[
+<!--doc:A value or a symbolic reference to a value.-->
+<!ELEMENT parameter %ho; (%cptr.char.mix;)*>
+<!--end of parameter.element-->]]>
+
+<!-- Class: Type of the Parameter; no default -->
+
+
+<!ENTITY % parameter.attlist "INCLUDE">
+<![%parameter.attlist;[
+<!ATTLIST parameter
+ class (command
+ |function
+ |option) #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %parameter.role.attrib;
+ %local.parameter.attrib;
+>
+<!--end of parameter.attlist-->]]>
+<!--end of parameter.module-->]]>
+
+<!ENTITY % prompt.module "INCLUDE">
+<![%prompt.module;[
+<!ENTITY % local.prompt.attrib "">
+<!ENTITY % prompt.role.attrib "%role.attrib;">
+
+<!ENTITY % prompt.element "INCLUDE">
+<![%prompt.element;[
+<!--doc:A character or string indicating the start of an input field in a computer display.-->
+<!ELEMENT prompt %ho; (%smallcptr.char.mix;|co)*>
+<!--end of prompt.element-->]]>
+
+<!ENTITY % prompt.attlist "INCLUDE">
+<![%prompt.attlist;[
+<!ATTLIST prompt
+ %moreinfo.attrib;
+ %common.attrib;
+ %prompt.role.attrib;
+ %local.prompt.attrib;
+>
+<!--end of prompt.attlist-->]]>
+<!--end of prompt.module-->]]>
+
+<!ENTITY % property.module "INCLUDE">
+<![%property.module;[
+<!ENTITY % local.property.attrib "">
+<!ENTITY % property.role.attrib "%role.attrib;">
+
+<!ENTITY % property.element "INCLUDE">
+<![%property.element;[
+<!--doc:A unit of data associated with some part of a computer system.-->
+<!ELEMENT property %ho; (%cptr.char.mix;)*>
+<!--end of property.element-->]]>
+
+<!ENTITY % property.attlist "INCLUDE">
+<![%property.attlist;[
+<!ATTLIST property
+ %moreinfo.attrib;
+ %common.attrib;
+ %property.role.attrib;
+ %local.property.attrib;
+>
+<!--end of property.attlist-->]]>
+<!--end of property.module-->]]>
+
+<!ENTITY % replaceable.module "INCLUDE">
+<![%replaceable.module;[
+<!ENTITY % local.replaceable.attrib "">
+<!ENTITY % replaceable.role.attrib "%role.attrib;">
+
+<!ENTITY % replaceable.element "INCLUDE">
+<![%replaceable.element;[
+<!--doc:Content that may or must be replaced by the user.-->
+<!ELEMENT replaceable %ho; (#PCDATA
+ | %link.char.class;
+ | optional
+ | %base.char.class;
+ | %other.char.class;
+ | inlinegraphic
+ | inlinemediaobject
+ | co)*>
+<!--end of replaceable.element-->]]>
+
+<!-- Class: Type of information the element represents; no
+ default -->
+
+
+<!ENTITY % replaceable.attlist "INCLUDE">
+<![%replaceable.attlist;[
+<!ATTLIST replaceable
+ class (command
+ |function
+ |option
+ |parameter) #IMPLIED
+ %common.attrib;
+ %replaceable.role.attrib;
+ %local.replaceable.attrib;
+>
+<!--end of replaceable.attlist-->]]>
+<!--end of replaceable.module-->]]>
+
+<!ENTITY % returnvalue.module "INCLUDE">
+<![%returnvalue.module;[
+<!ENTITY % local.returnvalue.attrib "">
+<!ENTITY % returnvalue.role.attrib "%role.attrib;">
+
+<!ENTITY % returnvalue.element "INCLUDE">
+<![%returnvalue.element;[
+<!--doc:The value returned by a function.-->
+<!ELEMENT returnvalue %ho; (%smallcptr.char.mix;)*>
+<!--end of returnvalue.element-->]]>
+
+<!ENTITY % returnvalue.attlist "INCLUDE">
+<![%returnvalue.attlist;[
+<!ATTLIST returnvalue
+ %common.attrib;
+ %returnvalue.role.attrib;
+ %local.returnvalue.attrib;
+>
+<!--end of returnvalue.attlist-->]]>
+<!--end of returnvalue.module-->]]>
+
+<!ENTITY % sgmltag.module "INCLUDE">
+<![%sgmltag.module;[
+<!ENTITY % local.sgmltag.attrib "">
+<!ENTITY % sgmltag.role.attrib "%role.attrib;">
+
+<!ENTITY % sgmltag.element "INCLUDE">
+<![%sgmltag.element;[
+<!--doc:A component of SGML markup.-->
+<!ELEMENT sgmltag %ho; (%smallcptr.char.mix;)*>
+<!--end of sgmltag.element-->]]>
+
+<!-- Class: Type of SGML construct the element names; no default -->
+
+
+<!ENTITY % sgmltag.attlist "INCLUDE">
+<![%sgmltag.attlist;[
+<!ATTLIST sgmltag
+ class (attribute
+ |attvalue
+ |element
+ |endtag
+ |emptytag
+ |genentity
+ |numcharref
+ |paramentity
+ |pi
+ |xmlpi
+ |starttag
+ |sgmlcomment
+ |prefix
+ |namespace
+ |localname) #IMPLIED
+ namespace CDATA #IMPLIED
+ %common.attrib;
+ %sgmltag.role.attrib;
+ %local.sgmltag.attrib;
+>
+<!--end of sgmltag.attlist-->]]>
+<!--end of sgmltag.module-->]]>
+
+<!ENTITY % structfield.module "INCLUDE">
+<![%structfield.module;[
+<!ENTITY % local.structfield.attrib "">
+<!ENTITY % structfield.role.attrib "%role.attrib;">
+
+<!ENTITY % structfield.element "INCLUDE">
+<![%structfield.element;[
+<!--doc:A field in a structure (in the programming language sense).-->
+<!ELEMENT structfield %ho; (%smallcptr.char.mix;)*>
+<!--end of structfield.element-->]]>
+
+<!ENTITY % structfield.attlist "INCLUDE">
+<![%structfield.attlist;[
+<!ATTLIST structfield
+ %common.attrib;
+ %structfield.role.attrib;
+ %local.structfield.attrib;
+>
+<!--end of structfield.attlist-->]]>
+<!--end of structfield.module-->]]>
+
+<!ENTITY % structname.module "INCLUDE">
+<![%structname.module;[
+<!ENTITY % local.structname.attrib "">
+<!ENTITY % structname.role.attrib "%role.attrib;">
+
+<!ENTITY % structname.element "INCLUDE">
+<![%structname.element;[
+<!--doc:The name of a structure (in the programming language sense).-->
+<!ELEMENT structname %ho; (%smallcptr.char.mix;)*>
+<!--end of structname.element-->]]>
+
+<!ENTITY % structname.attlist "INCLUDE">
+<![%structname.attlist;[
+<!ATTLIST structname
+ %common.attrib;
+ %structname.role.attrib;
+ %local.structname.attrib;
+>
+<!--end of structname.attlist-->]]>
+<!--end of structname.module-->]]>
+
+<!ENTITY % symbol.module "INCLUDE">
+<![%symbol.module;[
+<!ENTITY % local.symbol.attrib "">
+<!ENTITY % symbol.role.attrib "%role.attrib;">
+
+<!ENTITY % symbol.element "INCLUDE">
+<![%symbol.element;[
+<!--doc:A name that is replaced by a value before processing.-->
+<!ELEMENT symbol %ho; (%smallcptr.char.mix;)*>
+<!--end of symbol.element-->]]>
+
+<!-- Class: Type of symbol; no default -->
+
+
+<!ENTITY % symbol.attlist "INCLUDE">
+<![%symbol.attlist;[
+<!ATTLIST symbol
+ class (limit) #IMPLIED
+ %common.attrib;
+ %symbol.role.attrib;
+ %local.symbol.attrib;
+>
+<!--end of symbol.attlist-->]]>
+<!--end of symbol.module-->]]>
+
+<!ENTITY % systemitem.module "INCLUDE">
+<![%systemitem.module;[
+<!ENTITY % local.systemitem.attrib "">
+<!ENTITY % systemitem.role.attrib "%role.attrib;">
+
+<!ENTITY % systemitem.element "INCLUDE">
+<![%systemitem.element;[
+<!--doc:A system-related item or term.-->
+<!ELEMENT systemitem %ho; (%cptr.char.mix; | acronym | co)*>
+<!--end of systemitem.element-->]]>
+
+<!-- Class: Type of system item the element names; no default -->
+
+<!ENTITY % systemitem.attlist "INCLUDE">
+<![%systemitem.attlist;[
+<!ATTLIST systemitem
+ class (constant
+ |daemon
+ |domainname
+ |etheraddress
+ |event
+ |eventhandler
+ |filesystem
+ |fqdomainname
+ |groupname
+ |ipaddress
+ |library
+ |macro
+ |netmask
+ |newsgroup
+ |osname
+ |protocol
+ |resource
+ |systemname
+ |username
+ |process
+ |server
+ |service) #IMPLIED
+ %moreinfo.attrib;
+ %common.attrib;
+ %systemitem.role.attrib;
+ %local.systemitem.attrib;
+>
+<!--end of systemitem.attlist-->]]>
+<!--end of systemitem.module-->]]>
+
+<!ENTITY % uri.module "INCLUDE">
+<![%uri.module;[
+<!ENTITY % local.uri.attrib "">
+<!ENTITY % uri.role.attrib "%role.attrib;">
+
+<!ENTITY % uri.element "INCLUDE">
+<![%uri.element;[
+<!--doc:A Uniform Resource Identifier.-->
+<!ELEMENT uri %ho; (%smallcptr.char.mix;)*>
+<!--end of uri.element-->]]>
+
+<!-- Type: Type of URI; no default -->
+
+<!ENTITY % uri.attlist "INCLUDE">
+<![%uri.attlist;[
+<!ATTLIST uri
+ type CDATA #IMPLIED
+ %common.attrib;
+ %uri.role.attrib;
+ %local.uri.attrib;
+>
+<!--end of uri.attlist-->]]>
+<!--end of uri.module-->]]>
+
+<!ENTITY % token.module "INCLUDE">
+<![%token.module;[
+<!ENTITY % local.token.attrib "">
+<!ENTITY % token.role.attrib "%role.attrib;">
+
+<!ENTITY % token.element "INCLUDE">
+<![%token.element;[
+<!--doc:A unit of information.-->
+<!ELEMENT token %ho; (%smallcptr.char.mix;)*>
+<!--end of token.element-->]]>
+
+<!ENTITY % token.attlist "INCLUDE">
+<![%token.attlist;[
+<!ATTLIST token
+ %common.attrib;
+ %token.role.attrib;
+ %local.token.attrib;
+>
+<!--end of token.attlist-->]]>
+<!--end of token.module-->]]>
+
+<!ENTITY % type.module "INCLUDE">
+<![%type.module;[
+<!ENTITY % local.type.attrib "">
+<!ENTITY % type.role.attrib "%role.attrib;">
+
+<!ENTITY % type.element "INCLUDE">
+<![%type.element;[
+<!--doc:The classification of a value.-->
+<!ELEMENT type %ho; (%smallcptr.char.mix;)*>
+<!--end of type.element-->]]>
+
+<!ENTITY % type.attlist "INCLUDE">
+<![%type.attlist;[
+<!ATTLIST type
+ %common.attrib;
+ %type.role.attrib;
+ %local.type.attrib;
+>
+<!--end of type.attlist-->]]>
+<!--end of type.module-->]]>
+
+<!ENTITY % userinput.module "INCLUDE">
+<![%userinput.module;[
+<!ENTITY % local.userinput.attrib "">
+<!ENTITY % userinput.role.attrib "%role.attrib;">
+
+<!ENTITY % userinput.element "INCLUDE">
+<![%userinput.element;[
+<!--doc:Data entered by the user.-->
+<!ELEMENT userinput %ho; (%cptr.char.mix;|co)*>
+<!--end of userinput.element-->]]>
+
+<!ENTITY % userinput.attlist "INCLUDE">
+<![%userinput.attlist;[
+<!ATTLIST userinput
+ %moreinfo.attrib;
+ %common.attrib;
+ %userinput.role.attrib;
+ %local.userinput.attrib;
+>
+<!--end of userinput.attlist-->]]>
+<!--end of userinput.module-->]]>
+
+<!ENTITY % termdef.module "INCLUDE">
+<![%termdef.module;[
+<!ENTITY % local.termdef.attrib "">
+<!ENTITY % termdef.role.attrib "%role.attrib;">
+
+<!ENTITY % termdef.element "INCLUDE">
+<![%termdef.element;[
+<!--doc:An inline definition of a term.-->
+<!ELEMENT termdef %ho; (%para.char.mix;)*>
+<!--end of termdef.element-->]]>
+
+<!ENTITY % termdef.attlist "INCLUDE">
+<![%termdef.attlist;[
+<!ATTLIST termdef
+ %common.attrib;
+ %termdef.role.attrib;
+ %local.termdef.attrib;
+>
+<!--end of termdef.attlist-->]]>
+<!--end of termdef.module-->]]>
+
+<!-- General words and phrases ............................................ -->
+
+<!ENTITY % abbrev.module "INCLUDE">
+<![%abbrev.module;[
+<!ENTITY % local.abbrev.attrib "">
+<!ENTITY % abbrev.role.attrib "%role.attrib;">
+
+<!ENTITY % abbrev.element "INCLUDE">
+<![%abbrev.element;[
+<!--doc:An abbreviation, especially one followed by a period.-->
+<!ELEMENT abbrev %ho; (%word.char.mix;)*>
+<!--end of abbrev.element-->]]>
+
+<!ENTITY % abbrev.attlist "INCLUDE">
+<![%abbrev.attlist;[
+<!ATTLIST abbrev
+ %common.attrib;
+ %abbrev.role.attrib;
+ %local.abbrev.attrib;
+>
+<!--end of abbrev.attlist-->]]>
+<!--end of abbrev.module-->]]>
+
+<!ENTITY % acronym.module "INCLUDE">
+<![%acronym.module;[
+<!ENTITY % local.acronym.attrib "">
+<!ENTITY % acronym.role.attrib "%role.attrib;">
+
+<!ENTITY % acronym.element "INCLUDE">
+<![%acronym.element;[
+<!--doc:An often pronounceable word made from the initial (or selected) letters of a name or phrase.-->
+<!ELEMENT acronym %ho; (%word.char.mix;)*
+ %acronym.exclusion;>
+<!--end of acronym.element-->]]>
+
+<!ENTITY % acronym.attlist "INCLUDE">
+<![%acronym.attlist;[
+<!ATTLIST acronym
+ %common.attrib;
+ %acronym.role.attrib;
+ %local.acronym.attrib;
+>
+<!--end of acronym.attlist-->]]>
+<!--end of acronym.module-->]]>
+
+<!ENTITY % citation.module "INCLUDE">
+<![%citation.module;[
+<!ENTITY % local.citation.attrib "">
+<!ENTITY % citation.role.attrib "%role.attrib;">
+
+<!ENTITY % citation.element "INCLUDE">
+<![%citation.element;[
+<!--doc:An inline bibliographic reference to another published work.-->
+<!ELEMENT citation %ho; (%para.char.mix;)*>
+<!--end of citation.element-->]]>
+
+<!ENTITY % citation.attlist "INCLUDE">
+<![%citation.attlist;[
+<!ATTLIST citation
+ %common.attrib;
+ %citation.role.attrib;
+ %local.citation.attrib;
+>
+<!--end of citation.attlist-->]]>
+<!--end of citation.module-->]]>
+
+<!ENTITY % citerefentry.module "INCLUDE">
+<![%citerefentry.module;[
+<!ENTITY % local.citerefentry.attrib "">
+<!ENTITY % citerefentry.role.attrib "%role.attrib;">
+
+<!ENTITY % citerefentry.element "INCLUDE">
+<![%citerefentry.element;[
+<!--doc:A citation to a reference page.-->
+<!ELEMENT citerefentry %ho; (refentrytitle, manvolnum?)>
+<!--end of citerefentry.element-->]]>
+
+<!ENTITY % citerefentry.attlist "INCLUDE">
+<![%citerefentry.attlist;[
+<!ATTLIST citerefentry
+ %common.attrib;
+ %citerefentry.role.attrib;
+ %local.citerefentry.attrib;
+>
+<!--end of citerefentry.attlist-->]]>
+<!--end of citerefentry.module-->]]>
+
+<!ENTITY % refentrytitle.module "INCLUDE">
+<![%refentrytitle.module;[
+<!ENTITY % local.refentrytitle.attrib "">
+<!ENTITY % refentrytitle.role.attrib "%role.attrib;">
+
+<!ENTITY % refentrytitle.element "INCLUDE">
+<![%refentrytitle.element;[
+<!--doc:The title of a reference page.-->
+<!ELEMENT refentrytitle %ho; (%para.char.mix;)*>
+<!--end of refentrytitle.element-->]]>
+
+<!ENTITY % refentrytitle.attlist "INCLUDE">
+<![%refentrytitle.attlist;[
+<!ATTLIST refentrytitle
+ %common.attrib;
+ %refentrytitle.role.attrib;
+ %local.refentrytitle.attrib;
+>
+<!--end of refentrytitle.attlist-->]]>
+<!--end of refentrytitle.module-->]]>
+
+<!ENTITY % manvolnum.module "INCLUDE">
+<![%manvolnum.module;[
+<!ENTITY % local.manvolnum.attrib "">
+<!ENTITY % namvolnum.role.attrib "%role.attrib;">
+
+<!ENTITY % manvolnum.element "INCLUDE">
+<![%manvolnum.element;[
+<!--doc:A reference volume number.-->
+<!ELEMENT manvolnum %ho; (%word.char.mix;)*>
+<!--end of manvolnum.element-->]]>
+
+<!ENTITY % manvolnum.attlist "INCLUDE">
+<![%manvolnum.attlist;[
+<!ATTLIST manvolnum
+ %common.attrib;
+ %namvolnum.role.attrib;
+ %local.manvolnum.attrib;
+>
+<!--end of manvolnum.attlist-->]]>
+<!--end of manvolnum.module-->]]>
+
+<!ENTITY % citetitle.module "INCLUDE">
+<![%citetitle.module;[
+<!ENTITY % local.citetitle.attrib "">
+<!ENTITY % citetitle.role.attrib "%role.attrib;">
+
+<!ENTITY % citetitle.element "INCLUDE">
+<![%citetitle.element;[
+<!--doc:The title of a cited work.-->
+<!ELEMENT citetitle %ho; (%para.char.mix;)*>
+<!--end of citetitle.element-->]]>
+
+<!-- Pubwork: Genre of published work cited; no default -->
+
+
+<!ENTITY % citetitle.attlist "INCLUDE">
+<![%citetitle.attlist;[
+<!ATTLIST citetitle
+ pubwork (article
+ |book
+ |chapter
+ |part
+ |refentry
+ |section
+ |journal
+ |series
+ |set
+ |manuscript
+ |cdrom
+ |dvd
+ |wiki
+ |gopher
+ |bbs
+ |emailmessage
+ |webpage
+ |newsposting) #IMPLIED
+ %common.attrib;
+ %citetitle.role.attrib;
+ %local.citetitle.attrib;
+>
+<!--end of citetitle.attlist-->]]>
+<!--end of citetitle.module-->]]>
+
+<!ENTITY % emphasis.module "INCLUDE">
+<![%emphasis.module;[
+<!ENTITY % local.emphasis.attrib "">
+<!ENTITY % emphasis.role.attrib "%role.attrib;">
+
+<!ENTITY % emphasis.element "INCLUDE">
+<![%emphasis.element;[
+<!--doc:Emphasized text.-->
+<!ELEMENT emphasis %ho; (%para.char.mix;)*>
+<!--end of emphasis.element-->]]>
+
+<!ENTITY % emphasis.attlist "INCLUDE">
+<![%emphasis.attlist;[
+<!ATTLIST emphasis
+ %common.attrib;
+ %emphasis.role.attrib;
+ %local.emphasis.attrib;
+>
+<!--end of emphasis.attlist-->]]>
+<!--end of emphasis.module-->]]>
+
+<!ENTITY % foreignphrase.module "INCLUDE">
+<![%foreignphrase.module;[
+<!ENTITY % local.foreignphrase.attrib "">
+<!ENTITY % foreignphrase.role.attrib "%role.attrib;">
+
+<!ENTITY % foreignphrase.element "INCLUDE">
+<![%foreignphrase.element;[
+<!--doc:A word or phrase in a language other than the primary language of the document.-->
+<!ELEMENT foreignphrase %ho; (%para.char.mix;)*>
+<!--end of foreignphrase.element-->]]>
+
+<!ENTITY % foreignphrase.attlist "INCLUDE">
+<![%foreignphrase.attlist;[
+<!ATTLIST foreignphrase
+ %common.attrib;
+ %foreignphrase.role.attrib;
+ %local.foreignphrase.attrib;
+>
+<!--end of foreignphrase.attlist-->]]>
+<!--end of foreignphrase.module-->]]>
+
+<!ENTITY % glossterm.module "INCLUDE">
+<![%glossterm.module;[
+<!ENTITY % local.glossterm.attrib "">
+<!ENTITY % glossterm.role.attrib "%role.attrib;">
+
+<!ENTITY % glossterm.element "INCLUDE">
+<![%glossterm.element;[
+<!--doc:A glossary term.-->
+<!ELEMENT glossterm %ho; (%para.char.mix;)*
+ %glossterm.exclusion;>
+<!--end of glossterm.element-->]]>
+
+<!-- to GlossEntry if Glossterm used in text -->
+<!-- BaseForm: Provides the form of GlossTerm to be used
+ for indexing -->
+
+<!ENTITY % glossterm.attlist "INCLUDE">
+<![%glossterm.attlist;[
+<!ATTLIST glossterm
+ baseform CDATA #IMPLIED
+ %linkend.attrib;
+ %common.attrib;
+ %glossterm.role.attrib;
+ %local.glossterm.attrib;
+>
+<!--end of glossterm.attlist-->]]>
+<!--end of glossterm.module-->]]>
+
+<!ENTITY % firstterm.module "INCLUDE">
+<![%firstterm.module;[
+<!ENTITY % local.firstterm.attrib "">
+<!ENTITY % firstterm.role.attrib "%role.attrib;">
+
+<!ENTITY % firstterm.element "INCLUDE">
+<![%firstterm.element;[
+<!--doc:The first occurrence of a term.-->
+<!ELEMENT firstterm %ho; (%para.char.mix;)*
+ %glossterm.exclusion;>
+<!--end of firstterm.element-->]]>
+
+<!-- to GlossEntry or other explanation -->
+
+
+<!ENTITY % firstterm.attlist "INCLUDE">
+<![%firstterm.attlist;[
+<!ATTLIST firstterm
+ baseform CDATA #IMPLIED
+ %linkend.attrib;
+ %common.attrib;
+ %firstterm.role.attrib;
+ %local.firstterm.attrib;
+>
+<!--end of firstterm.attlist-->]]>
+<!--end of firstterm.module-->]]>
+
+<!ENTITY % phrase.module "INCLUDE">
+<![%phrase.module;[
+<!ENTITY % local.phrase.attrib "">
+<!ENTITY % phrase.role.attrib "%role.attrib;">
+
+<!ENTITY % phrase.element "INCLUDE">
+<![%phrase.element;[
+<!--doc:A span of text.-->
+<!ELEMENT phrase %ho; (%para.char.mix;)*>
+<!--end of phrase.element-->]]>
+
+<!ENTITY % phrase.attlist "INCLUDE">
+<![%phrase.attlist;[
+<!ATTLIST phrase
+ %common.attrib;
+ %phrase.role.attrib;
+ %local.phrase.attrib;
+>
+<!--end of phrase.attlist-->]]>
+<!--end of phrase.module-->]]>
+
+<!ENTITY % quote.module "INCLUDE">
+<![%quote.module;[
+<!ENTITY % local.quote.attrib "">
+<!ENTITY % quote.role.attrib "%role.attrib;">
+
+<!ENTITY % quote.element "INCLUDE">
+<![%quote.element;[
+<!--doc:An inline quotation.-->
+<!ELEMENT quote %ho; (%para.char.mix;)*>
+<!--end of quote.element-->]]>
+
+<!ENTITY % quote.attlist "INCLUDE">
+<![%quote.attlist;[
+<!ATTLIST quote
+ %common.attrib;
+ %quote.role.attrib;
+ %local.quote.attrib;
+>
+<!--end of quote.attlist-->]]>
+<!--end of quote.module-->]]>
+
+<!ENTITY % ssscript.module "INCLUDE">
+<![%ssscript.module;[
+<!ENTITY % local.ssscript.attrib "">
+<!ENTITY % ssscript.role.attrib "%role.attrib;">
+
+<!ENTITY % subscript.element "INCLUDE">
+<![%subscript.element;[
+<!--doc:A subscript (as in H{^2}O, the molecular formula for water).-->
+<!ELEMENT subscript %ho; (#PCDATA
+ | %link.char.class;
+ | emphasis
+ | replaceable
+ | symbol
+ | inlinegraphic
+ | inlinemediaobject
+ | %base.char.class;
+ | %other.char.class;)*
+ %ubiq.exclusion;>
+<!--end of subscript.element-->]]>
+
+<!ENTITY % subscript.attlist "INCLUDE">
+<![%subscript.attlist;[
+<!ATTLIST subscript
+ %common.attrib;
+ %ssscript.role.attrib;
+ %local.ssscript.attrib;
+>
+<!--end of subscript.attlist-->]]>
+
+<!ENTITY % superscript.element "INCLUDE">
+<![%superscript.element;[
+<!--doc:A superscript (as in x^2, the mathematical notation for x multiplied by itself).-->
+<!ELEMENT superscript %ho; (#PCDATA
+ | %link.char.class;
+ | emphasis
+ | replaceable
+ | symbol
+ | inlinegraphic
+ | inlinemediaobject
+ | %base.char.class;
+ | %other.char.class;)*
+ %ubiq.exclusion;>
+<!--end of superscript.element-->]]>
+
+<!ENTITY % superscript.attlist "INCLUDE">
+<![%superscript.attlist;[
+<!ATTLIST superscript
+ %common.attrib;
+ %ssscript.role.attrib;
+ %local.ssscript.attrib;
+>
+<!--end of superscript.attlist-->]]>
+<!--end of ssscript.module-->]]>
+
+<!ENTITY % trademark.module "INCLUDE">
+<![%trademark.module;[
+<!ENTITY % local.trademark.attrib "">
+<!ENTITY % trademark.role.attrib "%role.attrib;">
+
+<!ENTITY % trademark.element "INCLUDE">
+<![%trademark.element;[
+<!--doc:A trademark.-->
+<!ELEMENT trademark %ho; (#PCDATA
+ | %link.char.class;
+ | %tech.char.class;
+ | %base.char.class;
+ | %other.char.class;
+ | inlinegraphic
+ | inlinemediaobject
+ | emphasis)*>
+<!--end of trademark.element-->]]>
+
+<!-- Class: More precisely identifies the item the element names -->
+
+
+<!ENTITY % trademark.attlist "INCLUDE">
+<![%trademark.attlist;[
+<!ATTLIST trademark
+ class (service
+ |trade
+ |registered
+ |copyright) 'trade'
+ %common.attrib;
+ %trademark.role.attrib;
+ %local.trademark.attrib;
+>
+<!--end of trademark.attlist-->]]>
+<!--end of trademark.module-->]]>
+
+<!ENTITY % wordasword.module "INCLUDE">
+<![%wordasword.module;[
+<!ENTITY % local.wordasword.attrib "">
+<!ENTITY % wordasword.role.attrib "%role.attrib;">
+
+<!ENTITY % wordasword.element "INCLUDE">
+<![%wordasword.element;[
+<!--doc:A word meant specifically as a word and not representing anything else.-->
+<!ELEMENT wordasword %ho; (%word.char.mix;)*>
+<!--end of wordasword.element-->]]>
+
+<!ENTITY % wordasword.attlist "INCLUDE">
+<![%wordasword.attlist;[
+<!ATTLIST wordasword
+ %common.attrib;
+ %wordasword.role.attrib;
+ %local.wordasword.attrib;
+>
+<!--end of wordasword.attlist-->]]>
+<!--end of wordasword.module-->]]>
+
+<!-- Links and cross-references ........................................... -->
+
+<!ENTITY % link.module "INCLUDE">
+<![%link.module;[
+<!ENTITY % local.link.attrib "">
+<!ENTITY % link.role.attrib "%role.attrib;">
+
+<!ENTITY % link.element "INCLUDE">
+<![%link.element;[
+<!--doc:A hypertext link.-->
+<!ELEMENT link %ho; (%para.char.mix;)*
+ %links.exclusion;>
+<!--end of link.element-->]]>
+
+<!-- Endterm: ID of element containing text that is to be
+ fetched from elsewhere in the document to appear as
+ the content of this element -->
+<!-- to linked-to object -->
+<!-- Type: Freely assignable parameter -->
+
+
+<!ENTITY % link.attlist "INCLUDE">
+<![%link.attlist;[
+<!ATTLIST link
+ endterm IDREF #IMPLIED
+ xrefstyle CDATA #IMPLIED
+ type CDATA #IMPLIED
+ %linkendreq.attrib;
+ %common.attrib;
+ %link.role.attrib;
+ %local.link.attrib;
+>
+<!--end of link.attlist-->]]>
+<!--end of link.module-->]]>
+
+<!ENTITY % olink.module "INCLUDE">
+<![%olink.module;[
+<!ENTITY % local.olink.attrib "">
+<!ENTITY % olink.role.attrib "%role.attrib;">
+
+<!ENTITY % olink.element "INCLUDE">
+<![%olink.element;[
+<!--doc:A link that addresses its target indirectly, through an entity.-->
+<!ELEMENT olink %ho; (%para.char.mix;)*
+ %links.exclusion;>
+<!--end of olink.element-->]]>
+
+<!-- TargetDocEnt: Name of an entity to be the target of the link -->
+<!-- LinkMode: ID of a ModeSpec containing instructions for
+ operating on the entity named by TargetDocEnt -->
+<!-- LocalInfo: Information that may be passed to ModeSpec -->
+<!-- Type: Freely assignable parameter -->
+
+
+<!ENTITY % olink.attlist "INCLUDE">
+<![%olink.attlist;[
+<!ATTLIST olink
+ targetdocent ENTITY #IMPLIED
+ linkmode IDREF #IMPLIED
+ localinfo CDATA #IMPLIED
+ type CDATA #IMPLIED
+ targetdoc CDATA #IMPLIED
+ targetptr CDATA #IMPLIED
+ xrefstyle CDATA #IMPLIED
+ %common.attrib;
+ %olink.role.attrib;
+ %local.olink.attrib;
+>
+<!--end of olink.attlist-->]]>
+<!--end of olink.module-->]]>
+
+<!ENTITY % ulink.module "INCLUDE">
+<![%ulink.module;[
+<!ENTITY % local.ulink.attrib "">
+<!ENTITY % ulink.role.attrib "%role.attrib;">
+
+<!ENTITY % ulink.element "INCLUDE">
+<![%ulink.element;[
+<!--doc:A link that addresses its target by means of a URL (Uniform Resource Locator).-->
+<!ELEMENT ulink %ho; (%para.char.mix;)*
+ %links.exclusion;>
+<!--end of ulink.element-->]]>
+
+<!-- URL: uniform resource locator; the target of the ULink -->
+<!-- Type: Freely assignable parameter -->
+
+
+<!ENTITY % ulink.attlist "INCLUDE">
+<![%ulink.attlist;[
+<!ATTLIST ulink
+ url CDATA #REQUIRED
+ type CDATA #IMPLIED
+ xrefstyle CDATA #IMPLIED
+ %common.attrib;
+ %ulink.role.attrib;
+ %local.ulink.attrib;
+>
+<!--end of ulink.attlist-->]]>
+<!--end of ulink.module-->]]>
+
+<!ENTITY % footnoteref.module "INCLUDE">
+<![%footnoteref.module;[
+<!ENTITY % local.footnoteref.attrib "">
+<!ENTITY % footnoteref.role.attrib "%role.attrib;">
+
+<!ENTITY % footnoteref.element "INCLUDE">
+<![%footnoteref.element;[
+<!--doc:A cross reference to a footnote (a footnote mark).-->
+<!ELEMENT footnoteref %ho; EMPTY>
+<!--end of footnoteref.element-->]]>
+
+<!-- to footnote content supplied elsewhere -->
+
+
+<!ENTITY % footnoteref.attlist "INCLUDE">
+<![%footnoteref.attlist;[
+<!ATTLIST footnoteref
+ %linkendreq.attrib; %label.attrib;
+ %common.attrib;
+ %footnoteref.role.attrib;
+ %local.footnoteref.attrib;
+>
+<!--end of footnoteref.attlist-->]]>
+<!--end of footnoteref.module-->]]>
+
+<!ENTITY % xref.module "INCLUDE">
+<![%xref.module;[
+<!ENTITY % local.xref.attrib "">
+<!ENTITY % xref.role.attrib "%role.attrib;">
+
+<!ENTITY % xref.element "INCLUDE">
+<![%xref.element;[
+<!--doc:A cross reference to another part of the document.-->
+<!ELEMENT xref %ho; EMPTY>
+<!--end of xref.element-->]]>
+
+<!-- Endterm: ID of element containing text that is to be
+ fetched from elsewhere in the document to appear as
+ the content of this element -->
+<!-- to linked-to object -->
+
+
+<!ENTITY % xref.attlist "INCLUDE">
+<![%xref.attlist;[
+<!ATTLIST xref
+ endterm IDREF #IMPLIED
+ xrefstyle CDATA #IMPLIED
+ %common.attrib;
+ %linkendreq.attrib;
+ %xref.role.attrib;
+ %local.xref.attrib;
+>
+<!--end of xref.attlist-->]]>
+<!--end of xref.module-->]]>
+
+<!ENTITY % biblioref.module "INCLUDE">
+<![%biblioref.module;[
+<!ENTITY % local.biblioref.attrib "">
+<!ENTITY % biblioref.role.attrib "%role.attrib;">
+
+<!ENTITY % biblioref.element "INCLUDE">
+<![%biblioref.element;[
+<!--doc:A cross reference to a bibliographic entry.-->
+<!ELEMENT biblioref %ho; EMPTY>
+<!--end of biblioref.element-->]]>
+
+<!ENTITY % biblioref.attlist "INCLUDE">
+<![%biblioref.attlist;[
+<!ATTLIST biblioref
+ endterm IDREF #IMPLIED
+ xrefstyle CDATA #IMPLIED
+ units CDATA #IMPLIED
+ begin CDATA #IMPLIED
+ end CDATA #IMPLIED
+ %common.attrib;
+ %linkendreq.attrib;
+ %biblioref.role.attrib;
+ %local.biblioref.attrib;
+>
+<!--end of biblioref.attlist-->]]>
+<!--end of biblioref.module-->]]>
+
+<!-- Ubiquitous elements .................................................. -->
+
+<!ENTITY % anchor.module "INCLUDE">
+<![%anchor.module;[
+<!ENTITY % local.anchor.attrib "">
+<!ENTITY % anchor.role.attrib "%role.attrib;">
+
+<!ENTITY % anchor.element "INCLUDE">
+<![%anchor.element;[
+<!--doc:A spot in the document.-->
+<!ELEMENT anchor %ho; EMPTY>
+<!--end of anchor.element-->]]>
+
+<!-- required -->
+<!-- replaces Lang -->
+
+
+<!ENTITY % anchor.attlist "INCLUDE">
+<![%anchor.attlist;[
+<!ATTLIST anchor
+ %idreq.attrib; %pagenum.attrib; %remap.attrib;
+ %xreflabel.attrib;
+ %revisionflag.attrib;
+ %effectivity.attrib;
+ %anchor.role.attrib;
+ %local.anchor.attrib;
+>
+<!--end of anchor.attlist-->]]>
+<!--end of anchor.module-->]]>
+
+<!ENTITY % beginpage.module "INCLUDE">
+<![%beginpage.module;[
+<!ENTITY % local.beginpage.attrib "">
+<!ENTITY % beginpage.role.attrib "%role.attrib;">
+
+<!ENTITY % beginpage.element "INCLUDE">
+<![%beginpage.element;[
+<!--doc:The location of a page break in a print version of the document.-->
+<!ELEMENT beginpage %ho; EMPTY>
+<!--end of beginpage.element-->]]>
+
+<!-- PageNum: Number of page that begins at this point -->
+
+
+<!ENTITY % beginpage.attlist "INCLUDE">
+<![%beginpage.attlist;[
+<!ATTLIST beginpage
+ %pagenum.attrib;
+ %common.attrib;
+ %beginpage.role.attrib;
+ %local.beginpage.attrib;
+>
+<!--end of beginpage.attlist-->]]>
+<!--end of beginpage.module-->]]>
+
+<!-- IndexTerms appear in the text flow for generating or linking an
+ index. -->
+
+<!ENTITY % indexterm.content.module "INCLUDE">
+<![%indexterm.content.module;[
+<!ENTITY % indexterm.module "INCLUDE">
+<![%indexterm.module;[
+<!ENTITY % local.indexterm.attrib "">
+<!ENTITY % indexterm.role.attrib "%role.attrib;">
+
+<!ENTITY % indexterm.element "INCLUDE">
+<![%indexterm.element;[
+<!--doc:A wrapper for terms to be indexed.-->
+<!ELEMENT indexterm %ho; (primary?, ((secondary, ((tertiary, (see|seealso+)?)
+ | see | seealso+)?) | see | seealso+)?)
+ %ubiq.exclusion;>
+<!--end of indexterm.element-->]]>
+
+<!-- Scope: Indicates which generated indices the IndexTerm
+ should appear in: Global (whole document set), Local (this
+ document only), or All (both) -->
+<!-- Significance: Whether this IndexTerm is the most pertinent
+ of its series (Preferred) or not (Normal, the default) -->
+<!-- Class: Indicates type of IndexTerm; default is Singular,
+ or EndOfRange if StartRef is supplied; StartOfRange value
+ must be supplied explicitly on starts of ranges -->
+<!-- StartRef: ID of the IndexTerm that starts the indexing
+ range ended by this IndexTerm -->
+<!-- Zone: IDs of the elements to which the IndexTerm applies,
+ and indicates that the IndexTerm applies to those entire
+ elements rather than the point at which the IndexTerm
+ occurs -->
+
+
+<!ENTITY % indexterm.attlist "INCLUDE">
+<![%indexterm.attlist;[
+<!ATTLIST indexterm
+ %pagenum.attrib;
+ scope (all
+ |global
+ |local) #IMPLIED
+ significance (preferred
+ |normal) "normal"
+ class (singular
+ |startofrange
+ |endofrange) #IMPLIED
+ startref IDREF #IMPLIED
+ zone IDREFS #IMPLIED
+ type CDATA #IMPLIED
+ %common.attrib;
+ %indexterm.role.attrib;
+ %local.indexterm.attrib;
+>
+<!--end of indexterm.attlist-->]]>
+<!--end of indexterm.module-->]]>
+
+<!ENTITY % primsecter.module "INCLUDE">
+<![%primsecter.module;[
+<!ENTITY % local.primsecter.attrib "">
+<!ENTITY % primsecter.role.attrib "%role.attrib;">
+
+
+<!ENTITY % primary.element "INCLUDE">
+<![%primary.element;[
+<!--doc:The primary word or phrase under which an index term should be sorted.-->
+<!ELEMENT primary %ho; (%ndxterm.char.mix;)*>
+<!--end of primary.element-->]]>
+<!-- SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14" -->
+
+<!ENTITY % primary.attlist "INCLUDE">
+<![%primary.attlist;[
+<!ATTLIST primary
+ sortas CDATA #IMPLIED
+ %common.attrib;
+ %primsecter.role.attrib;
+ %local.primsecter.attrib;
+>
+<!--end of primary.attlist-->]]>
+
+
+<!ENTITY % secondary.element "INCLUDE">
+<![%secondary.element;[
+<!--doc:A secondary word or phrase in an index term.-->
+<!ELEMENT secondary %ho; (%ndxterm.char.mix;)*>
+<!--end of secondary.element-->]]>
+<!-- SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14" -->
+
+<!ENTITY % secondary.attlist "INCLUDE">
+<![%secondary.attlist;[
+<!ATTLIST secondary
+ sortas CDATA #IMPLIED
+ %common.attrib;
+ %primsecter.role.attrib;
+ %local.primsecter.attrib;
+>
+<!--end of secondary.attlist-->]]>
+
+
+<!ENTITY % tertiary.element "INCLUDE">
+<![%tertiary.element;[
+<!--doc:A tertiary word or phrase in an index term.-->
+<!ELEMENT tertiary %ho; (%ndxterm.char.mix;)*>
+<!--end of tertiary.element-->]]>
+<!-- SortAs: Alternate sort string for index sorting, e.g.,
+ "fourteen" for an element containing "14" -->
+
+<!ENTITY % tertiary.attlist "INCLUDE">
+<![%tertiary.attlist;[
+<!ATTLIST tertiary
+ sortas CDATA #IMPLIED
+ %common.attrib;
+ %primsecter.role.attrib;
+ %local.primsecter.attrib;
+>
+<!--end of tertiary.attlist-->]]>
+
+<!--end of primsecter.module-->]]>
+
+<!ENTITY % seeseealso.module "INCLUDE">
+<![%seeseealso.module;[
+<!ENTITY % local.seeseealso.attrib "">
+<!ENTITY % seeseealso.role.attrib "%role.attrib;">
+
+<!ENTITY % see.element "INCLUDE">
+<![%see.element;[
+<!--doc:Part of an index term directing the reader instead to another entry in the index.-->
+<!ELEMENT see %ho; (%ndxterm.char.mix;)*>
+<!--end of see.element-->]]>
+
+<!ENTITY % see.attlist "INCLUDE">
+<![%see.attlist;[
+<!ATTLIST see
+ %common.attrib;
+ %seeseealso.role.attrib;
+ %local.seeseealso.attrib;
+>
+<!--end of see.attlist-->]]>
+
+<!ENTITY % seealso.element "INCLUDE">
+<![%seealso.element;[
+<!--doc:Part of an index term directing the reader also to another entry in the index.-->
+<!ELEMENT seealso %ho; (%ndxterm.char.mix;)*>
+<!--end of seealso.element-->]]>
+
+<!ENTITY % seealso.attlist "INCLUDE">
+<![%seealso.attlist;[
+<!ATTLIST seealso
+ %common.attrib;
+ %seeseealso.role.attrib;
+ %local.seeseealso.attrib;
+>
+<!--end of seealso.attlist-->]]>
+<!--end of seeseealso.module-->]]>
+<!--end of indexterm.content.module-->]]>
+
+<!-- End of DocBook XML information pool module V4.5 ...................... -->
+<!-- ...................................................................... -->
diff --git a/doc/creating_themes/C/docbookx.dtd b/doc/creating_themes/C/docbookx.dtd
new file mode 100644
index 00000000..8b43c59b
--- /dev/null
+++ b/doc/creating_themes/C/docbookx.dtd
@@ -0,0 +1,170 @@
+<!-- ...................................................................... -->
+<!-- DocBook XML DTD V4.5 ................................................. -->
+<!-- File docbookx.dtd .................................................... -->
+
+<!-- Copyright 1992-2006 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ See also http://docbook.org/specs/
+
+ $Id: docbookx.dtd 6340 2006-10-03 13:23:24Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook XML DTD
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation for more information.
+
+ Please direct all questions, bug reports, or suggestions for
+ changes to the [email protected] mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This is the driver file for V4.5 of the DocBook DTD.
+ Please use the following formal public identifier to identify it:
+
+ "-//OASIS//DTD DocBook XML V4.5//EN"
+
+ For example, if your document's top-level element is Book, and
+ you are using DocBook directly, use the FPI in the DOCTYPE
+ declaration:
+
+ <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"
+ [...]>
+
+ Or, if you have a higher-level driver file that customizes DocBook,
+ use the FPI in the parameter entity declaration:
+
+ <!ENTITY % DocBookDTD PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
+ %DocBookDTD;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!-- ...................................................................... -->
+<!-- Enable SGML features ................................................. -->
+
+<!ENTITY % sgml.features "IGNORE">
+<![%sgml.features;[
+<!ENTITY % xml.features "IGNORE">
+]]>
+<!ENTITY % xml.features "INCLUDE">
+
+<![%sgml.features;[
+<![%xml.features;[
+
+<!-- ERROR: Exactly one of xml.features and sgml.features must be turned on! -->
+<!ENTITY % dbnotn SYSTEM "http://www.oasis-open.org/docbook/xml/configerror.txt">
+<!ENTITY % dbcent SYSTEM "http://www.oasis-open.org/docbook/xml/configerror.txt">
+<!ENTITY % dbpool SYSTEM "http://www.oasis-open.org/docbook/xml/configerror.txt">
+<!ENTITY % dbhier SYSTEM "http://www.oasis-open.org/docbook/xml/configerror.txt">
+<!ENTITY % dbgenent SYSTEM "http://www.oasis-open.org/docbook/xml/configerror.txt">
+
+]]>
+]]>
+
+<![%sgml.features;[
+<!ENTITY % ho "- O">
+<!ENTITY % hh "- -">
+]]>
+
+<![%xml.features;[
+<!ENTITY % ho "">
+<!ENTITY % hh "">
+]]>
+
+<!-- ...................................................................... -->
+<!-- Notation declarations ................................................ -->
+
+<!ENTITY % dbnotn.module "INCLUDE">
+<![%dbnotn.module;[
+<!ENTITY % dbnotn PUBLIC
+"-//OASIS//ENTITIES DocBook Notations V4.5//EN"
+"dbnotnx.mod">
+%dbnotn;
+]]>
+
+<!-- ...................................................................... -->
+<!-- ISO character entity sets ............................................ -->
+
+<!ENTITY % dbcent.module "INCLUDE">
+<![%dbcent.module;[
+
+<!ENTITY % dbcent.euro "INCLUDE">
+<![%dbcent.euro;[
+<![%sgml.features;[
+<!ENTITY euro SDATA "[euro ]"><!-- euro sign -->
+]]>
+<![%xml.features;[
+<!ENTITY euro "&#x20AC;"><!-- euro sign, U+20AC NEW -->
+]]>
+]]>
+
+<!ENTITY % dbcent PUBLIC
+"-//OASIS//ENTITIES DocBook Character Entities V4.5//EN"
+"dbcentx.mod">
+%dbcent;
+]]>
+
+<!-- ...................................................................... -->
+<!-- DTD modules .......................................................... -->
+
+<!-- Information pool .............. -->
+
+<!ENTITY % dbpool.module "INCLUDE">
+<![ %dbpool.module; [
+<!ENTITY % dbpool PUBLIC
+"-//OASIS//ELEMENTS DocBook Information Pool V4.5//EN"
+"dbpoolx.mod">
+%dbpool;
+]]>
+
+<!-- Redeclaration placeholder ..... -->
+
+<!ENTITY % intermod.redecl.module "IGNORE">
+<![%intermod.redecl.module;[
+<!-- Defining rdbmods here makes some buggy XML parsers happy. -->
+<!ENTITY % rdbmods "">
+%rdbmods;
+<!--end of intermod.redecl.module-->]]>
+
+<!-- Document hierarchy ............ -->
+
+<!ENTITY % dbhier.module "INCLUDE">
+<![ %dbhier.module; [
+<!ENTITY % dbhier PUBLIC
+"-//OASIS//ELEMENTS DocBook Document Hierarchy V4.5//EN"
+"dbhierx.mod">
+%dbhier;
+]]>
+
+<!-- ...................................................................... -->
+<!-- Other general entities ............................................... -->
+
+<!ENTITY % dbgenent.module "INCLUDE">
+<![ %dbgenent.module; [
+<!ENTITY % dbgenent PUBLIC
+"-//OASIS//ENTITIES DocBook Additional General Entities V4.5//EN"
+"dbgenent.mod">
+%dbgenent;
+]]>
+
+<!-- End of DocBook XML DTD V4.5 .......................................... -->
+<!-- ...................................................................... -->
diff --git a/doc/creating_themes/C/htmltblx.mod b/doc/creating_themes/C/htmltblx.mod
new file mode 100644
index 00000000..cdaefed4
--- /dev/null
+++ b/doc/creating_themes/C/htmltblx.mod
@@ -0,0 +1,245 @@
+<!-- ...................................................................... -->
+<!-- DocBook XML HTML Table Module V4.5 ................................... -->
+<!-- File htmltblx.mod .................................................... -->
+
+<!-- Copyright 2003-2006 ArborText, Inc., Norman Walsh, Sun Microsystems,
+ Inc., and the Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ $Id: htmltblx.mod 6340 2006-10-03 13:23:24Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook XML DTD
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the DTD for
+ any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook XML DTD in any way, except for declaring and
+ referencing additional sets of general entities and declaring
+ additional notations, label your DTD as a variant of DocBook. See
+ the maintenance documentation for more information.
+
+ Please direct all questions, bug reports, or suggestions for
+ changes to the [email protected] mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+-->
+
+<!-- ...................................................................... -->
+
+<!-- This module contains the definitions for elements that are
+ isomorphic to the HTML elements. One could argue we should
+ instead have based ourselves on the XHTML Table Module, but the
+ HTML one is more like what browsers are likely to accept today
+ and users are likely to use.
+
+ This module has been developed for use with the DocBook V4.5
+ "union table model" in which elements and attlists common to both
+ models are defined (as the union) in the CALS table module by
+ setting various parameter entities appropriately in this file.
+
+ In DTD driver files referring to this module, please use an entity
+ declaration that uses the public identifier shown below:
+
+ <!ENTITY % htmltbl PUBLIC
+ "-//OASIS//ELEMENTS DocBook XML HTML Tables V4.5//EN"
+ "htmltblx.mod">
+ %htmltbl;
+
+ See the documentation for detailed information on the parameter
+ entity and module scheme used in DocBook, customizing DocBook and
+ planning for interchange, and changes made since the last release
+ of DocBook.
+-->
+
+<!--======================= XHTML Tables =======================================-->
+
+<!ENTITY % html.coreattrs
+ "%common.attrib;
+ class CDATA #IMPLIED
+ style CDATA #IMPLIED
+ title CDATA #IMPLIED"
+ >
+
+<!-- Does not contain lang or dir because they are in %common.attribs -->
+<![%sgml.features;[
+<!ENTITY % i18n "">
+]]>
+<!ENTITY % i18n
+ "xml:lang NMTOKEN #IMPLIED"
+ >
+
+<!ENTITY % events
+ "onclick CDATA #IMPLIED
+ ondblclick CDATA #IMPLIED
+ onmousedown CDATA #IMPLIED
+ onmouseup CDATA #IMPLIED
+ onmouseover CDATA #IMPLIED
+ onmousemove CDATA #IMPLIED
+ onmouseout CDATA #IMPLIED
+ onkeypress CDATA #IMPLIED
+ onkeydown CDATA #IMPLIED
+ onkeyup CDATA #IMPLIED"
+ >
+
+<!ENTITY % attrs "%html.coreattrs; %i18n; %events;">
+
+<!ENTITY % cellhalign
+ "align (left|center|right|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff CDATA #IMPLIED"
+ >
+
+<!ENTITY % cellvalign
+ "valign (top|middle|bottom|baseline) #IMPLIED"
+ >
+
+<!--doc:A group of columns in an HTML table.-->
+<!ELEMENT colgroup %ho; (col)*>
+<!--doc:Specifications for a column in an HTML table.-->
+<!ELEMENT col %ho; EMPTY>
+<!--doc:A row in an HTML table.-->
+<!ELEMENT tr %ho; (th|td)+>
+<!--doc:A table header entry in an HTML table.-->
+<!ELEMENT th %ho; (%para.char.mix; | %tabentry.mix; | table | informaltable)*>
+<!--doc:A table ntry in an HTML table.-->
+<!ELEMENT td %ho; (%para.char.mix; | %tabentry.mix; | table | informaltable)*>
+
+<!ATTLIST colgroup
+ %attrs;
+ span CDATA "1"
+ width CDATA #IMPLIED
+ %cellhalign;
+ %cellvalign;
+ >
+
+<!ATTLIST col
+ %attrs;
+ span CDATA "1"
+ width CDATA #IMPLIED
+ %cellhalign;
+ %cellvalign;
+ >
+
+<!ATTLIST tr
+ %attrs;
+ %cellhalign;
+ %cellvalign;
+ bgcolor CDATA #IMPLIED
+ >
+
+<!ATTLIST th
+ %attrs;
+ abbr CDATA #IMPLIED
+ axis CDATA #IMPLIED
+ headers IDREFS #IMPLIED
+ scope (row|col|rowgroup|colgroup) #IMPLIED
+ rowspan CDATA "1"
+ colspan CDATA "1"
+ %cellhalign;
+ %cellvalign;
+ nowrap (nowrap) #IMPLIED
+ bgcolor CDATA #IMPLIED
+ width CDATA #IMPLIED
+ height CDATA #IMPLIED
+ >
+
+<!ATTLIST td
+ %attrs;
+ abbr CDATA #IMPLIED
+ axis CDATA #IMPLIED
+ headers IDREFS #IMPLIED
+ scope (row|col|rowgroup|colgroup) #IMPLIED
+ rowspan CDATA "1"
+ colspan CDATA "1"
+ %cellhalign;
+ %cellvalign;
+ nowrap (nowrap) #IMPLIED
+ bgcolor CDATA #IMPLIED
+ width CDATA #IMPLIED
+ height CDATA #IMPLIED
+ >
+
+<!-- ====================================================== -->
+<!-- Set up to read in the CALS model configured to
+ merge with the XHTML table model -->
+<!-- ====================================================== -->
+
+<!ENTITY % tables.role.attrib "%role.attrib;">
+
+<!-- Add label and role attributes to table and informaltable -->
+<!ENTITY % bodyatt "
+ floatstyle CDATA #IMPLIED
+ rowheader (firstcol|norowheader) #IMPLIED
+ %label.attrib;"
+>
+
+<!-- Add common attributes to Table, TGroup, TBody, THead, TFoot, Row,
+ EntryTbl, and Entry (and InformalTable element). -->
+
+<!ENTITY % secur "
+ %common.attrib;
+ class CDATA #IMPLIED
+ style CDATA #IMPLIED
+ title CDATA #IMPLIED
+ %i18n;
+ %events;
+ %tables.role.attrib;">
+
+<!ENTITY % common.table.attribs
+ "%bodyatt;
+ %secur;">
+
+<!-- Content model for Table (that also allows HTML tables) -->
+<!ENTITY % tbl.table.mdl
+ "((blockinfo?,
+ (%formalobject.title.content;),
+ (%ndxterm.class;)*,
+ textobject*,
+ (graphic+|mediaobject+|tgroup+))
+ |(caption, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+)))">
+
+<!ENTITY % informal.tbl.table.mdl
+ "(textobject*,
+ (graphic+|mediaobject+|tgroup+))
+ | ((col*|colgroup*), thead?, tfoot?, (tbody+|tr+))">
+
+<!-- Attributes for Table (including HTML ones) -->
+
+<!-- N.B. rules = (none | groups | rows | cols | all) but it can't be spec'd -->
+<!-- that way because 'all' already occurs in a different enumeration in -->
+<!-- CALS tables (frame). -->
+
+<!ENTITY % tbl.table.att '
+ tabstyle CDATA #IMPLIED
+ tocentry %yesorno.attvals; #IMPLIED
+ shortentry %yesorno.attvals; #IMPLIED
+ orient (port|land) #IMPLIED
+ pgwide %yesorno.attvals; #IMPLIED
+ summary CDATA #IMPLIED
+ width CDATA #IMPLIED
+ border CDATA #IMPLIED
+ rules CDATA #IMPLIED
+ cellspacing CDATA #IMPLIED
+ cellpadding CDATA #IMPLIED
+ align (left|center|right) #IMPLIED
+ bgcolor CDATA #IMPLIED
+'>
+
+<!ENTITY % tbl.frame.attval "void|above|below|hsides|lhs|rhs|vsides|box|border|
+top|bottom|topbot|all|sides|none">
+
+<!-- Allow either objects or inlines; beware of REs between elements. -->
+<!ENTITY % tbl.entry.mdl "%para.char.mix; | %tabentry.mix;">
+
+<!-- thead, tfoot, and tbody are defined in both table models,
+ so we set up parameter entities to define union models for them
+ -->
+
+<!ENTITY % tbl.hdft.mdl "(tr+|(colspec*,row+))">
+<!ENTITY % tbl.tbody.mdl "(tr+|row+)">
+<!ENTITY % tbl.valign.attval "top|middle|bottom|baseline">
+
+<!-- End of DocBook XML HTML Table Module V4.5 ............................ -->
+<!-- ...................................................................... -->
diff --git a/doc/creating_themes/C/soextblx.dtd b/doc/creating_themes/C/soextblx.dtd
new file mode 100644
index 00000000..4a92e116
--- /dev/null
+++ b/doc/creating_themes/C/soextblx.dtd
@@ -0,0 +1,321 @@
+<!-- XML EXCHANGE TABLE MODEL DECLARATION MODULE -->
+
+<!-- This set of declarations defines the XML version of the Exchange
+ Table Model as of the date shown in the Formal Public Identifier
+ (FPI) for this entity.
+
+ This set of declarations may be referred to using a public external
+ entity declaration and reference as shown in the following three
+ lines:
+
+ <!ENTITY % calstblx
+ PUBLIC "-//OASIS//DTD XML Exchange Table Model 19990315//EN">
+ %calstblx;
+
+ If various parameter entities used within this set of declarations
+ are to be given non-default values, the appropriate declarations
+ should be given before calling in this package (i.e., before the
+ "%calstblx;" reference).
+-->
+
+<!-- The motivation for this XML version of the Exchange Table Model
+ is simply to create an XML version of the SGML Exchange Table
+ Model. By design, no effort has been made to "improve" the model.
+
+ This XML version incorporates the logical bare minimum changes
+ necessary to make the Exchange Table Model a valid XML DTD.
+
+ It has been modified slightly for use in the combined HTML/CALS models
+ supported by DocBook V4.3 and later.
+-->
+
+<!-- The XML version of the Exchange Table Model differs from
+ the SGML version in the following ways:
+
+ The following parameter entities have been removed:
+
+ - tbl.table.excep, tbl.hdft.excep, tbl.row.excep, tbl.entry.excep
+ There are no exceptions in XML. The following normative statement
+ is made in lieu of exceptions: the exchange table model explicitly
+ forbids a table from occurring within another table. If the
+ content model of an entry includes a table element, then this
+ cannot be enforced by the DTD, but it is a deviation from the
+ exchange table model to include a table within a table.
+
+ - tbl.hdft.name, tbl.hdft.mdl, tbl.hdft.excep, tbl.hdft.att
+ The motivation for these elements was to change the table
+ header/footer elements. Since XML does not allow element declarations
+ to contain name groups, and the exchange table model does not
+ allow a table to contain footers, the continued presence of these
+ attributes seems unnecessary.
+
+ The following parameter entity has been added:
+
+ - tbl.thead.att
+ This entity parameterizes the attributes on thead. It replaces
+ the tbl.hdft.att parameter entity.
+
+ Other miscellaneous changes:
+
+ - Tag ommission indicators have been removed
+ - Comments have been removed from declarations
+ - NUMBER attributes have been changed to NMTOKEN
+ - NUTOKEN attributes have been to changed to NMTOKEN
+ - Removed the grouping characters around the content model
+ parameter entry for the 'entry' element. This is necessary
+ so that an entry can contain #PCDATA and be defined as an
+ optional, repeatable OR group beginning with #PCDATA.
+-->
+
+<!-- This entity includes a set of element and attribute declarations
+ that partially defines the Exchange table model. However, the model
+ is not well-defined without the accompanying natural language
+ description of the semantics (meanings) of these various elements,
+ attributes, and attribute values. The semantic writeup, also available
+ from SGML Open, should be used in conjunction with this entity.
+-->
+
+<!-- In order to use the Exchange table model, various parameter entity
+ declarations are required. A brief description is as follows:
+
+ ENTITY NAME WHERE USED WHAT IT IS
+
+ %yesorno In ATTLIST of: An attribute declared value
+ almost all elements for a "boolean" attribute
+
+ %paracon In content model of: The "text" (logical content)
+ <entry> of the model group for <entry>
+
+ %titles In content model of: The "title" part of the model
+ table element group for the table element
+
+ %tbl.table.name In declaration of: The name of the "table"
+ table element element
+
+ %tbl.table-titles.mdl In content model of: The model group for the title
+ table elements part of the content model for
+ table element
+
+ %tbl.table.mdl In content model of: The model group for the content
+ table elements model for table element,
+ often (and by default) defined
+ in terms of %tbl.table-titles.mdl
+ and tgroup
+
+ %tbl.table.att In ATTLIST of: Additional attributes on the
+ table element table element
+
+ %bodyatt In ATTLIST of: Additional attributes on the
+ table element table element (for backward
+ compatibility with the SGML
+ model)
+
+ %tbl.tgroup.mdl In content model of: The model group for the content
+ <tgroup> model for <tgroup>
+
+ %tbl.tgroup.att In ATTLIST of: Additional attributes on the
+ <tgroup> <tgroup> element
+
+ %tbl.thead.att In ATTLIST of: Additional attributes on the
+ <thead> <thead> element
+
+ %tbl.tbody.att In ATTLIST of: Additional attributes on the
+ <tbody> <tbody> element
+
+ %tbl.colspec.att In ATTLIST of: Additional attributes on the
+ <colspec> <colspec> element
+
+ %tbl.row.mdl In content model of: The model group for the content
+ <row> model for <row>
+
+ %tbl.row.att In ATTLIST of: Additional attributes on the
+ <row> <row> element
+
+ %tbl.entry.mdl In content model of: The model group for the content
+ <entry> model for <entry>
+
+ %tbl.entry.att In ATTLIST of: Additional attributes on the
+ <entry> <entry> element
+
+ This set of declarations will use the default definitions shown below
+ for any of these parameter entities that are not declared before this
+ set of declarations is referenced.
+-->
+
+<!-- These definitions are not directly related to the table model, but are
+ used in the default CALS table model and may be defined elsewhere (and
+ prior to the inclusion of this table module) in the referencing DTD. -->
+
+<!ENTITY % yesorno 'NMTOKEN'> <!-- no if zero(s), yes if any other value -->
+<!ENTITY % titles 'title?'>
+<!ENTITY % pcd "#PCDATA">
+<!ENTITY % paracon '%pcd;'> <!-- default for use in entry content -->
+
+<!--
+The parameter entities as defined below change and simplify the CALS table
+model as published (as part of the Example DTD) in MIL-HDBK-28001. The
+resulting simplified DTD has support from the SGML Open vendors and is
+therefore more interoperable among different systems.
+
+These following declarations provide the Exchange default definitions
+for these entities. However, these entities can be redefined (by giving
+the appropriate parameter entity declaration(s) prior to the reference
+to this Table Model declaration set entity) to fit the needs of the
+current application.
+
+Note, however, that changes may have significant effect on the ability to
+interchange table information. These changes may manifest themselves
+in useability, presentation, and possible structure information degradation.
+-->
+
+<!ENTITY % tbl.table.name "table">
+<!ENTITY % tbl.table-titles.mdl "%titles;,">
+<!ENTITY % tbl.table-main.mdl "tgroup+">
+<!ENTITY % tbl.table.mdl "%tbl.table-titles.mdl; %tbl.table-main.mdl;">
+<!ENTITY % tbl.table.att "
+ pgwide %yesorno; #IMPLIED ">
+<!ENTITY % bodyatt "">
+<!ENTITY % tbl.tgroup.mdl "colspec*,thead?,tbody">
+<!ENTITY % tbl.tgroup.att "">
+<!ENTITY % tbl.thead.att "">
+<!ENTITY % tbl.tbody.att "">
+<!ENTITY % tbl.colspec.att "">
+<!ENTITY % tbl.row.mdl "entry+">
+<!ENTITY % tbl.row.att "">
+<!ENTITY % tbl.entry.mdl "(%paracon;)*">
+<!ENTITY % tbl.entry.att "">
+
+<!ENTITY % tbl.frame.attval "top|bottom|topbot|all|sides|none">
+<!ENTITY % tbl.tbody.mdl "row+">
+
+<!-- ===== Element and attribute declarations follow. ===== -->
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.table.name "table"
+ ENTITY % tbl.table-titles.mdl "%titles;,"
+ ENTITY % tbl.table.mdl "%tbl.table-titles; tgroup+"
+ ENTITY % tbl.table.att "
+ pgwide %yesorno; #IMPLIED "
+-->
+
+<!--doc:???-->
+<!ELEMENT %tbl.table.name; (%tbl.table.mdl;)>
+
+<!ATTLIST %tbl.table.name;
+ frame (%tbl.frame.attval;) #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ %tbl.table.att;
+ %bodyatt;
+>
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.tgroup.mdl "colspec*,thead?,tbody"
+ ENTITY % tbl.tgroup.att ""
+-->
+
+<!--doc:A wrapper for the main content of a table, or part of a table.-->
+<!ELEMENT tgroup (%tbl.tgroup.mdl;) >
+
+<!ATTLIST tgroup
+ cols NMTOKEN #REQUIRED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ %tbl.tgroup.att;
+>
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.colspec.att ""
+-->
+
+<!--doc:Specifications for a column in a table.-->
+<!ELEMENT colspec EMPTY >
+
+<!ATTLIST colspec
+ colnum NMTOKEN #IMPLIED
+ colname NMTOKEN #IMPLIED
+ colwidth CDATA #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff NMTOKEN #IMPLIED
+ %tbl.colspec.att;
+>
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.thead.att ""
+-->
+
+<!--doc:A table header consisting of one or more rows.-->
+<!ELEMENT thead (row+)>
+
+<!ATTLIST thead
+ valign (top|middle|bottom) #IMPLIED
+ %tbl.thead.att;
+>
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.tbody.att ""
+-->
+
+<!--doc:A wrapper for the rows of a table or informal table.-->
+<!ELEMENT tbody (%tbl.tbody.mdl;)>
+
+<!ATTLIST tbody
+ valign (top|middle|bottom) #IMPLIED
+ %tbl.tbody.att;
+>
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % tbl.row.mdl "entry+"
+ ENTITY % tbl.row.att ""
+-->
+
+<!--doc:A row in a table.-->
+<!ELEMENT row (%tbl.row.mdl;)>
+
+<!ATTLIST row
+ rowsep %yesorno; #IMPLIED
+ valign (top|middle|bottom) #IMPLIED
+ %tbl.row.att;
+>
+
+
+<!--
+ Default declarations previously defined in this entity and
+ referenced below include:
+ ENTITY % paracon "#PCDATA"
+ ENTITY % tbl.entry.mdl "(%paracon;)*"
+ ENTITY % tbl.entry.att ""
+-->
+
+<!--doc:A cell in a table.-->
+<!ELEMENT entry (%tbl.entry.mdl;)*>
+
+<!ATTLIST entry
+ colname NMTOKEN #IMPLIED
+ namest NMTOKEN #IMPLIED
+ nameend NMTOKEN #IMPLIED
+ morerows NMTOKEN #IMPLIED
+ colsep %yesorno; #IMPLIED
+ rowsep %yesorno; #IMPLIED
+ align (left|right|center|justify|char) #IMPLIED
+ char CDATA #IMPLIED
+ charoff NMTOKEN #IMPLIED
+ valign (top|middle|bottom) #IMPLIED
+ %tbl.entry.att;
+>
diff --git a/doc/creating_themes/Makefile.am b/doc/creating_themes/Makefile.am
new file mode 100644
index 00000000..b848256c
--- /dev/null
+++ b/doc/creating_themes/Makefile.am
@@ -0,0 +1,24 @@
+### This part of Makefile.am can be customized by you.
+
+# mate-doc-utils standard variables:
+include $(top_srcdir)/mate-doc-utils.make
+dist-hook: doc-dist-hook
+
+# The name of the directory in /usr/share/mate/help/,
+# and the name of the main .xml file:
+DOC_MODULE = creating-marco-themes
+
+# The names of any files included via entity declarations.
+DOC_ENTITIES =
+
+# The names of any files included by xincluded (preferred):
+DOC_INCLUDES =
+
+# The names of any pictures:
+DOC_FIGURES =
+
+# The names of any locales for which documentation translations exist:
+DOC_LINGUAS =
+
+
+
diff --git a/doc/creating_themes/Makefile.in b/doc/creating_themes/Makefile.in
new file mode 100644
index 00000000..86601c10
--- /dev/null
+++ b/doc/creating_themes/Makefile.in
@@ -0,0 +1,981 @@
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+### This part of Makefile.am can be customized by you.
+
+# mate-doc-utils.make - make magic for building documentation
+# Copyright (C) 2004-2005 Shaun McCance <[email protected]>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+################################################################################
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/mate-doc-utils.make
+subdir = doc/creating_themes
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.in
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
+ALL_CFLAGS = @ALL_CFLAGS@
+ALL_LIBS = @ALL_LIBS@
+ALL_LINGUAS = @ALL_LINGUAS@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATADIRNAME = @DATADIRNAME@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@
+DLLTOOL = @DLLTOOL@
+DOC_USER_FORMATS = @DOC_USER_FORMATS@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GDK_PIXBUF_CSOURCE = @GDK_PIXBUF_CSOURCE@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GREP = @GREP@
+GTK_API_VERSION = @GTK_API_VERSION@
+HELP_DIR = @HELP_DIR@
+HOST_ALIAS = @HOST_ALIAS@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INSTOBJEXT = @INSTOBJEXT@
+INTLLIBS = @INTLLIBS@
+INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
+INTLTOOL_MERGE = @INTLTOOL_MERGE@
+INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MARCO_CFLAGS = @MARCO_CFLAGS@
+MARCO_LIBS = @MARCO_LIBS@
+MARCO_MESSAGE_CFLAGS = @MARCO_MESSAGE_CFLAGS@
+MARCO_MESSAGE_LIBS = @MARCO_MESSAGE_LIBS@
+MARCO_WINDOW_DEMO_CFLAGS = @MARCO_WINDOW_DEMO_CFLAGS@
+MARCO_WINDOW_DEMO_LIBS = @MARCO_WINDOW_DEMO_LIBS@
+MATECONFTOOL = @MATECONFTOOL@
+MATECONF_SCHEMA_CONFIG_SOURCE = @MATECONF_SCHEMA_CONFIG_SOURCE@
+MATECONF_SCHEMA_FILE_DIR = @MATECONF_SCHEMA_FILE_DIR@
+MATEDIALOG = @MATEDIALOG@
+MATE_KEYBINDINGS_KEYSDIR = @MATE_KEYBINDINGS_KEYSDIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+MSGFMT_OPTS = @MSGFMT_OPTS@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OMF_DIR = @OMF_DIR@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+POFILES = @POFILES@
+POSUB = @POSUB@
+PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
+PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+XMKMF = @XMKMF@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+_clean_doc_header = $(if $(DOC_H_FILE),clean-doc-header)
+_DOC_REAL_FORMATS = $(if $(DOC_USER_FORMATS),$(DOC_USER_FORMATS),$(DOC_FORMATS))
+_DOC_REAL_LINGUAS = $(if $(filter environment,$(origin LINGUAS)), \
+ $(filter $(LINGUAS),$(DOC_LINGUAS)), \
+ $(DOC_LINGUAS))
+
+_DOC_ABS_SRCDIR = @abs_srcdir@
+_xml2po_mode = $(if $(DOC_ID),mallard,docbook)
+@ENABLE_SK_TRUE@_ENABLE_SK = true
+
+################################################################################
+db2omf_args = \
+ --stringparam db2omf.basename $(DOC_MODULE) \
+ --stringparam db2omf.format $(3) \
+ --stringparam db2omf.dtd \
+ $(shell xmllint --format $(2) | grep -h PUBLIC | head -n 1 \
+ | sed -e 's/.*PUBLIC \(\"[^\"]*\"\).*/\1/') \
+ --stringparam db2omf.lang $(notdir $(patsubst %/$(notdir $(2)),%,$(2))) \
+ --stringparam db2omf.omf_dir "$(OMF_DIR)" \
+ --stringparam db2omf.help_dir "$(HELP_DIR)" \
+ --stringparam db2omf.omf_in "$(_DOC_OMF_IN)" \
+ $(if $(_ENABLE_SK), \
+ --stringparam db2omf.scrollkeeper_cl "$(_skcontentslist)") \
+ $(_db2omf) $(2)
+
+_DOC_OMF_IN = $(if $(DOC_MODULE),$(wildcard $(_DOC_ABS_SRCDIR)/$(DOC_MODULE).omf.in))
+_DOC_OMF_DB = $(if $(_DOC_OMF_IN), \
+ $(foreach lc,C $(_DOC_REAL_LINGUAS),$(DOC_MODULE)-$(lc).omf))
+
+_DOC_OMF_HTML = $(if $(_DOC_OMF_IN), \
+ $(foreach lc,C $(_DOC_REAL_LINGUAS),$(DOC_MODULE)-html-$(lc).omf))
+
+
+# FIXME
+_DOC_OMF_ALL = \
+ $(if $(filter docbook,$(_DOC_REAL_FORMATS)),$(_DOC_OMF_DB)) \
+ $(if $(filter html HTML,$(_DOC_REAL_FORMATS)),$(_DOC_OMF_HTML))
+
+
+################################################################################
+_DOC_C_MODULE = $(if $(DOC_MODULE),C/$(DOC_MODULE).xml)
+_DOC_C_PAGES = $(foreach page,$(DOC_PAGES),C/$(page))
+_DOC_C_ENTITIES = $(foreach ent,$(DOC_ENTITIES),C/$(ent))
+_DOC_C_INCLUDES = $(foreach inc,$(DOC_INCLUDES),C/$(inc))
+_DOC_C_DOCS = \
+ $(_DOC_C_ENTITIES) $(_DOC_C_INCLUDES) \
+ $(_DOC_C_PAGES) $(_DOC_C_MODULE)
+
+_DOC_C_DOCS_NOENT = \
+ $(_DOC_C_MODULE) $(_DOC_C_INCLUDES) \
+ $(_DOC_C_PAGES)
+
+_DOC_C_FIGURES = $(if $(DOC_FIGURES), \
+ $(foreach fig,$(DOC_FIGURES),C/$(fig)), \
+ $(patsubst $(srcdir)/%,%,$(wildcard $(srcdir)/C/figures/*.png)))
+
+
+# FIXME: probably have to shell escape to determine the file names
+_DOC_C_HTML = $(foreach f, \
+ $(shell xsltproc --xinclude \
+ --stringparam db.chunk.basename "$(DOC_MODULE)" \
+ $(_chunks) "C/$(DOC_MODULE).xml"), \
+ C/$(f).xhtml)
+
+
+###############################################################################
+_DOC_POFILES = $(if $(DOC_MODULE)$(DOC_ID), \
+ $(foreach lc,$(_DOC_REAL_LINGUAS),$(lc)/$(lc).po))
+
+_DOC_MOFILES = $(patsubst %.po,%.mo,$(_DOC_POFILES))
+_DOC_LC_MODULES = $(if $(DOC_MODULE), \
+ $(foreach lc,$(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xml))
+
+_DOC_LC_PAGES = \
+ $(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach page,$(_DOC_C_PAGES), \
+ $(lc)/$(notdir $(page)) ))
+
+_DOC_LC_INCLUDES = \
+ $(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach inc,$(_DOC_C_INCLUDES), \
+ $(lc)/$(notdir $(inc)) ))
+
+
+# FIXME: probably have to shell escape to determine the file names
+_DOC_LC_HTML = \
+ $(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach doc,$(_DOC_C_HTML), \
+ $(lc)/$(notdir $(doc)) ))
+
+_DOC_LC_DOCS = \
+ $(_DOC_LC_MODULES) $(_DOC_LC_INCLUDES) $(_DOC_LC_PAGES) \
+ $(if $(filter html HTML,$(_DOC_REAL_FORMATS)),$(_DOC_LC_HTML))
+
+_DOC_LC_FIGURES = $(foreach lc,$(_DOC_REAL_LINGUAS), \
+ $(patsubst C/%,$(lc)/%,$(_DOC_C_FIGURES)) )
+
+_DOC_SRC_FIGURES = \
+ $(foreach fig,$(_DOC_C_FIGURES), $(foreach lc,C $(_DOC_REAL_LINGUAS), \
+ $(wildcard $(srcdir)/$(lc)/$(patsubst C/%,%,$(fig))) ))
+
+_DOC_POT = $(if $(DOC_MODULE),$(DOC_MODULE).pot)
+
+################################################################################
+_DOC_HTML_ALL = $(if $(filter html HTML,$(_DOC_REAL_FORMATS)), \
+ $(_DOC_C_HTML) $(_DOC_LC_HTML))
+
+_DOC_HTML_TOPS = $(foreach lc,C $(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xhtml)
+_clean_omf = $(if $(_DOC_OMF_IN),clean-doc-omf)
+_clean_dsk = $(if $(_DOC_DSK_IN),clean-doc-dsk)
+_clean_lc = $(if $(_DOC_REAL_LINGUAS),clean-doc-lc)
+_clean_dir = $(if $(DOC_MODULE)$(DOC_ID),clean-doc-dir)
+_doc_install_dir = $(if $(DOC_ID),$(DOC_ID),$(DOC_MODULE))
+
+# The name of the directory in /usr/share/mate/help/,
+# and the name of the main .xml file:
+DOC_MODULE = creating-marco-themes
+
+# The names of any files included via entity declarations.
+DOC_ENTITIES =
+
+# The names of any files included by xincluded (preferred):
+DOC_INCLUDES =
+
+# The names of any pictures:
+DOC_FIGURES =
+
+# The names of any locales for which documentation translations exist:
+DOC_LINGUAS =
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/mate-doc-utils.make $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/creating_themes/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu doc/creating_themes/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
+ dist-hook
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-local mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-local
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-data-local
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic \
+ maintainer-clean-local
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool \
+ mostlyclean-local
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-local
+
+.MAKE: install-am install-strip
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+ clean-local dist-hook distclean distclean-generic \
+ distclean-libtool distclean-local distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-data-local install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-pdf \
+ install-pdf-am install-ps install-ps-am install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic maintainer-clean-local mostlyclean \
+ mostlyclean-generic mostlyclean-libtool mostlyclean-local pdf \
+ pdf-am ps ps-am uninstall uninstall-am uninstall-local
+
+
+DOC_H_FILE ?=
+
+DOC_H_DOCS ?=
+
+$(DOC_H_FILE): $(DOC_H_DOCS);
+ echo 'const gchar* documentation_credits[] = {' >> [email protected]
+ list='$(DOC_H_DOCS)'; for doc in $$list; do \
+ xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \
+ if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \
+ xsltproc --path "$$xmlpath" $(_credits) $$doc; \
+ done | sort | uniq \
+ | awk 'BEGIN{s=""}{n=split($$0,w,"<");if(s!=""&&s!=substr(w[1],1,length(w[1])-1)){print s};if(n>1){print $$0;s=""}else{s=$$0}};END{if(s!=""){print s}}' \
+ | sed -e 's/\\/\\\\/' -e 's/"/\\"/' -e 's/\(.*\)/\t"\1",/' >> [email protected]
+ echo ' NULL' >> [email protected]
+ echo '};' >> [email protected]
+ list='$(DOC_H_DOCS)'; for doc in $$list; do \
+ xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \
+ if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \
+ docid=`echo "$$doc" | sed -e 's/.*\/\([^/]*\)\.xml/\1/' \
+ | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`; \
+ echo $$xmlpath; \
+ ids=`xsltproc --xinclude --path "$$xmlpath" $(_ids) $$doc`; \
+ for id in $$ids; do \
+ echo '#define HELP_'`echo $$docid`'_'`echo $$id \
+ | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`' "'$$id'"' >> [email protected]; \
+ done; \
+ echo >> [email protected]; \
+ done;
+
+dist-check-gdu:
+@HAVE_MATE_DOC_UTILS_FALSE@ @echo "*** MATE Doc Utils must be installed in order to make dist"
+@HAVE_MATE_DOC_UTILS_FALSE@ @false
+
+.PHONY: dist-doc-header
+dist-doc-header: $(DOC_H_FILE)
+ @if test -f "$(DOC_H_FILE)"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$(INSTALL_DATA) $${d}$(DOC_H_FILE) $(distdir)/$(DOC_H_FILE)"; \
+ $(INSTALL_DATA) "$${d}$(DOC_H_FILE)" "$(distdir)/$(DOC_H_FILE)";
+
+doc-dist-hook: dist-check-gdu $(if $(DOC_H_FILE),dist-doc-header)
+
+.PHONY: clean-doc-header
+clean-local: $(_clean_doc_header)
+distclean-local: $(_clean_doc_header)
+mostlyclean-local: $(_clean_doc_header)
+maintainer-clean-local: $(_clean_doc_header)
+clean-doc-header:
+ rm -f $(DOC_H_FILE)
+
+all: $(DOC_H_FILE)
+
+################################################################################
+
+DOC_MODULE ?=
+
+DOC_ID ?=
+
+DOC_PAGES ?=
+
+DOC_ENTITIES ?=
+
+DOC_INCLUDES ?=
+
+DOC_FIGURES ?=
+
+DOC_FORMATS ?= docbook
+
+DOC_LINGUAS ?=
+
+################################################################################
+
+_xml2po ?= `which xml2po`
+
+_db2html ?= `$(PKG_CONFIG) --variable db2html mate-doc-utils`
+_db2omf ?= `$(PKG_CONFIG) --variable db2omf mate-doc-utils`
+_malrng ?= `$(PKG_CONFIG) --variable malrng mate-doc-utils`
+_chunks ?= `$(PKG_CONFIG) --variable xmldir mate-doc-utils`/mate/xslt/docbook/utils/chunks.xsl
+_credits ?= `$(PKG_CONFIG) --variable xmldir mate-doc-utils`/mate/xslt/docbook/utils/credits.xsl
+_ids ?= `$(PKG_CONFIG) --variable xmldir mate-doc-utils`/mate/xslt/docbook/utils/ids.xsl
+@ENABLE_SK_TRUE@_skpkgdatadir ?= `scrollkeeper-config --pkgdatadir`
+@ENABLE_SK_TRUE@_sklocalstatedir ?= `scrollkeeper-config --pkglocalstatedir`
+@ENABLE_SK_TRUE@_skcontentslist ?= $(_skpkgdatadir)/Templates/C/scrollkeeper_cl.xml
+
+$(_DOC_OMF_DB) : $(_DOC_OMF_IN)
+$(_DOC_OMF_DB) : $(DOC_MODULE)-%.omf : %/$(DOC_MODULE).xml
+ @test "x$(_ENABLE_SK)" != "xtrue" -o -f "$(_skcontentslist)" || { \
+ echo "The file '$(_skcontentslist)' does not exist." >&2; \
+ echo "Please check your ScrollKeeper installation." >&2; \
+ exit 1; }
+ xsltproc -o $@ $(call db2omf_args,$@,$<,'docbook') || { rm -f "$@"; exit 1; }
+
+$(_DOC_OMF_HTML) : $(_DOC_OMF_IN)
+$(_DOC_OMF_HTML) : $(DOC_MODULE)-html-%.omf : %/$(DOC_MODULE).xml
+@ENABLE_SK_TRUE@ @test "x$(_ENABLE_SK)" != "xtrue" -o -f "$(_skcontentslist)" || { \
+@ENABLE_SK_TRUE@ echo "The file '$(_skcontentslist)' does not exist" >&2; \
+@ENABLE_SK_TRUE@ echo "Please check your ScrollKeeper installation." >&2; \
+@ENABLE_SK_TRUE@ exit 1; }
+ xsltproc -o $@ $(call db2omf_args,$@,$<,'xhtml') || { rm -f "$@"; exit 1; }
+
+.PHONY: omf
+omf: $(_DOC_OMF_ALL)
+
+.PHONY: po
+po: $(_DOC_POFILES)
+
+.PHONY: mo
+mo: $(_DOC_MOFILES)
+
+$(_DOC_POFILES):
+ @if ! test -d $(dir $@); then \
+ echo "mkdir $(dir $@)"; \
+ mkdir "$(dir $@)"; \
+ fi
+ @if test ! -f $@ -a -f $(srcdir)/$@; then \
+ echo "cp $(srcdir)/$@ $@"; \
+ cp "$(srcdir)/$@" "$@"; \
+ fi;
+ @docs=; \
+ list='$(_DOC_C_DOCS_NOENT)'; for doc in $$list; do \
+ docs="$$docs $(_DOC_ABS_SRCDIR)/$$doc"; \
+ done; \
+ if ! test -f $@; then \
+ echo "(cd $(dir $@) && \
+ $(_xml2po) -m $(_xml2po_mode) -e $$docs > $(notdir $@).tmp && \
+ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp)"; \
+ (cd $(dir $@) && \
+ $(_xml2po) -m $(_xml2po_mode) -e $$docs > $(notdir $@).tmp && \
+ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp); \
+ else \
+ echo "(cd $(dir $@) && \
+ $(_xml2po) -m $(_xml2po_mode) -e -u $(notdir $@) $$docs)"; \
+ (cd $(dir $@) && \
+ $(_xml2po) -m $(_xml2po_mode) -e -u $(notdir $@) $$docs); \
+ fi
+
+$(_DOC_MOFILES): %.mo: %.po
+ @if ! test -d $(dir $@); then \
+ echo "mkdir $(dir $@)"; \
+ mkdir "$(dir $@)"; \
+ fi
+ msgfmt -o $@ $<
+
+# FIXME: fix the dependancy
+# FIXME: hook xml2po up
+$(_DOC_LC_DOCS) : $(_DOC_MOFILES)
+$(_DOC_LC_DOCS) : $(_DOC_C_DOCS)
+ if ! test -d $(dir $@); then mkdir $(dir $@); fi
+ if [ -f "C/$(notdir $@)" ]; then d="../"; else d="$(_DOC_ABS_SRCDIR)/"; fi; \
+ mo="$(dir $@)$(patsubst %/$(notdir $@),%,$@).mo"; \
+ if [ -f "$${mo}" ]; then mo="../$${mo}"; else mo="$(_DOC_ABS_SRCDIR)/$${mo}"; fi; \
+ (cd $(dir $@) && \
+ $(_xml2po) -m $(_xml2po_mode) -e -t "$${mo}" \
+ "$${d}C/$(notdir $@)" > $(notdir $@).tmp && \
+ cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp)
+.PHONY: pot
+pot: $(_DOC_POT)
+$(_DOC_POT): $(_DOC_C_DOCS_NOENT)
+ $(_xml2po) -m $(_xml2po_mode) -e -o $@ $^
+
+$(_DOC_HTML_TOPS): $(_DOC_C_DOCS) $(_DOC_LC_DOCS)
+ xsltproc -o $@ --xinclude --param db.chunk.chunk_top "false()" --stringparam db.chunk.basename "$(DOC_MODULE)" --stringparam db.chunk.extension ".xhtml" $(_db2html) $(patsubst %.xhtml,%.xml,$@)
+
+################################################################################
+
+all: \
+ $(_DOC_C_DOCS) $(_DOC_LC_DOCS) \
+ $(_DOC_OMF_ALL) $(_DOC_DSK_ALL) \
+ $(_DOC_HTML_ALL) $(_DOC_POFILES)
+
+################################################################################
+
+.PHONY: clean-doc-omf clean-doc-dsk clean-doc-lc clean-doc-dir
+
+clean-doc-omf: ; rm -f $(_DOC_OMF_DB) $(_DOC_OMF_HTML)
+clean-doc-dsk: ; rm -f $(_DOC_DSK_DB) $(_DOC_DSK_HTML)
+clean-doc-lc:
+ rm -f $(_DOC_LC_DOCS)
+ rm -f $(_DOC_MOFILES)
+ @list='$(_DOC_POFILES)'; for po in $$list; do \
+ if ! test "$$po" -ef "$(srcdir)/$$po"; then \
+ echo "rm -f $$po"; \
+ rm -f "$$po"; \
+ fi; \
+ done
+# .xml2.po.mo cleaning is obsolete as of 0.18.1 and could be removed in 0.20.x
+ @for lc in C $(_DOC_REAL_LINGUAS); do \
+ if test -f "$$lc/.xml2po.mo"; then \
+ echo "rm -f $$lc/.xml2po.mo"; \
+ rm -f "$$lc/.xml2po.mo"; \
+ fi; \
+ done
+clean-doc-dir: clean-doc-lc
+ @for lc in C $(_DOC_REAL_LINGUAS); do \
+ for dir in `find $$lc -depth -type d`; do \
+ if ! test $$dir -ef $(srcdir)/$$dir; then \
+ echo "rmdir $$dir"; \
+ rmdir "$$dir"; \
+ fi; \
+ done; \
+ done
+
+clean-local: \
+ $(_clean_omf) $(_clean_dsk) \
+ $(_clean_lc) $(_clean_dir)
+distclean-local: \
+ $(_clean_omf) $(_clean_dsk) \
+ $(_clean_lc) $(_clean_dir)
+mostlyclean-local: \
+ $(_clean_omf) $(_clean_dsk) \
+ $(_clean_lc) $(_clean_dir)
+maintainer-clean-local: \
+ $(_clean_omf) $(_clean_dsk) \
+ $(_clean_lc) $(_clean_dir)
+
+################################################################################
+
+.PHONY: dist-doc-docs dist-doc-pages dist-doc-figs dist-doc-omf dist-doc-dsk
+doc-dist-hook: \
+ $(if $(DOC_MODULE)$(DOC_ID),dist-doc-docs) \
+ $(if $(_DOC_C_FIGURES),dist-doc-figs) \
+ $(if $(_DOC_OMF_IN),dist-doc-omf)
+# $(if $(_DOC_DSK_IN),dist-doc-dsk)
+
+dist-doc-docs: $(_DOC_C_DOCS) $(_DOC_LC_DOCS) $(_DOC_POFILES)
+ @for lc in C $(_DOC_REAL_LINGUAS); do \
+ echo " $(mkinstalldirs) $(distdir)/$$lc"; \
+ $(mkinstalldirs) "$(distdir)/$$lc"; \
+ done
+ @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS) $(_DOC_POFILES)'; \
+ for doc in $$list; do \
+ if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \
+ docdir=`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
+ if ! test -d "$(distdir)/$$docdir"; then \
+ echo "$(mkinstalldirs) $(distdir)/$$docdir"; \
+ $(mkinstalldirs) "$(distdir)/$$docdir"; \
+ fi; \
+ echo "$(INSTALL_DATA) $$d$$doc $(distdir)/$$doc"; \
+ $(INSTALL_DATA) "$$d$$doc" "$(distdir)/$$doc"; \
+ done
+
+dist-doc-figs: $(_DOC_SRC_FIGURES)
+ @list='$(_DOC_C_FIGURES) $(_DOC_LC_FIGURES)'; \
+ for fig in $$list; do \
+ if test -f "$$fig"; then d=; else d="$(srcdir)/"; fi; \
+ if test -f "$$d$$fig"; then \
+ figdir=`echo $$fig | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
+ if ! test -d "$(distdir)/$$figdir"; then \
+ echo "$(mkinstalldirs) $(distdir)/$$figdir"; \
+ $(mkinstalldirs) "$(distdir)/$$figdir"; \
+ fi; \
+ echo "$(INSTALL_DATA) $$d$$fig $(distdir)/$$fig"; \
+ $(INSTALL_DATA) "$$d$$fig" "$(distdir)/$$fig"; \
+ fi; \
+ done;
+
+dist-doc-omf:
+ @if test -f "$(_DOC_OMF_IN)"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$(INSTALL_DATA) $$d$(_DOC_OMF_IN) $(distdir)/$(notdir $(_DOC_OMF_IN))"; \
+ $(INSTALL_DATA) "$$d$(_DOC_OMF_IN)" "$(distdir)/$(notdir $(_DOC_OMF_IN))"
+
+dist-doc-dsk:
+ @if test -f "$(_DOC_DSK_IN)"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$(INSTALL_DATA) $$d$(_DOC_DSK_IN) $(distdir)/$(notdir $(_DOC_DSK_IN))"; \
+ $(INSTALL_DATA) "$$d$(_DOC_DSK_IN)" "$(distdir)/$(notdir $(_DOC_DSK_IN))"
+
+################################################################################
+
+.PHONY: check-doc-docs check-doc-omf
+check: \
+ $(if $(DOC_MODULE),check-doc-docs) \
+ $(if $(DOC_ID),check-doc-pages) \
+ $(if $(_DOC_OMF_IN),check-doc-omf)
+
+check-doc-docs: $(_DOC_C_DOCS) $(_DOC_LC_DOCS)
+ @for lc in C $(_DOC_REAL_LINGUAS); do \
+ if test -f "$$lc"; \
+ then d=; \
+ xmlpath="$$lc"; \
+ else \
+ d="$(srcdir)/"; \
+ xmlpath="$$lc:$(srcdir)/$$lc"; \
+ fi; \
+ echo "xmllint --noout --noent --path $$xmlpath --xinclude --postvalid $$d$$lc/$(DOC_MODULE).xml"; \
+ xmllint --noout --noent --path "$$xmlpath" --xinclude --postvalid "$$d$$lc/$(DOC_MODULE).xml"; \
+ done
+
+check-doc-pages: $(_DOC_C_PAGES) $(_DOC_LC_PAGES)
+ for lc in C $(_DOC_REAL_LINGUAS); do \
+ if test -f "$$lc"; \
+ then d=; \
+ xmlpath="$$lc"; \
+ else \
+ d="$(srcdir)/"; \
+ xmlpath="$$lc:$(srcdir)/$$lc"; \
+ fi; \
+ for page in $(DOC_PAGES); do \
+ echo "xmllint --noout --noent --path $$xmlpath --xinclude --relaxng $(_malrng) $$d$$lc/$$page"; \
+ xmllint --noout --noent --path "$$xmlpath" --xinclude --relaxng "$(_malrng)" "$$d$$lc/$$page"; \
+ done; \
+ done
+
+check-doc-omf: $(_DOC_OMF_ALL)
+ @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \
+ echo "xmllint --noout --xinclude --dtdvalid 'http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd' $$omf"; \
+ xmllint --noout --xinclude --dtdvalid 'http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd' $$omf; \
+ done
+
+################################################################################
+
+.PHONY: install-doc-docs install-doc-html install-doc-figs install-doc-omf install-doc-dsk
+
+install-data-local: \
+ $(if $(DOC_MODULE)$(DOC_ID),install-doc-docs) \
+ $(if $(_DOC_HTML_ALL),install-doc-html) \
+ $(if $(_DOC_C_FIGURES),install-doc-figs) \
+ $(if $(_DOC_OMF_IN),install-doc-omf)
+# $(if $(_DOC_DSK_IN),install-doc-dsk)
+
+install-doc-docs:
+ @for lc in C $(_DOC_REAL_LINGUAS); do \
+ echo "$(mkinstalldirs) $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$lc"; \
+ $(mkinstalldirs) $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$lc; \
+ done
+ @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS)'; for doc in $$list; do \
+ if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \
+ docdir="$$lc/"`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
+ docdir="$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$docdir"; \
+ if ! test -d "$$docdir"; then \
+ echo "$(mkinstalldirs) $$docdir"; \
+ $(mkinstalldirs) "$$docdir"; \
+ fi; \
+ echo "$(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
+ $(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc; \
+ done
+
+install-doc-figs:
+ @list='$(patsubst C/%,%,$(_DOC_C_FIGURES))'; for fig in $$list; do \
+ for lc in C $(_DOC_REAL_LINGUAS); do \
+ figsymlink=false; \
+ if test -f "$$lc/$$fig"; then \
+ figfile="$$lc/$$fig"; \
+ elif test -f "$(srcdir)/$$lc/$$fig"; then \
+ figfile="$(srcdir)/$$lc/$$fig"; \
+ else \
+ figsymlink=true; \
+ fi; \
+ figdir="$$lc/"`echo $$fig | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
+ figdir="$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$figdir"; \
+ if ! test -d "$$figdir"; then \
+ echo "$(mkinstalldirs) $$figdir"; \
+ $(mkinstalldirs) "$$figdir"; \
+ fi; \
+ figbase=`echo $$fig | sed -e 's/^.*\///'`; \
+ if $$figsymlink; then \
+ echo "cd $$figdir && $(LN_S) -f ../../C/$$fig $$figbase"; \
+ ( cd "$$figdir" && $(LN_S) -f "../../C/$$fig" "$$figbase" ); \
+ else \
+ echo "$(INSTALL_DATA) $$figfile $$figdir$$figbase"; \
+ $(INSTALL_DATA) "$$figfile" "$$figdir$$figbase"; \
+ fi; \
+ done; \
+ done
+
+install-doc-html:
+ echo install-html
+
+install-doc-omf:
+ $(mkinstalldirs) $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)
+ @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \
+ echo "$(INSTALL_DATA) $$omf $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
+ $(INSTALL_DATA) $$omf $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf; \
+ done
+ @if test "x$(_ENABLE_SK)" = "xtrue"; then \
+ echo "scrollkeeper-update -p $(DESTDIR)$(_sklocalstatedir) -o $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)"; \
+ scrollkeeper-update -p "$(DESTDIR)$(_sklocalstatedir)" -o "$(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)"; \
+ fi;
+
+install-doc-dsk:
+ echo install-dsk
+
+################################################################################
+
+.PHONY: uninstall-doc-docs uninstall-doc-html uninstall-doc-figs uninstall-doc-omf uninstall-doc-dsk
+uninstall-local: \
+ $(if $(DOC_MODULE)$(DOC_ID),uninstall-doc-docs) \
+ $(if $(_DOC_HTML_ALL),uninstall-doc-html) \
+ $(if $(_DOC_C_FIGURES),uninstall-doc-figs) \
+ $(if $(_DOC_OMF_IN),uninstall-doc-omf)
+# $(if $(_DOC_DSK_IN),uninstall-doc-dsk)
+
+uninstall-doc-docs:
+ @list='$(_DOC_C_DOCS) $(_DOC_LC_DOCS)'; for doc in $$list; do \
+ echo " rm -f $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
+ rm -f "$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
+ done
+
+uninstall-doc-figs:
+ @list='$(_DOC_C_FIGURES) $(_DOC_LC_FIGURES)'; for fig in $$list; do \
+ echo "rm -f $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$fig"; \
+ rm -f "$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$fig"; \
+ done;
+
+uninstall-doc-omf:
+ @list='$(_DOC_OMF_ALL)'; for omf in $$list; do \
+ if test "x$(_ENABLE_SK)" = "xtrue"; then \
+ echo "scrollkeeper-uninstall -p $(_sklocalstatedir) $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
+ scrollkeeper-uninstall -p "$(_sklocalstatedir)" "$(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
+ fi; \
+ echo "rm -f $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
+ rm -f "$(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
+ done
+
+# mate-doc-utils standard variables:
+dist-hook: doc-dist-hook
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/doc/dialogs.txt b/doc/dialogs.txt
new file mode 100644
index 00000000..1a28e6ab
--- /dev/null
+++ b/doc/dialogs.txt
@@ -0,0 +1,32 @@
+Dialogs which have no transient parent or root window being
+their tranisent parent are the ones which will be visible in
+the tasklist.
+
+All such dialogs will be *always* on top of the window
+group i.e they would transients for the whole group.
+
+
+1) Modal dialogs
+
+
+ * If you wish to open another window from a modal dialog
+
+ open *only* a modal dialog and set it's transient parent.
+
+
+2) Normal dialog
+
+
+ without transient parent
+
+ * If you wish to open another window from a normal dialog
+
+ open either a normal dialog or a modal dialog only.
+ Set the transient parent for the child dialog if you do not
+ want them to be transient for all the other windows in the group.
+
+ with transient parent
+
+ * If you wish to open another window from a normal dialog
+
+ you could open any type of window.
diff --git a/doc/how-to-get-focus-right.txt b/doc/how-to-get-focus-right.txt
new file mode 100644
index 00000000..45c0f378
--- /dev/null
+++ b/doc/how-to-get-focus-right.txt
@@ -0,0 +1,253 @@
+To make choice of focus window consistent for each focus method, a
+number of guidelines should be followed. (For purposes of discussion
+here, I'm excluding things like the panel and the desktop from
+"windows". It is technically incorrect to do this, but I'm lazy and
+"windows" is shorter than something like "normal windows". See the
+end of the discussion for how these special cases are handled.) The
+basics are easy:
+
+Focus method Behavior
+ click When a user clicks on a window, focus it
+ sloppy When an EnterNotify is received, focus the window
+ mouse Same as sloppy, but also defocus when mouse enters DESKTOP
+ window
+
+Note that these choices (along with the choice that clicking on a
+window raises it for the click focus method) introduces the following
+invariants for focus from mouse activity:
+
+Focus method Invariant
+ click The window on top is focused
+ sloppy If the mouse is in a window, then it is focused; if the
+ mouse is not in a window, then the most recently used
+ window is focused.
+ mouse If the mouse is in a non-DESKTOP window, then it is focused;
+ otherwise, the designated "no_focus_window" is focused
+
+However, there are a number of cases where the current focus window
+becomes invalid and another should be chosen. Some examples are when
+a focused window is closed or minimized, or when the user changes
+workspaces. In these cases, there needs to be a rule consistent with
+the above about the new window to choose.
+
+Focus method Behavior
+ click Focus the most recently used window (same as the window
+ on top)
+ sloppy Focus the window containing the pointer if there is such
+ a window, otherwise focus the most recently used window.
+ mouse Focus the non-DESKTOP window containing the pointer if
+ there is one, otherwise focus the designated
+ "no_focus_window".
+
+Note that "most recently used window", as used here, has a slightly
+different connotation than "most recent to have keyboard focus". This
+is because when a user activates a window that is a transient, its
+ancestor(s) should be considered to be more recently used than other
+windows that have had the keyboard focus more recently. (See bug
+157360; this may mean that the alt-tab order should also change
+simultaneously, although the current implementation does not do that.)
+
+Also, sometimes a new window will be mapped (e.g. unminimizing a
+window or launching a new application). Most users want to interact
+with new windows right away, so these should typically be focused.
+This does conflict with the invariants for sloppy and mouse focus
+modes, so this wouldn't be true for a strict-pointer-focus mode. For
+all other modes (non-strict-pointer-focus modes), there are only two
+cases in which a new window shouldn't be focused:
+
+ 1) If the window takes a while to launch and the user starts
+ interacting with a different application, the new window should
+ not take focus.
+ 2) If the window that will appear was not launched by the user
+ (error dialogs, instant messaging windows, etc.), then the window
+ should not take focus when it appears.
+
+To handle these cases, Marco compares timestamps of the event that
+caused the launch and the timestamp of the last interaction with the
+focused window. (Case 2 is handled by the application providing a
+special timestamp of 0 for the launch time, which ensures that the
+window that appears doesn't get focus)
+
+If the newly launched window isn't focused, some things should be done
+to alert the user that there is a window to work with:
+ 1) The _NET_WM_DEMANDS_ATTENTION hint should be set
+ 2) If the new window isn't modal for the focused window, it should
+ appear below the focused window so that it doesn't obscure the
+ focused window that the user is interacting with.
+ 3) If the new window is modal to the focused window, the currently
+ focused window should lose focus but the modal window should
+ appear on top.
+
+Additionally, the user may decide to use the keyboard instead of the mouse
+to navigate between windows (referred to as "keynav"). This poses no
+problems for click-to-focus (because the same invariant can be
+maintained), but for sloppy and mouse focus it requires extra work to
+attempt to handle the INHERENTLY CONFLICTING CONSTRAINTS. Marco does
+this by having a mouse_mode boolean used to determine which of the two
+sets of invariants holds. This mode is set according to which method was
+most recently used to choose a focus window:
+ 1) When receiving EnterNotify events from mouse movement, set
+ mouse_mode to TRUE.
+ 2) When using keynav to choose a focus window (e.g. alt-tab, alt-esc,
+ alt-f2, move-window-to-workspace keybindings), set mouse_mode to FALSE.
+ 3) When handling events that don't choose a focus window but rather need
+ a focus_window chosen for them (e.g. switch-to-workspace keybindings),
+ don't change the mouse_mode and just use the current value.
+Note that grabs present a special case since they can generate EnterNotify
+and LeaveNotify events without using the mouse, thus these events should be
+ignored when the crossing mode is NotifyGrab or NotifyUngrab. THIS
+MOUSENAV/KEYNAV MODERATION METHOD IS NOT PERFECT--there are corner cases
+when trying to mix-and-match between mousenav and keynav simultaneously
+that cause problems; but it appears to be the most reasonable tradeoff and
+works well in most cases, especially if the user sticks to just mousenav
+for a long time or just keynav for a long time.
+
+Finally, windows of type WM_DOCK or WM_DESKTOP (e.g. the desktop and
+the panel) present a special case, at least partially due to the lack
+of decorations. For WM_DESKTOP windows, we only focus them if the
+user explicitly requests it (e.g. clicks on the window, uses
+Ctrl-Alt-Tab to navigate to it, uses a keybinding to show the desktop,
+etc.). For WM_DOCK windows, we do not focus unless we receive a very
+explicit request (e.g. Ctrl-Alt-Tab or a _NET_ACTIVE_WINDOW message;
+not normal clicks).
+
+
+
+
+To read more about the bugs that inspired these choices:
+ - When a focused window becomes invalid and another should be chosen
+ http://bugzilla.gnome.org/show_bug.cgi?id=135810
+ - When a new window is mapped
+ http://bugzilla.gnome.org/show_bug.cgi?id=118372
+ Also, the EWMH spec, especially the parts relating to _NET_WM_USER_TIME
+ - Modal vs. non-modal dialogs that get denied focus when mapped
+ http://bugzilla.gnome.org/show_bug.cgi?id=151996
+ - Mousenav vs. Keynav in mouse and sloppy focus modes
+ http://bugzilla.gnome.org/show_bug.cgi?id=167545
+ http://bugzilla.gnome.org/show_bug.cgi?id=101190
+ http://bugzilla.gnome.org/show_bug.cgi?id=357695
+ - Not focusing panels
+ http://bugzilla.gnome.org/show_bug.cgi?id=160470
+ http://bugzilla.gnome.org/show_bug.cgi?id=120100
+
+There were many bugs which had to be fixed to get all the above
+working; they helped form these policies and/or show the difficulties
+in implementing this policy (my apologies in advance for producing a
+list heavily lopsided to what I've done; it's just that these bugs are
+the ones I'm the most familiar with):
+ bug 72314 ignore LeaveNotify events from grabs
+ bug 82921 focus windows on map
+ bug 87531 only show focus for sticky windows on active workspace (pager)
+ bug 94545 focus window on workspace switch is non-deterministic
+ bug 95747 should ignore EnterNotify events with NotifyInferior detail set
+ bug 97635 sticky windows always keep focus when switching workspaces
+ bug 102665 a window unminimized from the tasklist should be focused
+ bug 107347 focus windows that manually position themselves too
+ bug 108643 focus in MRU order instead of stack order
+ bug 110970 moving a window to another workspace loses focus
+ bug 112031 closing a dialog can result in a strange focus window
+ bug 115650 add _NET_WM_USER_TIME support to gtk+ (see also 150502)
+ bug 120100 panel shouldn't be focused after workspace applet usage
+ bug 123803 need final EnterNotify after workspace switch (see also 124798)
+ bug 124981 focus clicked window in pager only if on current workspace
+ bug 125492 catch the xserver unfocusing everything and fix its braindeadedness
+ bug 128200 focus correct window on libwnck window minimize (see 107681 too)
+ bug 131582 fix race condition on window minimize/close
+ bug 133120 wrong window focused when changing workspaces
+ bug 135024 _NET_ACTIVE_WINDOW messages need timestamps
+ bug 135786 middle-clicking on focused window to lower it should defocus too
+ bug 136581 window minimization vs. activation for mouse focus
+ bug 144900 fix focus choice on "un-showing" the desktop
+ bug 147475 don't lock keyboard on workspace change
+ bug 148364 DEMANDS_ATTENTION support for marco & libwnck (and other stuff)
+ bug 149028 focus-stealing-prevention for marco-dialog (and other stuff)
+ bug 149366 windows denied focus on map occur in wrong order in alt-tab list
+ bug 149543 consistent focus window when unshowing desktop
+ bug 149589 race in focus choice from libwnck messages
+ bug 150271 make sure "run application" dialog gets focused
+ bug 150668 update gtk+ _NET_ACTIVE_WINDOW support
+ bug 151245 application startup notification forwarding (partially rejected)
+ bug 151984 Soeren's idea--backup timestamp when startup notification not used
+ bug 151990 prevent focus inconsistencies by only providing one focus method
+ bug 151996 modal dialogs denied focus should not be lowered
+ bug 152000 fix race on window close followed by rapid mouse movement
+ bug 152004 ways to handle new window versus mouse invariants
+ bug 153220 catch the root window getting focus and reset to default window
+ bug 157360 focus parents of dismissed transient windows in preference to
+ the window that most recently had focus
+ bug 159257 focus the desktop when showing it
+ bug 160470 don't focus panels on click
+ bug 163450 correct highlighting in workspace switcher popup
+ bug 164716 refuse to focus a window with a modal transient, and focus
+ the transient instead
+ bug 166524 avoid new windows being obscured by the focus window
+ bug 167545 mousenav vs. keynav in mouse and sloppy focus modes
+ <a massive heap of bugs relating to focus stealing prevention...>
+
+
+Addendum on sloppy and mouse focus
+ You may occasionally hear people refer to sloppy or mouse focus
+ modes as inherently buggy. This is what they mean by that:
+
+ 1) Keynav doesn't maintain the same invariants as mouse navigation
+ for these focus modes; switching back and forth between
+ navigation methods, therefore, may have or appear to have
+ inconsistencies. Examples:
+ a) If the user uses Alt-Tab to change the window with focus, then
+ starts to move the mouse, at that moment the window where the
+ mouse is does not have focus.
+ b) Users expect that a workspace they previously used will not
+ change when the return to it. This means things like window
+ position and stacking order, but also the focus window.
+ Unfortunately, using the original focus window (which would be
+ the most recently used window on that workspace) will
+ sometimes conflict with the invariants for mouse and sloppy
+ focus modes. Users are much more surprised by the invariant
+ being broken than by having the focus window changed (see bug
+ 94545 and probably others), so we maintain the invariant.
+ This only matters when using Ctrl-Alt-Arrow to switch
+ workspaces instead of clicking in the workspace switcher, so
+ this really is a keynav vs mouse issue. Either that, or a
+ windows-are-being-mapped exception. ;-)
+ c) Opening a menu, then moving the mouse to a different window,
+ and then pressing escape to dismiss the menu will result in
+ the window containing the mouse not being focused. This is
+ actually correct behavior (because pressing escape shows that
+ the user is using key navigation to interact with the window
+ containing the menu) but is one of those hard-to-get-right
+ keynav and mouse focus mixture cases. (See bug 101190 for
+ more details)
+ d) Similar to (c), moving the mouse off the menu doesn't immediately
+ focus the window that the mouse goes over, due to an application
+ grab (we couldn't change this and wouldn't want to, but
+ technically it does break the invariant).
+ e) If mouse_mode is off and the user does something to cause focus to
+ change (e.g. switch workspaces, close or minimize a window, etc.)
+ and simultaneously tries to move the mouse, the choice of which
+ window to focus is inherently race-y. (You probably can't satisfy
+ both keynav and mousenav invariants simultaneously...)
+ 2) The sloppy/mouse invariants are often not strictly maintained;
+ for example, we provide an exception to the invariant for newly
+ mapped windows. (Most find that not allowing this exception is
+ confusing)
+ 3) There are an awful lot of little cases to handle to get any focus
+ mode right, even for click-to-focus. Since mouse and sloppy
+ focus have sometimes been hard to even determine what correct
+ behavior is, it is much harder to get them completely right.
+ Plus mouse and sloppy focus users are a minority, decreasing the
+ motivation of window manager implementors to get those focus
+ modes right.
+ 4) Because of -1-, -2-, and -3-, implementations are often buggy or
+ inconsistent and people form their opinions from usage of these
+ implementations.
+ 5) Sloppy focus suffers from a bit of a discoverability problem (for
+ example, I have seen a scientist sit down to a computer for which
+ sloppy focus was in use and take a few minutes before figuring
+ out how window activation worked; granted the layout of the
+ windows in that situation was a bit unusual but it still
+ illustrates that sloppy focus is harder than it should be to
+ figure out). Mouse focus solves this problem; however, people
+ that have experience with other computing environments are
+ accustomed to being able to move their mouse outside the window
+ they are working with and still continue interacting with that
+ window, which conflicts with mouse focus.
diff --git a/doc/man/Makefile.am b/doc/man/Makefile.am
new file mode 100644
index 00000000..cca52d5c
--- /dev/null
+++ b/doc/man/Makefile.am
@@ -0,0 +1,4 @@
+man_MANS = marco.1 marco-theme-viewer.1 \
+ marco-window-demo.1 marco-message.1
+
+EXTRA_DIST = $(man_MANS)
diff --git a/doc/man/Makefile.in b/doc/man/Makefile.in
new file mode 100644
index 00000000..797b06f7
--- /dev/null
+++ b/doc/man/Makefile.in
@@ -0,0 +1,489 @@
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = doc/man
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.in
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+SOURCES =
+DIST_SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+man1dir = $(mandir)/man1
+am__installdirs = "$(DESTDIR)$(man1dir)"
+NROFF = nroff
+MANS = $(man_MANS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
+ALL_CFLAGS = @ALL_CFLAGS@
+ALL_LIBS = @ALL_LIBS@
+ALL_LINGUAS = @ALL_LINGUAS@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATADIRNAME = @DATADIRNAME@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@
+DLLTOOL = @DLLTOOL@
+DOC_USER_FORMATS = @DOC_USER_FORMATS@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GDK_PIXBUF_CSOURCE = @GDK_PIXBUF_CSOURCE@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GREP = @GREP@
+GTK_API_VERSION = @GTK_API_VERSION@
+HELP_DIR = @HELP_DIR@
+HOST_ALIAS = @HOST_ALIAS@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INSTOBJEXT = @INSTOBJEXT@
+INTLLIBS = @INTLLIBS@
+INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
+INTLTOOL_MERGE = @INTLTOOL_MERGE@
+INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MARCO_CFLAGS = @MARCO_CFLAGS@
+MARCO_LIBS = @MARCO_LIBS@
+MARCO_MESSAGE_CFLAGS = @MARCO_MESSAGE_CFLAGS@
+MARCO_MESSAGE_LIBS = @MARCO_MESSAGE_LIBS@
+MARCO_WINDOW_DEMO_CFLAGS = @MARCO_WINDOW_DEMO_CFLAGS@
+MARCO_WINDOW_DEMO_LIBS = @MARCO_WINDOW_DEMO_LIBS@
+MATECONFTOOL = @MATECONFTOOL@
+MATECONF_SCHEMA_CONFIG_SOURCE = @MATECONF_SCHEMA_CONFIG_SOURCE@
+MATECONF_SCHEMA_FILE_DIR = @MATECONF_SCHEMA_FILE_DIR@
+MATEDIALOG = @MATEDIALOG@
+MATE_KEYBINDINGS_KEYSDIR = @MATE_KEYBINDINGS_KEYSDIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+MSGFMT_OPTS = @MSGFMT_OPTS@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OMF_DIR = @OMF_DIR@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+POFILES = @POFILES@
+POSUB = @POSUB@
+PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
+PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+XMKMF = @XMKMF@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+man_MANS = marco.1 marco-theme-viewer.1 \
+ marco-window-demo.1 marco-message.1
+
+EXTRA_DIST = $(man_MANS)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/man/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu doc/man/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+install-man1: $(man_MANS)
+ @$(NORMAL_INSTALL)
+ test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
+ @list=''; test -n "$(man1dir)" || exit 0; \
+ { for i in $$list; do echo "$$i"; done; \
+ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
+ sed -n '/\.1[a-z]*$$/p'; \
+ } | while read p; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; echo "$$p"; \
+ done | \
+ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+ sed 'N;N;s,\n, ,g' | { \
+ list=; while read file base inst; do \
+ if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
+ fi; \
+ done; \
+ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+ while read files; do \
+ test -z "$$files" || { \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
+ done; }
+
+uninstall-man1:
+ @$(NORMAL_UNINSTALL)
+ @list=''; test -n "$(man1dir)" || exit 0; \
+ files=`{ for i in $$list; do echo "$$i"; done; \
+ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
+ sed -n '/\.1[a-z]*$$/p'; \
+ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+ test -z "$$files" || { \
+ echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(man1dir)" && rm -f $$files; }
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+ @list='$(MANS)'; if test -n "$$list"; then \
+ list=`for p in $$list; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
+ if test -n "$$list" && \
+ grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
+ echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+ grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/ /' >&2; \
+ echo " to fix them, install help2man, remove and regenerate the man pages;" >&2; \
+ echo " typically \`make maintainer-clean' will remove them" >&2; \
+ exit 1; \
+ else :; fi; \
+ else :; fi
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(MANS)
+installdirs:
+ for dir in "$(DESTDIR)$(man1dir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-man
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man: install-man1
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-man
+
+uninstall-man: uninstall-man1
+
+.MAKE: install-am install-strip
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+ distclean distclean-generic distclean-libtool distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-man1 \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ uninstall uninstall-am uninstall-man uninstall-man1
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/doc/man/marco-message.1 b/doc/man/marco-message.1
new file mode 100644
index 00000000..62e7a36f
--- /dev/null
+++ b/doc/man/marco-message.1
@@ -0,0 +1,60 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.\" -----
+.\" This file was confirmed to be licenced under the GPL
+.\" by its author and copyright holder, Akira TAGOH, on June 1st 2008:
+.\"
+.\" > I'm comfortable with DFSG-free. that sounds great if you think it's
+.\" > useful and worth containing it in upstream.
+.\" ...
+.\" > Right I know. any licenses that is DFSG-free, I'm ok with whatever,
+.\" > since I have contributed that for Debian. so GPL is no problem for me.
+.\" -----
+.TH MARCO\-MESSAGE 1 "28 August 2002"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+MARCO\-MESSAGE \- a command to send a message to Marco
+.SH SYNOPSIS
+.B MARCO\-MESSAGE
+[restart|reload\-theme|enable\-keybindings|disable\-keybindings]
+.SH DESCRIPTION
+This manual page documents briefly the
+.B marco\-message\fP.
+This manual page was written for the Debian distribution
+because the original program does not have a manual page.
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+\fBmarco\-message\fP send a specified message to \fBmarco\fP(1).
+.SH OPTIONS
+.TP
+.B restart
+Restart \fBmarco\fP(1) which is running.
+.TP
+.B reload-theme
+Reload a theme which is specified on mateconf database.
+.TP
+.B enable-keybindings
+Enable all of keybindings which is specified on mateconf database.
+.TP
+.B disable-keybindings
+Disable all of keybindings which is specified on mateconf database.
+.SH SEE ALSO
+.BR marco (1)
+.SH AUTHOR
+This manual page was written by Akira TAGOH <[email protected]>,
+for the Debian GNU/Linux system (but may be used by others).
diff --git a/doc/man/marco-theme-viewer.1 b/doc/man/marco-theme-viewer.1
new file mode 100644
index 00000000..6aafabda
--- /dev/null
+++ b/doc/man/marco-theme-viewer.1
@@ -0,0 +1,43 @@
+.\" In .TH, FOO should be all caps, SECTION should be 1-8, maybe w/ subsection
+.\" other parms are allowed: see man(7), man(1)
+.\"
+.\" Based on template provided by Tom Christiansen <[email protected]>.
+.\"
+.TH MARCO-THEME-VIEWER 1 "1 June 2004"
+.SH NAME
+marco-theme-viewer \- view marco themes
+.SH SYNOPSIS
+.B marco-theme-viewer
+[
+.I THEMENAME
+]
+.SH DESCRIPTION
+.\" Putting a newline after each sentence can generate better output.
+.B marco-theme-viewer
+allows you to preview any installed Marco theme.
+.PP
+When designing a new Marco theme, you can use
+.B marco-theme-viewer
+to measure the performance of a window frame option, and to preview
+the option.
+.SH OPTIONS
+.TP
+.I THEMENAME
+Name of the theme to be shown (\fIAtlanta\fR by default).
+It is case-sensitive.
+.SH FILES
+.br
+.nf
+.TP
+.I /usr/share/themes
+system themes directory
+.TP
+.I /usr/share/themes/*/marco-1/marco-theme-1.xml
+theme specification file
+.SH AUTHOR
+This manual page was written by Jose M. Moya <[email protected]>, for
+the Debian GNU/Linux system (but may be used by others).
+.SH "SEE ALSO"
+.\" Always quote multiple words for .SH
+.BR marco (1),
+.BR marco-window-demo (1).
diff --git a/doc/man/marco-window-demo.1 b/doc/man/marco-window-demo.1
new file mode 100644
index 00000000..268cb9a4
--- /dev/null
+++ b/doc/man/marco-window-demo.1
@@ -0,0 +1,25 @@
+.\" In .TH, FOO should be all caps, SECTION should be 1-8, maybe w/ subsection
+.\" other parms are allowed: see man(7), man(1)
+.\"
+.\" Based on template provided by Tom Christiansen <[email protected]>.
+.\"
+.TH MARCO-WINDOW-DEMO 1 "1 June 2004"
+.SH NAME
+marco-window-demo \- demo of window features
+.SH SYNOPSIS
+.B marco-window-demo
+.SH DESCRIPTION
+.\" Putting a newline after each sentence can generate better output.
+This program demonstrates various kinds of windows that window
+managers and window manager themes should handle.
+.PP
+Be sure to tear off the menu and toolbar, those are also a special
+kind of window.
+.SH AUTHOR
+This manual page was written by Jose M. Moya <[email protected]>, for
+the Debian GNU/Linux system (but may be used by others).
+.SH "SEE ALSO"
+.\" Always quote multiple words for .SH
+.BR x-window-manager (1),
+.BR marco (1),
+.BR marco-theme-viewer (1).
diff --git a/doc/man/marco.1 b/doc/man/marco.1
new file mode 100644
index 00000000..793893ba
--- /dev/null
+++ b/doc/man/marco.1
@@ -0,0 +1,60 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH MARCO 1 "11 February 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+MARCO \- minimal GTK2 Window Manager
+.SH SYNOPSIS
+.B marco
+[\-\-display=\fIDISPLAY\fP] [\-\-replace] [\-\-sm\-client\-id=\fIID\fP] [\-\-sm\-disable] [\-\-sm\-save\-file=\fIFILENAME\fP] [\-\-version] [\-\-help]
+.SH DESCRIPTION
+This manual page documents briefly
+.B marco\fP.
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+\fBmarco\fP is a minimal X window manager aimed at nontechnical users and is designed to integrate well with the MATE desktop. \fBmarco\fP lacks some features that may be expected by traditional UNIX or other technical users; these users may want to investigate other available window managers for use with MATE or standalone.
+.SH OPTIONS
+.TP
+.B \-\-display=DISPLAY
+Connect to X display \fIDISPLAY\fP.
+.TP
+.B \-\-replace
+a window manager which is running is replaced by \fBmarco\fP. Users are encouraged to change the MATE window manager by running the new WM with the --replace or -replace option, and subsequently saving the session.
+.TP
+.B \-\-sm\-client\-id=ID
+Specify a session management \fIID\fP.
+.TP
+.B \-\-sm\-disable
+Disable the session management.
+.TP
+.B \-\-sm\-save\-file=FILENAME
+Load a session from \fIFILENAME\fP.
+.TP
+.B \-\-version
+Print the version number.
+.TP
+.B \-?, \-\-help
+Show summary of options.
+.SH CONFIGURATION
+\fBmarco\fP configuration can be found under \fIPreferences\fP->\fIWindows\fP and \fIPreferences\fP->\fIKeyboard Shortcuts\fP on the menu-panel. Advanced configuration can be achieved directly through mateconf editing (mateconf-editor or mateconftool-2).
+.SH SEE ALSO
+.BR marco-message (1)
+.SH AUTHOR
+The original manual page was written by Thom May <[email protected]>. It was updated by Akira TAGOH <[email protected]>
+for the Debian GNU/Linux system (with permission to use by others), and then updated by Luke Morton and Philip O'Brien
+for inclusion in marco.
diff --git a/doc/marco-theme.dtd b/doc/marco-theme.dtd
new file mode 100644
index 00000000..7c9d3d20
--- /dev/null
+++ b/doc/marco-theme.dtd
@@ -0,0 +1,273 @@
+<!--
+ DTD for Marco themes, as of Marco 2.4.1
+ Author: Ross Burton <[email protected]>
+ Copyright (C) 2002 Ross Burton
+ Licensed under the GPL, version 2
+-->
+
+<!-- Top-level element -->
+<!ELEMENT marco_theme (info,(window|frame_style_set|frame_style|frame_geometry|constant|draw_ops|menu_icon)+)>
+
+<!-- Theme metadata -->
+<!ELEMENT info (name?|author?|copyright?|date?|description?)*>
+<!ELEMENT name (#PCDATA)>
+<!ELEMENT author (#PCDATA)>
+<!ELEMENT copyright (#PCDATA)>
+<!ELEMENT date (#PCDATA)>
+<!ELEMENT description (#PCDATA)>
+
+<!ENTITY % xyrequired "
+ x CDATA #REQUIRED
+ y CDATA #REQUIRED
+">
+
+<!ENTITY % xyimplied "
+ x CDATA #IMPLIED
+ y CDATA #IMPLIED
+">
+
+<!ENTITY % widthheightrequired "
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED
+">
+
+<!ENTITY % widthheightimplied "
+ width CDATA #IMPLIED
+ height CDATA #IMPLIED
+">
+
+<!ENTITY % boolean "(true|false)">
+
+<!ENTITY % piece_positions "
+(entire_background|titlebar|titlebar_middle|left_titlebar_edge|right_titlebar_edge|top_titlebar_edge|bottom_titlebar_edge|title|left_edge|right_edge|bottom_edge|overlay)
+">
+
+<!ENTITY % gtk-state "
+ state (normal|prelight|active|selected|insensitive) #REQUIRED
+">
+
+<!ENTITY % gtk-shadow "
+ shadow (none|in|out|etched_in|etched_out) #REQUIRED
+">
+
+
+<!-- The actual theme -->
+
+<!ELEMENT window EMPTY>
+<!ATTLIST window
+ type (normal|dialog|modal_dialog|menu|utility|border) #REQUIRED
+ style_set CDATA #REQUIRED
+>
+
+
+<!ELEMENT frame_style_set (frame+)>
+<!ATTLIST frame_style_set
+ name CDATA #REQUIRED
+ parent CDATA #IMPLIED
+>
+
+<!ELEMENT frame EMPTY>
+<!ATTLIST frame
+ focus (yes|no) #REQUIRED
+ state (normal|maximized|shaded|maximized_and_shaded) #REQUIRED
+ resize (both|horizontal|vertical|none) #IMPLIED
+ style CDATA #REQUIRED
+>
+
+<!ELEMENT frame_style (piece|button)*>
+<!ATTLIST frame_style
+ name CDATA #REQUIRED
+ geometry CDATA #REQUIRED
+ parent CDATA #IMPLIED
+>
+
+<!ELEMENT piece (draw_ops?)>
+<!ATTLIST piece
+ position %piece_positions; #REQUIRED
+ draw_ops CDATA #IMPLIED
+>
+
+<!ELEMENT button (draw_ops?)>
+<!ATTLIST button
+ function (menu|minimize|maximize|close|left_left_background|left_middle_background|left_right_background|right_left_background|right_middle_background|right_right_background) #REQUIRED
+ state (normal|prelight|pressed) #REQUIRED
+ draw_ops CDATA #IMPLIED
+>
+
+<!ELEMENT frame_geometry (border|(aspect_ratio|distance))+>
+<!ATTLIST frame_geometry
+ name CDATA #REQUIRED
+ parent CDATA #IMPLIED
+ title_scale (xx-small|x-small|small|medium|large|x-large|xx-large) #IMPLIED
+ has_title (true|false) 'true'
+ rounded_top_left %boolean; #IMPLIED
+ rounded_top_right %boolean; #IMPLIED
+ rounded_bottom_left %boolean; #IMPLIED
+ rounded_bottom_right %boolean; #IMPLIED
+>
+
+<!ELEMENT distance EMPTY>
+<!ATTLIST distance
+ name (left_width|right_width|bottom_height|title_vertical_pad|right_titlebar_edge|left_titlebar_edge|button_width|button_height) #REQUIRED
+ value CDATA #REQUIRED
+>
+
+<!ELEMENT border EMPTY>
+<!ATTLIST border
+ name CDATA #REQUIRED
+ top CDATA #REQUIRED
+ bottom CDATA #REQUIRED
+ left CDATA #REQUIRED
+ right CDATA #REQUIRED
+>
+
+<!ELEMENT aspect_ratio EMPTY>
+<!ATTLIST aspect_ratio
+ name CDATA #REQUIRED
+ value CDATA #REQUIRED
+>
+
+<!ELEMENT draw_ops (line|rectangle|arc|tint|gradient|image|gtk_arrow|gtk_box|gtk_vline|icon|title|clip|include|tile)*>
+<!-- not sure about this.. maybe it should be removed. see #3478 in theme-parser.c -->
+<!ATTLIST draw_ops
+ name CDATA #IMPLIED
+>
+
+<!ELEMENT line EMPTY>
+<!ATTLIST line
+ color CDATA #REQUIRED
+ x1 CDATA #REQUIRED
+ y1 CDATA #REQUIRED
+ x2 CDATA #REQUIRED
+ y2 CDATA #REQUIRED
+ width CDATA #IMPLIED
+ dash_on_length CDATA #IMPLIED
+ dash_off_length CDATA #IMPLIED
+>
+
+<!ELEMENT rectangle EMPTY>
+<!ATTLIST rectangle
+ color CDATA #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ filled %boolean; 'false'
+>
+
+<!ELEMENT arc EMPTY>
+<!ATTLIST arc
+ color CDATA #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ start_angle CDATA #REQUIRED
+ extent_angle CDATA #REQUIRED
+ filled %boolean; 'false'
+>
+
+<!ELEMENT icon EMPTY>
+<!ATTLIST icon
+ %xyrequired;
+ width CDATA #REQUIRED
+ height CDATA #REQUIRED
+ alpha CDATA #IMPLIED
+ fill_type (tile|scale) 'scale'
+>
+
+<!ELEMENT image EMPTY>
+<!ATTLIST image
+ filename CDATA #REQUIRED
+ colorize CDATA #IMPLIED
+ %xyrequired;
+ %widthheightrequired;
+ alpha CDATA #IMPLIED
+ fill_type (tile|scale) 'scale'
+>
+
+<!ELEMENT tile EMPTY>
+<!ATTLIST tile
+ name CDATA #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ tile_xoffset CDATA #IMPLIED
+ tile_yoffset CDATA #IMPLIED
+ tile_width CDATA #REQUIRED
+ tile_height CDATA #REQUIRED
+>
+
+<!ELEMENT clip EMPTY>
+<!ATTLIST clip
+ %xyrequired;
+ %widthheightrequired;
+>
+
+<!ELEMENT title EMPTY>
+<!ATTLIST title
+ color CDATA #REQUIRED
+ %xyrequired;
+>
+
+<!ELEMENT tint EMPTY>
+<!ATTLIST tint
+ color CDATA #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ alpha CDATA #REQUIRED
+>
+
+<!ELEMENT gtk_box EMPTY>
+<!ATTLIST gtk_box
+ %gtk-state;
+ %gtk-shadow;
+ %xyrequired;
+ %widthheightrequired;
+>
+
+<!ELEMENT gtk_arrow EMPTY>
+<!ATTLIST gtk_arrow
+ %gtk-state;
+ %gtk-shadow;
+ arrow (up|down|left|right) #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ filed CDATA #IMPLIED
+>
+
+<!ELEMENT gtk_vline EMPTY>
+<!ATTLIST gtk_vline
+ %gtk-state;
+ x CDATA #REQUIRED
+ y1 CDATA #REQUIRED
+ y2 CDATA #REQUIRED
+>
+
+<!ELEMENT gradient (color)+>
+<!ATTLIST gradient
+ type (vertical|horizontal|diagonal) #REQUIRED
+ %xyrequired;
+ %widthheightrequired;
+ alpha CDATA #IMPLIED
+>
+
+<!ELEMENT color EMPTY>
+<!ATTLIST color
+ value CDATA #REQUIRED
+>
+
+<!ELEMENT include EMPTY>
+<!ATTLIST include
+ name CDATA #REQUIRED
+ %xyimplied;
+ %widthheightimplied;
+>
+
+<!ELEMENT constant EMPTY>
+<!ATTLIST constant
+ name CDATA #REQUIRED
+ value CDATA #REQUIRED
+>
+
+<!ELEMENT menu_icon (draw_ops?)>
+<!ATTLIST menu_icon
+ function (close|maximize|minimize|unmaximize) #REQUIRED
+ %gtk-state;
+ draw_ops CDATA #IMPLIED
+>
diff --git a/doc/theme-format.txt b/doc/theme-format.txt
new file mode 100644
index 00000000..4881815f
--- /dev/null
+++ b/doc/theme-format.txt
@@ -0,0 +1,330 @@
+Themes are in a simple XML-subset format. There are multiple versions
+of the theme format, and a given theme can support more than one format.
+
+Version 1: THEMEDIR/metacity-1/metacity-theme-1.xml
+ (original metacity format)
+Version 2: THEMEDIR/metacity-1/metacity-theme-2.xml
+
+The subdirectory name is "metacity-1" in all versions.
+
+As you might expect, older versions of marco will not understand
+newer theme formats. However, newer versions will use old themes.
+Marco will always use the newest theme format it understands that
+the X server supports. Some format versions are only supported if you
+have the right X server features.
+
+Each format *requires* the corresponding filename. If you put version
+2 format features in the metacity-1/metacity-theme-1.xml file, then
+marco will get angry.
+
+This document has separate sections for each format version. You may
+want to read the document in reverse order, since the base features
+are discussed under version 1.
+
+New Features in Theme Format Version 2
+======================================
+
+The optional attributes rounded_top_left, rounded_top_right,
+rounded_bottom_left and rounded_bottom_right on <frame_geometry>
+should now be the radius of the corner in pixels. You may still use
+the values "false" for 0 and "true" for 5, which means v1 values will
+still work just fine.
+
+<frame_geometry> has a new optional attribute, hide_buttons. If this
+is true, no buttons will be displayed on the titlebar.
+
+Anywhere you can use a positive integer, you can use an integer constant.
+
+As well as constant integers and reals, you may define constant colours,
+thus:
+ <constant name="RevoltingPink" value="#FF00FF"/>
+ <constant name="Background" value="gtk:bg[NORMAL]"/>
+
+<frame_style> has two new optional attributes, background and alpha.
+If you specify alpha, you must specify background. background is a
+colour used for the background of the frame. alpha is the transparency
+as a real between 0.0 and 1.0. If the current X server does not support
+alpha channels, the value is ignored.
+
+The filename attribute of <image> may begin with "theme:". If so, the
+rest of the string is the name of a theme icon. The 64x64 version of the
+icon is used, except for fallback mini_icons, which use the 16x16 version.
+This does not affect ordinary resizing. For example:
+ <button function="close" state="normal">
+ <draw_ops>
+ <include name="active_button"/>
+ <image filename="theme:mate-logout" x="2" y="2"
+ width="width-4" height="height-4"/>
+ <!-- Note: not "theme:mate-logout.png" or similar. -->
+ </draw_ops>
+ </button>
+
+<menu_icon>s are parsed but ignored.
+
+Fallback icons can be specified using <fallback>. There are two
+optional arguments, icon and mini_icon. The values of these arguments
+are identical to that of the filename attribute of <image>. Fallback
+icons are used when a window does not supply its own icon. If a fallback
+icon is not specified with <fallback>, Marco will use a built-in
+icon, as in metacity-theme-1.
+
+The <arc> element, as well as the original start_angle and end_angle
+attributes, may be given from and to attributes. The values of these
+attributes are given in degrees clockwise, with 0 being straight up.
+For example:
+ <arc from="0.0" to="90.0" filled="true" color="#FF00FF"
+ x="0" y="5" width="15" height="15"/>
+
+<frame state="shaded"> may now take an optional resize attribute, with
+the same interpretation as the resize attribute on <frame state="normal">.
+If this attribute is omitted for state="shaded", it defaults to "both".
+(If it is omitted for state="normal", it remains an error.)
+
+In addition to the four <button> functions which are required in
+metacity-theme-1, there are six new functions in metacity-theme-2:
+shade, unshade, above, unabove, stick and unstick.
+
+Overview of Theme Format Version 1
+==================================
+
+<?xml version="1.0"?>
+<metacity_theme>
+<!-- Only one info section is allowed -->
+<info>
+ <name>Foo</name>
+ <author>Foo P. Bar</author>
+ <copyright>whoever, 2002</copyright>
+ <date>Jan 31 2005</date>
+ <description>A sentence about the theme.</description>
+</info>
+
+<!-- define a frame geometry to be referenced later -->
+<!-- frame_geometry has an optional has_title attribute which
+ determines whether the title text height is included in the
+ height calculation. if not specified, defaults to true.
+ It also has an optional text_size="medium" attribute
+ (same sizes as with Pango markup, xx-small thru medium thru
+ xx-large)
+
+ Finally it has optional args rounded_top_left=true,
+ rounded_top_right=true, rounded_bottom_left=true,
+ rounded_bottom_right=true.
+
+ -->
+<frame_geometry name="normal" has_title="true" title_scale="medium">
+ <distance name="left_width" value="6"/>
+ <distance name="right_width" value="6"/>
+ <distance name="bottom_height" value="7"/>
+ <distance name="left_titlebar_edge" value="6"/>
+ <distance name="right_titlebar_edge" value="6"/>
+ <distance name="button_width" value="17"/>
+ <distance name="button_height" value="17"/>
+ <!-- alternative to button_width button_height distances -->
+ <aspect_ratio name="button" value="1.0"/>
+ <distance name="title_vertical_pad" value="4"/>
+ <border name="title_border" left="3" right="12" top="4" bottom="3"/>
+ <border name="button_border" left="0" right="0" top="1" bottom="1"/>
+</frame_geometry>
+
+<!-- inheritance is allowed; simply overwrites values from parent -->
+<frame_geometry name="borderless" parent="normal">
+ <distance name="left_width" value="0"/>
+ <distance name="right_width" value="0"/>
+ <distance name="bottom_height" value="0"/>
+ <distance name="left_titlebar_edge" value="0"/>
+ <distance name="right_titlebar_edge" value="0"/>
+</frame_geometry>
+
+<!-- define a constant to use in positions/sizes of draw operations;
+ constant names must start with a capital letter.
+ -->
+<constant name="LineOffset" value="3"/>
+
+<!-- define drawing operations to be referenced later;
+ these draw-op lists can also be placed inline.
+
+ Positions/lengths are given as expressions.
+ Operators are: +,-,*,/,%,`max`,`min`
+ All operators are infix including `max` and `min`,
+ i.e. "2 `max` 5"
+
+ Some variables are predefined, and constants can also
+ be used. Variables are:
+
+ width - width of target area
+ height - height of target area
+ object_width - natural width of object being drawn
+ object_height - natural height of object being drawn
+ left_width - distance from left of frame to client window
+ right_width - distance from right of frame to client window
+ top_height - distance from top of frame to client window
+ bottom_height - distance from bottom of frame to client window
+ mini_icon_width - width of mini icon for window
+ mini_icon_height - height of mini icon
+ icon_width - width of large icon
+ icon_height - height of large icon
+ title_width - width of title text
+ title_height - height of title text
+
+ All these are always defined, except object_width/object_height
+ which only exists for <image> right now.
+
+ -->
+
+<draw_ops name="demo_all_ops">
+ <line color="#00FF00" x1="LineOffset" y1="0" x2="0" y2="height"/>
+ <line color="gtk:fg[NORMAL]"
+ x1="width - 1" y1="0" x2="width - 1" y2="height"
+ width="3" dash_on_length="2" dash_off_length="3"/>
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.7"
+ x="0" y="0" width="width - 1" height="height - 1" filled="true"/>
+ <arc color="dark gray" x="0" y="0" width="width - 1" height="height - 1"
+ filled="false" start_angle="30" extent_angle="180"/>
+ <tint color="orange" alpha="0.5" x="0" y="0" width="width" height="height"/>
+ <!-- may be vertical, horizontal, diagonal -->
+ <gradient type="diagonal"
+ x="10" y="30" width="width / 3" height="height / 4">
+ <!-- any number of colors allowed here. A color can be
+ a color name like "blue" (look at gcolorsel), a hex color
+ as in HTML (#FFBB99), or a color from the gtk theme
+ given as "gtk:base[NORMAL]", "gtk:fg[ACTIVE]", etc.
+ -->
+ <color value="gtk:fg[SELECTED]"/>
+ <!-- color obtained by a 0.5 alpha composite of the second color onto the first -->
+ <color value="blend/gtk:bg[SELECTED]/gtk:fg[SELECTED]/0.5"/>
+ </gradient>
+ <!-- image has an optional colorize="#color" attribute to give the
+ image a certain color -->
+ <image filename="foo.png" alpha="0.7"
+ x="10" y="30" width="width / 3" height="height / 4"/>
+ <gtk_arrow state="normal" shadow="in" arrow="up"
+ filled="true"
+ x="2" y="2" width="width - 4" height="height - 4"/>
+ <gtk_box state="normal" shadow="out"
+ x="2" y="2" width="width - 4" height="height - 4"/>
+ <gtk_vline state="normal" x="2" y1="0" y2="height"/>
+ <!-- window's icon -->
+ <icon alpha="0.7"
+ x="10" y="30" width="width / 3" height="height / 4"/>
+ <!-- window's title -->
+ <title color="gtk:text[NORMAL]" x="20" y="30"/>
+ <!-- include another draw ops list; has optional x/y/width/height attrs -->
+ <include name="some_other_draw_ops"/>
+ <!-- tile another draw ops list; has optional
+ x/y/width/height/tile_xoffset/tile_yoffset -->
+ <tile name="some_other_draw_ops" tile_width="10" tile_height="10"/>
+</draw_ops>
+
+<frame_style name="normal" geometry="normal">
+ <!-- How to draw each piece of the frame.
+ For each piece, a draw_ops can be given inline or referenced
+ by name. If a piece is omitted, then nothing will be drawn
+ for that piece.
+
+ For each piece, the "width" and "height" variables in
+ coordinate expressions refers to the dimensions of the piece,
+ the origin is at the top left of the piece.
+
+ So <rectangle x="0" y="0" width="width-1" height="height-1"/>
+ will outline a piece.
+ -->
+
+ <piece position="entire_background" draw_ops="demo_all_ops"/>
+ <piece position="left_titlebar_edge">
+ <draw_ops>
+ <line color="#00FF00" x1="0" y1="0" x2="0" y2="height"/>
+ </draw_ops>
+ </piece>
+
+ <!-- The complete list of frame pieces:
+
+ entire_background: whole frame
+ titlebar: entire area above the app's window
+ titlebar_middle: area of titlebar_background not considered
+ part of an edge
+ left_titlebar_edge: left side of titlebar background
+ right_titlebar_edge: right side of titlebar background
+ top_titlebar_edge: top side of titlebar background
+ bottom_titlebar_edge: bottom side of titlebar background
+ title: the title area (doesn't include buttons)
+ left_edge: left edge of the frame
+ right_edge: right edge of the frame
+ bottom_edge: bottom edge of the frame
+ overlay: same area as entire_background, but drawn after
+ drawing all sub-pieces instead of before
+
+ -->
+
+ <!-- For buttons, drawing methods have to be provided for
+ each of three states:
+ normal, pressed, prelight
+ and the button function or position must be provided:
+ close, maximize, minimize, menu,
+ left_left_background, left_middle_background,
+ left_right_background, right_left_background,
+ right_middle_background, right_right_background
+ So a working theme needs 3*4 = 12 button declarations
+ and a theme may have up to 3*10 = 30 button declarations
+ in order to handle button-rearrangement preferences.
+
+ (The name "function" for the attribute is from before the
+ background values existed.)
+ -->
+
+ <button function="close" state="normal" draw_ops="previously_named"/>
+ <button function="menu" state="normal">
+ <draw_ops>
+ <icon alpha="0.7"
+ x="0" y="0" width="object_width" height="object_height"/>
+ </draw_ops>
+ </button>
+
+</frame_style>
+
+<!-- styles can inherit from each other with the parent="" attribute.
+ In a subclass anything can be re-specified to override
+ the parent style. -->
+<frame_style name="focused" parent="normal">
+ <piece position="title">
+ <draw_ops>
+ <rectangle color="gtk:bg[SELECTED]"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <title color="gtk:fg[SELECTED]" x="(width - title_width) / 2"
+ y="(height - title_height) / 2"/>
+ </draw_ops>
+ </piece>
+</frame_style>
+
+<!-- Maps styles to states of frame.
+
+ Focus: yes (focused), no (not focused)
+ Window states: normal, maximized, shaded, maximized_and_shaded
+ Window resizability: none, vertical, horizontal, both
+
+ Everything unspecified just does the same as
+ unfocused/normal/both.
+
+ only state="normal" needs a resize="" attribute.
+ -->
+<frame_style_set name="normal">
+<frame focus="yes" state="normal" resize="both" style="focused"/>
+<frame focus="no" state="normal" resize="both" style="normal"/>
+</frame_style_set>
+
+<!-- Each window type needs a style set
+ Types: normal, dialog, modal_dialog, menu, utility, border
+ -->
+<window type="normal" style_set="normal"/>
+
+
+<!-- For menu icons, drawing methods are needed for the same
+ four types as the buttons, and GTK states
+ (insensitive,prelight,normal,etc.)
+ -->
+
+<menu_icon function="close" state="normal" draw_ops="previously_named"/>
+
+
+</metacity_theme>
+
+
diff --git a/po/ChangeLog b/po/ChangeLog
new file mode 100644
index 00000000..88c4f89e
--- /dev/null
+++ b/po/ChangeLog
@@ -0,0 +1,4964 @@
+2009-04-10 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated zh_CN translation.
+
+2009-04-04 Marcel Telka <[email protected]>
+
+ * sk.po: Updated Slovak translation by Pavol Šimo.
+
+2009-03-27 Simos Xenitellis <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2009-03-21 Goran Rakic <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation by Miloš Popović.
+
+2009-03-19 Tomasz Dominikowski <[email protected]>
+
+ * pl.po: Updated Polish translation
+
+2009-03-18 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician translation by Suso Baleato.
+
+2009-03-17 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2009-03-14 Gintautas Miliauskas <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2009-03-14 Nickolay V. Shmyrev <[email protected]>
+
+ * ru.po: Updated Russian translation by Yuriy Penkin.
+
+2009-03-08 Petr Kovar <[email protected]>
+
+ * cs.po: Updated Czech translation.
+ * POTFILES.in: Removed "src/ui/marco-dialog.c".
+
+2009-03-02 Claude Paroz <[email protected]>
+
+ * fr.po: Updated French translation (synced with mate-2-26).
+
+2009-02-28 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2009-02-20 Og Maciel <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation by
+ Vladimir Melo.
+
+2009-02-19 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2009-02-19 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2009-02-17 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2009-02-16 Wouter Bolsterlee <[email protected]>
+
+ * nl.po: Updated Dutch translation by Wouter Bolsterlee.
+
+2009-02-15 Kenneth Nielsen <[email protected]>
+
+ * da.po: Updated Danish translation by Ask H. Larsen
+
+2009-02-14 Ihar Hrachyshka <[email protected]>
+
+ * [email protected]: Updated Belarusian Latin translation by Ihar
+ Hrachyshka.
+
+2009-02-13 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation (merged from mate-2-26 branch).
+
+2009-02-12 Inaki Larranaga Murgoitio <[email protected]>
+
+ * eu.po: Updated Basque translation.
+
+2009-02-11 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2009-02-11 Priit Laes <plaes at svn dot mate dot org>
+
+ * et.po: Translation updated by Mattias Põldaru
+
+2009-02-10 Gil Forcada <[email protected]>
+
+ * ast.po: Updated Asturian translation on behalf of Mikel Gonzlález.
+
+2009-02-10 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2009-02-09 Chao-Hsiung Liao <[email protected]>
+
+ * zh_HK.po: Updated Traditional Chinese translation(Hong Kong).
+ * zh_TW.po: Updated Traditional Chinese translation(Taiwan).
+
+2009-02-03 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2009-02-01 Gil Forcada <[email protected]>
+
+ * ca.po: Updated Catalan translation by David Planella.
+
+2009-01-31 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2009-01-31 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2009-01-29 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2009-01-29 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2009-01-24 Raivis DEjus <[email protected]>
+
+ * lv.po: Updated Latvian translation.
+
+2009-01-22 Yair Hershkovitz <[email protected]>
+
+ * he.po: Updated Hebrew translation.
+
+2009-01-17 Thomas Thurman <[email protected]>
+
+ * ig.po: Added Igbo translation by Sylvester Onye.
+ * yo.po Added Yoruba translation by Sunday Ayo Fajuyitan.
+ * ha.po: Added Hausa translation by Saudat Mohammed.
+ * LINGUAS: added Igbo, Yoruba and Hausa.
+
+2009-01-17 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2009-01-09 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2009-01-03 甘露(Gan Lu) <[email protected]>
+
+ * zh_CN.po: Updated Chinese Simplified translation
+
+2009-01-03 Priit Laes <plaes at svn dot mate dot org>
+
+ * et.po: Translation updated by Mattias Põldaru
+
+2008-12-26 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2008-12-12 Luca Ferretti <[email protected]>
+
+ * it.po: Imported updated translation from mate-2-24 branch.
+
+2008-12-08 Priit Laes <plaes at svn dot mate dot org>
+
+ * et.po: Translation updated by Mattias Põldaru
+
+2008-11-23 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2008-11-14 Thomas Thurman <[email protected]>
+
+ * la.po: Updated Latin translation
+
+2008-11-14 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2008-11-09 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2008-11-08 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2008-11-03 Leonardo Ferreira Fontenelle <[email protected]>
+
+ * pt_BR.po: Merged from branch mate-2-24. Minor capitalization fix in
+ the Brazilian Portuguese translation.
+
+2008-10-27 Og Maciel <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation by
+ Og Maciel.
+
+2008-10-27 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2008-10-23 Gil Forcada <[email protected]>
+
+ * LINGUAS: Added ast.
+ * ast.po: Added Asturian translation on behalf of Mikel González.
+
+2008-10-22 Jordi Mallach <[email protected]>
+
+ * [email protected]: New Valencian (Southern Catalan) translation
+ based on the Catalan file.
+ * LINGUAS: Added Valencian (Southern Catalan) (ca@valencia).
+
+2008-10-22 Jordi Mallach <[email protected]>
+
+ * ca.po: Apply Catalan fixes from Robert Millan.
+
+2008-10-17 Thomas Thurman <[email protected]>
+
+ * la.po: Updated Latin translation.
+
+2008-10-16 Marcel Telka <[email protected]>
+
+ * sk.po: Updated Slovak translation by Pavol Šimo.
+
+2008-10-15 Thomas Thurman <[email protected]>
+
+ * la.po: Updated Latin translation.
+
+2008-10-15 Thomas Thurman <[email protected]>
+
+ * la.po: Updated Latin translation.
+
+2008-10-12 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2008-10-12 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation (merged from mate-2-24 branch).
+
+2008-10-11 Claude Paroz <[email protected]>
+
+ * fr.po: Fixed minimize/unmaximize French translation (sync with 2.24) and
+ complete some other translations.
+
+2008-09-30 Og Maciel <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation by Vladimir Melo.
+
+2008-09-29 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2008-09-27 Gil Forcada <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2008-09-27 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian Translation.
+
+2008-09-24 Priit Laes <plaes at svn dot mate dot org>
+
+ * et.po: Translation updated by Ivar Smolin
+
+2008-09-22 Kenneth Nielsen <[email protected]>
+
+ * da.po: Updated Danish translation by Kenneth Nielsen
+
+2008-09-22 Kenneth Nielsen <[email protected]>
+
+ * da.po: Updated Danish translation by Kenneth Nielsen
+
+2008-09-22 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation by
+ Mişu Moldovan <[email protected]>
+
+2008-09-21 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2008-09-21 Gintautas Miliauskas <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2008-09-20 Priit Laes <plaes at svn dot mate dot org>
+
+ * et.po: Translation updated by Ivar Smolin
+
+2008-09-17 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2008-09-14 Duarte Loreto <[email protected]>
+
+ * pt.po: Fixed Portuguese terminology.
+
+2008-09-12 Hendrik Richter <[email protected]>
+
+ * de.po: Updated German translation.
+
+2008-09-12 Goran Rakić <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation (by Miloš Popović).
+
+2008-09-09 Robert Sedak <[email protected]>
+
+ * hr.po: Updated Croatian translation.
+
+2008-09-08 Priit Laes <plaes at svn dot mate dot org>
+
+ * et.po: Translation updated by Mattias Põldaru
+
+2008-09-07 Seán de Búrca <[email protected]>
+
+ * ga.po: Updated Irish translation.
+
+2008-09-06 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated zh_CN translation.
+
+2008-09-06 Claude Paroz <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2008-08-24 Gintautas Miliauskas <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2008-08-23 Inaki Larranaga Murgoitio <[email protected]>
+
+ * eu.po: Updated Basque translation.
+
+2008-08-21 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian Translation.
+
+2008-08-14 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2008-08-13 Leonardo Ferreira Fontenelle <[email protected]>
+
+ * pt_BR.po: Brazilian Portuguese translation updated by Djavan
+ Fagundes.
+
+2008-08-13 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2008-08-09 Petr Kovar <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2008-08-07 Ignacio Casal Quinteiro <[email protected]>
+
+ gl.po: Updated Galician translation
+
+2008-08-6 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Khaled Hosny.
+
+2008-08-02 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2008-07-29 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Khaled Hosny.
+
+2008-07-29 Wouter Bolsterlee <[email protected]>
+
+ * nl.po: Dutch translation updated by Wouter Bolsterlee.
+
+2008-07-25 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2008-07-24 Leonardo Ferreira Fontenelle <[email protected]>
+
+ * pt_BR.po: Terminology fixes by Vladimir Melo.
+
+2008-07-17 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2008-07-14 Luca Ferretti <[email protected]>
+
+ * it.po: Updated Italian translation.
+
+2008-07-10 Matej Urbančič <[email protected]>
+
+ * sl.po: Updated Slovenian Translation.
+
+2008-07-10 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2008-07-09 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2008-07-01 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2008-06-24 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2008-06-21 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2008-06-16 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Yavor Doganov <[email protected]>
+
+2008-06-15 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2008-06-12 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2008-06-11 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Khaled Hosny.
+
+2008-06-11 Yannig Marchegay <[email protected]>
+
+ * oc.po: Updated Occitan translation.
+
+2008-06-08 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2008-06-01 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2008-05-22 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Khaled Hosny.
+
+2008-05-20 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Tino Meinen.
+
+2008-05-19 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Khaled Hosny.
+
+2008-05-18 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2008-05-14 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2008-05-13 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Tino Meinen.
+
+2008-05-06 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2008-05-01 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2008-04-20 Yair Hershkovitz <[email protected]>
+
+ * he.po: Updated Hebrew translation.
+
+2008-04-10 Yair Hershkovitz <[email protected]>
+
+ * he.po: Updated Hebrew translation.
+
+2008-04-04 Eskild Hustvedt <[email protected]>
+
+ * nn.po: Updated Norwegian Nynorsk translation
+
+2008-03-31 Baris Cicek <[email protected]>
+
+ * tr.po: Updated Turkish translation
+
+2008-03-30 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2008-03-23 Nguyễn Thái Ngọc Duy <[email protected]>
+
+ * vi.po: Update Vietnamese translation
+
+2008-03-20 Abel Cheung <[email protected]>
+
+ * zh_HK.po, zh_TW.po: Typo fix for traditional Chinese translations.
+
+2008-03-18 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated
+
+2008-03-09 Kenneth Nielsen <[email protected]>
+
+ * da.po: Updated Danish translation
+
+2008-03-09 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated
+
+2008-03-09 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2008-03-09 Vasiliy Faronov <[email protected]>
+
+ * ru.po: Updated Russian translation.
+
+2008-03-07 Maxim Dziumanenko <[email protected]>
+
+ * uk.po: Updated Ukrainian translation.
+
+2008-03-03 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2008-03-01 Chao-Hsiung Liao <[email protected]>
+
+ * zh_HK.po: Updated Traditional Chinese translation(Hong Kong).
+ * zh_TW.po: Updated Traditional Chinese translation(Taiwan).
+
+2008-02-27 Stéphane Raimbault <[email protected]>
+
+ * fr.po: Updated French translation (merged from mate-2-22).
+
+2008-02-25 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2008-02-24 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation (bug #518255).
+
+2008-02-23 Ihar Hrachyshka <[email protected]>
+
+ * [email protected]: Updated Belarusian Latin translation.
+
+2008-02-20 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2008-02-18 Wouter Bolsterlee <[email protected]>
+
+ * nl.po: Updated Dutch translation by Wouter Bolsterlee.
+
+2008-02-18 Ihar Hrachyshka <[email protected]>
+
+ * [email protected]: Updated Belarusian Latin translation.
+
+2008-02-15 Runa Bhattacharjee <[email protected]>
+
+ * kn.po: Added Kannada Translations by Shankar Prasad
+ * LINGUAS: Added Kannada (kn) to the List of Languages
+
+2008-02-14 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2008-02-14 Pawan Chitrakar <[email protected]>
+
+ * ne.po: Updated Nepali Translation.
+
+2008-02-14 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2008-02-13 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2008-02-10 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2008-02-09 Hendrik Brandt <[email protected]>
+
+ * de.po: Updated German translation.
+
+2008-02-07 Artur Flinta <[email protected]>
+
+ * pl.po: Updated Polish translation by MATE PL Team.
+
+2008-02-05 Rhys Jones <[email protected]>
+
+ * cy.po: Updated Welsh translation.
+
+2008-02-03 Amitakhya Phukan <[email protected]>
+
+ * LINGUAS: Added as to LINGUAS.
+ * as.po: Updated assamese translations.
+
+2008-02-03 Arangel Angov <[email protected]>
+
+ * mk.po: Updated Macedonian translation.
+
+2008-02-03 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2008-02-02 Luca Ferretti <[email protected]>
+
+ * it.po: Updated Italian translation.
+
+2008-02-01 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2008-01-31 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Khaled Hosny.
+
+2008-01-30 Rahul Bhalerao <[email protected]>
+
+ * mr.po: Updated Marathi translations by Sandeep Shedmake.
+
+2008-01-27 Baris Cicek <[email protected]>
+
+ * tr.po: Fixed typo in Turkish translation.
+
+2008-01-25 Petr Kovar <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2008-01-22 Andre Klapper <[email protected]>
+
+ * de.po: Sync "beep" translation.
+
+2008-01-15 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2008-01-14 Inaki Larranaga Murgoitio <[email protected]>
+
+ * eu.po: Updated Basque translation.
+
+2008-01-14 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2008-01-13 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2008-01-09 Yair Hershkovitz <[email protected]>
+
+ * he.po: Updated Hebrew translation.
+
+2008-01-06 Ihar Hrachyshka <[email protected]>
+
+ * [email protected]: Updated Belarusian Latin translation.
+
+2008-01-05 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2007-12-31 Yannig Marchegay <[email protected]>
+
+ * oc.po: Updated Occitan translation.
+
+2007-12-31 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2007-12-22 Seán de Búrca <[email protected]>
+
+ * ga.po: Updated Irish translation.
+
+2007-12-22 Seán de Búrca <[email protected]>
+
+ * POTFILES.in: Remove dead files.
+
+2007-12-20 Kjartan Maraas <[email protected]>
+
+ * POTFILES.in: Rearrange after stuff moved around.
+ * nb.po: Update
+
+2007-12-19 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2007-12-19 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2007-12-17 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2007-12-15 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2007-12-10 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation, fixes bug #500562 and bug #500831
+
+2007-12-10 Matej Urbančič <[email protected]>
+
+ * sl.po: Updated Slovenian Translation.
+
+2007-12-10 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation, fixes bug #500831
+
+2007-12-09 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation, fixes bug #500562
+
+2007-12-08 Jakub Friedl <[email protected]>
+
+ * cs.po: Czech Translation updated by Petr Kovar.
+
+2007-12-08 Ihar Hrachyshka <[email protected]>
+
+ * [email protected]: Updated Belarusian Latin translation.
+
+2007-12-08 Leonardo Ferreira Fontenelle <[email protected]>
+
+ * pt_BR.po: Fixes in Brazilian Portuguese translation by Luiz Armesto.
+
+2007-12-07 Leonardo Ferreira Fontenelle <[email protected]>
+
+ * pt_BR.po: Fixed attributes in Brazilian Portuguese translation by
+ Rodrigo Flores.
+
+2007-12-02 Marcel Telka <[email protected]>
+
+ * sk.po: Updated Slovak translation by Pavol Šimo.
+
+2007-11-28 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2007-11-12 Matej Urbančič <[email protected]>
+
+ * sl.po: Updated Slovenian translation.
+
+2007-11-08 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2007-11-01 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2007-10-25 Matej Urbančič <[email protected]>
+
+ * sl.po: Updated Slovenian translation.
+
+2007-10-23 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Djihed Afifi.
+
+2007-10-21 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Djihed Afifi.
+
+2007-09-30 Stéphane Raimbault <[email protected]>
+
+ * fr.po: Fixed French translation.
+
+2007-09-27 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2007-09-25 Gil Forcada <[email protected]>
+
+ * ca.po: Fixed a string in Catalan translation thanks to Sílvia Miranda.
+
+2007-09-21 Gil Forcada <[email protected]>
+
+ * ca.po: Updated Catalan translation by Joan Duran.
+
+2007-09-17 Artur Flinta <[email protected]>
+
+ * pl.po: Updated Polish translation by MATE PL Team.
+
+2007-09-17 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2007-09-17 Wouter Bolsterlee <[email protected]>
+
+ * nl.po: Translation updated by Wouter Bolsterlee.
+
+2007-09-17 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Djihed Afifi.
+
+2007-09-16 Gil Forcada <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2007-09-16 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Translation improved.
+
+2007-09-16 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation
+
+2007-09-15 Nickolay V. Shmyrev <[email protected]>
+
+ * ru.po: Updated Russian translation.
+
+2007-09-15 Stéphane Raimbault <[email protected]>
+
+ * fr.po: Fixed French translation by Vincent Untz and Stéphane
+ Raimbault.
+
+2007-09-15 Andre Klapper <[email protected]>
+
+ * sk.po: Updated Slovak translation on behalf of Peter Tuharsky
+
+2007-09-14 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2007-09-14 Luca Ferretti <[email protected]>
+
+ * it.po: Updated Italian translation.
+
+2007-09-13 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Khaled Hosny.
+
+2007-09-14 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2007-09-13 Ihar Hrachyshka <[email protected]>
+
+ * [email protected]: Updated Belarusian Latin translation.
+
+2007-09-12 Maxim Dziumanenko <[email protected]>
+
+ * uk.po: Update Ukrainian translation.
+
+2007-09-12 Goran Rakić <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2007-09-09 Kenneth Nielsen <[email protected]>
+
+ * da.po: Updated Danish translation
+
+2007-09-08 Inaki Larranaga Murgoitio <[email protected]>
+
+ * eu.po: Fixed some typos in Basque translation.
+
+2007-09-05 Jovan Naumovski <[email protected]>
+
+ * mk.po: Updated Macedonian translation.
+
+2007-09-03 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2007-09-03 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2007-09-03 Jovan Naumovski <[email protected]>
+
+ * mk.po: Updated Macedonian translation.
+
+2007-09-01 Jovan Naumovski <[email protected]>
+
+ * mk.po: Updated Macedonian translation.
+
+2007-09-01 Stéphane Raimbault <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2007-08-30 Ani Peter <[email protected]>
+
+ * ml.po: Updated Malayalam Translation
+
+2007-08-29 I. Felix <[email protected]>
+
+ * ta.po: Tamil Translation updated by Tirumurthi Vasudevan
+
+2007-08-26 Raphael Higino <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation
+ by Og Maciel <[email protected]>.
+
+2007-08-15 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2007-08-13 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2007-08-13 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2007-08-11 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2007-08-10 I. Felix <[email protected]>
+
+ * ta.po: Tamil Translation updated by Tirumurthi Vasudevan
+
+2007-08-10 Ankit Patel <[email protected]>
+
+ * gu.po: Updated Gujarati Translation.
+
+2007-08-09 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2007-08-08 Ankit Patel <[email protected]>
+
+ * gu.po: Updated Gujarati Translation.
+
+2007-08-07 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2007-08-07 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2007-08-06 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2007-08-05 Inaki Laranaga Murgoitio <[email protected]>
+
+ * eu.po: Updated Basque translation.
+
+2007-07-25 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2007-07-21 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2007-07-18 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated.
+
+2007-07-17 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2007-07-16 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2007-07-10 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2007-07-08 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2007-07-02 Nguyễn Thái Ngọc Duy <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2007-06-27 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2007-06-25 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2007-06-24 Kjartan Maraas <[email protected]>
+
+ * POTFILES.in: Add src/core.c
+ * nb.po: Updated Norwegian bokmål translation.
+
+2007-06-19 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2007-06-16 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation
+
+2007-06-15 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2007-06-13 Pema Geyleg <[email protected]>
+
+ * dz.po: Updated dzongkha translation
+
+2007-05-18 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2007-05-09 Jovan Naumovski <[email protected]>
+
+ * mk.po: Updated Macedonian translation.
+
+2007-05-2 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Khaled Hosny.
+
+2007-04-24 Ihar Hrachyshka <[email protected]>
+
+ * [email protected]: Updated Belarusian Latin translation.
+
+2007-04-23 David Lodge <[email protected]>
+
+ * en_GB.po: Updated British English translation
+
+2007-04-22 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2007-04-22 Jorge Gonzalez <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2007-04-21 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2007-04-14 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Khaled Hosny.
+
+2007-04-10 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2007-04-05 Bastien Nocera <[email protected]>
+
+ * POTFILES.in: add the XML keys definitions to the list
+
+2007-04-05 Raivis Dejus <[email protected]>
+
+ * lv.po: Updated Latvian Translation.
+
+2007-04-02 Alessio Frusciante <[email protected]>
+
+ * it.po: Fixed a typo in translation. Closes #420494.
+
+2007-03-30 Ihar Hrachyshka <[email protected]>
+
+ * [email protected]: Added Belarusian Latin translation by Ales Navicki.
+
+2007-03-29 Priit Laes <[email protected]>
+
+ * et.po: Updated Estonian translation by Ivar Smolin <[email protected]>.
+
+2007-03-27 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2007-03-17 Kjartan Maraas <[email protected]>
+
+ reviewed by: <delete if not using a buddy>
+
+ * nb.po:
+
+2007-03-14 David Lodge <[email protected]>
+
+ * en_GB.po: Updated English (British) translation
+
+2007-03-12 Jakub Friedl <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2007-03-11 Goran Rakić <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2007-03-11 Josep Puigdemont i Casamajó <[email protected]>
+
+ * ca.po: Updated Catalan translation by
+ Jordi Mallach <[email protected]>.
+
+2007-03-10 Artur Flinta <[email protected]>
+
+ * pl.po: Updated Polish translation by MATE PL Team.
+
+2007-03-09 Nickolay V. Shmyrev <[email protected]>
+
+ * ru.po: Updated Russian translation.
+
+2007-03-07 Artur Flinta <[email protected]>
+
+ * pl.po: Updated Polish translation by MATE PL Team.
+
+2007-03-06 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2007-03-06 Jovan Naumovski <[email protected]>
+
+ * mk.po: Updated Macedonian translation.
+
+2007-03-05 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Reinout van Schouwen.
+
+2007-03-04 Gintautas Miliauskas <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2007-03-04 Erdal Ronahi <erdal dot ronahi at gmail dot com>
+
+ * ku.po: Updated Kurdish translations
+
+2007-03-04 Pema Geyleg <[email protected]>
+
+ * dz.po: Updated Dzongkha Translation.
+
+2007-03-04 Chao-Hsiung Liao <[email protected]>
+
+ * zh_HK.po: Updated Traditional Chinese translation(Hong Kong).
+ * zh_TW.po: Updated Traditional Chinese translation(Taiwan).
+
+2007-03-02 Leonardo Ferreira Fontenelle <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation by Leonardo
+ Ferreira Fontenelle <[email protected]> (me!) and Raul Pereira
+
+2007-02-27 Gintautas Miliauskas <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2007-02-26 Luca Ferretti <[email protected]>
+
+ * it.po: Updated Italian translation.
+
+2007-02-25 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2007-02-24 Raphael Higino <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2007-02-24 Nguyễn Thái Ngọc Duy <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2007-02-22 Abel Cheung <[email protected]>
+
+ * zh_CN.po: Updated simplified Chinese translation on behalf of
+ Funda Wang.
+
+2007-02-21 Maxim Dziumanenko <[email protected]>
+
+ * uk.po: Update Ukrainian translation.
+
+2007-02-21 Artur Flinta <[email protected]>
+
+ * pl.po: Updated Polish translation by MATE PL Team.
+
+2007-02-20 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2007-02-16 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2007-02-15 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2007-02-15 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2007-02-14 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2007-02-09 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2007-01-31 Stéphane Raimbault <[email protected]>
+
+ * fr.po: Updated French translation by Robert-André Mauchin.
+
+2007-01-27 Priit Laes <[email protected]>
+
+ * et.po: Updated Estonian translation by Ivar Smolin <[email protected]>.
+
+2007-01-22 Jakub Friedl <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2007-01-16 Hendrik Richter <[email protected]>
+
+ * de.po: Updated German translation.
+
+2007-01-15 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Khaled Hosny.
+
+2007-01-13 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2007-01-05 Jakub Friedl <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2007-01-3 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation by Djihed Afifi.
+
+2007-01-01 David Lodge <[email protected]>
+
+ * en_GB.po: Updated English (British) translation
+
+2006-12-29 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2006-12-29 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2006-12-27 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation.
+
+2006-12-24 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation.
+
+2006-12-23 Raivis Dejus <[email protected]>
+
+ * lv.po: Updated Latvian Translation.
+
+2006-12-18 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2006-12-18 Djihed Afifi <[email protected]>
+
+ * ar.po: Updated Arabic Translation.
+
+2006-12-18 Ales Nyakhaychyk <[email protected]>
+
+ * be.po: Updated Belarusian Translation by Ihar Hrachyshka.
+
+2006-12-15 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2006-12-13 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation.
+
+2006-12-11 Jordi Mallach <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2006-12-11 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2006-12-04 Jakub Friedl <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2006-11-22 Yair Hershkovitz <[email protected]>
+
+ * he.po: Updated Hebrew translation.
+
+2006-11-19 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2006-11-19 Duarte Loreto <[email protected]>
+
+ * pt.po: Partial updated Portuguese translation.
+
+2006-11-19 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2006-11-18 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2006-11-07 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2006-11-03 Jakub Friedl <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2006-10-26 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2006-10-26 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2006-10-26 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2006-10-22 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2006-10-19 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2006-10-15 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2006-10-02 Josep Puigdemont i Casamajó <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2006-09-29 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation with
+ bugfixes prompted by Yavor Doganov
+
+2006-09-21 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2006-09-19 Runa Bhattacharjee <[email protected]>
+
+ * bn_IN.po: Updated Bengali India Translation.
+
+2006-09-15 Wouter Bolsterlee <[email protected]>
+
+ * nl.po: Translation updated by Wouter Bolsterlee.
+
+2006-09-15 Matic Zgur <[email protected]>
+
+ * sl.po: Updated Slovenian translation.
+
+2006-09-14 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2006-09-14 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2006-09-13 Josep Puigdemont i Casamajó <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2006-09-13 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+ - concistency fixes with libwnck
+
+2006-09-13 Rajesh Ranjan <[email protected]>
+
+ * hi.po: Updated Hindi Translation.
+
+2006-09-13 Abel Cheung <[email protected]>
+
+ * zh_HK.po: Updated Chinese (Hong Kong) translation.
+ * zh_TW.po: Updated Chinese (Taiwan) translation.
+
+2006-09-13 Ani Peter <[email protected]>
+
+ * ml.po: Updated Malayalam translation
+
+2006-09-13 I.Felix <[email protected]>
+
+ * ta.po: Updated Tamil Translation.
+
+2006-09-13 Ankit Patel <[email protected]>
+
+ * gu.po: Updated Gujarati Translation.
+
+2006-09-13 Ahmad Riza H Nst <[email protected]>
+
+ * id.po: Updated.
+
+2006-09-10 David Lodge <[email protected]>
+
+ * en_GB.po: Updated English (British) translation.
+
+2006-09-08 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2006-09-07 Matic Zgur <[email protected]>
+
+ * sl.po: Updated Slovenian translation.
+
+2006-09-04 Nickolay V. Shmyrev <[email protected]>
+
+ * ru.po: Updated Russian translation by
+ Vasiliy Faronov <[email protected]>.
+
+2006-09-04 Rahul Bhalerao <[email protected]>
+
+ * mr.po: Updated Marathi translations.
+
+2006-09-04 Runa Bhattacharjee <[email protected]>
+
+ * bn_IN.po: Modified the accelerators to English.
+
+2006-09-04 Abel Cheung <[email protected]>
+
+ * zh_HK.po: Updated Chinese (Hong Kong) translation from
+ Woodman Tuen <[email protected]>.
+ * zh_TW.po: Updated Chinese (Taiwan) translation from
+ Woodman Tuen <[email protected]>.
+
+2006-09-04 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2006-09-04 Ani Peter <[email protected]>
+
+ * ml.po: Updated Malayalam translation
+
+2006-09-04 Rahul Bhalerao <[email protected]>
+
+ * mr.po: Added the file and updated Marathi translation.
+ * LINGUAS: Added an entry for Marathi(mr).
+
+2006-09-03 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation from
+ Jonathan Ernst <[email protected]>.
+
+2006-09-03 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Updated by Goran Rakić.
+
+2006-09-03 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2006-09-03 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2006-09-01 Maxim Dziumanenko <[email protected]>
+
+ * uk.po: Update Ukrainian translation.
+
+2006-09-01 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2006-08-30 Josep Puigdemont i Casamajó <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2006-08-27 Gintautas Miliauskas <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2006-08-20 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2006-08-19 Ahmad Riza H Nst <[email protected]>
+
+ * id.po: Updated.
+
+2006-08-18 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2006-08-17 Jordi Mas <[email protected]>
+
+ * ca.po: Fixes small mistakes in Catalan translation
+
+2006-08-16 Gabor Kelemen <[email protected]>
+
+ * hu.po: Translation updated.
+
+2006-08-13 Wouter Bolsterlee <[email protected]>
+
+ * nl.po: Translation updated by Wouter Bolsterlee.
+
+2006-08-09 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2006-08-08 Wouter Bolsterlee <[email protected]>
+
+ * nl.po: Translation updated by Wouter Bolsterlee.
+
+2006-08-07 Leonid Kanter <[email protected]>
+
+ * ru.po: Updated Russian translation
+
+2006-08-07 Inaki Larranaga <[email protected]>
+
+ * eu.po: Fixed some typos.
+
+2006-08-03 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2006-08-03 Yair Hershkovitz <[email protected]>
+
+ * he.po: Updated Hebrew translation.
+
+2006-08-02 Jovan Naumovski <[email protected]>
+
+ * mk.po: Updated Macedonian translation.
+
+2006-07-31 Jakub Friedl <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2006-07-23 Satoru SATOH <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2006-07-22 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation from
+ Jonathan Ernst <[email protected]>.
+
+2006-07-22 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation
+
+2006-07-21 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation from
+ Jonathan Ernst <[email protected]>.
+
+2006-07-18 Hendrik Richter <[email protected]>
+
+ * de.po: Updated German translation.
+
+2006-07-03 Runa Bhattacharjee <[email protected]>
+
+ * bn_IN.po: Added Bengali India Translation
+ * LINGUAS: Added Bengali India (bn_IN) to the list of languages.
+
+2006-07-03 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2006-06-29 Thierry Randrianiriana <[email protected]>
+
+ * mg.po: Added Malagasy translation
+
+2006-06-28 Rajesh Ranjan <[email protected]>
+
+ * hi.po: Updated Hindi Translation.
+
+2006-06-27 Rajesh Ranjan <[email protected]>
+
+ * hi.po: Updated Hindi Translation.
+
+2006-06-26 Rajesh Ranjan <[email protected]>
+
+ * hi.po: Updated Hindi Translation.
+
+2006-05-28 Pema Geyleg <[email protected]>
+
+ * dz.po: Updated Dzongkha translation.
+
+2006-05-26 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2006-05-25 Inaki Larranaga <[email protected]>
+
+ * eu.po: Updated Basque translation.
+
+2006-05-23 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2006-05-14 Chao-Hsiung Liao <[email protected]>
+
+ * zh_HK.po: Updated Traditional Chinese translation(Hong Kong).
+ * zh_TW.po: Updated Traditional Chinese translation(Taiwan).
+
+2006-05-10 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2006-05-06 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2006-05-02 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2006-04-30 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+
+2006-04-26 Gora Mohanty <[email protected]>
+
+ * lv.po: Updated Latvian translation by Raivis Dejus <[email protected]>
+
+2006-04-21 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2006-04-20 Ankit Patel <[email protected]>
+
+ * gu.po: Updated Gujarati Translation.
+
+2006-04-19 Ankit Patel <[email protected]>
+
+ * gu.po: Updated Gujarati Translation.
+
+2006-04-17 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2006-04-17 Josep Puigdemont Casamajó <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2006-04-16 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2006-04-14 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2006-04-14 Raphael Higino <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2006-04-14 Åsmund Skjæveland <[email protected]>
+
+ * nn.po: Updated Norwegian Nynorsk translation.
+
+2006-04-14 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2006-04-14 Wouter Bolsterlee <[email protected]>
+
+ * nl.po: Translation updated by Wouter Bolsterlee.
+
+2006-04-14 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2006-04-09 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Michiel Sikkes.
+
+2006-04-02 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+ * no.po: Same.
+
+2006-03-24 Gora Mohanty <[email protected]>
+
+ * or.po: Updated Oriya translation.
+
+2006-03-21 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2006-03-17 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2006-03-15 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2006-03-14 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation
+
+2006-03-14 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2006-03-13 Jordi Mallach <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2006-03-13 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Tino Meinen.
+
+2006-03-13 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2006-03-13 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2006-03-13 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2006-03-13 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2006-03-13 Maxim Dziumanenko <[email protected]>
+
+ * uk.po: Updated Ukrainian translation.
+
+2006-03-13 Rajesh Ranjan <[email protected]>
+
+ * hi.po: Updated Hindi Translation.
+
+2006-03-13 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation (merged from mate-2-14 branch).
+
+2006-03-13 Satoru SATOH <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2006-03-13 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2006-03-12 Guilherme de S. Pastore <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2006-03-13 Frank Arnold <[email protected]>
+
+ * de.po: Updated German translation.
+
+2006-03-13 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2006-03-12 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2006-03-12 Raphael Higino <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2006-03-12 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2006-03-12 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation by Petr Tomeš.
+
+2006-03-12 Roozbeh Pournader <[email protected]>
+
+ * fa.po: Updated Persian translation by Meelad Zakaria,
+ Elnaz Sarbar, and Farzaneh Sarafraz.
+
+2006-03-09 Hendrik Richter <[email protected]>
+
+ * de.po: Updated German translation.
+
+2006-03-09 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2006-03-08 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2006-03-08 Gabor Kelemen <[email protected]>
+
+ * hu.po: Hungarian translation updated.
+
+2006-03-06 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2006-03-06 Daniel Nylander <[email protected]>
+
+ * sv.po: Updated Swedish translation
+
+2006-03-05 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation
+
+2006-03-05 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2006-03-04 Hendrik Richter <[email protected]>
+
+ * de.po: Updated German translation.
+
+2006-03-03 Maxim Dziumanenko <[email protected]>
+
+ * uk.po: Updated Ukrainian translation.
+
+2006-03-02 Hendrik Richter <[email protected]>
+
+ * de.po: Updated German translation.
+
+2006-03-02 Hendrik Richter <[email protected]>
+
+ * de.po: Updated German translation.
+
+2006-03-02 Rhys Jones <[email protected]>
+
+ * cy.po: Updated Welsh translation.
+
+2006-03-01 Leonid Kanter <[email protected]>
+
+ * ru.po: Updated Russian translation
+
+2006-03-01 Josep Puigdemont i Casamajó <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2006-02-27 Leonid Kanter <[email protected]>
+
+ * ru.po: Updated Russian translation
+
+2006-02-27 Lasse Bang Mikkelsen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2006-02-25 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2006-02-23 Inaki Larranaga <[email protected]>
+
+ * eu.po: Updated Basque translation.
+
+2006-02-23 Clytie Siddall <[email protected]>
+
+ * ka.po: Added Georgian translation by Alexander Didebulidze <[email protected]>.
+
+2006-02-23 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2006-02-23 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2006-02-21 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Tino Meinen.
+
+2006-02-21 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2006-02-21 Slobodan D. Sredojevic <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation
+
+2006-02-21 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2006-02-01 Ankit Patel <[email protected]>
+
+ * gu.po: Updated Gujarati Translation.
+
+2006-02-20 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2006-02-20 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2006-02-18 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2006-02-18 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2006-02-18 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+ * no.po: Same.
+
+2006-02-13 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2006-02-06 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2006-02-03 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+ * no.po: Same.
+
+2006-01-31 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Tino Meinen.
+
+2006-01-31 Slobodan D. Sredojevic <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation
+
+2006-01-28 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2006-01-27 Josep Puigdemont i Casamajó <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2006-01-26 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2006-01-26 Evandro Fernandes Giovanini <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2006-01-24 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2006-01-23 Ankit Patel <[email protected]>
+
+ * gu.po: Updated Gujarati Translation.
+
+2006-01-23 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2006-01-22 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+ * no.po: Same.
+
+2006-01-21 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2006-01-22 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2006-01-21 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2006-01-21 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish tranlation.
+
+2006-01-21 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2006-01-20 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Tino Meinen.
+
+2006-01-18 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2006-01-17 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2006-01-16 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2006-01-15 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2006-01-15 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2006-01-11 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2006-01-11 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2006-01-11 Ankit Patel <[email protected]>
+
+ * gu.po: Updated Gujarati Translation.
+
+2006-01-11 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2005-12-30 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2006-01-06 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+ * no.po: Same
+
+2005-12-31 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2005-12-25 Kang Jeong-Hee <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2005-12-11 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2005-12-11 Ankit Patel <[email protected]>
+
+ * gu.po: Updated Gujarati Translation.
+
+2005-12-03 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2005-12-03 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+ * no.po: Same
+
+2005-11-22 Marcel Telka <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2005-11-22 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2005-11-22 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2005-11-21 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2005-11-20 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2005-11-20 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2005-11-20 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2005-11-17 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Wouter Bolsterlee.
+
+2005-11-13 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2005-11-03 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2005-10-28 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2005-10-28 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2005-10-27 Erdal Ronahi <[email protected]>
+
+ * ku.po: Added Kurdish translation.
+
+2005-10-17 Marcel Telka <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2005-10-15 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated.
+
+2005-10-14 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated.
+
+2005-10-14 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2005-10-10 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2005-10-04 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Alexander Shopov <[email protected]>
+
+2005-10-04 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2005-10-04 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2005-10-03 Runa Bhattacharjee <[email protected]>
+ * bn.po: Updated Bengali Translation by Mahay Alam Khan <[email protected]>
+
+2005-10-02 Christian Rose <[email protected]>
+
+ * sv.po: Reverted unauthorized changes made by
+ user 'kloczek'.
+
+2005-09-26 Alessio Frusciante <[email protected]>
+
+ * it.po: Updated Italian translation by
+ Luca Ferretti <[email protected]>.
+
+2005-09-24 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2005-09-21 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2005-09-20 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2005-09-16 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2005-09-08 Inaki Larranaga <[email protected]>
+
+ * eu.po: Updated Basque translation.
+
+2005-09-07 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2005-09-04 Danilo Šegan <[email protected]>
+
+ * hy.po: Added Armenian translation by Norayr Chilingaryan
+
+2005-09-04 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2005-09-03 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Updated.
+
+2005-09-02 Leonid Kanter <[email protected]>
+
+ * ru.po: Updated Russian translation
+
+2005-09-01 Baris Cicek <[email protected]>
+
+ * tr.po: Updated Turkish Translation
+
+2005-08-31 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2005-08-30 Hendrik Richter <[email protected]>
+
+ * de.po: Updated German translation.
+
+2005-08-30 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation by Young-Ho Cha.
+
+2005-08-29 Telsa Gwynne <[email protected]>
+
+ * cy.po: Updated Welsh translation.
+
+2005-08-28 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2005-08-25 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Michiel Sikkes.
+
+2005-08-20 Josep Puigdemont i Casamajó <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2005-08-19 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2005-08-17 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2005-08-15 Maxim Dziumanenko <[email protected]>
+
+ * uk.po: Updated Ukrainian translation.
+
+2005-08-15 Gabor Kelemen <[email protected]>
+
+ * hu.po: Hungarian translation updated.
+
+2005-08-15 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation
+
+2005-08-14 Mohammad DAMT <[email protected]>
+
+ * id.po: Updated Indonesian translation
+
+2005-08-13 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2005-08-11 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2005-08-10 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Rostislav Raykov <[email protected]>
+
+2005-08-02 Chao-Hsiung Liao <[email protected]>
+
+ * zh_TW.po: Updated Traditional Chinese translation.
+
+2005-07-31 Yair Hershkovitz <[email protected]>
+
+ * he.po: Updated Hebrew translation by Yuval Tanai.
+
+2005-07-28 Artur Flinta <[email protected]>
+
+ * pl.po: Updated Polish translation by MATE PL Team.
+
+2005-07-26 Raphael Higino <[email protected]>
+
+ * pt_BR.po: Converted to UTF-8.
+
+2005-07-26 Raphael Higino <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2005-07-24 Ilkka Tuohela <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2005-07-24 Kjartan Maraas <[email protected]>
+
+ * nb.po: Updated Norwegian bokmål translation.
+ * no.po: Same
+
+2005-07-23 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2005-07-23 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2005-07-21 Ankit Patel <[email protected]>
+
+ * gu.po: Updated Gujarati Translation.
+
+2005-07-20 Marcel Telka <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2005-07-18 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2005-07-17 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2005-07-17 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2005-07-17 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2005-07-17 Nikos Charonitakis <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2005-07-16 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2005-07-15 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician Translation.
+
+2005-07-14 Yair Hershkovitz <[email protected]>
+
+ * he.po: Updated Hebrew translation.
+
+2005-07-14 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2005-07-13 Marcel Telka <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2005-07-12 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2005-07-08 Clytie Siddall <[email protected]>
+
+ * vi.po: Updated Vietnamese translation.
+
+2004-07-06 Christian Rose <[email protected]>
+
+ * gl.po: Updated Galician translation by
+ Ignacio Casal Quinteiro <[email protected]>.
+
+2005-07-04 Hendrik Richter <[email protected]>
+
+ * de.po: Fixed German translation by
+ Jens Seidel <[email protected]>.
+
+2005-06-23 Ignacio Casal Quinteiro <[email protected]>
+
+ * gl.po: Updated Galician translation.
+
+2005-06-22 Abel Cheung <[email protected]>
+
+ * zh_TW.po: Fix language team reference.
+
+2005-06-05 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2005-06-01 Priit Laes <[email protected]>
+
+ * et.po: Translation updated.
+
+2005-05-19 Nikos Charonitakis <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2005-05-11 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek Translation.
+
+2005-05-10 Adi Attar <[email protected]>
+
+ * xh.po: Updated Xhosa translation.
+
+2005-04-28 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation
+
+2005-04-25 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Ivar Smolin.
+
+2005-04-17 Pauli Virtanen <[email protected]>
+
+ * fi.po: Fix a small mistranslation.
+
+2005-04-09 Christopher Orr <[email protected]>
+
+ * en_GB.po: Updated British English translation.
+
+2005-04-06 Roozbeh Pournader <[email protected]>
+
+ * fa.po: Updated Persian translation by
+ Elnaz Sarbar <[email protected]>.
+
+2005-04-05 Pawan Chitrakar <[email protected]>
+
+ * ne.po: Added Nepali Translation.
+
+2005-04-03 Gabor Kelemen <[email protected]>
+
+ * hu.po: Hungarian translation updated.
+
+2005-03-31 Steve Murphy <[email protected]>
+
+ * rw.po: Added Kinyarwanda translation.
+
+2005-03-29 Adi Attar <[email protected]>
+
+ * xh.po: Updated Xhosa translation.
+
+2005-03-17 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2005-03-12 Baris Cicek <[email protected]>
+
+ * tr.po: Updated Turkish Translation
+
+2005-03-10 Adi Attar <[email protected]>
+
+ * xh.po: Added Xhosa translation.
+
+2005-03-07 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Reinout van Schouwen.
+
+2005-03-07 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation.
+
+2005-03-04 Laszlo Dvornik <[email protected]>
+
+ * hu.po: Hungarian translation updated by Gabor Kelemen.
+
+2005-03-03 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Vladimir Petkov <[email protected]>
+
+2005-03-03 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2005-03-02 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2005-03-02 Abel Cheung <[email protected]>
+
+ * zh_TW.po: Updated traditional Chinese translation from MATE HK Team
+
+2005-02-28 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Reinout van Schouwen.
+
+2005-02-27 Alessio Frusciante <[email protected]>
+
+ * it.po: Updated Italian translation by
+ Luca Ferretti <[email protected]>.
+
+2005-02-24 Artur Flinta <[email protected]>
+
+ * pl.po: Updated Polish translation by MATE PL Team.
+
+2005-02-24 Ankit Patel <[email protected]>
+
+ * gu.po: Updated Gujarati Translation.
+
+2005-02-23 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Michiel Sikkes.
+
+2004-02-22 Roozbeh Pournader <[email protected]>
+
+ * fa.po: Updated Persian translation by
+ Elnaz Sarbar <[email protected]>.
+
+2005-02-22 Raphael Higino <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2005-02-21 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2005-02-21 Bastien Nocera <[email protected]>
+
+ * en_GB.po: the file is actually in UTF-8
+
+2005-02-21 Martin Willemoes Hansen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2005-02-21 Priit Laes <[email protected]>
+
+ * et.po: Translation updated by Tõivo Leedjärv.
+
+2005-02-18 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2005-02-18 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2005-02-17 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Tino Meinen.
+
+2005-02-17 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2005-02-16 Jordi Mallach <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2005-02-15 Maxim Dziumanenko <[email protected]>
+
+ * uk.po: Updated Ukrainian translation.
+
+2005-02-15 Kjartan Maraas <[email protected]>
+
+ * nb.po: s/applikasjon/program
+ * no.po: Same
+
+2005-02-12 Marcel Telka <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2005-02-12 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2005-02-11 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2005-02-10 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2005-02-08 Leonid Kanter <[email protected]>
+
+ * ru.po: Updated Russian translation
+
+2005-02-08 Kjartan Maraas <[email protected]>
+
+ * nb.po: Update
+ * no.po: Update
+
+2005-02-07 David Lodge <[email protected]>
+
+ * en_GB.po: Updated British translation.
+
+2005-02-06 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2005-02-06 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2005-02-06 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Vladimir Petkov <[email protected]>
+
+2005-02-06 Pauli Virtanen <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2005-02-05 Frank Arnold <[email protected]>
+
+ * de.po: Updated German translation.
+
+2005-02-05 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2005-02-05 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2005-02-04 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2005-02-04 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2005-02-02 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2005-02-02 Frank Arnold <[email protected]>
+
+ * de.po: Updated German translation.
+
+2005-02-01 Kjartan Maraas <[email protected]>
+
+ * nb.po: Update
+ * no.po: Update
+
+2005-02-01 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2005-02-01 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2005-01-31 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2005-01-31 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2005-01-31 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2005-01-30 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2005-01-29 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2005-01-29 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2005-01-29 Marcel Telka <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2005-01-29 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2005-01-28 Kjartan Maraas <[email protected]>
+
+ * nb.po: Update
+ * no.po: Update
+
+2005-01-26 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2005-01-26 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2005-01-26 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2005-01-25 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2005-01-23 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2005-01-21 Kjartan Maraas <[email protected]>
+
+ * nb.po: Update this too while we're at it.
+
+2005-01-21 Kjartan Maraas <[email protected]>
+
+ * nn.po: Update
+
+2005-01-15 Frank Arnold <[email protected]>
+
+ * de.po: Updated German translation.
+
+2005-01-01 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2004-12-28 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2004-12-25 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2004-12-21 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2004-12-20 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2004-12-16 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Vladimir Petkov <[email protected]>
+
+2004-12-07 Martin Willemoes Hansen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2004-11-23 Martin Willemoes Hansen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2004-11-14 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation from
+ Baptiste Mille-Mathias <[email protected]>.
+
+2004-11-13 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2004-11-04 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2004-10-30 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2004-10-19 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2004-10-15 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2004-10-14 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2004-10-14 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2004-10-13 David Lodge <[email protected]>
+
+ * en_GB.po: Updated British English translation.
+
+2004-09-26 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2004-09-19 Alessio Frusciante <[email protected]>
+
+ * it.po: Updated Italian translation by
+ Luca Ferretti <[email protected]>.
+
+2004-09-14 Gora Mohanty <[email protected]>
+
+ * or.po: Updated Oriya translation.
+
+2004-09-12 Paisa Seeluangsawat <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2004-09-12 Dafydd Harries <[email protected]>
+
+ * cy.po: Updated Welsh translation.
+
+2004-09-11 Abel Cheung <[email protected]>
+
+ * zh_TW.po: Updated traditional Chinese translation by MATE HK Team.
+
+2004-09-10 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2004-09-08 Abel Cheung <[email protected]>
+
+ * zh_TW.po: Updated traditional Chinese translation by MATE HK Team.
+
+2004-09-08 Raphael Higino <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2004-09-08 Arafat Medini <[email protected]>
+
+ * ar.po: Updated Arabic translation
+
+2004-09-07 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation.
+
+2004-09-05 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2004-09-03 Baris Cicek <[email protected]>
+
+ * tr.po: Updated Turkish Translation
+
+2004-08-31 Åsmund Skjæveland <[email protected]>
+
+ * nn.po: Updated Norwegian Nynorsk translation.
+
+2004-08-29 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2004-08-28 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2004-08-26 Iñaki Larrañaga <[email protected]>
+
+ * eu.po: Updated Basque translation.
+
+2004-08-23 Maxim Dziumanenko <[email protected]>
+
+ * uk.po: Updated Ukrainian translation.
+
+2004-08-21 Jordi Mallach <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2004-08-20 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2004-08-18 Pauli Virtanen <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2004-08-18 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2004-08-17 Christian Rose <[email protected]>
+
+ * bs.po: Added Bosnian translation by
+ Kemal Sanjta <[email protected]>.
+
+2004-08-17 Metin Amiroff <[email protected]>
+
+ * az.po: Translation updated.
+
+2004-08-16 Kjartan Maraas <[email protected]>
+
+ * nb.po: Added this here.
+
+2004-08-15 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2004-08-13 Tommi Vainikainen <[email protected]>
+
+ * fi.po: Unified some fields in po headers for Finnish team.
+
+2004-08-13 Gurban M. Tewekgeli <[email protected]>
+
+ * tk.po: Added Turkmen translation.
+
+2004-08-11 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: Updated Russian translation
+ from Russian team <[email protected]>.
+
+2004-08-10 Artur Flinta <[email protected]>
+
+ * pl.po: Updated Polish translation by MATE PL Team.
+
+2004-08-07 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2004-08-06 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2004-08-06 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2004-08-03 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Michiel Sikkes.
+
+2004-08-02 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2004-08-02 Adam Weinberger <[email protected]>
+
+ * en_CA.po: Updated Canadian English translation.
+
+2004-08-01 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian translation.
+
+2004-07-30 Martin Willemoes Hansen <[email protected]>
+
+ * da.po: Reviewed and updated fuzzy messages.
+
+2004-07-30 Kartik Mistry <[email protected]>
+
+ * gu.po: Updated and added Gujarati translation.
+
+2004-07-29 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2004-07-28 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2004-07-27 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Rostislav "zbrox" Raykov <[email protected]>
+
+2004-07-27 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2004-07-25 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2004-07-25 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2004-07-25 David Lodge <[email protected]>
+
+ * en_GB.po: Added British translation.
+
+2004-07-24 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2004-07-23 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2004-07-23 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Updated Lithuanian translation.
+
+2004-07-22 Gustavo Maciel Dias Vieira <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation done by
+ Goedson Teixeira Paixao <[email protected]>.
+
+2004-07-21 Guntupalli Karunakar <[email protected]>
+
+ * hi.po: Updated Hindi translation.
+
+2004-07-14 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2004-07-12 Åsmund Skjæveland <[email protected]>
+
+ * nn.po: Updated Norwegian Nynorsk translation.
+
+2004-07-08 Alexander Shopov <[email protected]>
+
+ * bg.po: Updated Bulgarian translation by
+ Vladimir "Kaladan" Petkov <[email protected]>
+
+2004-07-07 Laszlo Dvornik <[email protected]>
+
+ * hu.po: Updated Hungarian translation.
+
+2004-07-06 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2004-07-05 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2004-07-04 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Tino Meinen.
+
+2004-07-02 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2004-06-29 Laurent Dhima <[email protected]>
+
+ * sq.po: Translation updated.
+
+2004-06-28 Laurent Dhima <[email protected]>
+
+ * sq.po: Translation updated.
+
+2004-06-25 Gareth Owen <[email protected]>
+
+ * en_GB.po: Updated British English translation
+
+2004-06-26 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2004-06-25 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2004-05-31 Alexander Shopov <[email protected]>
+ * bg.po: Updated Bulgarian translation by
+ Vladimir Petkov <[email protected]>
+
+2004-04-23 Dafydd Harries <[email protected]>
+
+ * ca.po: Updated Catalan translation from Jordi Mallach.
+
+2004-04-16 Iñaki Larrañaga <[email protected]>
+
+ * eu.po: Added Basque translation.
+
+2004-04-15 Andras Timar <[email protected]>
+
+ * hu.po: Updated Hungarian translation.
+
+2004-04-09 Guntupalli Karunakar <[email protected]>
+
+ * gu.po: Added Gujurati translation by
+ Gujarati Team <[email protected]>.
+
+2004-04-06 Mohammad DAMT <[email protected]>
+
+ * id.po: Updated Indonesian translation
+
+2004-04-03 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation
+
+2004-03-29 Jordi Mallach <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2004-03-27 Tõivo Leedjärv <[email protected]>
+
+ * et.po: Added Estonian translation.
+
+2004-03-24 Guntupalli Karunakar <[email protected]>
+
+ * pa.po: Added Punjabi translation by
+ Jaswinder Singh Phulewala <[email protected]>.
+
+2004-03-20 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation.
+
+2004-03-20 Gareth Owen <[email protected]>
+
+ * en_GB.po: Updated British translation
+
+2004-03-19 Andras Timar <[email protected]>
+
+ * hu.po: Updated Hungarian translation.
+
+2004-03-18 Arafat Medini <[email protected]>
+
+ * ar.po: Updated Arabic translation.
+
+2004-03-17 Leonid Kanter <[email protected]>
+
+ * ru.po: Updated Russian translation
+
+2004-03-16 Dafydd Harries <[email protected]>
+
+ * cy.po: Updated Welsh translation.
+
+2004-03-15 Alessio Frusciante <[email protected]>
+
+ * it.po: Updated Italian translation by
+ Luca Ferretti <[email protected]>.
+
+2004-03-15 Nikos Charonitakis <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2004-03-14 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2004-03-13 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2004-03-13 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2004-03-12 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2004-03-12 Yuriy Syrota <[email protected]>
+
+ * uk.po: Updated Ukrainian translation.
+
+2004-03-11 Alessio Frusciante <[email protected]>
+
+ * it.po: Updated Italian translation.
+
+2004-03-11 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2004-03-10 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2004-03-09 Alessio Frusciante <[email protected]>
+
+ * it.po: Updated Italian translation by
+ Luca Ferretti <[email protected]>.
+
+2004-03-09 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian translation.
+
+2004-03-09 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spansih translation.
+
+2004-03-08 Alastair McKinstry <[email protected]>
+
+ * ga.po: Updated Irish translation.
+
+2004-03-08 Theppitak Karoonboonyanan <[email protected]>
+
+ * th.po: Updated Thai translation.
+
+2004-03-06 Mətin Əmirov <[email protected]>
+
+ * az.po: Translation updated.
+
+2004-03-07 Funda Wang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation.
+
+2004-03-04 Paisa Seeluangsawat <[email protected]>
+
+ * th.po: Added Thai translation.
+
+2004-03-3 Arafat Medini <[email protected]>
+
+ * ar.po: Updated Arabic translation.
+
+2004-03-02 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Convert to UTF-8.
+
+2004-02-26 Guntupalli Karunakar <[email protected]>
+
+ * hi.po: Updated Hindi translations.
+
+2004-02-23 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2004-02-22 Christian Rose <[email protected]>
+
+ * en_CA.po: Added Canadian English translation by
+ Adam Weinberger <[email protected]>.
+
+2004-02-17 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2004-02-11 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian translation.
+
+2004-02-07 Robert Sedak <[email protected]>
+
+ * hr.po: Updated Croatian translation.
+
+2004-02-08 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2004-02-05 Pauli Virtanen <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2004-02-03 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2004-02-02 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2004-02-01 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2004-01-31 Mətin Əmirov <[email protected]>
+
+ * az.po: Translation updated.
+
+2004-01-28 Miloslav Trmac <[email protected]>
+
+ * cs.po: Fixed Czech translation.
+
+2004-01-20 Artur Flinta <[email protected]>
+
+ * pl.po: Updated Polish translation by MATE PL Team.
+
+2004-01-18 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2004-01-16 Hasbullah Bin Pit <[email protected]>
+
+ * ms.po: Updated Malay translation.
+
+2004-01-15 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2004-01-13 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian translation.
+
+2004-01-13 Artur Flinta <[email protected]>
+
+ * pl.po: Updated Polish translation by MATE PL Team.
+
+2004-01-12 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Updated Lithuanian translation by Tomas Kuliavas.
+
+2004-01-11 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2004-01-11 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2004-01-05 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Translation updated by Tino Meinen.
+
+2004-01-04 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated and revised Portuguese translation.
+
+2004-01-03 Sanlig Badral <[email protected]>
+
+ * mn.po: Updated Mongolian translation.
+
+2004-01-03 Robert Sedak <[email protected]>
+
+ * hr.po: Updated Croatian translation.
+
+2004-01-02 Sanlig Badral <[email protected]>
+
+ * mn.po: Updated Mongolian translation.
+
+2004-01-02 Taneem Ahmed <[email protected]>
+
+ * bn.po: Updated Bangla (Bengali) translation.
+
+2003-12-29 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2003-12-29 Åsmund Skjæveland <[email protected]>
+
+ * nn.po: Updated Norwegian Nynorsk translation.
+
+2003-12-24 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2003-12-23 Gustavo Noronha Silva <[email protected]>
+
+ * pt_BR.po: updated translation.
+
+2003-12-22 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2003-12-22 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2003-12-22 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2003-12-21 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2003-12-21 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2003-12-20 Arafat Medini <[email protected]>
+
+ * ar.po: Added Arabic translation.
+
+2003-12-19 Gustavo Noronha Silva <[email protected]>
+
+ * pt_BR.po: updated translation.
+
+2003-12-18 Yukihiro Nakai <[email protected]>
+
+ * ja.po: Minor update.
+
+2003-12-14 Francisco Javier F. Serrador <[email protected]>
+
+ * es.po: Updated Spanish translation
+
+2003-12-04 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Cleared up Serbian translation.
+
+2003-12-03 Sanlig Badral <[email protected]>
+
+ * mn.po: Updated Mongolian translation.
+
+2003-12-02 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2003-11-29 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2003-11-26 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Dutch translation updated by Vincent van Adrighem.
+
+2003-11-10 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation by
+ Francisco Javier F. Serrador <[email protected]>.
+
+2003-11-08 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2003-10-30 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2003-10-20 Andras Timar <[email protected]>
+
+ * hu.po: Updated Hungarian translation.
+
+2003-10-15 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2003-10-15 Yukihiro Nakai <[email protected]>
+
+ * ja.pp: Update Japanese translation.
+
+2003-10-13 Danilo Šegan <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2003-10-08 Andras Timar <[email protected]>
+
+ * hu.po: Updated Hungarian translation.
+
+2003-10-06 Žygimantas Beručka <[email protected]>
+
+ * lt.po: Added Lithuanian translation by Tomas Kuliavas
+
+2003-10-06 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation
+
+2003-09-30 Kjartan Maraas <[email protected]>
+
+ * no.po: Update Norwegian translation.
+
+2003-09-30 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2003-09-27 Metin Amiroff <[email protected]>
+
+ * az.po: Updated Azerbaijani translation.
+
+2003-09-27 Åsmund Skjæveland <[email protected]>
+
+ * nn.po: Updated Norwegian (nynorsk) translation.
+
+2003-09-24 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2003-09-22 Taneem Ahmed <[email protected]>
+
+ * bn.po: Added Bangla translation by Dr Anirban Mitra
+ of Ankur group <[email protected]>.
+
+2003-09-23 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2003-09-21 Metin Amiroff <[email protected]>
+
+ * az.po: Updated Azerbaijani file
+
+2003-09-21 Åsmund Skjæveland <[email protected]>
+
+ * nn.po: Updated Norwegian (Nynorsk) translation.
+
+2003-09-21 Åsmund Skjaeveland <[email protected]>
+
+ * nn.po: Updated Norwegian (nynorsk) translation.
+
+2003-09-20 Åsmund Skjæveland <[email protected]>
+
+ * nn.po: Started Norwegian (nynorsk) translation.
+
+2003-09-17 Fatih Demir <[email protected]>
+
+ * ta.po: Committed new Tamil translation by Dinesh.
+
+2003-09-09 Guntupalli Karunakar <[email protected]>
+
+ * hi.po: Updated Hindi translation by
+ Ravishankar Shrivastava <[email protected]>.
+
+2003-09-08 Pablo Saratxaga <[email protected]>
+
+ * vi.po: Updated Vietnamese file
+ * az.po,sq.po: Fixed syntax errors
+
+2003-09-07 Nikos Charonitakis <[email protected]>
+
+ * el.po: Review of Greek translation.
+
+2003-09-06 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Fixed mistranslations for Japanese.
+
+2003-09-05 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian translation.
+
+2003-09-04 Laurent Dhima <[email protected]>
+
+ * sq.po: Updated Albanian translation.
+
+2003-09-03 Guntupalli Karunakar <[email protected]>
+
+ * hi.po: Updated Hindi translations.
+
+2003-09-03 Mugurel Tudor <[email protected]>
+
+ * ro.po: Updated Romanian translation
+
+2003-09-01 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2003-08-29 Dafydd Harries <[email protected]>
+
+ * cy.po: Updated Welsh translation.
+
+2003-08-27 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Revision of Spanish translation by
+ Francisco Javier F. Serrador <[email protected]>.
+
+2003-08-26 Guntupalli Karunakar <[email protected]>
+
+ * hi.po: Added Hindi translation.
+
+2003-08-25 Duarte Loreto <[email protected]>
+
+ * pt.po: Fixed missing accel in Portuguese translation.
+
+2003-08-26 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation by
+ Young-Ho Cha <ganadist at mizi.com>.
+
+2003-08-24 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2003-08-22 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Update Slovak translation.
+
+2003-08-20 Kjartan Maraas <[email protected]>
+
+ * no.po: Update Norwegian translation.
+
+2003-08-19 Dafydd Harries <[email protected]>
+
+ * cy.po: Updated Welsh translation.
+
+2003-08-18 Danilo Å egan <[email protected]>
+
+ * be.po: Updated Belarusian translation by Ales Nyakhaychyk
+
+2003-08-18 Metin Amiroff <[email protected]>
+
+ * az.po: Updated Azerbaijani translation.
+
+2003-08-16 Pauli Virtanen <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2003-08-13 Laurent Dhima <[email protected]>
+
+ * sq.po: Added Albanian file.
+
+2003-08-12 Dafydd Harries <[email protected]>
+
+ * cy.po: Updated Welsh translation.
+
+2003-08-09 Wang Jian <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation by
+ Funda Wang <[email protected]>.
+
+2003-08-09 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2003-08-08 Danilo Å egan <[email protected]>
+
+ * sr.po, [email protected]: Updated Serbian translation.
+
+2003-08-07 Hasbullah Bin Pit <[email protected]>
+
+ * ms.po: Updated Malay translation.
+
+2003-08-06 Metin Amiroff <[email protected]>
+
+ * az.po: Updated Azerbaijani translation.
+
+2003-08-05 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2003-08-05 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2003-07-29 Andras Timar <[email protected]>
+
+ * hu.po: Updated Hungarian translation.
+
+2003-07-25 Dafydd Harries <[email protected]>
+
+ * cy.po: Updated Welsh translation.
+
+2003-07-24 Pablo Saratxaga <[email protected]>
+
+ * vi.po: Updated Vietnamese file
+ * is.po: fixed syntax error
+
+2003-07-20 Evandro Fernandes Giovanini <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2003-07-20 Takeshi AIHANA <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2003-07-18 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2002-07-17 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2003-07-17 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Dutch translation updated by Tino Meinen.
+
+2003-07-12 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2003-07-12 Pablo Saratxaga <[email protected]>
+
+ * wa.po: Added Walloon file
+
+2003-07-12 Alessio Frusciante <[email protected]>
+
+ * it.po: Updated Italian translation.
+
+2003-07-07 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Dutch translation updated by Kees van den Broek.
+
+2003-07-07 Abel Cheung <[email protected]>
+
+ * zh_TW.po: Updated traditional Chinese translation.
+
+2003-07-06 Evandro Fernandes Giovanini <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2003-07-02 Artur Flinta <[email protected]>
+
+ * pl.po: Updated Polish translation.
+
+2003-06-28 Jordi Mallach <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2003-06-28 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2003-06-28 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2003-06-27 Mohammad DAMT <[email protected]>
+
+ * id.po: Updated Indonesian translation
+
+2003-06-26 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2003-06-26 Mohammad DAMT <[email protected]>
+
+ * id.po: Added Indonesian translation
+
+2003-06-23 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Dutch translation updated by Kees van den Broek.
+
+2003-06-22 Samúel Jón Gunnarsson <[email protected]>
+
+ * is.po: Added Icelandic translation
+
+2003-06-21 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2003-06-17 Pauli Virtanen <[email protected]>
+
+ * fi.po: Updated Finnish translation.
+
+2003-06-12 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2003-06-08 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2003-06-07 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2003-06-06 Jordi Mallach <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2003-06-04 Dmitry G. Mastrukov <[email protected]>
+
+ * be.po: Updated Belarusian translation
+ from Belarusian team <[email protected]>.
+
+2003-06-04 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: Updated Russian translation
+ from Russian team <[email protected]>.
+
+
+2003-05-31 Dafydd Harries <[email protected]>
+
+ * cy.po: Updated Welsh translation.
+
+2003-05-30 Paul Duffy <[email protected]>
+
+ * ga.po: Updated Irish Translation.
+
+2003-05-30 Abel Cheung <[email protected]>
+
+ * zh_TW.po: Updated traditional Chinese translation.
+
+2003-05-26 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2003-05-21 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2003-05-20 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2003-05-19 Telsa Gwymme <[email protected]>
+
+ * cy.po: Updated Welsh translation from
+ Dafydd Harries <[email protected]>
+
+2003-05-19 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2003-05-16 Telsa Gwynne <[email protected]>
+
+ * cy.po: Added Welsh translation from
+ Dafydd Harries <[email protected]>
+
+2003-05-16 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2003-05-12 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2003-05-10 KAMAGASAKO Masatoshi <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2003-05-10 Jordi Mallach <[email protected]>
+
+ * ca.po: Updated Catalan translation.
+
+2003-05-09 Evandro Fernandes Giovanini <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2003-05-08 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2003-05-08 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2003-05-06 Danilo Å egan <[email protected]>
+
+ * sr.po, [email protected]: Added Serbian translation by
+ http://Prevod.org/.
+
+2003-04-29 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2003-04-15 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: updated Russian translation
+ from Russian team <[email protected]>.
+
+2003-04-03 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2003-03-27 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2003-03-13 Christian Rose <[email protected]>
+
+ * ml.po: Added Malayalam translation by
+ FSF-India <[email protected]>.
+
+2003-03-11 Paul Duffy <[email protected]>
+
+ * ga.po: Added Irish translation
+
+2003-03-10 Roozbeh Pournader <[email protected]>
+
+ * fa.po: Added Persian translation.
+
+2003-02-26 Dmitry G. Mastrukov <[email protected]>
+
+ * be.po: Added Belarusian translation
+ from Belarusian team <[email protected]>.
+
+2003-02-25 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Fixed a translation string to match with libwnck.
+
+2003-02-22 Rob Adams <[email protected]>
+
+ * *.po: change toggle_maximized to toggle_maximize and
+ toggle_shaded to toggle_shade in action_double_click_titlebar long
+ description to match the values used by marco
+
+2003-02-12 Christian Rose <[email protected]>
+
+ * sv.po: Some fixes for problems catched in translation review.
+
+2003-02-11 Fatih Demir <[email protected]>
+
+ * tr.po: Branchy.
+
+2003-02-09 Fatih Demir <[email protected]>
+
+ * tr.po: Take over from branch...
+
+2003-02-08 Fatih Demir <[email protected]>
+
+ * tr.po: Committed updated Turkish translation by Sinan.
+
+2003-02-05 Abel Cheung <[email protected]>
+
+ * en_GB.po: Fix header.
+ * ko.po, pt_BR.po: Fix positional parameters.
+
+2003-02-05 Abel Cheung <[email protected]>
+
+ * zh_TW.po: Updated traditional Chinese translation.
+
+2003-02-03 Daniel Yacob <[email protected]>
+
+ * am.po: Updated Amharic translation.
+
+2003-01-30 Marius Andreiana <marius galuna.ro>
+
+ * ro.po: updated ( thanks to Mugurel Tudor )
+
+2003-01-25 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation from
+ Guy Clotilde <[email protected]>.
+
+2003-01-25 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmal) translation.
+
+2003-01-23 He Qiangqiang <[email protected]>
+
+ * zh_CN.po: Updated Simplified Chinese translation by
+ Xiong Jiang <[email protected]>.
+
+2003-01-23 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: updated Russian translation
+ from Russian team <[email protected]>.
+
+2003-01-23 Abel Cheung <[email protected]>
+
+ * zh_TW.po: Updated traditional Chinese translation.
+
+2003-01-22 Christian Rose <[email protected]>
+
+ * mn.po: Added Mongolian translation by
+ Ochirbat Batzaya <[email protected]>.
+
+2003-01-21 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: updated Russian translation
+ from Russian team <[email protected]>.
+
+2003-01-21 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmal) translation.
+
+2003-01-20 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2003-01-20 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: updated Russian translation
+ from Russian team <[email protected]>.
+
+2003-01-20 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: updated Russian translation
+ from Russian team <[email protected]>.
+
+2003-01-20 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: updated Russian translation
+ from Russian team <[email protected]>.
+
+2003-01-19 Abel Cheung <[email protected]>
+
+ * zh_TW.po: Updated traditional Chinese translation, and replaced
+ copyright symbol with correct one.
+
+2003-01-17 Gustavo Noronha Silva <[email protected]>
+
+ * pt_BR.po: translation update
+
+2003-01-16 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Dutch translation updated by Tino Meinen.
+
+2003-01-16 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Dutch translation updated by Tino Meinen.
+
+2003-01-14 Yanko Kaneti <[email protected]>
+
+ * bg.po: Full Bulgarian translation by
+ Alexander Shopov <[email protected]>.
+
+2003-01-11 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmal) translation.
+
+2003-01-10 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Dutch translation updated by Tino Meinen.
+
+2003-01-10 Andras Timar <[email protected]>
+
+ * hu.po: Updated Hungarian translation.
+
+2003-01-10 Yukihiro Nakai <[email protected]>
+
+ * ja.po: Minor fix.
+
+2003-01-09 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Dutch translation updated by Tino Meinen.
+
+2003-01-08 Pauli Virtanen <[email protected]>
+
+ * fi.po: Fixed a string that had an invalid printf format.
+
+2003-01-09 Abel Cheung <[email protected]>
+
+ * zh_TW.po: Updated traditional Chinese translation.
+
+2003-01-07 Daniel Yacob <[email protected]>
+
+ * am.po: Updated Amharic translation.
+
+2003-01-06 Vincent van Adrighem <[email protected]>
+
+ * nl.po: Dutch translation added by Tino Meinen.
+
+2003-01-05 Pablo Saratxaga <[email protected]>
+
+ * vi.po: Updated Vietnamese file
+ * pt_BR.po: fixed syntax errors
+
+2003-01-05 Pauli Virtanen <[email protected]>
+
+ * fi.po: Added Finnish translation.
+
+2003-01-05 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2003-01-03 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmal) translation.
+
+2003-01-02 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-12-29 Daniel Yacob <[email protected]>
+
+ * am.po: Updated Amharic translation.
+
+2002-12-29 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2002-12-25 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-12-25 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2002-12-22 Daniel Yacob <[email protected]>
+
+ * am.po: Updated Amharic translation.
+
+2002-12-22 Artis Trops <[email protected]>
+
+ * lv.po: Updated Latvian translation.
+
+2002-12-21 Daniel Yacob <[email protected]>
+
+ * am.po: Updated Amharic translation.
+
+2002-12-20 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-12-20 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2002-12-19 Hasbullah Bin Pit <[email protected]>
+
+ * ms.po: Updated Malay Translation.
+
+2002-12-19 Yanko Kaneti <[email protected]>
+
+ * bg.po (added): Added start of Bulgarian translation by
+ Alexander Shopov <[email protected]>.
+
+2002-12-18 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-12-17 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2002-12-17 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-12-17 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-12-16 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-12-16 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2002-12-16 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-12-14 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-12-13 Daniel Yacob <[email protected]>
+
+ * am.po: Added Amharic translation.
+
+2002-12-13 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-12-12 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-12-11 Christian Neumair <[email protected]>
+
+ * POTFILES.in: Added src/tools/marco-message.c.
+ * de.po: Updated German translation.
+
+2002-12-11 Evandro Fernandes Giovanini <[email protected]>
+
+ * pt_BR.po: Updated Brazilian Portuguese translation.
+
+2002-12-09 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-12-09 Miloslav Trmac <[email protected]>
+
+ * cs.po: Updated Czech translation.
+
+2002-12-04 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-11-25 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-11-25 Yanko Kaneti <[email protected]>
+
+ * *.po: Convert all to UTF-8.
+
+2002-11-24 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2002-11-23 Kostas Papadimas <[email protected]>
+
+ * el.po: Updated Greek translation.
+
+2002-11-19 Andras Timar <[email protected]>
+
+ * hu.po: Updated Hungarian translation.
+
+2002-11-15 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-11-14 Gustavo Noronha Silva <[email protected]>
+
+ * pt_BR.po: Update translation.
+
+2002-11-14 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-11-13 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-11-11 Peteris Krisjanis <[email protected]>
+
+ * lv.po: Updated Latvian translation.
+
+2002-11-11 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation by Young-Ho Cha
+
+2002-11-10 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-11-05 Hasbullah Bin Pit <[email protected]>
+
+ * ms.po: Updated Malay Translation.
+
+2002-11-05 Christian Rose <[email protected]>
+
+ * POTFILES.in: Added missing file.
+ * sv.po: Updated Swedish translation.
+
+2002-11-01 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-10-31 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-10-28 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-10-28 Peteris Krisjanis <[email protected]>
+
+ * lv.po: Updated Latvian translation.
+
+2002-10-24 Christian Rose <[email protected]>
+
+ * POTFILES.in: Added missing file.
+ * sv.po: Updated Swedish translation.
+
+2002-10-24 Pablo Saratxaga <[email protected]>
+
+ * vi.po: Updated Vietnamese file
+
+2002-10-22 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-10-21 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-10-17 Andras Timar <[email protected]>
+
+ * hu.po: Added Hungarian translation.
+
+2002-10-17 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2002-10-16 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-10-16 Yukihiro Nakai <[email protected]>
+
+ * ja.po: Minor fix
+
+2002-10-16 Bastien Nocera <[email protected]>
+
+ * en_GB.po: added, more colours for your theme, time to upgrade!
+
+2002-10-15 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-10-15 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-10-13 Hasbullah Bin Pit <[email protected]>
+
+ * ms.po: Updated Malay Translation.
+
+2002-10-11 Stanislav Brabec <[email protected]>
+
+ * cs.po: Updated Czech translation from Miloslav Trmac
+
+2002-10-10 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-10-06 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-10-01 Stanislav Brabec <[email protected]>
+
+ * cs.po: Added Czech translation from Miloslav Trmac
+
+2002-09-28 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-09-26 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-09-25 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2002-09-25 Christian Meyer <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-09-24 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-09-23 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-09-20 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-09-20 Pablo Saratxaga <[email protected]>
+
+ * vi.po: Updated Vietnamese file
+
+2002-09-11 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-09-10 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-09-11 Duncan Mak <[email protected]>
+
+ * ro.po: Remove diff conflicts.
+
+2002-09-06 Frederic Crozat <[email protected]>
+
+ * fr.po: Updated French translation.
+
+2002-09-05 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-09-05 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-09-05 Akira TAGOH <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2002-09-04 Marius Andreiana <[email protected]>
+
+ * ro.po: added ( thanks to Mugurel Tudor <[email protected]> )
+
+2002-08-30 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-08-28 Hasbullah Bin Pit <[email protected]>
+
+ * ms.po: Updated Malay Translation.
+
+2002-08-27 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-08-26 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-08-26 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: updated Russian translation.
+
+2002-08-26 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-08-24 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-08-23 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-08-23 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-08-22 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-08-21 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-08-21 Anders Carlsson <[email protected]>
+
+ * lv.po: Fix build.
+
+2002-08-21 Peteris Krisjanis <[email protected]>
+
+ * lv.po: Updated Latvian translation.
+
+2002-08-21 Akira TAGOH <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2002-08-19 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-08-19 Christian Rose <[email protected]>
+
+ * sv.po: Fixed a bug. Thanks to rhult for reporting it.
+
+2002-08-19 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-08-18 Hasbullah Bin Pit <[email protected]>
+
+ * ms.po: Updated Malay Translation.
+
+2002-08-18 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-08-18 Christian Neumair <[email protected]>
+
+ * de.po: Updated German translation.
+
+2002-08-17 Simos Xenitellis <[email protected]>
+
+ * el.po: Added initial Greek translation.
+
+2002-08-17 Evandro Fernandes Giovanini <[email protected]>
+
+ * pt_BR.po: Added Brazilian Portuguese translation.
+
+2002-08-17 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation by Young-Ho Cha
+
+2002-08-16 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-08-16 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: updated Russian translation.
+
+2002-08-13 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-08-12 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-08-12 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-08-11 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: updated Russian translation.
+
+2002-08-10 He Qiangqiang <[email protected]>
+
+ * zh_CN.po: Fixed c-format specifiers position error.
+
+2002-08-08 Akira TAGOH <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2002-08-07 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-08-06 Manuel Borchers <[email protected]>
+
+ * de.po: Update German translation by
+ Christian Neumair <[email protected]>
+
+2002-08-05 He Qiangqiang <[email protected]>
+
+ * zh_CN.po: Added simplified Chinese translation from
+ Sun G11n <[email protected]>.
+
+2002-08-05 Christian Rose <[email protected]>
+
+ * sv.po: Fixed Swedish translation.
+
+2002-08-04 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-07-30 Pablo Saratxaga <[email protected]>
+
+ * vi.po: Updated Vietnamese file
+
+2002-07-28 Christophe Merlet <[email protected]>
+
+ * fr.po: Updated French translation from contribution of
+ Sun G11n <[email protected]>.
+
+2002-07-27 Hasbullah Bin Pit <[email protected]>
+
+ * ms.po: Updated Malay Translation.
+
+2002-07-25 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-07-25 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-07-25 Dmitry G. Mastrukov <[email protected]>
+
+ * ru.po: updated Russian translation with help from
+ SUN G11n <[email protected]>.
+
+2002-07-25 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-07-25 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation and merged the
+ Sun changes that are sane.
+
+2002-07-24 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-07-23 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-07-24 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-07-19 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-07-16 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-07-15 Ole Laursen <[email protected]>
+
+ * da.po: Fixed a string.
+
+2002-07-13 Christophe Fergeau <[email protected]>
+
+ * fr.po: Added French translation.
+
+2002-07-13 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-07-12 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-07-11 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-07-11 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-07-08 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-07-02 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-06-24 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-06-24 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-06-25 Abel Cheung <[email protected]>
+
+ * zh_TW.po: Updated traditional Chinese translation.
+
+2002-06-23 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-06-23 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-06-19 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-06-16 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-06-16 Christian Rose <[email protected]>
+
+ * POTFILES.in: Added missing file.
+ * sv.po: Updated Swedish translation.
+
+2002-06-15 Akira TAGOH <[email protected]>
+
+ * ja.po: Updated Japanese translation.
+
+2002-06-14 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation.
+
+2002-06-10 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-06-10 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-06-09 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-06-09 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-06-07 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-06-06 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-06-06 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-06-05 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-06-05 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-06-04 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-06-04 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-06-04 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-06-03 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-06-03 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-06-03 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation by Young-Ho Cha
+
+2002-06-01 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-05-31 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-05-31 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-05-31 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-05-28 Pablo Gonzalo del Campo <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2002-05-28 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-05-28 Abel Cheung <[email protected]>
+
+ * zh_TW.po: New traditional Chinese translation.
+
+2002-05-27 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-05-26 Matthias Warkus <[email protected]>
+
+ * de.po: German translation added.
+
+2002-05-26 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-05-24 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-05-21 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation by Young-Ho Cha
+
+2002-05-20 Alessio Frusciante <algol@perseus>
+
+ * it.po: Added Italian translation.
+
+2002-05-20 Pablo Saratxaga <[email protected]>
+
+ * ca.po: Added Catalan file
+ * az.po,es.po,ms.po,lv.po: Corrected syntax errors
+
+2002-05-18 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-05-18 Ole Laursen <[email protected]>
+
+ * da.po: Updated Danish translation.
+
+2002-05-16 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-05-06 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation and converted to UTF-8.
+
+2002-04-26 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-04-25 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation from Young-Ho Cha
+
+2002-04-22 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-04-19 Changwoo Ryu <[email protected]>
+
+ * ko.po: Updated Korean translation from Young-Ho Cha
+
+2002-04-17 Changwoo Ryu <[email protected]>
+
+ * ko.po: Added Korean translation from Young-Ho Cha
+
+2002-04-16 Akira TAGOH <[email protected]>
+
+ * ja.po: Add Japanese translation.
+
+2002-04-16 Abel Cheung <[email protected]>
+
+ * .cvsignore: Added some file(s).
+ * POTFILES.in: Synced with source tree.
+
+2002-04-15 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Updated Polish translation by
+ MATE PL Team <[email protected]>.
+
+2002-03-28 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-03-27 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-03-22 Zbigniew Chyla <[email protected]>
+
+ * pl.po: Added Polish translation.
+
+2002-02-22 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-02-17 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-02-16 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-02-12 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-02-11 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2002-02-10 Hasbullah Bin Pit <[email protected]>
+
+ * ms.po: Updated Malay Translation.
+
+2002-02-10 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-02-08 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-02-08 Christian Rose <[email protected]>
+
+ * POTFILES.in: Added missing file.
+
+2002-02-08 Havoc Pennington <[email protected]>
+
+ * da.po: fix a missing newline that made build fail once po was
+ added to subdirs
+
+2002-02-02 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-01-31 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2002-01-30 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-01-30 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-01-29 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-01-27 Peteris Krisjanis <[email protected]>
+
+ * lv.po: Added Latvian translation.
+
+2002-01-22 Hasbullah Bin Pit <[email protected]>
+
+ * ms.po: Added Malay Translation.
+
+2002-01-11 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmål) translation.
+
+2002-01-09 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2002-01-08 Duarte Loreto <[email protected]>
+
+ * pt.po: Updated Portuguese translation.
+
+2002-01-06 Fatih Demir <[email protected]>
+
+ * tr.po: Added Turkish translation by Görkem Cetin.
+
+2002-01-05 Christian Rose <[email protected]>
+
+ * POTFILES.in: Added missing files.
+ * sv.po: Updated Swedish translation.
+
+2001-12-27 Duarte Loreto <[email protected]>
+
+ * pt.po: Added portuguese translation
+
+2001-12-27 Jesus Bravo Alvarez <[email protected]>
+
+ * gl.po: Updated Galician translation from
+ Manuel A. Fernandez Montecelo <[email protected]>
+
+2001-12-26 Vasif Ismailogu MD <[email protected]>
+
+ * az.po: updating Azerbaijani translation file
+
+2001-12-16 Kjartan Maraas <[email protected]>
+
+ * no.po: Updated Norwegian (bokmᅵ) translation.
+
+2001-12-15 Christian Rose <[email protected]>
+
+ * sv.po: Updated Swedish translation.
+
+2001-12-13 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Updated Slovak translation.
+
+2001-12-11 Stanislav Visnovsky <[email protected]>
+
+ * sk.po: Added Slovak translation.
+
+2001-11-27 Jesus Bravo Alvarez <[email protected]>
+
+ * gl.po: Added Galician translation from
+ Manuel A. Fernï¿œdez Montecelo <[email protected]>
+
+2001-10-29 Yuriy Syrota <[email protected]>
+
+ * uk.po: Added Ukrainian translation file.
+
+2001-10-28 Hï¿œtor Garcï¿œ ï¿œvarez <[email protected]>
+
+ * es.po: Updated Spanish translation.
+
+2001-10-14 Hï¿œtor Garcï¿œ ï¿œvarez <[email protected]>
+
+ * es.po: Added Spanish translation.
+
+2001-10-14 Valek Filippov <[email protected]>
+
+ * ru.po: Added russian translation.
+
+2001-10-11 Christian Rose <[email protected]>
+
+ * sv.po: Fixed some typos. Thanks to Tomas ï¿œren <[email protected]>
+ for spotting many of them.
+
+2001-10-11 Christian Rose <[email protected]>
+
+ * sv.po: Added Swedish translation.
+ * POTFILES.in: Added files.
+ * .cvsignore: Added messages and *.pot.
diff --git a/po/LINGUAS b/po/LINGUAS
new file mode 100644
index 00000000..918c5889
--- /dev/null
+++ b/po/LINGUAS
@@ -0,0 +1,95 @@
+# please keep this list sorted alphabetically
+#
+am
+ar
+as
+ast
+az
+be
+be@latin
+bg
+bn
+bn_IN
+br
+bs
+ca
+ca@valencia
+crh
+cs
+cy
+da
+de
+dz
+el
+en_CA
+en_GB
+en@shaw
+eo
+es
+et
+eu
+fa
+fi
+fr
+ga
+gl
+gu
+ha
+he
+hi
+hr
+hu
+hy
+id
+ig
+is
+it
+ja
+ka
+kn
+ko
+ku
+la
+lt
+lv
+mai
+mg
+mk
+ml
+mn
+mr
+ms
+nb
+nds
+ne
+nl
+nn
+oc
+or
+pa
+pl
+pt
+pt_BR
+ro
+ru
+rw
+si
+sk
+sl
+sq
+sr
+sr@latin
+sv
+ta
+te
+th
+tk
+tr
+uk
+vi
+wa
+xh
+yo
+zh_CN
+zh_HK
+zh_TW
diff --git a/po/Makefile.in.in b/po/Makefile.in.in
new file mode 100644
index 00000000..cc8a2227
--- /dev/null
+++ b/po/Makefile.in.in
@@ -0,0 +1,217 @@
+# Makefile for program source directory in GNU NLS utilities package.
+# Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <[email protected]>
+# Copyright (C) 2004-2008 Rodney Dawes <[email protected]>
+#
+# This file may be copied and used freely without restrictions. It may
+# be used in projects which are not available under a GNU Public License,
+# but which still want to provide support for the GNU gettext functionality.
+#
+# - Modified by Owen Taylor <[email protected]> to use GETTEXT_PACKAGE
+# instead of PACKAGE and to look for po2tbl in ./ not in intl/
+#
+# - Modified by jacob berkman <[email protected]> to install
+# Makefile.in.in and po2tbl.sed.in for use with glib-gettextize
+#
+# - Modified by Rodney Dawes <[email protected]> for use with intltool
+#
+# We have the following line for use by intltoolize:
+# INTLTOOL_MAKEFILE
+
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+PACKAGE = @PACKAGE@
+VERSION = @VERSION@
+
+SHELL = @SHELL@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+top_builddir = @top_builddir@
+VPATH = @srcdir@
+
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+datadir = @datadir@
+datarootdir = @datarootdir@
+libdir = @libdir@
+DATADIRNAME = @DATADIRNAME@
+itlocaledir = $(prefix)/$(DATADIRNAME)/locale
+subdir = po
+install_sh = @install_sh@
+# Automake >= 1.8 provides @mkdir_p@.
+# Until it can be supposed, use the safe fallback:
+mkdir_p = $(install_sh) -d
+
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+
+GMSGFMT = @GMSGFMT@
+MSGFMT = @MSGFMT@
+XGETTEXT = @XGETTEXT@
+INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
+INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
+MSGMERGE = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist
+GENPOT = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot
+
+ALL_LINGUAS = @ALL_LINGUAS@
+
+PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; else echo "$(ALL_LINGUAS)"; fi)
+
+USER_LINGUAS=$(shell if test -n "$(LINGUAS)"; then LLINGUAS="$(LINGUAS)"; ALINGUAS="$(ALL_LINGUAS)"; for lang in $$LLINGUAS; do if test -n "`grep \^$$lang$$ $(srcdir)/LINGUAS 2>/dev/null`" -o -n "`echo $$ALINGUAS|tr ' ' '\n'|grep \^$$lang$$`"; then printf "$$lang "; fi; done; fi)
+
+USE_LINGUAS=$(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else if test -n "$(PO_LINGUAS)"; then LLINGUAS="$(PO_LINGUAS)"; else LLINGUAS="$(ALL_LINGUAS)"; fi; fi; for lang in $$LLINGUAS; do printf "$$lang "; done)
+
+POFILES=$(shell LINGUAS="$(PO_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.po "; done)
+
+DISTFILES = Makefile.in.in POTFILES.in $(POFILES)
+EXTRA_DISTFILES = ChangeLog POTFILES.skip Makevars LINGUAS
+
+POTFILES = \
+# This comment gets stripped out
+
+CATALOGS=$(shell LINGUAS="$(USE_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.gmo "; done)
+
+.SUFFIXES:
+.SUFFIXES: .po .pox .gmo .mo .msg .cat
+
+.po.pox:
+ $(MAKE) $(GETTEXT_PACKAGE).pot
+ $(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox
+
+.po.mo:
+ $(MSGFMT) -o $@ $<
+
+.po.gmo:
+ file=`echo $* | sed 's,.*/,,'`.gmo \
+ && rm -f $$file && $(GMSGFMT) -o $$file $<
+
+.po.cat:
+ sed -f ../intl/po2msg.sed < $< > $*.msg \
+ && rm -f $@ && gencat $@ $*.msg
+
+
+all: all-@USE_NLS@
+
+all-yes: $(CATALOGS)
+all-no:
+
+$(GETTEXT_PACKAGE).pot: $(POTFILES)
+ $(GENPOT)
+
+install: install-data
+install-data: install-data-@USE_NLS@
+install-data-no: all
+install-data-yes: all
+ linguas="$(USE_LINGUAS)"; \
+ for lang in $$linguas; do \
+ dir=$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES; \
+ $(mkdir_p) $$dir; \
+ if test -r $$lang.gmo; then \
+ $(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \
+ echo "installing $$lang.gmo as $$dir/$(GETTEXT_PACKAGE).mo"; \
+ else \
+ $(INSTALL_DATA) $(srcdir)/$$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \
+ echo "installing $(srcdir)/$$lang.gmo as" \
+ "$$dir/$(GETTEXT_PACKAGE).mo"; \
+ fi; \
+ if test -r $$lang.gmo.m; then \
+ $(INSTALL_DATA) $$lang.gmo.m $$dir/$(GETTEXT_PACKAGE).mo.m; \
+ echo "installing $$lang.gmo.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \
+ else \
+ if test -r $(srcdir)/$$lang.gmo.m ; then \
+ $(INSTALL_DATA) $(srcdir)/$$lang.gmo.m \
+ $$dir/$(GETTEXT_PACKAGE).mo.m; \
+ echo "installing $(srcdir)/$$lang.gmo.m as" \
+ "$$dir/$(GETTEXT_PACKAGE).mo.m"; \
+ else \
+ true; \
+ fi; \
+ fi; \
+ done
+
+# Empty stubs to satisfy archaic automake needs
+dvi info ctags tags CTAGS TAGS ID:
+
+# Define this as empty until I found a useful application.
+install-exec installcheck:
+
+uninstall:
+ linguas="$(USE_LINGUAS)"; \
+ for lang in $$linguas; do \
+ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \
+ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \
+ done
+
+check: all $(GETTEXT_PACKAGE).pot
+ rm -f missing notexist
+ srcdir=$(srcdir) $(INTLTOOL_UPDATE) -m
+ if [ -r missing -o -r notexist ]; then \
+ exit 1; \
+ fi
+
+mostlyclean:
+ rm -f *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp
+ rm -f .intltool-merge-cache
+
+clean: mostlyclean
+
+distclean: clean
+ rm -f Makefile Makefile.in POTFILES stamp-it
+ rm -f *.mo *.msg *.cat *.cat.m *.gmo
+
+maintainer-clean: distclean
+ @echo "This command is intended for maintainers to use;"
+ @echo "it deletes files that may require special tools to rebuild."
+ rm -f Makefile.in.in
+
+distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
+dist distdir: $(DISTFILES)
+ dists="$(DISTFILES)"; \
+ extra_dists="$(EXTRA_DISTFILES)"; \
+ for file in $$extra_dists; do \
+ test -f $(srcdir)/$$file && dists="$$dists $(srcdir)/$$file"; \
+ done; \
+ for file in $$dists; do \
+ test -f $$file || file="$(srcdir)/$$file"; \
+ ln $$file $(distdir) 2> /dev/null \
+ || cp -p $$file $(distdir); \
+ done
+
+update-po: Makefile
+ $(MAKE) $(GETTEXT_PACKAGE).pot
+ tmpdir=`pwd`; \
+ linguas="$(USE_LINGUAS)"; \
+ for lang in $$linguas; do \
+ echo "$$lang:"; \
+ result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \
+ if $$result; then \
+ if cmp $(srcdir)/$$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
+ rm -f $$tmpdir/$$lang.new.po; \
+ else \
+ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \
+ :; \
+ else \
+ echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \
+ rm -f $$tmpdir/$$lang.new.po; \
+ exit 1; \
+ fi; \
+ fi; \
+ else \
+ echo "msgmerge for $$lang.gmo failed!"; \
+ rm -f $$tmpdir/$$lang.new.po; \
+ fi; \
+ done
+
+Makefile POTFILES: stamp-it
+ @if test ! -f $@; then \
+ rm -f stamp-it; \
+ $(MAKE) stamp-it; \
+ fi
+
+stamp-it: Makefile.in.in $(top_builddir)/config.status POTFILES.in
+ cd $(top_builddir) \
+ && CONFIG_FILES=$(subdir)/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \
+ $(SHELL) ./config.status
+
+# Tell versions [3.59,3.63) of GNU make not to export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/po/POTFILES.in b/po/POTFILES.in
new file mode 100644
index 00000000..ad1c37a6
--- /dev/null
+++ b/po/POTFILES.in
@@ -0,0 +1,32 @@
+# List of source files containing translatable strings.
+# Please keep this file sorted alphabetically.
+src/50-marco-desktop-key.xml.in
+src/50-marco-key.xml.in
+src/core/bell.c
+src/core/core.c
+src/core/delete.c
+src/core/display.c
+src/core/errors.c
+src/core/keybindings.c
+src/core/main.c
+src/core/prefs.c
+src/core/screen.c
+src/core/schema-bindings.c
+src/core/session.c
+src/core/util.c
+src/core/window.c
+src/core/window-props.c
+src/core/xprops.c
+src/include/all-keybindings.h
+src/marco.desktop.in
+src/marco.schemas.in.in
+src/marco-wm.desktop.in
+src/tools/marco-message.c
+src/ui/frames.c
+src/ui/menu.c
+src/ui/metaaccellabel.c
+src/ui/resizepopup.c
+src/ui/theme.c
+src/ui/theme-parser.c
+src/ui/theme-viewer.c
+
diff --git a/po/POTFILES.skip b/po/POTFILES.skip
new file mode 100644
index 00000000..7ebf145b
--- /dev/null
+++ b/po/POTFILES.skip
@@ -0,0 +1,2 @@
+src/marco.schemas.in
+
diff --git a/po/am.po b/po/am.po
new file mode 100644
index 00000000..4d93adbf
--- /dev/null
+++ b/po/am.po
@@ -0,0 +1,2695 @@
+# Translations into the Amharic Language.
+# Copyright (C) 2002 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+# Ge'ez Frontier Foundation <[email protected]>, 2002.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-09-19 12:30+0200\n"
+"PO-Revision-Date: 2003-02-03 10:16+EDT\n"
+"Last-Translator: Ge'ez Frontier Foundation <[email protected]>\n"
+"Language-Team: Amharic <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "አጠቃቀም፦ %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:128
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+
+#: ../src/delete.c:63 ../src/delete.c:90 ../src/marco-dialog.c:70
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr ""
+
+#: ../src/delete.c:70 ../src/delete.c:97 ../src/marco-dialog.c:77
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+
+#: ../src/delete.c:128
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr ""
+
+#: ../src/delete.c:263
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr ""
+
+#: ../src/delete.c:344
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+
+#: ../src/delete.c:452
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr ""
+
+#: ../src/display.c:319
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr ""
+
+#: ../src/errors.c:231
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+
+#: ../src/errors.c:238
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr ""
+
+#: ../src/frames.c:1125
+msgid "Close Window"
+msgstr "መስኮቱን ዝጋ"
+
+#: ../src/frames.c:1128
+msgid "Window Menu"
+msgstr "የመስኮት ሜኑ"
+
+#: ../src/frames.c:1131
+msgid "Minimize Window"
+msgstr "መስኮቱን አሳንስ"
+
+#: ../src/frames.c:1134
+msgid "Maximize Window"
+msgstr "መስኮቱን አስተልቅ"
+
+#: ../src/frames.c:1137
+msgid "Unmaximize Window"
+msgstr "መስኮቱን አታስተልቅ"
+
+#: ../src/keybindings.c:994
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+
+#: ../src/keybindings.c:2620
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+
+#: ../src/keybindings.c:2725
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr ""
+
+#: ../src/keybindings.c:3570
+msgid "No terminal command has been defined.\n"
+msgstr ""
+
+#: ../src/main.c:69
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+
+#: ../src/main.c:257
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:263
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:269
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:274
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:280
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:286
+msgid "Print version"
+msgstr ""
+
+#: ../src/main.c:440
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr ""
+
+#: ../src/main.c:456
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr ""
+
+#: ../src/main.c:518
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr ""
+
+#: ../src/menu.c:54
+msgid "Mi_nimize"
+msgstr "መሳንስ (_N)"
+
+#: ../src/menu.c:55
+msgid "Ma_ximize"
+msgstr "መተልቅ (_X)"
+
+#: ../src/menu.c:56
+msgid "Unma_ximize"
+msgstr "መታስተልቅ (_X)"
+
+#: ../src/menu.c:57
+msgid "Roll _Up"
+msgstr "ማውጣት (_U)"
+
+#: ../src/menu.c:58
+msgid "_Unroll"
+msgstr "ማውረድ (_U)"
+
+#: ../src/menu.c:59 ../src/menu.c:60
+msgid "On _Top"
+msgstr ""
+
+#: ../src/menu.c:61
+msgid "_Move"
+msgstr "መንቀሳቅስ (_M)"
+
+#: ../src/menu.c:62
+msgid "_Resize"
+msgstr "እንደገና መጧን ማስተሥከል (_R)"
+
+#. separator
+#: ../src/menu.c:64
+msgid "_Close"
+msgstr "ዝጋ (_C)"
+
+#. separator
+#: ../src/menu.c:66
+#, fuzzy
+msgid "_Always on Visible Workspace"
+msgstr "በዚህ መሥሪያ ቦታ ላይ ብቻ (_U)"
+
+#: ../src/menu.c:67
+#, fuzzy
+msgid "_Only on This Workspace"
+msgstr "በዚህ መሥሪያ ቦታ ላይ ብቻ (_U)"
+
+#: ../src/menu.c:68
+#, fuzzy
+msgid "Move to Workspace _Left"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 9 አንቀሳቅስ"
+
+#: ../src/menu.c:69
+#, fuzzy
+msgid "Move to Workspace R_ight"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 1 አንቀሳቅስ"
+
+#: ../src/menu.c:70
+#, fuzzy
+msgid "Move to Workspace _Up"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 1 አንቀሳቅስ"
+
+#: ../src/menu.c:71
+#, fuzzy
+msgid "Move to Workspace _Down"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 9 አንቀሳቅስ"
+
+#: ../src/menu.c:162 ../src/prefs.c:2106
+#, c-format
+msgid "Workspace %d"
+msgstr "መሥሪያ ቦታ %d"
+
+#: ../src/menu.c:171
+#, fuzzy
+msgid "Workspace 1_0"
+msgstr "መሥሪያ ቦታ %d"
+
+#: ../src/menu.c:173
+#, c-format
+msgid "Workspace %s%d"
+msgstr "መሥሪያ ቦታ %s%d"
+
+#: ../src/menu.c:368
+#, fuzzy
+msgid "Move to Another _Workspace"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 1 አንቀሳቅስ"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:110
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr ""
+
+#: ../src/marco-dialog.c:118
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr ""
+
+#: ../src/marco-dialog.c:129
+msgid "_Force Quit"
+msgstr ""
+
+#: ../src/marco-dialog.c:226
+msgid "Title"
+msgstr "አርእስት"
+
+#: ../src/marco-dialog.c:238
+msgid "Class"
+msgstr "መደብ"
+
+#: ../src/marco-dialog.c:264
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+
+#: ../src/marco-dialog.c:330
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:9
+#, fuzzy
+msgid "Close window"
+msgstr "መስኮትን ዝጋ"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr "የአሁኑን ጭብጥ"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:13
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:14
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:16
+msgid "Hide all windows and focus desktop"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:17
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key)."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:19
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:22
+msgid "Lower window below other windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:23
+#, fuzzy
+msgid "Maximize window"
+msgstr "መስኮትን አስተልቅ"
+
+#: ../src/marco.schemas.in.h:24
+msgid "Maximize window horizontally"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:25
+msgid "Maximize window vertically"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:26
+#, fuzzy
+msgid "Minimize window"
+msgstr "መስኮትን አሳንስ"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:28
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:29
+msgid "Move backwards between panels and the desktop with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:30
+msgid "Move backwards between windows immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:31
+msgid "Move between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move between panels and the desktop with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move between windows immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move between windows with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move focus backwards between windows using popup display"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:36
+#, fuzzy
+msgid "Move window"
+msgstr "መስኮትን አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move window one workspace down"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move window one workspace to the left"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move window one workspace to the right"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move window one workspace up"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move window to workspace 1"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 1 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move window to workspace 10"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 10 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move window to workspace 11"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 11 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window to workspace 12"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 12 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window to workspace 2"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 2 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window to workspace 3"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 3 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window to workspace 4"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 4 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window to workspace 5"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 5 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 6"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 6 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 7"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 7 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 8"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 8 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 9"
+msgstr "መስኮትን ወደ መሥሪያ ቦታ 9 አንቀሳቅስ"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Name of workspace"
+msgstr "የመሥሪያ ቦታ ስም"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Number of workspaces"
+msgstr "የመሥሪያ ቦታዎች ብዛት"
+
+#: ../src/marco.schemas.in.h:55
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:56
+msgid "Raise obscured window, otherwise lower"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:57
+msgid "Raise window above other windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:58
+#, fuzzy
+msgid "Resize window"
+msgstr "መስኮትን አሳንስ"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Run a defined command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:60
+msgid "Run a terminal"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:61
+msgid "Show the panel menu"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:62
+msgid "Show the panel run application dialog"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:63
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:64
+msgid "Switch to workspace 1"
+msgstr "ወደ መሥሪያ ቦታ 1 ቀይር"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Switch to workspace 10"
+msgstr "ወደ መሥሪያ ቦታ 10 ቀይር"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Switch to workspace 11"
+msgstr "ወደ መሥሪያ ቦታ 11 ቀይር"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Switch to workspace 12"
+msgstr "ወደ መሥሪያ ቦታ 12 ቀይር"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Switch to workspace 2"
+msgstr "ወደ መሥሪያ ቦታ 2 ቀይር"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Switch to workspace 3"
+msgstr "ወደ መሥሪያ ቦታ 3 ቀይር"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Switch to workspace 4"
+msgstr "ወደ መሥሪያ ቦታ 4 ቀይር"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Switch to workspace 5"
+msgstr "ወደ መሥሪያ ቦታ 5 ቀይር"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 6"
+msgstr "ወደ መሥሪያ ቦታ 6 ቀይር"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 7"
+msgstr "ወደ መሥሪያ ቦታ 7 ቀይር"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 8"
+msgstr "ወደ መሥሪያ ቦታ 8 ቀይር"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 9"
+msgstr "ወደ መሥሪያ ቦታ 9 ቀይር"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace above this one"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace below this one"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace on the left"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace on the right"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:80
+msgid "System Bell is Audible"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:81
+msgid "Take a screenshot"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:82
+msgid "Take a screenshot of a window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:83
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:84
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:85
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:86
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:87
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:88
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:89
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:90
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:91
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:92
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:93
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:94
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:95
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:96
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:97
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:98
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:99
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:100
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:146
+msgid "The name of a workspace."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:147
+msgid "The screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:151
+msgid "The window screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, and 'toggle_maximize' which will maximize/unmaximize the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:158
+msgid "Toggle always on top state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:159
+msgid "Toggle fullscreen mode"
+msgstr "የሙሉ እስክሪን ዘዴን ቀያይሩ"
+
+#: ../src/marco.schemas.in.h:160
+msgid "Toggle maximization state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:161
+msgid "Toggle shaded state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:162
+msgid "Toggle window on all workspaces"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:164
+#, fuzzy
+msgid "Unmaximize window"
+msgstr "መስኮቱን አታስተልቅ"
+
+#: ../src/marco.schemas.in.h:165
+msgid "Use standard system font in window titles"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:166
+msgid "Visual Bell Type"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:167
+msgid "Window focus mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:168
+msgid "Window title font"
+msgstr "የመስኮት አርእስት የፊደል ቅርጽ"
+
+#: ../src/prefs.c:528 ../src/prefs.c:544 ../src/prefs.c:560 ../src/prefs.c:576
+#: ../src/prefs.c:592 ../src/prefs.c:612 ../src/prefs.c:628 ../src/prefs.c:644
+#: ../src/prefs.c:660 ../src/prefs.c:676 ../src/prefs.c:692 ../src/prefs.c:708
+#: ../src/prefs.c:724 ../src/prefs.c:741 ../src/prefs.c:757 ../src/prefs.c:773
+#: ../src/prefs.c:789 ../src/prefs.c:805 ../src/prefs.c:820 ../src/prefs.c:835
+#: ../src/prefs.c:850 ../src/prefs.c:866 ../src/prefs.c:882 ../src/prefs.c:898
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr ""
+
+#: ../src/prefs.c:943
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+
+#: ../src/prefs.c:967 ../src/prefs.c:1428
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr ""
+
+#: ../src/prefs.c:1145
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+
+#: ../src/prefs.c:1330
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1390
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+
+#: ../src/prefs.c:1455
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1589
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+
+#: ../src/prefs.c:1833
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+
+#: ../src/prefs.c:2187
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+
+#: ../src/resizepopup.c:126
+#, c-format
+msgid "%d x %d"
+msgstr "%d በ %d"
+
+#: ../src/screen.c:408
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr ""
+
+#: ../src/screen.c:424
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+
+#: ../src/screen.c:448
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+
+#: ../src/screen.c:506
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr ""
+
+#: ../src/session.c:884 ../src/session.c:891
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:901
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ""
+
+#: ../src/session.c:1053
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:1058
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:1133
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr ""
+
+#: ../src/session.c:1168
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr ""
+
+#: ../src/session.c:1217
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/session.c:1230
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr ""
+
+#: ../src/session.c:1247
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/session.c:1305 ../src/session.c:1337
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr ""
+
+#: ../src/session.c:1409
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr ""
+
+#: ../src/session.c:1469
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr ""
+
+#: ../src/session.c:1489
+#, c-format
+msgid "Unknown element %s"
+msgstr ""
+
+#: ../src/session.c:1961
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr ""
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr ""
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1662
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1676
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1903
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1910
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2090
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2161
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2209
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/theme-parser.c:2294
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2476
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2549
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/theme-parser.c:3153
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3210
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3219
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3227
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3272
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3289
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr ""
+
+#: ../src/theme-parser.c:3298
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr ""
+
+#: ../src/theme-parser.c:3306
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3376
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3392
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3401
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3420
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:3430
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3440
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3450
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+
+#: ../src/theme-parser.c:3464
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3536
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3574
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3612
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3659
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:3679
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+
+#: ../src/theme-parser.c:3684
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3696
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/theme-parser.c:3718
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3984
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3999
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/theme-parser.c:4014
+msgid "No draw_ops provided for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:4054
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:4109
+msgid "<name> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4120
+msgid "<author> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4131
+msgid "<copyright> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4142
+msgid "<date> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4153
+msgid "<description> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4348
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr ""
+
+#: ../src/theme-parser.c:4403
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+
+#: ../src/theme-viewer.c:70
+#, fuzzy
+msgid "/_Windows"
+msgstr "የመስኮት ሜኑ"
+
+#: ../src/theme-viewer.c:71
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/theme-viewer.c:72
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/Des_ktop"
+msgstr ""
+
+#: ../src/theme-viewer.c:131
+msgid "Open another one of these windows"
+msgstr ""
+
+#: ../src/theme-viewer.c:138
+msgid "This is a demo button with an 'open' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:145
+msgid "This is a demo button with a 'quit' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr ""
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr ""
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/theme-viewer.c:397
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/theme-viewer.c:402
+msgid "Border"
+msgstr ""
+
+#: ../src/theme-viewer.c:731
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/theme-viewer.c:760
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/theme-viewer.c:803
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:816
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:839
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:845
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:851
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:856
+msgid "Button Layouts"
+msgstr ""
+
+#: ../src/theme-viewer.c:861
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/theme-viewer.c:908
+#, fuzzy
+msgid "Window Title Goes Here"
+msgstr "የመስኮት አርእስት የፊደል ቅርጽ"
+
+#: ../src/theme-viewer.c:1012
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:1227
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1229
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1233
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1241
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/theme-viewer.c:1245
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1248
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1310
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "ወደ ላይ"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "ወደ ታች"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "ግራ"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "ቀኝ"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr ""
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr ""
+
+#: ../src/theme.c:843
+msgid "Gradients should have at least two colors"
+msgstr ""
+
+#: ../src/theme.c:969
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:983
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:994
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1007
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1037
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+
+#: ../src/theme.c:1048
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/theme.c:1058
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/theme.c:1105
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/theme.c:1116
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/theme.c:1126
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/theme.c:1155
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr ""
+
+#: ../src/theme.c:1417
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/theme.c:1444
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+
+#: ../src/theme.c:1458
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/theme.c:1525
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+
+#: ../src/theme.c:1582
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/theme.c:1725 ../src/theme.c:1735 ../src/theme.c:1769
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/theme.c:1777
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/theme.c:1834
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/theme.c:1843
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/theme.c:1851
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/theme.c:1861
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+
+#: ../src/theme.c:1980
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr ""
+
+#: ../src/theme.c:2009
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2072
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/theme.c:2129
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2140
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/theme.c:2384 ../src/theme.c:2406 ../src/theme.c:2427
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/theme.c:3913
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+
+#: ../src/theme.c:4363 ../src/theme.c:4395
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+
+#: ../src/theme.c:4446
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr ""
+
+#: ../src/theme.c:4592 ../src/theme.c:4599 ../src/theme.c:4606
+#: ../src/theme.c:4613 ../src/theme.c:4620
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr ""
+
+#: ../src/theme.c:4630
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/theme.c:4652
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+
+#: ../src/theme.c:5041 ../src/theme.c:5103
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/theme.c:5049 ../src/theme.c:5111
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#: ../src/util.c:93
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr ""
+
+#: ../src/util.c:103
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+
+#: ../src/util.c:109
+#, c-format
+msgid "Opened log file %s\n"
+msgstr ""
+
+#: ../src/util.c:203
+msgid "Window manager: "
+msgstr "መስኮቱን መቆጣጠሪያ፦"
+
+#: ../src/util.c:349
+msgid "Bug in window manager: "
+msgstr ""
+
+#: ../src/util.c:378
+msgid "Window manager warning: "
+msgstr ""
+
+#: ../src/util.c:402
+msgid "Window manager error: "
+msgstr ""
+
+#: ../src/window-props.c:162
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %ld\n"
+msgstr ""
+
+#. first time through
+#: ../src/window.c:5205
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5876
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
diff --git a/po/ar.po b/po/ar.po
new file mode 100644
index 00000000..fd796cca
--- /dev/null
+++ b/po/ar.po
@@ -0,0 +1,3571 @@
+# translation of marco.HEAD.ar.po to Arabic
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) 2003 THE PACKAGE'S COPYRIGHT HOLDER
+# Arafat Medini <[email protected]>, 2003.
+# Abdulaziz Al-Arfaj <[email protected]>, 2004.
+# Djihed Afifi <[email protected]>, 2006.
+# Khaled Hosny <[email protected]>, 2006, 2007, 2008, 2009, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD.ar\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-03 20:02+0200\n"
+"PO-Revision-Date: 2010-03-03 20:02+0300\n"
+"Last-Translator: Khaled Hosny <[email protected]>\n"
+"Language-Team: Arabic <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: ar\n"
+"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
+"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
+"X-Generator: Virtaal 0.5.2\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "سطح المكتب"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "إدارة النوافذ"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "حدث الجرس"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "طلب مجهول لمعلومات نافذة: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> لا يستجيب"
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "ربما ترغب في الانتظار قليلا ليُكمِل أو إجبار التطبيق على الإنهاء كُلّية."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "ا_نتظر"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "أ_جبر الإنهاء"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "فشل جلب اسم المضيف: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "الامتداد %s مفقود، لكنه مطلوب للتمازج"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "فشل فتح عرض نظام نوافذ X '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"فقدت الاتصال بالعرض '%s';\n"
+"من المحتمل أن خادوم X أغلق أو أنك\n"
+"قتلت/دمرت مدير النوافذ.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "خطأ IO فادح %d (%s) على الشاشة '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "يستعمل برنامج آخر المفتاح %s بالفعل مع المغيرين %x كرابط\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"حصل خطأ عند تشغيل <tt>%s</tt>:\n"
+"\n"
+"%s."
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "لم يُعرّف أمر %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "لم يُعرّف أمر طرفيّة.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"مِتسِتي %s\n"
+"حقوق النشر © 2001-%s هاڤوك بِنَِنجتون، شركة ردهات، وآخرون\n"
+"هذا برنامج حر، راجع المصدر لشروط النسخ.\n"
+"لا يوجد أي ضمان: و لا حتى ضمان قابلية التسويق أو المناسبة لأي هدف.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "عطّل الاتصال بمدير الجلسة"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "استبدل مدير النوافذ الذي يعمل بمِتسِتي"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "حدّد رقم هويّة إدارة الجلسة"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "معراض س الذي سيستعمل"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "ابدأ الجلسة من ملف محفوظ"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "اطبع الإصدارة"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "اجعل نداءات X متزامنة"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "فعّل المزج"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "عطّل المزج"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "لا تنشئ نوافذ تملأ الشاشة وبدون حواف"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "فشلت قراءة دليل السِمات : %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "تعذّر إيجاد سِمة! تأكد من وجود %s و احتواءه على السِمات معتادة.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "فشلت إعادة التشغيل: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "مفتاح MateConf '%s' مضبوط لقيمة غير صحيحة\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d المحفوظ في مفتاح MateConf %s خارج المدى من %d إلى %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "مفتاح MateConf \"%s\" مضبوط لنوع غير صحيح\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"عطّلت الحلول الجزئيّة للتطبيقات المعطوبة . ربما لن تتصرف بعض التطبيقات "
+"بسلامة.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "لا يمكن تحليل وصف الخط \"%s\" من مفتاح MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" الموجود في قاعدة بيانات الإعدادات ليس قيمة سليمة لمغير أزرار الفأرة\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "خطأ عند تعيين عدد مساحات العمل لـ %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "مساحة العمل %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" الموجود في قاعدة بيانات الإعدادات ليس قيمة سليمة لارتباط المفتاح \"%s"
+"\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "خطأ عند تعيين اسم مساحة العمل %d لـ \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "خطأ عند ضبط حالة مدير التركيب: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "الشاشة %d على العرض '%s' غير صحيحة\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"الشاشة %d على العرض \"%s\" لها مدير نوافذ بالفعل، حاول استعمال خيار التبديل "
+"--replace لتحُلّ محلّ مدير النوافذ الحالي.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "لا يمكن الحصول على اختيار مدير النوافذ على الشاشة %d العرض \"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "الشاشة %d على العرض \"%s\" لها مدير نوافذ بالفعل\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "لا يمكن ترك الشاشة %d على العرض \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"ارتباط المفتاح المستخدم لإغلاق نافذة. النّسق شبيهٌ ب‍ \"<Control>\" أو ‪"
+"\"<Shift><Alt>F1\"‬.\n"
+"\n"
+"المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"<Ctl>"
+"\" و \"<Ctrl>\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك "
+"رابط مفتاحٍ لهذا الإجراء."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"ارتباط المفتاح المستخدم لإغلاق نافذة. النّسق شبيهٌ ب‍ \"<Control>\" أو ‪"
+"\"<Shift><Alt>F1\"‬.\n"
+"\n"
+"المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"<Ctl>"
+"\" و \"<Ctrl>\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك "
+"رابط مفتاحٍ لهذا الإجراء.\n"
+"\n"
+"يمكن عكس هذا الارتباط بضغط مفتاح \"shift\"، لذا لا يمكن أن يكون \"shift\" "
+"أحد هذه المفاتيح."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "لا يمكن انشاء الدليل '%s': %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "لا يمكن فتح ملف الجلسة '%s' لكتابة: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "خطأ عند كتابة ملف الجلسة '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "خطأ عند غلق ملف الجلسة '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "خطأ عند قراءة ملف الجلسة المحفوظ '%s': %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "خطأ عند تحليل ملف الجلسة المحفوظ: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "صفة <marco_session> مرئية لكن لدينا هوية الجلسة بالفعل"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "صفة مجهولة %s على عنصر <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "وسْم <window> معشّش"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "عنصر مجهول %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"هذه النوافذ لا تدعم &quot;احفظ الضبط الحالي&quot; يجب إعادة تشغيلها يدويا "
+"عند التسجيل المرة القادمة."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "فشل فتح سِجِلّ التنقيح: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "فشل fdopen() ملف الرسائل %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "فُتِح ملف السِّجِل %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "جُمِّع مِتسِتي دون دعم للنمط المطنب\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "مدير النوافذ: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "علّة في مدير النوافذ: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "تحذير مدير النوافذ: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "خطأ مدير النوافذ: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "مِتسِتي"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"ضبطت النافذة %s SM_CLIENT_ID على نفسه، عوض ضبطه على نافذةWM_CLIENT_LEADER "
+"مثل ما هو محدد من طرف ال‍ ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"ضبطت النافذة %s تلميحة MWM يدل على انه لا يمكن تحجيمها، لكنها تضبط الحجم "
+"الأدنى %d x %d و الحجم الأقصى %d x %d، هذا ليس له أي معنى.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "ضبط التطبيق رمز NET_WM_PID غير مفهوم %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (على %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (مستخدم فائق)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (مستخدم %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (مستخدم آخر)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "نافذة WM_TRANSIENT_FOR 0x%lx غير صحيحة ل %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"للنافذة 0x%lx الخاصية %s\n"
+"التي كام مرتقبا أن تكون لها النوع %s التهيئة %d\n"
+"لكنها فعليا لها النوع %s التهيئة %d n_items %d.\n"
+"هذا خلل تطبيق، لا خلل في مدير النوافذ.\n"
+"للنافذة العنوان =\"%s\" الطبقة=\"%s\" الاسم=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "الخاصية %s على النافذة 0x%lx تحتوي UTF-8 غير صحيح\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"الخاصية %s على النافذة 0x%lx تحتوي UTF-8 غير صحيح للعنصر %d في القائمة\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "انتقل إلى مساحة العمل 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "انتقل إلى مساحة العمل 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "انتقل إلى مساحة العمل 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "انتقل إلى مساحة العمل 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "انتقل إلى مساحة العمل 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "انتقل إلى مساحة العمل 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "انتقل إلى مساحة العمل 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "انتقل إلى مساحة العمل 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "انتقل إلى مساحة العمل 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "انتقل إلى مساحة العمل 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "انتقل إلى مساحة العمل 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "انتقل إلى مساحة العمل 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "انتقل إلى مساحة العمل على يسار الحالية"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "انتقل إلى مساحة العمل على يمين الحالية"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "انتقل إلى مساحة العمل فوق الحالية"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "انتقل إلى مساحة العمل تحت الحالية"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "تنقل بين نوافذ تطبيق بنافذةٍ قافزة"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "تنقل إلى الوراء بين نوافذ تطبيق بنافذةٍ قافزة"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "تنقل بين النوافذ بنافذةٍ قافزة"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "تنقل إلى الوراء بين النوافذ بنافذةٍ قافزة"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "تنقل بين الأشرطة و سطح المكتب بنافذةٍ قافزة"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "تنقل إلى الوراء بين الأشرطة و سطح المكتب بنافذةٍ قافزة"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "تنقل بين نوافذ التطبيق حالًا"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "تنقل إلى الوراء بين نوافذ تطبيق حالًا"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "تنقل بين النوافذ حالًا"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "تنقل إلى الوراء بين النوافذ حالًا"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "تنقل بين الأشرطة و سطح المكتب حالًا"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "تنقل إلى الوراء بين الأشرطة و سطح المكتب حالًا"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "أخفِ كل النوافذ و ركّز على سطح المكتب"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "اعرض قائمة الشريط الرئيسية"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "أظهر حوار الشّريط لتشغيل التّطبيقات"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "خذ لقطة شاشة"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "خذ لقطة لنافذة"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "شغّل طرفية"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "فعّل قائمة النافذة"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "بدّل نمط ملء الشاشة"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "بدّل حالة التكبير"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "بدّل حالة ظهور النافذة فوق النوافذ الأخرى"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "كبّر النّافذة"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "استعد النّافذة"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "بدّل حالة الإخفاء"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "صغّر النّافذة"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "أغلق النّافذة"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "انقل النّافذة"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "حجّم النّافذة"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "بدّل حالة ظهور النافذة على جميع مساحات العمل"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "انقل النافذة إلى مساحة العمل 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "انقل النافذة إلى مساحة العمل 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "انقل النافذة إلى مساحة العمل 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "انقل النافذة إلى مساحة العمل 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "انقل النافذة إلى مساحة العمل 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "انقل النافذة إلى مساحة العمل 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "انقل النافذة إلى مساحة العمل 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "انقل النافذة إلى مساحة العمل 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "انقل النافذة إلى مساحة العمل 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "انقل النافذة إلى مساحة العمل 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "انقل النافذة إلى مساحة العمل 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "انقل النافذة إلى مساحة العمل 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "انقل النافذة مساحة عمل واحدة إلى اليسار"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "انقل النافذة مساحة عمل واحدة إلى اليمين"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "انقل النافذة مساحة عمل واحدة إلى الأعلى"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "انقل النافذة مساحة عمل واحدة إلى الأسفل"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "ارفع النافذة إذا كانت أخرى تغطيها، أو أخفضها في ما عدا ذلك"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "ارفع النافذة فوق النوافذ الأخرى"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "اخفض النافذة تحت النوافذ الأخرى"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "كبّر النافذة عموديا"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "كبّر النافذة أفقيا"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "انقل النافذة للزاوية شمال-غربي الشاشة (أعلى اليسار)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "انقل النافذة للزاوية شمال-شرقي الشاشة (أعلى اليمين)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "انقل النافذة للزاوية جنوب-غرب الشاشة (أدنى اليسار)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "انقل النافذة للزاوية جنوب-شرق الشاشة (أدنى اليمين)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "انقل النافذة للجانب الشمالي من الشاشة (فوق)"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "انقل النافذة للجانب الجنوبي من الشاشة (تحت)"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "انقل النافذة للجانب الشرقي من الشاشة (يمين)"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "انقل النافذة للجانب ألغربي من الشاشة (يسار)"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "انقل النافذة إلى وسط الشاشة"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(غير مضمن) التصفح يعمل باعتبار التطبيقات لا النوافذ"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"سلسلة وصف الخطوط تصف خطا لأعمدة عناوين النوافذ. الحجم من الوصف سيستعمل فقط "
+"عند ضبط خيار titlebar_font_size ل‍ 0. كما يلغى هذا الخيار عند ضبط خيار "
+"titlebar_uses_desktop_font لـ صحيح. "
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "إجراء النقر المزدوج على شريط العناوين"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "إجراء النقر الأوسط على شريط العناوين"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "إجراء النقر الأيمن على شريط العناوين"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "تنظيم الأزرار على شريط العنوان"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"تنظيم الأزرار على شريط العنوان. يجب أن تكون القيمة سلسلة نصيّة،مثل\"menu:"
+"minimize,maximize,spacer,close\"; تفصل النقطتان فوق بعضهما الجانب الأيسر "
+"للنافذة عن الجانب الأيمن، كما تُفصل أسماء الأزرار بفواصل. لا يسمح بالنسخ "
+"المطابقة للأزرار. يتم تجاهل الأزرار غير المعروفة حتى يمكن إضافة الأزرار إلى "
+"الإصدارادت المستقبلية من ميتاسيتي دون كسر الإصدارات القديمة. يمكن استخدام "
+"وسم فاصل خاص لإقحام فراغ بين زرين متجاورين."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "ارفع النافذة المركزة آليا"
+
+#: ../src/marco.schemas.in.in.h:9
+#, fuzzy
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"نقر نافذة عند الضغط على مفتاح التغيير هذا سينقل النافذة (نقر أيسر) أو يحجم "
+"النافذة (نقر أوسط)، أو يظهر قائمة النافذة (نقر أيمن). المغير يعبر عنه بـ "
+"\"&lt;Alt&gt;\" أو \"&lt;Super&gt;\" على سبيل المثال."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "الأوامر التي ستنفذ إستجابة لارتباطات المفاتيح"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "مدير التركيب"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "تحكّم في كيف تحصل النافذة الجديدة على التركيز"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "السِمة الحالية"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "التأخير بالملي ثانية لخيار الرفع الآلي"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "تحدّد ما إذا كان مِتسِتي مديرا للتركيب."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"يقرر فيما إذا ستنشأ التطبيقات أو النظام 'صفيرا' مسموعًا، يمكن استخدامه مع "
+"'الناقوس المرئي' للسماح 'بالصفير' الصامت."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "عطّل الميزات السيئة المطلوبة من تطبيقات قديمة أو معطوبة"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "فعّل الناقوس المرئي"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"إذا كان صحيح، ونمط التركيز \"sloppy\" أو \"mouse\" فسترفع النافذة المركزة "
+"آليا بعد تأخير محدد من قِبل مفتاح auto_raise_delay (التأخير يخصص بمفتاح "
+"auto_raise_delay)."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"إذا كان صحيح، تجاهل خيار titlebar_font، و استعمل خط التطبيق الافتراضي "
+"لعناوين النوافذ."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"إذا ضبط لصحيح، فسيعطي مِتسِتي المستخدم ردودا أقل ، باستخدام إطارات شبكية تتجنّب "
+"الرسوم المتحركة أو بطرق أخرى. هذا تخفيض هام لقابلية الاستخدام للعديد من "
+"المستخدمين، لكنه سيسمح بتطبيقات موروثة و خواديم الشاشات الطرفية أن تعمل عوض "
+"أن تكون غير عمليّة."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"اذا كان صحيح، فسيعمل متستي باعتبار التطبيقات عوض النوافذ. الفكرة مجردة، لكن "
+"عامة تعيين باعتبار التطبيق شبيه بالماكنتش أكثر منه بوندوز. عند تركيزك لنافذة "
+"في نمط اعتبار التطبيق سترفع جميع النوافذ في التطبيق، كما أن نقرات التركيز لا "
+"تمرر لنوافذ في تطبيقات أخرى. كما أن نمط اعتبار التطبيقات ما زال لم يضمن "
+"بكثافة حاليا."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "إذا ضبط لصحيح، سيُبادل تسهيل الاستخدام بتقليل استخدام الموارد"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "المغير الذي سيُستعمل لعمليات نقر النوافذ المغيرة"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "اسم مساحة العمل"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "عدد مساحات العمل"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"عدد مساحات العمل. يجب أن يكون مغايرا لصفر، و بحد أقصى مثبت للوقاية من تدمير "
+"سطح مكتبك عفويا بطلب عدد كبير جدا من أسطح عمل."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "شغّل أمرا معرّفا"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"بعض التطبيقات تهمل المُوَاصفَات مما يؤدي لعطل بعض مزايا مِتسِتي. هذا الخيار يجعل "
+"مِتسِتي يعمل بطريقة عاتية، بشرط عدم تشغيل تطبيقات من ذلك الصنف."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "ناقوس النظام مسموع"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"يقول لمتاستي كيفية تنفيذ المؤشر المرئي عند عزف ناقوس النظام أو ناقوس أي "
+"تطبيق آخر. حاليا هناك قيمتان ممكنتان، \"fullscreen\" (كامل الشاشة) الذي يُنتج "
+"وميض أبيض و أسود و \"frame_flash\" الذي ينتج عنه وميض شريط عنوان التطبيق "
+"الذي أرسل إشارة الناقوس. إذا كان التطبيق الذي أرسل الجرس مجهولا (الذي هو "
+"الحال لـ \"بيب النظام\" الإفتراضي) فسيومض شريط عنوان التطبيق المركزّ حاليا."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"مفاتيح /apps/marco/global_keybindings/run_command_N تعرف روابط مفاتيح "
+"تماثل هذه الأوامر. نقر ارتباط المفتاح لـ run_command_N سيشغل command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"مفتاح /apps/marco/global_keybindings/run_command_screenshot يحدد مفتاح "
+"رابط ينفّذ الأمر المحدد من قبل هذا التعيين."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"مفتاح /apps/marco/global_keybindings/run_command_window_screenshot يعرف "
+"مفتاحا رابطا ينفذ الأمر المحدد من قبل هذا التعيين."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"ارتباط المفتاح المشغّل للأمر ذو الرّقم المطابق في /apps/marco/"
+"keybinding_commands. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك "
+"الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة "
+"الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "اسم مساحة العمل."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "أمر لقطة الشاشة"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "تحدّد السِمة مظهر حدود النافذة و شريط العناوين، الخ."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"التأخير الوقتي قبل رفع نافذة اذا ضبط auto_raise لـ صحيح. التأخير معطى بآلاف "
+"الأجزاء من الثانية."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"نمط تركيز النافذة يبين طريقة تفعيل النوافذ. للنمط ثلاث قيم ممكنة، \"click\" "
+"يعني أنه يجب نقر النوافذ حتى تركز، \"sloppy\" يعني أن النافذة تركز عند دخول "
+"مؤشر الفأرة النافذة و \"mouse\" يعني أن النوافذ تركز عند دخول مؤشر الفأرة "
+"النافذة ثم يلغى التركيز عند خروج المؤشر من النافذة."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "أمر لقطة النافذة"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"هذا الخيار يحدد نتائج النقر المزدوج على شريط العنوان. الخيارات الممكنة حاليا "
+"هي 'toggle_shaded'، مما سيخفي/يلغي إخفاء النافذة، 'toggle_maximized' مما "
+"سيكبر/يلغي تكبير النافذة، 'minimize' لإخفاء النافذة، و "
+"'toggle_maximize_horizontally' و 'toggle_maximize_vertically' اللذان سيقومان "
+"بتكبير/إلغاء تكبير النافذة بالاتجاه المحدد فقط، 'minimize' سيقوم بتصغير "
+"النافذة، 'shade' سيلف النافذة إلى الأعلى، 'menu' سيعرض قائمة النافذة، "
+"'lower' سيضع النافذة خلف بقية النوافذ، و 'none' لن يفعل أي شيء."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"هذا الخيار يحدد نتائج النقر الأوسط على شريط العنوان. الخيارات الممكنة حاليا "
+"هي 'toggle_shaded'، مما سيخفي/يلغي إخفاء النافذة، 'toggle_maximized' مما "
+"سيكبر/يلغي تكبير النافذة، 'minimize' لإخفاء النافذة، و "
+"'toggle_maximize_horizontally' و 'toggle_maximize_vertically' اللذان سيقومان "
+"بتكبير/إلغاء تكبير النافذة بالاتجاه المحدد فقط، 'minimize' سيقوم بتصغير "
+"النافذة، 'shade' سيلف النافذة إلى الأعلى، 'menu' سيعرض قائمة النافذة، "
+"'lower' سيضع النافذة خلف بقية النوافذ، و 'none' لن يفعل أي شيء."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"هذا الخيار يحدد نتائج النقر الأيمن على شريط العنوان. الخيارات الممكنة حاليا "
+"هي 'toggle_shaded'، مما سيخفي/يلغي إخفاء النافذة، 'toggle_maximized' مما "
+"سيكبر/يلغي تكبير النافذة، 'minimize' لإخفاء النافذة، و "
+"'toggle_maximize_horizontally' و 'toggle_maximize_vertically' اللذان سيقومان "
+"بتكبير/إلغاء تكبير النافذة بالاتجاه المحدد فقط، 'minimize' سيقوم بتصغير "
+"النافذة، 'shade' سيلف النافذة إلى الأعلى، 'menu' سيعرض قائمة النافذة، "
+"'lower' سيضع النافذة خلف بقية النوافذ، و 'none' لن يفعل أي شيء."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"هذا الخيار يعطي تحكم كيفية تحصل النوافذ المنشأة جديدا على التركيز. هناك "
+"خياران: \"smart\" لإعطاء التركيز، و \"strict\" لعدم إعطاء التركيز للنوافذ "
+"البادئة من شاشة طرفية."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"يفعّل إشارة بصرية عند إرسال التطبيق أو النظام لـ 'ناقوس' أو 'صفير'، هذا مفيد "
+"للذين يسمعون يصعوبة أو للإستعمال في بيئات مفعمة بالضجيج."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "استخدم خط النظام القياسي في عناوين النوافذ"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "نوع الناقوس المرئي"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "إذا كان التصعيد أثرا جانبيا لتفاعلات المستخدم الأخرى"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "نمط تركيز النافذة"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "خط عنوان النافذة"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "الاستخدام: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "أغلق النافذة"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "قائمة النافذة"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "صغّر النافذة"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "كبّر النافذة"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "استعد النّافذة"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "لُفّ النافذة الأعلى"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "ألغى لفّ النافذة"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "ابقي النافذة على القمة"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "احذف من القمّة"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "دائما مساحة العمل المرئية"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "ضع النافذة على مساحة عمل واحدة فقط"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_صغّر"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_كبّر"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "ألغي التكبي_ر"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "لف إلى ال_أعلى"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "ال_غي اللف"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "ا_نقل"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_حجّم"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "انقل _شريط العنوان على الشاشة"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "دائما في ال_قمّة"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "فقط على مساحة العمل ال_مرئيّة"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "فقط على مساحة العمل _هذه"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "انقل لمساحة العمل على ال_يسار"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "انقل لمساحة العمل على الي_مين"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "انقل لمساحة العمل إلى ال_أعلى"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "انقل لمساحة العمل إلى الأ_سفل"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "أ_غلق"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "مساحة العمل %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "مساحة العمل 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "مساحة العمل %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "انقل ل_مساحة عمل أخرى"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "أعلى"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "أسفل"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "يسار"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "يمين"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "هندسة الاطار لا تخصص البعد \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "هندسة الاطار لا تخصص البعد \"%s\" للحد \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "النسبة الجانبية للزر %g غير معقولة"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "هندسة الاطار لا تخصص حجم الأزرار"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "يجب أن يكون للتّدرُّجات لونان على الأقل"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"يجب أن تكون حالة تخصيصات ألوان GTK في قوسان قائمان، مثال gtk:fg[NORMAL] "
+"NORMAL هنا هو الحالة، لا يمكن تحليل \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"يحب أن يكون لتخصيص حالة ألوان GTK قوس غلق قائم بعد الحالة/ مثال gtk:fg"
+"[NORMAL]، NORMAL هنا هو الحالة، لا يمكن تحليل \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "لم تفهم الحالة \"%s\" في تخصيص الألوان"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "لم يفهم جزء اللون \"%s\" في تخصيص اللون"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "تهيئة الخلط \"blend/bg_color/fg_color/alpha\"، \"%s\"لا يناسب التهيئة"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "لا يمكن تحليل قيمة الشفافية \"%s\" في اللون المخلط"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "قيمة الشفافية \"%s\" في اللون المخلوط ليست بين 0.0 و 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"تهيئة التظليل هي \"تظليل/اللون_الأساسي/العامل\"، \"%s\" لا يناسب التهيئة"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "لا يمكن تحليل عامل التظليل \"%s\" في اللون المظلل"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "عامل التظليل \"%s\" في اللون المظلل سلبي"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "لا يمكن تحليل اللون \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "تعبير الإحداثيّات يحتوي على الرمز '%s' الممنوع"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "تعبير الإحداثيّات يحتوي على عدد نقطة متغيرة '%s' تعذّر تحليله"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "تعبير الإحداثيّات يحتوي على عدد صحيح '%s' تعذّر تحليله"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "تعبير الإحداثيّات يحتوي على مقسوم مجهول عند بداية هذا النص: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "تعبير الإحداثيّات فارغ أو لم يفهم"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "تعبير الإحداثيّات ينتُج عند القسمة على صفر"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "تعبير الإحداثيّاتيّات يحاول استعمال مقسوم mod على عدد فاصلة متحرّكة"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "تعبير الإحداثيّات له مقسوم \"%s\" بالرغم من ترقبه قاسم"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "تعبير الإحداثيّات له قاسم بالرغم من ترقبه لمقسوم"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "انتهى تعبير الإحداثيّات بمقسوم عوضا عن قاسم"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "لتعبير الإحداثيّات مقسوم \"%c\" يتبع القاسم \"%c\" بدون قاسم بينهما"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "كان لتعبير الإحداثيّات متغير أو ثابت \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "غمر محلّل تعبير الإحداثيّات مجاله"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "كان لتعبير الإحداثيّات قوس غلق بدون قوس فتح"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "كان لتعبير الإحداثيات قوس فتح بدون قوس غلق"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "تعبير الإحداثيات لا يملك قاسمات و مقسومات"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "احتوت السِمة على تعبير ادى الى خطأ: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"يجب تخصيص <button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> "
+"لأسلوب الإطار هذا"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> مفقود"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "فشل تحميل السِمة \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "لا <%s> ضبط للسِمة \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"لا أسلوب إطار مضبوط لنوع النافذة \"%s\" في السِمة \"%s\"، اضف عنصر <window "
+"type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"الثوابت المعرفة من طرف المستخدم يجب أن تبدأ بحروف كبيرة، \"%s\" لا يبدأ بذلك"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "عُرِّف الثابت \"%s\" بالفعل"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "لا صفة \"%s\" على العنصر <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "سطر %d محْرف %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "الصفة \"%s\" معادة مرتان في نفس العنصر <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "الصفة \"%s\" مغلوطة في العنصر <%s> في هذا السياق"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "تعذّر تحليل \"%s\" كعدد صحيح"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "لم أفهم المحارف المتدلية \"%s\" في السلسلة \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "العدد الصحيح %ld يجب أن يكون ايجابيا"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "العدد الصحيح %ld كبير جدا، الحد الأقصى هو %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "لا يمكن تحليل \"%s\" كعدد فاصلة متحرّكة"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "يجب أن تكون القيم البوليانيّة \"صحيح\" أو \"خاطئ\" لا \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "يجب أن تكون الزاوية بين 0.0 و 360.0،وهي كانت%g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "يجب أن تكون الشفافية بين 0.0 (مختف) و 1.0 (دامس تماما)، وهي كانت %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"حجم عنوان غير سليم \"%s\" (يجب أن يكون واحد من xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> استُعمل الاسم \"%s\" للمرّة الثانية"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> لم يُعرّف الأب \"%s\""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> لم تُعرّف الهندسة \"%s\""
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "يجب ان يخصص <%s> هندسة أو اب له هندسة"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "يجب أن تحدّد خلفية ليصبح لقيمة ألفا معنى"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "نوع مجهول \"%s\" على عنصر <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set مجهول \"%s\" على العنصر <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "اعطى لنوع النافذة \"%s\" مجموعة أساليب بالفعل"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "العنصر <%s> غير مسموح به تحت <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"لا يمكن تخصيص \"button_width\"/\"button_height\" و \"aspect_ratio\" للأزرار"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "المسافة \"%s\" مجهولة"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "نسبة الجانب \"%s\" مجهولة"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "الحدّ \"%s\" مجهول"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "لا صفة \"start_angle\" أو \"from\" على العنصر <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "لا صفة \"extent_angle\" أو \"to\" على العنصر <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "لم أفهم القيمة \"%s\" لنوع التدرّج"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "لم أفهم نوع الملأ \"%s\" للعنصر <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "لم أفهم حالة \"%s\" العنصر <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "لم أفهم ظل \"%s\" العنصر <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "لم أفهم السهم \"%s\" للعنصر <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "لم يعرف <draw_ops> مسمى \"%s\""
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "تضمين draw_ops \"%s\" هنا سينشئ مرجعا دائريا"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "موقع مجهول \"%s\" لقطعة الإطار"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "أسلوب الإطار له قطعة في الموقع %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "لم تعرف <draw_ops> بالاسم \"%s\""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "وظيفة مجهولة \"%s\" للزر"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "لا وجود لوظيفة الزر \"%s\" في هذه الإصدارة (%d، تحتاج %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "حالة مجهولة \"%s\" للزر"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "أسلوب الإطار له بالفعل زر للوظيفة %s الحالة %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" قيمة غير سليمة لصفة التركيز"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" قيمة غير سليمة لصفة الحالة"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "لم يعرف أسلوب مسمى بـ \"%s\""
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" ليس قيمة سليمة لصفة التحجيم"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "لا يجب أن تكون صفة \"التحجيم\" على عنصر <%s> لحالات التكبير/الاخفاء"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "لا يجب أن تكون صفة \"التحجيم\" على عنصر <%s> لحالات التكبير"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "حُدّد بالفعل أسلوب للحالة %s التحجيم %s التركيز %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "حُدّد بالفعل أسلوب للحالة %s التركيز %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"لا يمكن ان يوجد draw_ops اثنان لعنصر <piece> (خصصت السِمة صفة draw_ops و عنصر "
+"<draw_ops>، أو عنصران محدّدان)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"لا يمكن ان يوجد draw_ops اثنان لعنصر <button> (خصصت السِمة صفة draw_ops و "
+"عنصر <draw_ops>، أو عنصران محدّدان)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"لا يمكن ان يوجد draw_ops اثنان لعنصر<menu_icon> (خصصت السِمة صفة draw_ops و "
+"عنصر <draw_ops>، أو عنصران محدّدان)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "يجب أن يكون أخرج عنصر في السِمة <marco_theme> لا <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "العنصر <%s> غير مسموح به داخل عنصر اسم/كاتب/تاريخ/وصف"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "العنصر <%s> غير مسموح به داخل عنصر <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "العنصر <%s> غير مسموح به داخل عنصر مسافة/حد/aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "العنصر <%s> غير مسموح به داخل عنصر عملية متعادلة"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "العنصر <%s> غير مسموح به داخل عنصر <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "لا draw_ops مزودة لقطعة الاطار"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "لا draw_ops مزودة للزر"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "لا يُسمح بنص داخل العنصر <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> محدّد مرتان لهذه السِمة"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "فشل العثو على سِمة صحيحة في %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "ملف السِمة %s لا يحتوي على عنصر <marco_theme> جذري"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_نوافذ"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/نوافذ/قاطف"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/نوافذ/_حوار"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/نوافذ/حوار _سائد"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/نوافذ/أ_داة"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/نوافذ/_صورة البدأ"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/نوافذ/المرسى ال_علوي"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/نوافذ/المرسى ال_سفلي"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/نوافذ/المرسى الأي_سر"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/نوافذ/المرسى الأي_من"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/نوافذ/جميع المرسات"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/نوافذ/ال_مكتب"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "هذا رسالة عيّنة في حوار عيّنة"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "عنصر قائمة مستعار %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "نافذة ذات حدود فقط"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "شريط"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "نافذة تطبيق عادية"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "صندوق حوار"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "صندوق حوار سائد"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "لوحة الأدوات"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "قائمة مفصولة"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "حد"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "تجربة تصميم الأزرار %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g ملي ثانية لرسم إظار واحد للنافذة"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "الإستعمال: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "خطأ عند تحميل السِمة: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "حُمِّلت السِمة \"%s\" في %g ثواني\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "خط عنوان عادي"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "خط عنوان صغير"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "خط عنوان كبير"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "تصاميم الأزرار"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "علامة إهتداء"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "عنوان النافذة يكون هنا"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"دفعت %d إطارات في %g ثوان بإتجاه العميل (%g ملي ثانية لكل إطار) و %g ثواني "
+"بوقت ساعة حائطية مع مصادر خادوم X (%g ملي ثانية لكل إطار)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "أرجع إختبار تعبير الموقع TRUE لكنه لم يكتشف الخطأ"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "أرجع إختبار تعبير الموقع خطأ لكنه لم يكتشف الخطأ"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "تُرُقِّب خطأ لكن لم يعطى أي خطأ"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "تُرقّب %d لكن أعطى %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "لم يُترقب خطأ لكنه أرجع واحدًا: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "قيمة س كانت %d، تُرُقِّب %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "قيمة ص كانت %d، تُرُقَِب %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "حُلِّلت %d تعابير الإحداثيات في %g ثواني (بمعدّل %g ثوان)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "افتح نافذة أخرى من هذه النوافذ"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "هذا زر عرض بأيقونة 'افتح'"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "هذا زر عرض بأيقونة 'انهي'"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "فشل تحليل الرسالة \"%s\" من عملية الحوار\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "خطأ أثناء القراءة من عملية عرض الحوار: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr "خطأ في إطلاق حوار مِتسِتي للسؤال حول قتل تطبيق: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr "خطأ في إطلاق حوار مِتسِتي لطبع خطأ حول الأمر: %s\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "صفة مجهولة %s على عنصر <marco_session>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "صفة مجهولة %s على عنصر <maximized>"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "صفة مجهولة %s على عنصر <geometry>"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "خطأ عند إطلاق حوار مِتسِتي للتحذير من تطبيقات التي لا تدعم إدارة الجلسة: %"
+#~ "s\n"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "الكثير من الأفعال (كالنقر داخل أو تحجيم النافذة) ترفع النافذة كعرض جانبي. "
+#~ "جعل هذا الخيار خطأ، وهو ما لا ينصح به وبشدة، سيفصل الرفع عن أفعال "
+#~ "المستخدم. متجاهلا طلبات الرفع التي يولدها التطبيق. راجع http://bugzilla."
+#~ "gnome.org/show_bug.cgi?id=445447#c6."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل الموجودة فوق مساحة العمل الحاليّة. "
+#~ "النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل "
+#~ "\"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة "
+#~ "\"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل الموجودة تحت مساحة العمل الحاليّة. "
+#~ "النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل "
+#~ "\"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة "
+#~ "\"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل الموجودة على يسار مساحة العمل "
+#~ "الحاليّة. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات "
+#~ "مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة "
+#~ "\"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل الموجودة على يمين مساحة العمل "
+#~ "الحاليّة. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات "
+#~ "مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة "
+#~ "\"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 1. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 10. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 11. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 12. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 2. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 3. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 4. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 5. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 6. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 7. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 8. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يحوّل لمساحة العمل 9. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتنشيط قائمة النّافذة. النّسق شبيهٌ بـ \"&lt;"
+#~ "Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و "
+#~ "يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;"
+#~ "Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك "
+#~ "رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لدخول \"وضع النّقل\" و البدء بنقل نافذة باستخدام "
+#~ "لوحة المفاتيح. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك "
+#~ "الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لدخول \"وضع التّحجيم\" و البدء بتغيير حجم نافذة "
+#~ "باستخدام لوحة المفاتيح. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، "
+#~ "و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لإخفاء كل النّوافذ العاديّة و ضبط التّركيز على خلفيّة "
+#~ "سطح المكتب. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك "
+#~ "الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتكبير نافذةٍ لأقصى حجم. النّسق شبيهٌ بـ \"&lt;"
+#~ "Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و "
+#~ "يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;"
+#~ "Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك "
+#~ "رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لإخفاء نافذة. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" "
+#~ "أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة "
+#~ "أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا "
+#~ "ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا "
+#~ "الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ نحو الأسفل مساحة عملٍ واحدة. النّسق "
+#~ "شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل "
+#~ "مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;"
+#~ "Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled"
+#~ "\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ نحو اليسار مساحة عملٍ واحدة. النّسق "
+#~ "شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل "
+#~ "مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;"
+#~ "Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled"
+#~ "\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ نحو اليمين مساحة عملٍ واحدة. النّسق "
+#~ "شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل "
+#~ "مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;"
+#~ "Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled"
+#~ "\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ نحو الأعلى مساحة عملٍ واحدة. النّسق "
+#~ "شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل "
+#~ "مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;"
+#~ "Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled"
+#~ "\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 1. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 10. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 11. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 12. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 2. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 3. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 4. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 5. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 6. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 7. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 8. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتحريك نافذةٍ إلى مساحة العمل 9. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز إلى الخلف بين الشّرائط و سطح المكتب "
+#~ "باستخدام نافذةٍ قافزة. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، "
+#~ "و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز إلى الخلف بين الشّرائط و سطح المكتب "
+#~ "بدون نافذةٍ قافزة. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك "
+#~ "الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز إلى الخلف بين نوافذ التطبيق بدون "
+#~ "نافذةٍ قافزة. الضّغط على \"shift\" مع هذا الرّابط يغيّر الاتّجاه إلى الأمام "
+#~ "مجدّدًا. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل "
+#~ "\"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة "
+#~ "\"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز إلى الخلف بين نوافذ التطبيق باستخدام "
+#~ "نافذةٍ قافزة. الضّغط على \"shift\" مع هذا الرّابط يغيّر الاتّجاه إلى الأمام "
+#~ "مجدّدًا. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل "
+#~ "\"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة "
+#~ "\"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز إلى الخلف بين الشّرائط و سطح المكتب "
+#~ "بدون نافذةٍ قافزة. الضّغط على \"shift\" مع هذا الرّابط يغيّر الاتّجاه إلى "
+#~ "الأمام مجدّدًا. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك "
+#~ "الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز إلى الخلف بين الشّرائط و سطح المكتب "
+#~ "باستخدام نافذةٍ قافزة. الضّغط على \"shift\" مع هذا الرّابط يغيّر الاتّجاه إلى "
+#~ "الأمام مجدّدًا. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك "
+#~ "الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز بين الشّرائط و سطح المكتب باستخدام "
+#~ "نافذةٍ قافزة. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك "
+#~ "الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز بين الشّرائط و سطح المكتب بدون نافذةٍ "
+#~ "قافزة. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل "
+#~ "\"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة "
+#~ "\"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز بين نوافذ التطبيق بدون نافذةٍ قافزة. "
+#~ "(تقليديًّا &lt;Alt&gt;Escape). الضّغط على \"shift\" عند استخدام هذا الرّابط "
+#~ "يعكس اتّجاه الحركة. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك "
+#~ "الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز بين نوافذ التطبيق باستخدام نافذةٍ "
+#~ "قافزة. (تقليديًّا &lt;Alt&gt;Escape). الضّغط على \"shift\" عند استخدام هذا "
+#~ "الرّابط يعكس اتّجاه الحركة. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، "
+#~ "و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز إلى الخلف بين الشّرائط و سطح المكتب "
+#~ "بدون نافذةٍ قافزة. (تقليديًّا &lt;Alt&gt;Escape). الضّغط على \"shift\" عند "
+#~ "استخدام هذا الرّابط يعكس اتّجاه الحركة. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" "
+#~ "أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة "
+#~ "أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا "
+#~ "ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا "
+#~ "الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لنقل التّركيز إلى الخلف بين الشّرائط و سطح المكتب "
+#~ "باستخدام نافذةٍ قافزة. (تقليديًّا &lt;Alt&gt;Escape). الضّغط على \"shift\" "
+#~ "عند استخدام هذا الرّابط يعكس اتّجاه الحركة. النّسق شبيهٌ بـ \"&lt;Control&gt;a"
+#~ "\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ "
+#~ "كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". "
+#~ "إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ "
+#~ "لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم للتّقليب بين وجود النّافذة في الأعلى دائمًا أم لا. "
+#~ "النّافذة الموجودة في الأعلى دائمًا ستكون مرئيّةً فوق النّوافذ الأخرى التي تشغل "
+#~ "نفس المساحة. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك "
+#~ "الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتفعيل وضع ملأ الشّاشة. النّسق شبيهٌ بـ \"&lt;"
+#~ "Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و "
+#~ "يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;"
+#~ "Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك "
+#~ "رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لتفعيل التّكبير لأقصى حجم. النّسق شبيهٌ بـ \"&lt;"
+#~ "Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و "
+#~ "يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;"
+#~ "Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك "
+#~ "رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم للتّقليب بين حالة الإخفاء/عدم الاخفي. النّسق شبيهٌ "
+#~ "بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ "
+#~ "نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;"
+#~ "\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن "
+#~ "يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم للتّقليب بين وجود النّافذة على جميع مساحات العمل أو "
+#~ "مساحةٍ واحدة فقط. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك "
+#~ "الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار "
+#~ "للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح المستخدم لإلغاء تكبير النّافذة لأقصى حجم. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يعرض صندوق حوار الشّريط \"تشغيل تطبيق\". النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يظهر شاشة طرفية. النّسق شبيهٌ بـ \"&lt;Control&gt;a\" "
+#~ "أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة "
+#~ "أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا "
+#~ "ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا "
+#~ "الإجراء."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي ينشّط أداة الشّريط لأخذ صورةٍ لنافذة. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي ينشّط أداة الشّريط لأخذ صورةٍ سريعة للشّاشة. النّسق شبيهٌ "
+#~ "بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ "
+#~ "نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;"
+#~ "\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن "
+#~ "يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يظهر قائمة الشّريط الرّئيسيّة. النّسق شبيهٌ بـ \"&lt;"
+#~ "Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و "
+#~ "يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;"
+#~ "Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك "
+#~ "رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح الذي يغيّر ما إذا كانت نافذةٌ تحت أم فوق النّوافذ الأخرى. اذا "
+#~ "كانت النّافذة مغطاةً بنافذة أخرى، فسيرفع النّافذة فوق النّوافذ الأخرى، إذا "
+#~ "كانت النّافذة ظاهرةً تمامًا، فسينزل النّافذة تحت النّوافذ الأخرى. النّسق شبيهٌ "
+#~ "بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ "
+#~ "نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;"
+#~ "\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن "
+#~ "يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا يخفّض نافذةً تحت نوافذٍ أخرى. النّسق شبيهٌ بـ \"&lt;"
+#~ "Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و "
+#~ "يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;"
+#~ "Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك "
+#~ "رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا ينقل نافذة باتجاه شمال (قمّة) الشاشة. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding moves a window into the center of the screen. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا ينقل نافذة باتجاه غرب (يسار) الشاشة.. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا نقل نافذة إلى شرق (يمين) الشاشة. النّسق شبيهٌ بـ \"&lt;"
+#~ "Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و "
+#~ "يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;"
+#~ "Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك "
+#~ "رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا نقل نافذة إلى زاوية الشاشة الشمال-شرقيّة (أعلى اليمين). "
+#~ "النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل "
+#~ "\"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة "
+#~ "\"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا نقل نافذة إلى زاوية الشاشة الشمال-غربيّة (أعلى اليسار). "
+#~ "النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل "
+#~ "\"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة "
+#~ "\"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا نقل نافذة إلى جنوب (قاع) الشاشة. النّسق شبيهٌ بـ \"&lt;"
+#~ "Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و "
+#~ "يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;"
+#~ "Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك "
+#~ "رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا نقل نافذة إلى زاوية الشاشة الجنوب-شرقيّة (أدنى اليمين). "
+#~ "النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل "
+#~ "\"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة "
+#~ "\"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا نقل نافذة إلى زاوية الشاشة الجنوب-غربيّة (أدنى اليسار). "
+#~ "النّسق شبيهٌ بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "المحلّل مرنٌ نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل "
+#~ "\"&lt;Ctl&gt;\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة "
+#~ "\"disabled\"، فلن يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا ينقل نافذة باتجاه غرب (يسار) الشاشة.. النّسق شبيهٌ بـ "
+#~ "\"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا "
+#~ "ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و "
+#~ "\"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون "
+#~ "هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا يرفع نافذةً فوق نوافذٍ أخرى. النّسق شبيهٌ بـ \"&lt;"
+#~ "Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ نوعًا ما و "
+#~ "يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;\" و \"&lt;"
+#~ "Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن يكون هناك "
+#~ "رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا يحجّم نافذةً لملئ المساحة الأفقيّة المتوفّرة. النّسق شبيهٌ "
+#~ "بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ "
+#~ "نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;"
+#~ "\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن "
+#~ "يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ارتباط المفتاح هذا يحجّم نافذةً لملئ المساحة العموديّة المتوفّرة. النّسق شبيهٌ "
+#~ "بـ \"&lt;Control&gt;a\" أو \"&lt;Shift&gt;&lt;Alt&gt;F1\". المحلّل مرنٌ "
+#~ "نوعًا ما و يسمح بحروفٍ كبيرة أو صغيرة، و كذلك الاختصارات مثل \"&lt;Ctl&gt;"
+#~ "\" و \"&lt;Ctrl&gt;\". إذا ضبطت الخيار للسّلسلة الخاصّة \"disabled\"، فلن "
+#~ "يكون هناك رابط مفتاحٍ لهذا الإجراء."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "بدّل حالة دائمًا على القمّة"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "ألغي تكبير النّافذة"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "ألغي تكبير النافذة"
+
+#~ msgid "Title"
+#~ msgstr "العنوان"
+
+#~ msgid "Class"
+#~ msgstr "الطبقة"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "لا صفة \"%s\" على العنصر <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "للسِمة أيقونة احتياطيّة بالفعل"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "للسِمة أيقونة صغيرة (mini_icon) احتياطيّة بالفعل"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "لا صفة \"اسم\" على العنصر <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "لا صفة \"قيمة\" على العنصر <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "لا صفة \"أعلى\" على العنصر <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "لا صفة \"أسفل\" على العنصر <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "لا صفة \"يسار\" على العنصر <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "لا صفة \"يمين\" على العنصر <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "لا صفة \"لون\" على العنصر <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "لا صفة \"س1\" على العنصر <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "لا صفة \"ص1\" على العنصر <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "لا صفة \"س2\" على العنصر <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "لا صفة \"ص2\" على العنصر <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "لا صفة \"ص\" على العنصر <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "لا صفة \"عرض\" على العنصر <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "لا صفة \"ارتفاع\" على العنصر <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "لا صفة \"start_angle\" على العنصر <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "لا صفة \"extent_angle\" على العنصر <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "لا صفة \"ألفا\" على العنصر <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "لا صفة \"النوع\" على العنصر <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "لا صفة \"اسم ملف\" على العنصر <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "لا صفة \"حالة\" على العنصر <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "لا صفة \"ظل\" على العنصر <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "لا صفة \"سهم\" على العنصر <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "لا صفة \"قيمة\" على العنصر <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "لا صفة \"موقع\" على العنصر <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "لا صفة \"وظيفة\" على العنصر <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "لا صفة \"حالة\" على العنصر <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "لا صفة \"تركيز\" على العنصر <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "لا صفة \"أسلوب\" على العنصر <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "لا صفة \"تحجيم\" على العنصر <%s>"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> محدد مرتان لهذه السِمة"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> محدد مرتان لهذه السِمة"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> محدد مرتان لهذه السِمة"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> محدد مرتان لهذه السِمة"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "نوع %s لم يكن عددا صحيحا"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d المحفوظ في مفتاح MateConf %s ليس عددا معقولا لمساحات العمل، يجب أن يكون "
+#~ "بين 1 و 128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d المحفوظ في مفتاح MateConf %s ليس عدد معقول لمساحات العمل، الحدالأقصى "
+#~ "الحالي هو %d\n"
diff --git a/po/as.po b/po/as.po
new file mode 100644
index 00000000..d52bd939
--- /dev/null
+++ b/po/as.po
@@ -0,0 +1,3706 @@
+# translation of as.po to Assamese
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Amitakhya Phukan <[email protected]>, 2008, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: as\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug."
+"cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2009-08-24 17:51+0000\n"
+"PO-Revision-Date: 2009-09-19 13:45+0530\n"
+"Last-Translator: \n"
+"Language-Team: Assamese <>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Lokalize 0.2\n"
+"Plural-Forms: nplurals=2; plural=(n!=1)\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "ডেস্কটপ"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Window Management"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "ঘন্টা সম্পৰ্কিত ঘটনা"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Unknown window information request: %d"
+
+#: ../src/core/delete.c:104
+#, c-format
+#| msgid ""
+#| "You may choose to wait a short while for it to continue or force the "
+#| "application to quit entirely."
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+"<big><b><tt>%s</tt> ৰ পৰা কোনো প্ৰতিক্ৰিয়া পোৱা নাযায় ।</b></big>\n"
+"\n"
+"<i>এপ্লিকেশন বন্ধ কৰাৰ বাবে কিছু সময় অপেক্ষা কৰা যাব বা এপ্লিকেশন "
+"বলপূৰ্বক বন্ধ কৰা যাব ।</i>"
+
+#: ../src/core/delete.c:115
+msgid "_Wait"
+msgstr "অপেক্ষা (_W)"
+
+#: ../src/core/delete.c:115
+msgid "_Force Quit"
+msgstr "বলপূৰ্বক বন্ধ কৰক (_F)"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "গৃহস্থৰনাম প্ৰাপ্ত কৰোঁতে ব্যৰ্থ: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Missing %s extension required for compositing"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X উইন্ডো ব্যৱস্থাপ্ৰণালী প্ৰদৰ্শন খোলোঁতে ব্যৰ্থ '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"প্ৰদৰ্শন '%s' ৰ সৈতে সংযোগ বিচ্ছিন্ন হৈছে;\n"
+"সম্ভৱত X সেৱক বন্ধ কৰা হৈছে বা উইন্ডো পৰিচালন ব্যৱস্থা kill/বন্ধ\n"
+"কৰা হৈছে ।\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "গুৰুতৰ IO সমস্যা %d (%s) '%s' প্ৰদৰ্শনত ।\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "এটা পৃথক প্ৰোগ্ৰাম দ্বাৰা বৰ্তমানে %s চাবি, %x বাইন্ডিং সহ ব্যৱহৃত হৈছে\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+#| msgid ""
+#| "There was an error running \"%s\":\n"
+#| "%s."
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> সঞ্চালনত সমস্যা:\n
\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "%d আদেশ ব্যাখ্যা কৰা নহয় ।\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "টাৰ্মিনেলত ব্যৱহাৰযোগ্য কোনো আদেশ ব্যাখ্যা কৰা নহয় ।\n"
+
+#: ../src/core/main.c:130
+#, c-format
+#| msgid ""
+#| "marco %s\n"
+#| "Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+#| "This is free software; see the source for copying conditions.\n"
+#| "There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+#| "PARTICULAR PURPOSE.\n"
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n
Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n
This is "
+"free software; see the source for copying conditions.\n
There is NO warranty; not even for "
+"MERCHANTABILITY or FITNESS FOR A 
PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:268
+msgid "Disable connection to session manager"
+msgstr "অধিবেশন পৰিচালনব্যৱস্থাৰ সৈতে সংযোগ বিচ্ছিন্ন কৰা হ'ব"
+
+#: ../src/core/main.c:274
+msgid "Replace the running window manager with Marco"
+msgstr "বৰ্তমানে ব্যৱহৃত উইন্ডো পৰিচালন ব্যৱস্থাৰ পৰিবৰ্তে Marco প্ৰয়োগ কৰা হ'ব"
+
+#: ../src/core/main.c:280
+msgid "Specify session management ID"
+msgstr "অধিবেশন পৰিচালনাৰ ID উল্লেখ কৰক"
+
+#: ../src/core/main.c:285
+msgid "X Display to use"
+msgstr "ব্যৱহাৰৰ বাবে X প্ৰদৰ্শন"
+
+#: ../src/core/main.c:291
+msgid "Initialize session from savefile"
+msgstr "সংৰক্ষণ নথিপত্ৰৰ পৰা অধিবেশন আৰম্ভ কৰক"
+
+#: ../src/core/main.c:297
+msgid "Print version"
+msgstr "সংস্কৰণ মুদ্ৰণ কৰক"
+
+#: ../src/core/main.c:303
+msgid "Make X calls synchronous"
+msgstr "X স্থানাঙ্ক"
+
+#: ../src/core/main.c:309
+#| msgid "Compositing Manager"
+msgid "Turn compositing on"
+msgstr "কম্পোছিটিং ব্যৱস্থা আৰম্ভ কৰক"
+
+#: ../src/core/main.c:315
+msgid "Turn compositing off"
+msgstr "কম্পোছিটিং ব্যৱস্থা বন্ধ কৰক"
+
+#: ../src/core/main.c:321
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"সৰ্বাধিক মাপত স্থাপিত সাজসজ্জাবিহীন উইন্ডোসমূহৰ ক্ষেত্ৰত সম্পূৰ্ণ পৰ্দাত প্ৰদৰ্শন ব্যৱস্থা "
+"প্ৰয়োগ কৰা ন'হ'ব"
+
+#: ../src/core/main.c:543
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "থীমৰ পঞ্জিকা স্কেন কৰোঁতে ব্যৰ্থ: %s\n"
+
+#: ../src/core/main.c:559
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+
+#: ../src/core/main.c:618
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "পুনৰাৰম্ভ কৰোঁতে ব্যৰ্থ: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf চাবি \"%s\"'ৰ মান বৈধ নহয়\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+#| msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d মান যি MateConf চাবি %s ত সংৰক্ষিত আছে, %d ৰ পৰা %d ৰ সীমাবসহিৰ্ভূত\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf চাবি \"%s\"'ৰ ধৰণ বৈধ নহয়\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"ক্ষতিগ্ৰস্ত অনুপ্ৰয়োগেৰ ত্ৰুটি অগ্ৰাহ্য কৰাৰ প্ৰণালী নিষ্ক্ৰিয় কৰা হৈছে । কয়েকটি অনুপ্ৰয়োগ "
+"সম্ভৱত সঠিকৰূপে চলোৱা সম্ভৱ হ'ব না ।\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "\"%s\" ফন্টৰ বিৱৰণ MateConf চাবি %sৰ পৰা বিশ্লেষণ কৰোঁতে ব্যৰ্থ\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "বিন্যাস তথ্যভঁৰালত উপস্থিত \"%s\" মাউচ বুটাম পৰিবৰ্তকৰ বাবে বৈধ মান নহয়\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "কামক্ষেত্ৰতৰ সংখ্যা %d ৰূপে নিৰ্ধাৰণ কৰোঁতে ব্যৰ্থ: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "কামক্ষেত্ৰ %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "বিন্যাস তথ্যভঁৰালত উপলব্ধ \"%s\", \"%s\" কি-বাইন্ডিং'ৰ ক্ষেত্ৰত বৈধ মান নহয়\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "কামক্ষেত্ৰ %d'ৰ নাম \"%s\" ৰূপে নিৰ্ধাৰণ কৰোঁতে ব্যৰ্থ: %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+#| msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgid "Error setting compositor status: %s\n"
+msgstr "কম্পোছিটাৰৰ অৱস্থা নিৰ্ধাৰণ কৰিবলৈ ত্ৰুটি: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "পৰ্দা %d (প্ৰদৰ্শন '%s') বৈধ নহয়\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"পৰ্দা %d'ৰ (\"%s\" প্ৰদৰ্শন) ক্ষেত্ৰত এটা উইন্ডো পৰিচালনব্যৱস্থা বৰ্তমানে উপস্তিত আছে; "
+"বৰ্তমানে উইন্ডো পৰিচালন ব্যৱস্থা পৰিবৰ্তন কৰোঁতে --replace বিকল্প প্ৰয়োগ কৰক ।\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"পৰ্দা %d (প্ৰদৰ্শন \"%s\")'ত উইন্ডো পৰিচালন ব্যৱস্থাৰ নিৰ্বাচিত অংশ গ্ৰহণ কৰোঁতে "
+"ব্যৰ্থ\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "পৰ্দা %d'ৰ ( \"%s\" প্ৰদৰ্শন) ক্ষেত্ৰত এটা উইন্ডো পৰিচালন ব্যৱস্থা উপস্থিত আছে\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "পৰ্দা %d (প্ৰদৰ্শন \"%s\") মুক্ত কৰোঁতে ব্যৰ্থ\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+#| msgid ""
+#| "The keybinding used to close a window. The format looks like \"&lt;"
+#| "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#| "liberal and allows lower or upper case, and also abbreviations such as "
+#| "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#| "special string \"disabled\", then there will be no keybinding for this "
+#| "action."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"\"<Control>a\" বা <Shift><Alt>F1\" ৰ অনুৰূপ বিন্যাস ব্যৱহৃত হ'ব ।\n"
+"\n"
+"পাৰ্ছাৰ আখৰৰ সৰু ডাঙৰ সম্পৰ্কে সচেতন নহয় আৰু প্ৰয়োজনত \"<Ctl>\" আৰু \"<Ctrl>\" ৰ অনুৰূপ "
+"
সংক্ষিপ্ত ৰূপো ব্যৱহাৰ কৰা যাব । বিকল্পৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ 
কৰিলে এই "
+"কামৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা ন'হ'ব ।"
+
+#: ../src/core/schema-bindings.c:177
+#| msgid ""
+#| "The keybinding used to close a window. The format looks like \"&lt;"
+#| "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#| "liberal and allows lower or upper case, and also abbreviations such as "
+#| "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#| "special string \"disabled\", then there will be no keybinding for this "
+#| "action."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"\"<Control>a\" বা <Shift><Alt>F1\" ৰ অনুৰূপ বিন্যাস ব্যৱহৃত হ'ব ।\n"
+"\n"
+"পাৰ্ছাৰ আখৰৰ সৰু ডাঙৰ সম্পৰ্কে সচেতন নহয় আৰু প্ৰয়োজনত \"<Ctl>\" আৰু \"<Ctrl>\" ৰ অনুৰূপ "
+"সংক্ষিপ্ত ৰূপো ব্যৱহাৰ কৰা যাব । বিকল্পৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ "
+"কৰিলে এই কামৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা ন'হ'ব ।\n"
+"\n"
+"\"shift\" চাবি টিপা হ'লে কি-বাইন্ডিংসমূহৰ বিপৰীত ব্যৱহাৰ কৰা হ'ব; অৰ্থাৎ, \"shift\" 
চাবি এই "
+"ক্ষেত্ৰত ব্যৱহাৰ কৰা নাযাব ।"
+
+#: ../src/core/session.c:845 ../src/core/session.c:852
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "পঞ্জিকা '%s' নিৰ্মাণ কৰোঁতে ব্যৰ্থ: %s\n"
+
+#: ../src/core/session.c:862
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "লিখাৰ উদ্দেশ্যে সেশান নথিপত্ৰ '%s' খোলোঁতে ব্যৰ্থ: %s\n"
+
+#: ../src/core/session.c:1003
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "সেশান নথিপত্ৰ '%s' লিখতে ব্যৰ্থ: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "সেশান নথিপত্ৰ '%s' বন্ধ কৰোঁতে ব্যৰ্থ: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1101
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "সংৰক্ষিত সেশান নথিপত্ৰ %s পঢ়োঁতে ব্যৰ্থ: %s\n"
+
+#: ../src/core/session.c:1140
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "সংৰক্ষিত সেশান নথিপত্ৰ বিশ্লেষণ কৰোঁতে ব্যৰ্থ: %s\n"
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> বৈশিষ্ট্য প্ৰদৰ্শিত কিন্তু সেশান ID বৰ্তমানে উপস্থিত আছে"
+
+#: ../src/core/session.c:1202 ../src/core/session.c:1277
+#: ../src/core/session.c:1309 ../src/core/session.c:1381
+#: ../src/core/session.c:1441
+#, c-format
+#| msgid "Unknown attribute %s on <window> element"
+msgid "Unknown attribute %s on <%s> element"
+msgstr "অজ্ঞাত বৈশিষ্ট্য %s <%s> পদাৰ্থত চিহ্নিত হৈছে"
+
+#: ../src/core/session.c:1219
+#, c-format
+msgid "nested <window> tag"
+msgstr "নেস্টেড <window> টেগ"
+
+#: ../src/core/session.c:1461
+#, c-format
+msgid "Unknown element %s"
+msgstr "অজ্ঞাত স্বত্বা %s"
+
+#: ../src/core/session.c:1812
+#| msgid ""
+#| "These windows do not support \"save current setup\" and will have to be "
+#| "restarted manually next time you log in."
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"এই উইন্ডোসমূহৰ দ্বাৰা &quot;save current setup&quot; বৈশিষ্ট্য সমৰ্থিত নহয় আৰু "
+"পিছত প্ৰৱেশ কৰিলে ব্যৱহাৰকৰ্তাৰ দ্বাৰা পুনৰায় আৰম্ভ কৰা প্ৰয়োজন ।"
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "ডিবাগ লগ খোলোঁতে ব্যৰ্থ: %s\n"
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "fdopen() লগ নথিপত্ৰ %s খোলোঁতে ব্যৰ্থ: %s\n"
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "লগ নথিপত্ৰ %s খোলা হৈছে\n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "ভাৰ্বোস মোডেৰ সমৰ্থন অন্তৰ্ভুক্ত না কৰি Marco কম্পাইল কৰা হৈছে\n"
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "উইন্ডো পৰিচালন ব্যৱস্থা: "
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr "উইন্ডো পৰিচালনব্যৱস্থা সংক্ৰান্ত সমস্যা: "
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr "উইন্ডো পৰিচালন ব্যৱস্থা সংক্ৰান্ত সতৰ্কবাৰ্তা: "
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr "উইন্ডো পৰিচালন ব্যৱস্থা সংক্ৰান্ত ত্ৰুটি: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5627
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"উইন্ডো %s দ্বাৰা ICCCM'এ নিৰ্ধাৰিত WM_CLIENT_LEADER উইন্ডোৰ পৰিবৰ্তে নিজেৰ ওপৰত "
+"SM_CLIENT_ID নিৰ্ধাৰিত হৈছে ।\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6192
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "অনুপ্ৰয়োগ দ্বাৰা ভুল _NET_WM_PID %lu নিৰ্ধাৰিত হৈছে\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s'ৰ ওপৰত)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (ছুপাৰ-ইউজাৰ ৰূপে)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+#| msgid "%s (on %s)"
+msgid "%s (as %s)"
+msgstr "%s (%s ৰূপে)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (অন্য ব্যৱহাৰকৰ্তা ৰূপে)"
+
+#: ../src/core/window-props.c:1429
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "অবৈধ WM_TRANSIENT_FOR উইন্ডো 0x%lx, %s'ৰ বাবে নিৰ্ধাৰিত হৈছে ।\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Property %s on window 0x%lx contained invalid UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "কামক্ষেত্ৰ ১'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "কামক্ষেত্ৰ ১৩'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "কামক্ষেত্ৰ ৩'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "কামক্ষেত্ৰ ৪'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "কামক্ষেত্ৰ ৫'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "কামক্ষেত্ৰ ৬'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "কামক্ষেত্ৰ ৭'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "কামক্ষেত্ৰ ৮'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "কামক্ষেত্ৰ ৯'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "কামক্ষেত্ৰ ১'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "কামক্ষেত্ৰ ১১'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "কামক্ষেত্ৰ ১২'এ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:122
+#| msgid "Switch to workspace on the left"
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "বাওঁফালৰ পাৰ্শ্ববৰ্তী কামক্ষেত্ৰত পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:126
+#| msgid "Switch to workspace on the right"
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "সোঁফালৰ পাৰ্শ্ববৰ্তী কামক্ষেত্ৰত পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:130
+#| msgid "Switch to workspace above this one"
+msgid "Switch to workspace above the current workspace"
+msgstr "ঊৰ্ধস্থ কামক্ষেত্ৰত পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:134
+#| msgid "Switch to workspace below this one"
+msgid "Switch to workspace below the current workspace"
+msgstr "নিম্নস্থিত কামক্ষেত্ৰত পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:150
+#| msgid "Move between windows of an application with popup"
+msgid "Move between windows of an application, using a popup window"
+msgstr "এপ্লিকেশনৰ উইন্ডোসমূহত পপ-আপ উইন্ডো প্ৰয়োগ কৰি স্থান পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:153
+#| msgid "Move backwards between windows of an application with popup"
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "এপ্লিকেশনৰ উইন্ডোসমূহত পপ-আপ উইন্ডো প্ৰয়োগ কৰি বিপৰীতফালে স্থান পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:157
+#| msgid "Move between windows with popup"
+msgid "Move between windows, using a popup window"
+msgstr "উইন্ডোসমূহত পপ-আপ উইন্ডো প্ৰয়োগ কৰি স্থান পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:160
+#| msgid "Move focus backwards between windows using popup display"
+msgid "Move backward between windows, using a popup window"
+msgstr "উইন্ডোসমূহত পপ-আপ উইন্ডো প্ৰয়োগ কৰি বিপৰীতফালে স্থান পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:163
+#| msgid "Move between panels and the desktop with popup"
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "পেনেল আৰু ডেস্কটপত পপ-আপ উইন্ডো প্ৰয়োগ কৰি স্থান পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:166
+#| msgid "Move backwards between panels and the desktop with popup"
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "পেনেল আৰু ডেস্কটপত পপ-আপ উইন্ডো প্ৰয়োগ কৰি বিপৰীত দিশত স্থান পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "অনুপ্ৰয়োগেৰ উইন্ডোসমূহত তৎক্ষনাৎ স্থান পৰিবৰ্তন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:174
+#| msgid "Move backwards between windows of an application immediately"
+msgid "Move backward between windows of an application immediately"
+msgstr "এপ্লিকেশনৰ উইন্ডোসমূহত তৎক্ষনাৎ বিপৰীতফালে স্থান পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "উইন্ডোসমূহত তৎক্ষনাৎ স্থান পৰিবৰ্তন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:180
+#| msgid "Move backwards between windows immediately"
+msgid "Move backward between windows immediately"
+msgstr "উইন্ডোসমূহত তৎক্ষনাৎ বিপৰীতফালে স্থান পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "পেনেল আৰু ডেস্কটপত তৎক্ষনাৎ স্থান পৰিবৰ্তন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "পেনেল আৰু ডেস্কটপত তৎক্ষনাৎ বিপৰীত দিশত স্থান পৰিবৰ্তন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:191
+#| msgid "Hide all windows and focus desktop"
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "সমস্ত সাধাৰণ উইন্ডো লুকাই ডেস্কটপ উজ্জ্ব কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:194
+#| msgid "Show the panel menu"
+msgid "Show the panel's main menu"
+msgstr "পেনেলৰ প্ৰধান মেনু প্ৰদৰ্শন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:197
+#| msgid "Show the panel run application dialog"
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "পেনেলৰ \"এপ্লিকেশন সঞ্চালনা\" ৰ ডায়লগ বক্স প্ৰদৰ্শন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "পৰ্দাৰ ছবি নিন"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "উইন্ডোৰ ছবি নিন"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "টাৰ্মিনেল আৰম্ভ কৰক"
+
+#: ../src/include/all-keybindings.h:257
+#| msgid "Activate window menu"
+msgid "Activate the window menu"
+msgstr "উইন্ডো মেনু সক্ৰিয় কৰক"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Toggle fullscreen mode"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "সৰ্বোচ্চ মাপত প্ৰদৰ্শনৰ অৱস্থা অদল-বদল কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:264
+#| msgid "Lower window below other windows"
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "উইন্ডো সদায়ে অন্য সকলো উইন্ডোৰ ওপৰত প্ৰদৰ্শিত হ'ব নে নহয় সেইটো টগল কৰি চিহ্নিত কৰক"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "উইন্ডো বড় কৰক"
+
+#: ../src/include/all-keybindings.h:268
+#| msgid "Resize window"
+msgid "Restore window"
+msgstr "উইন্ডো প্ৰদৰ্শন কৰক"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "ছায়াবৃত প্ৰদৰ্শনৰ অৱস্থা অদল-বদল কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "উইন্ডো আড়াল কৰক"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "উইন্ডো বন্ধ কৰক"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "উইন্ডো স্থানান্তৰণ"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "উইন্ডোৰ মাপ পৰিবৰ্তন কৰক"
+
+#: ../src/include/all-keybindings.h:281
+#| msgid "Toggle window on all workspaces"
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"সকলো কামক্ষেত্ৰ বা এটা কামক্ষেত্ৰত উইন্ডো প্ৰদৰ্শন কৰা হ'ব নে নহয় সেইটো টগল কৰি "
+"চিহ্নিত কৰক"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "কামক্ষেত্ৰ ১'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "কামক্ষেত্ৰ ২'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "কামক্ষেত্ৰ ৩'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "কামক্ষেত্ৰ ৪'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "কামক্ষেত্ৰ ৫'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "কামক্ষেত্ৰ ৬'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "কামক্ষেত্ৰ ৭'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "কামক্ষেত্ৰ ৮'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "কামক্ষেত্ৰ ৯'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "কামক্ষেত্ৰ ১০'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "কামক্ষেত্ৰ ১১'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "কামক্ষেত্ৰ ১২'এ স্থানান্তৰ কৰক"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "উইন্ডো বাওঁফালৰ পাৰ্শ্ববৰ্তী কামক্ষেত্ৰত স্থানান্তৰণ কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "উইন্ডো সোঁফালৰ পাৰ্শ্ববৰ্তী কামক্ষেত্ৰত স্থানান্তৰণ কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "উইন্ডো এটা কামক্ষেত্ৰ ওপৰত স্থানান্তৰণ কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "উইন্ডো এটা কামক্ষেত্ৰ তলত স্থানান্তৰণ কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:342
+#| msgid "Raise obscured window, otherwise lower"
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"অন্য উইন্ডো দ্বাৰা ঢকা থাকিলে উইন্ডোৰ ওপৰত উইন্ডো উত্থাপন কৰা হ'ব, অন্যথা তাক "
+"তলত নমোৱা হ'ব"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "অন্যান্য উইন্ডোৰ ওপৰত উইন্ডো উত্থাপন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "উইন্ডোটিকে অন্য উইন্ডোৰ তলত নমোৱা হ'ব"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "উইন্ডো উলম্ব দিশত বড় কৰক"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "উইন্ডো অনুভূমিক দিশত বড় কৰক"
+
+#: ../src/include/all-keybindings.h:358
+#| msgid "Move window to north-west corner"
+msgid "Move window to north-west (top left) corner"
+msgstr "পৰ্দাৰ ওপৰত বাওঁফালৰ কোণত উইন্ডো স্থাপন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:361
+#| msgid "Move window to north-east corner"
+msgid "Move window to north-east (top right) corner"
+msgstr "পৰ্দাৰ ওপৰত সোঁফালৰ কোণত উইন্ডো স্থাপন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:364
+#| msgid "Move window to south-west corner"
+msgid "Move window to south-west (bottom left) corner"
+msgstr "পৰ্দাৰ তলত বাওঁফালৰ কোণত উইন্ডো স্থাপন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:367
+#| msgid "Move window to south-east corner"
+msgid "Move window to south-east (bottom right) corner"
+msgstr "পৰ্দাৰ তলত সোঁফালৰ কোণত উইন্ডো স্থাপন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:371
+#| msgid "Move window to north side of screen"
+msgid "Move window to north (top) side of screen"
+msgstr "পৰ্দাৰ ওপৰৰ অংশত উইন্ডো স্থাপন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:374
+#| msgid "Move window to south side of screen"
+msgid "Move window to south (bottom) side of screen"
+msgstr "পৰ্দাৰ তলতৰ অংশত উইন্ডো স্থাপন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:377
+#| msgid "Move window to east side of screen"
+msgid "Move window to east (right) side of screen"
+msgstr "পৰ্দাৰ সোঁফালৰ অংশত উইন্ডো স্থাপন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:380
+#| msgid "Move window to west side of screen"
+msgid "Move window to west (left) side of screen"
+msgstr "পৰ্দাৰ বাওঁফালৰ অংশত উইন্ডো স্থাপন কৰা হ'ব"
+
+#: ../src/include/all-keybindings.h:383
+#| msgid "Move window to east side of screen"
+msgid "Move window to center of screen"
+msgstr "পৰ্দাৰ মাজত উইন্ডো স্থাপন কৰা হ'ব"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(কাৰ্যকৰী নহয়) উইন্ডোৰ পৰিবৰ্তে অনুপ্ৰয়োগ অনুসাৰে চলাচল কৰা সম্ভৱ"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"উইন্ডোৰ শিৰোনামে ব্যৱহৃত ফন্টেৰ ব্যাখ্যা ৰূপে এটা পংক্তি । titlebar_font_size "
+"বিকল্পৰ মান 0 ৰূপে ধাৰ্য কৰিলে ফন্টেৰ ব্যাখ্যায় উল্লিখিত ফন্টেৰ মাপ ব্যৱহৃত হ'ব । "
+"titlebar_uses_desktop_font বিকল্পৰ মান true হ'লে এই বিকল্পৰ ব্যৱহাৰ নিষ্ক্ৰিয় "
+"কৰা হ'ব ।"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "শিৰোনামৰ বাৰে দুবাৰ ক্লিক কৰিলে কৰণীয় কাম"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "কাজ চলি আছে ক্লিক কৰক"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "কাজ চলি আছে সোঁফালে ক্লিক কৰক"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "শিৰোনাম বাৰে বুটামৰ বিন্যাস"
+
+#: ../src/marco.schemas.in.in.h:7
+#| msgid ""
+#| "Arrangement of buttons on the titlebar. The value should be a string, "
+#| "such as \"menu:minimize,maximize,close\"; the colon separates the left "
+#| "corner of the window from the right corner, and the button names are "
+#| "comma-separated. Duplicate buttons are not allowed. Unknown button names "
+#| "are silently ignored so that buttons can be added in future marco "
+#| "versions without breaking older versions."
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"শিৰোনাম বাৰত বুটামৰ বিন্যাস । চিহ্নিত মান এটা পংক্তি হোৱা আৱশ্যক যেনে "
+"\"menu:minimize,maximize,spacer,close\"; কোলোন চিহ্ন দ্বাৰা উইন্ডোৰ বাওঁফালৰ "
+"কোণৰ আৰু সোঁফালৰ কোণৰ মান বিভাজিত কৰা হয় আৰু বুটামৰ নামসমূহ কমা-চিহ্ন দ্বাৰা "
+"বিভক্ত । দুটা বুটাম অনুৰূপ হোৱা সম্ভব নহয় । অজ্ঞাত বুটামৰ নাম সতৰ্কবাণী নোহোৱাকে অগ্ৰাহ্য কৰা "
+"হয় যাৰ ফলত ভবিষ্যতে প্ৰকাশিত marco ৰ সংস্কৰণৰ সৈতে নোহোৱাকে দ্বন্দ্বত বুটাম যোগ কৰা "
+"সম্ভব হ'ব । ওচৰাওচৰি স্থাপিত দুটা বুটামত ব্যৱধান সৃষ্টি কৰাৰ বাবে এটা বিশেষ "
+"spacer টেগ যোগ কৰা যাব ।"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "ব্যৱহৃত উইন্ডো স্বয়ংক্ৰিয়ৰূপে বড় কৰা হ'ব"
+
+#: ../src/marco.schemas.in.in.h:9
+#| msgid ""
+#| "Clicking a window while holding down this modifier key will move the "
+#| "window (left click), resize the window (middle click), or show the window "
+#| "menu (right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;"
+#| "Super&gt;\" for example."
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+"চিহ্নিত পৰিবৰ্তক চাবি টিপি ধৰি উইন্ডোৰ ওপৰত ক্লিক কৰিলে উইন্ডোৰ স্থান পৰিবৰ্তন "
+"(বাওঁফালৰ বুটামত ক্লিক), মাপ পৰিবৰ্তন (মধ্যবৰ্তী বুটামত ক্লিক) বা উইন্ডোৰ মেনু "
+"প্ৰদৰ্শন (সোঁফালৰ বুটামত ক্লিক) কৰা সম্ভব হ'ব । \"mouse_button_resize\" চাবি সহযোগে 
বাওঁফাল "
+"আৰু সোঁফালৰ বুটামৰ কামসমূহ অদলবদল কৰা যাব । পৰিবৰ্তক লিখাৰ বাবে \"&lt;"
+"Alt&gt;\" বা \"&lt;Super&gt;\" প্ৰভৃতি বিন্যাস ব্যৱহাৰ কৰা হয় ।"
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "কি-বাইন্ডিং ব্যৱহৃত হ'লে সঞ্চালনযোগ্য আদেশ"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "ম্যানেজাৰ"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "নতুন উইন্ড উজ্জ্বল কৰাৰ প্ৰণালী নিয়ন্ত্ৰণ কৰক"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "বৰ্তমানে ব্যৱহৃত থিম"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "স্বয়ংক্ৰিয়ৰূপে উইন্ডোৰ বড় কৰাৰ পূৰ্বে বিলম্বক্ষণ, মিলিসেকেন্ডে ব্যক্ত"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Marco হলো a."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"অনুপ্ৰয়োগ বা ব্যৱস্থাপ্ৰণালীেৰ দ্বাৰা শ্ৰুতিগম্য 'beeps' শব্দ উৎপন্ন কৰা হ'ব নে নহয় সেইটো "
+"নিৰ্ধাৰণ কৰি; নিঃশব্দ 'beeps' শব্দেৰ বাবে 'visual bell' ৰ সৈতে ব্যৱহাৰযোগ্য ।"
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"পুৰোনো বা ক্ষতিগ্ৰস্ত অনুপ্ৰয়োগেৰ ক্ষেত্ৰত আৱশ্যক ত্ৰুটিপূৰ্ণ বৈশিষ্ট্যেৰ ব্যৱহাৰ নিষ্ক্ৰিয় "
+"কৰা হ'ব"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Visual Bell সক্ৰিয় কৰা হ'ব"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"মান true ধাৰ্য কৰিলে আৰু উজ্জ্বল কৰাৰ মোড \"sloppy\" বা \"mouse\" হয়ে থাকিলে "
+"auto_raise_delay কি দ্বাৰা চিহ্নিত মিলিসেকেন্ড পৰে উজ্জ্বলিত উইন্ডোটি স্বয়ংক্ৰিয়ৰূপে "
+"বড় কৰা হ'ব । উইন্ডোৰ ওপৰত ক্লিক কৰি উইন্ডো বড় কৰাৰ বৈশিষ্ট্য বা ড্ৰ্যাগ-ড্ৰপ কাম "
+"সঞ্চালনকালে উইন্ডোত প্ৰবেশেৰ সৈতে এৰ কোনো সম্পৰ্ক নেই ।"
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"মান true হ'লে, titlebar_font বিকল্পটি অগ্ৰাহ্য কৰা হ'ব আৰু উইন্ডোৰ শিৰোনামৰ বাবে "
+"অনুপ্ৰয়োগেৰ ক্ষেত্ৰত চিহ্নিত প্ৰমিত ফন্ট ব্যৱহৃত হ'ব ।"
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"মান true হ'লে, marco দ্বাৰা ব্যৱহাৰকৰ্তাদেৰ কম ফিড-ব্যাক প্ৰদান কৰা হ'ব আৰু এৰ "
+"বাবে এনিমেশন প্ৰভৃতি উপেক্ষা কৰি ওয়াইৰ-ফ্ৰেম ব্যৱহাৰ কৰা হ'ব । এৰ ফলত অনেক "
+"ব্যৱহাৰকৰ্তাৰ ক্ষেত্ৰত ব্যৱহাৰযোগ্যতা হ্ৰাস পেলেও লিগাসি অনুপ্ৰয়োগ সঞ্চালন কৰা যাব "
+"আৰু টাৰমিনাল সেৱকৰ ক্ষেত্ৰত বিশেষ কামোপযোগিতা উপলব্ধ কৰবে । তথাপি সহায়ক "
+"প্ৰযুক্তিৰ ব্যৱহাৰ সক্ৰিয় থাকাকালীন ওয়াইৰ-ফ্ৰেমৰ ব্যৱহাৰ নিষ্ক্ৰিয় কৰা হয় ।"
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"মান true হ'লে, উইন্ডোৰ পৰিবৰ্তে Marco অনুপ্ৰয়োগ অনুযায়ী কাম সঞ্চালন কৰবে । "
+"অনুপ্ৰয়োগ-ভিত্তিক পৰিবেশ Mac'ৰ অনুৰূপ আৰু Windows'ৰ সৈতে এৰ সাদৃশ্য কম । অনুপ্ৰয়োগ-"
+"ভিত্তিক মোডে কোনে উইন্ডো উজ্জ্বল কৰিলে সংশ্লিষ্ট অনুপ্ৰয়োগেৰ সমস্ত উইন্ডো বড় কৰা হ'ব "
+" । ওপৰতন্তু উজ্জ্বল কৰাৰ সময় কৃত ক্লিক, উইন্ডোৰ মাধ্যমে অন্যান্য অনুপ্ৰয়োগে প্ৰৰিত নহয় । "
+"বাস্তবে অনুপ্ৰয়োগ-ভিত্তিক মোড বৰ্তমানে বিশেষ প্ৰয়োগ কৰা নহয় ।"
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "মান true হ'লে, ৰিসোৰ্সৰ ব্যৱহাৰ হ্ৰাস কৰোঁতে কামক্ষমতা হ্ৰাস কৰা হ'ব"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "পৰিবৰ্তিত উইন্ডো ক্লিক কামৰ ফলত ব্যৱহাৰযোগ্য পৰিবৰ্তক"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "কামক্ষেত্ৰতৰ নাম"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "কামক্ষেত্ৰতৰ সংখ্যা"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"কামক্ষেত্ৰতৰ সংখ্যা । শূণ্যেৰ অধিক হোৱা আৱশ্যক আৰু সৰ্বোচ্চ অনুমোদিত কামক্ষেত্ৰতৰ সংখ্যা "
+"চিহ্নিত হোৱা আৱশ্যক যাৰ ফলত ভুলবসত অত্যাধিক কামক্ষেত্ৰতৰ উপস্থিতিৰ ফলত ডেস্কটপ "
+"ক্ষতিগ্ৰস্ত না হয় ।"
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "এটা সুনিৰ্দিষ্ট আদেশ সঞ্চালন কৰক"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"\"mouse_button_modifier\" ত চিহ্নিত চাবি টিপ ধৰি, সোঁফালৰ বুটাম সহযোগে মাপ 
পৰিবৰ্তন আৰু মাজৰ "
+"বুটাম সহযোগে মেনু প্ৰদৰ্শন কৰাৰ বাবে এই মান true ধাৰ্য কৰক; "
+"বিপৰীত বৈশিষ্ট্য সহযোগে কাৰ্যকৰী কৰাৰ বাবে মান false ধাৰ্য কৰক ।"
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"এই বিকল্পৰ মান false নিৰ্ধাৰণ কৰিলে ত্ৰুটিপূৰ্ণ আচৰণ দেখা দিব পাৰে, "
+"এই কাৰণে অবিকল্পিত মান true পৰিবৰ্তন নকৰা বাঞ্ছনীয় । কিছু কামৰ (উদাহৰণ, "
+"ক্লায়েন্ট অঞ্চলত ক্লিক, উইন্ডোৰ মাপ পৰিবৰ্তন বা স্থানান্তৰ) পাৰ্শ্ব প্ৰতিক্ৰিয়া ৰূপে "
+"স্বাভাবিকভাবে উইন্ডো প্ৰদৰ্শন কৰা হয় । এই বিকল্প false ধাৰ্য কৰা "
+"অতিমাত্ৰাত অবাঞ্ছিত আৰু ইয়াৰ ফলত ব্যৱহাৰকৰ্তাৰ দ্বাৰা সঞ্চালিত অন্যান্য কামৰ কাৰণে "
+"উইন্ডো দৃশ্যমান কৰা ন'হ'ব আৰু অন্যান্য এপ্লিকেশনৰ পৰা আগত অনুৰোধ অগ্ৰাহ্য কৰা হ'ব । "
+"অধিক বিবৰণৰ বাবে http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6 চাওক । "
+"এই বিকল্পৰে মান false হ'লেও বিভিন্ন প্ৰক্ৰিয়াৰ, উইন্ডো দৃশ্যমান কৰা যাব: "
+"উইন্ডোত যি কোনো স্থানত alt-left-click কৰিলে, উইন্ডোৰ সাজসজ্জাৰ বাবে ব্যৱহৃত "
+"স্থানে স্বাভাবিক ক্লিক কৰিলে, বা পেজাৰৰ পৰা উৎপন্ন বিশেষ বাৰ্তা দ্বাৰা যেনে "
+"কাম তালিকাৰ এপ্লেটৰ পৰা প্ৰাপ্ত সক্ৰিয়কৰণৰ অনুৰোধ । বৰ্তমানে click-to-focus মোডত "
+"এই বিকল্প নিষ্ক্ৰিয় কৰা হৈছে । উল্লেখযোগ্য, raise_on_click বিকল্পৰ মান false হ'লে উইন্ডো "
+"দৃশ্যমান কৰাৰ বিভিন্ন প্ৰক্ৰিয়াসমূহত এপ্লিকেশনৰ প্ৰোগ্ৰাম দ্বাৰা "
+"উইন্ডো দৃশ্যমান কৰাৰ অনুৰোধসমূহ অন্তৰ্ভুক্ত কৰা নহয়; অনুৰোধৰ কাৰণ নিৰ্বিশেষে এই ধৰনত "
+"সকলো অনুৰোধ উপেক্ষা কৰা হ'ব । এই বৈশিষ্ট্য নিষ্ক্ৰিয় কৰাৰ ফলত কোনো এপ্লিকেশন নচলোৱা সম্ভব "
+"হ'লে, এপ্লিকেশন বিকাশকে সংশ্লিষ্ট ব্যৱহাৰকৰ্তাক এই বিকল্প "
+"পুনঃ true হিচাপে নিৰ্ধাৰণ কৰাৰ প্ৰস্তাব দিয়ে, অন্যথা এই \"বাগ\" সমাধান 
কৰা সম্ভৱ নহয় ।"
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"কয়েকটি অনুপ্ৰয়োগ দ্বাৰা সুনিৰ্দিষ্ট বৈশিষ্ট্যেৰ মান অগ্ৰাহ্য কৰা হয় যাৰ ফলত উইন্ডো "
+"পৰিচালন ব্যৱস্থা ক্ষতিগ্ৰস্ত হয় । এই বিকল্পৰ দ্বাৰা Marco সুস্পষ্টৰূপে সঠিক চালনাৰ "
+"মোডে স্থাপিত হ'ব যাৰ ফলত ইউজাৰ ইন্টাৰফেস তুলনামূলকৰূপে স্থায়ী হ'ব যদি কোনো "
+"অনুপ্ৰয়োগেৰ গতিবিধি উশৃঙ্খল না হয়ে থাকে ।"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "ব্যৱস্থাপ্ৰণালী ঘন্টি শোনা যাব"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"এৰ দ্বাৰা Marco'কে ব্যৱস্থাপ্ৰণালী ঘন্টি বা অন্য কোনো অনুপ্ৰয়োগেৰ 'ঘন্টি'ৰ পৰা "
+"উৎপন্ন শব্দেৰ সংকেত প্ৰদৰ্শনৰ নিৰ্দেশ প্ৰদান কৰা হয় । বৰ্তমানে দুটা বৈধ মান উপস্থিত "
+"আছে, \"fullscreen\" যাৰ ফলত সম্পূৰ্ণ পৰ্দা জুড়ে সাদা-কালো ঝলকানি হয় আৰু "
+"\"frame_flash\" যাৰ ফলত ঘন্টিৰ শব্দ উৎপন্নকৰ্তা অনুপ্ৰয়োগেৰ শিৰোনাম-বাৰে ঝলকানি "
+"সৃষ্টি কৰা হ'ব । শব্দ উৎপন্নকৰ্তা অনুপ্ৰয়োগেৰ পৰিচয় জানিবলৈ পাৰা না গেলে (অবিকল্পিত "
+"\"system beep (ব্যৱস্থাপ্ৰণালী বিপ)\"'ৰ ক্ষেত্ৰত) বৰ্তমানে উজ্জ্বলিত উইন্ডোৰ "
+"শিৰোনামৰ বাৰে ঝলকানি সৃষ্টি কৰা হ'ব ।"
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N কিসমূহ দ্বাৰা এই সমস্ত আদেশেৰ "
+"ক্ষেত্ৰত সংশ্লিস্ট কি-বাইন্ডিং ব্যাখ্যা কৰা হয় ।run_command_N'ৰ কি-বাইন্ডিং প্ৰয়োগ "
+"কৰিলে command_N সঞ্চালিত হ'ব ।"
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot কি দ্বাৰা এটা কি-"
+"বাইন্ডিং ব্যাখ্যা কৰা হয় যাৰ ফলত এই বৈশিষ্ট্য দ্বাৰা চিহ্নিত আদেশ সঞ্চালিত হ'ব ।"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot কি দ্বাৰা এটা "
+"কি-বাইন্ডিং ব্যাখ্যা কৰা হয় যাৰ ফলত এই বৈশিষ্ট্য দ্বাৰা চিহ্নিত আদেশ সঞ্চালিত হ'ব ।"
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"যে কি-বাইন্ডিং দ্বাৰা /apps/marco/keybinding_commandsৰ পৰা সংশ্লিষ্ট সংখ্যা "
+"দ্বাৰা চিহ্নিত আদেশ সঞ্চালিত হ'ব । \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ আখৰৰ সৰু ডাঙৰ সম্পৰ্কে সচেতন নহয় আৰু "
+"প্ৰয়োজনত \"&lt;Ctl&gt;\" আৰু \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপো ব্যৱহাৰ কৰা "
+"যাব । বিকল্পৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰিলে এই কামৰ বাবে "
+"কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "কামক্ষেত্ৰতৰ নাম"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "পৰ্দাৰ ছবি নেওয়াৰ আদেশ"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "থিম দ্বাৰা উইন্ডোৰ প্ৰান্ত, শিৰোনামৰ-বাৰ প্ৰভৃতিৰ বিন্যাস নিৰ্ধাৰিত হ'ব ।"
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr "পূৰ্বে a হলো হলো সৰ্বমোট a দ্বিতীয়."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr "তিন ক্লিক কৰক আৰু আৰু."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "উইন্ডোৰ ছবি নেওয়াৰ বাবে ব্যৱহৃত আদেশ"
+
+#: ../src/marco.schemas.in.in.h:44
+#| msgid ""
+#| "This option determines the effects of double-clicking on the title bar. "
+#| "Current valid options are 'toggle_shade', which will shade/unshade the "
+#| "window, 'toggle_maximize' which will maximize/unmaximize the window, "
+#| "'minimize' which will minimize the window, and 'none' which will not do "
+#| "anything."
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"শিৰোনাম-বাৰৰ ওপৰত দুবাৰ ক্লিক কৰাৰ সম্ভাব্য ফলাফল এই বিকল্প দ্বাৰা নিৰ্ধাৰিত হয় । "
+"বৰ্তমানে বৈধ বিকল্পসমূহ হল: উইন্ডোকে ছায়াবৃত/ছায়ামুক্ত কৰাৰ বাবে 'toggle_shade', "
+"সৰ্বাধিক মাপত উইন্ডো স্থাপন বা সৰ্বাধিক মাপ বাতিল কৰাৰ বাবে 'toggle_maximize', "
+"চিহ্নিত দিশত সৰ্বাধিক মাপত উইন্ডো স্থাপন বা সৰ্বাধিক মাপ বাতিল কৰাৰ বাবে "
+"'toggle_maximize_horizontally' আৰু 'toggle_maximize_vertically', সৰ্বনিম্ন মাপত "
+"উইন্ডো স্থাপন কৰাৰ বাবে 'minimize', উইন্ডো ৰ'ল আপ কৰাৰ বাবে 'shade', উইন্ডোৰ মেনু "
+"প্ৰদৰ্শনৰ বাবে 'menu', অন্যান্য সকলো উইন্ডোৰ তলত উইন্ডোটি স্থাপন কৰাৰ বাবে 'lower', "
+"আৰু 'none' ধাৰ্য কৰিলে একো কৰা ন'হ'ব ।"
+
+#: ../src/marco.schemas.in.in.h:45
+#| msgid ""
+#| "This option determines the effects of middle-clicking on the title bar. "
+#| "Current valid options are 'toggle_shade', which will shade/unshade the "
+#| "window, 'toggle_maximize' which will maximize/unmaximize the window, "
+#| "'minimize' which will minimize the window, and 'none' which will not do "
+#| "anything."
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"শিৰোনাম-বাৰৰ ওপৰত মাউছৰ মাজৰ বুটাম সহযোগে ক্লিক কৰাৰ সম্ভাব্য ফলাফল এই বিকল্প "
+"দ্বাৰা নিৰ্ধাৰিত হয় । বৰ্তমানে বৈধ বিকল্পসমূহ হল: উইন্ডোকে ছায়াবৃত/ছায়ামুক্ত কৰাৰ বাবে "
+"'toggle_shade', সৰ্বাধিক মাপত উইন্ডো স্থাপন বা সৰ্বাধিক মাপ বাতিল কৰাৰ বাবে "
+"'toggle_maximize', চিহ্নিত দিশত সৰ্বাধিক মাপত উইন্ডো স্থাপন বা সৰ্বাধিক মাপ "
+"বাতিল কৰাৰ বাবে 'toggle_maximize_horizontally' আৰু "
+"'toggle_maximize_vertically', সৰ্বনিম্ন মাপত উইন্ডো স্থাপন কৰাৰ বাবে 'minimize', "
+"উইন্ডো ৰ'ল আপ কৰাৰ বাবে 'shade', উইন্ডোৰ মেনু প্ৰদৰ্শনৰ বাবে 'menu', অন্যান্য সকলো "
+"উইন্ডোৰ তলত উইন্ডো স্থাপন কৰাৰ বাবে 'lower', আৰু 'none' ধাৰ্য কৰিলে একো কৰা "
+"ন'হ'ব ।"
+
+#: ../src/marco.schemas.in.in.h:46
+#| msgid ""
+#| "This option determines the effects of right-clicking on the title bar. "
+#| "Current valid options are 'toggle_shade', which will shade/unshade the "
+#| "window, 'toggle_maximize' which will maximize/unmaximize the window, "
+#| "'minimize' which will minimize the window, and 'none' which will not do "
+#| "anything."
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"শিৰোনাম-বাৰৰ ওপৰত মাউছৰ সোঁফালৰ বুটাম সহযোগে ক্লিক কৰাৰ সম্ভাব্য ফলাফল এই "
+"বিকল্প দ্বাৰা নিৰ্ধাৰিত হয় । বৰ্তমানে বৈধ বিকল্পসমূহ হল: উইন্ডোকে ছায়াবৃত/ছায়ামুক্ত "
+"কৰাৰ বাবে 'toggle_shade', সৰ্বাধিক মাপত উইন্ডো স্থাপন বা সৰ্বাধিক মাপ বাতিল "
+"কৰাৰ বাবে 'toggle_maximize', চিহ্নিত দিশত সৰ্বাধিক মাপত উইন্ডো স্থাপন বা "
+"সৰ্বাধিক মাপ বাতিল কৰাৰ বাবে 'toggle_maximize_horizontally' আৰু "
+"'toggle_maximize_vertically', সৰ্বনিম্ন মাপত উইন্ডো স্থাপন কৰাৰ বাবে 'minimize', "
+"উইন্ডো ৰ'ল আপ কৰাৰ বাবে 'shade', উইন্ডোৰ মেনু প্ৰদৰ্শনৰ বাবে 'menu', অন্যান্য সকলো "
+"উইন্ডোৰ তলত উইন্ডো স্থাপন কৰাৰ বাবে 'lower', আৰু 'none' ধাৰ্য কৰিলে একো কৰা "
+"ন'হ'ব ।"
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr "দুই আৰু a."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr "চলি আছে a a উল্লিখিত সময় অবধি সৰ্বমোট আৰু উল্লিখিত সময় অবধি."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "উইন্ডোৰ শিৰোনামে ব্যৱস্থাপ্ৰণালীেৰ প্ৰমিত মাপতৰ ফন্ট ব্যৱহাৰ কৰা হ'ব"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "ভিসুয়াল ধৰণ"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "ব্যৱহাৰকৰ্তাদেৰ দ্বাৰা সঞ্চালিত কামৰ ফলত উইন্ডো বড় কৰা হ'ব কি না"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "সোঁফালৰ বুটাম প্ৰয়োগ কৰি মাপ পৰিবৰ্তন কৰা হ'ব নে নহয়"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "উইন্ডো উজ্জ্বল কৰাৰ মোড"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "উইন্ডোৰ শিৰোনামে ব্যৱহৃত ফন্ট"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "ব্যৱহাৰপদ্ধতি: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "উইন্ডো বন্ধ কৰক"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "উইন্ডো মেনু"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "উইন্ডো আড়াল কৰক"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "উইন্ডো বড় কৰক"
+
+#: ../src/ui/frames.c:1130
+#| msgid "Resize window"
+msgid "Restore Window"
+msgstr "উইন্ডো প্ৰদৰ্শন কৰক"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "গড়িয়ে দিন ওপৰত"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Unroll Window"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Keep Window On Top"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "আঁতৰাওঁক প্ৰৰক"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "সদায়ে দৃশ্যমান"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "শুধুমাত্ৰ এক"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "আড়াল কৰক (_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "বড় কৰক (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "স্বাভাবিক মাপ (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "গোটাও (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "খোলো (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "স্থানান্তৰ কৰক (_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "মাপ পৰিবৰ্তন (_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "পৰ্দাৰ ওপৰত শিৰোনামৰ বাৰ স্থানান্তৰ কৰক (_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "সদায়ে চলি আছে"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "দৃশ্যমান কামক্ষেত্ৰত সদায়ে উপস্থিত (_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "শুধুমাত্ৰ বৰ্তমান কামক্ষেত্ৰত (_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "বাওঁফালৰ কামক্ষেত্ৰত স্থানান্তৰ কৰক (_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "ডান দিকৰ কামক্ষেত্ৰত স্থানান্তৰ কৰক (_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "ওপৰৰ কামক্ষেত্ৰত স্থানান্তৰণ (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "তলতৰ কামক্ষেত্ৰত স্থানান্তৰণ (_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "বন্ধ (_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+#| msgid "Workspace %d"
+msgid "Workspace %d%n"
+msgstr "কামক্ষেত্ৰ %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "কামক্ষেত্ৰ ১০ (_0)"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "কামক্ষেত্ৰ %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "পৃথক কামক্ষেত্ৰত স্থানান্তৰ কৰক (_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "মিটা"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "ওপৰত"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "তলত"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "বাওঁফালে"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "সোঁফালে"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "ফ্ৰেম জ্যামিতি দ্বাৰা \"%s\" পৰিমাপ নিৰ্ধাৰিত নহয়"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "ফ্ৰেম জ্যামিতি দ্বাৰা \"%s\" পৰিমাপ \"%s\" প্ৰান্তেৰ বাবে নিৰ্ধাৰিত নহয়"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "বুটামৰ এপেক্ট অনুপাত %g যথাযথ নহয়"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "ফ্ৰেম জ্যামিতি দ্বাৰা বুটামৰ মাপ নিৰ্ধাৰিত নহয়"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "গ্ৰেডিয়েন্টেৰ ক্ষেত্ৰত দুটা ৰং নিৰ্ধাৰিত হোৱা আৱশ্যক"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "ৰং নিৰ্ধাৰণৰ বাবে state \"%s\" বোধগম্য নহয়"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "ৰং নিৰ্ধাৰণৰ বাবে ৰং'ৰ বিষয়বস্তু \"%s\" বোধগম্য নহয়"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"ব্লেন্ড বিন্যাস \"blend/bg_color/fg_color/alpha\", \"%s\" বিন্যাসৰ সৈতে সুসংগত "
+"নহয়"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "ব্লেন্ড কৰা ৰং'এ আল্ফা মান \"%s\" বিশ্লেষণ কৰোঁতে ব্যৰ্থ"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "ব্লেন্ড কৰা ৰং'এ আল্ফা মান \"%s\" 0.0 ও1.0 সীমাৰেখাত নহয়"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "ছায়াৰ বিন্যাস \"shade/base_color/factor\", \"%s\" বিন্যাসৰ সৈতে সুসংগত নহয়"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "ছায়াযুক্ত ৰং'ৰ ক্ষেত্ৰত ছায়াৰ মাপ \"%s\" বিশ্লেষণ কৰোঁতে ব্যৰ্থ"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "ছায়াযুক্ত ৰং'ৰ ক্ষেত্ৰত ছায়াৰ মান \"%s\" শূণ্যেৰ কম"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "\"%s\" ৰং বিশ্লেষণ কৰোঁতে ব্যৰ্থ"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনেত '%s' অক্ষৰ উপস্থিত আৰু এৰ ব্যৱহাৰ অনুমোদিত নহয়"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনেত '%s' ফ্লোটিং পয়েন্ট সংখ্যা উপস্থিত যি বিশ্লেষণ কৰা সম্ভৱ নহয়"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Coordinate expression contains integer '%s' which could not be parsed"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনেত টেক্সটেৰ প্ৰাৰম্ভিক স্থানে অজ্ঞাত অপাৰেটৰ: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশন ফাঁকা বা বোধগম্য নহয়"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনৰ ফলাফলত শূণ্য দ্বাৰা ভাগ কৰাৰ অৱস্থা উৎপন্ন হয়"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"কো-ওৰ্ডিনেট Xপ্ৰেশন দ্বাৰা ফ্লোটিং পয়েন্ট সংখ্যাৰ ওপৰত mod অপাৰেটৰ ব্যৱহাৰৰ প্ৰয়াস "
+"কৰা হৈছে"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনেত \"%s\" অপাৰেটৰ উপস্থিত কিন্তু অপাৰেন্ড প্ৰত্যাশিত"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনেত প্ৰত্যাশিত অপাৰেন্ডেৰ পৰিবৰ্তে অপাৰেটৰ উপস্থিত"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনৰ অন্তে প্ৰত্যাশিত অপাৰেন্ডেৰ পৰিবৰ্তে অপাৰেটৰ উপস্থিত"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"কো-ওৰ্ডিনেট Xপ্ৰেশনৰ ক্ষেত্ৰত \"%c\" অপাৰেটৰৰ পৰে \"%c\" অপাৰেটৰ উপস্থিত আৰু "
+"দুটাত কোনো অপাৰেন্ড উপস্থিত নেই"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনেত অজ্ঞাত ভেৰিয়েবল বা কনস্টেন্ট \"%s\" উপস্থিত"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনৰ বিশ্লেষণাৰৰ বাফাৰৰ সীমা অতিক্ৰান্ত হৈছে ।"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনেত শেষেৰ বন্ধনী চিহ্ন উপস্থিত, প্ৰাৰম্ভিক চিহ্ন অনুপস্থিত"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনেত প্ৰাৰম্ভিক বন্ধনী চিহ্ন উপস্থিত শেষেৰ বন্ধনী চিহ্ন অনুপস্থিত"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "কো-ওৰ্ডিনেট Xপ্ৰেশনেত কোনো অপাৰেটৰ বা অপাৰেন্ড উপস্থিত নেই"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Theme contained an expression that resulted in an error: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"চিহ্নিত ফ্ৰেমৰ বিন্যাসৰ বাবে <button function=\"%s\" state=\"%s\" draw_ops="
+"\"whatever\"/> উল্লেখ কৰা আৱশ্যক"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> অনুপস্থিত"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "\"%s\" থিম লোড কৰোঁতে ব্যৰ্থ: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "<%s> নিৰ্ধাৰিত নহয় \"%s\" থিমৰ বাবে"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"\"%s\" ধৰণৰ উইন্ডোৰ বাবে \"%s\" থিমত ফ্ৰেমৰ বিন্যাস নিৰ্ধাৰিত নহয়, এটা "
+"<window type=\"%s\" style_set=\"whatever\"/> স্বত্বা যোগ কৰক"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"ব্যৱহাৰকৰ্তা দ্বাৰা নিৰ্ধাৰিত কনস্টেন্টেৰ ক্ষেত্ৰত প্ৰাৰম্ভে বড় সৰু ডাঙৰেৰ হৰফ উপস্থিত থাকা "
+"আৱশ্যক; \"%s\"'এ ক্ষেত্ৰত এটি উপস্থিত নেই"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "কনস্টেন্ট \"%s\" পূৰ্বে নিৰ্ধাৰিত হৈছে"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+#| msgid "No \"x\" attribute on element <%s>"
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "<%s> পদাৰ্থত \"%s\" গুণ অনুপস্থিত"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "পংক্তি %d অক্ষৰ %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "এক <%s> বস্তুত \"%s\" বৈশিষ্ট্য দুবাৰ উল্লিখিত হৈছে"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "<%s> বস্তুৰ ওপৰত এই ক্ষেত্ৰত \"%s\" বৈশিষ্ট্যটি বৈধ নহয়"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "পূৰ্ণসংখ্যা ৰূপে \"%s\" বিশ্লেষণ কৰোঁতে ব্যৰ্থ"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "অন্তিম অংশৰ \"%s\" অক্ষৰসমূহ \"%s\" পংক্তিত বোধগম্য নহয়"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "পূৰ্ণসংখ্যা %ld অবশ্যই শণ্যেৰ অধিক হোৱা আৱশ্যক"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "পূৰ্ণসংখ্যা %ld অত্যাধিক বড়, বৰ্তমানে সৰ্বাধিক মান %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\"কে দশমিকযুক্ত সংখ্যা ৰূপে বিশ্লেষণ কৰোঁতে ব্যৰ্থ"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "বুলিয়ান মান \"true\" বা \"false\" হোৱা আৱশ্যক, \"%s\" ব্যৱহাৰ কৰা সম্ভৱ নহয়"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "কোণতৰ মান 0.0ৰ পৰা 360.0'ত হোৱা আৱশ্যক, %g উল্লিখিত\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "আলফাৰ মান 0.0 (অদৃশ্য)ৰ পৰা 1.0 (সম্পূৰ্ণ অস্বচ্ছ)'ত হোৱা আৱশ্যক, %g উল্লিখিত\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"শিৰোনামৰ মাত্ৰা \"%s\" বৈধ নহয় (xx-small,x-small,small,medium,large,x-large,"
+"xx-large মানসমূহত যে কোনো এটা হোৱা আৱশ্যক)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> নাম \"%s\"'এ দ্বিতীয়বাৰ ব্যৱহৃত হৈছে "
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> উৰ্ধ্বতন বস্তু \"%s\" নিৰ্ধাৰিত নহয়"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> জ্যামিতি \"%s\" সুনিৰ্দিষ্ট নহয়"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> দ্বাৰা জ্যামিতি নিৰ্ধাৰিত হোৱা আৱশ্যক বা ঊৰ্ধ্বতন বস্তুৰ ক্ষেত্ৰত জ্যামিতিৰ "
+"উপস্থিতি আৱশ্যক"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "You a উল্লিখিত সময় অবধি মান"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "অজ্ঞাত প্ৰকাৰ \"%s\", <%s> স্বত্বায় উপস্থিত ।"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "অজ্ঞাত style_set \"%s\", <%s> স্বত্বায় উপস্থিত"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "\"%s\" প্ৰকাৰৰ উইন্ডোৰ বাবে এটা স্টাইল সেট নিৰ্ধাৰিত হৈছে"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "<%s> বস্তু <%s>'ৰ তলত স্থাপন কৰা নাযাব"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+#| msgid ""
+#| "Cannot specify both button_width/button_height and aspect ratio for "
+#| "buttons"
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"বুটামৰ বাবে \"button_width\"/\"button_height\" আৰু \"aspect_ratio\" (এস্পেক্ট "
+"অনুপাত) উভয় একেলগে উল্লেখ কৰা সম্ভৱ নহয়"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "দুৰত্ব \"%s\" অজ্ঞাত"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "এস্পেক্ট অনুপাত \"%s\" অজ্ঞাত"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "প্ৰান্ত \"%s\" অজ্ঞাত"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "No \"start_angle\" or \"from\" attribute on element <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "No \"extent_angle\" or \"to\" attribute on element <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "গ্ৰেডিয়েন্টেৰ বাবেে \"%s\" মান বোধগম্য নহয়"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "ভৰাট কৰাৰ ধৰণ \"%s\" <%s> স্বত্বাৰ বাবে বোধগম্য নহয়"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "অৱস্থা \"%s\", <%s> স্বত্বাৰ বাবে বোধগম্য নহয়"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "শেডো \"%s\", <%s> স্বত্বাৰ বাবে বোধগম্য নহয়"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "তীৰচিহ্ন \"%s\", <%s> স্বত্বাৰ বাবে বোধগম্য নহয়"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "\"%s\" নামক কোনো <draw_ops> নিৰ্ধাৰিত নহয়"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Including draw_ops \"%s\" here would create a circular reference"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "ফ্ৰেমৰ অংশতৰ বাবে \"%s\" অৱস্থান অজ্ঞাত"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "ফ্ৰেমৰ বিন্যাসেত %s অৱস্থানে এটা অংশ উপস্থিত আছে"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "\"%s\" নামৰ কোনো <draw_ops> নিৰ্ধাৰিত নহয়"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "বুটামৰ অজ্ঞাত ফাংশান \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Button function \"%s\" does not exist in this version (%d, need %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "বুটামৰ অজ্ঞাত অৱস্থা \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "function %s state %s বৈশিষ্ট্যেৰ মানৰ ক্ষেত্ৰত ফ্ৰেম বিন্যাসেত এটা বুটাম উপস্থিত আছে"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "focus বৈশিষ্ট্যৰ মান হিচাপে \"%s\" গ্ৰহণযোগ্য নহয়"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "state বৈশিষ্ট্যৰ মান হিচাপে \"%s\" গ্ৰহণযোগ্য নহয়"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" নামক বিন্যাস নিৰ্ধাৰণ কৰা নহয়"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "resize বৈশিষ্ট্যৰ মান হিচাপে \"%s\" গ্ৰহণযোগ্য নহয়"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"সৰ্বোচ্চ মাপ/ছায়াবৃত অৱস্থাৰ ক্ষেত্ৰত <%s> স্বত্বায় \"resize\" বৈশিষ্ট্য উপস্থিত থাকা "
+"উচিত নহয়"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "Should not have \"resize\" attribute on <%s> element for maximized states"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "state %s resize %s focus %s বৈশিষ্ট্য সহ অৱস্থাৰ ক্ষেত্ৰত বিন্যাস নিৰ্ধাৰিত হৈছে"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "state %s focus %s অৱস্থাৰ বাবে বিন্যাস নিৰ্ধাৰিত হৈছে"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"এটা <piece> স্বত্বাৰ সৈতে দুটা draw_ops উপস্থিত থাকা সম্ভৱ নহয় (থিম দ্বাৰা এটা "
+"draw_ops বৈশিষ্ট্য আৰু <draw_ops> স্বত্বা বা দুটা স্বত্বা উল্লিখিত হৈছে)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"এটা <button> স্বত্বাৰ সৈতে দুটা draw_ops উপস্থিত থাকা সম্ভৱ নহয় (থিম দ্বাৰা এটা "
+"draw_ops বৈশিষ্ট্য আৰু <draw_ops> স্বত্বা বা দুটা স্বত্বা উল্লিখিত হৈছে)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"এটা <menu> স্বত্বাৰ সৈতে দুটা draw_ops উপস্থিত থাকা সম্ভৱ নহয় (থিম দ্বাৰা এটা "
+"draw_ops বৈশিষ্ট্য আৰু <draw_ops> স্বত্বা বা দুটা স্বত্বা উল্লিখিত হৈছে)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Outermost element in theme must be <marco_theme> not <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr " name/author/date/description স্বত্বাত <%s> স্বত্বাৰ ব্যৱহাৰ অনুমোদিত নহয়"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<constant> স্বত্বাত <%s> স্বত্বাৰ ব্যৱহাৰ অনুমোদিত নহয়"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "distance/border/aspect_ratio স্বত্বাত <%s> স্বত্বাৰ ব্যৱহাৰ অনুমোদিত নহয়"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "draw operation (ড্ৰ অপাৰেশন) স্বত্বাত <%s> স্বত্বাৰ ব্যৱহাৰ অনুমোদিত নহয়"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%s> বস্তুটি <%s> বস্তুত স্থাপন কৰা সম্ভৱ নহয়"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "ফ্ৰেমৰ অংশতৰ বাবে draw_ops উপলব্ধ নেই"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "বুটামৰ বাবে draw_ops উপলব্ধ নেই"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> বস্তুত কোনো টেক্সট অন্তৰ্ভুক্ত কৰা নাযাব"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+#| msgid "<name> specified twice for this theme"
+msgid "<%s> specified twice for this theme"
+msgstr "এই থিমৰ ক্ষেত্ৰত <%s> দুবাৰ নিৰ্দিষ্ট কৰা হৈছে"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Failed to find a valid file for theme %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "%s থিম নথিপত্ৰেত root <marco_theme> স্বত্বা অনুপস্থিত"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/উইন্ডো (_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/উইন্ডো/টিয়াৰ-অফ"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/উইন্ডো/সম্বাদ (_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/উইন্ডো/মোডাল সম্বাদ (_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/উইন্ডো/সামগ্ৰী (_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/উইন্ডো/স্প্ল্যাশ-স্ক্ৰিন (_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/উইন্ডো/ওপৰত আটকানো হ'ব (_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/উইন্ডো/তলত আটকানো হ'ব (_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/উইন্ডো/বাওঁফালে আটকানো হ'ব (_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/উইন্ডো/সোঁফালে আটকানো হ'ব (_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/উইন্ডো/সমস্ত সংযুক্ত (_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/উইন্ডো/ডেস্কটপ (_k)"
+
+#: ../src/ui/theme-viewer.c:136
+msgid "Open another one of these windows"
+msgstr "এই ধৰণৰ এটা নতুন উইন্ডো খুলুন"
+
+#: ../src/ui/theme-viewer.c:143
+msgid "This is a demo button with an 'open' icon"
+msgstr "'খোলা' আইকন বিশিষ্ট এটি এটা নমূনা বুটাম"
+
+#: ../src/ui/theme-viewer.c:150
+msgid "This is a demo button with a 'quit' icon"
+msgstr "'প্ৰস্থান' আইকন বিশিষ্ট এটি এটা নমূনা বুটাম"
+
+#: ../src/ui/theme-viewer.c:243
+msgid "This is a sample message in a sample dialog"
+msgstr "এটি নমুনা সম্বাদ বক্সে এটা নমুনা বাৰ্তা"
+
+#: ../src/ui/theme-viewer.c:326
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "নকল মেনু বস্তু %d\n"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Border-only window"
+msgstr "শুধুমাত্ৰ প্ৰান্তবিশিষ্ট উইন্ডো"
+
+#: ../src/ui/theme-viewer.c:362
+msgid "Bar"
+msgstr "বাৰ"
+
+#: ../src/ui/theme-viewer.c:379
+msgid "Normal Application Window"
+msgstr "স্বাভাবিক অনুপ্ৰয়োগ উইন্ডো"
+
+#: ../src/ui/theme-viewer.c:383
+msgid "Dialog Box"
+msgstr "সম্বাদ বক্স"
+
+#: ../src/ui/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "মোডাল সম্বাদ বক্স"
+
+#: ../src/ui/theme-viewer.c:391
+msgid "Utility Palette"
+msgstr "সৰঞ্জাম সহ পেলেট"
+
+#: ../src/ui/theme-viewer.c:395
+msgid "Torn-off Menu"
+msgstr "পৰিবৰ্তনশীল অৱস্থানৰ মেনু"
+
+#: ../src/ui/theme-viewer.c:399
+msgid "Border"
+msgstr "Border"
+
+#: ../src/ui/theme-viewer.c:727
+#, c-format
+msgid "Button layout test %d"
+msgstr "বুটাম বিন্যাসৰ পৰীক্ষা %d"
+
+#: ../src/ui/theme-viewer.c:756
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "এটা উইন্ডো ফ্ৰেম নিৰ্মাণৰ বাবে %g মিলিসেকেন্ড"
+
+#: ../src/ui/theme-viewer.c:799
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "ব্যৱহাৰপদ্ধতি: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:806
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "থিম লোড কৰোঁতে সমস্যা: %s\n"
+
+#: ../src/ui/theme-viewer.c:812
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" থিম %g সেকেন্ডে লোড কৰা হৈছে\n"
+
+#: ../src/ui/theme-viewer.c:853
+msgid "Normal Title Font"
+msgstr "স্বাভাবিক মাপতৰ শিৰোনামে ব্যৱহৃত ফন্ট"
+
+#: ../src/ui/theme-viewer.c:859
+msgid "Small Title Font"
+msgstr "ছোট মাপতৰ শিৰোনামে ব্যৱহৃত ফন্ট"
+
+#: ../src/ui/theme-viewer.c:865
+msgid "Large Title Font"
+msgstr "বড় মাপতৰ শিৰোনামে ব্যৱহৃত ফন্ট"
+
+#: ../src/ui/theme-viewer.c:870
+msgid "Button Layouts"
+msgstr "বুটামৰ বিন্যাস"
+
+#: ../src/ui/theme-viewer.c:875
+msgid "Benchmark"
+msgstr "Benchmark"
+
+#: ../src/ui/theme-viewer.c:922
+msgid "Window Title Goes Here"
+msgstr "উইন্ডো শিৰোনাম চিহ্নিত স্থানে স্থাপিত হ'ব"
+
+#: ../src/ui/theme-viewer.c:1026
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+
+#: ../src/ui/theme-viewer.c:1245
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"অৱস্থান চিহ্নকৰ্তা Xপ্ৰেশনৰ পৰীক্ষা দ্বাৰা মান TRUE উল্লিখিত হ'লেও ত্ৰুটি নিৰ্ধাৰিত "
+"হৈছে"
+
+#: ../src/ui/theme-viewer.c:1247
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"অৱস্থান চিহ্নকৰ্তা Xপ্ৰেশনৰ পৰীক্ষা দ্বাৰা মান FALSE উল্লিখিত হ'লেও ত্ৰুটি নিৰ্ধাৰিত "
+"নহয়"
+
+#: ../src/ui/theme-viewer.c:1251
+msgid "Error was expected but none given"
+msgstr "ত্ৰুটি প্ৰত্যাশিত কিন্তু উল্লিখিত নহয়"
+
+#: ../src/ui/theme-viewer.c:1253
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "ত্ৰুটি %d প্ৰত্যাশিত %d প্ৰদত্ত"
+
+#: ../src/ui/theme-viewer.c:1259
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "ত্ৰুটি প্ৰত্যাশিত নহয় কিন্তু প্ৰাপ্ত: %s"
+
+#: ../src/ui/theme-viewer.c:1263
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x'ৰ মান %d, %d প্ৰত্যাশিত"
+
+#: ../src/ui/theme-viewer.c:1266
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y'ৰ মান %d, %d প্ৰত্যাশিত"
+
+#: ../src/ui/theme-viewer.c:1331
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d কো-ওৰ্ডিনেট Xপ্ৰেশন %g সেকেন্ডে বিশ্লেষণ কৰা হৈছে (গড় %g সেকেন্ড)\n"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "সম্বাদৰ প্ৰছেচৰ পৰা প্ৰাপ্ত \"%s\" বাৰ্তা বিশ্লেষণ কৰোঁতে ব্যৰ্থ\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "সম্বাদ প্ৰদৰ্শনৰ প্ৰক্ৰিয়াৰ পৰা পঢ়োঁতে সমস্যা : %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "অনুপ্ৰয়োগ বন্ধ (kill) কৰাৰ সম্মতি জানিবলৈ ব্যৱহৃত marco-dialog প্ৰদৰ্শন কৰোঁতে "
+#~ "সমস্যা: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "এটা আদেশৰ সমস্যা প্ৰদৰ্শনৰ উদ্দেশ্যে marco-dialog আৰম্ভ কৰোঁতে সমস্যা: %s\n"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "Type of %s was not integer"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d মান যি MateConf-কি %s'ত সংৰক্ষিত আছে সেইটো cursor_size'ৰ ক্ষেত্ৰত যথাযত মান "
+#~ "নহয়; 1..128'ত মান হোৱা উচিত\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d মান যি MateConf-কি %s'ত সংৰক্ষিত আছে সেইটো কৰ্মক্ষেত্ৰতৰ বাবে যথাযত মান নহয়; "
+#~ "বৰ্তমানে সৰ্বোচ্চ মান হল %d\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "অজানা বৈশিষ্ট্য %s, <marco_session> স্বত্বায় চিহ্নিত হৈছে"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "অজানা বৈশিষ্ট্য %s, <maximized> স্বত্বায় চিহ্নিত হৈছে"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "অজানা বৈশিষ্ট্য %s, <geometry> স্বত্বায় চিহ্নিত হৈছে"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "সেশান পৰিচালনব্যৱস্থা সমৰ্থন কৰোঁতে ব্যৰ্থ অনুপ্ৰয়োগ সম্পৰকে সূচিত কৰে ব্যৱহৃথ "
+#~ "marco-dialog: %s\n"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr "e g a হলো এবং আবেদনhttp://bugzilla.gnome.org/show_bug.cgi."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰতৰ ঠিক ঊৰ্ধ্বস্থিত কৰ্মক্ষেত্ৰত পৰিবৰ্তন কৰা "
+#~ "হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস "
+#~ "ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;"
+#~ "\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰতৰ ঠিক নিম্নস্থিত কৰ্মক্ষেত্ৰত পৰিবৰ্তন কৰা "
+#~ "হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস "
+#~ "ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;"
+#~ "\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰতৰ বাঁদিকেৰ পাৰ্শ্ববৰ্তী কৰ্মক্ষেত্ৰত পৰিবৰ্তন "
+#~ "কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস "
+#~ "ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;"
+#~ "\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰতৰ ডানদিকেৰ পাৰ্শ্ববৰ্তী কৰ্মক্ষেত্ৰত "
+#~ "পৰিবৰ্তন কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । "
+#~ "বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো "
+#~ "কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ১'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ১০'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ১১'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ১২'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ২'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ৩'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ৪'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ৫'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ৬'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ৭'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ৮'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা বৰ্তমান কৰ্মক্ষেত্ৰ ৯'এ পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো মেনু সক্ৰিয় কৰা হ'ব । \"&lt;Control&gt;a\" অথবা "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ "
+#~ "সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ "
+#~ "সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" "
+#~ "প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা \"move mode\"'এ প্ৰবেশ কৰে কি-বোৰ্ডেৰ সাহায্যে উইন্ডো "
+#~ "স্থানান্তৰণ আৰম্ভ কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং "
+#~ "প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা "
+#~ "যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ "
+#~ "বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা \"resize mode\"'এ প্ৰবেশ কৰে কি-বোৰ্ডেৰ সাহায্যে উইন্ডোৰ "
+#~ "মাপ পৰিবৰ্তন আৰম্ভ কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং "
+#~ "প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা "
+#~ "যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ "
+#~ "বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা সমস্ত স্বাভাবিক উইন্ডো আড়াল কৰে ডেস্কটপ উইন্ডোৰ উজ্জ্বল কৰা "
+#~ "হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস "
+#~ "ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;"
+#~ "\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো সৰ্বোচ্চ মাপে ধাৰ্য কৰা হ'ব । \"&lt;Control&gt;a\" "
+#~ "অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ "
+#~ "ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ "
+#~ "অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled"
+#~ "\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো সৰ্বনিম্ন মাপে ধাৰ্য কৰা হ'ব । \"&lt;Control&gt;a"
+#~ "\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ "
+#~ "ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ "
+#~ "অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled"
+#~ "\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো এটা কৰ্মক্ষেত্ৰত নীচে নামানো হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো বাঁদিকেৰ পাৰ্শ্ববৰ্তী কৰ্মক্ষেত্ৰত স্থানান্তৰ হ'ব । "
+#~ "\"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব "
+#~ "। বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও "
+#~ "\"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো ডানদিকেৰ পাৰ্শ্ববৰ্তী কৰ্মক্ষেত্ৰত স্থানান্তৰ হ'ব । "
+#~ "\"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব "
+#~ "। বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও "
+#~ "\"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো এটা কৰ্মক্ষেত্ৰত উপৰে স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ১'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ১০'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ১১'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ১২'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ২'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ৩'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ৪'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ৫'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ৬'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ৭'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ৮'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডো কৰ্মক্ষেত্ৰ ৯'এ স্থানান্তৰ কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা প্যানেল ও ডেস্কটপেত পপ-আপ সহ বিপৰীতদিকে উজ্জ্বলতা পৰিবৰ্তন "
+#~ "কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস "
+#~ "ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;"
+#~ "\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা প্যানেল ও ডেস্কটপেত পপ-আপ বিনা বিপৰীতদিকে উজ্জ্বলতা "
+#~ "পৰিবৰ্তন কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । "
+#~ "বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো "
+#~ "কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা অনুপ্ৰয়োগেৰ উইন্ডোত পপ-আপ বিনা বিপৰীতদিকে উজ্জ্বলতা "
+#~ "পৰিবৰ্তন কৰা হ'ব । এই কি-বাইন্ডিং'ৰ সৈতে \"shift\" টিপে ৰাখা হলে সম্মুখ দিশায় "
+#~ "অগ্ৰসৰ কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ "
+#~ "ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-"
+#~ "বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা অনুপ্ৰয়োগেৰ উইন্ডোত পপ-আপ সহ বিপৰীতদিকে উজ্জ্বলতা পৰিবৰ্তন "
+#~ "কৰা হ'ব । এই কি-বাইন্ডিং'ৰ সৈতে \"shift\" টিপে ৰাখা হলে সম্মুখ দিশায় অগ্ৰসৰ "
+#~ "কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ "
+#~ "ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-"
+#~ "বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডোত পপ-আপ উইন্ডো বিনা বিপৰীতদিকে উজ্জ্বলতা পৰিবৰ্তন "
+#~ "কৰা হ'ব । এই কি-বাইন্ডিং'ৰ সৈতে \"shift\" টিপে ৰাখা হলে সম্মুখ দিশায় অগ্ৰসৰ "
+#~ "কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ "
+#~ "ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-"
+#~ "বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডোত পপ-আপ উইন্ডো সহ বিপৰীতদিকে উজ্জ্বলতা পৰিবৰ্তন কৰা "
+#~ "হ'ব । এই কি-বাইন্ডিং'ৰ সৈতে \"shift\" টিপে ৰাখা হলে সম্মুখ দিশায় অগ্ৰসৰ কৰা "
+#~ "হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস "
+#~ "ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;"
+#~ "\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা প্যানেল ও ডেস্কটপেত পপ-আপ বিনা উজ্জ্বলতা পৰিবৰ্তন কৰা হ'ব "
+#~ "। \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত "
+#~ "হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও "
+#~ "\"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা প্যানেল ও ডেস্কটপেত পপ-আপ উইন্ডো বিনা উজ্জ্বলতা পৰিবৰ্তন "
+#~ "কৰা হ'ব । এই কি-বাইন্ডিং'ৰ সৈতে \"shift\" টিপে ৰাখা হলে সম্মুখ দিশায় অগ্ৰসৰ "
+#~ "কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ "
+#~ "ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-"
+#~ "বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা অনুপ্ৰয়োগেৰ উইন্ডোত পপ-আপ উইন্ডো বিনা উজ্জ্বলতা পৰিবৰ্তন কৰা "
+#~ "হ'ব । এই কি-বাইন্ডিং'ৰ সৈতে \"shift\" টিপে ৰাখা হলে সম্মুখ দিশায় অগ্ৰসৰ কৰা "
+#~ "হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস "
+#~ "ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;"
+#~ "\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা অনুপ্ৰয়োগেৰ উইন্ডোত পপ-আপ উইন্ডো বিনা উজ্জ্বলতা পৰিবৰ্তন কৰা "
+#~ "হ'ব । এই কি-বাইন্ডিং'ৰ সৈতে \"shift\" টিপে ৰাখা হলে সম্মুখ দিশায় অগ্ৰসৰ কৰা "
+#~ "হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস "
+#~ "ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;"
+#~ "\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডোত পপ-আপ উইন্ডো বিনা উজ্জ্বলতা পৰিবৰ্তন কৰা হ'ব । "
+#~ "(পাৰম্পৰিকৰূপে, &lt;Alt&gt;Escape) । এই কি-বাইন্ডিং'ৰ সৈতে \"shift\" টিপে "
+#~ "ৰাখা হলে সম্মুখ দিশায় অগ্ৰসৰ কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে "
+#~ "সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত "
+#~ "ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা "
+#~ "হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডোত পপ-আপ উইন্ডো সহ উজ্জ্বলতা পৰিবৰ্তন কৰা হ'ব । "
+#~ "(পাৰম্পৰিকৰূপে, &lt;Alt&gt;Escape) । এই কি-বাইন্ডিং'ৰ সৈতে \"shift\" টিপে "
+#~ "ৰাখা হলে সম্মুখ দিশায় অগ্ৰসৰ কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে "
+#~ "সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত "
+#~ "ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা "
+#~ "হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা সৰ্বদা উপৰে প্ৰদৰ্শনেৰ অবস্থা পৰিবৰ্তন কৰা হ'ব । সৰ্বদা "
+#~ "উপৰে প্ৰদৰ্শনেৰ বাবে চিহ্নিত উইন্ডো প্ৰদৰ্শক্ষেত্ৰতৰ অন্যান্য উইন্ডোৰ উপৰে স্থাপিত "
+#~ "হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস "
+#~ "ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;"
+#~ "\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা সম্পূৰ্ণ পৰ্দা জুড়ে প্ৰদৰ্শনেৰ অবস্থা পৰিবৰ্তন কৰা হ'ব । "
+#~ "\"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব "
+#~ "। বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও "
+#~ "\"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডোৰ সৰ্বোচ্চ মাপ প্ৰদৰ্শনেৰ অবস্থা পৰিবৰ্তন কৰা হ'ব । "
+#~ "\"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব "
+#~ "। বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও "
+#~ "\"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা ছায়াবৃত/বিহীন প্ৰদৰ্শনেৰ অবস্থা পৰিবৰ্তন কৰা হ'ব । \"&lt;"
+#~ "Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । "
+#~ "বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ "
+#~ "পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা "
+#~ "হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা নিৰ্ধাৰিত হ'ব উইন্ডোটি সমস্ত অথবা শুধু এটা কৰ্মক্ষেত্ৰত "
+#~ "প্ৰদৰ্শিত হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ "
+#~ "ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-"
+#~ "বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডোৰ সৰ্বোচ্চ মাপ ব্যাতীত প্ৰদৰ্শনেৰ অবস্থা পৰিবৰ্তন কৰা "
+#~ "হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস "
+#~ "ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;"
+#~ "\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা প্যানেলেৰ \"অনুপ্ৰয়োগ সঞ্চালন\" বক্স প্ৰদৰ্শন কৰা হ'ব । "
+#~ "\"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব "
+#~ "। বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও "
+#~ "\"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা টাৰ্মিনেল আৰম্ভ কৰা হ'ব । \"&lt;Control&gt;a\" অথবা "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ "
+#~ "সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ "
+#~ "সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" "
+#~ "প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা উইন্ডোৰ ছবি তোলাৰ বাবে প্যানেলেত উপস্থিত পৰ্দাৰ ছবি "
+#~ "গ্ৰহণেৰ ব্যৱস্থা আৰম্ভ কৰা হ'ব । \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় "
+#~ "এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ "
+#~ "কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ "
+#~ "বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা প্যানেলেত উপস্থিত পৰ্দাৰ ছবি গ্ৰহণেৰ ব্যৱস্থা আৰম্ভ কৰা হ'ব "
+#~ "। \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত "
+#~ "হ'ব । বিশ্লেষণাৰ হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও "
+#~ "\"&lt;Ctrl&gt;\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত "
+#~ "বিশেষ পংক্তি \"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং "
+#~ "ব্যৱহাৰ কৰা হ'ব না ।"
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কি-বাইন্ডিং দ্বাৰা প্যানেলেৰ প্ৰধান মেনু প্ৰদৰ্শন কৰা হ'ব । \"&lt;Control&gt;"
+#~ "a\" অথবা \"&lt;Shift&gt;&lt;Alt&gt;F1\" বিন্যাস ব্যৱহৃত হ'ব । বিশ্লেষণাৰ "
+#~ "হৰফেৰ ছাঁদ সম্পৰ্কে সচেতন নহয় এবং প্ৰয়োজনে \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;"
+#~ "\"'ৰ অনুৰূপ সংক্ষিপ্ত ৰূপও ব্যৱহাৰ কৰা যাবে । বিকল্পেৰ ক্ষেত্ৰত বিশেষ পংক্তি "
+#~ "\"disabled\" প্ৰয়োগ কৰা হলে এই কৰ্মেৰ বাবে কোনো কি-বাইন্ডিং ব্যৱহাৰ কৰা হ'ব "
+#~ "না ।"
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "a হলো হলো এবং হলো&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;&gt; "
+#~ "এবং&lt; Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "a&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;&gt; এবং&lt; "
+#~ "Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "a উপৰে সৰ্বমোট&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;&gt; "
+#~ "এবং&lt; Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "a ডানদিকে সৰ্বমোট&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;&gt; "
+#~ "এবং&lt; Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "a উপৰে ডানদিকে সৰ্বমোট&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;"
+#~ "&gt; এবং&lt; Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "a উপৰে বাঁদিকে সৰ্বমোট&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;"
+#~ "&gt; এবং&lt; Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "a নীচে সৰ্বমোট&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;&gt; "
+#~ "এবং&lt; Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "a নীচে ডানদিকে সৰ্বমোট&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;"
+#~ "&gt; এবং&lt; Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "a নীচে বাঁদিকে সৰ্বমোট&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;"
+#~ "&gt; এবং&lt; Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "a বাঁদিকে সৰ্বমোট&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;&gt; "
+#~ "এবং&lt; Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;&gt; এবং&lt; Ctrl&gt; "
+#~ "পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "a&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;&gt; এবং&lt; "
+#~ "Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "a&lt;&gt; a&lt; Shift&gt;&lt; Alt&gt; হলো এবং এবং&lt;&gt; এবং&lt; "
+#~ "Ctrl&gt; পংক্তি না উল্লিখিত সময় অবধি."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "সৰ্বদা উপৰে থাকাৰ বৈশিষ্ট্য অদল বদল কৰা হ'ব"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "উইন্ডো স্বাভাবিক মাপে স্থাপন কৰা হ'ব"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "উইন্ডোৰ স্বাভাবিক মাপে কৰক"
+
+#~ msgid "\"%s\" is not responding."
+#~ msgstr "\"%s\" is not responding."
+
+#~ msgid "Title"
+#~ msgstr "Title"
+
+#~ msgid "Class"
+#~ msgstr "শ্ৰেণী"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "\"%s\" বৈশিষ্ট্য <%s> স্বত্বাৰ উপৰ বৈধ নহয়"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "থিম a"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "থিম a"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"name\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"value\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"top\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"bottom\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"left\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"right\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"color\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"x1\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"y1\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"x2\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"y2\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"y\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"width\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"height\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"start_angle\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"extent_angle\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"alpha\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"type\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"filename\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"state\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"shadow\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "<%s> স্বত্বায় \"arrow\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "<%s> স্বত্বায় \"value\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "<%s> স্বত্বায় \"position\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "<%s> স্বত্বায় \"function\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "<%s> স্বত্বায় \"state\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "<%s> স্বত্বায় \"focus\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "<%s> স্বত্বায় \"style\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "<%s> স্বত্বায় \"resize\" বৈশিষ্ট্য অনুপস্থিত"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "এই থিমেৰ ক্ষেত্ৰত <author> দুইবাৰ নিৰ্দিষ্ট কৰা হৈছে"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "এই থিমেৰ ক্ষেত্ৰত <copyright> দুইবাৰ নিৰ্দিষ্ট কৰা হৈছে"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "এই থিমেৰ ক্ষেত্ৰত <date> দুইবাৰ নিৰ্দিষ্ট কৰা হৈছে"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "এই থিমেৰ ক্ষেত্ৰত <description> দুইবাৰ নিৰ্দিষ্ট কৰা হৈছে"
+
diff --git a/po/ast.po b/po/ast.po
new file mode 100644
index 00000000..5e3cec7e
--- /dev/null
+++ b/po/ast.po
@@ -0,0 +1,2472 @@
+# translation of marco.po to Asturian
+# Asturian translation for marco
+# Copyright (c) 2007 Rosetta Contributors and Canonical Ltd 2007
+# This file is distributed under the same license as the marco package.
+#
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2007.
+# Xose S. Puente <[email protected]>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-02-10 09:32+0100\n"
+"PO-Revision-Date: 2009-02-10 02:58+0100\n"
+"Last-Translator: Mikel González <[email protected]>\n"
+"Language-Team: Asturian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2009-02-10 01:24+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Escritoriu"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Alministrador Ventanes"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Petición d'información ventana desconocida: %d"
+
+#: ../src/core/delete.c:104
+#, fuzzy, c-format
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+"Pue elexir esperar un intre pa que continúe o forciar a la aplicación a "
+"terminar."
+
+#: ../src/core/delete.c:115 ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr "_Esperar"
+
+#: ../src/core/delete.c:115 ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "_Forzar Colar"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Falló garrando'l nome host: %s\n"
+
+#: ../src/core/display.c:256
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Falta %s estensión requerida pa componer"
+
+#: ../src/core/display.c:334
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Falló abrir Sistema X Window visualizando '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Conesión perdía al amosar '%s';\n"
+"seguramente'l servidor X fue apagáu o mataste/desaniciaste\n"
+"el xestor de ventanos.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Error fatal IO %d (%s) na visualización '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Algún otru programa ya ta usando la tecla %s colos modificadores %x como "
+"combinación\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Hebo un fallu al executar <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Comandu %d nun definíu.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Comandu de terminal nun definíu.\n"
+
+#: ../src/core/main.c:130
+#, fuzzy, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:267
+msgid "Disable connection to session manager"
+msgstr "Desconectar xestor de sesión"
+
+#: ../src/core/main.c:273
+msgid "Replace the running window manager with Marco"
+msgstr "Camuda'l xestor ventanes por Marco"
+
+#: ../src/core/main.c:279
+msgid "Specify session management ID"
+msgstr "Especificar ID xestor de sesión"
+
+#: ../src/core/main.c:284
+msgid "X Display to use"
+msgstr "Usar X Display"
+
+#: ../src/core/main.c:290
+msgid "Initialize session from savefile"
+msgstr "Entamar sesión dende archivu guardáu"
+
+#: ../src/core/main.c:296
+msgid "Print version"
+msgstr "Versión d'imprentar"
+
+#: ../src/core/main.c:302
+msgid "Make X calls synchronous"
+msgstr "Facer llamaes X sincronizaes"
+
+#: ../src/core/main.c:308
+msgid "Turn compositing on"
+msgstr "Activar la composición"
+
+#: ../src/core/main.c:314
+msgid "Turn compositing off"
+msgstr "Desactivar la composición"
+
+#: ../src/core/main.c:533
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Falló escanear directoriu de temes: %s\n"
+
+#: ../src/core/main.c:549
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "¡Nun atopáu un tema! Tate seguru qu'esiste %s y contien un tema.\n"
+
+#: ../src/core/main.c:605
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Falló reiniciu. %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:505 ../src/core/prefs.c:660
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Clave MateConf '%s' ta puesta a un valor nun válidu\n"
+
+#: ../src/core/prefs.c:586 ../src/core/prefs.c:829
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d Clave Gconf almacenada en %s está fuera de rangu %d a %d\n"
+
+#: ../src/core/prefs.c:630 ../src/core/prefs.c:707 ../src/core/prefs.c:755
+#: ../src/core/prefs.c:819 ../src/core/prefs.c:1112 ../src/core/prefs.c:1128
+#: ../src/core/prefs.c:1145 ../src/core/prefs.c:1161
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Tecla MateConf \"%s\" establecida a un tipo nun válido\n"
+
+#: ../src/core/prefs.c:1231
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Desactivaos los arreglos pa aplicaciones rotes. Delles aplicaciones pueden "
+"nun comportase correutamente.\n"
+
+#: ../src/core/prefs.c:1302
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Nun puede analizase descripción de la fonte \"%s\" dende calve MateConf %s\n"
+
+#: ../src/core/prefs.c:1364
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Atopáu \"%s\" en base de datos de configuración nun ye un valor válidu pal "
+"modificador botón mur\n"
+
+#: ../src/core/prefs.c:1782
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Error axustando númberu d'arees de trabayu a %d: %s\n"
+
+#: ../src/core/prefs.c:1971 ../src/core/prefs.c:2474
+#, fuzzy, c-format
+msgid "Workspace %d"
+msgstr "Mover al Espaciu de Trabayu S_uperior"
+
+#: ../src/core/prefs.c:2001 ../src/core/prefs.c:2179
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" atopau na base de datos de configuración nun ye un valor válidu pa la "
+"combinación de tecles \"%s\"\n"
+
+#: ../src/core/prefs.c:2555
+#, fuzzy, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Fallu estableciendo nome pal Escritoriu %d a \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2753
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Fallu al afitar l'estáu del compositor: %s\n"
+
+#: ../src/core/screen.c:350
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Pantalla %d visualizada '%s' nun ye válida\n"
+
+#: ../src/core/screen.c:366
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"La pantalla %d del visor '%s' ya tien un xestor de ventanos; tenta usar la "
+"opción --replace pa cambear el xestor de ventanos actual.\n"
+
+#: ../src/core/screen.c:393
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Nun puede algamase xestor ventaos seleccionáu na pantalla %d amosada en \"%s"
+"\"\n"
+
+#: ../src/core/screen.c:451
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Pantalla %d amosada en \"%s\" ya tien un xestor de ventanos manager\n"
+
+#: ../src/core/screen.c:661
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Nun puede lliberase la pantalla %d amosada en \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"El formatu parezse a «<Control>a» o «<Shift><Alt>F1».\n"
+"\n"
+"L'intérprete ye enforma lliberal y permite tantu mayúscules como minúscules "
+"arriendes d'abreviatures como por exemplu «<Ctl>» y «<Ctrl>». Si configura "
+"esta opción cola cadena especial «disabled» entós nun habrá combinación de "
+"tecles pa esta aición."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"El formatu se parezse a «<Control>a» o «<Shift><Alt>F1»\n"
+"\n"
+"L'intérprete ye enforma lliberal y permite tantu mayúscules como minúscules "
+"arriendes d'abreviatures como por exemplu «<Ctl>» y «<Ctrl>». Si configura "
+"esta opción cola cadena especial «disabled» entós nun habrá combinación de "
+"tecles pa esta aición.\n"
+"\n"
+"Esta combinación de tecles pue invertise calteniendo calcada la tecla "
+"«Mayús»; por ello «Mayús» nun pue ser una de les tecles de la combinación."
+
+#: ../src/core/session.c:837 ../src/core/session.c:844
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Nun puede crease directoriu '%s': %s\n"
+
+#: ../src/core/session.c:854
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Nun puede abrise ficheru de sesión '%s' pa escribir: %s\n"
+
+#: ../src/core/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Fallu escribiendo ficheru sesión '%s': %s\n"
+
+#: ../src/core/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Fallu zarrando ficheru sesión '%s':%s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1093
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Falló lleer el ficheru de sesión guardáu %s: %s\n"
+
+#: ../src/core/session.c:1132
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Falló analizar ficheru de sesión guardáu: %s\n"
+
+#: ../src/core/session.c:1181
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "Vióse l'atributu <marco_session> pero yá tenemos la ID de sesión"
+
+#: ../src/core/session.c:1194 ../src/core/session.c:1269
+#: ../src/core/session.c:1301 ../src/core/session.c:1373
+#: ../src/core/session.c:1433
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Atributu desconocíu %s nel elementu <%s>"
+
+#: ../src/core/session.c:1211
+#, c-format
+msgid "nested <window> tag"
+msgstr "Etiqueta <window> anidada"
+
+#: ../src/core/session.c:1453
+#, c-format
+msgid "Unknown element %s"
+msgstr "Elementu desconocíu %s"
+
+#: ../src/core/session.c:1879
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Fallu llanzando marco-dialog p'alvertir acerca d'aplicaciones que nun "
+"soporten xestor de sesión: %s\n"
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Falló abrir log debug: %s\n"
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Falló ficheru rexistru actividá fdopen() %s: %s\n"
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Abiertu archivu log %s\n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco fue compiláu ensín soporte pal modu testu\n"
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "Xestor ventanes "
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr "Error en xestor ventanes "
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr "Alerta xestor ventanes: "
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr "Error xestor ventanes: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:581 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5625
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"El ventanu %s llanta SM_CLIENT_ID sobre elli mesmu, en vez de llantalu "
+"sobre'l ventanu WM_CLIENT_LEADER como amuesa en l'ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6190
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"El ventanu %s llanta un índiz MWM qu'amuesa que nun ye redimensionable, pero "
+"llanta un tamañu mínimu de %d x %d y un tamañu máximu de %d x %d ; lo que "
+"nun tien munchu sentíu.\n"
+
+#: ../src/core/window-props.c:260
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Aplicación establez una falsa _NET_WM_PID %lu\n"
+
+#: ../src/core/window-props.c:377
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (en %s)"
+
+#: ../src/core/window-props.c:1358
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Ventanu nun válidu WM_TRANSIENT_FOR pa 0x%lx especificao pa %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"El ventanu 0x%lx tien la propiedá %s\n"
+"que tendría tener el tipu %s y el formatu %d\n"
+"y tien el tipu %s y el formatu %d n_items %d\n"
+"Quiciabes seya un erru de l'aplicación y non del xestor\n"
+"de ventanos.\n"
+"El títulu del ventanu ye=\"%s\" la so triba=\"%s\" y el so nome=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Propiedá en ventanu %s contíen 0x%lx UTF-8 nun válidu\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"La propiedá %s del ventanu 0x%lx contien un códigu UTF-8 non válidu pal "
+"elementu %d na llista\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Cambiar a espaciu de trabayu 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Cambiar a espaciu de trabayu 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Cambiar a espaciu de trabayu 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Cambiar a espaciu de trabayu 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Cambiar a espaciu de trabayu 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Cambiar a espaciu de trabayu 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Cambiar a espaciu de trabayu 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Cambiar a espaciu de trabayu 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Cambiar a espaciu de trabayu 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Cambiar a espaciu de trabayu 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Cambiar a espaciu de trabayu 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Cambiar a espaciu de trabayu 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Camudar al área de trabayu a la esquierda del área de trabayu actual"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Camudar al área de trabayu a la drecha del área de trabayu actual"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Camudar al área de trabayu enriba del área de trabayu actual"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Camudar al área de trabayu debaxo del área de trabayu actual"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Movese ente les ventanes d'una aplicación usando un ventanu emerxente"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Retroceder ente les ventanes d'una aplicación usando un ventanu emerxente"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Movese ente les ventanes usando un ventanu emerxente"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Retroceder ente les ventanes usando un ventanu emerxente"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Movese ente les ventanes usando una ventana emerxente"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Retroceder ente los paneles y escritoriu usando un ventanu emerxente"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Mover de secute ente ventanos"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Retroceder ente los paneles d'una aplicación darréu"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Mover de secute ente ventanes"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Retroceder ente les ventanes darréu"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Mover de secute ente paneles y l'escritoriu"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Mover de secute p'atrás ente paneles y l'escritoriu"
+
+#: ../src/include/all-keybindings.h:191
+#, fuzzy
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Anubrir toles ventanes normales y dar focu al fondu del escritoriu"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Amosar el menú principal del panel"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Amosar el cuadru de diálogu del panel «Executar aplicación»"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Facer una semeya de la pantalla"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Saca una semeya d'una ventana"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Executar una terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Activar el menú de la ventana"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Camudar a modu pantalla completa"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Camudar a estáu maximizáu"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Conmutar si una ventana siempres se verá encima d'otres ventanes"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximizar ventana"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restaurar la ventana"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Activa estáu endolcáu"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimizar ventana"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Zarrar ventana"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Mover ventana"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Cambiar el tamañu la ventana"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Conmutar si la ventana apaez en toles árees de trabayu o namái nuna"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Mover ventana al espaciu de trabayu 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Mover ventana al espaciu de trabayu 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Mover ventana al espaciu de trabayu 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Mover ventana al espaciu de trabayu 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Mover ventana al espaciu de trabayu 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Mover ventana al espaciu de trabayu 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Mover ventana al espaciu de trabayu 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Mover ventana al espaciu de trabayu 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Mover ventana al espaciu de trabayu 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Mover ventana al espaciu de trabayu 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Mover ventana al espaciu de trabayu 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Mover ventana al espaciu de trabayu 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Mover ventana un espaciu de trabayu a manzorga"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Mover ventana un espaciu de trabayu a derecha"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Mover ventana un espaciu de trabayu p'arriba"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Mover ventana un espaciu de trabayu p'abaxo"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Llevantar la ventana si ta cubierta por otra ventana, minimizala n'otru casu"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Poner el ventanu en primer planu"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Ventanu más baxu per debaxo d'otros ventanos"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximizar ventana verticalmente"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximizar ventana horizontalmente"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Mover la ventana a la esquina noroeste (arriba a la esquierda)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Mover la ventana a la esquina noreste (arriba a la drecha)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Mover la ventana a la esquina sureste (abaxo a la esquierda)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Mover la ventana a la esquina suroeste (abaxo a la drecha)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Mover la ventana al llau norte (arriba) de la pantalla"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Mover la ventana al llau sur (abaxo) de la pantalla"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Mover la ventana al llau este (drecha) de la pantalla"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Mover la ventana al llau oeste (esquierda) de la pantalla"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Mover la ventana al centru de la pantalla"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Non imprementao) La navegación furrula en términos d'aplicaciones y non de "
+"ventanos"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Una cadena de descripción de la triba de lletra que describe un tipu de "
+"lletra pa los títulos de los ventanos. El tamañu d'una descripción sólo "
+"s'emplegará si la opción titlebar_font_size ta definida como 0; asina mesmo, "
+"esta opción tamién tará deshabilitada si la opción "
+"titlebar_uses_desktop_font ta configurada como verdadera"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Aición al facer doble click na barra de títulu"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Ación click central na barra títulu"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Ación click drecho na barra títulu"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Ordenamientu de los botones na barra de títulu"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Distribución de botones na barra de títulos. El valor tien que de una "
+"cadena, como \"menu:minimize,maximize,spacer,close\"; los dos puntos "
+"separten la esquina esquierda de la ventana de la esquina drecha y los nomes "
+"de los botones tan separtaos por comes. Nun se permiten botones duplicaos. "
+"Los nomes desconocíos de botones inórense ensin avisar, d'esta miente esos "
+"botones pueden amestase en versiones futures de Marco ensin desiguar les "
+"versiones más antigües. Puede emplegase una etiqueta espaciadora pa inxertar "
+"dellos espacios entre dos botones que tean xuntos."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Automáticamente sube la ventana enfocada"
+
+#: ../src/marco.schemas.in.in.h:9
+#, fuzzy
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+"Al calcar sobre un ventanu calteniendo calcada esta tecla camudadora "
+"moveráse'l ventanu (botón izquierdu), redimensionaráse'l ventanu (botón "
+"central), o amosaráse'l menú del ventanu (botón drechu). El camudador "
+"espresaráse como &lt;Alt&gt;\" or \"&lt;Super&gt;\" por exemplu."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Comando que s'executen en respuesta a xuniones de tecles"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Componiendo Xestor"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Control de cómo s'enfoquen les nueves ventanes"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Tema actual"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Espera en milisegundos pa la opción d'alzar l'audiu"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determina cuando Marco ye un xestor compuestu."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determina si les aplicaciones o'l sistema pueden xenerar «bips» audibles; "
+"podría emplegase a comuña con «la campana visual» pa permitir «bips» "
+"silenciosos."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Desactiva los axustes necesarios pa les aplicaciónes vieyes o mal encadarmaes"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Habilitar Campana Visual"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Si ta establecíu a «true» y el mou del focu ye «sloppy» o «mouse» entós el "
+"ventanu col focu llevantaráse automáticamente tres un retardu especificáu "
+"auto_raise_delay. Esto nun tien que ver con calcar nun ventanu pa "
+"llevantalu, nin con entrar nun ventanu nuna operación d'arrastrar y soltar."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Si ta activao, ignorar la opción titlebar_font, y usar l'aplicación standard "
+"pa fontes del títulu del ventanu."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Si ye verdadero, marco dará al usuariu menos información y menos "
+"sensación de manipulación, emplegando marcos d'alambre, torgando animaciones "
+"o otros medios. Esto ye una reducción grande n'usabilidá pa munchos "
+"usuarios, pero puede permitir furrular a les aplicaciones heredaes y "
+"servidores de terminal cuanto d'otra manera nun sería posible. Por embargu, "
+"la carauterística de marcos d'alambre desactívase cuando l'accesibilidá ta "
+"activada."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Si ye verdá, entós Marco furrula en términos d'aplicaciones en vez de "
+"ventanes. El conceutu ye un pocu abstrautu, pero en xeneral una "
+"configuración sofitada en aplicaciones aseméyase más a un Mac y menos a "
+"Windows. Cuando enfoca un ventanu nel mou sofitáu en aplicación tolos "
+"ventanos na aplicación xuben. Tamién nel mou sofitáu en aplicación, les "
+"pulsaciones del focu nun se pasen pelos ventano n'otres aplicaciones. El mou "
+"sofitáu en aplicaciones ta, por embargu, ensin implementar abondo nesti "
+"momentu."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Si activo, intenta menos usabilidá pa aforrar recursos"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modificador a usar pa les aiciones de calcar ventanes modificades"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nome del espaciu de trabayu"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Númberu d'espacios de trabayu"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Númberu d'estayes de trabayu. Tien de ser mayor que cero, y tien un máximu "
+"fixu pa prevenir la inutilización del escritoriu al pedir, ensin querelo, "
+"demasiaes estayes de trabayu."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Executar un comandu definíu"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Axustar esta opción a «false» pue llevar a un comportamientu erróneu, de tal "
+"mou que s'encamienta a los usuarios que nun la camuden del valor «true». "
+"Munches aiciones (ex. calcar nel área del veceru, mover o redimensionar la "
+"ventana) xeneralmente llevanten la ventana como efeutu collateral. Axustar "
+"esti valor a «false», daqué desaconseyao, desacoplará'l llevantáu de les "
+"otres aiciones del usuariu ya inorará les piticiones de llevantar que "
+"xeneren les aplicaciones. Consulte http://bugzilla.gnome.org/show_bug.cgi?"
+"id=445447#c6. Inclusu cuando esta opción ye «false», les ventanes entá puen "
+"llevantase calcando col botón esquierdu del mur sobro cualesquier parte de "
+"la ventana, una calcación normal na decoración de la ventana, o por mensaxes "
+"especiales de dalguna aplicación, talo como les peticiones d'activación de "
+"les miniaplicaciones de llistes de xeres. Anguaño esta opción ta desactivada "
+"nel mou calcar pa dar el focu. Note que la llista de formes de llevantar "
+"ventanes cuando raise_on_click ta a «false» nun inclúi piticiones programaes "
+"de les aplicaciones pa llevantar les ventanes; tales piticiones inórense "
+"independientemente del motivu de la pitición. Si ye un desendolcador "
+"d'aplicaciones y tien un usuariu quexándose de que la so aplicación nun "
+"furrula con esti axuste desactiváu, díga-y que ye'l _so_ problema (de élli) "
+"por frañar el xestor de ventanes y que tien de camudar la opción a «true» o "
+"vivir col fallu que solicitó."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Delles aplicaciones nun faen casu de les especificaciones en formes que "
+"resulten en comportamientu incorreutu del xestor de ventanes. Esta opción "
+"pon a Marco n'un mou percorrechu, lo que da un interfaz d'usuariu más "
+"consistente, porque ún nun tien qu'arrancar denguna aplicación que nun "
+"furrule."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "La Campana del Sistema Siéntese"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Diz-y a Marco como implementar la indicación visual de que la campana del "
+"sistema o la campana d'indicación d'otra aplicación sonaron. Anguaño hi dos "
+"valores válidos, «fullscreen», que causa un ceguñu en blancu y negru en tola "
+"pantalla y «frame_flash» que causa que la barra de títulos de la ventana de "
+"l'aplicación, que mandó la señal de campana, ceguñe. Si l'aplicación que "
+"mandó la campana ye desconocida (como pasa davezu pal «bip del sistema» "
+"predetermináu). la barra de títulos de la ventana actual que tenga'l foco "
+"ceguñará."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Les claves /apps/marco/global_keybindings/run_command_N definen les "
+"combinaciones de tecles que correspuenden a esos comandos. Al calcar la "
+"combinación de tecles pa «run_command_N» executaráse'l «command_N»."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"La clave /apps/marco/global_keybindings/run_command_screenshot define una "
+"combinación de tecles que fai que'l comandu especificáu por esta "
+"configuración s'invoque."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"La clave /apps/marco/global_keybindings/run_command_window_screenshot "
+"define una combinación de tecles que fai que'l comandu especificáu por esta "
+"configuración s'invoque."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"La combinación de tecles qu'executa'l comandu numberáu correspondiente en /"
+"apps/marco/keybinding_commands. El formatu vese como «&lt;Control&gt;a» o "
+"«&lt;Mayús&gt;&lt;Alt&gt;F1». L'intérprete ye bastante lliberal y permite "
+"tanto mayúscules como minúscules arriendes d'abreviatures como por exemplu "
+"«&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción cola cadena especial "
+"«disabled» entós nun habrá combinación de tecles pa esa aición."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Nome del espaciu de trabayu."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "El comandu de captura de pantalla"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"El tema determina l'apariencia de bordes de ventanos, barres título y resto."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"El retardu enantes d'abrir un ventanu si «auto_rise» ta configuráu como "
+"verdaderu. El retardu ta especificáu en milésimes de segundu."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"El mou de focu de la ventana amuesa como tán activaes les ventanes. Tien "
+"tres valores posibles; «click» significa que la ventana tien qu'esbillase pa "
+"obtener el focu, «sloppy» significa qué ventanes obtienen el focu cuando'l "
+"mur entra na ventana y «mouse» significa que les ventanes obtienen el focu "
+"cuando'l ratón mur na ventana y piérdenlu cuando'l mur sal de la ventana."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "El comandu de captura d'una ventana"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opción determina los efeutos de calcar dos vegaes na barra de títulos. "
+"Les opciones válides anguaño son «toggle_shade», qu'endolca/desendolca la "
+"ventana, «toggle_maximized» que maximiza/regulariza la ventana, "
+"«toggle_maximize_horizontally» y «toggle_maximize_vertically» que maximiza/"
+"regulariza la ventana sólo nesa direición, «minimize» que minimiza la "
+"ventana, «shade» qu'endolca la ventana faza arriba, «menu» qu'amuesa la "
+"ventana de menú, «lower» que llanta la ventana tres de toles otres y «none» "
+"que fai nada."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opción determina los efeutos de calcar col botón central na barra de "
+"títulos. Les opciones válides anguaño son «toggle_shade», qu'endolca/"
+"desendolca la ventana, «toggle_maximized» que maximiza/regulariza la ventana, "
+"«toggle_maximize_horizontally» y «toggle_maximize_vertically» que maximiza/"
+"regulariza la ventana sólo nesa direición, «minimize» que minimiza la "
+"ventana, «shade» qu'endolca la ventana faza arriba, «menu» qu'amuesa la "
+"ventana de menú, «lower» que llanta la ventana tres de toles otres y «none» "
+"que fai nada."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opción determina los efeutos de calcar col botón drechu na barra de "
+"títulos. Les opciones válides anguaño son «toggle_shade», qu'endolca/"
+"desendolca la ventana, «toggle_maximized» que maximiza/regulariza la ventana, "
+"«toggle_maximize_horizontally» y «toggle_maximize_vertically» que maximiza/"
+"regulariza la ventana sólo nesa direición, «minimize» que minimiza la "
+"ventana, «shade» qu'endolca la ventana faza arriba, «menu» qu'amuesa la "
+"ventana de menú, «lower» que llanta la ventana tres de toles otres y «none» "
+"que fai nada."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Esta opción apurre control adicional sobre cómo los ventanos que se crearon "
+"fai poco obtienen focu. Tien dos valores posibles: «smart» aplica'l mou de "
+"focu normal del usuariu, y «strict» fai que los ventano entamaes dende un "
+"terminal nun se-yos dea focu."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Activa una indicación visual cuando una aplicación o el sistema emite una "
+"«campanada» o un «bip» ; ye mui útil pa los ambientes ruidosos y pa les "
+"persones con dificultaes auditives."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Usar fonte sistema estándard nos títulos de ventana"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Tipu de Avisu Visual"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Indica si elevar tien de ser un efeutu llateral d'otres interaiciones del "
+"usuariu"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Modo foco ventana"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Fonte títulu Ventana"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Emplegu: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Zarrar ventana"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menú Ventana"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimizar Ventana"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximizar Ventana"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restaurar la ventana"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Endolcar ventanu"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Desendolcar ventanu"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Mantener Ventana Enrriba"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Desaniciar Ventana d'Enrriba"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Siempre Visible nel Espaciu de Trabayu"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Poner la ventana sólo nun área de trabayu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Desma_ximizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Enrollar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Desenrrollar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Mover"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Axustar Tamañu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Mover la barra de títulu a la _pantalla"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Siempre _enriba"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Siempre Visible nel Esp_aciu de Trabayu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Sól_o nesti Espaciu de Trabayu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Moverl al Espaciu de Trabayu I_zquierdu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Mover al Espaciu de Trabayu _Derechu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Mover al Espaciu de Trabayu S_uperior"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Mover al Espaciu de Trabayu In_ferior"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Zarrar"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr ""
+
+#: ../src/ui/menu.c:213
+#, fuzzy, c-format
+msgid "Workspace 1_0"
+msgstr "Mover al Espaciu de Trabayu S_uperior"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr ""
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Mover a Otru Espaciu de Traba_yu"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hiper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/ui/marco-dialog.c:50 ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Nun puede intrepretase \"%s\" como un enteru"
+
+#: ../src/ui/marco-dialog.c:57 ../src/ui/theme-parser.c:531
+#: ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Nun s'entienden caracteres \"%s\" en cadena \"%s\""
+
+#: ../src/ui/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr "\"%s\" nun ta respondiendo."
+
+#: ../src/ui/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Pue elexir esperar un intre pa que continúe o forciar a la aplicación a "
+"terminar."
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr "Títulu"
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr "Clas"
+
+#: ../src/ui/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Estes ventanes nun sofiten «guardar la configuración actual» y tendrán que "
+"reaniciase manualmente la próxima vegada qu'anicie una sesión."
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Hebo un error executando \"%s\":\n"
+"%s."
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "Cimeru"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "baxeru"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "izquierda"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "drecha"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "La xeometría del marcu nun especifica la dimensión \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"La xeometría del marcu nun especifica la dimensión \"%s\" pal borde \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "La proporción del botón %g nun ye razonable"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "La xeometría del marcu nun especifica el tamañu de los botones"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Los dilíos tienen que tener polo menos dos colores"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"La especificación de color GTK tien que tener l'estáu entre corchetes, "
+"exemplu. gtk:fg[NORMAL] onde NORMAL ye l'estáu; nun se fue quien a analizar "
+"\"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"La especificación de color GTK tien que tener un corchete zarráu dempués del "
+"estáu, exemplu. gtk:fg[NORMAL] onde NORMAL ye l'estáu; nun se fue quien a "
+"interpretar «%s»"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Nun s'entiende l'estáu \"%s\" na especificación del color"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+"Nun s'entiende'l componente de color \"%s\" na especificación del color"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"El formatu de mecío ye \"blend/bg_color/fg_color/alpha\", \"%s\" nun "
+"coincide col formatu"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Nun se pudo analizar el valor alpha \"%s\" nel color entemecío"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "El valor alpha \"%s\" nel color entemecío nun ta entre 0.0 e 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"El formatu de solombreáu ye \"shade/base_color/factor\", \"%s\" nun coincide "
+"col formatu"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+"Nun se pudo analizar el factor de solombreáu \"%s\" nel color del solombreáu"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "El factor de solombreáu \"%s\" nel color solombreáu ye negativu"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Nun se pudo analizar el color \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+"La espresión de coordenaes contién un carácter '%s' que nun ta permitíu"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"La espresión de coordenaes contenía un númberu de coma flotante «%s» que nun "
+"se pudo analizar"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"La espresión de coordenaes contenía un enteru «%s» que nun se pudo analizar"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"La espresión de coordenaes contenía un operador inválidu al entamu del so "
+"testu: «%s»"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "La espresión de coordenaes taba balera o nun s'entendió"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+"La espresión de coordenaes tuvo un resultáu erroneu por dividir por cero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"La espresión de coordenaes intentó emplegar un operador mod con un númberu "
+"de coma flotante"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"La espresión de coordenaes tien un operador «%s» onde s'esperaba un operandu"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"La espresión de coordenaes tien un operandu onde s'esperaba un operador"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"La espresión de coordenaes fina con un operador en vez de con un operandu"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"La espresión de coordenaes tien l'operador «%c» seguíu del operador «%c» ensin "
+"un operandu entre ellos"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"La espresión de coordenaes tien una variable o constante desconocida «%s»"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "L'analizador de la espresión de coordenaes derrocó'l so búfer."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"La espresión de coordenaes tien un paréntesis peslláu ensin un paréntesis "
+"abiertu"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"La espresión de coordenaes tien un paréntesis abiertu ensin un paréntesis "
+"pesllaú"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"La espresión de coordenaes paez que nun tien nin operadores nin operandos"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "El tema contenía una espresión que resultó d'un erru: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> tien "
+"qu'especificase pa esti estilu de marcu"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Falta <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Hebo un erru al cargar el tema «%s»: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nun se configuró <%s> pal tema «%s»"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Nun hai un estilu de marcu pa la triba de ventanu «%s» nel tema «%s», añadi un "
+"elementu <window type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Les constantes definíes pol usuariu tienen qu'entamar con un lletra "
+"mayúscula; \"%s\" nun lo fai"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "La constante «%s» yá se definió"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Nun ta definíu l'atributu «%s» nel elementu <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Llinia %d caráuter %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "L'atributu \"%s\" ta repetíu nel mesmu elementu <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "L'atributu \"%s\" nun ye válidu nel elementu <%s> n'esti contextu"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Enteru %ld tien que ser positivu"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Enteru %ld ye mui grande, másimu actualmente ye %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Nun pudo interpretase «%s» como un númberu de puntu flotante"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Valores booleanos deben ser \"true\" o \"false\" non \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "L'ángulu tien de tar ente 0.0 y 360.9, foi %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"El valor d'alfa tien de tar ente 0.0 (invisible) y 1.0 (opacu ensembre), foi "
+"%g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Escala de títulu inválida «%s» (tien de ser una de xx-small,x-small,small,"
+"medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> nome «%s» usáu una segunda vegada"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "El <%s> padre «%s» nun se definió"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometría \"%s\" nun defenía"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> tien d'especificar o una xeometría o un padre que tenga una xeometría"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Tienes d'especificar un fondu pa un valor alpha pa que tenga sentíu"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Tipu desconocíu \"%s\" nel elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set desconocíu \"%s\" nel elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "La triba de ventanu «%s» yá s'asignó a un conxuntu d'estilu"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "L'elementu <%s> nun ta permitíu debaxo de <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Nun pue especificase dambos «button_width»/«button_height» y «aspect ratio» pa "
+"los botones"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Distancia \"%s\" desconocía"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Ratio aspeutu \"%s\" desconocíu"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Borde \"%s\" desconocíu"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Ensín atributu \"start_angle\" o \"from\" nel elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Ensín atributu \"extent_angle\" o \"to\" nel elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Nun s'entendió'l valor «%s» pal tipu de degradáu"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Nun s'entendió en tipu de rellenu «%s» pal elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Nun s'entendió estáu «%s» pal elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Nun s'entendió endolcar «%s» pal elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Nun s'entendió la flecha «%s» pal elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nun se definió una <draw_ops> llamada «%s»"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Incluyir el draw_ops «%s» equí podría criar una referencia circular"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Posición desconocía «%s» pa la pieza del marcu"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "L'estilu del marcu yá tien una pieza na posición %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nun se definió denguna <draw_ops> col nome «%s»"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Función desconocía \"%s\" pal botón"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "La función del botón «%s» nun esiste nesta versión (%d, necesita %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Estáu desconocíu \"%s\" pal botón"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "L'estilu de marcos yá tien un botón pa la función %s estáu %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "«%s» nun ye valor válidu pal atributu focu"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "«%s» nun ye valor válidu pal atributu estáu"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Nun se definió dengún estilu denomáu «%s»"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "«%s» nun ye valor válidu pal atributu resize"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Nun debiera tener un atributu «resize» nel elementu <%s> pa los estaos "
+"maximizáu/endolcáu"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Nun tendría de tener un atributu «resize» nel elementu <%s> pa los estaos "
+"maximizaos."
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "L'estilu yá s'especificó pa estáu %s redimensionáu %s focu %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "L'estilu ya s'especificó pal estáu %s focu %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nun puedes tener dos draw_ops pa un elementu <piece> (el tema especificó un "
+"atributu draws_ops y tamién un elementu <draw_ops> o especificó los dos "
+"elementos)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nun puedes tener dos draw_ops pa un elementu <button> (el tema especificó un "
+"atributu draw_ops y tamién un elementu <draw_ops> o especificó los dos "
+"elementos)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nun puedes tener dos draw_ops pa un elementu <menu_icon> (el tema especificó "
+"un atributu draw_ops y tamién un elementu <draw_ops> o especificó los dos "
+"elementos)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "L'elementu más esternu n'un tema debe ser <marco_theme> non <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"L'elementu <%s> nun ta permitíu dientro d'un elementu name/author/date/"
+"description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "L'elementu <%s> nun ta permitíu dientro d'un elementu <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"L'elementu <%s> nun ta permitíu dientro d'un elementu distance/border/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+"L'elementu <%s> nun ta permitíu dientro d'un elementu d'operación de dibuxu"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "L'elementu <%s> nun se permite dientro d'ún elementu <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Nun s'apurrió draw_ops pa la pieza del cuadru"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Nun s'apurrió draw_ops pa botón"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Nun se permite testu dientro del elementu <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, fuzzy, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<name> especificáu dos vegaes pa esti tema"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Falló atopar un ficheru válidu pal tema %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "L'archivu de tema %s nun contién un elementu raigañu <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Ventanu"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Ventanes/tirador"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Ventanu/_Diálogu"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Ventanu/_Diálogu modal"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Ventanu/_Utilidá"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Ventanu/_Ventanu presentación"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Ventanes/Empotrable _superior"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "Ventanes/Empotrable _baxeru"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Ventanes/Empotrable _izquierdu"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Ventanes/Empotrable d_rechu"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Ventanes/_Tolos empotrables"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Ventanu/_Escritoriu"
+
+#: ../src/ui/theme-viewer.c:135
+msgid "Open another one of these windows"
+msgstr "Abrir otra de eses ventanes"
+
+#: ../src/ui/theme-viewer.c:142
+msgid "This is a demo button with an 'open' icon"
+msgstr "Esto ye un botón de demostración con un iconu d'apertura"
+
+#: ../src/ui/theme-viewer.c:149
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Esto ye un botón de demostración con un iconu de salida"
+
+#: ../src/ui/theme-viewer.c:242
+msgid "This is a sample message in a sample dialog"
+msgstr "Esto ye un exemplu de mensaxe en un diálogu d'exemplu"
+
+#: ../src/ui/theme-viewer.c:325
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Elementu de menú falsu %d\n"
+
+#: ../src/ui/theme-viewer.c:359
+msgid "Border-only window"
+msgstr "Ventanu sólo borde"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Bar"
+msgstr "Barra"
+
+#: ../src/ui/theme-viewer.c:378
+msgid "Normal Application Window"
+msgstr "Ventanu Aplicación Normal"
+
+#: ../src/ui/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Cuadru Diálogu"
+
+#: ../src/ui/theme-viewer.c:386
+msgid "Modal Dialog Box"
+msgstr "Cuadru Diálogu Modal"
+
+#: ../src/ui/theme-viewer.c:390
+msgid "Utility Palette"
+msgstr "Paleta d'utilidaes"
+
+#: ../src/ui/theme-viewer.c:394
+msgid "Torn-off Menu"
+msgstr "Desactivar Menú"
+
+#: ../src/ui/theme-viewer.c:398
+msgid "Border"
+msgstr "Borde"
+
+#: ../src/ui/theme-viewer.c:726
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test de distribución de botones %d"
+
+#: ../src/ui/theme-viewer.c:755
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisegundos pa dibuxar un marcu de ventana"
+
+#: ../src/ui/theme-viewer.c:798
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Emplegu: marco-theme-viewer [NOMETEMA]\n"
+
+#: ../src/ui/theme-viewer.c:805
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Hebo un fallu al cargar el tema: %s\n"
+
+#: ../src/ui/theme-viewer.c:811
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Cargáu tema \"%s\" en %g segundos\n"
+
+#: ../src/ui/theme-viewer.c:852
+msgid "Normal Title Font"
+msgstr "Tipografía de títulu normal"
+
+#: ../src/ui/theme-viewer.c:858
+msgid "Small Title Font"
+msgstr "Fonte de Títulu pequeña"
+
+#: ../src/ui/theme-viewer.c:864
+msgid "Large Title Font"
+msgstr "Tipografía de títulu grande"
+
+#: ../src/ui/theme-viewer.c:869
+msgid "Button Layouts"
+msgstr "Distribución de botones"
+
+#: ../src/ui/theme-viewer.c:874
+msgid "Benchmark"
+msgstr "Bancu de prebes"
+
+#: ../src/ui/theme-viewer.c:921
+msgid "Window Title Goes Here"
+msgstr "El títulu de la ventana va equí"
+
+#: ../src/ui/theme-viewer.c:1025
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Dibuxeste %d marcos en %g segundos del llau del veceru (%g milisegundos por "
+"marcu) y %g segundos de tiempu estándar incluyendo recursos del servidor X (%"
+"g milisegundos por marcu)\n"
+
+#: ../src/ui/theme-viewer.c:1244
+msgid "position expression test returned TRUE but set error"
+msgstr "La prueba d'espresión de la posición devolvió TRUE pero con un fallu"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "La prueba d'espresión de la posición devolvió FALSE pero con un fallu"
+
+#: ../src/ui/theme-viewer.c:1250
+msgid "Error was expected but none given"
+msgstr "Esperábase un fallu, pero nun hebo dengún"
+
+#: ../src/ui/theme-viewer.c:1252
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Esperábase un fallu %d pero nun hebo el %d"
+
+#: ../src/ui/theme-viewer.c:1258
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Nun s'esperaba un fallu, pero devolvióse un: %s"
+
+#: ../src/ui/theme-viewer.c:1262
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "el valor x yera %d, esperábase %d"
+
+#: ../src/ui/theme-viewer.c:1265
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "el valor y yera %d, esperábase %d"
+
+#: ../src/ui/theme-viewer.c:1330
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d espresiones de coordenaes interpretaes en %g segundos (%g segundos de "
+"media)\n"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Falló analizar mensaxe \"%s\" dende'l procesu de diálogu\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Fallu lleendo dende'l procesu amosar diálogu: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr "Fallu llanzando marco-dialog pa matar una aplicación: %s\n"
+
+#~ msgid "Desk %d"
+#~ msgstr "Escritoriu %d"
+
+#~ msgid "Desk %d%n"
+#~ msgstr "Escritoriu %d%n"
+
+#~ msgid "Desk 1_0"
+#~ msgstr "Escritoriu 1_0"
+
+#~ msgid "Desk %s%d"
+#~ msgstr "Escritoriu %s%d"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> especificáu dos vegaes pa esti tema"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> especificáu dos vegaes pa esti tema"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> especificada dos vegaes pa esti tema"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> especificada dos vegaes pa esti tema"
+
+#~ msgid "Move backwards between windows immediately"
+#~ msgstr "Mover de secute p'atrás ente ventanes"
diff --git a/po/az.po b/po/az.po
new file mode 100644
index 00000000..f639e82c
--- /dev/null
+++ b/po/az.po
@@ -0,0 +1,3172 @@
+# translation of marco.HEAD.az.po to Azerbaijani
+# translation of marco.HEAD.az.po to Azerbaijani Turkish
+# Copyright (C) 2002,2003, 2004 Free Software Foundation, Inc.
+# Mətin Əmirov <[email protected]>, 2002,2003, 2004.
+# Metin Amiroff <[email protected]>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD.az\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-09-19 12:30+0200\n"
+"PO-Revision-Date: 2004-08-17 21:53+0300\n"
+"Last-Translator: Metin Amiroff <[email protected]>\n"
+"Language-Team: Azerbaijani <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"net>\n"
+"X-Generator: KBabel 1.3.1\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "İstifadə Qaydası: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:128
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco interaaktiv mod dəstəyi olmadan dərlənib\n"
+
+#: ../src/delete.c:63 ../src/delete.c:90 ../src/marco-dialog.c:70
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" integer olaraq oxuna bilmədi"
+
+#: ../src/delete.c:70 ../src/delete.c:97 ../src/marco-dialog.c:77
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "\"%s\" qatarının sonundakı \"%s\" hərfləri başa düşülmədi"
+
+#: ../src/delete.c:128
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Dialoq prosesindən gələn \"%s\" ismarışı oxuna bilmədi\n"
+
+#: ../src/delete.c:263
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Dialoq ekran gedişatından oxuma xətası: %s\n"
+
+#: ../src/delete.c:344
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr "Tə'minatı sonlandırma haqqında marco-dialoqu başlatma xətası: %s\n"
+
+#: ../src/delete.c:452
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Verici adı alına bilmədi: %s\n"
+
+#: ../src/display.c:319
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X Window System displeyi '%s' açıla bilmədi\n"
+
+#: ../src/errors.c:231
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"'%s' displeyi ilə bağlantı itirildi;\n"
+"böyük ehtimalla X verici pəncərə idarəçisini ya söndürdü\n"
+"ya da öldürdü/dağıtdı.\n"
+
+#: ../src/errors.c:238
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Fatal IO error %d (%s) on display '%s'.\n"
+
+#: ../src/frames.c:1125
+msgid "Close Window"
+msgstr "Pəncərəni Bağla"
+
+#: ../src/frames.c:1128
+msgid "Window Menu"
+msgstr "Pəncərə Menyusu"
+
+#: ../src/frames.c:1131
+msgid "Minimize Window"
+msgstr "Pəncərəni Kiçilt"
+
+#: ../src/frames.c:1134
+msgid "Maximize Window"
+msgstr "Pəncərəni Böyüt"
+
+#: ../src/frames.c:1137
+msgid "Unmaximize Window"
+msgstr "Pəncərəni Balacalaşdır"
+
+#: ../src/keybindings.c:994
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Başqa bir proqram hazırda %s açarını %x modifayrlı bağlayıcı olaraq işlədir\n"
+
+#: ../src/keybindings.c:2620
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr "Əmr haqqında xəta marco-dialoqu başlatma xətası: %s\n"
+
+#: ../src/keybindings.c:2725
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "%d əmri tə'yin edilməyib.\n"
+
+#: ../src/keybindings.c:3570
+#, fuzzy
+msgid "No terminal command has been defined.\n"
+msgstr "%d əmri tə'yin edilməyib.\n"
+
+#: ../src/main.c:69
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Müəllif Hüququ (C) 2001-2002 Havoc Pennington, Red Hat, Inc. və başqaları\n"
+
+#: ../src/main.c:257
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:263
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:269
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:274
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:280
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:286
+msgid "Print version"
+msgstr ""
+
+#: ../src/main.c:440
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Örtük qovluğu oxuna bilmədi: %s\n"
+
+#: ../src/main.c:456
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr ""
+"Örtük tapıla bilmədi! %s'in yerində olduğundanə əyani örtüklər daxil "
+"etdiyindən əmin olun."
+
+#: ../src/main.c:518
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Yenidən başladıla bilmədi: %s\n"
+
+#: ../src/menu.c:54
+msgid "Mi_nimize"
+msgstr "_Kiçilt"
+
+#: ../src/menu.c:55
+msgid "Ma_ximize"
+msgstr "Bö_yüt"
+
+#: ../src/menu.c:56
+msgid "Unma_ximize"
+msgstr "_Balacalaşdır"
+
+#: ../src/menu.c:57
+msgid "Roll _Up"
+msgstr "_Üstə Bur"
+
+#: ../src/menu.c:58
+msgid "_Unroll"
+msgstr "_Geri bur"
+
+#: ../src/menu.c:59 ../src/menu.c:60
+msgid "On _Top"
+msgstr "Ü_stdə"
+
+#: ../src/menu.c:61
+msgid "_Move"
+msgstr "_Daşı"
+
+#: ../src/menu.c:62
+msgid "_Resize"
+msgstr "_Böyüklüyünü Dəyişdir"
+
+#. separator
+#: ../src/menu.c:64
+msgid "_Close"
+msgstr "_Bağla"
+
+#. separator
+#: ../src/menu.c:66
+#, fuzzy
+msgid "_Always on Visible Workspace"
+msgstr "Ancaq _Bu İş Sahəsinə"
+
+#: ../src/menu.c:67
+#, fuzzy
+msgid "_Only on This Workspace"
+msgstr "Ancaq _Bu İş Sahəsinə"
+
+#: ../src/menu.c:68
+msgid "Move to Workspace _Left"
+msgstr "S_oldakı İş Sahəsinə Daşı"
+
+#: ../src/menu.c:69
+msgid "Move to Workspace R_ight"
+msgstr "S_ağdakı İş Sahəsinə Daşı"
+
+#: ../src/menu.c:70
+msgid "Move to Workspace _Up"
+msgstr "Ü_stdəki İş Sahəsinə Daşı"
+
+#: ../src/menu.c:71
+msgid "Move to Workspace _Down"
+msgstr "_Altdakı İş Sahəsinə Daşı"
+
+#: ../src/menu.c:162 ../src/prefs.c:2106
+#, c-format
+msgid "Workspace %d"
+msgstr "İş Sahəsi %d"
+
+#: ../src/menu.c:171
+msgid "Workspace 1_0"
+msgstr "İş Sahəsi 1_0"
+
+#: ../src/menu.c:173
+#, c-format
+msgid "Workspace %s%d"
+msgstr "İş Sahəsi %s%d"
+
+#: ../src/menu.c:368
+msgid "Move to Another _Workspace"
+msgstr "_Başqa İş Sahəsinə Daşı"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:110
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr "\"%s\" pəncərəsi cavab vermir."
+
+#: ../src/marco-dialog.c:118
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr ""
+"Bu tə'minatı çıxışa məcbur etmək qeyd edilməmiş mə'lumatları itirməyə səbəb "
+"olacaq."
+
+#: ../src/marco-dialog.c:129
+msgid "_Force Quit"
+msgstr "Çixmağa _Məcbur Et"
+
+#: ../src/marco-dialog.c:226
+msgid "Title"
+msgstr "Başlıq"
+
+#: ../src/marco-dialog.c:238
+msgid "Class"
+msgstr "Sinif"
+
+#: ../src/marco-dialog.c:264
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Bu pəncərələr \"hazırkı iclası qeyd et\" xassəsini dəstəkləmir və növbəti "
+"girişdə əllə başladılmalıdır."
+
+#: ../src/marco-dialog.c:330
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"\"%s\" icra edilərkən xəta yarandı:\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Yazılmayıb) Naviqasiya tə'minatlar qaydasında işləyir, pəncərələr "
+"qaydasında yox"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr "Pəncərələrin etiket çubuğunun yazı növünü izah edən qatar."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Başlıq çubuğuna cüt tıqlama gedişatı"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr "Pəncərə menyusunu fəallaşdır"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Başlıq çubuğundakı düymələrin ardıcıllığı"
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"Başlıq çubuğundakı düymələrin ardıcıllığı. Bu qiymət buna bənzər olmalıdır: "
+"\"menu:minimize,maximize,close\"; İki nöqtə üst üstə pəncərənin sağ tərəfi "
+"ilə sol tərəfi ayırır. Və düymə adlarının arasında vergül yer alır. Eyni "
+"düymə birdən çox dəfə yer ala bilməz. Namə'lum düymə adları göstərilməyəcək."
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr "Fokus sahibi olan pəncərəni avtomatik olaraq üstə gətirir"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Bu düymə basılı ikən siçanın sol düyməsi ilə pəncərələr daşına bilər, orta "
+"düyməsi ilə ölçüləndirilə bilər, sağ düyməsi ilə isə pəncərə menyusu "
+"göstərilə bilər. Bu misal üçün \"&lt;Alt&gt;\" ya da \"&lt;Super&gt;\" ola "
+"bilər."
+
+#: ../src/marco.schemas.in.h:9
+msgid "Close window"
+msgstr "Pəncərəni bağla"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Klaviatura qısa yollarına cavabla icra ediləcək əmrlər"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr "Hazırkı örtük"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Avtomatik üstə gəlmə xassəsi üçün millisaniyə olaraq gecikmə"
+
+#: ../src/marco.schemas.in.h:13
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Eşidilən bip səslərini proqramların ya da sistemin çala bilməsinini müəyyən "
+"edir; 'sakit bipləri' fəallaşdırmaq üçün 'əyani zəng' ilə bərabər istifadə "
+"edilə bilər."
+
+#: ../src/marco.schemas.in.h:14
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Köhnə pozulmuş tə'minatların pis xassələrini qeyri-fəallaşdırır"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr "Əyani Zəngi Fəallaşdır"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Hide all windows and focus desktop"
+msgstr "Bütün pəncərələri gizlət və masa üstünü fokusa al"
+
+#: ../src/marco.schemas.in.h:17
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key)."
+msgstr ""
+"Seçilidirsə, və fokus modu \"sloppy\" ya da \"mouse\" isə, fokusa malik olan "
+"pəncərə gecikmədən sonra üstə gətiriləcək (gecikmə vaxtını auto_raise_delay "
+"açarından dəyişdirə bilərsiniz(."
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Seçilidirsə, titlebar_font seçimini rədd et və pəncərə başlıqları üçün "
+"proqramların standart yazı növünü işlət."
+
+#: ../src/marco.schemas.in.h:19
+#, fuzzy
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+"Əgər true isə, marco istifadəçiyə daha az animasiya və başqa ehtiyat "
+"alıcı gedişatlar göstərərək daha az ehtiyat/mənbə işlədəcəkdir. Bu, bəziləri "
+"üçün yaxşı, bəziləri üçün isə xoş olmayan nəticələrə səbəb ola bilər. Amma "
+"bunun köməyi ilə daha öncə işləməyən köhnə proqramlar, terminal xidmətləri "
+"kimi tə'minatlar da istifadə edilə biləcəkdir."
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr ""
+"Seçilidirsə, Marco pəncərə təməlli deyil, proqram təməlli işləyəcək. Bu "
+"xassə hələlik hazır deyil."
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, trade off usability for less resource usage"
+msgstr "Əgər true isə, daha az ehtiyat/mənbə işlət"
+
+#: ../src/marco.schemas.in.h:22
+msgid "Lower window below other windows"
+msgstr "Pəncərənin digər pəncərələrin arxasına qoy"
+
+#: ../src/marco.schemas.in.h:23
+msgid "Maximize window"
+msgstr "Pəncərəni böyüt"
+
+#: ../src/marco.schemas.in.h:24
+msgid "Maximize window horizontally"
+msgstr "Pəncərəni üfqi istiqamətdə böyüt"
+
+#: ../src/marco.schemas.in.h:25
+msgid "Maximize window vertically"
+msgstr "Pəncərəni şaquli istiqamətdə böyüt"
+
+#: ../src/marco.schemas.in.h:26
+msgid "Minimize window"
+msgstr "Pəncərəni kiçilt"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Modifier to use for modified window click actions"
+msgstr "Dəyişdirilmiş pəncərə tıqlama gedişatları üçün istifadə ediləcək düymə"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Panellər və masa üstü arasında cəld geri hərəkət et"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "Panellər və masa üstü arasında popup ilə geri hərəkət et"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Move backwards between windows immediately"
+msgstr "Pəncərələr arasında cəld geri hərəkət et"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Move between panels and the desktop immediately"
+msgstr "Panellər və masa üstü arasında cəld hərəkət et"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move between panels and the desktop with popup"
+msgstr "Panellər və masa üstü arasında popup ilə hərəkət et"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move between windows immediately"
+msgstr "Pəncərələr arasında cəld hərəkət et"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move between windows with popup"
+msgstr "Pəncərələr arasında popup ilə hərəkət et"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move focus backwards between windows using popup display"
+msgstr "Popup displeyi göstərərək pəncərələr arasında fokusu arxaya doğru daşı"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move window"
+msgstr "Pəncərəni daşı"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move window one workspace down"
+msgstr "Pəncərəni bir iş sahəsi aşağı daşı"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move window one workspace to the left"
+msgstr "Pəncərəni bir iş sahəsi sola daşı"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move window one workspace to the right"
+msgstr "Pəncərəni bir iş sahəsi sağa daşı"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move window one workspace up"
+msgstr "Pəncərəni bir iş sahəsi yuxarı daşı"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move window to workspace 1"
+msgstr "Pəncərəni 1-ci iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move window to workspace 10"
+msgstr "Pəncərəni 10-cu iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move window to workspace 11"
+msgstr "Pəncərəni 11-ci iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window to workspace 12"
+msgstr "Pəncərəni 12-ci iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window to workspace 2"
+msgstr "Pəncərəni 2-ci iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window to workspace 3"
+msgstr "Pəncərəni 3-cü iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window to workspace 4"
+msgstr "Pəncərəni 4-cü iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window to workspace 5"
+msgstr "Pəncərəni 5-ci iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 6"
+msgstr "Pəncərəni 6-cı iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 7"
+msgstr "Pəncərəni 7-ci iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 8"
+msgstr "Pəncərəni 8-ci iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 9"
+msgstr "Pəncərəni 9-cu iş sahəsinə daşı"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Name of workspace"
+msgstr "İş sahəsinin adı"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Number of workspaces"
+msgstr "İş sahələri ədədi"
+
+#: ../src/marco.schemas.in.h:55
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr ""
+"İş sahəsi ədədi. Sıfırdan böyük olmalıdır və maksimal ədədi də müəyyən "
+"edilib (səhvən 34 miliyon iş sahəsi istəyərək masa üstünüzü dağıtmamanıq "
+"üçün)."
+
+#: ../src/marco.schemas.in.h:56
+msgid "Raise obscured window, otherwise lower"
+msgstr "Tünd pəncərəni üstə gətir, əks halda alta apar"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Raise window above other windows"
+msgstr "Pəncərəni digər pəncərələrin üstünə gətir"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Resize window"
+msgstr "Pəncərəni ölçüləndir"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Run a defined command"
+msgstr "Tə'yin edilmiş əmri icra et"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Run a terminal"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:61
+msgid "Show the panel menu"
+msgstr "Panel menyusunu göstər"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Show the panel run application dialog"
+msgstr "Panel icra dialoqunu göstər"
+
+#: ../src/marco.schemas.in.h:63
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+"Bə'zi proqramlar pəncərə idarəçisinin pəncərələri yerləşdirmə yöntəmini ləğv "
+"edərək öz xassələrinə görə yerləşdirirlər. Ona görə də onların bunu etməsini "
+"buradan bağlamaq lazımdır. Ancaq misal üçün Java/Swing popup menyularını "
+"dialoq olaraq işarələyir və ona görə də Marco Java proqramlarında "
+"menyuların göstərilə bilməsi üçün dialoq yerləşdirilməsinin qeyri-"
+"fəallaşdırmalıdır."
+
+#: ../src/marco.schemas.in.h:64
+msgid "Switch to workspace 1"
+msgstr "1-ci iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Switch to workspace 10"
+msgstr "10-cu iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Switch to workspace 11"
+msgstr "11-ci iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Switch to workspace 12"
+msgstr "12-ci iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Switch to workspace 2"
+msgstr "2-ci iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Switch to workspace 3"
+msgstr "3-cü iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Switch to workspace 4"
+msgstr "4-cü iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Switch to workspace 5"
+msgstr "5-ci iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 6"
+msgstr "6-cı iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 7"
+msgstr "7-ci iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 8"
+msgstr "8-ci iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 9"
+msgstr "9-cu iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace above this one"
+msgstr "Üstdəki iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace below this one"
+msgstr "Altdakı iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace on the left"
+msgstr "Soldakı iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace on the right"
+msgstr "Sağdakı iş sahəsinə keç"
+
+#: ../src/marco.schemas.in.h:80
+msgid "System Bell is Audible"
+msgstr "Sistem Zəngi Eşidilsin"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Take a screenshot"
+msgstr "Ekran görüntüsünü al"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Take a screenshot of a window"
+msgstr "Pəncərənin görüntüsünü al"
+
+#: ../src/marco.schemas.in.h:83
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Marco'yə sistem ya da başqa proqramın səsinin çaldığını əyani şəkildə "
+"necə bildiriləcəyini müəyyən edir. Hazırda iki qiymət mümkündür. \"fullscreen"
+"\" tam ekran modunda ikən proqramın yanıb sönməyə məcbur edir. \"frame_flash"
+"\" isə siqnalı göndərən proqramın etiket çubuğunu yanıb sönməyə məcbur edir. "
+"Əgər səsi çalan proqram mə'lum deyilsə, hazırda fokusa malik olan pəncərənin "
+"etiket çubuğu yanıb sönəcək."
+
+#: ../src/marco.schemas.in.h:84
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N açarları bu əmrlərə uyğun "
+"gələn qısa yolları müəyyən edir. run_command_N üçün klaviatura qısa yoluna "
+"basaraq command_N icra edilə bilər."
+
+#: ../src/marco.schemas.in.h:85
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot açarı, buaçar ilə "
+"müəyyən edilən əmri icra edən qısa yolu müəyyən edir."
+
+#: ../src/marco.schemas.in.h:86
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot açarı, "
+"buaçar ilə müəyyən edilən əmri icra edən qısa yolu müəyyən edir."
+
+#: ../src/marco.schemas.in.h:87
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"/apps/marco/keybinding_command içindəki uyğun olaraq nömrələnmiş əmri "
+"icra edən qısa yol. Format belədir: \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Oxuyucu liberaldır və kiçik və böyük hərf arasında "
+"fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi "
+"qısaltmaları istifadə etmə icazəsi də verir. Əgər bu seçimi \"disabled\" "
+"olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:88
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Üstdəki iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər, və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:89
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Altdakı iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və "
+"eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:90
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Soldakı iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:91
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Sağdakı iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və "
+"eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:92
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"1ci iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:93
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"10cu iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:94
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"11ci iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:95
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"12ci iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:96
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"2ci iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:97
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"3cü iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:98
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"4cü iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:99
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"5ci iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:100
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"6cı iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"7ci iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"8ci iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"9cu iş sahəsinə keçiş qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərə menyusunu açma qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni bağlama qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"\"hərəkət modu\"na keçiş və klaviatura vasitəsiylə pəncərəni daşıma qısa "
+"yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik "
+"ya da böyük hərf istifadə edilə bilər, və eyni zamanda \"&lt;Ctl&gt;\" və "
+"\"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə bilər. Əgər bu qiymətə "
+"\"disabled\" versəniz , bu gedişat ilə əlaqəli heç bir qısa yol mövcud "
+"olmayacaq."
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"\"ölçüləndirmə modu\"na keçiş və klaviatura vasitəsiylə pəncərəni "
+"ölçüləndirmə qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər, və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Bütün normal pəncərələri gizlədib fokusu masa üstünə vermə qısa yolu. Format "
+"\"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük "
+"hərf istifadə edilə bilər, və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;"
+"Ctrl&gt;\" kimi qısaltmalar da işlədilə bilər. Əgər bu qiymətə \"disabled\" "
+"versəniz , bu gedişat ilə əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:109
+#, fuzzy
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni böyütmə qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni kiçiltmə qısa yolu. Format \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər və eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da işlədilə "
+"bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə əlaqəli heç "
+"bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Pəncərəni bir altdakı iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a"
+"\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə "
+"edilə bilər və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi "
+"qısaltmalar da işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu "
+"gedişat ilə əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Pəncərəni bir soldakı iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a"
+"\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə "
+"bilər və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar "
+"da işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Pəncərəni bir sağdakı iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a"
+"\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə "
+"edilə bilər və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi "
+"qısaltmalar da işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu "
+"gedişat ilə əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni bir üstdəki iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a"
+"\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə "
+"edilə bilər və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi "
+"qısaltmalar da işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu "
+"gedişat ilə əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 1ci iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 10cu iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 11ci iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 12ci iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 2ci iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 3cü iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 4cü iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 5ci iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 6cı iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 7ci iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 8ci iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni 9cu iş sahəsinə daşıma qısa yolu. Format \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1. Kiçik ya da böyük hərf istifadə edilə bilər "
+"və eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmalar da "
+"işlədilə bilər. Əgər bu qiymətə \"disabled\" versəniz , bu gedişat ilə "
+"əlaqəli heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Panel və masa üstü arasında fokusu arxaya doğru popup pəncərə ilə daşıyan "
+"qısa yol. Format belədir: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Oxuyucu liberaldır və kiçik və böyük hərf arasında fərqi nəzərə "
+"almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmaları "
+"istifadə etmə icazəsi də verir. Əgər bu seçimi \"disabled\" olaraq seçsəniz, "
+"bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Panel və masa üstü arasında fokusu arxaya doğru popup pəncərəsi olmadan "
+"daşıyan qısa yol. Format belədir: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1. Oxuyucu liberaldır və kiçik və böyük hərf arasında fərqi "
+"nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi "
+"qısaltmaları istifadə etmə icazəsi də verir. Əgər bu seçimi \"disabled\" "
+"olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Pəncərələr arasında fokusu arxaya doğru popup pəncərəsiz daşıyan qısa yol. "
+"Bu qısa yol ilə bərabər \"Shift\" düyməsinə basılarsa fokus önə doğru "
+"daşınacaq. Format belədir: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Oxuyucu liberaldır və kiçik və böyük hərf arasında fərqi nəzərə "
+"almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmaları "
+"istifadə etmə icazəsi də verir. Əgər bu seçimi \"disabled\" olaraq seçsəniz, "
+"bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Pəncərələr arasında fokusu arxaya doğru popup pəncərə ilə daşıyan qısa yol. "
+"Bu qısa yol ilə bərabər \"Shift\" düyməsinə basılarsa fokus önə doğru "
+"daşınacaq. Format belədir: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Oxuyucu liberaldır və kiçik və böyük hərf arasında fərqi nəzərə "
+"almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmaları "
+"istifadə etmə icazəsi də verir. Əgər bu seçimi \"disabled\" olaraq seçsəniz, "
+"bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Panellər və masa üstü arasında fokusu popup pəncərə ilə daşıyan qısa yol."
+"Format belədir: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+"Oxuyucu liberaldır və kiçik və böyük hərf arasında fərqi nəzərə almır, eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə etmə "
+"icazəsi də verir. Əgər bu seçimi \"disabled\" olaraq seçsəniz, bu əmr üçün "
+"heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Panellər və masa üstü arasında fokusu popup pəncərəsiz daşıyan qısa yol."
+"Format belədir: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+"Oxuyucu liberaldır və kiçik və böyük hərf arasında fərqi nəzərə almır, eyni "
+"zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə etmə "
+"icazəsi də verir. Əgər bu seçimi \"disabled\" olaraq seçsəniz, bu əmr üçün "
+"heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərələr arasında fokusu popup pəncərəsiz daşıyan qısa yol.(Ənənəvi &lt;"
+"Alt&gt;Escape). Bu qısa yol istifadə edilirkən \"shift\" düyməsinə basaraq "
+"istiqamət tərs çevirilə bilər. Format belədir: \"&lt;Control&gt;a\" ya da "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik və böyük hərf "
+"arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;"
+"\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu seçimi "
+"\"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərələr arasında fokusu popup pəncərəsi ilə daşıyan qısa yol.(Ənənəvi &lt;"
+"Alt&gt;Tab). Bu qısa yol istifadə edilirkən \"shift\" düyməsinə basaraq "
+"istiqamət tərs çevirilə bilər. Format belədir: \"&lt;Control&gt;a\" ya da "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik və böyük hərf "
+"arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;"
+"\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu seçimi "
+"\"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Həmişə üstdə modunu fəallaşdıran qısa yol. Həmişə üstdə modunda olan pəncərə "
+"bütün pəncərələrin üstündə göstəriləcəkdir. Format belədir: \"&lt;Control&gt;"
+"a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik və böyük "
+"hərf arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;"
+"Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu seçimi "
+"\"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tam ekran moduna keçiş üçün işlədiləcək qısa yol. Format belədir: \"&lt;"
+"Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik "
+"və böyük hərf arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və "
+"\"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu "
+"seçimi \"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud "
+"olmayacaq."
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Maksimal böyüklüyə gətirmə üçün işlədiləcək qısa yol. Format belədir: \"&lt;"
+"Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik "
+"və böyük hərf arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və "
+"\"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu "
+"seçimi \"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud "
+"olmayacaq."
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Burma və açma üçün işlədiləcək qısa yol. Format belədir: \"&lt;Control&gt;a"
+"\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik və böyük "
+"hərf arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;"
+"Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu seçimi "
+"\"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Pəncərəni bütün iş sahələrinə ya da sadəcə olaraq birisinə yerləşdirmək üçün "
+"işlədiləcək qısa yol. Format belədir: \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik və böyük hərf arasında "
+"fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi "
+"qısaltmaları istifadə etmə icazəsi də verir. Əgər bu seçimi \"disabled\" "
+"olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Pəncərəni balacalaşdırmaq üçün işlədiləcək qısa yol. Format belədir: \"&lt;"
+"Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik "
+"və böyük hərf arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və "
+"\"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu "
+"seçimi \"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud "
+"olmayacaq."
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"\"Proqram İcra Et\" dialoq qutusunu göstərən qısa yol. Format belədir: \"&lt;"
+"Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik "
+"və böyük hərf arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və "
+"\"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu "
+"seçimi \"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud "
+"olmayacaq."
+
+#: ../src/marco.schemas.in.h:142
+#, fuzzy
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Panelin ana menyusunu göstərən qısa yol. Format belədir: \"&lt;Control&gt;a"
+"\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik və böyük "
+"hərf arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;"
+"Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu seçimi "
+"\"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Ekran görüntüsü tə'minatını işə salaraq pəncərənin şəklini çəkən qısa yol. "
+"Format belədir: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1Oxuyucu liberaldır və kiçik və böyük hərf arasında fərqi nəzərə almır, "
+"eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə "
+"etmə icazəsi də verir. Əgər bu seçimi \"disabled\" olaraq seçsəniz, bu əmr "
+"üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ekran görüntüsü tə'minatını işə salan qısa yol. Format belədir: \"&lt;"
+"Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik "
+"və böyük hərf arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və "
+"\"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu "
+"seçimi \"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud "
+"olmayacaq."
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Panelin ana menyusunu göstərən qısa yol. Format belədir: \"&lt;Control&gt;a"
+"\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik və böyük "
+"hərf arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;"
+"Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu seçimi "
+"\"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:146
+msgid "The name of a workspace."
+msgstr "İş sahəsinin adı."
+
+#: ../src/marco.schemas.in.h:147
+msgid "The screenshot command"
+msgstr "Ekran görüntüsü əmri"
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Örtük pəncərə kənarlarının, başlıq çubuqlarının və s. görünüşünü müəyyən "
+"edir."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"auto_raise true seçilidirsə, pəncərəni üstə gətirmədən əvvəlki gecikmə. Bu "
+"gecikmə saniyənin mində biri ilə ölçülür."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Pəncərə fokusu pəncərələrin necə fəal vəziyyətə keçəcəklərini müəyyən edir. "
+"Üç mümkün qiymət ala bilər;\"click\" - pəncərəyə fokus vermək üçün ona "
+"tıqlamaq lazımdır, \"sloppy\" - pəncərəyə fokus vermək üçün siçanın "
+"pəncərənin sahəsinə daxil olması lazımdır, \"mouse\" - siçan pəncərə "
+"sahəsinə daxil olanda pəncərə fokusa malik olacaq, siçan pəncərə sahəsindən "
+"çıxanda isə fokusu itirəcəkdir."
+
+#: ../src/marco.schemas.in.h:151
+msgid "The window screenshot command"
+msgstr "Pəncərə görüntüsü əmri"
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"BU qısa yol pəncərənin üstdə ya da altda olmasını müəyyən edir. Əgər "
+"pəncərənin üstündə başqa bir pəncərə varsa altda olan pəncərə üstə "
+"gətiriləcəkdir. Əgər pəncərə hazırda tamamilə görünürsə bu pəncərə diqər "
+"pəncərələrin altına göndəriləcəkdir. Format belədir: \"&lt;Control&gt;a\" ya "
+"da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və kiçik və böyük hərf "
+"arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;"
+"\" kimi qısaltmaları istifadə etmə icazəsi də verir. Əgər bu seçimi "
+"\"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Bu qısa yol pəncərəni digər pəncərələrin altına göndərəcəkdir. Format "
+"belədir: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu "
+"liberaldır və kiçik və böyük hərf arasında fərqi nəzərə almır, eyni zamanda "
+"\"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi "
+"də verir. Əgər bu seçimi \"disabled\" olaraq seçsəniz, bu əmr üçün heç bir "
+"qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Bu qısa yol pəncərəni digər pəncərələrin üstünə gətirəcəkdir.Format belədir: "
+"\"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu liberaldır və "
+"kiçik və böyük hərf arasında fərqi nəzərə almır, eyni zamanda \"&lt;Ctl&gt;"
+"\" və \"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi də verir. "
+"Əgər bu seçimi \"disabled\" olaraq seçsəniz, bu əmr üçün heç bir qısa yol "
+"mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Bu qısa yol ilə pəncərə üfüqi olaraq maksimal sahəni əhatə edəcəkdir. Format "
+"belədir: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1Oxuyucu "
+"liberaldır və kiçik və böyük hərf arasında fərqi nəzərə almır, eyni zamanda "
+"\"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə etmə icazəsi "
+"də verir. Əgər bu seçimi \"disabled\" olaraq seçsəniz, bu əmr üçün heç bir "
+"qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Bu qısa yol ilə pəncərə şaquli olaraq maksimal sahəni əhatə edəcəkdir. "
+"Format belədir: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1Oxuyucu liberaldır və kiçik və böyük hərf arasında fərqi nəzərə almır, "
+"eyni zamanda \"&lt;Ctl&gt;\" və \"&lt;Ctrl&gt;\" kimi qısaltmaları istifadə "
+"etmə icazəsi də verir. Əgər bu seçimi \"disabled\" olaraq seçsəniz, bu əmr "
+"üçün heç bir qısa yol mövcud olmayacaq."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, and 'toggle_maximize' which will maximize/unmaximize the window."
+msgstr ""
+"Bu seçim başlıq çubuğuna cüt tıqlananda nə ediləcəyini müəyyən edir. Mümkün "
+"qiymətlər: pəncərəni üstə burmaq/geri açmaq üçün 'toggle_shade', pəncərənin "
+"böyütmək/kiçiltmək üçün 'toggle_maximize' istifadə edilə bilər."
+
+#: ../src/marco.schemas.in.h:158
+msgid "Toggle always on top state"
+msgstr "Həmişə üstdə modunu aç"
+
+#: ../src/marco.schemas.in.h:159
+msgid "Toggle fullscreen mode"
+msgstr "Tam ekran nümayiş modunu aç"
+
+#: ../src/marco.schemas.in.h:160
+msgid "Toggle maximization state"
+msgstr "Maksimumlaşdırma vəziyyətini aç"
+
+#: ../src/marco.schemas.in.h:161
+msgid "Toggle shaded state"
+msgstr "Burulu vəziyyəti aç"
+
+#: ../src/marco.schemas.in.h:162
+msgid "Toggle window on all workspaces"
+msgstr "Pəncərəni bütün iş sahələrinə qoy"
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+"Proqram tə'minatının ya da sistemin bip səsi yaratdığı an əyani bildiricini "
+"fəallaşdırır. Bu eşitmə qüvvəsi zəyif olanlar, səsli mühitlərdə işləyənlər "
+"ya da 'eşidilə bilən səs' xassəsi bağlı olanlar üçün faydalıdır."
+
+#: ../src/marco.schemas.in.h:164
+msgid "Unmaximize window"
+msgstr "Pəncərəni balacalaşdır"
+
+#: ../src/marco.schemas.in.h:165
+msgid "Use standard system font in window titles"
+msgstr "Pəncərə başlıqlarında standart sistem yazı növünü işlət"
+
+#: ../src/marco.schemas.in.h:166
+msgid "Visual Bell Type"
+msgstr "Əyani Zəng Növü"
+
+#: ../src/marco.schemas.in.h:167
+msgid "Window focus mode"
+msgstr "Pəncərə Fokus Modu"
+
+#: ../src/marco.schemas.in.h:168
+msgid "Window title font"
+msgstr "Pəncərə başlığının yazı növü"
+
+#: ../src/prefs.c:528 ../src/prefs.c:544 ../src/prefs.c:560 ../src/prefs.c:576
+#: ../src/prefs.c:592 ../src/prefs.c:612 ../src/prefs.c:628 ../src/prefs.c:644
+#: ../src/prefs.c:660 ../src/prefs.c:676 ../src/prefs.c:692 ../src/prefs.c:708
+#: ../src/prefs.c:724 ../src/prefs.c:741 ../src/prefs.c:757 ../src/prefs.c:773
+#: ../src/prefs.c:789 ../src/prefs.c:805 ../src/prefs.c:820 ../src/prefs.c:835
+#: ../src/prefs.c:850 ../src/prefs.c:866 ../src/prefs.c:882 ../src/prefs.c:898
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf açarı \"%s\" hökmsüz növlə tə'yin edilib\n"
+
+#: ../src/prefs.c:943
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Quraşdırma bazasında tapılan \"%s\" hökmlü siçan sür'ətləndiricisi deyil\n"
+
+#: ../src/prefs.c:967 ../src/prefs.c:1428
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf açarı \"%s\" hökmsüz qiymətlə tə'yin edilib\n"
+
+#: ../src/prefs.c:1145
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "\"%s\" yazı növü izahatı oxuna bilmədi. Gconf açarı: %s\n"
+
+#: ../src/prefs.c:1330
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+"%d MateConf %s açarında iş sahəsi ədədini düzgün bildirmir, hazırkı maksimal "
+"qiymət %d-dır\n"
+
+#: ../src/prefs.c:1390
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Xarab tə'minatlar üçün düzəltmə qeyri-fəaldır. Bə'zi proqramlar "
+"düzgündavranmaya bilər.\n"
+
+#: ../src/prefs.c:1455
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "%d MateConf %s açarında 0 ilə %d aralığının xaricindədir\n"
+
+#: ../src/prefs.c:1589
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "İş sahələrinin ədədi %d seçilirkən xəta: %s\n"
+
+#: ../src/prefs.c:1833
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Quraşdırma bazasında tapılan \"%s\", \"%s\" qısa yolu üçün hökmlü qiymət "
+"deyil\n"
+
+#: ../src/prefs.c:2187
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "%d iş sahəsinin adı \"%s\" ilə dəyişdirilirkən xəta: %s\n"
+
+#: ../src/resizepopup.c:126
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:408
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "%d ekranı '%s' displeyində hökmsüzdür\n"
+
+#: ../src/screen.c:424
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"%d ekranı \"%s\" displeyində onsuz da pəncərə idarəçisinə malikdir; hazırkı "
+"pəncərə idarəçisini əvəz etmək üçün --replace seçimini işlətməyi sınayın.\n"
+
+#: ../src/screen.c:448
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"%d ekranı \"%s\" displeyi üstündə pəncərə idarəçisi seçimi alına bilmədi\n"
+
+#: ../src/screen.c:506
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "%d ekranı \"%s\" displeyində onsuz da pəncərə idarəçisinə malikdir\n"
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Could not release screen %d on display \"%s\"\n"
+
+#: ../src/session.c:884 ../src/session.c:891
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "'%s' cərgəsi yaradıla bilmir: %s\n"
+
+#: ../src/session.c:901
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "'%s' iclas faylı yazmaq üçün açıla bilmir: %s\n"
+
+#: ../src/session.c:1053
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "'%s' iclas faylı yazma xətası: %s\n"
+
+#: ../src/session.c:1058
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "'%s' iclas faylı bağlama xətası: %s\n"
+
+#: ../src/session.c:1133
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "'%s' iclas faylı oxunması bacarılmadı: %s\n"
+
+#: ../src/session.c:1168
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Qeyd edilmiş iclas faylı darana bilmədi: %s\n"
+
+#: ../src/session.c:1217
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"<marco_session> atribut görüldü yalnız onsuzda iclas ID'miz mövcuddur"
+
+#: ../src/session.c:1230
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "<marco_session> elementi üstündə namə'lum %s atributu"
+
+#: ../src/session.c:1247
+msgid "nested <window> tag"
+msgstr "yuvalanmış <window> teqi"
+
+#: ../src/session.c:1305 ../src/session.c:1337
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "<window> elementində namə'lum %s atributu"
+
+#: ../src/session.c:1409
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "<maximized> elementində namə'lum %s atributu"
+
+#: ../src/session.c:1469
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "<geometry> elementində namə'lum %s atributu"
+
+#: ../src/session.c:1489
+#, c-format
+msgid "Unknown element %s"
+msgstr "Namə'lum %s elementi"
+
+#: ../src/session.c:1961
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"İclas idarəsini dəstəkləməyən proqramlar haqqında xəbərdarlıq pəncərəsi "
+"açılırkən xəta yarandı: %s\n"
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Sətir %d hərf %d: %s"
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "\"%s\" ayributu eyni <%s> elementi üstündə iki dəfə əvəz edilib"
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Bu məzmunda \"%s\" atributu <%s> elementi üçün hökmsüzdür"
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "%ld integeri müsbət olmalıdır"
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "%ld integeri çox böyükdür, hazırkı maksimal qiymət %d'dır"
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\" üzən nöqtə olaraq oxuna bilmədi"
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Boolean qiymətlər \"%s\" yox, \"true\" ya da \"false\" olmalıdır"
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Bucaq 0.0 və 360.0 arasında olmalıdır, yalnız %g'dır\n"
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa 0.0 (görünməz) və 1.0 (tamamilə qeyri-şəffaf) arasında olmalıdır, "
+"yalnız %g'dır\n"
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Hökmsüz başlıq ölçüsü \"%s\" (bunlardan biri olmalıdır: xx-small,x-small, "
+"small,medium,large,x-large,xx-large)\n"
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "<%s> elementi üstündə \"%s\" atributu yoxdur"
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> ad \"%s\" iki dəfə işlədilib"
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> valideyn \"%s\" tə'yin edilməyib"
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> quruluşu \"%s\" tə'yin edilməyib"
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> ya quruluşu ya da quruluşa malik olan valideyni bildirməlidir"
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "<%s> elementi üstündə namə'lum \"%s\" növü"
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "<%s> elementi üstündə namə'lum \"%s\" style_set"
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "\"%s\" pəncərə növü onsuzda tərz dəstəsinə verilib"
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr "Menyu timsalı üçün namə'lum \"%s\" funksiyası"
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr "Menyu timsalı üçün namə'lum \"%s\" vəziyyəti"
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr "Örtük onsuzda funksiya %s vəziyyət %s üçün menyu timsalına malikdir"
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "\"%s\" adlı heç bir <draw_ops> tə'yin edilməyib"
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "<%s> elementinin <%s> altında olmasına icazə verilmir"
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"ad\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "<%s> elementinin \"value\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"Düymələr üçün button_width/button_height və görünüş nisbətinin ikisi də "
+"verilə bilməz"
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "\"%s\" uzaqlığı namə'lumdur"
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "\"%s\" nisbəti namə'lumdur"
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"yuxarı\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"aşağı\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"sol\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"sağ\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "\"%s\" kənarı namə'lumdur"
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"rəng\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1662
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"x1\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"y1\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1676
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"x2\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"y2\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"x\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"y\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"en\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"hündürlük\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1903
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"başlanğıc_bucağı\" atributu yoxdur"
+
+#: ../src/theme-parser.c:1910
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"uzatma_bucağı\" atributu yoxdur"
+
+#: ../src/theme-parser.c:2090
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"şəffaflıq\" atributu yoxdur"
+
+#: ../src/theme-parser.c:2161
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"növ\" atributu yoxdur"
+
+#: ../src/theme-parser.c:2209
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Rəng keçiş növü üçün \"%s\" qiyməti başa düşülmədi "
+
+#: ../src/theme-parser.c:2294
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"fayl adı\" atributu yoxdur"
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "<%s> elementi üçün \"%s\" doldurma növü başa düşülmədi "
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"vəziyyət\" atributu yoxdur"
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"kölgə\" atributu yoxdur"
+
+#: ../src/theme-parser.c:2476
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "<%s> elementi üstündə \"ox\" atributu yoxdur"
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "<%s> elementi üçün \"%s\" vəziyyəti başa düşülmədi "
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "<%s> elementi üçün \"%s\" kölgəsi başa düşülmədi "
+
+#: ../src/theme-parser.c:2549
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "<%s> elementi üçün \"%s\" oxu başa düşülmədi "
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "\"%s\" adında heç bir <draw_ops> tə'yin edilməyib"
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "draw_ops \"%s\"ları burada daxil etmək sirkular bağları yaradacaqdır"
+
+#: ../src/theme-parser.c:3153
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "<%s> elementi üstündə \"qiymət\" atributu yoxdur"
+
+#: ../src/theme-parser.c:3210
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "<%s> elementi üstündə \"yer\" atributu yoxdur"
+
+#: ../src/theme-parser.c:3219
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Çərçivə parçası üçün namə'lum \"%s\" mövqeyi"
+
+#: ../src/theme-parser.c:3227
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Çərçivə tərzi %s mövqeyində onsuzda parçaya malikdir"
+
+#: ../src/theme-parser.c:3272
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "<%s> elementi üstündə \"funksiya\" atributu yoxdur"
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "<%s> elementi üstündə \"vəziyyət\" atributu yoxdur"
+
+#: ../src/theme-parser.c:3289
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Düymə üçün namə'lum \"%s\" funksiya"
+
+#: ../src/theme-parser.c:3298
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Düymə üçün namə'lum \"%s\" vəziyyəti"
+
+#: ../src/theme-parser.c:3306
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Çərçivə tərzi %s funksiyası %s vəziyyəti üçün onsuzda düyməyə malikdir"
+
+#: ../src/theme-parser.c:3376
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "<%s> elementi üstündə \"fokus\" atributu yoxdur"
+
+#: ../src/theme-parser.c:3392
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "<%s> elementi üstündə \"tərz\" atributu yoxdur"
+
+#: ../src/theme-parser.c:3401
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" fokus atributu üçün hökmlü qiymət deyil"
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" vəziyyət atributu üçün hökmlü qiymət deyil"
+
+#: ../src/theme-parser.c:3420
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" adlı tərz tə'yin edilməyib"
+
+#: ../src/theme-parser.c:3430
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "<%s> elementi üstündə \"ölçüləndir\" atributu yoxdur"
+
+#: ../src/theme-parser.c:3440
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" ölçüləndirmə atributu üçün hökmlü vəziyyət deyil"
+
+#: ../src/theme-parser.c:3450
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"<%s> elementi üçün maksimumlaşdırılmış və bükülmüş vəziyyətlər üçün \"resize"
+"\" atributu olmamalıdır."
+
+#: ../src/theme-parser.c:3464
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Tərz onsuzda %s vəziyyəti, %s ölçüləndirməsi və %s fokusu üçün tə'yin edilib"
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Tərz onsuzda %s vəziyyəti və %s fokusu üçün tə'yin edilib"
+
+#: ../src/theme-parser.c:3536
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "<piece> elementi üçün iki draw_ops maliki oluna bilməz."
+
+#: ../src/theme-parser.c:3574
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "<button> elementi üçün iki draw_ops maliki oluna bilməz."
+
+#: ../src/theme-parser.c:3612
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "<menu_icon> elementi üçün iki draw_ops maliki oluna bilməz."
+
+#: ../src/theme-parser.c:3659
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Örtükdəki outermost elementi <%s> yox <marco_theme> olmalıdır"
+
+#: ../src/theme-parser.c:3679
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"<%s> elementi name/author/date/description elementinin içində yer ala bilməz"
+
+#: ../src/theme-parser.c:3684
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<%s> elementi <constant> elementinin içində yer ala bilməz"
+
+#: ../src/theme-parser.c:3696
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"<%s> elementi distance/border/aspect_ratio elementinin içində yer ala bilməz"
+
+#: ../src/theme-parser.c:3718
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "<%s> elementi draw gedişat elementinin içində yer ala bilməz"
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%s> ielementi <%s> elementinin içində yer ala bilməz"
+
+#: ../src/theme-parser.c:3984
+msgid "No draw_ops provided for frame piece"
+msgstr "Çərçivə hissəsi üçün draw_ops verilməyib"
+
+#: ../src/theme-parser.c:3999
+msgid "No draw_ops provided for button"
+msgstr "Düymə üçün draw_ops verilməyib"
+
+#: ../src/theme-parser.c:4014
+msgid "No draw_ops provided for menu icon"
+msgstr "Menyu timsalı üçün draw_ops verilməyib"
+
+#: ../src/theme-parser.c:4054
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> elementi içində mətnə icazə yoxdur"
+
+#: ../src/theme-parser.c:4109
+msgid "<name> specified twice for this theme"
+msgstr "bu örtük üçün <name> iki dəfə verilib"
+
+#: ../src/theme-parser.c:4120
+msgid "<author> specified twice for this theme"
+msgstr "bu örtük üçün <author> iki dəfə verilib"
+
+#: ../src/theme-parser.c:4131
+msgid "<copyright> specified twice for this theme"
+msgstr "bu örtük üçün <copyright> iki dəfə verilib"
+
+#: ../src/theme-parser.c:4142
+msgid "<date> specified twice for this theme"
+msgstr "bu örtük üçün <date> iki dəfə verilib"
+
+#: ../src/theme-parser.c:4153
+msgid "<description> specified twice for this theme"
+msgstr "bu örtük üçün <description> iki dəfə verilib"
+
+#: ../src/theme-parser.c:4348
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr "%s faylından örtük oxunması bacarılmadı: %s\n"
+
+#: ../src/theme-parser.c:4403
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Örtük faylı %s kök <marco_theme> elementini daxil etmir"
+
+#: ../src/theme-viewer.c:70
+msgid "/_Windows"
+msgstr "/_Pəncərələr"
+
+#: ../src/theme-viewer.c:71
+msgid "/Windows/tearoff"
+msgstr "/Pəncərələr/ayırma"
+
+#: ../src/theme-viewer.c:72
+msgid "/Windows/_Dialog"
+msgstr "/Pəncərələr/_Dialoq"
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/_Modal dialog"
+msgstr "/Pəncərələr/_Modal dialoq"
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Utility"
+msgstr "/Pəncərələr/_Vasitə"
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Splashscreen"
+msgstr "/Pəncərələr/_Başlanğıc rəsmi"
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Top dock"
+msgstr "/Pəncərələr/Ü_st dock"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Bottom dock"
+msgstr "/Pəncərələr/A_lt dock"
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Left dock"
+msgstr "/Pəncərələr/_Sol hissə"
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Right dock"
+msgstr "/Pəncərələr/S_ağ hissə"
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_All docks"
+msgstr "/Pəncərələr/_Bütün dock-lar"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/Des_ktop"
+msgstr "/Pəncərələr/_Masa üstü"
+
+#: ../src/theme-viewer.c:131
+msgid "Open another one of these windows"
+msgstr "Bu pəncərələrdən bir başqasını aç"
+
+#: ../src/theme-viewer.c:138
+msgid "This is a demo button with an 'open' icon"
+msgstr "Bu üstündə 'aç' timsalı olan nümunə düymədir"
+
+#: ../src/theme-viewer.c:145
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Bu üstündə 'çıx' timsalı olan nümunə düymədir"
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr "Bu, nümunə dialoq içindəki nümunə ismarışdır"
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Yalançı menyu üzvü %d\n"
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "Ancaq kənarlığı olan pəncərə"
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr "Çubuq"
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "Normal Tə'minat Pəncərəsi"
+
+#: ../src/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Dialoq Qutusu"
+
+#: ../src/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "Modal Dialoq Qutusu"
+
+#: ../src/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Vasitə Palitrası"
+
+#: ../src/theme-viewer.c:397
+msgid "Torn-off Menu"
+msgstr "Ayırılan Menyu"
+
+#: ../src/theme-viewer.c:402
+msgid "Border"
+msgstr "Kənarlıq"
+
+#: ../src/theme-viewer.c:731
+#, c-format
+msgid "Button layout test %d"
+msgstr "Düymə düzülüş sınağı %d"
+
+#: ../src/theme-viewer.c:760
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "bir pəncərə çərçivəsini göstərmək üçün %g millisaniyə"
+
+#: ../src/theme-viewer.c:803
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "İstifadə qaydası: marco-theme-viewer [ÖRTÜKADI]\n"
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Örtük yükləmə xətası: %s\n"
+
+#: ../src/theme-viewer.c:816
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" örtüyü %g saniyədə yükləndi\n"
+
+#: ../src/theme-viewer.c:839
+msgid "Normal Title Font"
+msgstr "Normal Başlıq Yazı Növü"
+
+#: ../src/theme-viewer.c:845
+msgid "Small Title Font"
+msgstr "Kiçik Başlıq Yazı Növü"
+
+#: ../src/theme-viewer.c:851
+msgid "Large Title Font"
+msgstr "Geniş Başlıq Yazı Növü"
+
+#: ../src/theme-viewer.c:856
+msgid "Button Layouts"
+msgstr "Düymə Düzülüşləri"
+
+#: ../src/theme-viewer.c:861
+msgid "Benchmark"
+msgstr "Sür'ət Sınağı"
+
+#: ../src/theme-viewer.c:908
+msgid "Window Title Goes Here"
+msgstr "Pəncərə Başlığı Burada Yer Alır"
+
+#: ../src/theme-viewer.c:1012
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d çərçivə %g alıcı-tərəfli saniyədə göstərildi (çərçivə başına %g "
+"millisaniyə) və X vericisi mənbələri də daxil edilərək %g divar saadı "
+"saniyəsi (çərçivə başına %g millisaniyə)\n"
+
+#: ../src/theme-viewer.c:1227
+msgid "position expression test returned TRUE but set error"
+msgstr "mövqe ifadəsi sınağı TRUE döndərdi amma xəta bildirdi"
+
+#: ../src/theme-viewer.c:1229
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "mövqe ifadəsi sınağı FALSE döndərdi amma xəta bildirmədi"
+
+#: ../src/theme-viewer.c:1233
+msgid "Error was expected but none given"
+msgstr "Xəta gözlənirdi amma alınmadı"
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "%d xətası gözlənirdi amma %d alındı"
+
+#: ../src/theme-viewer.c:1241
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Xəta gözlənmirdi amma alındı: %s"
+
+#: ../src/theme-viewer.c:1245
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x qiyməti %d oldu, %d gözlənirdi"
+
+#: ../src/theme-viewer.c:1248
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y qiyməti %d oldu, %d gözlənirdi"
+
+#: ../src/theme-viewer.c:1310
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d koordinat ifadəsi %g saniyə içində oxundu (ortalama olaraq %g saniyə)\n"
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "üst"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "alt"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "sol"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "sağ"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "çərçivə quruluşu \"%s\" ölçüsünü bildirmir"
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "çərçivə quruluşu \"%s\" ölçüsünü \"%s\" kənarı üçün bildirmir"
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "%g düymə görünüş nisbəti səbəbsizdir"
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Çərçivə quruluşu düymələrin böyüklüyünü bildirmir"
+
+#: ../src/theme.c:843
+msgid "Gradients should have at least two colors"
+msgstr "Rəng keçişləri ən az iki rəngə malik olmalıdır"
+
+#: ../src/theme.c:969
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK rəng spesifikasiyasında vəziyyət mö'tərizə içində olmalıdır, mis.gtk:fg"
+"[NORMAL] burada NORMAL vəziyyətdir; \"%s\" oxuna bilmədi"
+
+#: ../src/theme.c:983
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK rəng spesifikasiyasında vəziyyətdən sonra mö'tərizə bağlanmalıdır, mis. "
+"gtk:fg[NORMAL] burada NORMAL vəziyyətdir; \"%s\" oxuna bilmədi"
+
+#: ../src/theme.c:994
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Rəng spesifikasiyasındakı \"%s\" vəziyyəti başa düşülmədi"
+
+#: ../src/theme.c:1007
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Rəng spesifikasiyasındakı \"%s\" rəng tərkib hissəsi başa düşülmədi"
+
+#: ../src/theme.c:1037
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Qarışdırma formatı \"blend/bg_color/fg_color/alpha\"dır, \"%s\" formata "
+"uyğun gəlmir"
+
+#: ../src/theme.c:1048
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Qarışıq rəngdəki alfa qiyməti \"%s\" oxuna bilmədi"
+
+#: ../src/theme.c:1058
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alfa qiyməti \"%s\" 0.0 ilə 1.0 arasında deyil"
+
+#: ../src/theme.c:1105
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Bükmə formatı \"shade/base_color/factor\"dır, \"%s\" formata uyğun gəlmir"
+
+#: ../src/theme.c:1116
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Bükülmüş rəngdəki \"%s\" bükmə faktoru oxuna bilmədi"
+
+#: ../src/theme.c:1126
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Bükülmüş rəngdəki bükmə faktoru \"%s\" mənfidir"
+
+#: ../src/theme.c:1155
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "\"%s\" rəngi oxuna bilmədi"
+
+#: ../src/theme.c:1417
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Birgə ifadə icazə verilməyən '%s' hərfini daxil edir"
+
+#: ../src/theme.c:1444
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "Birgə ifadə oxuna bilməyən '%s' üzən nöqtə daxil edir"
+
+#: ../src/theme.c:1458
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Birgə ifadə oxuna bilməyən '%s' integer'ini daxil edir"
+
+#: ../src/theme.c:1525
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "Birgə ifadə bu mətnin başında namə'lum idarəçiyə malikdir: \"%s\""
+
+#: ../src/theme.c:1582
+msgid "Coordinate expression was empty or not understood"
+msgstr "Birgə ifadə boş idi ya da başa düşülmədi"
+
+#: ../src/theme.c:1725 ../src/theme.c:1735 ../src/theme.c:1769
+msgid "Coordinate expression results in division by zero"
+msgstr "Birgə ifadə sıfıra bölmə ilə nəticələnir"
+
+#: ../src/theme.c:1777
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Birgə ifadə üzən-nöqtə ədədi üstündə mod idarəçisini işlətməyə cəhd edir"
+
+#: ../src/theme.c:1834
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Birgə ifadə operand gözlənildiyi yerdə \"%s\" idarəçisinə malikdir"
+
+#: ../src/theme.c:1843
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Birgə ifadə idarəçi gözləndiyi yerdə operand'a malikdir"
+
+#: ../src/theme.c:1851
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Birgə ifadə operand yerinə idarəçi ilə sonlandı"
+
+#: ../src/theme.c:1861
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "Birgə ifadə \"%c\" ilə \"%c\" idarəçisi arasında operand'a malik deyil"
+
+#: ../src/theme.c:1980
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr ""
+"Birgə ifadə ara yaddaşını doldurub daşırdı. Bu qədər böyük ifadəyə ehtiyac "
+"var idi ki?"
+
+#: ../src/theme.c:2009
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Birgə ifadə açılmadan bağlanan qövsvari mö'tərizəyə malikdir"
+
+#: ../src/theme.c:2072
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Birgə ifadə namə'lum \"%s\" dəyişən ya da sabitə malikdir"
+
+#: ../src/theme.c:2129
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Birgə ifadə açılıb bağlanmayan qövsvari mö'tərizəyə malikdir"
+
+#: ../src/theme.c:2140
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Birgə ifadə operatorlara malik görünmür"
+
+#: ../src/theme.c:2384 ../src/theme.c:2406 ../src/theme.c:2427
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "Örtükdə xətaya səbəb olan \"%s\" idafəsi var: %s\n"
+
+#: ../src/theme.c:3913
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Bu örtük növü üçün <button function=\"%s\" state=\"%s\" draw_ops=\"whatever"
+"\"/> tə'yin edilməlidir"
+
+#: ../src/theme.c:4363 ../src/theme.c:4395
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Əksik <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/theme.c:4446
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "\"%s\" örtüyü yüklənə bilmədi: %s\n"
+
+#: ../src/theme.c:4592 ../src/theme.c:4599 ../src/theme.c:4606
+#: ../src/theme.c:4613 ../src/theme.c:4620
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "\"%s\" örtüyü üçün <%s> tə'yin edilməyib"
+
+#: ../src/theme.c:4630
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"\"%s\" örtüyündə \"%s\" pəncərə növü üçün heç bir çərçivə tərzi tə'yin "
+"edilməyib. <window type=\"%s\" style_set=\"whatever\"/> elementini əlavə edin"
+
+#: ../src/theme.c:4652
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+"Bu örtük üçün <menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/"
+"> tə'yin edilməlidir"
+
+#: ../src/theme.c:5041 ../src/theme.c:5103
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"İstifadəçi tə'yinli sabitlər böyük hərflə başlamalıdır; \"%s\" isə başlamır"
+
+#: ../src/theme.c:5049 ../src/theme.c:5111
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "\"%s\" sabiti onsuzda tə'yin edilib"
+
+#: ../src/util.c:93
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Xəta ayırma qeydi %s açıla bilmədi\n"
+
+#: ../src/util.c:103
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "%s qeyd faylı üstündə fdopen() bacarılmadı : %s\n"
+
+#: ../src/util.c:109
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "%s qeyd faylı açıldı\n"
+
+#: ../src/util.c:203
+msgid "Window manager: "
+msgstr "Pəncərə idarəçisi: "
+
+#: ../src/util.c:349
+msgid "Bug in window manager: "
+msgstr "Pəncərə idarəçisində xəta:"
+
+#: ../src/util.c:378
+msgid "Window manager warning: "
+msgstr "Pəncərə idarəçisi xəbərdarlığı:"
+
+#: ../src/util.c:402
+msgid "Window manager error: "
+msgstr "Pəncərə idarəçisi xətası:"
+
+#: ../src/window-props.c:162
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %ld\n"
+msgstr "Proqram tə'minatı xətalı _NET_WM_PID %ld tə'yin etdi\n"
+
+#. first time through
+#: ../src/window.c:5205
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"%s pəncərəsi özünə SM_CLIENT_ID tə'yin edir, yalnız ICCCM'də bildirilib ki "
+"bu WM_CLIENT_LEADER pəncərəsinə tə'yin edilməlidir.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5876
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"%s pəncərəsi ölçüləndirilə bilmədiyini MWM ehkamı ilə bildirir, yalnız "
+"minimal. %d x %d və maksimal %d x %d böyüklüyünü alır; buna bir mə'na verə "
+"bilmirəm.\n"
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"0x%lx pəncərəsi %s xassəsinə malikdir.\n"
+"Əslində %s formatında %d gözlənirdi yalnız alınan növ\n"
+"%s formatında %d n_items'lər %d alındı.\n"
+"Bu böyük ehtimalla proqram xətasıdır, pəncərə idarəçisinin xətası deyil.\n"
+"Pəncərənin başlığı=\"%s\" sinifi=\"%s\" adı=\"%s\"\n"
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Property %s on window 0x%lx contained invalid UTF-8\n"
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
diff --git a/po/be.po b/po/be.po
new file mode 100644
index 00000000..31bcf7b9
--- /dev/null
+++ b/po/be.po
@@ -0,0 +1,2403 @@
+# translation of marco.HEAD.be.po to Belarusian
+# This file is distributed under the same license as the marco package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# Vital Khilko <[email protected]>, 2003
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco HEAD\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-12-09 23:41+0100\n"
+"PO-Revision-Date: 2006-12-12 12:41+0300\n"
+"Last-Translator: Ihar Hrachyshka <[email protected]>\n"
+"Language-Team: Belarusian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 0.9.6\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Выкарыстаньне: %s\n"
+
+#: ../src/tools/marco-message.c:176
+#: ../src/util.c:131
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco быў скампіляваны без падтрымкі шматслоўнага рэжыму\n"
+
+#: ../src/delete.c:65
+#: ../src/delete.c:92
+#: ../src/marco-dialog.c:48
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Немагчыма разабраць \"%s\" як цэлы лік"
+
+#: ../src/delete.c:72
+#: ../src/delete.c:99
+#: ../src/marco-dialog.c:55
+#: ../src/theme-parser.c:476
+#: ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Не атрымалася зразумець канцавыя знакі \"%s\" у радку \"%s\""
+
+#: ../src/delete.c:130
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Адбылася памылка ў часе разбору паведамленьня \"%s\" ад працэса дыялёгу\n"
+
+#: ../src/delete.c:265
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Адбылася памылка чытаньня з працэса адлюстраваньня дыялёгу: %s\n"
+
+#: ../src/delete.c:346
+#, c-format
+msgid "Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr "Адбылася памылка старту marco-dialog, каб спытаць пацьверджаньня зьнішчэньня праграмы: %s\n"
+
+#: ../src/delete.c:454
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Адбылася памылка ў часе атрыманьня назвы вузла: %s\n"
+
+#: ../src/display.c:344
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Адбылася памылка ў часе адкрыцьця сыстэмнага вакна \"%s\" асяродзьдзя X Window\n"
+
+#: ../src/errors.c:269
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Згубленае злучэньне з вакном \"%s\";\n"
+"мабыць, X-паслужнік быў адключаны, альбо зьнішчаны\n"
+"кіраўнік вокнаў.\n"
+
+#: ../src/errors.c:276
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Фатальная памылка ўводу-вываду %d (%s) на дысплэі \"%s\".\n"
+
+#: ../src/frames.c:1089
+msgid "Close Window"
+msgstr "Закрыць вакно"
+
+#: ../src/frames.c:1092
+msgid "Window Menu"
+msgstr "Мэню вакна"
+
+#: ../src/frames.c:1095
+msgid "Minimize Window"
+msgstr "Найменшыць вакно"
+
+#: ../src/frames.c:1098
+msgid "Maximize Window"
+msgstr "Найбольшыць вакно"
+
+#: ../src/frames.c:1101
+msgid "Unmaximize Window"
+msgstr "Разнайбольшыць вакно"
+
+#: ../src/keybindings.c:1031
+#, c-format
+msgid "Some other program is already using the key %s with modifiers %x as a binding\n"
+msgstr "Клявішу \"%s\" з мадыфікатарамі \"%x\" ужо выкарыстоўвае іншая праграма\n"
+
+#: ../src/keybindings.c:2663
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr "Памылка старту metaсity-dialog для паказу памылкі загада: %s\n"
+
+#: ../src/keybindings.c:2768
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Загад %d не быў вызначаны.\n"
+
+#: ../src/keybindings.c:3635
+msgid "No terminal command has been defined.\n"
+msgstr "Тэрмінальная каманда %d не вызначаная.\n"
+
+#: ../src/main.c:65
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
+msgstr ""
+"Marco %s\n"
+"Правы на капіяваньне © 2001-2002 Havoc Pennington, Red Hat, Inc. і іншыя\n"
+"Гэта свабоднае праграмнае забесьпячэньне; глядзіце ўмовы капіяваньня ў крынічным кодзе.\n"
+"Распаўсюджваецца без гарантыяў, ні для камэрцыйнага, ні для індывідуальнага выкарыстаньня.\n"
+
+#: ../src/main.c:169
+msgid "Disable connection to session manager"
+msgstr "Адключыць злучэньне з кіраўніком сэансаў"
+
+#: ../src/main.c:175
+msgid "Replace the running window manager with Marco"
+msgstr "Замяніць актыўны кіраўнік вокнаў на Marco"
+
+#: ../src/main.c:181
+msgid "Specify session management ID"
+msgstr "Вызначыць ID сэансу"
+
+#: ../src/main.c:186
+msgid "X Display to use"
+msgstr "Дысплэй X"
+
+#: ../src/main.c:192
+msgid "Initialize session from savefile"
+msgstr "Ініцыялізаваць сэанс з файла"
+
+#: ../src/main.c:198
+msgid "Print version"
+msgstr "Паказаць вэрсію"
+
+#: ../src/main.c:350
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Памылка ў часе пошуку тэмаўу тэчцы: %s\n"
+
+#: ../src/main.c:366
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr "Немагчыма знайсьці тэму! Упэўніцеся, што тэчка \"%s\" існуе і зьмяшчае звычайныя тэмы."
+
+#: ../src/main.c:426
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Збой перазапуску: %s\n"
+
+#: ../src/menu.c:55
+msgid "Mi_nimize"
+msgstr "Н_айменшыць"
+
+#: ../src/menu.c:56
+msgid "Ma_ximize"
+msgstr "На_йбольшыць"
+
+#: ../src/menu.c:57
+msgid "Unma_ximize"
+msgstr "Ра_знайбольшыць"
+
+#: ../src/menu.c:58
+msgid "Roll _Up"
+msgstr "_Згарнуць"
+
+#: ../src/menu.c:59
+msgid "_Unroll"
+msgstr "_Разгарнуць"
+
+#: ../src/menu.c:60
+#: ../src/menu.c:61
+msgid "On _Top"
+msgstr "На_версе"
+
+#: ../src/menu.c:62
+msgid "_Move"
+msgstr "Пера_мясьціць"
+
+#: ../src/menu.c:63
+msgid "_Resize"
+msgstr "Зьмяніць _памер"
+
+#: ../src/menu.c:64
+msgid "Move Titlebar On_screen"
+msgstr "Перамясьціць загаловак вакна па _экране"
+
+#. separator
+#: ../src/menu.c:66
+msgid "_Close"
+msgstr "За_крыць"
+
+#. separator
+#: ../src/menu.c:68
+msgid "_Always on Visible Workspace"
+msgstr "Заўсёды на _бачнай працоўнай прасторы"
+
+#: ../src/menu.c:69
+msgid "_Only on This Workspace"
+msgstr "Толькі на _гэтай працоўнай прасторы"
+
+#: ../src/menu.c:70
+msgid "Move to Workspace _Left"
+msgstr "Перамясьціць вакно на _лявейшую прастору"
+
+#: ../src/menu.c:71
+msgid "Move to Workspace R_ight"
+msgstr "Перамясьціць вакно на _правейшую прастору"
+
+#: ../src/menu.c:72
+msgid "Move to Workspace _Up"
+msgstr "Перамясьціць вакно на _вышэйшую прастору"
+
+#: ../src/menu.c:73
+msgid "Move to Workspace _Down"
+msgstr "Перамясьціць вакно на _ніжэйшую прастору"
+
+#: ../src/menu.c:164
+#: ../src/prefs.c:2142
+#: ../src/prefs.c:2677
+#, c-format
+msgid "Workspace %d"
+msgstr "Працоўная прастора %d"
+
+#: ../src/menu.c:173
+msgid "Workspace 1_0"
+msgstr "Працоўная прастора 1_0"
+
+#: ../src/menu.c:175
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Працоўная прастора %s%d"
+
+#: ../src/menu.c:373
+msgid "Move to Another _Workspace"
+msgstr "Перамясьціць вакно на _іншую прастору"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:103
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:109
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:115
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:121
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:127
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:133
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:139
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:145
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:151
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:157
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:88
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr "Вакно \"%s\" не адказвае."
+
+#: ../src/marco-dialog.c:96
+msgid "Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr "Прымусіўшы скончыць работу гэтую праграму, Вы згубіце незапісаныя даньні."
+
+#: ../src/marco-dialog.c:107
+msgid "_Force Quit"
+msgstr "Пры_мусіць выйсьці"
+
+#: ../src/marco-dialog.c:204
+msgid "Title"
+msgstr "Загаловак"
+
+#: ../src/marco-dialog.c:216
+msgid "Class"
+msgstr "Кляса"
+
+#: ../src/marco-dialog.c:242
+msgid "These windows do not support \"save current setup\" and will have to be restarted manually next time you log in."
+msgstr "Гэтыя вокны не падтрымліваюць загад \"захаваць бягучыя наладкі\", пасьля наступнага ўваходу іх прыйдзецца перазапусьціць самастойна."
+
+#: ../src/marco-dialog.c:308
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Адбылася памылка ў часе старту \"%s\":\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Не рэалізавана) Навігацыя вядзецца па праграмах, а не па вокнах"
+
+#: ../src/marco.schemas.in.h:2
+msgid "A font description string describing a font for window titlebars. The size from the description will only be used if the titlebar_font_size option is set to 0. Also, this option is disabled if the titlebar_uses_desktop_font option is set to true."
+msgstr "Радок апісаньня шрыфта для загалоўкаў вокнаў. Памер з апісаньня будзе ўжыты, толькі калі для парамэтра titlebar_font_size выбранае значэньне 0. Гэты парамэтар таксама адключаны, калі для парамэтра titlebar_uses_desktop_font выбрана значэньне ІСЬЦІНА."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Дзеяньне падвойнага пстрычка па загалоўку вакна"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr "Актывізаваць мэню вакна"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Расклад кнопак у загалоўку вакна"
+
+#: ../src/marco.schemas.in.h:6
+msgid "Arrangement of buttons on the titlebar. The value should be a string, such as \"menu:minimize,maximize,close\"; the colon separates the left corner of the window from the right corner, and the button names are comma-separated. Duplicate buttons are not allowed. Unknown button names are silently ignored so that buttons can be added in future marco versions without breaking older versions."
+msgstr "Расклад кнопак у загалоўку вакна. Значэньне мусіць быць радком, напр., \"menu:minimize,maximize,close\"; двухкроп'е падзяляе левы і правы бакі вакна, назвы кнопак падзяляюцца коскамі. Дубляваньне кнопак не дазваляецца. Невядомыя назвы кнопак заўсёды ігнаруюцца без паведамленьня, таму кнопкі можна дадаць у будучых вэрсіях, не парушаючы папярэднія наладкі."
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr "Аўтаматычна адкрываць актыўнае вакно"
+
+#: ../src/marco.schemas.in.h:8
+msgid "Clicking a window while holding down this modifier key will move the window (left click), resize the window (middle click), or show the window menu (right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" for example."
+msgstr "Пстрычка па вакне з гэтым заціснутым мадыфікатарам перамясьціць вакно (левая кнопка), зьменіць памер (сярэдняя кнопка), ці пакажа мэню вакна (правая кнопка). Мадыфікатар вызначаецца, напр., як \"&lt;Alt&gt;\" альбо \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.h:9
+msgid "Close window"
+msgstr "Закрыць вакно"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Загады старту для камбінацыяў клявішаў"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Compositing Manager"
+msgstr "Кампазытны кіраўнік"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Выстаўленьне фокусу для вокнаў"
+
+#: ../src/marco.schemas.in.h:13
+msgid "Current theme"
+msgstr "Актыўная тэма"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Затрымка ў мілісэкундах для парамэтра аўтаматычнага адкрыцьця вакна"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Вызначае, ці зьяўляецца Marco кампазытным кіраўніком."
+
+#: ../src/marco.schemas.in.h:16
+msgid "Determines whether applications or the system can generate audible 'beeps'; may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr "Вызначае, ці можа дастасаваньне альбо сыстэма выпрацоўваць адчувальныя \"гудкі\", якія можна выкарыстоўваць разам з \"бачным сыгнал\", каб дазволіць бязгучныя \"гудкі\"."
+
+#: ../src/marco.schemas.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Адключыць магчымасьці, якіх патрабуюць старыя альбо зламаныя праграмы"
+
+#: ../src/marco.schemas.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Адключыць бачны сыгнал"
+
+#: ../src/marco.schemas.in.h:19
+msgid "Hide all windows and focus desktop"
+msgstr "Схаваць усе вокны і засяродзіцца на сталец"
+
+#: ../src/marco.schemas.in.h:20
+msgid "If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then the focused window will be automatically raised after a delay specified by the auto_raise_delay key. This is not related to clicking on a window to raise it, nor to entering a window during drag-and-drop."
+msgstr "Калі выбранае значэньне ІСЬЦІНА, а для рэжыма актывацыі выбранае значэньне \"sloppy\" ці \"мыш\", зь невялікай затрымкай аўтаматычна зьявіцца актыўнае вакно (працягласьць затрымкі вызначаецца ключом auto_raise_delay). Гэтае настаўленьне не зьвязанае з пстрычком у вакне і пераходам да вакна пасьля перацягваньня аб'екта."
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, ignore the titlebar_font option, and use the standard application font for window titles."
+msgstr "Калі ІСЬЦІНА, ігнаруецца парамэтар titlebar_font і ўжываецца стандартны шрыфт праграмаў для загалоўкаў вакна."
+
+#: ../src/marco.schemas.in.h:22
+msgid "If true, marco will give the user less feedback by using wireframes, avoiding animations, or other means. This is a significant reduction in usability for many users, but may allow legacy applications to continue working, and may also be a useful tradeoff for terminal servers. However, the wireframe feature is disabled when accessibility is on."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:23
+msgid "If true, then Marco works in terms of applications rather than windows. The concept is a bit abstract, but in general an application-based setup is more like the Mac and less like Windows. When you focus a window in application-based mode, all the windows in the application will be raised. Also, in application-based mode, focus clicks are not passed through to windows in other applications. Application-based mode is, however, largely unimplemented at the moment."
+msgstr "Калі выбранае значэньне ІСЬЦІНА, Marco працуе з дастасаваньнямі, а ня з вокнамі. Архітэктура, заснаваная на дастасаваньнях, больш падобная на сыстэму Mac, чым на Windows. Пры актывізацыі вакна ў рэжыме, заснаваным на дастасаваньнях, раскрываюцца ўсе вокны дастасаваньня. Акрамя таго, у рэжыме, заснаваным на дастасаваньнях, пстрычкі не перадаюцца ў вокны іншых дастасаваньняў. Рацыянальнасьць такой наладкі неадназначная. Але гэта значна лепш, чым выстаўляць у наладках усе адрозьненьні рэжыма, заснаванага на дастасаваньнях, ад рэжыма, заснаванага на вокнах (напр., ці трэба перадаваць пстрычкі). Акрамя гэтага, рэалізацыя рэжыма, заснаванага на дастасаваньнях, пакуль што яшчэ даволі далёкая ад заканчэньня."
+
+#: ../src/marco.schemas.in.h:24
+msgid "If true, trade off usability for less resource usage"
+msgstr "true: павялічыць хуткасьць сыстэмы, зьменшыўшы ўжываньне рэсурсаў"
+
+#: ../src/marco.schemas.in.h:25
+msgid "Lower window below other windows"
+msgstr "Разьмясьціць вакно за ўсімі вокнамі"
+
+#: ../src/marco.schemas.in.h:26
+msgid "Many actions (e.g. clicking in the client area, moving or resizing the window) normally raise the window as a side-effect. Set this option to false to decouple raising from other user actions. Even when this option is false, windows can still be raised by an alt-left-click anywhere on the window, a normal click on the window decorations, or by special messages, such as activation requests from pagers. This option is currently disabled in click-to-focus mode."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:27
+msgid "Maximize window"
+msgstr "Найбольшыць вакно"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Maximize window horizontally"
+msgstr "Найбольшыць вакно па гарызанталі"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Maximize window vertically"
+msgstr "Найбольшыць вакно па вэртыкалі"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Minimize window"
+msgstr "Найменшыць вакно"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Modifier to use for modified window click actions"
+msgstr "Мадыфікатар для дзеяньняў пстрычка мышы"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Пераключыцца ў адваротным парадку паміж панэлямі і стальцом"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "Пераключыцца ў адваротным парадку паміж панэлямі і стальцом праз выплыўнае вакенца"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move backwards between windows immediately"
+msgstr "Пераключыцца ў адваротным парадку паміж вокнамі"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move backwards between windows of an application immediately"
+msgstr "Пераключыцца на папярэднія вокны"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move backwards between windows of an application with popup"
+msgstr "Пераключыцца на папярэднія вокны праз выплыўнае вакенца"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move between panels and the desktop immediately"
+msgstr "Пераключыцца паміж панэлямі і стальцом"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move between panels and the desktop with popup"
+msgstr "Пераключыцца паміж панэлямі і стальцом праз выплыўнае вакенца"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move between windows immediately"
+msgstr "Пераключыцца паміж вокнамі"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move between windows of an application immediately"
+msgstr "Пераключыцца на іншыя вокны"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move between windows of an application with popup"
+msgstr "Пераключыцца на іншыя вокны праз выплыўнае вакенца"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move between windows with popup"
+msgstr "Пераключыцца паміж вокнамі праз выплыўнае вакенца"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move focus backwards between windows using popup display"
+msgstr "Пераключыць засяроджаньне паміж вокнамі праз выплыўнае вакенца"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window"
+msgstr "Перамясьціць вакно"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window one workspace down"
+msgstr "Перамясьціць вакно на ніжэйшую працоўную прастору"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window one workspace to the left"
+msgstr "Перамясьціць вакно на лявейшую працоўную прастору"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window one workspace to the right"
+msgstr "Перамясьціць вакно на правейшую працоўную прастору"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window one workspace up"
+msgstr "Перамясьціць вакно на вышэйшую працоўную прастору"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 1"
+msgstr "Перамясьціць вакно на працоўную прастору 1"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 10"
+msgstr "Перамясьціць вакно на працоўную прастору 10"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 11"
+msgstr "Перамясьціць вакно на працоўную прастору 11"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 12"
+msgstr "Перамясьціць вакно на працоўную прастору 12"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Move window to workspace 2"
+msgstr "Перамясьціць вакно на працоўную прастору 2"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Move window to workspace 3"
+msgstr "Перамясьціць вакно на працоўную прастору 3"
+
+#: ../src/marco.schemas.in.h:55
+msgid "Move window to workspace 4"
+msgstr "Перамясьціць вакно на працоўную прастору 4"
+
+#: ../src/marco.schemas.in.h:56
+msgid "Move window to workspace 5"
+msgstr "Перамясьціць вакно на працоўную прастору 5"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Move window to workspace 6"
+msgstr "Перамясьціць вакно на працоўную прастору 6"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Move window to workspace 7"
+msgstr "Перамясьціць вакно на працоўную прастору 7"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Move window to workspace 8"
+msgstr "Перамясьціць вакно на працоўную прастору 8"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Move window to workspace 9"
+msgstr "Перамясьціць вакно на працоўную прастору 9"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Name of workspace"
+msgstr "Назва працоўнае прасторы"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Number of workspaces"
+msgstr "Колькасьць працоўных прастораў"
+
+#: ../src/marco.schemas.in.h:63
+msgid "Number of workspaces. Must be more than zero, and has a fixed maximum to prevent making the desktop unusable by accidentally asking for too many workspaces."
+msgstr "Колькасьць працоўных прастораў. Мусіць быць большым за нуль, мае нязьменны максымум (для папярэджаньня зьнішчэньня стальца запытам на 34 мільёны працоўных прастораў)."
+
+#: ../src/marco.schemas.in.h:64
+msgid "Raise obscured window, otherwise lower"
+msgstr "Наверх, калі засланёнае іншымі, інакш долу"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Raise window above other windows"
+msgstr "Разьмясьціць вакно па-над іншымі вокнамі"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Resize window"
+msgstr "Зьмяніць памер вакна"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Run a defined command"
+msgstr "Выканаць вызначаны загад"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Run a terminal"
+msgstr "Выканаць у тэрмінале"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Show the panel menu"
+msgstr "Паказаць мэню панэлі"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Show the panel run application dialog"
+msgstr "Паказаць дыялёг старту праграмы"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Some applications disregard specifications in ways that result in window manager misfeatures. This option puts Marco in a rigorously correct mode, which gives a more consistent user interface, provided one does not need to run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 1"
+msgstr "Пераключыцца на працоўную прастору 1"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 10"
+msgstr "Пераключыцца на працоўную прастору 10"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 11"
+msgstr "Пераключыцца на працоўную прастору 11"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 12"
+msgstr "Пераключыцца на працоўную прастору 12"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace 2"
+msgstr "Пераключыцца на працоўную прастору 2"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace 3"
+msgstr "Пераключыцца на працоўную прастору 3"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace 4"
+msgstr "Пераключыцца на працоўную прастору 4"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace 5"
+msgstr "Пераключыцца на працоўную прастору 5"
+
+#: ../src/marco.schemas.in.h:80
+msgid "Switch to workspace 6"
+msgstr "Пераключыцца на працоўную прастору 6"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Switch to workspace 7"
+msgstr "Пераключыцца на працоўную прастору 7"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Switch to workspace 8"
+msgstr "Пераключыцца на працоўную прастору 8"
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 9"
+msgstr "Пераключыцца на працоўную прастору 9"
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace above this one"
+msgstr "Пераключыцца на вышэйшую працоўную прастору"
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace below this one"
+msgstr "Пераключыцца на ніжэйшую працоўную прастору"
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace on the left"
+msgstr "Пераключыцца на лявейшую працоўную прастору"
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace on the right"
+msgstr "Пераключыцца на правейшую працоўную прастору"
+
+#: ../src/marco.schemas.in.h:88
+msgid "System Bell is Audible"
+msgstr "Сыстэмны сыгнал чутны"
+
+#: ../src/marco.schemas.in.h:89
+msgid "Take a screenshot"
+msgstr "Атрымаць здымак экрана"
+
+#: ../src/marco.schemas.in.h:90
+msgid "Take a screenshot of a window"
+msgstr "Атрымаць здымак вакна"
+
+#: ../src/marco.schemas.in.h:91
+msgid "Tells Marco how to implement the visual indication that the system bell or another application 'bell' indicator has been rung. Currently there are two valid values, \"fullscreen\", which causes a fullscreen white-black flash, and \"frame_flash\" which causes the titlebar of the application which sent the bell signal to flash. If the application which sent the bell is unknown (as is usually the case for the default \"system beep\"), the currently focused window's titlebar is flashed."
+msgstr "Кажа Marco як зьдзяйсьняць наяўны паказ таго, што гучыць сыстэмны ці іншы \"званок\". У бягучы моман існуюць два рэчаісных значэньня: \"fullscreen\", што вынаціскае поўнаэкраннае чорна-белае мільганьне й \"frame_flash\", што вынаціскае мільганьне загалоўка вакна, дастасаваньне якога даслала сыгнал-званок. Калі дастасаваньне, якое даслала званок нявядомае (як ё звычайна для дапомнага \"сыстэмнага гудка\"), будзе мільгаць загаловак вакна, засяроджанага ў бягучы момант."
+
+#: ../src/marco.schemas.in.h:92
+msgid "The /apps/marco/global_keybindings/run_command_N keys define keybindings that correspond to these commands. Pressing the keybinding for run_command_N will execute command_N."
+msgstr "Ключ /apps/marco/global_keybindings/run_command_N keys вызначае камбінацыі клявішаў, якія адпавядаюць гэтым камандам. Націск на камбінацыю run_command_N запусьціць на выкананьне command_N."
+
+#: ../src/marco.schemas.in.h:93
+msgid "The /apps/marco/global_keybindings/run_command_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr "Ключ \"/apps/marco/global_keybindings/run_command_screenshot\" вызначае зьвяз клявіш, для вынаціску загаду, вызначанага гэтай ўсталёўкай."
+
+#: ../src/marco.schemas.in.h:94
+msgid "The /apps/marco/global_keybindings/run_command_window_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr "Ключ /apps/marco/global_keybindings/run_command_window_screenshot вызначае зьвяз клявіша які выкліча загад усталяваны гэтым ключом."
+
+#: ../src/marco.schemas.in.h:95
+msgid "The keybinding that runs the correspondingly-numbered command in /apps/marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для старту праграмаў з адпаведным нумарам у ключы /apps/marco/keybindings_commands. Ужываны фармат: \"&lt;Control&gt;a\" альбо \"&lt;Shift&gt;&lt;Alt&gt;F1. Раборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напрыклад \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:96
+msgid "The keybinding that switches to the workspace above the current workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на працоўную прастору па-над актыўнай прасторай. Ужываны фармат: \"&lt;Control&gt;a\" альбо \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:97
+msgid "The keybinding that switches to the workspace below the current workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на працоўную прастору пад актыўнай прасторай. Ужываны фармат: \"&lt;Control&gt;a\" альбо \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:98
+msgid "The keybinding that switches to the workspace on the left of the current workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на працоўную прастору зьлева ад актыўнай прасторы. Ужываны фармат: \"&lt;Control&gt;a\" альбо \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:99
+msgid "The keybinding that switches to the workspace on the right of the current workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на працоўную прастору зправа ад актыўнай прасторы. Ужываны фармат: \"&lt;Control&gt;a\" альбо \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:100
+msgid "The keybinding that switches to workspace 1. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 1 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:101
+msgid "The keybinding that switches to workspace 10. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 10 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:102
+msgid "The keybinding that switches to workspace 11. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 11 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:103
+msgid "The keybinding that switches to workspace 12. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 12 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:104
+msgid "The keybinding that switches to workspace 2. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 2 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:105
+msgid "The keybinding that switches to workspace 3. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 3 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:106
+msgid "The keybinding that switches to workspace 4. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 4 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:107
+msgid "The keybinding that switches to workspace 5. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 5 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:108
+msgid "The keybinding that switches to workspace 6. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 6 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:109
+msgid "The keybinding that switches to workspace 7. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 7 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:110
+msgid "The keybinding that switches to workspace 8. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 8 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:111
+msgid "The keybinding that switches to workspace 9. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня на 9 працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:112
+msgid "The keybinding used to activate the window menu. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для актывацыі мэню вакна. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:113
+msgid "The keybinding used to close a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для закрыцьця вакна. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:114
+msgid "The keybinding used to enter \"move mode\" and begin moving a window using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна з дапамогаю клявіятуры. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:115
+msgid "The keybinding used to enter \"resize mode\" and begin resizing a window using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для зьмены памераў вакна з дапамогаю клявіятуры. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:116
+msgid "The keybinding used to hide all normal windows and set the focus to the desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для хаваньня ўсіх звычайных вокнаў і засяроджаньня на фон стальца. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:117
+msgid "The keybinding used to maximize a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для найбольшаньня вакна. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:118
+msgid "The keybinding used to minimize a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для найменшаньня вакна. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:119
+msgid "The keybinding used to move a window one workspace down. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на ніжэйшую працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:120
+msgid "The keybinding used to move a window one workspace to the left. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на лявейшую працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:121
+msgid "The keybinding used to move a window one workspace to the right. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на правейшую працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:122
+msgid "The keybinding used to move a window one workspace up. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на вышэйшую працоўную прастору. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:123
+msgid "The keybinding used to move a window to workspace 1. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 1. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:124
+msgid "The keybinding used to move a window to workspace 10. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 10. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:125
+msgid "The keybinding used to move a window to workspace 11. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 11. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:126
+msgid "The keybinding used to move a window to workspace 12. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 12. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:127
+msgid "The keybinding used to move a window to workspace 2. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 2. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:128
+msgid "The keybinding used to move a window to workspace 3. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 3. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:129
+msgid "The keybinding used to move a window to workspace 4. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 4. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:130
+msgid "The keybinding used to move a window to workspace 5. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 5. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:131
+msgid "The keybinding used to move a window to workspace 6. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 6. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:132
+msgid "The keybinding used to move a window to workspace 7. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 7. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:133
+msgid "The keybinding used to move a window to workspace 8. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 8. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:134
+msgid "The keybinding used to move a window to workspace 9. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для перамяшчэньня вакна на працоўную прастору 9. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:135
+msgid "The keybinding used to move focus backwards between panels and the desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для адваротнага засяроджаньня паміж панэлямі і стальцом з выкарыстаньнем выплыўнага вакенца. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:136
+msgid "The keybinding used to move focus backwards between panels and the desktop, without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для адваротнага засяроджаньня паміж панэлямі і стальцом без выплыўнага вакенца. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:137
+msgid "The keybinding used to move focus backwards between windows of an application without a popup window. Holding \"shift\" together with this binding makes the direction go forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для адваротнага засяроджаньня паміж панэлямі і стальцом без выплыўнага вакенца. Націск клявішы \"shift\" пры выкарыстаньні гэтае камбінацыі зьмяняе накірунак на просты. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:138
+msgid "The keybinding used to move focus backwards between windows of an application, using a popup window. Holding \"shift\" together with this binding makes the direction go forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для адваротнага засяроджаньня паміж вокнамі з выкарыстаньнем выпдыўнага вакенца. Націск клявішы \"shift\" пры выкарыстаньні гэтае камбінацыі зьмяняе накірунак на просты. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:139
+msgid "The keybinding used to move focus backwards between windows without a popup window. Holding \"shift\" together with this binding makes the direction go forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для адваротнага засяроджаньня паміж панэлямі і стальцом без выплыўнага вакенца. Націск клявішы \"shift\" пры выкарыстаньні гэтае камбінацыі зьмяняе накірунак на просты. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:140
+msgid "The keybinding used to move focus backwards between windows, using a popup window. Holding \"shift\" together with this binding makes the direction go forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для адваротнага засяроджаньня паміж вокнамі з выкарыстаньнем выплыўнага вакенца. Націск клявішы \"shift\" пры выкарыстаньні гэтае камбінацыі зьмяняе накірунак на просты. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:141
+msgid "The keybinding used to move focus between panels and the desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для засяроджаньня паміж панэлямі і стальцом з выкарыстаньнем выплыўнага вакенца. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:142
+msgid "The keybinding used to move focus between panels and the desktop, without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для засяроджаньня паміж панэлямі і стальцом без выплыўнага вакенца. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:143
+msgid "The keybinding used to move focus between windows of an application without a popup window. Holding the \"shift\" key while using this binding reverses the direction of movement. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для засяроджаньня паміж вокнамі без выплыўнага вакенца (звычайна &lt;Alt&gt;Escape). Націск клявішы \"shift\" пры выкарыстаньні гэтае камбінацыі зьмяняе накірунак на просты. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:144
+msgid "The keybinding used to move focus between windows of an application, using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while using this binding reverses the direction of movement. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для засяроджаньня паміж вокнамі з выкарыстаньнем выплыўнага вакенца. Націск клявішы \"shift\" пры выкарыстаньні гэтае камбінацыі зьмяняе накірунак на просты. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:145
+msgid "The keybinding used to move focus between windows without a popup window. (Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this binding reverses the direction of movement. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для засяроджаньня паміж вокнамі без выплыўнага вакенца (звычайна &lt;Alt&gt;Escape). Націск клявішы \"shift\" пры выкарыстаньні гэтае камбінацыі зьмяняе накірунак на просты. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:146
+msgid "The keybinding used to move focus between windows, using a popup window. (Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this binding reverses the direction of movement. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для засяроджаньня паміж вокнамі з выкарыстаньнем выплыўнага вакенца. Націск клявішы \"shift\" пры выкарыстаньні гэтае камбінацыі зьмяняе накірунак на просты. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:147
+msgid "The keybinding used to toggle always on top. A window that is always on top will always be visible over other overlapping windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня стану знаходжаньня заўсёды наверсе. Вакно, якое знаходзіцца ў стане \"заўсёды наверсе\", будзе заўсёды бачным, перакрываючы іншыя вокны. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:148
+msgid "The keybinding used to toggle fullscreen mode. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня ў поўнаэкранны рэжым. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:149
+msgid "The keybinding used to toggle maximization. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня найбольшаньня. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:150
+msgid "The keybinding used to toggle shaded/unshaded state. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня зацененанага/незацененага стану. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:151
+msgid "The keybinding used to toggle whether the window is on all workspaces or just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для пераключэньня бачнасьці вакна на ўсіх працоўных прасторах. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:152
+msgid "The keybinding used to unmaximize a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для найбольшаньня вакна. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:153
+msgid "The keybinding which display's the panel's \"Run Application\" dialog box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для адкрыцьця вакна \"Выканаць праграму\". Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:154
+msgid "The keybinding which invokes a terminal. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для паказу галоўнага мэню панэлі. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:155
+msgid "The keybinding which invokes the panel's screenshot utility to take a screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для выкананьня праграмы стварэньня адбіткаў стальца. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:156
+msgid "The keybinding which invokes the panel's screenshot utility. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для выкананьня праграмы стварэньня адбіткаў стальца. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:157
+msgid "The keybinding which shows the panel's main menu. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для паказу галоўнага мэню панэлі. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:158
+msgid "The name of a workspace."
+msgstr "Назва працоўнае прасторы."
+
+#: ../src/marco.schemas.in.h:159
+msgid "The screenshot command"
+msgstr "Загад атрыманьня здымка экрана"
+
+#: ../src/marco.schemas.in.h:160
+msgid "The theme determines the appearance of window borders, titlebar, and so forth."
+msgstr "Тэма вызначае вонкавы выгляд межаў вакна, загалоўка і г.д."
+
+#: ../src/marco.schemas.in.h:161
+msgid "The time delay before raising a window if auto_raise is set to true. The delay is given in thousandths of a second."
+msgstr "Затрымка ўсплываньня вакна, калі для парамэтра auto_raise выбрана значэньне ІСЬЦІНА. Затрымка вымяраецца ў мілісэкундах."
+
+#: ../src/marco.schemas.in.h:162
+msgid "The window focus mode indicates how windows are activated. It has three possible values; \"click\" means windows must be clicked in order to focus them, \"sloppy\" means windows are focused when the mouse enters the window, and \"mouse\" means windows are focused when the mouse enters the window and unfocused when the mouse leaves the window."
+msgstr "Рэжым перадачы засяроджаньня ўводу ў акно паказывае, як актывіруюцца вокны. У гэтага рэжыма тры магчымыя значэньні; \"націск\" - для актывацыі акна па ім трэба націскнуць, \"sloppy\" - акно актывіруецца, калі на яго трапляе указальнік мышы, і \"мыш\" - акно актывіруецца, калі ў яго перамяшчаецца указальнік мышы й перастае быць актыўным, калі указальнік мышы выходзіць з яго."
+
+#: ../src/marco.schemas.in.h:163
+msgid "The window screenshot command"
+msgstr "Загад атрыманьня здымка вакна"
+
+#: ../src/marco.schemas.in.h:164
+msgid "This keybinding changes whether a window is above or below other windows. If the window is covered by another one, it raises the window above all others, and if the window is already fully visible, it lowers it below all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў вызначае, ці будзе вакно разьмешчаным па-над усімі астатнімі ці за імі. Калі вакно перакрытае іншымы вокнамі, яно зьявіцца па-над іншымі вокнамі. Калі вакно ўжо цалкам бачнае, яно схаваецца за іншымі вокнамі. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:165
+msgid "This keybinding lowers a window below other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для разьмяшчэньня вакна за ўсімі вокнамі. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:166
+msgid "This keybinding raises the window above other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для разьмяшчэньня вакна па-над усімі вокнамі. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:167
+msgid "This keybinding resizes a window to fill available horizontal space. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для запаўненьня вакном усёй даступнай прасторы па гарызанталі. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:168
+msgid "This keybinding resizes a window to fill available vertical space. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Камбінацыя клявішаў для запаўненьня ўсёй даступнай прасторы па вэртыкалі. Ужываны фармат: \"&lt;Control&gt;a\" ці \"&lt;Shift&gt;&lt;Alt&gt;F1. Разборнік даволі лібэральны, можна ўжываць розны рэгістар і скароты, напр., \"&lt;Ctl&gt;\" і \"&lt;Ctrl&gt;\". Калі для гэтага парамэтра выбраць значэньне \"адключаны\", камбінацыя клявішаў для гэтага дзеяньня ня будзе выбранай."
+
+#: ../src/marco.schemas.in.h:169
+msgid "This option determines the effects of double-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'minimize' which will minimize the window, and 'none' which will not do anything."
+msgstr "Гэты выбар вызначае эфэкты падвойнага пстрычка па загалоўку вакна. Магчымыя значэньні: \"toggle_shaded\", што выкліча згортваньне/разгортваньне вакна, і \"toggle_maximize\", што выкліча найбольшаньне/найменшаньне вакна."
+
+#: ../src/marco.schemas.in.h:170
+msgid "This option provides additional control over how newly created windows get focus. It has two possible values; \"smart\" applies the user's normal focus mode, and \"strict\" results in windows started from a terminal not being given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:171
+msgid "Toggle always on top state"
+msgstr "Зьмяніць стан знаходжаньня заўсёды наверсе"
+
+#: ../src/marco.schemas.in.h:172
+msgid "Toggle fullscreen mode"
+msgstr "Пераключыцца паміж поўнаэкранным і ваконным рэжымамі"
+
+#: ../src/marco.schemas.in.h:173
+msgid "Toggle maximization state"
+msgstr "Зьмяніць стан найбольшаньня"
+
+#: ../src/marco.schemas.in.h:174
+msgid "Toggle shaded state"
+msgstr "Зьмяніць стан зацяненьня"
+
+#: ../src/marco.schemas.in.h:175
+msgid "Toggle window on all workspaces"
+msgstr "Зьмяніць стан паказу на ўсіх працоўных прасторах"
+
+#: ../src/marco.schemas.in.h:176
+msgid "Turns on a visual indication when an application or the system issues a 'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy environments."
+msgstr "Уключае наяўны паказ таго, калі праграма ці сыстэма выкарыстоўвае \"званок\" ці \"гудок\", зручна для людзей з дрэнным слыхам, ў асяродзьдзі зь вялікім узроўнем шуму альбо калі \"гукавы званок\" адключаны."
+
+#: ../src/marco.schemas.in.h:177
+msgid "Unmaximize window"
+msgstr "Разнайбольшыць вакно"
+
+#: ../src/marco.schemas.in.h:178
+msgid "Use standard system font in window titles"
+msgstr "Выкарыстоўваць звычайны сыстэмны шрыфт для загалоўкаў вокнаў"
+
+#: ../src/marco.schemas.in.h:179
+msgid "Visual Bell Type"
+msgstr "Тып бачнага сыгналу"
+
+#: ../src/marco.schemas.in.h:180
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:181
+msgid "Window focus mode"
+msgstr "Рэжым засяроджаньня вакна"
+
+#: ../src/marco.schemas.in.h:182
+msgid "Window title font"
+msgstr "Шрыфт загалоўка вакна"
+
+#: ../src/prefs.c:574
+#: ../src/prefs.c:590
+#: ../src/prefs.c:606
+#: ../src/prefs.c:622
+#: ../src/prefs.c:638
+#: ../src/prefs.c:654
+#: ../src/prefs.c:670
+#: ../src/prefs.c:690
+#: ../src/prefs.c:706
+#: ../src/prefs.c:722
+#: ../src/prefs.c:740
+#: ../src/prefs.c:756
+#: ../src/prefs.c:775
+#: ../src/prefs.c:791
+#: ../src/prefs.c:808
+#: ../src/prefs.c:824
+#: ../src/prefs.c:840
+#: ../src/prefs.c:857
+#: ../src/prefs.c:873
+#: ../src/prefs.c:889
+#: ../src/prefs.c:905
+#: ../src/prefs.c:921
+#: ../src/prefs.c:936
+#: ../src/prefs.c:951
+#: ../src/prefs.c:966
+#: ../src/prefs.c:982
+#: ../src/prefs.c:998
+#: ../src/prefs.c:1014
+#: ../src/prefs.c:1030
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Для ключа сыстэмы MateConf \"%s\" выбраны няправільны тып\n"
+
+#: ../src/prefs.c:1075
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for mouse button modifier\n"
+msgstr "Значэньне \"%s\" з базы даньняў наладкі ёсьць няправільным значэньнем для мадыфікатара кнопкі мышы\n"
+
+#: ../src/prefs.c:1099
+#: ../src/prefs.c:1120
+#: ../src/prefs.c:1616
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Для ключа сыстэмы MateConf \"%s\" выстаўленае няправільнае значэньне\n"
+
+#: ../src/prefs.c:1249
+#, c-format
+msgid "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the range 1..128\n"
+msgstr "Значэньне %d з ключа сыстэмы MateConf %s зьяўляецца няправільным памерам курсора; павінна быць у дыяпазоне ад 1 да 128\n"
+
+#: ../src/prefs.c:1329
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Немагчыма разабраць апісаньне шрыфта \"%s\" з ключа сыстэмы MateConf %s\n"
+
+#: ../src/prefs.c:1514
+#, c-format
+msgid "%d stored in MateConf key %s is not a reasonable number of workspaces, current maximum is %d\n"
+msgstr "Значэньне %d з ключа сыстэмы MateConf %s ёсьць няправільнай колькасьцю працоўных прастораў, выстаўлены максымум - %d\n"
+
+#: ../src/prefs.c:1574
+msgid "Workarounds for broken applications disabled. Some applications may not behave properly.\n"
+msgstr "Абыход хібаў нестандартных праграмаў адключаны. Некаторыя праграмы могуць кепска працаваць.\n"
+
+#: ../src/prefs.c:1643
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "Значэньне %d з ключа сыстэмы MateConf \"%s\" не ўваходзіць у дыяпазон значэньняў ад 0 да %d\n"
+
+#: ../src/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Адбылася памылка выстаўленьня колькасьці працоўных прастораў = %d: %s\n"
+
+#: ../src/prefs.c:2172
+#: ../src/prefs.c:2342
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for keybinding \"%s\"\n"
+msgstr "Значэньне \"%s\" з базы даньняў наладкі ёсьць няправільным значэньнем для камбінацыі клявішаў \"%s\"\n"
+
+#: ../src/prefs.c:2758
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Адбылася памылка выстаўленьня назвы працоўнае прасторы %d у \"%s\": %s\n"
+
+#: ../src/resizepopup.c:111
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:404
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Няправільны экран %d з дысплэя \"%s\"\n"
+
+#: ../src/screen.c:420
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager; try using the --replace option to replace the current window manager.\n"
+msgstr "У экрана %d з дысплэя \"%s\" ужо ёсьць кіраўнік вокнаў; паспрабуйце ўжыць парамэтар --replace, каб замяніць актыўнага кіраўніка вокнаў.\n"
+
+#: ../src/screen.c:444
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Немагчыма выбраць кіраўніка вокнаў для экрана %d з дысплэя \"%s\"\n"
+
+#: ../src/screen.c:502
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "У экрана %d з дысплэя \"%s\" ужо ёсьць кіраўнік вокнаў\n"
+
+#: ../src/screen.c:707
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Немагчыма вызваліць экран %d з дысплэя \"%s\"\n"
+
+#: ../src/session.c:835
+#: ../src/session.c:842
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Немагчыма стварыць тэчку \"%s\": %s\n"
+
+#: ../src/session.c:852
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Немагчыма адкрыць для запісу файл сэанса \"%s\": %s\n"
+
+#: ../src/session.c:1004
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Адбылася памылка запісу файла сэанса \"%s\": %s\n"
+
+#: ../src/session.c:1009
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Адбылася памылка закрыцьця файла сэанса \"%s\": %s\n"
+
+#: ../src/session.c:1084
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Адбылася памылка ў часе чытаньня запісанага файла сэанса \"%s\": %s\n"
+
+#: ../src/session.c:1119
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Адбылася памылкаў часе разбору запісанага файла сэанса: %s\n"
+
+#: ../src/session.c:1168
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "Выстаўлены атрыбут <marco_session>, але ID сэанса ўжо ёсьць"
+
+#: ../src/session.c:1181
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "Невядомы атрыбут \"%s\" элемэнта <marco_session>"
+
+#: ../src/session.c:1198
+msgid "nested <window> tag"
+msgstr "укладзены тэг <window>"
+
+#: ../src/session.c:1256
+#: ../src/session.c:1288
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Атрыбут \"%s\" элемэнта <window> невядомы"
+
+#: ../src/session.c:1360
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Атрыбут \"%s\" элемэнта <window> невядомы"
+
+#: ../src/session.c:1420
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Атрыбут \"%s\" элемэнта <geometry> невядомы"
+
+#: ../src/session.c:1440
+#, c-format
+msgid "Unknown element %s"
+msgstr "Элемэнт \"%s\" невядомы"
+
+#: ../src/session.c:1906
+#, c-format
+msgid "Error launching marco-dialog to warn about apps that don't support session management: %s\n"
+msgstr "Памылка старту marco-dialog для папярэджаньня аб наяўнасьці праграмаў, якія не падтрымліваюць сэансы: %s\n"
+
+#: ../src/theme-parser.c:224
+#: ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Радок %d, знак %d: %s"
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Атрыбут \"%s\" двойчы паўтараецца ў адным і тым жа элемэнце <%s>"
+
+#: ../src/theme-parser.c:414
+#: ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Атрыбут \"%s\" нельга выкарыстоўваць у элемэнце <%s> у такім кантэксьце"
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Цэлы лік %ld мусіць быць дадатным"
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Цэлы лік %ld надта вялікі, выстаўлены максымум = %d"
+
+#: ../src/theme-parser.c:521
+#: ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Немагчыма разабраць \"%s\" як лік зь нефіксаванай коскай"
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Лягічныя значэньні мусяць быць \"true\" альбо \"false\", а не \"%s\""
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Кут мусіць быць ад 0,0 да 360,0, а быў %g\n"
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Альфа-канал мусіць быць ад 0,0 (поўная празрыстасьць) да 1,0 (поўная непразрыстасьць), а быў %g\n"
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid "Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+msgstr "Няправільны маштаб загалоўка \"%s\" (магчымыя значэньні xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+
+#: ../src/theme-parser.c:729
+#: ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807
+#: ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935
+#: ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062
+#: ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126
+#: ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2933
+#: ../src/theme-parser.c:3022
+#: ../src/theme-parser.c:3029
+#: ../src/theme-parser.c:3036
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "Няма атрыбута \"%s\" для элемэнта <%s> "
+
+#: ../src/theme-parser.c:837
+#: ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943
+#: ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "Назва \"%s\" элемэнта <%s> выкарыстаная два разы"
+
+#: ../src/theme-parser.c:849
+#: ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Бацькоўскі аб'ект \"%s\" элемэнта <%s> ня вызначаны"
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Геамэтрыя \"%s\" аб'екта <%s> ня вызначаная"
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "У элемэнце <%s> мусяць быць вызначаны альбо геамэтрыя, альбо бацькоўскі аб'ект, які мае геамэтрыю"
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Тып \"%s\" для элемэнта <%s> невядомы"
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Парамэтар style_set \"%s\" для элемэнта <%s> невядомы"
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Тыпу вакна \"%s\" ужо быў прыпісаны набор стыляў"
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr "Функцыя \"%s\" для значкі мэню невядомая"
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr "Стан \"%s\" для значкі мэню невядомы"
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr "У тэмы ўжо ёсьць значка мэню для стану %s функцыі %s"
+
+#: ../src/theme-parser.c:1177
+#: ../src/theme-parser.c:3241
+#: ../src/theme-parser.c:3320
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Не вызначаны ніводны парамэтр <draw_ops> з назвай \"%s\""
+
+#: ../src/theme-parser.c:1192
+#: ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545
+#: ../src/theme-parser.c:3121
+#: ../src/theme-parser.c:3175
+#: ../src/theme-parser.c:3335
+#: ../src/theme-parser.c:3512
+#: ../src/theme-parser.c:3550
+#: ../src/theme-parser.c:3588
+#: ../src/theme-parser.c:3626
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Ужываньне элемэнта <%s> пасьля <%s> забаронена"
+
+#: ../src/theme-parser.c:1282
+#: ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Няма атрыбута \"name\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1289
+#: ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Няма атрыбута \"value\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1320
+#: ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid "Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr "Немагчыма выставіць парамэтры button_width/button_height і каэфіцыент прапарцыйнасьці для кнопак"
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Адлегласьць \"%s\" невядомая"
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Каэфіцыент прапарцыянальнасьці \"%s\" невядомы"
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "Няма атрыбута \"top\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "Няма атрыбута \"bottom\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "Няма атрыбута \"left\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "Няма атрыбута \"right\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Мяжа \"%s\" невядомая"
+
+#: ../src/theme-parser.c:1652
+#: ../src/theme-parser.c:1762
+#: ../src/theme-parser.c:1865
+#: ../src/theme-parser.c:2052
+#: ../src/theme-parser.c:2866
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "Няма атрыбута \"color\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1659
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "Няма атрыбута \"x1\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1666
+#: ../src/theme-parser.c:2711
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "Няма атрыбута \"y1\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1673
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "Няма атрыбута \"x2\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1680
+#: ../src/theme-parser.c:2718
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "Няма атрыбута \"y2\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1769
+#: ../src/theme-parser.c:1872
+#: ../src/theme-parser.c:1978
+#: ../src/theme-parser.c:2059
+#: ../src/theme-parser.c:2165
+#: ../src/theme-parser.c:2263
+#: ../src/theme-parser.c:2480
+#: ../src/theme-parser.c:2606
+#: ../src/theme-parser.c:2704
+#: ../src/theme-parser.c:2778
+#: ../src/theme-parser.c:2873
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "Няма атрыбута \"x\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1776
+#: ../src/theme-parser.c:1879
+#: ../src/theme-parser.c:1985
+#: ../src/theme-parser.c:2066
+#: ../src/theme-parser.c:2172
+#: ../src/theme-parser.c:2270
+#: ../src/theme-parser.c:2487
+#: ../src/theme-parser.c:2613
+#: ../src/theme-parser.c:2785
+#: ../src/theme-parser.c:2880
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "Няма атрыбута \"y\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1783
+#: ../src/theme-parser.c:1886
+#: ../src/theme-parser.c:1992
+#: ../src/theme-parser.c:2073
+#: ../src/theme-parser.c:2179
+#: ../src/theme-parser.c:2277
+#: ../src/theme-parser.c:2494
+#: ../src/theme-parser.c:2620
+#: ../src/theme-parser.c:2792
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "Няма атрыбута \"width\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1790
+#: ../src/theme-parser.c:1893
+#: ../src/theme-parser.c:1999
+#: ../src/theme-parser.c:2080
+#: ../src/theme-parser.c:2186
+#: ../src/theme-parser.c:2284
+#: ../src/theme-parser.c:2501
+#: ../src/theme-parser.c:2627
+#: ../src/theme-parser.c:2799
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "Няма атрыбута \"height\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1900
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "Няма атрыбута \"start_angle\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:1907
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "Няма атрыбута \"extent_angle\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:2087
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "Няма атрыбута \"alpha\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:2158
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "Няма атрыбута \"type\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:2206
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Немагчыма вызначыць значэньне \"%s\" для тыпа градыента"
+
+#: ../src/theme-parser.c:2291
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "Няма атрыбута \"filename\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:2316
+#: ../src/theme-parser.c:2824
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Немагчыма вызначыць тып запаўненьня \"%s\" для элемэнта <%s> "
+
+#: ../src/theme-parser.c:2459
+#: ../src/theme-parser.c:2592
+#: ../src/theme-parser.c:2697
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "Няма атрыбута \"state\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:2466
+#: ../src/theme-parser.c:2599
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "Няма атрыбута \"shadow\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:2473
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "Няма атрыбута \"arrow\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:2526
+#: ../src/theme-parser.c:2648
+#: ../src/theme-parser.c:2736
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Немагчыма вызначыць рэжым \"%s\" для элемэнта <%s> "
+
+#: ../src/theme-parser.c:2536
+#: ../src/theme-parser.c:2658
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Немагчыма вызначыць цень \"%s\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:2546
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Немагчыма вызначыць стрэлку \"%s\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:2959
+#: ../src/theme-parser.c:3075
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Парамэтар <draw_ops> з назвай \"%s\" не вызначаны"
+
+#: ../src/theme-parser.c:2971
+#: ../src/theme-parser.c:3087
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Устаўка сюды парамэтра draw_ops \"%s\" стварае цыклічную спасылку"
+
+#: ../src/theme-parser.c:3150
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "Няма атрыбута \"value\" для элемента <%s> "
+
+#: ../src/theme-parser.c:3207
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "Няма атрыбута \"position\" для элемента <%s> "
+
+#: ../src/theme-parser.c:3216
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Невядомая пазыцыя \"%s\" для кавалка фрэйма"
+
+#: ../src/theme-parser.c:3224
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "У стылі фрэйма ўжо ёсьць кавалак у пазыцыі %s"
+
+#: ../src/theme-parser.c:3269
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "Няма атрыбута \"function\" для элемэнта <%s> "
+
+#: ../src/theme-parser.c:3277
+#: ../src/theme-parser.c:3381
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "Няма атрыбута \"state\" для элемэнта <%s> "
+
+#: ../src/theme-parser.c:3286
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Невядомая функцыя \"%s\" для кнопкі"
+
+#: ../src/theme-parser.c:3295
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Невядомы стан \"%s\" для кнопкі"
+
+#: ../src/theme-parser.c:3303
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "У стылі фрэйма ўжо ёсць кнопка для рэжыму %s функцыі %s"
+
+#: ../src/theme-parser.c:3373
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "Няма атрыбута \"focus\" для элемэнта <%s> "
+
+#: ../src/theme-parser.c:3389
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "Няма атрыбута \"style\" для элемэнта <%s> "
+
+#: ../src/theme-parser.c:3398
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" - няправільнае значэньне для атрыбута \"focus\""
+
+#: ../src/theme-parser.c:3407
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" - няправільнае значэньне для атрыбута \"state\""
+
+#: ../src/theme-parser.c:3417
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Стыль \"%s\" ня вызначаны"
+
+#: ../src/theme-parser.c:3427
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "Няма атрыбута \"resize\" для элемэнта <%s>"
+
+#: ../src/theme-parser.c:3437
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" - няправільнае значэньне для атрыбута \"resize\""
+
+#: ../src/theme-parser.c:3447
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized/shaded states"
+msgstr "Ня трэба выкарыстоўваць атрыбут \"resize\" у элемэнце <%s> для найбольшанага і зацененага станаў"
+
+#: ../src/theme-parser.c:3461
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Для атрыбутаў state %s resize %s focus %s стыль ужо вызначаны"
+
+#: ../src/theme-parser.c:3472
+#: ../src/theme-parser.c:3483
+#: ../src/theme-parser.c:3494
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Для атрыбутаў state %s focus %s стыль ужо вызначаны"
+
+#: ../src/theme-parser.c:3533
+msgid "Can't have a two draw_ops for a <piece> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Немагчыма ўжыць два парамэтры draw_ops для элемэнта <piece> (у тэме пазначаны атрыбут draw_ops і элемэнт <draw_ops> ці вызначаныя два элемэнты)"
+
+#: ../src/theme-parser.c:3571
+msgid "Can't have a two draw_ops for a <button> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Немагчыма ўжыць два парамэтры draw_ops для элемэнта <button> (у тэме пазначаны атрыбут draw_ops і элемэнт <draw_ops> ці вызначаныя два элемэнты)"
+
+#: ../src/theme-parser.c:3609
+msgid "Can't have a two draw_ops for a <menu_icon> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Немагчыма ўжыць два парамэтры draw_ops для элемэнта <menu_icon> (у тэме пазначаны атрыбут draw_ops і элемэнт <draw_ops> ці вызначаныя два элемэнты)"
+
+#: ../src/theme-parser.c:3656
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Вонкавы элемэнт у тэме мусіць быць <marco_theme>, а не <%s>"
+
+#: ../src/theme-parser.c:3676
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Выкарыстаньне элемэнта <%s> унутры элемэнтаў name/author/date/description забаронена"
+
+#: ../src/theme-parser.c:3681
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Выкарыстаньне элемэнта <%s> унутры элемэнта <constant> забаронена"
+
+#: ../src/theme-parser.c:3693
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Выкарыстаньне элемэнта <%s> унутры элемэнтаў distance/border/aspect_ratio забаронена"
+
+#: ../src/theme-parser.c:3715
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Выкарыстаньне элемэнта <%s> унутры элемэнта draw operation забаронена"
+
+#: ../src/theme-parser.c:3725
+#: ../src/theme-parser.c:3755
+#: ../src/theme-parser.c:3760
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Выкарыстаньне элемэнта <%s> унутры элемэнта <%s> забаронена"
+
+#: ../src/theme-parser.c:3981
+msgid "No draw_ops provided for frame piece"
+msgstr "Не вызначаны парамэтар draw_ops для кавалка фрэйма"
+
+#: ../src/theme-parser.c:3996
+msgid "No draw_ops provided for button"
+msgstr "Не вызначаны парамэтар draw_ops для кнопкі"
+
+#: ../src/theme-parser.c:4011
+msgid "No draw_ops provided for menu icon"
+msgstr "Не вызначаны парамэтар draw_ops для значкі мэню"
+
+#: ../src/theme-parser.c:4051
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Выкарыстаньне тэксту ўнутры элемэнта <%s> забаронена"
+
+#: ../src/theme-parser.c:4106
+msgid "<name> specified twice for this theme"
+msgstr "Парамэтар <name> вызначаны для гэтай тэмы двойчы"
+
+#: ../src/theme-parser.c:4117
+msgid "<author> specified twice for this theme"
+msgstr "Парамэтар <author> вызначаны для гэтай тэмы двойчы"
+
+#: ../src/theme-parser.c:4128
+msgid "<copyright> specified twice for this theme"
+msgstr "Парамэтар <copyright> вызначаны для гэтай тэмы двойчы"
+
+#: ../src/theme-parser.c:4139
+msgid "<date> specified twice for this theme"
+msgstr "Парамэтар <date> вызначаны для гэтай тэмы двойчы"
+
+#: ../src/theme-parser.c:4150
+msgid "<description> specified twice for this theme"
+msgstr "Парамэтар <description> вызначаны для гэтай тэмы двойчы"
+
+#: ../src/theme-parser.c:4345
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr "Адбылася памылка ў часе чытаньня тэмы з файла %s: %s\n"
+
+#: ../src/theme-parser.c:4400
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "У файле тэмы %s няма каранёвага элемэнта <marco_theme>"
+
+#: ../src/theme-viewer.c:72
+msgid "/_Windows"
+msgstr "/_Вокны"
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Dialog"
+msgstr "/Вокны/_Дыялёг"
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Modal dialog"
+msgstr "/Вокны/_Мадальны дыялёг"
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Utility"
+msgstr "/Вокны/_Службовая праграма"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Splashscreen"
+msgstr "/Вокны/_Застаўка"
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Bottom dock"
+msgstr "/Вокны/_Ніжняя панэль"
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_Left dock"
+msgstr "/Вокны/_Левая панэль"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/_Right dock"
+msgstr "/Вокны/_Правая панэль"
+
+#: ../src/theme-viewer.c:82
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/theme-viewer.c:83
+msgid "/Windows/Des_ktop"
+msgstr "/Вокны/_Сталец"
+
+#: ../src/theme-viewer.c:132
+msgid "Open another one of these windows"
+msgstr "Адкрыць наступнае з гэтых вокнаў "
+
+#: ../src/theme-viewer.c:139
+msgid "This is a demo button with an 'open' icon"
+msgstr "Гэта дэмакнопка з значкай 'адкрыць'"
+
+#: ../src/theme-viewer.c:146
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Гэта дэмакнопка з значкай 'выйсьці'"
+
+#: ../src/theme-viewer.c:239
+msgid "This is a sample message in a sample dialog"
+msgstr "Гэта ўзорнае паведамленьне ў узорным дыялёгу"
+
+#: ../src/theme-viewer.c:322
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Пусты элемэнт мэню %d\n"
+
+#: ../src/theme-viewer.c:356
+msgid "Border-only window"
+msgstr "Вакно толькі зь межамі"
+
+#: ../src/theme-viewer.c:358
+msgid "Bar"
+msgstr "Панэль"
+
+#: ../src/theme-viewer.c:375
+msgid "Normal Application Window"
+msgstr "Звычайная праграма"
+
+#: ../src/theme-viewer.c:379
+msgid "Dialog Box"
+msgstr "Дыялёг"
+
+#: ../src/theme-viewer.c:383
+msgid "Modal Dialog Box"
+msgstr "Мадальны дыялёг"
+
+#: ../src/theme-viewer.c:387
+msgid "Utility Palette"
+msgstr "Службовая праграма"
+
+#: ../src/theme-viewer.c:391
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/theme-viewer.c:395
+msgid "Border"
+msgstr "Мяжа"
+
+#: ../src/theme-viewer.c:723
+#, c-format
+msgid "Button layout test %d"
+msgstr "Праверка работы кнопак %d"
+
+#: ../src/theme-viewer.c:752
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "маляваць кадар вакна кожныя %g мс"
+
+#: ../src/theme-viewer.c:795
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Ужываньне: marco-theme-viewer [тэма]\n"
+
+#: ../src/theme-viewer.c:802
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Адбылася памылка адкрыцьця тэмы: %s\n"
+
+#: ../src/theme-viewer.c:808
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Тэма \"%s\" загружаная за %g сэкундаў\n"
+
+#: ../src/theme-viewer.c:831
+msgid "Normal Title Font"
+msgstr "Звычайны шрыфт загалоўка"
+
+#: ../src/theme-viewer.c:837
+msgid "Small Title Font"
+msgstr "Малы шрыфт загалоўка"
+
+#: ../src/theme-viewer.c:843
+msgid "Large Title Font"
+msgstr "Вялікі шрыфт загалоўка"
+
+#: ../src/theme-viewer.c:848
+msgid "Button Layouts"
+msgstr "Расклад кнопак"
+
+#: ../src/theme-viewer.c:853
+msgid "Benchmark"
+msgstr "Тэст"
+
+#: ../src/theme-viewer.c:900
+msgid "Window Title Goes Here"
+msgstr "Тут паказаны загаловак вакна"
+
+#: ../src/theme-viewer.c:1004
+#, c-format
+msgid "Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g seconds wall clock time including X server resources (%g milliseconds per frame)\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:1217
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1219
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1223
+msgid "Error was expected but none given"
+msgstr "Чакалася памылка, але зьвесткі не атрыманыя"
+
+#: ../src/theme-viewer.c:1225
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Чакалася памылка %d, але атрыманая памылка %d"
+
+#: ../src/theme-viewer.c:1231
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Атрыманая нечаканая памылка: %s"
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "значэньне x %d, чакалася %d"
+
+#: ../src/theme-viewer.c:1238
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "значэньне y %d, чакалася %d"
+
+#: ../src/theme-viewer.c:1301
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "каардынаты %d разабраныя за %g сэкундаў (сярэдне %g сэкундаў)\n"
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "верх"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "ніз"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "лева"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "права"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "геамэтрыя фрэйма не вызначае памер \"%s\""
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "геамэтрыя фрэйма не вызначае памер \"%s\" для мяжы \"%s\""
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Каэфіцыент прапарцыйнасьці кнопкі %g няправільны"
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Геамэтрыя фрэйма не вызначае памеру кнопак"
+
+#: ../src/theme.c:847
+msgid "Gradients should have at least two colors"
+msgstr "У градыентаў мусіць быць ня менш, чым два колеры"
+
+#: ../src/theme.c:973
+#, c-format
+msgid "GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "У спэцыфікацыі колеру GTK у дужках мусіць быць пазначаны рэжым, напр., gtk:fg[NORMAL], дзе NORMAL - гэта рэжым; немагчыма разабраць \"%s\""
+
+#: ../src/theme.c:987
+#, c-format
+msgid "GTK color specification must have a close bracket after the state, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "У спэцыфікацыі колеру GTK пасьля пазначэньня рэжыму мусіць быць дужка, якая закрывае, напр., gtk:fg[NORMAL], дзе NORMAL - гэта рэжым; немагчыма разабраць \"%s\""
+
+#: ../src/theme.c:998
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Немагчыма вызначыць рэжым \"%s\" у спэцыфікацыі колеру"
+
+#: ../src/theme.c:1011
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Немагчыма вызначыць складнік колеру \"%s\" у спэцыфікацыі колеру"
+
+#: ../src/theme.c:1041
+#, c-format
+msgid "Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the format"
+msgstr "Фармат вызначэньня зьмяшанага колеру - \"blend/bg_color/fg_color/alpha\", \"%s\" не адпавядае фармату"
+
+#: ../src/theme.c:1052
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Немагчыма разабраць значэньне альфа-канала \"%s\" у зьмяшаным колеры"
+
+#: ../src/theme.c:1062
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Значэньне альфа-канала \"%s\" у зьмяшаным колеры не ўваходзіць у дыяпазон між 0.0 і 1.0"
+
+#: ../src/theme.c:1109
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Фармат ценю - \"shade/base_color/factor\", \"%s\" не адпавядае фармату"
+
+#: ../src/theme.c:1120
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Немагчыма разабраць складнік ценю \"%s\" у зацененым колеры"
+
+#: ../src/theme.c:1130
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Складнік ценю \"%s\" у зацененым колеры адмоўны"
+
+#: ../src/theme.c:1159
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Немагчыма разабраць колеру \"%s\""
+
+#: ../src/theme.c:1418
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Каардынаты зьмяшчаюць знак '%s', забаронены для ўжываньня"
+
+#: ../src/theme.c:1445
+#, c-format
+msgid "Coordinate expression contains floating point number '%s' which could not be parsed"
+msgstr "Каардынаты зьмяшчаюць знак '%s', забаронены для ўжываньня"
+
+#: ../src/theme.c:1459
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Каардынаты зьмяшчаюць цэлы лік '%s', які немагчыма разабраць"
+
+#: ../src/theme.c:1526
+#, c-format
+msgid "Coordinate expression contained unknown operator at the start of this text: \"%s\""
+msgstr "Каардынаты зьмяшчаюць невядомы апэратар у пачатку наступнага тэксту: \"%s\""
+
+#: ../src/theme.c:1583
+msgid "Coordinate expression was empty or not understood"
+msgstr "Каардынаты пустыя, ці іх немагчыма вызначыць"
+
+#: ../src/theme.c:1720
+#: ../src/theme.c:1730
+#: ../src/theme.c:1764
+msgid "Coordinate expression results in division by zero"
+msgstr "Вылічэньне каардынатаў прывяло да дзяленьня на нуль"
+
+#: ../src/theme.c:1772
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "У каардынатах выкарыстаны апэратар атрыманьня рэшты ад дзяленьня для ліку зь нефіксаванай коскай"
+
+#: ../src/theme.c:1828
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "У каардынатах выкарыстаны апэратар \"%s\" там, дзе мусіць быць апэранд"
+
+#: ../src/theme.c:1837
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "У каардынатах выкарыстаны апэранд там, дзе мусіць быць апэратар"
+
+#: ../src/theme.c:1845
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Каардынаты заканчваюцца апэратарам, а не апэрандам"
+
+#: ../src/theme.c:1855
+#, c-format
+msgid "Coordinate expression has operator \"%c\" following operator \"%c\" with no operand in between"
+msgstr "У каардынатах за апэратарам \"%c\" ідзе апэратар \"%c\", паміж імі няма апэранда"
+
+#: ../src/theme.c:1973
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Разборнік каардынатаў перапоўніў свой буфэр."
+
+#: ../src/theme.c:2002
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "У каардынатах ўжытыя дужкі, якія закрываюць, але няма адпаведных ім дужак, якія адкрываюць"
+
+#: ../src/theme.c:2064
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "У каардынатах невядомая зьменная альбо нязьменная \"%s\""
+
+#: ../src/theme.c:2119
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "У каардынатах ўжытыя дужкі, якія адкрываюцца, але няма тых, якія закрываюцца"
+
+#: ../src/theme.c:2130
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "У каардынатах няма апэратараў і апэрандаў"
+
+#: ../src/theme.c:2371
+#: ../src/theme.c:2393
+#: ../src/theme.c:2414
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "У тэме быў выраз \"%s\", зь якога вынікнула памылка: %s\n"
+
+#: ../src/theme.c:3860
+#, c-format
+msgid "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be specified for this frame style"
+msgstr "Для гэтага стыля фрэйма трэба пазначыць <button function=\"%s\" state=\"%s\" draw_ops=\"што-небудзь\"/>"
+
+#: ../src/theme.c:4304
+#: ../src/theme.c:4329
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "Няма <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"што-небудзь\"/>"
+
+#: ../src/theme.c:4375
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Памылка ў часе адкрыцьця тэмы \"%s\": %s\n"
+
+#: ../src/theme.c:4515
+#: ../src/theme.c:4522
+#: ../src/theme.c:4529
+#: ../src/theme.c:4536
+#: ../src/theme.c:4543
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Няма элемэнта <%s> для тэмы \"%s\""
+
+#: ../src/theme.c:4551
+#, c-format
+msgid "No frame style set for window type \"%s\" in theme \"%s\", add a <window type=\"%s\" style_set=\"whatever\"/> element"
+msgstr "Няма стыля фрэйма для тыпу вакна \"%s\" у тэме \"%s\", дадайце элемэнт <window type=\"%s\" style_set=\"што-небудзь\"/>"
+
+#: ../src/theme.c:4565
+#, c-format
+msgid "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be specified for this theme"
+msgstr "Для гэтай тэмы трэба пазначыць <menu_icon function=\"%s\" state=\"%s\" draw_ops=\"што-небудзь\"/>"
+
+#: ../src/theme.c:4945
+#: ../src/theme.c:5007
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "Нязьменныя, выстаўленыя карыстальнікам, мусяць пачынацца зь вялікай літары; \"%s\" не пачынаецца зь вялікай літары"
+
+#: ../src/theme.c:4953
+#: ../src/theme.c:5015
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Нязьменная \"%s\" ужо вызначаная"
+
+#: ../src/util.c:96
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Памылка ў часе адкрыцьця журнала: %s\n"
+
+#: ../src/util.c:106
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Памылка ў часе выкананьня функцыі fdopen() для журнала %s: %s\n"
+
+#: ../src/util.c:112
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Адкрыты журнальны файл %s\n"
+
+#: ../src/util.c:220
+msgid "Window manager: "
+msgstr "Кіраўнік вокнаў: "
+
+#: ../src/util.c:368
+msgid "Bug in window manager: "
+msgstr "Хіба кіраўніка вокнаў: "
+
+#: ../src/util.c:397
+msgid "Window manager warning: "
+msgstr "Папярэджаньне кіраўніка вокнаў: "
+
+#: ../src/util.c:421
+msgid "Window manager error: "
+msgstr "Памылка кіраўніка вокнаў: "
+
+#: ../src/window-props.c:170
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Праграма выставіла няправільнае значэньне парамэтра _NET_WM_PID %lu\n"
+
+#: ../src/window-props.c:238
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (на %s)"
+
+#: ../src/window-props.c:1182
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Няправільнае вакно WM_TRANSIENT_FOR 0x%lx вызначанае для %s.\n"
+
+#. first time through
+#: ../src/window.c:5359
+#, c-format
+msgid "Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER window as specified in the ICCCM.\n"
+msgstr "Вакно \"%s\" выставіла для сябе значэньне SM_CLIENT_ID замест вакна з значэньнем WM_CLIENT_LEADER, як гэта напісана ў ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5955
+#, c-format
+msgid "Window %s sets an MWM hint indicating it isn't resizable, but sets min size %d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr "Вакно \"%s\" выставіла падказку MWM, якая вызначае, што яго памер не зьмяняецца, але выставіла мінімальны памер %d x %d і максымальны памер %d x %d; гэта бессэнсоўна.\n"
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Вакно 0x%lx мае ўласьцівасьць \"%s\",\n"
+"у якой мусіць быць тып \"%s\" фармату %d,\n"
+"а ў сапраўднасьці ўжыты тып \"%s\" фармату %d колькасьць элемэнтаў %d:\n"
+"Падобна на хібу праграмы, а не кіраўніка вокнаў.\n"
+"Вакно мае загаловак \"%s\", кляса - \"%s\", назва - \"%s\"\n"
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Уласьцівасьць \"%s\" для вакна 0x%lx утрымлівала нерэчаісныя даньні UTF-8\n"
+
+#: ../src/xprops.c:482
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "Уласьцівасьць \"%s\" для вакна 0x%lx утрымлівала нерэчаісныя даньні UTF-8 для элемэнта %d у сьпісе\n"
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Пэўныя дастасаваньні парушаюць спэцыфікацыі, што прыводзіць да памылковае "
+#~ "працы мэнаджара вокнаў. Напрыклад, ідэальна калі Marco мусіць "
+#~ "разьмяшчаць усе дыялёгавыя вокны аднолькава адносна бацькоўскага акна. "
+#~ "Для гэтага патрабуецца праігнараваць каардынаты дыялёгавых вокнаў, якія "
+#~ "вызначаны ў дастасаваньні. Але пэўныя вэрсыі Java/Swing пазначаюць свае "
+#~ "мэню як дыялёгавыя вокны, таму Marco прыходзіцца адключаць функцыі "
+#~ "разьмяшчэньня дыялёгавых вокнаў, каб гэтыя мэню маглі працаваць у "
+#~ "нестандартных дастасаваньнях Java. Ёсьць яшчэ некалькі падобных "
+#~ "прыкладаў. Гэты парамэтар пераключае Marco у рэжым поўнае прытрымкі "
+#~ "стандарта, што робіць інтэрфэйс крыху больш прывабным, калі не "
+#~ "выкарыстоўваюцца нестандартные дастасаваньні. Шкада, але ўсё роўна "
+#~ "прыйдзецца ліквідаваць недаробкі, так ужо зладжаны наш сьвет... Пеўныя "
+#~ "хібы зьвязаныя з абмежаванасьцю саміх спэцыфікацыяў, таму часам нельга "
+#~ "ліквідаваць памылку, не зьмяніўшы спэцыфікацыі."
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Буфэр аналізатара выразу каардынаты перапоўнены, гэта памылка "
+#~ "дастасаваньня Marco, але нашто Вам гэткі вялікі выраз?"
+
diff --git a/po/[email protected] b/po/[email protected]
new file mode 100644
index 00000000..e9efb35d
--- /dev/null
+++ b/po/[email protected]
@@ -0,0 +1,3877 @@
+# Biełaruski pierakład marco.mate.
+# Copyright (C) 2007 THE marco.mate'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the marco.mate package.
+# Alaksandar Navicki <[email protected]>, 2007. Łacinka.org
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: atk.HEAD\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-02-14 12:44+0200\n"
+"PO-Revision-Date: 2009-02-14 13:16+0200\n"
+"Last-Translator: Ihar Hrachyshka <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Belarusian latin\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
+"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Stoł"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Kiravańnie voknami "
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Zapyt źviestak ab nieviadomym aknie: %d"
+
+#: ../src/core/delete.c:104
+#, c-format
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+"<big><b><tt>%s</tt> nie adkazvaje na zapyty.</b></big>\n"
+"\n"
+"<i>Možna pačakać troški daŭžej albo prymusić zusim zakončyć aplikacyju.</i>"
+
+#: ../src/core/delete.c:115 ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr "_Čakaj"
+
+#: ../src/core/delete.c:115 ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "_Zakonč"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Nielha atrymać nazvu kamputara: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Nie staje pašyreńnia %s, vymahanaha dziela kampazycyi"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Niemahčyma adčynić spałučeńnie z ekranam \"%s\" systemy X Window\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Stračanaje spałučeńnie z ekranam \"%s\".\n"
+"Vierahodna, pierastaŭ funkcyjanavać server X, albo dzejańnie kiraŭnika "
+"voknaŭ pierapynienaje.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Surjoznaja pamyłka ŭvachodu/vychadu %d (%s) na ekranie \"%s\".\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "Skarot z klavišaj %s i madyfikatarami %x užo ŭžyvaje inšaja prahrama\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Pry vykanańni <tt>%s</tt> adbyłasia pamyłka:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Zahad %d nie akreśleny.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Zahad terminału nie akreśleny.\n"
+
+#: ../src/core/main.c:130
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Aŭtarskija pravy (C) 2001-%s Havoc Pennington, Red Hat, Inc. dy inšyja\n"
+"Heta volnaja prahrama; kab paznajomicca z umovami, pry jakich dapuščalna "
+"jaje kapijavać, zazirni ŭ jaje krynicy.\n"
+"Na prahramu nie dajuć NIJAKAJ HARANTYI, navat harantyi HANDLOVAJ PRYDATNAŚCI "
+"albo PRYDATNAŚCI DLA AKREŚLENYCH METAŬ.\n"
+
+#: ../src/core/main.c:267
+msgid "Disable connection to session manager"
+msgstr "Uklučaje spałučeńnie z kiraŭnikom sesijaŭ"
+
+#: ../src/core/main.c:273
+msgid "Replace the running window manager with Marco"
+msgstr "Zamianiaje ŭruchomlenaha kiraŭnika voknaŭ na Marco"
+
+#: ../src/core/main.c:279
+msgid "Specify session management ID"
+msgstr "Akreślivaje ID haspadarańnia sesijami"
+
+# #FIXME Słova "display" -- nie samameta, ale lepšaj versii nie pryniali. Varyjanty byli: dyspłej, dysplej. Nivodaje nie spadabałasia.
+#: ../src/core/main.c:284
+msgid "X Display to use"
+msgstr "Užyvany dysplej X"
+
+#: ../src/core/main.c:290
+msgid "Initialize session from savefile"
+msgstr "Inicyjavańnie sesii z zapisanaha fajłu"
+
+#: ../src/core/main.c:296
+msgid "Print version"
+msgstr "Pakazvaje versiju"
+
+#: ../src/core/main.c:302
+msgid "Make X calls synchronous"
+msgstr "Synchranizuj vykliki X"
+
+#: ../src/core/main.c:308
+msgid "Turn compositing on"
+msgstr "Uklučy kampazycyju"
+
+#: ../src/core/main.c:314
+msgid "Turn compositing off"
+msgstr "Vyklučy kampazycyju"
+
+#: ../src/core/main.c:536
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Niemahčyma prahledzieć kataloh z matyvami: %s\n"
+
+#: ../src/core/main.c:552
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Niemahčyma znajści nivodnaha z matyvaŭ. Spraŭdź, kali łaska, ci isnuje "
+"kataloh %s i ci jość u im standartnyja matyvy.\n"
+
+#: ../src/core/main.c:608
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Restart nie ŭdaŭsia: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:505 ../src/core/prefs.c:660
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Kluču MateConfa \"%s\" prypisanaja niapravilnaja vartaść\n"
+
+#: ../src/core/prefs.c:586 ../src/core/prefs.c:829
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"Vartaść %d, zapisanaja ŭ klučy MateConf %s, pa-za dyjapazonam ad %d da %d\n"
+
+#: ../src/core/prefs.c:630 ../src/core/prefs.c:707 ../src/core/prefs.c:755
+#: ../src/core/prefs.c:819 ../src/core/prefs.c:1112 ../src/core/prefs.c:1128
+#: ../src/core/prefs.c:1145 ../src/core/prefs.c:1161
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Kluč MateConf \"%s\" nieadpaviednaha typu\n"
+
+#: ../src/core/prefs.c:1231
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Abychody dla papsavanych aplikacyjaŭ nieaktyŭnyja. Tamu niekatoryja ź ich "
+"mohuć pavodzić siabie nieadpaviedna.\n"
+
+#: ../src/core/prefs.c:1302
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Niemahčyma razabrać apisańnie \"%s\", paviazanaje z klučom MateConfa %s\n"
+
+#: ../src/core/prefs.c:1364
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Vartaść \"%s\", znojdzienaja ŭ bazie źviestak kanfihuracyi, nie apisvaje "
+"pravilna madyfikatara knopki myšy\n"
+
+#: ../src/core/prefs.c:1782
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+"Padčas vyznačeńnia kolkaści rabočych abšaraŭ na %d adbyłasia pamyłka: %s\n"
+
+#: ../src/core/prefs.c:1971 ../src/core/prefs.c:2474
+#, c-format
+msgid "Workspace %d"
+msgstr "Rabočy abšar %d"
+
+#: ../src/core/prefs.c:2001 ../src/core/prefs.c:2179
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Vartaść \"%s\", znojdzienaja ŭ bazie źviestak kanfihuracyi, nie apisvaje "
+"pravilna klavišny skarot \"%s\"\n"
+
+#: ../src/core/prefs.c:2555
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Pamyłka pry vyznačeńni rabočaha abšaru %d na \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2753
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Pamyłka pry aznačeńni stanu kampazytara: %s\n"
+
+#: ../src/core/screen.c:350
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Padekran %d ekranu \"%s\" niapravilny\n"
+
+#: ../src/core/screen.c:366
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Na padekranie %d ekranu \"%s\" užo pracuje kiraŭnik voknaŭ. Kab zamianić "
+"dziejnaha kiraŭnika voknaŭ, pasprabuj skarystać opcyju --replace.\n"
+
+#: ../src/core/screen.c:393
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Niemahčyma atrymać zaznačeńnie kiraŭnika voknaŭ na padekranie %d ekranu \"%s"
+"\"\n"
+
+#: ../src/core/screen.c:451
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Na padekranie %d ekranu \"%s\" užo dziejničaje kiraŭnik voknaŭ\n"
+
+#: ../src/core/screen.c:661
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Nielha zvolnić padekran %d ekranu \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Farmat kštałtu \"<Control>a\" ci \"<Shift><Alt>F1\".\n"
+"\n"
+"Syntaksičny analiz nia nadta žorstki – "
+"heta dazvalaje ŭžyvać małyja j vialikija litary, a taksama skaroty kštałtu "
+"\"<Ctl>\" i \"<Ctrl>\". Kali naładzie budzie prypisanaja "
+"admysłovaja vartaść \"disabled\", tady ź dziejańniem nia "
+"budzie źviazany nivodzin klavišny skarot."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Farmat kštałtu \"<Control>a\" ci \"<Shift><Alt>F1\".\n"
+"\n"
+"Syntaksičny analiz nia nadta žorstki – "
+"heta dazvalaje ŭžyvać małyja j vialikija litary, a taksama skaroty kštałtu "
+"\"<Ctl>\" i \"<Ctrl>\". Kali naładzie budzie prypisanaja "
+"admysłovaja vartaść \"disabled\", tady ź dziejańniem nia "
+"budzie źviazany nivodzin klavišny skarot.\n"
+"\n"
+"Hety skarot možna zrabić advarotnym, zacisnuŭšy klavišu \"Shift\". Tamu "
+"klavišu \"Shift\" nielha vykarystać u aznačeńni skarota."
+
+#: ../src/core/session.c:845 ../src/core/session.c:852
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Niemahčyma stvaryć kataloh \"%s\": %s\n"
+
+#: ../src/core/session.c:862
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Niemahčyma adčynić fajł sesii \"%s\" dziela zapisu: %s\n"
+
+#: ../src/core/session.c:1003
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Pamyłka pry zapisie ŭ fajł sesii \"%s\": %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Pamyłka pry začynieńni fajłu sesii \"%s\": %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1101
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Niemahčyma adčytać zapisany fajł sesii \"%s\": %s\n"
+
+#: ../src/core/session.c:1140
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Niemahčyma razabrać zapisany fajł sesii: %s\n"
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "Znojdzieny atrybut <marco_session>, kali ID sesii byŭ užo akreśleny"
+
+#: ../src/core/session.c:1202 ../src/core/session.c:1277
+#: ../src/core/session.c:1309 ../src/core/session.c:1381
+#: ../src/core/session.c:1441
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Nieviadomy atrybut %s unutroch elementu <%s>"
+
+# #FIXME nia ŭpeŭnieny ŭ terminie
+#: ../src/core/session.c:1219
+#, c-format
+msgid "nested <window> tag"
+msgstr "zahnieždžany značnik <window>"
+
+#: ../src/core/session.c:1461
+#, c-format
+msgid "Unknown element %s"
+msgstr "Nieviadomy element %s"
+
+#: ../src/core/session.c:1887
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Pry ŭklučeńni marco-dialog (z aściarohaj na temu aplikacyi biez absłuhi "
+"sesijaŭ) adbyłasia pamyłka: %s\n"
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Niemahčyma adčynić historyju z zapisam vykanańnia: %s\n"
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Niemahčyma vykanać fdopen() na fajle historyi %s: %s\n"
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Adčynieny fajł historyi %s\n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+"Prahrama Marco skampilavanaja biez absłuhoŭvańnia režymu z pašyranaj "
+"infarmacyjaj\n"
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "Kiraŭnik voknaŭ: "
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr "Pamyłka ŭ prahramie kiraŭnika voknaŭ: "
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr "Aściaroha kiraŭnika voknaŭ: "
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr "Pamyłka kiraŭnika voknaŭ: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:581 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5627
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Vakno %s abiraje na sabie SM_CLIENT_ID, a nie na vaknie WM_CLIENT_LEADER, "
+"zhodna sa specyfikacyjaj ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6192
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Vakno %s abiraje atrybut MWM, jaki akreślivaje, što jahony pamier vakna "
+"niaźmienny, ale adnačasova abiraje minimalny pamier na %d x %d, a maksymalny "
+"pamier na %d x %d. Heta nia maje nijakaha sensu.\n"
+
+#: ../src/core/window-props.c:260
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Aplikacyja abrała pamyłkovuju vartaść _NET_WM_PID %lu\n"
+
+#: ../src/core/window-props.c:377
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (na %s)"
+
+#: ../src/core/window-props.c:1358
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+"Niapravilnaja vartaść WM_TRANSIENT_FOR dla vakna 0x%lx akreślenaja ŭ %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Vakno 0x%lx maje ŭłaścivaść %s,\n"
+"čakanym typam jakoj žjaŭlajecca %s z farmatam %d.\n"
+"U sapraŭdnaści ŭłaścivaść maje typ %s z farmatam %d pry n_items %d.\n"
+"Vierahodna, heta pamyłka aplikacyi, a nie kiraŭnika voknaŭ.\n"
+"Ułaścivaści vakna: zahałovak=\"%s\" klasa=\"%s\" nazva=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+"Ułaścivaść %s, jakaja adnosicca da vakna 0x%lx, maje niapravilny łancužok "
+"UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Ułaścivaść %s, jakaja adnosicca da vakna 0x%lx, maje niapravilny łancužok "
+"UTF-8 u %d elemencie śpisu\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Pieraklučeńnie na 1-šy rabočy abšar"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Pieraklučeńnie na 2-hi rabočy abšar"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Pieraklučeńnie na 3-ci rabočy abšar"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Pieraklučeńnie na 4-ty rabočy abšar"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Pieraklučeńnie na 5-ty rabočy abšar"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Pieraklučeńnie na 6-ty rabočy abšar"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Pieraklučeńnie na 7-my rabočy abšar"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Pieraklučeńnie na 8-my rabočy abšar"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Pieraklučeńnie na 9-ty rabočy abšar"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Pieraklučeńnie na 10-ty rabočy abšar"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Pieraklučeńnie na 11-ty rabočy abšar"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Pieraklučeńnie na 12-ty rabočy abšar"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Pieraklučy na laviejšy rabočy abšar"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Pierakly na praviejšy rabočy abšar"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Pierakly na vyšejšy rabočy abšar"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Pieraklučy na nižejšy rabočy abšar"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Pieraklučaj pamiž voknami aplikacyi z vykarystańniem vypłyŭnoha akna"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Pieraklučaj nazad pamiž voknami aplikacyi z vykarystańniem vypłyŭnoha akna"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Pieraklučaj pamiž voknami z vykarystańniem vypłyŭnoha akna"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Pieraklučaj nazad nazad pamiž voknami z vykarystańniem vypłyŭnoha akna"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Pieraklučaj pamiž panelami j stałom z vykarystańniem vypłyŭnoha akna"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Pieraklučaj nazad pamiž panelami j stałom z vykarystańniem vypłyŭnoha akna"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Nieadkładna pieraklučaj pamiž voknami aplikacyi"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Nieadkładna pieraklučaj nazad pamiž voknami aplikacyi"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Nieadkładna pieraklučaj pamiž voknami"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Nieadkładna pieraklučaj nazad pamiž voknami"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Nieadkładna pieraklučaj pamiž panelami j stałom"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Nieadkładna pieraklučaj nazad pamiž panelami j stałom"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Schavaj usie zvyčajnyja vokny j pieradaj fokus na stoł"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Pakažy hałoŭnaje menu paneli"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Pakažy dyjaloh uruchamleńnia aplikacyi dla paneli"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Zrabi zdymak ekranu"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Zrabi zdymak vakna"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Uruchom terminał"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Aktyvizuj menu akna"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Pieraklučy poŭnaekranny režym"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Pieraklučy režym maksymalizacyi"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Pieraklučy ŭźniataść akna nad astatnimi voknami"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maksymalizuj akno"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Uznavi akno"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Pieraklučy režym zhornutaści ŭ zahałovak"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimalizuj akno"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Začyni akno"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Pieraniasi akno"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Źmiani pamiery akna"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Źmiani prysutnaść akna na ŭsich rabočych abšarach ci na adnym"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Pieraniasi akno na rabočy abšar 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Pieraniasi akno na rabočy abšar 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Pieraniasi akno na rabočy abšar 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Pieraniasi akno na rabočy abšar 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Pieraniasi akno na rabočy abšar 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Pieraniasi akno na rabočy abšar 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Pieraniasi akno na rabočy abšar 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Pieraniasi akno na rabočy abšar 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Pieraniasi akno na rabočy abšar 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Pieraniasi akno na rabočy abšar 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Pieraniasi akno na rabočy abšar 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Pieraniasi akno na rabočy abšar 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Pieraniasi akno na laviejšy rabočy abšar"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Pieraniasi akno na praviejšy rabočy abšar"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Pieraniasi akno na vyšejšy rabočy abšar"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Pieraniasi akno na nižejšy rabočy abšar"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Vysuń akno, kali jano zasłonienaje inšym, u advarotnym vypadku adsuń jaho "
+"nazad"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Vysoŭvańnie vakna pierad astatnimi"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Pieraniasieńnie vakna pad astatnija"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Vertykalnaja maksymalizacyja vakna"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Haryzantalnaja maksymalizacyja vakna"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Pieraniasi akno na paŭnočna-zachodni roh ekranu"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Pieraniasi akno na paŭnočna-ŭschodni roh ekranu"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Pieraniasi akno na paŭdniova-zachodni roh ekranu"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Pieraniasi akno na paŭdniova-ŭschodni roh ekranu"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Pieraniasi akno na paŭnočny bok ekranu"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Pieraniasi akno na paŭdniovy bok ekranu"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Pieraniasi akno na ŭschodni bok ekranu"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Pieraniasi akno na zachodni bok ekranu"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Pieraniasi akno na siaredzinu ekranu"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Nie zaimplementavanaje) Aperacyi navihacyi pa aplikacyjach, a nie pa voknach"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Apisańnie šryftu, užyvanaha na zahałovačnych panelach voknaŭ. Pamier z "
+"hetaha apisańnia budzie vykarystany, tolki kali opcyja \"titlebar_font_size"
+"\" maje vartaść 0. Hetaja opcyja vyklučanaja, kali opcyja "
+"\"titlebar_uses_desktop_font\" maje vartaść PRAŬDA. "
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Aperacyja pry padvojnym kliku zahałovačnaj paneli"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Aperacyja pry kliku centralnaj knopkaj pa zahałovačnaj paneli"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Aperacyja pry pravym kliku zahałovačnaj paneli"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Raźmiaščeńnie knopak na zahałovačnaj paneli"
+
+#: ../src/marco.schemas.in.in.h:7
+#, fuzzy
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Raźmiaščeńnie knopak na zahałovačnaj paneli. Vartaść pavinna być tekstam "
+"kštałtu \"menu:minimize,maximize,close\". Dvukropje padzialaje levy roh "
+"vakna ad pravaha, a nazvy knopak padzielenyja koskami. Nie dazvalajecca "
+"šmatrazovaje pajaŭleńnie knopki. Nieviadomyja nazvy knopak ihnarujucca, tamu "
+"ŭ budučych versijach prahramy mohuć być dadadzienyja novyja knopki biez "
+"stvareńnia niazhodnaśći."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Aŭtamatyčnaje vysoŭvańnie voknaŭ, jakija źbirajuć fokus"
+
+#: ../src/marco.schemas.in.in.h:9
+#, fuzzy
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+"Klik u vakno i prytrymańnie hetaha madyfikatara pierasunie vakno (levaja "
+"knopka), źmienić jahony pamier (centralnaja knopka) albo pakaža menu vakna "
+"(pravaja knopka). Prykładny zapis madyfikatara vyhladaje jak \"&lt;Alt&gt;\" "
+"albo \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Zahady, uklučanyja ŭ adkaz na ŭžyćcio klavišnych skarotaŭ"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Kiraŭnik kampazycyjaŭ"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Akreślivaje, jak fokus pieradajecca novym voknam"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Dziejny matyŭ"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+"Spaźnieńnie ŭ milisekundach, užyvanaje opcyjaj aŭtamatyčnaha vydaleńnia"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Akreślivaje, ci Marco maje być kiraŭnikom kampazycyjaŭ."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Akreślivaje, ci aplikacyi albo systema mohuć hieneravać čutnyja hukavyja "
+"syhnały; opcyju možna ŭžyvać razam z opcyjaj \"bačnyja hukavyja syhnały\", "
+"jakaja dapuščaje cichija \"zvanočki\"."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Uklučaje ŭłasnaści, vymahanyja starymi i nieadpaviedna zaimplementavymi "
+"aplikacyjami."
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Uklučaje vizualnyja hukavyja syhnały"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Kali hetaja ŭłaścivaść abranaja i sposab pieraklučeńnia fokusu abrali jak "
+"\"sloppy\" albo \"mouse\" (anh. myš), vakno z fokusam budzie aŭtamatyčna "
+"vydalacca paśla spaźnieńnia, akreślenaha klučom \"auto_raise_delay\". Heta "
+"nie datyčyć klikańnia ŭ vakno z metaj razhortvańnia ci z pierachodam na "
+"vakno padčas pierasoŭvańia."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Abrańnie opcyi vyklikaje ihnaravańnie opcyi \"titlebar_font\" i ŭžyvańnie "
+"zamiest hetaha standartnaha systemnaha šryftu na zahałovačnych panelach."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Pry abrańni hetaj opcyi, kiraŭnik Marco abmiažoŭvaje zvarotnuju suviaź "
+"karystalnika i adčuvańnie im \"niepasrednaj manipulacyi\", pry vykarystańni "
+"ramak padčas źmieny pamieru voknaŭ, vyklučeńnia animacyi itp. Mnohija "
+"karystalniki mohuć adčuć heta jak značnaje źmianšeńnie funkcyjanalnaści, ale "
+"starejšym aplikacyjam i terminałam heta moža dazvolić narmalna pracavać. Nie "
+"zvažajučy na heta, ramki źmieny pamieraŭ voknaŭ buduć vyklučanyja, kali "
+"vyklučanyja buduć technalohii padtrymki."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Abrańnie hetaj opcyi prymušaje kiraŭnika Marco pracavać u katehoryjach "
+"aplikacyjaŭ, a nia voknaŭ. Heta krychu abstraktny paniatak, ale naohuł "
+"nałady, abapiertyja na aplikacyjach nahadvajuć chutčej dziejańnie systemy "
+"Mac OS, čym Windows. Kali kiraŭnik pracuje ŭ režymie aplikacyi, paśla "
+"zasiarodžańnia ŭvahi na vaknie, usie vokny dadzienaj aplikacyi buduć "
+"vysunutyja. U režymie aplikacyi kliki, jakija pieraklučajuć fokus, nie "
+"pieradajucca voknam inšych aplikacyjaŭ. Režym aplikacyi na siońnia ŭ značnaj "
+"miery niezaimplementavany."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Kali abrana, źmianšaje užyćcio resursaŭ koštam funkcyjanalnaści"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Madyfikatar, užyvany dziela vykonvańnia aperacyi pry dapamozie kliku vakna"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nazva rabočaha abšaru"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Kolkaść rabočych abšaraŭ"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Kolkaść rabočych abšaraŭ. Musić być bolšaj za nul, i maje zafiksavany "
+"maksymum, kab papiaredzić vypadkovy zator asiarodździa ad praźmierna "
+"vialikaj kolkaści rabočych abšaraŭ."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Uruchamleńnie aznačanaha zahadu"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Niekatoryja aplikacyi nie prytrymlivajucca specyfikacyi, i kiraŭnik voknaŭ "
+"moža pavodzić siabie niapravilna. Hetaja opcyja pierastaŭlaje Marco ŭ "
+"pravilny režym, u jakim interfejs karystalnika bolš dahledžany, kali nie "
+"ŭklučać aplikacyjaŭ, jakija parušajuć specyfikacyju."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Systemny zvanok čutny"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Opcyja kaža Marco, jakim čynam treba vizualna zrealizavać rekamendacyju, "
+"što systemny zvanočak albo inšaja aplikacyja, jakaja jaho ŭžyvaje, vydała "
+"huk. Dziejna absłuhoŭvajucca dźvie vartaści \"fullscreen\", jakaja dazvalaje "
+"mirhnuć cełym ekranam, i \"frame_flash\", jakaja prymušaje tytulnuju panel "
+"mirhnuć padčas zvanočka. Kali aplikacyja, jakaja vysłała hukavy syhnał, "
+"nieviadomaja (jak heta zvyčajna adbyvajecca pry zmoŭčanym \"systemnym "
+"znanočku\") mirhaje tytulnaja panel vakna, na jakim znachodzicca fokus."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Klučy /apps/marco/global_keybindings/run_command_N akreślivajuć "
+"klavišnyja skaroty, jakija adpaviadajuć hetym zahadam. Užyćcio skarotu, "
+"zapisanaha ŭ run_command_N pryčynicca da vykanańnia zahadu, zapisanaha ŭ "
+"command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Kluč /apps/marco/global_keybindings/run_command_screenshot akreślivaje "
+"klavišny skarot, jaki vyklikaje zahad, akreśleny hetaj naładaj."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Kluč /apps/marco/global_keybindings/run_command_window_screenshot "
+"akreślivaje klavišny skarot, jaki vyklikaje zahady, akreślenyja hetaj "
+"naładaj."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Klavišny skarot, jaki vykonvaje zahad z adpaviednym numaram, uziaty z nałady "
+"kluča /apps/marco/keybinding_commands. Skarot maje vyhlad kštałtu \"&lt;"
+"Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia "
+"nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ "
+"skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie "
+"budzie prypisanaja admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady "
+"ź dziejańniem nia budzie źviazany nivodzin klavišny skarot."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Nazva rabočaha abšaru."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Zahad zrabić zdymak ekranu"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Matyŭ akreślivaje vyhlad krajoŭ voknaŭ, zahałovačnych panelaŭ i h.d."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Spaźnieńnie pa časie pierad razhortvańniem vakna, kali opcyja aŭtamatyčnaha "
+"razhortvańnia (auto_rise) abranaja. Spaźnieńnie padajuć u tysiačnych "
+"častkach sekundy."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Sposab pieradačy fokusu akreślivaje, jakim čynam aktyvujucca vokny. Hetaja "
+"opcyja moža pryjmać try vartaści; \"click\" (anh. klik) aznačaje, što ŭ "
+"vakno treba kliknuć, kab pieradać na jaho fokus, \"sloppy\" aznačaje, što "
+"fokus piarojdzie na vakno, kali na jahony abšar budzie pierasunuty kursor "
+"myšy, a \"mouse\" (anh. myš) aznačaje, što vakno atrymaje fokus, kali kursor "
+"myšy budzie pierasunuty na jahony abšar, i kali hety abšar pakinuć, fokus "
+"źniknie."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Zahad zrabić zdymak vakna"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Hetaja opcyja akreślivaje vynik padvojnaha kliku ŭ zahałoŭnuju panel akna. "
+"Dziejna pravilnyja opcyi takija: \"toggle_shade\" (zhortvaje/razhortvaje "
+"akno), \"toggle_maximize\" (maksymalizuje/viartaje pamier akna), "
+"\"toggle_maximize_horizontallu\" i \"toggle_maximize_vertically\" "
+"(zhortvaje/razhortvaje akno ŭ adnym kirunku), \"minimize\" (minimalizuje "
+"akno), \"shade\" (zhortvaje akno ŭ zahałovak), \"menu\" (pakazvaje menu "
+"akna), \"lower\" (źmiaščaje akno pad inšymi voknami), a taksama \"none\" "
+"(ničoha nia robić)."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Hetaja opcyja akreślivaje vynik kliku centralnaj knopkaj u zahałoŭnuju panel "
+"akna. "
+"Dziejna pravilnyja opcyi takija: \"toggle_shade\" (zhortvaje/razhortvaje "
+"akno), \"toggle_maximize\" (maksymalizuje/viartaje pamier akna), "
+"\"toggle_maximize_horizontallu\" i \"toggle_maximize_vertically\" "
+"(zhortvaje/razhortvaje akno ŭ adnym kirunku), \"minimize\" (minimalizuje "
+"akno), \"shade\" (zhortvaje akno ŭ zahałovak), \"menu\" (pakazvaje menu "
+"akna), \"lower\" (źmiaščaje akno pad inšymi voknami), a taksama \"none\" "
+"(ničoha nia robić)."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Hetaja opcyja akreślivaje vynik pravaha kliku ŭ zahałoŭnuju panel akna. "
+"Dziejna pravilnyja opcyi takija: \"toggle_shade\" (zhortvaje/razhortvaje "
+"akno), \"toggle_maximize\" (maksymalizuje/viartaje pamier akna), "
+"\"toggle_maximize_horizontallu\" i \"toggle_maximize_vertically\" "
+"(zhortvaje/razhortvaje akno ŭ adnym kirunku), \"minimize\" (minimalizuje "
+"akno), \"shade\" (zhortvaje akno ŭ zahałovak), \"menu\" (pakazvaje menu "
+"akna), \"lower\" (źmiaščaje akno pad inšymi voknami), a taksama \"none\" "
+"(ničoha nia robić)."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Hetaja opcyja daje dadatkovyja mahčymaści kanfihuracyi sposabu, pry "
+"dapamozie jakoha novastvoranyja vokny hrupujucca. Dastupnyja dźvie vartaści: "
+"\"smart\" – typowy režym pieradačy fokusu pavodle naładaŭ karystalnika, i "
+"\"strict\" – voknam, adčynienym z uzroŭniu terminału, fokus nie pieradajecca."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Hetaja opcyja ŭklučaje bačnuju indykacyju, kali aplikacyja albo systema "
+"vyklikaje \"zvanočak\" albo \"pik\"; jana prydatnaja ŭ šumnych "
+"asiarodździach, albo taksama kali \"čutnyja hukavyja syhnały\" vyklučanyja."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr ""
+"Vykarystańnie ŭ zahałovačnych panelach voknaŭ standartnaha systemnaha šryftu"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Typ vizualnaha hukavoha syhnału"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Akreślivaje, ci pieranos vakna pavinien być pabočnym nastupstvam inšych "
+"dziejańniaŭ"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Ci źmianiać pamiery pa pravym kliku"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Režym fokusu vakna"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Šryft zahałoŭku vakna"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Užyćcio: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Začyni vakno"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menu vakna"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimalizuje vakno"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maksymalizuje vakno"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Uznavi akno"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Zharni vakno"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Razharni vakno"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Trymaj vakno naviersie"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Pierasuń vakno źvierchu"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Zaŭždy na bačnym rabočym abšary"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Raźmiaści vakno tolki na adnym rabočym abšary"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "M_inimalizuj"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "M_aksymalizuj"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Viarni m_aksymalizavanaje"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Zharni"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Ra_zharni"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Pier_asuń"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Źmiani _pamier"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Piera_nos tytulnaj paneli na ekranie"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Zaŭždy na_viersie"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Zaŭždy na bačnym rabočym abšary"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Tolki na hetym rabočym abšary"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Pieraniasi na _levy rabočy abšar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Pieran_iasi na pravy rabočy abšar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Pieraniasi na _vierchni rabočy abšar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Pieraniasi na _nižni rabočy abšar"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "Za_čyni"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Rabočy abšar %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Rabočy abšar 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Rabočy abšar %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Pieranos na inšy _rabočy abšar"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/ui/marco-dialog.c:50 ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Nielha razabrać \"%s\" u jakaści cełaj ličby (int)"
+
+#: ../src/ui/marco-dialog.c:57 ../src/ui/theme-parser.c:531
+#: ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Nielha raspaznać kancavych znakaŭ \"%s\" u radku \"%s\""
+
+#: ../src/ui/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr "Vakno \"%s\" nie adkazvaje."
+
+#: ../src/ui/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "Možna pačakać troški daŭžej, albo prymusić zusim zakončyć aplikacyju."
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr "Zahałovak"
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr "Klasa"
+
+#: ../src/ui/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Hetyja vokny nie absłuhoŭvajuć opcyi zapisu dziejnaha stanu (\"save current "
+"setup\"), tamu pry nastupnaj aŭtaryzacyi treba ich budzie ŭklučyć uručnuju."
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Pry vykanańni \"%s\" adbyłasia pamyłka:\n"
+"%s."
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "vierch"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "niz"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "levy"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "pravy"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "Pamier ramki nie akreślivaje pamieru \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "Pamier ramki nie akreślivaje pamieru \"%s\" dla kraju \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Kaeficyjent praporcyjaŭ knopki %g nie źmiaščajecca ŭ rezonnych miežach"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Pamier ramki nie akreślivaje ličby knopak"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Hradyjenty pavinny składacca prynamsi z dvuch koleraŭ"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specyfikacyja koleru GTK musić miec u sabie stan u kvadratnych dužkach, "
+"napr. gtk:fg[NORMAL], dzie NORMAL źjaŭlajecca nazvaj stanu; niemahčyma "
+"praanalizavać \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specyfikacyja koleru GTK musić paśla nazvy stanu mieć u sabie kvadratnuju "
+"dužku, napr. gtk:fg[NORMAL], dzie NORMAL heta nazva stanu; niemahčyma "
+"praanalizavać \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Niezrazumieły stan \"%s\" u specyfikacyi koleru"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Niezrazumiełaje aznačeńnie koleru \"%s\" ŭ specyfikacyi"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Farmatam pranikańnia źjaŭlajecca \"blend/bg_color/fg_color/alpha\", \"%s\" "
+"nie pasuje da farmatu"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Niemahčyma razabrać vartaść alfa \"%s\" koleru pranikańnia"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+"Vartaść alfa \"%s\" koleru pranikańnia nie źmiaščajecca pamiž 0,0 i 1,0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Farmatam pranikańnia źjaŭlajecca \"shade/base_color/factor\", \"%s\" nie "
+"pasuje da farmatu"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Niemahčyma razabrać kaeficyjent pranikańnia \"%s\" koleru pranikańnia"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Kaeficyjent pranikańnia \"%s\" koleru pranikańnia admoŭny"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Niemahčyma razabrać koler \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+"Vyraz, jaki akreślivaje kaardynaty, maje ŭ sabie niedazvoleny znak '%s'"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Vyraz, jaki akreślivaje kaardynaty, maje nierazborlivy numar niefiksavanaj "
+"koski '%s'"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Vyraz, jaki akreślivaje kaardynaty, maje nierazborlivuju cełuju ličbu '%s'"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Vyraz, jaki akreślivaje kaardynaty, maje nieviadomy aperatar na pačatku "
+"tekstu: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Vyraz, jaki akreślivaje kaardynaty, pusty albo niezrazumieły"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Vyraz, jaki akreślivaje kaardynaty, maje dzialeńnie praz nul"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Vyraz, jaki akreślivaje kaardynaty, užyvaje aperatara dzialeńnia pa moduli z "
+"arhumentam niefiksavanaj koski"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Vyraz maje aperatar \"%s\" u miescy, dzie čakali arhumentu"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"Vyraz, jaki apisvaje pałažeńnie, maje arhument u miescy, dzie čakali "
+"aperatara"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"Vyraz, jaki apisvaje pałažeńnie, zakančvajecca aperataram zamiest arhumentu"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Vyraz, jaki apisvaje pałažeńnie, maje arhument \"%c\" adrazu paśla arhumentu "
+"\"%c\" biez aperatara pamiž imi"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Vyraz, jaki apisvaje pałažeńnie, maje nieviadomuju źmiennuju albo stałuju \"%"
+"s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+"Parser vyrazaŭ, jakija akreślivajuć kaardynaty, pierapoŭniŭ svoj bufer."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Vyraz, jaki apisvaje pałažeńnie, začyniaje dužka biez adpaviednaj dužki na "
+"pačatku"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Vyraz, jaki apisvaje pałažeńnie, adčyniaje dužka biez adpaviednaj dužki na "
+"kancy"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"Vyraz, jaki apisvaje pałažeńnie, nia maje ani aperataraŭ, ani arhumentaŭ"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Matyŭ źmiaščaŭ vyraz, jaki staŭ pryčynaj pamyłki: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Pry hetym styli ramki treba padać <button function=\"%s\" state=\"%s\" "
+"draw_ops=\"niešta\"/>"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Niama <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"niešta\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Niemahčyma adčytać matyŭ \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nie akreśleny element <%s> dla matyvu \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Pry typie vakna \"%s\" u matyvie \"%s\" nia vyznačany styl ramki. Dadaj "
+"element <window type=\"%s\" style_set=\"niešta\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Stałyja, aznačanyja karystalnikam, pavinny pačynacca vialikaj litaraj, a \"%s"
+"\" nie vykonvaje hetaj umovy"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Stałaja \"%s\" užo aznačanaja"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Niama atrybutu \"%s\" unutroch elementu <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Radok %d, znak %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atrybut \"%s\" pajaviŭsia dvojčy ŭnutry adnaho elementu <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atrybut \"%s\" niapravilny ŭnutry elementu <%s> ŭ dadzienym kantekście"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Cełaja ličba %ld musić być dadatnaj"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Cełaja ličba %ld zavialikaja, ciapier maksymum składaje %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Zapis \"%s\" nie źjaŭlajecca zapisam niefiksavanaj koski"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Lahičnymi vartaściami źjaŭlajucca \"true\" i \"false\", a nie \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Vartaść kuta musić źmiaščacca pamiž 0,0 i 360,0, adčytanaja %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Vartaść alfa musić źmiaščacca pamiž 0,0 (niabačnaje) i 1,0 (całkam "
+"prazrystaje), adčytanaja %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Nieadpaviedny pamier zahałoŭka \"%s\" (jon musić być adnoj z vartaściaŭ: xx-"
+"small, x-small, small, medium, large, x-large, xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s>: užytaja nazva \"%s\" druhi raz"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s>: nie akreśleny element-baćka z nazvaj \"%s\""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s>: nie akreślenaja hieametryja z nazvaj \"%s\""
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> musić albo akreślivać hieametryju, albo element-baćku z hieametryjaj"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Kab vartaść alfa mieła sens, treba akreślić fon"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Nieviadomy typ \"%s\" unutry elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Nieviadommaja vartaść atrybutu \"style_set\" (%s) unutry elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Z typam vakna \"%s\" užo paviazany nabor stylaŭ"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> niedapuščalny nižej za <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Nielha adnačasova akreślivać dla knopki klučy "
+"\"button_width\"/\"button_height\" i \"aspect_ratio\""
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Adlehłaść \"%s\" nieviadomaja"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Kaeficyjent praporcyjaŭ \"%s\" nieviadomy"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Kraj \"%s\" nieviadomy"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Niama atrybutu \"start_angle\" unutry elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Niama atrybutu \"extent_angle\" unutry elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Niezrazumiełaja vartaść \"%s\" typu hradyjentu"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Niezrazumieły typ zapaŭnieńnia \"%s\" elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Niezrazumieły stan \"%s\" (atrybut state) elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Niezrazumieły cień \"%s\" (atrybut shadow) elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Niezrazumiełaja strełka \"%s\" (atrybut arrow) elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nie akreśleny element <draw_ops> z nazvaj \"%s\""
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+"Uklučeńnie tut elementu draw_ops z nazvaj \"%s\" stvaryła b zapiatleńnie "
+"spasyłki"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Nieviadomaje pałažeńnie \"%s\" elementu ramki"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Styl ramki ŭžo maje element z pałažeńniem %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nie akreśleny element <draw_ops> z nazvaj \"%s\""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Nieviadomaja funkcyja \"%s\" źviazanaja z knopkaj"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Funkcyja \"%s\" knopki nie isnuje ŭ hetaj versii (%d, vymahaje %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Nieviadomy stan \"%s\" źviazany z knopkaj"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+"Dla stylu ramki ŭžo akreślenaja knopka, źviazanaja z funkcyjaj %s i stanam %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" nie źjaŭlajecca pravilnaj vartaściu atrybutu \"focus\""
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" nie źjaŭlajecca pravilnaj vartaściu atrybutu \"state\""
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Nie akreślili stylu z nazvaj \"%s\""
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" nie źjaŭlajecca pravilnaj vartaściu atrybutu \"resize\""
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Element <%s> nie pavinien mieć u sabie atrybutu \"resize\" pry razhornutym "
+"albo zhornutym stanie"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Nie pavinna być atrybutu \"resize\" u elemencie <%s> pry razhornutym stanie"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Užo akreśleny styl dla stanu %s, pamieru %s i fokusu %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Užo akreśleny styl dla stanu %s i fokusu %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Element <piece> nia moža mieć u sabie dvuch draw_ops (matyŭ maje ŭ sabie "
+"atrybut draw_ops i element <draw_ops> albo dva elementy)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Element <button> nia moža mieć u sabie dvuch draw_ops (matyŭ maje ŭ sabie "
+"atrybut draw_ops i element <draw_ops> albo dva elementy)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Element <menu_icon> nia moža mieć u sabie dvuch draw_ops (matyŭ maje ŭ sabie "
+"atrybut draw_ops i element <draw_ops> albo dva elementy)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Hałoŭnym elementam matyvu musić być <marco_theme>, a nie <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Element <%s> niedapuščalny ŭnutry elementu name/author/date/description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> niedapuščalny ŭnutry elementu <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Element <%s> niedapuščalny ŭnutry elementu distance/border/aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Element <%s> niedapuščalny ŭnutry elementu aperacyi rysavańnia"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> niedapuščalny ŭnutry elementu <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Z elementam ramki nie paviazany element <draw_ops>"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Z knopkaj nie paviazany element <draw_ops>"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Unutry elementu <%s> nie dazvoleny tekst"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "Dvojčy akreślili element <%s> dla hetaha matyvu"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Nielha znajści pravilny fajł dla matyvu %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Fajł matyvu %s nia maje ŭ sabie hałoŭnaha elementu <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Vokny"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Vokny/adklučeńnie"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Vokny/Vakno _dyjalohu"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Vokny/_Madalnaje vakno dyjalohu"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Vokny/_Pryłada"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Vokny/_Vitalny ekran"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Vokny/_Vierchni dok"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Vokny/_Nižni dok"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Vokny/_Levy dok"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Vokny/_Pravy dok"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Vokny/_Usie doki"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Vokny/St_oł"
+
+#: ../src/ui/theme-viewer.c:135
+msgid "Open another one of these windows"
+msgstr "Adčyniaje čarhovyja z hetych voknaŭ"
+
+#: ../src/ui/theme-viewer.c:142
+msgid "This is a demo button with an 'open' icon"
+msgstr "Heta demanstracyjnaja knopka z ikonaj \"adčyni\""
+
+#: ../src/ui/theme-viewer.c:149
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Heta demanstracyjnaja knopka z ikonaj \"zakonč\""
+
+#: ../src/ui/theme-viewer.c:242
+msgid "This is a sample message in a sample dialog"
+msgstr "Heta prykład paiedamleńnia ŭ prostym vaknie dyjalohu"
+
+#: ../src/ui/theme-viewer.c:325
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Imitacyja elementu menu %d\n"
+
+#: ../src/ui/theme-viewer.c:359
+msgid "Border-only window"
+msgstr "Vakno z adnymi krajami"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Bar"
+msgstr "Panel"
+
+#: ../src/ui/theme-viewer.c:378
+msgid "Normal Application Window"
+msgstr "Zvyčajnaje vakno aplikacyi"
+
+#: ../src/ui/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Vakno dyjalohu"
+
+#: ../src/ui/theme-viewer.c:386
+msgid "Modal Dialog Box"
+msgstr "Madalnaje vakno dyjalohu"
+
+#: ../src/ui/theme-viewer.c:390
+msgid "Utility Palette"
+msgstr "Palitra pryładaŭ"
+
+#: ../src/ui/theme-viewer.c:394
+msgid "Torn-off Menu"
+msgstr "Razhortvalnaje menu"
+
+#: ../src/ui/theme-viewer.c:398
+msgid "Border"
+msgstr "Kraj"
+
+#: ../src/ui/theme-viewer.c:726
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test schiemy knopak %d"
+
+#: ../src/ui/theme-viewer.c:755
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekund(y) dziela stvareńnia adnoj ramki vakna"
+
+#: ../src/ui/theme-viewer.c:798
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Užyćcio: methacity-theme-viewer [NAZVA_MATYVU]\n"
+
+#: ../src/ui/theme-viewer.c:805
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Pamyłka pry zahruzcy matyvu: %s\n"
+
+#: ../src/ui/theme-viewer.c:811
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Zahružany matyŭ \"%s\" ciaham %g sekund(y)\n"
+
+#: ../src/ui/theme-viewer.c:852
+msgid "Normal Title Font"
+msgstr "Zvyčajny šryft zahałoŭku"
+
+#: ../src/ui/theme-viewer.c:858
+msgid "Small Title Font"
+msgstr "Mały šryft zahałoŭku"
+
+#: ../src/ui/theme-viewer.c:864
+msgid "Large Title Font"
+msgstr "Vialiki šryft zahałoŭku"
+
+#: ../src/ui/theme-viewer.c:869
+msgid "Button Layouts"
+msgstr "Schiemy knopak"
+
+#: ../src/ui/theme-viewer.c:874
+msgid "Benchmark"
+msgstr "Test chutkaści"
+
+#: ../src/ui/theme-viewer.c:921
+msgid "Window Title Goes Here"
+msgstr "Tut znachodzicca zahałovak vakna"
+
+# FIXME - moža niejak lepiej udasca?
+#: ../src/ui/theme-viewer.c:1025
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Narysavana %d ramak ciaham %g sekund klijenta (%g milisekund na ramku) i %g "
+"sapraŭdnych sekund, uklučajučy resursy servera X (%g milisekund na ramku)\n"
+
+#: ../src/ui/theme-viewer.c:1244
+msgid "position expression test returned TRUE but set error"
+msgstr "test vyražeńnia pazycyi vyvieŭ vartaść PRAŬDA, ale pakazaŭ pamyłku"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"test vyražeńnia pazycyi vyvieŭ vartaść NIAPRAŬDA, ale nie pakazaŭ pamyłki"
+
+#: ../src/ui/theme-viewer.c:1250
+msgid "Error was expected but none given"
+msgstr "Čakałasia pamyłka, ale nijakaj nie paviedamili"
+
+#: ../src/ui/theme-viewer.c:1252
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Čakali pamyłki %d, a atrymali %d"
+
+#: ../src/ui/theme-viewer.c:1258
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Nie čakali pamyłki, ale jana była vyviedzienaja: %s"
+
+#: ../src/ui/theme-viewer.c:1262
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "vartaściu x było %d, čakali vartaści %d"
+
+#: ../src/ui/theme-viewer.c:1265
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "Vartaściu y było %d, čakali vartaści %d"
+
+#: ../src/ui/theme-viewer.c:1330
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"vyraz kaardynataŭ %d praanalizavany ŭ %g sekund (u siarednim %g sekund(y))\n"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Niemahčyma razabrać paviedamleńnie \"%s\" ad pracesu akna\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Pamyłka pry čytańni z pracesu, jaki absłuhoŭvaje vakno: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Pry ŭklučeńni marco-dialog (jaki pytaŭsia pra źniščeńnie akna) "
+#~ "adbyłasia pamyłka: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Pry ŭruchamleńni marco-dialog (z infarmacyjaj pra pamyłku, datyčnuju "
+#~ "zahadu) adbyłasia pamyłka: %s\n"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "Typ %s nia ceły"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "Vartaść %d, zapisanaja ŭ klučy MateConfa %s, nie źjaŭlajecca prydatnaj "
+#~ "vartaściu dla \"cursor_size\", jana musić być u dyjapazonie 1...128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "Vartaść %d, zapisanaja ŭ klučy MateConfa %s, nie źjaŭlajecca pravilnaj "
+#~ "ličbaj stałoŭ; maksymum składaje ciapier %d\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Nieviadomy atrybut %s unutry elementu <marco_session>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Nieviadomy atrybut %s unutry elementu <maximized>"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Nieviadomy atrybut %s unutry elementu <geometry>"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Mnohija dziejańni (napr. klik u klijencki abšar, pieranos albo źmiena "
+#~ "pamieru vakna) zvyčajna majuć pabočnyja nastupstvy ŭ vyhladzie pieranosu "
+#~ "vakna navierch. Vyklučeńnie hetaj opcyi, zusim nie rekamendavanaje, "
+#~ "viadzie da taho, što pieranos navierch nia budzie źviazany ź inšymi "
+#~ "dziejańniami karystalnika, a taksama buduć ihnaravacca zapyty na pieranos "
+#~ "navierch ad aplikacyj. Hladzi http://bugzilla.gnome.org/show_bug.cgi?"
+#~ "id=445447#c6."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na vyšejšy rabočy abšar. Prykład "
+#~ "skarotu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na nižejšy rabočy abšar. Prykład "
+#~ "skarotu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na levy rabočy abšar. Prykład skarotu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na pravy rabočy abšar. Prykład "
+#~ "skarotu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 1-šy rabočy abšar. Prykład skarotu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 10-ty rabočy abšar. Prykład "
+#~ "skarotu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 11-ty rabočy abšar. Prykład "
+#~ "skarotu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 12-ty rabočy abšar. Prykład "
+#~ "skarotu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 2-hi rabočy abšar. Prykład skarotu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 3-ci rabočy abšar. Prykład skarotu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 4-ty rabočy abšar. Prykład skarotu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 5-ty rabočy abšar. Prykład skarotu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 6-ty rabočy abšar. Prykład skarotu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 7-my rabočy abšar. Prykład skarotu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 8-my rabočy abšar. Prykład skarotu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na 9-ty rabočy abšar. Prykład skarotu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki adčyniaje menu vakna. Prykład: \"&lt;Control&gt;a"
+#~ "\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta "
+#~ "žorstki – heta dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ "
+#~ "skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie "
+#~ "budzie prypisany admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), "
+#~ "tady ź dziejańniem nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na \"režym pieranosu\" vakna pry "
+#~ "vykarystańni klavijatury. Prykład: \"&lt;Control&gt;a\" albo \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta "
+#~ "dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, takich "
+#~ "jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany "
+#~ "admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem "
+#~ "nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na \"režym źmieny pamieru\", jaki "
+#~ "dazvalaje źmianić pamier vakna pry vykarystańni klavijatury. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki chavaje ŭsie zvyčajnyja vokny, i pieradaje fokus na "
+#~ "fon stała. Prykład: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki maksymalizuje vakno. Prykład: \"&lt;Control&gt;a\" "
+#~ "albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – "
+#~ "heta dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, "
+#~ "takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie "
+#~ "prypisany admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź "
+#~ "dziejańniem nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki minimalizuje vakno. Prykład: \"&lt;Control&gt;a\" "
+#~ "albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – "
+#~ "heta dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, "
+#~ "takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie "
+#~ "prypisany admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź "
+#~ "dziejańniem nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na nižejšy rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na levy rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na pravy rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na vyšejšy rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 1-šy rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 10-ty rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 11-ty rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 12-ty rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 2-hi rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 3-ci rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 4-ty rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 5-ty rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 6-ty rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 7-my rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 8-my rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieranosić vakno na 9-ty rabočy abšar. Prykład: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus nazad pamiž panelami j stałom, pry "
+#~ "vykarystańni vypłyŭnoha vakna. Prykład: \"&lt;Control&gt;a\" albo \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta "
+#~ "dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, takich "
+#~ "jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany "
+#~ "admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem "
+#~ "nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus nazad pamiž panelami j stałom, biez "
+#~ "vykarystańnia vypłyŭnoha vakna. Prykład: \"&lt;Control&gt;a\" albo \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta "
+#~ "dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, takich "
+#~ "jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany "
+#~ "admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem "
+#~ "nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus nazad pamiž voknami aplikacyjaŭ, "
+#~ "biez užyćcia pry hetym vypłyŭnoha vakna. Prytrymańnie pry hetym klavišy "
+#~ "\"shift\" dazvalaje viarnuć paradak voknaŭ. Prykład: \"&lt;Control&gt;a"
+#~ "\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta "
+#~ "žorstki – heta dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ "
+#~ "skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie "
+#~ "budzie prypisany admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), "
+#~ "tady ź dziejańniem nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus nazad pamiž voknami aplikacyjaŭ, "
+#~ "biez užyćcia pry hetym vypłyŭnoha vakna. Prytrymańnie pry hetym klavišy "
+#~ "\"shift\" dazvalaje viarnuć paradak voknaŭ. Prykład: \"&lt;Control&gt;a"
+#~ "\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta "
+#~ "žorstki – heta dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ "
+#~ "skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie "
+#~ "budzie prypisany admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), "
+#~ "tady ź dziejańniem nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus nazad pamiž voknami, biez užyćcia "
+#~ "pry hetym vypłyŭnoha vakna. Prytrymańnie pry hetym klavišy \"shift\" "
+#~ "dazvalaje viarnuć paradak voknaŭ. Prykład: \"&lt;Control&gt;a\" albo "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta "
+#~ "dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, takich "
+#~ "jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany "
+#~ "admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem "
+#~ "nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus nazad pamiž voknami, z "
+#~ "vykarystańniem vypłyŭnoha vakna. Prytrymańnie pry hetym klavišy \"shift\" "
+#~ "dazvalaje viarnuć paradak voknaŭ. Prykład: \"&lt;Control&gt;a\" albo "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta "
+#~ "dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, takich "
+#~ "jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany "
+#~ "admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem "
+#~ "nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus pamiž panelami j stałom, užyvajučy "
+#~ "vypłyŭnoha vakna. Prykład: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać "
+#~ "małyja j vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" "
+#~ "i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja "
+#~ "\"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany "
+#~ "nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus pamiž panelami j stałom, biez "
+#~ "užyvańnia vypłyŭnoha vakna. Prykład: \"&lt;Control&gt;a\" albo \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta "
+#~ "dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, takich "
+#~ "jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany "
+#~ "admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem "
+#~ "nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus pamiž voknami aplikacyjaŭ. "
+#~ "Prykład: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus pamiž voknami aplikacyjaŭ pry "
+#~ "dapamozie vypłyŭnoha vakna. Prykład: \"&lt;Control&gt;a\" albo \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta "
+#~ "dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, takich "
+#~ "jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany "
+#~ "admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem "
+#~ "nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus pamiž voknami biez užyvańnia "
+#~ "vypłyŭnoha vakna. (Tradycyjna &lt;Alt&gt;Escape) Prytrymańnie klavišy "
+#~ "\"shift\" hrupuje vokny ŭ advarotnym paradku. Prykład: \"&lt;Control&gt;a"
+#~ "\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta "
+#~ "žorstki – heta dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ "
+#~ "skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie "
+#~ "budzie prypisany admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), "
+#~ "tady ź dziejańniem nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieradaje fokus pamiž voknami z vykarystańniem "
+#~ "vypłyŭnoha vakna. (Tradycyjna &lt;Alt&gt;Escape) Prytrymańnie klavišy "
+#~ "\"shift\" hrupuje vokny ŭ advarotnym paradku. Prykład zapisu: \"&lt;"
+#~ "Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia "
+#~ "nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ "
+#~ "skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie "
+#~ "budzie prypisany admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), "
+#~ "tady ź dziejańniem nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje režym zaŭždy naviersie. Vakno, jakoje "
+#~ "zaŭždy naviersie, bačnaje nad usimi voknami, jakija pakryvajucca. Prykład "
+#~ "zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje na poŭnaekranny režym. Prykład "
+#~ "zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje režym maksymalizacyi. Prykład zapisu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki zhortvaje albo razhortvaje vakno. Prykład zapisu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje pamiž zajmańniem vaknom adnaho albo "
+#~ "mnohich rabočych abšaraŭ. Prykład zapisu: \"&lt;Control&gt;a\" albo \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta "
+#~ "dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, takich "
+#~ "jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany "
+#~ "admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem "
+#~ "nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki viartaje maksymalizavanaje vakno. Prykład zapisu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pakazvaje vakno dyjalohu paneli \"Uklučy prahramu"
+#~ "\". Prykład zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki ŭklučaje terminał. Prykład zapisu: \"&lt;Control&gt;"
+#~ "a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta "
+#~ "žorstki – heta dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ "
+#~ "skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie "
+#~ "budzie prypisany admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), "
+#~ "tady ź dziejańniem nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki ŭklučaje pryładu paneli dziela zdymkaŭ vobrazu "
+#~ "vakna. Prykład zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać "
+#~ "małyja j vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" "
+#~ "i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja "
+#~ "\"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany "
+#~ "nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki ŭklučaje pryładu paneli dziela zdymkaŭ vobrazu "
+#~ "vakna. Prykład zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać "
+#~ "małyja j vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" "
+#~ "i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja "
+#~ "\"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany "
+#~ "nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki adčyniaje hałoŭnaje menu paneli. Prykład zapisu: "
+#~ "\"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny "
+#~ "analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija "
+#~ "litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;"
+#~ "\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled\" (anh. "
+#~ "nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin klavišny "
+#~ "skarot."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki pieraklučaje pamiž pakazvańniem vakna nad inšymi "
+#~ "albo pad imi. Kali vakno prykrytaje inšymi, jano vysoŭvajecca navierch. "
+#~ "Kali vakno sucelna bačnaje, jano pierasoŭvajecca pad inšyja vokny. Uzor "
+#~ "zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišny skarot, jaki adsoŭvaje vakno za inšyja. Uzor zapisu: \"&lt;"
+#~ "Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia "
+#~ "nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ "
+#~ "skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie "
+#~ "budzie prypisany admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), "
+#~ "tady ź dziejańniem nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Hety klavišny skarot adsoŭvaje vakno na paŭnočny (vierchni) kraj ekranu. "
+#~ "Uzor zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Hety klavišny skarot adsoŭvaje vakno na ŭschodni (pravy) kraj ekranu. "
+#~ "Uzor zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Hety klavišny skarot adsoŭvaje vakno na paŭnočna-ŭschodni (pravy-"
+#~ "vierchni) roh ekranu. Uzor zapisu: \"&lt;Control&gt;a\" albo \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta "
+#~ "dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, takich "
+#~ "jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany "
+#~ "admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem "
+#~ "nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Hety klavišny skarot adsoŭvaje vakno na paŭnočna-zachodni (levy-vierchni) "
+#~ "roh ekranu. Uzor zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać "
+#~ "małyja j vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" "
+#~ "i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja "
+#~ "\"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany "
+#~ "nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Hety klavišny skarot adsoŭvaje vakno na paŭdniovy (nižni) bok ekranu. "
+#~ "Uzor zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Hety klavišny skarot adsoŭvaje vakno na paŭdniova-ŭschodni (pravy-nižni) "
+#~ "roh ekranu. Uzor zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać "
+#~ "małyja j vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" "
+#~ "i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja "
+#~ "\"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany "
+#~ "nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Hety klavišny skarot adsoŭvaje vakno na paŭdniova-zachodni (levy-nižni) "
+#~ "roh ekranu. Uzor zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać "
+#~ "małyja j vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" "
+#~ "i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja "
+#~ "\"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany "
+#~ "nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Hety klavišny skarot adsoŭvaje vakno na zachodni (levy) bok ekranu. Uzor "
+#~ "zapisu: \"&lt;Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Syntaksičny analiz nia nadta žorstki – heta dazvalaje ŭžyvać małyja j "
+#~ "vialikija litary taksama ŭ skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;"
+#~ "Ctrl&gt;\". Kali naładzie budzie prypisany admysłovaja opcyja \"disabled"
+#~ "\" (anh. nieaktyŭnaja), tady ź dziejańniem nia budzie źviazany nivodzin "
+#~ "klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Hety klavišny skarot vysoŭvaje vakno nad inšymi. Uzor zapisu: \"&lt;"
+#~ "Control&gt;a\" albo \"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia "
+#~ "nadta žorstki – heta dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ "
+#~ "skarotach, takich jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie "
+#~ "budzie prypisany admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), "
+#~ "tady ź dziejańniem nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Hety klavišny skarot źmianiaje pamier vakna tak, kab jano zapaŭniała ŭsiu "
+#~ "volnuju prastoru pa haryzantali. Uzor zapisu: \"&lt;Control&gt;a\" albo "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta "
+#~ "dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, takich "
+#~ "jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany "
+#~ "admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem "
+#~ "nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Hety klavišny skarot źmianiaje pamier vakna tak, kab jano zapaŭniała ŭsiu "
+#~ "volnuju prastoru pa vertykali. Uzor zapisu: \"&lt;Control&gt;a\" albo "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1. Syntaksičny analiz nia nadta žorstki – heta "
+#~ "dazvalaje ŭžyvać małyja j vialikija litary taksama ŭ skarotach, takich "
+#~ "jak \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Kali naładzie budzie prypisany "
+#~ "admysłovaja opcyja \"disabled\" (anh. nieaktyŭnaja), tady ź dziejańniem "
+#~ "nia budzie źviazany nivodzin klavišny skarot."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Pieraklučeńnie režymu zaŭždy naviersie"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Viartańnie maksymalizavanaha vakna"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Viartaje zmaksymalizavanaje vakno"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Niama atrybutu \"%s\" u elemencie <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Matyŭ užo maje zmoŭčanuju ikonu \"icon\""
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Matyŭ užo maje zmoŭčanuju mini_ikonu \"mini_icon\""
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"name\" unutry elementu <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"value\" unutry elementu <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"top\" unutry elementu <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"bottom\" unutry elementu <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"left\" unutry elementu <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"right\" unutry elementu <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"color\" unutry elementu <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"x1\" unutry elementu <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"y1\" unutry elementu <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"x2\" unutry elementu <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"y2\" unutry elementu <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"y\" unutry elementu <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"width\" unutry elementu <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"height\" unutry elementu <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"start_angle\" unutry elementu <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"extent_angle\" unutry elementu <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"alpha\" unutry elementu <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"type\" unutry elementu <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"filename\" unutry elementu <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"state\" unutry elementu <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"shadow\" unutry elementu <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Niama atrybutu \"array\" unutry elementu <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Niama atrybutu \"value\" unutry elementu <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Niama atrybutu \"position\" unutry elementu <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Niama atrybutu \"function\" unutry elementu <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Niama atrybutu \"state\" unutry elementu <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Niama atrybutu \"focus\" unutry elementu <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Niama atrybutu \"style\" unutry elementu <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Niama atrybutu \"resize\" unutry elementu <%s>"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "Dvojčy akreślili element <author> dla hetaha matyvu"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "Dvojčy akreślili element <copyright> dla hetaha matyvu"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "Dvojčy akreślili element <date> dla hetaha matyvu"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "Dvojčy akreślili element <description> dla hetaha matyvu"
+
+#~ msgid "On _Top"
+#~ msgstr "Na wierzc_hu"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Wymuszenie zakończenia tej aplikacji spowoduje utratę niezapisanych zmian."
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Nieznana funkcja \"%s\" związana z ikoną menu"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Nieznany stan \"%s\" związany z ikoną menu"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr ""
+#~ "W temacie określono już ikonę menu, związaną z funkcją %s i stanem %s"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "Z ikoną menu nie jest powiązany element <draw_ops>"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "Nie można odczytać motywu z pliku %s: %s\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "Motyw musi zawierać <menu_icon function=\"%s\" state=\"%s\" draw_ops="
+#~ "\"cokolwiek\"/>"
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Niektóre aplikacje naruszają specyfikacje, czego wynikiem jest błędna "
+#~ "obsługa ich okien przez menedżera okien. Na przykład, w przypadku "
+#~ "idealnym menedżer Marco umieszczałby wszystkie okna dialogowe zawsze w "
+#~ "jednakowym położeniu w stosunku do ich okien nadrzędnych. Wymaga to "
+#~ "zignorowania położenia okien dialogowych określanego przez aplikacje. "
+#~ "Niektóre wersje języka Java z biblioteką Swing oznaczają jednak swoje "
+#~ "menu podręczne jako okna dialogowe, więc menedżer Marco musi wyłączyć "
+#~ "pozycjonowanie okien dialogowych, aby umożliwić działanie menu w błędnych "
+#~ "aplikacjach napisanych w języku Java. Istnieje jeszcze kilka innych "
+#~ "przykładów podobnych do powyższego. Opcja ta powoduje przejście menedżera "
+#~ "Marco w tryb pełnej poprawności, dzięki czemu uzyskuje się nieco "
+#~ "ładniejszy interfejs użytkownika, o ile nie ma potrzeby uruchamiania "
+#~ "żadnych błędnych aplikacji. Niestety, tryb naprawiania błędów musi być "
+#~ "domyślnie włączony; świat rzeczywisty jest okropnym miejscem. Niektóre "
+#~ "obejścia błędów są tak naprawdę obejściami ograniczeń samej specyfikacji, "
+#~ "czasem więc błąd w trybie bez naprawiania błędów aplikacji nie będzie "
+#~ "możliwy do poprawienia bez poprawiania samej specyfikacji."
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Podczas analizy składniowej wyrażenia określającego współrzędne wystąpiło "
+#~ "przepełnienie bufora. Jest to błąd w Marco, ale czy na pewno "
+#~ "potrzebujesz tak wielkiego wyrażenia?"
diff --git a/po/bg.po b/po/bg.po
new file mode 100644
index 00000000..6a0319ab
--- /dev/null
+++ b/po/bg.po
@@ -0,0 +1,2420 @@
+# Bulgarian translation of marco po-file.
+# Copyright (C) 2002, 2004, 2006, 2007, 2008 Free Software Foundation, Inc.
+# Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+# Alexander Shopov <[email protected]>, 2002, 2006, 2007, 2009, 2010.
+# Vladimir Petkov <[email protected]>, 2004.
+# Rostislav Raykov <[email protected]>, 2004.
+# Yavor Doganov <[email protected]>, 2008.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco trunk\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-01-25 22:40+0200\n"
+"PO-Revision-Date: 2010-01-25 22:39+0200\n"
+"Last-Translator: Alexander Shopov <[email protected]>\n"
+"Language-Team: Bulgarian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Работен плот"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Управление на прозорци"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Събитие за звънец"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Неизвестна заявка за информация за прозорец: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> не отговаря на съобщенията."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Можете да изчакате малко преди изрично да накарате приложението да спре "
+"работата си."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "Из_чакване"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Принудително спиране"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Неуспех при получаването на името на хоста: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Липсва разширението „%s“, необходимо за наслагване"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Неуспех при отварянето на дисплея на X Window „%s“\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Връзката с дисплея „%s“ се изгуби.\n"
+"Най-вероятно X сървърът е бил спрян или сте\n"
+"убили/унищожили мениджъра на прозорци.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Фатална вх./изх. грешка %d (%s) на дисплей „%s“.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "Някоя друга програма използва бързия клавиш %s с модификатори %x\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Имаше грешка при изпълнението на <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Не е дефинирана команда %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Не е дефинирана команда за терминал.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Авторски права (C) 2001-%s Havoc Pennington, Red Hat, Inc., и други\n"
+"Тази програма (marco) е свободен софтуер, прегледайте изходния код "
+"относно условията за разпространение.\n"
+"Тази програма се разпространява БЕЗ НИКАКВИ ГАРАНЦИИ, дори и за ПРОДАЖБА или "
+"СЪОТВЕТСТВИЕ С КАКВАТО И ДА Е УПОТРЕБА.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Прекъсване на връзката към мениджъра на сесиите"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Замяна на текущия мениджър на прозорци с Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Определяне на идентификатор за управлението на сесии"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X дисплеят, който да се използва"
+
+# Ако „запазено“ не се членува, низът се събира на един ред без
+# пренасяне.
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Инициализиране на сесия от файл със запазено състояние"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Отпечатване на версията на програмата"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Извикванията на X да са синхронни"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Включване на наслагването"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Изключване на наслагването"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "Максимизираните прозорци без украси да не минават в режим на цял екран"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Неуспех при сканирането на папката с темите: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Неуспех при намирането на тема! Проверете дали %s съществува и съдържа "
+"обичайните теми.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Неуспех при рестартиране: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Ключът на MateConf — „%s“ е с невалидна стойност\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"Стойността %d записана в ключа на MateConf — %s е извън обхвата от %d÷%d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Ключът на MateConf — „%s“ е от невалиден вид\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Триковете за развалените програми са изключени. Някои програми могат да са с "
+"неправилно поведение.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Описанието на шрифт „%s“ от ключа на MateConf — %s, не може да бъде "
+"анализирано\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"„%s“, който е открит в базата от данни с настройките, не е валиден "
+"модификатор на бутон на мишката\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Грешка при задаване на броя на работни места да е %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Работен плот %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Низът „%s“ открит в базата от данни с настройки е невалиден за стойност на "
+"клавишната комбинация „%s“\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Грешка при задаване на името на работното място %d да е „%s“: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Грешка при задаване на състоянието на мениджъра за наслагването: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Екранът %d на дисплей „%s“ е невалиден\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Екранът %d на дисплей „%s“ вече има мениджър на прозорци; пробвайте да го "
+"замените с опцията --replace.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Неуспех при получаването на избрания мениджър за прозорци на екран %d, "
+"дисплей „%s“\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Екран %d на дисплей „%s“ вече има мениджър за прозорци\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Неуспех при отстъпването на екран %d на дисплей „%s“\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Форматът е от вида „<Control>a“ или „<Shift><Alt>F1“.\n"
+"\n"
+"Анализиращата програма е доста либерална по отношение на регистъра и "
+"съкращения от вида „<Ctl>“ и „<Ctrl>“. Ако зададете стойността да е "
+"специалният низ „disabled“, това действие няма да има бърз клавиш."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Форматът е от вида „<Control>a“ или „<Shift><Alt>F1“.\n"
+"\n"
+"Анализиращата програма е доста либерална по отношение на регистъра и "
+"съкращения от вида „<Ctl>“ и „<Ctrl>“. Ако зададете стойността да е "
+"специалният низ „disabled“, това действие няма да има бърз клавиш."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Неуспех при създаването на папката „%s“: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Неуспех при отварянето на сесийния файл „%s“ за запис: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Грешка при записване на сесийния файл „%s“: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Грешка при затваряне на сесийния файл „%s“: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Неуспех при прочитането на записания сесиен файл %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Неуспех при анализирането на записания сесиен файл: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"Атрибутът <marco_session> е видян, но вече имаме сесийния идентификатор"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Непознат атрибут %s на елемента <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "вложен етикет <window>"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Непознат елемент %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Тези прозорци не поддържат операцията по записване на текущото състояние и "
+"ще трябва да се стартират ръчно при следващото ви влизане."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Неуспех при отварянето на дневника за изчистване на грешки: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Неуспех при изпълнението на fdopen() върху журналния файл %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Отворен е дневника %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco е компилиран без поддръжка на подробен режим\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Мениджър на прозорци: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Грешка в мениджъра на прозорци: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Предупреждение от мениджъра на прозорци: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Грешка от мениджъра на прозорци: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Прозорецът %s зададе SM_CLIENT_ID за себе, а не за прозореца "
+"WM_CLIENT_LEADER, както е указано в ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Прозорецът %s задава подсказка MWM за това, че размерът му не може да се "
+"променя, но едновременно с това указва минимален размер %d x %d и максимален "
+"размер %d x %d. Това не е смислено.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Приложението зададе неверен _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (от %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (като системен администратор)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (като %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (като друг потребител)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "За %2$s е указан неправилен WM_TRANSIENT_FOR, прозорец 0x%1$lx.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Прозорецът 0x%lx има свойството %s\n"
+"което трябва да е от вида: %s, формат: %d\n"
+"а всъщност има вида: %s, формат: %d, брой: %d.\n"
+"Това най-вероятно е грешка в приложението, а не в мениджъра на прозорци.\n"
+"Прозорецът е със заглавие=„%s“, клас=„%s“, име=„%s“\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Свойството %s на прозореца 0x%lx съдържа невалиден UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Свойството %s на прозореца 0x%lx съдържа невалиден UTF-8 за елемента %d в "
+"списъка\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Превключване към работен плот 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Превключване към работен плот 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Превключване към работен плот 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Превключване към работен плот 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Превключване към работен плот 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Превключване към работен плот 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Превключване към работен плот 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Превключване към работен плот 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Превключване към работен плот 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Превключване към работен плот 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Превключване към работен плот 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Превключване към работен плот 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Превключване към работния плот вляво"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Превключване към работния плот вдясно"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Превключване към работния плот отгоре"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Превключване към работния плот отдолу"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr ""
+"Преместване на фокуса между прозорците на едно приложение, като се използва "
+"изскачащ прозорец"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Преместване на фокуса между прозорците на едно приложение в обратен ред, "
+"като се използва изскачащ прозорец"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr ""
+"Преместване на фокуса между прозорците, като се използва изскачащ прозорец"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr ""
+"Преместване на фокуса между прозорците в обратен ред, като се използва "
+"изскачащ прозорец"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr ""
+"Преместване на фокуса между панелите и работното място, като се използва "
+"изскачащ прозорец"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Преместване на фокуса между панелите и работното място в обратен ред, като "
+"се използва изскачащ прозорец"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Незабавно преместване на фокуса между прозорците на едно приложение"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr ""
+"Незабавно преместване на фокуса между прозорците на едно приложение в "
+"обратен ред"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Незабавно преместване на фокуса между прозорците "
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Незабавно преместване на фокуса между прозорците в обратен ред"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Незабавно преместване на фокуса между панелите и работния плот"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+"Незабавно преместване на фокуса между панелите и работния плот в обратен ред"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Скриване на всички прозорци и фокусиране на работния плот"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Показване на основното меню на панела"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Показване на диалоговия прозорец на панела „Стартиране на програма“"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Снимане на екрана"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Снимка на отделен прозорец"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Стартиране на терминал"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Активиране на менюто за прозорците"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Превключване на режима за цял екран"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Превключване на състоянието на максимизиране"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Превключване на видимостта на прозореца над другите прозорци"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Максимизиране на прозорец"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Възстановяване на прозорец"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Превключване на състоянието на навиване"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Минимизиране на прозореца"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Затваряне на прозореца"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Преместване на прозорец"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Оразмеряване на прозорец"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Превключване на появата на прозореца на всички работни места"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Преместване на прозореца в работен плот 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Преместване на прозореца в работен плот 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Преместване на прозореца в работен плот 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Преместване на прозореца в работен плот 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Преместване на прозореца в работен плот 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Преместване на прозореца в работен плот 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Преместване на прозореца в работен плот 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Преместване на прозореца в работен плот 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Преместване на прозореца на работен плот 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Преместване на прозореца в работен плот 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Преместване на прозореца в работен плот 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Преместване на прозореца в работен плот 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Преместване на прозореца един работен плот наляво"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Преместване на прозореца един работен плот надясно"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Преместване на прозореца един работен плот нагоре"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Преместване на прозореца един работен плот надолу"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Ако прозорецът е под друг, го издига, иначе го понижава"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Издигане на прозореца над другите"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Понижаване на прозореца под другите прозорци"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Максимизиране прозореца вертикално"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Максимизиране на прозореца хоризонтално"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Преместване на прозореца в северозападния (горния ляв) ъгъл на екрана"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr ""
+"Преместване на прозореца в североизточния (горния десен) ъгъл на екрана"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Преместване на прозореца в югозападния (долния ляв) ъгъл на екрана"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Преместване на прозореца в югоизточния (долния десен) ъгъл на екрана"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Преместване на прозореца в северния (горния) край на екрана"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Преместване на прозореца в южния (долния) край на екрана"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Преместване на прозореца в източния (десния) край на екрана"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Преместване на прозореца в западния (левия) край на екрана"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Преместване на прозореца в средата на екрана"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"Все още не е осъществено: навигацията работи в рамките на програмите, а не "
+"на прозорците"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Низ описващ шрифта за заглавната лента на прозорците. Размерът от описанието "
+"ще се използва, само ако настройката titlebar_font_size е установена на 0. "
+"Тази настройка е неактивна, ако настройката titlebar_uses_desktop_font е "
+"включена."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Действие при двойно натискане върху заглавната лента"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr ""
+"Действие при натискане със средния бутон на мишката върху заглавната лента"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr ""
+"Действие при натискане с десния бутон на мишката върху заглавната лента"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Подредба на бутоните в заглавната лента"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Подредба на бутоните в заглавната лента. Стойността трябва да е низ от вида "
+"„menu:minimize,maximize,spacer,close“. С „:“ се разделят левия от десния "
+"ъгъл на прозореца, а със „,“ — имената на бутоните. Не са позволени "
+"повторения на бутоните. Непознатите имена се игнорират, така че в бъдещи "
+"версии на Marco да могат да се добавят нови бутони, без да се пречи на "
+"старите версии. Може да се използва специален етикет „spacer“ за вмъкване на "
+"шпация между два съседни бутона."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Автоматично издигане на фокусирания прозорец"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Натискането на прозорец, когато този модифициращ клавиш е натиснат, "
+"премества прозореца (ляв бутон на мишката), оразмерява прозореца (среден "
+"бутон) или показва менюто за прозорци (десен бутон). Действието на средния и "
+"десния бутон може да се размени чрез ключа „mouse_button_resize“. "
+"Модификаторът е от вида „&lt;Alt&gt;“ или „&lt;Super&gt;“ например."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Команди, които да се изпълнят при натискането на бърз клавиш"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Мениджър за наслагване"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Кога новите прозорци получават фокуса"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Текуща тема"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Забавяне в милисекунди за настройката за автоматично издигане"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Указва дали Marco ще действа и като мениджър за наслагване."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Определя дали програми или системата може да генерират звукови „бибиткания“. "
+"Може да се използва заедно с „визуален звънец“, за да се позволят тихи "
+"„бибиткания“."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Изключва неправилното поведение изисквано от стари приложения или такива с "
+"грешки"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Включване на визуалния звънец"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Ако е зададено като истина и начинът за фокусиране е „sloppy“ или „mouse“, "
+"тогава фокусираният прозорец ще бъде автоматично издигнат след определен "
+"интервал, който е зададен в ключа auto_raise_delay. Това поведение не е "
+"свързано с натискането на бутоните на мишката за издигането на прозорец, "
+"нито с с навлизането на показалеца на мишката при действие на провлачване и "
+"пускане."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ако е зададено като истина, настройката за titlebar_font се игнорира. За "
+"заглавията на прозорците се използва стандартният шрифт за приложенията."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Ако е зададено като истина, marco ще дава на потребителя по-малко обратна "
+"връзка, като се използват рамки вместо цели прозорци, избягват се анимации "
+"или чрез други средства. Това е значимо влошаване на използваемостта за "
+"много потребители, но може да позволи на специфични програми и терминални "
+"сървъри да работят. Рамките за прозорците са изключени, когато са включени "
+"възможностите за достъпност."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Ако е зададено като истина, Marco работи на базата на приложения, а не на "
+"прозорци. Идеята е малко абстрактна, но като цяло подходът базиран на "
+"приложения е по-близък до Macintosh отколкото до Windows. Когато фокусирате "
+"прозорец при подход базиран на приложения, всички прозорци на приложението "
+"ще се издигнат. При този подход натисканията за фокусиране не се предават на "
+"прозорците на други приложения. На този етап подходът на базата на "
+"приложения още не е осъществен изцяло."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Ако е зададено като истина, се жертва част от използваемостта за повече "
+"свободни ресурси"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Модификатор, който да се ползва за модифицираните действия с натискания по "
+"прозорците"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Име на работния плот"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Брой работни плотове"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Брой работни плотове. Трябва да е над 0. Има горна граница (за да се "
+"предотврати случайното разрушаване на средата, ако поискате прекалено много "
+"работни места)."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Изпълняване на определена команда"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Ако е зададено като истина, десният бутон на мишката ще преоразмерява, а "
+"менюто ще се показва със средния бутон, когато е натиснат клавиша зададен в "
+"ключа „mouse_button_modifier“. Ако е зададено като лъжа, бутоните са с "
+"разменени функции."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Задаването на тази настройка като лъжа може да доведе до поведение с грешки. "
+"Съветът ни е да не променяте стандартната стойност — истина. Много действия "
+"(напр. натискането в клиентската област, местенето или преоразмеряването на "
+"прозореца) обикновено издигат прозореца. Ако настройката е лъжа, което ние в "
+"никакъв случай не препоръчваме, издигането ще се отдели от самото действие, "
+"както и заявките за издигане от самото приложение ще бъдат пренебрегвани. "
+"Вижте http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Дори този ключ да "
+"е лъжа, прозорците пак могат да бъдат издигани чрез натискане на Alt + ляв "
+"бутон на мишката на произволно място в прозореца, натискане с левия бутон на "
+"мишката по украсите на прозореца или чрез специални съобщения от пейджърите, "
+"например заявки за предаване на фокус от аплет за списъка с прозорците. "
+"Настройката в момента е изключена в режима за фокусиране чрез натискане "
+"(ключът „focus_mode“ е „click“). Забележете, че начините за издигане на "
+"прозорците, когато ключът „raise_on_click“ е лъжа, не включват програмните "
+"заявки от приложенията за издигане на прозорците. Тези заявки ще бъдат "
+"пренебрегвани независимо от причината за тях. Ако сте разработчик на "
+"приложения и някой потребител ви се оплаче, че програмата ви не работи, "
+"когато ключът е лъжа, кажете им, че вината за това си е _тяхна_ — те са си "
+"настроили мениджъра на прозорци неправилно. Или ще трябва да върнат "
+"стойността да е истина, или ще трябва да приемат грешката, която сами са си "
+"поискали."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Някои програми нарушават спецификациите по начини, които предизвикват грешно "
+"поведение на мениджъра на прозорци. Тази настройка кара Marco да работи в "
+"изцяло правилен режим, което дава малко по-добър потребителски интерфейс, "
+"ако няма да стартирате развалени програми."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Системният звънец е звуков"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Задава начинът, по който Marco визуално представя системния звънец или "
+"звънеца на приложение. В момента валидни са следните две стойности: "
+"„fullscreen“, което съответства на черно-бяло премигване на целия екран, и "
+"„frame_flash“, което съответства на премигване на заглавната лента на "
+"приложението, което звънва. Ако приложението, което звънва е неизвестно "
+"(какъвто е най-честия случай при подразбиращият се системен звънец), "
+"премигва заглавната лента на текущо фокусирания прозорец."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Ключовете в /apps/marco/global_keybindings/run_command_N дефинират "
+"клавишни комбинации, съответстващи на тези команди. Натискането на "
+"клавишната комбинация за run_command_N ще изпълни команда command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Ключът /apps/marco/global_keybindings/run_command_screenshot определя "
+"бързия клавиш, който при натискането си пуска указаната програма."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Ключът /apps/marco/global_keybindings/run_command_windows_screenshot "
+"определя бързия клавиш, който при натискането си пуска указаната програма."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Бързият клавиш, който изпълнява командата със същия номер в /apps/marco/"
+"keybinding_commands. Форматът е от вида „&lt;Control&gt;a“ или „&lt;Shift&gt;"
+"&lt;Alt&gt;F1“. Анализиращата програма е доста либерална по отношение на "
+"регистъра и съкращения от вида „&lt;Ctl&gt;“ и „&lt;Ctrl&gt;“. Ако зададете "
+"стойността да е специалният низ „disabled“, това действие няма да има бърз "
+"клавиш."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Името на работния плот."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Команда за снимка на екрана"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Темата определя външния вид на рамките на прозорците, заглавната лента и т.н."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Закъснението в милисекунди преди да се издигне прозорец, ако auto_raise е "
+"истина."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Начинът за фокусиране на прозорци указва как се активират прозорците. Има "
+"три възможни стойности: „click“ означава, че прозорците трябва да бъдат "
+"натиснати с мишката, за да се фокусират, „sloppy“ означава, че прозорците се "
+"фокусират, когато мишката влезе в тях, а „mouse“, че прозорците се "
+"фокусират, когато мишката влезе в тях и губят фокуса, когато мишката излезе "
+"от тях."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Командата за снимка на екрана"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Тази настройка определя ефекта на двойното натискане с левия бутон на "
+"мишката върху заглавната лента. Засега валидни стойности са „toggle_shade“, "
+"която навива/развива прозореца, „toggle_maximize“, която максимизира/"
+"демаксимизира прозореца, „toggle_maximize_horizontally“ и "
+"„toggle_maximize_vertically“, които максимизират/демаксимират прозореца само "
+"в тази посока, „minimize“, която минимизира прозореца, „shade“, която навива "
+"прозореца, „menu“, която показва менюто на прозореца, „lower“, която поставя "
+"прозореца под всички останали и „none“, която не прави нищо."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Тази настройка определя ефекта на натискането със среден бутон на мишката "
+"върху заглавната лента. Засега валидни стойности са „toggle_shade“, която "
+"навива/развива прозореца, „toggle_maximize“, която максимизира/демаксимизира "
+"прозореца, „toggle_maximize_horizontally“ и „toggle_maximize_vertically“, "
+"които максимизират/демаксимират прозореца само в тази посока, „minimize“, "
+"която минимизира прозореца, „shade“, която навива прозореца, „menu“, която "
+"показва менюто на прозореца, „lower“, която поставя прозореца под всички "
+"останали и „none“, която не прави нищо."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Тази настройка определя ефекта на натискането с десния бутон на мишката "
+"върху заглавната лента. Засега валидни стойности са „toggle_shade“, която "
+"навива/развива прозореца, „toggle_maximize“, която максимизира/демаксимизира "
+"прозореца, „toggle_maximize_horizontally“ и „toggle_maximize_vertically“, "
+"които максимизират/демаксимират прозореца само в тази посока, „minimize“, "
+"която минимизира прозореца, „shade“, която навива прозореца, „menu“, която "
+"показва менюто на прозореца, „lower“, която поставя прозореца под всички "
+"останали и „none“, която не прави нищо."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Тази настройка доуточнява, кога новите прозорци получават фокуса. Възможните "
+"стойности са две: „smart“ (хитър) — нормалният начин за получаване на фокус "
+"и „strict“ (стриктен) — прозорците стартирани през терминал не получават "
+"фокуса."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Включва визуална индикация, когато програма или системата се обърнат към "
+"„звънец“ или „бибиткане“. Това е полезно при хора с проблемен слух или при "
+"шумно обкръжение."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Използване на стандартния системен шрифт за заглавията на прозорците"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Вид визуален звънец"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Дали издигането трябва да се получава като страничен резултат от други "
+"потребителски действия"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Дали да се преоразмерява с десния бутон"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Режим на фокусиране на прозорци"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Шрифт за заглавията на прозорците"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Употреба: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Затваряне на прозореца"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Меню за прозорците"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Минимизиране на прозореца"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Максимизиране на прозореца"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Възстановяване на прозорец"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Навиване на прозореца"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Развиване на прозореца"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Прозорецът да е отгоре"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Прозорецът да не е само отгоре"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Винаги на видимия работен плот"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Прозорецът да се появява само на едно работно място"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Ми_нимизиране"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_Максимизиране"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Де_максимизиране"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "На_виване"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Развиване"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Преместване"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "О_размеряване"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Преместване на лентата за заглавието по _екрана"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Винаги _отгоре"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Винаги на видимия работен плот"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Само на този работен плот"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Преместване на _левия работен плот"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Преместване на десни_я работен плот"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Преместване на _горния работен плот"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Преместване в _долния работен плот"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Затваряне"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Работен плот %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Работен плот 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Работен плот %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Преместване на др_уг работен плот"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d×%d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "горния"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "долния"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "левия"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "десния"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "геометрията на рамката не указва „%s“ размер"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "геометрията на рамката не указва „%s“ размер на „%s“ ръб"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Отношението на размерите на бутона %g е неподходящо"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Геометрията на рамката не указва размера на бутоните"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Преливките трябва да имат поне два цвята"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Цветовата спецификация на GTK трябва да указва състоянието в квадратни "
+"скоби, напр. gtk:fg[NORMAL], където NORMAL е състоянието. Неуспех при "
+"анализира „%s“"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Цветовата спецификация на GTK трябва да съдържа квадратна скоба след "
+"състоянието, напр. gtk:fg[NORMAL], където NORMAL е състоянието. Неуспех при "
+"анализа на „%s“"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Неуспех при анализа на състоянието „%s“ в цветовата спецификация"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Неуспех при анализа на цветови компонент „%s“ в цветовата спецификация"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Форматът на смесването е „blend/bg_color/fg_color/alpha“, „%s“ не се "
+"подчинява на формата"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Неуспех при анализира на алфа стойността „%s“ в смесения цвят"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Алфа стойността „%s“ в смесения цвят не е между 0.0 и 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Форматът на навиването е „shade/base_color/factor“, „%s“ не съответства на "
+"формата"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Неуспех при анализа на фактора на навиването „%s“ в цвета за навиване"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Факторът на навиване „%s“ в цвета за сянката е отрицателен"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Неуспех при анализа на цвета „%s“"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Изразът за координати съдържа символа „%s“, който не е позволен"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Изразът за координати съдържа числото с плаваща запетая „%s“, което не може "
+"да бъде анализирано"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Изразът за координати съдържа цялото число „%s“, което не може да бъде "
+"анализирано"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Изразът за координати съдържа непознат оператор в началото на този текст: „%"
+"s“"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Изразът за координати бе празен или не бе разбран"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Изразът за координати дава деление на нула"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Изразът за координати използва оператора mod върху число с плаваща запетая"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Изразът за координати използва оператора „%s“ на място, където се очаква "
+"операнд"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"Изразът за координати използва оператор на място, където се очаква операнд"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Изразът за координати завършва с оператор вместо с операнд"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Изразът за координати използва оператора „%c“ след „%c“ без да има операнд "
+"между тях"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Изразът за координати използва непознатата променлива или константа „%s“"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Анализаторът на изрази за координати препълни буфера си."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "В израза за координати има затваряща скоба без съответна отваряща"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "В изразът за координати има отваряща скоба без съответна затваряща"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Изразът за координати не съдържа нито оператори, нито операнди"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Темата съдържа израз, който даде грешка: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"За този стил на рамката трябва да се укаже <button function=\"%s\" state=\"%s"
+"\" draw_ops=\"нещо си\"/>"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Липсва <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"нещо си\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Неуспех при зареждането на темата „%s“: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Не е даден елементът <%s> за темата „%s“"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Няма указан стил на рамката за „%s“ прозорците в тема „%s“. Добавете елемент "
+"<window type=\"%s\" style_set=\"нещо си\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Константите определени от потребителя трябва да започват с главна буква, а „%"
+"s“ не започва така"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Константата „%s“ вече е дефинирана"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Елементът <%s> няма атрибут „%s“"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Ред %d, знак %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Атрибутът „%s“ се повтаря два пъти в един елемент <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Атрибутът „%s“ е невалиден за елемента <%s> в този контекст"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "„%s“ не може да се анализира като цяло число"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Крайните символи „%s“ в низа „%s“ са неразбираеми"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Цялото число %ld трябва да е положително"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Цялото число %ld е прекалено голямо, максимумът е %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "„%s“ не може да се интерпретира като число с плаваща запетая"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Булевите стойности са или „истина“, или „лъжа“. Не са „%s“"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Ъгълът трябва да е между 0.0 и 360.0, а е %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Алфа трябва да е между 0.0 (пълна прозрачност) и 1.0 (пълна непрозрачност), "
+"а е %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Невалидно увеличение на заглавието „%s“ (трябва да е едно от „xx-small“, „x-"
+"small“, „small“,„medium“, „large“, „x-large“, „xx-large“)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "Името „%2$s“ на <%1$s> е използвано втори път"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Родителят „%2$s“ на <%1$s> не е дефиниран"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Геометрията „%2$s“ на <%1$s> не е дефинирана"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> трябва да указва или геометрия, или родител с геометрия"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "За да бъде алфа стойността валидна, трябва да е указан фон"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Непознат вид „%s“ на елемента <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Непознат style_set „%s“ на елемента <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Видът прозорци „%s“ вече има установен вид на стила"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Елементът <%s> не е позволен под <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Не може да се указват едновременно и двата размера („button_width“, "
+"„button_height“ — височина и широчина на бутоните), и отношението на "
+"размерите им — „aspect_ratio“"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Разстоянието „%s“ е неизвестно"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Пропорцията „%s“ е неизвестна"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Границата „%s“ е непозната"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Елементът <%s> няма атрибут „start_angle“ или „from“"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Елементът <%s> няма атрибут „extent_angle“ или „to“"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Стойността „%s“ не може да се анализира като вид градиент"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Непознато запълване „%s“ за елемента <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Неуспех при анализа на състоянието „%s“ на елемента <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Неуспех при анализа на сянката „%s“ на елемента <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Неуспех при анализа на стрелката „%s“ на елемента <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Няма дефинирани <draw_ops> с име „%s“"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Включването на draw_ops „%s“ тук би предизвикало циклична зависимост"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Непозната позиция „%s“ за елемент на рамката"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Стилът на рамката вече има елемент на позицията %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Няма дефиниран <draw_ops> с името „%s“"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Непозната функция „%s“ за бутона"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"Функцията на бутона „%s“ не съществува в тази версия (%d, а трябва да е %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Непознато състояние „%s“ за бутона"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Стилът на рамката има бутон за функция %s, състояние %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "„%s“ не е валидна стойност за атрибута фокус"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "„%s“ не е валидна стойност за атрибута състояние"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Не е дефиниран стил на име „%s“"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "„%s“ не е валидна стойност за атрибута оразмеряване"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Елементът <%s> не трябва да има атрибут „resize“ за състоянията максимизиран/"
+"засенчен"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Елементът <%s> не трябва да има атрибут „resize“ за състоянието максимизиран"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Вече е указан стил за състояние %s, оразмеряване %s, фокус %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Вече е указан стил за състояние %s, фокус %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Не може да има два draw_ops за елемент <piece> (темата е указала атрибут "
+"draw_ops и елемент <draw_ops> или два елемента)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Не може да има два draw_ops за елемент <button> (темата е указала атрибут "
+"draw_ops и елемент <draw_ops> или два елемента)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Не може да има два draw_ops за елемент <menu_icon> (темата е указала атрибут "
+"draw_ops и елемент <draw_ops> или два елемента)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Най-външният елемент в темата трябва да е <marco_theme>, а не <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Елементът <%s> не е разрешен в елементите name/author/date/description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Елементът <%s> не е позволен в <constant> елемент"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Елементът <%s> не е позволен в елемент distance/border/aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Елементът <%s> не е позволен в елемент с операция за чертане"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Елементът <%s> не е позволен в елемент <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Няма draw_ops за детайл от рамката"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Няма draw_ops за бутон"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Не е позволен текст в елемента <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> е указан два пъти за тази тема"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Неуспех при намирането на валиден файл за темата %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Файлът-тема %s не съдържа коренов <marco_theme> елемент"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Прозорци"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Прозорци/откъсване"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Прозорци/_Диалогов"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Прозорци/_Модален диалогов"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Прозорци/_Инструмент"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Прозорци/_Стартиращ екран"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Прозорци/_Горен док"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Прозорци/_Долен док"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Прозорци/_Ляв док"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Прозорци/_Десен док"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Прозорци/_Всички докове"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Прозорци/Работен _плот"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Това е примерно съобщение в примерен диалогов прозорец"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Фалшив обект на менюто %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Прозорец само с граници"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Лента"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Нормален прозорец на програма"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Диалогова кутия"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Модална диалогова кутия"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Палитра на инструментите"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Откъсване на менюто"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Граница"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Тест за подредбата на бутоните %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g милисекунди за да изрисува една прозоречна рамка"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Употреба: marco-theme-viewer [ИМЕНАТЕМАТА]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Грешка при зареждането на темата: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Темата „%s“ е заредена за %g секунди\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Нормален шрифт на заглавието"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Малък шрифт на заглавието"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Голям шрифт на заглавието"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Изглед на бутоните"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Статистика"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Тук се поставя заглавието на прозорците"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Изчертаха се %d кадъра за %g секунди от страна на клиента (по %g милисекунди "
+"на кадър) и %g секунди нормално време, което включва ресурси от страна на "
+"сървъра X (по %g милисекунди на кадър)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"изразът за проверка на разположението върна TRUE, но зададе състояние за "
+"грешка"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"изразът за проверка на разположението върна FALSE, но не зададе състояние за "
+"грешка"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Очакваше се грешка, но не беше дадена никаква"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Очакваше се грешка %d, но беше дадена %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Не се очакваше грешка, но беше върната една: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "стойността на x бе %d, а се очакваше %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "стойността y бе %d, а се очакваше %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d координатен израз обработен за %g секунди (%g секунди средно)\n"
diff --git a/po/bn.po b/po/bn.po
new file mode 100644
index 00000000..c787f92c
--- /dev/null
+++ b/po/bn.po
@@ -0,0 +1,3570 @@
+# Bengali Translation for Marco 2.4
+# Copyright (C) 2003 Free Software Foundation
+# This file is distributed under the same license as the MARCO package.
+# Dr Anirban Mitra <[email protected]>, 2003.
+# Mahay Alam Khan <[email protected]>, 2005.
+# Samia Niamatullah <[email protected]>, 2005.
+# Loba Yeasmeen <[email protected]>, 2010.
+# Sadia Afroz <[email protected]>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: bn\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-03-25 08:53+0000\n"
+"PO-Revision-Date: 2010-03-28 13:57+0600\n"
+"Last-Translator: Sadia Afroz <[email protected]>\n"
+"Language-Team: Bengali <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 0.9.6\n"
+"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "ডেস্কটপ"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "উইন্ডো ব্যবস্থাপক:"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "ঘন্টা সম্পর্কিত ইভেন্ট"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "উইন্ডোর তথ্য সম্বন্ধে অজানা অনুরোধ: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "\"%s\" উইন্ডোটি সাড়া দিচ্ছে না"
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"অ্যাপ্লিকেশনটি বন্ধ করার জন্য কিছু সময় অপেক্ষা করা যাবে অথবা অ্যাপ্লিকেশনটি বলপূর্বক "
+"বন্ধ করা যাবে।"
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "অপেক্ষা করা হবে (_W)"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "বন্ধ হতে বাধ্য কর (_ধ)"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "এই হোস্টনেম পেতে ভুল হয়েছে: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "কম্পোসিটিং-র জন্য আবশ্যক %s এক্সটেনশন অনুপস্থিত"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "এক্স উইন্ডো সিস্টেম প্রদর্শক %s খুলতে পারছি না\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"প্রদর্শক '%s' এর সঙ্গে সংযোগ বিচ্ছিন্ন হয়ে গেছে;\n"
+"সম্ভবতঃ এক্স সার্ভার বন্ধ করা হয়েছে অথবা আপনি উইন্ডো প্রবন্ধক-কে\n"
+"মেরে বা নষ্ট করে ফেলেছেন।\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "ঘাতক IO ভুল %d(%s) হয়েছে প্রদর্শক '%s' তে\n"
+
+# " উইন্ডো অবৃহদায়ত কর"
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"অন্য একটি প্রোগ্রাম ইতিমধ্যেই %s চাবি %x পরিবর্তক সহ কার্যকারক হিসাবে ব্যবহার করছে\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"\"%s\" চালাতে এই ভুল হয়েছে:\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "আদেশ %d জানা নেই।\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "টার্মিনাল কমান্ড উল্লেখকৃত নয়।\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"মেটাসিটি %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "সেশন ব্যবস্থাপকের সাথে সংযোগ বিচ্ছিন্ন করো"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "চলন্ত উইন্ডো ব্যবস্থাপককে মেটাসিটি দিয়ে বদল করো"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "সেশন ব্যবস্থাপনা আইডি উল্লেখ করো"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "ব্যবহারের জন্য এক্স ডিসপ্লে"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "সংরক্ষণ ফাইল থেকে সেশন চালু করো"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "প্রিন্ট সংস্করণ"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "X-র কল সিঙ্ক্রোনাস করা হবে"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "কম্পোসিটিং ব্যবস্থা চালু করুন"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "কম্পোসিটিং ব্যবস্থা বন্ধ করুন"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"সর্বাধিক মাপে স্থাপিত সাজসজ্জাবিহীন উইন্ডোগুলির ক্ষেত্রে সম্পূর্ণ পর্দায় প্রদর্শন ব্যবস্থা "
+"প্রয়োগ করা হবে না"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "থীম এর ডিরেক্টরি স্ক্যান করতে ব্যর্থ: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"কোনো থীম খুঁজে পেলাম না! নিশ্চিত হোন যে %s আছে এবং তাতে সাধারণ থীমগুলি আছে।\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "আবার চালু করতে পারলাম না: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "জিকন্‌ফ কী '%s' একটি ভুল মান স্থির করা হয়েছে\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "সঞ্চিত মান %d জিকন্‌ফ কী %s এর কার্যকরী সীমা 0 থেকে %d এর বাইরে %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "জিকন্‌ফ কী \"%s\" ভুল প্রকার স্থির করা হয়েছে\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"ভগ্ন প্রোগ্রামের জন্য এড়িয়ে যাওয়ার ব্যবস্থা নিষ্ক্রিয় করা আছে। কিছু প্রোগ্রাম ঠিকভাবে "
+"ব্যবহার নাও করতে পারে\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "ফন্ট বিবরণ \"%s\" যা জিকন্‌ফ কী %s থেকে পাওয়া গেছে পার্স করা যায় নি\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"কন্‌ফিগারেশন ডাটাবেস-এ পাওয়া \"%s\" মাউস বোতামের পরিবর্তক হিসাবে কার্যকরমান নয়\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "কার্যক্ষেত্রের সংখ্যা %d করতে এই ভুল হয়েছে: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "কার্যক্ষেত্র %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" যা কন্‌ফিগারেশন ডাটাবেসে পাওয়া গেছে সেটি কীবাইন্ডিং\"%s\" র জন্য সঠিক মান "
+"নয়\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "কার্যক্ষেত্র %d -র নাম \"%s\" করতে ভুল হয়েছে: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "কার্যক্ষেত্র-র নাম করতে ভুল হয়েছে: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "পর্দা %d (প্রদর্শক '%s') কার্যকর নয়\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"পর্দা %d প্রদর্শক \"%s\" তে ইতিমধ্যেই একটি উইন্ডো প্রবন্ধক আছে; বর্তমান উইন্ডো প্রবন্ধক "
+"কে বদলাবার জন্য --replace বিকল্প ব্যবহার করুন।\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"পর্দা %d প্রদর্শক \"%s\" এর চয়ণিত উইন্ডো প্রবন্ধক কে অধিগ্রহণ করতে পারলাম না\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "পর্দা %d প্রদর্শক \"%s\"এ ইতিমধ্যেই একটি উইন্ডো প্রবন্ধক আছে\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "পর্দা %d প্রদর্শক \"%s\" কে ছাড়তে পারলাম না\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"যে কী বাইন্ডিং দিয়ে উইন্ডোকে বন্ধ করা হয়। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" "
+"বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো "
+"হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;"
+"Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, "
+"তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং থাকবে না।"
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"যে কী বাইন্ডিং দিয়ে উইন্ডোকে বন্ধ করা হয়। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" "
+"বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো "
+"হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;"
+"Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, "
+"তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং থাকবে না।"
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "ডিরেক্টরী তৈরী করতে পারছে না '%s': %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "সেসন ফাইল '%s' কে লেখার জন্য খুলতে পারছে না :%s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "সেসন ফাইল '%s' কে লিখতে ভুল হয়েছে :%s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "সেসন ফাইল '%s' কে বন্ধ করতে ভুল হয়েছে :%s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "সঞ্চিত সেসন ফাইল '%s' কে পড়তে পারি নি :%s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "সঞ্চিত সেসন ফাইল পার্স করতে পারি নি :%s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"<marco_session> বৈশিষ্ট্য দেখা গেছে কিন্তু আমাদের ইতিমধ্যেই সেসন আই ডি আছে"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "<%s> উপাদানে অজানা বৈশিষ্ট্য %s"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "একত্রিত <window> ট্যাগ"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "অজানা উপাদান %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"এই উইন্ডোগুলি \"বর্তমান অবস্থা সঞ্চিত কর \" কে সাহায্য করে না এবং পরবর্তীবার যখন "
+"আপনি লগ্-ইন্ করবেন তখন এদের আপনাকেই চালু করতে হবে"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "ডিবাগ লগ খুলতে ভুল হয়েছে: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "লগ ফাইল %s এফডিওপেন() করতে ভুল হয়েছে: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "লগ ফাইল %sখুলেছি\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "মেটাসিটি ভার্বোস মোডের সহায়তা ছাড়াই কম্পাইল করা হয়েছে\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "উইন্ডো প্রবন্ধক:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "উইন্ডো প্রবন্ধক এ গন্ডগোল:"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "উইন্ডো প্রবন্ধক এর সাবধানবাণী:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "উইন্ডো প্রবন্ধক এর ভুল :"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "মেটাসিটি"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"উইন্ডো %s এটির SM_CLIENT_ID নিজের উপরই স্থির করেছে, কিন্তু ICCCM -এবলা আছে "
+"WM_CLIENT_LEADER উইন্ডো হওয়া উচিত।\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"উইন্ডো %s -এ একটি মেটাসিটি সূত্র স্থির করেছে যা বোঝায় এটির আকার পরিবর্তনযোগ্যনয়, "
+"কিন্তু এর ন্যুনতম আকার %d x%d এবং বৃহত্তম আকার %d x %d বলছে, যা অর্থহীন\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "প্রোগ্রামটি একটি অর্থহীন _NET_WM_PID স্থির করেছে %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s'র উপর)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (সুপার-ইউজার রূপে)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s রূপে)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (অন্য ব্যবহারকারী রূপে)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "অকার্যকর WM_TRANSIENT_FOR উইন্ডো 0x%lx, %s'র জন্য নির্ধারিত হয়েছে।\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"উইন্ডো 0x%lx এর বৈশিষ্ট্য %s আছে\nযার প্রকার %s ফর্ম্যাট %d প্রত্যাশিত "
+"ছিল\nএবং প্রকৄতপক্ষে প্রকার %s ফর্ম্যাট %d n_items %d আছে।\nএটি খুব সম্ভবতঃ "
+"প্রোগ্রামের ভুল, উইন্ডো প্রবন্ধকের নয়\nউইন্ডোটির শিরোনাম=\"%s\" শ্রেণী=\"%s\" "
+"নাম=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "উইন্ডো 0x%2$lx এর বৈশিষ্ট্য %1$s তে অবৈধ ইউটিএফ-৮ আছে\n"
+
+# FIXME msgstr "%s বিশেষত্বটি জানালা 0x%lx -তে অন্যায্য UTF-8 আছে\n
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"উইন্ডো 0x%2$lx এর বৈশিষ্ট্য %1$s তে, তালিকার %3$d বস্তুটির জন্য অবৈধ ইউটিএফ-৮ "
+"আছে\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "কার্যক্ষেত্র 1 এ যাও"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "কার্যক্ষেত্র 2-এ যাও"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "কার্যক্ষেত্র 3-এ যাও"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "কার্যক্ষেত্র 4 এ যাও"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "কার্যক্ষেত্র 5 এ যাও"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "কার্যক্ষেত্র 6 এ যাও"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "কার্যক্ষেত্র 7 এ যাও"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "কার্যক্ষেত্র 8 এ যাও"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "কার্যক্ষেত্র 9 এ যাও"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "কার্যক্ষেত্র 10 এ যাও"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "কার্যক্ষেত্র 11 এ যাও"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "কার্যক্ষেত্র 12 তে যাও"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "বাঁয়ের কার্যক্ষেত্রে যাও"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "ডানদিকের কার্যক্ষেত্রে যাও"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "এর ওপরের কার্যক্ষেত্রে যাও"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "এর নিচের কার্যক্ষেত্রে যাও"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "উইন্ডোগুলির মধ্যে পপ-আপ সহ স্থান পরিবর্তন কর"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "উইন্ডোগুলির মধ্যে পপ-আপ ব্যবহার করে আলোকপাত স্থানান্তর কর"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "উইন্ডোগুলির মধ্যে পপ-আপ সহ স্থান পরিবর্তন কর"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "উইন্ডোগুলির মধ্যে পপ-আপ ব্যবহার করে আলোকপাত স্থানান্তর কর"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "প্যানেলগুলি এবং ডেস্কটপের মধ্যে পপ-আপ সহ স্থান পরিবর্তন কর"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "প্যানেলগুলি এবং ডেস্কটপের মধ্যে পপ-আপ সহ বিপরীতদিকে স্থান পরিবর্তন কর"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "অ্যাপ্লিকেশনের উইন্ডোগুলির মধ্যে তৎক্ষণাত বিপরীতদিকে স্থান পরিবর্তন কর"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "উইন্ডোগুলির মধ্যে তৎক্ষণাত বিপরীতদিকে স্থান পরিবর্তন কর"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "উইন্ডোগুলির মধ্যে তৎক্ষণাত বিপরীতদিকে স্থান পরিবর্তন কর"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "উইন্ডোগুলির মধ্যে তৎক্ষণাত বিপরীতদিকে স্থান পরিবর্তন কর"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "প্যানেলগুলি এবং ডেস্কটপের মধ্যে তৎক্ষণাত স্থান পরিবর্তন কর"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "প্যানেলগুলি এবং ডেস্কটপের মধ্যে তৎক্ষণাত বিপরীতদিকে স্থান পরিবর্তন কর"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "সমস্ত উইন্ডো লুকিয়ে ডেস্কটপে আলোকপাত কর"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "প্যানেল মেনু দেখাও"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "প্যানেল রান অ্যাপলিকেশন ডায়ালগ দেখাও"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "পর্দার ছবি নাও"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "একটি উইন্ডোর ছবি নাও"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "টার্মিনাল চালাও"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "উইন্ডো মেনু কার্যকর কর"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "পূর্ণপর্দা স্থিতি বদল কর "
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "বৃহদায়ত স্থিতি বদল কর"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "উইন্ডোটিকে অন্য উইন্ডোর নিচে নামাও"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "উইন্ডো যথাসম্ভব বড় করো"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "উইন্ডো নতুন আকার করো"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "ছায়াবৃত স্থিতি বদল কর"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "উইন্ডো আড়াল করো"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "উইন্ডো বন্ধ কর"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "উইন্ডো সরাও"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "উইন্ডো নতুন আকার করো"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "উইন্ডো সমস্ত কার্যক্ষেত্রে রাখা বদল কর"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র ১-এ পাঠাও"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র 2-তে পাঠাও"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র 3-এ পাঠাও"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র 4-তে পাঠাও"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র 5-এ পাঠাও"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র 6-এ পাঠাও"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র 7-এ পাঠাও"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র 8-এ পাঠাও"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র 9-এ পাঠাও"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র 10-তে পাঠাও"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র 11-তে পাঠাও"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "উইন্ডোটিকে কার্যক্ষেত্র 12-তে পাঠাও"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "উইন্ডোটিকে বাঁদিকের কার্যক্ষেত্র পাঠাও"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "উইন্ডোটিকে ডানদিকের কার্যক্ষেত্র পাঠাও"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "উইন্ডোটিকে ওপরের কার্যক্ষেত্র পাঠাও"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "উইন্ডোটিকে নিচের কার্যক্ষেত্র পাঠাও"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "উইন্ডোটি চাপা পড়ে থাকলে ওপরে ওঠাও, নইলে নিচে নামাও"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "উইন্ডোটিকে অন্য জানালার ওপরে ওঠাও"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "উইন্ডোটিকে অন্য উইন্ডোর নিচে নামাও"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "উইন্ডোকে উল্লম্বভাবে পুরো পর্দা জুড়ে করার জন্য"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "উইন্ডোকে আনুভুমিকভাবে পুরো পর্দা জুড়ে করার জন্য"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "উইন্ডোটিকে বাঁদিকের কার্যক্ষেত্র পাঠাও"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "উইন্ডোটিকে ডানদিকের কার্যক্ষেত্র পাঠাও"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "পর্দার নীচে বাঁদিকের কোণে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "পর্দার নীচে ডানদিকের কোণে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "পর্দার উপরের অংশে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "পর্দার নীচের অংশে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "পর্দার ডানদিকের অংশে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "পর্দার ডানদিকের অংশে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "উইন্ডোটিকে নিচের কার্যক্ষেত্র পাঠাও"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(কার্যকরী নয়) আপনি প্রোগ্রামের মধ্যে প্রভ্রমন করতে পারেন, উইন্ডোগুলির মধ্যে নয়"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"এটি উইন্ডোর শিরোনামবারের ফন্ট এর বিবরক বাক্যাংশ. অবশ্য এই বিবরণে দেওয়া "
+"ফন্টের আকার তখনই ব্যবহার হবে যদি titlebar_font_size পছন্দটি0 স্থির করা "
+"আছে।. তাছাড়া, যদি titlebar_uses_desktop_font পছন্দটি ঠিক করা থাকে,তাহলে এটি "
+"কার্যকর হবে না। সাধারনতঃ, titlebar_font সুনিশ্চিত করা থাকে নাফলে "
+"titlebar_uses_desktop_font পছন্দটি ভুল থাকলেও মেটাসিটি ডেস্কটপেরফন্টই "
+"শিরোনামবারে ব্যবহার করে থাকে"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "শিরোনাম বারে দুবার ক্লিক করলে যা হবে"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "শিরোনাম বারে দুবার ক্লিক করলে যা হবে"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "শিরোনাম বারে দুবার ক্লিক করলে যা হবে"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "শিরোনামবারে বোতামের সজ্জা"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"শিরোনামবারে বোতামের সজ্জা। এর মান একটি বাক্যাংশ হবে, যেমন "
+"\"menu:minimize,maximize,close\"; উইন্ডোর বাঁ কোণ এবং ডান কোণকেকোলন (:) দ্বারা "
+"পৃথক করা হবে, বোতামের নামগুলি কমা দ্বারা আলাদা করা হবে।কোন বোতামের নাম "
+"দুবার দেওয়া যাবেনা। অজানা বোতামের নাম নিশব্দে অবহেলাকরা হবে যাতে মেটাসিটি-র "
+"পুরোনো সংস্করনকে নষ্ট না করেই নতুন সংস্করনে নতুন নতুন বোতাম যোগ করা যায়।"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "আপনা থেকেই আলোকপাতিত উইন্ডোটিকে উঁচু করবে"
+
+#: ../src/marco.schemas.in.in.h:9
+#| msgid ""
+#| "Clicking a window while holding down this modifier key will move the "
+#| "window (left click), resize the window (middle click), or show the window "
+#| "menu (right click). The left and right operations may be swapped using "
+#| "the \"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" "
+#| "or \"&lt;Super&gt;\" for example."
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"এই মডিফায়ার কীটি চেপে রেখে উইন্ডোতে ক্লিক করলে উইন্ডোটি সরবে (বাম ক্লিক), "
+"উইন্ডোর আকার পরিবর্তন করা যাবে (মধ্যম ক্লিক), অথবা উইন্ডোর মেনু প্রদর্শন করা "
+"হবে (ডান ক্লিক)। \"resize_with_right_button\" কী ব্যবহার করে মধ্যম ও ডান "
+"ক্লিকের অপারেশন বদলানো যায়। উদাহরণস্বরূপ, মডিফায়ার এরকমভাবে ব্যক্ত করা যায় "
+"\"&lt;Alt&gt;\" বা \"&lt;Super&gt;\"।"
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "সুনির্দিষ্ট চাবি টিপলে যে আদেশ চালানো হবে"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "কম্পোসিটিং ব্যবস্থাপক"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "নতুন উইন্ড উজ্জ্বল করার প্রণালী নিয়ন্ত্রণ করুন"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "বর্তমান থীম"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "উইন্ডো তুলে ধরায় কত মিলিসেকেন্ড দেরি হবে"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+"কমপোসিটিং ব্যবস্থাপক রূপে Marco প্রয়োগ করা হবে কি না তা ধার্য করা হবে।"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"এটি ঠিক করে যে প্রোগ্রাম বা সিস্টেম শ্রবণযোগ্য 'বীপ' তৈরী করতে পরবে কি না;নিঃশব্দ "
+"'বীপ' এর জন্য একে 'দৃশ্যঘন্টী'-র সঙ্গে ব্যবহার করা যেতে পারে."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "পুরোনো বা ভাঙ্গা প্রোগ্রামের জন্য যে সমস্ত কুবৈশিষ্ট আছে তা বন্ধ কর"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "'দৃশ্যঘন্টী' কার্যকর করা হোক"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"যদি ঠিক হয় এবং আলোকপাত এর প্রকার \"স্লপী\" বা \"মাউস\" হয়তাহলে আলোকপাতিত "
+"উইন্ডোটি কিছুক্ষন দেরির পর আপনা থেকেইওপরে উঠে আসবে। (কতটা দেরী হবে তা "
+"auto_raise_delay পছন্দ দ্বারাসুনির্দিষ্ট হবে)"
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"যদি ঠিক হয়, তাহলে শিরোনামবার এর ফন্ট অগ্রাহ্য কর, এবং সাধারন "
+"প্রোগ্রামেব্যবহার্য ফন্ট উইন্ডোরশিরোনামকে ব্যবহার কর"
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"যদি সত্য করা থাকে, মেটাসিটি ব্যবহারকারীকে \"সরাসরি পরিবর্তন\", ওয়্যারফ্রেম "
+"ব্যবহার, এনিমেশন এড়ানো বা অন্যকোনভাবে কম ফিডব্যাক ও কম বোধ প্রদান করবে। এটি "
+"অনেক ব্যবহারকারীর জন্য একটি লক্ষ্যনীয় ব্যবহারযোগ্যতা হ্রাসকরণ, কিন্তু পুরাতন "
+"অ্যাপলিকেশন এবং টার্মিনাল সার্ভারকে কাজের অনুমতি দেয় যখন তারা অন্যথায় অবাস্তব হয়ে "
+"পড়ে। তবে, ওয়্যারফ্রেম বৈশিষ্ট্য নিস্ক্রিয় থাকে যখন ডেস্কটপের আজগুবি প্রদর্শন এড়ানোর "
+"জন্য প্রবেশাধিকার অন করা হয়।"
+
+# fuzzy
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"যদি ঠিক হয়, তাহলে মেটাসিটি অ্যাপ্লিকেশন ভিত্তিক কাজ করবে, উইন্ডো ভিত্তিক নয় "
+"ধারনাটা একটু জটিল, কিন্তু সাধারনভাবে অ্যাপ্লিকেশন ভিত্তিক অবস্থা বেশী ম্যাক্ এর মত "
+"বেশী উইন্ডোজ এর মত কম। অ্যাপ্লিকেশন ভিত্তিক অবস্থায় আপনি যখন একটি উইন্ডোতে "
+"আলোকপাতকরেন, ঐ অ্যাপ্লিকেশনের সমস্ত উইন্ডো উত্তোলিত হবে। তাছাড়া, অ্যাপ্লিকেশন "
+"ভিত্তিক অবস্থায়আলোকপাতকারী ক্লিক উইন্ডোর মধ্য দিয়ে অন্য অ্যাপ্লিকেশনে স্থানান্তরিত হয় "
+"না। এই স্থিতিরঅস্তিত্ব প্রশ্নযোগ্য, কিন্তু অ্যাপ্লিকেশন ভিত্তিক বনাম উইন্ডো ভিত্তিক "
+"স্থিতির প্রতিটি বৈশিষ্ট্য সুনির্ধারিত করা, যেমন ক্লিকের মধ্য দিয়ে সঞ্চারিত হবে কি না, "
+"তা স্থির করার চেয়ে এটি ভালো। তাছাড়া, অ্যাপ্লিকেশন ভিত্তিক বর্তমানে বেশীর ভাগই "
+"কার্যকর নয়"
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "যদি সত্য থাকে, সম্পদ কম ব্যবহারের সুযোগ নেয়া যাবে"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "উইন্ডোতে পরিবর্তিত ক্লিক কার্যের জন্য ব্যবহৃত পরিবর্তক"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "কার্যক্ষেত্রের নাম"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "কার্যক্ষেত্রের সংখ্যা"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"কার্যক্ষেত্রের সংখ্যা। এটি শুন্যের চেয়ে বেশী হতে হবে, এবং একটি নির্দিষ্ট সর্বোচ্চসংখ্যা "
+"থাকবে (যাতে কেউ সাড়ে তিন কোটি কার্যক্ষেত্র চেয়ে দুর্ঘটনাবশতঃ আপনার ডেস্কটপকে নষ্ট "
+"না করে ফেলে)।"
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "একটি সুনির্দিষ্ট আদেশ চালাও"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"\"mouse_button_modifier\"-এ চিহ্নিত কি টিপে ধরে, ডানদিকের বাটন সহযোগে মাপ "
+"পরিবর্তন ও মধ্যম বাটন সহযোগে মেনু প্রদর্শন করার জন্য এই মানটি true (সত্য) ধার্য করুন; "
+"বিপরীত বৈশিষ্ট্য সহযোগে কার্যকরী করার জন্য মান false (সত্য নয়) ধার্য করুন।"
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"এই বিকল্পের মান false (সত্য নয়) নির্ধারণ করা হলে ত্রুটিপূর্ণ আচরণ দেখা দিতে পারে, "
+"এই কারণে ডিফল্ট মান true (সত্য) পরিবর্তন না করা বাঞ্ছনীয়। কিছু কর্মের (উদাহরণ, "
+"ক্লায়েন্ট অঞ্চলে ক্লিক, উইন্ডোর মাপ পরিবর্তন অথবা স্থানান্তর) পার্শ্ব প্রতিক্রিয়া রূপে "
+"স্বাভাবিকভাবে উইন্ডো প্রদর্শন করা হয়। এই বিকল্পটি false (সত্য নয়) ধার্য করা "
+"অতিমাত্রায় অবাঞ্ছিত এবং এর ফলে ব্যবহারকারীদের দ্বারা সঞ্চালিত অন্যান্য কর্মের কারণে "
+"উইন্ডো দৃশ্যমান করা হবে না ও অন্যান্য অ্যাপ্লিকেশন থেকে আগত অনুরোধ অগ্রাহ্য করা হবে। "
+"অধিক বিবরণের জন্য http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6 দেখুন। "
+"এই বিকল্পরে মান false (সত্য নয়) হলেও বিভিন্ন প্রক্রিয়ার, উইন্ডো দৃশ্যমান করা যাবে: "
+"উইন্ডোর মধ্যে যে কোনো স্থানে alt-left-click করলে, উইন্ডোর সাজসজ্জার জন্য ব্যবহৃত "
+"স্থানে স্বাভাবিক ক্লিক করলে, অথবা পেজার থেকে উৎপন্ন বিশেষ বার্তা দ্বারা যেমন "
+"কর্মতালিকার অ্যাপ্লেট থেকে প্রাপ্ত সক্রিয়করণের অনুরোধ। বর্তমানে click-to-focus মোডে "
+"এই বিকল্পটি নিষ্ক্রিয় করা হয়েছে। উল্লেখ্য, raise_on_click বিকল্পের মান false (সত্য "
+"নয়) হলে উইন্ডো দৃশ্যমান করার বিভিন্ন প্রক্রিয়াগুলির মধ্যে অ্যাপ্লিকেশনের প্রোগ্রাম দ্বারা "
+"উইন্ডো দৃশ্যমান করার অনুরোধগুলি অন্তর্ভুক্ত করা হয় না; অনুরোধের কারণ নির্বিশেষে এই ধরনে "
+"সকল অনুরোধ উপেক্ষা করা হবে। এই বৈশিষ্ট্য নিষ্ক্রিয় করার ফলে কোনো অ্যাপ্লিকেশন না "
+"চালানো সম্ভব হলে, অ্যাপ্লিকেশন ডিভেলপররা সংশ্লিষ্ট ব্যবহারকারীদেরকে এই বিকল্পটি "
+"পুনরায় true (সত্যা) হিসাবে নির্ধারণ করার প্রস্তাব দিন, অন্যথা এই \"বাগ\" সমাধান "
+"করা সম্ভব নয়।"
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"কয়েকটি অ্যাপ্লিকেশন দ্বারা সুনির্দিষ্ট বৈশিষ্ট্যের মান অগ্রাহ্য করা হয় যার "
+"ফলে উইন্ডো ব্যবস্থাপক ক্ষতিগ্রস্ত হয়। এই বিকল্পের দ্বারা Marco "
+"সুস্পষ্টরূপে সঠিক চালনার মোডে স্থাপিত হবে যার ফলে ইউজার ইন্টারফেস "
+"তুলনামূলকরূপে স্থায়ী হবে যদি কোনো অ্যাপ্লিকেশনের গতিবিধি উশৃঙ্খল না হয়ে "
+"থাকে।"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "সিস্টেম ঘন্টী শোনা যাবে"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"এটি মেটাসিটিকে বলে দেবে কিভাবে সিস্টেম ঘন্টী বা অন্য কোনো প্রোগ্রামের ঘন্টী "
+"বাজলেসেটা কিভাবে দৃশ্যতঃ প্রকাশ করা হবে। বর্তমানে এর দুটি কার্যকরী মান আছে, "
+"\"ফুলস্ক্রিন\",যা পুরো পর্দা জুড়ে একটি সাদা-কালো ঝলক দেখাবে, এবং "
+"\"ফ্রেম_ফ্ল্যাশ\", যাতে যে প্রোগ্র্যামটিঘন্টির সংকেত পাঠিয়েছে তার শিরোনামবারটি "
+"ঝলকিয়ে উঠবে। যদি কোন প্রোগ্রামটি ঘন্টী বাজিয়েছেতা জানা না থাকে (ডিফল্ট "
+"\"সিস্টেম বীপ\"-এর ক্ষেত্রে যেমন হয়ে থাকে), সেক্ষেত্রে বর্তমানে আলোকপাতিত "
+"উইন্ডোটির শিরোনামবার ঝলক দেবে।"
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N চাবিগুলিতে এই আদেশগুলিরজন্য "
+"সুনির্দিষ্ট চাবি স্থির করা আছে। run_command_N এর জন্য স্থিরিকৃত চাবি "
+"টিপলেcommand_N চলবে।"
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"এই /apps/marco/global_keybindings/run_command_screenshot কী টি একটি কী-"
+"বাইন্ডিং নির্দেশ করে যা এই সেটিং দ্বারা স্থিরীকৄত আদেশ চালাবে।"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"এই /apps/marco/global_keybindings/run_command_window_screenshot কী টি "
+"একটি কী-বাইন্ডিং নির্দেশ করে যা এই সেটিং দ্বারা স্থিরীকৄত আদেশ চালাবে।"
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"যে সুনির্দিষ্ট চাবি টিপলে /apps/marco/keybinding_commands এরঐ সংখ্যক আদেশ "
+"চালানো হয়। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য "
+"করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি "
+"এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এই জন্য কোন সুনির্দিষ্ট "
+"চাবি থাকবে না"
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "একটি কার্যক্ষেত্রের নাম"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "পর্দার ছবি তোলার (স্ক্রীনশট) আদেশ"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "থীম উইন্ডোর প্রান্ত, শিরোনামবার, ইত্যাদির চেহারা স্থির করে"
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"যদি auto_raise সত্যি হয় তাহলে উইন্ডো উপরে তোলায় যে দেরী হবে। এইদেরী সেকেন্ডের "
+"সহস্রাংশে দেওয়া আছে।"
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"জানালার আলোকপাত স্থিতি নির্ধারণা করে কিভাবে উইন্ডো কার্যকর করা হবে। এর তিনটি "
+"সম্ভাবিতমান আছে; \"ক্লিক\" মানে জানালায় ক্লিক করলে আলোকপাতিত হবে, \"স্লপী\" মানে "
+"মাউস জানালায়ঢুকলে সেটি আলোকপাতিত হবে এবং \"মাউস\" মানে মাউস জানালায় ঢুকলে "
+"আলোকপাতিতহবে এবং মাউস সরে গেলে আলোকপাত চলে যাবে।"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "উইন্ডো ছবি তোলার (ঊইন্ডো স্ক্রীনশট) আদেশ"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"শিরোনাম-বারের উপর দুইবার ক্লিক করার সম্ভাব্য ফলাফল এই বিকল্প দ্বারা নির্ধারিত হয়। "
+"বর্তমানে বৈধ বিকল্পগুলি হল: উইন্ডোকে ছায়াবৃত/ছায়ামুক্ত করার জন্য 'toggle_shade', "
+"সর্বাধিক মাপে উইন্ডো স্থাপন অথবা সর্বাধিক মাপ বাতিল করার জন্য 'toggle_maximize', "
+"চিহ্নিত দিশায় সর্বাধিক মাপে উইন্ডো স্থাপন অথবা সর্বাধিক মাপ বাতিল করার জন্য "
+"'toggle_maximize_horizontally' ও 'toggle_maximize_vertically', সর্বনিম্ন মাপে "
+"উইন্ডো স্থাপন করার জন্য 'minimize', উইন্ডো গুটিয়ে ফেলার জন্য 'shade', উইন্ডোর মেনু "
+"প্রদর্শনের জন্য 'menu', অন্যান্য সকল উইন্ডোর নীচে উইন্ডোটি স্থাপন করার জন্য 'lower', "
+"ও 'none' ধার্য করা হলে কিছু করা হবে না।"
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"শিরোনাম-বারের উপর মাউসের মধ্যম বাটন সহযোগে ক্লিক করার সম্ভাব্য ফলাফল এই বিকল্প "
+"দ্বারা নির্ধারিত হয়। বর্তমানে বৈধ বিকল্পগুলি হল: উইন্ডোকে ছায়াবৃত/ছায়ামুক্ত করার জন্য "
+"'toggle_shade', সর্বাধিক মাপে উইন্ডো স্থাপন অথবা সর্বাধিক মাপ বাতিল করার জন্য "
+"'toggle_maximize', চিহ্নিত দিশায় সর্বাধিক মাপে উইন্ডো স্থাপন অথবা সর্বাধিক মাপ "
+"বাতিল করার জন্য 'toggle_maximize_horizontally' ও "
+"'toggle_maximize_vertically', সর্বনিম্ন মাপে উইন্ডো স্থাপন করার জন্য 'minimize', "
+"উইন্ডো গুটিয়ে ফেলার জন্য 'shade', উইন্ডোর মেনু প্রদর্শনের জন্য 'menu', অন্যান্য সকল "
+"উইন্ডোর নীচে উইন্ডোটি স্থাপন করার জন্য 'lower', ও 'none' ধার্য করা হলে কিছু করা "
+"হবে না।"
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"শিরোনাম-বারের উপর মাউসের ডানদিকের বাটন সহযোগে ক্লিক করার সম্ভাব্য ফলাফল এই "
+"বিকল্প দ্বারা নির্ধারিত হয়। বর্তমানে বৈধ বিকল্পগুলি হল: উইন্ডোকে ছায়াবৃত/ছায়ামুক্ত "
+"করার জন্য 'toggle_shade', সর্বাধিক মাপে উইন্ডো স্থাপন অথবা সর্বাধিক মাপ বাতিল "
+"করার জন্য 'toggle_maximize', চিহ্নিত দিশায় সর্বাধিক মাপে উইন্ডো স্থাপন অথবা "
+"সর্বাধিক মাপ বাতিল করার জন্য 'toggle_maximize_horizontally' ও "
+"'toggle_maximize_vertically', সর্বনিম্ন মাপে উইন্ডো স্থাপন করার জন্য 'minimize', "
+"উইন্ডো গুটিয়ে ফেলার জন্য 'shade', উইন্ডোর মেনু প্রদর্শনের জন্য 'menu', অন্যান্য সকল "
+"উইন্ডোর নীচে উইন্ডোটি স্থাপন করার জন্য 'lower', ও 'none' ধার্য করা হলে কিছু করা "
+"হবে না।"
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"নতুন উইন্ডোর উপর ফোকাস করার জন্য বিভিন্ন অতিরিক্ত নিয়ন্ত্রণ ব্যবস্থা এই বিকল্প দ্বারা "
+"ধার্য করা হয়। এই ক্ষেত্রে দুটি সম্ভাব্য মান প্রয়োগ করা যাবে; ব্যবহারকারীর ক্ষেত্রে "
+"ধার্য স্বাভাবিক ফোকাস মোডের জন্য \"smart\", ও টার্মিন্যাল থেকে আরম্ভ করা উইন্ডোগুলির "
+"জন্য ফোকাস ধার্য না করার উদ্দেশ্যে \"strict\"।"
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"এটি যখ্ন কোন প্রোগ্রাম বা সিস্টেম একটি 'ঘন্টী' বা 'বীপ' বাজায়, তার একটি দৃশ্য "
+"সংকেতচালু করবে; যাঁরা কানে কম শোনেন তাঁদের জন্য, বা আওয়াজপূর্ণ জায়গায়, অথবা "
+"'শ্রবণযোগ্যঘন্টি' বন্ধ থাকলে এটি কাজে লাগবে।"
+
+# "অবৃহদায়ত কর"
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "উইন্ডোর শিরোনামে সাধারণ সিস্টেম ফন্ট ব্যবহার কর"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "দৃশ্য ঘন্টীর প্রকার"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "ব্যবহারকারীদের দ্বারা সঞ্চালিত কর্মের ফলে উইন্ডো বড় করা হবে কি না"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "ডানদিকের বাটন প্রয়োগ করে মাপ পরিবর্তন করা হবে কি না"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "উইন্ডোর আলোকপাতের প্রকার"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "উইন্ডোর শিরোনাম ফন্ট"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "ব্যবহার: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "উইন্ডো বন্ধ করো"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "উইন্ডো পছন্দতালিকা"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "ছোটো কর"
+
+# "উইন্ডো ক্ষুদ্রায়ত কর"
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "পুরো পর্দা জুড়ে কর"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "উইন্ডো নতুন আকার করো"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "গোটাও (_ও)"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "উইন্ডো বন্ধ করো"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "উইন্ডো সর্বোচ্চ স্তরে স্থাপন করা হবে"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "উইন্ডো সর্বোচ্চ স্তর থেকে সরিয়ে ফেলা হবে"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "শুধুমাত্র দৃশ্যমান কার্যক্ষেত্রে (_দ)"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "উইন্ডো সমস্ত কার্যক্ষেত্রে রাখা বদল কর"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "ছোট করো (_ছ)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "পুরো বড় করো (_ব)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "মাঝারি করো (_ব)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "গোটাও (_ও)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "খোলো (_ল)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "সরাও (_স)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "আকার পরিবর্তন করো (_আ)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "পর্দার উপর শিরোনামের বার স্থানান্তর করুন (_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "সর্বদা উপরে (_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "শুধুমাত্র দৃশ্যমান কার্যক্ষেত্রে (_দ)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "শুধুমাত্র এই কার্যক্ষেত্রে (_শ)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "বায়ের কার্যক্ষেত্র যাও (_ব)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "ডানের কার্যক্ষেত্র যাও (_ড)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "উপরের কার্যক্ষেত্র যাও (_উ)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "নীচের কার্যক্ষেত্র যাও (_ন)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "বন্ধ করো (_ক)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "কার্যক্ষেত্র %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "কার্যক্ষেত্র ১০ (_০)"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "কার্যক্ষেত্র %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "উইন্ডোটিকে অন্য কার্যক্ষেত্র পাঠাও (_অ)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "শিফ্ট"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "কন্ট্রোল"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "অল্ট্"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "মেটা"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "সুপার"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "হাইপার"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "মড ২"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "মড ৩"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "মড ৪"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "মড ৫"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d X %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "শীর্ষ"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "তলা"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "বাম"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "ডান"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "কাঠামোর জ্যামিতি মাপ \"%s\" সুনির্দিষ্ট করে নি"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "কাঠামোর জ্যামিতি মাপ \"%s\" প্রান্ত \"%s\"র জন্য সুনির্দিষ্ট করে নি"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "বোতামের আকার অনুপাত %g যুক্তিযুক্ত নয়"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "কাঠামোর জ্যামিতি বোতামের আকার বলে নি"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "গ্রেডিয়েন্টে অন্ততঃ দুটি রং থাকতে হবে"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"জিটিকে রঙের স্পেসিফোকেশন -এ স্টেটটি বন্ধনীর মধ্যে থাকতেই হবে, যেমন gtk:fg"
+"[NORMAL] যেখানে NORMAL হল স্টেট, \"%s\" প্রক্রিয়ণ করতে পারলাম না"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"জিটিকে রঙের স্পেসিফোকেশন -এ স্টেটটির শেষে একটি বন্ধনী থাকতেই হবে, যেমন gtk:fg"
+"[NORMAL] যেখানে NORMAL হল স্টেট, \"%s\" প্রক্রিয়ণ করতে পারলাম না"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "রঙের স্পেসিফোকেশন -এ স্টেট \"%s\" বুঝতে পারলাম না"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "রঙের স্পেসিফোকেশন -এ রঙ উপাদান \"%s\" বুঝতে পারলাম না"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"মিশ্রিত রঙের বিন্যাস হল \"blend/bg_color/fg_color/alpha\", \"%s\" এই বিন্যাসে "
+"খাপ খায় না"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "মিশ্রিত রঙের আলফা মান \"%s\"কে প্রক্রিয়ণ করতে পারি নি"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "মিশ্রিত রঙের আলফা মান \"%s\" 0.0 এবং 1.0 মধ্যে নয়"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"ছায়ার বিন্যাস হল \"shade/base_color/factor\", \"%s\" এই বিন্যাসে খাপ খায় না "
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "ছায়াবৃত রঙের শেড ফ্যক্টর \"%s\" কে প্রক্রিয়ণ করতে পারি নি"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "শেড ফ্যক্টর \"%s\" যা ছায়াবৃত রঙে আছে তা ঋনাত্মক"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr " রং \"%s\" কে প্রক্রিয়ণ করতে পারি নি"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "অবস্থানের সমীকরণ এ অক্ষর '%s' আছে যা চলবে না"
+
+# what is bengali for Coordinate expression ? অবস্থানের মান or অবস্থানের সমীকরণ?
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "অবস্থানের সমীকরণ এ দশমিকযুক্ত সংখ্যা '%s' আছে যাপ্রক্রিয়া করা যায় নি"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "অবস্থানের সমীকরণ এ পূর্ণসংখ্যা '%s' আছে যা প্রক্রিয়া করা যায় নি"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "অবস্থানের সমীকরণ এ এই লেখার শুরুতে একটি অজানা কার্য আছে:\"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "অবস্থানের সমীকরণ খালি বা বোঝা যাচ্ছে না"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "অবস্থানের সমীকরণ এ শুন্য দ্বারা বিভাজন হচ্ছে"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "অবস্থানের সমীকরণ দশমিকযুক্ত সংখ্যায় mod কার্য করার চেষ্টা করে"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "অবস্থানের সমীকরণ এ একটি কার্য \"%s\" রয়েছে যেখানে একটি কারক অপেক্ষিত ছিল"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "অবস্থানের সমীকরণ এ একটি কারক রয়েছে যেখানে কার্য অপেক্ষিত ছিল"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "অবস্থানের সমীকরণ কারকের পরিবর্তে কার্য দিয়ে শেষ হয়েছে"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"অবস্থানের সমীকরণ এ কার্য \"%c\" এর আগে কার্য \"%c\" আছে এবংতার মধ্যে কোনও কারক "
+"নেই"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "অবস্থানের সমীকরণ এ একটি অজানা পরিবর্তক বা ধ্রুবক \"%s\" আছে"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "অবস্থানের সমীকরণ খালি বা বোঝা যাচ্ছে না"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "অবস্থানের সমীকরণ এ একটি শেষের বন্ধনী আছে কিন্তু শুরুর বন্ধনী নেই"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "অবস্থানের সমীকরণ এ একটি শুরুর বন্ধনী আছে কিন্তু শেষের বন্ধনী নেই"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "অবস্থানের সমীকরণ এ কোনও কারক বা কার্য আছে বলে মনে হচ্ছে না"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "থীমে একটি সমীকরণ আছে যা একটি গন্ডগোল করেছে: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"এই থীমের জন্য <button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> "
+"অবশ্যই নির্ধারিত করতে হবে"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> নিখোঁজ"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "থীম \"%s\" লোড করতে পারি নি: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr " <%s> টি থীম \"%s\" এর জন্য স্থির করা নেই"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"উইন্ডো প্রকার \"%s\" যা থীম \"%s\"তে আছে তাতে কোন ফ্রেমের প্রকার ঠিক করা নেই,"
+"একটি <window type=\"%s\" style_set=\"whatever\"/> অংশ যোগ করতে হবে"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"ব্যবহারকারী দ্বারা স্থির করা ধ্রুবক সব সময় বড় হাতের অক্ষর দিয়ে শুরু হবে; \"%s\" তা "
+"হয় নি"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "ধ্রুবক \"%s\" ইতিমধ্যেই স্থির করা আছে"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "উপাদান <%s> তে \"%s\" বৈশিষ্ট্য নেই"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "লাইন %d অক্ষর %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "বৈশিষ্ট্য \"%s\" একই উপাদান <%s> তে দুবার ব্যবহার হয়েছে"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "বৈশিষ্ট্য \"%s\" উপাদান <%s> তে এই প্রসঙ্গে চলবে না"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" কে পুর্ণসংখ্যা হিসাবে প্রক্রিয়া করতে পারি নি"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "শেষ অক্ষরগুলি \"%s\" যা বাক্যাংশ \"%s\" তে আছে বুঝতে পারিনি"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "পূর্ণসংখ্যা %ld অবশ্যই ধনাত্মক হতে হবে"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "পূর্ণসংখ্যা %ld অত্যন্ত বড়, বর্তমান সর্বাধিক হল %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\"কে দশমিকযুক্ত সংখ্যা হিসাবে প্রক্রিয়ণ করতে পারলাম না"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "বুলিয়ান এর মান \"true\" বা \"false\" হবে, \"%s\" নয়"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "কোণের মান 0.0 থেকে 360.0 মধ্যে হবে, এটি ছিল %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "আলফার মান 0.0 (অদৃশ্য) থেকে 1.0 (সম্পূর্ণ অস্বচ্ছ) হতে হবে, ছিল %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"শিরোনামের স্কেল এর মান \"%s\" গ্রহনযোগ্য নয়। ( এই গুলির মধ্যে একটি হতে হবে - "
+"xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> এর নাম \"%s\" দ্বিতীয়বার ব্যবহার হয়েছে "
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> পেরেন্ট \"%s\" সুনির্দিষ্ট নয়"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> জ্যামিতি \"%s\" সুনির্দিষ্ট নয়"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"হয় <%s> একটি জ্যামিতি সুনির্দিষ্ট করবে অথবা এর একটি মুল উইন্ডো যার জ্যামিতি আছে তা "
+"নির্দিষ্ট করবে।"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "আল্ফার কোনো অর্থপূর্ণ মান ধার্য করার জন্য পটভূমির মান উল্লেখ করা আবশ্যক"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "অজানা প্রকার \"%s\" উপাদান <%s>তে"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "অজানা স্টাইল সেট \"%s\" উপাদান <%s>তে"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "উইন্ডো প্রকার \"%s\" -র জন্য ইতিমধ্যেই স্টাইল সেট বন্টিত করা আছে"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "উপাদান <%s> <%s> এর নিচে দেওয়া যাবে না"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr "বোতমের দৈর্ঘ্য/প্রস্থ এবং বোতামের আকারের অনুপাত দুটিই সুনির্দিষ্ট করা যাবে না"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "দুরত্ব \"%s\" জানা নাই"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "আকার অনুপাত \"%s\" জানা নাই"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "প্রান্ত \"%s\" জানা নেই"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "উপাদান <%s> তে \"start_angle\" বৈশিষ্ট্য নেই"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "উপাদান <%s> তে \"extent_angle\" বৈশিষ্ট্য নেই"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "গ্রেডিয়েন্টের জন্যে \"%s\" মান বুঝতে পারি নি"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "ফিল টাইপ \"%s\" <%s> উপাদানের জন্যে বুঝতে পারি নি"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "অবস্থা \"%s\" <%s> উপাদানের জন্যে বুঝতে পারি নি"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "শ্যডো \"%s\" <%s> উপাদানের জন্যে বুঝতে পারি নি"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "অ্যারো \"%s\" <%s> উপাদানের জন্যে বুঝতে পারি নি"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "\"%s\" নামক কোন <draw_ops> স্থির করা নেই"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "এখানে \"%s\" draw_ops ঢোকালে একটি চক্রাকার রেফারেন্স সৃষ্টি হবে"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "ফ্রেমের টূকরো অজানা অবস্থান \"%s\""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "ফ্রেম স্টাইল -এ অবস্থান %s -এ ইতিমধ্যেই একটি টুকরো আছে"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "\"%s\" নামের কোনো <draw_ops> স্থির করা নেই"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "বোতামের জন্য অজানা কার্য \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "\"%s\" ফাংশানটি এই সংস্করণে (%d, %d আবশ্যক) উপস্থিত নেই"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "বোতামের জন্য অজানা স্থিতি \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "কার্য %s অবস্থা %s জন্য বোতাম কাঠামোর স্টাইলে ইতিমধ্যেই আছে"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" ফোকাস বৈশিষ্ট্যর মান হিসাবে গ্রাহ্য নয়"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\"স্থিতি বৈশিষ্ট্যর মান হিসাবে গ্রাহ্য নয়"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" নামক স্টাইল ইতিমধ্যেই স্থির করা আছে"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "আকার পরিবর্তন বৈশিষ্ট্যর জন্য \"%s\" গ্রাহ্য মান নয়"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"উপাদান <%s> তে \"resize\" বৈশিষ্ট্য পুরো বড়/ছায়াবৃত স্থিতির জন্যথাকা উচিত নয়"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"উপাদান <%s> তে \"resize\" বৈশিষ্ট্য পুরো বড়/ছায়াবৃত স্থিতির জন্যথাকা উচিত নয়"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "state %s resize %s focus %s এর জন্য স্টাইল ইতিমধ্যেই সুনির্দিষ্ট আছে"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "স্টেট %s ফোকাস %s এর জন্য স্টাইল ইতিমধ্যেই সুনির্দিষ্ট আছে"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"একটি <piece> উপাদান এর জন্য দুটি draw_ops থাকতে পারে না (থীম একটি draw_ops "
+"বৈশিষ্ট্য এবং একটি <draw_ops> উপাদান সুনির্দিষ্ট করেছে বা দুটি উপাদান সুনির্দিষ্ট "
+"করেছে)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"একটি <button> উপাদান এর জন্য দুটি draw_ops থাকতে পারে না (থীম একটি draw_ops "
+"বৈশিষ্ট্য এবং একটি <draw_ops> উপাদান সুনির্দিষ্ট করেছে বা দুটি উপাদান সুনির্দিষ্ট "
+"করেছে)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"একটি <menu_icon> উপাদান এর জন্য দুটি draw_ops থাকতে পারে না (থীম একটি draw_ops "
+"বৈশিষ্ট্য এবং একটি <draw_ops> উপাদান সুনির্দিষ্ট করেছে বা দুটি উপাদান সুনির্দিষ্ট "
+"করেছে)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "থীমের সবথেকে বাইরের উপাদানটি অবশ্যই <marco_theme> হতে হবে, <%s> নয়"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "উপাদান <%s> টি নাম/লেখক/তারিখ/বিবরণ উপাদান এর মধ্যে রাখা চলবে না"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "উপাদান <%s> টি <constant> উপাদান এর মধ্যে রাখা চলবে না"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"উপাদান <%s> টিdistance/border/aspect_ratio উপাদান এর মধ্যে রাখা চলবে না"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "উপাদান <%s> টি draw operation উপাদানে র মধ্যে রাখা চলবে না"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "উপাদান <%s> টি উপাদান <%s> র মধ্যে রাখা চলবে না"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "কাঠামোর টুক্‌রোর জন্য কোন draw_ops দেওয়া নেই"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "বোতামের জন্য কোন draw_ops দেওয়া নেই"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "উপাদান <%s> মধ্যে কোন বাক্য চলবে না"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "এই থিমে <%s> দুবার নির্দিষ্ট করা হয়েছে"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "লগ ফাইল এফডিওপেন() করতে ভুল হয়েছে: %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "থীম ফাইল %s এ root <marco_theme>অংশ নেই"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/উইন্ডো (_উ)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/উইন্ডো/ছেঁড়া টুকরো"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/উইন্ডো/ডায়ালগ (_ড)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/উইন্ডো/মোডাল ডায়ালগ (_ড)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/উইন্ডো/ইউটিলিটি (_ই)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/উইন্ডো/স্প্ল্যাসস্ক্রীন (_স)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/উইন্ডো/উপরের ডক (_উ)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/উইন্ডো/তলাতে ডক (_ত)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/উইন্ডো/বাম দিকে ডক (_ব)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/উইন্ডো/ডান দিকে ডক (_ড)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/উইন্ডো/সকল ডক (_ড)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/উইন্ডো/ডেস্কটপ (_স)"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "এটি নমুনা ডায়ালগ এ একটি নমুনা বার্তা"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "নকল মেনু বস্তু %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "শুধু-সীমানা উইন্ডো"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "বার"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "স্বাভাবিক অ্যাপলিকেশন উইন্ডো"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "ডায়ালগ বাক্স"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "মোডাল ডায়ালগ বাক্স"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "ইউটিলিটি প্যালেট"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "টোর্ন-অফ মেনু"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "সীমানা"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "বাটন নকশা পরীক্ষা %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g মিলিসেকেন্ড, একটি উইন্ডো ফ্রেম আঁকতে"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "ব্যবহার: মেটাসিটি-থিম-প্রদর্শক [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "থীম %s লোড করতে ত্রুটি\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "থীম \"%s\" %g সেকেন্ডে লোড করা হয়েছে\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "স্বাভাবিক ফন্ট শিরোনাম"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "ছোট ফন্ট শিরোনাম"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "বড় ফন্ট শিরোনাম"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "বাটন বিন্যাস"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "বেঞ্চমার্ক"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "উইন্ডো শিরোনাম এখানে বসবে"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"আঁকা হয়েছে %d ফ্রেম %g ক্লায়েন্ট-সাইড সেকেন্ডে (%g মিলিসেকেন্ড প্রতি সেকেন্ডে) এবং %"
+"g সেকেন্ড দেয়ালঘড়ির সময় X সার্ভার সম্পদ সহ (%g মিলিসেকেন্ড প্রতি সেকেন্ডে)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "অবস্থান মান পরীক্ষা সত্য পাওয়া গেছে কিন্তু সমস্যা সেট করা"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "অবস্থান মান পরীক্ষা মিথ্যা হয়েছে কিন্তু সমস্যা সেট করা ছিলনা"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "সমস্যা প্রত্যাশিত ছিল কিন্তু দেওয়া হয়নি"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "সমস্যা %d প্রত্যাশিত ছিল কিন্তু %d দেয়া হলো"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "সমস্যা প্রত্যাশিত ছিলনা কিন্তু একটি হয়েছে: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x মান ছিল %d, %d প্রত্যাশিত ছিল"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y মান ছিল %d, %d প্রত্যাশিত ছিল"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d কোঅর্ডিনেট মান পার্সকৃত %g সেকেন্ডে (%g সেকেন্ড গড়ে)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "এই উইন্ডোগুলোর মধ্য থেকে আরেকটি খুলো"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "এটি একটি ডেমো বাটন 'ওপেন' আইকন সহ "
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "এটি একটি ডেমো বাটন 'প্রস্থান' আইকন সহ "
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "বার্তালাপ প্রক্রিয়া থেকে \"%s\" বার্তাটি ব্যবহার করতে ভুল হয়েছে\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "এই বার্তালাপ প্রদর্শণকারী পদ্ধতি থেকে পড়তে ভুল হয়েছে: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "এই প্রোগ্রামকে মেরে ফেলার বিষয়ে প্রশ্নকারী মেটাসিটি বার্তালাপ চালু করতে ভুল "
+#~ "হয়েছে: %s\n"
+
+# "উইন্ডো বৃহদায়ত কর"
+#~ msgid "Unmaximize Window"
+#~ msgstr "মাঝারি আকার কর"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "একটি আদেশ বিষয়ে ভুল ছাপার মেটাসিটি বার্তালাপ চালু করতে গন্ডগোল হয়েছে: %s\n"
+
+#~ msgid "On _Top"
+#~ msgstr "উপরে (_ট)"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "এই অ্যাপ্লিকেসনটিকে বন্ধ হতে বাধ্য করলে আপনি যে সমস্ত পরিবর্তনসঞ্চিত করেন নি সে "
+#~ "সব চলে যাবে"
+
+#~ msgid "Title"
+#~ msgstr "শীর্ষক"
+
+#~ msgid "Class"
+#~ msgstr "শ্রেণী"
+
+# fuzzy
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "কিছু প্রোগ্রাম এমনভাবে স্পেসিফিকেশন ভাঙ্গে যে উইন্ডো প্রবন্ধকে কুবৈশিষ্ট্যতৈরী হয়। "
+#~ "উদাহরণস্বরুপ, আদর্শ অবস্থায় মেটাসিটি সমস্ত বার্তালাপ মূল জানালার সাপেক্ষেসুনির্দিষ্ট "
+#~ "স্থানে রাখে। এর জন্য প্রোগ্রাম নির্দিষ্ট বার্তালাপের অবস্থান অগ্রাহ্য করা দরকার। "
+#~ "কিন্তু জাভা/সুইং এর কোন কোন সংস্করণ তাদের পপ্-আপ মেনুকে বার্তালাপহিসাবে চিহ্নিত "
+#~ "করে, ফলে মেটাসিটিকে ভাঙ্গা জাভা প্রোগ্রাম চালানোর জন্য বার্তালাপ "
+#~ "প্রতিস্থাপননিষ্ক্রিয় করতে হয়। এই রকম আরও উদাহরণ আছে। এই পছন্দটি বেছে নিলে "
+#~ "মেটাসিটি পুরো সংশোধনস্থিতিতে চলে যায়, যা সম্ভবতঃ কোন ভাঙ্গা প্রোগ্রাম না চালাতে "
+#~ "হলে সুন্দরতর ইউ-আই দেয়। দুঃখজনকভাবে, ডিফল্ট স্থিতিতে ওয়ার্কএরাউন্ডগুলিকে চালু "
+#~ "রাখ্তে হয়, কারণ বাস্তব পৃথিবীএকটি নোংরা জায়গা। কিছু কিছু ওয়ার্কএরাউন্ড "
+#~ "স্পেসিফিকেশনের সীমাবদ্ধতার জন্য প্রয়োজন হয়, ফলে \"কোনো ওয়ার্কএরাউন্ড নয়\" "
+#~ "স্থিতিতে স্পেসিফিকেশনের সংযোজন না করে কিছু বাগ ঠিক করা যাবে না"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা বর্তমান কার্যক্ষেত্রের ওপরের কার্যক্ষেত্রে "
+#~ "পরিবর্তিত করে। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য "
+#~ "করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি "
+#~ "আপনি এই পছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন "
+#~ "সুনির্দিষ্ট কী বাইন্ডিং থাকবে না।"
+
+# The keybinding that switches to the workspace the current workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action.
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা বর্তমান কার্যক্ষেত্রের নীচের কার্যক্ষেত্রে "
+#~ "পরিবর্তিত করে। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য "
+#~ "করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি "
+#~ "আপনি এই পছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন "
+#~ "সুনির্দিষ্ট কী বাইন্ডিং থাকবে না।"
+
+# The keybinding that switches to the workspace the current workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action.
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা বর্তমান কার্যক্ষেত্রের বা দিকের কার্যক্ষেত্রে "
+#~ "পরিবর্তিত করে। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য "
+#~ "করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি "
+#~ "আপনি এই পছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন "
+#~ "সুনির্দিষ্ট কী বাইন্ডিং থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা বর্তমান কার্যক্ষেত্রের ডান দিকের কার্যক্ষেত্রে "
+#~ "পরিবর্তিত করে। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য "
+#~ "করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি "
+#~ "আপনি এই পছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন "
+#~ "সুনির্দিষ্ট কী বাইন্ডিং থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ১ এ পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ১০ এ পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ১১ তে পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ১২ তে পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ২ এ পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ৩ এ পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ৪ এ পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ৫ এ পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ৬ এ পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ৭ এ পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ৮ এ পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "একটি সুনির্দিষ্ট কী বাইন্ডিং যা কিনা কার্যক্ষেত্র ৯ এ পরিবর্তিত করে। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে উইন্ডোর পছন্দতালিকা চালু করা হয়। এর ফর্ম্যাট দেখায় \"&lt;"
+#~ "Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার "
+#~ "এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ বাক্যাংশ "
+#~ "\"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে \"মুভ মোড\" এ প্রবেশ করা হয় এবং একটি উইন্ডোকে কীবোর্ডের "
+#~ "সাহায্যে স্থান পরিবর্তন করা হয়। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো "
+#~ "হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির "
+#~ "করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে \"রিসাইজ মোড\" এ প্রবেশ করা হয় এবং একটি উইন্ডোকে "
+#~ "কীবোর্ডের সাহায্যে আকার পরিবর্তন করা যায়। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a"
+#~ "\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও "
+#~ "ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও "
+#~ "\"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ বাক্যাংশ \"disabled\" "
+#~ "স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে সমস্ত উইন্ডো লুকিয়ে ডেস্কটপের পটভূমিকে ফোকাস করা হয়। এর "
+#~ "ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই "
+#~ "পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া "
+#~ "সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই "
+#~ "পছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট "
+#~ "কী বাইন্ডিং থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে বৃহদায়ত করা হয়। এর ফর্ম্যাট দেখায় \"&lt;"
+#~ "Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার "
+#~ "এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ বাক্যাংশ "
+#~ "\"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে ক্ষুদ্রায়ত করা হয়। এর ফর্ম্যাট দেখায় \"&lt;"
+#~ "Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার "
+#~ "এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ বাক্যাংশ "
+#~ "\"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে একটি কার্যক্ষেত্র নিচে পাঠানো হয়। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে একটি কার্যক্ষেত্র বাঁয়ে এ পাঠানো হয়। এর "
+#~ "ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই "
+#~ "পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া "
+#~ "সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই "
+#~ "পছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট "
+#~ "কী বাইন্ডিং থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ডানদিকে পাঠানো হয়। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে একটি কার্যক্ষেত্র উপরে পাঠানো হয়। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ১ এ পাঠানো হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ১০ এ পাঠানো হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ১১ তে পাঠানো হয়। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ১২ তে পাঠানো হয়। এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ২ এ পাঠানো হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ৩ এ পাঠানো হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ৪ এ পাঠানো হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ৫ এ পাঠানো হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ৬ এ পাঠানো হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ৭ এ পাঠানো হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ৮ এ পাঠানো হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে কী বাইন্ডিং দিয়ে একটি উইন্ডোকে কার্যক্ষেত্র ৯ এ পাঠানো হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" ও চলে। যদি আপনি এই পছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এর জন্য কোন সুনির্দিষ্ট কী বাইন্ডিং "
+#~ "থাকবে না।"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে প্যানেলগুলি এবং ডেস্কটপের মধ্যে পপ্-আপ উইন্ডো ব্যবহার করে "
+#~ "বিপরীতদিকে আলোকপাত স্থানান্তর হয়।এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো "
+#~ "হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, "
+#~ "তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে প্যানেলগুলি এবং ডেস্কটপের মধ্যে পপ্-আপ উইন্ডো ছাড়া "
+#~ "বিপরীতদিকে আলোকপাত স্থানান্তর হয়।এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো "
+#~ "হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, "
+#~ "তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাগুলির মধ্যে পপ্-আপ্ জানালা ছাড়া বিপরীতদিকে "
+#~ "আলোকপাত স্থানান্তর হয়। এর সঙ্গে \"shift\" চাবি টিপে রাখলে আবার "
+#~ "সোজাদিকেআলোকপাত স্থানান্তর হবেএর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো "
+#~ "হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, "
+#~ "তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাগুলির মধ্যে পপ্-আপ্ জানালা সহ বিপরীতদিকে আলোকপাত "
+#~ "স্থানান্তর হয়। এর সঙ্গে \"shift\" চাবি টিপে রাখলে আবার সোজাদিকেআলোকপাত "
+#~ "স্থানান্তর হবেএর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য "
+#~ "করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি "
+#~ "আপনি এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এই জন্য কোন "
+#~ "সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে প্যানেলগুলি এবং ডেস্কটপের মধ্যে পপ্-আপ্ জানালাব্যবহার করে "
+#~ "আলোকপাত স্থানান্তর হয়।এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের "
+#~ "অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;"
+#~ "\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে "
+#~ "এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে প্যানেলগুলি এবং ডেস্কটপের মধ্যে পপ্-আপ্ জানালা ছাড়া "
+#~ "আলোকপাত স্থানান্তর হয়।এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের "
+#~ "অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;"
+#~ "\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে "
+#~ "এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাগুলির মধ্যে পপ্-আপ্ জানালা ছাড়া আলোকপাত স্থানান্তর "
+#~ "হয়(প্রথাগতভাবে &lt;Alt&gt;Escape)। এর সঙ্গে \"shift\" চাবি টিপে রাখলে "
+#~ "বিপরীতদিকেআলোকপাত স্থানান্তর হবেএর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো "
+#~ "হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, "
+#~ "তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাগুলির মধ্যে পপ্-আপ্ জানালা সহ আলোকপাত স্থানান্তর হয়"
+#~ "(প্রথাগতভাবে &lt;Alt&gt;Tab)। এর সঙ্গে \"shift\" চাবি টিপে রাখলে "
+#~ "বিপরীতদিকেআলোকপাত স্থানান্তর হবেএর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো "
+#~ "হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;"
+#~ "Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, "
+#~ "তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাটি সমস্ত কার্যক্ষেত্রে থাকবে না একটিমাত্রে থাকবে "
+#~ "তানির্ধারণ হয়। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য "
+#~ "করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি "
+#~ "আপনি এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এই জন্য কোন "
+#~ "সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাটি পুরো পর্দা জুড়ে থাকবে কি না তানির্ধারণ হয়। এর "
+#~ "ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই "
+#~ "পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া "
+#~ "সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি "
+#~ "এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এই জন্য কোন সুনির্দিষ্ট "
+#~ "চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাটি বৄহদায়ত থাকবে কি না তানির্ধারণ হয়। এর "
+#~ "ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই "
+#~ "পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া "
+#~ "সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি "
+#~ "এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এই জন্য কোন সুনির্দিষ্ট "
+#~ "চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাটি গোটানো (ছায়াবৃত) থাকবে কি না তানির্ধারণ "
+#~ "হয়। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, "
+#~ "এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি "
+#~ "এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এই জন্য কোন সুনির্দিষ্ট "
+#~ "চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাটি সমস্ত কার্যক্ষেত্রে থাকবে না একটিমাত্রে থাকবে "
+#~ "তানির্ধারণ হয়। এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য "
+#~ "করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি "
+#~ "আপনি এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এই জন্য কোন "
+#~ "সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাটি অবৄহদায়ত হবে।এর ফর্ম্যাট দেখায় \"&lt;"
+#~ "Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার "
+#~ "এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ "
+#~ "\"disabled\" স্থির করেন, তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে একটি জানালাকে বন্ধ করা হয়। এর ফর্ম্যাট দেখায় \"&lt;"
+#~ "Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার "
+#~ "এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ "
+#~ "\"disabled\" স্থির করেন, তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালা পছন্দতালিকা চালু করা হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ "
+#~ "\"disabled\" স্থির করেন, তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে একটি জানালাকে বন্ধ করা হয়। এর ফর্ম্যাট দেখায় \"&lt;"
+#~ "Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার "
+#~ "এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ "
+#~ "\"disabled\" স্থির করেন, তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে কার্যক্ষেত্র 9 এ যাওয়া যায়। এর ফর্ম্যাট দেখায় \"&lt;"
+#~ "Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার "
+#~ "এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;"
+#~ "Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ "
+#~ "\"disabled\" স্থির করেন, তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালা পছন্দতালিকা চালু করা হয়। এর ফর্ম্যাট দেখায় "
+#~ "\"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি যথেষ্ট "
+#~ "উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ যেমন "
+#~ "\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ বাক্যাংশ "
+#~ "\"disabled\" স্থির করেন, তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another window, it raises the window above "
+#~ "other windows. If the window is already fully visible, it lowers the "
+#~ "window below other windows. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে কি হবে তা জানালার স্থিতির ওপর বদ্লায় ।জানালাটি সবার "
+#~ "উপরে থাকলে অন্যান্য জানালার নিচে চলে যাবেএবং অন্য জানালার নিচে থাকলে সবার "
+#~ "উপরে চলে আসবে।এর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য "
+#~ "করে, এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি "
+#~ "আপনি এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এই জন্য কোন "
+#~ "সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাটি অন্যান্য জানালার নিচে চলে যাবে।এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে এই জন্য কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "এই সুনির্দিষ্ট চাবি টিপলে জানালাটি অন্যান্য জানালার উপরে উঠে আসবে।এর ফর্ম্যাট "
+#~ "দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;F1. এই পার্সারটি "
+#~ "যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, এছাড়া সংক্ষিপ্ত রুপ "
+#~ "যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি এইপছন্দটি বিশেষ "
+#~ "বাক্যাংশ \"disabled\" স্থির করেন, তাহলে কোন সুনির্দিষ্ট চাবি থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাটি আনুভুমিকভাবে সমস্ত জায়গা জুড়ে আকার পরিবর্তন "
+#~ "করবেএর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, "
+#~ "এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি "
+#~ "এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে কোন সুনির্দিষ্ট চাবি "
+#~ "থাকবে না"
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "যে সুনির্দিষ্ট চাবি টিপলে জানালাটি উলম্বভাবে সমস্ত জায়গা জুড়ে আকার পরিবর্তন "
+#~ "করবেএর ফর্ম্যাট দেখায় \"&lt;Control&gt;a\" বা \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. এই পার্সারটি যথেষ্ট উদার এবং বড় হাতের ও ছোটো হাতের অক্ষর দুই গ্রাহ্য করে, "
+#~ "এছাড়া সংক্ষিপ্ত রুপ যেমন \"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\" চলবে. যদি আপনি "
+#~ "এইপছন্দটি বিশেষ বাক্যাংশ \"disabled\" স্থির করেন, তাহলে কোন সুনির্দিষ্ট চাবি "
+#~ "থাকবে না"
+
+#~ msgid ""
+#~ "This option determines the effects of double-clicking on the title bar. "
+#~ "Current valid options are 'toggle_shade', which will shade/unshade the "
+#~ "window, and 'toggle_maximize' which will maximize/unmaximize the window."
+#~ msgstr ""
+#~ "এটি শীর্ষকবারে দুবার ক্লিক করার ফল স্থির করবে। বর্তমান কার্যকর মানগুলি হল "
+#~ "'toggle_shade', যা উইন্ডোকে ছায়াবৃত/অছায়াবৃত করবে, এবং 'toggle_maximize'যা "
+#~ "জানালাকে বৃহদায়ত/অবৃহদায়ত করবে।"
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "সবসময় উচ্চতম অবস্থায় টোগল করো"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "উইন্ডো মাঝারি আকার করো"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d যা জিকন্‌ফ কী %s তে সঞ্চিত আছে, একটি যুক্তিযুক্ত কার্যক্ষেত্রের সংখ্যা নয় বর্তমান "
+#~ "সর্বোচ্চ সংখ্যা হল %d\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "<marco_session> উপাদানে অজানা বৈশিষ্ট্য %s"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "<maximized> উপাদানে অজানা বৈশিষ্ট্য %s"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "<geometry> উপাদানে অজানা বৈশিষ্ট্য %s"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "যে সমস্ত অ্যাপলেটস সেসন ম্যানেজমেন্টকে সাহায্য করে না তাদের বিষয়ে "
+#~ "সতর্ককারীমেটাসিটি বার্তালাপ চালু করতে ভুল হয়েছে: %s\n"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "কোনও \"%s\" বৈশিষ্ট্য নেই উপাদান <%s> তে"
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "মেনু আইকনের জন্য অজানা কার্য \"%s\""
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "মেনু আইকনের জন্য অজানা অবস্থা \"%s\""
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "কার্য %s অবস্থা %s র জন্য থীমে ইতিমধ্যেই একটি মেনু আইকন আছে"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"নাম\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"মান\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"শীর্ষ\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"তলা\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"বাম\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"ডান\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"রং\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"x1\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"y1\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"x2\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"y2\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"y\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"চওড়া\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"উচ্চতা\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"আলফা\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"টাইপ\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"ফাইলনেম\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"স্টেট\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"শ্যাডো\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "উপাদান <%s> তে \"arrow\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "উপাদান <%s> তে \"value\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "উপাদান <%s> তে \"position\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "উপাদান <%s> তে \"function\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "উপাদান <%s> তে \"state\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "উপাদান <%s> তে \"focus\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "উপাদান <%s> তে \"style\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "উপাদান <%s> তে \"resize\" বৈশিষ্ট্য নেই"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "মেনু আইকনের জন্য কোন draw_ops দেওয়া নেই"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "এই থিমে <author> দুবার নির্দিষ্ট করা হয়েছে"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "এই থিমে <copyright> দুবার নির্দিষ্ট করা হয়েছে"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "এই থিমে <date> দুবার নির্দিষ্ট করা হয়েছে"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "এই থিমে <description> দুবার নির্দিষ্ট করা হয়েছে"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "ফাইল %s থেকে থীম পড়তে ভুল হয়েছে: %s\n"
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "অবস্থানের সমীকরণ প্রক্রিয়াকারক এর বাফার উপছে গেছে, এটি প্রকৃতপক্ষে মেটাসিটির "
+#~ "প্রোগ্রামত্রুটি, কিন্তু আপনি কি নিশ্চিত যে আপনি এত বড় একটি সমীকরণ ব্যবহার করতে "
+#~ "চান?"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> এই থীমের "
+#~ "জন্য অবশ্যই স্থির করতে হবে"
diff --git a/po/bn_IN.po b/po/bn_IN.po
new file mode 100644
index 00000000..93cc0a4e
--- /dev/null
+++ b/po/bn_IN.po
@@ -0,0 +1,2404 @@
+# translation of bn_IN.po to Bengali INDIA
+# Bengali India Translation for Marco 2.4
+# Copyright (C) 2003 Free Software Foundation
+# This file is distributed under the same license as the MARCO package.
+#
+# Dr Anirban Mitra <[email protected]>, 2003.
+# Mahay Alam Khan <[email protected]>, 2005.
+# Samia Niamatullah <[email protected]>, 2005.
+# Runa Bhattacharjee <[email protected]>, 2006.
+# Runa Bhattacharjee <[email protected]>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: bn_IN\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2009-08-24 17:51+0000\n"
+"PO-Revision-Date: 2009-08-26 15:41+0530\n"
+"Last-Translator: Runa Bhattacharjee <[email protected]>\n"
+"Language-Team: Bengali INDIA <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"\n"
+"\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "ডেস্কটপ"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "উইন্ডো পরিচালন ব্যবস্থা"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "ঘন্টা সম্পর্কিত ইভেন্ট"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "উইন্ডোর তথ্য সম্বন্ধে অজানা অনুরোধ: %d"
+
+#: ../src/core/delete.c:104
+#, c-format
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+"<big><b><tt>%s</tt> থেকে কোনো প্রতিক্রিয়া পাওয়া যাচ্ছে না।</b></big>\n"
+"\n"
+"<i>অ্যাপ্লিকেশনটি বন্ধ করার জন্য কিছু সময় অপেক্ষা করা যাবে অথবা অ্যাপ্লিকেশনটি "
+"বলপূর্বক বন্ধ করা যাবে।</i>"
+
+#: ../src/core/delete.c:115
+msgid "_Wait"
+msgstr "অপেক্ষা করা হবে (_W)"
+
+#: ../src/core/delete.c:115
+msgid "_Force Quit"
+msgstr "বলপূর্বক বন্ধ করুন (_F)"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "হোস্ট-নেম প্রাপ্ত করতে ব্যর্থ: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "কম্পোসিটিং-র জন্য আবশ্যক %s এক্সটেনশন অনুপস্থিত"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X উইন্ডো সিস্টেম প্রদর্শন খুলতে ব্যর্থ '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"ডিসপ্লে '%s'-র সাথে সংযোগ বিচ্ছিন্ন হয়েছে;\n"
+"সম্ভবত X সার্ভার বন্ধ করা হয়েছে অথবা উইন্ডো পরিচালন ব্যবস্থা kill/বন্ধ\n"
+"করা হয়েছে।\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "গুরুতর IO সমস্যা %d (%s) '%s' প্রদর্শনে।\n"
+
+# " উইন্ডো অবৃহদায়ত কর"
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "একটি পৃথক প্রোগ্রাম দ্বারা বর্তমানে %s-কি, %x বাইন্ডিং সহ ব্যবহৃত হচ্ছে\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> সঞ্চালনে সমস্যা:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "%d কমান্ড ব্যাখ্যা করা হয়নি।\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "টার্মিনালে ব্যবহারযোগ্য কোনো কমান্ড ব্যাখ্যা করা হয়নি।\n"
+
+#: ../src/core/main.c:130
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"স্বত্বাধিকার (C) 2001-%s হ্যাভক পেনিংটন, Red Hat, Inc., ও অন্যান্যদের\n"
+"এটি একটি মুক্ত সফ্টওয়্যার; পুনব্যবহারের নিয়মাবলীর জন্য সোর্সের মধ্যে উপলব্ধ নথিপত্র "
+"দেখুন।\n"
+"এর কোনো ওয়ারেন্টি উপলব্ধ নেই; বাণিজ্যিক ও কোনো সুনির্দিষ্ট কর্ম সাধনের জন্যও নয়।\n"
+
+#: ../src/core/main.c:268
+msgid "Disable connection to session manager"
+msgstr "সেশান পরিচালন ব্যবস্থার সাথে সংযোগ বিচ্ছিন্ন করা হবে"
+
+#: ../src/core/main.c:274
+msgid "Replace the running window manager with Marco"
+msgstr "বর্তমানে ব্যবহৃত উইন্ডো পরিচালন ব্যবস্থার পরিবর্তে Marco প্রয়োগ করা হবে"
+
+#: ../src/core/main.c:280
+msgid "Specify session management ID"
+msgstr "সেশান পরিচালনার ID উল্লেখ করুন"
+
+#: ../src/core/main.c:285
+msgid "X Display to use"
+msgstr "ব্যবহারের জন্য এক্স ডিসপ্লে"
+
+#: ../src/core/main.c:291
+msgid "Initialize session from savefile"
+msgstr "সংরক্ষণ ফাইল থেকে সেশন চালু করো"
+
+#: ../src/core/main.c:297
+msgid "Print version"
+msgstr "প্রিন্ট সংস্করণ"
+
+#: ../src/core/main.c:303
+msgid "Make X calls synchronous"
+msgstr "X-র কল সিঙ্ক্রোনাস করা হবে"
+
+#: ../src/core/main.c:309
+msgid "Turn compositing on"
+msgstr "কম্পোসিটিং ব্যবস্থা চালু করুন"
+
+#: ../src/core/main.c:315
+msgid "Turn compositing off"
+msgstr "কম্পোসিটিং ব্যবস্থা বন্ধ করুন"
+
+#: ../src/core/main.c:321
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "সর্বাধিক মাপে স্থাপিত সাজসজ্জাবিহীন উইন্ডোগুলির ক্ষেত্রে সম্পূর্ণ পর্দায় প্রদর্শন ব্যবস্থা প্রয়োগ করা হবে না"
+
+#: ../src/core/main.c:543
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "থীম এর ডিরেক্টরি স্ক্যান করতে ব্যর্থ: %s\n"
+
+#: ../src/core/main.c:559
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"কোনো থিম খুঁজে পাওয়া যায়নি! অনুগ্রহ করে পরীক্ষা করুন %s উপস্থিত আছে কি না ও এর মধ্যে "
+"সাধারণ থিমগুলি অন্তর্ভুক্ত কি না।\n"
+
+#: ../src/core/main.c:618
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "আবার চালু করতে পারলাম না: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf-কি \"%s\"'র মান বৈধ নয়\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d মান যা MateConf-কি %s-র মধ্যে সংরক্ষিত রয়েছে, %d থেকে %d-র সীমাবহির্ভূত\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf-কি \"%s\"'র ধরন বৈধ নয়\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"ক্ষতিগ্রস্ত অ্যাপ্লিকেশনের ত্রুটি অগ্রাহ্য করার প্রণালী নিষ্ক্রিয় করা হয়েছে। কয়েকটি "
+"অ্যাপ্লিকেশন সম্ভবত সঠিকরূপে চালানো সম্ভব হবে না।\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "\"%s\" ফন্টের বিবরণ MateConf-কি %s থেকে পার্স করতে ব্যর্থ\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "কনফিগারেশন ডাটাবেসের মধ্যে উপস্থিত \"%s\" মাউস বাটন পরিবর্তকের জন্য বৈধ মান নয়\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "কর্মক্ষেত্রের সংখ্যা %d রূপে নির্ধারণ করতে ব্যর্থ: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "কর্মক্ষেত্র %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"কনফিগারেশন ডাটাবেসের মধ্যে উপলব্ধ \"%s\", \"%s\" কি-বাইন্ডিং'র ক্ষেত্রে বৈধ মান "
+"নয়\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "কর্মক্ষেত্র %d'র নাম \"%s\" রূপে নির্ধারণ করতে ব্যর্থ: %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "কম্পোসিটারের অবস্থা নির্ধারণ করতে ত্রুটি: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "পর্দা %d (ডিসপ্লে '%s') বৈধ নয়\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"পর্দা %d'র (\"%s\" ডিসপ্লে) ক্ষেত্রে একটি উইন্ডো পরিচালনব্যবস্থা বর্তমানে উপস্তিত "
+"রয়েছে; বর্তমানে উইন্ডো পরিচালন ব্যবস্থা পরিবর্তন করতে --replace বিকল্প প্রয়োগ করুন।\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"পর্দা %d (ডিসপ্লে \"%s\")'র মধ্যে উইন্ডো পরিচালন ব্যবস্থার নির্বাচিত অংশ গ্রহণ করতে "
+"ব্যর্থ\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "পর্দা %d'র ( \"%s\" ডিসপ্লে) ক্ষেত্রে একটি উইন্ডো পরিচালন ব্যবস্থা উপস্থিত রয়েছে\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "পর্দা %d (ডিসপ্লে \"%s\") মুক্ত করতে ব্যর্থ\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+#| msgid ""
+#| "The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+#| "\n"
+#| "The parser is fairly liberal and allows lower or upper case, and also "
+#| "abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to "
+#| "the special string \"disabled\", then there will be no keybinding for "
+#| "this action."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"\"<Control>a\" অথবা <Shift><Alt>F1\"-র অনুরূপ বিন্যাস ব্যবহৃত হবে।\n"
+"\n"
+"পার্সার হরফের ছাঁদ সম্পর্কে সচেতন নয় এবং প্রয়োজনে \"<Ctl>\" ও \"<Ctrl>\"-র অনুরূপ "
+"সংক্ষিপ্ত রূপও ব্যবহার করা যাবে। বিকল্পের ক্ষেত্রে বিশেষ পংক্তি \"disabled\" প্রয়োগ "
+"করা হলে এই কর্মের জন্য কোনো কি-বাইন্ডিং ব্যবহার করা হবে না।"
+
+#: ../src/core/schema-bindings.c:177
+#| msgid ""
+#| "The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+#| "\n"
+#| "The parser is fairly liberal and allows lower or upper case, and also "
+#| "abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to "
+#| "the special string \"disabled\", then there will be no keybinding for "
+#| "this action.\n"
+#| "\n"
+#| "This keybinding may be reversed by holding down the \"shift\" key; "
+#| "therefore, \"shift\" cannot be one of the keys it uses."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"\"<Control>a\" অথবা <Shift><Alt>F1\"-র অনুরূপ বিন্যাস ব্যবহৃত হবে।\n"
+"\n"
+"পার্সার হরফের ছাঁদ সম্পর্কে সচেতন নয় এবং প্রয়োজনে \"<Ctl>\" ও \"<Ctrl>\"-র অনুরূপ "
+"সংক্ষিপ্ত রূপও ব্যবহার করা যাবে। বিকল্পের ক্ষেত্রে বিশেষ পংক্তি \"disabled\" প্রয়োগ "
+"করা হলে এই কর্মের জন্য কোনো কি-বাইন্ডিং ব্যবহার করা হবে না।\n"
+"\n"
+"\"shift\" কি টেপা হলে কি-বাইন্ডিংগুলির বিপরীত ব্যবহার করা হবে; অর্থাৎ, \"shift\" "
+"কি এই ক্ষেত্রে ব্যবহার করা যাবে না।"
+
+#: ../src/core/session.c:845 ../src/core/session.c:852
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "ডিরেক্টরি '%s' নির্মাণ করতে ব্যর্থ: %s\n"
+
+#: ../src/core/session.c:862
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "লেখার উদ্দেশ্যে সেশান ফাইল '%s' খুলতে ব্যর্থ: %s\n"
+
+#: ../src/core/session.c:1003
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "সেশান ফাইল '%s' লিখতে ব্যর্থ: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "সেশান ফাইল '%s' বন্ধ করতে ব্যর্থ: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1101
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "সংরক্ষিত সেশান ফাইল %s পড়তে ব্যর্থ: %s\n"
+
+#: ../src/core/session.c:1140
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "সংরক্ষিত সেশান ফাইল পার্স করতে ব্যর্থ: %s\n"
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> বৈশিষ্ট্য প্রদর্শিত কিন্তু সেশান ID বর্তমানে উপস্থিত রয়েছে"
+
+#: ../src/core/session.c:1202 ../src/core/session.c:1277
+#: ../src/core/session.c:1309 ../src/core/session.c:1381
+#: ../src/core/session.c:1441
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "অজানা বৈশিষ্ট্য %s, <%s> স্বত্বায় চিহ্নিত হয়েছে"
+
+#: ../src/core/session.c:1219
+#, c-format
+msgid "nested <window> tag"
+msgstr "নেস্টেড <window> ট্যাগ"
+
+#: ../src/core/session.c:1461
+#, c-format
+msgid "Unknown element %s"
+msgstr "অজানা স্বত্বা %s"
+
+#: ../src/core/session.c:1812
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"এই উইন্ডোগুলির দ্বারা &quot;save current setup&quot; বৈশিষ্ট্য সমর্থিত হয় না এবং "
+"পরবর্তীবার লগ-ইন করা হলে ব্যবহারকারীর দ্বারা পুনরায় আরম্ভ করা প্রয়োজন।"
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "ডিবাগ লগ খুলতে ব্যর্থ: %s\n"
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "fdopen() লগ ফাইল %s খুলতে ব্যর্থ: %s\n"
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "লগ ফাইল %s খোলা হয়েছে\n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "ভার্বোস মোডের সমর্থন অন্তর্ভুক্ত না করে Marco কম্পাইল করা হয়েছে\n"
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "উইন্ডো পরিচালন ব্যবস্থা: "
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr "উইন্ডো পরিচালনব্যবস্থা সংক্রান্ত সমস্যা: "
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr "উইন্ডো পরিচালন ব্যবস্থা সংক্রান্ত সতর্কবার্তা: "
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr "উইন্ডো পরিচালন ব্যবস্থা সংক্রান্ত ত্রুটি: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5627
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"উইন্ডো %s দ্বারা ICCCM'এ নির্ধারিত WM_CLIENT_LEADER উইন্ডোর পরিবর্তে নিজের উপর "
+"SM_CLIENT_ID নির্ধারিত হয়েছে।\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6192
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"%s উইন্ডো দ্বারা একটি MWM হিন্ট নির্ধারণ করা হয়েছে, অর্থাৎ এই উইন্ডোটির মাপ "
+"পরিবর্তন করা সম্ভব নয়; কিন্তু একই সাথে সর্বনিম্ন মাপ %d x %d ও সর্বাধিক মাপ %d x %d "
+"ধার্য করা হয়েছে। এইভাবে ধার্য করা বৈশিষ্ট্যের মান নিরর্থক।\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "অ্যাপ্লিকেশন দ্বারা ভুল _NET_WM_PID %lu নির্ধারিত হয়েছে\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s'র উপর)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (সুপার-ইউজার রূপে)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s রূপে)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (অন্য ব্যবহারকারী রূপে)"
+
+#: ../src/core/window-props.c:1429
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "অবৈধ WM_TRANSIENT_FOR উইন্ডো 0x%lx, %s'র জন্য নির্ধারিত হয়েছে।\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"0x%lx উইন্ডোর ক্ষেত্রে %s বৈশিষ্ট্য ধার্য করা হয়েছে\n"
+"এই ক্ষেত্রে type %s ও format %d প্রত্যাশিত হলেও\n"
+"type %s format %d ও n_items %d উপস্থিত রয়েছে।\n"
+"এটি সম্ভবত অ্যাপ্লিকেশনের বাগ, উইন্ডো পরিচালন ব্যবস্থার নয়।\n"
+"উইন্ডোর জন্য title=\"%s\" class=\"%s\" name=\"%s\" ব্যবহার করা হয়েছে\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+"%s বৈশিষ্ট্যটি 0x%lx উইন্ডোর উপর উপস্থিত ও এর মধ্যে অবৈধ UTF-8 অক্ষর অন্তর্ভুক্ত "
+"রয়েছে\n"
+
+# FIXME msgstr "%s বিশেষত্বটি জানালা 0x%lx -তে অন্যায্য UTF-8 আছে\n
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"%s বৈশিষ্ট্যটি 0x%lx উইন্ডোর উপর উপস্থিত ও এর তালিকায় %d সংখ্যক বস্তুর মধ্যে অবৈধ "
+"UTF-8 অক্ষর অন্তর্ভুক্ত রয়েছে\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "কর্মক্ষেত্র ১'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "কর্মক্ষেত্র ১৩'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "কর্মক্ষেত্র ৩'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "কর্মক্ষেত্র ৪'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "কর্মক্ষেত্র ৫'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "কর্মক্ষেত্র ৬'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "কর্মক্ষেত্র ৭'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "কর্মক্ষেত্র ৮'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "কর্মক্ষেত্র ৯'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "কর্মক্ষেত্র ১'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "কর্মক্ষেত্র ১১'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "কর্মক্ষেত্র ১২'এ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "বাঁদিকের পার্শ্ববর্তী কর্মক্ষেত্রে পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "ডানদিকের পার্শ্ববর্তী কর্মক্ষেত্রে পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "ঊর্ধস্থ কর্মক্ষেত্রে পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "নিম্নস্থিত কর্মক্ষেত্রে পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "অ্যাপ্লিকেশনের উইন্ডোগুলির মধ্যে পপ-আপ উইন্ডো প্রয়োগ করে স্থান পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "অ্যাপ্লিকেশনের উইন্ডোগুলির মধ্যে পপ-আপ উইন্ডো প্রয়োগ করে বিপরীতদিকে স্থান পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "উইন্ডোগুলির মধ্যে পপ-আপ উইন্ডো প্রয়োগ করে স্থান পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "উইন্ডোগুলির মধ্যে পপ-আপ উইন্ডো প্রয়োগ করে বিপরীতদিকে স্থান পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "প্যানেল ও ডেস্কটপের মধ্যে পপ-আপ উইন্ডো প্রয়োগ করে স্থান পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "প্যানেল ও ডেস্কটপের মধ্যে পপ-আপ উইন্ডো প্রয়োগ করে বিপরীত দিশায় স্থান পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "অ্যাপ্লিকেশনের উইন্ডোগুলির মধ্যে তৎক্ষনাৎ স্থান পরিবর্তন করা হবে"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "অ্যাপ্লিকেশনের উইন্ডোগুলির মধ্যে তৎক্ষনাৎ বিপরীতদিকে স্থান পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "উইন্ডোগুলির মধ্যে তৎক্ষনাৎ স্থান পরিবর্তন করা হবে"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "উইন্ডোগুলির মধ্যে তৎক্ষনাৎ বিপরীতদিকে স্থান পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "প্যানেল ও ডেস্কটপের মধ্যে তৎক্ষনাৎ স্থান পরিবর্তন করা হবে"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "প্যানেল ও ডেস্কটপের মধ্যে তৎক্ষনাৎ বিপরীত দিশায় স্থান পরিবর্তন করা হবে"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "সমস্ত সাধারণ উইন্ডো আড়াল করে ডেস্কটপ উজ্জ্বল করা হবে"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "প্যানেলের প্রধান মেনু প্রদর্শন করা হবে"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "প্যানেলের \"অ্যাপ্লিকেশন সঞ্চালনা\"-র ডায়লগ বক্স প্রদর্শন করা হবে"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "পর্দার ছবি নিন"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "উইন্ডোর ছবি নিন"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "টার্মিনাল আরম্ভ করুন"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "উইন্ডো মেনু সক্রিয় করুন"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "সম্পূর্ণ পর্দা জুড়ে প্রদর্শনের মোড অদল-বদল করা হবে"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "সর্বোচ্চ মাপে প্রদর্শনের অবস্থা অদল-বদল করা হবে"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "উইন্ডোটি সর্বদা অন্য সকল উইন্ডোর উপর প্রদর্শিত হবে কিনা তা টগল করে চিহ্নিত করুন"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "উইন্ডো বড় করুন"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "উইন্ডো প্রদর্শন করুন"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "ছায়াবৃত প্রদর্শনের অবস্থা অদল-বদল করা হবে"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "উইন্ডো আড়াল করুন"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "উইন্ডো বন্ধ করুন"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "উইন্ডো স্থানান্তরণ"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "উইন্ডোর মাপ পরিবর্তন করুন"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"সকল কর্মক্ষেত্র অথবা একটি কর্মক্ষেত্রে উইন্ডো প্রদর্শন করা হবে কি না তা টগল করে "
+"চিহ্নিত করুন"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "কর্মক্ষেত্র ১'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "কর্মক্ষেত্র ২'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "কর্মক্ষেত্র ৩'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "কর্মক্ষেত্র ৪'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "কর্মক্ষেত্র ৫'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "কর্মক্ষেত্র ৬'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "কর্মক্ষেত্র ৭'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "কর্মক্ষেত্র ৮'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "কর্মক্ষেত্র ৯'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "কর্মক্ষেত্র ১০'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "কর্মক্ষেত্র ১১'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "কর্মক্ষেত্র ১২'এ স্থানান্তর করুন"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "উইন্ডো বাঁদিকের পার্শ্ববর্তী কর্মক্ষেত্রে স্থানান্তরণ করা হবে"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "উইন্ডো ডানদিকের পার্শ্ববর্তী কর্মক্ষেত্রে স্থানান্তরণ করা হবে"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "উইন্ডো একটি কর্মক্ষেত্র উপরে স্থানান্তরণ করা হবে"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "উইন্ডো একটি কর্মক্ষেত্র নীচে স্থানান্তরণ করা হবে"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"অন্য উইন্ডো দ্বারা ঢাকা থাকলে উইন্ডোটি উপরে উইন্ডো উত্থাপন করা হবে, অন্যথা সেটি "
+"নীচে নামানো হবে"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "অন্যান্য উইন্ডোর উপরে উইন্ডো উত্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "উইন্ডোটিকে অন্য উইন্ডোর নীচে নামানো হবে"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "উইন্ডো উলম্ব দিশায় বড় করুন"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "উইন্ডো অনুভূমিক দিশায় বড় করুন"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "পর্দার উপরে বাঁদিকের কোণে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "পর্দার উপরে ডানদিকের কোণে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "পর্দার নীচে বাঁদিকের কোণে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "পর্দার নীচে ডানদিকের কোণে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "পর্দার উপরের অংশে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "পর্দার নীচের অংশে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "পর্দার ডানদিকের অংশে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "পর্দার বাঁদিকের অংশে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "পর্দার কেন্দ্রে উইন্ডো স্থাপন করা হবে"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(কার্যকরী নয়) উইন্ডোর পরিবর্তে অ্যাপ্লিকেশন অনুসারে চলাচল করা সম্ভব"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"উইন্ডোর শিরোনামে ব্যবহৃত ফন্টের ব্যাখ্যা রূপে একটি পংক্তি। titlebar_font_size "
+"বিকল্পের মান 0 রূপে ধার্য করা হলে ফন্টের ব্যাখ্যায় উল্লিখিত ফন্টের মাপ ব্যবহৃত হবে। "
+"titlebar_uses_desktop_font বিকল্পের মান true হলে এই বিকল্পের ব্যবহার নিষ্ক্রিয় "
+"করা হবে।"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "শিরোনামের বারে দুইবার ক্লিক করা হলে করণীয় কর্ম"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "শিরোনামের বারে মাউসের মাঝের বাটন ক্লিক করা হলে সঞ্চালনযোগ্য কর্ম"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "শিরোনামের বারে মাউসের ডানদিকের বাটন ক্লিক করা হলে সঞ্চালনযোগ্য কর্ম"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "শিরোনাম বারে বাটনের বিন্যাস"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"শিরোনাম বারের মধ্যে বাটনের বিন্যাস। চিহ্নিত মান একটি পংক্তি হওয়া আবশ্যক যেমন "
+"\"menu:minimize,maximize,spacer,close\"; কোলোন চিহ্ন দ্বারা উইন্ডোর বাঁদিকের "
+"কোণার ও ডানদিকের কোণার মান বিভাজিত করা হয় এবং বাটনের নামগুলি কমা-চিহ্ন দ্বারা "
+"বিভক্ত।দুটি বাটন অনুরূপ হওয়া সম্ভব নয়। অজানা বাটনের নাম সতর্কবাণী বিনা অগ্রাহ্য করা "
+"হয় যার ফলে ভবিষ্যতে প্রকাশিত marco-র সংস্করণের সাথে বিনা দ্বন্দ্বে বাটন যোগ করা "
+"সম্ভব হবে। পাশাপাশি স্থাপিত দুটি বাটনের মধ্যে ব্যবধান সৃষ্টি করার জন্য একটি বিশেষ "
+"spacer ট্যাগ যোগ করা যাবে।"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "ব্যবহৃত উইন্ডো স্বয়ংক্রিয়রূপে বড় করা হবে"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+"চিহ্নিত পরিবর্তক-কি টিপে ধরে উইন্ডোর উপর ক্লিক করা হলে উইন্ডোটির স্থান পরিবর্তন "
+"(বাঁদিকের বাটনে ক্লিক), মাপ পরিবর্তন (মধ্যবর্তী বাটনে ক্লিক) অথবা উইন্ডোর মেনু "
+"প্রদর্শন (ডানদিকের বাটনে ক্লিক) করা সম্ভব হবে। \"mouse_button_resize\" কি সহযোগে "
+"বাঁদিক ও ডানদিকের বাটনের কর্মগুলি অদলবদল করা যাবে। পরিবর্তক লেখার জন্য \"&lt;"
+"Alt&gt;\" অথবা \"&lt;Super&gt;\" প্রভৃতি বিন্যাস ব্যবহার করা হয়।"
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "কি-বাইন্ডিং ব্যবহৃত হলে সঞ্চালনযোগ্য কমান্ড"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "কম্পোসিটিং পরিচালন ব্যবস্থা"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "নতুন উইন্ড উজ্জ্বল করার প্রণালী নিয়ন্ত্রণ করুন"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "বর্তমানে ব্যবহৃত থিম"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "স্বয়ংক্রিয়রূপে উইন্ডোর বড় করার পূর্বে বিলম্বক্ষণ, মিলিসেকেন্ডে ব্যক্ত"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "কমপোসিটিং পরিচালন ব্যবস্থা রূপে Marco প্রয়োগ করা হবে কি না তা ধার্য করা হবে।"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"অ্যাপ্লিকেশন অথবা সিস্টেমের দ্বারা শ্রুতিগম্য 'beeps' শব্দ উৎপন্ন করা হবে কিনা তা "
+"নির্ধারণ করে; নিঃশব্দ 'beeps' শব্দের জন্য 'visual bell'-র সাথে ব্যবহারযোগ্য।"
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"পুরোনো অথবা ক্ষতিগ্রস্ত অ্যাপ্লিকেশনের ক্ষেত্রে আবশ্যক ত্রুটিপূর্ণ বৈশিষ্ট্যের ব্যবহার "
+"নিষ্ক্রিয় করা হবে"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Visual Bell সক্রিয় করা হবে"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"মান true ধার্য করা হলে ও উজ্জ্বল করার মোড \"sloppy\" অথবা \"mouse\" হয়ে থাকলে "
+"auto_raise_delay কি দ্বারা চিহ্নিত মিলিসেকেন্ড পরে উজ্জ্বলিত উইন্ডোটি স্বয়ংক্রিয়রূপে "
+"বড় করা হবে। উইন্ডোর উপর ক্লিক করে উইন্ডো বড় করার বৈশিষ্ট্য অথবা ড্র্যাগ-ড্রপ কর্ম "
+"সঞ্চালনকালে উইন্ডোর মধ্যে প্রবেশের সাথে এর কোনো সম্পর্ক নেই।"
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"মান true হলে, titlebar_font বিকল্পটি অগ্রাহ্য করা হবে ও উইন্ডোর শিরোনামের জন্য "
+"অ্যাপ্লিকেশনের ক্ষেত্রে চিহ্নিত প্রমিত ফন্ট ব্যবহৃত হবে।"
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"মান true হলে, marco দ্বারা ব্যবহারকারীদের কম ফিড-ব্যাক প্রদান করা হবে এবং এর "
+"জন্য অ্যানিমেশন প্রভৃতি উপেক্ষা করে ওয়াইর-ফ্রেম ব্যবহার করা হবে। এর ফলে অনেক "
+"ব্যবহারকারীর ক্ষেত্রে ব্যবহারযোগ্যতা হ্রাস পেলেও লিগাসি অ্যাপ্লিকেশন সঞ্চালন করা যাবে "
+"এবং টারমিনাল সার্ভারের ক্ষেত্রে বিশেষ কর্মোপযোগিতা উপলব্ধ করবে। তথাপি সহায়ক "
+"প্রযুক্তির ব্যবহার সক্রিয় থাকাকালীন ওয়াইর-ফ্রেমের ব্যবহার নিষ্ক্রিয় করা হয়।"
+
+# fuzzy
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"মান true হলে, উইন্ডোর পরিবর্তে Marco অ্যাপ্লিকেশন অনুযায়ী কর্ম সঞ্চালন করবে। "
+"অ্যাপ্লিকেশন-ভিত্তিক পরিবেশ Mac'র অনুরূপ ও Windows'র সাথে এর সাদৃশ্য কম। অ্যাপ্লিকেশন-"
+"ভিত্তিক মোডে কোনে উইন্ডো উজ্জ্বল করা হলে সংশ্লিষ্ট অ্যাপ্লিকেশনের সমস্ত উইন্ডো বড় করা "
+"হবে। উপরন্তু উজ্জ্বল করার সময় কৃত ক্লিক, উইন্ডোর মাধ্যমে অন্যান্য অ্যাপ্লিকেশনে প্রেরিত "
+"হয় না। বাস্তবে অ্যাপ্লিকেশন-ভিত্তিক মোড বর্তমানে বিশেষ প্রয়োগ করা হয় না।"
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "মান true হলে, রিসোর্সের ব্যবহার হ্রাস করতে কর্মক্ষমতা হ্রাস করা হবে"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "পরিবর্তিত উইন্ডো ক্লিক কর্মের ফলে ব্যবহারযোগ্য পরিবর্তক"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "কর্মক্ষেত্রের নাম"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "কর্মক্ষেত্রের সংখ্যা"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"কর্মক্ষেত্রের সংখ্যা। শূণ্যের অধিক হওয়া আবশ্যক ও সর্বোচ্চ অনুমোদিত কর্মক্ষেত্রের সংখ্যা "
+"চিহ্নিত হওয়া আবশ্যক যার ফলে ভুলবসত অত্যাধিক কর্মক্ষেত্রের উপস্থিতির ফলে ডেস্কটপ "
+"ক্ষতিগ্রস্ত না হয়।"
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "একটি সুনির্দিষ্ট কমান্ড সঞ্চালন করুন"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"\"mouse_button_modifier\"-এ চিহ্নিত কি টিপে ধরে, ডানদিকের বাটন সহযোগে মাপ "
+"পরিবর্তন ও মধ্যম বাটন সহযোগে মেনু প্রদর্শন করার জন্য এই মানটি true (সত্য) ধার্য করুন; "
+"বিপরীত বৈশিষ্ট্য সহযোগে কার্যকরী করার জন্য মান false (সত্য নয়) ধার্য করুন।"
+
+# from wikipedia: "decoupling" is used to identify the separation of software blocks that shouldn't depend on each other."
+# changed the desperation in the last line to a more formal tone
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"এই বিকল্পের মান false (সত্য নয়) নির্ধারণ করা হলে ত্রুটিপূর্ণ আচরণ দেখা দিতে পারে, "
+"এই কারণে ডিফল্ট মান true (সত্য) পরিবর্তন না করা বাঞ্ছনীয়। কিছু কর্মের (উদাহরণ, "
+"ক্লায়েন্ট অঞ্চলে ক্লিক, উইন্ডোর মাপ পরিবর্তন অথবা স্থানান্তর) পার্শ্ব প্রতিক্রিয়া রূপে "
+"স্বাভাবিকভাবে উইন্ডো প্রদর্শন করা হয়। এই বিকল্পটি false (সত্য নয়) ধার্য করা "
+"অতিমাত্রায় অবাঞ্ছিত এবং এর ফলে ব্যবহারকারীদের দ্বারা সঞ্চালিত অন্যান্য কর্মের কারণে "
+"উইন্ডো দৃশ্যমান করা হবে না ও অন্যান্য অ্যাপ্লিকেশন থেকে আগত অনুরোধ অগ্রাহ্য করা হবে। "
+"অধিক বিবরণের জন্য http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6 দেখুন। "
+"এই বিকল্পরে মান false (সত্য নয়) হলেও বিভিন্ন প্রক্রিয়ার, উইন্ডো দৃশ্যমান করা যাবে: "
+"উইন্ডোর মধ্যে যে কোনো স্থানে alt-left-click করলে, উইন্ডোর সাজসজ্জার জন্য ব্যবহৃত "
+"স্থানে স্বাভাবিক ক্লিক করলে, অথবা পেজার থেকে উৎপন্ন বিশেষ বার্তা দ্বারা যেমন "
+"কর্মতালিকার অ্যাপ্লেট থেকে প্রাপ্ত সক্রিয়করণের অনুরোধ। বর্তমানে click-to-focus মোডে "
+"এই বিকল্পটি নিষ্ক্রিয় করা হয়েছে। উল্লেখ্য, raise_on_click বিকল্পের মান false (সত্য "
+"নয়) হলে উইন্ডো দৃশ্যমান করার বিভিন্ন প্রক্রিয়াগুলির মধ্যে অ্যাপ্লিকেশনের প্রোগ্রাম দ্বারা "
+"উইন্ডো দৃশ্যমান করার অনুরোধগুলি অন্তর্ভুক্ত করা হয় না; অনুরোধের কারণ নির্বিশেষে এই ধরনে "
+"সকল অনুরোধ উপেক্ষা করা হবে। এই বৈশিষ্ট্য নিষ্ক্রিয় করার ফলে কোনো অ্যাপ্লিকেশন না "
+"চালানো সম্ভব হলে, অ্যাপ্লিকেশন ডিভেলপররা সংশ্লিষ্ট ব্যবহারকারীদেরকে এই বিকল্পটি "
+"পুনরায় true (সত্যা) হিসাবে নির্ধারণ করার প্রস্তাব দিন, অন্যথা এই \"বাগ\" সমাধান "
+"করা সম্ভব নয়।"
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"কয়েকটি অ্যাপ্লিকেশন দ্বারা সুনির্দিষ্ট বৈশিষ্ট্যের মান অগ্রাহ্য করা হয় যার ফলে উইন্ডো "
+"পরিচালন ব্যবস্থা ক্ষতিগ্রস্ত হয়। এই বিকল্পের দ্বারা Marco সুস্পষ্টরূপে সঠিক চালনার "
+"মোডে স্থাপিত হবে যার ফলে ইউজার ইন্টারফেস তুলনামূলকরূপে স্থায়ী হবে যদি কোনো "
+"অ্যাপ্লিকেশনের গতিবিধি উশৃঙ্খল না হয়ে থাকে।"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "সিস্টেম ঘন্টি শোনা যাবে"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"এর দ্বারা Marco'কে সিস্টেম ঘন্টি অথবা অন্য কোনো অ্যাপ্লিকেশনের 'ঘন্টি' থেকে "
+"উৎপন্ন শব্দের সংকেত প্রদর্শনের নির্দেশ প্রদান করা হয়। বর্তমানে দুটি বৈধ মান উপস্থিত "
+"রয়েছে, \"fullscreen\" যার ফলে সম্পূর্ণ পর্দা জুড়ে সাদা-কালো ঝলকানি হয় এবং "
+"\"frame_flash\" যার ফলে ঘন্টির শব্দ উৎপন্নকারী অ্যাপ্লিকেশনের শিরোনাম-বারে ঝলকানি "
+"সৃষ্টি করা হবে। শব্দ উৎপন্নকারী অ্যাপ্লিকেশনের পরিচয় জানতে পারা না গেলে (ডিফল্ট "
+"\"system beep (সিস্টেম বিপ)\"'র ক্ষেত্রে) বর্তমানে উজ্জ্বলিত উইন্ডোর শিরোনামের বারে "
+"ঝলকানি সৃষ্টি করা হবে।"
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N কিগুলি দ্বারা এই সমস্ত কমান্ডের "
+"ক্ষেত্রে সংশ্লিস্ট কি-বাইন্ডিং ব্যাখ্যা করা হয়।run_command_N'র কি-বাইন্ডিং প্রয়োগ করা "
+"হলে command_N সঞ্চালিত হবে।"
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot কি দ্বারা একটি কি-"
+"বাইন্ডিং ব্যাখ্যা করা হয় যার ফলে এই বৈশিষ্ট্য দ্বারা চিহ্নিত কমান্ড সঞ্চালিত হবে।"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot কি দ্বারা "
+"একটি কি-বাইন্ডিং ব্যাখ্যা করা হয় যার ফলে এই বৈশিষ্ট্য দ্বারা চিহ্নিত কমান্ড সঞ্চালিত "
+"হবে।"
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"যে কি-বাইন্ডিং দ্বারা /apps/marco/keybinding_commands থেকে সংশ্লিষ্ট সংখ্যা "
+"দ্বারা চিহ্নিত কমান্ড সঞ্চালিত হবে। \"&lt;Control&gt;a\" অথবা \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" বিন্যাস ব্যবহৃত হবে। পার্সার হরফের ছাঁদ সম্পর্কে সচেতন নয় এবং প্রয়োজনে "
+"\"&lt;Ctl&gt;\" ও \"&lt;Ctrl&gt;\"'র অনুরূপ সংক্ষিপ্ত রূপও ব্যবহার করা যাবে। "
+"বিকল্পের ক্ষেত্রে বিশেষ পংক্তি \"disabled\" প্রয়োগ করা হলে এই কর্মের জন্য কোনো কি-"
+"বাইন্ডিং ব্যবহার করা হবে না।"
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "কর্মক্ষেত্রের নাম"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "পর্দার ছবি নেওয়ার কমান্ড"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "থিম দ্বারা উইন্ডোর প্রান্ত, শিরোনামের-বার প্রভৃতির বিন্যাস নির্ধারিত হবে।"
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"auto_raise-র মান true (সত্য) নির্ধারিত হলে, উইন্ডো পুনরায় প্রদর্শনের পূর্বে বিলম্বের "
+"সময়ের পরিমাণ। এক সেকেন্ডের হাজার ভাগ অনুসারে এই বিলম্বের পরিমাণ ধার্য করা হয়।"
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"উইন্ডো সক্রিয় করার প্রক্রিয়াটি উইন্ডোর ফোকাস মোড দ্বারা চিহ্নিত করা হয়। এই ক্ষেত্রে "
+"তিনটি সম্ভাব্য মান; ক্লিক করে উইন্ডোর উপর ফোকাস করার জন্য \"click\", উইন্ডোর মধ্যে "
+"মাউস প্রবেশ করলে উইন্ডো ফোকাস করার জন্য \"sloppy\", উইন্ডোর মধ্যে মাউস প্রবেশ করলে "
+"উইন্ডো ফোকাস করার জন্য ও মাউসটি প্রস্থান করলে উইন্ডো থেকে ফোকাস সরিয়ে নেওয়ার জন্য "
+"\"mouse\" ব্যবহার করা হবে।"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "উইন্ডোর ছবি নেওয়ার জন্য ব্যবহৃত কমান্ড"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"শিরোনাম-বারের উপর দুইবার ক্লিক করার সম্ভাব্য ফলাফল এই বিকল্প দ্বারা নির্ধারিত হয়। "
+"বর্তমানে বৈধ বিকল্পগুলি হল: উইন্ডোকে ছায়াবৃত/ছায়ামুক্ত করার জন্য 'toggle_shade', "
+"সর্বাধিক মাপে উইন্ডো স্থাপন অথবা সর্বাধিক মাপ বাতিল করার জন্য 'toggle_maximize', "
+"চিহ্নিত দিশায় সর্বাধিক মাপে উইন্ডো স্থাপন অথবা সর্বাধিক মাপ বাতিল করার জন্য "
+"'toggle_maximize_horizontally' ও 'toggle_maximize_vertically', সর্বনিম্ন মাপে "
+"উইন্ডো স্থাপন করার জন্য 'minimize', উইন্ডো গুটিয়ে ফেলার জন্য 'shade', উইন্ডোর মেনু "
+"প্রদর্শনের জন্য 'menu', অন্যান্য সকল উইন্ডোর নীচে উইন্ডোটি স্থাপন করার জন্য 'lower', "
+"ও 'none' ধার্য করা হলে কিছু করা হবে না।"
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"শিরোনাম-বারের উপর মাউসের মধ্যম বাটন সহযোগে ক্লিক করার সম্ভাব্য ফলাফল এই বিকল্প "
+"দ্বারা নির্ধারিত হয়। বর্তমানে বৈধ বিকল্পগুলি হল: উইন্ডোকে ছায়াবৃত/ছায়ামুক্ত করার জন্য "
+"'toggle_shade', সর্বাধিক মাপে উইন্ডো স্থাপন অথবা সর্বাধিক মাপ বাতিল করার জন্য "
+"'toggle_maximize', চিহ্নিত দিশায় সর্বাধিক মাপে উইন্ডো স্থাপন অথবা সর্বাধিক মাপ "
+"বাতিল করার জন্য 'toggle_maximize_horizontally' ও "
+"'toggle_maximize_vertically', সর্বনিম্ন মাপে উইন্ডো স্থাপন করার জন্য 'minimize', "
+"উইন্ডো গুটিয়ে ফেলার জন্য 'shade', উইন্ডোর মেনু প্রদর্শনের জন্য 'menu', অন্যান্য সকল "
+"উইন্ডোর নীচে উইন্ডোটি স্থাপন করার জন্য 'lower', ও 'none' ধার্য করা হলে কিছু করা "
+"হবে না।"
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"শিরোনাম-বারের উপর মাউসের ডানদিকের বাটন সহযোগে ক্লিক করার সম্ভাব্য ফলাফল এই "
+"বিকল্প দ্বারা নির্ধারিত হয়। বর্তমানে বৈধ বিকল্পগুলি হল: উইন্ডোকে ছায়াবৃত/ছায়ামুক্ত "
+"করার জন্য 'toggle_shade', সর্বাধিক মাপে উইন্ডো স্থাপন অথবা সর্বাধিক মাপ বাতিল "
+"করার জন্য 'toggle_maximize', চিহ্নিত দিশায় সর্বাধিক মাপে উইন্ডো স্থাপন অথবা "
+"সর্বাধিক মাপ বাতিল করার জন্য 'toggle_maximize_horizontally' ও "
+"'toggle_maximize_vertically', সর্বনিম্ন মাপে উইন্ডো স্থাপন করার জন্য 'minimize', "
+"উইন্ডো গুটিয়ে ফেলার জন্য 'shade', উইন্ডোর মেনু প্রদর্শনের জন্য 'menu', অন্যান্য সকল "
+"উইন্ডোর নীচে উইন্ডোটি স্থাপন করার জন্য 'lower', ও 'none' ধার্য করা হলে কিছু করা "
+"হবে না।"
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"নতুন উইন্ডোর উপর ফোকাস করার জন্য বিভিন্ন অতিরিক্ত নিয়ন্ত্রণ ব্যবস্থা এই বিকল্প দ্বারা "
+"ধার্য করা হয়। এই ক্ষেত্রে দুটি সম্ভাব্য মান প্রয়োগ করা যাবে; ব্যবহারকারীর ক্ষেত্রে "
+"ধার্য স্বাভাবিক ফোকাস মোডের জন্য \"smart\", ও টার্মিন্যাল থেকে আরম্ভ করা উইন্ডোগুলির "
+"জন্য ফোকাস ধার্য না করার উদ্দেশ্যে \"strict\"।"
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"সিস্টেম অথবা কোনো অ্যাপ্লিকেশন দ্বারা 'ঘন্টা' অথবা 'বিপ' শব্দ করা হলে, একটি দৃশ্যমান "
+"সংকেত সক্রিয় করা হবে; কম শ্রবণশক্তি সহ ব্যক্তি অথবা কোলাহলপূর্ণ স্থানে এটি বিশেষ "
+"সহায়ক।"
+
+# "অবৃহদায়ত কর"
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "উইন্ডোর শিরোনামে সিস্টেমের প্রমিত মাপের ফন্ট ব্যবহার করা হবে"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "ভিসুয়্যল বেলের ধরন"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "ব্যবহারকারীদের দ্বারা সঞ্চালিত কর্মের ফলে উইন্ডো বড় করা হবে কি না"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "ডানদিকের বাটন প্রয়োগ করে মাপ পরিবর্তন করা হবে কি না"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "উইন্ডো উজ্জ্বল করার মোড"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "উইন্ডোর শিরোনামে ব্যবহৃত ফন্ট"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "ব্যবহারপদ্ধতি: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "উইন্ডো বন্ধ করুন"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "উইন্ডো মেনু"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "উইন্ডো আড়াল করুন"
+
+# "উইন্ডো ক্ষুদ্রায়ত কর"
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "উইন্ডো বড় করুন"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "উইন্ডো প্রদর্শন করুন"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "উইন্ডো গুটিয়ে ফেলুন"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "উইন্ডো বিস্তার করুন"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "উইন্ডো সর্বোচ্চ স্তরে স্থাপন করা হবে"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "উইন্ডো সর্বোচ্চ স্তর থেকে সরিয়ে ফেলা হবে"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "দৃশ্যমান কর্মক্ষেত্রে সর্বদা উপস্থিত"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "শুধুমাত্র একটি কর্মক্ষেত্রের মধ্যে উইন্ডো স্থাপন করা হবে"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "আড়াল করুন (_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "বড় করুন (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "স্বাভাবিক মাপ (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "গোটাও (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "খোলো (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "স্থানান্তরণ (_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "মাপ পরিবর্তন (_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "পর্দার উপর শিরোনামের বার স্থানান্তর করুন (_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "সর্বদা উপরে (_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "দৃশ্যমান কর্মক্ষেত্রে সর্বদা উপস্থিত (_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "শুধুমাত্র বর্তমান কর্মক্ষেত্রে (_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "বাঁদিকের কর্মক্ষেত্রে স্থানান্তর করুন (_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "ডান দিকের কর্মক্ষেত্রে স্থানান্তর করুন (_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "উপরের কর্মক্ষেত্রে স্থানান্তরণ (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "নীচের কর্মক্ষেত্রে স্থানান্তরণ (_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "বন্ধ করুন (_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "কর্মক্ষেত্র %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "কর্মক্ষেত্র ১০ (_0)"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "কর্মক্ষেত্র %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "পৃথক কর্মক্ষেত্রে স্থানান্তর করুন (_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "মিটা"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "উপরে"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "নীচে"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "বাঁদিকে"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "ডানদিকে"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "ফ্রেম জ্যামিতি দ্বারা \"%s\" পরিমাপ নির্ধারিত হয়নি"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "ফ্রেম জ্যামিতি দ্বারা \"%s\" পরিমাপ \"%s\" প্রান্তের জন্য নির্ধারিত হয়নি"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "বাটনের অ্যাপেক্ট অনুপাত %g যথাযথ নয়"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "ফ্রেম জ্যামিতি দ্বারা বাটনের মাপ নির্ধারিত হয়নি"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "গ্রেডিয়েন্টের ক্ষেত্রে দুটি রং নির্ধারিত হওয়া আবশ্যক"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-র রং সংক্রান্ত মান ধার্য করা সময়, বন্ধনি চিহ্নের মধ্যে অবস্থা লেখা আবশ্যক। "
+"উদাহরণ: gtk:fg[NORMAL], এই ক্ষেত্রে NORMAL একটি অবস্থা চিহ্নিত করে; \"%s\" পার্স "
+"করতে ব্যর্থ"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-র রং সংক্রান্ত মান ধার্য করা সময়, অবস্থা লেখার পরে বন্ধনি চিহ্ন লেখা আবশ্যক। "
+"উদাহরণ: gtk:fg[NORMAL], এই ক্ষেত্রে NORMAL একটি অবস্থা চিহ্নিত করে; \"%s\" পার্স "
+"করতে ব্যর্থ"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "রং নির্ধারণের জন্য state \"%s\" বোধগম্য হয়নি"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "রং নির্ধারণের জন্য রং'র বিষয়বস্তু \"%s\" বোধগম্য হয়নি"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "ব্লেন্ড বিন্যাস \"blend/bg_color/fg_color/alpha\", \"%s\" বিন্যাসের সাথে সুসংগত নয়"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "ব্লেন্ড করা রং'এ আল্ফা মান \"%s\" পার্স করতে ব্যর্থ"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "ব্লেন্ড করা রং'এ আল্ফা মান \"%s\" 0.0 ও1.0 সীমারেখার মধ্যে নয়"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "ছায়ার বিন্যাস \"shade/base_color/factor\", \"%s\" বিন্যাসের সাথে সুসংগত নয়"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "ছায়াযুক্ত রং'র ক্ষেত্রে ছায়ার মাপ \"%s\" পার্স করতে ব্যর্থ"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "ছায়াযুক্ত রং'র ক্ষেত্রে ছায়ার মান \"%s\" শূণ্যের কম"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "\"%s\" রং পার্স করতে ব্যর্থ"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "স্থানাঙ্কের এক্সপ্রেশনের মধ্যে '%s' অক্ষর উপস্থিত এবং এর ব্যবহার অনুমোদিত নয়"
+
+# what is bengali for Coordinate expression ? অবস্থানের মান or অবস্থানের সমীকরণ?
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"স্থানাঙ্কের এক্সপ্রেশনের মধ্যে '%s' ফ্লোটিং পয়েন্ট সংখ্যা উপস্থিত যা পার্স করা সম্ভব "
+"হয়নি"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "স্থানাঙ্কের এক্সপ্রেশনের মধ্যে পূর্ণসংখ্যা '%s' উপস্থিত রয়েছে যা পার্স করা সম্ভব হয়নি"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে টেক্সটের প্রারম্ভিক স্থানে অজানা অপারেটর: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "কো-ওর্ডিনেট এক্সপ্রেশন ফাঁকা অথবা বোধগম্য নয়"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের ফলাফলে শূণ্য দ্বারা ভাগ করার অবস্থা উৎপন্ন হয়"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"কো-ওর্ডিনেট এক্সপ্রেশন দ্বারা ফ্লোটিং পয়েন্ট সংখ্যার উপর mod অপারেটর ব্যবহারের প্রয়াস "
+"করা হয়েছে"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে \"%s\" অপারেটর উপস্থিত কিন্তু অপারেন্ড প্রত্যাশিত"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে প্রত্যাশিত অপারেন্ডের পরিবর্তে অপারেটর উপস্থিত"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের অন্তে প্রত্যাশিত অপারেন্ডের পরিবর্তে অপারেটর উপস্থিত"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"কো-ওর্ডিনেট এক্সপ্রেশনের ক্ষেত্রে \"%c\" অপারেটরের পরে \"%c\" অপারেটর উপস্থিত এবং "
+"দুটির মধ্যে কোনো অপারেন্ড উপস্থিত নেই"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে অজানা ভেরিয়েবল অথবা কনস্ট্যান্ট \"%s\" উপস্থিত"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের পার্সারের বাফারের সীমা অতিক্রান্ত হয়েছে।"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে শেষের বন্ধনী চিহ্ন উপস্থিত, প্রারম্ভিক চিহ্ন অনুপস্থিত"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে প্রারম্ভিক বন্ধনী চিহ্ন উপস্থিত শেষের বন্ধনী চিহ্ন "
+"অনুপস্থিত"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "কো-ওর্ডিনেট এক্সপ্রেশনের মধ্যে কোনো অপারেটর অথবা অপারেন্ড উপস্থিত নেই"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "থিমের মধ্যে উপস্থিত এক্সপ্রেশনের ফলে সমস্যা উৎপন্ন হয়েছে: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"চিহ্নিত ফ্রেমের বিন্যাসের জন্য <button function=\"%s\" state=\"%s\" draw_ops="
+"\"whatever\"/> উল্লেখ করা আবশ্যক"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> অনুপস্থিত"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "\"%s\" থিম লোড করতে ব্যর্থ: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "<%s> নির্ধারিত হয়নি \"%s\" থিমের জন্য"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"\"%s\" ধরনের উইন্ডোর জন্য \"%s\" থিমের মধ্যে ফ্রেমের বিন্যাস নির্ধারিত হয়নি, একটি "
+"<window type=\"%s\" style_set=\"whatever\"/> স্বত্বা যোগ করুন"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"ব্যবহারকারী দ্বারা নির্ধারিত কনস্ট্যান্টের ক্ষেত্রে প্রারম্ভে বড় ছাঁদের হরফ উপস্থিত থাকা "
+"আবশ্যক; \"%s\"'এ ক্ষেত্রে এটি উপস্থিত নেই"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "কনস্ট্যান্ট \"%s\" পূর্বে নির্ধারিত হয়েছে"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "<%s> স্বত্বায় \"%s\" অ্যাট্রিবিউট অনুপস্থিত"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "পংক্তি %d অক্ষর %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "বৈশিষ্ট্য \"%s\" একই <%s> স্বত্বায় দুইবার ব্যবহৃত হয়েছে"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "এই প্রসঙ্গে বৈশিষ্ট্য \"%s\", <%s> স্বত্বার ক্ষেত্রে বৈধ নয়"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "পূর্ণসংখ্যা রূপে \"%s\" পার্স করতে ব্যর্থ"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "অন্তিম অংশের \"%s\" অক্ষরগুলি \"%s\" পংক্তির মধ্যে বোধগম্য নয়"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "পূর্ণসংখ্যা %ld অবশ্যই শণ্যের অধিক হওয়া আবশ্যক"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "পূর্ণসংখ্যা %ld অত্যাধিক বড়, বর্তমানে সর্বাধিক মান %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\"কে দশমিকযুক্ত সংখ্যা রূপে পার্স করতে ব্যর্থ"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "বুলিয়ান মান \"true\" অথবা \"false\" হওয়া আবশ্যক, \"%s\" ব্যবহার করা সম্ভব নয়"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "কোণের মান 0.0 থেকে 360.0'র মধ্যে হওয়া আবশ্যক, %g উল্লিখিত\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "আলফার মান 0.0 (অদৃশ্য) থেকে 1.0 (সম্পূর্ণ অস্বচ্ছ)'র মধ্যে হওয়া আবশ্যক, %g উল্লিখিত\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"শিরোনামের মাত্রা \"%s\" বৈধ নয় (xx-small,x-small,small,medium,large,x-large,"
+"xx-large মানগুলির মধ্যে যে কোনো একটি হওয়া আবশ্যক)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> নাম \"%s\"'এ দ্বিতীয়বার ব্যবহৃত হয়েছে "
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> উর্ধ্বতন বস্তু \"%s\" নির্ধারিত হয়নি"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> জ্যামিতি \"%s\" সুনির্দিষ্ট নয়"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> দ্বারা জ্যামিতি নির্ধারিত হওয়া আবশ্যক অথবা ঊর্ধ্বতন বস্তুর ক্ষেত্রে জ্যামিতির "
+"উপস্থিতি আবশ্যক"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "আল্ফার কোনো অর্থপূর্ণ মান ধার্য করার জন্য পটভূমির মান উল্লেখ করা আবশ্যক"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "অজানা প্রকার \"%s\", <%s> স্বত্বায় উপস্থিত।"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "অজানা style_set \"%s\", <%s> স্বত্বায় উপস্থিত"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "\"%s\" প্রকারের উইন্ডোর জন্য একটি স্টাইল সেট নির্ধারিত হয়েছে"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "<%s> স্বত্বা <%s>'র নীচে ব্যবহার করা সম্ভব নয়"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"বাটনের জন্য \"button_width\"/\"button_height\" ও \"aspect_ratio\" (অ্যাস্পেক্ট "
+"অনুপাত) উভয় একসাথে উল্লেখ করা সম্ভব নয়"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "দুরত্ব \"%s\" অজানা"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "অ্যাস্পেক্ট অনুপাত \"%s\" অজানা"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "প্রান্ত \"%s\" অজানা"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "<%s> স্বত্বায় \"start_angle\" অথবা \"from\" বৈশিষ্ট্য অনুপস্থিত"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "<%s> স্বত্বায় \"extent_angle\" অথবা \"to\" বৈশিষ্ট্য অনুপস্থিত"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "গ্রেডিয়েন্টের জন্যে \"%s\" মান বোধগম্য হয়নি"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "ভরাট করার ধরন \"%s\" <%s> স্বত্বার জন্য বোধগম্য হয়নি"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "অবস্থা \"%s\", <%s> স্বত্বার জন্য বোধগম্য হয়নি"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "শেডো \"%s\", <%s> স্বত্বার জন্য বোধগম্য হয়নি"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "তীরচিহ্ন \"%s\", <%s> স্বত্বার জন্য বোধগম্য হয়নি"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "\"%s\" নামক কোনো <draw_ops> নির্ধারিত হয়নি"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "এইখানে draw_ops \"%s\" উল্লেখ করার ফলে বৃত্তাকার নির্দেশিকা নির্মিত হবে"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "ফ্রেমের অংশের জন্য \"%s\" অবস্থান অজানা"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "ফ্রেমের বিন্যাসের মধ্যে %s অবস্থানে একটি অংশ উপস্থিত রয়েছে"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "\"%s\" নামের কোনো <draw_ops> নির্ধারিত হয়নি"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "বাটনের অজানা ফাংশান \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "\"%s\" ফাংশানটি এই সংস্করণে (%d, %d আবশ্যক) উপস্থিত নেই"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "বাটনের অজানা অবস্থা \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+"function %s state %s বৈশিষ্ট্যের মানের ক্ষেত্রে ফ্রেম বিন্যাসের মধ্যে একটি বাটন "
+"উপস্থিত রয়েছে"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "focus বৈশিষ্ট্যর মান হিসাবে \"%s\" গ্রহণযোগ্য নয়"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "state বৈশিষ্ট্যর মান হিসাবে \"%s\" গ্রহণযোগ্য নয়"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" নামক বিন্যাস নির্ধারণ করা হয়নি"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "resize বৈশিষ্ট্যর মান হিসাবে \"%s\" গ্রহণযোগ্য নয়"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"সর্বোচ্চ মাপ/ছায়াবৃত অবস্থার ক্ষেত্রে <%s> স্বত্বায় \"resize\" বৈশিষ্ট্য উপস্থিত থাকা "
+"উচিত নয়"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "সর্বোচ্চ মাপে ক্ষেত্রে <%s> স্বত্বায় \"resize\" বৈশিষ্ট্য উপস্থিত থাকা উচিত নয়"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "state %s resize %s focus %s বৈশিষ্ট্য সহ অবস্থার ক্ষেত্রে বিন্যাস নির্ধারিত হয়েছে"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "state %s focus %s অবস্থার জন্য বিন্যাস নির্ধারিত হয়েছে"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"একটি <piece> স্বত্বার সাথে দুটি draw_ops উপস্থিত থাকা সম্ভব নয় (থিম দ্বারা একটি "
+"draw_ops বৈশিষ্ট্য ও <draw_ops> স্বত্বা অথবা দুটি স্বত্বা উল্লিখিত হয়েছে)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"একটি <button> স্বত্বার সাথে দুটি draw_ops উপস্থিত থাকা সম্ভব নয় (থিম দ্বারা একটি "
+"draw_ops বৈশিষ্ট্য ও <draw_ops> স্বত্বা অথবা দুটি স্বত্বা উল্লিখিত হয়েছে)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"একটি <menu> স্বত্বার সাথে দুটি draw_ops উপস্থিত থাকা সম্ভব নয় (থিম দ্বারা একটি "
+"draw_ops বৈশিষ্ট্য ও <draw_ops> স্বত্বা অথবা দুটি স্বত্বা উল্লিখিত হয়েছে)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "থিমের মধ্যে সর্বাধিক দূরবর্তী স্বত্বাটি <marco_theme> হওয়া উচিত, <%s> নয়"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr " name/author/date/description স্বত্বার মধ্যে <%s> স্বত্বার ব্যবহার অনুমোদিত নয়"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<constant> স্বত্বার মধ্যে <%s> স্বত্বার ব্যবহার অনুমোদিত নয়"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "distance/border/aspect_ratio স্বত্বার মধ্যে <%s> স্বত্বার ব্যবহার অনুমোদিত নয়"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "draw operation (ড্র অপারেশন) স্বত্বার মধ্যে <%s> স্বত্বার ব্যবহার অনুমোদিত নয়"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%s> স্বত্বার মধ্যে <%s> স্বত্বার ব্যবহার অনুমোদিত নয়"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "ফ্রেমের অংশের জন্য draw_ops উপলব্ধ নেই"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "বাটনের জন্য draw_ops উপলব্ধ নেই"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> স্বত্বার মধ্যে টেক্সটের ব্যবহার অনুমোদিত নয়"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "এই থিমের ক্ষেত্রে <%s> দুইবার নির্দিষ্ট করা হয়েছে"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "%s থিমের জন্য একটি বৈধ ফাইল পেতে ব্যর্থ\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "%s থিম ফাইলের মধ্যে root <marco_theme> স্বত্বা অনুপস্থিত"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/উইন্ডো (_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/উইন্ডো/টিয়ার-অফ"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/উইন্ডো/ডায়লগ (_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/উইন্ডো/মোডাল ডায়লগ (_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/উইন্ডো/সামগ্রী (_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/উইন্ডো/স্প্ল্যাশ-স্ক্রিন (_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/উইন্ডো/উপরে আটকানো হবে (_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/উইন্ডো/নীচে আটকানো হবে (_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/উইন্ডো/বাঁদিকে আটকানো হবে (_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/উইন্ডো/ডানদিকে আটকানো হবে (_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/উইন্ডো/সমস্ত সংযুক্ত (_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/উইন্ডো/ডেস্কটপ (_k)"
+
+#: ../src/ui/theme-viewer.c:136
+msgid "Open another one of these windows"
+msgstr "এই ধরনের একটি নতুন উইন্ডো খুলুন"
+
+#: ../src/ui/theme-viewer.c:143
+msgid "This is a demo button with an 'open' icon"
+msgstr "'খোলা' আইকন বিশিষ্ট এটি একটি নমূনা বাটন"
+
+#: ../src/ui/theme-viewer.c:150
+msgid "This is a demo button with a 'quit' icon"
+msgstr "'প্রস্থান' আইকন বিশিষ্ট এটি একটি নমূনা বাটন"
+
+#: ../src/ui/theme-viewer.c:243
+msgid "This is a sample message in a sample dialog"
+msgstr "এটি নমুনা ডায়লগ বক্সে একটি নমুনা বার্তা"
+
+#: ../src/ui/theme-viewer.c:326
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "নকল মেনু বস্তু %d\n"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Border-only window"
+msgstr "শুধুমাত্র প্রান্তবিশিষ্ট উইন্ডো"
+
+#: ../src/ui/theme-viewer.c:362
+msgid "Bar"
+msgstr "বার"
+
+#: ../src/ui/theme-viewer.c:379
+msgid "Normal Application Window"
+msgstr "স্বাভাবিক অ্যাপ্লিকেশন উইন্ডো"
+
+#: ../src/ui/theme-viewer.c:383
+msgid "Dialog Box"
+msgstr "ডায়লগ বক্স"
+
+#: ../src/ui/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "মোডাল ডায়লগ বক্স"
+
+#: ../src/ui/theme-viewer.c:391
+msgid "Utility Palette"
+msgstr "সরঞ্জাম সহ প্যালেট"
+
+#: ../src/ui/theme-viewer.c:395
+msgid "Torn-off Menu"
+msgstr "পরিবর্তনশীল অবস্থানের মেনু"
+
+#: ../src/ui/theme-viewer.c:399
+msgid "Border"
+msgstr "প্রান্তরেখা"
+
+#: ../src/ui/theme-viewer.c:727
+#, c-format
+msgid "Button layout test %d"
+msgstr "বাটন বিন্যাসের পরীক্ষা %d"
+
+#: ../src/ui/theme-viewer.c:756
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "একটি উইন্ডো ফ্রেম নির্মাণের জন্য %g মিলিসেকেন্ড"
+
+#: ../src/ui/theme-viewer.c:799
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "ব্যবহারপদ্ধতি: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:806
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "থিম লোড করতে সমস্যা: %s\n"
+
+#: ../src/ui/theme-viewer.c:812
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" থিম %g সেকেন্ডে লোড করা হয়েছে\n"
+
+#: ../src/ui/theme-viewer.c:853
+msgid "Normal Title Font"
+msgstr "স্বাভাবিক মাপের শিরোনামে ব্যবহৃত ফন্ট"
+
+#: ../src/ui/theme-viewer.c:859
+msgid "Small Title Font"
+msgstr "ছোট মাপের শিরোনামে ব্যবহৃত ফন্ট"
+
+#: ../src/ui/theme-viewer.c:865
+msgid "Large Title Font"
+msgstr "বড় মাপের শিরোনামে ব্যবহৃত ফন্ট"
+
+#: ../src/ui/theme-viewer.c:870
+msgid "Button Layouts"
+msgstr "বাটনের বিন্যাস"
+
+#: ../src/ui/theme-viewer.c:875
+msgid "Benchmark"
+msgstr "মাপকাঠি"
+
+#: ../src/ui/theme-viewer.c:922
+msgid "Window Title Goes Here"
+msgstr "উইন্ডো শিরোনাম চিহ্নিত স্থানে স্থাপিত হবে"
+
+#: ../src/ui/theme-viewer.c:1026
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d-টি ফ্রেম আঁকা হয়েছে ক্লায়েন্ট প্রান্তের %g সেকেন্ডে (প্রতি ফ্রেমের জন্য %g মিলি "
+"সেকেন্ড) ও দেওয়া ঘড়ির %g সেকেন্ডে। X সার্ভারের রিসোর্সও এর মধ্যে অন্তর্ভুক্ত রয়েছে "
+"(প্রতি ফ্রেমের জন্য %g মিলি সেকেন্ড)\n"
+
+#: ../src/ui/theme-viewer.c:1245
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"অবস্থান চিহ্নকারী এক্সপ্রেশনের পরীক্ষা দ্বারা মান TRUE উল্লিখিত হলেও ত্রুটি নির্ধারিত "
+"হয়েছে"
+
+#: ../src/ui/theme-viewer.c:1247
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"অবস্থান চিহ্নকারী এক্সপ্রেশনের পরীক্ষা দ্বারা মান FALSE উল্লিখিত হলেও ত্রুটি নির্ধারিত "
+"হয়নি"
+
+#: ../src/ui/theme-viewer.c:1251
+msgid "Error was expected but none given"
+msgstr "ত্রুটি প্রত্যাশিত কিন্তু উল্লিখিত হয়নি"
+
+#: ../src/ui/theme-viewer.c:1253
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "ত্রুটি %d প্রত্যাশিত %d প্রদত্ত"
+
+#: ../src/ui/theme-viewer.c:1259
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "ত্রুটি প্রত্যাশিত নয় কিন্তু প্রাপ্ত: %s"
+
+#: ../src/ui/theme-viewer.c:1263
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x'র মান %d, %d প্রত্যাশিত"
+
+#: ../src/ui/theme-viewer.c:1266
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y'র মান %d, %d প্রত্যাশিত"
+
+#: ../src/ui/theme-viewer.c:1331
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d কো-ওর্ডিনেট এক্সপ্রেশন %g সেকেন্ডে পার্স করা হয়েছে (গড় %g সেকেন্ড)\n"
+
diff --git a/po/br.po b/po/br.po
new file mode 100644
index 00000000..96e93ed5
--- /dev/null
+++ b/po/br.po
@@ -0,0 +1,2058 @@
+# Breton translation for marco
+# Copyright (c) (c) 2006 Canonical Ltd, and Rosetta Contributors 2006
+# This file is distributed under the same license as the marco package.
+# Jérémy Ar Floc'h <[email protected]>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-03-30 11:23+0000\n"
+"PO-Revision-Date: 2009-08-25 12:07+0100\n"
+"Last-Translator: Denis <[email protected]>\n"
+"Language-Team: Brenux <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2009-05-12 10:04+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Burev"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Ardoer ar prenestroù"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Reked titour prenestr dianv: %d"
+
+#: ../src/core/delete.c:70
+#: ../src/core/delete.c:97
+#: ../src/ui/marco-dialog.c:50
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Dic'houest da zielfennañ \"%s\" evel ur c'hevan"
+
+#: ../src/core/delete.c:77
+#: ../src/core/delete.c:104
+#: ../src/ui/marco-dialog.c:57
+#: ../src/ui/theme-parser.c:531
+#: ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "N'eo ket bet komprenet an arouez \"%s\" er chadenn \"%s\""
+
+#: ../src/core/delete.c:135
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Stanket dirag dielfenn ar c'hannad \"%s\" diouzh argerzh ar bouestig diviz\n"
+
+#: ../src/core/delete.c:253
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Fazi lennerezh diouzh argerzh-diskouez ar bouestig diviz: %s\n"
+
+#: ../src/core/delete.c:336
+#, c-format
+msgid "Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr "Fazi en ur loc'hañ boest-kelaouiñ marco gouest da lazhañ arload : %s\n"
+
+#: ../src/core/delete.c:445
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "N'eus ket tu kavout an anv-ostiz: %s\n"
+
+#: ../src/core/display.c:256
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Mankout a ra an askouezhadenn %s , e'z eo ret evit ar c'henaozañ"
+
+#: ../src/core/display.c:334
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Fazi digoradur gant sistem diskouez X Window '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Kollet eo bet al liamm gant an diskouez '%s';\n"
+"pe neuze eo bet lazhet X pe eo bet lazhet/distrujet\n"
+"ar merour prenistri.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Fazi IO lazhus %d (%s) war diskouez '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid "Some other program is already using the key %s with modifiers %x as a binding\n"
+msgstr "Ur meziant all a implij an alc'hwez %s gant ar gemmerien %x e giz liammoù\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Bet eo bet ur fazi o lañsañ <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2381
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "N'eus bet termenet arc'had %d ebet.\n"
+
+#: ../src/core/keybindings.c:3335
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "N'eus bet despizet arc'had termenell ebet.\n"
+
+#: ../src/core/main.c:116
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., hag all\n"
+"Digor eo ar meziant-mañ; gwelit tarzh evit an amplegadoù eilañ.\n"
+"N'eus gwarant EBET; na talvoud kenwerzhpe .na implij prevez ispisial.\n"
+
+#: ../src/core/main.c:253
+msgid "Disable connection to session manager"
+msgstr "Lazhañ kevreadenn ar merour dalc'hadoù"
+
+#: ../src/core/main.c:259
+msgid "Replace the running window manager with Marco"
+msgstr "Implij Marco e lec'h ar merour dalc'hadoù en implij"
+
+#: ../src/core/main.c:265
+msgid "Specify session management ID"
+msgstr "Dibab ID merañ an dalc'hadoù"
+
+#: ../src/core/main.c:270
+msgid "X Display to use"
+msgstr "Diskouez X da implij"
+
+#: ../src/core/main.c:276
+msgid "Initialize session from savefile"
+msgstr "Deraouiñ an dalc'h adalek ar restr-gwareziñ"
+
+#: ../src/core/main.c:282
+msgid "Print version"
+msgstr "Diskouez an handelv"
+
+#: ../src/core/main.c:288
+msgid "Make X calls synchronous"
+msgstr "Ober sinkronel galvoù X"
+
+#: ../src/core/main.c:294
+msgid "Turn compositing on"
+msgstr "Gweredekaat kenaozadur"
+
+#: ../src/core/main.c:300
+msgid "Turn compositing off"
+msgstr "Diweredekaat kenaozadur"
+
+#: ../src/core/main.c:478
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "C'hwitadenn war furchal en teuliad neuzioù : %s\n"
+
+#: ../src/core/main.c:494
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "N'eo ket kavet un neuz ! Gwirit ma eus %s hag e-barzh neuzioù kustum.\n"
+
+#: ../src/core/main.c:550
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Dic'houest da adloc'hañ %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506
+#: ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "N'eo ket un talvoud mat evit an alc'hwez MateConf '%s'\n"
+
+#: ../src/core/prefs.c:587
+#: ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d gwaredet en alc'hwez MateConf %s n'eo ket etre %d ha %d\n"
+
+#: ../src/core/prefs.c:631
+#: ../src/core/prefs.c:708
+#: ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820
+#: ../src/core/prefs.c:1113
+#: ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146
+#: ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Didalvoudek eo rizh an alc'hwez MateConf \"%s\"\n"
+
+#: ../src/core/prefs.c:1969
+#: ../src/core/prefs.c:2472
+#, c-format
+msgid "Desk %d"
+msgstr "Burev %d"
+
+#: ../src/core/prefs.c:1999
+#: ../src/core/prefs.c:2177
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for keybinding \"%s\"\n"
+msgstr ""
+
+#: ../src/core/prefs.c:2553
+#, c-format
+msgid "Error setting name for Desk %d to \"%s\": %s\n"
+msgstr "FAzi en ur arventenniñ anv ar burev %d en « %s » : %s\n"
+
+#: ../src/core/screen.c:661
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "N'eus ket tu da zieubañ ar skramm %d war wel \"%s\"\n"
+
+#: ../src/core/session.c:837
+#: ../src/core/session.c:844
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "N'eus ket tu da grouiñ ar c'havlec'h '%s' : %s\n"
+
+#: ../src/core/session.c:1453
+#, c-format
+msgid "Unknown element %s"
+msgstr "Elfenn %s dianav"
+
+#: ../src/core/util.c:136
+#: ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Savet eo bet marco hep an doare displegus (verbose mode)\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Ardoer prenistri : "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Bug er ardoer-prenistri : "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Diwall ardoer prenestr : "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Fazi ardoer-prenistri : "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:577
+#: ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/core/window-props.c:351
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (war %s)"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Mont beteg Tachenn labour 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Mont beteg Tachenn labour 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Mont beteg Tachenn labour 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Mont beteg Tachenn labour 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Mont beteg Tachenn labour 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Mont beteg Tachenn labour 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Mont beteg Tachenn labour 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Mont beteg Tachenn labour 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Mont beteg Tachenn labour 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Mont beteg Tachenn labour 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Mont beteg Tachenn labour 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Mont beteg Tachenn labour 12"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Tennañ ur pakad skrammad"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Tennañ ur pakad skrammad eus ur prenestr"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Loc'hañ un termenell"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Brasaat ar prenestr"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Bihanaat ar prenestr"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Serriñ ar prenestr"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Dilec'hiañ ar prenestr"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Adventañ ar prenestr"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Dilec'hiañ ar prenestr d'an dachenn labour 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Dilec'hiañ ar prenestr d'un dachenn labour a gleiz"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Dilec'hiañ ar prenestr d'un dachenn labour a zehou"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Dilec'hiañ ar prenestr d'un dachenn labour a us"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Dilec'hiañ ar prenestr d'un dachenn labour dindan"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Brasaat a-blom ar prenestr"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Brasaat a-blaen ar prenestr"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(N'eo ket savet c'hoazh) An doare da furchal a zo liammet d'ar meziantoù ha n'eo ket d'ar prenistri"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Efed an doubl-klik war ar varrenn-ditl"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Aozadur an afelloù war ar varrenn ditl"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "A gas war-eeun ar prenestr emañ ar fokus enni war c'horre"
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Arc'hadoù da gas pa vo pouezet war an touchennoù liammet"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Merañ penaos vo tapet ar fokus gant prenistri nevez"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Neuz en implij"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Amzer da c'hortoz (e mili eilenoù) araog ar mont war c'horre emgefreek."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid "Determines whether applications or the system can generate audible 'beeps'; may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr "Dibab ma c'hell ar meziantoù pe ar sistem reiñ 'bipoù' da glevet; tu 'zo implijout an dra-se asamblez gant ar 'c'hloc'h hewel' evit kaout 'bipoù' didrouz."
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Implijout kloc'h hewel"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Kemmer da implijout evit klikerezh kemmet er prenestr"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Anv an dachenn labour"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "kementad an tachennoù labour"
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Kas un arc'had resis da benn"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Kloc'h ar reizhiad a c'hell bezañ klevet"
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Anv un dachenn labour"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Arc'had 'benn tennañ ur pakad skrammad"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Arc'had 'benn pakañ un skeudenn eus ur prenestr"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Arver : %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Serriñ ar prenestr"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Lañserioù ar prenestr"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Bihanaat ar prenestr"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Brasaat ar prenestr"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Bi_hanaat"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Bra_saat"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Divra_saat"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Plegañ"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Di_blegañ"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Dilec'hiañ"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Adventañ"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Dilec'hiañ ar varenn ditl 'zo er_skramm"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Atav war an dachenn labour war wel"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "War an dachenn-labour-mañ _hepken"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Kas d'an dachenn-labour kleiz"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Kas d'an dachenn-labour dehou"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Kas d'an dachenn-labour _a us"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Kas d'an dachenn-labour _dindan"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Serriñ"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Kas d'un _dachenn-labour all"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "_Rediañ da guitaat"
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr "Titl"
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr "Renk"
+
+#: ../src/ui/marco-dialog.c:244
+msgid "These windows do not support \"save current setup\" and will have to be restarted manually next time you log in."
+msgstr "Ne vez ket gouzanvet \"gwareziñ an neuzidaoù red\" gant ar prenistri-mañ, red 'vo deoc'h adloc'hañ anezho p'en em lugoc'h en-dro."
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Ur fazi 'z eus bet en ur gas da benn \"%s\":\n"
+"%s."
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "krec'h"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "traoñ"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "kleiz"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "dehou"
+
+#: ../src/ui/theme.c:4764
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "C'hwitet kargañ an neuz \"%s\": %s\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Bar"
+msgstr "Barrenn"
+
+#: ../src/ui/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Boest-kelaouiñ"
+
+#: ../src/ui/theme-viewer.c:398
+msgid "Border"
+msgstr "Trolinenn"
+
+#: ../src/core/prefs.c:1232
+msgid "Workarounds for broken applications disabled. Some applications may not behave properly.\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1300
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1362
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for mouse button modifier\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1780
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:2751
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr ""
+
+#: ../src/core/screen.c:350
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr ""
+
+#: ../src/core/screen.c:366
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager; try using the --replace option to replace the current window manager.\n"
+msgstr ""
+
+#: ../src/core/screen.c:393
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+
+#: ../src/core/screen.c:451
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:165
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/core/schema-bindings.c:173
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+
+#: ../src/core/session.c:854
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr ""
+
+#. oh, just give up
+#: ../src/core/session.c:1093
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1132
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1181
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/core/session.c:1194
+#: ../src/core/session.c:1269
+#: ../src/core/session.c:1301
+#: ../src/core/session.c:1373
+#: ../src/core/session.c:1433
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr ""
+
+#: ../src/core/session.c:1211
+#, c-format
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/core/session.c:1879
+#, c-format
+msgid "Error launching marco-dialog to warn about apps that don't support session management: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr ""
+
+#. first time through
+#: ../src/core/window.c:5626
+#, c-format
+msgid "Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6191
+#, c-format
+msgid "Window %s sets an MWM hint indicating it isn't resizable, but sets min size %d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/core/window-props.c:234
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr ""
+
+#: ../src/core/window-props.c:1332
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop background"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:2
+msgid "A font description string describing a font for window titlebars. The size from the description will only be used if the titlebar_font_size option is set to 0. Also, this option is disabled if the titlebar_uses_desktop_font option is set to true."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:7
+msgid "Arrangement of buttons on the titlebar. The value should be a string, such as \"menu:minimize,maximize,spacer,close\"; the colon separates the left corner of the window from the right corner, and the button names are comma-separated. Duplicate buttons are not allowed. Unknown button names are silently ignored so that buttons can be added in future marco versions without breaking older versions. A special spacer tag can be used to insert some space between two adjacent buttons."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:9
+msgid "Clicking a window while holding down this modifier key will move the window (left click), resize the window (middle click), or show the window menu (right click). The left and right operations may be swapped using the \"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:19
+msgid "If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then the focused window will be automatically raised after a delay specified by the auto_raise_delay key. This is not related to clicking on a window to raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:20
+msgid "If true, ignore the titlebar_font option, and use the standard application font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:21
+msgid "If true, marco will give the user less feedback by using wireframes, avoiding animations, or other means. This is a significant reduction in usability for many users, but may allow legacy applications to continue working, and may also be a useful tradeoff for terminal servers. However, the wireframe feature is disabled when accessibility is on."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:22
+msgid "If true, then Marco works in terms of applications rather than windows. The concept is a bit abstract, but in general an application-based setup is more like the Mac and less like Windows. When you focus a window in application-based mode, all the windows in the application will be raised. Also, in application-based mode, focus clicks are not passed through to windows in other applications. Application-based mode is, however, largely unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:27
+msgid "Number of workspaces. Must be more than zero, and has a fixed maximum to prevent making the desktop unusable by accidentally asking for too many workspaces."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:29
+msgid "Set this to true to resize with the right button and show a menu with the middle button while holding down the key given in \"mouse_button_modifier\"; set it to false to make it work the opposite way around."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid "Setting this option to false can lead to buggy behavior, so users are strongly discouraged from changing it from the default of true. Many actions (e.g. clicking in the client area, moving or resizing the window) normally raise the window as a side-effect. Setting this option to false, which is strongly discouraged, will decouple raising from other user actions, and ignore raise requests generated by applications. See http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can still be raised by an alt-left-click anywhere on the window, a normal click on the window decorations, or by special messages from pagers, such as activation requests from tasklist applets. This option is currently disabled in click-to-focus mode. Note that the list of ways to raise windows when raise_on_click is false does not include programmatic requests from applications to raise windows; such requests will be ignored regardless of the reason for the request. If you are an application developer and have a user complaining that your application does not work with this setting disabled, tell them it is _their_ fault for breaking their window manager and that they need to change this option back to true or live with the \"bug\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid "Some applications disregard specifications in ways that result in window manager misfeatures. This option puts Marco in a rigorously correct mode, which gives a more consistent user interface, provided one does not need to run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:33
+msgid "Tells Marco how to implement the visual indication that the system bell or another application 'bell' indicator has been rung. Currently there are two valid values, \"fullscreen\", which causes a fullscreen white-black flash, and \"frame_flash\" which causes the titlebar of the application which sent the bell signal to flash. If the application which sent the bell is unknown (as is usually the case for the default \"system beep\"), the currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:34
+msgid "The /apps/marco/global_keybindings/run_command_N keys define keybindings that correspond to these commands. Pressing the keybinding for run_command_N will execute command_N."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:35
+msgid "The /apps/marco/global_keybindings/run_command_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:36
+msgid "The /apps/marco/global_keybindings/run_command_window_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:37
+msgid "The keybinding that runs the correspondingly-numbered command in /apps/marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:40
+msgid "The theme determines the appearance of window borders, titlebar, and so forth."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:41
+msgid "The time delay before raising a window if auto_raise is set to true. The delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:42
+msgid "The window focus mode indicates how windows are activated. It has three possible values; \"click\" means windows must be clicked in order to focus them, \"sloppy\" means windows are focused when the mouse enters the window, and \"mouse\" means windows are focused when the mouse enters the window and unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:44
+msgid "This option determines the effects of double-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:45
+msgid "This option determines the effects of middle-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:46
+msgid "This option determines the effects of right-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:47
+msgid "This option provides additional control over how newly created windows get focus. It has two possible values; \"smart\" applies the user's normal focus mode, and \"strict\" results in windows started from a terminal not being given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:48
+msgid "Turns on a visual indication when an application or the system issues a 'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy environments."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Nodrezh titl ar prenestr"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr ""
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr ""
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87
+#: ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr ""
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Desk %d%n"
+msgstr "Burev %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Desk 1_0"
+msgstr "Burev 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Desk %s%d"
+msgstr "Burev %s%d"
+
+#: ../src/ui/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:97
+msgid "You may choose to wait a short while for it to continue or force the application to quit entirely."
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr "_Gortoz"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr ""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr ""
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr ""
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid "GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid "GTK color specification must have a close bracket after the state, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid "Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "N'eus ket tu da wiriañ al liv \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid "Coordinate expression contains floating point number '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid "Coordinate expression contained unknown operator at the start of this text: \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/ui/theme.c:1913
+#: ../src/ui/theme.c:1923
+#: ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid "Coordinate expression has operator \"%c\" following operator \"%c\" with no operand in between"
+msgstr ""
+
+#: ../src/ui/theme.c:2195
+#: ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/ui/theme.c:2596
+#: ../src/ui/theme.c:2616
+#: ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/ui/theme.c:4187
+#, c-format
+msgid "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be specified for this frame style"
+msgstr ""
+
+#: ../src/ui/theme.c:4695
+#: ../src/ui/theme.c:4720
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+
+#: ../src/ui/theme.c:4894
+#: ../src/ui/theme.c:4901
+#: ../src/ui/theme.c:4908
+#: ../src/ui/theme.c:4915
+#: ../src/ui/theme.c:4922
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "N'eo ket <%s> arventennet evit an neuz \"%s\""
+
+#: ../src/ui/theme.c:4930
+#, c-format
+msgid "No frame style set for window type \"%s\" in theme \"%s\", add a <window type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/ui/theme.c:5383
+#: ../src/ui/theme.c:5445
+#: ../src/ui/theme.c:5508
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/ui/theme.c:5391
+#: ../src/ui/theme.c:5453
+#: ../src/ui/theme.c:5516
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:231
+#: ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Linenn %d arouezenn %d : %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:437
+#: ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Ret eo d'an c'hevan %ld bezañ muiel "
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:577
+#: ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:608
+#: ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid "Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:936
+#: ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033
+#: ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:948
+#: ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1229
+#: ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519
+#: ../src/ui/theme-parser.c:2732
+#: ../src/ui/theme-parser.c:2778
+#: ../src/ui/theme-parser.c:2926
+#: ../src/ui/theme-parser.c:3118
+#: ../src/ui/theme-parser.c:3156
+#: ../src/ui/theme-parser.c:3194
+#: ../src/ui/theme-parser.c:3232
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1343
+#: ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid "Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" for buttons"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1776
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1783
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2023
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2101
+#: ../src/ui/theme-parser.c:2476
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2268
+#: ../src/ui/theme-parser.c:2351
+#: ../src/ui/theme-parser.c:2414
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2278
+#: ../src/ui/theme-parser.c:2361
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2288
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2588
+#: ../src/ui/theme-parser.c:2684
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2600
+#: ../src/ui/theme-parser.c:2696
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2811
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2836
+#: ../src/ui/theme-parser.c:2911
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2865
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Arc'hwel dianav \"%s\" evit an afell"
+
+#: ../src/ui/theme-parser.c:2874
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2886
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Stad dianav \"%s\" evit an afell"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2965
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2974
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2984
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3005
+#: ../src/ui/theme-parser.c:3028
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3039
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized/shaded states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3053
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3067
+#: ../src/ui/theme-parser.c:3089
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3078
+#: ../src/ui/theme-parser.c:3100
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3139
+msgid "Can't have a two draw_ops for a <piece> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3177
+msgid "Can't have a two draw_ops for a <button> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3215
+msgid "Can't have a two draw_ops for a <menu_icon> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3263
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3283
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3288
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3300
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3322
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3332
+#: ../src/ui/theme-parser.c:3362
+#: ../src/ui/theme-parser.c:3367
+#: ../src/ui/theme-parser.c:3372
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3594
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3609
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3661
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3716
+msgid "<name> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3727
+msgid "<author> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3738
+msgid "<copyright> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3749
+msgid "<date> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3760
+msgid "<description> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4027
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4083
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Prenestroù"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Prenestroù/Bu_rev"
+
+#: ../src/ui/theme-viewer.c:135
+msgid "Open another one of these windows"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:142
+msgid "This is a demo button with an 'open' icon"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:149
+msgid "This is a demo button with a 'quit' icon"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:242
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:325
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:359
+#, fuzzy
+msgid "Border-only window"
+msgstr "Prenestr riblenn-hepkenn"
+
+#: ../src/ui/theme-viewer.c:378
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:386
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:390
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:394
+msgid "Torn-off Menu"
+msgstr "Lañser distaget"
+
+#: ../src/ui/theme-viewer.c:726
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:755
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:798
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Arver : marco-theme-viewer [ANVNEUZ]\n"
+
+#: ../src/ui/theme-viewer.c:805
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Fazi en ur gargañ a neuz : %s\n"
+
+#: ../src/ui/theme-viewer.c:811
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:852
+#, fuzzy
+msgid "Normal Title Font"
+msgstr "Nodrezh an titl reizh"
+
+#: ../src/ui/theme-viewer.c:858
+msgid "Small Title Font"
+msgstr "Nodrezh an Nodrezh an titl bihan"
+
+#: ../src/ui/theme-viewer.c:864
+msgid "Large Title Font"
+msgstr "Nodrezh an titl bras"
+
+#: ../src/ui/theme-viewer.c:869
+msgid "Button Layouts"
+msgstr "Aozadurioù an afelloù"
+
+#: ../src/ui/theme-viewer.c:874
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:921
+msgid "Window Title Goes Here"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1025
+#, c-format
+msgid "Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g seconds wall clock time including X server resources (%g milliseconds per frame)\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1244
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1250
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1252
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1258
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1262
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1265
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1330
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+
diff --git a/po/bs.po b/po/bs.po
new file mode 100644
index 00000000..71344ff5
--- /dev/null
+++ b/po/bs.po
@@ -0,0 +1,3263 @@
+# translation of marco.HEAD.po to Bosnian
+# This file is distributed under the same license as the marco package.
+# Copyright (C) 2004 Free Software Foundation, Inc.
+# Kemal Sanjta <[email protected]>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-09-19 12:30+0200\n"
+"PO-Revision-Date: 2004-07-30 02:16+0200\n"
+"Last-Translator: Kemal Sanjta <[email protected]>\n"
+"Language-Team: Bosnian <+>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.3.1\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Iskorištenost: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:128
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Metaciti je kompajliran bez podrške za preopširan način rada\n"
+
+#: ../src/delete.c:63 ../src/delete.c:90 ../src/marco-dialog.c:70
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Nije moguće analizirati \"%s\" kao cijeli broj"
+
+#: ../src/delete.c:70 ../src/delete.c:97 ../src/marco-dialog.c:77
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Ne razumijem karaktere \"%s\" u stringu \"%s\""
+
+#: ../src/delete.c:128
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Nije uspjelo analiziranje poruke \"%s\" iz dijaloškog procesa\n"
+
+#: ../src/delete.c:263
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Greška pri čitanju iz dijaloga procesa: %s\n"
+
+#: ../src/delete.c:344
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Greška pri pokretanju marco dijaloga za potvrdu o ubijanju aplikacije: %"
+"s\n"
+
+#: ../src/delete.c:452
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Neuspjeh pri primanju imena računara %s\n"
+
+#: ../src/display.c:319
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Neuspjeh pri otvaranju X Window Sistem prikaza %s'\n"
+
+#: ../src/errors.c:231
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Izgubljena konekcija prema prikazu '%s';\n"
+"najvjerovatnije je X server ugašen ili ubijen/uništen\n"
+"upravitelj przorima.\n"
+
+#: ../src/errors.c:238
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Fatalna IO greška %d (%s) na prikazu %s'.\n"
+
+#: ../src/frames.c:1125
+msgid "Close Window"
+msgstr "Zatvori prozor"
+
+#: ../src/frames.c:1128
+msgid "Window Menu"
+msgstr "Izbornik prozor"
+
+#: ../src/frames.c:1131
+msgid "Minimize Window"
+msgstr "Minimiziraj prozor"
+
+#: ../src/frames.c:1134
+msgid "Maximize Window"
+msgstr "Maksimiziraj prozor"
+
+#: ../src/frames.c:1137
+msgid "Unmaximize Window"
+msgstr "Poništi povećanje prozora"
+
+#: ../src/keybindings.c:994
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Neki drugi program već koristi kljuć %s sa modifikacijama %x kao spoj\n"
+
+#: ../src/keybindings.c:2620
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr "Greška pri pokretanju marco dijaloga za ispis greške komande: %s\n"
+
+#: ../src/keybindings.c:2725
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Nijedna komanda %d nije definisana.\n"
+
+#: ../src/keybindings.c:3570
+#, fuzzy
+msgid "No terminal command has been defined.\n"
+msgstr "Nijedna komanda %d nije definisana.\n"
+
+#: ../src/main.c:69
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., i ostali\n"
+"Ovo je slobodan softver, pogledajte uslove kopiranja.\n"
+
+#: ../src/main.c:257
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:263
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:269
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:274
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:280
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:286
+msgid "Print version"
+msgstr ""
+
+#: ../src/main.c:440
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Neuspjeh pri skeniranju direktorija tema: %s\n"
+
+#: ../src/main.c:456
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr ""
+"Ne mogu pronaći temu! Budite sigurni %s da postoji i sadrži iskoristive teme."
+
+#: ../src/main.c:518
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Neuspjeh pri ponovnom pokretanju: %s\n"
+
+#: ../src/menu.c:54
+msgid "Mi_nimize"
+msgstr "_Minimiziraj"
+
+#: ../src/menu.c:55
+msgid "Ma_ximize"
+msgstr "_Maksimiziraj"
+
+#: ../src/menu.c:56
+msgid "Unma_ximize"
+msgstr "Vrati sa _maksimiziranog"
+
+#: ../src/menu.c:57
+msgid "Roll _Up"
+msgstr "Smotaj _Gore"
+
+#: ../src/menu.c:58
+msgid "_Unroll"
+msgstr "_Odomotaj"
+
+#: ../src/menu.c:59 ../src/menu.c:60
+msgid "On _Top"
+msgstr "Na _vrhu"
+
+#: ../src/menu.c:61
+msgid "_Move"
+msgstr "_Premjesti"
+
+#: ../src/menu.c:62
+msgid "_Resize"
+msgstr "_Promjeni veličinu"
+
+#. separator
+#: ../src/menu.c:64
+msgid "_Close"
+msgstr "_Zatvori"
+
+#. separator
+#: ../src/menu.c:66
+#, fuzzy
+msgid "_Always on Visible Workspace"
+msgstr "Samo na _Ovoj radnoj površini"
+
+#: ../src/menu.c:67
+#, fuzzy
+msgid "_Only on This Workspace"
+msgstr "Samo na _Ovoj radnoj površini"
+
+#: ../src/menu.c:68
+msgid "Move to Workspace _Left"
+msgstr "Premjesti na radnu površinu _Lijevo"
+
+#: ../src/menu.c:69
+msgid "Move to Workspace R_ight"
+msgstr "Premjesti na radnu površinu _desno"
+
+#: ../src/menu.c:70
+msgid "Move to Workspace _Up"
+msgstr "Premjesti na _gornju radnu površinu"
+
+#: ../src/menu.c:71
+msgid "Move to Workspace _Down"
+msgstr "Pomjeri na _donju radnu površinu"
+
+#: ../src/menu.c:162 ../src/prefs.c:2106
+#, c-format
+msgid "Workspace %d"
+msgstr "Radna površina %d"
+
+#: ../src/menu.c:171
+msgid "Workspace 1_0"
+msgstr "Radna površina 1_0"
+
+#: ../src/menu.c:173
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Radna površina %s%d"
+
+#: ../src/menu.c:368
+msgid "Move to Another _Workspace"
+msgstr "Pomjeri na drugu _radnu površinu"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hiper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:110
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr "Prozor \"%s\" ne reaguje."
+
+#: ../src/marco-dialog.c:118
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr ""
+"Prisiljavanje ove aplikacije da završi rad uzrokovati će gubitak svih ne "
+"pohranjenih promjena."
+
+#: ../src/marco-dialog.c:129
+msgid "_Force Quit"
+msgstr "_Prisili izlazak"
+
+#: ../src/marco-dialog.c:226
+msgid "Title"
+msgstr "Naslov"
+
+#: ../src/marco-dialog.c:238
+msgid "Class"
+msgstr "Klasa"
+
+#: ../src/marco-dialog.c:264
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Ovi prozori ne podržavaju mogućnost \"snimi trenutne postavke\" i morati "
+"ćete ih ručno ponovno pokrenuti sljedeći put kada se prijavite."
+
+#: ../src/marco-dialog.c:330
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Postoji greška pri pokretanju \"%s\":\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Nije ugrađeno) Navigacija radi u smislu aplikacija, ne prozora"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr ""
+"Opis niza podataka pisma koji opisuju pismo za naslovnu traku prozora. Naime "
+"veličina iz opisa se samo koristi ako je titlebar_font_size opcija stavljena "
+"na 0. Također ova opcija je deaktivirana ako je titlebar_uses_desktop_font "
+"opcija postavljena kao true. Uobičajeno titlebar_font nije podešen, zbog "
+"čega će Marco preuzeti pismo za radnu površini čak i ako je "
+"titlebar_uses_desktop_font opcija stavljena na false."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Akcija na naslovnom meniju dvostruki-klik"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr "Aktiviraj prozor izbornika"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Aranžman funkcijskih dugmadi na naslovoj traci"
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"Raspored dugmadi na naslovnoj traci. Vrijednost treba biti niz znakova, kao "
+"na primjer „menu:minimize,maximize,close“; dvije tačke razdvajaju lijevi "
+"ugao prozora od desnog, a dugmad su razdvojena tačka-zarezima. Dupliranje "
+"dugmadi nije dozvoljeno. Nepoznata imena dugmadi se zanemaruju tako da se "
+"dugmad koja će se dodavati u buduće verzije marco-a bez poremećenja "
+"starijih verzija."
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr "Automatski podiže prozor sa fokusom"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Pritiskom na prozor za vrijeme držanja ove tipke premejestit će prozor "
+"(lijeva tipka miša), podići prozor (srednja tipka miša) ili prikazati glavni "
+"izbornik (desna tipka miša). Tipka može biti na primjer \"&lt;Alr&gt;\" ili "
+"\"&lt;Super&gt;\""
+
+#: ../src/marco.schemas.in.h:9
+msgid "Close window"
+msgstr "Zatvori prozor"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Naredbe koje će se pokrenuti na odaziv kombinacije tipki sa tastature"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr "Trenutna tema"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Odgoda u milisekundama za opciju automatskog podizanja"
+
+#: ../src/marco.schemas.in.h:13
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Određuje hoće li aplikacije ili sistem generisati zvučne 'beepove'može se "
+"koristiti u spoju sa 'vizuelnim zvonom' da se dozvoli tihi 'beep'"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Isključi mogućnosti potrebne za stare ili neispravne aplikacijie"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr "Aktiviraj vidni signal"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Hide all windows and focus desktop"
+msgstr "Sakrij sve prozore i pokaži radnu površinu"
+
+#: ../src/marco.schemas.in.h:17
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key)."
+msgstr ""
+"Ako je aktivirano, i način fokusiranja stavljen kao \"traljav\" ili \"miš"
+"\" onda će fokusirani prozor biti automatski podignut nakod odgode (odgoda "
+"je određena auto_raise_delay unosom) "
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ako je aktivirano, ignorira se titlebar_font opcija i koristi se standardno "
+"aplikacijsko pismo za naslovnu traku prozora."
+
+#: ../src/marco.schemas.in.h:19
+#, fuzzy
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+"Ukoliko je postavljeno, marco će korisniku dati manje povratnih "
+"informacija i manje osjećaja \"direktne manipulacije\", korištenjem žičanih "
+"okvira, izbjegavanjem animacija i drugo. Ovo je značajno smanjenje "
+"funkcionalnosti za mnoge korisnike, ali omogućava nasljeđivanje programa i "
+"rad server terminala kada bi oni u suprotnom bili nepraktični."
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr ""
+"Ako je aktivirano, onda Marco radi u okvirima aplikacija umjesto prozora. "
+"Koncept je malo apstraktan, ali u širem pogledu podešavanje na razini "
+"aplikacije je više poput Mac a manje nego Windows okruženja. Kad fokusirate "
+"prozor u načinu rada baziranom na aplikaciji, klikovi fokusiranja nisu "
+"preusmjereni na prozore u drugim aplikacijama. Postojanje ove opcije je malo "
+"upitno. Ali bolje je nego imati svojstva za sve specifične detalje u "
+"aplikacijski orijentiranom protiv prozorski orijentiranom, naprimjer da li "
+"preusmjeriti preko klikova. Također aplikacijski orjentiran način rada je "
+"jako neupotrebljen trenutno."
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Ako je postavljno, mijenja se iskorištenost za manje korištenje resursa"
+
+#: ../src/marco.schemas.in.h:22
+msgid "Lower window below other windows"
+msgstr "Spustiti prozor ispod ostalih prozora"
+
+#: ../src/marco.schemas.in.h:23
+msgid "Maximize window"
+msgstr "Maksimiziraj prozor"
+
+#: ../src/marco.schemas.in.h:24
+msgid "Maximize window horizontally"
+msgstr "Maksimiziraj prozor horizontalno"
+
+#: ../src/marco.schemas.in.h:25
+msgid "Maximize window vertically"
+msgstr "Maksimiziraj prozor vertikalno"
+
+#: ../src/marco.schemas.in.h:26
+msgid "Minimize window"
+msgstr "Minimiziraj prozor"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Modifier to use for modified window click actions"
+msgstr "Ispravljać za korištenje prepravljenih akcija klika u prozoru"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Pomjeranje unazad između panela i radnih površina bez odlaganja"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "Pomjeranje unazad između panela i radne površine sa popup-om"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Move backwards between windows immediately"
+msgstr "Pomjeranje unazad između prozora bez odlaganja"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Move between panels and the desktop immediately"
+msgstr "Pomjeranje između prozora i radne površine bez odlaganja"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move between panels and the desktop with popup"
+msgstr "Pomjeranje između panela i radne površine sa popup-om."
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move between windows immediately"
+msgstr "Pomjeranje između prozora bez odlaganja"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move between windows with popup"
+msgstr "Pomjeranje između prozora sa popupom"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move focus backwards between windows using popup display"
+msgstr "Pomjeranje fokusiranja unatrag između prozora koristeći popup prikaz"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move window"
+msgstr "Pomjeri prozor"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move window one workspace down"
+msgstr "Premjesti prozor za jednu radnu površinu ispod"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move window one workspace to the left"
+msgstr "Pomjeri prozor jedan radnu površinu ulijevo"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move window one workspace to the right"
+msgstr "Pomjeri prozor jedanu radnu površinu udesno"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move window one workspace up"
+msgstr "Pomjeri prozor jednu radnu površinu gore"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move window to workspace 1"
+msgstr "Premjesti prozor na radnu površinu 1"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move window to workspace 10"
+msgstr "Premjesti prozor na radnu površinu 10"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move window to workspace 11"
+msgstr "Premjesti prozor na radnu površinu 11"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window to workspace 12"
+msgstr "Premjesti prozor na radnu površinu 12"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window to workspace 2"
+msgstr "Premjesti prozor na radnu površinu 2"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window to workspace 3"
+msgstr "Premjesti prozor na radnu površinu 3"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window to workspace 4"
+msgstr "Premjesti prozor na radnu površinu 4"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window to workspace 5"
+msgstr "Premjesti prozor na radnu površinu 5"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 6"
+msgstr "Premjesti prozor na radnu površinu 6"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 7"
+msgstr "Premjesti prozor na radnu površinu 7"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 8"
+msgstr "Premjesti prozor na radnu površinu 8"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 9"
+msgstr "Premjesti prozor na radnu površinu 9"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Name of workspace"
+msgstr "Ime radne površine"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Number of workspaces"
+msgstr "Broj radnih površina"
+
+#: ../src/marco.schemas.in.h:55
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr ""
+"Broj radnih površina. Mora biti više od nule i ima fiksni maksimum (da "
+"spriječi slučajno uništavanje vaše radne površine ako zatražite 34 milijuna "
+"radnih prostora)"
+
+#: ../src/marco.schemas.in.h:56
+msgid "Raise obscured window, otherwise lower"
+msgstr "Podigni nejasan prozor, inače spusti"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Raise window above other windows"
+msgstr "Podigni prozor iznad ostalih prozora"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Resize window"
+msgstr "Promjeni veličinu prozora"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Run a defined command"
+msgstr "Pokreni definiranu naredbu"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Run a terminal"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:61
+msgid "Show the panel menu"
+msgstr "Pokažite izbornik panela"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Show the panel run application dialog"
+msgstr "Pokažite dijalog pokretanja u panelu"
+
+#: ../src/marco.schemas.in.h:63
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+"Neke aplikacije krše specifikacije na način koji dovodi do nepoželjnih "
+"osobina upravljaća prozora.Na primjer, idealno Marco stavlja sve dijaloge "
+"u određeni položaj relativan na njihov roditeljski prozor. Ovo zahtjeva "
+"ignoriranje specifičnih osobina aplikacijskih prozora za dijaloge. Ali neke "
+"verzije Jave/Swinga označe svoj popup izbornik kao dijalog, pa Marco mora "
+"onemogućiti smještanje dijaloga da bi dozvolio izbornicima da rade u "
+"neispravnim Java aplikacijama. Postoji još primjera za poput ovog. Ova "
+"opcija stavlja Marco u puni-on Correct način rada koji možda daje "
+"umjereno jači UI ako nije potrebno koristiti neispravne aplikacije. "
+"Nažalost, zaobilaženja moraju biti aktivirana uobičajeno, svijet je ružno "
+"mjesto. Neke od zaobilaznica su zaobilaznice za ograničenja u samim "
+"specifikacijama, pa neki put bubu u no-workarounds načinu rada neće biti "
+"moguće popraviti bez detaljnijeg uvida u problem."
+
+#: ../src/marco.schemas.in.h:64
+msgid "Switch to workspace 1"
+msgstr "Prebaci se na radnu površinu 1"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Switch to workspace 10"
+msgstr "Prebaci se na radnu površinu 10"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Switch to workspace 11"
+msgstr "Prebaci se na radnu površinu 11"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Switch to workspace 12"
+msgstr "Prebaci se na radnu površinu 12"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Switch to workspace 2"
+msgstr "Prebaci se na radnu površinu 2"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Switch to workspace 3"
+msgstr "Prebaci se na radnu površinu 3"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Switch to workspace 4"
+msgstr "Prebaci se na radnu površinu 4"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Switch to workspace 5"
+msgstr "Prebaci se na radnu površinu 5"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 6"
+msgstr "Prebaci se na radnu površinu 6"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 7"
+msgstr "Prebaci se na radnu površinu 7"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 8"
+msgstr "Prebaci se na radnu površinu 8"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 9"
+msgstr "Prebaci se na radnu površinu 9"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace above this one"
+msgstr "Prebaci se na radnu površinu iznad ovog"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace below this one"
+msgstr "Prebaci se na radnu površinu ispod ovog"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace on the left"
+msgstr "Prebaci se na radnu površinu ulijevo"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace on the right"
+msgstr "Prebaci se na radnu površinu udesno"
+
+#: ../src/marco.schemas.in.h:80
+msgid "System Bell is Audible"
+msgstr "Sistemsko zvono se čuje"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Take a screenshot"
+msgstr "Uzmi sliku zaslona"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Take a screenshot of a window"
+msgstr "Uzmi sliku prozora"
+
+#: ../src/marco.schemas.in.h:83
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Govori Marco-u da prikaže nešto kada zazvoni sistemsko zvono ili neki "
+"drugi program zazvoni. Trenutno su moguće dvije vrijednosti, „fullscreen“ "
+"kojim cijeli zaslon treperi crno-bijelo, i „frame_flash“ kada treperi samo "
+"naslovna linija prozora koji je zazvonio. Ukoliko nije poznat program koji "
+"je zazvonio (kao što je to obično slučaj sa „sistemskim zvonom“), trepereće "
+"naslovna linija prozora koji je trenutno u fokusu."
+
+#: ../src/marco.schemas.in.h:84
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Ključ /apps/marco/global_keybindings/run_command_N definiše dugmad koja "
+"odgovaraju ovim komandama. Pritiskom kombinacije dugmadi za "
+"pokretanje_komandu_N će izvršiti komandu_N."
+
+#: ../src/marco.schemas.in.h:85
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Ključ /apps/marco/global_keybindings/run_command_N definiše funkciju "
+"dugmadi kojim se pokreće naredba navedena pomoću njega."
+
+#: ../src/marco.schemas.in.h:86
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Ključ /apps/marco/global_keybindings/run_command_window_screenshot "
+"definiše funkciju dugmadi kojim se pokreće naredba navedena pomoću njega."
+
+#: ../src/marco.schemas.in.h:87
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Kombinacije dugmadi koja pokreću odgovarajuće označenu naredbu u /apps/"
+"marco/keybinding_commands ključu. Oblik zapisa izgleda kao \"&lt;"
+"Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, također i skraćenice "
+"poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:88
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu iznad trenutne radne "
+"površine. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i dozvoljava velika ili "
+"mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". "
+"Ako postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:89
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu ispod trenutne radne "
+"površine. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i dozvoljava velika ili "
+"mala slova, također i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". "
+"Ako pstavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:90
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu lijevo od trenutnog "
+"radne površine. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i dozvoljava "
+"velika ili mala slova, također i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; "
+"Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova \"disabled\", "
+"tada neće biti korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:91
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinacija digmadi koja prebacuje na radnu površinu desno od trenutne radne "
+"površine. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i dozvoljava velika ili "
+"mala slova, također i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". "
+"Ako postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:92
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 1. Oblik zapisa izgleda "
+"kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program za "
+"obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:93
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 10. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:94
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 11. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:95
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 12. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:96
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 2. Oblik zapisa izgleda "
+"kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program za "
+"obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:97
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 3. Oblik zapisa izgleda "
+"kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program za "
+"obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:98
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 4. Oblik zapisa izgleda "
+"kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program za "
+"obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:99
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 5. Oblik zapisa izgleda "
+"kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program za "
+"obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:100
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 6. Oblik zapisa izgleda "
+"kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program za "
+"obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 7. Oblik zapisa izgleda "
+"kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program za "
+"obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 8. Oblik zapisa izgleda "
+"kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program za "
+"obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prebacuje na radnu površinu 9. Oblik zapisa izgleda "
+"kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\".Program za "
+"obradu je dosta slobodan i dozvoljava velika ili mala slova, također i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja pokreće izbornik prozora. Oblik zapisa izgleda kao "
+"\"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice "
+"poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja zatvara prozor. Oblik zapisa izgleda kao \"&lt;"
+"Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinacijadugmadi koja postavlja prozor u način rada za pomicanje i "
+"omogućava pomicanje prozora pomoću tastature. Oblik zapisa izgleda kao \"&lt;"
+"Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja postavlja prozor u način rada za razvlačenje i "
+"omogućava razvlačenje prozora pomoću tastature. Oblik zapisa izgleda kao "
+"\"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice "
+"poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja skriva sve obične prozore i postavlja fokus na "
+"pozadinu radne površine. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" "
+"i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:109
+#, fuzzy
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja povećava prozor. Oblik zapisa izgleda kao \"&lt;"
+"Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja smanjuje prozor. Oblik zapisa izgleda kao \"&lt;"
+"Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor za jednu radnu površinu niže. "
+"Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Program za obradu je dosta slobodan i dozvoljava velika ili mala "
+"slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija digmadi koja premiješta prozor za jednu radnu površinu lijevo. "
+"Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Program za obradu je dosta slobodan i dozvoljava velika ili mala "
+"slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor za jednu radnu površinu desno. "
+"Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Program za obradu je dosta slobodan i dozvoljava velika ili mala "
+"slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor za jednu radnu površinu više. "
+"Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Program za obradu je dosta slobodan i dozvoljava velika ili mala "
+"slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 1. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 10. Oblik "
+"zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite "
+"opciju na specijalni niz znakova \"disabled\", tada neće biti korištena niti "
+"jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 11. Oblik "
+"zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite "
+"opciju na specijalni niz znakova \"disabled\", tada neće biti korištena niti "
+"jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 12. Oblik "
+"zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite "
+"opciju na specijalni niz znakova \"disabled\", tada neće biti korištena niti "
+"jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 2. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 3. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 4. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 5. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 6. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 7. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 8. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta prozor na radnu površinu 9. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta fokus unazad između panela i radne "
+"površine koristeći skočni prozor. Oblik zapisa izgleda kao \"&lt;Control&gt;a"
+"\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" "
+"i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija dugmadi za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta fokus unazad između panela i radne "
+"površine bez skočnog prozora. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" "
+"ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" "
+"i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija dugmadi za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta fokus unazad između prozora bez skočnog "
+"prozora. Držeći dugme \"shift\" zajedno s kombinacijom dugmadi omogućuje se "
+"suprotni smijer premiještanja. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" "
+"ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" "
+"i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija dugmadi za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta fokus unazad između prozora koristeći "
+"skočni prozor. Držeći dugme \"shift\" zajedno s kombinacijom tipki omogućuje "
+"se suprotni smijer premiještanja. Oblik zapisa izgleda kao \"&lt;Control&gt;a"
+"\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" "
+"i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija dugmadi za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta fokus između ploče i radne površine "
+"koristeći skočni prozor. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" "
+"i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija dugmadi za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiještaju fokus između ploče i radne površine "
+"bez skočnog prozora. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i dozvoljava "
+"velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; "
+"Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova \"disabled\", "
+"tada neće biti korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta fokus između prozora bez skočnog prozora."
+"(Uobičajeno &lt;Alt&gt;Escape) Držeći dugme \"shift\" zajedno s kombinacijom "
+"tipki omogućuje se suprotni smijer premiještanja. Oblik zapisa izgleda kao "
+"\"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, također i skraćenice "
+"poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja premiješta fokus između prozora koristeći skočni "
+"prozor. (Uobičajeno &lt;Alt&gt;Tab) Držeći dugme \"shift\" zajedno s "
+"kombinacijom tipki omogućuje se suprotni smijer premiještanja. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja uključuje ili isključuje opciju da prozor bude "
+"uvijek na vrhu. Prozor koji je uvijek na vrhu videti će se preko drugih "
+"preklapajućih prozora. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" "
+"i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija dugmadi za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja uključuje ili isključuje prikaz preko cijelog "
+"zaslona.Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Program za obradu je dosta slobodan i dozvoljava velika ili "
+"mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". "
+"Ako postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja uključuje ili isključuje uvećanje prozora na "
+"najveću moguću veličinu. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" "
+"i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija dugmadi za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja uključuje ili isključuje zasjenčeno stanje. Oblik "
+"zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite "
+"opciju na specijalni niz znakova \"disabled\", tada neće biti korištena niti "
+"jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja uključuje ili isključuje mogučnost da prozor bude "
+"na svim radnim površinama. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" "
+"i \"&lt; Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija dugmadi za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja poništava uvećanje prozora na najveću moguću "
+"veličinu. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i dozvoljava velika ili "
+"mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". "
+"Ako postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija dugmadi koja prikazuje dijaloški okvir \"Pokreni program\". "
+"Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Program za obradu je dosta slobodan i dozvoljava velika ili mala "
+"slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:142
+#, fuzzy
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prikazuje glavni izbornik ploče. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja pokreće alat ploče za snimanje izgleda prozora. "
+"Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Program za obradu je dosta slobodan i dozvoljava velika ili mala "
+"slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija dugmadi koja pokreće alat ploče za snimanje izgleda zaslona. "
+"Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Program za obradu je dosta slobodan i dozvoljava velika ili mala "
+"slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja prikazuje glavni izbornik ploče. Oblik zapisa "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". Program "
+"za obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite opciju "
+"na specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:146
+msgid "The name of a workspace."
+msgstr "Ime radne površine."
+
+#: ../src/marco.schemas.in.h:147
+msgid "The screenshot command"
+msgstr "Naredba za slikanje zaslona"
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Tema utvrđuje izgled rubova prozora, naslovne linije i svega ostalog sličnog."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Vremenski period prije podizanja prozora ako je opcija auto_raise "
+"postavljena na „true“. Period se izražava u hiljaditim dijelovima sekunde."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Fokus prozora podešava kako će prozori biti aktivirani. Ima tri moguće "
+"vrijednosti „click“ znači da prozor mora biti izabran da bi dobio fokus, "
+"„sloppy“ znači da prozor dobija fokus kada pokazivač miša uđe u prozor i "
+"„mouse“ što znači da će prozor biti fokusiran kada pokazivačka strelica miša "
+"uđe u prozor i biti defokusiran kada strelica izađe iz prozora."
+
+#: ../src/marco.schemas.in.h:151
+msgid "The window screenshot command"
+msgstr "Naredba za snimanje prozora"
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja postavlja prozor iznad ili ispod ostalih prozora. "
+"Ako je prozor prekriven drugim prozorom, on se podiže iznad njega. Ako je "
+"prozor već na vrhu, on se spušta ispod ostalih prozora postavljajući drugi "
+"prozor na vrh. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i dozvoljava "
+"velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; "
+"Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova \"disabled\", "
+"tada neće biti korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja spušta prozor ispod svih ostalih prozora. Oblik "
+"zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite "
+"opciju na specijalni niz znakova \"disabled\", tada neće biti korištena niti "
+"jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija dugmadi koja podiže prozor iznad svih ostalih prozora. Oblik "
+"zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; Ctrl&gt;\". Ako postavite "
+"opciju na specijalni niz znakova \"disabled\", tada neće biti korištena niti "
+"jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija dugmadi koja mijenja veličinu prozora tako da popuni čitav "
+"vodoravni prostor. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i dozvoljava "
+"velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; "
+"Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova \"disabled\", "
+"tada neće biti korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija dugmadi koja mijenja veličinu prozora tako da popuni čitav "
+"okomiti prostor. Oblik zapisa izgleda kao \"&lt;Control&gt;a\" ili \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Program za obradu je dosta slobodan i dozvoljava "
+"velika ili mala slova, takođe i skraćenice poput \"&lt;Ctl&gt;\" i \"&lt; "
+"Ctrl&gt;\". Ako postavite opciju na specijalni niz znakova \"disabled\", "
+"tada neće biti korištena niti jedna kombinacija dugmadi za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, and 'toggle_maximize' which will maximize/unmaximize the window."
+msgstr ""
+"Ova opcija određuje efekt dvostrukog klika na naslovnu liniju prozora. "
+"Trenutno su ispravne opcije 'toggle_shade', što će uključiti ili poništiti "
+"sjenčenje prozora, i 'toggle_maximize' što će uvećati ili poništiti uvećanje "
+"prozora."
+
+#: ../src/marco.schemas.in.h:158
+msgid "Toggle always on top state"
+msgstr "Uključi da je uvijek na vrhu"
+
+#: ../src/marco.schemas.in.h:159
+msgid "Toggle fullscreen mode"
+msgstr "Postavi preko cijelog ekrana"
+
+#: ../src/marco.schemas.in.h:160
+msgid "Toggle maximization state"
+msgstr "Promijeni stanje maksimizacije "
+
+#: ../src/marco.schemas.in.h:161
+msgid "Toggle shaded state"
+msgstr "Promijeni stanje zasjenčenja"
+
+#: ../src/marco.schemas.in.h:162
+msgid "Toggle window on all workspaces"
+msgstr "Uključi prozor na svim radnim površinama"
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+"Uključuje vizuelni prikaz kada program ili sistem 'zazvoni'; korisno u "
+"bučnim situacijama, ili kada je zvučno zvonce isključeno. "
+
+#: ../src/marco.schemas.in.h:164
+msgid "Unmaximize window"
+msgstr "Poništi uvećanje prozora "
+
+#: ../src/marco.schemas.in.h:165
+msgid "Use standard system font in window titles"
+msgstr "Koristi standardni font sistema za naslov prozora"
+
+#: ../src/marco.schemas.in.h:166
+msgid "Visual Bell Type"
+msgstr "Vrsta vizulnog zvonca "
+
+#: ../src/marco.schemas.in.h:167
+msgid "Window focus mode"
+msgstr "Način fokusa prozora"
+
+#: ../src/marco.schemas.in.h:168
+msgid "Window title font"
+msgstr "Font naslova prozora"
+
+#: ../src/prefs.c:528 ../src/prefs.c:544 ../src/prefs.c:560 ../src/prefs.c:576
+#: ../src/prefs.c:592 ../src/prefs.c:612 ../src/prefs.c:628 ../src/prefs.c:644
+#: ../src/prefs.c:660 ../src/prefs.c:676 ../src/prefs.c:692 ../src/prefs.c:708
+#: ../src/prefs.c:724 ../src/prefs.c:741 ../src/prefs.c:757 ../src/prefs.c:773
+#: ../src/prefs.c:789 ../src/prefs.c:805 ../src/prefs.c:820 ../src/prefs.c:835
+#: ../src/prefs.c:850 ../src/prefs.c:866 ../src/prefs.c:882 ../src/prefs.c:898
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf ključ \"%s\" je postavljen na neispravan tip\n"
+
+#: ../src/prefs.c:943
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"“%s“ je pronađen u bazi podešavanja što nije ispravna vrijednost za dugme "
+"koje mijenja ponašanje dugmadi miša\n"
+
+#: ../src/prefs.c:967 ../src/prefs.c:1428
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf ključ '%s' je postavljen na neispravnu vrijednost\n"
+
+#: ../src/prefs.c:1145
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Nije moguće analizirati opis fonta \"%s\" iz Gconf ključa %s\n"
+
+#: ../src/prefs.c:1330
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+"%d pohranjen u MateConf ključu %s nije podnošljiv broj radnih površina, "
+"trenutno je maksimalan %d\n"
+
+#: ../src/prefs.c:1390
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Kompromisi za loše programe su isključeni. Neki programi se mogu ponašati "
+"čudno.\n"
+
+#: ../src/prefs.c:1455
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "%d pohranjen u MateConf ključu %s je izvan dometa od 0 do %d\n"
+
+#: ../src/prefs.c:1589
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Greška prilikom podešavanja broja radnih površina na %d: %s\n"
+
+#: ../src/prefs.c:1833
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" nađen u konfiguracijskoj bazi nije ispravna kombinacija dugmadi \"%s"
+"\"\n"
+
+#: ../src/prefs.c:2187
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Greška prilikom podešavanja imena radne površine %d u \"%s\": %s\n"
+
+#: ../src/resizepopup.c:126
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:408
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Ekran %d na prikazu '%s' je neispravan\n"
+
+#: ../src/screen.c:424
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Ekran %d na prikazu \"%s\" već ima upravitelja prozora; pokušajte koristiti "
+"--replace opciju da zamjenite trenutni upravitelj prozora.\n"
+
+#: ../src/screen.c:448
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Nije moguće dobiti biranje upravitelja prozora na ekranu %d prikaza \"%s\"\n"
+
+#: ../src/screen.c:506
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Ekran %d na prikazu \"%s\" već ima rukovoditelja prozora\n"
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Nije moguće otpustiti ekran %d na prikazu \"%s\"\n"
+
+#: ../src/session.c:884 ../src/session.c:891
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Nije moguće napraviti direktorij '%s': %s\n"
+
+#: ../src/session.c:901
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Nije moguće otvoriti datoteku '%s' za pisanje: %s\n"
+
+#: ../src/session.c:1053
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Pogreška pisanja datoteke sesije '%s': %s\n"
+
+#: ../src/session.c:1058
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Greška pri zatvaranju datoteke sesije '%s': %s\n"
+
+#: ../src/session.c:1133
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Nije uspjelo čitanje snimljene datoteke sesije %s: %s\n"
+
+#: ../src/session.c:1168
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Nije uspjela analiza snimljene datoteke sesije: %s\n"
+
+#: ../src/session.c:1217
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> atribut opažen ali već imamo ID sesije"
+
+#: ../src/session.c:1230
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "Nepoznata osobina %s u <marco_session> elementu"
+
+#: ../src/session.c:1247
+msgid "nested <window> tag"
+msgstr "ugniježden <window> tag"
+
+#: ../src/session.c:1305 ../src/session.c:1337
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Nepoznata osobina %s u <window> elementu"
+
+#: ../src/session.c:1409
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Nepoznata osobina %s u <maximized> elementu"
+
+#: ../src/session.c:1469
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Nepoznata osobina %s u <geometry> elementu"
+
+#: ../src/session.c:1489
+#, c-format
+msgid "Unknown element %s"
+msgstr "Nepoznati element %s"
+
+#: ../src/session.c:1961
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Greška pri pokretanju marco-dialoga da upozori aplikacije koje ne "
+"podržavaju session managment %s\n"
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Linija %d karakter %d: %s"
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Osobina \"%s\" je ponovljena dva puta u istom elementu <%s>"
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Osobina \"%s\" je neispravana u elementu <%s> u ovom kontekstu"
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Cijeli broj %ld mora biti pozitivan"
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Cijeli broj %ld je prevelik ,trenutno najveći je %d"
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Nije moguće analizirati \"%s\" kao broj sa pomičnim zarezom"
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Logičke vrijednosti moraju biti \"true\" ili \"false\", a ne \"%s\""
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Ugao mora biti između 0.0 i 360.0, bio %g\n"
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa osobina mora biti između 0.0 (nevidljivo) i 1.0 (potpuno neprozirno), "
+"bila je %g\n"
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Neispravna veličina naslova \"%s\" (mora biti jedna od xx-mala,x-mala,mala,"
+"srednja,velika,x-velika,xx-velika)\n"
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "Nema atributa \"%s\" na <%s> elementu"
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> ime \"%s\" se već drugi put koristi"
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> izvor \"%s\" nije definisan"
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometrija \"%s\" se nije definisala"
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> morate odrediti geometriju ili izvor koji ima geometriju"
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Nepoznat tip \"%s\" na elementu <%s>"
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Nepoznat style_set \"%s\" na elementu <%s>"
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Vrsti prozora \"%s\" je već dodijeljena grupa stilova"
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr "Nepoznata funkcija \"%s\" za sličicu izbornika"
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr "Nepoznato stanje \"%s\" za sličicu menija"
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr "Tema već posjeduje sličicu izbornika za funkciju %s stanje %s"
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nije podešen <draw_ops>sa imenom \"%s\""
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> nije dozvoljen ispod <%s>"
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Bez \"ime\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Bez \"vrijednost\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"Nije moguće odrediti istovremeno dugme_širine/dugme_visine i omjer slike za "
+"dugmad"
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Udaljenost \"%s\" je nepoznata"
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Odnos \"%s\" je nepoznat"
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "Bez \"vrh\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "Bez \"dno\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "Bez \"lijevo\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "Bez \"desno\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Rub „%s“ je nepoznat"
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "Bez \"boja\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1662
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "Bez \"x1\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "Bez \"y1\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1676
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "Bez \"x2\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "Bez \"y2\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "Bez \"x\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "Bez \"y\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "Bez \"širina\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "Bez \"visina\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1903
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "Nema \"start_angle\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:1910
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "Bez \"extent_ange\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:2090
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "Bez \"alfa\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:2161
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "Bez \"tip\" atributa na elementu <%s> "
+
+#: ../src/theme-parser.c:2209
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Nisam shvatio vrijednost \"%s\" za vrstu stepenovanja"
+
+#: ../src/theme-parser.c:2294
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "Bez \"imedatoteke\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Nisam shvatio vrstu popunjavanja \"%s\" za <%s> element"
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "Bez \"stanje\" atributa na elementu <%s> "
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "Bez \"sjena\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:2476
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "Bez \"strelica\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Nisam shvatio sjenu \"%s\" za <%s> element"
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Nisam shvatio sjenu \"%s\" za <%s> element"
+
+#: ../src/theme-parser.c:2549
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Ne razumijmem strelicu \"%s\" za <%s> element"
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nije podešen <draw_ops> imena \"%s\" "
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "uključivanje draw_ops \"%s\" ovdje bi kreiralo kružnu napomenu"
+
+#: ../src/theme-parser.c:3153
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "Bez \"vrijednost\" atributa na <%s> elementu "
+
+#: ../src/theme-parser.c:3210
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "Bez \"pozicija\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:3219
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Nepoznata pozicija \"%s\" za dio okvira"
+
+#: ../src/theme-parser.c:3227
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Stil okvira već ima dio na poziciji %s"
+
+#: ../src/theme-parser.c:3272
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "Bez \"funkcija\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "Bez \"stanje\" atributa na <%s> elementu "
+
+#: ../src/theme-parser.c:3289
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Nepoznata funkcija \"%s\" za dugme"
+
+#: ../src/theme-parser.c:3298
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Nepoznato stanje \"%s\" za dugme"
+
+#: ../src/theme-parser.c:3306
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Stil okvira već ima dugme za funkciju %s stanja %s"
+
+#: ../src/theme-parser.c:3376
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "Bez \"usredotočenje\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:3392
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "Bez \"stil\" atributa na <%s> elementu "
+
+#: ../src/theme-parser.c:3401
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s“ nije dozvoljena vrijednost za osobinu fokusa"
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" nije dozvoljena vrijednost za osobinu state"
+
+#: ../src/theme-parser.c:3420
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Stil nazvan \"%s\" nije bio određen"
+
+#: ../src/theme-parser.c:3430
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "Bez \"promjenaveličine\" atributa na elementu <%s>"
+
+#: ../src/theme-parser.c:3440
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" nije dozvoljena vrijednost za osobina resize"
+
+#: ../src/theme-parser.c:3450
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Nikako ne treba imati „resize“ atribut u elementu <%s> za uvećana/zasjenčena "
+"stanja"
+
+#: ../src/theme-parser.c:3464
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Stil je već odabran za stanje %s promjene veličine %s fokusiranja %s"
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stil je već odabran za stanje %s fokusiranja %s"
+
+#: ../src/theme-parser.c:3536
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ne mogu postojati dva draw_ops-a za element <piece> (tema navodi svojstvo "
+"draw_ops i <draw_ops> element ili navodi dva elementa)"
+
+#: ../src/theme-parser.c:3574
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ne mogu postojati dva draw_ops-a za element <button> (tema navodi draw_ops "
+"svojstvo i <draw_ops> element ili navodi dva elementa)"
+
+#: ../src/theme-parser.c:3612
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ne mogu postojati dva draw_ops-a za element <menu_icon> (tema navodi "
+"svojstvo draw_ops i <draw_ops> element ili navodi dva elementa)"
+
+#: ../src/theme-parser.c:3659
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Najdalji element u temi mora biti <marco_theme> a ne<%s>"
+
+#: ../src/theme-parser.c:3679
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Element <%s> nije dozvoljen unutar imena/autora/datuma/opisa ."
+
+#: ../src/theme-parser.c:3684
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> nije dozvoljen unutar <constant> elementa"
+
+#: ../src/theme-parser.c:3696
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Element <%s> nije dozvoljen unutar udaljenost/granica/omjer_slike elementa"
+
+#: ../src/theme-parser.c:3718
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Element <%s> nije dozvoljen unutar operacije crtanja"
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> nije dozvoljen unutar <%s> elementa"
+
+#: ../src/theme-parser.c:3984
+msgid "No draw_ops provided for frame piece"
+msgstr "Bez draw_ops datih komadu okvira"
+
+#: ../src/theme-parser.c:3999
+msgid "No draw_ops provided for button"
+msgstr "Bez draw_ops datih dugmetu"
+
+#: ../src/theme-parser.c:4014
+msgid "No draw_ops provided for menu icon"
+msgstr "Bez draw_ops datih sličici izbornika"
+
+#: ../src/theme-parser.c:4054
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Tekst nije dozvoljen unutar elementa<%s>"
+
+#: ../src/theme-parser.c:4109
+msgid "<name> specified twice for this theme"
+msgstr "<ime> naznačen dvaput za ovu temu"
+
+#: ../src/theme-parser.c:4120
+msgid "<author> specified twice for this theme"
+msgstr "<autor> naznačen dvaput za ovu temu"
+
+#: ../src/theme-parser.c:4131
+msgid "<copyright> specified twice for this theme"
+msgstr "<autorska prava> određena dvaput za ovu temu"
+
+#: ../src/theme-parser.c:4142
+msgid "<date> specified twice for this theme"
+msgstr "<datum> određen dvaput za ovu temu"
+
+#: ../src/theme-parser.c:4153
+msgid "<description> specified twice for this theme"
+msgstr "<opis> naveden dvaput za ovu temu"
+
+#: ../src/theme-parser.c:4348
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr "Nije uspjelo čitanje teme iz datoteke %s: %s\n"
+
+#: ../src/theme-parser.c:4403
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Datoteka sa temom %s ne sadrži korjenski <marco_theme> element"
+
+#: ../src/theme-viewer.c:70
+msgid "/_Windows"
+msgstr "/_Prozori"
+
+#: ../src/theme-viewer.c:71
+msgid "/Windows/tearoff"
+msgstr "/Windows/otcijepi"
+
+#: ../src/theme-viewer.c:72
+msgid "/Windows/_Dialog"
+msgstr "/Prozori/_Dijalog"
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/_Modal dialog"
+msgstr "/Prozori/_Modalni dijalog"
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Utility"
+msgstr "/Windows/_Alat"
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Pozdravna slika"
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Top dock"
+msgstr "/Windows/_Gornje sidro"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Bottom dock"
+msgstr "/Prozori/D_onje sidro"
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Left dock"
+msgstr "/Prozori/_Lijevo sidro"
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Right dock"
+msgstr "/Prozori/_Desno sidro"
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_All docks"
+msgstr "/Prozori/_Sva sidra"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/Des_ktop"
+msgstr "/Prozori/_Desktop"
+
+#: ../src/theme-viewer.c:131
+msgid "Open another one of these windows"
+msgstr "Otvori neki drugi od ovih prozora"
+
+#: ../src/theme-viewer.c:138
+msgid "This is a demo button with an 'open' icon"
+msgstr "Ovo je probno dugme s sličicom 'otvori'"
+
+#: ../src/theme-viewer.c:145
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Ovo je probno dugme s sličicom 'izlaz'"
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr "Ovo je primjer poruke u primjeru dijaloga"
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Lažna stavka izbornika %d\n"
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "Prozor samo s okvirom"
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr "Bar"
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "Običan prozor programa"
+
+#: ../src/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Dijaloški okvir"
+
+#: ../src/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "Modalni dijaloški prozor"
+
+#: ../src/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta alata"
+
+#: ../src/theme-viewer.c:397
+msgid "Torn-off Menu"
+msgstr "Isključi izbornik"
+
+#: ../src/theme-viewer.c:402
+msgid "Border"
+msgstr "Rub"
+
+#: ../src/theme-viewer.c:731
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test izgleda dugmeta %d"
+
+#: ../src/theme-viewer.c:760
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekundi za crtanje jednog okvira prozora"
+
+#: ../src/theme-viewer.c:803
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Uptreba: marco-theme-viewer [NAZIV_TEME]\n"
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Greška pri učitavanju teme: %s\n"
+
+#: ../src/theme-viewer.c:816
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tema \"%s\" je učitana za %g sekundi.\n"
+
+#: ../src/theme-viewer.c:839
+msgid "Normal Title Font"
+msgstr "Obični font naslova"
+
+#: ../src/theme-viewer.c:845
+msgid "Small Title Font"
+msgstr "Mali font naslova"
+
+#: ../src/theme-viewer.c:851
+msgid "Large Title Font"
+msgstr "Veliki font naslova"
+
+#: ../src/theme-viewer.c:856
+msgid "Button Layouts"
+msgstr "Izgledi dugmadi"
+
+#: ../src/theme-viewer.c:861
+msgid "Benchmark"
+msgstr "Mjerilo"
+
+#: ../src/theme-viewer.c:908
+msgid "Window Title Goes Here"
+msgstr "Ovdje ide naslov prozora"
+
+#: ../src/theme-viewer.c:1012
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Na korisničkoj strani sam nacrtao %d okvira za %g sekundi (%g milisekundi po "
+"okviru) i %g sekundi ukupnog vremena uključujući resurse poslužitelja X-a (%"
+"g milisekundi po okviru)\n"
+
+#: ../src/theme-viewer.c:1227
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"Ispitivanje mjesta izraza je rezultiralo izrazom \"TRUE\", ali je "
+"postavljena greška"
+
+#: ../src/theme-viewer.c:1229
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"Ispitivanje mjesta izraza je rezultiralo izrazom \"FALSE\", ali nije "
+"postavljena greška"
+
+#: ../src/theme-viewer.c:1233
+msgid "Error was expected but none given"
+msgstr "Očekivana je greška, ali nije niti jedna prijavljena"
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Očekivana je greška %d, ali je dobivena %d"
+
+#: ../src/theme-viewer.c:1241
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Nije očekivana greška, ali je prijavljena: %s"
+
+#: ../src/theme-viewer.c:1245
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "vrijednost za x je bila %d, a očekivana je %d"
+
+#: ../src/theme-viewer.c:1248
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "vrijednost za y je bila %d, a očekivana je %d"
+
+#: ../src/theme-viewer.c:1310
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d koordinatni izrazi parsirani u %g sekundi (%g sekundi u prosjeku)\n"
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "na vrh"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "na dno"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "lijevo"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "desno"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "geometrija okvira ne navodi „%s“ dimenziju"
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "geometrija okvira ne navodi „%s“ dimenziju za rub „%s“"
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Odnos dugme %g nije razuman"
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Geometrija oblika nije odredila veličinu dugmadi."
+
+#: ../src/theme.c:843
+msgid "Gradients should have at least two colors"
+msgstr "Stepenovanje mora imati barem dvije boje"
+
+#: ../src/theme.c:969
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK specifikacija boje mora imati stanje u zagradi,naprimjer gtk:fg"
+"[NORMAL] gdje je NORMAL stanje;nije moguće analizirati \"%s\""
+
+#: ../src/theme.c:983
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK specifikacija boje mora imati zatvorenu zagradu poslije stanja,"
+"naprimjer gtk:fg[NORMAL] gdje je NORMAL stanje;nije moguće analizirati \"%s"
+"\""
+
+#: ../src/theme.c:994
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Nisam shvatio stanje \"%s\" u izboru boja"
+
+#: ../src/theme.c:1007
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Ne razumijem komponentu boje \"%s\" u izboru boja"
+
+#: ../src/theme.c:1037
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Format miješanja „blend/bg_color/fg_color/alpha“, „%s“ se ne uklapa u "
+"traženi format zapisa"
+
+#: ../src/theme.c:1048
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Nije moguće analizirati alfa vrijednost \"%s\" u nijansnoj boji"
+
+#: ../src/theme.c:1058
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alfa vrijednost \"%s\" u nijansiranoj boji nije između 0.0 i 1.0"
+
+#: ../src/theme.c:1105
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Format osjenčenja je \"shade/base_color/factor\", \"%s\" ne odgovara formatu"
+
+#: ../src/theme.c:1116
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Nije moguće analizirati faktor sjenčenja \"%s\" u sjenčenim bojama"
+
+#: ../src/theme.c:1126
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Faktor sjenčenja \"%s\" u zasjenčenoj boji je negativan"
+
+#: ../src/theme.c:1155
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Nije moguće analizirati boju \"%s\""
+
+#: ../src/theme.c:1417
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Izraz koordinacije sadrži karakter '%s' koji nije dozvoljen"
+
+#: ../src/theme.c:1444
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Izraz koordinacije sadrži broj sa pokretnom točkom '%s' koji nije mogao biti "
+"analiziran"
+
+#: ../src/theme.c:1458
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Izraz koordinacije sadrži cijeli broj '%s' koji nije mogao biti analiziran"
+
+#: ../src/theme.c:1525
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Izraz koordinacije sadrži nepoznati operator na početku ovog teksta \"%s\""
+
+#: ../src/theme.c:1582
+msgid "Coordinate expression was empty or not understood"
+msgstr "Izraz koordinacije je bio prazan ili nije shvatio"
+
+#: ../src/theme.c:1725 ../src/theme.c:1735 ../src/theme.c:1769
+msgid "Coordinate expression results in division by zero"
+msgstr "Izraz koordinata je rezultat podjele sa nulom"
+
+#: ../src/theme.c:1777
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Izraz koordinacije pokušava upotrijebiti mod operator na broju sa pomičnim "
+"zarezom"
+
+#: ../src/theme.c:1834
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Izraz koordinacije ima operator \"%s\" gdje se očekivao operant"
+
+#: ../src/theme.c:1843
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Izraz koordinacije je imao operant a očekivao se operator"
+
+#: ../src/theme.c:1851
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Izraz koordinacije je završio sa operatorom umjesto operanta"
+
+#: ../src/theme.c:1861
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Izraz koordinacije ima operator \"%c\" koji prati operator \"%c\" ali bez "
+"operacija između"
+
+#: ../src/theme.c:1980
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr ""
+"Izraz koordinacije analizom je preopteretio svoj međumemorijski prostor, ovo "
+"je u stvari bug Marco-a, ali jeste li sigurni da vam treba tako veliki "
+"izraz?"
+
+#: ../src/theme.c:2009
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Izraz koordinacije je morao zatvoriti zagrade sa ne otvorenim zagradama."
+
+#: ../src/theme.c:2072
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Izraz koordinacije je imao nepoznatu varijablu ili konstantu \"%s\""
+
+#: ../src/theme.c:2129
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Izraz koordinacije je imao otvorene zagrade sa ne zatvorenim zagradama"
+
+#: ../src/theme.c:2140
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Izraz koordinacije izgleda ne sadrži operacije ili operante."
+
+#: ../src/theme.c:2384 ../src/theme.c:2406 ../src/theme.c:2427
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "Tema sadrži izraz \"%s\" koji uzrokuje grešku: %s\n"
+
+#: ../src/theme.c:3913
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"svejedno\"/> mora biti "
+"određeno za format ovog okvira"
+
+#: ../src/theme.c:4363 ../src/theme.c:4395
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Nedostaje <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"svejedno\"/>"
+
+#: ../src/theme.c:4446
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Nije uspjelo učitavanje teme \"%s\": %s\n"
+
+#: ../src/theme.c:4592 ../src/theme.c:4599 ../src/theme.c:4606
+#: ../src/theme.c:4613 ../src/theme.c:4620
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nije podešen <%s> za temu \"%s\""
+
+#: ../src/theme.c:4630
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Nije odabrana vrsta okvira za prozor tipa \"%s\" u temi \"%s\", dodajte "
+"<window type=\"%s\" style_set=\"svejedno\"/> element"
+
+#: ../src/theme.c:4652
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"svejedno\"/>mora biti "
+"naveden za ovu temu"
+
+#: ../src/theme.c:5041 ../src/theme.c:5103
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Korisnički definisane konstante moraju početi velikim slovom; \"%s\" ne "
+"počinje "
+
+#: ../src/theme.c:5049 ../src/theme.c:5111
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstanta \"%s\" je već definisana"
+
+#: ../src/util.c:93
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Nije uspjelo otvaranje zapisnika o ispravku grešaka: %s\n"
+
+#: ../src/util.c:103
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Nije uspjelo fdopen() datoteke zapisnika%s: %s\n"
+
+#: ../src/util.c:109
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Otvorena zapisnička datoteka %s\n"
+
+#: ../src/util.c:203
+msgid "Window manager: "
+msgstr "Upravitelj prozora:"
+
+#: ../src/util.c:349
+msgid "Bug in window manager: "
+msgstr "Greška u upravitelju prozora: "
+
+#: ../src/util.c:378
+msgid "Window manager warning: "
+msgstr "Upozorenje upravitelja prozora: "
+
+#: ../src/util.c:402
+msgid "Window manager error: "
+msgstr "Greška upravitelja prozora: "
+
+#: ../src/window-props.c:162
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %ld\n"
+msgstr "Aplikacija je postavila prividan _NETWM_PID %ld\n"
+
+#. first time through
+#: ../src/window.c:5205
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Prozor %s je postavio SM_CLIENT_ID na samog sebe umjesto na prozor "
+"WM_CLIENT_LEADER kao što je navedeno u ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5876
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Prozor %s je postavio MWM hint navodeći da mu se veličina ne može "
+"promijeniti, ali postavlja min. veličinu %d x %d a maksimalnu %d x %d; ovo "
+"nema previše smisla.\n"
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Prozor 0x%lx ima osobinu %s\n"
+"tako da je očekivano da ima tip %s format %d,\n"
+"a zapravo ima tip %s format %d n_items %d.\n"
+"Ovo je najverovatnije greška u programu, a ne u upravitelju prozora.\n"
+"Prozor ima naslov=\"%s\" klasa=\"%s\" ime=\"%s\"\n"
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Osobina %s na prozoru 0x%lx je sadržala neispravan UTF-8\n"
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Osobina %s na prozoru 0x%lx sadrži neispravni UTF-8 za predmet %d na popisu\n"
diff --git a/po/ca.po b/po/ca.po
new file mode 100644
index 00000000..652d7ab5
--- /dev/null
+++ b/po/ca.po
@@ -0,0 +1,3947 @@
+# Catalan translation of Marco.
+# Copyright © 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+# Softcatala <[email protected]>, 2002.
+# Jesús Moreno <[email protected]>, 2002.
+# Jordi Mallach <[email protected]>, 2003, 2004, 2005, 2006, 2007, 2008.
+# David Planella <[email protected]>, 2008, 2009, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco 2.24\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-09 20:00+0100\n"
+"PO-Revision-Date: 2010-04-02 18:43+0200\n"
+"Last-Translator: David Planella <[email protected]>\n"
+"Language-Team: Softcatalà <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Escriptori"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Gestor de finestres"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Esdeveniment de to del sistema"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Es desconeix la informació demanada sobre la finestra: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> no està responent."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Podeu esperar un moment per veure si continua o forçar la sortida completa "
+"de l'aplicació."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Espera"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Força'n la sortida"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "S'ha produït un error en obtenir el nom de l'ordinador central: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Manca l'extensió %s necessària per a la composició"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr ""
+"S'ha produït un error en obrir la pantalla del sistema de finestres X «%s»\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"S'ha perdut la connexió amb la pantalla «%s»;\n"
+"és molt probable que el servidor X s'hagi aturat o que hàgiu finalitzat/\n"
+"destruït el gestor de finestres.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "S'ha produït un error fatal d'E/S %d (%s) a la pantalla «%s».\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Ja hi ha algun altre programa utilitzant la clau %s amb els modificadors %x "
+"com a vinculació\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"S'ha produït un error en executar <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "No s'ha definit cap ordre %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "No s'ha definit cap ordre de terminal.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., i d'altres\n"
+"Això és programari lliure; vegeu els fitxers de codi font per conèixer-ne\n"
+"les condicions de còpia.\n"
+"No hi ha CAP garantia; ni tan sols la garantia implícita de COMERCIABILITAT\n"
+"o ADEQUACIÓ A PER UN PROPÒSIT PARTICULAR.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Inhabilita la connexió al gestor de sessions"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Reemplaça el gestor de finestres en execució pel Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Especifica l'ID de gestió de sessió"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Visualització de l'X a utilitzar"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inicialitza la sessió des del fitxer desat"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Mostra la versió"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Fes que les crides a l'X siguin síncrones"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Habilita la composició"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Inhabilita la composició"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"No creïs finestres a pantalla completa que estiguin maximitzades i no "
+"tinguin decoracions"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "No s'ha pogut analitzar el directori de temes: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"No s'ha trobat cap tema. Assegureu-vos que %s existeix i conté els temes "
+"habituals.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "No s'ha pogut reiniciar: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "La clau MateConf «%s» està establerta a un valor no vàlid\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"%d, emmagatzemat a la clau MateConf %s, està fora de l'interval de %d a %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "La clau «%s» del Gconf està establerta a un tipus no vàlid\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Les solucions temporals per a aplicacions amb errors estan inhabilitades. "
+"Pot ser que certes aplicacions no funcionin correctament.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"No s'ha pogut analitzar la descripció de tipus de lletra «%s» de la clau "
+"MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"«%s», trobat a la base de dades de la configuració, no és un valor vàlid per "
+"al modificador del botó del ratolí\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+"S'ha produït un error en establir el nombre d'espais de treball a %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Espai de treball %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"«%s» trobat a la base de dades de la configuració no és un valor vàlid per a "
+"la vinculació de tecla «%s»\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+"S'ha produït un error en establir el nom de l'espai de treball %d a «%s»: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr ""
+"S'ha produït un error en establir l'estat del gestor de composició: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "La pantalla %d en la visualització «%s» no és vàlida\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"La pantalla %d en la visualització «%s» ja té un gestor de finestres; proveu "
+"l'opció --replace per reemplaçar el gestor de finestres actual.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"No s'ha pogut adquirir la selecció del gestor de finestres en la pantalla %d "
+"visualització «%s»\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "La pantalla %d en la visualització «%s» ja té un gestor de finestres\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "No s'ha pogut alliberar la pantalla %d en la visualització «%s»\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"El format és «<Control>a» o «<Shift><Alt>F1».\n"
+"\n"
+"L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+"abreviacions com «<Ctl>» i «<Ctrl>». Si establiu l'opció a la cadena especial "
+"«disabled» (inhabilitat), no hi haurà cap vinculació per a aquesta acció."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"El format és «<Control>a» o «<Shift><Alt>F1».\n"
+"\n"
+"L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+"abreviacions com «<Ctl>» i «<Ctrl>». Si establiu l'opció a la cadena especial "
+"«disabled», no hi haurà cap vinculació per a aquesta acció.\n"
+"\n"
+"Aquesta vinculació es pot invertir en prémer la tecla «Shift»; de manera que "
+"no es podrà utilitzar la tecla «Shift»."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "No s'ha pogut crear el directori «%s»: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "No s'ha pogut obrir el fitxer de sessió «%s» per a l'escriptura: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "S'ha produït un error en escriure el fitxer de sessió «%s»: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "S'ha produït un error en tancar el fitxer de sessió «%s»: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "No s'ha pogut llegir el fitxer de sessió «%s» desat: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "No s'ha pogut analitzar el fitxer de sessió desat: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"S'ha vist l'atribut <marco_session> però encara hi ha l'identificador de "
+"sessió"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Atribut %s desconegut a l'element <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "etiqueta <window> imbricada"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Element %s desconegut"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Aquestes finestres no admeten la funció «desa la configuració actual» i "
+"s'hauran de reiniciar manualment la pròxima vegada que entreu."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "No s'ha pogut obrir el registre de depuració: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "No s'ha pogut executar fdopen() sobre el fitxer de registre %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "S'ha obert el fitxer de registre %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco es va compilar sense compatibilitat per al mode detallat\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Gestor de finestres: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Error en el gestor de finestres: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Avís del gestor de finestres: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Error del gestor de finestres: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"La finestra %s estableix SM_CLIENT_ID en ella mateixa, en comptes del "
+"WM_CLIENT_LEADER, tal com s'especifica a ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"La finestra %s estableix un consell MWM que indica que no és "
+"redimensionable, però estableix una mida mínima %d x %d i una mida màxima %d "
+"x %d; açò no té massa sentit.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "L'aplicació ha definit un _NET_WM_PID %lu fals\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (a %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (com a usuari primari)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (com a %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (com a un altre usuari)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+"WM_TRANSIENT_FOR no vàlid per a la finestra 0x%lx especificat per a %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"La finestra 0x%lx té la propietat %s\n"
+"que s'esperava tingués el tipus %s format %d\n"
+"i actualment té el tipus %s format %d n elements %d.\n"
+"És molt possible que sigui un error en l'aplicació, no pas del gestor de "
+"finestres.\n"
+"La finestra té el títol=«%s» classe=«%s» nom=«%s»\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "La propietat %s en la finestra 0x%lx contenia un UTF-8 invàlid\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"La propietat %s en la finestra 0x%lx contenia UTF-8 invàlid per a l'element %"
+"d en la llista\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Canvia a l'espai de treball 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Canvia a l'espai de treball 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Canvia a l'espai de treball 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Canvia a l'espai de treball 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Canvia a l'espai de treball 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Canvia a l'espai de treball 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Canvia a l'espai de treball 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Canvia a l'espai de treball 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Canvia a l'espai de treball 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Canvia a l'espai de treball 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Canvia a l'espai de treball 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Canvia a l'espai de treball 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Canvia a l'espai de treball de l'esquerra de l'actual"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Canvia a l'espai de treball a la dreta de l'actual"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Canvia a l'espai de treball damunt de l'actual"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Canvia a l'espai de treball a sota de l'actual"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Mou-te entre finestres d'una aplicació amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Mou-te cap enrere entre finestres d'una aplicació amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Mou-te entre finestres amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Mou-te cap enrere entre finestres amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Mou-te entre quadres i l'escriptori amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Mou-te cap enrere entre quadres i l'escriptori amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Mou-te entre les finestres d'una aplicació immediatament"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Mou-te cap enrere entre les finestres d'una aplicació immediatament"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Mou-te entre finestres immediatament"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Mou-te cap enrere entre finestres immediatament"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Mou entre quadres i l'escriptori immediatament"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Mou cap enrere entre quadres i l'escriptori immediatament"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Oculta totes les finestres normals i dóna el focus a l'escriptori"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Mostra el menú principal del quadre"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Mostra el diàleg d'execució d'aplicacions del quadre"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Fes una captura de pantalla"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Fes una captura de pantalla d'una finestra"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Executa un terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Activa el menú de finestra"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Si s'utilitza el mode a pantalla completa"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Canvia l'estat de maximització"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+"Commuta la funció que fa que una finestra sempre serà visible per sobre de "
+"les altres"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximitza la finestra"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restaura la finestra"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Canvia l'estat d'ombrejat"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimitza la finestra"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Tanca la finestra"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Mou la finestra"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Redimensiona la finestra"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Commuta la funció que fa que la finestra estigui en tots els espais de "
+"treball o només en un"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Mou la finestra a l'espai de treball 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Mou la finestra a l'espai de treball 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Mou la finestra a l'espai de treball 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Mou la finestra a l'espai de treball 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Mou la finestra a l'espai de treball 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Mou la finestra a l'espai de treball 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Mou la finestra a l'espai de treball 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Mou la finestra a l'espai de treball 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Mou la finestra a l'espai de treball 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Mou la finestra a l'espai de treball 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Mou la finestra a l'espai de treball 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Mou la finestra a l'espai de treball 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Mou la finestra un espai de treball a l'esquerra"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Mou la finestra un espai de treball a la dreta"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Mou la finestra un espai de treball amunt"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Mou la finestra un espai de treball avall"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Alça una finestra coberta per una altra, o sinó la baixa"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Alça una finestra per damunt de les altres"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Baixa la finestra sota les altres"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximitza la finestra verticalment"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximitza la finestra horitzontalment"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Mou la finestra a la cantonada nord-oest (part superior esquerra)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Mou la finestra a la cantonada nord-est (part superior dreta)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Mou la finestra a la cantonada sud-oest (part inferior esquerra)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Mou la finestra a la cantonada sud-est (part inferior dreta)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Mou la finestra a la part nord (superior) de la pantalla"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Mou la finestra a la part del sud (inferior) de la pantalla"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Mou la finestra a la part est (dreta) de la pantalla"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Mou la finestra a la part oest (esquerra) de la pantalla"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Mou la finestra al centre de la pantalla"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(No implementat) La navegació funciona en termes d'aplicacions, no finestres"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Una cadena de descripció de tipus de lletra per a les barres de títol de les "
+"finestres. La mida de la descripció només s'utilitzarà si l'opció "
+"titlebar_font_size està establerta a 0. A més a més, aquesta opció està "
+"inhabilitada si titlebar_uses_desktop_font està establert és cert."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Acció en fer doble clic en la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Acció en fer clic amb el botó del mig en la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Acció en fer clic amb el botó secundari en la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Emplaçament dels botons en la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"La disposició dels botons a la barra del títol. El valor ha de ser una "
+"cadena, com ara «menu:minimize,maximize,spacer,close»; els dos punts separen "
+"la cantonada esquerra de la finestra de la dreta, i els noms dels botons se "
+"separen amb comes. No es permeten botons duplicats. Els botons desconeguts "
+"es descartaran sense cap notificació, de manera que es puguin afegir botons "
+"en futures versions del Marco sense trencar les versions antigues. Es pot "
+"afegir una etiqueta especial d'espaiament («spacer») per inserir una "
+"determinada quantitat d'espai entre dos botons adjacents."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Alça automàticament la finestra amb el focus"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Si es fa clic en una finestra mentre es manté aquesta tecla modificadora "
+"premuda, es mourà la finestra (botó esquerre), redimensionarà la finestra "
+"(botó del mig) o mostrarà el menú de la finestra (botó dret). Les operacions "
+"de fer clic amb el botó del mig i el secundari es poden intercanviar amb la "
+"clau «resize_with_right_button». El modificador s'expressa com a «&lt;Alt;"
+"&gt;» o com a «&lt;Super&gt;», per exemple."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Ordres a executar en resposta a vinculacions de tecles"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Gestor de composició"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Controla de quina manera les finestres noves reben el focus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Tema actual"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Retard en mil·lisegons per a l'opció d'alçat automàtic"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determina si el Marco és un gestor de composició."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determina si les aplicacions o el sistema poden generar «sons» audibles; es "
+"pot utilitzar en conjunció amb «visual bell» per permetre «sons» silenciosos."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Inhabilita funcionalitats que són requerides per aplicacions velles o amb "
+"errors"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Habilita la campana visual"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Si és «true» (cert), i el mode del focus és «sloppy» o «mouse», aleshores la finestra "
+"amb el focus s'alçarà automàticament després d'un retard, que s'especifica a "
+"la clau auto_raise_delay. Això no està relacionat en l'acció de fer clic a "
+"una finestra per alçar-la, ni tampoc en entrar en una finestra en arrossegar "
+"i deixar anar."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Si és «true» (cert), ignora l'opció titlebar_font i utilitza el tipus de lletra de "
+"les aplicacions estàndard per als títols de les finestres."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Si és «true» (cert), el Marco donarà a l'usuari menys informació utilitzant marcs "
+"amb fils, evitant les animacions o altres mitjans. Això implica una reducció "
+"significativa en usabilitat per a molts usuaris, però pot permetre a algunes "
+"aplicacions velles i servidors de terminal. No obstant, la funcionalitat "
+"dels marcs amb fils es desactiva quan l'accessibilitat està habilitada."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Si és «true» (cert), el Marco treballarà en termes d'aplicacions, en comptes de "
+"finestres. El concepte és una mica abstracte, però en general, una "
+"configuració basada en aplicacions és més semblant als Mac i menys com el "
+"Windows. Quan teniu el focus en una finestra en el mode basat en "
+"aplicacions, totes les finestres en l'aplicació s'alçaran. A més a més, en "
+"el mode basat en aplicacions, els clics de focus no es passen a les "
+"finestres d'altres aplicacions. Tanmateix, el mode basat en aplicacions "
+"encara no està massa implementat."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Si és «true» (cert), sacrifica usabilitat per usar menys recursos"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modificador a usar per a les accions modificades de clic en finestra"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nom de l'espai de treball"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Número d'espais de treball"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"El nombre d'espais de treball. Ha de ser més gran que zero, i té un màxim "
+"fix per prevenir la destrucció accidental del vostre escriptori si demaneu "
+"massa espais de treball."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Executa una ordre definida"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Establiu-lo a «true» (cert) per canviar la mida amb el botó secundari i "
+"mostrar un menú amb el botó del mig mentre es premi la tecla especificada al "
+"paràmetre «mouse_button_modifier». Establiu-lo a «false» (fals) perquè "
+"funcioni a la inversa."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Si establiu aquesta opció a «false» (fals) es pot produir un comportament "
+"incorrecte, de manera que s'aconsella als usuaris que no canviïn el seu "
+"valor predeterminat: «true» (cert). Moltes accions (p.ex. fer clic a l'àrea "
+"del client, moure o canviar la mida de la finestra) normalment alcen la "
+"finestra com a efecte secundari. Si establiu aquesta opció a fals -cosa molt "
+"poc recomanable- se separarà l'alçament de la finestra d'altres accions de "
+"l'usuari i s'ignoraran les sol·licituds d'alçament que generin les "
+"aplicacions. Vegeu l'informe d'error http://bugzilla.gnome.org/show_bug.cgi?"
+"id=445447#c6. Fins i tot quan aquesta opció sigui falsa, encara es poden "
+"alçar les finestres amb alt-clic-esquerra en qualsevol lloc de la finestra, "
+"amb un clic a les decoracions de la finestra, o amb un missatge especial "
+"dels paginadors, com ara sol·licituds d'activació des de les miniaplicacions "
+"de la llista de finestres. Aquesta opció està inhabilitada en el mode "
+"d'alçar les finestres amb clic. Fixeu-vos que les diverses maneres d'alçar "
+"les finestres quan «raise_on_click» és fals no inclouen les peticions "
+"programades de les aplicacions per alçar finestres; aquestes peticions "
+"s'ignoraran sigui quin sigui el motiu. Si desenvolupeu aplicacions i un "
+"usuari es queixa que l'aplicació no funciona quan aquest paràmetre està "
+"inhabilitat, digueu-li que es culpa _seva_ per haver trencat el gestor de "
+"finestres, i que ha de tornar a canviar aquesta opció a «true» o conviure amb "
+"l'error."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Algunes aplicacions no fan cas de les especificacions que poden fer que el "
+"gestor de finestres no respongui correctament. Aquesta opció fa que el "
+"Marco es posi en un mode rigorosament correcte, que proporciona una "
+"interfície d'usuari més consistent, sempre que no s'hagin d'executar "
+"aplicacions que no actuïn correctament."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "La campana del sistema és audible"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Li diu al Marco com implementar la indicació visual que s'ha tocat la "
+"campana del sistema, o l'indicador de campana d'una altra aplicació. "
+"Actualment, hi ha dos valors vàlids, «fullscreen», que fa un flaix blanc i "
+"negre en tota la pantalla, i «frame_flash», que causa que la barra del títol "
+"de l'aplicació que ha enviat el senyal de campana faci un flaix. Si no se "
+"sap quina aplicació ha enviat el senyal de campana, com sol passar per als "
+"«sons del sistema» per defecte, la barra del títol de la finestra que tingui "
+"el focus en aquell moment rep un flaix."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Les claus /apps/marco/global_keybindings/run_command_N estableixen "
+"vinculacions de tecles que corresponen a aquestes ordres. Si es prem la "
+"vinculació per a run_command_N, s'executarà command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"La clau /apps/marco/global_keybindings/run_command_screenshot estableix "
+"una vinculació de tecles que fa que s'invoqui l'ordre especificada en "
+"aquesta configuració."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"La clau /apps/marco/global_keybindings/run_command_window_screenshot "
+"estableix una vinculació de tecles que fa que s'invoqui l'ordre especificada "
+"en aquesta configuració."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"La vinculació de tecles que executa l'ordre amb la numeració corresponent a /"
+"apps/marco/keybinding_commands. El format és semblant a «&lt;Control&gt;a» "
+"o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+"minúscules i majúscules, i també abreviacions com ara «&lt;Ctl&gt;» o «&lt;"
+"Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi haurà "
+"cap vinculació per a aquesta acció."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "El nom d'un espai de treball."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "L'ordre de captura de pantalla"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"El tema determina l'aspecte dels contorns de les finestres, la barra del "
+"títol, etc."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"El retard de temps abans d'alçar una finestra si auto_raise és establert a "
+"«true». El retard es dóna en mil·lèssimes de segon."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"El mode de focus de la finestra indica com s'activen les finestres. Té tres "
+"valors possibles; «click» vol dir que cal fer clic a les finestres per donar-"
+"los el focus, «sloppy» vol dir que les finestres reben el focus quan el "
+"punter hi entra a dins, i «mouse» vol dir que les finestres s'enfoquen quan "
+"el punter hi entra a dins, i es desenfoquen quan el punter abandona la "
+"finestra."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "L'ordre de captura de finestra"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Aquesta opció determina l'efecte de l'acció de doble clic a la barra de "
+"títol. Els valors permesos són «toggle_shade» (commuta l'estat de persiana), "
+"que commutarà l'estat d'ombrejat de la finestra, «toggle_maximize» (commuta "
+"la maximització), que en commutarà l'estat de maximització, "
+"«toggle_maximize_horizontally» (commuta la maximització horitzontal) i "
+"«toggle_maximize_vertically» (commuta la maximització vertical), que només "
+"commutaran l'estat de maximització en la direcció indicada, "
+"«minimize» (minimitza), que minimitzarà la finestra, «shade» (persiana), que "
+"enrotllarà la finestra cap amunt, «menu», que mostrarà el menú de la "
+"finestra, «lower» (abaixa), que situarà la finestra darrere de totes les "
+"altres, i «none» (res), que no farà res."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Aquesta opció determina l'efecte de l'acció de fer clic amb el botó del mig "
+"a la barra de títol. Els valors permesos són «toggle_shade» (commuta l'estat "
+"de persiana), que commutarà l'estat d'ombrejat de la finestra, "
+"«toggle_maximize» (commuta la maximització), que en commutarà l'estat de "
+"maximització, «toggle_maximize_horizontally» (commuta la maximització "
+"horitzontal) i «toggle_maximize_vertically» (commuta la maximització "
+"vertical), que només commutaran l'estat de maximització en la direcció "
+"indicada, «minimize» (minimitza), que minimitzarà la finestra, "
+"«shade» (persiana), que enrotllarà la finestra cap amunt, «menu», que mostrarà "
+"el menú de la finestra, «lower» (abaixa), que situarà la finestra darrere de "
+"totes les altres, i «none» (res), que no farà res."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Aquesta opció determina l'efecte de l'acció de fer clic amb el botó "
+"secundari a la barra de títol. Els valors permesos són "
+"«toggle_shade» (commuta l'estat de persiana), que commutarà l'estat "
+"d'ombrejat de la finestra, «toggle_maximize» (commuta la maximització), que "
+"en commutarà l'estat de maximització, «toggle_maximize_horizontally» (commuta "
+"la maximització horitzontal) i «toggle_maximize_vertically» (commuta la "
+"maximització vertical), que només commutaran l'estat de maximització en la "
+"direcció indicada, «minimize» (minimitza), que minimitzarà la finestra, "
+"«shade» (persiana), que enrotllarà la finestra cap amunt, «menu», que mostrarà "
+"el menú de la finestra, «lower» (abaixa), que situarà la finestra darrere de "
+"totes les altres, i «none» (res), que no farà res."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Aquesta opció proporciona control adicional sobre com les finestres noves "
+"obtenen el focus. Té dos valors possibles: «smart», que aplica el focus "
+"normal d'usuari, i «strict», que fa que no es doni el focus a les finestres "
+"que s'iniciïn des d'un terminal."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Activa una indicació visual quan una aplicació o el sistema envia un senyal "
+"de «campana» o «sons»; és útil per als durs d'orella i per a l'ús en ambients "
+"amb soroll."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr ""
+"Utilitza el tipus de lletra estàndard del sistema en els títols de les "
+"finestres"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Tipus de «sons» visual"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Si l'alçat hauria de ser un efecte secundari d'altres interaccions de "
+"l'usuari"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Si es canviarà la mida amb el botó secundari"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Mode de focus de les finestres"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Tipus de lletra del títol de les finestres"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Forma d'ús: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Tanca la finestra"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menú de la finestra"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimitza la finestra"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximitza la finestra"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restaura la finestra"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Enrotlla la finestra"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Desenrotlla la finestra"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Matín la finestra per damunt"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Treu la finestra de damunt"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Sempre a l'espai de treball visible"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Posa la finestra només a un espai de treball"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimitza"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximitza"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Desma_ximitza"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Enrotlla"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Desenro_tlla"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Mou"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Redimensiona"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Mou la _barra de títol en pantalla"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Sempre per _damunt"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Sempre a l'espai de treball _visible"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Només en _aquest espai de treball"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Mou a l'espai de treball de l'es_querra"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Mou a l'espai de treball de la _dreta"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Mou a l'espai de treball de _sobre"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Mou a l'espai de treball de s_ota"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Tanca"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Espai de treball %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Espai de treball 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Espai de treball %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Mou a un altre es_pai de treball"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Maj"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hiper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "superior"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "inferior"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "esquerra"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "dreta"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "la geometria del marc no especifica la dimensió «%s»"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "la geometria del marc no especifica la dimensió «%s» per al contorn «%s»"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "El ràtio d'aspecte dels botons %g no és raonable"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "La geometria del marc no especifica la mida dels botons"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Els degradats han de tenir almenys dos colors"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"L'especificació de color GTK ha de tenir l'estat entre claudàtors, p.e. gtk:"
+"fg[NORMAL] on NORMAL és l'estat; no s'ha pogut analitzar \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"L'especificació de color GTK ha de tenir un claudàtor de tancament després "
+"de l'estat, p.e. gtk:fg[NORMAL] on NORMAL és l'estat; no s'ha pogut "
+"analitzar «%s»"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "No s'entén l'estat «%s» en l'especificació del color"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "No s'entén l'element de color «%s» en l'especificació del color"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"El format de barreja és «blend/bg_color/fg_color/alpha», «%s» no s'ajusta al "
+"format"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "No s'ha pogut analitzar el valor d'opacitat «%s» en el color barrejat"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "El valor alfa «%s» en el color barrejat no està entre 0,0 i 1,0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"El format d'ombrejat és «shade/base_color/factor», «%s» no s'ajusta al format"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "No s'ha pogut analitzar el factor d'ombrejat «%s» en el color ombrejat"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "El factor d'ombrejat «%s» en el color ombrejat és negatiu"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "No s'ha pogut analitzar el color «%s»"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "L'expressió coordinada conté el caràcter «%s», el qual no és permès"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"L'expressió coordinada conté el número «%s» de punt flotant el qual no es pot "
+"analitzar"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "L'expressió coordinada conté l'enter «%s» el qual no es pot analitzar"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"L'expressió coordinada conté un operador desconegut a l'inici d'aquest text: "
+"«%s»"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "L'expressió coordinada estava buida o no s'ha entès"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "L'expressió coordinada dóna una divisió per zero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"L'expressió coordinada intenta utilitzar l'operador de mode en un número de "
+"punt flotant"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"L'expressió coordinada té un operador «%s» on hi hauria d'anar un operand"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "L'expressió coordinada té un operand on hi hauria d'anar un operador"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"L'expressió coordinada ha finalitzat amb un operador en lloc d'un operand"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"L'expressió coordinada té un operador «%c» seguit de l'operador «%c» sense cap "
+"operand enmig"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "L'expressió coordinada té una variable o constant desconeguda «%s»"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+"L'analitzador d'expressions de coordinades ha desbordat la seva memòria "
+"intermèdia."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "L'expressió coordinada té un parèntesi de tancament i cap d'obertura"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "L'expressió coordinada té un parèntesi d'obertura i cap de tancament"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "L'expressió coordinada no sembla tenir cap operador o operand"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "El tema conté una expressió que ha provocat un error: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"qualsevol\"/> s'ha "
+"d'especificar per a aquest estil de marc"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"No s'ha trobat <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style="
+"\"qualsevol\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "No s'ha pogut carregar el tema \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "No s'ha definit <%s> per al tema «%s»"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"No s'ha definit cap estil de marc per al tipus de finestra \"%s\" en el tema "
+"\"%s\", afegiu un element <window type=\"%s\" style_set=\"qualsevol\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Les constants de la definició d'usuari han de començar per una majúscula; «%"
+"s» no ho és"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "La constant «%s» ja s'ha definit"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "No hi ha cap atribut «%s» a l'element <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Línia %d caràcter %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "S'ha repetit l'atribut «%s» dues vegades en el mateix element <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "L'atribut «%s» no és vàlid per a l'element <%s> en aquest context"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "No s'ha pogut analitzar «%s» com a enter"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "No s'entenen els caràcters finals «%s» de la cadena «%s»"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "L'enter %ld ha de ser positiu"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "L'enter %ld és massa gran, el màxim actual és %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "No s'ha pogut analitzar «%s» com a un número de coma flotant"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Els valors boleans han de ser «true» (cert) o «false» (fals), no «%s»"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "L'angle ha d'estar entre 0.0 i 360.0, era %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"L'opacitat ha d'estar entre 0.0 (invisible) i 1.0 (totalment opac), era a %"
+"g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Escala de títol no vàlida «%s» (ha de ser una d'aquestes: xx-small,x-small,"
+"small,medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> amb nom «%s» s'ha utilitzat dues vegades"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "El pare de <%s>, «%s», no s'ha definit"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "La geometria de <%s>, «%s», no s'ha definit"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> ha d'especificar bé una geometria o un pare que tingui una geometria"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "El valor alfa requereix que també s'especifiqui un fons de pantalla"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Tipus desconegut «%s» en l'element <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set «%s» desconegut en l'element <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "El tipus de finestra «%s» ja té assignat un joc d'estil"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "No es permet l'element <%s> sota <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"No es pot especificar «button_width»/«button_height» i l'«aspect_ratio» a la "
+"vegada per als botons"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "La distància «%s» és desconeguda"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "El ratio d'aspecte «%s» és desconeguda"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "El contorn «%s» és desconegut"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "No hi ha cap atribut de «start_angle» o «from» en l'element <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "No hi ha cap atribut de «extent_angle» o «to» en l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "No s'entén el valor «%s» per al tipus de degradat"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "No s'entén el tipus de farciment «%s» per a l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "No s'entén l'estat «%s» per a l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "No s'entén l'ombra «%s» per a l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "No s'entén la fletxa «%s» per a l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "No s'ha definit cap <draw_ops> amb el nom «%s»"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "La inclusió de draw_ops «%s» aquí crearà una referència circular"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Posició «%s» desconeguda per a la peça del marc"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "L'estil del marc ja té una peça a posició %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "No s'ha definit cap <draw_ops> amb el nom «%s»"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Funció «%s» desconeguda per al botó"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"La funció de botó «%s» no existeix en aquesta versió (%d, es necessita %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Estat «%s» desconegut per al botó"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "L'estil del marc ja té un botó per a l'estat %s de la funció %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "«%s» no és un valor vàlid per a l'atribut del focus"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "«%s» no és un valor vàlid per a l'atribut de l'estat"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "No s'ha definit un estil amb el nom «%s»"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "«%s» no és un valor vàlid per a l'atribut de redimensiona"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"No hauria de tenir l'atribut «resize» en l'element <%s> per als estats "
+"maximitzat/ombrejat"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"No hauria de tenir l'atribut «resize» en l'element <%s> per als estats "
+"maximitzats"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "L'estil ja s'ha especificat per a l'estat %s redimensiona %s focus %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "L'estil ja s'ha especificat per a l'estat %s focus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"No es pot tenir dos draw_ops per a un element <piece> (el tema ha "
+"especificat un atribut draw_ops i també un element <draw_ops>, o ha "
+"especificat ambdós elements)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"No es pot tenir dos draw_ops per a un element <button> (el tema ha "
+"especificat un atribut draw_ops i també un element <draw_ops>, o ha "
+"especificat ambdós elements)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"No es pot tenir dos draw_ops per a un element <menu_icon> (el tema ha "
+"especificat un atribut draw_ops i també un element <draw_ops>, o ha "
+"especificat ambdós elements)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "L'element més extern en el tema ha de ser <marco_theme>, no <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"L'element <%s> no és permès dins d'un element name/author/date/description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "L'element <%s> no és permès dins d'un element <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"L'element <%s> no és permès dins d'un element distance/border/aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "L'element <%s> no és permès dins d'un element d'operació igual"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "L'element <%s> no és permès dins d'un element <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "No s'ha proveït cap draw_ops per a la peça del marc"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "No s'ha proveït cap draw_ops per al botó"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "No es permet cap text dins de l'element <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "S'ha especificat <%s> dues vegades per a aquest tema"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "No s'ha trobat un fitxer vàlid per al tema %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "El fitxer de tema %s no conté un element arrel <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Finestres"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Finestres/separador"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Finestres/_Diàleg"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Finestres/Diàleg _modal"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Finestres/_Utilitat"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Finestres/_Pantalla flaix"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Finestres/Ancoratge _superior"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Finestres/Ancoratge _inferior"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Finestres/Ancoratge es_querre"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Finestres/Ancoratge d_ret"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Finestres/_Tots els ancoratges"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Finestres/_Escriptori"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Aquest és un exemple de missatge en un diàleg d'exemple"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Element fals de menú %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Finestra amb només contorn"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Barra"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Finestra d'aplicació normal"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Caixa de diàleg"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Caixa de diàleg modal"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta d'utilitat"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menú arrossegable"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Contorn"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Prova de disposició de botons %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g mil·lisegons per dibuixar un marc de finestra"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Forma d'ús: marco-theme-viewer [NOMDELTEMA]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "S'ha produït un error en carregar el tema: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "S'ha carregat el tema «%s» en %g segons\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Tipus de lletra per a títol normal"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Tipus de lletra per a títol petit"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Tipus de lletra per a títol gran"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Disposicions de botons"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Test de referència"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "El títol de la finestra va aquí"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"S'han dibuixat %d marcs en %g segons del client (%g mil·lisegons per marc) i "
+"%g segons de rellotge inclosos els recursos del servidor d'X (%g "
+"mil·lisegons per marc)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "La prova d'expressió de posició ha tornat TRUE però ha establert error"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"La prova d'expressió de posició ha tornat FALSE però no ha establert error"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "S'esperava un error però no s'ha donat cap"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "S'esperava l'error %d però s'ha donat %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "No s'esperava cap error però s'ha tornat un: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "El valor x ha sigut %d, i s'esperava %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "El valor y ha sigut %d, i s'esperava %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d expressions de coordenades analitzades en %g segons (%g segons de mitja)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Obre una altra d'aquestes finestres"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Aquest és un botó de prova amb una icona «obre»"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Aquest és un botó de prova amb una icona de «surt»"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "No s'ha pogut analitzar el missatge «%s» des del procés de diàleg\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr ""
+#~ "S'ha produït un error en llegir del procés de la pantalla de diàleg: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "S'ha produït un error en executar el diàleg marco per preguntar quant "
+#~ "a la \n"
+#~ "finalització d'una aplicació: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "S'ha produït un error en executar el marco-dialog per a avisar sobre "
+#~ "aplicacions que no admeten la gestió de sessions: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Títol"
+
+#~ msgid "Class"
+#~ msgstr "Classe"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "S'ha produït un error en executar «%s»:\n"
+#~ "%s."
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "S'ha especificat <author> dues vegades per a aquest tema"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "S'ha especificat <copyright> dues vegades per a aquest tema"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "S'ha especificat <date> dues vegades per a aquest tema"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "S'ha especificat <description> dues vegades per a aquest tema"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "S'ha produït un error en executar el marco-dialog per a mostrar un "
+#~ "error quant a una ordre: %s\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Atribut %s desconegut a l'element <marco_session>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Atribut %s desconegut a l'element <maximized>"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Atribut %s desconegut a l'element <geometry>"
+
+#, fuzzy
+#~ msgid "The keybinding used to toggle fullscreen mode."
+#~ msgstr "Si s'utilitza el mode a pantalla completa"
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Canvia l'estat sempre per damunt"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Desmaximitza la finestra"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 1."
+#~ msgstr "Mou la finestra a l'espai de treball 1"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 2."
+#~ msgstr "Mou la finestra a l'espai de treball 2"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 3."
+#~ msgstr "Mou la finestra a l'espai de treball 3"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 4."
+#~ msgstr "Mou la finestra a l'espai de treball 4"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 5."
+#~ msgstr "Mou la finestra a l'espai de treball 5"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 6."
+#~ msgstr "Mou la finestra a l'espai de treball 6"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 7."
+#~ msgstr "Mou la finestra a l'espai de treball 7"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 8."
+#~ msgstr "Mou la finestra a l'espai de treball 8"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 9."
+#~ msgstr "Mou la finestra a l'espai de treball 9"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 10."
+#~ msgstr "Mou la finestra a l'espai de treball 10"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 11."
+#~ msgstr "Mou la finestra a l'espai de treball 11"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 12."
+#~ msgstr "Mou la finestra a l'espai de treball 12"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace to the left."
+#~ msgstr "Mou la finestra un espai de treball a l'esquerra"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace to the right."
+#~ msgstr "Mou la finestra un espai de treball a la dreta"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace up."
+#~ msgstr "Mou la finestra un espai de treball amunt"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace down."
+#~ msgstr "Mou la finestra un espai de treball avall"
+
+#, fuzzy
+#~ msgid "This keybinding raises the window above other windows."
+#~ msgstr "Alça una finestra per damunt de les altres"
+
+#, fuzzy
+#~ msgid "This keybinding lowers a window below other windows."
+#~ msgstr "Baixa la finestra sota les altres"
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the screen."
+#~ msgstr "Mou la finestra a la part nord de la pantalla"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Hi ha moltes accions (p.ex. fer clic a l'àrea del client, moure o canviar "
+#~ "la mida de la finestra) que normalment alcen la finestra com a efecte "
+#~ "secundari. Si establiu aquesta opció com a falsa (cosa gens recomanable), "
+#~ "l'alçament es desvincularà de les altres accions de l'usuari i "
+#~ "s'ignoraran les sol·licituds d'alçament generades per les aplicacions. "
+#~ "Vegeu aquest informe d'error: http://bugzilla.gnome.org/show_bug.cgi?"
+#~ "id=445447#c6."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball a sobre de "
+#~ "l'espai de treball actual. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball sota l'espai de "
+#~ "treball actual. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1». L'analitzador és prou flexible i permet minúscules i majúscules, i "
+#~ "també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció "
+#~ "a la cadena especial «disabled», no hi haurà cap vinculació per a aquesta "
+#~ "acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball a l'esquerra de "
+#~ "l'espai de treball actual. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball a la dreta de "
+#~ "l'espai de treball actual. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 1. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 10. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 11. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 12. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 2. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 3. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 4. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 5. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 6. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 7. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 8. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 9. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a activar el menú de finestres. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to close a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a tancar una finestra. El format és «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que activa el «mode de moviment» i permet moure "
+#~ "una finestra utilitzant el teclat. El format és «&lt;Control&gt;a» o «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que activa el «mode de redimensió» i permet "
+#~ "redimensionar una finestra utilitzant el teclat. El format és «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a amagar totes les finestres normals i "
+#~ "establir el focus al fons de l'escriptori. El format és «&lt;Control&gt;a» "
+#~ "o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a maximitzar una finestra. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a minimitzar una finestra. El format és «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra un espai de treball cap "
+#~ "avall. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra un espai de treball a "
+#~ "l'esquerra. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra un espai de treball a la "
+#~ "dreta. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra un espai de treball "
+#~ "amunt. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 1. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 10. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 11. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 12. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 2. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 3. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 4. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 5. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 6. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 7. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 8. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 9. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre els quadres i "
+#~ "l'escriptori, utilitzant una finestra emergent. El format és semblant a "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre els quadres i "
+#~ "l'escriptori, sense utilitzar una finestra emergent. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre finestres d'una "
+#~ "aplicació, sense utilitzar una finestra emergent. Mantenint premuda la "
+#~ "techa de «majúscules» juntament amb aquesta convinació de tecles, fa que "
+#~ "es vagi enrere. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». L'analitzador és força flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre finestres d'una "
+#~ "mateixa aplicació, utilitzant una finestra emergent. Prement la tecla de "
+#~ "majúscules aquesta vinculació fa que la direcció sigui cap enrere. El "
+#~ "format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled» (inhabilitat), no hi haurà cap vinculació per a "
+#~ "aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre finestres, "
+#~ "sense utilitzar una finestra emergent. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre finestres, "
+#~ "utilitzant una finestra emergent. El format és semblant a «&lt;Control&gt;"
+#~ "a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre els quadres i "
+#~ "l'escriptori, utilitzant una finestra emergent. El format és semblant a "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre els quadres i "
+#~ "l'escriptori, sense utilitzar una finestra emergent. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre finestres d'una aplicació, "
+#~ "sense utilitzar una finestra emergent. Prement la tecla de majúscules "
+#~ "aquesta vinculació fa que la direcció sigui cap enrere. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre finestres d'una aplicació, "
+#~ "utilitzant una finestra emergent. (Tradicionalment &lt;Alt&gt;F6) Prement "
+#~ "la tecla de majúscules aquesta vinculació fa que la direcció sigui al "
+#~ "revés. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre finestres, sense utilitzar "
+#~ "una finestra emergent. El format és semblant a «&lt;Control&gt;a» o «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre finestres, utilitzant una "
+#~ "finestra emergent. El format és semblant a «&lt;Control&gt;a» o «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a seleccionar si una finestra està sempre per "
+#~ "damunt. Una finestra que estiga sempre per damunt serà visible per damunt "
+#~ "de les altres finestres que s'interseccionen. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que habilita o inhabilita el mode a pantalla "
+#~ "sencera. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a maximitzar o desmaximitzar una finestra. El "
+#~ "format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a canviar entre l'estat ombrejat i "
+#~ "desombrejat. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1». L'analitzador és prou flexible i permet minúscules i majúscules, i "
+#~ "també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció "
+#~ "a la cadena especial «disabled», no hi haurà cap vinculació per a aquesta "
+#~ "acció."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a seleccionar si una finestra està en tots "
+#~ "els espais de treball o només en un. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a desmaximitzar una finestra. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mostra el diàleg «Executa un programa» del "
+#~ "quadre. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que executa un terminal. El format és semblant a "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que invoca la utilitat de captures de pantalla "
+#~ "del quadre per a prendre una captura d'una finestra. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que invoca la utilitat de captures de pantalla "
+#~ "del quadre. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mostra el menú principal del quadre. El "
+#~ "format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles canvia si una finestra és per damunt o per "
+#~ "sota d'altres finestres. Si la finestra està coberta per una altra "
+#~ "finestra, s'alça la finestra per damunt de les altres, quedant totalment "
+#~ "visible, i posa a sota les altres. El format és semblant a «&lt;Control&gt;"
+#~ "a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles fica una finestra sota les altres. El format "
+#~ "és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part nord "
+#~ "(superior) de la pantalla. El format és semblant a «&lt;Control&gt;a» o "
+#~ "«&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding moves a window into the center of the screen. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part l'oest "
+#~ "(esquerra) de la pantalla. El format és semblant a «&lt;Control&gt;a» o "
+#~ "«&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part est (dreta) "
+#~ "de la pantalla. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part nord-est "
+#~ "(superior a la dreta) de la pantalla. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part nord-oest "
+#~ "(superior a l'esquerra) de la pantalla. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part del sud "
+#~ "(inferior) de la pantalla. El format és semblant a «&lt;Control&gt;a» o "
+#~ "«&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part sud-est de la "
+#~ "pantalla. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part sud-oest "
+#~ "(inferior a l'esquerra) de la pantalla. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part l'oest "
+#~ "(esquerra) de la pantalla. El format és semblant a «&lt;Control&gt;a» o "
+#~ "«&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles eleva la finestra per damunt de les altres. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles redimensiona una finestra per a que plene "
+#~ "tot l'espai horitzontal disponible. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles redimensiona una finestra per a que plene "
+#~ "tot l'espai vertical disponible. El format és semblant a «&lt;Control&gt;"
+#~ "a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Desmaximitza la finestra"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Cap atribut «%s» a l'element <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "El tema ja té una icona alternativa"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "El tema ja té una miniicona alternativa"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «nom» en l'element <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «valor» a l'element <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «top» a l'element <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «bottom» a l'element <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «left» a l'element <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «right» a l'element <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «color» a l'element <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «x1» a l'element <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «y1» a l'element <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «x2» a l'element <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «y2» a l'element <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «y» a l'element <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «amplada» en l'element <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «height» en l'element <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «start_angle» en l'element <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «extent_angle» en l'element <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «alpha» a l'element <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «type» a l'element <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «filename» a l'element <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «state» a l'element <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «shadow» a l'element <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «arrow» a l'element <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut «valor» a l'element <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut «posició» a l'element <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut de «funció» a l'element <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut de «estat» a l'element <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut de «focus» en l'element <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut de «style» a l'element <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut «resize» en l'element <%s>"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "%s no era de tipus enter"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d, emmagatzemat a la clau MateConf %s, no és una mida de cursor raonable, "
+#~ "ha d'estar dins del rang 1..128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d, emmagatzemat a la clau MateConf, %s no té un nombre raonable d'espais de "
+#~ "treball. El màxim actual és %d\n"
+
+#~ msgid "On _Top"
+#~ msgstr "Per damun_t"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Si forceu la sortida d'aquesta aplicació, se'n perdran els canvis que "
+#~ "hàgiu desat."
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Funció «%s» desconeguda per a la icona de menú"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Estat «%s» desconegut per a la icona de menú"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "El tema ja té una icona de menú per a l'estat %s de la funció %s"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "No s'ha proveït cap draw_ops per a la icona de menú"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "S'ha produït un error en llegir el tema del fitxer %s: %s\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"qualsevol\"/> s'ha "
+#~ "d'especificar per a aquest tema"
+
+#~ msgid ""
+#~ "If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+#~ "focused window will be automatically raised after a delay (the delay is "
+#~ "specified by the auto_raise_delay key). This preference is poorly named, "
+#~ "but kept for backwards compatibility. To try to be more clear (at least "
+#~ "to the technically inclined), its meaning is \"automatically raise the "
+#~ "window following a timeout which is triggered by non-grabbed mouse entry "
+#~ "in sloppy or mouse focus modes\". It is unrelated to clicking behavior (i."
+#~ "e. this is not related to raise-on-click/orthogonal-raise). It is "
+#~ "unrelated to entering a window during drag and drop (because that results "
+#~ "in the application grabbing the mouse)"
+#~ msgstr ""
+#~ "Si és cert, i el mode del focus és «sloppy» o «mouse», aleshores la "
+#~ "finestra enfocada s'alçarà automàticament al cap d'una estona (el temps "
+#~ "s'especifica a la clau auto_raise_delay). Aquesta preferència no està "
+#~ "gaire ben batejada, però es manté per compatibilitat amb versions "
+#~ "anteriors. Per ser més clars (per als més tècnics), significa «alça la "
+#~ "finestra automàticament després d'un temps d'espera, que s'activa per una "
+#~ "entrada no capturada del ratolí quan aquest està en el mode de focus "
+#~ "\"sloppy\" o bé \"mouse\"». No té cap relació amb el comportament del "
+#~ "clic (no té relació amb l'alçament amb un clic/alçament ortogonal). No "
+#~ "està relacionat amb entrar a una finestra durant una opració d'arrossegar "
+#~ "i deixar anar (perquè resulta en que l'aplicació captura el ratolí)"
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Algunes aplicacions trenquen les especificacions de maneres que resulten "
+#~ "en disfuncionalitats dels gestors de finestres. Per exemple, idealment el "
+#~ "Marco ficarà tots els diàlegs en una posició consistent respecte de "
+#~ "les seves finestres pare. Això requereix ignorar les posicions que "
+#~ "especifiquen les aplicacions per als diàlegs. Tanmateix, algunes versions "
+#~ "del Java/Swing marquen els seus menús emergents com a diàlegs, i Marco "
+#~ "ha de inhabilitar el posicionament de diàlegs per a què els menús "
+#~ "funcionin en les aplicacions Java amb aquests errors. Hi ha més exemples "
+#~ "com aquest. Aquesta opció estableix Marco en el mode «completament "
+#~ "correcte», que potser donarà una millor interfície d'usuari si no "
+#~ "necessiteu executar cap aplicació amb errors. Malauradament, aquesta "
+#~ "funcionalitat s'ha d'habilitar per defecte. Algunes de les funcionalitats "
+#~ "estan dirigides a limitacions en les mateixes especificacions, pel que a "
+#~ "vegades un error en el mode sense correccions no es pot solucionar sense "
+#~ "canviar l'especificació."
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "L'anàlisi de l'expressió coordinada ha sobreeixit la seva memòria "
+#~ "intermèdia. Aquest és un error del Marco, però esteu segur que "
+#~ "necessiteu una expressió tan rotunda com aquesta?"
diff --git a/po/[email protected] b/po/[email protected]
new file mode 100644
index 00000000..861f53cb
--- /dev/null
+++ b/po/[email protected]
@@ -0,0 +1,3946 @@
+# Catalan translation of Marco.
+# Copyright © 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+# Softcatala <[email protected]>, 2002.
+# Jesús Moreno <[email protected]>, 2002.
+# Jordi Mallach <[email protected]>, 2003, 2004, 2005, 2006, 2007, 2008.
+# David Planella <[email protected]>, 2008, 2009, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco 2.24\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-21 22:59+0200\n"
+"PO-Revision-Date: 2010-04-02 18:43+0200\n"
+"Last-Translator: David Planella <[email protected]>\n"
+"Language-Team: Softcatalà <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Escriptori"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Gestor de finestres"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Esdeveniment de to del sistema"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Es desconeix la informació demanada sobre la finestra: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> no està responent."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Podeu esperar un moment per veure si continua o forçar l'eixida completa de "
+"l'aplicació."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Espera"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Força'n l'eixida"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "S'ha produït un error en obtindre el nom de l'ordinador central: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Manca l'extensió %s necessària per a la composició"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr ""
+"S'ha produït un error en obrir la pantalla del sistema de finestres X «%s»\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"S'ha perdut la connexió amb la pantalla «%s»;\n"
+"és molt probable que el servidor X s'haja aturat o que hàgeu finalitzat/\n"
+"destruït el gestor de finestres.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "S'ha produït un error fatal d'E/S %d (%s) a la pantalla «%s».\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Ja hi ha algun altre programa utilitzant la clau %s amb els modificadors %x "
+"com a vinculació\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"S'ha produït un error en executar <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "No s'ha definit cap orde %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "No s'ha definit cap orde de terminal.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., i d'altres\n"
+"Això és programari lliure; vegeu els fitxers de codi font per conèixer-ne\n"
+"les condicions de còpia.\n"
+"No hi ha CAP garantia; ni tan sols la garantia implícita de COMERCIABILITAT\n"
+"o ADEQUACIÓ A PER UN PROPÒSIT PARTICULAR.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Inhabilita la connexió al gestor de sessions"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Reemplaça el gestor de finestres en execució pel Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Especifica l'ID de gestió de sessió"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Visualització de l'X a utilitzar"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inicialitza la sessió des del fitxer alçat"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Mostra la versió"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Fes que les crides a l'X siguen síncrones"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Habilita la composició"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Inhabilita la composició"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"No crees finestres a pantalla completa que estiguen maximitzades i no "
+"tinguen decoracions"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "No s'ha pogut analitzar el directori de temes: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"No s'ha trobat cap tema. Assegureu-vos que %s existeix i conté els temes "
+"habituals.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "No s'ha pogut reiniciar: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "La clau MateConf «%s» està establerta a un valor no vàlid\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"%d, emmagatzemat a la clau MateConf %s, està fora de l'interval de %d a %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "La clau «%s» del Gconf està establerta a un tipus no vàlid\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Les solucions temporals per a aplicacions amb errors estan inhabilitades. "
+"Pot ser que certes aplicacions no funcionen correctament.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"No s'ha pogut analitzar la descripció de tipus de lletra «%s» de la clau "
+"MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"«%s», trobat a la base de dades de la configuració, no és un valor vàlid per "
+"al modificador del botó del ratolí\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+"S'ha produït un error en establir el nombre d'espais de treball a %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Espai de treball %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"«%s» trobat a la base de dades de la configuració no és un valor vàlid per a "
+"la vinculació de tecla «%s»\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+"S'ha produït un error en establir el nom de l'espai de treball %d a «%s»: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr ""
+"S'ha produït un error en establir l'estat del gestor de composició: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "La pantalla %d en la visualització «%s» no és vàlida\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"La pantalla %d en la visualització «%s» ja té un gestor de finestres; proveu "
+"l'opció --replace per reemplaçar el gestor de finestres actual.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"No s'ha pogut adquirir la selecció del gestor de finestres en la pantalla %d "
+"visualització «%s»\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "La pantalla %d en la visualització «%s» ja té un gestor de finestres\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "No s'ha pogut alliberar la pantalla %d en la visualització «%s»\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"El format és «<Control>a» o «<Shift><Alt>F1».\n"
+"\n"
+"L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+"abreviacions com «<Ctl>» i «<Ctrl>». Si establiu l'opció a la cadena especial "
+"«disabled» (inhabilitat), no hi haurà cap vinculació per a esta acció."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"El format és «<Control>a» o «<Shift><Alt>F1».\n"
+"\n"
+"L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+"abreviacions com «<Ctl>» i «<Ctrl>». Si establiu l'opció a la cadena especial "
+"«disabled», no hi haurà cap vinculació per a esta acció.\n"
+"\n"
+"Esta vinculació es pot invertir en prémer la tecla «Shift»; de manera que no "
+"es podrà utilitzar la tecla «Shift»."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "No s'ha pogut crear el directori «%s»: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "No s'ha pogut obrir el fitxer de sessió «%s» per a l'escriptura: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "S'ha produït un error en escriure el fitxer de sessió «%s»: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "S'ha produït un error en tancar el fitxer de sessió «%s»: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "No s'ha pogut llegir el fitxer de sessió «%s» alçat: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "No s'ha pogut analitzar el fitxer de sessió alçat: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"S'ha vist l'atribut <marco_session> però encara hi ha l'identificador de "
+"sessió"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Atribut %s desconegut a l'element <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "etiqueta <window> imbricada"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Element %s desconegut"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Estes finestres no admeten la funció «alça la configuració actual» i s'hauran "
+"de reiniciar manualment la pròxima vegada que entreu."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "No s'ha pogut obrir el registre de depuració: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "No s'ha pogut executar fdopen() sobre el fitxer de registre %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "S'ha obert el fitxer de registre %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco es va compilar sense compatibilitat per al mode detallat\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Gestor de finestres: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Error en el gestor de finestres: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Avís del gestor de finestres: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Error del gestor de finestres: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"La finestra %s estableix SM_CLIENT_ID en ella mateixa, en comptes del "
+"WM_CLIENT_LEADER, tal com s'especifica a ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"La finestra %s estableix un consell MWM que indica que no és "
+"redimensionable, però estableix una mida mínima %d x %d i una mida màxima %d "
+"x %d; açò no té massa sentit.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "L'aplicació ha definit un _NET_WM_PID %lu fals\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (a %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (com a usuari primari)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (com a %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (com a un altre usuari)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+"WM_TRANSIENT_FOR no vàlid per a la finestra 0x%lx especificat per a %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"La finestra 0x%lx té la propietat %s\n"
+"que s'esperava tinguera el tipus %s format %d\n"
+"i actualment té el tipus %s format %d n elements %d.\n"
+"És molt possible que siga un error en l'aplicació, no pas del gestor de "
+"finestres.\n"
+"La finestra té el títol=«%s» classe=«%s» nom=«%s»\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "La propietat %s en la finestra 0x%lx contenia un UTF-8 invàlid\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"La propietat %s en la finestra 0x%lx contenia UTF-8 invàlid per a l'element %"
+"d en la llista\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Canvia a l'espai de treball 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Canvia a l'espai de treball 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Canvia a l'espai de treball 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Canvia a l'espai de treball 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Canvia a l'espai de treball 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Canvia a l'espai de treball 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Canvia a l'espai de treball 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Canvia a l'espai de treball 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Canvia a l'espai de treball 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Canvia a l'espai de treball 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Canvia a l'espai de treball 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Canvia a l'espai de treball 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Canvia a l'espai de treball de l'esquerra de l'actual"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Canvia a l'espai de treball a la dreta de l'actual"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Canvia a l'espai de treball damunt de l'actual"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Canvia a l'espai de treball a sota de l'actual"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Mou-te entre finestres d'una aplicació amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Mou-te cap arrere entre finestres d'una aplicació amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Mou-te entre finestres amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Mou-te cap arrere entre finestres amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Mou-te entre quadres i l'escriptori amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Mou-te cap arrere entre quadres i l'escriptori amb un diàleg emergent"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Mou-te entre les finestres d'una aplicació immediatament"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Mou-te cap arrere entre les finestres d'una aplicació immediatament"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Mou-te entre finestres immediatament"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Mou-te cap arrere entre finestres immediatament"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Mou entre quadres i l'escriptori immediatament"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Mou cap arrere entre quadres i l'escriptori immediatament"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Oculta totes les finestres normals i dóna el focus a l'escriptori"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Mostra el menú principal del quadre"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Mostra el diàleg d'execució d'aplicacions del quadre"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Fes una captura de pantalla"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Fes una captura de pantalla d'una finestra"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Executa un terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Activa el menú de finestra"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Si s'utilitza el mode a pantalla completa"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Canvia l'estat de maximització"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+"Commuta la funció que fa que una finestra sempre serà visible per sobre de "
+"les altres"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximitza la finestra"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restaura la finestra"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Canvia l'estat d'ombrejat"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimitza la finestra"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Tanca la finestra"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Mou la finestra"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Redimensiona la finestra"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Commuta la funció que fa que la finestra estiga en tots els espais de "
+"treball o només en un"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Mou la finestra a l'espai de treball 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Mou la finestra a l'espai de treball 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Mou la finestra a l'espai de treball 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Mou la finestra a l'espai de treball 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Mou la finestra a l'espai de treball 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Mou la finestra a l'espai de treball 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Mou la finestra a l'espai de treball 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Mou la finestra a l'espai de treball 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Mou la finestra a l'espai de treball 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Mou la finestra a l'espai de treball 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Mou la finestra a l'espai de treball 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Mou la finestra a l'espai de treball 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Mou la finestra un espai de treball a l'esquerra"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Mou la finestra un espai de treball a la dreta"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Mou la finestra un espai de treball amunt"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Mou la finestra un espai de treball avall"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Alça una finestra coberta per una altra, o sinó la baixa"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Alça una finestra per damunt de les altres"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Baixa la finestra sota les altres"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximitza la finestra verticalment"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximitza la finestra horitzontalment"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Mou la finestra a la cantonada nord-oest (part superior esquerra)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Mou la finestra a la cantonada nord-est (part superior dreta)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Mou la finestra a la cantonada sud-oest (part inferior esquerra)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Mou la finestra a la cantonada sud-est (part inferior dreta)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Mou la finestra a la part nord (superior) de la pantalla"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Mou la finestra a la part del sud (inferior) de la pantalla"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Mou la finestra a la part est (dreta) de la pantalla"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Mou la finestra a la part oest (esquerra) de la pantalla"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Mou la finestra al centre de la pantalla"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(No implementat) La navegació funciona en termes d'aplicacions, no finestres"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Una cadena de descripció de tipus de lletra per a les barres de títol de les "
+"finestres. La mida de la descripció només s'utilitzarà si l'opció "
+"titlebar_font_size està establerta a 0. A més a més, esta opció està "
+"inhabilitada si titlebar_uses_desktop_font està establit és cert."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Acció en fer doble clic en la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Acció en fer clic amb el botó del mig en la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Acció en fer clic amb el botó secundari en la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Emplaçament dels botons en la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"La disposició dels botons a la barra del títol. El valor ha de ser una "
+"cadena, com ara «menu:minimize,maximize,spacer,close»; els dos punts separen "
+"la cantonada esquerra de la finestra de la dreta, i els noms dels botons se "
+"separen amb comes. No es permeten botons duplicats. Els botons desconeguts "
+"es descartaran sense cap notificació, de manera que es puguen afegir botons "
+"en futures versions del Marco sense trencar les versions antigues. Es pot "
+"afegir una etiqueta especial d'espaiament («spacer») per inserir una "
+"determinada quantitat d'espai entre dos botons adjacents."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Alça automàticament la finestra amb el focus"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Si es fa clic en una finestra mentre es manté esta tecla modificadora "
+"premuda, es mourà la finestra (botó esquerre), redimensionarà la finestra "
+"(botó del mig) o mostrarà el menú de la finestra (botó dret). Les operacions "
+"de fer clic amb el botó del mig i el secundari es poden intercanviar amb la "
+"clau «resize_with_right_button». El modificador s'expressa com a «&lt;Alt;"
+"&gt;» o com a «&lt;Super&gt;», per exemple."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Ordes a executar en resposta a vinculacions de tecles"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Gestor de composició"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Controla de quina manera les finestres noves reben el focus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Tema actual"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Retard en mil·lisegons per a l'opció d'alçat automàtic"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determina si el Marco és un gestor de composició."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determina si les aplicacions o el sistema poden generar «sons» audibles; es "
+"pot utilitzar en conjunció amb «visual bell» per permetre «sons» silenciosos."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Inhabilita funcionalitats que són requerides per aplicacions velles o amb "
+"errors"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Habilita la campana visual"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Si és «true» (cert), i el mode del focus és «sloppy» o «mouse», aleshores la "
+"finestra amb el focus s'alçarà automàticament després d'un retard, que "
+"s'especifica a la clau auto_raise_delay. Això no està relacionat en l'acció "
+"de fer clic a una finestra per alçar-la, ni tampoc en entrar en una finestra "
+"en arrossegar i deixar anar."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Si és «true» (cert), ignora l'opció titlebar_font i utilitza el tipus de "
+"lletra de les aplicacions estàndard per als títols de les finestres."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Si és «true» (cert), el Marco donarà a l'usuari menys informació "
+"utilitzant marcs amb fils, evitant les animacions o altres mitjans. Això "
+"implica una reducció significativa en usabilitat per a molts usuaris, però "
+"pot permetre a algunes aplicacions velles i servidors de terminal. No "
+"obstant, la funcionalitat dels marcs amb fils es desactiva quan "
+"l'accessibilitat està habilitada."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Si és «true» (cert), el Marco treballarà en termes d'aplicacions, en "
+"comptes de finestres. El concepte és una mica abstracte, però en general, "
+"una configuració basada en aplicacions és més paregut als Mac i menys com el "
+"Windows. Quan teniu el focus en una finestra en el mode basat en "
+"aplicacions, totes les finestres en l'aplicació s'alçaran. A més a més, en "
+"el mode basat en aplicacions, els clics de focus no es passen a les "
+"finestres d'altres aplicacions. Tanmateix, el mode basat en aplicacions "
+"encara no està massa implementat."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Si és «true» (cert), sacrifica usabilitat per usar menys recursos"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modificador a usar per a les accions modificades de clic en finestra"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nom de l'espai de treball"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Número d'espais de treball"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"El nombre d'espais de treball. Ha de ser més gran que zero, i té un màxim "
+"fix per prevenir la destrucció accidental del vostre escriptori si demaneu "
+"massa espais de treball."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Executa una orde definida"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Establiu-lo a «true» (cert) per canviar la mida amb el botó secundari i "
+"mostrar un menú amb el botó del mig mentre es prema la tecla especificada al "
+"paràmetre «mouse_button_modifier». Establiu-lo a «false» (fals) perquè "
+"funcione a la inversa."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Si establiu esta opció a «false» (fals) es pot produir un comportament "
+"incorrecte, de manera que s'aconsella als usuaris que no canvien el seu "
+"valor predeterminat: «true» (cert). Moltes accions (p.ex. fer clic a l'àrea "
+"del client, moure o canviar la mida de la finestra) normalment alcen la "
+"finestra com a efecte secundari. Si establiu esta opció a fals -cosa molt "
+"poc recomanable- se separarà l'alçament de la finestra d'altres accions de "
+"l'usuari i s'ignoraran les sol·licituds d'alçament que generin les "
+"aplicacions. Vegeu l'informe d'error http://bugzilla.gnome.org/show_bug.cgi?"
+"id=445447#c6. Fins i tot quan esta opció siga falsa, encara es poden alçar "
+"les finestres amb alt-clic-esquerra en qualsevol lloc de la finestra, amb un "
+"clic a les decoracions de la finestra, o amb un missatge especial dels "
+"paginadors, com ara sol·licituds d'activació des de les miniaplicacions de "
+"la llista de finestres. Esta opció està inhabilitada en el mode d'alçar les "
+"finestres amb clic. Fixeu-vos que les diverses maneres d'alçar les finestres "
+"quan «raise_on_click» és fals no inclouen les peticions programades de les "
+"aplicacions per alçar finestres; estes peticions s'ignoraran siga quin siga "
+"el motiu. Si desenvolupeu aplicacions i un usuari es queixa que l'aplicació "
+"no funciona quan este paràmetre està inhabilitat, digueu-li que es culpa "
+"_seua_ per haver trencat el gestor de finestres, i que ha de tornar a "
+"canviar esta opció a «true» o conviure amb l'error."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Algunes aplicacions no fan cas de les especificacions que poden fer que el "
+"gestor de finestres no respongui correctament. Esta opció fa que el Marco "
+"es pose en un mode rigorosament correcte, que proporciona una interfície "
+"d'usuari més consistent, sempre que no s'hagen d'executar aplicacions que no "
+"actuen correctament."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "La campana del sistema és audible"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Li diu al Marco com implementar la indicació visual que s'ha tocat la "
+"campana del sistema, o l'indicador de campana d'una altra aplicació. "
+"Actualment, hi ha dos valors vàlids, «fullscreen», que fa un flaix blanc i "
+"negre en tota la pantalla, i «frame_flash», que causa que la barra del títol "
+"de l'aplicació que ha enviat el senyal de campana faça un flaix. Si no se "
+"sap quina aplicació ha enviat el senyal de campana, com sol passar per als "
+"«sons del sistema» per defecte, la barra del títol de la finestra que tinga "
+"el focus en aquell moment rep un flaix."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Les claus /apps/marco/global_keybindings/run_command_N estableixen "
+"vinculacions de tecles que corresponen a estes ordes. Si es prem la "
+"vinculació per a run_command_N, s'executarà command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"La clau /apps/marco/global_keybindings/run_command_screenshot estableix "
+"una vinculació de tecles que fa que s'invoqui l'orde especificada en esta "
+"configuració."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"La clau /apps/marco/global_keybindings/run_command_window_screenshot "
+"estableix una vinculació de tecles que fa que s'invoqui l'orde especificada "
+"en esta configuració."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"La vinculació de tecles que executa l'orde amb la numeració corresponent a /"
+"apps/marco/keybinding_commands. El format és paregut a «&lt;Control&gt;a» "
+"o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+"minúscules i majúscules, i també abreviacions com ara «&lt;Ctl&gt;» o «&lt;"
+"Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi haurà "
+"cap vinculació per a esta acció."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "El nom d'un espai de treball."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "L'orde de captura de pantalla"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"El tema determina l'aspecte dels contorns de les finestres, la barra del "
+"títol, etc."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"El retard de temps abans d'alçar una finestra si auto_raise és establit a "
+"«true». El retard es dóna en mil·lèssimes de segon."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"El mode de focus de la finestra indica com s'activen les finestres. Té tres "
+"valors possibles; «click» vol dir que cal fer clic a les finestres per donar-"
+"los el focus, «sloppy» vol dir que les finestres reben el focus quan el "
+"punter hi entra a dins, i «mouse» vol dir que les finestres s'enfoquen quan "
+"el punter hi entra a dins, i es desenfoquen quan el punter abandona la "
+"finestra."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "L'orde de captura de finestra"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opció determina l'efecte de l'acció de doble clic a la barra de títol. "
+"Els valors permesos són «toggle_shade» (commuta l'estat de persiana), que "
+"commutarà l'estat d'ombrejat de la finestra, «toggle_maximize» (commuta la "
+"maximització), que en commutarà l'estat de maximització, "
+"«toggle_maximize_horizontally» (commuta la maximització horitzontal) i "
+"«toggle_maximize_vertically» (commuta la maximització vertical), que només "
+"commutaran l'estat de maximització en la direcció indicada, "
+"«minimize» (minimitza), que minimitzarà la finestra, «shade» (persiana), que "
+"enrotllarà la finestra cap amunt, «menu», que mostrarà el menú de la "
+"finestra, «lower» (abaixa), que situarà la finestra darrere de totes les "
+"altres, i «none» (res), que no farà res."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opció determina l'efecte de l'acció de fer clic amb el botó del mig a "
+"la barra de títol. Els valors permesos són «toggle_shade» (commuta l'estat de "
+"persiana), que commutarà l'estat d'ombrejat de la finestra, "
+"«toggle_maximize» (commuta la maximització), que en commutarà l'estat de "
+"maximització, «toggle_maximize_horizontally» (commuta la maximització "
+"horitzontal) i «toggle_maximize_vertically» (commuta la maximització "
+"vertical), que només commutaran l'estat de maximització en la direcció "
+"indicada, «minimize» (minimitza), que minimitzarà la finestra, "
+"«shade» (persiana), que enrotllarà la finestra cap amunt, «menu», que mostrarà "
+"el menú de la finestra, «lower» (abaixa), que situarà la finestra darrere de "
+"totes les altres, i «none» (res), que no farà res."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opció determina l'efecte de l'acció de fer clic amb el botó secundari a "
+"la barra de títol. Els valors permesos són «toggle_shade» (commuta l'estat de "
+"persiana), que commutarà l'estat d'ombrejat de la finestra, "
+"«toggle_maximize» (commuta la maximització), que en commutarà l'estat de "
+"maximització, «toggle_maximize_horizontally» (commuta la maximització "
+"horitzontal) i «toggle_maximize_vertically» (commuta la maximització "
+"vertical), que només commutaran l'estat de maximització en la direcció "
+"indicada, «minimize» (minimitza), que minimitzarà la finestra, "
+"«shade» (persiana), que enrotllarà la finestra cap amunt, «menu», que mostrarà "
+"el menú de la finestra, «lower» (abaixa), que situarà la finestra darrere de "
+"totes les altres, i «none» (res), que no farà res."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Esta opció proporciona control adicional sobre com les finestres noves "
+"obtenen el focus. Té dos valors possibles: «smart», que aplica el focus "
+"normal d'usuari, i «strict», que fa que no es doni el focus a les finestres "
+"que s'inicien des d'un terminal."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Activa una indicació visual quan una aplicació o el sistema envia un senyal "
+"de «campana» o «sons»; és útil per als durs d'orella i per a l'ús en ambients "
+"amb soroll."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr ""
+"Utilitza el tipus de lletra estàndard del sistema en els títols de les "
+"finestres"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Tipus de «sons» visual"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Si l'alçat hauria de ser un efecte secundari d'altres interaccions de "
+"l'usuari"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Si es canviarà la mida amb el botó secundari"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Mode de focus de les finestres"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Tipus de lletra del títol de les finestres"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Forma d'ús: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Tanca la finestra"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menú de la finestra"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimitza la finestra"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximitza la finestra"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restaura la finestra"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Enrotlla la finestra"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Desenrotlla la finestra"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Matín la finestra per damunt"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Treu la finestra de damunt"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Sempre a l'espai de treball visible"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Posa la finestra només a un espai de treball"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimitza"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximitza"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Desma_ximitza"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Enrotlla"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Desenro_tlla"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Mou"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Redimensiona"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Mou la _barra de títol en pantalla"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Sempre per _damunt"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Sempre a l'espai de treball _visible"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Només en _este espai de treball"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Mou a l'espai de treball de l'es_querra"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Mou a l'espai de treball de la _dreta"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Mou a l'espai de treball de _sobre"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Mou a l'espai de treball de s_ota"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Tanca"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Espai de treball %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Espai de treball 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Espai de treball %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Mou a un altre es_pai de treball"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Maj"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hiper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "superior"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "inferior"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "esquerra"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "dreta"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "la geometria del marc no especifica la dimensió «%s»"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "la geometria del marc no especifica la dimensió «%s» per al contorn «%s»"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "El ràtio d'aspecte dels botons %g no és raonable"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "La geometria del marc no especifica la mida dels botons"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Els degradats han de tindre almenys dos colors"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"L'especificació de color GTK ha de tindre l'estat entre claudàtors, p.e. gtk:"
+"fg[NORMAL] on NORMAL és l'estat; no s'ha pogut analitzar \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"L'especificació de color GTK ha de tindre un claudàtor de tancament després "
+"de l'estat, p.e. gtk:fg[NORMAL] on NORMAL és l'estat; no s'ha pogut "
+"analitzar «%s»"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "No s'entén l'estat «%s» en l'especificació del color"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "No s'entén l'element de color «%s» en l'especificació del color"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"El format de barreja és «blend/bg_color/fg_color/alpha», «%s» no s'ajusta al "
+"format"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "No s'ha pogut analitzar el valor d'opacitat «%s» en el color barrejat"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "El valor alfa «%s» en el color barrejat no està entre 0,0 i 1,0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"El format d'ombrejat és «shade/base_color/factor», «%s» no s'ajusta al format"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "No s'ha pogut analitzar el factor d'ombrejat «%s» en el color ombrejat"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "El factor d'ombrejat «%s» en el color ombrejat és negatiu"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "No s'ha pogut analitzar el color «%s»"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "L'expressió coordinada conté el caràcter «%s», el qual no és permés"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"L'expressió coordinada conté el número «%s» de punt flotant el qual no es pot "
+"analitzar"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "L'expressió coordinada conté l'enter «%s» el qual no es pot analitzar"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"L'expressió coordinada conté un operador desconegut a l'inici d'este text: «%"
+"s»"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "L'expressió coordinada estava buida o no s'ha entés"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "L'expressió coordinada dóna una divisió per zero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"L'expressió coordinada intenta utilitzar l'operador de mode en un número de "
+"punt flotant"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"L'expressió coordinada té un operador «%s» on hi hauria d'anar un operand"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "L'expressió coordinada té un operand on hi hauria d'anar un operador"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"L'expressió coordinada ha finalitzat amb un operador en lloc d'un operand"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"L'expressió coordinada té un operador «%c» seguit de l'operador «%c» sense cap "
+"operand enmig"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "L'expressió coordinada té una variable o constant desconeguda «%s»"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+"L'analitzador d'expressions de coordinades ha desbordat la seua memòria "
+"intermèdia."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "L'expressió coordinada té un parèntesi de tancament i cap d'obertura"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "L'expressió coordinada té un parèntesi d'obertura i cap de tancament"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "L'expressió coordinada no pareix tindre cap operador o operand"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "El tema conté una expressió que ha provocat un error: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"qualsevol\"/> s'ha "
+"d'especificar per a este estil de marc"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"No s'ha trobat <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style="
+"\"qualsevol\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "No s'ha pogut carregar el tema \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "No s'ha definit <%s> per al tema «%s»"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"No s'ha definit cap estil de marc per al tipus de finestra \"%s\" en el tema "
+"\"%s\", afegiu un element <window type=\"%s\" style_set=\"qualsevol\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Les constants de la definició d'usuari han de començar per una majúscula; «%"
+"s» no ho és"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "La constant «%s» ja s'ha definit"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "No hi ha cap atribut «%s» a l'element <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Línia %d caràcter %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "S'ha repetit l'atribut «%s» dues vegades en el mateix element <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "L'atribut «%s» no és vàlid per a l'element <%s> en este context"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "No s'ha pogut analitzar «%s» com a enter"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "No s'entenen els caràcters finals «%s» de la cadena «%s»"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "L'enter %ld ha de ser positiu"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "L'enter %ld és massa gran, el màxim actual és %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "No s'ha pogut analitzar «%s» com a un número de coma flotant"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Els valors boleans han de ser «true» (cert) o «false» (fals), no «%s»"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "L'angle ha d'estar entre 0.0 i 360.0, era %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"L'opacitat ha d'estar entre 0.0 (invisible) i 1.0 (totalment opac), era a %"
+"g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Escala de títol no vàlida «%s» (ha de ser una d'estes: xx-small,x-small,small,"
+"medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> amb nom «%s» s'ha utilitzat dues vegades"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "El pare de <%s>, «%s», no s'ha definit"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "La geometria de <%s>, «%s», no s'ha definit"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> ha d'especificar bé una geometria o un pare que tinga una geometria"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "El valor alfa requereix que també s'especifique un fons de pantalla"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Tipus desconegut «%s» en l'element <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set «%s» desconegut en l'element <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "El tipus de finestra «%s» ja té assignat un joc d'estil"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "No es permet l'element <%s> sota <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"No es pot especificar «button_width»/«button_height» i l'«aspect_ratio» a la "
+"vegada per als botons"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "La distància «%s» és desconeguda"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "El ratio d'aspecte «%s» és desconeguda"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "El contorn «%s» és desconegut"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "No hi ha cap atribut de «start_angle» o «from» en l'element <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "No hi ha cap atribut de «extent_angle» o «to» en l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "No s'entén el valor «%s» per al tipus de degradat"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "No s'entén el tipus de farciment «%s» per a l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "No s'entén l'estat «%s» per a l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "No s'entén l'ombra «%s» per a l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "No s'entén la fletxa «%s» per a l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "No s'ha definit cap <draw_ops> amb el nom «%s»"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "La inclusió de draw_ops «%s» ací crearà una referència circular"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Posició «%s» desconeguda per a la peça del marc"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "L'estil del marc ja té una peça a posició %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "No s'ha definit cap <draw_ops> amb el nom «%s»"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Funció «%s» desconeguda per al botó"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "La funció de botó «%s» no existeix en esta versió (%d, es necessita %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Estat «%s» desconegut per al botó"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "L'estil del marc ja té un botó per a l'estat %s de la funció %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "«%s» no és un valor vàlid per a l'atribut del focus"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "«%s» no és un valor vàlid per a l'atribut de l'estat"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "No s'ha definit un estil amb el nom «%s»"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "«%s» no és un valor vàlid per a l'atribut de redimensiona"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"No hauria de tindre l'atribut «resize» en l'element <%s> per als estats "
+"maximitzat/ombrejat"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"No hauria de tindre l'atribut «resize» en l'element <%s> per als estats "
+"maximitzats"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "L'estil ja s'ha especificat per a l'estat %s redimensiona %s focus %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "L'estil ja s'ha especificat per a l'estat %s focus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"No es pot tindre dos draw_ops per a un element <piece> (el tema ha "
+"especificat un atribut draw_ops i també un element <draw_ops>, o ha "
+"especificat ambdós elements)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"No es pot tindre dos draw_ops per a un element <button> (el tema ha "
+"especificat un atribut draw_ops i també un element <draw_ops>, o ha "
+"especificat ambdós elements)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"No es pot tindre dos draw_ops per a un element <menu_icon> (el tema ha "
+"especificat un atribut draw_ops i també un element <draw_ops>, o ha "
+"especificat ambdós elements)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "L'element més extern en el tema ha de ser <marco_theme>, no <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"L'element <%s> no és permés dins d'un element name/author/date/description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "L'element <%s> no és permés dins d'un element <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"L'element <%s> no és permés dins d'un element distance/border/aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "L'element <%s> no és permés dins d'un element d'operació igual"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "L'element <%s> no és permés dins d'un element <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "No s'ha proveït cap draw_ops per a la peça del marc"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "No s'ha proveït cap draw_ops per al botó"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "No es permet cap text dins de l'element <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "S'ha especificat <%s> dues vegades per a este tema"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "No s'ha trobat un fitxer vàlid per al tema %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "El fitxer de tema %s no conté un element arrel <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Finestres"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Finestres/separador"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Finestres/_Diàleg"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Finestres/Diàleg _modal"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Finestres/_Utilitat"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Finestres/_Pantalla flaix"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Finestres/Ancoratge _superior"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Finestres/Ancoratge _inferior"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Finestres/Ancoratge es_querre"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Finestres/Ancoratge d_ret"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Finestres/_Tots els ancoratges"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Finestres/_Escriptori"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Este és un exemple de missatge en un diàleg d'exemple"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Element fals de menú %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Finestra amb només contorn"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Barra"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Finestra d'aplicació normal"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Caixa de diàleg"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Caixa de diàleg modal"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta d'utilitat"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menú arrossegable"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Contorn"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Prova de disposició de botons %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g mil·lisegons per dibuixar un marc de finestra"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Forma d'ús: marco-theme-viewer [NOMDELTEMA]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "S'ha produït un error en carregar el tema: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "S'ha carregat el tema «%s» en %g segons\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Tipus de lletra per a títol normal"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Tipus de lletra per a títol petit"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Tipus de lletra per a títol gran"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Disposicions de botons"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Test de referència"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "El títol de la finestra va ací"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"S'han dibuixat %d marcs en %g segons del client (%g mil·lisegons per marc) i "
+"%g segons de rellotge inclosos els recursos del servidor d'X (%g "
+"mil·lisegons per marc)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "La prova d'expressió de posició ha tornat TRUE però ha establit error"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"La prova d'expressió de posició ha tornat FALSE però no ha establit error"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "S'esperava un error però no s'ha donat cap"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "S'esperava l'error %d però s'ha donat %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "No s'esperava cap error però s'ha tornat un: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "El valor x ha sigut %d, i s'esperava %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "El valor y ha sigut %d, i s'esperava %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d expressions de coordenades analitzades en %g segons (%g segons de mitja)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Obre una altra d'aquestes finestres"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Aquest és un botó de prova amb una icona «obre»"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Aquest és un botó de prova amb una icona de «surt»"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "No s'ha pogut analitzar el missatge «%s» des del procés de diàleg\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr ""
+#~ "S'ha produït un error en llegir del procés de la pantalla de diàleg: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "S'ha produït un error en executar el diàleg marco per preguntar quant "
+#~ "a la \n"
+#~ "finalització d'una aplicació: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "S'ha produït un error en executar el marco-dialog per a avisar sobre "
+#~ "aplicacions que no admeten la gestió de sessions: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Títol"
+
+#~ msgid "Class"
+#~ msgstr "Classe"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "S'ha produït un error en executar «%s»:\n"
+#~ "%s."
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "S'ha especificat <author> dues vegades per a aquest tema"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "S'ha especificat <copyright> dues vegades per a aquest tema"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "S'ha especificat <date> dues vegades per a aquest tema"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "S'ha especificat <description> dues vegades per a aquest tema"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "S'ha produït un error en executar el marco-dialog per a mostrar un "
+#~ "error quant a una ordre: %s\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Atribut %s desconegut a l'element <marco_session>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Atribut %s desconegut a l'element <maximized>"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Atribut %s desconegut a l'element <geometry>"
+
+#, fuzzy
+#~ msgid "The keybinding used to toggle fullscreen mode."
+#~ msgstr "Si s'utilitza el mode a pantalla completa"
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Canvia l'estat sempre per damunt"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Desmaximitza la finestra"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 1."
+#~ msgstr "Mou la finestra a l'espai de treball 1"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 2."
+#~ msgstr "Mou la finestra a l'espai de treball 2"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 3."
+#~ msgstr "Mou la finestra a l'espai de treball 3"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 4."
+#~ msgstr "Mou la finestra a l'espai de treball 4"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 5."
+#~ msgstr "Mou la finestra a l'espai de treball 5"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 6."
+#~ msgstr "Mou la finestra a l'espai de treball 6"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 7."
+#~ msgstr "Mou la finestra a l'espai de treball 7"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 8."
+#~ msgstr "Mou la finestra a l'espai de treball 8"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 9."
+#~ msgstr "Mou la finestra a l'espai de treball 9"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 10."
+#~ msgstr "Mou la finestra a l'espai de treball 10"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 11."
+#~ msgstr "Mou la finestra a l'espai de treball 11"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 12."
+#~ msgstr "Mou la finestra a l'espai de treball 12"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace to the left."
+#~ msgstr "Mou la finestra un espai de treball a l'esquerra"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace to the right."
+#~ msgstr "Mou la finestra un espai de treball a la dreta"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace up."
+#~ msgstr "Mou la finestra un espai de treball amunt"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace down."
+#~ msgstr "Mou la finestra un espai de treball avall"
+
+#, fuzzy
+#~ msgid "This keybinding raises the window above other windows."
+#~ msgstr "Alça una finestra per damunt de les altres"
+
+#, fuzzy
+#~ msgid "This keybinding lowers a window below other windows."
+#~ msgstr "Baixa la finestra sota les altres"
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the screen."
+#~ msgstr "Mou la finestra a la part nord de la pantalla"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Hi ha moltes accions (p.ex. fer clic a l'àrea del client, moure o canviar "
+#~ "la mida de la finestra) que normalment alcen la finestra com a efecte "
+#~ "secundari. Si establiu aquesta opció com a falsa (cosa gens recomanable), "
+#~ "l'alçament es desvincularà de les altres accions de l'usuari i "
+#~ "s'ignoraran les sol·licituds d'alçament generades per les aplicacions. "
+#~ "Vegeu aquest informe d'error: http://bugzilla.gnome.org/show_bug.cgi?"
+#~ "id=445447#c6."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball a sobre de "
+#~ "l'espai de treball actual. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball sota l'espai de "
+#~ "treball actual. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1». L'analitzador és prou flexible i permet minúscules i majúscules, i "
+#~ "també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció "
+#~ "a la cadena especial «disabled», no hi haurà cap vinculació per a aquesta "
+#~ "acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball a l'esquerra de "
+#~ "l'espai de treball actual. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball a la dreta de "
+#~ "l'espai de treball actual. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 1. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 10. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 11. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 12. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 2. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 3. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 4. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 5. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 6. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 7. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 8. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que canvia a l'espai de treball 9. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a activar el menú de finestres. El format és "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to close a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a tancar una finestra. El format és «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que activa el «mode de moviment» i permet moure "
+#~ "una finestra utilitzant el teclat. El format és «&lt;Control&gt;a» o «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que activa el «mode de redimensió» i permet "
+#~ "redimensionar una finestra utilitzant el teclat. El format és «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a amagar totes les finestres normals i "
+#~ "establir el focus al fons de l'escriptori. El format és «&lt;Control&gt;a» "
+#~ "o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a maximitzar una finestra. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a minimitzar una finestra. El format és «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra un espai de treball cap "
+#~ "avall. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra un espai de treball a "
+#~ "l'esquerra. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra un espai de treball a la "
+#~ "dreta. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra un espai de treball "
+#~ "amunt. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 1. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 10. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 11. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 12. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 2. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 3. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 4. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 5. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 6. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 7. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 8. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a moure una finestra a l'espai de treball 9. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre els quadres i "
+#~ "l'escriptori, utilitzant una finestra emergent. El format és semblant a "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre els quadres i "
+#~ "l'escriptori, sense utilitzar una finestra emergent. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre finestres d'una "
+#~ "aplicació, sense utilitzar una finestra emergent. Mantenint premuda la "
+#~ "techa de «majúscules» juntament amb aquesta convinació de tecles, fa que "
+#~ "es vagi enrere. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». L'analitzador és força flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre finestres d'una "
+#~ "mateixa aplicació, utilitzant una finestra emergent. Prement la tecla de "
+#~ "majúscules aquesta vinculació fa que la direcció sigui cap enrere. El "
+#~ "format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled» (inhabilitat), no hi haurà cap vinculació per a "
+#~ "aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre finestres, "
+#~ "sense utilitzar una finestra emergent. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus cap enrere entre finestres, "
+#~ "utilitzant una finestra emergent. El format és semblant a «&lt;Control&gt;"
+#~ "a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre els quadres i "
+#~ "l'escriptori, utilitzant una finestra emergent. El format és semblant a "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre els quadres i "
+#~ "l'escriptori, sense utilitzar una finestra emergent. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre finestres d'una aplicació, "
+#~ "sense utilitzar una finestra emergent. Prement la tecla de majúscules "
+#~ "aquesta vinculació fa que la direcció sigui cap enrere. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre finestres d'una aplicació, "
+#~ "utilitzant una finestra emergent. (Tradicionalment &lt;Alt&gt;F6) Prement "
+#~ "la tecla de majúscules aquesta vinculació fa que la direcció sigui al "
+#~ "revés. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre finestres, sense utilitzar "
+#~ "una finestra emergent. El format és semblant a «&lt;Control&gt;a» o «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mou el focus entre finestres, utilitzant una "
+#~ "finestra emergent. El format és semblant a «&lt;Control&gt;a» o «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a seleccionar si una finestra està sempre per "
+#~ "damunt. Una finestra que estiga sempre per damunt serà visible per damunt "
+#~ "de les altres finestres que s'interseccionen. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que habilita o inhabilita el mode a pantalla "
+#~ "sencera. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a maximitzar o desmaximitzar una finestra. El "
+#~ "format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a canviar entre l'estat ombrejat i "
+#~ "desombrejat. El format és «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1». L'analitzador és prou flexible i permet minúscules i majúscules, i "
+#~ "també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció "
+#~ "a la cadena especial «disabled», no hi haurà cap vinculació per a aquesta "
+#~ "acció."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a seleccionar si una finestra està en tots "
+#~ "els espais de treball o només en un. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles per a desmaximitzar una finestra. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mostra el diàleg «Executa un programa» del "
+#~ "quadre. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La vinculació de tecles que executa un terminal. El format és semblant a "
+#~ "«&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que invoca la utilitat de captures de pantalla "
+#~ "del quadre per a prendre una captura d'una finestra. El format és "
+#~ "semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador "
+#~ "és prou flexible i permet minúscules i majúscules, i també abreviacions "
+#~ "com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena "
+#~ "especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que invoca la utilitat de captures de pantalla "
+#~ "del quadre. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La vinculació de tecles que mostra el menú principal del quadre. El "
+#~ "format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles canvia si una finestra és per damunt o per "
+#~ "sota d'altres finestres. Si la finestra està coberta per una altra "
+#~ "finestra, s'alça la finestra per damunt de les altres, quedant totalment "
+#~ "visible, i posa a sota les altres. El format és semblant a «&lt;Control&gt;"
+#~ "a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles fica una finestra sota les altres. El format "
+#~ "és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part nord "
+#~ "(superior) de la pantalla. El format és semblant a «&lt;Control&gt;a» o "
+#~ "«&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding moves a window into the center of the screen. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part l'oest "
+#~ "(esquerra) de la pantalla. El format és semblant a «&lt;Control&gt;a» o "
+#~ "«&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part est (dreta) "
+#~ "de la pantalla. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part nord-est "
+#~ "(superior a la dreta) de la pantalla. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part nord-oest "
+#~ "(superior a l'esquerra) de la pantalla. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part del sud "
+#~ "(inferior) de la pantalla. El format és semblant a «&lt;Control&gt;a» o "
+#~ "«&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part sud-est de la "
+#~ "pantalla. El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». L'analitzador és prou flexible i permet minúscules i "
+#~ "majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si "
+#~ "establiu l'opció a la cadena especial «disabled», no hi haurà cap "
+#~ "vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part sud-oest "
+#~ "(inferior a l'esquerra) de la pantalla. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles mou una finestra cap a la part l'oest "
+#~ "(esquerra) de la pantalla. El format és semblant a «&lt;Control&gt;a» o "
+#~ "«&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles eleva la finestra per damunt de les altres. "
+#~ "El format és semblant a «&lt;Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "L'analitzador és prou flexible i permet minúscules i majúscules, i també "
+#~ "abreviacions com «&lt;Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la "
+#~ "cadena especial «disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles redimensiona una finestra per a que plene "
+#~ "tot l'espai horitzontal disponible. El format és semblant a «&lt;"
+#~ "Control&gt;a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou "
+#~ "flexible i permet minúscules i majúscules, i també abreviacions com «&lt;"
+#~ "Ctl&gt;» i «&lt;Ctrl&gt;». Si establiu l'opció a la cadena especial "
+#~ "«disabled», no hi haurà cap vinculació per a aquesta acció."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aquesta vinculació de tecles redimensiona una finestra per a que plene "
+#~ "tot l'espai vertical disponible. El format és semblant a «&lt;Control&gt;"
+#~ "a» o «&lt;Shift&gt;&lt;Alt&gt;F1». L'analitzador és prou flexible i permet "
+#~ "minúscules i majúscules, i també abreviacions com «&lt;Ctl&gt;» i «&lt;"
+#~ "Ctrl&gt;». Si establiu l'opció a la cadena especial «disabled», no hi "
+#~ "haurà cap vinculació per a aquesta acció."
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Desmaximitza la finestra"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Cap atribut «%s» a l'element <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "El tema ja té una icona alternativa"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "El tema ja té una miniicona alternativa"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «nom» en l'element <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «valor» a l'element <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «top» a l'element <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «bottom» a l'element <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «left» a l'element <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «right» a l'element <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «color» a l'element <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «x1» a l'element <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «y1» a l'element <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «x2» a l'element <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «y2» a l'element <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «y» a l'element <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «amplada» en l'element <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «height» en l'element <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «start_angle» en l'element <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut de «extent_angle» en l'element <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «alpha» a l'element <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «type» a l'element <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «filename» a l'element <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «state» a l'element <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «shadow» a l'element <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "No hi ha cap atribut «arrow» a l'element <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut «valor» a l'element <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut «posició» a l'element <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut de «funció» a l'element <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut de «estat» a l'element <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut de «focus» en l'element <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut de «style» a l'element <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "No hi ha cap atribut «resize» en l'element <%s>"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "%s no era de tipus enter"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d, emmagatzemat a la clau MateConf %s, no és una mida de cursor raonable, "
+#~ "ha d'estar dins del rang 1..128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d, emmagatzemat a la clau MateConf, %s no té un nombre raonable d'espais de "
+#~ "treball. El màxim actual és %d\n"
+
+#~ msgid "On _Top"
+#~ msgstr "Per damun_t"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Si forceu la sortida d'aquesta aplicació, se'n perdran els canvis que "
+#~ "hàgiu desat."
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Funció «%s» desconeguda per a la icona de menú"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Estat «%s» desconegut per a la icona de menú"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "El tema ja té una icona de menú per a l'estat %s de la funció %s"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "No s'ha proveït cap draw_ops per a la icona de menú"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "S'ha produït un error en llegir el tema del fitxer %s: %s\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"qualsevol\"/> s'ha "
+#~ "d'especificar per a aquest tema"
+
+#~ msgid ""
+#~ "If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+#~ "focused window will be automatically raised after a delay (the delay is "
+#~ "specified by the auto_raise_delay key). This preference is poorly named, "
+#~ "but kept for backwards compatibility. To try to be more clear (at least "
+#~ "to the technically inclined), its meaning is \"automatically raise the "
+#~ "window following a timeout which is triggered by non-grabbed mouse entry "
+#~ "in sloppy or mouse focus modes\". It is unrelated to clicking behavior (i."
+#~ "e. this is not related to raise-on-click/orthogonal-raise). It is "
+#~ "unrelated to entering a window during drag and drop (because that results "
+#~ "in the application grabbing the mouse)"
+#~ msgstr ""
+#~ "Si és cert, i el mode del focus és «sloppy» o «mouse», aleshores la "
+#~ "finestra enfocada s'alçarà automàticament al cap d'una estona (el temps "
+#~ "s'especifica a la clau auto_raise_delay). Aquesta preferència no està "
+#~ "gaire ben batejada, però es manté per compatibilitat amb versions "
+#~ "anteriors. Per ser més clars (per als més tècnics), significa «alça la "
+#~ "finestra automàticament després d'un temps d'espera, que s'activa per una "
+#~ "entrada no capturada del ratolí quan aquest està en el mode de focus "
+#~ "\"sloppy\" o bé \"mouse\"». No té cap relació amb el comportament del "
+#~ "clic (no té relació amb l'alçament amb un clic/alçament ortogonal). No "
+#~ "està relacionat amb entrar a una finestra durant una opració d'arrossegar "
+#~ "i deixar anar (perquè resulta en que l'aplicació captura el ratolí)"
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Algunes aplicacions trenquen les especificacions de maneres que resulten "
+#~ "en disfuncionalitats dels gestors de finestres. Per exemple, idealment el "
+#~ "Marco ficarà tots els diàlegs en una posició consistent respecte de "
+#~ "les seves finestres pare. Això requereix ignorar les posicions que "
+#~ "especifiquen les aplicacions per als diàlegs. Tanmateix, algunes versions "
+#~ "del Java/Swing marquen els seus menús emergents com a diàlegs, i Marco "
+#~ "ha de inhabilitar el posicionament de diàlegs per a què els menús "
+#~ "funcionin en les aplicacions Java amb aquests errors. Hi ha més exemples "
+#~ "com aquest. Aquesta opció estableix Marco en el mode «completament "
+#~ "correcte», que potser donarà una millor interfície d'usuari si no "
+#~ "necessiteu executar cap aplicació amb errors. Malauradament, aquesta "
+#~ "funcionalitat s'ha d'habilitar per defecte. Algunes de les funcionalitats "
+#~ "estan dirigides a limitacions en les mateixes especificacions, pel que a "
+#~ "vegades un error en el mode sense correccions no es pot solucionar sense "
+#~ "canviar l'especificació."
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "L'anàlisi de l'expressió coordinada ha sobreeixit la seva memòria "
+#~ "intermèdia. Aquest és un error del Marco, però esteu segur que "
+#~ "necessiteu una expressió tan rotunda com aquesta?"
diff --git a/po/crh.po b/po/crh.po
new file mode 100644
index 00000000..d893ba0d
--- /dev/null
+++ b/po/crh.po
@@ -0,0 +1,2614 @@
+# QIRIMTATARCA marco.
+# Copyright (C) 2009 marco's COPYRIGHT HOLDER
+# This file is distributed under the same license as the marco package.
+#
+# Reşat SABIQ <[email protected]>, 2009, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-16 00:13-0500\n"
+"PO-Revision-Date: 2010-04-01 23:54-0500\n"
+"Last-Translator: Reşat SABIQ <[email protected]>\n"
+"Language-Team: QIRIMTATARCA (Qırım Türkçesi) <tilde-birlik-tercime@lists."
+"sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Masaüstü"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Pencere İdaresi"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Zil vaqiası"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Bilinmegen pencere malümatı istemi: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> cevap bermey."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Devam etmesi içün biraz beklemege saylaybilirsiñiz ya da uyğulamanı bütünley "
+"çıqmağa cebr etebilirsiñiz."
+
+# tr
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Bekle"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "Çıqışnı _Cebir Et"
+
+# tr
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Makine adı alınamadı: %s\n"
+
+# tr
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Kompozisyon için gerekli olan %s eklentisi eksik"
+
+# tr
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X Pencere Sistemi '%s' ekranı açılamadı\n"
+
+# tr
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"'%s' ekranıyla bağlantı kayboldu;\n"
+"büyük olasılıkla ya X sunucusu kapandı veya pencere yöneticisini\n"
+"öldürdünüz ya da yok ettiniz.\n"
+
+# tr
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Ölümcül G/Ç hatası %d (%s); '%s' ekranında.\n"
+
+# tr
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"%s tuşu %x değiştiricileriyle birlikte başka bir uygulama tarafından tuş "
+"bağıolarak kullanılıyor\n"
+
+# tr
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> çalıştırılırken bir hata oldu:\n"
+"\n"
+"%s"
+
+# tr
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "%d komutu tanımlanmamış.\n"
+
+# tr
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Hiçbir termina komutu tanımlanmamış.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Telif Aqqı (C) 2001-%s Havoc Pennington, Red Hat, Inc., ve başqaları\n"
+"Bu, serbest yazılımdır; kopiyalav şartları içün menbağa baqıñız.\n"
+"İç bir kefaleti yoqtır; atta ALIP-VERİLEBİLİRLİK yaki BELLİ BİR MURATQA "
+"LİYAQAT içün.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Oturım idarecisine bağlantını ğayrı qabilleştir"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Çapmaqta olğan pencere idarecisini Marco ile deñiştir"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Oturım idaresi kimligini belirtiñiz"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Qullanılacaq X Kösterimi"
+
+# tr
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Ortamı kayıtlı dosyadan başlat"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Sürümni bastır"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "X çağırımlarını eşzamanlı yap"
+
+# tüklü
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Bileşiklemeni köçür"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Bileşiklemeni söndür"
+
+# tr
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "Büyütülmüş ve dekorasyonları olmayan pencereleri tam ekran yapma"
+
+# tr
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Tema dizini taranırken hata oluştu: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"İç bir tema tapılamadı! %s mevcudiyetinden ve adetiy temalarnı ihtiva "
+"etkeninden emin oluñız.\n"
+
+# tr
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Yeniden başlatılamadı: %s\n"
+
+# tr
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "'%s' MateConf anahtarına geçersiz bir değer atanmış\n"
+
+# tr
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"%2$s MateConf anahtarında saklı %1$d değeri %3$d ile %4$d aralığının dışında\n"
+
+# tr
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "\"%s\" MateConf anahtarına geçersiz bir tür atanmış\n"
+
+# tr
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Hatalı uygulamalara yönelik çözümler devre dışı. Bazı uygulamalar düzgün "
+"işlemeyebilir.\n"
+
+# tr
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "\"%s\" yazıtipi tanımlaması %s MateConf anahtarından ayrıştırılamadı\n"
+
+# tr
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Yapılandırma veritabanında bulunan \"%s\", fare düğme düzenleyicisi olarak "
+"geçerli bir değer değil\n"
+
+# tr
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Çalışma alanı sayısının %d yapılmasında hata: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Çalışma-fezası %d"
+
+# tr
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Yapılandırma veritabanında bulunan \"%s\", \"%s\" tuş bağı olarak geçerli "
+"bir değer değil\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "%d çalışma fezasınıñ adını \"%s\" yapqanda hata: %s\n"
+
+# tr
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Komposizyon durumu atanırken hata: %s\n"
+
+# tr
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "'%2$s' X oturumundaki ekran %1$d geçersiz\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"\"%2$s\" kösterimindeki ekran %1$d endi bir pencere idarecisine saiptir; "
+"ağımdaki pencere idarecisini ivaz etmek içün --replace ihtiyarını qullanuvnı "
+"deñeñiz.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"\"%2$s\" kösteriminiñ %1$d ekranındaki pencere idarecisi saylamı "
+"edinilamadı\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+"\"%2$s\" kösterimindeki ekran %1$d endi bir pencere idarecisine saiptir\n"
+
+# tr
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "\"%2$s\" X oturumundaki ekran %1$d serberst bırakılamadı\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Formatı şöyledir: \"<Control>a\" ya da \"<Shift><Alt>F1\".\n"
+"\n"
+"Ayırıştırıcı ğayet afu eticidir ve büyük yaki ufaq ariflerge em de \"<Ctl>"
+"\" ya da \"<Ctrl>\" kibi qısqartmalarğa izin berir. Bu ihtiyarnı \"disabled"
+"\" mahsus tizgisi olaraq tesbit etseñiz, bu amel içün iç bir tuş-bağlaması "
+"olmaz."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Formatı şöyledir: \"<Control>a\" ya da \"<Shift><Alt>F1\".\n"
+"\n"
+"Ayırıştırıcı ğayet afu eticidir ve büyük yaki ufaq ariflerge em de \"<Ctl>"
+"\" ya da \"<Ctrl>\" kibi qısqartmalarğa izin berir. Bu ihtiyarnı \"disabled"
+"\" mahsus tizgisi olaraq tesbit etseñiz, bu amel içün iç bir tuş-bağlaması "
+"olmaz.\n"
+"\n"
+"Bu tuş-bağlaması \"shift\" tuşunı basılı tutaraq keri döndürilebilir; bu "
+"yüzden \"shift\" qullanğanı tuşlardan biri olalmaz."
+
+# tr
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "'%s' dizini oluşturulamadı: %s\n"
+
+# tr
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "'%s' oturum dosyası yazma için açılamadı: %s\n"
+
+# tr
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "'%s' oturum dosyasına yazmada hata: %s\n"
+
+# tr
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "'%s' oturum dosyasını kapamada hata: %s\n"
+
+# tr
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Kaydedilmiş %s oturum dosyası okunamadı: %s\n"
+
+# tr
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Kaydedilmiş oturum dosyası ayrıştırırken hata: %s\n"
+
+# tr
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"Geçerli bir oturum kimliği bulunmasına karşın <marco_session> "
+"özniteliğiyle karşılaşıldı"
+
+# tr
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Bilinmeyen öznitelik %s <%s> öğesinde"
+
+# tr
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "iç içe <window> imi"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Bilinmegen unsur %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Bu pencereler, &quot;ağımdaki ayarlamanı saqla&quot; hususiyetini "
+"desteklemey ve bir soñraki içeri imzalanuvıñızda elnen kene başlatıluvları "
+"kerekecek."
+
+# tr
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Hata ayıklama günlüğü açılamadı: %s\n"
+
+# tr
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "fdopen() günlük dosyası %s açılamadı: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Kütük dosyesi %s açıldı\n"
+
+# tr
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco, ayrıntılı kip desteği olmadan derlenmiş\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Pencere idarecisi: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Pencere idarecisinde illet: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Pencere idarecisi ihtarı: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Pencere idarecisi hatası: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+# tr
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"%s penceresi SM_CLIENT_ID'yi ICCCM tarafından belirtilen WM_CLIENT_LEADER'a "
+"değil kendine atadı.\n"
+
+# tr
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"%s penceresi bir yandan yeniden boyutlandırılamaz olduğunu gösteren bir MWM "
+"ipucu verirken anlamsız bir biçimde en küçük (%d x %d) ve en büyük (%d x %d) "
+"boyut sınırlarını da atıyor.\n"
+
+# tr
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Uygulama geçersiz _NET_WM_PID %lu atadı\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s üzerinde)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (süper-qullanıcı olaraq)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s olaraq)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (başqa bir qullanıcı olaraq)"
+
+# tr
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Geçersiz WM_TRANSIENT_FOR pencere 0x%lx belirtilen %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"0x%lx penceresiniñ %s hasiyeti beklengen\n"
+"%s türü ve %d formatı yerine %s türü, %d formatı,\n"
+"%d n_items'ke saiptir.\n"
+"Bu büyük ihtimalnen uyğulamanın bir illetidir, pencere idarecisiniñki "
+"degildir.\n"
+"Pencereniñ serlevası=\"%s\", sınfı=\"%s\", adı=\"%s\"\n"
+
+# tr
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "0x%2$lx penceresinin %1$s özelliği geçersiz UTF-8 içeriyor\n"
+
+# tr
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"0x%2$lx penceresinin %1$s özelliği listedeki öğe %3$d için geçersiz UTF-8 "
+"içeriyor\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Çalışma-fezası 1'ge keç"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Çalışma-fezası 2'ge keç"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Çalışma-fezası 3'ke keç"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Çalışma-fezası 4'ke keç"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Çalışma-fezası 5'ke keç"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Çalışma-fezası 6'ğa keç"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Çalışma-fezası 7'ge keç"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Çalışma-fezası 8'ge keç"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Çalışma-fezası 9'ğa keç"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Çalışma-fezası 10'ğa keç"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Çalışma-fezası 11'ge keç"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Çalışma-fezası 12'ge keç"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Ağımdaki çalışma fezasınıñ solundaki çalışma fezasına keç"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Ağımdaki çalışma fezasınıñ oñundaki çalışma fezasına keç"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Ağımdaki çalışma fezasınıñ üstündeki çalışma fezasına keç"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Ağımdaki çalışma fezasınıñ altındaki çalışma fezasına keç"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr ""
+"Uyğulamanıñ pencereleri arasında almaş, bir peyda penceresini qullanaraq"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Uyğulamanıñ pencereleri arasında kerige taba almaş, bir peyda penceresini "
+"qullanaraq"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Pencereler arasında almaş, bir peyda penceresini qullanaraq"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr ""
+"Uyğulamanıñ pencereleri arasında kerige taba almaş, bir peyda penceresini "
+"qullanaraq"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Paneller ve masaüstü arasında almaş, bir peyda penceresini qullanaraq"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Paneller ve masaüstü arasında kerige doğru almaş, bir peyda penceresini "
+"qullanaraq"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Uyğulamanıñ pencereleri arasında deral almaş"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Uyğulamanıñ pencereleri arasında kerige doğru deral almaş"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Pencereler arasında deral almaş"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Pencereler arasında deral kerige doğru almaş"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Paneller ve masaüstü arasında deral almaş"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Paneller ve masaüstü arasında deral kerige doğru almaş"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Episi normal pencerelerni gizlep fokusnı masaüstüne tesbit et"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Panelniñ ana menüsini köster"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Panelniñ \"Uyğulama Çaptır\" penceresini köster"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Ekran körüntisini al"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Bir pencereniñ ekran körüntisini al"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Bir terminal çaptır"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Pencere menüsini faalleştir"
+
+# tüklü
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Tam ekran tarzını tönter"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Azamiyleşkenlik durumını tönter"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+"Pencereniñ er zaman digerleriniñ üzerinde körünip körünmeycegini tönter"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Pencereni azamiyleştir"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Pencereni keri tikle"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Abajurlılıq durumını tönter"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Pencereni asğariyleştir"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Pencereni qapat"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Pencereni avuştır"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Pencereni kene ölçülendir"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Pencereniñ episi çalışma fezalarındamı yoqsa sadece birindemi olğanını tönter"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Pencereni çalışma fezası 1'ge avuştır"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Pencereni çalışma fezası 2'ge avuştır"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Pencereni çalışma fezası 3'ke avuştır"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Pencereni çalışma fezası 4'ke avuştır"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Pencereni çalışma fezası 5'ke avuştır"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Pencereni çalışma fezası 6'ğa avuştır"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Pencereni çalışma fezası 7'ge avuştır"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Pencereni çalışma fezası 8'ge avuştır"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Pencereni çalışma fezası 9'ğa avuştır"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Pencereni çalışma fezası 10'ğa avuştır"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Pencereni çalışma fezası 11'ge avuştır"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Pencereni çalışma fezası 12'ge avuştır"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Pencereni soldaki çalışma fezasına avuştır"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Pencereni oñdaki çalışma fezasına avuştır"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Pencereni üstteki çalışma fezasına avuştır"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Pencereni alttaki çalışma fezasına avuştır"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Pencere başqa bir pencere tafından qaplanğan ise onı köter, yoqsa alçaqlat"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Pencereni digerleriniñ üstüne köter"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Pencereni digerleriniñ altına alçaqlat"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Pencereni vertikal olaraq azamiyleştir"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Pencereni ufqiy olaraq azamiyleştir"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Pencereni şimal-ğarp (töpe sol) köşege avuştır"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Pencereni şimal-şarq (töpe oñ) köşege avuştır"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Pencereni cenüp-ğarp (tüp sol) köşege avuştır"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Pencereni cenüp-şarq (tüp oñ) köşege avuştır"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Pencereni ekrannıñ şimaliy (töpe) tarafına avuştır"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Pencereni ekrannıñ cenübiy (tüp) tarafına avuştır"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Pencereni ekrannıñ şarqiy (oñ) tarafına avuştır"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Pencereni ekrannıñ ğarbiy (sol) tarafına avuştır"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Pencereni ekrannıñ ortasına avuştır"
+
+# tr
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Henüz uygulanmamış) Gezinme, pencerelere göre değil uygulamalara göre işler"
+
+# tr
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Pencere başlık çubuklarının yazıtipini tanımlayan yazıtipi tanımlama satırı. "
+"Bu tanımın boyut kısmı yalnızca titlebar_font_size (başlık çubuğu yazıtipi "
+"boyutu) seçeneği 0'a ayarlıysa kullanılacaktır. Ayrıca eğer "
+"titlebar_uses_desktop_font (başlık çubuğu masaüstü yazıtipini kullanır) "
+"seçeneği seçilmişse bu seçenek kapalı kabul edilir."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Serleva çubuğına çift-çertme üzerine amel"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Serleva çubuğına orta-çertme üzerine amel"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Serleva çubuğına oñ-çertme üzerine amel"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Serleva çubuğındaki dögmelerniñ yerleşimi"
+
+# tr
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Başlık çubuğundaki düğmelerin düzeni. Dizgi türünde bir değer alır, örneğin "
+"\"menu:minimize,maximize,spacer,close\"; pencerenin sol köşesindekilerle sağ "
+"köşesindekileri iki noktayla, düğme adlarını virgülle ayırın. Bir düğme "
+"birden çok kez kullanılamaz. Gelecek marco sürümlerinde eski sürümlerde "
+"soruna yol açmadan yeni düğmeler eklenebilmesi için bilinmeyen düğme adları "
+"hata vermeden göz ardı edilecektir. Ard arda iki düğme arasında biraz boşluk "
+"eklemek için özel spacer etiketi kullanılabilir."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Fokuslanılğan pencereni öz-özünden köterir"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Bu başqalaştırıcı tuşnı basıq tutaraq bir pencerege çertüv pencereni taşır "
+"(sol çertme), pencereni kene ölçülendirir (orta çertme), ya da pencere "
+"menüsini kösterir (oñ çertme). Sol ve sağ çertme işlemleri "
+"\"resize_with_right_button\" anahtarı qullanılaraq almaştırılabilir. "
+"Başqalaştırıcı, meselâ, \"&lt;Alt&gt;\" ya da \"&lt;Super&gt;\" olaraq ifade "
+"etilir."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Tuş-bağlamalarına cevaben çaptırılacaq emirler"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Bileşikleme İdarecisi"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Yañı pencerelerniñ nasıl fokuslanğanını muraqabe et"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Ağımdaki tema"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Avto-köter ihtiyarı içün millisaniye cınsından keçikme"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Marco'niñ bir bileşikleme idarecisi olıp olmağanını belgiler."
+
+# tr
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Uygulamaların veya sistemin sesli zil çıkarıp çıkartamayacaklarını belirler, "
+"sessiz zil sesleri için 'görzel zil' ile ilişkili de kullanılabilir."
+
+# tr
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Eski ya da hatalı uygulamaların gerektirdiği hatalı özellikleri kapat"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Körsel Zilni Faalleştir"
+
+# tr
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Eğer seçiliyse, ve odaklama kipi \"sloppy\" ya da \"mouse\" ise odaklanan "
+"pencere belirli bir süre sonra kendiliğinden üste çıkar (bu süre "
+"auto_raise_delay anahtarıyla belirlenir). Bu bir pencereye üste çıkarmak "
+"için tıklamak ya da sürükle ve bırak sırasında pencere sınırlarına girmek "
+"ile alakalı değildir."
+
+# tr
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Eğer seçiliyse, titlebar_font seçeneğini göz ardı edip pencere başlıklarında "
+"standart uygulama yazıtipi kullanılır."
+
+# tr
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Eğer seçiliyse, marco tel çerçeveleri kullanarak, canlandırma "
+"kullanmayarak ve diğer şekillerde, kullanıcıya daha az geri bildirim verip "
+"daha az \"doğrudan işlem\"e imkan verir. Bu bir çok kullanıcı için "
+"kullanılabilirlikte belirgin biz azalmaya neden olur, ama aksi halde "
+"kullanışsız olacak terminal sunucuları ve diğer eski uygulamalar için "
+"işleyebilirlik sağlayabilir. Ancak tel çerçeve özelliği erişilebilirlik açık "
+"olduğunda etkisizleştirilecek."
+
+# tr
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Eğer seçiliyse, Marco'nin pencerelere değil uygulamalara yönelik "
+"çalışmasını sağlar. Bu kavram biraz soyuttur, kısacası uygulama temelli "
+"çalışma Windows'tan çok Mac'takine benzer. Uygulama temelli kipte bir "
+"pencereye odaklandığınızda o uygulamanın bütün pencereleri yükseltilir. "
+"Ayrıca bu kipte odaklama amaçlı tıklamalar odaklamadan sonra bir de "
+"uygulamaya geçilmez. Uygulama tabanlı kipin büyük bölümü henüz tamamlanmadı."
+
+# tr
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Eğer seçiliyse, daha az kaynak kullanımı için kullanılabilirliği azaltır"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Başqalaştırılğan pencere çertme amelleri içün qullanılacaq başqalaştırıcı"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Çalışma fezasınıñ adı"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Çalışma fezalarınız sayısı"
+
+# tr
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Çalışma fezalarının sayısı. Sıfırdan büyük olmalıdır ve yanlışlıkla çok "
+"fazla sayıda çalışma alanı talep edip masaüstünü kullanışsız hale "
+"getirmenizi engellemek için bir üst sınırı vardır."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Belgilengen bir emirni çaptır"
+
+# tr
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Bunu pencereyi sağ tuş ile yeniden boyutlandırmak ve orta tuşa basılıyken "
+"\"mouse_button_modifier\" anahtarında verilen tuşa basıldığında menü "
+"göstermek için doğru olarak atayın; tam tersi çalışması için bunu yanlış "
+"olarak atayın."
+
+# tr
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Bu seçeneğin yanlış olarak atanması bozuk bir işleyişe sebep olur, bu yüzden "
+"kullanıcıların bu seçeneği doğru olan öntanımlı ayarından değiştirilmemesi "
+"tavsiye edilir. Çoğu işlem (örn. istemci fezasına tıklama, taşıma ya da "
+"pencere yeniden boyutlandırma) normalde pencereyi yan etki olarak en üste "
+"taşır. Bu seçeneği false yapmak, ki tavsiye edilmemektedir, diğer kullanıcı "
+"eylemlerinin üste taşımasını bozacak ve uygulamalar tarafından gelen üste "
+"taşıma isteklerini yok sayacaktır. http://bugzilla.gnome.org/show_bug.cgi?"
+"id=445447#c6 sayfasına bakın. Bu seçenek yanlış olsa bile, pencereler; "
+"pencerenin herhangi bir yerine alt-sol tıklama, pencere dekorasyonlarına "
+"normal tıklama ya da sayfalayıcılardan özel iletiler, örneğin görev "
+"listesinden etkinleştirme istekleri gibi durumlarda üste taşınır. Bu özellik "
+"şimdilik odak-için-tıkla kipinde kapalıdır. Pencerelerin raise_on_click "
+"yanlış olduğunda en üste taşıma yollarının listesi sadece programdan gelen "
+"istekleri içermez; bu istekler isteğin sebebi ne olursa olsun yok "
+"sayılacaktır. Eğer bir uygulama geliştiricisi kullanıcısının bu özellik "
+"yanlış olduğunda çalışmadığı şikayetini alıyorsa, kullanıcıya bunun _kendi_ "
+"hatası olduğunu çünkü pencere yöneticisinin ayarını bozduğunu ve bu seçeneği "
+"tekrar doğru olarak ayarlaması gerektiğini ya da istenen \"hata\" ile "
+"yaşamak zorunda olduğunu söylemelidir."
+
+# tr
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Bazı uygulamalar belirtimleri pencere yöneticisinin yanlış işlemesine sebep "
+"olacak şekilde göz ardı ederler. Bu seçenek Marco'i sıkı bir şekilde "
+"doğru kipe sokar, bu şayet kullanıcının hatalı işleyen bir uygulama "
+"çalıştırmaya ihtiyacı yoksa kullanıcı arayüzünün daha tutarlı olmasını "
+"sağlar."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Sistem Zili Eşitilebilir"
+
+# tr
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Marco'e sistem zilinin veya diğer uygulama zil belirticilerinin "
+"kullanacağı görsel uyarıcı şeklini belirtir. Şu an için iki geçerli değer "
+"vardır, tüm ekranın siyah-beyaz flaşlaması için \"fullscreen\", ve "
+"uygulamanın başlık çubuğunun, zil sinyali ile flaşlaması için \"frame_flash"
+"\". Eğer zil sinyalini gönderen uygulama bilinmiyorsa (ön tanımlı \"sistem "
+"zili\" için geçerli olan durum), güncel odaklanmış pencerenin başlık çubuğu "
+"flaşlanır."
+
+# tr
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N anahtarları bu komutlara "
+"karşılık gelen tuş bağlarını tanımlar. run_command_N için tuş bağına basınca "
+"command_N çalışır."
+
+# tr
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot anahtarı bu ayara "
+"atanmış komutun çalıştırılması için gereken tuş bağını tanımlar."
+
+# tr
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot anahtarı bu "
+"ayara atanmış komutun çalıştırılması için gereken tuş bağını tanımlar."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"/apps/marco/keybinding_commands içinde mütenazır-nomeralı buyruqnı "
+"çaptırğan tuş-bağlaması. Formatı şöyledir: \"&lt;Control&gt;a\" ya da \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Ayırıştırıcı ğayet afu eticidir ve büyük yaki ufaq "
+"ariflerge em de \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" kibi qısqartmalarğa "
+"izin berir. Bu ihtiyarnı \"disabled\" mahsus tizgisi olaraq tesbit etseñiz, "
+"bu amel içün iç bir tuş-bağlaması olmaz."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Bir çalışma fezasınıñ adı."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Ekran körüntisi emri"
+
+# tr
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Tema; pencere kenarları, başlık çubuğu gibi öğelerin görünümünü belirler."
+
+# tr
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Pencereyi auto_raise ayarı seçiliyse yükseltmeden önceki gecikme. Bu gecikme "
+"saniyenin binde biri cinsinden verilir."
+
+# tr
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Pencere odaklama kipi, pencerelerin nasıl etkinleştirileceğini belirler. Üç "
+"olası değeri vardır; \"click\" olursa pencereler tıklanarak odaklanır, "
+"\"sloppy\" olursa fare pencere sınırlarına girince kendiliğinden odaklanır, "
+"\"mouse\" olursa fare pencereye girince odaklanır ama fare çıktığında "
+"odaklama kaybolur."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Pencere ekran körüntisi emri"
+
+# tr
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Bu seçenek başlık çubuğuna çift tıklamanın ne yapacağını belirler. Geçerli "
+"seçenekler: 'toggle_shade' pencereyi toplar/yayar, 'toggle_maximize' "
+"pencereyi büyültür/büyültmeyi geri alır, 'toggle_maximize_horizontally' ve "
+"'toggle_maximize_vertically' sadece o yönde pencereyi büyültür/büyültmeyi "
+"geri alır, 'minimize' pencereyi küçültür, 'shade' pencereyi yukarı toplar, "
+"'menu' pencere menüsünü gösterir, 'lower' pencereyi diğerlerinin arkasına "
+"koyar ve 'none' hiçbir şey yapmaz. "
+
+# tr
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Bu seçenek başlık çubuğuna orta tıklamanın ne yapacağını belirler. Geçerli "
+"seçenekler: 'toggle_shade' pencereyi toplar/yayar, 'toggle_maximize' "
+"pencereyi büyültür/büyültmeyi geri alır, 'toggle_maximize_horizontally' ve "
+"'toggle_maximize_vertically' sadece o yönde pencereyi büyültür/büyültmeyi "
+"geri alır, 'minimize' pencereyi küçültür, 'shade' pencereyi yukarı toplar, "
+"'menu' pencere menüsünü gösterir, 'lower' pencereyi diğerlerinin arkasına "
+"koyar ve 'none' hiçbir şey yapmaz. "
+
+# tr
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Bu seçenek başlık çubuğuna sağ tıklamanın ne yapacağını belirler. Geçerli "
+"seçenekler: 'toggle_shade' pencereyi toplar/yayar, 'toggle_maximize' "
+"pencereyi büyültür/büyültmeyi geri alır, 'toggle_maximize_horizontally' ve "
+"'toggle_maximize_vertically' sadece o yönde pencereyi büyültür/büyültmeyi "
+"geri alır, 'minimize' pencereyi küçültür, 'shade' pencereyi yukarı toplar, "
+"'menu' pencere menüsünü gösterir, 'lower' pencereyi diğerlerinin arkasına "
+"koyar ve 'none' hiçbir şey yapmaz. "
+
+# tr
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Bu seçenek yeni oluşturulan pencerelerin odaklanmak için ek kontroller "
+"sağlar. İki geçerli değeri vardır; \"smart\" kullanıcının normal odak kipine "
+"uygulanır ve \"strict\" uçbirimden başlatılan uygulamaların odaklanmaması "
+"ile sonuçlanır."
+
+# tr
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Bir uygulama veya sistem 'zil' ya da 'bip' uygulamak istediginde görsel "
+"uyarıcıları da açar; duymanın zor olduğu gürültülü ortamlar için çok "
+"kullanışlıdır."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Pencere serlevalarında standart sistem urufatını qullan"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Körsel Zil Türü"
+
+# tr
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Yukarı çıkartmanın diğer kullanıcı etkileşimleri için yan etki olması"
+
+# tr
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Sağ tuş ile en üste taşıma"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Pencere fokus tarzı"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Pencere serlevası urufatı"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Qullanım: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Pencereni Qapat"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Pencere Menüsi"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Pencereni Asğariyleştir"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Pencereni Azamiyleştir"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Pencereni Keri Tikle"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Pencereni Yuqarı Yuvarlat"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Pencereni Keri Yuvarlat"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Pencereni Üstte Tut"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Pencereni Üstten Çetleştir"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Er Zaman Körüngen Çalışma Fezasında"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Pencereni Tek Bir Çalışma Fezasına Qoy"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Asğariyleştir"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Aza_miyleştir"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Ğ_ayrı Azamiyleştir"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Yuqarı Yuvarlat"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Keri Yuvarlat"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Avuştır"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Kene Ölçülendir"
+
+# tüklü
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Serleva Çubuğını _Ekran Üzerine Taşı"
+
+# tr
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Er Zaman Ü_stte"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Er Zaman _Körüngen Çalışma Fezasında"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Faqat _Bu Çalışma Fezasında"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "_Soldaki Çalışma Fezasına Avuştır"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "_Oñdaki Çalışma Fezasına Avuştır"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "_Yuqarıdaki Çalışma Fezasına Avuştır"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Aşağı_daki Çalışma Fezasına Avuştır"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Qapat"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Çalışma-fezası %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Çalışma-fezası 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Çalışma-fezası %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "_Başqa bir Çalışma Fezasına Avuştır"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+# tr
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+# tr
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "töpe"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "tüp"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "sol"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "oñ"
+
+# tr
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "çerçeve geometrisi \"%s\" boyutunu tanımlamıyor"
+
+# tr
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"çerçeve geometrisi \"%s\" boyutunu \"%s\" pencere kenarı için tanımlamıyor"
+
+# tr
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "%g kabul edilebilir bir düğme en-boy oranı değil"
+
+# tr
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Çerçeve geometrisi düğmelerin boyutunu tanımlamıyor"
+
+# tr
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Renk geçişlerinde en az iki renk olmalı"
+
+# tr
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK renk belirtiminde köşeli parantezler arasında durum verilmelidir; "
+"örneğin, gtk:fg[NORMAL] belirtiminde NORMAL, durumu gösterir; \"%s\" "
+"ayrıştırılamadı"
+
+# tr
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK renk belirtiminde durumdan sonra sağ köşeli parantezleri gelmelidir; "
+"örneğin, gtk:fg[NORMAL] belirtiminde NORMAL, durumu gösterir; \"%s\" "
+"ayrıştırılamadı"
+
+# tr
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Renk belirtimindeki \"%s\" durumu anlaşılamadı"
+
+# tr
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Renk belirtimindeki \"%s\" renk bileşeni anlaşılamadı"
+
+# tr
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Renk karışımının doğru biçimi \"blend/bg_color/fg_color/alpha\"dır; \"%s\" "
+"bu biçime uymuyor"
+
+# tr
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Renk karışımındaki \"%s\" alfa değeri ayrıştırılamadı"
+
+# tr
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Renk karışımının alfa değeri \"%s\", 0.0 ile 1.0 arasında değil"
+
+# tr
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Gölgelendirmenin doğru biçimi \"shade/bas_color/factor\"dır; \"%s\" bu "
+"biçime uymuyor"
+
+# tr
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Gölgeli rengin gölge katsayısı olan \"%s\" ayrıştırılamadı"
+
+# tr
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Gölgeli rengin gölge katsayısı olan \"%s\", negatif"
+
+# tr
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "\"%s\" rengi ayrıştırılamadı"
+
+# tr
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Kordinat ifadesi izin verilmeyen '%s' karakterini içeriyor"
+
+# tr
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Kordinat ifadesi '%s' gerçel sayısını içeriyor ve bu sayı ayrıştırılamıyor"
+
+# tr
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Kordinat ifadesi ayrıştırılamayan '%s' tamsayısını içeriyor"
+
+# tr
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Kordinat ifadesi bu metnin başında bilinmeyen bir işleç içeriyor: \"%s\""
+
+# tr
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Kordinat ifadesi boş ya da anlaşılamadı"
+
+# tr
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Kordinat ifadesi sıfıra bölümle sonuçlanıyor"
+
+# tr
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Kordinat ifadesi bir gerçel sayı üzerinde mod (kalan bulma) işlecini "
+"kullanmaya çalıştı"
+
+# tr
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Kordinat ifadesi işleneni beklenen \"%s\", işlecini içeriyor"
+
+# tr
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Kordinat ifadesi işleci beklenen bir işlenen içeriyor"
+
+# tr
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Kordinat ifadesi bir işlenen yerine işleçle bitiyor"
+
+# tr
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Kordinat ifadesi birbirlerinin izleyen ve aralarında işlenen olmayan \"%2$c"
+"\" ve \"%1$c\" işleçlerini içeriyor"
+
+# tr
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Kordinat ifadesi bilinmeyen bir değişken ya da sabit olan \"%s\" içeriyor"
+
+# tr
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Kordinat belirtim ayrıştırıcısı tamponundan taştı."
+
+# tr
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Kordinat ifadesi sol parantezi olmayan bir sağ parantez içeriyor"
+
+# tr
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Kordinat ifadesi sağ parantezi olmayan bir sol parantez içeriyor"
+
+# tr
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Kordinat ifadesi göründüğü kadarıyla ne işleç ne de işlenen içeriyor"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Tema bir hata ile neticelengen bir ifadeni ihtiva etti: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Bu çerçive üslübi içün <button function=\"%s\" state=\"%s\" draw_ops=\"er "
+"neyse\"/> belirtilmelidir"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"er neyse\"/> eksik"
+
+# tr
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "\"%s\" teması yüklenemedi: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "\"%2$s\" teması içün <%1$s> tayin etilmegen"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"\"%2$s\" temasında \"%1$s\" pencere türü içün iç bir çerçive üslübi tayin "
+"etilmegen, bir <window type=\"%3$s\" style_set=\"er neyse\"/> unsurı ekleñiz"
+
+# tr
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Kullanıcı tanımlı sabitler büyük harfle başlamalıdır; \"%s\" buna uymuyor"
+
+# tr
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "\"%s\" sabit değeri zaten tanımlanmış"
+
+# tr
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "<%2$s> öğesinde \"%1$s\" özniteliği yok"
+
+# tr
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Satır %d karakter %d: %s"
+
+# tr
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "\"%s\" özniteliği aynı <%s> öğesinde iki kez kullanılmış"
+
+# tr
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "\"%s\" özniteliği bu içerikte <%s> öğesi için geçersiz"
+
+# tr
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" bir tamsayı olarak ayrıştırılamadı"
+
+# tr
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "\"%2$s\" dizgisinin sonundaki \"%1$s\" karakterleri anlaşılmadı"
+
+# tr
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "%ld tamsayısı pozitif olmalı"
+
+# tr
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "%ld tamsayısı çok büyük, şu anda üst sınır %d"
+
+# tr
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\" bir gerçel sayı olarak ayrıştırılamadı"
+
+# tr
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+"Mantıksal değerler ancak \"true\" (doğru) ya da \"false\" (yanlış) "
+"değerlerini alabilir; \"%s\" olamaz"
+
+# tr
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Açı 0.0 ile 360.0 arasında olmalı, %g verilmiş\n"
+
+# tr
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa 0.0 (görünmez) ile 1.0 (düz renk) arasında olmalıydı ama %g verilmiş\n"
+
+# tr
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Geçersiz öğe ölçüsü \"%s\" (şunlardan biri olmalıdır: xx-small,x-small,small,"
+"medium,large,x-large,xx-large)\n"
+
+# tr
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> adı \"%s\" ikinci kez kullanılmış"
+
+# tr
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> üst değeri \"%s\" tanımlanmamış"
+
+# tr
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometrisi \"%s\" tanımlanmamış"
+
+# tr
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s>, ya bir geometri ya da geometrisi olan bir üst öğe belirtmeli"
+
+# tr
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Arkaplanı anlamlı olabilmesi için bir alfa değeri ile belirtmelisiniz"
+
+# tr
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "<%2$s> öğesinde bilinmeyen type \"%1$s\""
+
+# tr
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "<%2$s> öğesinde bilinmeyen style_set \"%1$s\""
+
+# tr
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "\"%s\" pencere türünün önceden atanmış bir biçem kümesi var"
+
+# tr
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "<%s> öğesi <%s> altında kullanılamaz"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Dögmeler içün em \"button_width\"/\"button_height\" (en-boy) em de "
+"\"aspect_ratio\" belirtilalmaz"
+
+# tr
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "\"%s\" uzaklığı bilinmiyor"
+
+# tr
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "\"%s\" en-boy oranı bilinmiyor"
+
+# tr
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "\"%s\" pencere kenarı bilinmiyor"
+
+# tr
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+"<%s> öğesinde \"start_angle\" (başlama açısı) ya da \"from\" özniteliği yok"
+
+# tr
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+"<%s> öğesinde \"extent_angle\" (genişletme açısı) ya da \"to\" özniteliği yok"
+
+# tr
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Renk geçişi türü olarak verilen \"%s\" değeri anlaşılamadı"
+
+# tr
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "<%2$s> öğesinin doldurma türü \"%1$s\" anlaşılamadı"
+
+# tr
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "<%2$s> öğesi için \"%1$s\" durumu anlaşılamadı"
+
+# tr
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "<%2$s> öğesi için \"%1$s\" gölgesi anlaşılamadı"
+
+# tr
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "<%2$s> öğesi için \"%1$s\" oku anlaşılamadı"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "\"%s\" adında <draw_ops> belgilenmegendir"
+
+# tr
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Burada \"%s\" draw_ops'unu içermek çevrimsel gönderime yol açar"
+
+# tr
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Çerçeve parçası için bilinmeyen konum \"%s\""
+
+# tr
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Çerçeve biçeminin %s konumunda zaten bir parça var"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "\"%s\" adı ile <draw_ops> belgilenmegendir"
+
+# tr
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Düğme için geçersiz işlev \"%s\""
+
+# tr
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Düğme işlevi \"%s\" bu sürümde mevcut değil (%d, gereken %d)"
+
+# tr
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Düğme için geçersiz durum \"%s\""
+
+# tr
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Çerçeve biçeminde %s işlevi, %s durumu için zaten bir düğme var"
+
+# tr
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\", odak özniteliği için geçerli bir değer değil"
+
+# tr
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\", durum özniteliği için geçerli bir değer değil"
+
+# tr
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" adlı bir biçem tanımlanmamış"
+
+# tr
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\", yeniden boyutlandırma özniteliği için geçerli bir değer değil"
+
+# tr
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"<%s> öğesinin büyütülmüş/toplanmış durumlarında \"resize\" özniteliği "
+"bulunmamalı"
+
+# tr
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"<%s> öğesinin büyütülmüş durumlarında \"resize\" özniteliği bulunmamalı"
+
+# tr
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"%s durumu, %s yeniden boyutlandırma, %s odak için biçem zaten belirtilmiş"
+
+# tr
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "%s durumu, odak %s için biçem zaten belirtilmiş"
+
+# tr
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Bir <piece> öğesi içinde iki draw_ops olamaz (tema, ya bir draw_ops "
+"özniteliğiyle bir <draw_ops> öğesi, ya da iki öğe belirtmiş)"
+
+# tr
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Bir <button> öğesi içinde iki draw_ops olamaz (tema, ya bir draw_ops "
+"özniteliğiyle bir <draw_ops> öğesi, ya da iki öğe belirtmiş)"
+
+# tr
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Bir <menu_icon> öğesi içinde iki draw_ops olamaz (tema, ya bir draw_ops "
+"özniteliğiyle bir <draw_ops> öğesi, ya da iki öğe belirtmiş)"
+
+# tr
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Temanın en dış öğesi <%s> değil <marco_theme> olmalıdır"
+
+# tr
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"name/author/date/description öğelerinin içinde <%s> öğesi bulunmamalıdır"
+
+# tr
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<constant> öğesinin içinde <%s> öğesi bulunmamalıdır"
+
+# tr
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"distance/border/aspect_ratio öğelerinin içinde <%s> öğesi bulunmamalıdır"
+
+# tr
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "draw operation öğesinin içinde <%s> öğesi bulunmamalıdır"
+
+# tr
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%2$s> öğesinin içinde <%1$s> öğesi bulunmamalıdır"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Çerçive parçası içün draw_ops temin etilmegen"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Dögme içün draw_ops temin etilmegen"
+
+# tr
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> öğesinin içinde metin bulunmamalıdır"
+
+# tr
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "Bu temada <%s> iki kez belirtilmiş"
+
+# tr
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Tema %s için geçerli bir dosya bulunamadı\n"
+
+# tr
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Tema dosyası %s, kök <marco_theme> öğesi içermiyor"
+
+# tr
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Pencereler"
+
+# tr
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Pencereler/kes"
+
+# tr
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Pencereler/_İletişim pencereleri"
+
+# tr
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Pencereler/_Düz iletişim pencereleri"
+
+# tr
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Pencereler/_Araçlar"
+
+# tr
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Pencereler/_Başlangıç görüntüsü"
+
+# tr
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Pencereler/_Üste sabitle"
+
+# tr
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Pencereler/_Alta sabitle"
+
+# tr
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Pencereler/_Sola sabitle"
+
+# tr
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Pencereler/S_ağa sabitle"
+
+# tr
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Pencereler/_Tüm sabitlemeler"
+
+# tr
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Pencereler/_Masaüstü"
+
+# tr
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Bu örnek iletişim penceresi için örnek bir iletidir"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Sahte menü unsurı %d\n"
+
+# tr
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Sadece kenarı olan pencere"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Çubuq"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normal Uyğulama Penceresi"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialog Qutusı"
+
+# tr
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Yardımcı İletişim Kutusu"
+
+# tr
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Araç Paleti"
+
+# tr
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Kesilebilir Menü"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Sıñır"
+
+# tr
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Düğme düzeni testi %d"
+
+# tr
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "bir pencere çerçevesi çizmek için %g milisaniye"
+
+# tr
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Kullanım: marco-theme-viewer [TEMAİSMİ]\n"
+
+# tr
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Tema yüklenirken hata: %s\n"
+
+# tr
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" teması %g saniye içerisinde yüklendi\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Normal Serleva Urufatı"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Kiçik Serleva Urufatı"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Büyük Serleva Urufatı"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Dögme Tizilimleri"
+
+# tr
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Karşılaştırma"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Pencere Serlevası Mında Barır"
+
+# tr
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d çerçeve %g istemci taraflı saniyede (%g milisaniye başına çerçeve) ve X "
+"sunucu kaynaları ile saat saniyesi olarak %g saniye (%g milisaniye başına "
+"çerçeve) içinde çizildi.\n"
+
+# tr
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "konum ifadesi testi TRUE olarak döndü ama hata belirtti"
+
+# tr
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "konum ifadesi testi FALSE olarak döndü ama hata belirtmedi"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Hata beklendi ancaq iç biri berilmedi"
+
+# tr
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Hata %d beklendi ancak %d verildi"
+
+# tr
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Hata beklenmedi ancak bir hata görüldü: %s"
+
+# tr
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x değeri %d, fakat beklenen değer %d"
+
+# tr
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y değeri %d, fakat beklenen değer %d"
+
+# tr
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d kordinat ifadesi %g saniye içinde ayrıştırıldı (%g saniye ortalama ile)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Bu pencerelerden bir dane daa aç"
+
+# tr
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Bu 'aç' simgesi olan gösterim düğmesidir"
+
+# tr
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Bu 'çık' simgesi olan gösterim düğmesidir"
diff --git a/po/cs.po b/po/cs.po
new file mode 100644
index 00000000..5a5e979e
--- /dev/null
+++ b/po/cs.po
@@ -0,0 +1,2370 @@
+# Czech translation of Marco.
+# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 the author(s) of Marco.
+# Copyright (C) 2003, 2004, 2005, 2006 Miloslav Trmac <[email protected]>.
+# This file is distributed under the same license as the marco package.
+# Miloslav Trmac <[email protected]>, 2002, 2003, 2004, 2005, 2006.
+# Petr Tomeš <[email protected]>, 2006.
+# Jakub Friedl <[email protected]>, 2006, 2007.
+# Petr Kovar <[email protected]>, 2007, 2008, 2009, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-02-05 00:05+0100\n"
+"PO-Revision-Date: 2010-02-05 00:03+0100\n"
+"Last-Translator: Petr Kovar <[email protected]>\n"
+"Language-Team: Czech <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+"X-Generator: Lokalize 1.0\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Pracovní prostředí"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Správa oken"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Událost zvonku"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Neznámý informační požadavek okna: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> neodpovídá."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Je možné chvíli počkat, aby aplikace mohla pokračovat, nebo si vynutit úplné "
+"ukončení aplikace."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Počkat"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Vynutit ukončení"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Nelze získat název počítače: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Schází rozšíření %s vyžadované funkcemi kompozitoru"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Nelze otevřít displej X Window System \"%s\"\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Ztraceno spojení s displejem \"%s\";\n"
+"pravděpodobně byl ukončen server X nebo jste zabili/zrušili\n"
+"správce oken.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Kritická chyba V/V %d (%s) na displeji \"%s\".\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Klávesu %s s modifikátory %x již jako zkratku používá nějaký jiný program\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Při spuštění <tt>%s</tt> se vyskytla chyba:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Nebyl definován příkaz %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Nebyl definován příkaz terminálu.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc. a další.\n"
+"Toto je svobodný software; podmínky kopírování a rozšiřování naleznete ve "
+"zdrojových textech.\n"
+"Tento software je BEZ JAKÉKOLIV ZÁRUKY; neposkytují se ani záruky "
+"PRODEJNOSTI anebo VHODNOSTI PRO URČITÝ ÚČEL.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Zakáže připojení ke správci sezení"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Nahradí běžícího správce oken správcem Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Určení ID správy sezení"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Displej X, který použije"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Spustí sezení z uloženého souboru"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Vypíše verzi"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Provede volání X synchronně"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Zapnout funkci kompozitoru"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Vypnout funkci kompozitoru"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Nevytvářet okna přes celou obrazovku, která jsou maximalizovaná a nemají "
+"dekorace"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Nelze prohledat adresář motivů: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Nelze najít motiv! Ujistěte se prosím, že existuje %s a obsahuje obvyklé "
+"motivy.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Nezdařil se restart: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Klíč MateConf \"%s\" je nastaven na neplatnou hodnotu\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d uloženo v klíči MateConf %s je mimo rozsah %d až %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Klíč MateConf \"%s\" je nastaven na neplatný typ\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Bylo zakázáno obcházení chyb aplikací. Některé aplikace se možná nebudou "
+"chovat správně.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Nelze analyzovat popis písma \"%s\" v klíči MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" nalezené v databázi nastavení není platnou hodnotou modifikátoru "
+"tlačítka myši\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Chyba při nastavování počtu ploch na %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Plocha %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" nalezené v databázi nastavení není platnou hodnotou klávesové zkratky "
+"\"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Chyba při nastavování názvu plochy %d na \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Chyba při nastavování stavu kompozitoru: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Obrazovka %d na displeji \"%s\" je neplatná\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Obrazovka %d na displeji \"%s\" již správce oken má; zkuste prosím nahradit "
+"aktuálního správce oken pomocí přepínače --replace.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Nelze získat výběr správce oken na obrazovce %d displeje \"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Obrazovka %d na displeji \"%s\" již má správce oken\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Nelze uvolnit obrazovku %d na displeji \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Formát má podobu\"<Control>a\" nebo <Shift><Alt>F1\".\n"
+"\n"
+"Analyzátor je poměrně velkorysý a dovoluje malá i velká písmena a zkratky "
+"jako \"<Ctl>\" a \"<Ctrl>\". Pokud volbu nastavíte na speciální řetězec "
+"\"disabled\", pak u této akce nebude žádná klávesová zkratka."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Formát má podobu\"<Control>a\" nebo <Shift><Alt>F1\".\n"
+"\n"
+"Analyzátor je poměrně velkorysý a dovoluje malá i velká písmena a zkratky "
+"jako \"<Ctl>\" a \"<Ctrl>\". Pokud volbu nastavíte na speciální řetězec "
+"\"disabled\", pak u této akce nebude žádná klávesová zkratka.\n"
+"\n"
+"Tato klávesová zkratka může být obrácena podržením klávesy \"Shift\", čili "
+"\"Shift\" nemůže být jedna z použitých kláves."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Nelze vytvořit adresář \"%s\": %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Nelze otevřít soubor sezení \"%s\" k zápisu: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Chyba při zápisu souboru sezení \"%s\": %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Chyba při zavírání souboru sezení \"%s\": %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Chyba při čtení uloženého souboru sezení %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Chyba při analyzování uloženého souboru sezení: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "nalezen atribut <marco_session>, ale ID sezení už k dispozici je"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Neznámý atribut %s prvku <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "vnořená značka <window>"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Neznámý prvek %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Tato okna nepodporují ukládání aktuálního nastavení a po vašem příštím "
+"přihlášení je budete muset znovu spustit ručně."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Nelze otevřít ladicí záznam: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Nelze provést fdopen() soubor záznamu %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Otevřen soubor záznamu %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco bylo přeloženo bez podpory podrobného režimu\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Správce oken: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Chyba ve správci oken: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Varování správce oken: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Chyba správce oken: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Okno %s nastavilo SM_CLIENT_ID samo na sebe, namísto okna WM_CLIENT_LEADER, "
+"jak je definováno v ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Okno %s nastavuje pokyn MWM, kterým naznačuje, že se nedá měnit jeho "
+"velikost, ale nastavuje min. velikost %d × %d a max. velikost %d × %d; to "
+"nedává smysl.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Aplikace nastavila neplatný _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (na %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (jako superuživatel)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (jako %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (jako jiný uživatel)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Neplatné okno WM_TRANSIENT_FOR 0x%lx specifikováno pro %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Okno 0x%lx má vlastnost %s\n"
+"Ta má mít typ %s formátu %d\n"
+"a ve skutečnosti má typ %s formátu %d n_items %d.\n"
+"To je pravděpodobně chyba aplikace, nikoliv správce oken.\n"
+"Okno má nadpis=\"%s\", třída=\"%s\", název=\"%s\".\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Vlastnost %s okna 0x%lx obsahovala neplatné UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Vlastnost %s okna 0x%lx obsahovala neplatné UTF-8 u položky %d seznamu\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Přepnout na plochu 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Přepnout na plochu 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Přepnout na plochu 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Přepnout na plochu 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Přepnout na plochu 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Přepnout na plochu 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Přepnout na plochu 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Přepnout na plochu 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Přepnout na plochu 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Přepnout na plochu 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Přepnout na plochu 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Přepnout na plochu 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Přepnout na plochu nalevo od aktuální plochy"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Přepnout na plochu napravo od aktuální plochy"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Přepnout na plochu nad aktuální plochou"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Přepnout na plochu pod aktuální plochou"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Přepínat mezi okny aplikace pomocí automaticky otevíraného okna"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Přepínat zpět mezi okny aplikace pomocí automaticky otevíraného okna"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Přepínat mezi okny pomocí automaticky otevíraného okna"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Přepínat zpět mezi okny pomocí automaticky otevíraného okna"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr ""
+"Přepínat mezi panely a pracovní plochou pomocí automaticky otevíraného okna"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Přepínat zpět mezi panely a pracovní plochou pomocí automaticky otevíraného "
+"okna"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Přepínat mezi okny aplikace okamžitě"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Okamžitě přepínat zpět mezi okny aplikace"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Přepínat mezi okny okamžitě"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Okamžitě přepínat zpět mezi okny"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Přepínat mezi panely a pracovní plochou okamžitě"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Okamžitě přepínat zpět mezi panely a pracovní plochou"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Skrýt všechna okna a aktivovat pracovní plochu"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Zobrazit hlavní nabídku panelu"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Zobrazit dialog spuštění aplikace umístěný na panelu"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Zachytit obrazovku"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Zachytit obrázek okna"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Spustit terminál"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Aktivovat nabídku okna"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Přepnout režim na celou obrazovku"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Přepnout stav maximalizace"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Přepnout vždy platnou viditelnost okna nad jinými okny"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximalizovat okno"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Obnovit okno"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Přepnout stav svinutí"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimalizovat okno"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Zavřít okno"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Přesunout okno"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Změnit velikost okna"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Přepnout výskyt okna na všech plochách nebo jen na jedné"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Přesunout okno na plochu 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Přesunout okno na plochu 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Přesunout okno na plochu 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Přesunout okno na plochu 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Přesunout okno na plochu 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Přesunout okno na plochu 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Přesunout okno na plochu 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Přesunout okno na plochu 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Přesunout okno na plochu 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Přesunout okno na plochu 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Přesunout okno na plochu 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Přesunout okno na plochu 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Posunout okno o plochu doleva"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Posunout okno o plochu doprava"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Posunout okno o plochu nahoru"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Posunout okno o plochu dolů"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Zvýšit okno, pokud je zakryté jiným oknem, jinak je snížit"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Zvýšit okno nad jiná okna"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Snížit okno pod jiná okna"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximalizovat okno svisle"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximalizovat okno vodorovně"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Přesunout okno do severozápadního (levého horního) rohu"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Přesunout okno do severovýchodního (pravého horního) rohu"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Přesunout okno do jihozápadního (levého dolního) rohu"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Přesunout okno do jihovýchodního (pravého dolního) rohu"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Přesunout okno na severní (horní) stranu obrazovky"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Přesunout okno na jižní (dolní) stranu obrazovky"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Přesunout okno na východní (pravou) stranu obrazovky"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Přesunout okno na západní (levou) stranu obrazovky"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Přesunout okno na střed obrazovky"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Neimplementováno) Navigace pracuje s aplikacemi, nikoliv s okny"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Řetězec popisu písma popisující písmo záhlaví oken. Velikost z popisu bude "
+"použita jen pokud je volba titlebar_font_size nastavena na \"0\". Tato volba "
+"je dále zakázána, je-li volba titlebar_uses_desktop_font nastavena na \"true"
+"\"."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Akce při dvojitém kliknutí na záhlaví okna"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Akce při kliknutí prostředním tlačítkem na záhlaví okna"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Akce při kliknutí pravým tlačítkem na záhlaví okna"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Uspořádání tlačítek na záhlaví okna"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Uspořádání tlačítek na záhlaví okna. Hodnota by měla být řetězcem, např. "
+"\"menu:minimize,maximize,spacer,close\"; dvojtečka odděluje levý a pravý roh "
+"okna, názvy tlačítek jsou odděleny čárkami. Opakování tlačítka není "
+"dovoleno. Neznámé názvy tlačítek jsou v tichosti ignorovány, aby mohla být v "
+"budoucích verzích marco přidána tlačítka bez vlivu na starší verze. K "
+"vložení místa mezi dvě přiléhající tlačítka může být použito speciální "
+"značky (mezery)."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Automaticky zvýší aktivní okno"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Kliknutí na okno za současného stisknutí tohoto modifikátoru okno přesune "
+"(levým tlačítkem), změní jeho velikost (prostředním tlačítkem), nebo zobrazí "
+"nabídku okna (pravým tlačítkem). Operace prostředního a pravého tlačítka "
+"mohou být zaměněny použitím klíče \"resize_with_right_button\". Modifikátor "
+"je vyjádřen např. jako \"&lt;Alt&gt;\" nebo \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Příkazy, které spustit klávesovými zkratkami"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Správce funkcí kompozitoru"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Určuje způsob, jakým se nová okno stanou aktivními"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Aktuální motiv"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Zpoždění v milisekundách u volby automatického zvýšení"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Určuje, jestli je Marco správcem funkcí kompozitoru."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Určuje, jestli mohou aplikace nebo systém generovat slyšitelné zvukové "
+"znamení; ve spojení s \"vizuálním zvonkem\" může být použito k povolení "
+"tichého zvukového znamení."
+
+# misfeatures?
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Zakázat \"pseudovlastnosti\", které jsou potřeba pro staré nebo chybné "
+"aplikace"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Povolit vizuální zvonek"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Je-li \"true\" a režim aktivace je buď \"sloppy\" nebo \"mouse\", pak bude "
+"aktivní okno automaticky po zpoždění zvýšeno (zpoždění je určeno v klíči "
+"auto_raise_delay). Netýká se klikání na okno za účelem aktivace, ani "
+"přechodu na okno během akce táhnutí a puštění."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Je-li \"true\", ignorovat volbu titlebar_font a použít standardní písmo "
+"aplikací u nadpisů oken."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Je-li \"true\", bude Marco dávat uživateli méně zpětné vazby používáním "
+"drátových rámů, nepoužíváním animací nebo jinými způsoby. Pro mnoho "
+"uživatelů to znamená výrazné snížení použitelnosti, ale také možnost, že "
+"staré aplikace budou nadále pracovat. I pro terminálové servery se může "
+"jednat o přístupný kompromis. Funkce drátových rámů je ale zakázána, pokud "
+"je povoleno zpřístupnění."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Je-li \"true\", pracuje Marco s aplikacemi namísto oken. Toto pojetí je "
+"trochu abstraktní, ale obecně systém založený na aplikacích připomíná více "
+"Mac a méně Windows. V případě aktivace okna v režimu založeném na aplikacích "
+"jsou zvýšena všechna okna aplikace. V režimu založeném na aplikacích také "
+"nejsou oknům v jiných aplikacích předávána aktivující kliknutí. Režim "
+"založený na aplikacích je ovšem momentálně povětšinou neimplementován."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Je-li \"true\", dávat přednost menšímu používání prostředků před "
+"použitelností"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modifikátor, který použít pro modifikované akce kliknutí na okno"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Název plochy"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Počet ploch"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Počet ploch. Musí být více než nula a má pevné maximum (aby nebylo možno "
+"vyřadit prostředí z provozu žádostí o příliš mnoho ploch)."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Spustit definovaný příkaz"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Nastavte na \"true\", chcete-li změnit velikost pravým tlačítkem a zobrazit "
+"nabídku prostředním tlačítkem při držení klávesy zadané v "
+"\"mouse_button_modifier\"; nastavte na \"false\", požadujete-li opačnou "
+"funkci."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Nastavením této volby na \"false\", což nelze v žádném případě doporučit, "
+"dojde k oddělení zvyšování od ostatních uživatelských akcí a požadavky od "
+"aplikací na zvýšení oken budou ignorovány. Viz <http://bugzilla.gnome.org/"
+"show_bug.cgi?id=445447#c6>. I když je tato volba nastavena na \"false\", "
+"stále je možné zvýšit okna klávesou Alt a kliknutím levým tlačítkem myši "
+"kdekoliv v okně, běžným kliknutím na okraj okna, nebo např. požadavkem na "
+"aktivaci od appletů seznamu úloh. Tato volba je aktuálně zakázána v režimu "
+"click-to-focus. Vemte na vědomí, že výčet způsobů, jak zvýšit okno, pokud je "
+"raise_on_click \"false\", nezahrnuje požadavky od aplikací na zvyšení okna, "
+"ty jsou vždy ignorovány. Jste-li vývojářem aplikace a stěžují-li si vaši "
+"uživatelé, že aplikace nepracuje se zakázáním této volby, sdělte jim, že se "
+"jedná o jejich chybu a že je nutné změnit volbu na \"true\", nebo se s "
+"chybou srovnat."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Některé aplikace nerespektují specifikace způsobem, který má za následek "
+"chybné vlastnosti správce oken. Tato volba umístí Marco do zcela "
+"korektního režimu, což uživateli poskytne konzistentnější uživatelské "
+"rozhraní, pokud tedy není zapotřebí spouštět jakékoliv chybně se chovající "
+"aplikace."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Systémový zvonek je slyšet"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Sděluje Marco, jak implementovat vizuální znamení o zazvonění systémového "
+"zvonku nebo jiného aplikačního znamení zvonku. Momentálně existují dvě "
+"platné hodnoty, \"fullscreen\", která způsobí černo-bílé bliknutí celé "
+"obrazovky, a \"frame_flash\", která způsobí blikání záhlaví aplikace "
+"posílající signál zvonku. Není-li aplikace, která poslala signál zvonku, "
+"známá (což je obvykle případ výchozího systémové zvukového znamení), bliká "
+"záhlaví aktuálního okna."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Klíče /apps/marco/global_keybindings/run_command_N definují klávesové "
+"zkratky, které odpovídají těmto příkazům. Stisknutí klávesové zkratky pro "
+"run_command_N spustí command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Klíč /apps/marco/global_keybindings/run_command_screenshot definuje "
+"klávesovou zkratku, která způsobí spuštění příkazu určeného tímto nastavením."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Klíč /apps/marco/global_keybindings/run_command_window_screenshot "
+"definuje klávesovou zkratku, která způsobí spuštění příkazu určeného tímto "
+"nastavením."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Klávesová zkratka, která spustí příkaz s odpovídajícím číslem v /apps/"
+"marco/keybinding_commands. Formát má podobu \"&lt;Control&gt;a\" nebo "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1. Analyzátor je poměrně velkorysý a dovoluje "
+"malá i velká písmena a zkratky jako \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". "
+"Pokud volbu nastavíte na speciální řetězec \"disabled\", pak pro tuto akci "
+"nebude žádná klávesová zkratka."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Název pracovní plochy."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Příkaz zachycení obrazovky"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Motiv určuje vzhled okrajů okna, záhlaví okna atd."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Zpoždění před zvýšením okna, je-li auto_raise nastaveno na \"true\". "
+"Zpoždění je uvedeno v tisícinách sekundy."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Režim aktivace oken ukazuje, jak jsou okna aktivována. Má tři možné hodnoty; "
+"\"click\" znamená, že okna jsou aktivována kliknutím, \"sloppy\" znamená, že "
+"okna jsou aktivována, když se do nich přesune myš, a \"mouse\" znamená, že "
+"okna jsou aktivována, když se do nich přesune myš, a deaktivována, když je "
+"opustí."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Příkaz zachycení obrázku okna"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Tato volba určuje důsledek dvojitého kliknutí na záhlaví okna. Momentálně "
+"platnými volbami jsou \"toggle_shade\", která okno svine/rozvine, "
+"\"toggle_maximize\", která okno maximalizuje nebo zruší maximalizaci, "
+"\"toggle_maximize_horizontally\" a \"toggle_maximize_vertically\", které "
+"maximalizují/zruší maximalizaci pouze v daném směru, \"minimize\", která "
+"okno minimalizuje, \"shade\", která okno svine, \"menu\", která zobrazí "
+"nabídku okna, \"lower\", která umístí okno za všechna ostatní, a \"none\", "
+"která nezpůsobí nic."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Tato volba určuje důsledek kliknutí prostředním tlačítkem myši na záhlaví "
+"okna. Momentálně platnými volbami jsou \"toggle_shade\", která okno svine/"
+"rozvine, \"toggle_maximize\", která okno maximalizuje nebo zruší "
+"maximalizaci, \"toggle_maximize_horizontally\" a \"toggle_maximize_vertically"
+"\", které maximalizují/zruší maximalizaci pouze v daném směru, \"minimize\", "
+"která okno minimalizuje, \"shade\", která okno svine, \"menu\", která "
+"zobrazí nabídku okna, \"lower\", která umístí okno za všechna ostatní, a "
+"\"none\", která nezpůsobí nic."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Tato volba určuje důsledek kliknutí pravým tlačítkem myši na záhlaví okna. "
+"Momentálně platnými volbami jsou \"toggle_shade\", která okno svine/rozvine, "
+"\"toggle_maximize\", která okno maximalizuje nebo zruší maximalizaci, "
+"\"toggle_maximize_horizontally\" a \"toggle_maximize_vertically\", které "
+"maximalizují/zruší maximalizaci pouze v daném směru, \"minimize\", která "
+"okno minimalizuje, \"shade\", která okno svine, \"menu\", která zobrazí "
+"nabídku okna, \"lower\", která umístí okno za všechna ostatní, a \"none\", "
+"která nezpůsobí nic."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Tato volba poskytuje dodatečnou kontrolu nad tím, jakým způsobem se nově "
+"vytvořená okna stanou aktivními. Má dvě možné hodnoty, \"smart\" použije "
+"běžný uživatelův režim aktivace, \"strict\" má za následek neaktivnost oken "
+"spouštěných z terminálu."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Zapíná vizuální znamení v okamžiku, kdy aplikace nebo systém vyvolá \"zvonek"
+"\" nebo zvukové znamení (pípnutí); užitečné pro osoby s poškozeným sluchem a "
+"k použití v hlučném prostředí."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Použít v nadpisech oken standardní systémové písmo"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Typ vizuálního zvonku"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Jestli má zvyšování být vedlejší efekt jiných interakcí s uživatelem"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Zda měnit velikost pravým tlačítkem"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Režim aktivace oken"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Písmo nadpisu oken"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Použití: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Zavřít okno"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Nabídka okna"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimalizovat okno"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximalizovat okno"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Obnovit okno"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Svinout okno"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Rozvinout okno"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Držet okno navrchu"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Odstranit okno svrchu"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Vždy na viditelné ploše"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Umístit okno jen na jednu plochu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimalizovat"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximalizovat"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Zrušit ma_ximalizaci"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Sv_inout"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Rozv_inout"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Přesunout"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Z_měnit velikost"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Přesunout záhlaví okna na _obrazovku"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "_Vždy navrchu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Vžd_y na viditelné ploše"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Jen na této ploše"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Přesunout na plochu v_levo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Přesunout na plochu vp_ravo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Přesunout na plochu na_hoře"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Přesunout na plochu _dole"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Zavřít"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Plocha %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Plocha 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Plocha %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Přes_unout na jinou plochu"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d × %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "nahoře"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "dole"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "vlevo"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "vpravo"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "geometrie rámu nedefinuje rozměr \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "geometrie rámu nedefinuje rozměr \"%s\" okraje \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Poměr stran tlačítka %g není přiměřený"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Geometrie rámu nedefinuje velikost tlačítek"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Přechody by měly mít alespoň dvě barvy"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specifikace GTK barvy musí mít stav v hranatých závorkách, např. gtk:fg"
+"[NORMAL], kde NORMAL je stav; nelze analyzovat \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specifikace GTK barvy musí mít za stavem hranatou závorku, např. gtk:fg"
+"[NORMAL], kde NORMAL je stav; nelze analyzovat \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Nerozuměno stavu \"%s\" ve specifikaci barvy"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Nerozuměno barevné složce \"%s\" ve specifikaci barvy"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Formát prolínání má podobu \"prolínání/barva_pozadí/barva_popředí/alfa\", \"%"
+"s\" tomuto formátu neodpovídá"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Nelze analyzovat hodnotu alfa \"%s\" v prolínající barvě"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Hodnota alfa \"%s\" v prolínající barvě není mezi 0.0 a 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Formát stínu má podobu \"stín/základní_barva/faktor\", \"%s\" tomuto formátu "
+"neodpovídá"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Nelze analyzovat faktor stínu \"%s\" ve stínované barvě"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Faktor stínu \"%s\" ve stínované barvě je záporný"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Nelze analyzovat barvu \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Souřadnicový výraz obsahuje nepovolený znak \"%s\""
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Souřadnicový výraz obsahuje číslo s pohyblivou řádovou čárkou \"%s\", které "
+"nelze analyzovat"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Souřadnicový výraz obsahuje celé číslo \"%s\", které nelze analyzovat"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "Souřadnicový výraz obsahuje na začátku textu neznámý operátor: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Souřadnicový výraz byl prázdný nebo mu nebylo rozuměno"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Souřadnicový výraz způsobil dělení nulou"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Souřadnicový výraz chce použít operátor mod na číslo s pohyblivou řádovou "
+"čárkou"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Souřadnicový výraz má na místě, kde byl očekáván operand, operátor \"%s\""
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Souřadnicový výraz má operand tam, kde byl očekáván operátor"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Souřadnicový výraz končí operátorem místo operandu"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Souřadnicový výraz má operátor \"%c\" za operátorem \"%c\" bez operandu "
+"umístěného mezi nimi"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Souřadnicový výraz má neznámou proměnnou nebo konstantu \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Analyzátor souřadnicových výrazů přeplnil svou vyrovnávací paměť."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Souřadnicový výraz má pravou závorku bez levé závorky"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Souřadnicový výraz má levou závorku bez pravé závorky"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Souřadnicový výraz zřejmě nemá žádné operátory nebo operandy"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Motiv obsahoval výraz, který způsobil chybu: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"U tohoto stylu rámu musí být zadáno <button function=\"%s\" state=\"%s\" "
+"draw_ops=\"cokoliv\"/>"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Chybí <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"cokoliv\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Nelze načíst motiv \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Není nastaveno <%s> motivu \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"U typu okna \"%s\" motivu \"%s\" není nastaven typ rámu, přidejte prosím "
+"prvek <window type=\"%s\" style_set=\"cokoliv\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Uživatelem definované konstanty musí začínat velkým písmenem; \"%s\" toto "
+"nesplňuje"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstanta \"%s\" již byla definována"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Chybí atribut \"%s\" v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Řádek %d znak %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atribut \"%s\" opakován dvakrát v jednom prvku <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atribut \"%s\" je v prvku <%s> v tomto kontextu neplatný"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" nelze analyzovat jako celé číslo"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Nerozuměno koncovým znakům \"%s\" v řetězci \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Celé číslo %ld musí být kladné"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Celé číslo %ld je příliš velké, aktuální maximum je %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Nelze analyzovat \"%s\" jako číslo s pohyblivou řádovou čárkou"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Booleovské hodnoty musí být \"true\" nebo \"false\", nikoliv \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Úhel musí být mezi 0.0 a 360.0, měl hodnotu %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa musí být mezi 0.0 (neviditelný) a 1.0 (zcela neprůhledný), měla hodnotu "
+"%g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Neplatné měřítko nadpisu \"%s\" (musí být jedno z xx-small, x-small, medium, "
+"large, x-large, xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s>: název \"%s\" použit podruhé"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s>: rodič \"%s\" nebyl definován"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s>: geometrie \"%s\" nebyla definována"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> musí určit buď geometrii, nebo rodiče, který má geometrii"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Aby měla hodnota alfa význam, je nutné určit pozadí"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Neznámý typ \"%s\" v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Neznámý style_set \"%s\" v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Typu okna \"%s\" již byla přiřazena sada stylů"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Prvek <%s> není povolen pod <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"U tlačítek nelze zadat \"button_width\"/\"button_height\" a zároveň "
+"\"aspect_ratio\""
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Vzdálenost \"%s\" není známa"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Poměr stran \"%s\" není znám"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Okraj \"%s\" není znám"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Chybí atribut \"start_angle\" nebo \"from\" v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Chybí atribut \"extent_angle\" nebo \"to\" v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Nerozuměno hodnotě \"%s\" typu přechodu"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Nerozuměno typu výplně \"%s\" prvku <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Nerozuměno stavu \"%s\" prvku <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Nerozuměno stínu \"%s\" prvku <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Nerozuměno šipce \"%s\" prvku <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nebyly definovány žádné <draw_ops> nazvané \"%s\""
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Vložení draw_ops \"%s\" na tomto místě by vytvořilo zacyklený odkaz"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Neznámá pozice položky rámu \"%s\""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Styl rámu již má položku na pozici %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nebyly definované žádné <draw_ops> s názvem \"%s\""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Neznámá funkce tlačítka \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Funkce tlačítka \"%s\" v této verzi neexistuje (%d, potřeba je %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Neznámý stav tlačítka \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Styl rámu již má tlačítko funkce %s stavu %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" není platná hodnota atributu focus"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" není platná hodnota atributu state"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Nebyl definován styl \"%s\""
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" není platná hodnota atributu resize"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Atribut \"resize\" by neměl být na prvku <%s> maximalizovaného/svinutého "
+"stavu"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "Atribut \"resize\" by neměl být na prvku <%s> maximalizovaného stavu"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "U state %s resize %s focus %s již byl definován styl"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "U state %s focus %s již byl definován styl"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nelze mít dvě draw_ops u prvku <piece> (motiv definoval atribut draw_ops i "
+"prvek <draw_ops>, nebo definoval dva prvky)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nelze mít dvě draw_ops u prvku <button> (motiv definoval atribut draw_ops i "
+"prvek <draw_ops>, nebo definoval dva prvky)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nelze mít dvě draw_ops u prvku <menu_icon> (motiv definoval atribut draw_ops "
+"i prvek <draw_ops>, nebo definoval dva prvky)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Vnější prvek motivu musí být <marco_theme>, nikoliv <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Prvek <%s> není dovolen v prvku name/author/date/description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Prvek <%s> není dovolen v prvku <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Prvek <%s> není dovolen v prvku distance/border/aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Prvek <%s> není dovolen v prvku operace kreslení"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Prvek <%s> není dovolen v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "U položky rámu neposkytnuty draw_ops"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "U tlačítka neposkytnuty draw_ops"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "V prvku <%s> není dovolen žádný text"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> u tohoto motivu definováno dvakrát"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Nelze nalézt platný soubor motivu %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Soubor motivu %s neobsahoval kořenový prvek <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Okna"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Okna/K přemístění"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Okna/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Okna/_Modální dialog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Okna/_Nástroje"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Okna/Spouštěcí _obrazovka"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Okna/_Horní dok"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Okna/Dolní do_k"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Okna/_Levý dok"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Okna/_Pravý dok"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Okna/_Všechny doky"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Okna/Pr_acovní plocha"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Toto je ukázková zpráva v ukázkovém dialogu"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Falešná položka nabídky %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Okno jen s okrajem"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Lišta"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normální okno aplikace"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialogové okno"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modální dialogové okno"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta nástrojů"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Odtržení nabídky"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Okraj"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test rozložení tlačítek %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekund na nakreslení jednoho rámu okna"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Použití: marco-theme-viewer [NÁZEVMOTIVU]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Chyba při načítání motivu: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Načten motiv \"%s\" za %g sekund\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Normální písmo nadpisu"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Malé písmo nadpisu"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Velké písmo nadpisu"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Rozložení tlačítek"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Test výkonnosti"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Sem patří nadpis okna"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Nakresleno %d rámů za %g sekund na straně klienta (%g milisekund na rám) a %"
+"g sekund reálného času včetně zdrojů serveru X (%g milisekund na rám)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "test výrazu umístění vrátil TRUE, ale nastavil chybu"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "test výrazu umístění vrátil FALSE, ale nenastavil chybu"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Byla očekávána chyba, ale nebyla přijata"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Byla očekávána chyba %d, ale bylo přijato %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Chyba nebyla očekávána, ale byla vrácena: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "Hodnota x byla %d, bylo očekáváno %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "Hodnota y byla %d, bylo očekáváno %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "Zpracováno %d výrazů souřadnic za %g sekund (průměr %g sekund)\n"
diff --git a/po/cy.po b/po/cy.po
new file mode 100644
index 00000000..7338b8f9
--- /dev/null
+++ b/po/cy.po
@@ -0,0 +1,3804 @@
+# marco yn Gymraeg.
+# This file is distributed under the same license as the marco package.
+# Dafydd Harries <[email protected]>, 2003 2004.
+# Keith Willoughby <[email protected]>, 2003.
+#
+# rhysj: Wedi gyrru Cysill dros y cyfan ar gyfer MATE 2.14.
+# OND mae nifer o gyfieithiadau sydd angen eu gwella yn y ffeil hon -
+# fedrai'n dda iawn pe bai rhywun yn medru edrych ar bob llinyn yn
+# ei dro.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-02-05 21:37+0000\n"
+"PO-Revision-Date: 2008-02-05 21:12-0000\n"
+"Last-Translator: Rhys Jones <[email protected]>\n"
+"Language-Team: Cymraeg <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Penbwrdd"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Rheolaeth Ffenestri"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Cais gwybodaeth ffenestr anhysbys: %d"
+
+#: ../src/core/delete.c:67 ../src/core/delete.c:94
+#: ../src/ui/marco-dialog.c:50 ../src/ui/theme-parser.c:481
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Methu dehongli \"%s\" fel cyfanrif"
+
+#: ../src/core/delete.c:74 ../src/core/delete.c:101
+#: ../src/ui/marco-dialog.c:57 ../src/ui/theme-parser.c:490
+#: ../src/ui/theme-parser.c:545
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Methu deall nodau dilynol \"%s\" yn y llinyn \"%s\""
+
+#: ../src/core/delete.c:132
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Methu dehongli'r neges \"%s\" o broses ddeialog\n"
+
+#: ../src/core/delete.c:267
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Gwall wrth ddarllen o broses dangos deialog: %s\n"
+
+#: ../src/core/delete.c:350
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Gwall wrth lansio marco-dialog er mwyn gofyn ynghylch terfynu rhaglen: % "
+"s\n"
+
+#: ../src/core/delete.c:459
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Methu cyrchu'r enw gwesteiwr: %s\n"
+
+#: ../src/core/display.c:256
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Angen yr estyniad %s er mwyn cyfansoddi, ond mae ar goll"
+
+#: ../src/core/display.c:438
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Methu agor y dangosydd System Ffenestri X '%s'\n"
+
+#: ../src/core/errors.c:271
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Collwyd y cysylltiad i'r dangosydd '%s';\n"
+"mwy na thebyg fe derfynwyd y gweinydd X neu fe wnaethoch chi\n"
+"derfynu'r rheolwr ffenestri.\n"
+
+#: ../src/core/errors.c:278
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Gwall IO marwol %d (%s) ar y dangosydd '%s'.\n"
+
+#: ../src/core/keybindings.c:1087
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Mae rhaglen arall yn defnyddio'r fysell %s gyda’r addasyddion %x fel "
+"rhwymiad eisoes\n"
+
+#: ../src/core/keybindings.c:2733
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+"Gwall wrth lansio marco-dialog er mwyn argraffu gwall ynghylch gorchymyn: "
+"%s\n"
+
+#: ../src/core/keybindings.c:2838
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Does dim gorchymyn %d wedi ei ddiffinio.\n"
+
+#: ../src/core/keybindings.c:3866
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Does dim gorchymyn wedi ei ddiffinio.\n"
+
+#: ../src/core/main.c:112
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Hawlfraint (C) 2001-2008 Havoc Pennington, Red Hat, Inc., ac eraill\n"
+"Meddalwedd rhydd yw hwn; gweler y ffynhonnell ar gyfer amodau copïo.\n"
+"Does DIM gwarant; nid hyd yn oed awgrym o FASNACHEIDDRWYDD nag ADDASRWYDD "
+"AT\n"
+"BWRPAS PENODOL.\n"
+
+#: ../src/core/main.c:239
+msgid "Disable connection to session manager"
+msgstr "Analluogi cysylltiad i'r rheolwr sesiwn"
+
+#: ../src/core/main.c:245
+msgid "Replace the running window manager with Marco"
+msgstr "Amnewid y rheolwr ffenestri sy'n rhedeg gyda Marco"
+
+#: ../src/core/main.c:251
+msgid "Specify session management ID"
+msgstr "Penodi ID rheolaeth sesiwn"
+
+#: ../src/core/main.c:256
+msgid "X Display to use"
+msgstr "Dangosydd X i'w defnyddio"
+
+#: ../src/core/main.c:262
+msgid "Initialize session from savefile"
+msgstr "Cychwyn sesiwn o ffeil"
+
+#: ../src/core/main.c:268
+msgid "Print version"
+msgstr "Argraffu fersiwn"
+
+#: ../src/core/main.c:274
+msgid "Make X calls synchronous"
+msgstr "Gwneud galwadau X yn gydamserol"
+
+#: ../src/core/main.c:425
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Methwyd chwilio'r cyfeiriadur thema: %s\n"
+
+#: ../src/core/main.c:441
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Methu canfod thema! Sicrhewch fod %s yn bodoli ac yn cynnwys y themâu "
+"arferol.\n"
+
+#: ../src/core/main.c:513
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Methu ailddechrau: %s\n"
+
+#: ../src/core/prefs.c:434
+#, c-format
+msgid "Type of %s was not integer"
+msgstr "Nid cyfanrif oedd math %s"
+
+#: ../src/core/prefs.c:572 ../src/core/prefs.c:600 ../src/core/prefs.c:616
+#: ../src/core/prefs.c:632 ../src/core/prefs.c:648 ../src/core/prefs.c:664
+#: ../src/core/prefs.c:680 ../src/core/prefs.c:696 ../src/core/prefs.c:716
+#: ../src/core/prefs.c:732 ../src/core/prefs.c:748 ../src/core/prefs.c:766
+#: ../src/core/prefs.c:782 ../src/core/prefs.c:801 ../src/core/prefs.c:817
+#: ../src/core/prefs.c:852 ../src/core/prefs.c:868 ../src/core/prefs.c:885
+#: ../src/core/prefs.c:901 ../src/core/prefs.c:917 ../src/core/prefs.c:933
+#: ../src/core/prefs.c:949 ../src/core/prefs.c:964 ../src/core/prefs.c:979
+#: ../src/core/prefs.c:994 ../src/core/prefs.c:1010 ../src/core/prefs.c:1026
+#: ../src/core/prefs.c:1042 ../src/core/prefs.c:1058
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Y mae allwedd MateConf \"%s\" wedi ei osod yn fath annilys\n"
+
+#: ../src/core/prefs.c:1103
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Nid yw \"%s\" sydd wedi ei ddarganfod yn y gronfa cyfluniad yn werth dilys "
+"ar gyfer addasydd botwm llygoden\n"
+
+#: ../src/core/prefs.c:1127 ../src/core/prefs.c:1148 ../src/core/prefs.c:1705
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Y mae allwedd MateConf '%s' wedi ei gosod yn werth annilys\n"
+
+#: ../src/core/prefs.c:1277
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+"range 1..128\n"
+msgstr ""
+"Nid yw %d, sydd wedi ei storio yn allwedd MateConf %s, yn faint cyrchwr "
+"rhesymol; rhaid iddo fod o fewn yr ystod 1..128\n"
+
+#: ../src/core/prefs.c:1357
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Ni all gramadegu'r disgrifiad ffont \"%s\" o'r allwedd MateConf %s\n"
+
+#: ../src/core/prefs.c:1599
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+"Nid yw %d sydd wedi ei gadw tu fewn i allwedd MateConf %s yn nifer rhesymol o "
+"weithfannau, %d yw'r cyfanswm cyfredol\n"
+
+#: ../src/core/prefs.c:1659
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Mae cywiriadau ar gyfer rhaglenni toredig wedi ei analluogi. Efallai ni fydd "
+"rhai rhaglenni yn ymddwyn yn gywir.\n"
+
+#: ../src/core/prefs.c:1732
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr ""
+"Y mae %d, sydd wedi ei gadw tu fewn i allwedd MateConf %s, tu allan o'r "
+"amrediad 0 i %d\n"
+
+#: ../src/core/prefs.c:1881
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Gwall wrth osod y nifer o weithfannau i %d: %s\n"
+
+#: ../src/core/prefs.c:2246 ../src/core/prefs.c:2780 ../src/ui/menu.c:199
+#, c-format
+msgid "Workspace %d"
+msgstr "Gweithfan %d"
+
+#: ../src/core/prefs.c:2276 ../src/core/prefs.c:2446
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Nid yw \"%s\" sydd wedi ei ddarganfod yn y gronfa cyfluniad yn werth dilys "
+"ar gyfer y rhwymiad bysell \"%s\"\n"
+
+#: ../src/core/prefs.c:2861
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Gwall wrth osod enw gweithle %d i \"%s\": %s\n"
+
+#: ../src/core/screen.c:410
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Mae sgrin %d ar y dangosydd '%s' yn annilys\n"
+
+#: ../src/core/screen.c:426
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Y mae gan sgrin %d ar y dangosydd \"%s\" drefnydd ffenestri yn barod; "
+"ceisiwch yr opsiwn --replace i amnewid y rheolydd ffenestri cyfredol.\n"
+
+#: ../src/core/screen.c:453
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Wedi methu cael dewisiad rheolydd ffenestri ar sgrin %d dangosydd \"%s\"\n"
+
+#: ../src/core/screen.c:511
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Mae gan y sgrin %d ar y dangosydd \"%s\" rheolydd ffenestri eisoes\n"
+
+#: ../src/core/screen.c:721
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Methu rhyddhau sgrin %d ar y dangosydd \"%s\"\n"
+
+#: ../src/core/session.c:826 ../src/core/session.c:833
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Methu creu cyfeiriadur '%s': %s\n"
+
+#: ../src/core/session.c:843
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Nid oedd modd agor y ffeil sesiwn '%s' ar gyfer ysgrifennu: %s\n"
+
+#: ../src/core/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Gwall wrth ysgrifennu ffeil sesiwn '%s': %s\n"
+
+#: ../src/core/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Gwall wrth gau ffeil sesiwn '%s': %s\n"
+
+#: ../src/core/session.c:1075
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Methu darllen ffeil sesiwn wedi cadw %s: %s\n"
+
+#: ../src/core/session.c:1110
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Methu dehongli ffeil sesiwn wedi cadw: %s\n"
+
+#: ../src/core/session.c:1159
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "gwelwyd priodwedd <marco_session> ond mae gennym ID y sesiwn eisoes"
+
+#: ../src/core/session.c:1172
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "Priodwedd anhysbys %s gan elfen <marco_session>"
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "nested <window> tag"
+msgstr "tag <window> nythol"
+
+#: ../src/core/session.c:1247 ../src/core/session.c:1279
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Priodwedd anhysbys %s gan elfen <window>"
+
+#: ../src/core/session.c:1351
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Priodwedd anhysbys %s gan elfen <maximized>"
+
+#: ../src/core/session.c:1411
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Priodwedd anhysbys %s gan elfen <geometry>"
+
+#: ../src/core/session.c:1431
+#, c-format
+msgid "Unknown element %s"
+msgstr "Elfen anhysbys %s"
+
+#: ../src/core/session.c:1868
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Gwall wrth redeg marco-dialog i rybuddio am raglenni sydd ddim yn cynnal "
+"rheolaeth sesiwn: %s\n"
+
+#: ../src/core/util.c:98
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Methu agor cofnod datnamu: %s\n"
+
+#: ../src/core/util.c:108
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Methu defnyddio fdopen() ar y cofnod %s: %s\n"
+
+#: ../src/core/util.c:114
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Agorwyd cofnod %s\n"
+
+#: ../src/core/util.c:133 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Crynhowyd Marco heb gynhaliaeth ar gyfer modd llafar\n"
+
+#: ../src/core/util.c:231
+msgid "Window manager: "
+msgstr "Rheolydd ffenestri: "
+
+#: ../src/core/util.c:379
+msgid "Bug in window manager: "
+msgstr "Nam yn y rheolydd ffenestri: "
+
+#: ../src/core/util.c:408
+msgid "Window manager warning: "
+msgstr "Rhybudd rheolydd ffenestri: "
+
+#: ../src/core/util.c:432
+msgid "Window manager error: "
+msgstr "Gwall rheolydd ffenestri:"
+
+#: ../src/core/window-props.c:192
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Gosododd y rhaglen _NET_WM_PID annilys: %lu\n"
+
+#: ../src/core/window-props.c:324
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (ar %s)"
+
+#: ../src/core/window-props.c:1406
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+"Cafodd ffenestr WM_TRANSIENT_FOR 0x%lx, sy'n annilys, ei benodi ar gyfer %"
+"s.\n"
+
+#. first time through
+#: ../src/core/window.c:5650
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Y mae ffenestr %s yn gosod SM_CLIENT_ID ar ei hunan, yn lle ar y ffenestr "
+"WM_CLIENT_LEADER fel y penodir yn yr ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6215
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Mae'r ffenest %s yn gosod awgrym MWM yn dynodi ni ellir newid ei faint, ond "
+"yn gosod maint lleiaf %d x %d a maint mwyaf %d x %d; nid yw hyn yn gwneud "
+"llawer o synnwyr.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Mae gan y ffenest 0x%lx y briodwedd %s\n"
+"a ddisgwyliwyd i gael y math %s fformat %d\n"
+"ond sydd a'r math %s fformat %d n_items %d.\n"
+"Mae hyn mwy na thebyg yn nam rhaglen, ac nid yn nam rheolydd ffenestri.\n"
+"Mae gan y ffenest teitl=\"%s\" dosbarth=\"%s\" enw=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Roedd y briodwedd %s ar y ffenest 0x%lx yn cynnwys UTF-8 annilys\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Roedd y briodwedd %s ar y ffenest 0x%lx yn cynnwys UTF-8 annilys ar gyfer "
+"eitem %d yn y rhestr\n"
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Heb ei weithredoli) Llywio yn gweithio yn nhermau rhaglenni nid ffenestri"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Llinyn i ddisgrifio ffont barau teitl y ffenestr. Caiff y maint yn y "
+"disgrifiad ond ei ddefnyddio os yw'r opsiwn titlebar_font_size yn 0. Hefyd, "
+"caiff yr opsiwn ei analluogi os yw titlebar_uses_desktop_font yn wir."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Gweithred pan mae clic dwbl ar far teitl"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Gweithred wrth wneud clic botwm canol ar y bar teitl"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Gweithred wrth wneud clic botwm dde ar y bar teitl"
+
+#: ../src/marco.schemas.in.h:6
+msgid "Activate window menu"
+msgstr "Gweithredu'r ddewislen ffenest"
+
+#: ../src/marco.schemas.in.h:7
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Trefniant y botymau ar y bar teitl"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"Trefniant botymau ar y bar teitl. Dylai'r gwerth yma fod yn llinyn megis "
+"\"menu:minimize,maximize,close\"; Mae'r colon yn gwahanu cornel chwith y "
+"ffenest o'r gornel dde, ac mae enwau'r botymau wedi eu gwahanu gan goma. Ni "
+"chaniateir botymau dyblyg. Anwybyddir enwau botymau ni adnabyddir fel y "
+"gellir ychwanegu botymau newydd mewn fersiynau dyfodol o Marco heb dorri "
+"fersiynau hŷn."
+
+#: ../src/marco.schemas.in.h:9
+msgid "Automatically raises the focused window"
+msgstr "Codi'r ffenest wedi ffocysu'n awtomatig"
+
+#: ../src/marco.schemas.in.h:10
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Fe fydd clocio ffenest gan ddal y fysell addasu hon yn symud y ffenest (clic "
+"chwith), newid maint y ffenest (clic ganol), neu'n dangos y ddewislen "
+"ffenest (clic dde). Mynegir yr addasydd fel \"&lt;Alt&gt;\" neu \"&lt;"
+"Super&gt;\" er enghraifft."
+
+#: ../src/marco.schemas.in.h:11
+msgid "Close window"
+msgstr "Cau ffenest"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Commands to run in response to keybindings"
+msgstr "Gorchmynion i'w gweithredu yn ôl rhwymiadau bysell"
+
+#: ../src/marco.schemas.in.h:13
+msgid "Compositing Manager"
+msgstr "Rheolwr Cyfansawdd"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Control how new windows get focus"
+msgstr "Rheoli sut mae ffenestri newydd yn cael ffocws"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Current theme"
+msgstr "Thema gyfredol"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Saib mewn milfedau eiliad ar gyfer yr opsiwn codi awtomatig"
+
+#: ../src/marco.schemas.in.h:17
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Penderfynu a yw Marco yn rheolwr cyfansawdd"
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Penodi a ydi rhaglenni neu'r system yn gallu gwneud 'bîp' clywadwy; gellir "
+"ei ddefnyddio efo 'cloch weladwy' er mwyn caniatáu 'bîpiau' distaw."
+
+#: ../src/marco.schemas.in.h:19
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Analluogi cam-nodweddion sy'n angenrheidiol ar gyfer rhaglenni sy'n hen neu "
+"wedi torri"
+
+#: ../src/marco.schemas.in.h:20
+msgid "Enable Visual Bell"
+msgstr "Galluogi Cloch Weladwy"
+
+#: ../src/marco.schemas.in.h:21
+msgid "Hide all windows and focus desktop"
+msgstr "Cuddio pob ffenest a ffocysu'r penbwrdd"
+
+#: ../src/marco.schemas.in.h:22
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Os yn wir, ac mae'r modd ffocysu yn \"sloppy\" neu \"mouse\", mi fydd y "
+"ffenestr sydd wedi'i ffocysu yn codi'n awtomatig ar ôl y cyfnod o oedi sy'n "
+"cael ei benderfynu gan yr allwedd auto_raise_delay. "
+
+#: ../src/marco.schemas.in.h:23
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Os yn wir, anwybyddu'r gosodiad titlebar_font, a defnyddio'r ffont safonol y "
+"rhaglen am deitlau ffenestr."
+
+#: ../src/marco.schemas.in.h:24
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Os yn wir, fe fydd marco yn rhoi llai o adborth i'r defnyddiwr drwy "
+"fframiau gwifren, osgoi animeiddio, a dulliau eraill. Mae hyn yn ostyngiad "
+"sylweddol mewn lefelau defnyddioldeb i'r rhan fwyaf o ddefnyddwyr, ond gall "
+"ganiatáu i hen raglenni a gweinyddwyr terfynell barhau i weithio. Fodd "
+"bynnag, mae'r fframiau gwifren wedi eu hanalluogi tra bod hygyrchedd ar "
+"waith."
+
+#: ../src/marco.schemas.in.h:25
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Os yn wir, mae Marco yn gweithredu yn nhermau rhaglenni yn hytrach na "
+"ffenestri. Mae hyn yn syniad eithaf haniaethol, ond yn gyffredinol mae'r "
+"modd rhaglen yn fwy tebyg i'r Mac ac yn llai tebyg i Windows. Wrth roi "
+"ffocws ar ffenestr yn y modd rhaglen, mi fydd pob ffenestr sy'n perthyn i'r "
+"rhaglen yn codi. Hefyd, yn y modd rhaglen, nid yw cliciau ffocws yn cael eu "
+"pasio i ffenestri rhaglenni eraill. Serch hynny, mae'r modd rhaglen heb ei "
+"gynnal i raddau helaeth ar hyn o bryd."
+
+#: ../src/marco.schemas.in.h:26
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Os yn wir, ffafrio defnyddio llai o adnoddau yn hytrach na hawster defnyddio"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Lower window below other windows"
+msgstr "Gostwng y ffenest o dan ffenestri eraill"
+
+#: ../src/marco.schemas.in.h:28
+msgid ""
+"Many actions (e.g. clicking in the client area, moving or resizing the "
+"window) normally raise the window as a side-effect. Setting this option to "
+"false, which is strongly discouraged, will decouple raising from other user "
+"actions, and ignore raise requests generated by applications. See http://"
+"bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+msgstr ""
+"Mae sawl gweithred (e.e. clicio yn ardal y cleient, symud neu newid maint y "
+"ffenestr) yn codi'r ffenestr fel arfel, fel sgîl-effaith. Mae gosod yr "
+"opsiwn yn ffals, yr ydym ni'n awgrymu'n gryf yn ei erbyn, yn dadgyplu codi "
+"ffenestr â gweddill gweithredoedd y defnyddiwr, a'n anwybyddu'r ceisiadau i "
+"godi'r ffenestr a gynhyrchir gan raglenni. Gweler http://bugzilla.gnome.org/"
+"show_bug.cgi?id=445447#c6."
+
+#: ../src/marco.schemas.in.h:29
+msgid "Maximize window"
+msgstr "Ehangu ffenest"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Maximize window horizontally"
+msgstr "Ehangu ffenest yn llorweddol"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Maximize window vertically"
+msgstr "Ehangu ffenest yn fertigol"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Minimize window"
+msgstr "Lleihau ffenest"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Modifier to use for modified window click actions"
+msgstr "Addaswr i ddefnyddio am weithredoedd clic ffenestr addasedig"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Symud yn ôl rhwng y paneli a'r penbwrdd ar unwaith"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "Symud yn ôl rhwng y paneli a'r penbwrdd gyda bryslen"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move backwards between windows immediately"
+msgstr "Symud yn ôl rhwng ffenestri ar unwaith"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move backwards between windows of an application immediately"
+msgstr "Symud tuag yn ôl rhwng ffenestri rhaglen ar unwaith"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move backwards between windows of an application with popup"
+msgstr "Symud tuag yn ôl rhwng ffenestri rhaglen gyda naidlen"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move between panels and the desktop immediately"
+msgstr "Symud rhwng y paneli a'r penbwrdd ar unwaith"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move between panels and the desktop with popup"
+msgstr "Symud rhwng y paneli a'r penbwrdd gyda bryslen"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move between windows immediately"
+msgstr "Symud rhwng ffenestri ar unwaith"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move between windows of an application immediately"
+msgstr "Symud rhwng ffenestri rhaglen ar unwaith"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move between windows of an application with popup"
+msgstr "Symud rhwng ffenestri rhaglen gyda naidlen"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move between windows with popup"
+msgstr "Symud rhwng ffenestri gyda bryslen"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move focus backwards between windows using popup display"
+msgstr "Symud ffocws yn ôl rhwng ffenestri gan ddangos bryslen"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window"
+msgstr "Symud ffenest"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window one workspace down"
+msgstr "Symud y ffenest un weithfan i lawr"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window one workspace to the left"
+msgstr "Symud y ffenest un weithfan i'r chwith"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window one workspace to the right"
+msgstr "Symud y ffenest un weithfan i'r dde"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window one workspace up"
+msgstr "Symud y ffenest un weithfan i fyny"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to east side of screen"
+msgstr "Symud y ffenest at ochr ddwyreiniol y sgrin"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to north side of screen"
+msgstr "Symud y ffenest at ochr ogleddol y sgrin"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Move window to north-east corner"
+msgstr "Symud y ffenest at ochr ogledd-ddwyreiniol y sgrin"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Move window to north-west corner"
+msgstr "Symud y ffenest at ochr ogledd-orllewinol y sgrin"
+
+#: ../src/marco.schemas.in.h:55
+msgid "Move window to south side of screen"
+msgstr "Symud y ffenest at ochr ddeheuol y sgrin"
+
+#: ../src/marco.schemas.in.h:56
+msgid "Move window to south-east corner"
+msgstr "Symud y ffenest at ochr de-ddwyreiniol y sgrin"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Move window to south-west corner"
+msgstr "Symud y ffenest at ochr de-orllewinol y sgrin"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Move window to west side of screen"
+msgstr "Symud y ffenest at ochr orllewinol y sgrin"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Move window to workspace 1"
+msgstr "Symud y ffenest at weithle 1"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Move window to workspace 10"
+msgstr "Symud y ffenest at weithle 10"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Move window to workspace 11"
+msgstr "Symud y ffenest at weithle 11"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Move window to workspace 12"
+msgstr "Symud y ffenest at weithle 12"
+
+#: ../src/marco.schemas.in.h:63
+msgid "Move window to workspace 2"
+msgstr "Symud y ffenest at weithle 2"
+
+#: ../src/marco.schemas.in.h:64
+msgid "Move window to workspace 3"
+msgstr "Symud y ffenest at weithle 3"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Move window to workspace 4"
+msgstr "Symud y ffenest at weithle 4"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Move window to workspace 5"
+msgstr "Symud y ffenest at weithle 5"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Move window to workspace 6"
+msgstr "Symud y ffenest at weithle 6"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Move window to workspace 7"
+msgstr "Symud y ffenest at weithle 7"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Move window to workspace 8"
+msgstr "Symud y ffenest at weithle 8"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Move window to workspace 9"
+msgstr "Symud y ffenest at weithle 9"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Name of workspace"
+msgstr "Enw'r weithfan"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Number of workspaces"
+msgstr "Nifer y gweithfannau"
+
+#: ../src/marco.schemas.in.h:73
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Nifer y gweithfannau. Rhaid ei fod yn fwy na sero, ac mae uchafswm "
+"gosodedig, er mwyn osgoi i chi ofyn am ormod o weithfannau ar y tro, fel na "
+"fedrwch chi ddefnyddio'r penbwrdd."
+
+#: ../src/marco.schemas.in.h:74
+msgid "Raise obscured window, otherwise lower"
+msgstr "Codi ffenest gudd, gostwng fel arall"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Raise window above other windows"
+msgstr "Codi ffenest uwchben y gweddill"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Resize window"
+msgstr "Ailfeintio ffenest"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Run a defined command"
+msgstr "Gweithredu gorchymyn gosodedig"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Run a terminal"
+msgstr "Dechrau terfynell"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Show the panel menu"
+msgstr "Dangos dewislen y panel"
+
+#: ../src/marco.schemas.in.h:80
+msgid "Show the panel run application dialog"
+msgstr "Dangos deialog gweithredu rhaglen y panel"
+
+#: ../src/marco.schemas.in.h:81
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Mae rhai rhaglenni yn anwybyddu manyleb y system ffenestri, sy'n achosi i'r "
+"rheolwr ffenestri fod yn anghyson. Mae'r opsiwn hwn yn rhoi Metactity mewn "
+"modd manwl gywir, sy'n rhoi rhyngwyneb mwy cyson, cyn belled nad oes rhaid "
+"rhedeg unrhyw raglenni anghyson."
+
+#: ../src/marco.schemas.in.h:82
+msgid "Switch to workspace 1"
+msgstr "Newid i weithfan 1"
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 10"
+msgstr "Newid i weithfan 10"
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace 11"
+msgstr "Newid i weithfan 11"
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace 12"
+msgstr "Newid i weithfan 12"
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace 2"
+msgstr "Newid i weithfan 2"
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace 3"
+msgstr "Newid i weithfan 3"
+
+#: ../src/marco.schemas.in.h:88
+msgid "Switch to workspace 4"
+msgstr "Newid i weithfan 4"
+
+#: ../src/marco.schemas.in.h:89
+msgid "Switch to workspace 5"
+msgstr "Newid i weithfan 5"
+
+#: ../src/marco.schemas.in.h:90
+msgid "Switch to workspace 6"
+msgstr "Newid i weithfan 6"
+
+#: ../src/marco.schemas.in.h:91
+msgid "Switch to workspace 7"
+msgstr "Newid i weithfan 7"
+
+#: ../src/marco.schemas.in.h:92
+msgid "Switch to workspace 8"
+msgstr "Newid i weithfan 8"
+
+#: ../src/marco.schemas.in.h:93
+msgid "Switch to workspace 9"
+msgstr "Newid i weithfan 9"
+
+#: ../src/marco.schemas.in.h:94
+msgid "Switch to workspace above this one"
+msgstr "Newid i'r weithfan uwchben hwn"
+
+#: ../src/marco.schemas.in.h:95
+msgid "Switch to workspace below this one"
+msgstr "Newid i'r weithfan islaw hwn"
+
+#: ../src/marco.schemas.in.h:96
+msgid "Switch to workspace on the left"
+msgstr "Newid i'r weithfan i'r chwith"
+
+#: ../src/marco.schemas.in.h:97
+msgid "Switch to workspace on the right"
+msgstr "Newid i'r weithfan i'r dde"
+
+#: ../src/marco.schemas.in.h:98
+msgid "System Bell is Audible"
+msgstr "Clock y System yn Glywadwy"
+
+#: ../src/marco.schemas.in.h:99
+msgid "Take a screenshot"
+msgstr "Tynnu sgrînlun"
+
+#: ../src/marco.schemas.in.h:100
+msgid "Take a screenshot of a window"
+msgstr "Tynnu sgrînlun o ffenest"
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Yn dweud sut dylid Marco hysbysu fod cloch y system neu gloch rhaglen "
+"wedi atseinio. Mae yna dwy werth dilys, \"fullscreen\" sydd yn creu fflach "
+"gwyn-du llawn sgrin, a \"frame_flash\" sy'n gweud i far teitl y rhaglen a "
+"anfonodd y gloch i fflachio. Os yw'r rhaglen a anfonodd y gloch yn anhysbys "
+"(sy'n digwydd ar gloch y system) y mae bar teitl y rhaglen canolbwyntiol yn "
+"fflachio."
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Mae'r allweddi /apps/marco/global_keybindings/run_command_N yn diffinio "
+"bysellrhwymiadau sy'n cyferbynnu i'r gorchmynion hyn. Fe fydd gwasgu'r "
+"bysellrwymiad ar gyfer run_command_N yn gweithredu command_N."
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Mae'r allwedd /apps/marco/global_keybindings/run_command_screenshot yn "
+"diffinio bysellrwymiad sy'n achosi i'r gorchymyn a benodir gan y gosodiad "
+"hwn i gael ei weithredi."
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Mae'r allwedd /apps/marco/global_keybindings/"
+"run_command_window_screenshot yn diffinio bysellrwymiad sy'n achosi i'r "
+"gorchymyn a benodir gan y gosodiad hwn i gael ei weithredi."
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n gweithredu'r gorchymyn a'r rhif cyfatebol yn /apps/"
+"marco/keybinding_commands. Mae'r fformat yn edrych fel \"&lt;Control&gt;a"
+"\" neu &lt;Shift&gt;&lt;Alt&gt;F1\". Mae'r gramadegydd yn eithaf rhyddfrydol "
+"ac mae'n caniatáu prif lythrennau a llythrennau bach, a hefyd talfyriadau "
+"fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r "
+"llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i'r weithfan uwchben y weithfan gyfredol. Y mae'r "
+"fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r "
+"gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd "
+"bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i'r weithfan islaw'r weithfan gyfredol. Y mae'r "
+"fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r "
+"gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd "
+"bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i'r weithfan i'r chwith o'r weithfan gyfredol. Y "
+"mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y "
+"mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd "
+"bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i'r weithfan i'r dde o'r weithfan gyfredol. Y "
+"mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y "
+"mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd "
+"bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 1. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 10. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 11. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 12. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 2. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 3. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 4. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 5. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 6. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 7. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 8. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud i weithfan 9. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n gweithredu'r ddewislen ffenestr. Y mae'r fformat fel "
+"\"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd "
+"yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, "
+"a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd ffurfweddiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n cau ffenestr. Y mae'r fformat fel \"&lt;Control&gt;a\" "
+"neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol "
+"ac mae'n caniatáu prif lythrennau a llythrennau bach, a hefyd talfyriadau "
+"fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n osod y gosodiad i'r "
+"llinyn arbennig \"disabled\", ni fydd ffurfweddiad bysellfwrdd i'r weithred "
+"hon."
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n mynd i'r \"modd symud\" i symud ffenestr â'r "
+"bysellfwrdd . Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu "
+"prif lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" "
+"ac \"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig "
+"\"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n mynd i'r \"modd newid maint\" i newid maint y ffenestr "
+"â'r bysellfwrdd . Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n "
+"caniatáu prif lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;"
+"Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn "
+"arbennig \"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n cuddio pob ffenestr a rhoi'r canolbwyntiad i gefndir y "
+"penbwrdd. Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif "
+"lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac "
+"\"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig "
+"\"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n ehangu ffenestr. Y mae'r fformat fel \"&lt;Control&gt;a"
+"\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf "
+"rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a hefyd "
+"talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n osod y "
+"gosodiad i'r llinyn arbennig \"disabled\", ni fydd bysellrhwymiad ar gyfer y "
+"weithred hon."
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n lleihau ffenestr. Y mae'r fformat fel \"&lt;Control&gt;"
+"a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf "
+"rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a hefyd "
+"talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n osod y "
+"gosodiad i'r llinyn arbennig \"disabled\", ni fydd furfosodiad bysellfwrdd "
+"i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr un weithfan i lawr. Y mae'r fformat fel "
+"\"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd "
+"yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, "
+"a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr un weithfan i'r chwith. Y mae'r fformat "
+"fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r "
+"gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd "
+"bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr un weithfan i'r dde. Y mae'r fformat fel "
+"\"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd "
+"yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, "
+"a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr un weithfan i fyny. Y mae'r fformat fel "
+"\"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd "
+"yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, "
+"a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 1. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1\". Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 10. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 11. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 12. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 2. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 3. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 4. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 5. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 6. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 7. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 8. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud ffenestr i weithfan 9. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y canolbwyntiad yn ôl rhwng paneli a'r penbwrdd, "
+"gan ddefnyddio naidlen. Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n "
+"caniatáu prif lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;"
+"Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn "
+"arbennig \"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:146
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y canolbwyntiad yn ôl rhwng paneli a'r penbwrdd, "
+"heb ddefnyddio naidlen. Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n "
+"caniatáu prif lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;"
+"Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn "
+"arbennig \"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:147
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application without a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffocws am yn ôl rhwng ffenestri, heb ddefnyddio "
+"naidlen. Mae pwyso \"shift\" gyda'r rhwymiad yn symud y cyfeiriad am ymlaen "
+"eto. Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" fel opsiwn, fydd "
+"na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application, using a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffocws am yn ôl rhwng ffenestri, gan ddefnyddio "
+"naidlen. Mae pwyso \"shift\" gyda'r rhwymiad yn symud y cyfeiriad am ymlaen "
+"eto. Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" fel opsiwn, fydd "
+"na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y canolbwyntiad yn ôl rhwng ffenestri, heb "
+"ddefnyddio naidlen. Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n "
+"caniatáu prif lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;"
+"Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn "
+"arbennig \"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y canolbwyntiad yn ôl rhwng ffenestri, gan "
+"ddefnyddio naidlen. Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n "
+"caniatáu prif lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;"
+"Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn "
+"arbennig \"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:151
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y canolbwyntiad rhwng paneli a'r penbwrdd, gan "
+"ddefnyddio naidlen. Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n "
+"caniatáu prif lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;"
+"Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn "
+"arbennig \"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y canolbwyntiad rhwng paneli a'r penbwrdd, heb "
+"ddefnyddio naidlen. Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n "
+"caniatáu prif lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;"
+"Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn "
+"arbennig \"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"The keybinding used to move focus between windows of an application without "
+"a popup window. Holding the \"shift\" key while using this binding reverses "
+"the direction of movement. The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffocws rhwng ffenestri rhaglen, heb ddefnyddio "
+"naidlen. Mae pwyso \"shift\" gyda'r rhwymiad yn gwrthdroi cyfeiriad y symud. "
+"Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" fel opsiwn, fydd "
+"na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"The keybinding used to move focus between windows of an application, using a "
+"popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while "
+"using this binding reverses the direction of movement. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffocws rhwng ffenestri rhaglen, gan ddefnyddio "
+"naidlen. Mae pwyso \"shift\" gyda'r rhwymiad yn gwrthdroi cyfeiriad y symud. "
+"Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" fel opsiwn, fydd "
+"na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y canolbwyntiad rhwng ffenestri, heb ddefnyddio "
+"naidlen (Yn draddodiadol &lt;Alt&gt;Escape). Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd furfosodiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y canolbwyntiad rhwng ffenestri, gan ddefnyddio "
+"naidlen (Yn draddodiadol &lt;Alt&gt;Tab). Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd furfosodiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad a ddefnyddir er mwyn toglu *** ar ben. Fe fydd ffenest sydd "
+"wastad ar ben yn weladwy dros ffenestri eraill sy'n gorgyffwrdd. Y mae'r "
+"fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r "
+"gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd "
+"bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:158
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n toglu modd sgrin lawn. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd furfosodiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:159
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n toglu ehangiad. Y mae'r fformat fel \"&lt;Control&gt;a"
+"\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf "
+"rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a hefyd "
+"talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n osod y "
+"gosodiad i'r llinyn arbennig \"disabled\", ni fydd furfosodiad bysellfwrdd "
+"i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:160
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n toglu'r cyflwr rholio/dadrolio. Y mae'r fformat fel "
+"\"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd "
+"yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, "
+"a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:161
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n toglu os yw'r ffenestr yn bresennol ar bob gweithfan "
+"neu un yn unig. Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu "
+"prif lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" "
+"ac \"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig "
+"\"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:162
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n dadehangu y ffenestr. Y mae'r fformat fel \"&lt;"
+"Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn "
+"eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a "
+"hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"osod y gosodiad i'r llinyn arbennig \"disabled\", ni fydd furfosodiad "
+"bysellfwrdd i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n dangos blwch deialog \"Gweithredu Rhaglen\" y panel. Y "
+"mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd "
+"bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:164
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n cychwyn terfynell. Y mae'r fformat fel \"&lt;Control&gt;"
+"a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd yn eithaf "
+"rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, a hefyd "
+"talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr "
+"opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar gyfer y "
+"weithred hon."
+
+#: ../src/marco.schemas.in.h:165
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n rhedeg rhaglen sgrînlun y panel i gymryd sgrînlun o "
+"ffenestr. Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif "
+"lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac "
+"\"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig "
+"\"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:166
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n rhedeg rhaglen sgrînlun y panel. Y mae'r fformat fel "
+"\"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd "
+"yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, "
+"a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:167
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n dangos prif ddewislen y panel. Y mae'r fformat fel "
+"\"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r gramadegydd "
+"yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a llythrennau bach, "
+"a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;\". Os ydych chi'n "
+"gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd bysellrwymiad ar "
+"gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:168
+msgid "The name of a workspace."
+msgstr "Enw gweithfan."
+
+#: ../src/marco.schemas.in.h:169
+msgid "The screenshot command"
+msgstr "Y gorchymyn sgrînlun"
+
+#: ../src/marco.schemas.in.h:170
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Mae'r thema yn penodi edrychiad borderi ffenestri, y bar teitl, ac yn y "
+"blaen."
+
+#: ../src/marco.schemas.in.h:171
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Yr oediad cyn codi ffenestr os yw auto_raise yn wir. Mae'r oediad mewn "
+"milfed eiliad."
+
+#: ../src/marco.schemas.in.h:172
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Mae'r modd ffocysu yn penodi sut caiff ffenestri eu gweithredu. Mae ganddo "
+"tri gwerth posib; mae \"click\" yn golygu mae'n rhaid i ffenestri gael eu "
+"clicio er mwyn eu ffocysu; mae \"sloppy\" yn golygu caiff ffenestri ei "
+"ffocysu pan mae'r llygoden yn cyrraedd y ffenest, ac mae \"mouse\" yn golygu "
+"caiff ffenestri eu ffocysu pan mae'r llygoden yn cyrraedd y ffenest a'u "
+"dadffocysu pan mae'r llygoden yn gadael y ffenest."
+
+#: ../src/marco.schemas.in.h:173
+msgid "The window screenshot command"
+msgstr "Y gorchymyn sgrînlun ffenest"
+
+#: ../src/marco.schemas.in.h:174
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another one, it raises the window above all others, "
+"and if the window is already fully visible, it lowers it below all others. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n newid a yw ffenestr yn uwch neu'n is na ffenestri "
+"eraill. Os yw'r ffenestr wedi'i gorchuddio gan ffenestri eraill, mae'n "
+"codi'r ffenestr yn uwch na phob ffenestr arall. Os yw'r ffenestr yn hollol "
+"weladwy yn barod, mae'n gostwng y ffenestr yn is na phob ffenestr arall. "
+"Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" fel opsiwn, fydd "
+"na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:175
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n gostwng y ffenestr islaw ffenestri eraill. Y mae'r "
+"fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r "
+"gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd "
+"bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:176
+msgid ""
+"This keybinding moves a window against the north (top) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffenestr i ben ochr gogleddol (pen) y sgrin. "
+"Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" fel opsiwn, fydd "
+"na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:177
+msgid ""
+"This keybinding moves a window into the east (right) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffenestr i ben ochr ddwyreiniol (ochr dde) y "
+"sgrin. Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" fel opsiwn, fydd "
+"na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:178
+msgid ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffenestr i gornel gogledd-ddwyreiniol (cornel "
+"dde uchaf) y sgrin. Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu "
+"prif lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" "
+"ac \"&lt;Ctrl&gt;\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" "
+"fel opsiwn, fydd na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:179
+msgid ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffenestr i gornel gogledd-orllewinol (cornel "
+"chwith uchaf) y sgrin. Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu "
+"prif lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" "
+"ac \"&lt;Ctrl&gt;\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" "
+"fel opsiwn, fydd na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:180
+msgid ""
+"This keybinding moves a window into the south (bottom) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffenestr i ochr ddeheuol (gwaelod) y sgrin. "
+"Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" fel opsiwn, fydd "
+"na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:181
+msgid ""
+"This keybinding moves a window into the south-east (bottom right) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffenestr i gornel de-ddwyreiniol (cornel dde "
+"isaf) y sgrin. Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu prif "
+"lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac "
+"\"&lt;Ctrl&gt;\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" "
+"fel opsiwn, fydd na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:182
+msgid ""
+"This keybinding moves a window into the south-west (bottom left) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffenestr i gornel de-orllewinol (cornel chwith "
+"isaf) y sgrin. Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu prif "
+"lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac "
+"\"&lt;Ctrl&gt;\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" "
+"fel opsiwn, fydd na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:183
+msgid ""
+"This keybinding moves a window into the west (left) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n symud y ffenestr i ochr orllewinol (chwith) y sgrin. "
+"Ffurf y fformat yw \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Mae'r gramadegydd yn weddol hyblyg: mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n defnyddio'r llinyn arbennig \"disabled\" fel opsiwn, fydd "
+"na ddim bysell wedi'i rhwymo i'r weithred hon."
+
+#: ../src/marco.schemas.in.h:184
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Y bysellrwymiad sy'n codi'r ffenestr uwchben ffenestri eraill. Y mae'r "
+"fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;Alt&gt;F1. Y mae'r "
+"gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif lythrennau a "
+"llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac \"&lt;Ctrl&gt;"
+"\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig \"disabled\", ni fydd "
+"bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:185
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n newid maint y ffenest i lenwi'r holl le llorweddol sydd "
+"ar gael . Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif "
+"lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac "
+"\"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig "
+"\"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:186
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Y bysellrwymiad sy'n newid maint y ffenest i lenwi'r holl le fertigol sydd "
+"ar gael. Y mae'r fformat fel \"&lt;Control&gt;a\" neu \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Y mae'r gramadegydd yn eithaf rhyddfrydol ac mae'n caniatáu prif "
+"lythrennau a llythrennau bach, a hefyd talfyriadau fel \"&lt;Ctl&gt;\" ac "
+"\"&lt;Ctrl&gt;\". Os ydych chi'n gosod yr opsiwn i'r llinyn arbennig "
+"\"disabled\", ni fydd bysellrwymiad ar gyfer y weithred hon."
+
+#: ../src/marco.schemas.in.h:187
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"Mae'r dewisiad hwn yn dewis pa effaith sy'n digwydd pan fo clic dwbl ar y "
+"bar teitl. Dewisiadau dilys yw 'toggle_shade', sy'n cysgodi/di-gysgodi'r "
+"ffenestr, 'toggle_maximize' fydd yn ehangu/lleihau'r ffenestr, 'minimize' "
+"fydd yn lleihau'r ffenestr, neu 'none' fydd yn gwneud dim byd."
+
+#: ../src/marco.schemas.in.h:188
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"Mae'r dewisiad hwn yn dewis pa effaith sy'n digwydd pan fo clic botwm canol "
+"ar y bar teitl. Dewisiadau dilys yw 'toggle_shade', sy'n cysgodi/di-"
+"gysgodi'r ffenestr, 'toggle_maximize' fydd yn ehangu/lleihau'r ffenestr, "
+"'minimize' fydd yn lleihau'r ffenestr, neu 'none' fydd yn gwneud dim byd."
+
+#: ../src/marco.schemas.in.h:189
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"Mae'r dewisiad hwn yn dewis pa effaith sy'n digwydd pan fo clic botwm dde ar "
+"y bar teitl. Dewisiadau dilys yw 'toggle_shade', sy'n cysgodi/di-gysgodi'r "
+"ffenestr, 'toggle_maximize' fydd yn ehangu/lleihau'r ffenestr, 'minimize' "
+"fydd yn lleihau'r ffenestr, neu 'none' fydd yn gwneud dim byd."
+
+#: ../src/marco.schemas.in.h:190
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Mae'r opsiwn hwn yn rhoi mwy o reolaeth ar sut mae'r ffenestri newydd eu "
+"creu yn derbyn ffocws. Mae iddo ddau werth posib; \"smart\", sy'n rhoi modd "
+"ffocws arferol y defnyddiwr ar waith, a \"strict\" sy'n peri i ffenestri "
+"sydd wedi'u cychwyn o derfynell i beidio â derbyn ffocws."
+
+#: ../src/marco.schemas.in.h:191
+msgid "Toggle always on top state"
+msgstr "Toglu'r cyflwr o fod ar ben popeth"
+
+#: ../src/marco.schemas.in.h:192
+msgid "Toggle fullscreen mode"
+msgstr "Toglu cyflwr sgrin lawn"
+
+#: ../src/marco.schemas.in.h:193
+msgid "Toggle maximization state"
+msgstr "Toglu cyflwr ehangu"
+
+#: ../src/marco.schemas.in.h:194
+msgid "Toggle shaded state"
+msgstr "Toglu cyflwr rholio"
+
+#: ../src/marco.schemas.in.h:195
+msgid "Toggle window on all workspaces"
+msgstr "Toglu ffenestr ar bob gweithfan"
+
+#: ../src/marco.schemas.in.h:196
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Gosod effaith gweledol pan fo'r system, neu raglen, yn rhoi sain cloch neu "
+"'bîp'; yn ddefnyddiol i'r trwm eu clyw, neu mewn amgylchiadau swnllyd."
+
+#: ../src/marco.schemas.in.h:197
+msgid "Unmaximize window"
+msgstr "Dadehangu ffenestr"
+
+#: ../src/marco.schemas.in.h:198
+msgid "Use standard system font in window titles"
+msgstr "Defnyddiwch ffont system safonol yn nheitlau ffenestri"
+
+#: ../src/marco.schemas.in.h:199
+msgid "Visual Bell Type"
+msgstr "Math Cloch Weladwy"
+
+#: ../src/marco.schemas.in.h:200
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"A ddylai codi'r ffenestr fod yn sgil effaith gweithrediadau eraill y "
+"defnyddiwr"
+
+#: ../src/marco.schemas.in.h:201
+msgid "Window focus mode"
+msgstr "Modd ffocysu ffenestri"
+
+#: ../src/marco.schemas.in.h:202
+msgid "Window title font"
+msgstr "Ffont teitl ffenestri"
+
+#: ../src/ui/frames.c:1077
+msgid "Close Window"
+msgstr "Cau'r Ffenest"
+
+#: ../src/ui/frames.c:1080
+msgid "Window Menu"
+msgstr "Dewislen Ffenest"
+
+#: ../src/ui/frames.c:1083
+msgid "Minimize Window"
+msgstr "Lleihau'r Ffenest"
+
+#: ../src/ui/frames.c:1086
+msgid "Maximize Window"
+msgstr "Ehangu'r Ffenest"
+
+#: ../src/ui/frames.c:1089
+msgid "Unmaximize Window"
+msgstr "Dadehangu'r Ffenest"
+
+#: ../src/ui/frames.c:1092
+msgid "Roll Up Window"
+msgstr "Rholio Ffenestr i Fyny"
+
+#: ../src/ui/frames.c:1095
+msgid "Unroll Window"
+msgstr "Dadrolio Ffenestr"
+
+#: ../src/ui/frames.c:1098
+msgid "Keep Window On Top"
+msgstr "Cadw'r Ffenestr ar y Blaen"
+
+#: ../src/ui/frames.c:1101
+msgid "Remove Window From Top"
+msgstr "Tynnu'r Ffenestr o'r Blaen"
+
+#: ../src/ui/frames.c:1104
+msgid "Always On Visible Workspace"
+msgstr "Ar y Weithfan Weladwy o Hyd"
+
+#: ../src/ui/frames.c:1107
+msgid "Put Window On Only One Workspace"
+msgstr "Rhoi'r Ffenestr ar Un Gweithfan yn Unig"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Lleihau"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_Ehangu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "_Dadehangu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Rholio i _Fyny"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Datrholio"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Symud"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Newid _Maint"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Symud y Bar Teitl _ar y sgrin"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Ar y _Blaen o Hyd"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Pob tro ar y Weithfan Weladwy"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Ar y Weithfan _Yma'n Unig"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Symud at y Weithfan i'r _Chwith"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Symud at y Weithfan i'r _Dde"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Symud at y Weithfan i _Fyny"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Symud at y Weithfan i _Lawr"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Cau"
+
+#: ../src/ui/menu.c:208
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Gweithfan 1_0"
+
+#: ../src/ui/menu.c:210
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Gweithfan %s%d"
+
+#: ../src/ui/menu.c:390
+msgid "Move to Another _Workspace"
+msgstr "Symud at _Weithfan Arall"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/ui/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr "Nid yw \"%s\" yn ymateb."
+
+#: ../src/ui/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Fe allwch chi ddewis aros am ychydig er mwyn iddo barhau, neu orfodi'r "
+"rhaglen i orffen yn gyfan gwbl."
+
+#: ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr "_Aros"
+
+#: ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "Gor_fodi Gadael"
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr "Teitl"
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr "Dosbarth"
+
+#: ../src/ui/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Dyw'r ffenestri yma ddim yn cynnal \"arbed y gosodiad cyfredol\" a bydd "
+"rhaid eu hail-ddechrau gyda llaw y tro nesaf rydych yn mewngofnodi."
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Roedd gwall wrth weithredu \"%s\":\n"
+"%s."
+
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme-parser.c:227 ../src/ui/theme-parser.c:245
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Llinell %d nod %d: %s"
+
+#: ../src/ui/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr ""
+"Y mae'r briodoledd \"%s\" wedi'i hailadrodd dwywaith ar yr un elfen <%s>"
+
+#: ../src/ui/theme-parser.c:414 ../src/ui/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Y mae'r briodoledd \"%s\" yn annilys ar elfen <%s> yn y cyd-destun hwn"
+
+#: ../src/ui/theme-parser.c:500
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Rhaid i'r cyfanrif %ld fod yn bositif"
+
+#: ../src/ui/theme-parser.c:508
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Mae'r cyfanrif %ld yn rhy fawr, %d yw'r gwerth uchaf cyfredol"
+
+#: ../src/ui/theme-parser.c:536 ../src/ui/theme-parser.c:652
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Methu dehongli \"%s\" fel rhif pwynt arnawf"
+
+#: ../src/ui/theme-parser.c:567 ../src/ui/theme-parser.c:595
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Mae'n rhaid i werthoedd Boole fod \"true\" neu \"false\" nid \"%s\""
+
+#: ../src/ui/theme-parser.c:622
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Mae'n rhaid i ongl fod rhwng 0.0 a 360.0, %g oedd hyn\n"
+
+#: ../src/ui/theme-parser.c:685
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Mae'n rhaid i'r alffa fod rhwng 0.0 (anweledig) ac 1.0 (di-draidd), ond "
+"rhoddwyd %g\n"
+
+#: ../src/ui/theme-parser.c:750
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Maint teitl annilys \"%s\" (rhaid ei fod yn un o xx-small, x-small, small, "
+"medium, large, x-large, xx-large)\n"
+
+#: ../src/ui/theme-parser.c:795 ../src/ui/theme-parser.c:803
+#: ../src/ui/theme-parser.c:885 ../src/ui/theme-parser.c:982
+#: ../src/ui/theme-parser.c:1024 ../src/ui/theme-parser.c:1135
+#: ../src/ui/theme-parser.c:1185 ../src/ui/theme-parser.c:1193
+#: ../src/ui/theme-parser.c:3093 ../src/ui/theme-parser.c:3184
+#: ../src/ui/theme-parser.c:3191 ../src/ui/theme-parser.c:3198
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "Dim priodwedd \"%s\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:919 ../src/ui/theme-parser.c:990
+#: ../src/ui/theme-parser.c:1032 ../src/ui/theme-parser.c:1143
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "defnyddiwyd enw <%s> \"%s\" eilwaith"
+
+#: ../src/ui/theme-parser.c:931 ../src/ui/theme-parser.c:1044
+#: ../src/ui/theme-parser.c:1155
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "ni ddiffiniwyd rhiant <%s> \"%s\""
+
+#: ../src/ui/theme-parser.c:1057
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "ni ddiffiniwyd geometreg <%s> \"%s\""
+
+#: ../src/ui/theme-parser.c:1070
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"Mae'n rhaid i <%s> benodi naill ai geometreg, neu riant sydd â geometreg"
+
+#: ../src/ui/theme-parser.c:1112
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Rhaid i chi ddewis cefndir er mwyn i werth alffa fod ag ystyr"
+
+#: ../src/ui/theme-parser.c:1203
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Math anhysbys \"%s\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1214
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set \"%s\" anhysbys ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1222
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Neilltuir set arddull i fath ffenestr \"%s\" yn barod. "
+
+#: ../src/ui/theme-parser.c:1258
+msgid "Theme already has a fallback icon"
+msgstr "Mae gan y thema eicon wrth gefn eisoes"
+
+#: ../src/ui/theme-parser.c:1270
+msgid "Theme already has a fallback mini_icon"
+msgstr "Mae gan y thema mini_icon wrth gefn eisoes"
+
+#: ../src/ui/theme-parser.c:1283 ../src/ui/theme-parser.c:1347
+#: ../src/ui/theme-parser.c:1636 ../src/ui/theme-parser.c:3285
+#: ../src/ui/theme-parser.c:3339 ../src/ui/theme-parser.c:3511
+#: ../src/ui/theme-parser.c:3727 ../src/ui/theme-parser.c:3765
+#: ../src/ui/theme-parser.c:3803 ../src/ui/theme-parser.c:3841
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Ni chaniateir elfen <%s> yn is na <%s>"
+
+#: ../src/ui/theme-parser.c:1373 ../src/ui/theme-parser.c:1460
+#: ../src/ui/theme-parser.c:1530
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"name\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1380 ../src/ui/theme-parser.c:1467
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"value\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1411 ../src/ui/theme-parser.c:1425
+#: ../src/ui/theme-parser.c:1484
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"Nid yw'n bosib rhoi button_width/button_height a hefyd cymhareb agwedd am "
+"fotymau."
+
+#: ../src/ui/theme-parser.c:1434
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Mae'r pellter \"%s\" yn anhysbys"
+
+#: ../src/ui/theme-parser.c:1493
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Mae'r gymhareb agwedd \"%s\" yn anhysbys"
+
+#: ../src/ui/theme-parser.c:1537
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "Dim priodwedd \"top\" gan yr elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1544
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "Dim priodwedd \"bottom\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1551
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "Dim priodwedd \"left\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1558
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "Dim priodwedd \"right\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1590
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Mae'r border \"%s\" yn anhysbys"
+
+#: ../src/ui/theme-parser.c:1736 ../src/ui/theme-parser.c:1850
+#: ../src/ui/theme-parser.c:1961 ../src/ui/theme-parser.c:2192
+#: ../src/ui/theme-parser.c:3023
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "Dim priodwedd \"color\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1743
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "Dim priodwedd \"x1\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1750 ../src/ui/theme-parser.c:2864
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "Dim priodwedd \"y1\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1757
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "Dim priodwedd \"x2\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1764 ../src/ui/theme-parser.c:2871
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "Dim priodwedd \"y2\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1857 ../src/ui/theme-parser.c:1968
+#: ../src/ui/theme-parser.c:2117 ../src/ui/theme-parser.c:2199
+#: ../src/ui/theme-parser.c:2306 ../src/ui/theme-parser.c:2408
+#: ../src/ui/theme-parser.c:2630 ../src/ui/theme-parser.c:2758
+#: ../src/ui/theme-parser.c:2857 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3030
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "Dim priodwedd \"x\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1864 ../src/ui/theme-parser.c:1975
+#: ../src/ui/theme-parser.c:2124 ../src/ui/theme-parser.c:2206
+#: ../src/ui/theme-parser.c:2313 ../src/ui/theme-parser.c:2415
+#: ../src/ui/theme-parser.c:2637 ../src/ui/theme-parser.c:2765
+#: ../src/ui/theme-parser.c:2941 ../src/ui/theme-parser.c:3037
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "Dim priodwedd \"y\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1871 ../src/ui/theme-parser.c:1982
+#: ../src/ui/theme-parser.c:2131 ../src/ui/theme-parser.c:2213
+#: ../src/ui/theme-parser.c:2320 ../src/ui/theme-parser.c:2422
+#: ../src/ui/theme-parser.c:2644 ../src/ui/theme-parser.c:2772
+#: ../src/ui/theme-parser.c:2948
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "Dim priodwedd \"width\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1878 ../src/ui/theme-parser.c:1989
+#: ../src/ui/theme-parser.c:2138 ../src/ui/theme-parser.c:2220
+#: ../src/ui/theme-parser.c:2327 ../src/ui/theme-parser.c:2429
+#: ../src/ui/theme-parser.c:2651 ../src/ui/theme-parser.c:2779
+#: ../src/ui/theme-parser.c:2955
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"height\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:1998
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"start_angle\" na \"from\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2005
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"extent_angle\" na \"to\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2014
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"start_angle\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2021
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"extent_angle\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2227
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"alpha\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2299
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"type\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2349
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Wedi methu deall gwerth \"%s\" am fath y graddiant"
+
+#: ../src/ui/theme-parser.c:2436
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"filename\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2461 ../src/ui/theme-parser.c:2980
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Wedi methu deall math llenwi \"%s\" am elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2609 ../src/ui/theme-parser.c:2744
+#: ../src/ui/theme-parser.c:2850
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"state\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2616 ../src/ui/theme-parser.c:2751
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"shadow\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2623
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "Nid oes priodwedd \"arrow\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2676 ../src/ui/theme-parser.c:2800
+#: ../src/ui/theme-parser.c:2891
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Wedi methu deall cyflwr \"%s\" am elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2686 ../src/ui/theme-parser.c:2810
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Wedi methu deall cysgod \"%s\" am elfen <%s>"
+
+#: ../src/ui/theme-parser.c:2696
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Wedi methu deall saeth \"%s\" am elfen <%s>"
+
+#: ../src/ui/theme-parser.c:3120 ../src/ui/theme-parser.c:3237
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nid oes <draw_ops> o'r enw \"%s\" wedi ei diffinio"
+
+#: ../src/ui/theme-parser.c:3132 ../src/ui/theme-parser.c:3249
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Mi fydd cynnwys draw_ops \"%s\" yma yn creu cyfeiriad cylchol"
+
+#: ../src/ui/theme-parser.c:3314
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "Nid oes priodwedd \"value\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:3371
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "Nid oes priodwedd \"position\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Lleoliad anhysbys \"%s\" am ddarn ffrâm"
+
+#: ../src/ui/theme-parser.c:3388
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "May gan arddull y ffrâm darn yn lleoliad %s yn barod"
+
+#: ../src/ui/theme-parser.c:3405 ../src/ui/theme-parser.c:3496
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nid oes <draw_ops> gyda'r enw \"%s\" wedi diffinio"
+
+#: ../src/ui/theme-parser.c:3433
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "Nid oes priodwedd \"function\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:3441 ../src/ui/theme-parser.c:3557
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "Nid oes priodwedd \"state\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:3450
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Ffwythiant anhysbys \"%s\" am fotwm"
+
+#: ../src/ui/theme-parser.c:3459
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"Nid yw'r swyddogaeth \"%s\" i fotwm yn bodoli yn y fersiwn hwn (%d, mae "
+"angen %d)"
+
+#: ../src/ui/theme-parser.c:3471
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Cyflwr anhysbys \"%s\" am fotwm"
+
+#: ../src/ui/theme-parser.c:3479
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Mae'r arddull ffrâm eisoes wedi cael botwm am swyddogaeth %s cyflwr %s"
+
+#: ../src/ui/theme-parser.c:3549
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "Nid oes priodwedd \"focus\" ar elfen <%s>"
+
+#: ../src/ui/theme-parser.c:3565
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "Dim priodwedd \"style\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:3574
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "Nid yw \"%s\" yn werth dilys am y briodwedd canolbwyntio"
+
+#: ../src/ui/theme-parser.c:3583
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "Nid yw \"%s\" yn werth dilys am y briodwedd cyflwr"
+
+#: ../src/ui/theme-parser.c:3593
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Nid oes arddull o'r enw \"%s\" wedi ei ddiffinio"
+
+#: ../src/ui/theme-parser.c:3604
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "Dim priodwedd \"resize\" gan elfen <%s>"
+
+#: ../src/ui/theme-parser.c:3614 ../src/ui/theme-parser.c:3637
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "Nid yw \"%s\" yn werth dilys ar gyfer y briodwedd \"resize\""
+
+#: ../src/ui/theme-parser.c:3648
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Ni ddylid cael priodwedd \"resize\" ar elfen <%s> ar gyfer cyflyrau ehangu/"
+"wedi cysgodi"
+
+#: ../src/ui/theme-parser.c:3662
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Ni ddylid cael priodwedd \"resize\" ar elfen <%s> mewn cyflwr wedi'i ehangu"
+
+#: ../src/ui/theme-parser.c:3676 ../src/ui/theme-parser.c:3698
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Mae arddull wedi ei benodi eisoes ar gyfer cyflwr %s ailfeintio %s ffocws %s"
+
+#: ../src/ui/theme-parser.c:3687 ../src/ui/theme-parser.c:3709
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Mae arddull wedi ei benodi eisoes ar gyfer cyflwr %s ffocws %s"
+
+#: ../src/ui/theme-parser.c:3748
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Methir cael dau draw_ops ar gyfer elfen <piece> (penododd y thema briodwedd "
+"draw_ops ac elfen <draw_ops> hefyd, neu penododd e dwy elfen)"
+
+#: ../src/ui/theme-parser.c:3786
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Methir cael dau draw_ops ar gyfer elfen <button> (penododd y thema briodwedd "
+"draw_ops ac elfen <draw_ops> hefyd, neu penododd e dwy elfen)"
+
+#: ../src/ui/theme-parser.c:3824
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Methir cael dau draw_ops ar gyfer elfen <piece> (penododd y thema briodwedd "
+"draw_ops ac elfen <draw_ops> hefyd, neu penododd e dwy elfen)"
+
+#: ../src/ui/theme-parser.c:3872
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+"Rhaid i'r elfen fwyaf allanol mewn thema fod yn <marco_theme> nid <%s>"
+
+#: ../src/ui/theme-parser.c:3892
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Ni chaniateir yr elfen <%s> o fewn elfen name/author/date/description"
+
+#: ../src/ui/theme-parser.c:3897
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Ni chaniateir elfen <%s> tu fewn i elfen <constant>"
+
+#: ../src/ui/theme-parser.c:3909
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Ni chaniateir yr elfen <%s> o fewn elfen distance/border/aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3931
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Ni chaniateir elfen <%s> tu fewn i elfen weithred darlunio"
+
+#: ../src/ui/theme-parser.c:3941 ../src/ui/theme-parser.c:3971
+#: ../src/ui/theme-parser.c:3976 ../src/ui/theme-parser.c:3981
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Ni chaniateir elfen <%s> tu fewn i elfen <%s>"
+
+#: ../src/ui/theme-parser.c:4203
+msgid "No draw_ops provided for frame piece"
+msgstr "Darparwyd dim draw_ops ar gyfer darn ffrâm"
+
+#: ../src/ui/theme-parser.c:4218
+msgid "No draw_ops provided for button"
+msgstr "Darparwyd dim draw_ops ar gyfer botwm"
+
+#: ../src/ui/theme-parser.c:4270
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Ni chaniateir testun tu fewn i elfen <%s>"
+
+#: ../src/ui/theme-parser.c:4325
+msgid "<name> specified twice for this theme"
+msgstr "<name> wedi ei benodi ddwywaith am y thema hon"
+
+#: ../src/ui/theme-parser.c:4336
+msgid "<author> specified twice for this theme"
+msgstr "<author> wedi ei benodi ddwywaith am y thema hon"
+
+#: ../src/ui/theme-parser.c:4347
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> wedi ei benodi ddwywaith am y thema hon"
+
+#: ../src/ui/theme-parser.c:4358
+msgid "<date> specified twice for this theme"
+msgstr "<date> wedi ei benodi ddwywaith am y thema hon"
+
+#: ../src/ui/theme-parser.c:4369
+msgid "<description> specified twice for this theme"
+msgstr "<description> wedi ei benodi ddwywaith am y thema hon"
+
+#: ../src/ui/theme-parser.c:4636
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Methu canfod ffeil ddilys i thema %s\n"
+
+#: ../src/ui/theme-parser.c:4692
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Nid yw ffeil thema %s yn cynnwys elfen gwraidd <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:74
+msgid "/_Windows"
+msgstr "/_Ffenestri"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/Windows/tearoff"
+msgstr "/Ffenestri/rhwygo"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/_Dialog"
+msgstr "/Ffenestri/_Deialog"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Modal dialog"
+msgstr "/Ffenestri/Deialog _moddol"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Utility"
+msgstr "/Ffenestri/_Cyfleuster"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Splashscreen"
+msgstr "/Ffenest/_Sgrin gychwyn"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Top dock"
+msgstr "/Ffenestri/Doc _pen"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Bottom dock"
+msgstr "/Ffenestri/Doc _gwaelod"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Left dock"
+msgstr "/Ffenestri/Doc _chwith"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Right dock"
+msgstr "/Ffenestri/Doc _dde"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_All docks"
+msgstr "/Ffenestri/_Pob doc"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/Des_ktop"
+msgstr "/Ffenestri/Pen_bwrdd"
+
+#: ../src/ui/theme-viewer.c:134
+msgid "Open another one of these windows"
+msgstr "Agor un arall o'r ffenestri yma"
+
+#: ../src/ui/theme-viewer.c:141
+msgid "This is a demo button with an 'open' icon"
+msgstr "Dyma fotwm prawf gydag eicon 'agor'"
+
+#: ../src/ui/theme-viewer.c:148
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Dyma fotwm prawf gydag eicon 'gadael'"
+
+#: ../src/ui/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr "Dyma neges esiampl o fewn deialog esiampl"
+
+#: ../src/ui/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Eitem dewislen ffug %d\n"
+
+#: ../src/ui/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "Ffenest amlinell-yn-unig"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Bar"
+msgstr "Bar"
+
+#: ../src/ui/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "Ffenest Rhaglen Normal"
+
+#: ../src/ui/theme-viewer.c:381
+msgid "Dialog Box"
+msgstr "Blwch Deialog"
+
+#: ../src/ui/theme-viewer.c:385
+msgid "Modal Dialog Box"
+msgstr "Blwch Deialog Moddol"
+
+#: ../src/ui/theme-viewer.c:389
+msgid "Utility Palette"
+msgstr "Palet Cyfleuster"
+
+#: ../src/ui/theme-viewer.c:393
+msgid "Torn-off Menu"
+msgstr "Dewislen Wedi ei Rhwygo i Ffwrdd"
+
+#: ../src/ui/theme-viewer.c:397
+msgid "Border"
+msgstr "Amlinell"
+
+#: ../src/ui/theme-viewer.c:725
+#, c-format
+msgid "Button layout test %d"
+msgstr "Prawf lleoli botymau %d"
+
+#: ../src/ui/theme-viewer.c:754
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milfed eiliad i arlunio un ffrâm ffenest"
+
+#: ../src/ui/theme-viewer.c:797
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Defnydd: marco-theme-viewer [ENWTHEMA]\n"
+
+#: ../src/ui/theme-viewer.c:804
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Gwall wrth lwytho thema: %s\n"
+
+#: ../src/ui/theme-viewer.c:810
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Llwythwyd y thema \"%s\" mewn %g eiliad\n"
+
+#: ../src/ui/theme-viewer.c:833
+msgid "Normal Title Font"
+msgstr "Ffont Teitl Normal"
+
+#: ../src/ui/theme-viewer.c:839
+msgid "Small Title Font"
+msgstr "Ffont Teitl Bychan"
+
+#: ../src/ui/theme-viewer.c:845
+msgid "Large Title Font"
+msgstr "Ffont Teitl Mawr"
+
+#: ../src/ui/theme-viewer.c:850
+msgid "Button Layouts"
+msgstr "Llunwedd Botymau"
+
+#: ../src/ui/theme-viewer.c:855
+msgid "Benchmark"
+msgstr "Meincnod"
+
+#: ../src/ui/theme-viewer.c:902
+msgid "Window Title Goes Here"
+msgstr "Mae Teitl y Ffenest yn Mynd Yma"
+
+#: ../src/ui/theme-viewer.c:1006
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Arluniwyd %d ffrâm o fewn %g eiliad ochr cleient (%g milfed eiliad bob "
+"ffrâm) a %g eiliad amser cloc wal yn cynnwys adnoddau gweinydd X (%g milfed "
+"eiliad bob ffrâm)\n"
+
+#: ../src/ui/theme-viewer.c:1225
+msgid "position expression test returned TRUE but set error"
+msgstr "dychwelodd y mynegiant prawf lleoliad GWIR ond gosododd gwall"
+
+#: ../src/ui/theme-viewer.c:1227
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "dychwelodd y mynegiant prawf lleoliad ANWIR ond ni osododd gwall"
+
+#: ../src/ui/theme-viewer.c:1231
+msgid "Error was expected but none given"
+msgstr "Disgwyliwyd gwall ond rhoddwyd dim"
+
+#: ../src/ui/theme-viewer.c:1233
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Disgwyliwyd y gwall %d ond rhoddwyd %d"
+
+#: ../src/ui/theme-viewer.c:1239
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Ni ddisgwyliwyd gwall ond dychwelwyd un: %s"
+
+#: ../src/ui/theme-viewer.c:1243
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "%d oedd y gwerth x, disgwyliwyd %d"
+
+#: ../src/ui/theme-viewer.c:1246
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "%d oedd y gwerth y, disgwyliwyd %d"
+
+#: ../src/ui/theme-viewer.c:1311
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d mynegiant cyfesuryn wedi eu gramadegu o fewn %g eiliad (cyfartaledd o %g "
+"eiliad)\n"
+
+#: ../src/ui/theme.c:256
+msgid "top"
+msgstr "brig"
+
+#: ../src/ui/theme.c:258
+msgid "bottom"
+msgstr "gwaelod"
+
+#: ../src/ui/theme.c:260
+msgid "left"
+msgstr "chwith"
+
+#: ../src/ui/theme.c:262
+msgid "right"
+msgstr "de"
+
+#: ../src/ui/theme.c:289
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "nid yw'r geometreg ffrâm yn penodi dimensiwn \"%s\""
+
+#: ../src/ui/theme.c:308
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"nid yw'r geometreg ffrâm yn penodi dimensiwn \"%s\" ar gyfer border \"%s\""
+
+#: ../src/ui/theme.c:345
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Nid yw'r gymhareb agwedd botwm %g yn rhesymol"
+
+#: ../src/ui/theme.c:357
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Nid yw'r geometreg ffrâm yn penodi maint botymau"
+
+#: ../src/ui/theme.c:988
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Dylid graddfa cael o leiaf dau liw"
+
+#: ../src/ui/theme.c:1114
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Rhaid i benodiad lliw GTK cael cyflwr tu fewn i fracedi, e.e. gtk:fg[NORMAL] "
+"lle mae NORMAL yw'r cyflwr; ni all gramadegu \"%s\""
+
+#: ../src/ui/theme.c:1128
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Rhaid i benodiad lliw GTK gael braced cau e.e. gtk:fg[NORMAL] lle NORMAL "
+"yw'r cyflwr; ni allwyd gramadegu \"%s\""
+
+#: ../src/ui/theme.c:1139
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Wedi methu deall y cyflwr \"%s\" yn y penodiad lliw"
+
+#: ../src/ui/theme.c:1152
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Wedi methu deall y gydran lliw \"%s\" yn y penodiad lliw"
+
+#: ../src/ui/theme.c:1182
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"\"blend/bg_color/fg_color/alpha\" yw'r fformat cyfuno, nid yw \"%s\" yn "
+"cytuno a'r fformat"
+
+#: ../src/ui/theme.c:1193
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Wedi methu gramadegu'r gwerth alffa \"%s\" yn y lliw cyfunedig"
+
+#: ../src/ui/theme.c:1203
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Nid yw'r gwerth alffa \"%s\" yn y lliw cyfunedig rhwng 0.0 ac 1.0"
+
+#: ../src/ui/theme.c:1251
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"\"shade/base_color/factor\" yw'r fformat cysgod, nid yw \"%s\" yn cytuno a'r "
+"fformat"
+
+#: ../src/ui/theme.c:1262
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Methwyd gramadegu ffactor cysgod \"%s\" mewn lliw wedi cysgodi"
+
+#: ../src/ui/theme.c:1272
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Mae'r ffactor cysgod \"%s\" mewn lliw wedi cysgodi yn negatif"
+
+#: ../src/ui/theme.c:1302
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Methu dehongli'r lliw \"%s\""
+
+#: ../src/ui/theme.c:1560
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Mae'r mynegiad cyfesuryn yn cynnwys y nod '%s'. Ni chaniateir hyn."
+
+#: ../src/ui/theme.c:1587
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Mae'r mynegiad cyfesuryn yn cynnwys rhif pwynt arnawf '%s' sydd ddim yn "
+"bosib ei ramadegu."
+
+#: ../src/ui/theme.c:1601
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Mae'r mynegiad cyfesuryn yn cynnwys cyfanrif '%s' sydd ddim yn bosib ei "
+"ramadegu."
+
+#: ../src/ui/theme.c:1723
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Mae'r mynegiad cyfesuryn yn cynnwys gweithredwr anhysbys ar ddechrau'r "
+"testun hwn: \"%s\""
+
+#: ../src/ui/theme.c:1780
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Mae'r mynegiad cyfesuryn yn wag neu heb ei ddeall"
+
+#: ../src/ui/theme.c:1891 ../src/ui/theme.c:1901 ../src/ui/theme.c:1935
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Mae'r mynegiant cyfesuryn yn golygu rhannu â sero"
+
+#: ../src/ui/theme.c:1943
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Mae'r mynegiad cyfesuryn yn ceisio defnyddio'r gweithredwr 'mod' ar rif "
+"pwynt arnawf"
+
+#: ../src/ui/theme.c:1999
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Roedd gan y mynegiant cyfesuryn weithredydd \"%s\" lle disgwyliwyd operand"
+
+#: ../src/ui/theme.c:2008
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Roedd gan y mynegiant cyfesuryn operand lle disgwyliwyd gweithredydd"
+
+#: ../src/ui/theme.c:2016
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Gorffennodd y mynegiant cyfesuryn gyda gweithredydd yn lle operand"
+
+#: ../src/ui/theme.c:2026
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Mae gan fynegiant cyfesuryn y gweithredydd \"%c\" yn dilyn y gweithredydd "
+"\"% c\" efo dim operand rhyngddynt"
+
+#: ../src/ui/theme.c:2173 ../src/ui/theme.c:2214
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Roedd gan y mynegiant cyfesuryn gysonyn neu newidyn anhysbys \"%s\""
+
+#: ../src/ui/theme.c:2268
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Gorlifodd y gramadegydd mynegiant cyfesuryn y byffer."
+
+#: ../src/ui/theme.c:2297
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Roedd gan y mynegiant cyfesuryn cromfach cau heb gromfach agor"
+
+#: ../src/ui/theme.c:2361
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Roedd gan y mynegiant cyfesuryn cromfach agor heb gromfach cau"
+
+#: ../src/ui/theme.c:2372
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"Ymddengys nad oes gan y mynegiant cyfesuryn unrhyw weithredyddion neu "
+"operandau"
+
+#: ../src/ui/theme.c:2574 ../src/ui/theme.c:2594 ../src/ui/theme.c:2614
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Roedd y thema yn cynnwys mynegiad wnaeth achosi gwall: %s\n"
+
+#: ../src/ui/theme.c:4133
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Rhaid penodi <button function=\"%s\" state=\"%s\" draw_ops=\"rhywbeth\"/> ar "
+"gyfer yr arddull ffrâm hwn"
+
+#: ../src/ui/theme.c:4609 ../src/ui/theme.c:4634
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Mae yna <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"rhywbwth\"/> "
+"ar goll"
+
+#: ../src/ui/theme.c:4678
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Methu llwytho'r thema \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4804 ../src/ui/theme.c:4811 ../src/ui/theme.c:4818
+#: ../src/ui/theme.c:4825 ../src/ui/theme.c:4832
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Dim <%s> wedi ei osod ar gyfer y thema \"%s\""
+
+#: ../src/ui/theme.c:4840
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Dim arddull ffrâm wedi ei osod ar gyfer y math ffenest \"%s\" yn y thema \"%s"
+"\", ychwanegwch elfen <window type=\"%s\" style_set\"beth bynnag\"/>"
+
+#: ../src/ui/theme.c:5207 ../src/ui/theme.c:5269 ../src/ui/theme.c:5332
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Mae'n rhaid i gysonion a ddiffiniwyd gan y defnyddiwr gychwyn efo "
+"priflythyren; nid yw \"%s\""
+
+#: ../src/ui/theme.c:5215 ../src/ui/theme.c:5277 ../src/ui/theme.c:5340
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Diffiniwyd y cysonyn \"%s\" eisoes"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Defnydd: %s\n"
+
+#~ msgid "On _Top"
+#~ msgstr "Ar _Ben"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Mi fydd gorfodi'r rhaglen hon i derfynu yn colli unrhyw newidiad sydd heb "
+#~ "ei gadw "
+
+#~ msgid ""
+#~ "If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+#~ "focused window will be automatically raised after a delay (the delay is "
+#~ "specified by the auto_raise_delay key). This preference is poorly named, "
+#~ "but kept for backwards compatibility. To try to be more clear (at least "
+#~ "to the technically inclined), its meaning is \"automatically raise the "
+#~ "window following a timeout which is triggered by non-grabbed mouse entry "
+#~ "in sloppy or mouse focus modes\". It is unrelated to clicking behavior (i."
+#~ "e. this is not related to raise-on-click/orthogonal-raise). It is "
+#~ "unrelated to entering a window during drag and drop (because that results "
+#~ "in the application grabbing the mouse)"
+#~ msgstr ""
+#~ "Os yw hyn yn wir, ac os yw'r modd ffocysu naill ai'n \"sloppy\" neu'n "
+#~ "\"mouse\" yna fe fydd y ffenestr sydd wedi ei ffocysu yn cael ei chodi'n "
+#~ "awtomatig ar ôl saib byr (ceir hyd y saib yn yr allwedd "
+#~ "auto_raise_delay). Enw gwael sydd i'r hoffter hwn, ond mae wedi ei gadw "
+#~ "er mwyn bod yn gytûn â rhaglenni hynach. Er mwyn bod yn fwy eglur (o "
+#~ "leiaf i'r rhai sy'n dechnegol eu meddwl), ei ystyr yw \"codi'r ffenest yn "
+#~ "awtomatig ar ôl saib sy'n cael ei sbarduno gan fynediad llygoden heb-"
+#~ "gipio yn y modd 'sloppy' neu yn y modd ffocysu'r llygoden\". Dyw hwn ddim "
+#~ "yn dibynnu ar yr ymddygiad clicio (h.y. dyw hwn ddim yn dibynnu ar godi-"
+#~ "ar-glicio/codi-orthogonol). Dyw hwn ddim yn dibynnu ar fynd i mewn i "
+#~ "ffenest yn ystod llusgo a gollwng (am mai'r canlyniad i hynny yw'r "
+#~ "rhaglen yn cipio'r llygoden)"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Set this option to "
+#~ "false to decouple raising from other user interactions. When false, "
+#~ "windows can still be raised by an alt-left-click anywhere on the window "
+#~ "or a normal click on the window decorations (assuming such clicks aren't "
+#~ "used to start a move or resize operation). Special messages, such as "
+#~ "activation requests from pagers, may also raise windows when this option "
+#~ "is false. This option is currently disabled in click-to-focus mode."
+#~ msgstr ""
+#~ "Mae nifer o weithredoedd (e.e. clicio yn ardal y cleient, symud neu newid "
+#~ "maint y ffenestr) yn codi'r ffenestr hefyd, fel sgil effaith. Gosodwch yr "
+#~ "opsiwn hwn yn ffals er mwyn gwneud codi'r ffenestr yn annibynnol o "
+#~ "weithredoedd eraill y defnyddiwr. Pan mae hwn yn ffals, gellir codi'r "
+#~ "ffenestri o hyd drwy wneud alt-clic-chwith ar unrhyw ran o'r ffenestr, "
+#~ "neu glic arferol ar addurniadau'r ffenestr (cyn belled nad yw'r cliciau "
+#~ "hynny'n cychwyn gweithred symud neu newid maint). Mae negeseuon arbennig, "
+#~ "er enghraifft ceisiadau gweithredu o dudalennwyr, hefyd yn medru codi "
+#~ "ffenestri pan fo'r opsiwn hwn yn ffals. Mae'r opsiwn hwn wedi ei "
+#~ "analluogi ar hyn o bryd yn y modd clicio-er-mwyn-ffocysu."
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Y mae rhai rhaglenni yn torri penodiadau mewn ffyrdd sy'n achosi cam-"
+#~ "nodweddion rheolyddion ffenestri. Er enghraifft, yn ddelfrydol byddai "
+#~ "Marco yn lleoli pob ymgom yn ôl lleoliad eu ffenestri rhiant. Mae "
+#~ "angen anwybyddu'r lleoliadau oddi wrth y rhaglen i wneud hyn. Ond, y mae "
+#~ "rhai fersiynau o Java/Swing yn nodi eu naidlenni yn ddeialogau, felly "
+#~ "mae'n rhaid i Marco analluogi lleoli deialogau i alluogi i naidlenni "
+#~ "weithio mewn rhaglenni Java toredig. Mae yna aml enghreifftiau fel hyn. Y "
+#~ "mae'r dewisiad hwn yn rhoi Marco mewn modd Cywir hollol, sy'n rhoi "
+#~ "rhyngwyneb mwy dymunol os nad ydych am redeg rhaglenni toredig. Yn "
+#~ "anffodus rhaid galluogi'r eithriadau yn rhagosodedig; y mae'r byd iawn yn "
+#~ "le hyll. Y mae rhai o'r eithriadau yn gweithio o gwmpas diffygion yn y "
+#~ "penodiadau ei hunain, felly weithiau ni fydd modd trwsio nam yn y modd "
+#~ "heb-eithriadau heb addasu penodiad."
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Ffwythiant anhysbys \"%s\" am eicon dewislen"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Cyflwr anhysbys \"%s\" am eicon dewislen"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "Mae eicon dewislen gan y thema am ffwythiant %s cyflwr %s yn barod"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "Darparwyd dim draw_ops ar gyfer eicon dewislen"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "Wedi methu darllen thema oddi wrth ffeil %s: %s\n"
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Y mae'r gramadegydd mynegiadau cyfesuryn wedi gorlifo ei fyffer. Mae hwn "
+#~ "yn nam Marco, ond ydych chi'n siŵr eich bod chi'n angen mynegiad "
+#~ "anferth fel hynny?"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "rhaid penodi <menu_icon function=\"%s\" state=\"%s\" draw_ops=\"rhywbeth"
+#~ "\"> ar gyfer y thema hon"
diff --git a/po/da.po b/po/da.po
new file mode 100644
index 00000000..ee9240d2
--- /dev/null
+++ b/po/da.po
@@ -0,0 +1,2679 @@
+# Danish translation of Marco.
+# Copyright (C) 2002-2009
+# This file is distributed under the same license as the marco package.
+# Kjartan Maraas <[email protected]>, 2002
+# Keld simonsen <[email protected]>, 2002
+# Ole Laursen <[email protected]>, 2002.
+# Martin Willemoes Hansen <[email protected]>, 2004, 05.
+# Lasse Bang Mikkelsen <[email protected]>, 2006.
+# Ask Hjorth Larsen <[email protected]>, 2007, 09.
+# Kenneth Nielsen <[email protected]>, 2008.
+#
+# Konventioner:
+#
+# Når man multitasker mellem flere vinduer, vises der (afhængigt af indstillingerne) et popup-vindue med ikoner for de forskellige programmer. Dette vindue kaldes navigationsvinduet.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-09-16 23:51+0200\n"
+"PO-Revision-Date: 2010-09-15 21:15+0200\n"
+"Last-Translator: Ask Hjorth Larsen <[email protected]>\n"
+"Language-Team: Danish <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Skrivebord"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Vindueshåndtering"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Klokkebegivenhed"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Ukendt forespørgsel efter vinduesinformation: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> svarer ikke."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Du kan vælge at vente et lille stykke tid på at programmet fortsætter, eller "
+"du kan tvinge programmet til at afslutte fuldstændigt."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Vent"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Tving til at afslutte"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Kunne ikke skaffe værtsnavn: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Manglende %s-udvidelse som kræves til komposition"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Kunne ikke åbne X Window System-terminalen \"%s\"\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Mistede forbindelsen til terminalen \"%s\";\n"
+"sandsynligvis blev X-serveren lukket ned eller du afsluttede\n"
+"vindueshåndteringen.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Fatal IO-fejl %d (%s) på terminal \"%s\".\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Et andet program bruger allerede nøglen %s med modifikatorer %x som binding\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Der opstod en fejl ved kørsel af <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Ingen kommando %d er blevet defineret.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Ingen terminal-kommando er blevet defineret.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright © 2001-%s Havoc Pennington, Red Hat, Inc., og andre\n"
+"Dette er frit programmel; se kildekoden for kopieringsbetingelser.\n"
+"Der er INGEN garanti; ikke engang for SALGBARHED eller EGNETHED TIL ET "
+"BESTEMT FORMÅL.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Deaktivér forbindelse til sessionshåndtering"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Erstat den kørende vindueshåndtering med Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Angiv sessionhåndterings-id"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X-skærm som bruges"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Initialisér session fra gemt fil"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Vis version"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Gør kald til X synkrone"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Aktivér komposition"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Deaktivér komposition"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Opret ikke fuldskærmsvinduer, der er maksimeret og ikke har nogen "
+"dekorationer"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Kunne ikke skanne temamappe: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Kunne ikke finde et tema! Sikr dig at %s eksisterer og indeholder de "
+"sædvanlige temaer.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Kunne ikke genstarte: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf-nøglen \"%s\" er sat til en ugyldig værdi\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d lagret i MateConf-nøgle %s er uden for intervallet %d til %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf-nøglen \"%s\" er sat til en ugyldig type\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Omgåelser for ødelagte programmer deaktiveret. Nogle programmer opfører sig "
+"måske ikke korrekt.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Kunne ikke fortolke skrifttypebeskrivelsen \"%s\" fra MateConf-nøglen %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" fundet i konfigurationsdatabasen er ikke en gyldig værdi som "
+"museknapsmodifikation\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Fejl under sætning af antallet af arbejdsområder til %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Arbejdsområde %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" fundet i konfigurationsdatabasen er ikke en gyldig værdi for "
+"tastebindingen \"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Fejl under sætning af navnet for arbejdsområde %d til \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Fejl ved indstilling af status for kompositor: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Skærm %d på terminal \"%s\" er ugyldig\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Skærm %d på terminal \"%s\" har allerede en vindueshåndtering; prøv "
+"tilvalget --replace for at erstatte den aktuelle vindueshåndtering.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Kunne ikke fremskaffe vindueshåndteringvælgeren på skærm %d på terminal \"%s"
+"\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Skærm %d på terminal \"%s\" har allerede en vindueshåndtering\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Kunne ikke frigive skærm %d på terminal \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Formatet ser ud som \"<Control>a\" eller \"<Shift><Alt>F1\".\n"
+"\n"
+"Fortolkeren er ikke kræsen og tillader både store og små bogstaver, samt "
+"forkortelser som \"<Ctl>\" og \"<Ctrl>\". Hvis du sætter indstillingen til "
+"den specielle tekststreng \"disabled\", vil der ikke være nogen "
+"tastaturgenvej til denne handling."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Formatet ser ud som \"<Control>a\" eller \"<Shift><Alt>F1\".\n"
+"\n"
+"Fortolkeren er ikke kræsen og tillader både store og små bogstaver, samt "
+"forkortelser som \"<Ctl>\" og \"<Ctrl>\". Hvis du sætter indstillingen til "
+"den specielle tekststreng \"disabled\", vil der ikke være nogen "
+"tastaturgenvej til denne handling."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Kunne ikke oprette mappen \"%s\": %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Kunne ikke åbne sessionsfilen \"%s\" til skrivning: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Fejl under skrivning af sessionsfilen \"%s\": %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Fejl under lukning af sessionsfilen \"%s\": %s\n"
+
+#: ../src/core/session.c:1143
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Kunne ikke fortolke den lagrede sessionsfil: %s\n"
+
+#: ../src/core/session.c:1192
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session>-egenskaben set, men vi har allerede sessions-id'en"
+
+#: ../src/core/session.c:1205 ../src/core/session.c:1280
+#: ../src/core/session.c:1312 ../src/core/session.c:1384
+#: ../src/core/session.c:1444
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Ukendt egenskab %s for <%s>-element"
+
+#: ../src/core/session.c:1222
+#, c-format
+msgid "nested <window> tag"
+msgstr "indlejret <window>-mærke"
+
+#: ../src/core/session.c:1464
+#, c-format
+msgid "Unknown element %s"
+msgstr "Ukendt element %s"
+
+#: ../src/core/session.c:1816
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Disse vinduer understøtter ikke gemning af deres opsætning og skal "
+"genstartes manuelt næste gang du logger på."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Kunne ikke åbne fejlinformationslog: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Kunne ikke udføre fdopen() på logfilen %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Åbnede logfilen %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco blev oversat uden understøttelse for verbose-tilstand\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Vindueshåndtering: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Fejl i vindueshåndtering: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Vindueshåndteringsadvarsel: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Vindueshåndteringsfejl: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5660
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Vinduet %s angiver SM_CLIENT_ID for det selv i stedet for WM_CLIENT_LEADER-"
+"vinduet som specificeret i ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6225
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Vinduet %s angiver et MWM-hint for at indikere at dets størrelse ikke kan "
+"ændres, men angiver den mindste størrelse %d x %d og den maksimale størrelse "
+"%d x %d; dette giver ikke mening.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Program angav en ugyldig _NET_WM_PID %lu\n"
+
+# Lad os håbe dette er rigtigt
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (på %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (som superbruger)"
+
+# Lad os håbe dette er rigtigt
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (som %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (som en anden bruger)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Ugyldig WM_TRANSIENT_FOR vindue 0x%lx specificeret for %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Vinduet 0x%lx har egenskaben %s\n"
+"som forventedes at have typen %s format %d\n"
+"og faktisk har typen %s format %d n_items %d.\n"
+"Dette er sandsynligvis en fejl i programmet og ikke i vindueshåndteringen.\n"
+"Vinduet har titlen \"%s\", klassen \"%s\" og navnet \"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Egenskaben %s for vinduet 0x%lx indeholdt ugyldig UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Egenskaben %s for vinduet 0x%lx indeholdt ugyldig UTF-8 for element %d i "
+"listen\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Skift til arbejdsområde 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Skift til arbejdsområde 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Skift til arbejdsområde 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Skift til arbejdsområde 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Skift til arbejdsområde 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Skift til arbejdsområde 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Skift til arbejdsområde 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Skift til arbejdsområde 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Skift til arbejdsområde 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Skift til arbejdsområde 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Skift til arbejdsområde 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Skift til arbejdsområde 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Skift til arbejdsområdet til venstre for det aktuelle arbejdsområde"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Skift til arbejdsområdet til højre for det aktuelle arbejdsområde"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Skift til arbejdsområdet over det aktuelle arbejdsområde"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Skift til arbejdsområdet under det aktuelle arbejdsområde"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Gå gennem et programs vinduer vha. navigationsvindue"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Gå baglæns gennem et programs vinduer vha. navigationsvindue"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Gå gennem vinduer vha. navigationsvindue"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Gå baglæns gennem vinduer vha. navigationsvindue"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Gå gennem paneler og skrivebordet vha. navigationsvindue"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Gå baglæns gennem paneler og skrivebordet vha. nagivationsvindue"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Gå gennem et programs vinduer omgående"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Gå baglæns gennem et programs vinduer omgående"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Gå gennem vinduer omgående"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Gå baglæns gennem vinduer omgående"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Skift mellem paneler og skrivebordet omgående"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Gå baglæns gennem paneler og skrivebordet omgående"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Skjul alle normale vinduer og fokusér skrivebordet"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Vis panelets hovedmenu"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Vis panelets \"Kør program\"-vindue"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Gem skærmbillede"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Gem skærmbillede for et vindue"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Start en terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Aktivér vinduesmenuen"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Skift fuldskærmstilstand"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Skift maksimeringstilstand"
+
+# Nogen bedre forslag?
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+"Slå til eller fra hvorvidt et vindue altid vil være synligt over andre "
+"vinduer"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maksimér vindue"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Gendan vindue"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Skift oprullethed"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimér vindue"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Luk vindue"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Flyt vindue"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Ændr størrelsen på vindue"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Skift mellem hvorvidt vinduet vises på alle arbejdsområder eller kun et"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Flyt vindue til arbejdsområde 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Flyt vindue til arbejdsområde 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Flyt vindue til arbejdsområde 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Flyt vindue til arbejdsområde 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Flyt vindue til arbejdsområde 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Flyt vindue til arbejdsområde 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Flyt vindue til arbejdsområde 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Flyt vindue til arbejdsområde 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Flyt vindue til arbejdsområde 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Flyt vindue til arbejdsområde 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Flyt vindue til arbejdsområde 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Flyt vindue til arbejdsområde 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Flyt vindue et arbejdsområde til venstre"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Flyt vindue et arbejdsområde til højre"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Flyt vindue et arbejdsområde op"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Flyt vindue et arbejdsområde ned"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Hæv vindue hvis det er dækket af et andet vindue, ellers sænk det"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Hæv vindue over andre vinduer"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Sænk vindue under andre vinduer"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maksimér et vindue lodret"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maksimér et vindue vandret"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Flyt vindue til det nordvestlige (øverste venstre) hjørne"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Flyt vindue til det nordøstlige (øverste højre) hjørne"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Flyt vindue til det sydvestlige (nederste venstre) hjørne"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Flyt vindue til det sydøstlige (nederste højre) hjørne"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Flyt vindue til skærmens nordlige (øverste) kant"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Flyt vindue til skærmens sydlige (nederste) kant"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Flyt vindue til skærmens østlige (højre) kant"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Flyt vindue til skærmens vestlige (venstre) kant"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Flyt vindue til skærmens centrum"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Ikke implementeret) Navigatering virker med programmer ikke vinduer"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"En skrifttypebeskrivelsesstreng der beskriver skrifttypen for "
+"vinduestitellinjer. Størrelsen fra beskrivelsen vil dog kun blive brugt hvis "
+"indstillingen \"titlebar_font_size\" er sat til 0. Desuden er denne "
+"indstilling deaktiveret hvis indstillingen \"titlebar_uses_desktop_font\" er "
+"sat til \"true\"."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Handling ved dobbeltklik på titellinjen"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Handling ved midterklik på titellinjen"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Handling ved højreklik på titellinjen"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Arrangeringen af knapper på titellinjen"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Arrangeringen af knapper på titellinjen. Værdien skal være en tekststreng, "
+"såsom \"menu:minimize,maximize,spacer,close\"; kolon adskiller venstre "
+"hjørne fra højre hjørne, og knapnavnene er kommaadskilte. Hver knap kan kun "
+"optræde én gang. Ukendte knapnavne ignoreres uden advarsel sådan at "
+"yderligere knapper kan tilføjes i senere versioner af Marco uden at "
+"ødelægge ældre versioner. Et specielt skillemærke \"spacer\" kan bruges til "
+"at indsætte noget plads mellem to knapper."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Hæv automatisk det fokuserede vindue"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Klik på et vindue mens denne modifikationstast holdes nede vil flytte "
+"vinduet (venstreklik), ændre størrelsen af vinduet (midterklik) eller vise "
+"vinduesmenuen (højreklik). Midter- og højre-kliksoperationerne kan byttes om "
+"ved hjælp af nøglen \"resize_with_right_button\". Modifikationstasten kan f."
+"eks. udtrykkes som \"&lt;Alt&gt;\" eller \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Kommando der skal køres ved tastegenvej"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Kompositionshåndtering"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Indstil måden hvorpå nye vinduer tildeles fokus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Aktuelt tema"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Ventetid i millisekunder for autohævningsindstillingen"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Bestemmer om Marco håndterer komposition."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Bestemmer om programmer eller systemet kan generere hørbare bip; kan bruges "
+"sammen med visuelt bip til at opnå lydløse systembip."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Deaktiver uheldige faciliteter der kræves af ældre eller ødelagte programmer"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Aktivér visuelt bip"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Hvis sat til \"true\", og fokustilstanden er enten \"sloppy\" eller \"mouse"
+"\", så vil det fokuserede vindue automatisk hæves efter en ventetid "
+"specificeret af nøglen \"auto_raise_delay\". Dette er ikke relateret til at "
+"klikke på et vindue for at hæve det, ej heller at komme ind i et vindue "
+"under træk-og-slip."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Hvis sand, ignorér indstillingen titlebar_font og brug standardskrifttypen "
+"for programmer til vinduestitler."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Hvis sand, vil Marco give brugeren mindre tilbagemelding ved at bruge "
+"rammelinjer, undgå animeringer og andet. Dette er en betydelig formindskelse "
+"af brugbarheden for mange brugere, men kan sætte gamle programmer i stand "
+"til at fungere, samt kan være et brugbart kompromis for terminalservere. "
+"Rammelinje-faciliteten er dog deaktiveret når tilgængelighed er slået til."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Hvis sand, så arbejder Marco med programmer i stedet for vinduer. "
+"Konceptet er en smule abstrakt, men generelt er en programbaseret opsætning "
+"mere i retning af Mac og mindre som Windows. Når et vindue fokuseres i den "
+"programbaserede tilstand, vil alle vinduer i programmet blive hævet. Desuden "
+"bliver fokusklik ikke sendt videre til vinduer i andre programmer. I øvrigt "
+"er programbaseret tilstand i øjeblikket for størstedelens vedkommende ikke "
+"implementeret."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Hvis sand, så formindsk brugbarhed af hensyn til resurseforbrug"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modifikationstast til brug for modificerede vinduesklikhandlinger"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Arbejdsområdets navn"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Antal arbejdsområder"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Antal arbejdsområder. Skal være større end nul og har et fast maksimum for "
+"at forhindre at skrivebordet gøres ubrugeligt ved et uheld ved at antallet "
+"sættes for stort."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Kør en defineret kommando"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Sæt denne til \"true\" for at ændre størrelse med højre knap og vise en menu "
+"med midterste knap mens tasten givet i \"mouse_button_modifier\" holdes "
+"nede; sæt den til \"false\" for at få det til at fungere på modsat vis."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"At sætte denne indstilling til false kan føre til fejlagtig opførsel, så "
+"brugere frarådes stærkt at ændre den fra standardværdien, som er true. Mange "
+"handlinger (såsom at klikke i klientområdet, at flytte eller ændre størrelse "
+"på et vindue) vil normalt hæve vinduet som sideeffekt. Sæt denne indstilling "
+"til false for at afkoble hævningen fra de andre brugerhandlinger, og "
+"ignorere hæveforespørgsler genereret af programmer. Se http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Selv når denne indstilling er false, kan "
+"vinduer stadig hæves ved at alt-venstreklikke hvor som helst på vinduet, ved "
+"at foretage et normalt klik på vinduesdekorationerne, eller som følge af "
+"specielle signaler fra programskiftere, såsom aktiveringsforespørgsler fra "
+"opgaveliste-panelprogrammer. Denne indstilling er på nuværende tidspunkt "
+"deaktiveret i klik-for-fokus-tilstand. Bemærk at denne liste af måder hvorpå "
+"vinduer kan hæves når raise_on_click er sat til false, ikke inkluderer "
+"programmerbare forespørgsler fra programmer om hævning af vinduer; sådanne "
+"forespørgsler vil blive ignoreret uanset årsagen til forespørgslen. Hvis du "
+"er en applikationsprogrammør og har en bruger, der klager over at dit "
+"program ikke fungerer med denne indstilling slået fra, så fortæl dem at det "
+"er _deres_ skyld idet de misbruger deres vindueshåndtering, og at de skal "
+"ændre denne indstilling tilbage til true, eller leve med den pågældende fejl."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Visse programmer ignorerer specifikationer således at vindueshåndteringen "
+"kan bringes til fejlagtig opførsel. Denne indstilling sætter Marco i en "
+"strengt korrekt tilstand, hvilket giver en mere konsistent "
+"brugergrænseflade, såfremt man ikke behøver nogen uartige programmer."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Systembip er hørbart"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Angiver hvordan den visuelle indikering af at bip hør lydt skal vises. I "
+"øjeblikket er der to gyldige værdier, \"fullscreen\", som forårsager at hele "
+"skærmen skifter mellem sort og hvid, og \"frame_flash\" som forårsager at "
+"titellinjen for vinduet blinker. Hvis programmet som sendte bippet ikke er "
+"kendt (som det som regel er for standardsystembippet), vil titellinjen for "
+"det aktuelt fokuserede vindue blinke."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Nøglerne /apps/marco/global_keybindings/run_command_N definerer "
+"tastebindinger der svarer til disse kommandoer. Ved tryk på tastebindingen "
+"for run_command_N udføres command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Nøglen /apps/marco/global_keybindings/run_command_screenshot definerer en "
+"tastebinding der forårsager at kommandoen for denne indstilling bliver "
+"udført."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Nøglen /apps/marco/global_keybindings/run_command_screenshot_window "
+"definerer en tastebinding der forårsager at kommandoen for denne indstilling "
+"bliver udført."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Denne tastaturgenvej starter den tilsvarende nummererede kommando i /apps/"
+"marco/keybinding_commands. Formatet ser ud som \"&lt;Control&gt;a\" eller "
+"\"&lt;Skift&gt;&lt;Alt&gt;F1\". Fortolkeren er ikke kræsen og tillader både "
+"store og små bogstaver, samt forkortelser som \"&lt;Ctl&gt;\" og \"&lt;"
+"Ctrl&gt;\". Hvis du sætter indstillingen til den specielle tekststreng "
+"\"disabled\", vil der ikke være nogen tastaturgenvej til denne handling."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Arbejdsområdets navn."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Kommando for skærmbillede"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Temaet bestemmer udseendet af vindueskanter, titellinjer osv."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Ventetiden før et vindue hæves hvis auto_raise er sat til sand. Tiden "
+"angives i tusinddele af et sekund."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Vinduesfokuseringstilstanden fortæller hvordan vinduer aktiveres. Der er tre "
+"mulige værdier: \"click\" betyder at vinduer skal klikkes på for at fokusere "
+"dem, \"sloppy\" betyder at vinduer fokuseres når musen føres ind i vinduet "
+"og \"mouse\" betyder at vinduer fokuseres når musen føres ind i vinduet og "
+"mister fokus igen når musen forlader vinduet."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Kommando for vinduesskærmbillede"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Angiver hvad der sker når der dobbeltklikkes på titellinjen. Nuværende "
+"gyldige muligheder er \"toggle_shade\" som ruller vinduet op/ned, "
+"\"toggle_maximize\" som skifter mellem maksimeret/normal tilstand for "
+"vinduet, \"toggle_maximize_horizontally\" og \"toggle_maximize_vertically\" "
+"som vil skifte mellem maksimeret og normal tilstand kun i den retning, "
+"\"minimize\" som vil minimere vinduet, \"shade\" som vil rulle vinduet op, "
+"\"menu\" som vil vise vinduesmenuen, \"lower\" som vil placere vinduet bag "
+"alle andre og \"none\" som ingenting gør."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Angiver hvad der sker når der midterklikkes på titellinjen. Nuværende "
+"gyldige muligheder er \"toggle_shade\" som ruller vinduet op/ned, "
+"\"toggle_maximize\" som skifter mellem maksimeret/normal tilstand for "
+"vinduet, \"toggle_maximize_horizontally\" og \"toggle_maximize_vertically\" "
+"som vil skifte mellem maksimeret og normal tilstand kun i den retning, "
+"\"minimize\" som vil minimere vinduet, \"shade\" som vil rulle vinduet op, "
+"\"menu\" som vil vise vinduesmenuen, \"lower\" som vil placere vinduet bag "
+"alle andre og \"none\" som ingenting gør."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Angiver hvad der sker når der højreklikkes på titellinjen. Nuværende gyldige "
+"muligheder er \"toggle_shade\" som ruller vinduet op/ned, \"toggle_maximize"
+"\" som skifter mellem maksimeret/normal tilstand for vinduet, "
+"\"toggle_maximize_horizontally\" og \"toggle_maximize_vertically\" som vil "
+"skifte mellem maksimeret og normal tilstand kun i den retning, \"minimize\" "
+"som vil minimere vinduet, \"shade\" som vil rulle vinduet op, \"menu\" som "
+"vil vise vinduesmenuen, \"lower\" som vil placere vinduet bag alle andre og "
+"\"none\" som ingenting gør."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Denne indstilling giver yderligere kontrol over måden hvorpå nyoprettede "
+"vinduer bringes i fokus. Den har to mulige værdier; \"smart\" anvender "
+"brugerens normale fokusindstillinger, og \"strict\" resulterer i at vinduer "
+"der startes fra en terminal ikke gives fokus."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Aktiverer visuel tilkendegivelse idet et program eller systemet udsender et "
+"bip; nyttigt for svagthørende eller til brug i støjende omgivelser."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Benyt standardskrifttypen i vinduestitler"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Visuel bip-type"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Om hævning skal være en bivirkning af andre brugerhændelser"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Om der ændres størrelse med højre tast"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Vinduesfokuseringstilstand"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Skrifttype til vinduestitel"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Brug: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Luk vindue"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Vinduesmenu"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimér vindue"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maksimér vindue"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Gendan vindue"
+
+# roll up = sørg for at kun vindues-headeren er synlig.
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Rul vinduet op"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Rul vinduet ned"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Behold vinduet øverst"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Fjern vinduet fra toppen"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Altid på synligt arbejdsområde"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Vis vindue på kun ét arbejdsområde"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimér"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ksimér"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "_Gendan"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Rul _op"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Rul _ned"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Flyt"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Ænd_r størrelse"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Flyt titellinje til _skærm"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Altid _øverst"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Altid på synligt arbejdsområde"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Kun på dette arbejdsområde"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Flyt til arbejdsområde til _venstre"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Flyt til arbejdsområde til _højre"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Flyt til arbejdsområde _op"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Flyt til arbejdsområde _ned"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Luk"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Arbejdsområde %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Arbejdsområde 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Arbejdsområde %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Flyt til andet _arbejdsområde"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Skift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:255
+msgid "top"
+msgstr "top"
+
+#: ../src/ui/theme.c:257
+msgid "bottom"
+msgstr "bund"
+
+#: ../src/ui/theme.c:259
+msgid "left"
+msgstr "venstre"
+
+#: ../src/ui/theme.c:261
+msgid "right"
+msgstr "højre"
+
+#: ../src/ui/theme.c:288
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "rammegeometri angiver ikke dimensionen \"%s\""
+
+#: ../src/ui/theme.c:307
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "rammegeometri angiver ikke dimensionen \"%s\" for kanten \"%s\""
+
+#: ../src/ui/theme.c:344
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Knapformatforholdet %g er ikke fornuftigt"
+
+#: ../src/ui/theme.c:356
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Rammegeometri angiver ikke størrelsen af knapper"
+
+#: ../src/ui/theme.c:1021
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Farveovergange skal mindst have to farver"
+
+#: ../src/ui/theme.c:1147
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-farvespecifikation skal have tilstanden i firkantede klammer, f.eks. gtk:"
+"fg[NORMAL] hvor NORMAL er tilstanden; kunne ikke fortolke \"%s\""
+
+#: ../src/ui/theme.c:1161
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-farvespecifikation skal have en afsluttende klamme efter tilstanden, f."
+"eks. gtk:fg[NORMAL] hvor NORMAL er tilstanden; kunne ikke fortolke \"%s\""
+
+#: ../src/ui/theme.c:1172
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Forstod ikke tilstanden \"%s\" i farvespecifikationen"
+
+#: ../src/ui/theme.c:1185
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Forstod ikke farvekomponenten \"%s\" i farvespecifikationen"
+
+#: ../src/ui/theme.c:1215
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Blandingsformat er \"blend/bg_color/fg_color/alpha\", \"%s\" passer ikke med "
+"formatet"
+
+#: ../src/ui/theme.c:1226
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Kunne ikke fortolke alfaværdien \"%s\" i blandet farve"
+
+#: ../src/ui/theme.c:1236
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alfaværdien \"%s\" i blandet farve er ikke mellem 0,0 og 1,0"
+
+#: ../src/ui/theme.c:1283
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Skyggeformat er \"shade/base_color/factor\", \"%s\" passer ikke med formatet"
+
+#: ../src/ui/theme.c:1294
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Kunne ikke fortolke skyggeværdien \"%s\" i skygget farve"
+
+#: ../src/ui/theme.c:1304
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Skyggefaktoren \"%s\" i skygget farve er negativ"
+
+#: ../src/ui/theme.c:1333
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Kunne ikke fortolke farven \"%s\""
+
+#: ../src/ui/theme.c:1587
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Koordinatudtryk indeholder tegnet \"%s\" som ikke er tilladt"
+
+#: ../src/ui/theme.c:1614
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "Koordinatudtryk indeholder kommatallet \"%s\" som ikke kunne tolkes"
+
+#: ../src/ui/theme.c:1628
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Koordinatudtryk indeholder heltallet \"%s\" som ikke kunne tolkes"
+
+#: ../src/ui/theme.c:1750
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Koordinatudtryk indeholdt en ukendt operator i begyndelsen af teksten: \"%s\""
+
+#: ../src/ui/theme.c:1807
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Koordinatudtrykket var tomt eller blev ikke forstået"
+
+#: ../src/ui/theme.c:1918 ../src/ui/theme.c:1928 ../src/ui/theme.c:1962
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Koordinatudtrykket resulterer i division med nul"
+
+#: ../src/ui/theme.c:1970
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "Koordinatudtrykket prøver at bruge modulo-operator på et kommatal"
+
+#: ../src/ui/theme.c:2026
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Koordinatudtrykket har en operator \"%s\" hvor en operand var ventet"
+
+#: ../src/ui/theme.c:2035
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Koordinatudtrykket havde en operand hvor en operator var ventet"
+
+#: ../src/ui/theme.c:2043
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Koordinatudtrykket sluttede med en operator i stedet for en operand"
+
+#: ../src/ui/theme.c:2053
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Koordinatudtrykket har en operator \"%c\" efter en operator \"%c\" og ingen "
+"operand mellem dem"
+
+#: ../src/ui/theme.c:2200 ../src/ui/theme.c:2241
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Koordinatudtrykket havde en ukendt variabel eller konstant \"%s\""
+
+#: ../src/ui/theme.c:2295
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Koordinatudtryksfortolkeren har fået bufferoverløb."
+
+#: ../src/ui/theme.c:2324
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Koordinatudtrykket havde en slutparantes uden startparantes"
+
+#: ../src/ui/theme.c:2388
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Koordinatudtrykket havde en startparantes uden en slutparantes"
+
+#: ../src/ui/theme.c:2399
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"Koordinatudtrykket ser ikke ud til at have nogen operatorer eller operander"
+
+#: ../src/ui/theme.c:2603 ../src/ui/theme.c:2623 ../src/ui/theme.c:2643
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Tema indeholdt et udtryk som resulterede i en fejl: %s\n"
+
+#: ../src/ui/theme.c:4204
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"et-eller-andet\"/> skal "
+"angives for denne rammestil"
+
+#: ../src/ui/theme.c:4712 ../src/ui/theme.c:4737
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Manglende <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"et-eller-"
+"andet\"/>"
+
+#: ../src/ui/theme.c:4781
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Kunne ikke indlæse temaet \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4911 ../src/ui/theme.c:4918 ../src/ui/theme.c:4925
+#: ../src/ui/theme.c:4932 ../src/ui/theme.c:4939
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Ingen <%s> angivet for temaet \"%s\""
+
+#: ../src/ui/theme.c:4947
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Ingen rammestil angivet for vinduestypen \"%s\" i temaet \"%s\", tilføj et "
+"<window type=\"%s\" style_set=\"et-eller-andet\"/>-element"
+
+#: ../src/ui/theme.c:5390 ../src/ui/theme.c:5452 ../src/ui/theme.c:5515
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Brugerdefinerede konstanter skal begynde med et stort bogstav; det gør \"%s"
+"\" ikke"
+
+#: ../src/ui/theme.c:5398 ../src/ui/theme.c:5460 ../src/ui/theme.c:5523
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstanten \"%s\" er allerede defineret"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Ingen \"%s\"-egenskab i elementet <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Linje %d tegn %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Egenskaben \"%s\" er gentaget to gange i det samme <%s>-element"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Egenskaben \"%s\" er ugyldig i <%s>-elementet i denne sammenhæng"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Kunne ikke fortolke \"%s\" som et heltal"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Forstod ikke de afsluttende tegn \"%s\" i tekststrengen \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Heltallet %ld skal være positivt"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Heltallet %ld er for stort, det nuværende maksimum er %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Kunne ikke fortolke \"%s\" som et kommatal"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Booleske værdier skal være \"true\" eller \"false\" ikke \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Vinkel skal være mellem 0.0 og 360.0, var %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa skal være mellem 0.0 (usynlig) og 1.0 (helt ugennemsigtig), var %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Ugyldig titelskalering \"%s\" (skal være en af xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s>-navnet \"%s\" brugt to gange"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s>-ophavet \"%s\" er ikke blevet defineret"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s>-geometrien \"%s\" er ikke blevet defineret"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> skal enten angive en geometri eller et ophav der har en geometri"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Du skal angive en baggrund hvis en alfaværdi skal være meningsfuld"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Ukendt type \"%s\" i <%s>-element"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Ukendt style_set \"%s\" i <%s>-element"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Vinduestypen \"%s\" er allerede blevet tildelt et stilsæt"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Elementet <%s> er ikke tilladt under <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Kan ikke angive både \"button_width\"/\"button_height\" og \"aspect_ratio\" "
+"for knapper"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Afstanden \"%s\" er ukendt"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Formatforholdet \"%s\" er ukendt"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Kanten \"%s\" er ukendt"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Ingen \"start_angle\"- eller \"from\"-egenskab på elementet <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Ingen \"extent_angle\"- eller \"to\"-egenskab på elementet <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Forstod ikke værdien \"%s\" for farveovergangstypen"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Forstod ikke fyldtypen \"%s\" for <%s>-elementet"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Forstod ikke tilstanden \"%s\" for <%s>-elementet"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Forstod ikke skyggen \"%s\" for <%s>-elementet"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Forstod ikke pilen \"%s\" for <%s>-elementet"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Ingen <draw_ops> med navnet \"%s\" er blevet defineret"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Medtagelse af draw_ops \"%s\" ville skabe en cirkulær reference"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Ukendt position \"%s\" for rammestykke"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Rammestil har allerede et stykke på position %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Ingen <draw_ops> med navnet \"%s\" er blevet defineret"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Ukendt funktion \"%s\" for knap"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Knapfunktionen \"%s\" findes ikke i denne version (%d, kræver %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Ukendt tilstand \"%s\" for knap"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Rammestil har allerede en knap for funktion %s tilstand %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" er ikke en gyldig værdi for fokusegenskaben"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" er ikke en gyldig værdi for tilstandsegenskaben"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "En stil ved navn \"%s\" er ikke blevet defineret"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" er ikke en gyldig værdi for størrelsesændringsegenskaben"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Skal ikke have en \"resize\"-egenskab i <%s>-elementet for maksimerede/"
+"oprullede tilstande"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Skal ikke have en \"resize\"-egenskab i <%s>-elementet for maksimerede "
+"tilstande"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Stilen er allerede blevet angivet for tilstand %s størrelsesændring %s fokus "
+"%s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stilen er allerede blevet angivet for tilstand %s fokus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan ikke have to draw_ops for et <piece>-element (tema angav en draw_ops "
+"egenskab og også et <draw_ops>-element, eller angav to elementer)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan ikke have to draw_ops for et <button>-element (tema angav en draw_ops "
+"egenskab og også et <draw_ops>-element, eller angav to elementer)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan ikke have to draw_ops for et <menu_icon>-element (tema angav en draw_ops "
+"egenskab og også et <draw_ops>-element, eller angav to elementer)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Det yderste element i temaet skal være <marco_theme> ikke <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Elementet <%s> er ikke tilladt inde i et navne-/forfatter-/dato-/"
+"beskrivelseselement"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Elementet <%s> er ikke tilladt inde i et <constant>-element"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Elementet <%s> er ikke tilladt inde i et element af typen distance/border/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Elementet <%s> er ikke tilladt inde i et tegneoperationselement"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Elementet <%s> er ikke tilladt inde i et <%s>-element"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Ingen draw_ops angivet for rammestykke"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Ingen draw_ops angivet for knap"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Tekst er ikke tilladt inden i elementet <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> angivet to gange for dette tema"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Kunne ikke finde en gyldig fil til temaet %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Temafilen %s indeholdt ikke et rodelement <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Vinduer"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Vinduer/rivaf"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Vinduer/_Meddelelsevindue"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Vinduer/_Modalt meddelelsevindue"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Windows/_Værktøj"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Velkomstskærm"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Windows/_Topdok"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Windows/_Bunddok"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Windows/_Venstre dok"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Windows/_Højre dok"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Windows/_Alle dokke"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Windows/_Skrivebord"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Dette er en eksempelbesked i et eksempelmeddelelsevindue"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Uægte menupunkt %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Vindue med kun ramme"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Linje"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Almindeligt programvindue"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Meddelelsevindue"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modalt meddelelsevindue"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Værktøjspalet"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Afrevet menu"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Ramme"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Knaplayouttest %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g millisekunder for at tegne én vinduesramme"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Brug: marco-theme-viewer [TEMANAVN]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Fejl under indlæsning af tema: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Indlæste tema \"%s\" på %g sekunder\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Normal titelskrifttype"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Lille titelskrifttype"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Stor titelskrifttype"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Knaplayout"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Tidstest"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Vinduestitel er her"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Tegnede %d rammer på %g klientsekunder (%g millisekunder pr. ramme) og %g "
+"sekunders almindelig tid inkl. X-server-resurser (%g millisekunder pr. "
+"ramme)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "positionsudtrykstest returnede TRUE, men sat fejl"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "positionsudtrykstest returnede FALSE, men satte ikke fejl"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Fejl var forventet, men ingen givet"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Fejl %d var forventet, men %d givet"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Fejl var ikke forventet, men én blev returneret: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x-værdi var %d, %d var forventet"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y-værdi var %d, %d var forventet"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d koordinatudtryk fortolket på %g sekunder (%g sekunder i gennemsnit)\n"
+
+#~ msgid "Failed to read saved session file %s: %s\n"
+#~ msgstr "Kunne ikke læse den lagrede sessionsfil %s: %s\n"
+
+#~ msgid ""
+#~ "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#~ "\n"
+#~ "<i>You may choose to wait a short while for it to continue or force the "
+#~ "application to quit entirely.</i>"
+#~ msgstr ""
+#~ "<big><b><tt>%s</tt> svarer ikke.</b></big>\n"
+#~ "\n"
+#~ "<i>Du kan vælge at vente et lille stykke tid på at programmet fortsætter, "
+#~ "eller du kan tvinge programmet til at afslutte fuldstændigt.</i>"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Åbn endnu et af disse vinduer"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Dette er en demoknap med et \"åbn\"-ikon"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Dette er en demoknap med et \"afslut\"-ikon"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Fejl ved start af marco-dialog for at advare om programmer der ikke "
+#~ "understøtter sessionshåndtering: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Titel"
+
+#~ msgid "Class"
+#~ msgstr "Klasse"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Der opstod en fejl ved kørsel af \"%s\":\n"
+#~ "%s."
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Kunne ikke fortolke beskeden \"%s\" fra vinduesproces\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Fejl ved læsning fra vinduesprocessen: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Fejl ved start af marco-dialog for at spørge om afslutning af et "
+#~ "program: %s\n"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> angivet to gange for dette tema"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> angivet to gange for dette tema"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> angivet to gange for dette tema"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> angivet to gange for dette tema"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Fejl ved start af marco-dialog for at vise en fejl for en kommando: %"
+#~ "s\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Ukendt egenskab %s for <marco_session>-element"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Ukendt egenskab %s for <maximized>-element"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Ukendt egenskab %s for <geometry>-element"
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Skift altid øverst-tilstand"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Gendan vindue"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Gendan vindue"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Ingen \"%s\"-egenskab i <%s>-elementet"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Temaet har allerede et ikon at falde tilbage på"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Temaet har allerede et mini_ikon at falde tilbage på"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Ingen \"name\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Ingen \"value\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Ingen \"top\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Ingen \"bottom\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Ingen \"left\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Ingen \"right\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Ingen \"color\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Ingen \"x1\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Ingen \"y1\"-egenskab i element <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Ingen \"x2\"-egenskab i element <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Ingen \"y2\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Ingen \"y\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Ingen \"width\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Ingen \"height\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "Ingen \"start_angle\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "Ingen \"extent_angle\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Ingen \"alpha\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Ingen \"type\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Ingen \"filename\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Ingen \"state\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Ingen \"shadow\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Ingen \"arrow\"-egenskab i elementet <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Ingen \"value\"-egenskab i <%s>-element"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Ingen \"position\"-egenskab i <%s>-element"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Ingen \"function\"-egenskab i <%s>-element"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Ingen \"state\"-egenskab i <%s>-element"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Ingen \"focus\"-egenskab i <%s>-element"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Ingen \"style\"-egenskab i <%s>-element"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Ingen \"resize\"-egenskab i <%s>-element"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "Typen af %s var ikke heltal"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d lagret i MateConf-nøgle %s er ikke en fornuftig cursor_size; skal være i "
+#~ "området 1..128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d lagret i MateConf-nøgle %s er ikke et fornuftigt antal arbejdsområder, "
+#~ "aktuelt maksimum er %d\n"
+
+#~ msgid "On _Top"
+#~ msgstr "_Ovenpå"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Hvis du tvinger dette program til at afslutte, vil du miste evt. ugemte "
+#~ "ændringer."
+
+#~ msgid ""
+#~ "If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+#~ "focused window will be automatically raised after a delay (the delay is "
+#~ "specified by the auto_raise_delay key). This preference is poorly named, "
+#~ "but kept for backwards compatibility. To try to be more clear (at least "
+#~ "to the technically inclined), its meaning is \"automatically raise the "
+#~ "window following a timeout which is triggered by non-grabbed mouse entry "
+#~ "in sloppy or mouse focus modes\". It is unrelated to clicking behavior (i."
+#~ "e. this is not related to raise-on-click/orthogonal-raise). It is "
+#~ "unrelated to entering a window during drag and drop (because that results "
+#~ "in the application grabbing the mouse)"
+#~ msgstr ""
+#~ "Hvis sand og fokustilstand er enten \"sloppy\" eller \"mouse\", så vil "
+#~ "vinduet i fokus automatisk blive hævet efter en forsinkelse (forsinkelsen "
+#~ "er angivet af auto_raise_delay-nøglen). Denne indstilling er dårlig "
+#~ "navngivet, men bibeholdt for bagudkompatibilitet. For at være mere præcis "
+#~ "(til den tekniske), betyder det \"hæv automatisk vinduet efterfulgt af en "
+#~ "forsinkelse, som er udløst af en ikke-fanget musehændelse i \"sloppy\" "
+#~ "eller \"mouse\" fokustilstande\". Den er ikke relateret til "
+#~ "klikkeopførsel (f.eks. er dette ikke relateret til hæv-ved-klik/"
+#~ "retvinklet-hævning). Den er ikke relateret til tilgang af vindue under "
+#~ "hiv og slip (fordi det resulterer i at programmet fanger musen)"
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Nogle programmer bryder specifikationerne på sådanne måder at det "
+#~ "resulterer i problemer for vindueshåndteringen. For eksempel ville det "
+#~ "være bedst hvis Marco kunne placere alle meddelelsesvinduer på samme "
+#~ "måde i forhold til deres ophavsvinduer. Dette kræver at programspecifikke "
+#~ "placeringer for meddelsesvinduer ignoreres. Men nogle version af Java/"
+#~ "Swing markerer deres popop-menuer som vinduer så Marco er nødt til at "
+#~ "deaktivere placering af meddelsesvinduer for at få menuer til at virke i "
+#~ "ødelagt Javaprogrammer. Der er flere andre eksempler på dette. Denne "
+#~ "indstillinger får Marco til at opføre sig fuldstændigt korrekt hvilket "
+#~ "muligvis giver en lidt bedre grænseflade hvis du ikke kører nogen "
+#~ "ødelagte programmer. Desværre må omgåelser aktiveres som standard; den "
+#~ "virkelige verden er et uskønt sted. Nogle af omgåelserne er omgåelser for "
+#~ "begrænsninger i specifikationerne selv så nogle gange kan en fejl i "
+#~ "tilstanden uden omgåelser ikke rettes uden at vedtage en ny specifikation."
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Ukendt funktion \"%s\" til menuikon"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Ukendt tilstand \"%s\" for menuikon"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "Temaet har allerede en menuikon til funktion %s tilstand %s"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "Ingen draw_ops angivet for menuikon"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "Kunne ikke læse tema fra filen %s: %s\n"
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Koordinatudtrykkets fortolkningsprocess overskred sit mellemlager. Dette "
+#~ "er egentlig en fejl i Marco, men er du sikker på at du behøver så "
+#~ "store udtryk?"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"et-eller-andet\"/> "
+#~ "skal angives for dette tema"
diff --git a/po/de.po b/po/de.po
new file mode 100644
index 00000000..a92f38c8
--- /dev/null
+++ b/po/de.po
@@ -0,0 +1,3833 @@
+# German Marco translation.
+# Copyright (C) 2002-2004 Free Software Foundation, Inc.
+#
+# #
+# #window manager - Fensterverwaltung
+# #display - Anzeige
+# #parse - verarbeiten
+#
+# Matthias Warkus <[email protected]>, 2002.
+# Christian Neumair <[email protected]>, 2002-2004.
+# Hendrik Richter <[email protected]>, 2005, 2006, 2007, 2008.
+# Christian Kirbach <[email protected]>, 2009.
+# Mario Blättermann <[email protected]>, 2009, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Marco\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-02-15 12:17+0000\n"
+"PO-Revision-Date: 2010-02-15 16:20+0100\n"
+"Last-Translator: Mario Blättermann <[email protected]>\n"
+"Language-Team: German <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"X-Poedit-Language: German\n"
+"X-Poedit-Country: GERMANY\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Desktop"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Fensterverwaltung"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Klangereignis"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Unbekannte Fensterinformation angefordert: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> antwortet nicht."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Sie können der Anwendung noch etwas Zeit geben oder ein sofortiges Beenden "
+"erzwingen."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Warten"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Beenden erzwingen"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Rechnername konnte nicht ermittelt werden: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Die für Compositing benötigte Erweiterung »%s« fehlt"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X Window System-Anzeige »%s« konnte nicht geöffnet werden\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Verbindung zur Anzeige »%s« verloren;\n"
+"wahrscheinlich wurde der X-Server beendet oder Sie haben die "
+"Fensterverwaltung abgewürgt.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Schwerwiegender E/A-Fehler %d (%s) auf Anzeige »%s«.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Ein anderes Programm verwendet die Taste »%s« bereits mit den Zusatztasten »%"
+"x« als Tastenkombination\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Beim Ausführen von »<tt>%s</tt>« ist ein Fehler aufgetreten:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Es wurde kein Befehl %d festgelegt.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Es wurde kein Terminal-Befehl festgelegt.\n"
+
+# CHECK
+# c-format
+#
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright © 2001-%s Havoc Pennington, Red Hat, Inc., und andere\n"
+"Dies ist freie Software; schauen Sie in den Quelltext, um weitere "
+"Informationen zu erhalten.\n"
+"Es besteht KEINE Garantie auf MARKTREIFE oder EIGNUNG für einen BESTIMMTEN "
+"ZWECK.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Verbindung zur Sitzungsverwaltung deaktivieren"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Die aktuelle Fensterverwaltung durch Marco ersetzen"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Kennung der Sitzungsverwaltung angeben"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Zu verwendene X-Anzeige"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Sitzung anhand gespeicherter Datei starten"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Version ausgeben"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "X-Aufrufe synchron ausführen"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Compositing einschalten"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Compositing ausschalten"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "Maximierte Fenster im Vollbildmodus haben immer eine Fensterdekoration"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Der Themenordner konnte nicht eingelesen werden: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Es konnte kein Thema gefunden werden! Stellen Sie sicher, dass %s existiert "
+"und zumindest die mitgelieferten Themen enthält.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Neustart fehlgeschlagen: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Wert des MateConf-Schlüssels »%s« unzulässig\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"»%d«, gespeichert in MateConf-Schlüssel »%s«, liegt außerhalb des Bereichs %d-%d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Typ des MateConf-Schlüssels »%s« ist ungültig\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Problemumgehungen (Workarounds) für defekte Anwendungen abgeschaltet. "
+"Möglicherweise funktionieren manche Anwendungen nicht richtig.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Schriftbeschreibung »%s« aus MateConf-Schlüssel »%s« konnte nicht verarbeitet "
+"werden\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"»%s« in der Konfigurationsdatenbank ist kein zulässiger Wert für eine Maus-"
+"Zusatztaste\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Fehler beim Festlegen der Anzahl der Arbeitsflächen auf %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Arbeitsfläche %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"»%s« in der Konfigurationsdatenbank ist kein zulässiger Wert für die "
+"Tastenkombination »%s«\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Fehler beim Festlegen des Namens der Arbeitsflächen %d auf »%s«: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Fehler beim Festlegen des Status des Compositors: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Bildschirm %d auf Anzeige »%s« ist ungültig\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Bildschirm %d auf Anzeige »%s« hat bereits eine Fensterverwaltung; Geben Sie "
+"die Option »--replace« an, um zu versuchen, die aktuelle Verwaltung zu "
+"ersetzen.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Die Wahl als zuständige Fensterverwaltung auf Bildschirm %d auf Anzeige »%s« "
+"konnte nicht erlangt werden\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Bildschirm %d auf Anzeige »%s« hat bereits eine Fensterverwaltung\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Bildschirm %d auf Anzeige »%s« konnte nicht freigegeben werden\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Das Format lautet »<Control>a« (d.h. <Strg>a) oder »<Shift><Alt>F1« (d.h. "
+"<Umschalt><Alt>F1).\n"
+"\n"
+"Der Interpreter ist recht liberal und erlaubt Groß- oder Kleinschreibung "
+"sowie Abkürzungen wie z.B. »<Ctl>« oder »<Ctrl>« (beides <Strg>). Falls diese "
+"Option auf die Zeichenkette »disabled« (d.h. deaktiviert) gesetzt ist, wird "
+"für diese Aktion keine Tastenkombination festgelegt."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Das Format lautet »<Control>a« (d.h. <Strg>a) oder »<Shift><Alt>F1« (d.h. "
+"<Umschalt><Alt>F1).\n"
+"\n"
+"Der Interpreter ist recht liberal und erlaubt Groß- oder Kleinschreibung "
+"sowie Abkürzungen wie z.B. »<Ctl>« oder »<Ctrl>« (beides <Strg>). Falls diese "
+"Option auf die Zeichenkette »disabled« (d.h. deaktiviert) gesetzt ist, wird "
+"für diese Aktion keine Tastenkombination festgelegt.\n"
+"\n"
+"Diese Tastenkombination kann durch Drücken der Umschalttaste rückgängig "
+"gemacht werden; deshalb kann die Umschalttaste selbst nicht Bestandteil der "
+"Kombination sein."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Ordner »%s« konnte nicht angelegt werden: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Sitzungsdatei »%s« konnte nicht zum Schreiben geöffnet werden: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Fehler beim Schreiben der Sitzungsdatei »%s«: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Fehler beim Schließen der Sitzungsdatei »%s«: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Gespeicherte Sitzungsdatei %s konnte nicht gelesen werden: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Gespeicherte Sitzungsdatei konnte nicht verarbeitet werden: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"Attribut <marco_session> ist aufgetaucht, obwohl die Sitzungskennung "
+"bereits feststeht"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Unbekanntes Attribut »%s« in Element <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "verschachteltes Element <window>"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Unbekanntes Element »%s«"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Diese Fenster unterstützen das Speichern der aktuellen Einstellungen nicht "
+"und müssen bei der nächsten Anmeldung manuell neu gestartet werden."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Diagnoseprotokoll konnte nicht geöffnet werden: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Protokolldatei %s konnte nicht mit fdopen() geöffnet werden: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Protokolldatei %s wurde geöffnet\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+"Marco wurde ohne Unterstützung für den redseligen Modus kompiliert\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Fensterverwaltung:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Fehler in Fensterverwaltung:"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Warnung der Fensterverwaltung:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Fehler der Fensterverwaltung:"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Fenster »%s« setzt SM_CLIENT_ID auf sich selbst anstatt auf das "
+"WM_CLIENT_LEADER-Fenster, wie im ICCCM vorgegeben.\n"
+
+# We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+# * authoritative source for that info. Some apps such as mplayer or
+# * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+# * leads to e.g. us not fullscreening their windows. Apps that set
+# * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+# * about these apps but make them work.
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Fenster »%s« zeigt durch einen MWM-Wink an, dass die Größe nicht veränderbar "
+"ist, setzt jedoch die minimale Größe auf %d x %d und die maximale Größe auf %"
+"d x %d; dies ergibt keinen Sinn.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Die Anwendung hat eine unsinnige »_NET_WM_PID %lu« angegeben\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (auf %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (als Administrator)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (als %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (als ein anderer Benutzer)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Ungültiges WM_TRANSIENT_FOR-Fenster 0x%lx festgelegt für %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Fenster 0x%lx hat die Eigenschaft %s,\n"
+"Typ %s Format %d wurde erwartet,\n"
+"jedoch hat es Typ %s Format %d n_items %d.\n"
+"Dies ist vermutlich ein Fehler in der Anwendung\n"
+"und nicht in der Fensterverwaltung. Das Fenster hat den\n"
+"Titel »%s«, die Klasse »%s« und den Namen »%s«\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Eigenschaft %s von Fenster 0x%lx enthielt ungültiges UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Eigenschaft %s auf Fenster 0x%lx enthielt ungültiges UTF-8 für Objekt %d in "
+"der Liste\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Zur Arbeitsfläche 1 wechseln"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Zur Arbeitsfläche 2 wechseln"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Zur Arbeitsfläche 3 wechseln"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Zur Arbeitsfläche 4 wechseln"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Zur Arbeitsfläche 5 wechseln"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Zur Arbeitsfläche 6 wechseln"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Zur Arbeitsfläche 7 wechseln"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Zur Arbeitsfläche 8 wechseln"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Zur Arbeitsfläche 9 wechseln"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Zur Arbeitsfläche 10 wechseln"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Zur Arbeitsfläche 11 wechseln"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Zur Arbeitsfläche 12 wechseln"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Zur Arbeitsfläche links von der aktuellen wechseln"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Zur Arbeitsfläche rechts von der aktuellen wechseln"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Zur Arbeitsfläche oberhalb der aktuellen wechseln"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Zur Arbeitsfläche unterhalb der aktuellen wechseln"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr ""
+"Zwischen den Fenstern einer Anwendung unter Verwendung der Fensterliste "
+"wechseln"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Rückwärts zwischen den Fenstern einer Anwendung unter Verwendung der "
+"Fensterliste wechseln"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Zwischen den Fenstern unter Verwendung der Fensterliste wechseln"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr ""
+"Rückwärts zwischen den Fenstern unter Verwendung der Fensterliste wechseln"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr ""
+"Zwischen den Panels und der Arbeitsfläche unter Verwendung der Fensterliste "
+"wechseln"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Rückwärts zwischen den Panels und der Arbeitsfläche unter Verwendung der "
+"Fensterliste wechseln"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Sofort zwischen den Fenstern einer Anwendung wechseln"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Sofort rückwärts zwischen den Fenstern einer Anwendung wechseln"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Sofort zwischen Fenstern wechseln"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Sofort rückwärts zwischen Fenstern wechseln"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Sofort zwischen den Panels und der Arbeitsfläche wechseln"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Sofort rückwärts zwischen den Panels und der Arbeitsfläche wechseln"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Alle normalen Fenster verbergen und die Arbeitsfläche fokussieren"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Das Hauptmenü des Panel anzeigen"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Den »Anwendung ausführen«-Dialog des Panels anzeigen"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Ein Bildschirmfoto aufnehmen"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Ein Bildschirmfoto eines Fensters aufnehmen"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Ein Terminal starten"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Das Fenstermenü aktivieren"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Vollbildmodus ein-/ausschalten"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Maximierungszustand ein-/ausschalten"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Ein-/Ausschalten, ob ein Fenster immer über anderen sichtbar ist"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Fenster maximieren"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Fenstergröße wiederherstellen"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Fenster ein-/ausrollen"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Fenster minimieren"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Fenster schließen"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Fenster verschieben"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Fenstergröße ändern"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Festlegen, ob das Fenster auf allen oder nur einer Arbeitsfläche sichtbar ist"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Fenster auf Arbeitsfläche 1 verschieben"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Fenster auf Arbeitsfläche 2 verschieben"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Fenster auf Arbeitsfläche 3 verschieben"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Fenster auf Arbeitsfläche 4 verschieben"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Fenster auf Arbeitsfläche 5 verschieben"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Fenster auf Arbeitsfläche 6 verschieben"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Fenster auf Arbeitsfläche 7 verschieben"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Fenster auf Arbeitsfläche 8 verschieben"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Fenster auf Arbeitsfläche 9 verschieben"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Fenster auf Arbeitsfläche 10 verschieben"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Fenster auf Arbeitsfläche 11 verschieben"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Fenster auf Arbeitsfläche 12 verschieben"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Fenster eine Arbeitsfläche nach links verschieben"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Fenster eine Arbeitsfläche nach rechts verschieben"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Fenster eine Arbeitsfläche nach oben verschieben"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Fenster eine Arbeitsfläche nach unten verschieben"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Fenster anheben, falls es verdeckt ist, andernfalls absenken"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Fenster vor die anderen Fenster anheben"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Fenster hinter die anderen Fenster absenken"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Fenster vertikal maximieren"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Fenster horizontal maximieren"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Fenster in obere linke Ecke des Bildschirms verschieben"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Fenster in obere rechte Ecke des Bildschirms verschieben"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Fenster in untere linke Ecke des Bildschirms verschieben"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Fenster in untere rechte Ecke des Bildschirms verschieben"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Fenster zur oberen Seite des Bildschirms verschieben"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Fenster zur unteren Seite des Bildschirms verschieben"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Fenster zur rechten Seite des Bildschirms verschieben"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Fenster zur linken Seite des Bildschirms verschieben"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Fenster in die Mitte des Bildschirms verschieben"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Nicht implementiert) Navigation arbeitet anwendungs- und nicht "
+"fensterorientiert"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Eine Zeichenkette, die für die Fenstertitel verwendete Schrift angibt. Die "
+"Größenangabe wird jedoch nur verwendet, falls die Option »titlebar_font_size« "
+"auf 0 gesetzt ist. Außerdem ist diese Funktion wirkungslos, falls die Option "
+"»titlebar_uses_desktop_font« »WAHR« ist."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Aktion beim Doppelklick auf Titelleiste"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Aktion beim Klick mit der mittleren Maustaste auf die Titelleiste"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Aktion beim Rechtsklick auf die Titelleiste"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Knopfanordnung auf der Titelleiste"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Die Anordnung der Knöpfe auf der Titelleiste. Der Wert muss eine "
+"Zeichenkette der Form »menu:minimize,maximize,spacer,close« sein. Der "
+"Doppelpunkt trennt die rechte von der linken Ecke der Titelleiste und die "
+"Namen der einzelnen Knöpfe sind durch Kommas getrennt. Mehrfachnennungen von "
+"Knopfnamen sind nicht erlaubt. Unbekannte Knopfnamen werden ohne Ausgabe "
+"ignoriert, sodass in zukünftigen Versionen dieses Fenstermanagers Knöpfe "
+"hinzugefügt werden können, ohne die Konfiguration älterer Versionen zu "
+"beeinflussen."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Das fokussierte Fenster automatisch anheben"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Solange diese Umschalttaste gedrückt wird, verschiebt das Anklicken eines "
+"Fensters dieses (linke Maustaste), ändert dessen Größe (mittlere Maustaste) "
+"oder zeigt das Fenstermenü (rechte Maustaste). Die Vorgänge für links und "
+"rechts können mit der Taste »resize_with_right_button« vertauscht werden. "
+"Zusatztasten werden z.B. als »<&lt;Alt&lt;>« oder »<&lt;Super&lt;>« "
+"dargestellt. "
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Bei Drücken von Tastenkombinationen auszuführende Befehle"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Compositing-Verwaltung"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Festlegen, wie neue Fenster den Fokus erhalten"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Aktuelles Thema"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Verzögerung für das automatische Anheben in Millisekunden"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Legt fest, ob Marco als Compositing-Verwaltung agiert."
+
+# CHECK
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Legt fest, ob Anwendungen oder das System hörbare Signaltöne ausgeben "
+"können; kann in Verbindung mit der »visuellen Glocke« verwendet werden, um "
+"»stumme« Signaltöne auszugeben."
+
+# CHECK - Miss-Features?
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"(Absichtliche) Fehlverhalten deaktivieren, die von alten oder defekten "
+"Anwendungen benötigt werden."
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Visuelle Glocke aktivieren"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Falls dieser Schlüssel gesetzt ist und der Fokusmodus entweder »sloppy« oder "
+"»mouse« ist, wird das fokussierte Fenster automatisch nach der vom Schlüssel "
+"»auto_raise_delay« angegeben Zeit angehoben. Dies hat weder Einfluss auf das "
+"Klicken auf ein Fenster um es anzuheben, noch auf das Überfahren eines "
+"Fensters bei Ziehen-und-Ablegen."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Falls dieser Schlüssel gesetzt ist, wird die Option zum Setzen der "
+"Titelleistenschrift (»titlebar_font«) ignoriert und die Standard-"
+"Anwendungsschrift für Fenstertitel verwendet."
+
+# CHECK - der letzte Satz hinkt im Englischen wie im Deutschen
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Falls dieser Schlüssel wahr ist, gibt Marco dem Benutzer weniger "
+"Rückmeldungen durch Einsatz von Gitterrahmen, keinen Animationen und "
+"anderem. Dies bedeutet für viele eine signifikante Verschlechterung der "
+"Benutzerfreundlichkeit, erlaubt es jedoch älteren Anwendungen und Terminal-"
+"Servern von Drittanbietern auch dann zu funktionieren, wenn dies sonst nicht "
+"möglich wäre. Die Gitterrahmenfunktion wird jedoch nicht verwendet, wenn die "
+"Barrierefreiheit eingeschaltet ist."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Falls dieser Schlüssel gesetzt ist, arbeitet Marco anwendungs- und nicht "
+"fensterorientiert. Das Konzept ist etwas abstrakt, aber generell verhält "
+"sich der Computer im anwendungsorientierten Modus eher wie ein Mac und "
+"weniger wie Windows. Wenn Sie im anwendungsorientierten Modus ein Fenster "
+"fokussieren, werden alle zur Anwendung gehörigen Fenster angehoben. Außerdem "
+"werden in diesem Modus Mausklicks zum Fokussieren nicht an Fenster von "
+"anderen Anwendungen weitergereicht. Allerdings ist der anwendungsorientierte "
+"Modus momentan in weiten Teilen nicht implementiert."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Benutzerfreundlichkeit zu Gunsten von geringerem Ressourcenverbrauch "
+"reduzieren"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Die zum Umschalten der Fensterklick-Aktionen verwendeten Zusatztasten"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Name der Arbeitsfläche"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Anzahl der Arbeitsflächen"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Anzahl der Arbeitsflächen. Die Zahl muss größer als Null sein und hat ein "
+"festgelegtes Maximum, um zu verhindern, dass Ihr Desktop durch das "
+"versehentliche Anfordern von sehr vielen Arbeitsflächen unbrauchbar wird."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Einen festgelegten Befehl ausführen"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Falls dieser Schlüssel wahr ist, so wird mit der rechten Taste die Größe "
+"angepasst, und mit der mittleren Taste und der Zusatztaste "
+"»mouse_button_modifier« ein Menü angezeigt. Wenn er falsch ist, ist es genau "
+"anders herum."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Das Abschalten dieser Option kann zu einem fehlerhaften Verhalten führen. "
+"Deshalb werden Benutzer dazu angehalten sie unverändert zu lassen. Viele "
+"Aktivitäten (z.B Klicken in den Client-Bereich, Verschieben oder Verändern "
+"der Größe eines Fensters) führen normalerweise als Nebeneffekt dazu, dass "
+"das Fenster in den Vordergrund geholt wird. Wenn diese Option abgeschaltet "
+"ist, wovon dringend abgeraten wird, werden diese Aktivitäten von der "
+"Benutzerinformation entkoppelt und Anfragen von Anwendungen zum Anheben "
+"ignoriert. Lesen Sie http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. "
+"Trotzdem kann das Fenster durch einen Linksklick mit gedrückter linker "
+"Maustaste, durch einen Klick auf die Fenster-Dekoration oder durch spezielle "
+"Anforderung des Arbeitsflächenumschalters bzw. der Fensterliste weiter in "
+"den Vordergrund geholt werden. Dieser Schlüssel ist im »Klicken-für-Fokus«-"
+"Modus momentan deaktiviert. Die Möglichkeiten ein Fenster in den Vordergrund "
+"zu holen, wenn »raise_on_click« abgeschaltet ist, enthalten auch nicht "
+"programmatische Anforderungen durch Anwendungen. Diese werden ohne Beachtung "
+"ihres Grundes ignoriert. Falls Sie ein Software-Entwickler sind und Sie "
+"Beschwerden von Benutzern erhalten, dass Ihre Software nicht richtig "
+"funktioniert, weil diese Option abgeschaltet ist, antworten Sie, dass es die "
+"Schuld des Benutzers ist. Der Benutzer sollte darauf hingewiesen werden "
+"diese Option wieder einzuschalten oder mit den Konsequenzen leben zu müssen."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Einige Anwendungen halten sich nicht an Spezifikationen, wodurch "
+"Fehlverhalten bei Fensterverwaltungen entstehen können. Diese Option "
+"schaltet Marco in einen rigoros vorbildlichen Modus, der eine "
+"konsistentere Benutzerumgebung bringt, wenn Sie keine sich falsch "
+"verhaltenden Anwendungen benötigen."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Systemglocke hörbar machen"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Legt fest, wie Marco visuell darstellen soll, dass die Systemglocke "
+"ausgelöst wurde oder ein anderer »Piepser« seitens der Anwendung erfolgt ist. "
+"Zulässige Werte: »fullscreen« (Schwarz/weiß-Blinken im Vollbild) sowie "
+"»frame_flash« (Titelbar der betroffenen Anwendung blinkt). Ist die Anwendung "
+"unbekannt, die die Glocke ausgelöst hat (bei Systemsignaltönen ist dies der "
+"Normalfall), blinkt die Titelbar des momentan fokussierten Fensters."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Die Schlüssel »/apps/marco/global_keybindings/run_command_N« legen "
+"Tastenkombinationen fest, auf deren Eingabe hin diese Befehle ausgeführt "
+"werden. Die Eingabe der Tastenkombination run_command_N führt dazu, dass "
+"command_N ausgeführt wird."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Der Schlüssel »/apps/marco/global_keybindings/run_command_screenshot« legt "
+"eine Tastenkombination fest, auf deren Eingabe hin der vom diesem Schlüssel "
+"angegebene Befehl ausgeführt wird."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Der Schlüssel »/apps/marco/global_keybindings/"
+"run_command_window_screenshot« legt eine Tastenkombination fest, auf deren "
+"Eingabe hin der vom diesem Schlüssel angegebene Befehl ausgeführt wird."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Die verwendete Tastenkombination, die den jeweils entsprechenden Befehl in /"
+"apps/marco/keybinding_commands-Schlüssel ausführt. Das Format ist "
+"»<Control>« (d.h. <Strg>) oder »<Shift><Alt>F1« (d.h. <Umschalt><Alt>F1). Der "
+"Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung sowie "
+"Abkürzungen wie z.B. »<Ctl>« oder »<Ctrl>«. Falls diese diese Option auf die "
+"Zeichenkette »disabled« gesetzt ist, wird für diese Aktion keine "
+"Tastenkombination festgelegt."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Der Name einer Arbeitsfläche."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Der Befehl für ein Bildschirmfoto"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Das Thema legt unter anderem das Aussehen von Fensterrahmen und Titelleisten "
+"fest."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Die Zeitverzögerung, bevor ein Fenster angehoben wird, falls »auto_raise« auf "
+"WAHR gesetzt ist. Die Verzögerung wird in Millisekunden angegeben."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Der Modus des Fensterfokus legt fest, wie Fenster aktiviert werden. Er hat "
+"drei mögliche Werte: »click« führt dazu, dass Fenster angeklickt werden "
+"müssen, um fokussiert zu werden, »sloppy« bewirkt, dass Fenster fokussiert "
+"werden, sobald sich der Mauszeiger über dem Fenster befindet, und das "
+"Verhalten bei »mouse« entspricht dem von »sloppy« mit dem Zusatz, dass den "
+"Fenstern der Fokus wieder genommen wird, sobald der Mauszeiger das Fenster "
+"verlässt."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Der Befehl für ein Bildschirmfoto eines Fensters"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Dieser Schlüssel legt fest, was bei einem Doppelklick auf die Titelleiste "
+"geschehen soll. Zulässige Werte sind: »toggle_shade« (Fenster ein- bzw. "
+"ausrollen), »toggle_maximize« (Fenster maximieren bzw. wiederherstellen), "
+"»toggle_maximize_horizontally« und »toggle_maximize_vertically« (Fenster "
+"horizontal bzw. vertikal maximieren), »minimize« (Fenster minimieren), "
+"»shade« (Fenster einrollen), »menu« (Fenstermenü anzeigen), »lower« (Fenster in "
+"den Hintergrund) sowie »none« (nichts tun)."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Dieser Schlüssel legt fest, was bei einem Klick mit der mittleren Maustaste "
+"auf die Titelleiste geschehen soll. Zulässige Werte: »toggle_shade« (Fenster "
+"ein- bzw. ausrollen), »toggle_maximize« (Fenster maximieren bzw. "
+"wiederherstellen), »toggle_maximize_horizontally« und "
+"»toggle_maximize_vertically« (Fenster horizontal bzw. vertikal maximieren), "
+"»minimize« (Fenster minimieren), »shade« (Fenster einrollen), "
+"»menu« (Fenstermenü anzeigen), »lower« (Fenster in den Hintergrund) sowie "
+"»none« (nichts tun)."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Dieser Schlüssel legt fest, was bei einem Rechtsklick auf die Titelleiste "
+"geschehen soll. Zulässige Werte: »toggle_shade« (Fenster ein- bzw. "
+"ausrollen), »toggle_maximize« (Fenster maximieren bzw. wiederherstellen), "
+"»toggle_maximize_horizontally« und »toggle_maximize_vertically« (Fenster "
+"horizontal bzw. vertikal maximieren), »minimize« (Fenster minimieren), "
+"»shade« (Fenster einrollen), »menu« (Fenstermenü anzeigen), »lower« (Fenster in "
+"den Hintergrund) sowie »none« (nichts tun)."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Dieser Schlüssel bietet erweiterte Kontrolle darüber, wie neu erstellte "
+"Fenster den Fokus erhalten. Zulässige Werte: »smart« benutzt den vom Nutzer "
+"festgelegten Fokusmodus, »strict« erteilt von einer Befehlszeile gestarteten "
+"Fenstern keinen Fokus."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Visuelle Rückmeldungen zeigen, wenn eine Anwendung oder das System eine "
+"»Glocke« oder einen Signalton auslöst. Dies ist nützlich für Hörgeschädigte "
+"und die Arbeit in lauter Umgebung."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Vorgegebene Systemschrift für Fenstertitel verwenden"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Typ der Visuellen Glocke"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Legt fest, ob das Anheben von Fenstern ein Nebeneffekt von Benutzeraktionen "
+"sein soll"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Legt fest, ob mit der rechten Taste die Größe angepasst wird"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Modus des Fensterfokus"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Schrift für Fenstertitel"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Aufruf: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Fenster schließen"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Fenstermenü"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Fenster minimieren"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Fenster maximieren"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Fenster wiederherstellen"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Fenster einrollen"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Fenster ausrollen"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Fenster immer im Vordergrund"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Fenster nicht mehr stets im Vordergrund"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Immer auf der sichtbaren Arbeitsfläche"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Fenster nur auf eine Arbeitsfläche legen"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Minimieren"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximieren"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "_Wiederherstellen"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Ein_rollen"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Aus_rollen"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Verschieben"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Größe ändern"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "_Titelleiste auf Bildschirm verschieben"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Immer im V_ordergrund"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Immer auf der _sichtbaren Arbeitsfläche"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Nur auf _dieser Arbeitsfläche"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Auf Arbeitsfläche _links verschieben"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Auf Arbeitsfläche _rechts verschieben"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Auf Arbeitsfläche darü_ber verschieben"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Auf Arbeitsfläche dar_unter verschieben"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "S_chließen"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Arbeitsfläche %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Arbeitsfläche 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Arbeitsfläche %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Auf a_ndere Arbeitsfläche verschieben"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Strg"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Umschalter2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Umschalter3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Umschalter4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Umschalter5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "oben"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "unten"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "links"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "rechts"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "Die Rahmengeometrie gibt die Abmessung »%s« nicht an"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "Die Rahmengeometrie gibt die Abmessungen »%s« für den Rand »%s« nicht an"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Das Seitenverhältnis %g für einen Knopf ergibt keinen Sinn"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Die Rahmengeometrie gibt die Abmessungen der Knöpfe nicht an"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Farbverläufe sollten mindestens zwei Farben enthalten"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Bei GTK-Farbangaben muss der Zustand in eckigen Klammern stehen, z.B. gtk:fg"
+"[NORMAL], wobei NORMAL der Zustand ist; »%s« konnte nicht verarbeitet werden."
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-Farbangaben müssen nach dem Zustand eine schließende eckige Klammer "
+"enthalten, z.B. gtk:fg[NORMAL], wobei NORMAL der Zustand ist; »%s« konnte "
+"nicht verarbeitet werden"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Zustand »%s« in der Farbangabe konnte nicht verarbeitet werden"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Farbkomponente »%s« in der Farbangabe konnte nicht verarbeitet werden"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Das Blendformat ist »Blend/Hintergrundfarbe/Vordergrundfarbe/Alpha«; »%s« "
+"passt nicht auf dieses Format"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Der Alphawert »%s« in einer Mischfarbe konnte nicht verarbeitet werden"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Der Alphawert »%s« in einer Mischfarbe liegt nicht zwischen 0.0 und 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Das Mischformat ist »Mischen/Basisfarbe/Faktor«; »%s« passt nicht auf dieses "
+"Format"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+"Der Mischfaktor »%s« in einer Mischfarbe konnte nicht verarbeitet werden"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Der Mischfaktor »%s« in einer Mischfarbe ist negativ"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Die Farbe »%s« konnte nicht verarbeitet werden"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Der Koordinatenausdruck enthält das unerlaubte Zeichen »%s«"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Der Koordinatenausdruck enthält die Gleitkommazahl »%s«, die nicht "
+"verarbeitet werden konnte"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Der Koordinatenausdruck enthält die Ganzzahl »%s«, die nicht verarbeitet "
+"werden konnte"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Der Koordinatenausdruck enthält einen unbekannten Operator am Anfang dieses "
+"Texts: »%s«"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Der Koordinatenausdruck war leer oder unverständlich"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Der Koordinatenausdruck führt zu einer Division durch Null"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Der Koordinatenausdruck versucht, den Modulo-Operator auf eine "
+"Gleitkommazahl anzuwenden"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Der Koordinatenausdruck enthält den Operator »%s«, wo ein Operand stehen "
+"müsste"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"Der Koordinatenausdruck enthält einen Operanden, wo ein Operator stehen "
+"müsste"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Der Koordinatenausdruck endet mit einem Operator statt einem Operanden"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Der Koordinatenausdruck enthält die beiden Operatoren »%c« und »%c«, jedoch "
+"keinen Operanden dazwischen"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Der Koordinatenausdruck enthält die unbekannte Variable oder Konstante »%s«"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Der Koordinatenausdruck brachte seinen Puffer zum überlaufen."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Der Koordinatenausdruck enthält eine schließende Klammer, jedoch keine "
+"Öffnende"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Der Koordinatenausdruck enthält eine öffnende Klammer, jedoch keine "
+"Schließende"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"Der Koordinatenausdruck scheint weder Operatoren noch Operanden zu enthalten"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Das Thema enthält einen Ausdruck, der zu folgendem Fehler führte: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Für diesen Rahmenstil muss <button function=\"%s\" state=\"%s\" draw_ops="
+"\"irgendwas\"/> angegeben werden"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"irgendwas\"/> fehlt"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Thema »%s« konnte nicht geladen werden: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Kein <%s> für Thema »%s« festgelegt"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Kein Rahmenstil für Fenstertyp »%s« in Thema »%s« angegeben; fügen Sie ein "
+"Element <window type=\"%s\" style_set=\"irgendwas\"/> hinzu"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Benutzerdefinierte Konstanten müssen mit einem Großbuchstaben beginnen; »%s« "
+"tut das nicht"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstante »%s« wurde bereits definiert"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Kein Attribut »%s« in Element <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Zeile %d Zeichen %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Attribut »%s« wiederholt sich im selben Element <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Attribut »%s« ist in diesem Kontext in Element <%s> ungültig"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "»%s« konnte nicht als Ganzzahl verarbeitet werden"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+"Schließende Zeichen »%s« in Zeichenkette »%s« konnten nicht verarbeitet werden"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Ganzzahl %ld muss positiv sein"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Ganzzahl %ld ist zu groß, aktuelles Maximum ist %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "»%s« konnte nicht als Gleitkommazahl verarbeitet werden"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Wahrheitswerte müssen »true« oder »false« sein, nicht »%s«"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Der Winkel muss zwischen 0.0 und 360.0 liegen, war jedoch %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alpha muss zwischen 0.0 (unsichtbar) und 1.0 (vollständig deckend) liegen, "
+"war jedoch %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Ungültiger Titelmaßstab »%s« (muss xx-small, x-small, small, medium, large, x-"
+"large oder xx-large sein)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "Name »%s« von <%s> wurde zweimal verwendet"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Elternelement »%s« von <%s> wurde nicht definiert"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Geometrie »%s« für Element <%s> wurde nicht definiert"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> muss entweder eine Geometrie oder ein Elternelement mit einer Geometrie "
+"angeben"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+"Es muss ein Hintergrund festgelegt werden, damit ein Alpha-Wert sinnvoll ist."
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Unbekannter Typ »%s« in <%s>-Element"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Attribut style_set »%s« in Element <%s> hat einen unbekannten Wert"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Fenstertyp »%s« wurde bereits ein Stilsatz zugeordnet"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> ist nicht unter <%s> erlaubt"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Es können nicht sowohl »button_width« / »button_height« als auch das "
+"Seitenverhältnis »aspect_ratio« für Knöpfe angegeben werden"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Abstand »%s« ist unbekannt"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Seitenverhältnis »%s« ist unbekannt"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Rahmen »%s« ist unbekannt"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Kein Attribut »start_angle« oder »from« in Element <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Kein Attribut »extent_angle« oder »to« in Element <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Wert »%s« für Typ des Farbverlaufs konnte nicht verarbeitet werden"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Fülltyp »%s« für Element <%s> konnte nicht verarbeitet werden"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Zustand »%s« für Element <%s> konnte nicht verarbeitet werden"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Schatten »%s« für Element <%s> konnte nicht verarbeitet werden"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Pfeil »%s« für Element <%s> konnte nicht verarbeitet werden"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Es wurde kein <draw_ops> namens »%s« definiert"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Hier draw_ops »%s« einzufügen würde einen Ringschluss erzeugen"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Unbekannte Position »%s« für Rahmenteil"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Rahmenstil hat bereits einen Teil bei Position %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Es wurde kein <draw_ops> mit Namen »%s« definiert"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Unbekannte Knopf-Funktion »%s«"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Knopf-Funktion »%s« existiert in dieser Version nicht (%d, benötigt %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Unbekannter Knopfzustand »%s«"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Rahmenstil hat bereits einen Knopf für Funktion %s, Zustand %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "»%s« ist kein zulässiger Wert für das Attribut focus"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "»%s« ist kein zulässiger Wert für das Attribut state"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Es wurde kein Stil namens »%s« definiert"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "»%s« ist kein zulässiger Wert für das Attribut »resize«"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Für die Zustände maximiert/eingerollt sollte es im Element <%s> kein "
+"Attribut »resize« geben"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Für maximierte Zustände sollte es im Element <%s> kein Attribut »resize« geben"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Stil wurde bereits für state %s, resize %s, focus %s angegeben"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stil wurde bereits für state %s, focus %s angegeben"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Es kann keine zwei draw_ops für ein <piece>-Element geben (das Thema gab ein "
+"draw_ops-Attribut und ein <draw_ops>-Element oder zwei Elemente an)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Es kann keine zwei draw_ops für ein <button>-Element geben (das Thema gab "
+"ein draw_ops-Attribut und ein <draw_ops>-Element oder zwei Elemente an)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Es kann keine zwei draw_ops für ein <menu_icon>-Element geben (das Thema gab "
+"ein draw_ops-Attribut und ein <draw_ops>-Element oder zwei Elemente an)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Äußerstes Element im Thema muss <marco_theme> sein, nicht <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Element <%s> ist einem name/author/date/description-Element nicht erlaubt"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> ist in einem <constant>-Element nicht erlaubt"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Element <%s> ist in einem distance/border/aspect_ratio-Element nicht erlaubt"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Element <%s> ist in einem draw_ops-Element nicht erlaubt"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> ist in einem <%s>-Element nicht erlaubt"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Keine draw_ops für Rahmenteil angegeben"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Keine draw_ops für Knopf angegeben"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "In Element <%s> ist kein Text erlaubt"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> ist für dieses Thema zweimal angegeben"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Es konnte keine gültige Datei für das Thema »%s« gefunden werden\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Themendatei %s enthielt kein Wurzelelement <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Fenster"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Fenster/Abriss"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Fenster/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Fenster/_Modaler Dialog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Fenster/_Werkzeug"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Werkzeug/_Begrüßungsbildschirm"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Fenster/_Oberer Dock"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Fenster/_Unterer Dock"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Fenster/_Linker Dock"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Fenster/_Rechter Dock"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Fenster/_Alle Docks"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Fenster/Des_ktop"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Dies ist eine Beispielnachricht in einem Beispieldialog"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Pseudo-Menüeintrag %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Fenster ausschließlich mit Rand"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Leiste"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normales Anwendungsfenster"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialogfenster"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modales Dialogfenster"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Werkzeugpalette"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Abgerissenes Menü"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Rand"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Knopf-Layout-Test %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g Millisekunden zum Zeichnen eines Fensterrahmens"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Aufruf: marco-theme-viewer [THEMENNAME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Fehler beim Laden des Themas: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Thema »%s« in %g Sekunden geladen\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Normale Titelschrift"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Kleine Titelschrift"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Große Titelschrift"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Knopf-Layouts"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Leistungserfassung"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Hierher kommt der Fenstertitel"
+
+# CHECK - wall clock
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d Rahmen in %g Sekunden auf Client-Seite gezeichnet (%g Millisekunden pro "
+"Rahmen) bzw. in %g Sekunden Gesamtzeit inkl. X-Server-Ressourcen (%g "
+"Millisekunden pro Rahmen).\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "Positionsausdruckstest lieferte WAHR, jedoch auch einen Fehler"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "Positionsausdruckstest lieferte FALSCH, jedoch keinen Fehler"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Fehler erwartet, jedoch nicht übergeben"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Fehler %d erwartet, jedoch %d übergeben"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Kein Fehler erwartet, jedoch einer übergeben: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "X-Wert war %d, %d erwartet"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "Y-Wert war %d, %d erwartet"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d Koordinatenausdrücke in %g Sekunden verarbeitet (im Durchschnitt %g pro "
+"Sekunde)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Noch eines dieser Fenster öffnen"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Dies ist ein Demo-Knopf mit einem »Öffnen«-Symbol"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Dies ist ein Demo-Knopf mit einem »Beenden«-Symbol"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Nachricht »%s« vom Dialogprozess konnte nicht verarbeitet werden\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Fehler beim Lesen vom Dialog-Anzeigeprozess: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Beim Starten eines Marco-Dialogs, der wegen des Abwürgens einer "
+#~ "Anwendung nachfragen sollte, ist ein Fehler aufgetreten: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Beim Starten eines Marco-Dialogs, der einen Fehler zu einem Befehl "
+#~ "anzeigen sollte, ist ein Fehler aufgetreten: %s\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Unbekanntes Attribut %s in Element <marco_session>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Unbekanntes Attribut %s in Element <maximized>"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Unbekanntes Attribut %s in Element <geometry>"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Beim Starten eines Marco-Dialogs, der vor Anwendungen, die keine "
+#~ "Sitzungsverwaltung unterstützen, warnen sollte, ist ein Fehler "
+#~ "aufgetreten: %s\n"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Viele Aktionen (wie das Klicken in einer Anwendung, das Verschieben oder "
+#~ "Größeändern eines Fensters) heben das Fenster als Nebeneffekt an. \n"
+#~ "Wenn diese Option nicht gesetzt ist, wovon abgeraten wird, so wird das "
+#~ "Anheben von anderen Benutzeraktionen \n"
+#~ "abgekoppelt und Anhebeanfragen von Anwendungsseite ignoriert. \n"
+#~ "Schauen Sie für mehr Informationen unter http://bugzilla.gnome.org/"
+#~ "show_bug.cgi?id=445447#c6 nach."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche oberhalb der "
+#~ "Aktuellen zu wechseln. Das Format ist »&lt;Control&gt;« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche unterhalb der "
+#~ "Aktuellen zu wechseln. Das Format ist »&lt;Control&gt;« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche links der "
+#~ "Aktuellen zu wechseln. Das Format ist »&lt;Control&gt;« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche rechts der "
+#~ "Aktuellen zu wechseln. Das Format ist »&lt;Control&gt;« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 1 zu wechseln. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 10 zu wechseln. "
+#~ "Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1«. Der Interpreter ist recht liberal und erlaubt Groß- und "
+#~ "Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;"
+#~ "Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« gesetzt "
+#~ "ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 11 zu wechseln. "
+#~ "Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1«. Der Interpreter ist recht liberal und erlaubt Groß- und "
+#~ "Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;"
+#~ "Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« gesetzt "
+#~ "ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 12 zu wechseln. "
+#~ "Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1«. Der Interpreter ist recht liberal und erlaubt Groß- und "
+#~ "Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;"
+#~ "Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« gesetzt "
+#~ "ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 2 zu wechseln. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 3 zu wechseln. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 4 zu wechseln. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 5 zu wechseln. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 6 zu wechseln. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 7 zu wechseln. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 8 zu wechseln. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um zur Arbeitsfläche 9 zu wechseln. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die zum Aktivieren des Fenstermenüs verwendete Tastenkombination. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um in den »Verschieben«-Modus zu "
+#~ "wechseln, in dem das Fenster mit der Tastatur verschoben werden kann. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um in den »Größe ändern«-Modus zu "
+#~ "wechseln, in dem die Größe des Fensters mit der Tastatur geändert werden "
+#~ "kann. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt Groß- und "
+#~ "Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;"
+#~ "Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« gesetzt "
+#~ "ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die zum Verbergen aller normalen Fenster und Fokussieren des Desktops "
+#~ "verwendete Tastenkombination. Das Format ist »&lt;Control&gt;« (für Strg.) "
+#~ "oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die zum Maximieren eines Fensters verwendete Tastenkombination. Das "
+#~ "Format ist »&lt;Control&gt;a« (für Strg.+A) oder »&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1«. Der Interpreter ist recht liberal und erlaubt Groß- und "
+#~ "Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;"
+#~ "Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« gesetzt "
+#~ "ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die zum Minimieren eines Fensters verwendete Tastenkombination. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster einen Arbeitsplatz nach "
+#~ "unten zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster einen Arbeitsplatz nach "
+#~ "links zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster einen Arbeitsplatz nach "
+#~ "rechts zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster einen Arbeitsplatz nach "
+#~ "oben zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 1 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 10 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 11 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 12 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 2 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 3 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 4 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 5 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 6 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 7 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 8 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster auf den Arbeitsplatz 9 "
+#~ "zu verschieben. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus unter Verwendung eines "
+#~ "Popup-Fensters zwischen den Panels und dem Desktop rückwärts "
+#~ "durchzureichen. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus ohne Popup-Fenster "
+#~ "rückwärts zwischen den Panels und dem Desktop durchzureichen. Das Format "
+#~ "ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der "
+#~ "Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung sowie "
+#~ "Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese diese "
+#~ "Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese Aktion "
+#~ "keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus ohne Popup-Fenster "
+#~ "rückwärts zwischen den Fenstern einer Anwendung durchzureichen. Das "
+#~ "gleichzeitge Drücken der Umschalttaste ändert die Bewegungsrichtung in "
+#~ "vorwärts. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt Groß- und "
+#~ "Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;"
+#~ "Ctrl&gt;«. Falls diese Option auf die Zeichenkette »disabled« gesetzt ist, "
+#~ "wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus zwischen den Fenstern "
+#~ "einer Anwendung unter Verwendung eines Popup-Fensters rückwärts "
+#~ "durchzureichen. Das gleichzeitige Drücken der Umschalttaste ändert die "
+#~ "Bewegungsrichtung in vorwärts. Das Format ist »&lt;Control&gt;« (für "
+#~ "Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht "
+#~ "liberal und erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. "
+#~ "»&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus ohne Popup-Fenster "
+#~ "rückwärts zwischen den Fenstern durchzureichen. Das Format ist »&lt;"
+#~ "Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter "
+#~ "ist recht liberal und erlaubt Groß- und Kleinschreibung sowie Abkürzungen "
+#~ "wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese Option auf die "
+#~ "Zeichenkette »disabled« gesetzt ist, wird für diese Aktion keine "
+#~ "Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus zwischen den Fenstern "
+#~ "unter Verwendung eines Popup-Fensters rückwärts durchzureichen. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese Aktion "
+#~ "keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus zwischen den Panels und "
+#~ "dem Desktop durchzureichen. Das Format ist »&lt;Control&gt;« (für Strg.) "
+#~ "oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus zwischen den Panels und "
+#~ "dem Desktop ohne Popup-Fenster durchzureichen. Das Format ist »&lt;"
+#~ "Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter "
+#~ "ist recht liberal und erlaubt Groß- und Kleinschreibung sowie Abkürzungen "
+#~ "wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese diese Option auf "
+#~ "die Zeichenkette »disabled« gesetzt ist, wird für diese Aktion keine "
+#~ "Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus ohne Popup-Fenster "
+#~ "zwischen den Fenstern einer Anwendung durchzureichen (Traditionell &lt;"
+#~ "Alt&gt;Escape). Das gleichzeitige Drücken der Umschalttaste ändert die "
+#~ "Bewegungsrichtung in rückwärts. Das Format ist »&lt;Control&gt;« (für "
+#~ "Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht "
+#~ "liberal und erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. "
+#~ "»&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus zwischen den Fenstern "
+#~ "einer Anwendung unter Verwendung eines Popup-Fensters durchzureichen "
+#~ "(Traditionell &lt;Alt&gt; Tab). Das gleichzeitige Drücken der "
+#~ "Umschalttaste ändert die Bewegungsrichtung in rückwärts.Das Format ist "
+#~ "»&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der "
+#~ "Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung sowie "
+#~ "Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese Option "
+#~ "auf die Zeichenkette »disabled« gesetzt ist, wird für diese Aktion keine "
+#~ "Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus ohne Popup-Fenster "
+#~ "zwischen den Fenstern durchzureichen (Traditionell &lt;Alt&gt;Escape). "
+#~ "Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1«. Der Interpreter ist recht liberal und erlaubt Groß- und "
+#~ "Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;"
+#~ "Ctrl&gt;«. Falls diese Option auf die Zeichenkette »disabled« gesetzt ist, "
+#~ "wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um den Fokus zwischen den Fenstern "
+#~ "unter Verwendung eines Popup-Fensters durchzureichen (Traditionell &lt;"
+#~ "Alt&gt;Tab). Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese Option auf die Zeichenkette »disabled« gesetzt "
+#~ "ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster immer zu oberst "
+#~ "anzuzeigen. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um in den Vollbildmodus zu wechseln und "
+#~ "diesen wieder zu verlassen. Das Format ist »&lt;Control&gt;« (für Strg.) "
+#~ "oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster zu maximieren. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster ein- und wieder "
+#~ "auszurollen. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um das Fenster auf alle Arbeitsflächen "
+#~ "oder nur auf eine zu legen. Das Format ist »&lt;Control&gt;« (für Strg.) "
+#~ "oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die zum Wiederherstellen eines Fensters verwendete Tastenkombination. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Die zum Anzeigen des »Anwendung ausführen«-Dialogs verwendete "
+#~ "Tastenkombination. Das Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt "
+#~ "Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder "
+#~ "»&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« "
+#~ "gesetzt ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Die zum Anzeigen des Panel-Hauptmenüs verwendete Tastenkombination. Das "
+#~ "Format ist »&lt;Control&gt;a« (für Strg.+A) oder »&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1«. Der Interpreter ist recht liberal und erlaubt Groß- und "
+#~ "Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;"
+#~ "Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« gesetzt "
+#~ "ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die zum Ausführen des Werkzeugs zur Aufnahme eines Bildschirmfotos eines "
+#~ "Fensters verwendete Tastenkombination. Das Format ist »&lt;"
+#~ "Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter "
+#~ "ist recht liberal und erlaubt Groß- und Kleinschreibung sowie Abkürzungen "
+#~ "wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese diese Option auf "
+#~ "die Zeichenkette »disabled« gesetzt ist, wird für diese Aktion keine "
+#~ "Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Die zum Ausführen des Werkzeugs zur Aufnahme eines Bildschirmfotos "
+#~ "verwendete Tastenkombination. Das Format ist »&lt;Control&gt;« (für Strg.) "
+#~ "oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Die zum Anzeigen des Panel-Hauptmenüs verwendete Tastenkombination. Das "
+#~ "Format ist »&lt;Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+#~ "Der Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung "
+#~ "sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese "
+#~ "diese Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese "
+#~ "Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Die verwendete Tastenkombination, um ein Fenster vor oder hinter den "
+#~ "anderen Fenstern zu positionieren. Ist das Fenster durch ein anderes "
+#~ "verdeckt, wird es über alle anderen angehoben; ist es bereits komplett "
+#~ "sichtbar, wird es unter allen anderen positioniert. Das Format ist »&lt;"
+#~ "Control&gt;« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter "
+#~ "ist recht liberal und erlaubt Groß- und Kleinschreibung sowie Abkürzungen "
+#~ "wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese diese Option auf "
+#~ "die Zeichenkette »disabled« gesetzt ist, wird für diese Aktion keine "
+#~ "Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination senkt ein Fenster hinter die anderen Fenster ab. "
+#~ "Das Format ist »&lt;Control&gt;a« (für Strg.) oder »&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1«. Der Interpreter ist recht liberal und erlaubt Groß- und "
+#~ "Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;"
+#~ "Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« gesetzt "
+#~ "ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination verschiebt ein Fenster zur nördlichen (oberen) "
+#~ "Seite des Bildschirms. Das Format ist »&lt;Control&gt;a« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding moves a window into the center of the screen. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination verschiebt ein Fenster zur westlichen (linken) "
+#~ "Seite des Bildschirms. Das Format ist »&lt;Control&gt;a« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination verschiebt ein Fenster zur östlichen (rechten) "
+#~ "Seite des Bildschirms. Das Format ist »&lt;Control&gt;a« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination verschiebt ein Fenster in die nordöestliche "
+#~ "(obere linke) Ecke des Bildschirms.Das Format ist »&lt;Control&gt;a« (für "
+#~ "Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht "
+#~ "liberal und erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. "
+#~ "»&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die "
+#~ "Zeichenkette »disabled« gesetzt ist, wird für diese Aktion keine "
+#~ "Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination verschiebt ein Fenster in die nordwestliche "
+#~ "(obere linke) Ecke des Bildschirms. Das Format ist »&lt;Control&gt;a« (für "
+#~ "Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht "
+#~ "liberal und erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. "
+#~ "»&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die "
+#~ "Zeichenkette »disabled« gesetzt ist, wird für diese Aktion keine "
+#~ "Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination verschiebt ein Fenster zur südlichen (unteren) "
+#~ "Seite des Bildschirms. Das Format ist »&lt;Control&gt;a« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination verschiebt ein Fenster in die südöstliche (untere "
+#~ "rechte) Ecke des Bildschirms. Das Format ist »&lt;Control&gt;a« (für "
+#~ "Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht "
+#~ "liberal und erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. "
+#~ "»&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die "
+#~ "Zeichenkette »disabled« gesetzt ist, wird für diese Aktion keine "
+#~ "Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination verschiebt ein Fenster in die südwestliche "
+#~ "(untere linke) Ecke des Bildschirms. Das Format ist »&lt;Control&gt;"
+#~ "a« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht "
+#~ "liberal und erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. "
+#~ "»&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die "
+#~ "Zeichenkette »disabled« gesetzt ist, wird für diese Aktion keine "
+#~ "Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination verschiebt ein Fenster zur westlichen (linken) "
+#~ "Seite des Bildschirms. Das Format ist »&lt;Control&gt;a« (für Strg.) oder "
+#~ "»&lt;Shift&gt;&lt;Alt&gt;F1«. Der Interpreter ist recht liberal und "
+#~ "erlaubt Groß- und Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« "
+#~ "oder »&lt;Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette "
+#~ "»disabled« gesetzt ist, wird für diese Aktion keine Tastenkombination "
+#~ "festgelegt."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination hebt ein Fenster vor die anderen Fenster an. Das "
+#~ "Format ist »&lt;Control&gt;a« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1«. Der Interpreter ist recht liberal und erlaubt Groß- und "
+#~ "Kleinschreibung sowie Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;"
+#~ "Ctrl&gt;«. Falls diese diese Option auf die Zeichenkette »disabled« gesetzt "
+#~ "ist, wird für diese Aktion keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination vergrößert ein Fenster, sodass dieses den "
+#~ "gesamten verfügbaren horizontalen Platz ausfüllt. Das Format ist »&lt;"
+#~ "Control&gt;a« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der "
+#~ "Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung sowie "
+#~ "Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese diese "
+#~ "Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese Aktion "
+#~ "keine Tastenkombination festgelegt."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Diese Tastenkombination vergrößert ein Fenster, sodass dieses den "
+#~ "gesamten verfügbaren vertikalen Platz ausfüllt. Das Format ist »&lt;"
+#~ "Control&gt;a« (für Strg.) oder »&lt;Shift&gt;&lt;Alt&gt;F1«. Der "
+#~ "Interpreter ist recht liberal und erlaubt Groß- und Kleinschreibung sowie "
+#~ "Abkürzungen wie z.B. »&lt;Ctl&gt;« oder »&lt;Ctrl&gt;«. Falls diese diese "
+#~ "Option auf die Zeichenkette »disabled« gesetzt ist, wird für diese Aktion "
+#~ "keine Tastenkombination festgelegt."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Immer Oben-Zustand ein-/ausschalten"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Fenster wiederherstellen"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Fenster wiederherstellen"
+
+#~ msgid "Title"
+#~ msgstr "Titel"
+
+#~ msgid "Class"
+#~ msgstr "Klasse"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Kein »%s«-Attribut in Element <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Thema hat bereits ein Ausweich-Symbol"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Thema hat bereits ein kleines Ausweich-Symbol (»mini_icon«)"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »name« in Element <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »value« in Element <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »top« in Element <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »bottom« in Element <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »left« in Element <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »right« in Element <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »color« in Element <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »x1« in Element <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »y1« in Element <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »x2« in Element <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »y2« in Element <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »y« in Element <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »width« in Element <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »height« in Element <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »start_angle« in Element <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »extent_angle« in Element <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »alpha« in Element <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »type« in Element <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »filename« in Element <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »state« in Element <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »shadow« in Element <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Kein Attribut »arrow« in Element <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Kein Attribut »value« in Element <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Kein Attribut »position« in Element <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Kein Attribut »function« in Element <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Kein Attribut »state« in Element <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Kein Attribut »focus« in Element <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Kein Attribut »style« in Element <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Kein Attribut »resize« in Element <%s>"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> wurde für dieses Thema zweimal angegeben"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> wurde für dieses Thema zweimal angegeben"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> wurde für dieses Thema zweimal angegeben"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> wurde für dieses Thema zweimal angegeben"
diff --git a/po/dz.po b/po/dz.po
new file mode 100644
index 00000000..57933f3f
--- /dev/null
+++ b/po/dz.po
@@ -0,0 +1,2576 @@
+# Dzongkha translation of marco.
+# Copyright @ 2006, Free Software Foundation, Inc.
+# Mindu Dorji.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD.dz\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-04-06 03:31+0100\n"
+"PO-Revision-Date: 2007-05-24 23:11+0530\n"
+"Last-Translator: Tshewang Norbu <[email protected]>\n"
+"Language-Team: DZONGKHA <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2;plural=(n!=1);\n"
+"X-Poedit-Language: Dzongkha\n"
+"X-Poedit-Country: BHUTAN\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "ཌེཀསི་ཊོཔ"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "ཝིན་ཌོ་འཛིན་སྐྱོང་པ"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "བེད་སྤྱོད་: %s\n"
+
+#: ../src/tools/marco-message.c:176
+#: ../src/util.c:133
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "མེ་ཊ་སི་ཊི་དེ་ ཚིག་མང་ཐབས་ལམ་གྱི་དོན་ལུ་ རྒྱབ་སྐྱོར་མེད་པའི་ཐོག་ལས་ ཕྱོགས་སྒྲིག་འབད་ནུག\n"
+
+#: ../src/delete.c:67
+#: ../src/delete.c:94
+#: ../src/marco-dialog.c:50
+#: ../src/theme-parser.c:484
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" དེ་ ཧྲིལ་ཨང་་བཟུམ་ཅིག་སྦེ་ མིང་དཔྱད་འབད་མ་ཚུགས།"
+
+#: ../src/delete.c:74
+#: ../src/delete.c:101
+#: ../src/marco-dialog.c:57
+#: ../src/theme-parser.c:493
+#: ../src/theme-parser.c:548
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "རྒྱབ་ལུས་ཡིག་འབྲུ་\"%s\" ཚུ་ ཡིག་རྒྱུན་\"%s\" ནང་ ཧ་མ་གོ།"
+
+#: ../src/delete.c:132
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "ཌའི་ལོག་ལས་སྦྱོར་ནང་ལས་ འཕྲིན་དོན་\"%s\" མིང་དཔྱད་འབད་མ་ཚུགས། \n"
+
+#: ../src/delete.c:267
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "ཌའི་ལོག་བཀྲམ་སྟོན་ལས་སྦྱོར་:%sནང་ལས་ ལྷག་ནི་ལུ་འཛོལ་བ། \n"
+
+#: ../src/delete.c:348
+#, c-format
+msgid "Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr "གློག་རིམ་%sཅིག་ བསད་ནིའི་སྐོར་ལས་ འདྲི་ནིའི་དོན་ལུ་ མེ་ཊ་སི་ཊི་ཌའི་ལོག་ གསར་བཙུགས་འབད་ནི་ལུ་འཛོལ་བ། \n"
+
+#: ../src/delete.c:456
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "ཧོསིཊི་ནེམ་: %s ལེན་མ་ཚུགས། \n"
+
+#: ../src/display.c:347
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "ཨེགསི་སྒོ་སྒྲིག་རིམ་ལུགས་ཀྱི་བཀྲམ་སྟོན་'%s' ཁ་ཕྱེ་མ་ཚུགས། \n"
+
+#: ../src/errors.c:271
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"བཀྲམ་སྟོན་'%s'ལུ་ འབྲེལ་མཐུད་མེདཔ་ཐལ་སོ་ནུག \n"
+" ཨེགསི་སར་བར་དེ་ སྒོ་བསྡམས་ཡོད་པའམ་ ཁྱོད་ཀྱིས་སྒོ་སྒྲིག་འཛིན་སྐྱོང་པ་དེ་ བསད་ཡོདཔ་/རྩ་མེད\n"
+"་བཏང་ཡོདཔ་བཟུམ་ཅིག་འདུག\n"
+
+#: ../src/errors.c:278
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "ཚབས་ཆེན་ཨའི་ཨོ་གི་འཛོལ་བ་ %d (%s) འདུག་ བཀྲམ་སྟོན་ '%s' གུ \n"
+
+#: ../src/frames.c:1066
+msgid "Close Window"
+msgstr "སྒོ་སྒྲིག་ཁ་བསྡམས།"
+
+#: ../src/frames.c:1069
+msgid "Window Menu"
+msgstr "སྒོ་སྒྲིག་དཀར་ཆག"
+
+#: ../src/frames.c:1072
+msgid "Minimize Window"
+msgstr "སྒོ་སྒྲིག་ཆུང་ཀུ་བཟོ།"
+
+#: ../src/frames.c:1075
+msgid "Maximize Window"
+msgstr "སྒོ་སྒྲིག་སྦོམ་བཟོ།"
+
+#: ../src/frames.c:1078
+msgid "Unmaximize Window"
+msgstr "སྒོ་སྒྲིག་སྦོམ་བཟོ་ནི་བཤོལ།"
+
+#: ../src/frames.c:1081
+msgid "Roll Up Window"
+msgstr "སྒོ་སྒྲིག་ཡར་བསྒྲིལ་"
+
+#: ../src/frames.c:1084
+msgid "Unroll Window"
+msgstr "སྒོ་སྒྲིག་མ་བསྒྲིལ་"
+
+#: ../src/frames.c:1087
+msgid "Keep Window On Top"
+msgstr "སྒོ་སྒྲིག་མགོ་ལུ་བཞག"
+
+#: ../src/frames.c:1090
+msgid "Remove Window From Top"
+msgstr "སྒོ་སྒྲིག་འདི་ མགོ་ལས་རྩ་བསྐྲད་གཏང་"
+
+#: ../src/frames.c:1093
+msgid "Always On Visible Workspace"
+msgstr "ཨ་རྟག་རང་ མཐོང་ཚུགས་པའི་ ལཱ་གི་ས་སྒོ་གུ་"
+
+#: ../src/frames.c:1096
+msgid "Put Window On Only One Workspace"
+msgstr "ལཱ་གི་ས་སྒོ་གཅིག་རྐྱངམ་ཅིག་ སྒོ་སྒྲིག་བཙུགས་"
+
+#: ../src/keybindings.c:1081
+#, c-format
+msgid "Some other program is already using the key %s with modifiers %x as a binding\n"
+msgstr "ལས་རིམ་གཞན་ཅིག་གིས་ ཧེ་མ་ལས་རང་ ལྡེ་མིག་%s དེ་ ལེགས་བཅོས་འབད་མི་%x དང་བཅསཔ་སྦེ་ བཱའིན་ཌིང་བཟུམ་ཅིག་སྦེ་ ལག་ལེན་འཐབ་དོ། \n"
+
+#: ../src/keybindings.c:2713
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr "བརྡ་བཀོད་: %sཅིག་གི་འཛོལ་བའི་སྐོར་ལས་ དཔར་བསྐུན་འབད་ནིའི་དོན་ལུ་ མེ་ཊ་སི་ཊི་ཌའི་ལོག་ གསར་བཙུགས་འབད་ནི་ལུ་འཛོལ་བ།\n"
+
+#: ../src/keybindings.c:2818
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "བརྡ་བཀོད་%dངེས་འཛིན་འབད་འབདཝ་མིན་འདུག\n"
+
+#: ../src/keybindings.c:3847
+msgid "No terminal command has been defined.\n"
+msgstr "ཊར་མི་ནཱལ་བརྡ་བཀོད་ ངེས་འཛིན་འབད་འབདཝ་མིན་འདུག \n"
+
+#: ../src/main.c:67
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
+msgstr ""
+"མེ་ཊ་སི་ཊི་ %s\n"
+"འདྲ་བཤུས་དབང་ཆ་(C) །༢༠༠༡-༢༠༠༢ ཧེ་བོཀ་ པེན་ནིང་ཏཱོན་ རེཌི་ཧེཊི་ རྒྱལ་སྤྱི་དང་གཞན་ཚུ། \n"
+"འདི་སྟོང་མར་འཐོབ་པའི་མཉེན་ཆས་ཅིག་ཨིན། འདྲ་བཤུས་བརྐྱབ་ནིའི་ གནས་ཚིག་གི་དོན་ལུ་ འབྱུང་ཁུངས་ལུ་བལྟ། \n"
+"འདི་ལུ་ཉེན་ལེན་མེད། ཐ་ན་སྐྱེལ་འདྲེན་ནམ་ དམིགས་བསལ་གནད་དོན་ཅིག་གི་དོན་ལུ་ བཏུབ་མི་བཏུབ་ཀྱི་ ཉེན་ལེན་ཙམ་ཡང་མེད། \n"
+
+#: ../src/main.c:171
+msgid "Disable connection to session manager"
+msgstr "ལཱ་ཡུན་འཛིན་སྐྱོང་པ་ལུ་ མཐུད་ལམ་མེདཔ་བཟོ།"
+
+#: ../src/main.c:177
+msgid "Replace the running window manager with Marco"
+msgstr "གཡོག་བཀོལ་བཞིན་ཡོད་མི་ སྒོ་སྒྲིག་འཛིན་སྐྱོང་པའི་ཚབ་ལུ་ མེ་ཊ་སི་ཊི་བཙུགས།"
+
+#: ../src/main.c:183
+msgid "Specify session management ID"
+msgstr "ལཱ་ཡུན་འཛིན་སྐྱོང་པའི་ཨའི་ཌི་ གསལ་བཀོད་འབད།"
+
+#: ../src/main.c:188
+msgid "X Display to use"
+msgstr "ལག་ལེན་འཐབ་ནིའི་ ཨེགསི་བཀྲམ་སྟོན།"
+
+#: ../src/main.c:194
+msgid "Initialize session from savefile"
+msgstr "སེབ་ཕ་ཡེལ་ནང་ལས་ ལཱ་ཡུན་འགོ་འབྱེད་འབད།"
+
+#: ../src/main.c:200
+msgid "Print version"
+msgstr "དཔར་བསྐྲུན་ཐོན་རིམ།"
+
+#: ../src/main.c:352
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "བརྗོད་དོན་སྣོད་ཐོ་: %s ཞིབ་ལྟ་འབད་མ་ཚུགས། \n"
+
+#: ../src/main.c:368
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "བརྗོད་དོན་ཅིག་ འཚོལ་མ་འཐོབ! %s དེ་ ཡོདཔ་བཟོ་ནི་དང་ དེ་ནང་ཨ་རྟག་གི་བརྗོད་དོན་ཚུ་ཡོདཔ་ ངེས་གཏན་བཟོ།\n"
+
+#: ../src/main.c:428
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "%s ལོག་འགོ་བཙུགས་མ་ཚུགས། \n"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:68
+msgid "Mi_nimize"
+msgstr "ཆུང་ཀུ་བཟོ།(_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:70
+msgid "Ma_ximize"
+msgstr "སྦོམ་བཟོ།(_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:72
+msgid "Unma_ximize"
+msgstr "སྦོམ་བཟོ་ནི་བཤོལ།(_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:74
+msgid "Roll _Up"
+msgstr "བསྒྲིལ།(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:76
+msgid "_Unroll"
+msgstr "བསྒྲིལ་བཤོལ།(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:78
+msgid "_Move"
+msgstr "སྤོ།(_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:80
+msgid "_Resize"
+msgstr "ཚད་སླར་སྒྲིག(_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:82
+msgid "Move Titlebar On_screen"
+msgstr "གསལ་གཞི་གུ་ མགོ་མིང་ཕྲ་རིང་སྤོ་བཤུད་འབད།"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:85
+msgid "_Close"
+msgstr "ཁ་བསྡམས།(_C)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:88
+msgid "Always on _Top"
+msgstr "ཨ་རྟག་རང་མགོ་ལུ་(_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:90
+msgid "_Always on Visible Workspace"
+msgstr "ཨ་རྟག་རང་ མཐོང་ཚུགས་པའི་ ལཱ་གི་ས་སྒོ་གུ།(_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:92
+msgid "_Only on This Workspace"
+msgstr "ལཱ་གི་ས་སྒོ་འདི་རྐྱངམ་གཅིག་གུ།(_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:94
+msgid "Move to Workspace _Left"
+msgstr "གཡོན་གྱི་ལཱ་གི་ས་སྒོ་ལུ་སྤོ།(_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:96
+msgid "Move to Workspace R_ight"
+msgstr "གཡས་ཀྱི་ལཱ་གི་ས་སྒོ་ལུ་སྤོ།(_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:98
+msgid "Move to Workspace _Up"
+msgstr "ལྟག་གི་ལཱ་གི་ས་སྒོ་ལུ་སྤོ།(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:100
+msgid "Move to Workspace _Down"
+msgstr "འོག་གི་ལཱ་གི་ས་སྒོ་ལུ་སྤོ།(_D)"
+
+#: ../src/menu.c:191
+#: ../src/prefs.c:2201
+#: ../src/prefs.c:2736
+#, c-format
+msgid "Workspace %d"
+msgstr "ལཱ་གི་ས་སྒོ་%d "
+
+#: ../src/menu.c:200
+msgid "Workspace 1_0"
+msgstr "ལཱ་གི་ས་སྒོ་ ༡༠།(_0)"
+
+#: ../src/menu.c:202
+#, c-format
+msgid "Workspace %s%d"
+msgstr "ལཱ་གི་ས་སྒོ་ %s%d"
+
+#: ../src/menu.c:407
+msgid "Move to Another _Workspace"
+msgstr "ལཱ་གི་ས་སྒོ་ གཞན་ཅིག་ལུ་སྤོ།(_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "སོར་ལྡེ།"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "ཚད་འཛིན།"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "བསྒྱུར་ལྡེ།"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "མེ་ཊ།"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "ཡང་དག་།"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "ཧའི་པར།"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "མོཌི་༢།"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "མོཌི་༣།"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "མོཌི་༤།"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "མོཌི་༥།"
+
+#: ../src/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr "\"%s\" དེ་གིས་ ངོས་ལན་འབད་མི་བཏུབ་པས།"
+
+#: ../src/marco-dialog.c:97
+msgid "You may choose to wait a short while for it to continue or force the application to quit entirely."
+msgstr "ཁྱོད་ཀྱིས་ དེ་འཕྲོ་མཐུད་ནིའི་དོན་ལས་ དུས་ཡུན་ཐུང་ཀུ་ཅིག་བསྒུག་ནི་གདམ་ཁ་རྐྱབས་ ཡང་ན་ གློག་རིམ་འདི་ ཧྲིལ་བུ་སྦེ་སྤང་ནིའི་དོན་ལས་ བང་བཙོང་།"
+
+#: ../src/marco-dialog.c:107
+msgid "_Wait"
+msgstr "བསྒུག་(_W)"
+
+#: ../src/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "བང་ཅན་སྦེ་སྤངས(_F)"
+
+#: ../src/marco-dialog.c:206
+msgid "Title"
+msgstr "མགོ་མིང་།"
+
+#: ../src/marco-dialog.c:218
+msgid "Class"
+msgstr "དབྱེ་ཁག"
+
+#: ../src/marco-dialog.c:244
+msgid "These windows do not support \"save current setup\" and will have to be restarted manually next time you log in."
+msgstr "སྒོ་སྒྲིག་འདི་ཚུ་གིས་ \"save current setup\" ཟེར་མི་ལུ་ རྒྱབ་སྐྱོར་མི་འབད་བས། ཤུལ་ལས་ཁྱོད་ཀྱིས་ ནང་བསྐྱོད་འབདཝ་ད་ ལག་ཐོག་ལས་ ལོག་འགོ་བཙུགས་དགོ"
+
+#: ../src/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"\"%s\"གཡོག་བཀོལ་ནི་ལུ་ འཛོལ་བ་ཅིག་འདུག\n"
+"%s"
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "མེ་ཊ་སི་ཊི།"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(ལག་ལེན་མ་འཐབ་པ) སྒོ་སྒྲིག་མིན་པར་ གློག་རིམ་ཨིན་པའི་སྐབས་ལུ་ འགྲུལ་བསྐྱོད་ཀྱིས་ལཱ་འབདཝ་ཨིན།"
+
+#: ../src/marco.schemas.in.h:2
+msgid "A font description string describing a font for window titlebars. The size from the description will only be used if the titlebar_font_size option is set to 0. Also, this option is disabled if the titlebar_uses_desktop_font option is set to true."
+msgstr "སྒོ་སྒྲིག་གི་མགོ་མིང་ཕྲ་རིང་གི་དོན་ལུ་ ཡིག་གཟུགས་ཅིག་གི་ འགྲེལ་བཤད་རྐྱབ་པའི་ ཡིག་གཟུགས་འགྲེལ་བཤད་ཡིག་རྒྱུན་ཅིག། མགོ་མིང་ཕྲ་རིང་གི་ ཡིག་གཟུགས་ཚད་ཀྱི་གདམ་ཁ་དེ་ ༠ ལུ་གཞི་སྒྲིག་འབད་ཡོད་པ་ཅིན་རྐྱངམ་གཅིག་ འགྲེལ་བཤད་ནང་ལས་བཀོད་མི་ ཚད་དེ་ལག་ལེན་འཐབ་འོང་། འདི་མ་ཚད་ མགོ་མིང་ཕྲ་རིང་གིས་ ལག་ལེན་འཐབ་མི་ ཌེཀསི་ཊོཔ་ ཡིག་གཟུགས་གདམ་ཁ་དེ་ བདེན་པ་གུ་གཞི་སྒྲིག་འབད་དེ་ཡོད་པ་ཅིན་ གདམ་ཁ་འདི་ ལྕོགས་མིན་འགྱོཝ་ཨིན། "
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "མགོ་མིང་ཕྲ་རིང་གི་ བྱ་བ་ལུ་ ཨེབ་གཏང་ཐེངས་གཉིས་འབད།"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "མགོ་མིང་ཕྲ་རིང་གི་ བྱ་བ་འགུ་ བར་ཨེབ་གཏང་།"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Action on title bar right-click"
+msgstr "མགོ་མིང་ཕྲ་རིང་གི་ བྱ་བ་འགུ་ གཡས་ཨེབ་གཏང་།"
+
+#: ../src/marco.schemas.in.h:6
+msgid "Activate window menu"
+msgstr "སྒོ་སྒྲིག་དཀར་ཆག་ ཤུགས་ལྡན་བཟོ།"
+
+#: ../src/marco.schemas.in.h:7
+msgid "Arrangement of buttons on the titlebar"
+msgstr "མགོ་མིང་ཕྲ་རིང་གུ་ ཨེབ་རྟ་ཚུ་གི་བདེ་ཞིབ།"
+
+#: ../src/marco.schemas.in.h:8
+msgid "Arrangement of buttons on the titlebar. The value should be a string, such as \"menu:minimize,maximize,close\"; the colon separates the left corner of the window from the right corner, and the button names are comma-separated. Duplicate buttons are not allowed. Unknown button names are silently ignored so that buttons can be added in future marco versions without breaking older versions."
+msgstr "མགོ་མིང་ཕྲ་རིང་གུ་ ཨེབ་རྟ་ཚུ་གི་བདེ་ཞིབ། བེ་ལུ་དེ་ ཡིག་རྒྱུན་ཅིག་འོང་དགོ་མི་དེ་ཡང་ དཔེར་ན་ \"menu:minimize,maximize,close\";ཟེར་མི་ཚུ་ཨིན། ཀོ་ལཱོན་དེ་གིས་ སྒོ་སྒྲིག་གི་གཡོན་ཟུར་དེ་ གཡས་ཟུར་ལས་ སོ་སོ་འཕྱལཝ་ཨིནམ་ད་ ཨེབ་རྟའི་མིང་ཚུ་ ལྷོད་རྟགས་ཀྱི་འཕྱལ་ཏེ་ཡོད། ཨེབ་རྟ་རྫུན་མ་ཚུ་མི་ཆོག ངོ་མ་ཤེས་པའི་ཨེབ་རྟའི་མིང་ཚུ་ ཁུ་སིམ་སི་སྦེ་ སྣང་མེད་བཞགཔ་ལས་ མ་འོངས་པའི་ མེ་ཊ་སི་ཊི་ཐོན་རིམ་ཚུ་ནང་ ཐོན་རིམ་རྙིངམ་ཚུ་ མེདཔ་མ་གཏང་པར་ ཨེབ་རྟ་ཚུ་ ཁ་སྐོང་བརྐྱབ་ཚུགས་ནི་ཨིན།"
+
+#: ../src/marco.schemas.in.h:9
+msgid "Automatically raises the focused window"
+msgstr "ཆེད་དམིགས་འབད་མི་ སྒོ་སྒྲིག་དེ་ རང་བཞིན་གྱིས་ ཡར་སེང་འབདཝ་ཨིན།"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Clicking a window while holding down this modifier key will move the window (left click), resize the window (middle click), or show the window menu (right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" for example."
+msgstr "ལེགས་བཅོས་འབད་མི་ལྡེ་མིག་འདི་འཆང་ཐོག་ལས་ སྒོ་སྒྲིག་ཅིག་གུ་ ཨེབ་གཏང་འབད་བ་ཅིན་ (གཡོན་ལུ་ཨེབ་གཏང་གིས) སྒོ་སྒྲིག་སྤོ་ནི་དང་ (སྦུག་ལུ་ཨེབ་གཏང་གིས་) སྒོ་སྒྲིག་གི་ཚད་གཞི་སླར་སྒྲིག་འབད་ནི་ (གཡས་ལུ་ཨེབ་གཏང་གིས་) སྒོ་སྒྲིག་གི་དཀར་ཆག་སྟོནམ་ཨིན། ལེགས་བཅོས་འབད་མི་དེ་ དཔེར་ན་ \"&lt;Alt&gt;\" ཡང་ན་ \"&lt;Super&gt;\" བཟུམ་སྦེ་ བཀོད་དེ་ཡོད།"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Close window"
+msgstr "སྒོ་སྒྲིག་ཁ་བསྡམས།"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Commands to run in response to keybindings"
+msgstr "ཀི་བཱའིན་ཌིངསི་གི་ ངོས་ལན་ལུ་ གཡོག་བཀོལ་ནིའི་ བརྡ་བཀོད་ཚུ།"
+
+#: ../src/marco.schemas.in.h:13
+msgid "Compositing Manager"
+msgstr "རྩོམ་འབྲི་འཛིན་སྐྱོང་པ།"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Control how new windows get focus"
+msgstr "སྒོ་སྒྲིག་གསརཔ་ཚུ་ལུ་ ཆེད་དམིགས་ག་དེ་སྦེ་ཐོབ་ཨིན་ན་ཚད་འཛིན་འབད།"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Current theme"
+msgstr "ད་ལྟོའི་བརྗོད་དོན།"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "རང་བཞིན་ཡར་སེང་གདམ་ཁའི་དོན་ལུ་ཕྱིར་འགྱངས་ མི་ལི་སྐར་ཆའི་ནང་།"
+
+#: ../src/marco.schemas.in.h:17
+msgid "Determines whether Marco is a compositing manager."
+msgstr "མེ་ཊ་སི་ཊི་ རྩོམ་འབྲི་འཛིན་སྐྱོང་ཨིན་ན་མེན་ ཐག་གཅདཔ་ཨིན།"
+
+#: ../src/marco.schemas.in.h:18
+msgid "Determines whether applications or the system can generate audible 'beeps'; may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr "གློག་རིམ་ཚུའམ་ རིམ་ལུགས་དེ་གིས་ གོ་ཚུགས་པའི་བརྡ་སྐད་ བཟོ་བསྐྲུན་འབད་ཚུགས་ག་མི་ཚུགས་ ཐག་བཅདཔ་ཨིན། ཁུ་སིམ་སི་གི་བརྡ་སྐད་ འབྱུང་བཅུག་ནིའི་དོན་ལུ་ མིག་མཐོང་དྲིལ་བརྡ་དང་མཉམ་སྦྲགས་ ལག་ལེན་འཐབ་རུང་བཏུབ།"
+
+#: ../src/marco.schemas.in.h:19
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "གློག་རིམ་རྙིང་པའམ་ མེདཔ་ཐལ་མི་ཚུ་ལུ་མཁོ་བའི་ ཁྱད་རྣམ་ཕྱི་འགྱུར་ཚུ་ ལྕོགས་མིན་བཟོ།"
+
+#: ../src/marco.schemas.in.h:20
+msgid "Enable Visual Bell"
+msgstr "མཐོང་ཚུགས་པའི་དྲིལ་བརྡ་ ལྕོགས་ཅན་བཟོ།"
+
+#: ../src/marco.schemas.in.h:21
+msgid "Hide all windows and focus desktop"
+msgstr "སྒོ་སྒྲིག་ཆ་མཉམ་ སྦ་བཞག་ཞིནམ་ལས་ ཌེཀསི་ཊོཔ་ལུ་ ཆེད་དམིགས་འབད།"
+
+#: ../src/marco.schemas.in.h:22
+msgid "If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then the focused window will be automatically raised after a delay specified by the auto_raise_delay key. This is not related to clicking on a window to raise it, nor to entering a window during drag-and-drop."
+msgstr "བདེན་པ་ཨིན་པ་ཅིན་ ཆེད་དམིགས་ཐབས་ལམ་དེ་ \"sloppy\" ཡང་ན་ \"mouse\" ཨིན་པ་ཅིན་ ཆེད་དམིགས་འབད་མི་སྒོ་སྒྲིག་དེ་ ཕྱིར་འགྱངས་ཅིག་གི་ཤུལ་ལས་ རང་བཞིན་གྱིས་ ཆེར་བསྐྱེད་འགྱོ་འོང་། འདི་ཆེར་བསྐྱེད་འབཐད་ནི་ལུ་ སྒོ་སྒྲིག་ཅིག་ལུ་ ཨེབ་གཏང་འབད་མི་དང་འབྲེལ་བ་མེད་་ཡང་ན་ འདྲུད་དེ་བཞག་པའི་སྐབས་ལུ་ སྒོ་སྒྲིག་ཅིག་ནང་འཛུལ་ནི་ལུ་ཡང་འབྲེལ་བ་མེད།"
+
+#: ../src/marco.schemas.in.h:23
+msgid "If true, ignore the titlebar_font option, and use the standard application font for window titles."
+msgstr "བདེན་པ་ཨིན་པ་ཅིན་ མགོ་མིང་ཕྲ་རིང་ ཡིག་གཟུགས་གདམ་ཁ་དེ་ སྣང་མེད་བཞག་སྟེ་ སྒོ་སྒྲིག་མགོ་མིང་གི་དོན་ལུ་ ཚད་ལྡན་གློག་རིམ་ཡིག་གཟུགས་དེ་ ལག་ལེན་འཐབ།(_f)"
+
+#: ../src/marco.schemas.in.h:24
+msgid "If true, marco will give the user less feedback by using wireframes, avoiding animations, or other means. This is a significant reduction in usability for many users, but may allow legacy applications to continue working, and may also be a useful tradeoff for terminal servers. However, the wireframe feature is disabled when accessibility is on."
+msgstr "བདེན་པ་ཨིན་པ་ཅིན་ མེ་ཊ་སི་ཊི་གིས་ ཝའེར་ཕེརེམ་ ལག་ལེན་འཐབ་སྟེ་ འགུལ་བཟོ་སྤངས་པའི་སྒོ་ལས་དང་ ཡང་ན་ ཐབས་ལམ་གཞན་གྱི་ཐོག་ལས་ ལག་ལེན་པ་ལུ་ བསམ་ལན་ཉུང་སུ་བྱིན་འོང་། འདི་གིས་ལག་ལེན་པ་མང་རབས་ཅིག་ལུ་ ལག་ལེན་ལྕོགས་གྲུབ་ རྒྱ་སྦོམ་སྦེ་རང་ མར་ཕབ་འབདཝ་ཨིན་རུང་ སྔོན་བཤུལ་གློག་རིམ་ཚུ་འཕྲོ་མཏུད་དེ་རང་ ལཱ་འབད་བཅུག་ནི་དང་ ཊར་མི་ནཱལ་སར་བར་ཚུ་ལུ་ཡང་ ཚོང་འབྲེལ་་འབད་བཅུགཔ་ཨིན། དེ་འབདཝ་ད་ འཛུལ་སྤྱོད་ཨཱོན་ཡོད་པའི་སྐབས་ ཝའེར་ཕེརེམ་ཁྱད་རྣམ་དེ་ ལྕོགས་མིན་བཟོཝ་ཨིན།"
+
+#: ../src/marco.schemas.in.h:25
+msgid "If true, then Marco works in terms of applications rather than windows. The concept is a bit abstract, but in general an application-based setup is more like the Mac and less like Windows. When you focus a window in application-based mode, all the windows in the application will be raised. Also, in application-based mode, focus clicks are not passed through to windows in other applications. Application-based mode is, however, largely unimplemented at the moment."
+msgstr "བདེན་པ་ཨིན་པ་ཅིན་ མེ་ཊ་སི་ཊི་གིས་ སྒོ་སྒྲིག་ནང་མིན་པར་ གློག་རིམ་ནང་ལཱ་འབདཝ་ཨིན། བསམ་གཞི་འདི་སོ་སོ་ཅིག་ཨིན་པའི་ཁར་ སྤྱིར་བཏང་ལུ་ གློག་རིམ་ལུ་བརྟེན་པའི་ གཞི་སྒྲིག་དེ་མང་སུ་ཅིག་ གཙོ་བོ་གློག་རིག་མེཀ་དང་འདྲཝ་སྦེ་ ཝིན་ཌོསི་དང་མ་འདྲཝ་སྦེ་འོང་ཨིན། གློག་རིམ་ལུ་བརྟེན་པའི་ཐབས་ལམ་ནང་ སྒོ་སྒྲིག་ལུ་ ཆེད་དམིགས་འབདཝ་ད་ གློག་རིམ་ནང་ཡོད་པའི་ སྒོ་སྒྲིག་ཆ་མཉམ་ ཆེར་བསྐྱེད་འབདཝ་ཨིན། དེ་མ་ཚད་ གློག་རིམ་ལུ་བརྟེན་པའི་ཐབས་ལམ་ནང་ ཆེད་དམིགས་ཨེབ་གཏང་ཚུ་ གློག་རིམ་གཞན་གྱི་ སྒོ་སྒྲིག་ཚུ་ལུ་བརྒྱུད་དེ་མི་འགྱོ། ཨིན་རུང་་རེས་ནངས་པར་ གློག་རིམ་ལུ་བརྟེན་པའི་ཐབས་ལམ་དེ་ རྒྱ་ཆེཝ་སྦེ་ ལག་ལེན་འཐབ་ནི་མེད།"
+
+#: ../src/marco.schemas.in.h:26
+msgid "If true, trade off usability for less resource usage"
+msgstr "བདེན་པ་ཨིན་པ་ཅིན་ ཐོན་ཁུངས་ཉུང་སུ་ཅིག་ ལག་ལེན་འཐབ་ནིའི་དོན་ལུ་ ལག་ལེན་ལྕོགས་གྲུབ་ ཚོང་འབྲེལ་འཐབ།"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Lower window below other windows"
+msgstr "སྒོ་སྒྲིག་འདི་ སྒོ་སྒྲིག་གཞན་གྱི་འོག་ལུ་ཕབ།"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Many actions (e.g. clicking in the client area, moving or resizing the window) normally raise the window as a side-effect. Set this option to false to decouple raising from other user actions. Even when this option is false, windows can still be raised by an alt-left-click anywhere on the window, a normal click on the window decorations, or by special messages, such as activation requests from pagers. This option is currently disabled in click-to-focus mode."
+msgstr "བྱ་བ་མང་རབས་(དཔེར་ན་ ཞབས་ཏོག་སྤྱོད་མིའི་མངའ་ཁོངས་ནང་ཨེབ་གཏང་འབད་ནི་དང་ སྒོ་སྒྲིག་སྤོ་བཤུད་འབད་ནིའམ་ ཚད་སླར་སྒྲིག་འབད་ནི) ཚུ་གིས་ ཞོར་གནོད་བཟུམ་ཅིག་སྦེ་ སྒོ་སྒྲིག་ཆེར་བསྐྱེད་འགྱོཝ་ཨིན། ལག་ལེན་པ་གཞན་གྱི་བྱ་བ་ལུ་བརྟེན་ཏེ་ ཆེར་བསྐྱེད་མི་འགྱོ་ནིའི་དོན་ལུ་ གདམ་ཁ་འདི་ རྫུན་པ་ལུ་གཞི་སྒྲིག་འབད། གདམ་ཁ་འདི་རྫུན་པ་གུ་ཨིན་རུང་སྒོ་སྒྲིག་ཚུ་ སྒོ་སྒྲིག་གི་ས་སྒོ་གང་རུང་ལུ་ གདམ་ལྡེ་-གཡོན་གྱི་ཨེབ་གཏང་འབདཝ་ད་དང་ སྒོ་སྒྲིག་གི་མཛེས་སྤྲོས་ལུ་སྤྱིར་བཏང་གི་ཨེབ་གཏང་་ཡང་ན་ དམིགས་བསལ་འཕྲིན་དོན་ དཔེར་ན་ པེ་ཇརསི་ལས་ ཤུགས་བཟོའི་ཞུ་བ་ཚུ་གིས་ཡང་ ཆེར་བསྐྱེད་འབད་བཏུབ་ཨིན། གདམ་ཁ་འདི་ད་ལྟོ་ ཆེད་དམིགས་ལུ་ཨེབ་གཏང་ཐབས་ལམ་ནང་ ལྕོགས་མིན་བཟོ་སྟེ་ཡོད།"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Maximize window"
+msgstr "སྒོ་སྒྲིག་སྦོམ་བཟོ།"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Maximize window horizontally"
+msgstr "སྒོ་སྒྲིག་ཐད་སྙོམས་སྦེ་ སྦོམ་བཟོ།"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Maximize window vertically"
+msgstr "སྒོ་སྒྲིག་ཀེར་ཕྲང་སྦེ་ སྦོམ་བཟོ།"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Minimize window"
+msgstr "སྒོ་སྒྲིག་ཆུང་ཀུ་བཟོ།"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Modifier to use for modified window click actions"
+msgstr "ལེགས་བཅོས་འབད་མི་ སྒོ་སྒྲིག་ཨེབ་གཏང་གི་ བྱ་བའི་དོན་ལུ་ ལག་ལེན་འཐབ་ནིའི་ ལེགས་བཅོས་འབད་མི།"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move backward between panels and the desktop immediately"
+msgstr "པེ་ནཱལསི་དང་ ཌེཀསི་ཊོཔ་གི་བར་ན་ དེ་འཕྲལ་ལས་ རྒྱབ་བཤུད་རྐྱབས།"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "པེ་ནཱལསི་དང་ ཌེཀསི་ཊོཔ་གི་བར་ན་ པོཔ་ཨཔ་གི་ཐོག་ལས་ རྒྱབ་བཤུད་རྐྱབས།"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move backwards between windows immediately"
+msgstr "དེ་འཕྲལ་ལས་ སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ རྒྱབ་བཤུད་རྐྱབས།"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move backwards between windows of an application immediately"
+msgstr "གློག་རིམ་ཅིག་ སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ དེ་འཕྲལ་ལས་རྒྱབ་བཤུད་རྐྱབས།"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move backwards between windows of an application with popup"
+msgstr "གློག་རིམ་ཅིག་ སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ པོཔ་ཨཔ་གི་ཐོག་ལས་ རྒྱབ་བཤུད་རྐྱབས།"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move between panels and the desktop immediately"
+msgstr "དེ་འཕྲལ་ལས་ པེ་ནཱལསི་དང་ ཌེཀསི་ཊོཔ་གི་བར་ན་ སྤོ་བཤུད་འབད།"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move between panels and the desktop with popup"
+msgstr "པེ་ནཱལསི་དང་ ཌེཀསི་ཊོཔ་གི་བར་ན་ པོཔ་ཨཔ་གི་ཐོག་ལས་ སྤོ་བཤུད་འབད།"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move between windows immediately"
+msgstr "དེ་འཕྲལ་ལས་ སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ སྤོ་བཤུད་འབད།"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move between windows of an application immediately"
+msgstr "གློག་རིམ་ཅིག་གི་ སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ དེ་འཕྲལ་ལས་སྤོ་བཤུད་འབད།"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move between windows of an application with popup"
+msgstr "གློག་རིམ་ཅིག་གི་སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ པོཔ་ཨཔ་གི་ཐོག་ལས་ སྤོ་བཤུད་འབད།"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move between windows with popup"
+msgstr "སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ པོཔ་ཨཔ་གི་ཐོག་ལས་ སྤོ་བཤུད་འབད།"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move focus backwards between windows using popup display"
+msgstr "པོཔ་ཨཔ་བཀྲམ་སྟོན་ ལག་ལེན་འཐབ་པའི་ཐོག་ལས་ སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ ཆེད་དམིགས་རྒྱབ་བཤུད་རྐྱབས།"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window"
+msgstr "སྒོ་སྒྲིག་སྤོ་བཤུད་འབད།"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window one workspace down"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་གཅིག་ འོག་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window one workspace to the left"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་གཅིག་ གཡོན་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window one workspace to the right"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་གཅིག་ གཡས་་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window one workspace up"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་གཅིག་ ལྟག་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to east side of screen"
+msgstr "སྒོ་སྒྲིག་དེ་ གསལ་གཞི་གི་ཤར་ཁ་ཐུག་ལུ་སྤོ་"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to north side of screen"
+msgstr "སྒོ་སྒྲིག་དེ་ གསལ་གཞི་གི་བྱང་ཁ་ཐུག་ལུ་སྤོ་"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Move window to north-east corner"
+msgstr "སྒོ་སྒྲིག་དེ་ བྱང་ཤར་སྒྱིད་ཁུག་ནང་སྤོ་"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Move window to north-west corner"
+msgstr "སྒོ་སྒྲིག་དེ་ ནུབ་བྱང་སྒྱིད་ཁུག་ལུ་སྤོ་"
+
+#: ../src/marco.schemas.in.h:55
+msgid "Move window to south side of screen"
+msgstr "སྒོ་སྒྲིག་དེ་ གསལ་གཞི་གི་ ལྷོ་ཁ་ཐུག་ལུ་སྤོ་"
+
+#: ../src/marco.schemas.in.h:56
+msgid "Move window to south-east corner"
+msgstr "སྒོ་སྒྲིག་དེ་ ལྷོ་ཤར་སྒྱིད་ཁུག་ལུ་སྤོ་"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Move window to south-west corner"
+msgstr "སྒོ་སྒྲིག་དེ་ ལྷོ་ནུབ་སྒྱིད་ཁུག་ལུ་སྤོ་"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Move window to west side of screen"
+msgstr "སྒོ་སྒྲིག་དེ་ གསལ་གཞི་གི་ནུབ་ཁ་ཐུག་ལུ་སྤོ་"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Move window to workspace 1"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༡ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Move window to workspace 10"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༡༠ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Move window to workspace 11"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༡༡ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Move window to workspace 12"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༡༢ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:63
+msgid "Move window to workspace 2"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༢ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:64
+msgid "Move window to workspace 3"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༣ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Move window to workspace 4"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༤ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Move window to workspace 5"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༥ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Move window to workspace 6"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༦ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Move window to workspace 7"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༧ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Move window to workspace 8"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༨ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Move window to workspace 9"
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ ༩ པ་ལུ་སྤོ།"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Name of workspace"
+msgstr "ལཱ་གི་ས་སྒོའི་མིང་།"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Number of workspaces"
+msgstr "ལཱ་གི་ས་སྒོའི་གྲངས།"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Number of workspaces. Must be more than zero, and has a fixed maximum to prevent making the desktop unusable by accidentally asking for too many workspaces."
+msgstr "ལཱ་གི་ས་སྒོའི་གྲངས། ཀླད་ཀོར་ལས་མངམ་ཅིག་དང་ མང་མཐའ་གཏན་གཏན་ཅིག་དགོ དེ་ཡང་ལཱ་གི་ས་སྒོ་མང་དྲགས་པའི་བར་རྐྱེན་གྱིས་ ཌེཀསི་ཊོཔ་ལཱ་འབད་མ་བཏུབ་ མི་འགྱོ་ནི་ལས་བཀག་ཐབས་ལུ་ཨིན།"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Raise obscured window, otherwise lower"
+msgstr "སྒོ་སྒྲིག་རབ་རིབ་དེ་ ཡར་སེང་འབད་ ཡང་ན་ མར་ཕབ་འབད།"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Raise window above other windows"
+msgstr "སྒོ་སྒྲིག་དེ་ སྒོ་སྒྲིག་གཞན་ཚུ་གི་ལྟག་ལུ་ ཡར་སེང་འབད།"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Resize window"
+msgstr "སྒོ་སྒྲིག་གི་ ཚད་སླར་སྒྲིག་འབད།"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Run a defined command"
+msgstr "ངེས་འཛིན་གྱི་བརྡ་བཀོད་ཅིག་ གཡོག་བཀོལ།"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Run a terminal"
+msgstr "ཊར་མི་ནཱལ་ཅིག་ གཡོག་བཀོལ།"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Show the panel menu"
+msgstr "པེ་ནཱལ་དཀར་ཆག་སྟོན།"
+
+#: ../src/marco.schemas.in.h:80
+msgid "Show the panel run application dialog"
+msgstr "པེ་ནཱལ་གྱིས་གཡོག་བཀོལ་བའི་ གློག་རིམ་ཌའི་ལོག་དེ་སྟོན།"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Some applications disregard specifications in ways that result in window manager misfeatures. This option puts Marco in a rigorously correct mode, which gives a more consistent user interface, provided one does not need to run any misbehaving applications."
+msgstr "གློག་རིམ་ལ་ལོ་ཅིག་གིས་ ཁྱད་རྣམ་ཚུ་ལུ་བརྩི་འཇོག་མེདཔ་ལས་ སྒོ་སྒྲིག་འཛིན་སྐྱོང་པའི་ཁྱད་རྣམ་ལུ་གནོཔ་ཨིན། གདམ་ཁ་འདི་གིས་ མེ་ཊ་སི་ཊི་ཤུགས་ཅན་སྦེ་ ངེས་བདེན་ཐབས་ལམ་ནང་བཙུགསཔ་ལས་ སྤྱོད་ངན་འབད་མི་གློག་རིམ་ ལག་ལེན་འཐབ་མ་དགོ་པ་ཅིན་ ལག་ལེན་པའི་ངོས་འདྲ་བ་ ལྷག་པར་རིམ་མཐུན་སྦེ་བྱིནམ་ཨིན།"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Switch to workspace 1"
+msgstr "ལཱ་གི་ས་སྒོ་ ༡ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 10"
+msgstr "ལཱ་གི་ས་སྒོ་ ༡༠ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace 11"
+msgstr "ལཱ་གི་ས་སྒོ་ ༡༡ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace 12"
+msgstr "ལཱ་གི་ས་སྒོ་ ༡༢ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace 2"
+msgstr "ལཱ་གི་ས་སྒོ་ ༢ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace 3"
+msgstr "ལཱ་གི་ས་སྒོ་ ༣ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:88
+msgid "Switch to workspace 4"
+msgstr "ལཱ་གི་ས་སྒོ་ ༤ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:89
+msgid "Switch to workspace 5"
+msgstr "ལཱ་གི་ས་སྒོ་ ༥ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:90
+msgid "Switch to workspace 6"
+msgstr "ལཱ་གི་ས་སྒོ་ ༦ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:91
+msgid "Switch to workspace 7"
+msgstr "ལཱ་གི་ས་སྒོ་ ༧ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:92
+msgid "Switch to workspace 8"
+msgstr "ལཱ་གི་ས་སྒོ་ ༨ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:93
+msgid "Switch to workspace 9"
+msgstr "ལཱ་གི་ས་སྒོ་ ༩ པ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:94
+msgid "Switch to workspace above this one"
+msgstr "འདི་གི་ལྟག་གི་ ལཱ་གི་ས་སྒོ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:95
+msgid "Switch to workspace below this one"
+msgstr "འདི་གི་འོག་གི་ ལཱ་གི་ས་སྒོ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:96
+msgid "Switch to workspace on the left"
+msgstr "གཡོན་གྱི་ལཱ་གི་ས་སྒོ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:97
+msgid "Switch to workspace on the right"
+msgstr "གཡས་ཀྱི་ལཱ་གི་ས་སྒོ་ལུ་ སོར་བསྒྱུར་འབད།"
+
+#: ../src/marco.schemas.in.h:98
+msgid "System Bell is Audible"
+msgstr "རིམ་ལུགས་དྲིལ་བརྡ་དེ་ གོ་ཚུགས་པས།"
+
+#: ../src/marco.schemas.in.h:99
+msgid "Take a screenshot"
+msgstr "གསལ་གཞིའི་པར་ཅིག་བཏབ།"
+
+#: ../src/marco.schemas.in.h:100
+msgid "Take a screenshot of a window"
+msgstr "སྒོ་སྒྲིག་གི་ གསལ་གཞིའི་པར་ཅིག་བཏབ།"
+
+#: ../src/marco.schemas.in.h:101
+msgid "Tells Marco how to implement the visual indication that the system bell or another application 'bell' indicator has been rung. Currently there are two valid values, \"fullscreen\", which causes a fullscreen white-black flash, and \"frame_flash\" which causes the titlebar of the application which sent the bell signal to flash. If the application which sent the bell is unknown (as is usually the case for the default \"system beep\"), the currently focused window's titlebar is flashed."
+msgstr "མེ་ཊ་སི་ཊི་ལུ་ རིམ་ལུགས་དྲིལ་བརྡའམ་ གློག་རིམ་གཞན་གྱི་བརྡ་མཚོན་པའི་དྲིལ་བརྡ་དེ་ བསིལ་ཡོད་པའི་སྐོར་ལས་ ག་དེ་སྦེ་ ལག་ལེན་འཐབ་ནི་ཨིན་ན་ མིག་མཐོང་བརྡ་སྟོནམ་ཨིན། ད་ལྟོ་ནུས་ཅན་གྱི་བེལུསི་ གཉིས་ཡོད་མི་དེ་ཡང་ \"fullscreen\"ཟེར་མི་གིས་ གསལ་གཞི་གང་བའི་ དཀར་ནག་ཅིག་འཐོན་བཅུག་དོ་ཡོདཔ་དང་ \"frame_flash\" ཟེར་མི་གིས་ དྲིལ་བརྡའི་བརྡ་རྟགས་ རིབ་སྟོན་འབད་མི་ གློག་རིམ་གྱི་མགོ་མིང་ཕྲ་རིང་གི་དེ་ འཐོན་བཅུགཔ་ཨིན། དྲིལ་བརྡ་གཏང་མི་ གློག་རིམ་དེ་ངོ་མ་ཤེས་པ་ཅིན་ (\"system beep\") ད་ལྟོ་ཆེད་དམིགས་འབད་ཡོད་མི་ སྒོ་སྒྲིག་གི་མགོ་མིང་ཕྲ་རིང་དེ་ འཐོནམ་ཨིན།"
+
+#: ../src/marco.schemas.in.h:102
+msgid "The /apps/marco/global_keybindings/run_command_N keys define keybindings that correspond to these commands. Pressing the keybinding for run_command_N will execute command_N."
+msgstr "The /apps/marco/global_keybindings/run_command_N ཟེར་མི་ལྡེ་མིག་ཚུ་གིས་ བརྡ་བཀོད་འདི་ཚུ་དང་ཆ་མཉམ་པའི་ ཀི་བཱའིན་ཌིངསི་ ངེས་འཛིན་འབདཝ་ཨིན། run_command_N ཟེར་མི་གི་ ཀི་བཱའིན་ཌིང་ ཨེབ་པའི་སྐབས་ བརྡ་བཀོད་ཨེན་ ལག་ལེན་འཐབ་ཨིན།"
+
+#: ../src/marco.schemas.in.h:103
+msgid "The /apps/marco/global_keybindings/run_command_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr "The /apps/marco/global_keybindings/run_command_screenshot ལྡེ་མིག་གིས་ གཞི་སྒྲིག་འདི་གི་བརྡ་བཀོད་ཀྱིས་ ལས་བཀོལ་གྱི་དོན་ལུ་ གསལ་བཀོད་འབད་མི་ ཀི་བཱའིན་ཌིང་ཅིག་ ངེས་འཛིན་འབདཝ་ཨིན། "
+
+#: ../src/marco.schemas.in.h:104
+msgid "The /apps/marco/global_keybindings/run_command_window_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr "The /apps/marco/global_keybindings/run_command_window_screenshot ལྡེ་མིག་གིས་ གཞི་སྒྲིག་འདི་གི་བརྡ་བཀོད་ཀྱིས་ ལས་བཀོལ་གྱི་དོན་ལུ་ གསལ་བཀོད་འབད་མི་ ཀི་བཱའིན་ཌིང་ཅིག་ ངེས་འཛིན་འབདཝ་ཨིན། "
+
+#: ../src/marco.schemas.in.h:105
+msgid "The keybinding that runs the correspondingly-numbered command in /apps/marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "/apps/marco/keybinding_commands ནང་ལུ་ མཉམ་པའི་ཨང་གྲངས་བཀོད་པའི་བརྡ་བཀོད་ གཡོག་བཀོལ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\"ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\"ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:106
+msgid "The keybinding that switches to the workspace above the current workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ད་ལྟོའི་ལཱ་གི་ས་སྒོའི་ལྟག་གི་ ལཱ་གི་ས་སྒོ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\"ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\"བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\"ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:107
+msgid "The keybinding that switches to the workspace below the current workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ད་ལྟོའི་ལཱ་གི་ས་སྒོའི་འོག་གི་ ལཱ་གི་ས་སྒོ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\"དང་ \"&lt;Ctrl&gt;\"ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\"ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:108
+msgid "The keybinding that switches to the workspace on the left of the current workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ད་ལྟོའི་ལཱ་གི་ས་སྒོའི་གཡོན་གྱི་ ལཱ་གི་ས་སྒོ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\"ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\"ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\"་ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:109
+msgid "The keybinding that switches to the workspace on the right of the current workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ད་ལྟོའི་ལཱ་གི་ས་སྒོའི་གཡས་ཀྱི་ ལཱ་གི་ས་སྒོ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\"་ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:110
+msgid "The keybinding that switches to workspace 1. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༡ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:111
+msgid "The keybinding that switches to workspace 10. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༡༠ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:112
+msgid "The keybinding that switches to workspace 11. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༡༡ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:113
+msgid "The keybinding that switches to workspace 12. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༡༢ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:114
+msgid "The keybinding that switches to workspace 2. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༢ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:115
+msgid "The keybinding that switches to workspace 3. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༣ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:116
+msgid "The keybinding that switches to workspace 4. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༤ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:117
+msgid "The keybinding that switches to workspace 5. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༥ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན\"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:118
+msgid "The keybinding that switches to workspace 6. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༦ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:119
+msgid "The keybinding that switches to workspace 7. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༧ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:120
+msgid "The keybinding that switches to workspace 8. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༨ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:121
+msgid "The keybinding that switches to workspace 9. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ལཱ་གི་ས་སྒོ་ ༩ པ་ལུ་ སོར་བསྒྱུར་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:122
+msgid "The keybinding used to activate the window menu. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་དཀར་ཆག་ ཤུགས་ལྡན་བཟོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:123
+msgid "The keybinding used to close a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ཁ་བསྡམ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:124
+msgid "The keybinding used to enter \"move mode\" and begin moving a window using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "\"move mode\" བཙུགས་ནི་དང་ ལྡེ་སྒྲོམ་ལག་ལེན་འཐབ་ཐོག་ལས་ སྒོ་སྒྲིག་སྤོ་བཤུད་ འགོ་བཙུགས་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་\"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:125
+msgid "The keybinding used to enter \"resize mode\" and begin resizing a window using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "\"resize mode\" བཙུགས་ནི་དང་ ལྡེ་སྒྲོམ་ལག་ལེན་འཐབ་ཐོག་ལས་ སྒོ་སྒྲིག་ཅིག་གི་ ཚད་སླར་སྒྲིག་འགོ་བཙུགས་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:126
+msgid "The keybinding used to hide all normal windows and set the focus to the desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྤྱིར་བཏང་གི་སྒོ་སྒྲིག་ཆ་མཉམ་ སྦ་བཞག་ནི་དང་ ཌེཀསི་ཊོཔ་གི་རྒྱབ་གཞི་ལུ་ ཆེད་དམིགས་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:127
+msgid "The keybinding used to maximize a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་སྦོམ་བཟོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:128
+msgid "The keybinding used to minimize a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ཆུང་ཀུ་བཟོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:129
+msgid "The keybinding used to move a window one workspace down. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་གཅིག་གི་ འོག་ལུ་སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:130
+msgid "The keybinding used to move a window one workspace to the left. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་གཅིག་གི་ གཡོན་ལུ་སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:131
+msgid "The keybinding used to move a window one workspace to the right. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་གཅིག་གི་ གཡས་ལུ་སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:132
+msgid "The keybinding used to move a window one workspace up. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་གཅིག་གི་ ལྟག་ལུ་སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:133
+msgid "The keybinding used to move a window to workspace 1. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༡ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:134
+msgid "The keybinding used to move a window to workspace 10. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༡༠ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:135
+msgid "The keybinding used to move a window to workspace 11. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༡༡ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:136
+msgid "The keybinding used to move a window to workspace 12. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༡༢ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:137
+msgid "The keybinding used to move a window to workspace 2. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༢ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:138
+msgid "The keybinding used to move a window to workspace 3. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༣ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:139
+msgid "The keybinding used to move a window to workspace 4. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༤ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:140
+msgid "The keybinding used to move a window to workspace 5. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༥ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:141
+msgid "The keybinding used to move a window to workspace 6. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༦ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:142
+msgid "The keybinding used to move a window to workspace 7. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༧ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:143
+msgid "The keybinding used to move a window to workspace 8. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༨ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:144
+msgid "The keybinding used to move a window to workspace 9. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་ཅིག་ ལཱ་གི་ས་སྒོ་ ༩ པ་ལུ་ སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:145
+msgid "The keybinding used to move focus backwards between panels and the desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་ ལག་ལེན་འཐབ་པའི་ཐོག་ལས་ པེ་ནཱལསི་དང་ ཌེཀསི་ཊོཔ་གི་བར་ན་ ཆེད་དམིགས་ རྒྱབ་བསྐྱོད་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:146
+msgid "The keybinding used to move focus backwards between panels and the desktop, without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་མེད་པར་ པེ་ནཱལསི་དང་ ཌེཀསི་ཊོཔ་གི་བར་ན་ ཆེད་དམིགས་ རྒྱབ་བསྐྱོད་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:147
+msgid "The keybinding used to move focus backwards between windows of an application without a popup window. Holding \"shift\" together with this binding makes the direction go forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་མེད་པར་ སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ ཆེད་དམིགས་ རྒྱབ་བསྐྱོད་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། བཱའིན་ཌིང་འདི་དང་གཅིག་ཁར་\"shift\"འཛིན་ཏེ་བཞགཔ་ད་ ལོག་སྟེ་གདོང་བསྐྱོད་འབད་བཅུགཔ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ དེ་ལས་བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:148
+msgid "The keybinding used to move focus backwards between windows of an application, using a popup window. Holding \"shift\" together with this binding makes the direction go forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་ ལག་ལེན་འཐབ་པའི་ཐོག་ལས་ གློག་རིམ་ཅིག་གི་སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ ཆེད་དམིགས་ རྒྱབ་བསྐྱོད་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། བཱའིན་ཌིང་འདི་གཅིག་ཁར་ \"shift\" འཛིན་ཏེ་བཞགཔ་ད་ ལོག་སྟེ་གདོང་བསྐྱོད་འབད་བཅུགཔ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:149
+msgid "The keybinding used to move focus backwards between windows without a popup window. Holding \"shift\" together with this binding makes the direction go forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་མེད་པར་ སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ ཆེད་དམིགས་ རྒྱབ་བསྐྱོད་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། བཱའིན་ཌིང་འདི་གཅིག་ཁར་\"shift\"འཛིན་ཏེ་བཞགཔ་ད་ ལོག་སྟེ་གདོང་བསྐྱོད་འབད་བཅུགཔ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:150
+msgid "The keybinding used to move focus backwards between windows, using a popup window. Holding \"shift\" together with this binding makes the direction go forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་ ལག་ལེན་འཐབ་པའི་ཐོག་ལས་ སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ ཆེད་དམིགས་ རྒྱབ་བསྐྱོད་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། བཱའིན་ཌིང་འདི་གཅིག་ཁར་ \"shift\" འཛིན་ཏེ་བཞགཔ་ད་ ལོག་སྟེ་གདོང་བསྐྱོད་འབད་བཅུགཔ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:151
+msgid "The keybinding used to move focus between panels and the desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་ ལག་ལེན་འཐབ་སྟེ་ པེ་ནཱལསི་དང་ ཌེཀསི་ཊོཔ་གི་བར་ན་ ཆེད་དམིགས་སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:152
+msgid "The keybinding used to move focus between panels and the desktop, without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་མེད་པར་ པེ་ནཱལསི་དང་ ཌེཀསི་ཊོཔ་གི་བར་ན་ ཆེད་དམིགས་སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:153
+msgid "The keybinding used to move focus between windows of an application without a popup window. Holding the \"shift\" key while using this binding reverses the direction of movement. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་མེད་པར་ གློག་རིམ་ཅིག་གི་སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ ཆེད་དམིགས་སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། ཀི་བཱའིན་ཌིང་འདི་ལག་ལེན་འཐབ་པའི་སྐབས་ \"shift\" ལྡེ་མིག་འཛིན་བཞགཔ་ད་ བསྒུལ་བསྐྱོད་ཀྱི་ལམ་ཕྱོགས་ རྒྱབ་ལོག་འབདཝ་ཨིན་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ དེ་ལས་བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:154
+msgid "The keybinding used to move focus between windows of an application, using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while using this binding reverses the direction of movement. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་ ལག་ལེན་འཐབ་ཐོག་ལས་ གློག་རིམ་ཅིག་གི་སྒོ་སྒྲིག་ཚུ་གི་བར་ན་ ཆེད་དམིགས་སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། (ལམ་ལུགས་ལྟར་དུ་ &lt;Alt&gt;Escape་) བཱའིན་ཌིང་འདི་ ལག་ལེན་འཐབ་པའི་སྐབས་ \"shift\" ལྡེ་མིག་འཛིན་བཞགཔ་ད་ བསྒུལ་བསྐྱོད་ཀྱི་ལམ་ཕྱོགས་ རྒྱབ་ལོག་འདབཝ་ཨིན་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:155
+msgid "The keybinding used to move focus between windows without a popup window. (Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this binding reverses the direction of movement. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་མེད་པར་ སྒོ་སྒྲིག་གི་བར་ན་ ཆེད་དམིགས་སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། (ལམ་ལུགས་ལྟར་དུ་ &lt;Alt&gt;Escape) བཱའིན་ཌིང་འདི་ ལག་ལེན་འཐབ་པའི་སྐབས་ \"shift\" ལྡེ་མིག་འཛིན་བཞགཔ་ད་ བསྒུལ་བསྐྱོད་ཀྱི་ལམ་ཕྱོགས་ རྒྱབ་ལོག་འདབཝ་ཨིན་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:156
+msgid "The keybinding used to move focus between windows, using a popup window. (Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this binding reverses the direction of movement. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པོཔ་ཨཔ་སྒོ་སྒྲིག་ཅིག་ ལག་ལེན་འཐབ་ཐོག་ལས་ སྒོ་སྒྲིག་གི་བར་ན་ ཆེད་དམིགས་སྤོ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། (ལམ་ལུགས་ལྟར་དུ་ &lt;Alt&gt;Escape་) བཱའིན་ཌིང་འདི་ ལག་ལེན་འཐབ་པའི་སྐབས་ \"shift\" ལྡེ་མིག་འཛིན་བཞགཔ་ད་ བསྒུལ་བསྐྱོད་ཀྱི་ལམ་ཕྱོགས་ རྒྱབ་ལོག་འདབཝ་ཨིན་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:157
+msgid "The keybinding used to toggle always on top. A window that is always on top will always be visible over other overlapping windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཨ་རྟག་རང་ མགོ་ལུ་སོར་སྟོན་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། ཨ་རྟག་རང་མགོ་ལུ་ཡོད་མི་ སྒོ་སྒྲིག་དེ་ གཅིག་གི་ལྟག་ལུ་ གཅིག་བརྩེགས་ཏེ་ཡོད་པའི་ སྒོ་སྒྲིག་ཆ་མཉམ་གྱི་ལྟག་ལུ་ མཐོང་ཚུགསཔ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:158
+msgid "The keybinding used to toggle fullscreen mode. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "གསལ་གཞི་གངམ་གི་ཐབས་ལམ་ སོར་སྟོན་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:159
+msgid "The keybinding used to toggle maximization. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྦོམ་བཟོའི་སོར་སྟོན་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:160
+msgid "The keybinding used to toggle shaded/unshaded state. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "གྲིབ་ཅན་/གྲིབ་མེད་གནས་ལུགས་ སོར་སྟོན་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:161
+msgid "The keybinding used to toggle whether the window is on all workspaces or just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་དེ་ ལཱ་གི་ས་སྒོ་ཆ་མཉམ་ལུ་འོང་དགོཔ་ཨིན་ན་ ས་སྒོ་གཅིག་ལུ་འོང་དགོཔ་ཨིན་ན་ སོར་སྟོན་འབད་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:162
+msgid "The keybinding used to unmaximize a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་སྦོམ་བཟོ་བཤོལ་ནི་ལུ་ ལག་ལེན་འཐབ་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:163
+msgid "The keybinding which display's the panel's \"Run Application\" dialog box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པེ་ནཱལ་གྱི་ \"Run Application\" ཟེར་མི་ཌའི་ལོག་བོགསི་ བཀྲམ་སྟོནའ་བད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:164
+msgid "The keybinding which invokes a terminal. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཊར་མི་ནཱལ་ཅིག་ ལས་བཀོལ་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:165
+msgid "The keybinding which invokes the panel's screenshot utility to take a screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "སྒོ་སྒྲིག་གི་པར་ཅིག་བཏབ་ནིའི་དོན་ལུ་ པེ་ནཱལ་གྱི་གསལ་གཞི་པར་གྱི་སྤྱོད་ཆས་ ལས་བཀོལ་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:166
+msgid "The keybinding which invokes the panel's screenshot utility. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པེ་ནཱལ་གྱི་གསལ་གཞི་པར་གྱི་སྤྱོད་ཆས་ ལས་བཀོལ་འབད་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:167
+msgid "The keybinding which shows the panel's main menu. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "པེ་ནཱལ་གྱི་ དཀར་ཆག་གཙོ་བོ་དེ་སྟོན་མི་ ཀི་བཱའིན་ཌིང་། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:168
+msgid "The name of a workspace."
+msgstr "ལཱ་གི་ས་སྒོ་ཅིག་གི་མིང་།"
+
+#: ../src/marco.schemas.in.h:169
+msgid "The screenshot command"
+msgstr "གསལ་གཞིའི་པར་བཏབ་བརྡ་བཀོད།"
+
+#: ../src/marco.schemas.in.h:170
+msgid "The theme determines the appearance of window borders, titlebar, and so forth."
+msgstr "བརྗོད་དོན་གྱིས་ སྒོ་སྒྲིག་གི་མཐའ་མཚམས་དང་ མགོ་མིང་ཕྲ་རིང་ལ་སོགས་པའི་ འབྱུང་སྣང་ཐག་བཅདཔ་ཨིན་།"
+
+#: ../src/marco.schemas.in.h:171
+msgid "The time delay before raising a window if auto_raise is set to true. The delay is given in thousandths of a second."
+msgstr "རང་བཞིན་ཡར་སེང་དེ་ བདེན་པ་གུ་གཞི་སྒྲིག་འབད་བ་ཅིན་ སྒོ་སྒྲིག་ཅིག་ ཡར་སེང་མ་འབད་བའི་ཧེ་མར་ ཕྱིར་འགྱངས་ཀྱི་དུས་ཚོད། ཕྱིར་འགྱངས་དེ་ སྐར་ཆའི་སྟོང་ཆ་ནང་ བྱིན་ཏེ་ཡོད།(_r)"
+
+#: ../src/marco.schemas.in.h:172
+msgid "The window focus mode indicates how windows are activated. It has three possible values; \"click\" means windows must be clicked in order to focus them, \"sloppy\" means windows are focused when the mouse enters the window, and \"mouse\" means windows are focused when the mouse enters the window and unfocused when the mouse leaves the window."
+msgstr "སྒོ་སྒྲིག་ཆེད་དམིགས་ཐབས་ལམ་དེ་གིས་ སྒོ་སྒྲིག་དེ་ཚུ་ ཤུགས་ལྡན་བཟོ་ཐངས་ཀྱི་ བརྡ་སྟོནམ་ཨིན། དེ་ལུ་སྲིད་པའི་བེ་ལུསི་གསུམ་ཡོད་མི་ཚུ་ \"click\" ཟེར་མི་དེ་ སྒོ་སྒྲིག་ཚུ་ལུ་ ཆེད་དམིགས་འབད་ནི་ལུ་ སྒོ་སྒྲིག་ཚུ་ལུ་ ཨེབ་གཏང་འབད་དགོཔ་ཨིནམ་ད་ \"sloppy\" ཟེར་མི་དེ་ མཱའུསི་དེ་ སྒོ་སྒྲིག་ནང་འཛུལཝ་ད་ སྒོ་སྒྲིག་ཚུ་ ཆེད་དམིགས་འབདཝ་ཨིནམ་ད་ \"mouse\" ཟེར་མི་དེ་ མཱའུསི་དེ་སྒོ་སྒྲིག་ནང་འཛུལཝ་ད་ སྒོ་སྒྲིག་ཚུ་ ཆེད་དམིགས་འབད་ནི་དང་ མཱའུསི་ནང་ལས་འཐོན་འགྱོཝ་ད་ ཆེད་དམིགས་བཤོལཝ་ཨིན།"
+
+#: ../src/marco.schemas.in.h:173
+msgid "The window screenshot command"
+msgstr "སྒོ་སྒྲིག་གི་ གསལ་གཞིའི་པར་བཏབ་ཀྱི་བརྡ་བཀོད།"
+
+#: ../src/marco.schemas.in.h:174
+msgid "This keybinding changes whether a window is above or below other windows. If the window is covered by another one, it raises the window above all others, and if the window is already fully visible, it lowers it below all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ སྒོ་སྒྲིག་ཅིག་ སྒོ་སྒྲིག་གཞན་ཚུ་གི་ ལྟག་དང་འོག་ལུ་བསྒྱུར་བཅོས་འབདཝ་ཨིན། སྒོ་སྒྲིག་འདི་ སྒོ་སྒྲིག་གཞན་ཅིག་གིས་ སྤུབས་ཏེ་ཡོད་པ་ཅིན་ འདི་གིས་སྒོ་སྒྲིག་དེ་ གཞན་ཚུ་གི་ལྟག་ལུ་ཆེར་བསྐྱེད་འབདཝ་ཨིན། གལ་སྲིད་སྒོ་སྒྲིག་དེ་ ཧེ་མ་ལས་ མཐོངམ་སྦེ་ཡོད་པ་ཅིན་ གཞན་གྱི་འོག་ལུ་ མར་ཕབ་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ དེ་ལས་བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:175
+msgid "This keybinding lowers a window below other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ སྒོ་སྒྲིག་ཅིག་ སྒོ་སྒྲིག་གཞན་ཚུ་གི་ འོག་ལུ་མར་ཕབ་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:176
+msgid "This keybinding moves a window against the north (top) side of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ སྒོ་སྒྲིག་ཅིག་ གསལ་གཞི་འདི་གི་ བྱང་(ཕྱོགས་) ལུ་སྤོ་བཤུད་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:177
+msgid "This keybinding moves a window into the east (right) side of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ སྒོ་སྒྲིག་ཅིག་ གསལ་གཞི་འདི་གི་ ཤར་(གཡས་)ལུ་སྤོ་བཤུད་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:178
+msgid "This keybinding moves a window into the north-east (top right) corner of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ སྒོ་སྒྲིག་ཅིག་ གསལ་གཞི་འདི་གི་ བྱང་ཤར་(མགོ་གཡས་) ལུ་སྤོ་བཤུད་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:179
+msgid "This keybinding moves a window into the north-west (top left) corner of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ སྒོ་སྒྲིག་ཅིག་ ནུབ་བྱང་(མགོ་གཡོན་)སྒྱིད་ཁུག་ལུ་སྤོ་བཤུད་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:180
+msgid "This keybinding moves a window into the south (bottom) side of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ སྒོ་སྒྲིག་ཅིག་ གསལ་གཞི་འདི་གི་ ལྷོ་(མཇུག་)ལུ་སྤོ་བཤུད་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:181
+msgid "This keybinding moves a window into the south-east (bottom right) corner of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ སྒོ་སྒྲིག་ཅིག་ གསལ་གཞི་འདི་གི་ ཤར་ལྷོ་(མཇུག་གཡས་)ལུ་སྤོ་བཤུད་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:182
+msgid "This keybinding moves a window into the south-west (bottom left) corner of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ སྒོ་སྒྲིག་ཅིག་ གསལ་གཞི་འདི་ ལྷོ་ནུབ་(མཇུག་གཡོན་)སྒྱིད་ཁུག་ལུ་སྤོ་བཤུད་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:183
+msgid "This keybinding moves a window into the west (left) side of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ སྒོ་སྒྲིག་ཅིག་ གསལ་གཞི་འདི་གི་ ནུམ་(གཡོན་)ཕྱོགས་སྤོ་བཤུད་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:184
+msgid "This keybinding raises the window above other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ སྒོ་སྒྲིག་ཅིག་ སྒོ་སྒྲིག་གཞན་ཚུ་གི་ ལྟག་ལུ་ཡར་སེང་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:185
+msgid "This keybinding resizes a window to fill available horizontal space. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ ཐད་སྙོམས་བར་སྟོང་ནང་ གང་ནིའི་དོན་ལུ་ སྒོ་སྒྲིག་ཅིག་ སླར་ཚད་སྒྲིག་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:186
+msgid "This keybinding resizes a window to fill available vertical space. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "ཀི་བཱའིན་ཌིང་འདི་གིས་ ཀེར་ཕྲང་བར་སྟོང་ནང་ གང་ནིའི་དོན་ལུ་ སྒོ་སྒྲིག་ཅིག་ སླར་ཚད་སྒྲིག་འབདཝ་ཨིན། རྩ་སྒྲིག་དེ་ \"&lt;Control&gt;a\" ཡང་ན་ \"&lt;Shift&gt;&lt;Alt&gt;F1\" བཟུམ་སྦེ་མཐོངམ་ཨིན། མིང་དཔྱད་འབད་མི་དེ་ སྟབས་བདེ་དྲགས་སྦེ་ ཆུང་ཡིག་གམ་ཆེ་ཡིག་དང་ བསྡུ་ཡིག་དཔེར་ན་ \"&lt;Ctl&gt;\" དང་ \"&lt;Ctrl&gt;\" ཚུ་བཏུབ་ཨིན། ཁྱོད་ཀྱིས་གདམ་ཁ་འདི་ དམིགས་བསལ་ཡིག་རྒྱུན་ \"disabled\" ལུ་ གཞི་སྒྲིག་འབད་བ་ཅིན་ བྱ་བ་འདི་གི་དོན་ལུ་ ཀི་བཱའིན་ཌིང་མི་འོང་།"
+
+#: ../src/marco.schemas.in.h:187
+msgid "This option determines the effects of double-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'minimize' which will minimize the window, and 'none' which will not do anything."
+msgstr "གདམ་ཁ་འདི་གིས་ མགོ་མིང་ཕྲ་རིང་གུ་ ཨེབ་གཏང་ཐེངས་གཉིས་འབད་བའི་ ནུས་ཤུགས་ཐག་གཅདཔ་ཨིན། ད་ལྟོའི་ནུས་ལྡན་གདམ་ཁ་ཚུ་ ‘སོར་སྟོན་-ནག་གྲིབ’ ཟེར་མི་གིས་ སྒོ་སྒྲིག་གྲིབ་ཅན་བཟོ་ནི་/གྲིབ་བཤོལ་འབདཝ་ཨིན། ‘སོར་སྟོན་-སྦོམ་བཟོ་ ཟེར་མི་གིས་ སྒོ་སྒྲིག་སྦོམ་བཟོ་ནི་/སྦོམ་བཟོ་ནི་བཤོལཝ་ཨིན། 'ཆུང་ཀུ་བཟོ་' ཟེར་མི་གིས་ སྒོ་སྒྲིག་དེ་ཆུང་ཀུ་བཟོཝ་ཨིན། 'ཅི་མེད་' ཟེར་མི་གིས་ ག་ནི་ཡང་མི་འབད།"
+
+#: ../src/marco.schemas.in.h:188
+msgid "This option determines the effects of middle-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'minimize' which will minimize the window, and 'none' which will not do anything."
+msgstr "གདམ་ཁ་འདི་གིས་ མགོ་མིང་ཕྲ་རིང་གུ་ བར་གྱི་ཨེབ་གཏང་གི་ ནུས་ཤུགས་ཐག་གཅདཔ་ཨིན། ད་ལྟོའི་ནུས་ལྡན་གདམ་ཁ་ཚུ་ ‘སོར་སྟོན་-ནག་གྲིབ’ ཟེར་མི་གིས་ སྒོ་སྒྲིག་གྲིབ་ཅན་བཟོ་ནི་/གྲིབ་བཤོལ་འབདཝ་ཨིན།(_s) ‘སོར་སྟོན་-སྦོམ་བཟོ་ ཟེར་མི་གིས་ སྒོ་སྒྲིག་སྦོམ་བཟོ་ནི་/སྦོམ་བཟོ་ནི་བཤོལཝ་ཨིན། 'ཆུང་ཀུ་བཟོ་' ཟེར་མི་གིས་ སྒོ་སྒྲིག་དེ་ཆུང་ཀུ་བཟོཝ་ཨིན།(_m) 'ཅི་མེད་' ཟེར་མི་གིས་ ག་ནི་ཡང་མི་འབད།"
+
+#: ../src/marco.schemas.in.h:189
+msgid "This option determines the effects of right-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'minimize' which will minimize the window, and 'none' which will not do anything."
+msgstr "གདམ་ཁ་འདི་གིས་ མགོ་མིང་ཕྲ་རིང་གུ་ གཡས་ཀྱི་ཨེབ་གཏང་གི་ ནུས་ཤུགས་ཐག་གཅདཔ་ཨིན། ད་ལྟོའི་ནུས་ལྡན་གདམ་ཁ་ཚུ་ ‘སོར་སྟོན་-ནག་གྲིབ’ ཟེར་མི་གིས་ སྒོ་སྒྲིག་གྲིབ་ཅན་བཟོ་ནི་/གྲིབ་བཤོལ་འབདཝ་ཨིན། ‘སོར་སྟོན་-སྦོམ་བཟོ་ ཟེར་མི་གིས་ སྒོ་སྒྲིག་སྦོམ་བཟོ་ནི་/སྦོམ་བཟོ་ནི་བཤོལཝ་ཨིན། 'ཆུང་ཀུ་བཟོ་' ཟེར་མི་གིས་ སྒོ་སྒྲིག་དེ་ཆུང་ཀུ་བཟོཝ་ཨིན། 'ཅི་མེད་' ཟེར་མི་གིས་ ག་ནི་ཡང་མི་འབད།"
+
+#: ../src/marco.schemas.in.h:190
+msgid "This option provides additional control over how newly created windows get focus. It has two possible values; \"smart\" applies the user's normal focus mode, and \"strict\" results in windows started from a terminal not being given focus."
+msgstr "གདམ་ཁ་འདི་གིས་ གསར་བསྐྲུན་འབད་མི་ སྒོ་སྒྲིག་ཚུ་ལུ་ ཆེད་གམིགས་ག་དེ་སྦེ་ཐོབ་ཨིན་ན་ལུ་ ཚད་འཛིན་ཧེང་བཀལ་བྱིནམ་ཨིན། འདི་ལུ་སྲིད་པའི་བེ་ལུ་གཉིས་ཡོད་མི་དེ་ཡང་ \"smart\" འདི་ལག་ལེན་པའི་སྤྱིར་བཏང་ཆེད་དམིགས་ཐབས་ལམ་ལུ་འཇུགཔ་དང་ \"strict\" འདི་གིས་ ཆེད་དམིགས་མ་འབད་བའི་ ཊར་མི་ནཱལ་ཅིག་ནང་ལས་ སྒོ་སྒྲིག་ཚུ་འགོ་བཙུགས་བཅུགཔ་ཨིན།"
+
+#: ../src/marco.schemas.in.h:191
+msgid "Toggle always on top state"
+msgstr "ཨ་རྟག་རང་ མགོའི་གནས་ལུགས་ལུ་ སོར་སྟོན་འབད།"
+
+#: ../src/marco.schemas.in.h:192
+msgid "Toggle fullscreen mode"
+msgstr "གསལ་གཞི་གངམ་གི་ཐབས་ལམ་ སོར་སྟོན་འབད།"
+
+#: ../src/marco.schemas.in.h:193
+msgid "Toggle maximization state"
+msgstr "སྦོམ་བཟོའི་གནས་ལུགས་ སོར་སྟོན་འབད།"
+
+#: ../src/marco.schemas.in.h:194
+msgid "Toggle shaded state"
+msgstr "གྲིབ་ཅན་གྱི་གནས་ལུགས་ སོར་སྟོན་འབད།"
+
+#: ../src/marco.schemas.in.h:195
+msgid "Toggle window on all workspaces"
+msgstr "ལཱ་གི་ས་སྒོ་ཆ་མཉམ་ནང་ སྒོ་སྒྲིག་སོར་སྟོན་འབད།"
+
+#: ../src/marco.schemas.in.h:196
+msgid "Turns on a visual indication when an application or the system issues a 'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy environments."
+msgstr "རྣ་སྐྱོན་ཡོད་མི་ལུ་ཕན་ཐོགས་དང་ འུར་སྒྲ་ཅན་གྱི་མཐའ་འཁོར་ནང་ལག་ལེན་འཐབ་ནིའི་དགོ་ལུ་ གློག་རིམ་ ཡང་ན་ རིམ་ལུགས་ཀྱིས་ དྲིལ་བརྡ་ ཡང་ན་ བརྡ་སྐད་སྟོནམ་ད་ མིག་མཐོང་གི་བརྡ་དོན་ཅིག་གུ་འགྱུརཝ་ཨིན།"
+
+#: ../src/marco.schemas.in.h:197
+msgid "Unmaximize window"
+msgstr "སྒོ་སྒྲིག་སྦོམ་བཟོ་ནི་བཤོལ།"
+
+#: ../src/marco.schemas.in.h:198
+msgid "Use standard system font in window titles"
+msgstr "སྒོ་སྒྲིག་གི་མགོ་མིང་ཚུ་ནང་ ཚད་ལྡན་རིམ་ལུགས་ཀྱི་ཡིག་གཟུགས་ ལག་ལེན་འཐབ།"
+
+#: ../src/marco.schemas.in.h:199
+msgid "Visual Bell Type"
+msgstr "མིག་མཐོང་དྲིལ་བརྡའི་དབྱེ་བ།"
+
+#: ../src/marco.schemas.in.h:200
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "ཆེར་བསྐྱེད་འབད་ནི་དེ་ ལག་ལེན་པ་གཞན་གྱི་ ཕན་ཚུན་འབྲེལ་བའི་ ཞོར་གནོད་ཅིག་ཨིན་དགོཔ་ཨིན་ན་མེན།"
+
+#: ../src/marco.schemas.in.h:201
+msgid "Window focus mode"
+msgstr "སྒོ་སྒྲིག་ཆེད་དམིགས་ཐབས་ལམ།"
+
+#: ../src/marco.schemas.in.h:202
+msgid "Window title font"
+msgstr "སྒོ་སྒྲིག་གི་མགོ་མིང་ཡིག་གཟུགས།"
+
+#: ../src/prefs.c:579
+#: ../src/prefs.c:595
+#: ../src/prefs.c:611
+#: ../src/prefs.c:627
+#: ../src/prefs.c:643
+#: ../src/prefs.c:659
+#: ../src/prefs.c:675
+#: ../src/prefs.c:695
+#: ../src/prefs.c:711
+#: ../src/prefs.c:727
+#: ../src/prefs.c:745
+#: ../src/prefs.c:761
+#: ../src/prefs.c:780
+#: ../src/prefs.c:796
+#: ../src/prefs.c:813
+#: ../src/prefs.c:829
+#: ../src/prefs.c:845
+#: ../src/prefs.c:862
+#: ../src/prefs.c:878
+#: ../src/prefs.c:894
+#: ../src/prefs.c:910
+#: ../src/prefs.c:926
+#: ../src/prefs.c:941
+#: ../src/prefs.c:956
+#: ../src/prefs.c:971
+#: ../src/prefs.c:987
+#: ../src/prefs.c:1003
+#: ../src/prefs.c:1019
+#: ../src/prefs.c:1035
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "ཇི་ཀཱོནཕ་ལྡེ་མིག་\"%s\" དེ་ ནུས་མེད་དབྱེ་བ་ཅིག་ལུ་ གཞི་སྒྲིག་འབད་ནུག \n"
+
+#: ../src/prefs.c:1080
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for mouse button modifier\n"
+msgstr "རིམ་སྒྲིག་གནད་སྡུད་གཞི་རྟེན་ནང་ཡོད་མི་\"%s\" དེ་ མཱའུསི་ཨེབ་རྟ་ ལེགས་བཅོས་འབད་མིའི་དོན་ལུ་ ནུས་ལྡན་གྱི་བེ་ལུ་ཅིག་མིན་པས།\n"
+
+#: ../src/prefs.c:1104
+#: ../src/prefs.c:1125
+#: ../src/prefs.c:1667
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "ཇི་ཀཱོནཕ་ལྡེ་མིག་\"%s\" དེ་ ནུས་མེད་བེ་ལུ་ཅིག་ལུ་ གཞི་སྒྲིག་འབད་ནུག \n"
+
+#: ../src/prefs.c:1254
+#, c-format
+msgid "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the range 1..128\n"
+msgstr "%d ཇི་ཀཱོནཕི་ལྡེ་མིག་ %s ནང་བསགས་ཏེ་ཡོད་མི་དེ་ འོས་ལྡན་འོད་རྟགས་ཀྱི་ཚད་ཅིག་མིན་པས། ཁྱབ་ཚད་ ༡..༡༢༨ གི་ནང་འཁོད་འོང་དགོ\n"
+
+#: ../src/prefs.c:1334
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "ཇི་ཀཱོནཕ་ལྡེ་མིག་%sནང་ལས་ ཡིག་གཟུགས་འགྲེལ་བཤད་\"%s\" ལུ་ མིང་དཔྱད་འབད་མི་ཚུགས་པས། \n"
+
+#: ../src/prefs.c:1561
+#, c-format
+msgid "%d stored in MateConf key %s is not a reasonable number of workspaces, current maximum is %d\n"
+msgstr "%d ཇི་ཀཱོནཕི་ལྡེ་མིག་ %s ནང་བསགས་ཏེ་ཡོད་མི་དེ་ འོས་ལྡན་ལཱ་གི་ས་སྒོའི་གྲངས་ཅིག་མིན་པས། ད་ལྟོའི་མང་མཐའ་དེ་ %dཨིན། \n"
+
+#: ../src/prefs.c:1621
+msgid "Workarounds for broken applications disabled. Some applications may not behave properly.\n"
+msgstr "རྒྱུན་ཆད་གློག་རིམ་ཚུ་གི་དོན་ལུ་ ལཱ་གི་ཉེ་འཁོར་ ལྕོགས་མིན་བཟོ་ཡི། གློག་རིམ་ལ་ལོ་ཅིག་གིས་ ཚུལ་ལྡན་སྦེ་ ལཱ་འབད་མི་བཏུབ་འོང་།\n"
+
+#: ../src/prefs.c:1694
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "%d ཇི་ཀཱོནཕི་ལྡེ་མིག་ %s ནང་བསགས་ཏེ་ཡོད་མི་དེ་ ཁྱབ་ཚད་ ༠ ལས་ %d གི་ཕྱི་ཁར་ཨིན་པས།\n"
+
+#: ../src/prefs.c:1837
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "ལཱ་གི་ས་སྒོའི་གྲངས་%d: %sལུ་ གཞི་སྒྲིག་འབད་ནི་ལུ་འཛོལ་བ། \n"
+
+#: ../src/prefs.c:2231
+#: ../src/prefs.c:2401
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for keybinding \"%s\"\n"
+msgstr "རིམ་སྒྲིག་གནད་སྡུད་ནང་ཐོབ་མི་\"%s\" དེ་ ཀི་བཱའིན་ཌིང་\"%s\" གི་དོན་ལུ་ ནུས་ལྡན་བེ་ལུ་ཅིག་མིན་པས།\n"
+
+#: ../src/prefs.c:2817
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "ལཱ་གི་ས་སྒོ་%d ལས་\"%s\": %sལུ་ གཞི་སྒྲིག་འབད་ནི་ལུ་འཛོལ་བ། \n"
+
+#: ../src/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:407
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "གསལ་གཞི་%d གུ་ བཀྲམ་སྟོན་འབད་མི་'%s' དེ་ ནུས་མེད་ཨིན་པས།\n"
+
+#: ../src/screen.c:423
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager; try using the --replace option to replace the current window manager.\n"
+msgstr "གསལ་གཞི་%d གུ་ བཀྲམ་སྟོན་འབད་མི་\"%s\" དེ་ལུ་ ཧེ་མ་ལས་རང་ སྒོ་སྒྲིག་འཛིན་སྐྱོང་པ་ཅིག་འདུག --ཚབ་བཙུགས་གདམ་ཁ་དེ་ ལག་ལེན་འཐབ་སྟེ་ ད་ལྟོའི་སྒོ་སྒྲིག་འཛིན་སྐྱོང་པ་དེ་གི་ ཚབ་བཙུགས། \n"
+
+#: ../src/screen.c:450
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "གསལ་གཞི་%d གུ་ བཀྲམ་སྟོན་འབད་མི་\"%s\" དེ་ལུ་ སྒོ་སྒྲིག་འཛིན་སྐྱོང་པའི་སེལ་འཐུ་ འཐོབ་མ་ཚུགས།\n"
+
+#: ../src/screen.c:508
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "གསལ་གཞི་%d གུ་ བཀྲམ་སྟོན་འབད་མི་ \"%s\" དེ་ལུ་ ཧེ་མ་ལས་རང་ སྒོ་སྒྲིག་འཛིན་སྐྱོང་པ་ཅིག་འདུག\n"
+
+#: ../src/screen.c:713
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "གསལ་གཞི་%d གུ་ བཀྲམ་སྟོན་འབད་མི་ \"%s\" དེ་ འཛིན་གྲོལ་འབད་མ་ཚུགས།\n"
+
+#: ../src/session.c:844
+#: ../src/session.c:851
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "སྣོད་ཐོ་ '%s': %s གསར་བསྐྲུན་འབད་མ་ཚུགས། \n"
+
+#: ../src/session.c:861
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ": %sའབྲི་ནིའི་དོན་ལུ་ ལཱ་ཡུན་ཡིག་སྣོད་'%s' ཁ་ཕྱེ་མ་ཚུགས། \n"
+
+#: ../src/session.c:1013
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "ལཱ་ཡུན་ཡིག་སྣོད་ '%s': %s འབྲི་ནི་ལུ་འཛོལ་བ། \n"
+
+#: ../src/session.c:1018
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "ལཱ་ཡུན་ཡིག་སྣོད་ '%s': %sཁ་བསྡམ་ནི་ལུ་འཛོལ་བ། \n"
+
+#: ../src/session.c:1093
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "བསྲུངས་བཞག་མི་ ལཱ་ཡུན་ཡིག་སྣོད་%s: %s ལྷག་མ་ཚུགས། \n"
+
+#: ../src/session.c:1128
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "བསྲུངས་བཞག་མི་ ལཱ་ཡུན་ཡིག་སྣོད་:%s མིང་དཔྱད་འབད་མ་ཚུགས། \n"
+
+#: ../src/session.c:1177
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> ཁྱད་ཆོས་མཐོང་ཅི། དེ་འབདཝ་ད་ ང་བཅས་ལུ་ ལཱ་ཡུན་ཨའི་ཌི་ ཧེ་མ་ལས་རང་ཡོད།(_s)"
+
+#: ../src/session.c:1190
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr " <marco_session> ཆ་ཤས་གུ་ ངོ་མ་ཤེས་པའི་ཁྱད་ཆོས་%sའདུག(_s)"
+
+#: ../src/session.c:1207
+msgid "nested <window> tag"
+msgstr "ནེསི་ཊེཌི་<window>ངོ་རྟགས།"
+
+#: ../src/session.c:1265
+#: ../src/session.c:1297
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "<window>གི་ཆ་ཤས་གུ་ མ་ཤེས་པའི་ཁྱད་ཆོས་ %s འདུག"
+
+#: ../src/session.c:1369
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "<maximized> ཆ་ཤས་གུ་ ངོ་མ་ཤེས་པའི་ཁྱད་ཆོས་ %s འདུག"
+
+#: ../src/session.c:1429
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "<geometry> ཆ་ཤས་གུ་ ངོ་མ་ཤེས་པའི་ཁྱད་ཆོས་ %s འདུག"
+
+#: ../src/session.c:1449
+#, c-format
+msgid "Unknown element %s"
+msgstr "ངོ་མ་ཤེས་པའི་ཆ་ཤས་ %s "
+
+#: ../src/session.c:1886
+#, c-format
+msgid "Error launching marco-dialog to warn about apps that don't support session management: %s\n"
+msgstr "ལཱ་ཡུན་འཛིན་སྐྱོང་%sལུ་ རྒྱབ་སྐྱོར་མེད་མི་ གློག་རིམ་སྐོར་ལས་ ཉེན་བརྡ་འབད་ནིའི་ མེ་ཊ་སི་ཊི་ཌའི་ལོག་ གསར་བཙུགས་འབད་ནི་ལུ་འཛོལ་བ། \n"
+
+#: ../src/theme-parser.c:227
+#: ../src/theme-parser.c:245
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "གྱལ་རིམ་%dཡིག་འབྲུ་%d: %s"
+
+#: ../src/theme-parser.c:399
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr " ཁྱད་ཆོས་\"%s\" དེ་ ཆ་ཤས་ཅོག་གཅིགཔ་<%s> ལུ་ ཐེངས་གཉིས་ ཡང་བསྐྱར་འབད་ནུག"
+
+#: ../src/theme-parser.c:417
+#: ../src/theme-parser.c:442
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "ཁྱད་ཆོས་\"%s\" དེ་ སྐབས་འབབ་འདི་ལུ་ ཆ་ཤས་<%s> ལུ་ ནུས་མེད་ཨིན་པས།"
+
+#: ../src/theme-parser.c:503
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "ཧྲིལ་ཨང་%ld དེ་ ཡོད་ཆ་ཨིན་དགོ"
+
+#: ../src/theme-parser.c:511
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "ཧྲིལ་ཨང་%ld དེ་ སྦོམ་དྲགས་པས། ད་ལྟོའི་མང་མཐའ་དེ་%dཨིན།"
+
+#: ../src/theme-parser.c:539
+#: ../src/theme-parser.c:655
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\" དེ་ ལྡིང་ཚད་ཨང་གྲངས་བཟུམ་ཅིག་སྦེ་ མིང་དཔྱད་འབད་མ་ཚུགས།"
+
+#: ../src/theme-parser.c:570
+#: ../src/theme-parser.c:598
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "བུ་ལིན་བེ་ལུ་དེ་ \"true\" ཡང་ན་ \"false\" ཟེར་འོང་དགོ \"%s\" མེན།"
+
+#: ../src/theme-parser.c:625
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "ཟུར་ཁུག་དེ་ ༠.༠ དང་ ༣༦༠.༠ གི་བར་ན་འོང་དགོ་ དེ་འབདཝ་ད་%gཨིན་པས། \n"
+
+#: ../src/theme-parser.c:688
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "ཨཱལ་ཕ་དེ་ ༠.༠ (མ་མཐོངམ་) དང་ ༡.༠ (རྩ་བ་ལས་སྒྲིབ་ཅན་) གི་བར་ན་འོང་དགོ་ དེ་འབདཝ་ད་%gཨིན་པས། \n"
+
+#: ../src/theme-parser.c:753
+#, c-format
+msgid "Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+msgstr "མགོ་མིང་ཆ་ཚད་\"%s\"ནུས་མེད་ཨིན་པས། (ཧ་ཅང་ཆུང་ཀུ་,ཆུང་སུ་ ཆུང་ཀུ་, བར་མ་ སྦོམ་, སྦོམ་སུ་, ཧ་ཅང་སྦོམ་) འོང་དགོ \n"
+
+#: ../src/theme-parser.c:798
+#: ../src/theme-parser.c:806
+#: ../src/theme-parser.c:888
+#: ../src/theme-parser.c:985
+#: ../src/theme-parser.c:1027
+#: ../src/theme-parser.c:1138
+#: ../src/theme-parser.c:1188
+#: ../src/theme-parser.c:1196
+#: ../src/theme-parser.c:3074
+#: ../src/theme-parser.c:3163
+#: ../src/theme-parser.c:3170
+#: ../src/theme-parser.c:3177
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "ཁྱད་ཆོས་\"%s\"མིན་འདུག་ ཆ་ཤས་<%s>གུ"
+
+#: ../src/theme-parser.c:922
+#: ../src/theme-parser.c:993
+#: ../src/theme-parser.c:1035
+#: ../src/theme-parser.c:1146
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "མིང་<%s> གིས་\"%s\" ཐེངས་གཉིས་པ་ ལག་ལེན་འཐབ་ནུག"
+
+#: ../src/theme-parser.c:934
+#: ../src/theme-parser.c:1047
+#: ../src/theme-parser.c:1158
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "རྩ་ལག་<%s> གིས་\"%s\" ངེས་འཛིན་མ་འབད་བས།"
+
+#: ../src/theme-parser.c:1060
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "འཇལ་རྩིས་<%s> གིས་\"%s\" ངེས་འཛིན་མ་འབད་བས།"
+
+#: ../src/theme-parser.c:1073
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> གིས་ འཇལ་རྩིས་ཅིག་གམ་ འཇལ་རྩིས་ཡོད་པའི་ རྩ་ལག་ཅིག་ གསལ་བཀོད་འབད་དགོ"
+
+#: ../src/theme-parser.c:1115
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "ཨཱལ་ཕ་གནས་གོང་ཅིག་ དོན་ལྡན་ཨིན་ནིའི་དོན་ལུ་ ཁྱོད་ཀྱིས་རྒྱབ་གཞི་ཅིག་གསལ་བཀོད་འབད་དགོ་"
+
+#: ../src/theme-parser.c:1206
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "ངོ་མ་ཤེས་པའི་དབྱེ་བ་\"%s\" ཆ་ཤས་<%s> གུ"
+
+#: ../src/theme-parser.c:1217
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "ངོ་མ་ཤེས་པའི་བཟོ་རྣམ་གཞི་སྒྲིག་\"%s\" འདུག་ ཆ་ཤས་<%s> གུ(_s)"
+
+#: ../src/theme-parser.c:1225
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "སྒོ་སྒྲིག་དབྱེ་བ་\"%s\" ལུ་ ཧེ་མ་ལས་རང་ བཟོ་རྣམ་གཞི་སྒྲིག་ཅིག་ འགན་སྤྲོད་འབད་དེ་འདུག"
+
+#: ../src/theme-parser.c:1261
+msgid "Theme already has a fallback icon"
+msgstr "བརྗོད་དོན་ལུ་ཧེ་མ་ལས་རང་ གློ་བུར་རྒྱབ་ཐག་ངོས་དཔར་ཅིག་ཡོད་"
+
+#: ../src/theme-parser.c:1273
+msgid "Theme already has a fallback mini_icon"
+msgstr "བརྗོད་དོན་ལུ་ཧེ་མ་ལས་རང་ གློ་བུར་རྒྱབ་ཐག་ ངོས་དཔར་ཆུང་བ་ཅིག་ཡོད་(_i)"
+
+#: ../src/theme-parser.c:1286
+#: ../src/theme-parser.c:1350
+#: ../src/theme-parser.c:1639
+#: ../src/theme-parser.c:3262
+#: ../src/theme-parser.c:3316
+#: ../src/theme-parser.c:3488
+#: ../src/theme-parser.c:3704
+#: ../src/theme-parser.c:3742
+#: ../src/theme-parser.c:3780
+#: ../src/theme-parser.c:3818
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "ཆ་ཤས་<%s> དེ་<%s> གི་འོག་ལུ་མི་ཆོག"
+
+#: ../src/theme-parser.c:1376
+#: ../src/theme-parser.c:1463
+#: ../src/theme-parser.c:1533
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "\"name\" གི་ཁྱད་ཆོས་མིན་འདུག་ ཆ་ཤས་<%s>གུ"
+
+#: ../src/theme-parser.c:1383
+#: ../src/theme-parser.c:1470
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "\"value\" གི་ཁྱད་ཆོས་མིན་འདུག་ ཆ་ཤས་<%s>གུ"
+
+#: ../src/theme-parser.c:1414
+#: ../src/theme-parser.c:1428
+#: ../src/theme-parser.c:1487
+msgid "Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr "ཨེབ་རྟ་ཚུ་གི་དོན་ལུ་ རྒྱ་ཚད་/མཐོ་ཚད་དང་ རྣམ་པའི་དཔྱ་ཚད་ཀྱི་ ཨེབ་རྟ་གཉིས་ཆ་རང་ གསལ་བཀོད་འབད་མི་ཚུགས་པས།"
+
+#: ../src/theme-parser.c:1437
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "རྒྱང་ཚད་\"%s\" ངོ་མི་ཤེས་པས།"
+
+#: ../src/theme-parser.c:1496
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "རྣམ་པའི་དཔྱ་ཚད་\"%s\" ངོ་མི་ཤེས་པས།"
+
+#: ../src/theme-parser.c:1540
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ \"top\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1547
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ \"bottom\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1554
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"left\" གྱི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1561
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"right\" ཀྱི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1593
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "མཐའ་མཚམས་\"%s\" ངོ་མི་ཤེས་པས།"
+
+#: ../src/theme-parser.c:1746
+#: ../src/theme-parser.c:1856
+#: ../src/theme-parser.c:1963
+#: ../src/theme-parser.c:2190
+#: ../src/theme-parser.c:3007
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"color\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1753
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"x1\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1760
+#: ../src/theme-parser.c:2852
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"y1\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1767
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"x2\" ”ཀྱི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1774
+#: ../src/theme-parser.c:2859
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"y2\" ཀྱི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1863
+#: ../src/theme-parser.c:1970
+#: ../src/theme-parser.c:2116
+#: ../src/theme-parser.c:2197
+#: ../src/theme-parser.c:2303
+#: ../src/theme-parser.c:2401
+#: ../src/theme-parser.c:2621
+#: ../src/theme-parser.c:2747
+#: ../src/theme-parser.c:2845
+#: ../src/theme-parser.c:2919
+#: ../src/theme-parser.c:3014
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ \"x\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1870
+#: ../src/theme-parser.c:1977
+#: ../src/theme-parser.c:2123
+#: ../src/theme-parser.c:2204
+#: ../src/theme-parser.c:2310
+#: ../src/theme-parser.c:2408
+#: ../src/theme-parser.c:2628
+#: ../src/theme-parser.c:2754
+#: ../src/theme-parser.c:2926
+#: ../src/theme-parser.c:3021
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"y\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1877
+#: ../src/theme-parser.c:1984
+#: ../src/theme-parser.c:2130
+#: ../src/theme-parser.c:2211
+#: ../src/theme-parser.c:2317
+#: ../src/theme-parser.c:2415
+#: ../src/theme-parser.c:2635
+#: ../src/theme-parser.c:2761
+#: ../src/theme-parser.c:2933
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"width\" ཀྱི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:1884
+#: ../src/theme-parser.c:1991
+#: ../src/theme-parser.c:2137
+#: ../src/theme-parser.c:2218
+#: ../src/theme-parser.c:2324
+#: ../src/theme-parser.c:2422
+#: ../src/theme-parser.c:2642
+#: ../src/theme-parser.c:2768
+#: ../src/theme-parser.c:2940
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"height\" ཀྱི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:2000
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "རྒྱུ་རྫས་ <%s> གུ་ \"start_angle\" \"from\" ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:2007
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "རྒྱུ་རྫས་<%s>གུ་ \"extent_angle\" ཡང་ན་ \"to\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:2016
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"start_angle\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:2023
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"extent_angle\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:2225
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"alpha\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:2296
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"type\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:2344
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "སྟེགས་རིས་ཀྱི་ དབྱེ་བའི་དོན་ལུ་ བེ་ལུ་\"%s\" ཧ་མ་གོ"
+
+#: ../src/theme-parser.c:2429
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"filename\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:2454
+#: ../src/theme-parser.c:2965
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "བཀང་ནིའི་དབྱེ་བ་\"%s\" ཧ་མ་གོ་ ཆ་ཤས་<%s>གི་དོན་ལུ།"
+
+#: ../src/theme-parser.c:2600
+#: ../src/theme-parser.c:2733
+#: ../src/theme-parser.c:2838
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"state\" ཀྱི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:2607
+#: ../src/theme-parser.c:2740
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"shadow\" ཀྱི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:2614
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "ཆ་ཤས་<%s>གུ་ \"arrow\" ཀྱི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:2667
+#: ../src/theme-parser.c:2789
+#: ../src/theme-parser.c:2877
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "གནས་ལུགས་ \"%s\" ཧ་མ་གོ་ ཆ་ཤས་<%s>གི་དོན་ལུ། "
+
+#: ../src/theme-parser.c:2677
+#: ../src/theme-parser.c:2799
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "གྲིབ་ཅན་\"%s\" ཧ་མ་གོ་ ཆ་ཤས་<%s>གི་དོན་ལུ"
+
+#: ../src/theme-parser.c:2687
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "མདའ་རྟགས་\"%s\" ཧ་མ་གོ་ ཆ་ཤས་<%s>གི་དོན་ལུ།"
+
+#: ../src/theme-parser.c:3100
+#: ../src/theme-parser.c:3216
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "\"%s\" ཟེར་སླབ་མི་ <draw_ops> ངེས་འཛིན་མ་འབད་བས།"
+
+#: ../src/theme-parser.c:3112
+#: ../src/theme-parser.c:3228
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "ནཱ་ལུ་ཌཱ་ཨོཔསི་ \"%s\" གྲངས་སུ་བཙུགསཔ་ད་ གཞི་བསྟུན་ཐད་སྒོརམ་ཅིག་ གསར་བསྐྲུན་འབད་འོང་།"
+
+#: ../src/theme-parser.c:3291
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "ཆ་ཤས་<%s>གུ་ \"value\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:3348
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "ཆ་ཤས་<%s>གུ \"position\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:3357
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "གཞི་ཁྲམ་དུམ་བུའི་དོན་ལུ་ ངོ་མི་ཤེས་པའི་གནས་ས་\"%s\" འདུག"
+
+#: ../src/theme-parser.c:3365
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "གཞི་ཁྲམ་བཟོ་རྣམ་དེ་གི་ གནས་ས་%sལུ་ དུམ་བུ་ཅིག་ ཧེ་མ་ལས་རང་འདུག"
+
+#: ../src/theme-parser.c:3382
+#: ../src/theme-parser.c:3473
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "མིང་\"%s\" དང་གཅིག་ཁར་ <draw_ops> ངེས་འཛིན་མ་འབད་བས།"
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "ཆ་ཤས་<%s>གུ \"function\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:3418
+#: ../src/theme-parser.c:3534
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "ཆ་ཤས་<%s> གུ་ \"state\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:3427
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "ཨེབ་རྟའི་དོན་ལུ་ ངོ་མ་ཤེས་པའི་བྱ་ལས་\"%s\" འདུག"
+
+#: ../src/theme-parser.c:3436
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "ཨེབ་རྟ་ལས་འགན་ \"%s\" འདི་ འ་ནི་ཐོན་རིམ་ (%d, %d དགོ་) ནང་མེད་"
+
+#: ../src/theme-parser.c:3448
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "ཨེབ་རྟའི་དོན་ལུ་ ངོ་མ་ཤེས་པའི་གནས་ལུགས་\"%s\" འདུག"
+
+#: ../src/theme-parser.c:3456
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "བྱ་ལས་%s གནས་ལུགས་%sགི་དོན་ལུ་ གཞི་ཁྲམ་བཟོ་རྣམ་ལུ་ ཨེབ་རྟ་ཅིག་ ཧེ་མ་ལས་རང་འདུག"
+
+#: ../src/theme-parser.c:3526
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "ཆ་ཤས་<%s>གུ \"focus\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:3542
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "ཆ་ཤས་<%s> གུ་ \"style\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:3551
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" དེ་ ཆེད་དམིགས་ཁྱད་ཆོས་ཀྱི་དོན་ལུ་ ནུས་ལྡན་ལེ་བུ་ཅིག་མིན་པས།"
+
+#: ../src/theme-parser.c:3560
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" དེ་ གནས་ལུགས་ཁྱད་ཆོས་ཀྱི་དོན་ལུ་ ནུས་ལྡན་ལེ་བུ་ཅིག་མིན་པས།"
+
+#: ../src/theme-parser.c:3570
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" ཟེར་མི་ བཟོ་རྣམ་ཅིག་ ངེས་འཛིན་མ་འབད་བས"
+
+#: ../src/theme-parser.c:3581
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "ཆ་ཤས་<%s>གུ \"resize\" གི་ཁྱད་ཆོས་མིན་འདུག"
+
+#: ../src/theme-parser.c:3591
+#: ../src/theme-parser.c:3614
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" དེ་ ཚད་གཞི་སླར་སྒྲིག་ ཁྱད་ཆོས་ཀྱི་དོན་ལུ་ ནུས་ལྡན་ལེ་བུ་ཅིག་མིན་པས།"
+
+#: ../src/theme-parser.c:3625
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized/shaded states"
+msgstr "སྦོམ་བཟོ་བཟོཝ་/གྲིབ་ཅན་གནས་ལུགས་ཀྱི་དོན་ལུ་ ཆ་ཤས་<%s> གུ་ \"resize\" ཁྱད་ཆོས་བཞག་ནི་མི་འོང་།"
+
+#: ../src/theme-parser.c:3639
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "སྦོམ་བཟོ་བཟོ་བའི་གནས་ལུགས་ཀྱི་དོན་ལུ་ རྒྱུ་རྫས་<%s> གུ་ \"resize\" ཁྱད་ཆོས་བཞག་ནི་མི་འོང་"
+
+#: ../src/theme-parser.c:3653
+#: ../src/theme-parser.c:3675
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "གནས་ལུགས་%s ཚད་གཞི་སླར་སྒྲིག་%s ཆེད་དམིགས་%sགི་དོན་ལུ་ བཟོ་རྣམ་ཧེ་མ་ལས་རང་ གསལ་བཀོད་འབད་ནུག"
+
+#: ../src/theme-parser.c:3664
+#: ../src/theme-parser.c:3686
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "གནས་ལུགས་%s ཆེད་དམིགས་%sགི་དོན་ལུ་ བཟོ་རྣམ་ཧེ་མ་ལས་རང་ གསལ་བཀོད་འབད་ནུག"
+
+#: ../src/theme-parser.c:3725
+msgid "Can't have a two draw_ops for a <piece> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "<piece> གྱི་ཆ་ཤས་ཅིག་གི་དོན་ལུ་ ཌཱ་ཨོཔསི་ གཉིས་བཞག་མི་བཏུབ། (བརྗོད་དོན་གྱིས་ ཌཱ་ཨོཔསི་ཁྱད་ཆོས་ཅིག་དང་ <draw_ops> ཆ་ཤས་ཅིག་ ཡང་ན་ ཆ་ཤས་གཉིས་ གསལ་བཀོད་འབད་ནུག"
+
+#: ../src/theme-parser.c:3763
+msgid "Can't have a two draw_ops for a <button> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "<button> ཆ་ཤས་ཅིག་གི་དོན་ལུ་ ཌཱ་ཨོཔསི་ གཉིས་བཞག་མི་བཏུབ། (བརྗོད་དོན་གྱིས་ ཌཱ་ཨོཔསི་ཁྱད་ཆོས་ཅིག་དང་ <draw_ops> ཆ་ཤས་ཅིག་ ཡང་ན་ ཆ་ཤས་གཉིས་ གསལ་བཀོད་འབད་ནུག"
+
+#: ../src/theme-parser.c:3801
+msgid "Can't have a two draw_ops for a <menu_icon> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "<menu_icon> ཆ་ཤས་ཅིག་གི་དོན་ལུ་ ཌཱ་ཨོཔསི་ གཉིས་བཞག་མི་བཏུབ། (བརྗོད་དོན་གྱིས་ ཌཱ་ཨོཔསི་ཁྱད་ཆོས་ཅིག་དང་ <draw_ops> ཆ་ཤས་ཅིག་ ཡང་ན་ ཆ་ཤས་གཉིས་ གསལ་བཀོད་འབད་ནུག)"
+
+#: ../src/theme-parser.c:3849
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "བརྗོད་དོན་ནང་ ཕྱི་མཐའི་ཆ་ཤས་དེ་<%s>མེན་པར་ <marco_theme> འོང་དགོ"
+
+#: ../src/theme-parser.c:3869
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "ཆ་ཤས་<%s> དེ་ མིང་/རྩོམ་པ་པོ་/ཚེས་གྲངས་/འགྲེལ་བཤད་ ཆ་ཤས་ཅིག་གི་ནང་ན་མི་ཆོག"
+
+#: ../src/theme-parser.c:3874
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "ཆ་ཤས་<%s> དེ་ <constant> ཆ་ཤས་ཅིག་གི་ནང་ན་མི་ཆོག"
+
+#: ../src/theme-parser.c:3886
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "ཆ་ཤས་<%s> དེ་ distance/border/aspect_ratioཅིག་གི་ནང་ན་མི་ཆོག"
+
+#: ../src/theme-parser.c:3908
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "ཆ་ཤས་<%s> དེ་ ཌཱ་བཀོལ་སྤྱོད་ཀྱི་ ཆ་ཤས་ཅིག་གི་ནང་ན་མི་ཆོག"
+
+#: ../src/theme-parser.c:3918
+#: ../src/theme-parser.c:3948
+#: ../src/theme-parser.c:3953
+#: ../src/theme-parser.c:3958
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "ཆ་ཤས་<%s> དེ་ ཆ་ཤས་<%s> ཅིག་གི་ནང་ན་མི་ཆོག"
+
+#: ../src/theme-parser.c:4180
+msgid "No draw_ops provided for frame piece"
+msgstr "གཞི་ཁྲམ་དུམ་བུའི་དོན་ལུ་ ཌཱ་ཨོཔསི་ བྱིན་བྱིནམ་མིན་འདུག(_o)"
+
+#: ../src/theme-parser.c:4195
+msgid "No draw_ops provided for button"
+msgstr "ཨེབ་རྟའི་དོན་ལུ་ ཌཱ་ཨོཔསི་ བྱིན་བྱིནམ་མིན་འདུག(_o)"
+
+#: ../src/theme-parser.c:4247
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "ཆ་ཤས་<%s>གི་ནང་ན་ ཚིག་ཡིག་མི་ཆོག"
+
+#: ../src/theme-parser.c:4302
+msgid "<name> specified twice for this theme"
+msgstr "བརྗོད་དོན་འདི་གི་དོན་ལུ་ <name> ཐེངས་གཉིས་ གསལ་བཀོད་འབད་ནུག"
+
+#: ../src/theme-parser.c:4313
+msgid "<author> specified twice for this theme"
+msgstr "བརྗོད་དོན་འདི་གི་དོན་ལུ་ <author> ཐེངས་གཉིས་ གསལ་བཀོད་འབད་ནུག"
+
+#: ../src/theme-parser.c:4324
+msgid "<copyright> specified twice for this theme"
+msgstr "བརྗོད་དོན་འདི་གི་དོན་ལུ་ <copyright> ཐེངས་གཉིས་ གསལ་བཀོད་འབད་ནུག"
+
+#: ../src/theme-parser.c:4335
+msgid "<date> specified twice for this theme"
+msgstr "བརྗོད་དོན་འདི་གི་དོན་ལུ་<date> ཐེངས་གཉིས་ གསལ་བཀོད་འབད་ནུག"
+
+#: ../src/theme-parser.c:4346
+msgid "<description> specified twice for this theme"
+msgstr "བརྗོད་དོན་འདི་གི་དོན་ལུ་ <description> ཐེངས་གཉིས་ གསལ་བཀོད་འབད་ནུག"
+
+#: ../src/theme-parser.c:4573
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "བརྗོད་དོན་ %s དོན་ལུ་ ནུས་ལྡན་ཡིག་སྣོད་ཅིག་་འཚོལ་ནི་འཐུས་ཤོར་འབྱུང་ཡོད་\n"
+
+#: ../src/theme-parser.c:4629
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "བརྗོད་དོན་ཡིག་སྣོད་%sནང་ལུ་ རྩ་བའི་<marco_theme> ཆ་ཤས་མིན་འདུག"
+
+#: ../src/theme-viewer.c:74
+msgid "/_Windows"
+msgstr "/སྒོ་སྒྲིག་ཚུ།(_W)"
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/tearoff"
+msgstr "/སྒོ་སྒྲིག་ཚུ་/ཧྲལ་གཏང་།"
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Dialog"
+msgstr "/སྒོ་སྒྲིག་ཚུ་/ཌའི་ལོག(_D)"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Modal dialog"
+msgstr "/སྒོ་སྒྲིག་ཚུ་/ཐབས་ལམ་གྱི་ཌའི་ལོག(_M)"
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Utility"
+msgstr "/སྒོ་སྒྲིག་ཚུ་/སྤྱོད་ཆས།(_U)"
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Splashscreen"
+msgstr "/སྒོ་སྒྲིག་ཚུ་/སི་པེལེཤ་སི་ཀིརིན།(_S)"
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_Top dock"
+msgstr "/སྒོ་སྒྲིག་ཚུ་/མགོའི་ཌོཀ(_T)"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/_Bottom dock"
+msgstr "/སྒོ་སྒྲིག་ཚུ་/མཇུག་གི་ཌོཀ(_B)"
+
+#: ../src/theme-viewer.c:82
+msgid "/Windows/_Left dock"
+msgstr "/སྒོ་སྒྲིག་ཚུ་/གཡོན་གྱི་ཌོཀ(_L)"
+
+#: ../src/theme-viewer.c:83
+msgid "/Windows/_Right dock"
+msgstr "/སྒོ་སྒྲིག་ཚུ་/གཡས་ཀྱི་ཌོཀ(_R)"
+
+#: ../src/theme-viewer.c:84
+msgid "/Windows/_All docks"
+msgstr "/སྒོ་སྒྲིག་ཚུ་/ཌོཀསི་ཆ་མཉམ།(_A)"
+
+#: ../src/theme-viewer.c:85
+msgid "/Windows/Des_ktop"
+msgstr "/སྒོ་སྒྲིག་ཚུ་/ཌེསིཀ་ཊོཔ།(_k)"
+
+#: ../src/theme-viewer.c:134
+msgid "Open another one of these windows"
+msgstr "སྒོ་སྒྲིག་འདི་ཚུ་གི་གྲས་ལས་ གཞན་མི་ཅིག་ཁ་ཕྱེ།"
+
+#: ../src/theme-viewer.c:141
+msgid "This is a demo button with an 'open' icon"
+msgstr "འདི་ 'ཁ་ཕྱེ་ནིའི’ ངོས་དཔར་དང་བཅས་པའི་ ཌེ་མོ་ཨེབ་རྟ་ཅིག་ཨིན།"
+
+#: ../src/theme-viewer.c:148
+msgid "This is a demo button with a 'quit' icon"
+msgstr "འདི་ ‘སྤང་ནིའི་’ ངོས་དཔར་དང་བཅས་པའི་ ཌེ་མོ་ཨེབ་རྟ་ཅིག་ཨིན།"
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr "འདི་ དཔེ་ཚད་ཌའི་ལོག་ཅིག་ནང་གི་ དཔེ་ཚད་འཕྲིན་དོན་ཅིག་ཨིན།"
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "དཀར་ཆག་རྣམ་གྲངས་ རྫུན་མ་%d \n"
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "མཐའ་མཚམས་རྐྱང་པོའི་སྒོ་སྒྲིག"
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr "ཕྲ་རིང་།"
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "སྤྱིར་བཏང་གི་ གློག་རིམ་ཝིན་ཌོ"
+
+#: ../src/theme-viewer.c:381
+msgid "Dialog Box"
+msgstr "ཌའི་ལོག་བོགསི།"
+
+#: ../src/theme-viewer.c:385
+msgid "Modal Dialog Box"
+msgstr "ཐབས་ལམ་གྱི་ ཌའི་ལོག་བོགསི།"
+
+#: ../src/theme-viewer.c:389
+msgid "Utility Palette"
+msgstr "སྤྱོད་ཆས་ཀྱི་པེ་ལེཊི།"
+
+#: ../src/theme-viewer.c:393
+msgid "Torn-off Menu"
+msgstr "ཧྲལ་འགྱོ་མི་ དཀར་ཆག"
+
+#: ../src/theme-viewer.c:397
+msgid "Border"
+msgstr "མཐའ་མཚམས།"
+
+#: ../src/theme-viewer.c:725
+#, c-format
+msgid "Button layout test %d"
+msgstr "ཨེབ་རྟའི་སྒྲིག་བཀོད་བརྟག་ཞིབ་%d"
+
+#: ../src/theme-viewer.c:754
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "སྒོ་སྒྲིག་གཞི་ཁྲམ་གཅིག་འབྲི་ནི་ལུ་ མི་ལི་སྐར་ཆ་%g"
+
+#: ../src/theme-viewer.c:797
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "ལག་ལེན་: མེ་ཊ་སི་ཊི་བརྗོད་དོན་སྟོན་བྱེད། [བརྗོད་དོན་མིང་] \n"
+
+#: ../src/theme-viewer.c:804
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "བརྗོད་དོན་: %sམངོན་གསལ་འབད་ནི་ལུ་འཛོལ་བ། \n"
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "བརྗོད་དོན་\"%s\"སྐར་ཆ་%g ནང་ མངོན་གསལ་འབད་ཡི། \n"
+
+#: ../src/theme-viewer.c:833
+msgid "Normal Title Font"
+msgstr "སྤྱིར་བཏང་གི་ མགོ་མིང་ཡིག་གཟུགས།"
+
+#: ../src/theme-viewer.c:839
+msgid "Small Title Font"
+msgstr "མགོ་མིང་ཡིག་གཟུགས་ཆུང་ཀུ།"
+
+#: ../src/theme-viewer.c:845
+msgid "Large Title Font"
+msgstr "མགོ་མིང་ཡིག་གཟུགས་ཆེ་བ།"
+
+#: ../src/theme-viewer.c:850
+msgid "Button Layouts"
+msgstr "ཨེབ་རྟའི་སྒྲིག་བཀོད།"
+
+#: ../src/theme-viewer.c:855
+msgid "Benchmark"
+msgstr "གློག་རིག་འཇལ་ཚད།"
+
+#: ../src/theme-viewer.c:902
+msgid "Window Title Goes Here"
+msgstr "སྒོ་སྒྲིག་གི་མགོ་མིང་ ནཱ་ལུ་འགྱོཝ་ཨིན།"
+
+#: ../src/theme-viewer.c:1006
+#, c-format
+msgid "Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g seconds wall clock time including X server resources (%g milliseconds per frame)\n"
+msgstr "གཞི་ཁྲམ་%dལེན་ཡི་ ཞབས་ཏོག་སྤྱོད་མི་ཕྱོགས་ཀྱི་སྐར་ཆ་ %gནང། (གཞི་ཁྲམ་རེར་མི་ལི་སྐར་ཆ་%gརེ་) དེ་ལས་ ཨེགསི་སར་བར་ཐོན་ཁུངས་བརྩིས་ཏེ་ ཆེ་འཁོར་ཆུ་ཚོད་ %g ལེན་ཡི། (གཞི་ཁྲམ་རེར་མི་ལི་སྐར་ཆ་ %g རེ)\n"
+
+#: ../src/theme-viewer.c:1219
+msgid "position expression test returned TRUE but set error"
+msgstr "གནས་ས་གསལ་བརྗོད་བརྟག་ཞིབ་ བདེན་པ་སྦེ་ ལོག་བཏང་ཡོད་རུང་ འཛོལ་བ་གཞི་སྒྲིག་འབད་འདུག"
+
+#: ../src/theme-viewer.c:1221
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "གནས་ས་གསལ་བརྗོད་བརྟག་ཞིབ་ རྫུན་པ་སྦེ་ ལོག་བཏང་ཡོད་རུང་ འཛོལ་བ་གཞི་སྒྲིག་མ་འབད་བས།"
+
+#: ../src/theme-viewer.c:1225
+msgid "Error was expected but none given"
+msgstr "འཛོལ་བ་གི་རེ་བ་ཡོད། དེ་འབདཝ་ད་ གཅིག་ཡང་མ་བྱིན་པས།"
+
+#: ../src/theme-viewer.c:1227
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "འཛོལ་བ་%d གི་རེ་བ་ཡོད། དེ་འབདཝ་ད་ %d བྱིན་ནུག"
+
+#: ../src/theme-viewer.c:1233
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "འཛོལ་བ་གི་རེ་བ་མེད། དེ་འབདཝ་ད་ གཅིག་ལོག་བཏང་ནུག %s"
+
+#: ../src/theme-viewer.c:1237
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "ཨེགསི་གི་བེ་ལུ་དེ་%dཨིན་པས། %dགི་རེ་བ་བསྐྱེད་ཅི།"
+
+#: ../src/theme-viewer.c:1240
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "ཝའི་གི་བེ་ལུ་དེ་%dཨིན་པས། %dགི་རེ་བ་བསྐྱེད་ཅི།"
+
+#: ../src/theme-viewer.c:1303
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "ཆ་སྙོམ་%d གི་གསལ་བརྗོད་དེ་ སྐར་ཆ་%g ནང་ མིང་དཔྱད་འབད་ཡོད། (སྤྱི་སྙོམས་སྐར་ཆ་%g) \n"
+
+#: ../src/theme.c:206
+msgid "top"
+msgstr "མགོ"
+
+#: ../src/theme.c:208
+msgid "bottom"
+msgstr "མཇུག"
+
+#: ../src/theme.c:210
+msgid "left"
+msgstr "གཡོན།"
+
+#: ../src/theme.c:212
+msgid "right"
+msgstr "གཡས།"
+
+#: ../src/theme.c:226
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "གཞི་ཁྲམ་འཇལ་རྩིས་ཀྱིས་ མཚོན་གྲངས་\"%s\" གསལ་བཀོད་མི་འབད་བས།"
+
+#: ../src/theme.c:245
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "གཞི་ཁྲམ་འཇལ་རྩིས་ཀྱིས་ མཐའ་མཚམས་\"%s\"གི་དོན་ལུ་ མཚོན་གྲངས་\"%s\" གསལ་བཀོད་མི་འབད་བས།"
+
+#: ../src/theme.c:282
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "ཨེབ་རྟའི་རྣམ་པ་གི་ དཔྱ་ཚད་%gདེ་ འོས་ལྡན་མིན་པས།"
+
+#: ../src/theme.c:294
+msgid "Frame geometry does not specify size of buttons"
+msgstr "གཞི་ཁྲམ་འཇལ་རྩིས་ཀྱིས་ ཨེབ་རྟའི་ཚད་ གསལ་བཀོད་མི་འབད་བས།"
+
+#: ../src/theme.c:928
+msgid "Gradients should have at least two colors"
+msgstr "སྟེགས་རིས་ལུ་ ཉུང་ཤོས་རང་ ཚོས་གཞི་གཉིས་འོང་དགོ"
+
+#: ../src/theme.c:1054
+#, c-format
+msgid "GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "ཇི་ཊི་ཀེ་ཚོས་གཞིའི་ གསལ་བཀོད་དེ་ལུ་ གནས་ལུགས་དེ་ གུག་ཤད་ནང་འོང་དགོ དེ་ཡང་དཔེར་ན་ ཇི་ཊི་ཀེ་:ཨེཕ་ཇི་[སྤྱིར་བཏང་གི་] བཟུམ་ཨིན། གནས་ལུགས་དེ་ ཨ་རྟག་ཡོད་སར་\"%s\"ལུ་ མིང་དཔྱད་འབད་མ་ཚུགས།"
+
+#: ../src/theme.c:1068
+#, c-format
+msgid "GTK color specification must have a close bracket after the state, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "ཇི་ཊི་ཀེ་ཚོས་གཞིའི་ གསལ་བཀོད་དེ་ལུ་ གནས་ལུགས་ཀྱི་ཤུལ་ལས་ ཁ་བསྡམས་མི་གུག་ཤད་ཅིག་འོང་དགོ དེ་ཡང་དཔེར་ན་ ཇི་ཊི་ཀེ་:ཨེཕ་ཇི་[སྤྱིར་བཏང་གི་] བཟུམ་ཨིན། གནས་ལུགས་དེ་ ཨ་རྟག་ཡོད་སར་\"%s\"ལུ་ མིང་དཔྱད་འབད་མ་ཚུགས།"
+
+#: ../src/theme.c:1079
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "ཚོས་གཞིའི་གསལ་བཀོད་ནང་ གནས་ལུགས་\"%s\"ཧ་མ་གོ"
+
+#: ../src/theme.c:1092
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "ཚོས་གཞིའི་གསལ་བཀོད་ནང་ ཚོས་གཞིའི་ཆ་ཤས་\"%s\" ཧ་མ་གོ"
+
+#: ../src/theme.c:1122
+#, c-format
+msgid "Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the format"
+msgstr "མཉམ་སྡེབ་རྩ་སྒྲིག་དེ་ \"blend/bg_color/fg_color/alpha\" ཨིན། \"%s\" དེ་ རྩ་སྒྲིག་ནང་མི་ཚུད།"
+
+#: ../src/theme.c:1133
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "མཉམ་སྡེབ་ཚོས་གཞི་ནང་ ཨཱལ་ཕའི་བེ་ལུ་\"%s\"མིང་དཔྱད་འབད་མ་ཚུགས།"
+
+#: ../src/theme.c:1143
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "མཉམ་སྡེབ་ཚོས་གཞི་ནང་གི་ ཨཱལ་ཕའི་བེ་ལུ་\"%s\" དེ་ ༠.༠ དང་ ༡.༠ གི་བར་ན་མིན་པས།"
+
+#: ../src/theme.c:1190
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "གྲིབ་ཅན་རྩ་སྒྲིག་དེ་ \"shade/base_color/factor\" ཨིན། \"%s\" དེ་ རྩ་སྒྲིག་ནང་མི་ཚུད་པས།"
+
+#: ../src/theme.c:1201
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "གྲིབ་ཅན་ཚོས་གཞི་ནང་ གྲིབ་ཅན་ཆ་རྐྱེན་\"%s\" མིང་དཔྱད་འབད་མ་ཚུགས།"
+
+#: ../src/theme.c:1211
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "གྲིབ་ཅན་ཚོས་གཞི་ནང་ གྲིབ་ཅན་ཆ་རྐྱེན་\"%s\"དེ་ མེད་ཆ་ཨིན་པས"
+
+#: ../src/theme.c:1240
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "ཚོས་གཞི་\"%s\"མིང་དཔྱད་འབད་མ་ཚུགས།"
+
+#: ../src/theme.c:1499
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་ནང་ལུ་ མ་ཆོག་པའི་ཡིག་འབྲུ་'%s' འདུག"
+
+#: ../src/theme.c:1526
+#, c-format
+msgid "Coordinate expression contains floating point number '%s' which could not be parsed"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་ནང་ལུ་ མིང་དཔྱད་འབད་མ་ཚུགས་པའི་ ལྡིང་ཚད་ཨང་'%s'འདུག"
+
+#: ../src/theme.c:1540
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་ནང་ལུ་ མིང་དཔྱད་འབད་མ་ཚུགས་པའི་ ཧྲིལ་ཨང་་'%s'འདུག"
+
+#: ../src/theme.c:1607
+#, c-format
+msgid "Coordinate expression contained unknown operator at the start of this text: \"%s\""
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་ནང་ལུ་ ཚིག་ཡིག་'%s'འགོ་བཙུགསཔ་ད་ ངོ་མ་ཤེས་པའི་ བཀོལ་སྤྱོད་པ་འདུག "
+
+#: ../src/theme.c:1664
+msgid "Coordinate expression was empty or not understood"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་ སྟོངམ་འོང་ནི་དང་ ཡང་ན་ ཧ་མ་གོ་བས།"
+
+#: ../src/theme.c:1801
+#: ../src/theme.c:1811
+#: ../src/theme.c:1845
+msgid "Coordinate expression results in division by zero"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་ཀྱིས་ ཀླད་ཀོར་གྱིས་ བགོ་བཤའ་བརྐྱབ་དགོཔ་འབྱུངམ་ཨིན།"
+
+#: ../src/theme.c:1853
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་ཀྱིས་ ཐབས་ལམ་བཀོལ་སྤྱོད་པ་དེ་ ལྡིང་ཚད་ཨང་གྲངས་གུ་ ལག་ལེན་འཐབ་ཐབས་འབདཝ་ཨིན།"
+
+#: ../src/theme.c:1909
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་དེ་ལུ་ བཀོལ་སྤྱོད་པ་\"%s\" ཅིག་ཡོད་སར་ ཨོ་པི་རེནཌི་ཅིག་གི་ རེ་བ་བསྐྱེད་ཅི།"
+
+#: ../src/theme.c:1918
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་དེ་ལུ་ ཨོ་པི་རེནཌི་ཅིག་ཡོད་སར་ བཀོལ་སྤྱོད་པ་ཅིག་གི་ རེ་བ་བསྐྱེད་ཅི།"
+
+#: ../src/theme.c:1926
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་དེ་ ཨོ་པི་རེནཌི་གིས་ མཇུག་བསྡུ་ནིའི་ཚབ་ལུ་ བཀོལ་སྤྱོད་པ་གིས་ མཇུག་བསྡུ་ནུག"
+
+#: ../src/theme.c:1936
+#, c-format
+msgid "Coordinate expression has operator \"%c\" following operator \"%c\" with no operand in between"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་དེ་ལུ་ བར་ན་ཨོ་པི་རེནཌི་མེད་པར་ བཀོལ་སྤྱོད་པ་\"%c\"གི་ཤུལ་བདའ་སྟེ་ བཀོལ་སྤྱོད་པ་\"%c\" འདུག"
+
+#: ../src/theme.c:2054
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་མིང་དཔྱད་དེ་ དེ་གི་གནད་ཁོངས་ལས་ལུད་སོ་ནུག"
+
+#: ../src/theme.c:2083
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་དེ་ལུ་ གུག་ཤད་ཁ་མ་ཕྱེ་བར་ གུག་ཤད་ཁ་བསྡམས་མི་ཅིག་འདུག"
+
+#: ../src/theme.c:2145
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་ལུ་ ངོ་མ་ཤེས་པའི་ འགྱུར་བ་ཅན་\"%s\"འདུག"
+
+#: ../src/theme.c:2200
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་དེ་ལུ་ གུག་ཤད་ཁ་ཕྱེ་ཞིནམ་ལས་ ཁ་མ་བསྡམས་ཅིག་འདུག"
+
+#: ../src/theme.c:2211
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "ཆ་སྙོམ་གསལ་བརྗོད་དེ་ལུ་ བཀོལ་སྤྱོད་པ་ ཡང་ན་ ཨོ་པི་རེནཌི་ཚུ་ ག་ནི་ཡང་ ཡོད་དོ་བཟུམ་ཅིག་མིན་འདུག"
+
+#: ../src/theme.c:2452
+#: ../src/theme.c:2474
+#: ../src/theme.c:2495
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "བརྗོད་དོན་དེ་ནང་ གསལ་བརྗོད ་\"%s\" ཅིག་ཡོད་མི་ཏེ་ འཛོལ་བ་ %s ལུ་གྱུར་ནུག\n"
+
+#: ../src/theme.c:3949
+#, c-format
+msgid "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be specified for this frame style"
+msgstr "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> དེ་ཚུ་ གཞི་ཁྲམ་བཟོ་རྣམ་འདི་གི་དོན་ལུ་ གསལ་བཀོད་འབད་དགོ"
+
+#: ../src/theme.c:4425
+#: ../src/theme.c:4450
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>བརླག་སྟོར་ཞུགས་ནུག"
+
+#: ../src/theme.c:4496
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "བརྗོད་དོན་\"%s\": %s མངོན་གསལ་འབད་མ་ཚུགས། \n"
+
+#: ../src/theme.c:4606
+#: ../src/theme.c:4613
+#: ../src/theme.c:4620
+#: ../src/theme.c:4627
+#: ../src/theme.c:4634
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "བརྗོད་དོན་\"%s\"གི་དོན་ལུ་ <%s> གཞི་སྒྲིག་མ་འབད་བས།"
+
+#: ../src/theme.c:4642
+#, c-format
+msgid "No frame style set for window type \"%s\" in theme \"%s\", add a <window type=\"%s\" style_set=\"whatever\"/> element"
+msgstr "བརྗོད་དོན་ \"%s\"ནང་ སྒོ་སྒྲིག་དབྱེ་བ་\"%s\"གི་དོན་ལུ་ གཞི་ཁྲམ་གྱི་བཟོ་རྣམ་ གཞི་སྒྲིག་མ་འབད་བས། <window type=\"%s\" style_set=\"whatever\"/> འབད་མི་ཅིག་ ཆ་ཤས་ཅིག་ ཁ་སྐོང་རྐྱབས།"
+
+#: ../src/theme.c:5009
+#: ../src/theme.c:5071
+#: ../src/theme.c:5134
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "ལག་ལེན་པའི་ངེས་འཛིན་ཆད་མེད་དེ་ ཚུགས་ཡིག་ཅིག་གིས་ འགོ་བཙུགས་དགོ \"%s\" གིས་མི་བཏུབ།"
+
+#: ../src/theme.c:5017
+#: ../src/theme.c:5079
+#: ../src/theme.c:5142
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "ཆད་མེད་\"%s\" དེ་ ཧེ་མ་ལས་རང་ ངེས་འཛིན་འབད་ནུག"
+
+#: ../src/util.c:98
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "རྐྱེན་སེལ་དྲན་དེབ་%s ཁ་ཕྱེ་མ་ཚུགས། \n"
+
+#: ../src/util.c:108
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "དྲན་དེབ་ཡིག་སྣོད་%s: %sཨེཕ་ཌི་() ཁ་ཕྱེ་མ་ཚུགས། \n"
+
+#: ../src/util.c:114
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "དྲན་དེབ་ཡིག་སྣོད་%s ཁ་ཕྱེ་ཡོད།\n"
+
+#: ../src/util.c:231
+msgid "Window manager: "
+msgstr "སྒོ་སྒྲིག་འཛིན་སྐྱོང་པ་:"
+
+#: ../src/util.c:379
+msgid "Bug in window manager: "
+msgstr "སྒོ་སྒྲིག་འཛིན་སྐྱོང་པའི་ནང་ལུ་རྐྱེན:"
+
+#: ../src/util.c:408
+msgid "Window manager warning: "
+msgstr "སྒོ་སྒྲིག་འཛིན་སྐྱོང་པའི་ཉེན་བརྡ་:"
+
+#: ../src/util.c:432
+msgid "Window manager error: "
+msgstr "སྒོ་སྒྲིག་འཛིན་སྐྱོང་པའི་འཛོལ་བ་:"
+
+#: ../src/window-props.c:192
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr ""
+"གློག་རིམ་གྱིས་ རྫུས་མ་ _NET_WM_PID %lu\n"
+"ཅིག་གཞི་སྒྲིག་འབད་ནུག \n"
+
+#: ../src/window-props.c:324
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%sགུ)"
+
+#: ../src/window-props.c:1405
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "སྒོ་སྒྲིག་0x%lxགི་དོན་ལུ་ ནུས་མེད་ཌབ་ལུ་ཨེམ་ ཊཱན་སིནཊི་%sགི་དོན་ལུ་གསལ་བཀོད་འབད་ཡོདཔ།\n"
+
+#. first time through
+#: ../src/window.c:5499
+#, c-format
+msgid "Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER window as specified in the ICCCM.\n"
+msgstr "སྒོ་སྒྲིག་%s གིས་ SM_CLIENT_ID དེ་ ICCCMནང་ གསལ་བཀོད་འབད་དོ་བཟུམ་ WM_CLIENT_LEADER སྒོ་སྒྲིག་ལུ་ གཞི་སྒྲིག་འབད་ནི་གི་ཚབ་ལུ་ དེ་ཉིད་ལུ་ གཞི་སྒྲིག་འབདཝ་ཨིན། \n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:6102
+#, c-format
+msgid "Window %s sets an MWM hint indicating it isn't resizable, but sets min size %d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr "སྒོ་སྒྲིག་%s གིས་ དེ་གི་ཚད་གཞི་སླར་སྒྲིག་འབད་མི་བཏུབ་པའི་ བརྡ་སྟོན་ནི་ལུ་ ཨེམ་ཌབ་ལུ་ཨེམ་བརྡ་མཚོན་ཅིག་ གཞི་སྒྲིག་འབདཝ་ཨིན། དེ་འབདཝ་ད་ ཚད་ཀྱི་ཉུང་མཐའ་%d x %d དང་ མང་མཐའ་%d x %d གཞི་སྒྲིག་འབདཝ་ཨིན་རུང་ དེ་ལུ་དོན་དག་ སྦོམ་ཅིག་མེདཔ་ཨིན་པས། \n"
+
+#: ../src/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"སྒོ་སྒྲིག་0x%lx ལུ་ རྒྱུ་དངོས་%sའདུག \n"
+"དེ་ལུ་དབྱེ་བ་%sརྩ་སྒྲིག་%dཡོད་དགོ་པའི་རེ་བ་བསྐྱེདཔ་ཨིན་རུང་\n"
+" ངོ་མ་ལུ་དབྱེ་བ་%s རྩ་སྒྲིག་%d དང་ རྣམ་གྲངས་%d འདུག\n"
+"འདི་སྒོ་སྒྲིག་འཛིན་སྐྱོང་པའི་རྐྱེན་མེན་པར་ གློག་རིམ་གྱི་རྐྱེན་ཨིནམ་བཟུམ་ཅིག་འདུག\n"
+" སྒོ་སྒྲིག་དེ་ལུ་མགོ་མིང་=\"%s\" དབྱེ་ཁག་=\"%s\" མིང་ =\"%s\" འདུག \n"
+
+#: ../src/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "རྒྱུ་དངོས་ %s ཡོད་མི་ སྒོ་སྒྲིག་ 0x%lx ནང་ལུ་ ནུས་མེད་ཡུ་ཊི་ཨེཕ་-༨ འདུ\n"
+
+#: ../src/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "རྒྱུ་དངོས་ %s ཡོད་མི་ སྒོ་སྒྲིག་ 0x%lx ནང་ལུ་ ཐོ་ཡིག་ནང་ལུ་རྣམ་གྲངས་ %d གི་དོན་ལས་ ནུས་མེད་ཡུ་ཊི་ཨེཕ་-༨ ཡོད\n"
+
+#~ msgid "On _Top"
+#~ msgstr "མགོ་ལུ།(_T)"
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "གློག་རིམ་འདི་ བང་ཅན་སྦེ་སྤང་བཅུག་པ་ཅིན་ མ་བསྲུངས་པའི་ བསྒྱུར་བཅོས་ཚུ་ བརླག་སྟོར་ཞུགས་འོང་།"
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "དཀར་ཆག་ངོས་དཔར་དོན་ལུ་ ངོ་མ་ཤེས་པའི་བྱ་ལས་\"%s\" འདུག"
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "དཀར་ཆག་ངོས་དཔར་དོན་ལུ་ ངོ་མ་ཤེས་པའི་གནས་ལུགས་\"%s\" འདུག"
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr ""
+#~ "བྱ་ལས་%sགནས་ལུགས་%s གི་དོན་ལས་ བརྗོད་དོན་ལུ་ དཀར་ཆག་ངོས་དཔར་ཅིག་ ཧེ་མ་ལས་རང་འདུག"
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "དཀར་ཆག་ངོས་དཔར་གྱི་དོན་ལུ་ ཌཱ་ཨོཔསི་ བྱིན་བྱིནམ་མིན་འདུག(_o)"
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "ཡིག་སྣོད་%s: %sནང་ལས་ བརྗོད་དོན་ལྷག་མ་ཚུགས། \n"
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> ཚུ་ བརྗོད་དོན་"
+#~ "འདི་གི་དོན་ལུ་ གསལ་བཀོད་འབད་དགོ"
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "གློམ་རིམ་ལ་ལོ་ཅིག་གིས་ གསལ་བཀོད་ཚུ་མེདཔ་གཏང་སྟེ་ སྒོ་སྒྲིག་འཛིན་སྐྱོང་པའི་ཁྱད་རྣམ་ ཕྱི་འགྱུར་བཟོཝ་ཨིན། "
+#~ "དཔེར་ན་ མེ་ཊ་སི་ཊི་གིས་ ཌའི་ལོག་ཆ་མཉམ་ རང་སོའི་སྔོན་གྱི་སྒོ་སྒྲིག་དང་འཁྲིལ་ཏེ་ རིམ་མཐུད་གནས་ས་ལུ་ "
+#~ "བཞག་ཚུགསཔ་ཨིན། འདི་གི་དོན་ལས་ ཌའི་ལོག་གི་དོན་ལུ་ གསལ་བཀོད་འབད་མི་གནས་ས་ སྣང་མེད་བཟོ་དགོ ཇ་"
+#~ "བ་/སུ་ཡིང་གི་ཐོན་རིམ་ ལ་ལོ་ཅིག་གིས་ རང་སོའི་པོཔ་ཨཔ་དཀར་ཆག་ཚུ་ ཌའི་ལོག་སྦེ་ རྟགས་བཀལཝ་ལས་ "
+#~ "དཀར་ཆག་ཚུ་གིས་ ཇ་བ་གློག་རིམ་མེདཔ་ཐལ་མི་ཚུ་ ལག་ལེན་འཐབ་བཅུག་ནིའི་དོན་ལུ་ མེ་ཊ་སི་ཊི་གིས་ ཌའི་"
+#~ "ལོག་གནས་ས་ ལྕོགས་མིན་བཟོ་དགོ འདི་བཟུམ་གྱི་དཔེ་གཞན་ཡང་ ལེ་ཤ་ཅིག་ཡོད། གདམ་ཁ་འདི་གིས་ མེ་ཊ་སི་"
+#~ "ཊི་ ཐབས་ལམ་ངེས་བདེན་ནང་བཙུགསཔ་ལས་ ཁྱོད་ཀྱིས་གློག་རིམ་མེདཔ་ཐལ་མི་ ལག་ལེན་འཐབ་འདོད་མེད་པ་"
+#~ "ཅིན་ ཡུ་ཨའི་དེ་བ་དྲགཔ་ཅིག་བྱིནམ་ཨིན། དེ་འབདཝ་ད་ ལཱ་གི་ཉེ་འཁོར་ཚུ་ སྔོན་སྒྲིག་ཐོག་ལས་ ལྕོགས་ཅན་བཟོ་"
+#~ "དགོ འཛམ་གླིང་ངོ་མ་དེ་ ས་གནས་བྱང་ཉེས་ཅིག་ཨིན་པས། ཝོརོཀ་ཨེ་རའུནཌི་ ལ་ལོ་ཅིག་ གསལ་བཀོད་ནང་ལུ་"
+#~ "རང་ ཚད་བཟོ་བའི་ ཝོརོཀ་ཨེ་རའུནཌི་ཨིནམ་ལས་ གསལ་བཀོད་བསྒྱུར་བཅོས་མ་འབད་བ་ཅིན་ ལཱ་གི་ཉེ་འཁོར་ནང་"
+#~ "གི་ རྐྱེན་དེ་ཉམས་བཅོས་འབད་མི་ཚུགསཔ་ཨིན།"
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "ཆ་སྙོམ་གསལ་བརྗོད་ མིང་དཔྱད་འབད་མི་དེ་གི་ གནད་ཁོངས་ལུད་སོ་ནུག འདི་མེ་ཊ་སི་ཊི་གི་རྐྱེན་ཅིག་ཨིན་པས། "
+#~ "དེ་འབདཝ་ད་ ཁྱོད་ལུ་གསལ་བརྗོད་སྦོམ་དེ་ཅིག་ ངེས་པར་དུ་ དགོཔ་ཡོད་ག?"
+#~ msgid ""
+#~ "marco [--sm-disable] [--sm-client-id=ID] [--sm-save-file=FILENAME] [--"
+#~ "display=DISPLAY] [--replace] [--version]\n"
+#~ msgstr ""
+#~ "མེ་ཊ་སི་ཊི་ [--ཨེསི་ཨེམ་ ལྕོགས་མིན་] [--ཨེསི་ཨེམ་-ཞབས་ཏོག་སྤྱོད་མིའི་-ཨའི་ཌི་=ཨའི་ཌི་] [ཨེསི་ཨེམ་-"
+#~ "སྲུངས་-ཡིག་སྣོད་=ཡིག་སྣོད་མིང་] [--བཀྲམ་སྟོན་=བཀྲམ་སྟོན་] [--ཚབ་འཙུགས་] [--ཐོན་རིམ] \n"
+#~ msgid "No \"%s\" attribute on element <%s>"
+#~ msgstr "ཁྱད་ཆོས་\"%s\"མིན་འདུག་ ཆ་ཤས་<%s> གུ"
+
diff --git a/po/el.po b/po/el.po
new file mode 100644
index 00000000..7f6bd20f
--- /dev/null
+++ b/po/el.po
@@ -0,0 +1,2486 @@
+# translation of marco.mate-2-26.po to Greek
+# kostas: 17Jul2003, 412 messages, updated translation for 2.4.
+# kostas: 30Oct2003,459 messages updated translation for Mate 2.6.
+# kostas:03Feb2004, 465 messages update.
+# Simos Xenitellis ,<[email protected]>, 2002.
+# Nikos Charonitakis <[email protected]>, 2003.
+# Kostas Papadimas <[email protected]>, 2002,2003, 2004, 2006.
+# Jennie Petoumenou <[email protected]>, 2009.
+# Fotis Tsamis <[email protected]>, 2009.
+# translation of el.po to
+# Greek translation of marco.
+# Copyright (C) 2002 Simos Xenitellis.
+# kostas: finished the translation.
+# kostas: 29Dec2002, updated translation
+# Nikos: 07Sep2003, Review translation.
+# Jennie Petoumenou <[email protected]>, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.mate-2-26\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-03-25 08:59+0000\n"
+"PO-Revision-Date: 2010-04-09 20:43+0200\n"
+"Last-Translator: Jennie Petoumenou <[email protected]>\n"
+"Language-Team: Greek <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Επιφάνεια εργασίας"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Διαχείριση Παραθύρων"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Ηχητικό συμβάν κουδουνιού"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Άγνωστη αίτηση πληροφοριών παραθύρου: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> δεν αποκρίνεται."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Μπορείτε να επιλέξετε να περιμένετε λίγο για να συνεχίσει, ή να εξαναγκάσετε "
+"την εφαρμογή σε πλήρη έξοδο."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Αναμονή"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Εξαναγκασμός σε τερματισμό"
+
+# mateconf-editor/mateconf-editor.c:69 mateconf/mateconftool.c:447
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Αποτυχία λήψης του ονόματος του συστήματος: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Λείπει η επέκταση %s που απαιτείται για compositing"
+
+# mateconf/mateconf-internals.c:2416
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Αποτυχία ανοίγματος οθόνης του συστήματος παραθύρων Χ '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Η σύνδεση με την προβολή '%s' χάθηκε\n"
+"πιθανόν να τερματίστηκε ο εξυπηρετητής Χ ή να τερματίσατε/καταστρέψατε\n"
+"το διαχειριστή παραθύρων.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Μοιραίο σφάλμα IO %d (%s) στην οθόνη '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Κάποιο άλλο πρόγραμμα χρησιμοποιεί ήδη το κλειδί %s με μετατροπείς %x ώς "
+"δεσμό\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Σφάλμα κατά την εκτέλεση του <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Δεν έχει ορισθεί εντολή %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Δεν έχει ορισθεί εντολή τερματικού.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Πνευματικά Δικαιώματα (C) 2001-%s Havoc Pennington, Red Hat, Inc., και "
+"άλλοι\n"
+"Αυτό είναι ελεύθερο λογισμικό, δείτε τον πηγαίο κώδικα για όρους "
+"αντιγραφής.\n"
+"ΔΕΝ παρέχεται καμία εγγύηση, ούτε ΕΜΠΟΡΕΥΣΙΜΟΤΗΤΑΣ ούτε ΚΑΤΑΛΛΗΛΟΤΗΤΑΣ ΓΙΑ "
+"ΣΥΓΚΕΚΡΙΜΕΝΟ ΣΚΟΠΟ.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Απενεργοποίηση σύνδεσης στο διαχειριστή συνεδρίας"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Αντικατάσταση του διαχειριστή παραθύρων που εκτελείται με το Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Καθορισμός ID διαχείρισης συνεδρίας"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X Display για χρήση"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Εκκίνηση συνεδρίας από savefile"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Εκτύπωση έκδοσης"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Να καταστούν σύγχρονες οι κλήσεις του X"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Ενεργοποίηση compositing"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Απενεργοποίηση compositing"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Μην κάνετε παράθυρα πλήρης οθόνης που είναι μεγιστοποιημένα και δεν έχουν "
+"καμία διακόσμηση"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Αποτυχία σάρωσης καταλόγου θεμάτων: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Δεν είναι δυνατή η εύρεση θέματος! Βεβαιωθείτε ότι το %s υπάρχει και "
+"περιέχει τα συνήθη θέματα.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Αποτυχία επανεκκίνησης: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Το MateConf key '%s' έχει ορισθεί σε μια μη έγκυρη τιμή\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"Το %d που αποθηκεύτηκε στο κλειδί MateConf %s είναι εκτός του εύρους %d έως %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Ο τύπος που έχει οριστεί για το κλειδί MateConf \"%s\" είναι μη έγκυρος\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Οι προσωρινές λύσεις για προβληματικές εφαρμογές έχουν απενεργοποιηθεί. "
+"Μερικές εφαρμογές μπορεί να μη συμπεριφέρονται σωστά.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Αδυναμία ανάλυσης περιγραφής γραμματοσειράς \"%s\" από κλειδί MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Το \"%s\" που βρέθηκε στη βάση δεδομένων ρυθμίσεων δεν είναι μια έγκυρη τιμή "
+"για μετατροπέα κουμπιού ποντικιού\n"
+
+# mateconf/mateconfd.c:1561
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Σφάλμα κατά τον ορισμό αριθμού χώρων εργασίας σε %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Χώρος εργασίας %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Το \"%s\" που βρέθηκε στη βάση δεδομένων ρυθμίσεων δεν είναι μια έγκυρη τιμή "
+"για συνδυασμό πλήκτρων\"%s\"\n"
+
+# mateconf/mateconfd.c:1561
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Σφάλμα κατά τον ορισμό ονόματος χώρου εργασίας %d σε \"%s\": %s\n"
+
+# mateconf/mateconfd.c:1561
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Σφάλμα κατά τον ορισμό της κατάστασης του compositor: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Η οθόνη %d στην προβολή '%s' δεν είναι έγκυρη\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Η οθόνη %d στην προβολή '%s' έχει ήδη ένα διαχειριστή παραθύρων. Προσπαθήστε "
+"να χρησιμοποιήσετε την επιλογή --replace για να αντικαταστήσετε τον τρέχων "
+"διαχειριστή παραθύρων.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Αδυναμία λήψης επιλογής διαχειριστή παραθύρων στην οθόνη %d προβολή \"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Η οθόνη %d στην προβολή \"%s\" έχει ήδη ένα διαχειριστή παραθύρων\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Αδυναμία απελευθέρωσης οθόνης %d στην προβολή \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Μπορεί να έχει τη μορφή \"<Control>a\" ή \"<Shift><Alt>F1\".\n"
+"\n"
+"Τα κριτήρια ανάλυσης είναι αρκετά ελαστικά· και επιτρέπουν τη χρήση πεζών ή "
+"κεφαλαίων χαρακτήρων, καθώς και συντμήσεων όπως \"<Ctl>\" ή \"<Ctrl>\". Αν "
+"ορίσετε την επιλογή στην τιμή \"ανενεργό\", τότε δεν θα ισχύει καμία "
+"συντόμευση για την ενέργεια."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Μπορεί να έχει τη μορφή \"<Control>a\" ή \"<Shift><Alt>F1\".\n"
+"\n"
+"Τα κριτήρια ανάλυσης είναι αρκετά ελαστικά· επιτρέπουν τη χρήση πεζών ή "
+"κεφαλαίων χαρακτήρων, καθώς και συντμήσεων όπως \"<Ctl>\" ή \"<Ctrl>\". Αν "
+"ορίσετε την επιλογή στην τιμή \"ανενεργό\", τότε δεν θα ισχύει καμία "
+"συντόμευση για την ενέργεια.\n"
+"\n"
+"Αυτή η συντόμευση μπορεί να αντιστραφεί, αν κρατήσετε πατημένο το πλήκτρο "
+"\"shift\". Άρα, στα πλήκτρα της συντόμευσης δεν θα πρέπει να περιλαμβάνεται "
+"το \"shift\"."
+
+# mateconf/mateconf-internals.c:2333
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Αδυναμία δημιουργίας καταλόγου '%s': %s\n"
+
+# mateconf/mateconf-internals.c:789
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Αδύνατο το άνοιγμα αρχείου συνεδρίας `%s' για εγγραφή: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Σφάλμα εγγραφής αρχείου συνεδρίας '%s': %s\n"
+
+# mateconf/mateconf-backend.c:243
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Σφάλμα κλεισίματος αρχείου συνεδρίας '%s': %s\n"
+
+# mateconf/mateconf-internals.c:2416
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Αποτυχία ανάγνωσης αποθηκευμένου αρχείου συνεδρίας %s: %s\n"
+
+# mateconf/mateconf-internals.c:2416
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Αποτυχία ανάλυσης αποθηκευμένου αρχείου συνεδρίας: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"βρέθηκε γνώρισμα <marco_session> αλλά ήδη έχουμε την ταυτότητα συνεδρίας "
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Άγνωστο γνώρισμα %s στο στοιχείο <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "ενσωματωμένη ετικέτα <window>"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Άγνωστο στοιχείο %s "
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Αυτά τα παράθυρα δεν υποστηρίζουν &quot;αποθήκευση τρέχουσας "
+"εγκατάστασης&quot; και θα πρέπει να επανεκκινηθούν στην επόμενη είσοδο από "
+"εσάς."
+
+# mateconf/mateconftool.c:1639
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Αποτυχία ανοίγματος καταγραφής εκσφαλμάτωσης: %s\n"
+
+# mateconf/mateconf-internals.c:2416
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Αποτυχία fdopen() αρχείου καταγραφής %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Έχει ανοιχθεί το αρχείο καταγραφών %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Το Marco έχει γίνει compiled χωρίς υποστήριξη για verbose mode\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Διαχειριστής παραθύρων: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Σφάλμα στο διαχειριστή παραθύρων: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Προειδοποίηση διαχειριστή παραθύρων: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Σφάλμα διαχειριστή παραθύρων: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Το παράθυρο %s όρισε SM_CLIENT_ID στον εαυτό του, αντί στο παράθυρο του "
+"WM_CLIENT_LEADER όπως καθορίζεται στο ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Το παράθυρο %s όρισε μια συμβουλή MWM ότι δεν είναι δυνατή η αλλαγή "
+"μεγέθους, αλλά όρισε ελάχιστο μέγεθος %d x %d και μέγιστο μέγεθος %d x %d; "
+"αυτό είναι ακατανόητο.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Η εφαρμογή έθεσε ένα πλαστό _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (σε %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (ως υπερχρήστης)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (ως %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (ως άλλος χρήστης)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Άκυρο WM_TRANSIENT_FOR παράθυρο 0x%lx που καθορίστηκε για %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Το παράθυρο 0x%lx έχει ιδιότητα %s\n"
+"η οποία αναμενόταν να έχει τύπο %s μορφή %d\n"
+"ενώ στην πραγματικότητα έχει τύπο %s μορφή %d n_items %d\n"
+"Αυτό πιθανόν να είναι σφάλμα της εφαρμογής και όχι του διαχειριστή "
+"παραθύρων.\n"
+"Το παράθυρο έχει τίτλο=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Η ιδιότητα %s στο παράθυρο 0x%lx περιείχε μη έγκυρο UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Η ιδιότητα %s στο παράθυρο 0x%lx περιείχε μη έγκυρο UTF-8\n"
+" για το αντικείμενο %d στη λίστα\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Αλλαγή στο χώρο εργασίας 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Αλλαγή στο χώρο εργασίας 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Αλλαγή στο χώρο εργασίας 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Αλλαγή στο χώρο εργασίας 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Αλλαγή στο χώρο εργασίας 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Αλλαγή στο χώρο εργασίας 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Αλλαγή στο χώρο εργασίας 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Αλλαγή στο χώρο εργασίας 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Αλλαγή στο χώρο εργασίας 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Αλλαγή στο χώρο εργασίας 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Αλλαγή στο χώρο εργασίας 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Αλλαγή στο χώρο εργασίας 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Αλλαγή στο χώρο εργασίας αριστερά του τρέχοντος"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Αλλαγή στο χώρο εργασίας δεξιά του τρέχοντος"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Αλλαγή στο χώρο εργασίας πάνω από τον τρέχοντα"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Αλλαγή στο χώρο εργασίας κάτω από τον τρέχοντα"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Εναλλαγή μεταξύ παραθύρων μιας εφαρμογής, με αναδυόμενο παράθυρο"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Εναλλαγή (προς τα πίσω) μεταξύ παραθύρων μιας εφαρμογής, με αναδυόμενο "
+"παράθυρο"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Εναλλαγή μεταξύ παραθύρων, με αναδυόμενο παράθυρο"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Εναλλαγή (προς τα πίσω) μεταξύ παραθύρων, με αναδυόμενο παράθυρο"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr ""
+"Εναλλαγή μεταξύ πινάκων εφαρμογών και επιφ. εργασίας, με αναδυόμενο παράθυρο"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Εναλλαγή (προς τα πίσω) μεταξύ πινάκων εφαρμογών και επιφ. εργασίας, με "
+"αναδυόμενο παράθυρο"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Άμεση εναλλαγή μεταξύ παραθύρων μιας εφαρμογής"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Άμεση εναλλαγή (προς τα πίσω) μεταξύ παραθύρων μιας εφαρμογής"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Άμεση εναλλαγή μεταξύ παραθύρων"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Άμεση εναλλαγή (προς τα πίσω) μεταξύ παραθύρων"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Άμεση εναλλαγή μεταξύ πινάκων εφαρμογών και επιφάνειας εργασίας"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+"Άμεση εναλλαγή (προς τα πίσω) μεταξύ πινάκων εφαρμογών και επιφάνειας "
+"εργασίας"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr ""
+"Απόκρυψη όλων των κανονικών παραθύρων και εστίαση στην επιφάνεια εργασίας"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Εμφάνιση του κύριου μενού του πίνακα εφαρμογών"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Εμφάνιση του διαλόγου \"Εκτέλεση εφαρμογής\" του πίνακα εφαρμογών"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Λήψη στιγμιότυπου οθόνης"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Λήψη στιγμιότυπου ενός παραθύρου"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Εκτέλεση ενός τερματικού"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Ενεργοποίηση του μενού του παραθύρου"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Εναλλαγή κατάστασης πλήρους οθόνης"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Εναλλαγή κατάστασης μεγιστοποίησης"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Εναλλαγή του αν το παράθυρο θα είναι πάντα ορατό πάνω από τα υπόλοιπα"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Μεγιστοποίηση παραθύρου"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Επαναφορά παραθύρου"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Εναλλαγή σκιασμένης κατάστασης"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Ελαχιστοποίηση παραθύρου"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Κλείσιμο παραθύρου"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Μετακίνηση παραθύρου"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Αλλαγή μεγέθους παραθύρου"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Εμφάνιση παραθύρου σε όλους τους χώρους εργασίας ή μόνο σε έναν"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Μετακίνηση του παραθύρου ένα χώρο εργασίας αριστερά"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Μετακίνηση του παραθύρου ένα χώρο εργασίας δεξιά"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Μετακίνηση του παραθύρου ένα χώρο εργασίας πάνω"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Μετακίνηση του παραθύρου ένα χώρο εργασίας κάτω"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Ανασήκωση παραθύρου αν καλύπτεται από άλλο παράθυρο, αλλιώς χαμήλωμα του"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Ανασήκωση παραθύρου πάνω από τα άλλα παράθυρα"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Χαμήλωμα παραθύρου κάτω από τα άλλα παράθυρα"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Μεγιστοποίηση ενός παραθύρου κάθετα"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Μεγιστοποίηση ενός παραθύρου οριζόντια"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Μετακίνηση του παραθύρου στην πάνω αριστερή γωνία"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Μετακίνηση του παραθύρου στην πάνω δεξιά γωνία"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Μετακίνηση του παραθύρου στην κάτω αριστερή γωνία"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Μετακίνηση παραθύρου στην κάτω δεξιά γωνία"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Μετακίνηση παραθύρου στην πάνω μεριά της οθόνης"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Μετακίνηση παραθύρου στην κάτω μεριά της οθόνης"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Μετακίνηση παραθύρου στην δεξιά μεριά της οθόνης"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Μετακίνηση παραθύρου στην αριστερή μεριά της οθόνης"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Μετακίνηση παραθύρου στο κέντρο της οθόνης"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Δεν εφαρμόζεται) Η πλοήγηση λειτουργεί με όρους εφαρμογών και όχι παραθύρων"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Ένα αλφαριθμητικό περιγραφής που περιγράφει τη γραμματοσειρά της μπάρας "
+"τίτλου παραθύρου. Το μέγεθος από την περιγραφή θα χρησιμοποιείται μόνο αν η "
+"επιλογή μεγέθους γραμματοσειράς είναι 0. Ακόμα, αυτή η επιλογή "
+"απενεργοποιείται αν η επιλογή titlebar_uses_desktop_font είναι true."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Ενέργεια κατά το διπλό κλικ στη μπάρα τίτλου"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Ενέργεια κατά το μεσαίο κλικ στη μπάρα τίτλου"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Ενέργεια κατά το δεξί κλικ στη μπάρα τίτλου"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Διάταξη των κουμπιών στη μπάρα τίτλου"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Διάταξη των κουμπιών στη μπάρα τίτλου. Η τιμή θα πρέπει να είναι "
+"αλφαριθμητικό, όπως \"menu:minimize,maximize,close\", το σημείο χωρίζει την "
+"αριστερή γωνία του παραθύρου από τη δεξιά γωνία, και τα ονόματα κουμπιών "
+"χωρίζονται από κόμμα. Δεν επιτρέπονται διπλά κουμπιά. Άγνωστοι τύποι "
+"κουμπιών αγνοούνται σιωπηλά έτσι ώστε να μπορούν να προστεθούν σε "
+"μελλοντικές εκδόσεις του marco χωρίς να χαλάνε οι προηγούμενες εκδόσεις. "
+"Μια ειδική ετικέτα πλήκτρου διαστήματος μπορεί να χρησιμοποιηθεί για να "
+"εισάγει κενό ανάμεσα σε δύο παρακείμενα κουμπιά."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Αυτόματη ανασήκωση του εστιασμένου παράθυρου"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Κάνοντας κλικ σε ένα παράθυρο ενώ κρατώντας αυτό το πλήκτρο μετατροπής θα "
+"μετακινηθεί το παράθυρο (αριστερό κλίκ), θα γίνει αλλαγή μεγέθους (μεσαίο "
+"κλικ) ή θα εμφανιστεί το μενού παραθύρου (δεξί κλικ). Οι λειτουργίες για το "
+"μεσαίο και το δεξί πλήκτρο μπορούν να αντιμετατεθούν με χρήση του κλειδιού "
+"\"mouse_button_resize\". Ο μετατροπέας εκφράζεται για παράδειγμα ως \"&lt;"
+"Alt&gt;\" ή \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Εντολές που εκτελούνται σε αντιστοίχιση με συνδυασμούς πλήκτρων"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Διαχειριστής Compositing"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Έλεγχος της λήψης εστίασης από τα νέα παράθυρα"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Τρέχον θέμα"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Καθυστέρηση σε ms πριν την αυτόματη ανασήκωση παραθύρων"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Καθορίζει αν το Marco είναι ένας διαχειριστής compositing"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Καθορίζει αν οι εφαρμογές ή το σύστημα θα δημιουργούν ήχους 'μπιπ', μπορεί "
+"να χρησιμοποιηθεί σε συνδυασμό με το 'οπτικό κουδούνι' για να επιτρέπει "
+"ήσυχα 'μπιπ'."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Απενεργοποίηση κακών λειτουργιών που απαιτούνται από παλιές η χαλασμένες "
+"εφαρμογές"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Ενεργοποίηση οπτικού κουδουνιού"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Αν τεθεί σε true, και η κατάσταση εστίασης είναι \"sloppy\" ή \"mouse\", "
+"τότε το εστιασμένο παράθυρο να ανασηκωθεί αυτόματα μετά από μια καθυστέρηση "
+"που καθορίζεται από το κλειδί auto_raise_delay. Αυτή η λειτουργία δε "
+"σχετίζεται με την ανασήκωση παραθύρου όταν κάνουμε κλικ, ούτε με την εστίαση "
+"παραθύρου κατά τη μετάφορα και απόθεση (drag and drop)."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Αν true, αγνοείται την επιλογή γραμματοσειράς μπάρας τίτλου, και γίνεται "
+"χρήση των καθορισμένων γραμματοσειρών για τους τίτλους παραθύρων."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Αν true, το marco θα δίνει στο χρήστη λιγότερη ανάδραση και λιγότερη "
+"αίσθηση \"άμεσων χειρισμών\" με τη χρήση wireframes και την αποφυγή "
+"κινήσεων. Αυτή είναι μια σημαντική παραχώρηση στη χρηστικότητα για πολλούς "
+"χρήστες αλλά θα επιτρέψει σε εφαρμογές legacy και εξυπηρετητές τερματικού να "
+"λειτουργήσουν εκεί που δεν μπορούσαν πριν."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Αν true, τότε το Marco δουλεύει με όρους εφαρμογών αντί για παραθύρων. "
+"Η ιδέα είναι λίγο αφηρημένη αλλά σε γενικές γραμμές μια εγκατάσταση "
+"βασισμένη σε εφαρμογές μοιάζει περισσότερο σε Mac και λιγότερο σε Windows. "
+"Όταν εστιάζετε σε ένα παράθυρο σε λειτουργία βασισμένη σε εφαρμογές, τα κλικ "
+"εστίασης δε μεταβιβάζονται μέσα από παράθυρα σε άλλες εφαρμογές. Η ύπαρξη "
+"αυτής της ρύθμισης είναι βέβαια κάπως συζητήσιμη. Αλλά είναι καλύτερα να "
+"υπάρχουν ρυθμίσεις για όλες τις λεπτομέρειες. Ακόμα η λειτουργία βασισμένη "
+"σε εφαρμογές δεν έχει εφαρμοστεί ακόμα σε μεγάλο βαθμό."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "An true, ανταλλαγή χρηστικότητας για λιγότερη χρήση πόρων"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Μετατροπέας για χρήση στις τροποποιημένες ενέργειες κλικ παραθύρων"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Όνομα χώρου εργασίας"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Αριθμός χώρων εργασίας"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Αριθμός των χώρων εργασίας. Πρέπει να είναι παραπάνω από μηδέν, και έχει ένα "
+"καθορισμένο μέγιστο όριο (ώστε να αποφευχθεί τυχαία καταστροφή της "
+"επιφάνειας εργασίας με καθορισμό εξωφρενικά πολλών χώρων εργασίας)."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Εκτέλεση μιας ορισμένης εντολής φλοιού"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Καθορίστε ως true για να μπορείτε να αλλάζεται το μέγεθος με το δεξί πλήκτρο "
+"και να εμφανίζεται μενού με το μεσαίο πλήκτρο καθώς έχετε πατημένο το "
+"πλήκτρο που δηλώσατε στο \"mouse_button_modifier\"· καθορίστε σε false για "
+"να έχετε την αντίθετη συμπεριφορά."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Ο καθορισμός αυτής της επιλογής αυτής σε ψευδής μπορεί να οδηγήσει σε "
+"προβληματική συμπεριφορά, οπότε οι χρήστες προτείνεται να μην το αλλάζουν "
+"από την τυπική τιμή αληθής. Πολλές λειτουργίες (π.χ. κλικ μέσα σε ένα "
+"παράθυρο, μετακίνηση ή αλλαγή μεγέθους παραθύρου) τυπικά εγείρουν το "
+"παράθυρο ως παρενέργεια. Ο καθορισμός της επιλογής σε ψευδής, κάτι που δε "
+"συνιστούμε, θα δημιουργήσει αποσύνδεση των αιτημάτων από άλλες ενέργειες "
+"χρηστών και αγνόηση αιτημάτων από τις εφαρμογές. Δείτε http://bugzilla."
+"gnome.org/show_bug.cgi?id=445447#c6. Ακόμα και όταν αυτή η επιλογή είναι "
+"ψευδής τα παράθυρα μπορούν επίσης να εγερθούν πατώντας alt-left-click "
+"οπουδήποτε στο παράθυρο, ένα κανονικό κλικ στην διακόσμηση του παραθύρου ή "
+"από ειδικά μηνύματα από σελίδες δεδομένων, όπως οι αιτήσεις ενεργοποίησης "
+"από μικροεφαρμογές της γραμμής εργασιών. Αυτή η επιλογή είναι προς το παρόν "
+"απενεργοποιημένη σε κατάσταση κλικ-και-εστίαση. Παρακαλώ σημειώστε ότι η "
+"λίστα με τους τρόπους έγερσης ενός παραθύρου σε κατάσταση κλικ-και-εστίαση "
+"είναι απενεργοποιημένη δεν συμπεριλαμβάνει αιτήσεις προγραμματισμού από "
+"εφαρμογές για έγερση ενός παραθύρου. Τέτοιου είδους αιτήσεις θα αγνοηθούν "
+"ανεξαιρέτου από τον λόγο της αίτησης. Εάν είστε κατασκευαστής λογισμικού και "
+"έχετε παράπονα από χρήστες ότι η εφαρμογή σας δεν δουλεύει σωστά με αυτές "
+"της ρυθμίσεις απενεργοποιημένες, πείτε του ότι είναι _δικό _του _λάθος που "
+"παραβίασαν τον διαχειριστή παραθύρων και ότι θα πρέπει να αλλάξουν αυτήν "
+"την επιλογή πίσω σε αληθής ή να συνεχίσουν να εργάζονται με το \"σφάλμα\" "
+"που ζήτησαν."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Το κουδούνι συστήματος είναι ενεργό"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Επικοινωνεί με το Marco για τον τρόπο με τον οποίο θα εφαρμόζεται η "
+"οπτική ένδειξη του οπτικού κουδουνιού. Αυτή τη στιγμή υπάρχουν δύο έγκυρες "
+"τιμές \"πλήρης οθόνη\", που δημιουργεί ένα ασπρόμαυρο φλάς σε πλήρη οθόνη, "
+"και \"φλάς-πλαισίου\" που δημιουργεί ένα ένα αναβόσβημα του τίτλου της "
+"εφαρμογής που έστειλε το κουδούνισμα. Αν η εφαρμογή που έστειλε το "
+"κουδούνισμα είναι άγνωστη (όπως συνήθως συμβαίνει για το προεπιλεγμένο "
+"\"μπιπ συστήματος\") αναβοσβήνει η μπάρα τίτλου του εστιαζόμενου εκείνη τη "
+"στιγμή παραθύρου."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Τα κλειδιά /apps/marco/global_keybindings/run_command_N ορίζουν τους "
+"συνδυασμούς πλήκτρων που αντιστοιχούν σε αυτές τις εντολές. Πιέζοντας το "
+"συνδυασμό για run_command_N θα εκτελείται η εντολή_Ν."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Το κλειδί /apps/marco/global_keybindings/run_command_screenshot ορίζει το "
+"συνδυασμό πλήκτρων που αντιστοιχεί σε αυτή την εντολή."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Το κλειδί /apps/marco/global_keybindings/"
+"run_command_window_screenshotορίζει το συνδυασμό πλήκτρων που αντιστοιχεί σε "
+"αυτή την εντολή."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Ο συνδυασμός πλήκτρων που εκτελεί την αντίστοιχη αριθμημένη εντολή στο /apps/"
+"marco/keybinding_commands. Η διαμόρφωση μοιάζει με \"&lt;Control&gt;a\" ή "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\".. Ο διαβιβαστής είναι φιλελεύθερος και "
+"επιτρέπει κεφαλαία και πεζά και συντομεύσεις όπως \"&lt;Ctl&gt;\" και \"&lt;"
+"Ctrl&gt;\". Αν ορίσετε \"disabled\" δε θα υπάρχει κανένας συνδυασμός "
+"πλήκτρων για αυτή την ενέργεια."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Το όνομα του χώρου εργασίας."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Η εντολή λήψης στιγμιότυπου οθόνης"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Το θέμα καθορίζει την εμφάνιση των περιγραμμάτων παραθύρου, μπάρας τίτλου "
+"κτλ."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Η χρονική καθυστέρηση πριν την ανασήκωση ενός παραθύρου αν το auto_raise "
+"είναι true. Η καθυστέρηση δίνεται σε χιλιοστά του δευτερολέπτου."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Η λειτουργία εστίασης παραθύρου ορίζει τον τρόπο που θα ενεργοποιούνται τα "
+"παράθυρα. Έχει τρείς πιθανές τιμές: \"click\" σημαίνει οτι πρέπει να γίνεται "
+"κλικ στα παράθυρα για να εστιάζονται, \"sloppy\" σημαίνει ότι τα παράθυρα "
+"εστιάζονται όταν το ποντίκι μπαίνει στο παράθυρο, και \"mouse\" σημαίνει "
+"ότι τα παράθυρα εστιάζονται όταν το ποντίκι μπαίνει στο παράθυρο και "
+"απεστιάζονται όταν φεύγει."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Η εντολή λήψης στιγμιότυπου παραθύρου"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Αυτή η επιλογή καθορίζει τα αποτελέσματα του διπλού κλικ στη μπάρα τίτλου. "
+"Οι τρέχουσες έγκυρες επιλογές είναι 'εναλλαγή_σκίαση', που θα σκιάζει/"
+"αποσκιάζει το παράθυρο, 'εναλλαγή_μεγιστοποίηση' που θα μεγιστοποιεί/"
+"απομεγιστοποεί το παράθυρο, εναλλαγή_μεγιστοποίηση_οριζόντια και "
+"εναλλαγή_μεγιστοποίηση_κάθετα που θα μεγιστοποιεί/απομεγιστοποεί το παράθυρο "
+"μόνο σε αυτή την κατεύθυνση, 'ελαχιστοποίηση' που θα ελαχιστοποιεί το "
+"παράθυρο, 'σκίαση' που θα τυλίγει το παράθυρο προς τα πάνω, 'μενού' που θα "
+"εμφανίζει το μενού του παραθύρου, 'χαμήλωμα' που θα βάζει το παράθυρο πίσω "
+"από όλα τα άλλα, και 'καμία' που δεν θα κάνει τίποτα."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Αυτή η επιλογή καθορίζει τα αποτελέσματα του μεσαίου κλικ στη μπάρα τίτλου. "
+"Οι τρέχουσες έγκυρες επιλογές είναι 'εναλλαγή_σκίαση', που θα σκιάζει/"
+"αποσκιάζει το παράθυρο, 'εναλλαγή_μεγιστοποίηση' που θα μεγιστοποιεί/"
+"απομεγιστοποεί το παράθυρο, εναλλαγή_μεγιστοποίηση_οριζόντια και "
+"εναλλαγή_μεγιστοποίηση_κάθετα που θα μεγιστοποιεί/απομεγιστοποεί το παράθυρο "
+"μόνο σε αυτή την κατεύθυνση, 'ελαχιστοποίηση' που θα ελαχιστοποιεί το "
+"παράθυρο, 'σκίαση' που θα τυλίγει το παράθυρο προς τα πάνω, 'μενού' που θα "
+"εμφανίζει το μενού του παραθύρου, 'χαμήλωμα' που θα βάζει το παράθυρο πίσω "
+"από όλα τα άλλα, και 'καμία' που δεν θα κάνει τίποτα."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Αυτή η επιλογή καθορίζει τα αποτελέσματα του δεξιού κλικ στη μπάρα τίτλου. "
+"Οι τρέχουσες έγκυρες επιλογές είναι 'εναλλαγή_σκίαση', που θα σκιάζει/"
+"αποσκιάζει το παράθυρο, 'εναλλαγή_μεγιστοποίηση' που θα μεγιστοποιεί/"
+"απομεγιστοποεί το παράθυρο, εναλλαγή_μεγιστοποίηση_οριζόντια και "
+"εναλλαγή_μεγιστοποίηση_κάθετα που θα μεγιστοποιεί/απομεγιστοποεί το παράθυρο "
+"μόνο σε αυτή την κατεύθυνση, 'ελαχιστοποίηση' που θα ελαχιστοποιεί το "
+"παράθυρο, 'σκίαση' που θα τυλίγει το παράθυρο προς τα πάνω, 'μενού' που θα "
+"εμφανίζει το μενού του παραθύρου, 'χαμήλωμα' που θα βάζει το παράθυρο πίσω "
+"από όλα τα άλλα, και 'καμία' που δεν θα κάνει τίποτα."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Ενεργοποιεί μια οπτική ένδειξη για το πότε η εφαρμογή ή το σύστημα στέλνει "
+"ένα 'κουδούνισμα' ή 'μπιπ'. Είναι χρήσιμο για όσους έχουν προβλήματα ακοής ή "
+"για όσους εργάζονται σε θορυβώδες περιβάλλον."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Χρήση κανονικής γραμματοσειράς συστήματος στους τίτλους παραθύρων."
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Οπτικό είδος κουδουνιού"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Αν η ανασήκωση θα έχει παρενέργειες στις άλλες δράσεις του χρήστη"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Αν θα γίνεται αλλαγή μεγέθους με το δεξί κουμπί"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Λειτουργία εστίασης παραθύρου"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Γραμματοσειρά τίτλου παραθύρου"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Χρήση: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Κλείσιμο παραθύρου"
+
+#
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Μενού παραθύρου"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Ελαχιστοποίηση παραθύρου"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Μεγιστοποίηση παραθύρου"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Επαναφορά παραθύρου"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Τύλιγμα παραθύρου προς τα πάνω"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Ξετύλιγμα παραθύρου"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Διατήρηση παραθύρου σε πρώτο πλάνο"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Απομάκρυνση παραθύρου από το πρώτο πλάνο"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Πάντοτε σε ορατό χώρο εργασία"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Τοποθέτηση παράθυρου μόνο σε ένα χώρο εργασίας"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Ελα_χιστοποίηση"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_Μεγιστοποίηση"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Απόμε_γιστοποίηση"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Τύλιγμα _πάνω"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Ξετύλιγμα"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Μετακίνηση"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Αλλαγή με_γέθους"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Μετακίνηση μπάρας τίτλου στην ο_θόνη"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Πάντα σε _πρώτο πλάνο"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Ορατό σε όλους τους χώρους εργασίας"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Μόνο σε _αυτό το χώρο εργασίας"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Μετακίνηση στο χώρο εργασίας αρι_στερά"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Μετακίνηση στο χώρο εργασίας δε_ξιά"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Μετακίνηση παραθύρου στο χώρο εργασίας πά_νω"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Μετακίνηση στο χώρο εργασίας _κάτω"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Κλείσιμο"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Χώρος εργασίας %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Χώρος Εργασίας 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Χώρος Εργασίας %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Μετακίνηση σε άλλο _χώρο εργασίας"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "επάνω"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "κάτω"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "αριστερά"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "δεξιά"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "η γεωμετρία πλαισίου δεν έχει καθορίσει \"%s\" διάσταση"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"η γεωμετρία πλαισίου δεν έχει καθορίσει \"%s\" διάσταση για περίγραμμα \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Η αναλογία διαστάσεων κουμπιού %g δεν είναι λογική"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Η γεωμετρία πλαισίου δεν έχει καθορίσει μέγεθος κουμπιών"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Τα διαβαθμισμένα χρώματα θα πρέπει να έχουν δύο τουλάχιστον θέματα"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Ο καθορισμός χρώματος GTK θα πρέπει να έχει τη κατάσταση σε αγκύλες, π.χ gtk:"
+"fg[NORMAL] όπου NORMAL είναι η κατάσταση. Αδυναμία ανάλυσης \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Ο καθορισμός χρώματος GTK θα πρέπει να έχει μια αγκύλη κλεισίματος μετά την "
+"κατάσταση. π.χ gtk:fg[NORMAL] όπου NORMAL είναι η κατάσταση. Αδυναμία "
+"ανάλυσης \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Δεν έγινε κατανοητή η κατάσταση \"%s\" στον ορισμό χρώματος"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Δεν έγινε κατανοητό το συστατικό χρώματος \"%s\" στον ορισμό χρώματος"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Ο τύπος ανάμιξης που είναι \"blend/bg_color/fg_color/alpha\", \"%s\" δεν "
+"ταιριάζει στη διαμόρφωση"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Αδυναμία ανάλυσης τιμής alpha \"%s\" στο αναμεμιγμένο χρώμα"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+"Η τιμή Alpha \"%s\" στο αναμεμιγμένο χρώμα δεν είναι ανάμεσα σε 0.0 και 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Ο τύπος σκίασης είναι \"shade/base_color/factor\", το \"%s\" δεν ταιριάζει "
+"στον τύπο"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Αδυναμία ανάλυσης παράγοντα σκίασης \"%s\" στο σκιασμένο χρώμα"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Ο παράγοντας σκίασης \"%s\" στο σκιασμένο χρώμα είναι αρνητικός"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Αδύνατη η ανάλυση χρώματος \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Η συντεταγμένη έκφραση περιέχει ένα χαρακτήρα '%s που δεν επιτρέπεται"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Η συντεταγμένη έκφραση περιέχει αριθμό κινητού σημείου '%s' που δεν μπορεί "
+"να αναλυθεί"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Η συντεταγμένη έκφραση περιέχει έναν ακέραιο '%s που δεν μπορεί να αναλυθεί"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Η συντεταγμένη έκφραση περιείχε έναν άγνωστο χειριστή στην αρχή αυτού του "
+"κειμένου: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Η συντεταγμένη έκφραση ήταν κενή ή δεν έγινε κατανοητή"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Η συντεταγμένη έκφραση έχει σαν αποτέλεσμα διαίρεση με το μηδέν"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Η συντεταγμένη έκφραση προσπαθεί να χρησιμοποίησε ιmod operator σε αριθμό "
+"κινητού σημείου"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Η συντεταγμένη έκφραση έχει ένα operator \"%s\" ενώ αναμενόταν operand "
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Η συντεταγμένη έκφραση έχει ένα operand ενώ αναμενόταν operator"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Η συντεταγμένη έκφραση τέλειωσε με χειριστή αντί για operand"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Η συντεταγμένη έκφραση έχει operator \"%c\" ακολουθούμενο operator \"%c\" "
+"χωρίς operand μεταξύ τους"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Η συντεταγμένη έκφραση έχει άγνωστη μεταβλητή ή συνεχής \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Η συντεταγμένη έκφραση ήταν κενή ή δεν έγινε κατανοητή"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Η συντεταγμένη έκφραση έχει μια παρένθεση κλεισίματος χωρίς να έχει ανοιχθεί "
+"παρένθεση"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Η συντεταγμένη έκφραση έχει μια παρένθεση ανοίγματος χωρίς να έχει κλεισθεί "
+"παρένθεση"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Η συντεταγμένη έκφραση δεν φαίνεται να έχει operators ή operands"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Το θέμα περιείχε μια έκφραση που είχε σαν αποτέλεσμα σφάλμα: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> θα πρέπει να "
+"καθοριστεί στο στυλ πλαισίου"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Λείπει <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Αποτυχία φόρτωσης θέματος \"%s\": %s\n"
+
+# mateconf/mateconftool.c:877
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Δεν έχει ορισθεί <%s> για θέμα \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Δεν έχει ορισθεί στύλ πλαισίου για τον τύπο παραθύρου \"%s\" στο θέμα \"%s"
+"\", add a <window type=\"%s\" style_set=\"whatever\"/> element"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Οι συνεχείς που ορίζονται από το χρήστη θα πρέπει να ξεκινάνε με κεφαλαίο "
+"γράμμα, η \"%s\" δεν έχει"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Constant \"%s\" έχει ήδη καθορισθεί"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Δεν υπάρχει γνώρισμα \"%s\" για το στοιχείο <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Γραμμή %d χαρακτήρας %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Το γνώρισμα \"%s\" επαναλήφθηκε δυο φορές στο ίδιο <%s> στοιχείο"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+"Το γνώρισμα \"%s\" δεν είναι έγκυρο στο στοιχείο <%s> σε αυτήν την περίπτωση"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Αδύνατη η ανάλυση του \"%s\" ως ακεραίου αριθμού"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+"Δεν έγινε κατανοητή η ακολουθία χαρακτήρων \"%s\" στο αλφαριθμητικό \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Ο ακέραιος %ld θα πρέπει να είναι θετικός"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Ο ακέραιος %ld είναι πολύ μεγάλος , μέγιστος δυνατός %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Αδυναμία ανάλυσης \"%s\" ως αριθμό κινητού σημείου"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+"Οι τιμές Boolean θα πρέπει να είναι είτε \"true\" ή \"false\" όχι \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Η γωνία θα πρέπει να είναι ανάμεσα σε 0.0 και 360.0, ήταν %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Το Alpha θα πρέπει να είναι ανάμεσα σε 0.0 (αόρατο) και 1.0 (πλήρης ορατό), "
+"ήταν %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Μή έγκυρη κλίμακα τίτλου \"%s\" (θα πρέπει να είναι ενα από xx-small,x-small,"
+"small,medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "Το <%s> όνομα \"%s\" χρησιμοποιήθηκε για δεύτερη φορά"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> μητρικό \"%s\" δεν έχει ορισθεί"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> γεωμετρία \"%s\" δεν έχει ορισθεί"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> θα πρέπει να καθορίσετε είτε μια γεωμετρία είτε ένα μητρικό που έχει "
+"γεωμετρία"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Πρέπει να καθορίσετε ένα παρασκήνιο για να έχει νόημα μια τιμή άλφα"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Άγνωστος τύπος \"%s\" στο στοιχείο <%s> "
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Άγνωστος ορισμός τύπου \"%s\" στο στοιχείο <%s> "
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Έχει ορισθεί ήδη ένα στυλ για τον τύπο παραθύρου \"%s\""
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Το στοιχείο <%s> δεν επιτρέπεται κάτω από <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Δεν είναι δυνατός ο καθορισμός και \"ύψους_κουμπιού\"/\"πλάτους_κουμπιού\" "
+"και \"αναλογίας_διαστάσεων\" για κουμπιά"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Η απόσταση \"%s\" είναι άγνωστη"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Η αναλογία διαστάσεων \"%s\" είναι άγνωστη"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Περίγραμμα \"%s\" είναι άγνωστο"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+"Δεν υπάρχει γνώρισμα \"έναρξη γωνίας\" ή γνώρισμα \"από\" για το στοιχείο <%"
+"s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+"Δεν υπάρχει γνώρισμα \"επέκταση_γωνίας\" ή γνώρισμα \"σε\" για το στοιχείο <"
+"%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Δεν έγινε κατανοητή η τιμή \"%s\" για τον τύπο του gradient"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Δεν έγινε κατανοητός ο τύπος γεμίσματος \"%s\" για <%s> στοιχείο"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Δεν έγινε κατανοητή η κατάσταση \"%s\" για στοιχείο <%s> )"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Δεν έγινε κατανοητή η σκίαση \"%s\" για στοιχείο <%s> "
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Δεν έγινε κατανοητό το βέλος \"%s\" για στοιχείο <%s> "
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Δεν έχουν ορισθεί <λειτουργίες σχεδίασης> που ονομάζονται \"%s\""
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+"Αν συμπεριλάβετε εδώ λειτουργίες σχεδίασης \"%s\" θα δημιουργήσετε μια "
+"κυκλική αναφορά"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Άγνωστη θέση \"%s\" για το κομμάτι πλαισίου"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Το στυλ πλαισίου έχει ήδη ένα κομμάτι στην θέση %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "δεν έχουν ορισθεί <λειτουργίες σχεδίασης> με το όνομα \"%s\""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Άγνωστη λειτουργία \"%s\" για το κουμπί"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"Η λειτουργία \"%s\" του κουμπιού δεν υπάρχει σε αυτή την έκδοση (%d, "
+"χρειάζεται %d)"
+
+#
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Άγνωστη κατάσταση \"%s\" για το κουμπί"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+"Το στυλ πλαισίου έχει ήδη ένα κουμπί για τη λειτουργία %s κατάσταση %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" δεν είναι έγκυρη τιμή για το γνώρισμα εστίασης"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" δεν είναι έγκυρη τιμή για το γνώρισμα κατάστασης"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Ένα στυλ που ονομάζεται \"%s\" δεν έχει ορισθεί"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" δεν είναι έγκυρη τιμή για το γνώρισμα αλλαγής μεγέθους"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Δεν πρέπει να υπάρχει γνώρισμα \"αλλαγή μεγέθους\" στο στοιχείο <%s> για "
+"μεγιστοποιημένες/σκιασμένες καταστάσεις"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Δεν πρέπει να υπάρχει γνώρισμα \"αλλαγή μεγέθους\" στο στοιχείο <%s> για "
+"μεγιστοποιημένες καταστάσεις"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Το στυλ έχει ήδη καθορισθεί για κατάσταση %s αλλαγή μεγέθους %s εστίαση %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Το στυλ έχει ήδη καθορισθεί για κατάσταση %s εστίαση %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Δεν μπορεί να υπάρχουν δυο λειτουργίες σχεδίασης για ένα στοιχείο <κομμάτι> "
+"( το θέμα έχει καθορίσει ένα γνώρισμα λειτουργίας σχεδίασης και ακόμα ένα "
+"στοιχείο <λειτουργίες σχεδίασης> ή καθόρισε δύο στοιχεία)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Δεν μπορεί να υπάρχουν δυο λειτουργίες σχεδίασης για ένα στοιχείο <κουμπί> "
+"( το θέμα έχει καθορίσει ένα γνώρισμα λειτουργίας σχεδίασης και ακόμα ένα "
+"στοιχείο <λειτουργίες σχεδίασης> ή καθόρισε δύο στοιχεία)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Δεν μπορεί να υπάρχουν δυο λειτουργίες σχεδίασης για ένα στοιχείο <εικονίδιο "
+"μενού> ( το θέμα έχει καθορίσει ένα γνώρισμα λειτουργίας σχεδίασης και ακόμα "
+"ένα στοιχείο <λειτουργίες σχεδίασης> ή καθόρισε δύο στοιχεία)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+"Το εξώτατο στοιχείο στο θέμα θα πρέπει να είναι <marco_theme> όχι <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Το στοιχείο <%s> δεν επιτρέπεται μέσα σε στοιχείο ονόματος/συγγραφέα/"
+"ημερομηνίας/περιγραφής"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Το στοιχείο <%s> δεν επιτρέπεται μέσα σε στοιχείο <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Το στοιχείο <%s> δεν επιτρέπεται μέσα σε στοιχείο απόστασης/περιγράμματος/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+"Το στοιχείο <%s> δεν επιτρέπεται μέσα σε στοιχείο λειτουργίας σχεδίασης"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Το στοιχείο <%s> δεν επιτρέπεται μέσα σε στοιχείο <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Δεν παρέχονται λειτουργίες σχεδίασης για το κομμάτι πλαισίου"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Δεν παρέχονται λειτουργίες σχεδίασης για το κουμπί"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Δεν επιτρέπεται κείμενο μέσα στο στοιχείο <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> έχει ορισθεί δύο φορές για αυτό το θέμα"
+
+# mateconf/mateconf-internals.c:2416
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Αποτυχία εύρεσης ενός έγκυρου αρχείου για το θέμα %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+"Το αρχείο θέματος %s δεν περιέχει ένα στοιχείο διαχειριστή <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Παράθυρα"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Παράθυρα/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Παράθυρα/_Διάλογος"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Παράθυρα/Σ_χηματικός διάλογος"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Παράθυρα/Ε_φαρμογή"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Παράθυρα/Ο_θόνη έναρξης"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Παράθυρα/_Top dock"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Παράθυρα/_Bottom dock"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Παράθυρα/_Left dock"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Παράθυρα/_Right dock"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Παράθυρα/_All docks"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Παράθυρα/Επι_φάνεια εργασίας"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Αυτό είναι ένα κείμενο-παράδειγμα σε ένα παραδειγματικό διάλογο"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Ψεύτικο αντικείμενο μενού %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Παράθυρο μόνο με πλαίσιο"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Μπάρα"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Κανονικό παράθυρο εφαρμογής"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Κουτί διαλόγου"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Κουτί σχηματικού διαλόγου"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Παλέτα εφαρμογής"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Αποσπώμενο μενού"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Πλαίσιο"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Δοκιμή διάταξης κουμπιού %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g χιλιοστά δευτερ. για τη σχεδίαση ενός πλαισίου παραθύρου"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Χρήση: marco-theme-viewer [THEMENAME]\n"
+
+# mateconf/mateconf-backend.c:243
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Σφάλμα φόρτωσης θέματος: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Το θέμα \"%s\" φορτώθηκε σε %g δευτερόλεπτα\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Γραμματοσειρά κανονικού τίτλου"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Γραμματοσειρά μικρού τίτλου"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Γραμματοσειρά μεγάλου τίτλου"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Διατάξεις κουμπιού"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Benchmark"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Τίτλος παραθύρου εδώ"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Σχεδιάστηκαν %d πλαίσια σε %g δευτερόλεπτα από τη μεριά του πελάτη (%g "
+"χιλιοστά ανά πλαίσιο) και %g δευτερόλεπτα σε πραγματικό χρόνο "
+"συμπεριλαμβανομένων και των πόρων του εξυπηρετητή X (%g χιλιοστά ανά "
+"πλαίσιο)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "position expression test returned TRUE but set error"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "position expression test returned FALSE but didn't set error"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Error was expected but none given"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Error %d was expected but %d given"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Error not expected but one was returned: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x value was %d, %d was expected"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y value was %d, %d was expected"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"οι εκφράσεις συντεταγμένης %d αναλύθηκαν σε %g δευτερόλεπτα (%g δευτερόλεπτα "
+"μέσος όρος)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Άνοιγμα ακόμα ενός από αυτά τα παράθυρα"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Αυτό είναι ένα κουμπί επίδειξης με ένα εικονίδιο 'άνοιγμα'"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Αυτό είναι ένα κουμπί επίδειξης με ένα εικονίδιο 'έξοδος'"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Αποτυχία ανάλυσης μηνύματος \"%s\" της διεργασίας διαλόγου\n"
diff --git a/po/[email protected] b/po/[email protected]
new file mode 100644
index 00000000..96dcb3e9
--- /dev/null
+++ b/po/[email protected]
@@ -0,0 +1,2291 @@
+# Shavian translation of Marco.
+# This file is distributed under the same licence as the marco package.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2010-05-09 15:37+0000\n"
+"PO-Revision-Date: 2010-05-12 18:37 -0400\n"
+"Last-Translator: Thomas Thurman <[email protected]>\n"
+"Language-Team: Shavian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n!=1;\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "𐑛𐑧𐑕𐑒𐑑𐑪𐑐"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑥𐑩𐑯𐑑"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "𐑚𐑧𐑤 𐑦𐑝𐑧𐑯𐑑"
+
+#, c-format
+#: ../src/core/core.c:206
+msgid "Unknown window information request: %d"
+msgstr "𐑳𐑯𐑴𐑯 𐑢𐑦𐑯𐑛𐑴 𐑦𐑯𐑓𐑼𐑥𐑱𐑖𐑩𐑯 𐑮𐑦𐑒𐑢𐑧𐑕𐑑: %d"
+
+#. Translators: %s is a window title
+#, c-format
+#: ../src/core/delete.c:96
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> 𐑦𐑟 𐑯𐑪𐑑 𐑮𐑰𐑕𐑐𐑪𐑯𐑛𐑦𐑙."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"𐑿 𐑥𐑱 𐑗𐑵𐑟 𐑑 𐑢𐑱𐑑 𐑩 𐑖𐑹𐑑 𐑢𐑲𐑤 𐑓𐑹 𐑦𐑑 𐑑 𐑒𐑩𐑯𐑑𐑦𐑯𐑿 𐑹 𐑓𐑹𐑕 𐑞 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑑 𐑒𐑢𐑦𐑑 𐑧𐑯𐑑𐑲𐑼𐑤𐑦."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_𐑢𐑱𐑑"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_𐑓𐑹𐑕 𐑒𐑢𐑦𐑑"
+
+#, c-format
+#: ../src/core/delete.c:208
+msgid "Failed to get hostname: %s\n"
+msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑜𐑧𐑑 𐑣𐑴𐑕𐑑𐑯𐑱𐑥: %s\n"
+
+#, c-format
+#: ../src/core/display.c:258
+msgid "Missing %s extension required for compositing"
+msgstr "𐑥𐑦𐑕𐑦𐑙 %s 𐑩𐑒𐑕𐑑𐑧𐑯𐑖𐑩𐑯 𐑮𐑦𐑒𐑢𐑲𐑼𐑛 𐑓𐑹 𐑒𐑩𐑥𐑐𐑪𐑟𐑩𐑑𐑦𐑙"
+
+#, c-format
+#: ../src/core/display.c:336
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑴𐑐𐑩𐑯 X 𐑢𐑦𐑯𐑛𐑴 𐑕𐑦𐑕𐑑𐑩𐑥 𐑛𐑩𐑕𐑐𐑤𐑱 '%s'\n"
+
+#, c-format
+#: ../src/core/errors.c:272
+msgid ""
+"Lost connection to the display '%s';\nmost likely the X server was shut down "
+"or you killed/destroyed\nthe window manager.\n"
+msgstr ""
+"𐑤𐑪𐑕𐑑 𐑒𐑩𐑯𐑧𐑒𐑖𐑩𐑯 𐑑 𐑞 𐑛𐑦𐑕𐑐𐑤𐑱 '%s';\n𐑥𐑴𐑕𐑑 𐑤𐑲𐑒𐑤𐑦 𐑞 X 𐑕𐑻𐑝𐑼 𐑢𐑪𐑟 𐑖𐑳𐑑 𐑛𐑬𐑯 𐑹 𐑿 "
+"𐑒𐑦𐑤𐑛/𐑛𐑩𐑕𐑑𐑮𐑶𐑛\n𐑞 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼.\n"
+
+#, c-format
+#: ../src/core/errors.c:279
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "𐑓𐑱𐑑𐑩𐑤 IO 𐑻𐑼 %d (%s) 𐑪𐑯 𐑛𐑦𐑕𐑐𐑤𐑱 '%s'.\n"
+
+#, c-format
+#: ../src/core/keybindings.c:680
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "𐑕𐑳𐑥 𐑳𐑞𐑼 𐑐𐑮𐑴𐑜𐑮𐑨𐑥 𐑦𐑟 𐑷𐑤𐑮𐑧𐑛𐑦 𐑿𐑟𐑦𐑙 𐑞 𐑒𐑰 %s 𐑢𐑦𐑞 𐑥𐑪𐑛𐑦𐑓𐑲𐑼𐑟 %x 𐑨𐑟 𐑩 𐑚𐑲𐑯𐑛𐑦𐑙\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#, c-format
+#: ../src/core/keybindings.c:2294
+msgid "There was an error running <tt>%s</tt>:\n\n%s"
+msgstr "𐑞𐑺 𐑢𐑪𐑟 𐑩𐑯 𐑻𐑼 𐑮𐑳𐑯𐑦𐑙 <tt>%s</tt>:\n\n%s"
+
+#, c-format
+#: ../src/core/keybindings.c:2383
+msgid "No command %d has been defined.\n"
+msgstr "𐑯𐑴 𐑒𐑩𐑥𐑭𐑯𐑛 %d 𐑣𐑨𐑟 𐑚𐑰𐑯 𐑛𐑦𐑓𐑲𐑯𐑛.\n"
+
+#, c-format
+#: ../src/core/keybindings.c:3337
+msgid "No terminal command has been defined.\n"
+msgstr "𐑯𐑴 𐑑𐑻𐑥𐑦𐑯𐑩𐑤 𐑒𐑩𐑥𐑭𐑯𐑛 𐑣𐑨𐑟 𐑚𐑰𐑯 𐑛𐑦𐑓𐑲𐑯𐑛.\n"
+
+#, c-format
+#: ../src/core/main.c:131
+msgid ""
+"marco %s\nCopyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and "
+"others\nThis is free software; see the source for copying conditions.\nThere "
+"is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR "
+"PURPOSE.\n"
+msgstr ""
+"·𐑥𐑧𐑑𐑨𐑕𐑦𐑑𐑦 %s\n𐑒𐑪𐑐𐑦𐑮𐑲𐑑 (C) 2001-%s ·𐑣𐑨𐑝𐑩𐑒 ·𐑐𐑧𐑯𐑦𐑙𐑑𐑩𐑯, ·𐑮𐑧𐑛 ·𐑣𐑩𐑑, 𐑦𐑙𐑒., 𐑯 "
+"𐑳𐑞𐑼𐑟\n𐑞𐑦𐑕 𐑦𐑟 𐑓𐑮𐑰 𐑕𐑪𐑓𐑑𐑢𐑺; 𐑕𐑰 𐑞 𐑕𐑹𐑕 𐑓𐑹 𐑒𐑪𐑐𐑦𐑦𐑙 𐑒𐑩𐑯𐑛𐑦𐑖𐑩𐑯𐑟.\n𐑞𐑺 𐑦𐑟 𐑯𐑴 𐑢𐑪𐑮𐑩𐑯𐑑𐑦; 𐑯𐑪𐑑 "
+"𐑰𐑝𐑩𐑯 𐑓𐑹 𐑥𐑻𐑗𐑩𐑯𐑩𐑚𐑦𐑤𐑦𐑑𐑦 𐑹 𐑓𐑦𐑑𐑯𐑩𐑕 𐑓𐑹 𐑩 𐑐𐑼𐑑𐑦𐑒𐑿𐑤𐑼 𐑐𐑻𐑐𐑩𐑕.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "𐑛𐑦𐑕𐑱𐑚𐑩𐑤 𐑒𐑩𐑯𐑧𐑒𐑖𐑩𐑯 𐑑 𐑕𐑧𐑖𐑩𐑯 𐑥𐑨𐑯𐑩𐑡𐑼"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "𐑮𐑦𐑐𐑤𐑱𐑕 𐑞 𐑮𐑳𐑯𐑦𐑙 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼 𐑢𐑦𐑞 ·𐑥𐑧𐑑𐑨𐑕𐑦𐑑𐑦"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "𐑕𐑐𐑧𐑕𐑦𐑓𐑲 𐑕𐑧𐑖𐑩𐑯 𐑥𐑨𐑯𐑩𐑡𐑥𐑩𐑯𐑑 ID"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X 𐑛𐑩𐑕𐑐𐑤𐑱 𐑑 𐑿𐑕"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "𐑦𐑯𐑦𐑖𐑩𐑤𐑲𐑟 𐑕𐑧𐑖𐑩𐑯 𐑓𐑮𐑪𐑥 𐑕𐑱𐑝𐑓𐑲𐑤"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "𐑐𐑮𐑦𐑯𐑑 𐑝𐑻𐑠𐑩𐑯"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "𐑥𐑱𐑒 X 𐑒𐑷𐑤𐑟 𐑕𐑦𐑯𐑒𐑮𐑩𐑯𐑩𐑕"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "𐑑𐑻𐑯 𐑒𐑩𐑥𐑐𐑪𐑟𐑩𐑑𐑦𐑙 𐑪𐑯"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "𐑑𐑻𐑯 𐑒𐑩𐑥𐑐𐑪𐑟𐑩𐑑𐑦𐑙 𐑪𐑓"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "𐑛𐑭𐑯'𐑑𐑰 𐑥𐑱𐑒 𐑓𐑫𐑤𐑕𐑒𐑰𐑯 𐑢𐑦𐑯𐑛𐑴𐑟 𐑞𐑨𐑑 𐑸 𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟𐑛 𐑯 𐑣𐑨𐑝 𐑯𐑴 𐑛𐑧𐑒𐑼𐑱𐑖𐑩𐑯𐑟"
+
+#, c-format
+#: ../src/core/main.c:528
+msgid "Failed to scan themes directory: %s\n"
+msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑕𐑒𐑨𐑯 𐑔𐑰𐑥𐑟 𐑛𐑲𐑮𐑧𐑒𐑑𐑼𐑦: %s\n"
+
+#, c-format
+#: ../src/core/main.c:544
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑓𐑲𐑯𐑛 𐑩 𐑔𐑰𐑥! 𐑚𐑰 𐑖𐑫𐑼 %s 𐑧𐑒𐑟𐑦𐑕𐑑𐑕 𐑯 𐑒𐑩𐑯𐑑𐑱𐑯𐑟 𐑞 𐑿𐑠𐑿𐑩𐑤 𐑔𐑰𐑥𐑟.\n"
+
+#, c-format
+#: ../src/core/main.c:603
+msgid "Failed to restart: %s\n"
+msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑮𐑰𐑕𐑑𐑸𐑑: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#, c-format
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf 𐑒𐑰 '%s' 𐑦𐑟 𐑕𐑧𐑑 𐑑 𐑩𐑯 𐑦𐑯𐑝𐑨𐑤𐑦𐑛 𐑝𐑨𐑤𐑿\n"
+
+#, c-format
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d 𐑕𐑑𐑹𐑛 𐑦𐑯 MateConf 𐑒𐑰 %s 𐑦𐑟 𐑬𐑑 𐑝 𐑮𐑱𐑯𐑡 %d 𐑑 %d\n"
+
+#, c-format
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf 𐑒𐑰 \"%s\" 𐑦𐑟 𐑕𐑧𐑑 𐑑 𐑩𐑯 𐑦𐑯𐑝𐑨𐑤𐑦𐑛 𐑑𐑲𐑐\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"𐑢𐑻𐑒𐑩𐑮𐑬𐑯𐑛𐑟 𐑓𐑹 𐑚𐑮𐑴𐑒𐑩𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟 𐑛𐑦𐑕𐑱𐑚𐑩𐑤𐑛. 𐑕𐑳𐑥 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟 𐑥𐑱 𐑯𐑪𐑑 𐑚𐑦𐑣𐑱𐑝 "
+"𐑐𐑮𐑪𐑐𐑼𐑤𐑦.\n"
+
+#, c-format
+#: ../src/core/prefs.c:1305
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑐𐑸𐑟 𐑓𐑪𐑯𐑑 𐑛𐑦𐑕𐑒𐑮𐑦𐑐𐑖𐑩𐑯 \"%s\" 𐑓𐑮𐑪𐑥 MateConf 𐑒𐑰 %s\n"
+
+#, c-format
+#: ../src/core/prefs.c:1367
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" 𐑓𐑬𐑯𐑛 𐑦𐑯 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑛𐑱𐑑𐑩𐑚𐑱𐑕 𐑦𐑟 𐑯𐑪𐑑 𐑩 𐑝𐑨𐑤𐑦𐑛 𐑝𐑨𐑤𐑿 𐑓𐑹 𐑥𐑬𐑕 𐑚𐑳𐑑𐑩𐑯 𐑥𐑪𐑛𐑦𐑓𐑲𐑼\n"
+
+#, c-format
+#: ../src/core/prefs.c:1788
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "𐑻𐑼 𐑕𐑧𐑑𐑦𐑙 𐑯𐑳𐑥𐑚𐑼 𐑝 𐑢𐑻𐑒𐑕𐑐𐑱𐑕𐑩𐑟 𐑑 %d: %s\n"
+
+#, c-format
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+msgid "Workspace %d"
+msgstr "𐑢𐑻𐑒𐑕𐑐𐑱𐑕 %d"
+
+#, c-format
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" 𐑓𐑬𐑯𐑛 𐑦𐑯 𐑒𐑩𐑯𐑓𐑦𐑜𐑘𐑼𐑱𐑖𐑩𐑯 𐑛𐑱𐑑𐑩𐑚𐑱𐑕 𐑦𐑟 𐑯𐑪𐑑 𐑩 𐑝𐑨𐑤𐑦𐑛 𐑝𐑨𐑤𐑿 𐑓𐑹 𐑒𐑰𐑚𐑲𐑯𐑛𐑦𐑙 \"%s\"\n"
+
+#, c-format
+#: ../src/core/prefs.c:2537
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "𐑻𐑼 𐑕𐑧𐑑𐑦𐑙 𐑯𐑱𐑥 𐑓𐑹 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 %d 𐑑 \"%s\": %s\n"
+
+#, c-format
+#: ../src/core/prefs.c:2741
+msgid "Error setting compositor status: %s\n"
+msgstr "𐑻𐑼 𐑕𐑧𐑑𐑦𐑙 𐑒𐑪𐑥𐑐𐑪𐑟𐑦𐑑𐑼 𐑕𐑑𐑱𐑑𐑫𐑕: %s\n"
+
+#, c-format
+#: ../src/core/screen.c:357
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "𐑕𐑒𐑮𐑰𐑯 %d 𐑪𐑯 𐑛𐑦𐑕𐑐𐑤𐑱 '%s' 𐑦𐑟 𐑦𐑯𐑝𐑨𐑤𐑦𐑛\n"
+
+#, c-format
+#: ../src/core/screen.c:373
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the "
+"--replace option to replace the current window manager.\n"
+msgstr ""
+"𐑕𐑒𐑮𐑰𐑯 %d 𐑪𐑯 𐑛𐑦𐑕𐑐𐑤𐑱 \"%s\" 𐑷𐑤𐑮𐑧𐑛𐑦 𐑣𐑨𐑟 𐑩 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼; 𐑑𐑮𐑲 𐑿𐑟𐑦𐑙 𐑞 --replace "
+"𐑪𐑐𐑖𐑩𐑯 𐑑 𐑮𐑦𐑐𐑤𐑱𐑕 𐑞 𐑒𐑳𐑮𐑩𐑯𐑑 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼.\n"
+
+#, c-format
+#: ../src/core/screen.c:400
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑩𐑒𐑢𐑲𐑼 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼 𐑕𐑦𐑤𐑧𐑒𐑖𐑩𐑯 𐑪𐑯 𐑕𐑒𐑮𐑰𐑯 %d 𐑛𐑩𐑕𐑐𐑤𐑱 \"%s\"\n"
+
+#, c-format
+#: ../src/core/screen.c:458
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "𐑕𐑒𐑮𐑰𐑯 %d 𐑪𐑯 𐑛𐑦𐑕𐑐𐑤𐑱 \"%s\" 𐑷𐑤𐑮𐑧𐑛𐑦 𐑣𐑨𐑟 𐑩 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼\n"
+
+#, c-format
+#: ../src/core/screen.c:668
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑮𐑦𐑤𐑰𐑕 𐑕𐑒𐑮𐑰𐑯 %d 𐑪𐑯 𐑛𐑦𐑕𐑐𐑤𐑱 \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n\nThe parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such as "
+"\"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"𐑞 𐑓𐑹𐑥𐑨𐑑 𐑤𐑫𐑒𐑕 𐑤𐑲𐑒 \"<Control>a\" 𐑹 \"<Shift><Alt>F1\".\n\n𐑞 𐑐𐑸𐑟𐑼 𐑦𐑟 𐑓𐑺𐑤𐑦 "
+"𐑤𐑦𐑚𐑼𐑩𐑤 𐑯 𐑩𐑤𐑬𐑟 𐑤𐑴𐑼 𐑹 𐑳𐑐𐑻 𐑒𐑱𐑕, 𐑯 𐑷𐑤𐑕𐑴 𐑩𐑚𐑮𐑰𐑝𐑰𐑱𐑖𐑩𐑯𐑟 𐑕𐑳𐑗 𐑨𐑟 \"<Ctl>\" 𐑯 "
+"\"<Ctrl>\". 𐑦𐑓 𐑿 𐑕𐑧𐑑 𐑞 𐑪𐑐𐑖𐑩𐑯 𐑑 𐑞 𐑕𐑐𐑧𐑖𐑩𐑤 𐑕𐑑𐑮𐑦𐑙 \"disabled\", 𐑞𐑧𐑯 𐑞𐑺 𐑢𐑦𐑤 𐑚𐑰 𐑯𐑴 "
+"𐑒𐑰𐑚𐑲𐑯𐑛𐑦𐑙 𐑓𐑹 𐑞𐑦𐑕 𐑨𐑒𐑖𐑩𐑯."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n\nThe parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such as "
+"\"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action.\n\nThis "
+"keybinding may be reversed by holding down the \"shift\" key; therefore, "
+"\"shift\" cannot be one of the keys it uses."
+msgstr ""
+"𐑞 𐑓𐑹𐑥𐑨𐑑 𐑤𐑫𐑒𐑕 𐑤𐑲𐑒 \"<Control>a\" 𐑹 \"<Shift><Alt>F1\".\n\n𐑞 𐑐𐑸𐑟𐑼 𐑦𐑟 𐑓𐑺𐑤𐑦 "
+"𐑤𐑦𐑚𐑼𐑩𐑤 𐑯 𐑩𐑤𐑬𐑟 𐑤𐑴𐑼 𐑹 𐑳𐑐𐑻 𐑒𐑱𐑕, 𐑯 𐑷𐑤𐑕𐑴 𐑩𐑚𐑮𐑰𐑝𐑰𐑱𐑖𐑩𐑯𐑟 𐑕𐑳𐑗 𐑨𐑟 \"<Ctl>\" 𐑯 "
+"\"<Ctrl>\". 𐑦𐑓 𐑿 𐑕𐑧𐑑 𐑞 𐑪𐑐𐑖𐑩𐑯 𐑑 𐑞 𐑕𐑐𐑧𐑖𐑩𐑤 𐑕𐑑𐑮𐑦𐑙 \"disabled\", 𐑞𐑧𐑯 𐑞𐑺 𐑢𐑦𐑤 𐑚𐑰 𐑯𐑴 "
+"𐑒𐑰𐑚𐑦𐑯𐑛𐑦𐑙 𐑓𐑹 𐑞𐑦𐑕 𐑨𐑒𐑖𐑩𐑯.\n\n𐑞𐑦𐑕 𐑒𐑰𐑚𐑦𐑯𐑛𐑦𐑙 𐑥𐑱 𐑚𐑰 𐑮𐑦𐑝𐑻𐑕𐑑 𐑚𐑲 𐑣𐑴𐑤𐑛𐑦𐑙 𐑛𐑬𐑯 𐑞 \"𐑖𐑦𐑓𐑑\" "
+"𐑒𐑰; 𐑞𐑺𐑓𐑹, \"𐑖𐑦𐑓𐑑\" 𐑒𐑨𐑯𐑪𐑑 𐑚𐑰 𐑢𐑳𐑯 𐑝 𐑞 𐑒𐑰𐑟 𐑦𐑑 𐑿𐑟𐑩𐑟."
+
+#, c-format
+#: ../src/core/session.c:850 ../src/core/session.c:857
+msgid "Could not create directory '%s': %s\n"
+msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑒𐑮𐑦𐑱𐑑 𐑛𐑲𐑮𐑧𐑒𐑑𐑼𐑦 '%s': %s\n"
+
+#, c-format
+#: ../src/core/session.c:867
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑴𐑐𐑩𐑯 𐑕𐑧𐑖𐑩𐑯 𐑓𐑲𐑤 '%s' 𐑓𐑹 𐑮𐑲𐑑𐑦𐑙: %s\n"
+
+#, c-format
+#: ../src/core/session.c:1008
+msgid "Error writing session file '%s': %s\n"
+msgstr "𐑻𐑼 𐑮𐑲𐑑𐑦𐑙 𐑕𐑧𐑖𐑩𐑯 𐑓𐑲𐑤 '%s': %s\n"
+
+#, c-format
+#: ../src/core/session.c:1013
+msgid "Error closing session file '%s': %s\n"
+msgstr "𐑻𐑼 𐑒𐑤𐑴𐑟𐑦𐑙 𐑕𐑧𐑖𐑩𐑯 𐑓𐑲𐑤 '%s': %s\n"
+
+#, c-format
+#: ../src/core/session.c:1143
+msgid "Failed to parse saved session file: %s\n"
+msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑐𐑸𐑟 𐑕𐑱𐑝𐑛 𐑕𐑧𐑖𐑩𐑯 𐑓𐑲𐑤: %s\n"
+
+#, c-format
+#: ../src/core/session.c:1192
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> 𐑩𐑑𐑮𐑦𐑚𐑿𐑑 𐑕𐑰𐑯 𐑚𐑳𐑑 𐑢𐑰 𐑷𐑤𐑮𐑧𐑛𐑦 𐑣𐑨𐑝 𐑞 𐑕𐑧𐑖𐑩𐑯 ID"
+
+#, c-format
+#: ../src/core/session.c:1205 ../src/core/session.c:1280
+#: ../src/core/session.c:1312 ../src/core/session.c:1384
+#: ../src/core/session.c:1444
+msgid "Unknown attribute %s on <%s> element"
+msgstr "𐑳𐑯𐑴𐑯 𐑨𐑑𐑮𐑦𐑚𐑿𐑑 %s 𐑪𐑯 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/core/session.c:1222
+msgid "nested <window> tag"
+msgstr "𐑯𐑧𐑕𐑑𐑩𐑛 <window> 𐑑𐑨𐑜"
+
+#, c-format
+#: ../src/core/session.c:1464
+msgid "Unknown element %s"
+msgstr "𐑳𐑯𐑴𐑯 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 %s"
+
+#: ../src/core/session.c:1816
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"𐑞𐑰𐑟 𐑢𐑦𐑯𐑛𐑴𐑟 𐑛𐑵 𐑯𐑪𐑑 𐑕𐑩𐑐𐑹𐑑 &quot;𐑕𐑱𐑝 𐑒𐑳𐑮𐑩𐑯𐑑 𐑕𐑧𐑑𐑳𐑐&quot; 𐑯 𐑢𐑦𐑤 𐑣𐑨𐑝 𐑑 𐑚𐑰 𐑮𐑰𐑕𐑑𐑸𐑑𐑩𐑛 "
+"𐑥𐑨𐑯𐑘𐑫𐑩𐑤𐑦 𐑯𐑧𐑒𐑕𐑑 𐑑𐑲𐑥 𐑿 𐑤𐑪𐑜 𐑦𐑯."
+
+#, c-format
+#: ../src/core/util.c:101
+msgid "Failed to open debug log: %s\n"
+msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑴𐑐𐑩𐑯 𐑛𐑰𐑚𐑳𐑜 𐑤𐑪𐑜: %s\n"
+
+#, c-format
+#: ../src/core/util.c:111
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "𐑓𐑱𐑤𐑛 𐑑 fdopen() 𐑤𐑪𐑜 𐑓𐑲𐑤 %s: %s\n"
+
+#, c-format
+#: ../src/core/util.c:117
+msgid "Opened log file %s\n"
+msgstr "𐑴𐑐𐑩𐑯𐑛 𐑤𐑪𐑜 𐑓𐑲𐑤 %s\n"
+
+#, c-format
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "·𐑥𐑧𐑑𐑨𐑕𐑦𐑑𐑦 𐑢𐑪𐑟 𐑒𐑩𐑥𐑐𐑲𐑤𐑛 𐑢𐑦𐑞𐑬𐑑 𐑕𐑩𐑐𐑹𐑑 𐑓𐑹 𐑝𐑻𐑚𐑴𐑕 𐑥𐑴𐑛\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "𐑚𐑳𐑜 𐑦𐑯 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼 𐑢𐑹𐑯𐑦𐑙: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼 𐑻𐑼: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "·𐑥𐑧𐑑𐑨𐑕𐑦𐑑𐑦"
+
+#. first time through
+#, c-format
+#: ../src/core/window.c:5660
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"𐑢𐑦𐑯𐑛𐑴 %s 𐑕𐑧𐑑𐑕 SM_CLIENT_ID 𐑪𐑯 𐑦𐑑𐑕𐑧𐑤𐑓, 𐑦𐑯𐑕𐑑𐑧𐑛 𐑝 𐑪𐑯 𐑞 WM_CLIENT_LEADER 𐑢𐑦𐑯𐑛𐑴 𐑨𐑟 "
+"𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑦𐑯 𐑞 ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#, c-format
+#: ../src/core/window.c:6225
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size "
+"%d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"𐑢𐑦𐑯𐑛𐑴 %s 𐑕𐑧𐑑𐑕 𐑩𐑯 MWM 𐑣𐑦𐑯𐑑 𐑦𐑯𐑛𐑦𐑒𐑱𐑑𐑦𐑙 𐑦𐑑 𐑦𐑟𐑯𐑑 𐑮𐑰𐑕𐑲𐑟𐑩𐑚𐑩𐑤, 𐑚𐑳𐑑 𐑕𐑧𐑑𐑕 𐑥𐑦𐑯 𐑕𐑲𐑟 %dx%d "
+"𐑯 𐑥𐑨𐑒𐑕 𐑕𐑲𐑟 %dx%d; 𐑞𐑦𐑕 𐑛𐑳𐑟𐑯𐑑 𐑥𐑱𐑒 𐑥𐑳𐑗 𐑕𐑧𐑯𐑕.\n"
+
+#, c-format
+#: ../src/core/window-props.c:244
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑕𐑧𐑑 𐑩 𐑚𐑴𐑜𐑩𐑕 _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#, c-format
+#: ../src/core/window-props.c:388
+msgid "%s (on %s)"
+msgstr "%s (𐑪𐑯 %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#, c-format
+#: ../src/core/window-props.c:420
+msgid "%s (as superuser)"
+msgstr "%s (𐑨𐑟 𐑕𐑵𐑐𐑼𐑿𐑟𐑼)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#, c-format
+#: ../src/core/window-props.c:438
+msgid "%s (as %s)"
+msgstr "%s (𐑨𐑟 %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#, c-format
+#: ../src/core/window-props.c:444
+msgid "%s (as another user)"
+msgstr "%s (𐑨𐑟 𐑩𐑯𐑳𐑞𐑼 𐑿𐑟𐑼)"
+
+#, c-format
+#: ../src/core/window-props.c:1430
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "𐑦𐑯𐑝𐑨𐑤𐑦𐑛 WM_TRANSIENT_FOR 𐑢𐑦𐑯𐑛𐑴 0x%lx 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑓𐑹 %s.\n"
+
+#, c-format
+#: ../src/core/xprops.c:155
+msgid ""
+"Window 0x%lx has property %s\nthat was expected to have type %s format "
+"%d\nand actually has type %s format %d n_items %d.\nThis is most likely an "
+"application bug, not a window manager bug.\nThe window has title=\"%s\" "
+"class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"𐑢𐑦𐑯𐑛𐑴 0x%lx 𐑣𐑨𐑟 𐑐𐑮𐑪𐑐𐑼𐑑𐑦 %s\n𐑞𐑨𐑑 𐑢𐑪𐑟 𐑦𐑒𐑕𐑐𐑧𐑒𐑑𐑩𐑛 𐑑 𐑣𐑨𐑝 𐑑𐑲𐑐 %s 𐑓𐑹𐑥𐑨𐑑 %d\n𐑯 "
+"𐑨𐑒𐑗𐑫𐑩𐑤𐑦 𐑣𐑨𐑟 𐑑𐑲𐑐 %s 𐑓𐑹𐑥𐑨𐑑 %d n_items %d.\n𐑞𐑦𐑕 𐑦𐑟 𐑥𐑴𐑕𐑑 𐑤𐑲𐑒𐑤𐑦 𐑩𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑚𐑳𐑜, "
+"𐑯𐑪𐑑 𐑩 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼 𐑚𐑳𐑜.\n𐑞 𐑢𐑦𐑯𐑛𐑴 𐑣𐑨𐑟 𐑑𐑲𐑑𐑩𐑤=\"%s\" 𐑒𐑤𐑭𐑕=\"%s\" 𐑯𐑱𐑥=\"%s\"\n"
+
+#, c-format
+#: ../src/core/xprops.c:401
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "𐑐𐑮𐑪𐑐𐑼𐑑𐑦 %s 𐑪𐑯 𐑢𐑦𐑯𐑛𐑴 0x%lx 𐑒𐑩𐑯𐑑𐑱𐑯𐑛 𐑦𐑯𐑝𐑨𐑤𐑦𐑛 UTF-8\n"
+
+#, c-format
+#: ../src/core/xprops.c:484
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"𐑐𐑮𐑪𐑐𐑼𐑑𐑦 %s 𐑪𐑯 𐑢𐑦𐑯𐑛𐑴 0x%lx 𐑒𐑩𐑯𐑑𐑱𐑯𐑛 𐑦𐑯𐑝𐑨𐑤𐑦𐑛 UTF-8 𐑓𐑹 𐑲𐑑𐑩𐑥 %d 𐑦𐑯 𐑞 𐑤𐑦𐑕𐑑\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 𐑪𐑯 𐑞 𐑤𐑧𐑓𐑑 𐑝 𐑞 𐑒𐑳𐑮𐑩𐑯𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 𐑪𐑯 𐑞 𐑮𐑲𐑑 𐑝 𐑞 𐑒𐑳𐑮𐑩𐑯𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 𐑩𐑚𐑳𐑝 𐑞 𐑒𐑳𐑮𐑩𐑯𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "𐑕𐑢𐑦𐑗 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 𐑚𐑩𐑤𐑴 𐑞 𐑒𐑳𐑮𐑩𐑯𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "𐑥𐑵𐑝 𐑚𐑦𐑑𐑢𐑰𐑯 𐑢𐑦𐑯𐑛𐑴𐑟 𐑝 𐑩𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯, 𐑿𐑟𐑦𐑙 𐑩 𐑐𐑪𐑐𐑳𐑐 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "𐑥𐑵𐑝 𐑚𐑨𐑒𐑢𐑼𐑛 𐑚𐑦𐑑𐑢𐑰𐑯 𐑢𐑦𐑯𐑛𐑴𐑟 𐑝 𐑩𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯, 𐑿𐑟𐑦𐑙 𐑩 𐑐𐑪𐑐𐑳𐑐 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "𐑥𐑵𐑝 𐑚𐑦𐑑𐑢𐑰𐑯 𐑢𐑦𐑯𐑛𐑴𐑟, 𐑿𐑟𐑦𐑙 𐑩 𐑐𐑪𐑐𐑳𐑐 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "𐑥𐑵𐑝 𐑚𐑨𐑒𐑢𐑼𐑛 𐑚𐑦𐑑𐑢𐑰𐑯 𐑢𐑦𐑯𐑛𐑴𐑟, 𐑿𐑟𐑦𐑙 𐑩 𐑐𐑪𐑐𐑳𐑐 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "𐑥𐑵𐑝 𐑚𐑦𐑑𐑢𐑰𐑯 𐑐𐑨𐑯𐑩𐑤𐑟 𐑯 𐑞 𐑛𐑧𐑕𐑒𐑑𐑪𐑐, 𐑿𐑟𐑦𐑙 𐑩 𐑐𐑪𐑐𐑳𐑐 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "𐑥𐑵𐑝 𐑚𐑨𐑒𐑢𐑼𐑛 𐑚𐑦𐑑𐑢𐑰𐑯 𐑐𐑨𐑯𐑩𐑤𐑟 𐑯 𐑞 𐑛𐑧𐑕𐑒𐑑𐑪𐑐, 𐑿𐑟𐑦𐑙 𐑩 𐑐𐑪𐑐𐑳𐑐 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "𐑥𐑵𐑝 𐑚𐑦𐑑𐑢𐑰𐑯 𐑢𐑦𐑯𐑛𐑴𐑟 𐑝 𐑩𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑦𐑥𐑰𐑛𐑾𐑑𐑤𐑰"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "𐑥𐑵𐑝 𐑚𐑨𐑒𐑢𐑼𐑛 𐑚𐑦𐑑𐑢𐑰𐑯 𐑢𐑦𐑯𐑛𐑴𐑟 𐑝 𐑩𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑦𐑥𐑰𐑛𐑾𐑑𐑤𐑰"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "𐑥𐑵𐑝 𐑚𐑦𐑑𐑢𐑰𐑯 𐑢𐑦𐑯𐑛𐑴𐑟 𐑦𐑥𐑰𐑛𐑾𐑑𐑤𐑰"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "𐑥𐑵𐑝 𐑚𐑨𐑒𐑢𐑼𐑛 𐑚𐑦𐑑𐑢𐑰𐑯 𐑢𐑦𐑯𐑛𐑴𐑟 𐑦𐑥𐑰𐑛𐑾𐑑𐑤𐑰"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "𐑥𐑵𐑝 𐑚𐑦𐑑𐑢𐑰𐑯 𐑐𐑨𐑯𐑩𐑤𐑟 𐑯 𐑞 𐑛𐑧𐑕𐑒𐑑𐑪𐑐 𐑦𐑥𐑰𐑛𐑾𐑑𐑤𐑰"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "𐑥𐑵𐑝 𐑚𐑨𐑒𐑢𐑼𐑛 𐑚𐑦𐑑𐑢𐑰𐑯 𐑐𐑨𐑯𐑩𐑤𐑟 𐑯 𐑞 𐑛𐑧𐑕𐑒𐑑𐑪𐑐 𐑦𐑥𐑰𐑛𐑾𐑑𐑤𐑰"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "𐑣𐑲𐑛 𐑷𐑤 𐑯𐑹𐑥𐑩𐑤 𐑢𐑦𐑯𐑛𐑴𐑟 𐑯 𐑕𐑧𐑑 𐑓𐑴𐑒𐑩𐑕 𐑑 𐑞 𐑛𐑧𐑕𐑒𐑑𐑪𐑐"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "𐑖𐑴 𐑞 𐑐𐑨𐑯𐑩𐑤𐑟 𐑥𐑱𐑯 𐑥𐑧𐑯𐑿"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "𐑖𐑴 𐑞 𐑐𐑨𐑯𐑩𐑤𐑟 \"𐑮𐑳𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯\" 𐑛𐑲𐑩𐑤𐑪𐑜 𐑚𐑪𐑒𐑕"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "𐑑𐑱𐑒 𐑩 𐑕𐑒𐑮𐑰𐑯𐑖𐑪𐑑"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "𐑑𐑱𐑒 𐑩 𐑕𐑒𐑮𐑰𐑯𐑖𐑪𐑑 𐑝 𐑩 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "𐑮𐑳𐑯 𐑩 𐑑𐑻𐑥𐑦𐑯𐑩𐑤"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "𐑨𐑒𐑑𐑦𐑝𐑱𐑑 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑥𐑧𐑯𐑿"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "𐑑𐑪𐑜𐑩𐑤 𐑓𐑫𐑤𐑕𐑒𐑮𐑰𐑯 𐑥𐑴𐑛"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "𐑑𐑪𐑜𐑩𐑤 𐑥𐑨𐑒𐑕𐑦𐑥𐑦𐑟𐑱𐑖𐑩𐑯 𐑕𐑑𐑱𐑑"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "𐑑𐑪𐑜𐑩𐑤 𐑢𐑧𐑞𐑼 𐑩 𐑢𐑦𐑯𐑛𐑴 𐑢𐑦𐑤 𐑷𐑤𐑢𐑱𐑟 𐑚𐑰 𐑝𐑦𐑕𐑦𐑚𐑩𐑤 𐑴𐑝𐑼 𐑳𐑞𐑼 𐑢𐑦𐑯𐑛𐑴𐑟"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "𐑮𐑩𐑕𐑑𐑹 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "𐑑𐑪𐑜𐑩𐑤 𐑖𐑱𐑛𐑩𐑛 𐑕𐑑𐑱𐑑"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "𐑥𐑦𐑯𐑩𐑥𐑲𐑟 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "𐑒𐑤𐑴𐑟 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "𐑮𐑰𐑕𐑲𐑟 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "𐑑𐑪𐑜𐑩𐑤 𐑢𐑧𐑞𐑼 𐑢𐑦𐑯𐑛𐑴 𐑦𐑟 𐑪𐑯 𐑷𐑤 𐑢𐑻𐑒𐑕𐑐𐑱𐑕𐑩𐑟 𐑹 𐑡𐑳𐑕𐑑 𐑢𐑳𐑯"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑢𐑳𐑯 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 𐑑 𐑞 𐑤𐑧𐑓𐑑"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑢𐑳𐑯 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 𐑑 𐑞 𐑮𐑲𐑑"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑢𐑳𐑯 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 𐑳𐑐"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑢𐑳𐑯 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 𐑛𐑬𐑯"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "𐑮𐑱𐑟 𐑢𐑦𐑯𐑛𐑴 𐑦𐑓 𐑦𐑑𐑕 𐑒𐑳𐑝𐑼𐑛 𐑚𐑲 𐑩𐑯𐑳𐑞𐑼 𐑢𐑦𐑯𐑛𐑴, 𐑳𐑞𐑼𐑢𐑲𐑟 𐑤𐑴𐑼 𐑦𐑑"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "𐑮𐑱𐑟 𐑢𐑦𐑯𐑛𐑴 𐑩𐑚𐑳𐑝 𐑳𐑞𐑼 𐑢𐑦𐑯𐑛𐑴𐑟"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "𐑤𐑴𐑼 𐑢𐑦𐑯𐑛𐑴 𐑚𐑩𐑤𐑴 𐑳𐑞𐑼 𐑢𐑦𐑯𐑛𐑴𐑟"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟 𐑢𐑦𐑯𐑛𐑴 𐑝𐑻𐑑𐑦𐑒𐑩𐑤𐑦"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟 𐑢𐑦𐑯𐑛𐑴 𐑣𐑪𐑮𐑦𐑟𐑪𐑯𐑑𐑩𐑤𐑦"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑯𐑹𐑔-𐑢𐑧𐑕𐑑 (𐑑𐑪𐑐 𐑤𐑧𐑓𐑑) 𐑒𐑹𐑯𐑼"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑯𐑹𐑔-𐑰𐑕𐑑 (𐑑𐑪𐑐 𐑮𐑲𐑑) 𐑒𐑹𐑯𐑼"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑕𐑬𐑔-𐑢𐑧𐑕𐑑 (𐑚𐑪𐑑𐑫𐑥 𐑤𐑧𐑓𐑑) 𐑒𐑹𐑯𐑼"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑕𐑬𐑔-𐑰𐑕𐑑 (𐑚𐑪𐑑𐑫𐑥 𐑮𐑲𐑑) 𐑒𐑹𐑯𐑼"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑯𐑹𐑔 (𐑑𐑪𐑐) 𐑕𐑲𐑛 𐑝 𐑕𐑒𐑮𐑰𐑯"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑕𐑬𐑔 (𐑚𐑪𐑑𐑫𐑥) 𐑕𐑲𐑛 𐑝 𐑕𐑒𐑮𐑰𐑯"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑰𐑕𐑑 (𐑮𐑲𐑑) 𐑕𐑲𐑛 𐑝 𐑕𐑒𐑮𐑰𐑯"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑢𐑧𐑕𐑑 (𐑤𐑧𐑓𐑑) 𐑕𐑲𐑛 𐑝 𐑕𐑒𐑮𐑰𐑯"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑕𐑧𐑯𐑑𐑼 𐑝 𐑕𐑒𐑮𐑰𐑯"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid ""
+"(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(𐑯𐑪𐑑 𐑦𐑥𐑐𐑤𐑩𐑥𐑧𐑯𐑑𐑩𐑛) 𐑯𐑨𐑝𐑦𐑜𐑱𐑖𐑩𐑯 𐑢𐑻𐑒𐑕 𐑦𐑯 𐑑𐑻𐑥𐑟 𐑝 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟 𐑯𐑪𐑑 𐑢𐑦𐑯𐑛𐑴𐑟"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"𐑩 𐑓𐑪𐑯𐑑 𐑛𐑦𐑕𐑒𐑮𐑦𐑐𐑖𐑩𐑯 𐑕𐑑𐑮𐑦𐑙 𐑛𐑦𐑕𐑒𐑮𐑲𐑚𐑦𐑙 𐑩 𐑓𐑪𐑯𐑑 𐑓𐑹 𐑢𐑦𐑯𐑛𐑴 𐑑𐑲𐑑𐑩𐑤𐑚𐑸𐑟. 𐑞 𐑕𐑲𐑟 𐑓𐑮𐑪𐑥 𐑞 "
+"𐑛𐑦𐑕𐑒𐑮𐑦𐑐𐑖𐑩𐑯 𐑢𐑦𐑤 𐑴𐑯𐑤𐑦 𐑚𐑰 𐑿𐑟𐑛 𐑦𐑓 𐑞 titlebar_font_size 𐑪𐑐𐑖𐑩𐑯 𐑦𐑟 𐑕𐑧𐑑 𐑑 0. 𐑷𐑤𐑕𐑴, "
+"𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑦𐑟 𐑛𐑦𐑕𐑱𐑚𐑩𐑤𐑛 𐑦𐑓 𐑞 titlebar_uses_desktop_font 𐑪𐑐𐑖𐑩𐑯 𐑦𐑟 𐑕𐑧𐑑 𐑑 𐑑𐑮𐑵."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "𐑨𐑒𐑖𐑩𐑯 𐑪𐑯 𐑑𐑲𐑑𐑩𐑤 𐑚𐑸 𐑛𐑳𐑚𐑩𐑤-𐑒𐑤𐑦𐑒"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "𐑨𐑒𐑖𐑩𐑯 𐑪𐑯 𐑑𐑲𐑑𐑩𐑤 𐑚𐑸 𐑥𐑦𐑛𐑩𐑤-𐑒𐑤𐑦𐑒"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "𐑨𐑒𐑖𐑩𐑯 𐑪𐑯 𐑑𐑲𐑑𐑩𐑤 𐑚𐑸 𐑮𐑲𐑑-𐑒𐑤𐑦𐑒"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "𐑼𐑱𐑯𐑡𐑥𐑩𐑯𐑑 𐑝 𐑚𐑳𐑑𐑩𐑯𐑟 𐑪𐑯 𐑞 𐑑𐑲𐑑𐑩𐑤𐑚𐑸"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such as "
+"\"menu:minimize,maximize,spacer,close\"; the colon separates the left corner "
+"of the window from the right corner, and the button names are "
+"comma-separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"𐑼𐑱𐑯𐑡𐑥𐑩𐑯𐑑 𐑝 𐑚𐑳𐑑𐑩𐑯𐑟 𐑪𐑯 𐑞 𐑑𐑲𐑑𐑩𐑤𐑚𐑸. 𐑞 𐑝𐑨𐑤𐑿 𐑖𐑫𐑛 𐑚𐑰 𐑩 𐑕𐑑𐑮𐑦𐑙, 𐑕𐑳𐑗 𐑨𐑟 "
+"\"menu:minimize,maximize,spacer,close\"; 𐑞 𐑒𐑴𐑤𐑩𐑯 𐑕𐑧𐑐𐑼𐑱𐑑𐑕 𐑞 𐑤𐑧𐑓𐑑 𐑒𐑹𐑯𐑻 𐑝 𐑞 "
+"𐑢𐑦𐑯𐑛𐑴 𐑓𐑮𐑪𐑥 𐑞 𐑮𐑲𐑑 𐑒𐑹𐑯𐑻, 𐑯 𐑞 𐑚𐑳𐑑𐑩𐑯 𐑯𐑱𐑥𐑟 𐑸 𐑒𐑪𐑥𐑩-𐑕𐑧𐑐𐑼𐑱𐑑𐑩𐑛. 𐑛𐑿𐑐𐑤𐑦𐑒𐑱𐑑 𐑚𐑳𐑑𐑩𐑯𐑟 𐑸 𐑯𐑪𐑑 "
+"𐑩𐑤𐑬𐑛. 𐑳𐑯𐑴𐑯 𐑚𐑳𐑑𐑩𐑯 𐑯𐑱𐑥𐑟 𐑸 𐑕𐑲𐑤𐑩𐑯𐑑𐑤𐑦 𐑦𐑜𐑯𐑹𐑛 𐑕𐑴 𐑞𐑨𐑑 𐑚𐑳𐑑𐑩𐑯𐑟 𐑒𐑨𐑯 𐑚𐑰 𐑨𐑛𐑩𐑛 𐑦𐑯 𐑓𐑿𐑗𐑼 "
+"·𐑥𐑧𐑑𐑨𐑕𐑦𐑑𐑦 𐑝𐑻𐑠𐑩𐑯𐑟 𐑢𐑦𐑞𐑬𐑑 𐑚𐑮𐑱𐑒𐑦𐑙 𐑴𐑤𐑛𐑼 𐑝𐑻𐑠𐑩𐑯𐑟. 𐑩 𐑕𐑐𐑧𐑖𐑩𐑤 spacer 𐑑𐑨𐑜 𐑒𐑨𐑯 𐑚𐑰 𐑿𐑟𐑛 𐑑 "
+"𐑦𐑯𐑕𐑻𐑑 𐑕𐑳𐑥 𐑕𐑐𐑱𐑕 𐑚𐑦𐑑𐑢𐑰𐑯 𐑑𐑵 𐑩𐑡𐑱𐑕𐑩𐑯𐑑 𐑚𐑳𐑑𐑩𐑯𐑟."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "𐑷𐑑𐑩𐑥𐑨𐑑𐑦𐑒𐑤𐑦 𐑮𐑱𐑟𐑩𐑟 𐑞 𐑓𐑴𐑒𐑩𐑕𐑑 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using the "
+"\"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+"𐑒𐑤𐑦𐑒𐑦𐑙 𐑩 𐑢𐑦𐑯𐑛𐑴 𐑢𐑲𐑤 𐑣𐑴𐑤𐑛𐑦𐑙 𐑛𐑬𐑯 𐑞𐑦𐑕 𐑥𐑪𐑛𐑦𐑓𐑲𐑼 𐑒𐑰 𐑢𐑦𐑤 𐑥𐑵𐑝 𐑞 𐑢𐑦𐑯𐑛𐑴 (𐑤𐑧𐑓𐑑 𐑒𐑤𐑦𐑒), "
+"𐑮𐑰𐑕𐑲𐑟 𐑞 𐑢𐑦𐑯𐑛𐑴 (𐑥𐑦𐑛𐑩𐑤 𐑒𐑤𐑦𐑒), 𐑹 𐑖𐑴 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑥𐑧𐑯𐑿 (𐑮𐑲𐑑 𐑒𐑤𐑦𐑒). 𐑞 𐑥𐑦𐑛𐑩𐑤 𐑯 𐑮𐑲𐑑 "
+"𐑪𐑐𐑼𐑱𐑖𐑩𐑯𐑟 𐑥𐑱 𐑚𐑰 𐑕𐑢𐑪𐑐𐑑 𐑿𐑟𐑦𐑙 𐑞 \"resize_with_right_button\" 𐑒𐑰. 𐑥𐑪𐑛𐑦𐑓𐑲𐑼 𐑦𐑟 "
+"𐑦𐑒𐑕𐑐𐑮𐑧𐑕𐑑 𐑨𐑟 \"&lt;Alt&gt;\" 𐑹 \"&lt;Super&gt;\" 𐑓𐑹 𐑦𐑜𐑟𐑭𐑥𐑐𐑩𐑤."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "𐑒𐑩𐑥𐑭𐑯𐑛𐑟 𐑑 𐑮𐑳𐑯 𐑦𐑯 𐑮𐑦𐑕𐑐𐑪𐑯𐑕 𐑑 𐑒𐑰𐑚𐑦𐑯𐑛𐑦𐑙𐑟"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "𐑒𐑩𐑥𐑐𐑪𐑟𐑩𐑑𐑦𐑙 𐑥𐑨𐑯𐑩𐑡𐑼"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "𐑒𐑩𐑯𐑑𐑮𐑴𐑤 𐑣𐑬 𐑯𐑿 𐑢𐑦𐑯𐑛𐑴𐑟 𐑜𐑧𐑑 𐑓𐑴𐑒𐑩𐑕"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "𐑒𐑳𐑮𐑩𐑯𐑑 𐑔𐑰𐑥"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "𐑛𐑦𐑤𐑱 𐑦𐑯 𐑥𐑦𐑤𐑦𐑕𐑧𐑒𐑩𐑯𐑛𐑟 𐑓𐑹 𐑞 𐑷𐑑𐑴 𐑮𐑱𐑟 𐑪𐑐𐑖𐑩𐑯"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "𐑛𐑦𐑑𐑻𐑥𐑦𐑯𐑟 𐑢𐑧𐑞𐑼 ·𐑥𐑧𐑑𐑨𐑕𐑦𐑑𐑦 𐑦𐑟 𐑩 𐑒𐑩𐑥𐑐𐑪𐑟𐑩𐑑𐑦𐑙 𐑥𐑨𐑯𐑩𐑡𐑼."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"𐑛𐑦𐑑𐑻𐑥𐑦𐑯𐑟 𐑢𐑧𐑞𐑼 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟 𐑹 𐑞 𐑕𐑦𐑕𐑑𐑩𐑥 𐑒𐑨𐑯 𐑡𐑧𐑯𐑼𐑱𐑑 𐑭𐑛𐑩𐑚𐑩𐑤 '𐑚𐑰𐑐𐑕'; 𐑥𐑱 𐑚𐑰 𐑿𐑟𐑛 𐑦𐑯 "
+"𐑒𐑩𐑯𐑡𐑩𐑙𐑒𐑖𐑩𐑯 𐑢𐑦𐑞 '𐑝𐑦𐑠𐑩𐑢𐑩𐑤 𐑚𐑧𐑤' 𐑑 𐑩𐑤𐑬 𐑕𐑲𐑤𐑩𐑯𐑑 '𐑚𐑰𐑐𐑕'."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "𐑛𐑦𐑕𐑱𐑚𐑩𐑤 𐑥𐑦𐑕𐑓𐑰𐑑𐑿𐑟 𐑞𐑨𐑑 𐑸 𐑮𐑦𐑒𐑢𐑲𐑼𐑛 𐑚𐑲 𐑴𐑤𐑛 𐑹 𐑚𐑮𐑴𐑒𐑩𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "𐑦𐑯𐑱𐑚𐑩𐑤 𐑝𐑦𐑠𐑩𐑢𐑩𐑤 𐑚𐑧𐑤"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay specified by the "
+"auto_raise_delay key. This is not related to clicking on a window to raise "
+"it, nor to entering a window during drag-and-drop."
+msgstr ""
+"𐑦𐑓 𐑕𐑧𐑑 𐑑 𐑑𐑮𐑵, 𐑯 𐑞 𐑓𐑴𐑒𐑩𐑕 𐑥𐑴𐑛 𐑦𐑟 𐑲𐑞𐑼 \"sloppy\" 𐑹 \"mouse\" 𐑞𐑧𐑯 𐑞 𐑓𐑴𐑒𐑩𐑕𐑑 𐑢𐑦𐑯𐑛𐑴 "
+"𐑢𐑦𐑤 𐑚𐑰 𐑷𐑑𐑩𐑥𐑨𐑑𐑦𐑒𐑤𐑦 𐑮𐑱𐑟𐑛 𐑭𐑓𐑑𐑼 𐑩 𐑛𐑦𐑤𐑱 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑚𐑲 𐑞 auto_raise_delay 𐑒𐑰. 𐑞𐑦𐑕 𐑦𐑟 "
+"𐑯𐑪𐑑 𐑮𐑦𐑤𐑱𐑑𐑩𐑛 𐑑 𐑒𐑤𐑦𐑒𐑦𐑙 𐑪𐑯 𐑩 𐑢𐑦𐑯𐑛𐑴 𐑑 𐑮𐑱𐑟 𐑦𐑑, 𐑯𐑹 𐑑 𐑧𐑯𐑑𐑼𐑦𐑙 𐑩 𐑢𐑦𐑯𐑛𐑴 𐑛𐑘𐑫𐑼𐑦𐑙 "
+"𐑛𐑮𐑨𐑜-𐑯-𐑛𐑮𐑪𐑐."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"𐑦𐑓 𐑑𐑮𐑵, 𐑦𐑜𐑯𐑹 𐑞 titlebar_font 𐑪𐑐𐑖𐑩𐑯, 𐑯 𐑿𐑕 𐑞 𐑕𐑑𐑨𐑯𐑛𐑼𐑛 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑓𐑪𐑯𐑑 𐑓𐑹 𐑢𐑦𐑯𐑛𐑴 "
+"𐑑𐑲𐑑𐑩𐑤𐑟."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, the "
+"wireframe feature is disabled when accessibility is on."
+msgstr ""
+"𐑦𐑓 𐑑𐑮𐑵, ·𐑥𐑧𐑑𐑨𐑕𐑦𐑑𐑦 𐑢𐑦𐑤 𐑜𐑦𐑝 𐑞 𐑿𐑟𐑼 𐑤𐑧𐑕 𐑓𐑰𐑛𐑚𐑨𐑒 𐑚𐑲 𐑿𐑟𐑦𐑙 𐑢𐑲𐑼𐑓𐑮𐑱𐑥𐑟, 𐑩𐑝𐑶𐑛𐑦𐑙 "
+"𐑨𐑯𐑩𐑥𐑱𐑖𐑩𐑯𐑟, 𐑹 𐑳𐑞𐑼 𐑥𐑰𐑯𐑟. 𐑞𐑦𐑕 𐑦𐑟 𐑩 𐑕𐑩𐑜𐑯𐑦𐑓𐑦𐑒𐑩𐑯𐑑 𐑮𐑦𐑛𐑳𐑒𐑖𐑩𐑯 𐑦𐑯 𐑿𐑟𐑩𐑚𐑦𐑤𐑦𐑑𐑦 𐑓𐑹 𐑥𐑧𐑯𐑦 "
+"𐑿𐑟𐑼𐑟, 𐑚𐑳𐑑 𐑥𐑱 𐑩𐑤𐑬 𐑤𐑧𐑜𐑩𐑕𐑰 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟 𐑑 𐑒𐑩𐑯𐑑𐑦𐑯𐑿 𐑢𐑻𐑒𐑦𐑙, 𐑯 𐑥𐑱 𐑷𐑤𐑕𐑴 𐑚𐑰 𐑩 𐑿𐑕𐑓𐑩𐑤 "
+"𐑑𐑮𐑱𐑛𐑪𐑓 𐑓𐑹 𐑑𐑻𐑥𐑦𐑯𐑩𐑤 𐑕𐑻𐑝𐑼𐑟. 𐑣𐑬𐑧𐑝𐑼, 𐑞 𐑢𐑲𐑼𐑓𐑮𐑱𐑥 𐑓𐑰𐑗𐑼 𐑦𐑟 𐑛𐑦𐑕𐑱𐑚𐑩𐑤𐑛 𐑢𐑧𐑯 𐑨𐑒𐑕𐑧𐑕𐑩𐑚𐑦𐑤𐑦𐑑𐑰 "
+"𐑦𐑟 𐑪𐑯."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"𐑦𐑓 𐑑𐑮𐑵, 𐑞𐑧𐑯 ·𐑥𐑧𐑑𐑨𐑕𐑦𐑑𐑦 𐑢𐑻𐑒𐑕 𐑦𐑯 𐑑𐑻𐑥𐑟 𐑝 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟 𐑮𐑭𐑞𐑼 𐑞𐑨𐑯 𐑢𐑦𐑯𐑛𐑴𐑟. 𐑞 𐑒𐑪𐑯𐑕𐑧𐑐𐑑 𐑦𐑟 "
+"𐑩 𐑚𐑦𐑑 𐑨𐑚𐑕𐑑𐑮𐑨𐑒𐑑, 𐑚𐑳𐑑 𐑦𐑯 𐑡𐑧𐑯𐑼𐑩𐑤 𐑩𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯-𐑚𐑱𐑕𐑑 𐑕𐑧𐑑𐑳𐑐 𐑦𐑟 𐑥𐑹 𐑤𐑲𐑒 𐑞 ·𐑥𐑨𐑒 𐑯 𐑤𐑧𐑕 "
+"𐑤𐑲𐑒 ·𐑢𐑦𐑯𐑛𐑴𐑟. 𐑢𐑧𐑯 𐑿 𐑓𐑴𐑒𐑩𐑕 𐑩 𐑢𐑦𐑯𐑛𐑴 𐑦𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯-𐑚𐑱𐑕𐑑 𐑥𐑴𐑛, 𐑷𐑤 𐑞 𐑢𐑦𐑯𐑛𐑴𐑟 𐑦𐑯 𐑞 "
+"𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑢𐑦𐑤 𐑚𐑰 𐑮𐑱𐑟𐑛. 𐑷𐑤𐑕𐑴, 𐑦𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯-𐑚𐑱𐑕𐑑 𐑥𐑴𐑛, 𐑓𐑴𐑒𐑩𐑕 𐑒𐑤𐑦𐑒𐑕 𐑸 𐑯𐑪𐑑 𐑐𐑭𐑕𐑑 "
+"𐑔𐑮𐑵 𐑑 𐑢𐑦𐑯𐑛𐑴𐑟 𐑦𐑯 𐑳𐑞𐑼 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟. 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯-𐑚𐑱𐑕𐑑 𐑥𐑴𐑛 𐑦𐑟, 𐑣𐑬𐑧𐑝𐑼, 𐑤𐑸𐑡𐑤𐑦 "
+"𐑳𐑯𐑦𐑥𐑐𐑤𐑧𐑥𐑧𐑯𐑑𐑧𐑛 𐑨𐑑 𐑞 𐑥𐑴𐑥𐑩𐑯𐑑."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "𐑦𐑓 𐑑𐑮𐑵, 𐑑𐑮𐑱𐑛 𐑪𐑓 𐑿𐑟𐑩𐑚𐑦𐑤𐑦𐑑𐑦 𐑓𐑹 𐑤𐑧𐑕 𐑮𐑦𐑟𐑹𐑕 𐑿𐑕𐑦𐑡"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "𐑥𐑪𐑛𐑦𐑓𐑲𐑼 𐑑 𐑿𐑟 𐑓𐑹 𐑥𐑪𐑛𐑦𐑓𐑲𐑛 𐑢𐑦𐑯𐑛𐑴 𐑒𐑤𐑦𐑒 𐑨𐑒𐑖𐑩𐑯𐑟"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "𐑯𐑱𐑥 𐑝 𐑢𐑻𐑒𐑕𐑐𐑱𐑕"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "𐑯𐑳𐑥𐑚𐑼 𐑝 𐑢𐑻𐑒𐑕𐑐𐑱𐑕𐑩𐑟"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"𐑯𐑳𐑥𐑚𐑼 𐑝 𐑢𐑻𐑒𐑕𐑐𐑱𐑕𐑩𐑟. 𐑥𐑳𐑕𐑑 𐑚𐑰 𐑥𐑹 𐑞𐑨𐑯 𐑟𐑽𐑴, 𐑯 𐑣𐑨𐑟 𐑩 𐑓𐑦𐑒𐑕𐑑 𐑥𐑨𐑒𐑕𐑦𐑥𐑩𐑥 𐑑 𐑐𐑮𐑦𐑝𐑧𐑯𐑑 𐑥𐑱𐑒𐑦𐑙 "
+"𐑞 𐑛𐑧𐑕𐑒𐑑𐑪𐑐 𐑩𐑯𐑘𐑵𐑟𐑩𐑚𐑩𐑤 𐑚𐑲 𐑨𐑒𐑕𐑦𐑛𐑧𐑯𐑑𐑩𐑤𐑦 𐑭𐑕𐑒𐑦𐑙 𐑓𐑹 𐑑𐑵 𐑥𐑧𐑯𐑦 𐑢𐑻𐑒𐑕𐑐𐑱𐑕𐑩𐑟."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "𐑮𐑳𐑯 𐑩 𐑛𐑦𐑓𐑲𐑯𐑛 𐑒𐑩𐑥𐑭𐑯𐑛"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"𐑕𐑧𐑑 𐑞𐑦𐑕 𐑑 𐑑𐑮𐑵 𐑑 𐑮𐑰𐑕𐑲𐑟 𐑢𐑦𐑞 𐑞 𐑮𐑲𐑑 𐑚𐑳𐑑𐑩𐑯 𐑯 𐑖𐑴 𐑩 𐑥𐑧𐑯𐑿 𐑢𐑦𐑞 𐑞 𐑥𐑦𐑛𐑩𐑤 𐑚𐑳𐑑𐑩𐑯 𐑢𐑲𐑤 "
+"𐑣𐑴𐑤𐑛𐑦𐑙 𐑛𐑬𐑯 𐑞 𐑒𐑰 𐑜𐑦𐑝𐑩𐑯 𐑦𐑯 \"mouse_button_modifier\"; 𐑕𐑧𐑑 𐑦𐑑 𐑑 𐑓𐑷𐑤𐑕 𐑑 𐑥𐑱𐑒 𐑦𐑑 "
+"𐑢𐑻𐑒 𐑞 𐑪𐑐𐑴𐑕𐑦𐑑 𐑢𐑱 𐑩𐑮𐑬𐑯𐑛."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See "
+"http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Even when this option is "
+"false, windows can still be raised by an alt-left-click anywhere on the "
+"window, a normal click on the window decorations, or by special messages from "
+"pagers, such as activation requests from tasklist applets. This option is "
+"currently disabled in click-to-focus mode. Note that the list of ways to "
+"raise windows when raise_on_click is false does not include programmatic "
+"requests from applications to raise windows; such requests will be ignored "
+"regardless of the reason for the request. If you are an application developer "
+"and have a user complaining that your application does not work with this "
+"setting disabled, tell them it is _their_ fault for breaking their window "
+"manager and that they need to change this option back to true or live with "
+"the \"bug\" they requested."
+msgstr ""
+"𐑕𐑧𐑑𐑦𐑙 𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑑 𐑓𐑷𐑤𐑕 𐑒𐑨𐑯 𐑤𐑧𐑛 𐑑 𐑚𐑩𐑜𐑰 𐑚𐑦𐑣𐑱𐑝𐑘𐑼, 𐑕𐑴 𐑿𐑟𐑼𐑟 𐑸 𐑕𐑑𐑮𐑪𐑙𐑤𐑦 𐑛𐑦𐑕𐑒𐑳𐑮𐑦𐑡𐑛 "
+"𐑓𐑮𐑪𐑥 𐑗𐑱𐑯𐑡𐑦𐑙 𐑦𐑑 𐑓𐑮𐑪𐑥 𐑞 𐑛𐑦𐑓𐑷𐑤𐑑 𐑝 𐑑𐑮𐑵. 𐑥𐑧𐑯𐑦 𐑨𐑒𐑖𐑩𐑯𐑟 (e.g. 𐑒𐑤𐑦𐑒𐑦𐑙 𐑦𐑯 𐑞 𐑒𐑤𐑲𐑩𐑯𐑑 𐑺𐑦𐑩, "
+"𐑥𐑵𐑝𐑦𐑙 𐑹 𐑮𐑰𐑕𐑲𐑟𐑦𐑙 𐑞 𐑢𐑦𐑯𐑛𐑴) 𐑯𐑹𐑥𐑩𐑤𐑦 𐑮𐑱𐑟 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑨𐑟 𐑩 𐑕𐑲𐑛-𐑦𐑓𐑧𐑒𐑑. 𐑕𐑧𐑑𐑦𐑙 𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑑 "
+"𐑓𐑷𐑤𐑕, 𐑢𐑦𐑗 𐑦𐑟 𐑕𐑑𐑮𐑪𐑙𐑤𐑦 𐑛𐑦𐑕𐑒𐑳𐑮𐑦𐑡𐑛, 𐑢𐑦𐑤 𐑛𐑰𐑒𐑩𐑐𐑩𐑤 𐑮𐑱𐑟𐑦𐑙 𐑓𐑮𐑪𐑥 𐑳𐑞𐑼 𐑿𐑟𐑼 𐑨𐑒𐑖𐑩𐑯𐑟, 𐑯 𐑦𐑜𐑯𐑹 "
+"𐑮𐑱𐑟 𐑮𐑦𐑒𐑢𐑧𐑕𐑑𐑕 𐑡𐑧𐑯𐑼𐑱𐑑𐑩𐑛 𐑚𐑲 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟. 𐑕𐑰 "
+"http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. 𐑰𐑝𐑩𐑯 𐑢𐑧𐑯 𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑦𐑟 "
+"𐑓𐑷𐑤𐑕, 𐑢𐑦𐑯𐑛𐑴𐑟 𐑒𐑨𐑯 𐑕𐑑𐑦𐑤 𐑚𐑰 𐑮𐑱𐑟𐑛 𐑚𐑲 𐑩𐑯 ·𐑷𐑤𐑑-𐑤𐑧𐑓𐑑-𐑒𐑤𐑦𐑒 𐑧𐑯𐑦𐑢𐑺 𐑪𐑯 𐑞 𐑢𐑦𐑯𐑛𐑴, 𐑩 𐑯𐑹𐑥𐑩𐑤 "
+"𐑒𐑤𐑦𐑒 𐑪𐑯 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑛𐑧𐑒𐑼𐑱𐑖𐑩𐑯𐑟, 𐑹 𐑚𐑲 𐑕𐑐𐑧𐑖𐑩𐑤 𐑥𐑧𐑕𐑦𐑡𐑩𐑟 𐑓𐑮𐑪𐑥 𐑐𐑱𐑡𐑻𐑟, 𐑕𐑳𐑗 𐑨𐑟 𐑨𐑒𐑑𐑩𐑝𐑱𐑖𐑩𐑯 "
+"𐑮𐑦𐑒𐑢𐑧𐑕𐑑𐑕 𐑓𐑮𐑪𐑥 𐑑𐑭𐑕𐑒𐑤𐑦𐑕𐑑 𐑨𐑐𐑤𐑩𐑑𐑕. 𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑦𐑟 𐑒𐑳𐑮𐑩𐑯𐑑𐑤𐑦 𐑛𐑦𐑕𐑱𐑚𐑩𐑤𐑛 𐑦𐑯 𐑒𐑤𐑦𐑒-𐑑-𐑓𐑴𐑒𐑩𐑕 "
+"𐑥𐑴𐑛. 𐑯𐑴𐑑 𐑞𐑨𐑑 𐑞 𐑤𐑦𐑕𐑑 𐑝 𐑢𐑱𐑟 𐑑 𐑮𐑱𐑟 𐑢𐑦𐑯𐑛𐑴𐑟 𐑢𐑧𐑯 raise_on_click 𐑦𐑟 𐑓𐑷𐑤𐑕 𐑛𐑴𐑟 𐑯𐑪𐑑 "
+"𐑦𐑯𐑒𐑤𐑵𐑛 𐑐𐑮𐑭𐑜𐑮𐑩𐑥𐑨𐑑𐑦𐑒 𐑮𐑦𐑒𐑢𐑧𐑕𐑑𐑕 𐑓𐑮𐑪𐑥 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟 𐑑 𐑮𐑱𐑟 𐑢𐑦𐑯𐑛𐑴𐑟; 𐑕𐑳𐑗 𐑮𐑦𐑒𐑢𐑧𐑕𐑑𐑕 𐑢𐑦𐑤 𐑚𐑰 "
+"𐑦𐑜𐑯𐑹𐑛 𐑮𐑦𐑜𐑸𐑛𐑤𐑩𐑕 𐑝 𐑞 𐑮𐑰𐑟𐑩𐑯 𐑓𐑹 𐑞 𐑮𐑦𐑒𐑢𐑧𐑕𐑑. 𐑦𐑓 𐑿 𐑸 𐑩𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑛𐑦𐑝𐑧𐑤𐑩𐑐𐑼 𐑯 𐑣𐑨𐑝 𐑩 "
+"𐑿𐑟𐑼 𐑒𐑩𐑥𐑐𐑤𐑱𐑯𐑦𐑙 𐑞𐑨𐑑 𐑿𐑼 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑛𐑳𐑟 𐑯𐑪𐑑 𐑢𐑻𐑒 𐑢𐑦𐑞 𐑞𐑦𐑕 𐑕𐑧𐑑𐑦𐑙 𐑛𐑦𐑕𐑱𐑚𐑩𐑤𐑛, 𐑑𐑧𐑤 𐑞𐑧𐑥 𐑦𐑑 "
+"𐑦𐑟 _𐑞𐑺_ 𐑓𐑷𐑤𐑑 𐑓𐑹 𐑚𐑮𐑱𐑒𐑦𐑙 𐑞𐑺 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼 𐑯 𐑞𐑨𐑑 𐑞𐑱 𐑯𐑰𐑛 𐑑 𐑗𐑱𐑯𐑡 𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑚𐑨𐑒 𐑑 "
+"𐑑𐑮𐑵 𐑹 𐑤𐑲𐑝 𐑢𐑦𐑞 𐑞 \"𐑚𐑳𐑜\" 𐑞𐑱 𐑮𐑦𐑒𐑢𐑧𐑕𐑑𐑩𐑛."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"𐑕𐑳𐑥 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟 𐑛𐑦𐑕𐑮𐑦𐑜𐑸𐑛 𐑕𐑐𐑧𐑕𐑩𐑓𐑩𐑒𐑱𐑖𐑩𐑯𐑟 𐑦𐑯 𐑢𐑱𐑟 𐑞𐑨𐑑 𐑮𐑦𐑟𐑳𐑤𐑑 𐑦𐑯 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑯𐑩𐑡𐑼 "
+"𐑥𐑦𐑕𐑓𐑰𐑑𐑿𐑮𐑟. 𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑐𐑫𐑑𐑕 ·𐑥𐑧𐑑𐑨𐑕𐑦𐑑𐑦 𐑦𐑯 𐑩 𐑮𐑦𐑜𐑻𐑩𐑕𐑤𐑰 𐑒𐑩𐑮𐑧𐑒𐑑 𐑥𐑴𐑛, 𐑢𐑦𐑗 𐑜𐑦𐑝𐑟 𐑩 𐑥𐑹 "
+"𐑒𐑩𐑯𐑕𐑦𐑕𐑑𐑩𐑯𐑑 𐑿𐑟𐑼 𐑦𐑯𐑑𐑼𐑓𐑱𐑕, 𐑐𐑮𐑩𐑝𐑲𐑛𐑩𐑛 𐑢𐑳𐑯 𐑛𐑴𐑟 𐑯𐑪𐑑 𐑯𐑰𐑛 𐑑 𐑮𐑳𐑯 𐑧𐑯𐑦 𐑥𐑦𐑕𐑚𐑩𐑣𐑱𐑝𐑦𐑙 "
+"𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯𐑟."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "𐑕𐑦𐑕𐑑𐑩𐑥 𐑚𐑧𐑤 𐑦𐑟 𐑭𐑛𐑩𐑚𐑩𐑤"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell or "
+"another application 'bell' indicator has been rung. Currently there are two "
+"valid values, \"fullscreen\", which causes a fullscreen white-black flash, "
+"and \"frame_flash\" which causes the titlebar of the application which sent "
+"the bell signal to flash. If the application which sent the bell is unknown "
+"(as is usually the case for the default \"system beep\"), the currently "
+"focused window's titlebar is flashed."
+msgstr ""
+"𐑑𐑧𐑤𐑟 ·𐑥𐑧𐑑𐑨𐑕𐑦𐑑𐑦 𐑣𐑬 𐑑 𐑦𐑥𐑐𐑤𐑧𐑥𐑧𐑯𐑑 𐑞 𐑝𐑦𐑠𐑩𐑢𐑩𐑤 𐑦𐑯𐑛𐑩𐑒𐑱𐑖𐑩𐑯 𐑞𐑨𐑑 𐑞 𐑕𐑦𐑕𐑑𐑩𐑥 𐑚𐑧𐑤 𐑹 𐑩𐑯𐑳𐑞𐑼 "
+"𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 '𐑚𐑧𐑤' 𐑦𐑯𐑛𐑦𐑒𐑱𐑑𐑼 𐑣𐑨𐑟 𐑚𐑰𐑯 𐑮𐑩𐑙. 𐑒𐑳𐑮𐑩𐑯𐑑𐑤𐑦 𐑞𐑺 𐑸 𐑑𐑵 𐑝𐑨𐑤𐑦𐑛 𐑝𐑨𐑤𐑿𐑟, "
+"\"fullscreen\", 𐑢𐑦𐑗 𐑒𐑷𐑟𐑩𐑟 𐑩 fullscreen 𐑢𐑲𐑑-𐑚𐑤𐑨𐑒 𐑓𐑤𐑨𐑖, 𐑯 \"frame_flash\" 𐑢𐑦𐑗 "
+"𐑒𐑷𐑟𐑩𐑟 𐑞 𐑑𐑲𐑑𐑩𐑤𐑚𐑸 𐑝 𐑞 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑢𐑦𐑗 𐑕𐑧𐑯𐑑 𐑞 𐑚𐑧𐑤 𐑕𐑦𐑜𐑯𐑩𐑤 𐑑 𐑓𐑤𐑨𐑖. 𐑦𐑓 𐑞 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 "
+"𐑢𐑦𐑗 𐑕𐑧𐑯𐑑 𐑞 𐑚𐑧𐑤 𐑦𐑟 𐑳𐑯𐑴𐑯 (𐑨𐑟 𐑦𐑟 𐑿𐑠𐑿𐑩𐑤𐑦 𐑞 𐑒𐑱𐑕 𐑓𐑹 𐑞 𐑛𐑦𐑓𐑷𐑤𐑑 \"𐑕𐑦𐑕𐑑𐑩𐑥 𐑚𐑰𐑐\"), 𐑞 "
+"𐑒𐑳𐑮𐑩𐑯𐑑𐑤𐑦 𐑓𐑴𐑒𐑩𐑕𐑑 𐑢𐑦𐑯𐑛𐑴𐑟 𐑑𐑲𐑑𐑩𐑤𐑚𐑸 𐑦𐑟 𐑓𐑤𐑨𐑖𐑑."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"𐑞 /apps/marco/global_keybindings/run_command_N 𐑒𐑰𐑟 𐑛𐑦𐑓𐑲𐑯 𐑒𐑰𐑚𐑲𐑯𐑛𐑦𐑙𐑟 𐑞𐑨𐑑 "
+"𐑒𐑪𐑮𐑦𐑕𐑐𐑪𐑯𐑛 𐑑 𐑞𐑰𐑟 𐑒𐑩𐑥𐑭𐑯𐑛𐑟. 𐑐𐑮𐑧𐑕𐑦𐑙 𐑞 𐑒𐑰𐑚𐑲𐑯𐑛𐑦𐑙 𐑓𐑹 run_command_N 𐑢𐑦𐑤 𐑧𐑒𐑕𐑩𐑒𐑿𐑑 "
+"command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"𐑞 /apps/marco/global_keybindings/run_command_screenshot 𐑒𐑰 𐑛𐑦𐑓𐑲𐑯𐑟 𐑩 "
+"𐑒𐑰𐑚𐑲𐑯𐑛𐑦𐑙 𐑢𐑦𐑗 𐑒𐑷𐑟𐑩𐑟 𐑞 𐑒𐑩𐑥𐑭𐑯𐑛 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑚𐑲 𐑞𐑦𐑕 𐑕𐑧𐑑𐑦𐑙 𐑑 𐑚𐑰 𐑦𐑯𐑝𐑴𐑒𐑑."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to be "
+"invoked."
+msgstr ""
+"𐑞 /apps/marco/global_keybindings/run_command_window_screenshot 𐑒𐑰 𐑛𐑦𐑓𐑲𐑯𐑟 𐑩 "
+"𐑒𐑰𐑚𐑲𐑯𐑛𐑦𐑙 𐑢𐑦𐑗 𐑒𐑷𐑟𐑩𐑟 𐑞 𐑒𐑩𐑥𐑭𐑯𐑛 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑚𐑲 𐑞𐑦𐑕 𐑕𐑧𐑑𐑦𐑙 𐑑 𐑚𐑰 𐑦𐑯𐑝𐑴𐑒𐑑."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in "
+"/apps/marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" "
+"or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"𐑞 𐑒𐑰𐑚𐑲𐑯𐑛𐑦𐑙 𐑞𐑨𐑑 𐑮𐑳𐑯𐑟 𐑞 𐑒𐑪𐑮𐑩𐑕𐑐𐑭𐑯𐑛𐑦𐑙𐑤𐑰-𐑯𐑳𐑥𐑚𐑼𐑛 𐑒𐑩𐑥𐑭𐑯𐑛 𐑦𐑯 "
+"/apps/marco/keybinding_commands. 𐑞 𐑓𐑹𐑥𐑨𐑑 𐑤𐑫𐑒𐑕 𐑤𐑲𐑒 \"&lt;Control&gt;𐑩\" 𐑹 "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". 𐑞 𐑐𐑸𐑟𐑼 𐑦𐑟 𐑓𐑺𐑤𐑦 𐑤𐑦𐑚𐑼𐑩𐑤 𐑯 𐑩𐑤𐑬𐑟 𐑤𐑴𐑼 𐑹 𐑳𐑐𐑻 𐑒𐑱𐑕, 𐑯 "
+"𐑷𐑤𐑕𐑴 𐑩𐑚𐑮𐑰𐑝𐑰𐑱𐑖𐑩𐑯𐑟 𐑕𐑳𐑗 𐑨𐑟 \"&lt;Ctl&gt;\" 𐑯 \"&lt;Ctrl&gt;\". 𐑦𐑓 𐑿 𐑕𐑧𐑑 𐑞 𐑪𐑐𐑖𐑩𐑯 "
+"𐑑 𐑞 𐑕𐑐𐑧𐑖𐑩𐑤 𐑕𐑑𐑮𐑦𐑙 \"disabled\", 𐑞𐑧𐑯 𐑞𐑺 𐑢𐑦𐑤 𐑚𐑰 𐑯𐑴 𐑒𐑰𐑚𐑲𐑯𐑛𐑦𐑙 𐑓𐑹 𐑞𐑦𐑕 𐑨𐑒𐑖𐑩𐑯."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "𐑞 𐑯𐑱𐑥 𐑝 𐑩 𐑢𐑻𐑒𐑕𐑐𐑱𐑕."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "𐑞 𐑕𐑒𐑮𐑰𐑯𐑖𐑪𐑑 𐑒𐑩𐑥𐑭𐑯𐑛"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so forth."
+msgstr "𐑞 𐑔𐑰𐑥 𐑛𐑦𐑑𐑻𐑥𐑦𐑯𐑟 𐑞 𐑩𐑐𐑽𐑩𐑯𐑕 𐑝 𐑢𐑦𐑯𐑛𐑴 𐑚𐑹𐑛𐑼𐑟, 𐑑𐑲𐑑𐑩𐑤𐑚𐑸, 𐑯 𐑕𐑴 𐑓𐑹𐑔."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"𐑞 𐑑𐑲𐑥 𐑛𐑦𐑤𐑱 𐑚𐑦𐑓𐑹 𐑮𐑱𐑟𐑦𐑙 𐑩 𐑢𐑦𐑯𐑛𐑴 𐑦𐑓 auto_raise 𐑦𐑟 𐑕𐑧𐑑 𐑑 𐑑𐑮𐑵. 𐑞 𐑛𐑦𐑤𐑱 𐑦𐑟 𐑜𐑦𐑝𐑩𐑯 𐑦𐑯 "
+"𐑔𐑶𐑟𐑩𐑯𐑛𐑔𐑕 𐑝 𐑩 𐑕𐑧𐑒𐑩𐑯𐑛."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"𐑞 𐑢𐑦𐑯𐑛𐑴 𐑓𐑴𐑒𐑩𐑕 𐑥𐑴𐑛 𐑦𐑯𐑛𐑦𐑒𐑱𐑑𐑕 𐑣𐑬 𐑢𐑦𐑯𐑛𐑴𐑟 𐑸 𐑨𐑒𐑑𐑦𐑝𐑱𐑑𐑩𐑛. 𐑦𐑑 𐑣𐑨𐑟 𐑔𐑮𐑰 𐑐𐑪𐑕𐑩𐑚𐑩𐑤 𐑝𐑨𐑤𐑿𐑟; "
+"\"click\" 𐑥𐑰𐑯𐑟 𐑢𐑦𐑯𐑛𐑴𐑟 𐑥𐑳𐑕𐑑 𐑚𐑰 𐑒𐑤𐑦𐑒𐑑 𐑦𐑯 𐑹𐑛𐑼 𐑑 𐑓𐑴𐑒𐑩𐑕 𐑞𐑧𐑥, \"sloppy\" 𐑥𐑰𐑯𐑟 "
+"𐑢𐑦𐑯𐑛𐑴𐑟 𐑸 𐑓𐑴𐑒𐑩𐑕𐑑 𐑢𐑧𐑯 𐑞 𐑥𐑬𐑕 𐑧𐑯𐑑𐑼𐑟 𐑞 𐑢𐑦𐑯𐑛𐑴, 𐑯 \"mouse\" 𐑥𐑰𐑯𐑟 𐑢𐑦𐑯𐑛𐑴𐑟 𐑸 𐑓𐑴𐑒𐑩𐑕𐑑 𐑢𐑧𐑯 "
+"𐑞 𐑥𐑬𐑕 𐑧𐑯𐑑𐑼𐑟 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑯 𐑩𐑯𐑓𐑴𐑒𐑩𐑕𐑑 𐑢𐑧𐑯 𐑞 𐑥𐑬𐑕 𐑤𐑰𐑝𐑟 𐑞 𐑢𐑦𐑯𐑛𐑴."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "𐑞 𐑢𐑦𐑯𐑛𐑴 𐑕𐑒𐑮𐑰𐑯𐑖𐑪𐑑 𐑒𐑩𐑥𐑭𐑯𐑛"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which will "
+"display the window menu, 'lower' which will put the window behind all the "
+"others, and 'none' which will not do anything."
+msgstr ""
+"𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑛𐑦𐑑𐑻𐑥𐑦𐑯𐑟 𐑞 𐑦𐑓𐑧𐑒𐑑𐑕 𐑝 𐑛𐑳𐑚𐑩𐑤-𐑒𐑤𐑦𐑒𐑦𐑙 𐑪𐑯 𐑞 𐑑𐑲𐑑𐑩𐑤 𐑚𐑸. 𐑒𐑳𐑮𐑩𐑯𐑑 𐑝𐑨𐑤𐑦𐑛 𐑪𐑐𐑖𐑩𐑯𐑟 "
+"𐑸 'toggle_shade', 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑖𐑱𐑛/𐑳𐑯𐑖𐑱𐑯 𐑞 𐑢𐑦𐑯𐑛𐑴, 'toggle_maximize' 𐑢𐑦𐑗 𐑢𐑦𐑤 "
+"𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟/𐑳𐑯𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟 𐑞 𐑢𐑦𐑯𐑛𐑴, 'toggle_maximize_horizontally' 𐑯 "
+"'toggle_maximize_vertically' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟/𐑳𐑯𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑦𐑯 𐑞𐑨𐑑 "
+"𐑛𐑦𐑮𐑧𐑒𐑖𐑩𐑯 𐑴𐑯𐑤𐑦, 'minimize' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑥𐑦𐑯𐑩𐑥𐑲𐑟 𐑞 𐑢𐑦𐑯𐑛𐑴, 'shade' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑮𐑴𐑤 𐑞 "
+"𐑢𐑦𐑯𐑛𐑴 𐑳𐑐, 'menu' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑛𐑦𐑕𐑐𐑤𐑱 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑥𐑧𐑯𐑿, 'lower' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑐𐑫𐑑 𐑞 𐑢𐑦𐑯𐑛𐑴 "
+"𐑚𐑦𐑣𐑲𐑯𐑛 𐑷𐑤 𐑞 𐑳𐑞𐑼𐑟, 𐑯 'none' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑯𐑪𐑑 𐑛𐑵 𐑧𐑯𐑦𐑔𐑦𐑙."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which will "
+"display the window menu, 'lower' which will put the window behind all the "
+"others, and 'none' which will not do anything."
+msgstr ""
+"𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑛𐑦𐑑𐑻𐑥𐑦𐑯𐑟 𐑞 𐑦𐑓𐑧𐑒𐑑𐑕 𐑝 𐑥𐑦𐑛𐑩𐑤-𐑒𐑤𐑦𐑒𐑦𐑙 𐑪𐑯 𐑞 𐑑𐑲𐑑𐑩𐑤 𐑚𐑸. 𐑒𐑳𐑮𐑩𐑯𐑑 𐑝𐑨𐑤𐑦𐑛 𐑪𐑐𐑖𐑩𐑯𐑟 "
+"𐑸 'toggle_shade', 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑖𐑱𐑛/unshade 𐑞 𐑢𐑦𐑯𐑛𐑴, 'toggle_maximize' 𐑢𐑦𐑗 𐑢𐑦𐑤 "
+"𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟/unmaximize 𐑞 𐑢𐑦𐑯𐑛𐑴, 'toggle_maximize_horizontally' 𐑯 "
+"'toggle_maximize_vertically' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟/unmaximize 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑦𐑯 𐑞𐑨𐑑 "
+"𐑛𐑦𐑮𐑧𐑒𐑖𐑩𐑯 𐑴𐑯𐑤𐑦, 'minimize' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑥𐑦𐑯𐑩𐑥𐑲𐑟 𐑞 𐑢𐑦𐑯𐑛𐑴, 'shade' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑮𐑴𐑤 𐑞 "
+"𐑢𐑦𐑯𐑛𐑴 𐑳𐑐, '𐑥𐑧𐑯𐑿' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑛𐑦𐑕𐑐𐑤𐑱 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑥𐑧𐑯𐑿, 'lower' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑐𐑫𐑑 𐑞 𐑢𐑦𐑯𐑛𐑴 "
+"𐑚𐑦𐑣𐑲𐑯𐑛 𐑷𐑤 𐑞 𐑳𐑞𐑼𐑟, 𐑯 'none' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑯𐑪𐑑 𐑛𐑵 𐑧𐑯𐑦𐑔𐑦𐑙."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which will "
+"display the window menu, 'lower' which will put the window behind all the "
+"others, and 'none' which will not do anything."
+msgstr ""
+"𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑛𐑦𐑑𐑻𐑥𐑦𐑯𐑟 𐑞 𐑦𐑓𐑧𐑒𐑑𐑕 𐑝 𐑮𐑲𐑑-𐑒𐑤𐑦𐑒𐑦𐑙 𐑪𐑯 𐑞 𐑑𐑲𐑑𐑩𐑤 𐑚𐑸. 𐑒𐑳𐑮𐑩𐑯𐑑 𐑝𐑨𐑤𐑦𐑛 𐑪𐑐𐑖𐑩𐑯𐑟 "
+"𐑪𐑐𐑖𐑩𐑯𐑟 𐑸 'toggle_shade', 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑖𐑱𐑛/unshade 𐑞 𐑢𐑦𐑯𐑛𐑴, 'toggle_maximize' 𐑢𐑦𐑗 "
+"𐑢𐑦𐑤 𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟/unmaximize 𐑞 𐑢𐑦𐑯𐑛𐑴, 'toggle_maximize_horizontally' 𐑯 "
+"'toggle_maximize_vertically' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟/unmaximize 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑦𐑯 𐑞𐑨𐑑 "
+"𐑛𐑦𐑮𐑧𐑒𐑖𐑩𐑯 𐑴𐑯𐑤𐑦, 'minimize' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑥𐑦𐑯𐑩𐑥𐑲𐑟 𐑞 𐑢𐑦𐑯𐑛𐑴, 'shade' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑮𐑴𐑤 𐑞 "
+"𐑢𐑦𐑯𐑛𐑴 𐑳𐑐, '𐑥𐑧𐑯𐑿' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑛𐑦𐑕𐑐𐑤𐑱 𐑞 𐑢𐑦𐑯𐑛𐑴 𐑥𐑧𐑯𐑿, 'lower' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑐𐑫𐑑 𐑞 𐑢𐑦𐑯𐑛𐑴 "
+"𐑚𐑦𐑣𐑲𐑯𐑛 𐑷𐑤 𐑞 𐑳𐑞𐑼𐑟, 𐑯 'none' 𐑢𐑦𐑗 𐑢𐑦𐑤 𐑯𐑪𐑑 𐑛𐑵 𐑧𐑯𐑦𐑔𐑦𐑙."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"𐑞𐑦𐑕 𐑪𐑐𐑖𐑩𐑯 𐑐𐑮𐑩𐑝𐑲𐑛𐑟 𐑩𐑛𐑦𐑖𐑩𐑯𐑩𐑤 𐑒𐑩𐑯𐑑𐑮𐑴𐑤 𐑴𐑝𐑼 𐑣𐑬 𐑯𐑿𐑤𐑦 𐑒𐑮𐑦𐑱𐑑𐑩𐑛 𐑢𐑦𐑯𐑛𐑴𐑟 𐑜𐑧𐑑 𐑓𐑴𐑒𐑩𐑕. 𐑦𐑑 "
+"𐑣𐑨𐑟 𐑑𐑵 𐑐𐑪𐑕𐑩𐑚𐑩𐑤 𐑝𐑨𐑤𐑿𐑟; \"smart\" 𐑩𐑐𐑤𐑲𐑟 𐑞 𐑿𐑟𐑼'𐑕 𐑯𐑹𐑥𐑩𐑤 𐑓𐑴𐑒𐑩𐑕 𐑥𐑴𐑛, 𐑯 \"strict\" "
+"𐑮𐑦𐑟𐑳𐑤𐑑𐑕 𐑦𐑯 𐑢𐑦𐑯𐑛𐑴𐑟 𐑕𐑑𐑸𐑑𐑩𐑛 𐑓𐑮𐑪𐑥 𐑩 𐑑𐑻𐑥𐑦𐑯𐑩𐑤 𐑯𐑪𐑑 𐑚𐑰𐑦𐑙 𐑜𐑦𐑝𐑩𐑯 𐑓𐑴𐑒𐑩𐑕."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"𐑑𐑻𐑯𐑟 𐑪𐑯 𐑩 𐑝𐑦𐑠𐑩𐑢𐑩𐑤 𐑦𐑯𐑛𐑩𐑒𐑱𐑖𐑩𐑯 𐑢𐑧𐑯 𐑩𐑯 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑹 𐑞 𐑕𐑦𐑕𐑑𐑩𐑥 𐑦𐑖𐑵𐑟 𐑩 '𐑚𐑧𐑤' 𐑹 '𐑚𐑰𐑐'; "
+"𐑿𐑕𐑓𐑩𐑤 𐑓𐑹 𐑞 𐑣𐑸𐑛-𐑝-𐑣𐑽𐑦𐑙 𐑯 𐑓𐑹 𐑿𐑕 𐑦𐑯 𐑯𐑶𐑟𐑦 𐑦𐑯𐑝𐑲𐑮𐑩𐑯𐑥𐑩𐑯𐑑𐑕."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "𐑿𐑟 𐑕𐑑𐑨𐑯𐑛𐑼𐑛 𐑕𐑦𐑕𐑑𐑩𐑥 𐑓𐑪𐑯𐑑 𐑦𐑯 𐑢𐑦𐑯𐑛𐑴 𐑑𐑲𐑑𐑩𐑤𐑟"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "𐑝𐑦𐑠𐑩𐑢𐑩𐑤 𐑚𐑧𐑤 𐑑𐑲𐑐"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "𐑢𐑧𐑞𐑼 𐑮𐑱𐑟𐑦𐑙 𐑖𐑫𐑛 𐑚𐑰 𐑩 𐑕𐑲𐑛-𐑦𐑓𐑧𐑒𐑑 𐑝 𐑳𐑞𐑼 𐑿𐑟𐑼 𐑦𐑯𐑑𐑻𐑨𐑒𐑖𐑩𐑯𐑟"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "𐑢𐑧𐑞𐑼 𐑑 𐑮𐑰𐑕𐑲𐑟 𐑢𐑦𐑞 𐑞 𐑮𐑲𐑑 𐑚𐑳𐑑𐑩𐑯"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "𐑢𐑦𐑯𐑛𐑴 𐑓𐑴𐑒𐑩𐑕 𐑥𐑴𐑛"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "𐑢𐑦𐑯𐑛𐑴 𐑑𐑲𐑑𐑩𐑤 𐑓𐑪𐑯𐑑"
+
+#, c-format
+#: ../src/tools/marco-message.c:150
+msgid "Usage: %s\n"
+msgstr "𐑿𐑕𐑦𐑡: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "𐑒𐑤𐑴𐑟 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "𐑢𐑦𐑯𐑛𐑴 𐑥𐑧𐑯𐑿"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "𐑥𐑦𐑯𐑩𐑥𐑲𐑟 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "𐑮𐑩𐑕𐑑𐑹 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "𐑮𐑴𐑤 𐑳𐑐 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "𐑳𐑯𐑮𐑴𐑤 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "𐑒𐑰𐑐 𐑢𐑦𐑯𐑛𐑴 𐑪𐑯 𐑑𐑪𐑐"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "𐑮𐑦𐑥𐑵𐑝 𐑢𐑦𐑯𐑛𐑴 𐑓𐑮𐑪𐑥 𐑑𐑪𐑐"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "𐑷𐑤𐑢𐑱𐑟 𐑪𐑯 𐑝𐑦𐑕𐑦𐑚𐑩𐑤 𐑢𐑻𐑒𐑕𐑐𐑱𐑕"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "𐑐𐑫𐑑 𐑢𐑦𐑯𐑛𐑴 𐑪𐑯 𐑴𐑯𐑤𐑦 𐑢𐑳𐑯 𐑢𐑻𐑒𐑕𐑐𐑱𐑕"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "𐑥𐑦_𐑯𐑦𐑥𐑲𐑟"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "𐑥𐑨_𐑒𐑕𐑦𐑥𐑲𐑟"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "𐑳𐑯𐑥𐑩_𐑒𐑕𐑦𐑥𐑲𐑟"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "𐑮𐑴𐑤 _𐑳𐑐"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_𐑳𐑯𐑮𐑴𐑤"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_𐑥𐑵𐑝"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_𐑮𐑰𐑕𐑲𐑟"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "𐑥𐑵𐑝 𐑑𐑲𐑑𐑩𐑤𐑚𐑸 𐑪𐑯_𐑕𐑒𐑮𐑰𐑯"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "𐑷𐑤𐑢𐑱𐑟 𐑪𐑯 _𐑑𐑪𐑐"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_𐑷𐑤𐑢𐑱𐑟 𐑪𐑯 𐑝𐑦𐑕𐑦𐑚𐑩𐑤 𐑢𐑻𐑒𐑕𐑐𐑱𐑕"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_𐑴𐑯𐑤𐑦 𐑪𐑯 𐑞𐑦𐑕 𐑢𐑻𐑒𐑕𐑐𐑱𐑕"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "𐑥𐑵𐑝 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 _𐑤𐑧𐑓𐑑"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "𐑥𐑵𐑝 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 𐑮_𐑲𐑑"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "𐑥𐑵𐑝 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 _𐑳𐑐"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "𐑥𐑵𐑝 𐑑 𐑢𐑻𐑒𐑕𐑐𐑱𐑕 _𐑛𐑬𐑯"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_𐑒𐑤𐑴𐑟"
+
+#, c-format
+#: ../src/ui/menu.c:203
+msgid "Workspace %d%n"
+msgstr "𐑢𐑻𐑒𐑕𐑐𐑱𐑕 %d%n"
+
+#, c-format
+#: ../src/ui/menu.c:213
+msgid "Workspace 1_0"
+msgstr "𐑢𐑻𐑒𐑕𐑐𐑱𐑕 1_0"
+
+#, c-format
+#: ../src/ui/menu.c:215
+msgid "Workspace %s%d"
+msgstr "𐑢𐑻𐑒𐑕𐑐𐑱𐑕 %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "𐑥𐑵𐑝 𐑑 𐑩𐑯𐑳𐑞𐑼 _𐑢𐑻𐑒𐑕𐑐𐑱𐑕"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "𐑖𐑦𐑓𐑑"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "𐑒𐑪𐑯𐑑𐑮𐑴𐑤"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "𐑪𐑤𐑑"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "𐑥𐑧𐑑𐑩"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "𐑕𐑵𐑐𐑼"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "𐑣𐑲𐑐𐑼"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "𐑥𐑪𐑛2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "𐑥𐑪𐑛3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "𐑥𐑪𐑛4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "𐑥𐑪𐑛5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#, c-format
+#: ../src/ui/resizepopup.c:113
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "𐑑𐑪𐑐"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "𐑚𐑪𐑑𐑫𐑥"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "𐑤𐑧𐑓𐑑"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "𐑮𐑲𐑑"
+
+#, c-format
+#: ../src/ui/theme.c:287
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "𐑓𐑮𐑱𐑥 𐑡𐑦𐑪𐑥𐑩𐑑𐑮𐑦 𐑛𐑳𐑟 𐑯𐑪𐑑 𐑕𐑐𐑧𐑕𐑦𐑓𐑲 \"%s\" 𐑛𐑲𐑥𐑧𐑯𐑖𐑪𐑯"
+
+#, c-format
+#: ../src/ui/theme.c:306
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "𐑓𐑮𐑱𐑥 𐑡𐑦𐑪𐑥𐑩𐑑𐑮𐑦 𐑛𐑳𐑟 𐑯𐑪𐑑 𐑕𐑐𐑧𐑕𐑦𐑓𐑲 𐑛𐑲𐑥𐑧𐑯𐑖𐑪𐑯 \"%s\" 𐑓𐑹 𐑚𐑹𐑛𐑼 \"%s\""
+
+#, c-format
+#: ../src/ui/theme.c:343
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "𐑚𐑳𐑑𐑩𐑯 𐑨𐑕𐑐𐑧𐑒𐑑 𐑮𐑱𐑖𐑦𐑴 %g 𐑦𐑟 𐑯𐑪𐑑 𐑮𐑰𐑟𐑩𐑯𐑩𐑚𐑩𐑤"
+
+#, c-format
+#: ../src/ui/theme.c:355
+msgid "Frame geometry does not specify size of buttons"
+msgstr "𐑓𐑮𐑱𐑥 𐑡𐑦𐑪𐑥𐑩𐑑𐑮𐑦 𐑛𐑳𐑟 𐑯𐑪𐑑 𐑕𐑐𐑧𐑕𐑦𐑓𐑲 𐑕𐑲𐑟 𐑝 𐑚𐑳𐑑𐑩𐑯𐑟"
+
+#, c-format
+#: ../src/ui/theme.c:1020
+msgid "Gradients should have at least two colors"
+msgstr "𐑜𐑮𐑱𐑛𐑦𐑩𐑯𐑑𐑕 𐑖𐑫𐑛 𐑣𐑨𐑝 𐑨𐑑 𐑤𐑰𐑕𐑑 𐑑𐑵 𐑒𐑳𐑤𐑼𐑟"
+
+#, c-format
+#: ../src/ui/theme.c:1146
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK 𐑒𐑳𐑤𐑼 𐑕𐑐𐑧𐑕𐑦𐑓𐑦𐑒𐑱𐑖𐑩𐑯 𐑥𐑳𐑕𐑑 𐑣𐑨𐑝 𐑞 𐑕𐑑𐑱𐑑 𐑦𐑯 𐑚𐑮𐑨𐑒𐑩𐑑𐑕, 𐑧.𐑡𐑰. gtk:fg[NORMAL] 𐑢𐑺 "
+"NORMAL 𐑦𐑟 𐑞 𐑕𐑑𐑱𐑑; 𐑒𐑫𐑛 𐑯𐑪𐑑 𐑐𐑸𐑟 \"%s\""
+
+#, c-format
+#: ../src/ui/theme.c:1160
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. "
+"gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK 𐑒𐑳𐑤𐑼 𐑕𐑐𐑧𐑕𐑦𐑓𐑦𐑒𐑱𐑖𐑩𐑯 𐑥𐑳𐑕𐑑 𐑣𐑨𐑝 𐑩 𐑒𐑤𐑴𐑕 𐑚𐑮𐑨𐑒𐑩𐑑 𐑭𐑓𐑑𐑼 𐑞 𐑕𐑑𐑱𐑑, 𐑧.𐑡𐑰. "
+"gtk:fg[NORMAL] 𐑢𐑺 NORMAL 𐑦𐑟 𐑞 𐑕𐑑𐑱𐑑; 𐑒𐑫𐑛 𐑯𐑪𐑑 𐑐𐑸𐑟 \"%s\""
+
+#, c-format
+#: ../src/ui/theme.c:1171
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "𐑛𐑦𐑛 𐑯𐑪𐑑 𐑳𐑯𐑛𐑼𐑕𐑑𐑨𐑯𐑛 𐑕𐑑𐑱𐑑 \"%s\" 𐑦𐑯 𐑒𐑳𐑤𐑼 𐑕𐑐𐑧𐑕𐑦𐑓𐑦𐑒𐑱𐑖𐑩𐑯"
+
+#, c-format
+#: ../src/ui/theme.c:1184
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "𐑛𐑦𐑛 𐑯𐑪𐑑 𐑳𐑯𐑛𐑼𐑕𐑑𐑨𐑯𐑛 𐑒𐑳𐑤𐑼 𐑒𐑩𐑥𐑐𐑴𐑯𐑩𐑯𐑑 \"%s\" 𐑦𐑯 𐑒𐑳𐑤𐑼 𐑕𐑐𐑧𐑕𐑦𐑓𐑦𐑒𐑱𐑖𐑩𐑯"
+
+#, c-format
+#: ../src/ui/theme.c:1214
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"𐑚𐑤𐑧𐑯𐑛 𐑓𐑹𐑥𐑨𐑑 𐑦𐑟 \"𐑚𐑤𐑧𐑯𐑛/𐑚𐑩𐑒𐑜𐑮𐑬𐑯𐑛/𐑓𐑹𐑜𐑮𐑬𐑯𐑛/𐑨𐑤𐑓𐑩\", \"%s\" 𐑛𐑳𐑟 𐑯𐑪𐑑 𐑓𐑦𐑑 𐑞 𐑓𐑹𐑥𐑨𐑑"
+
+#, c-format
+#: ../src/ui/theme.c:1225
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑐𐑸𐑟 𐑨𐑤𐑓𐑩 𐑝𐑨𐑤𐑿 \"%s\" 𐑦𐑯 𐑚𐑤𐑧𐑯𐑛𐑩𐑛 𐑒𐑳𐑤𐑼"
+
+#, c-format
+#: ../src/ui/theme.c:1235
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "𐑨𐑤𐑓𐑩 𐑝𐑨𐑤𐑿 \"%s\" 𐑦𐑯 𐑚𐑤𐑧𐑯𐑛𐑩𐑛 𐑒𐑳𐑤𐑼 𐑦𐑟 𐑯𐑪𐑑 𐑚𐑦𐑑𐑢𐑰𐑯 0.0 𐑯 1.0"
+
+#, c-format
+#: ../src/ui/theme.c:1282
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "𐑖𐑱𐑛 𐑓𐑹𐑥𐑨𐑑 𐑦𐑟 \"𐑖𐑱𐑛/𐑚𐑱𐑕_𐑒𐑳𐑤𐑼/𐑓𐑨𐑒𐑑𐑼\", \"%s\" 𐑛𐑳𐑟 𐑯𐑪𐑑 𐑓𐑦𐑑 𐑞 𐑓𐑹𐑥𐑨𐑑"
+
+#, c-format
+#: ../src/ui/theme.c:1293
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑐𐑸𐑟 𐑖𐑱𐑛 𐑓𐑨𐑒𐑑𐑼 \"%s\" 𐑦𐑯 𐑖𐑱𐑛𐑩𐑛 𐑒𐑳𐑤𐑼"
+
+#, c-format
+#: ../src/ui/theme.c:1303
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "𐑖𐑱𐑛 𐑓𐑨𐑒𐑑𐑼 \"%s\" 𐑦𐑯 𐑖𐑱𐑛𐑩𐑛 𐑒𐑳𐑤𐑼 𐑦𐑟 𐑯𐑧𐑜𐑩𐑑𐑦𐑝"
+
+#, c-format
+#: ../src/ui/theme.c:1332
+msgid "Could not parse color \"%s\""
+msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑐𐑸𐑟 𐑒𐑳𐑤𐑼 \"%s\""
+
+#, c-format
+#: ../src/ui/theme.c:1582
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑒𐑩𐑯𐑑𐑱𐑯𐑟 𐑒𐑨𐑮𐑩𐑒𐑑𐑼 '%s' 𐑢𐑦𐑗 𐑦𐑟 𐑯𐑪𐑑 𐑩𐑤𐑬𐑛"
+
+#, c-format
+#: ../src/ui/theme.c:1609
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑒𐑩𐑯𐑑𐑱𐑯𐑟 𐑓𐑤𐑴𐑑𐑦𐑙 𐑐𐑶𐑯𐑑 𐑯𐑳𐑥𐑚𐑼 '%s' 𐑢𐑦𐑗 𐑒𐑫𐑛 𐑯𐑪𐑑 𐑚𐑰 𐑐𐑸𐑟𐑛"
+
+#, c-format
+#: ../src/ui/theme.c:1623
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑒𐑩𐑯𐑑𐑱𐑯𐑟 𐑦𐑯𐑑𐑩𐑡𐑼 '%s' 𐑢𐑦𐑗 𐑒𐑫𐑛 𐑯𐑪𐑑 𐑚𐑰 𐑐𐑸𐑟𐑛"
+
+#, c-format
+#: ../src/ui/theme.c:1745
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑒𐑩𐑯𐑑𐑱𐑯𐑛 𐑳𐑯𐑴𐑯 𐑪𐑐𐑼𐑱𐑑𐑼 𐑨𐑑 𐑞 𐑕𐑑𐑸𐑑 𐑝 𐑞𐑦𐑕 𐑑𐑧𐑒𐑕𐑑: \"%s\""
+
+#, c-format
+#: ../src/ui/theme.c:1802
+msgid "Coordinate expression was empty or not understood"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑢𐑪𐑟 𐑧𐑥𐑐𐑑𐑦 𐑹 𐑯𐑪𐑑 𐑳𐑯𐑛𐑼𐑕𐑑𐑫𐑛"
+
+#, c-format
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+msgid "Coordinate expression results in division by zero"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑮𐑦𐑟𐑳𐑤𐑑𐑕 𐑦𐑯 𐑛𐑦𐑝𐑦𐑠𐑩𐑯 𐑚𐑲 𐑟𐑽𐑴"
+
+#, c-format
+#: ../src/ui/theme.c:1965
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑑𐑮𐑲𐑟 𐑑 𐑿𐑕 𐑥𐑪𐑛𐑿𐑤𐑴 𐑪𐑐𐑼𐑱𐑑𐑼 𐑪𐑯 𐑩 𐑓𐑤𐑴𐑑𐑦𐑙-𐑐𐑶𐑯𐑑 𐑯𐑳𐑥𐑚𐑼"
+
+#, c-format
+#: ../src/ui/theme.c:2021
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑣𐑨𐑟 𐑩𐑯 𐑪𐑐𐑼𐑱𐑑𐑼 \"%s\" 𐑢𐑺 𐑩𐑯 𐑪𐑐𐑼𐑨𐑯𐑛 𐑢𐑪𐑟 𐑦𐑒𐑕𐑐𐑧𐑒𐑑𐑩𐑛"
+
+#, c-format
+#: ../src/ui/theme.c:2030
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑣𐑨𐑛 𐑩𐑯 𐑪𐑐𐑼𐑨𐑯𐑛 𐑢𐑺 𐑩𐑯 𐑪𐑐𐑼𐑱𐑑𐑼 𐑢𐑪𐑟 𐑦𐑒𐑕𐑐𐑧𐑒𐑑𐑩𐑛"
+
+#, c-format
+#: ../src/ui/theme.c:2038
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑧𐑯𐑛𐑩𐑛 𐑢𐑦𐑞 𐑩𐑯 𐑪𐑐𐑼𐑱𐑑𐑼 𐑦𐑯𐑕𐑑𐑧𐑛 𐑝 𐑩𐑯 𐑪𐑐𐑼𐑨𐑯𐑛"
+
+#, c-format
+#: ../src/ui/theme.c:2048
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑣𐑨𐑟 𐑪𐑐𐑼𐑱𐑑𐑼 \"%c\" 𐑓𐑪𐑤𐑴𐑦𐑙 𐑪𐑐𐑼𐑱𐑑𐑼 \"%c\" 𐑢𐑦𐑞 𐑯𐑴 𐑪𐑐𐑼𐑨𐑯𐑛 𐑦𐑯 "
+"𐑚𐑦𐑑𐑢𐑰𐑯"
+
+#, c-format
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑩𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑣𐑨𐑛 𐑳𐑯𐑴𐑯 𐑝𐑺𐑦𐑩𐑚𐑩𐑤 𐑹 𐑒𐑪𐑯𐑕𐑑𐑩𐑯𐑑 \"%s\""
+
+#, c-format
+#: ../src/ui/theme.c:2290
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑐𐑸𐑟𐑼 𐑴𐑝𐑻𐑓𐑤𐑴𐑛 𐑦𐑑𐑕 𐑚𐑳𐑓𐑼."
+
+#, c-format
+#: ../src/ui/theme.c:2319
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑣𐑨𐑛 𐑩 𐑒𐑤𐑴𐑕 𐑐𐑻𐑧𐑯𐑔𐑩𐑕𐑦𐑕 𐑢𐑦𐑞 𐑯𐑴 𐑴𐑐𐑩𐑯 𐑐𐑻𐑧𐑯𐑔𐑩𐑕𐑦𐑕"
+
+#, c-format
+#: ../src/ui/theme.c:2383
+msgid ""
+"Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑣𐑨𐑛 𐑩𐑯 𐑴𐑐𐑩𐑯 𐑐𐑻𐑧𐑯𐑔𐑩𐑕𐑦𐑕 𐑢𐑦𐑞 𐑯𐑴 𐑒𐑤𐑴𐑕 𐑐𐑻𐑧𐑯𐑔𐑩𐑕𐑦𐑕"
+
+#, c-format
+#: ../src/ui/theme.c:2394
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑛𐑳𐑟𐑯𐑑 𐑕𐑰𐑥 𐑑 𐑣𐑨𐑝 𐑧𐑯𐑦 𐑪𐑐𐑼𐑱𐑑𐑼𐑟 𐑹 𐑪𐑐𐑼𐑨𐑯𐑛𐑟"
+
+#, c-format
+#: ../src/ui/theme.c:2598 ../src/ui/theme.c:2618 ../src/ui/theme.c:2638
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "𐑔𐑰𐑥 𐑒𐑩𐑯𐑑𐑱𐑯𐑛 𐑩𐑯 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑞𐑨𐑑 𐑮𐑦𐑟𐑳𐑤𐑑𐑩𐑛 𐑦𐑯 𐑩𐑯 𐑻𐑼: %s\n"
+
+#, c-format
+#: ../src/ui/theme.c:4205
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"𐑢𐑪𐑑𐑧𐑝𐑼\"/> 𐑥𐑳𐑕𐑑 𐑚𐑰 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 "
+"𐑓𐑹 𐑞𐑦𐑕 𐑓𐑮𐑱𐑥 𐑕𐑑𐑲𐑤"
+
+#, c-format
+#: ../src/ui/theme.c:4713 ../src/ui/theme.c:4738
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"𐑥𐑦𐑕𐑦𐑙 <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"𐑢𐑪𐑑𐑧𐑝𐑼\"/>"
+
+#, c-format
+#: ../src/ui/theme.c:4782
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑤𐑴𐑛 𐑔𐑰𐑥 \"%s\": %s\n"
+
+#, c-format
+#: ../src/ui/theme.c:4912 ../src/ui/theme.c:4919 ../src/ui/theme.c:4926
+#: ../src/ui/theme.c:4933 ../src/ui/theme.c:4940
+msgid "No <%s> set for theme \"%s\""
+msgstr "𐑯𐑴 <%s> 𐑕𐑧𐑑 𐑓𐑹 𐑔𐑰𐑥 \"%s\""
+
+#, c-format
+#: ../src/ui/theme.c:4948
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"𐑯𐑴 𐑓𐑮𐑱𐑥 𐑕𐑑𐑲𐑤 𐑕𐑧𐑑 𐑓𐑹 𐑢𐑦𐑯𐑛𐑴 𐑑𐑲𐑐 \"%s\" 𐑦𐑯 𐑔𐑰𐑥 \"%s\", 𐑨𐑛 𐑩 <window type=\"%s\" "
+"style_set=\"𐑢𐑪𐑑𐑧𐑝𐑼\"/> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme.c:5391 ../src/ui/theme.c:5453 ../src/ui/theme.c:5516
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "𐑿𐑟𐑼-𐑛𐑦𐑓𐑲𐑯𐑛 𐑒𐑪𐑯𐑕𐑑𐑩𐑯𐑑𐑕 𐑥𐑳𐑕𐑑 𐑚𐑩𐑜𐑦𐑯 𐑢𐑦𐑞 𐑩 𐑒𐑨𐑐𐑦𐑑𐑩𐑤 𐑤𐑧𐑑𐑼; \"%s\" 𐑛𐑳𐑟 𐑯𐑪𐑑"
+
+#, c-format
+#: ../src/ui/theme.c:5399 ../src/ui/theme.c:5461 ../src/ui/theme.c:5524
+msgid "Constant \"%s\" has already been defined"
+msgstr "𐑒𐑪𐑯𐑕𐑑𐑩𐑯𐑑 \"%s\" 𐑣𐑨𐑟 𐑷𐑤𐑮𐑧𐑛𐑦 𐑚𐑰𐑯 𐑛𐑦𐑓𐑲𐑯𐑛"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#, c-format
+#: ../src/ui/theme-parser.c:202
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "𐑯𐑴 \"%s\" 𐑩𐑑𐑮𐑦𐑚𐑿𐑑 𐑪𐑯 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 <%s>"
+
+#, c-format
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+msgid "Line %d character %d: %s"
+msgstr "𐑤𐑲𐑯 %d 𐑒𐑨𐑮𐑩𐑒𐑑𐑼 %d: %s"
+
+#, c-format
+#: ../src/ui/theme-parser.c:413
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "𐑩𐑑𐑮𐑦𐑚𐑿𐑑 \"%s\" 𐑮𐑦𐑐𐑰𐑑𐑩𐑛 𐑑𐑢𐑲𐑕 𐑪𐑯 𐑞 𐑕𐑱𐑥 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "𐑩𐑑𐑮𐑦𐑚𐑿𐑑 \"%s\" 𐑦𐑟 𐑦𐑯𐑝𐑨𐑤𐑦𐑛 𐑪𐑯 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 𐑦𐑯 𐑞𐑦𐑕 𐑒𐑪𐑯𐑑𐑧𐑒𐑕𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:522
+msgid "Could not parse \"%s\" as an integer"
+msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑐𐑸𐑟 \"%s\" 𐑨𐑟 𐑩𐑯 𐑦𐑯𐑑𐑩𐑡𐑼"
+
+#, c-format
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "𐑛𐑦𐑛 𐑯𐑪𐑑 𐑳𐑯𐑛𐑼𐑕𐑑𐑨𐑯𐑛 𐑑𐑮𐑱𐑤𐑦𐑙 𐑒𐑨𐑮𐑩𐑒𐑑𐑼𐑟 \"%s\" 𐑦𐑯 𐑕𐑑𐑮𐑦𐑙 \"%s\""
+
+#, c-format
+#: ../src/ui/theme-parser.c:541
+msgid "Integer %ld must be positive"
+msgstr "𐑦𐑯𐑑𐑩𐑡𐑼 %ld 𐑥𐑳𐑕𐑑 𐑚𐑰 𐑐𐑪𐑟𐑦𐑑𐑦𐑝"
+
+#, c-format
+#: ../src/ui/theme-parser.c:549
+msgid "Integer %ld is too large, current max is %d"
+msgstr "𐑦𐑯𐑑𐑩𐑡𐑼 %ld 𐑦𐑟 𐑑𐑵 𐑤𐑸𐑡, 𐑒𐑳𐑮𐑩𐑯𐑑 𐑥𐑨𐑒𐑕 𐑦𐑟 %d"
+
+#, c-format
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "𐑒𐑫𐑛 𐑯𐑪𐑑 𐑐𐑸𐑟 \"%s\" 𐑨𐑟 𐑩 𐑓𐑤𐑴𐑑𐑦𐑙 𐑐𐑶𐑯𐑑 𐑯𐑳𐑥𐑚𐑼"
+
+#, c-format
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "𐑚𐑵𐑤𐑰𐑩𐑯 𐑝𐑨𐑤𐑿𐑟 𐑥𐑳𐑕𐑑 𐑚𐑰 \"true\" 𐑹 \"false\" 𐑯𐑪𐑑 \"%s\""
+
+#, c-format
+#: ../src/ui/theme-parser.c:663
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "𐑨𐑙𐑜𐑤 𐑥𐑳𐑕𐑑 𐑚𐑰 𐑚𐑦𐑑𐑢𐑰𐑯 0.0 𐑯 360.0, 𐑢𐑪𐑟 %g\n"
+
+#, c-format
+#: ../src/ui/theme-parser.c:726
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "𐑨𐑤𐑓𐑩 𐑥𐑳𐑕𐑑 𐑚𐑰 𐑚𐑦𐑑𐑢𐑰𐑯 0.0 (𐑦𐑯𐑝𐑦𐑕𐑦𐑚𐑩𐑤) 𐑯 1.0 (𐑓𐑫𐑤𐑦 𐑴𐑐𐑱𐑒), 𐑢𐑪𐑟 %g\n"
+
+#, c-format
+#: ../src/ui/theme-parser.c:791
+msgid ""
+"Invalid title scale \"%s\" (must be one of "
+"xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+msgstr ""
+"𐑦𐑯𐑝𐑨𐑤𐑦𐑛 𐑑𐑲𐑑𐑩𐑤 𐑕𐑒𐑱𐑤 \"%s\" (𐑥𐑳𐑕𐑑 𐑚𐑰 𐑢𐑳𐑯 𐑝 "
+"xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+
+#, c-format
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> 𐑯𐑱𐑥 \"%s\" 𐑿𐑕𐑑 𐑩 𐑕𐑧𐑒𐑩𐑯𐑛 𐑑𐑲𐑥"
+
+#, c-format
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> 𐑐𐑺𐑩𐑯𐑑 \"%s\" 𐑣𐑨𐑟 𐑯𐑪𐑑 𐑚𐑰𐑯 𐑛𐑦𐑓𐑲𐑯𐑛"
+
+#, c-format
+#: ../src/ui/theme-parser.c:1058
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> 𐑡𐑦𐑪𐑥𐑩𐑑𐑮𐑦 \"%s\" 𐑣𐑨𐑟 𐑯𐑪𐑑 𐑚𐑰𐑯 𐑛𐑦𐑓𐑲𐑯𐑛"
+
+#, c-format
+#: ../src/ui/theme-parser.c:1071
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> 𐑥𐑳𐑕𐑑 𐑕𐑐𐑧𐑕𐑦𐑓𐑲 𐑲𐑞𐑼 𐑩 𐑡𐑦𐑪𐑥𐑩𐑑𐑮𐑦 𐑹 𐑩 𐑐𐑺𐑩𐑯𐑑 𐑞𐑨𐑑 𐑣𐑨𐑟 𐑩 𐑡𐑦𐑪𐑥𐑩𐑑𐑮𐑦"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "𐑿 𐑥𐑳𐑕𐑑 𐑕𐑐𐑧𐑕𐑦𐑓𐑲 𐑩 𐑚𐑨𐑒𐑜𐑮𐑬𐑯𐑛 𐑓𐑹 𐑩𐑯 𐑨𐑤𐑓𐑩 𐑝𐑨𐑤𐑿 𐑑 𐑚𐑰 𐑥𐑰𐑯𐑦𐑙𐑓𐑩𐑤"
+
+#, c-format
+#: ../src/ui/theme-parser.c:1180
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "𐑳𐑯𐑴𐑯 𐑑𐑲𐑐 \"%s\" 𐑪𐑯 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:1191
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "𐑳𐑯𐑴𐑯 style_set \"%s\" 𐑪𐑯 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:1199
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "𐑢𐑦𐑯𐑛𐑴 𐑑𐑲𐑐 \"%s\" 𐑣𐑨𐑟 𐑷𐑤𐑮𐑧𐑛𐑦 𐑚𐑰𐑯 𐑨𐑟𐑕𐑲𐑯𐑛 𐑩 𐑕𐑑𐑲𐑤 𐑕𐑧𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "𐑧𐑤𐑩𐑥𐑩𐑯𐑑 <%s> 𐑦𐑟 𐑯𐑪𐑑 𐑩𐑤𐑬𐑛 𐑚𐑩𐑤𐑴 <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"𐑒𐑨𐑯𐑪𐑑 𐑕𐑐𐑧𐑕𐑦𐑓𐑲 𐑚𐑴𐑔 \"button_width\"/\"button_height\" 𐑯 \"aspect_ratio\" 𐑓𐑹 "
+"𐑚𐑳𐑑𐑩𐑯𐑟"
+
+#, c-format
+#: ../src/ui/theme-parser.c:1366
+msgid "Distance \"%s\" is unknown"
+msgstr "𐑛𐑦𐑕𐑑𐑩𐑯𐑕 \"%s\" 𐑦𐑟 𐑳𐑯𐑴𐑯"
+
+#, c-format
+#: ../src/ui/theme-parser.c:1411
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "𐑨𐑕𐑐𐑧𐑒𐑑 𐑮𐑱𐑖𐑦𐑴 \"%s\" 𐑦𐑟 𐑳𐑯𐑴𐑯"
+
+#, c-format
+#: ../src/ui/theme-parser.c:1473
+msgid "Border \"%s\" is unknown"
+msgstr "𐑚𐑹𐑛𐑼 \"%s\" 𐑦𐑟 𐑳𐑯𐑴𐑯"
+
+#, c-format
+#: ../src/ui/theme-parser.c:1784
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "𐑯𐑴 \"start_angle\" 𐑹 \"from\" 𐑨𐑑𐑮𐑦𐑚𐑿𐑑 𐑪𐑯 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 <%s>"
+
+#, c-format
+#: ../src/ui/theme-parser.c:1791
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "𐑯𐑴 \"extent_angle\" 𐑹 \"to\" 𐑨𐑑𐑮𐑦𐑚𐑿𐑑 𐑪𐑯 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 <%s>"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2031
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "𐑛𐑦𐑛 𐑯𐑪𐑑 𐑳𐑯𐑛𐑼𐑕𐑑𐑨𐑯𐑛 𐑝𐑨𐑤𐑿 \"%s\" 𐑓𐑹 𐑑𐑲𐑐 𐑝 𐑜𐑮𐑱𐑛𐑦𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "𐑛𐑦𐑛 𐑯𐑪𐑑 𐑳𐑯𐑛𐑼𐑕𐑑𐑨𐑯𐑛 𐑓𐑦𐑤 𐑑𐑲𐑐 \"%s\" 𐑓𐑹 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "𐑛𐑦𐑛 𐑯𐑪𐑑 𐑳𐑯𐑛𐑼𐑕𐑑𐑨𐑯𐑛 𐑕𐑑𐑱𐑑 \"%s\" 𐑓𐑹 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "𐑛𐑦𐑛 𐑯𐑪𐑑 𐑳𐑯𐑛𐑼𐑕𐑑𐑨𐑯𐑛 𐑖𐑨𐑛𐑴 \"%s\" 𐑓𐑹 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2296
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "𐑛𐑦𐑛 𐑯𐑪𐑑 𐑳𐑯𐑛𐑼𐑕𐑑𐑨𐑯𐑛 𐑨𐑮𐑴 \"%s\" 𐑓𐑹 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "𐑯𐑴 <draw_ops> 𐑒𐑷𐑤𐑛 \"%s\" 𐑣𐑨𐑟 𐑚𐑰𐑯 𐑛𐑦𐑓𐑲𐑯𐑛"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "𐑦𐑯𐑒𐑤𐑵𐑛𐑦𐑙 draw_ops \"%s\" 𐑣𐑽 𐑢𐑫𐑛 𐑒𐑮𐑦𐑱𐑑 𐑩 𐑕𐑻𐑒𐑘𐑫𐑤𐑼 𐑮𐑧𐑓𐑼𐑩𐑯𐑕"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2819
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "𐑳𐑯𐑴𐑯 𐑐𐑩𐑟𐑦𐑖𐑩𐑯 \"%s\" 𐑓𐑹 𐑓𐑮𐑱𐑥 𐑐𐑰𐑕"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2827
+msgid "Frame style already has a piece at position %s"
+msgstr "𐑓𐑮𐑱𐑥 𐑕𐑑𐑲𐑤 𐑷𐑤𐑮𐑧𐑛𐑦 𐑣𐑨𐑟 𐑩 𐑐𐑰𐑕 𐑨𐑑 𐑐𐑩𐑟𐑦𐑖𐑩𐑯 %s"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "𐑯𐑴 <draw_ops> 𐑢𐑦𐑞 𐑞 𐑯𐑱𐑥 \"%s\" 𐑣𐑨𐑟 𐑚𐑰𐑯 𐑛𐑦𐑓𐑲𐑯𐑛"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2873
+msgid "Unknown function \"%s\" for button"
+msgstr "𐑳𐑯𐑴𐑯 𐑓𐑳𐑙𐑒𐑖𐑩𐑯 \"%s\" 𐑓𐑹 𐑚𐑳𐑑𐑩𐑯"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2882
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "𐑚𐑳𐑑𐑩𐑯 𐑓𐑳𐑙𐑒𐑖𐑩𐑯 \"%s\" 𐑛𐑳𐑟 𐑯𐑪𐑑 𐑧𐑒𐑟𐑦𐑕𐑑 𐑦𐑯 𐑞𐑦𐑕 𐑝𐑻𐑠𐑩𐑯 (%d, 𐑯𐑰𐑛 %d)"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2894
+msgid "Unknown state \"%s\" for button"
+msgstr "𐑳𐑯𐑴𐑯 𐑕𐑑𐑱𐑑 \"%s\" 𐑓𐑹 𐑚𐑳𐑑𐑩𐑯"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2902
+msgid "Frame style already has a button for function %s state %s"
+msgstr "𐑓𐑮𐑱𐑥 𐑕𐑑𐑲𐑤 𐑷𐑤𐑮𐑧𐑛𐑦 𐑣𐑨𐑟 𐑩 𐑚𐑳𐑑𐑩𐑯 𐑓𐑹 𐑓𐑳𐑙𐑒𐑖𐑩𐑯 %s 𐑕𐑑𐑱𐑑 %s"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2973
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" 𐑦𐑟 𐑯𐑪𐑑 𐑩 𐑝𐑨𐑤𐑦𐑛 𐑝𐑨𐑤𐑿 𐑓𐑹 𐑓𐑴𐑒𐑩𐑕 𐑩𐑑𐑮𐑦𐑚𐑿𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2982
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" 𐑦𐑟 𐑯𐑪𐑑 𐑩 𐑝𐑨𐑤𐑦𐑛 𐑝𐑨𐑤𐑿 𐑓𐑹 𐑕𐑑𐑱𐑑 𐑩𐑑𐑮𐑦𐑚𐑿𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:2992
+msgid "A style called \"%s\" has not been defined"
+msgstr "𐑩 𐑕𐑑𐑲𐑤 𐑒𐑷𐑤𐑛 \"%s\" 𐑣𐑨𐑟 𐑯𐑪𐑑 𐑚𐑰𐑯 𐑛𐑦𐑓𐑲𐑯𐑛"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" 𐑦𐑟 𐑯𐑪𐑑 𐑩 𐑝𐑨𐑤𐑦𐑛 𐑝𐑨𐑤𐑿 𐑓𐑹 𐑮𐑰𐑕𐑲𐑟 𐑩𐑑𐑮𐑦𐑚𐑿𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3047
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"𐑖𐑫𐑛 𐑯𐑪𐑑 𐑣𐑨𐑝 \"resize\" 𐑩𐑑𐑮𐑦𐑚𐑿𐑑 𐑪𐑯 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 𐑓𐑹 𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟𐑛/𐑖𐑱𐑛𐑩𐑛 𐑕𐑑𐑱𐑑𐑕"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3061
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "𐑖𐑫𐑛 𐑯𐑪𐑑 𐑣𐑨𐑝 \"resize\" 𐑩𐑑𐑮𐑦𐑚𐑿𐑑 𐑪𐑯 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 𐑓𐑹 𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟𐑛 𐑕𐑑𐑱𐑑𐑕"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "𐑕𐑑𐑲𐑤 𐑣𐑨𐑟 𐑷𐑤𐑮𐑧𐑛𐑦 𐑚𐑰𐑯 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑓𐑹 𐑕𐑑𐑱𐑑 %s 𐑮𐑰𐑕𐑲𐑟 %s 𐑓𐑴𐑒𐑩𐑕 %s"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+msgid "Style has already been specified for state %s focus %s"
+msgstr "𐑕𐑑𐑲𐑤 𐑣𐑨𐑟 𐑷𐑤𐑮𐑧𐑛𐑦 𐑚𐑰𐑯 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑓𐑹 𐑕𐑑𐑱𐑑 %s 𐑓𐑴𐑒𐑩𐑕 %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"𐑒𐑭𐑯𐑑 𐑣𐑨𐑝 𐑩 𐑑𐑵 draw_ops 𐑓𐑹 𐑩 <𐑐𐑰𐑕> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 (𐑔𐑰𐑥 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑩 draw_ops 𐑨𐑑𐑮𐑦𐑚𐑿𐑑 𐑯 "
+"𐑷𐑤𐑕𐑴 𐑩 <draw_ops> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑, 𐑹 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑑𐑵 𐑧𐑤𐑩𐑥𐑩𐑯𐑑𐑕)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"𐑒𐑭𐑯𐑑 𐑣𐑨𐑝 𐑩 𐑑𐑵 draw_ops 𐑓𐑹 𐑩 <button> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 (𐑔𐑰𐑥 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑩 draw_ops 𐑨𐑑𐑮𐑦𐑚𐑿𐑑 "
+"𐑯 𐑷𐑤𐑕𐑴 𐑩 <draw_ops> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑, 𐑹 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑑𐑵 𐑧𐑤𐑩𐑥𐑩𐑯𐑑𐑕)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"𐑒𐑭𐑯𐑑 𐑣𐑨𐑝 𐑩 𐑑𐑵 draw_ops 𐑓𐑹 𐑩 <menu_icon> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 (𐑔𐑰𐑥 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑩 draw_ops "
+"𐑨𐑑𐑮𐑦𐑚𐑿𐑑 𐑯 𐑷𐑤𐑕𐑴 𐑩 <draw_ops> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑, 𐑹 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑑𐑵 𐑧𐑤𐑩𐑥𐑩𐑯𐑑𐑕)"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3271
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "𐑶𐑑𐑻𐑥𐑴𐑕𐑑 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 𐑦𐑯 𐑔𐑰𐑥 𐑥𐑳𐑕𐑑 𐑚𐑰 <marco_theme> 𐑯𐑪𐑑 <%s>"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3291
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "𐑧𐑤𐑩𐑥𐑩𐑯𐑑 <%s> 𐑦𐑟 𐑯𐑪𐑑 𐑩𐑤𐑬𐑛 𐑦𐑯𐑕𐑲𐑛 𐑩 name/author/date/description 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3296
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "𐑧𐑤𐑩𐑥𐑩𐑯𐑑 <%s> 𐑦𐑟 𐑯𐑪𐑑 𐑩𐑤𐑬𐑛 𐑦𐑯𐑕𐑲𐑛 𐑩 <constant> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3308
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "𐑧𐑤𐑩𐑥𐑩𐑯𐑑 <%s> 𐑦𐑟 𐑯𐑪𐑑 𐑩𐑤𐑬𐑛 𐑦𐑯𐑕𐑲𐑛 𐑩 distance/border/aspect_ratio 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3330
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "𐑧𐑤𐑩𐑥𐑩𐑯𐑑 <%s> 𐑦𐑟 𐑯𐑪𐑑 𐑩𐑤𐑬𐑛 𐑦𐑯𐑕𐑲𐑛 𐑩 𐑛𐑮𐑷 𐑪𐑐𐑼𐑱𐑖𐑩𐑯 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "𐑧𐑤𐑩𐑥𐑩𐑯𐑑 <%s> 𐑦𐑟 𐑯𐑪𐑑 𐑩𐑤𐑬𐑛 𐑦𐑯𐑕𐑲𐑛 𐑩 <%s> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "𐑯𐑴 draw_ops 𐑐𐑮𐑩𐑝𐑲𐑛𐑩𐑛 𐑓𐑹 𐑓𐑮𐑱𐑥 𐑐𐑰𐑕"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "𐑯𐑴 draw_ops 𐑐𐑮𐑩𐑝𐑲𐑛𐑩𐑛 𐑓𐑹 𐑚𐑳𐑑𐑩𐑯"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3669
+msgid "No text is allowed inside element <%s>"
+msgstr "𐑯𐑴 𐑑𐑧𐑒𐑕𐑑 𐑦𐑟 𐑩𐑤𐑬𐑛 𐑦𐑯𐑕𐑲𐑛 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 <%s>"
+
+#, c-format
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> 𐑕𐑐𐑧𐑕𐑦𐑓𐑲𐑛 𐑑𐑢𐑲𐑕 𐑓𐑹 𐑞𐑦𐑕 𐑔𐑰𐑥"
+
+#, c-format
+#: ../src/ui/theme-parser.c:4040
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "𐑓𐑱𐑤𐑛 𐑑 𐑓𐑲𐑯𐑛 𐑩 𐑝𐑨𐑤𐑦𐑛 𐑓𐑲𐑤 𐑓𐑹 𐑔𐑰𐑥 %s\n"
+
+#, c-format
+#: ../src/ui/theme-parser.c:4096
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "𐑔𐑰𐑥 𐑓𐑲𐑤 %s 𐑛𐑦𐑛 𐑯𐑪𐑑 𐑒𐑩𐑯𐑑𐑱𐑯 𐑩 𐑮𐑵𐑑 <marco_theme> 𐑧𐑤𐑩𐑥𐑩𐑯𐑑"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_𐑢𐑦𐑯𐑛𐑴𐑟"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/𐑢𐑦𐑯𐑛𐑴𐑟/𐑑𐑺𐑪𐑓"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/𐑢𐑦𐑯𐑛𐑴𐑟/_𐑛𐑲𐑩𐑤𐑪𐑜"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/𐑢𐑦𐑯𐑛𐑴𐑟/_𐑥𐑴𐑛𐑩𐑤 𐑛𐑲𐑩𐑤𐑪𐑜"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/𐑢𐑦𐑯𐑛𐑴𐑟/_𐑿𐑑𐑦𐑤𐑦𐑑𐑦"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/𐑢𐑦𐑯𐑛𐑴𐑟/_𐑕𐑐𐑤𐑨𐑖𐑕𐑒𐑮𐑰𐑯"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/𐑢𐑦𐑯𐑛𐑴𐑟/_𐑑𐑪𐑐 𐑛𐑭𐑒"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/𐑢𐑦𐑯𐑛𐑴𐑟/_𐑚𐑪𐑑𐑩𐑥 𐑛𐑭𐑒"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/𐑢𐑦𐑯𐑛𐑴𐑟/_𐑤𐑧𐑑 𐑛𐑭𐑒"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/𐑢𐑦𐑯𐑛𐑴𐑟/_𐑮𐑲𐑑 𐑛𐑭𐑒"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/𐑢𐑦𐑯𐑛𐑴𐑟/_𐑷𐑤 𐑛𐑭𐑒𐑕"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/𐑢𐑦𐑯𐑛𐑴𐑟/𐑛𐑧𐑕_𐑒𐑑𐑪𐑐"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "𐑞𐑦𐑕 𐑦𐑟 𐑩 𐑕𐑭𐑥𐑐𐑩𐑤 𐑥𐑧𐑕𐑦𐑡 𐑦𐑯 𐑩 𐑕𐑭𐑥𐑐𐑩𐑤 𐑛𐑲𐑩𐑤𐑪𐑜"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:327
+msgid "Fake menu item %d\n"
+msgstr "𐑓𐑱𐑒 𐑥𐑧𐑯𐑿 𐑲𐑑𐑩𐑥 %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "𐑚𐑹𐑛𐑼-𐑴𐑯𐑤𐑦 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "𐑚𐑸"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "𐑯𐑹𐑥𐑩𐑤 𐑩𐑐𐑤𐑦𐑒𐑱𐑕𐑩𐑯 𐑢𐑦𐑯𐑛𐑴"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "𐑛𐑲𐑩𐑤𐑪𐑜 𐑚𐑪𐑒𐑕"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "𐑥𐑴𐑛𐑩𐑤 𐑛𐑲𐑩𐑤𐑪𐑜 𐑚𐑪𐑒𐑕"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "𐑘𐑵𐑑𐑦𐑤𐑩𐑑𐑰 𐑐𐑩𐑤𐑧𐑑"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "𐑑𐑹𐑯-𐑪𐑓 𐑥𐑧𐑯𐑿"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "𐑚𐑹𐑛𐑼"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:728
+msgid "Button layout test %d"
+msgstr "𐑚𐑳𐑑𐑩𐑯 𐑤𐑱𐑬𐑑 𐑑𐑧𐑕𐑑 %d"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:757
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g 𐑥𐑦𐑤𐑦𐑕𐑧𐑒𐑩𐑯𐑛𐑟 𐑑 𐑛𐑮𐑷 𐑢𐑳𐑯 𐑢𐑦𐑯𐑛𐑴 𐑓𐑮𐑱𐑥"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:800
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "𐑿𐑕𐑦𐑡: marco-theme-viewer [𐑔𐑰𐑥𐑯𐑱𐑥]\n"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:807
+msgid "Error loading theme: %s\n"
+msgstr "𐑻𐑼 𐑤𐑴𐑛𐑦𐑙 𐑔𐑰𐑥: %s\n"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:813
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "𐑤𐑴𐑛𐑩𐑛 𐑔𐑰𐑥 \"%s\" 𐑦𐑯 %g 𐑕𐑧𐑒𐑩𐑯𐑛𐑟\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "𐑯𐑹𐑥𐑩𐑤 𐑑𐑲𐑑𐑩𐑤 𐑓𐑪𐑯𐑑"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "𐑕𐑥𐑷𐑤 𐑑𐑲𐑑𐑩𐑤 𐑓𐑪𐑯𐑑"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "𐑤𐑸𐑡 𐑑𐑲𐑑𐑩𐑤 𐑓𐑪𐑯𐑑"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "𐑚𐑳𐑑𐑩𐑯 𐑤𐑱𐑬𐑑𐑕"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "𐑚𐑧𐑯𐑗𐑥𐑭𐑮𐑒"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "𐑢𐑦𐑯𐑛𐑴 𐑑𐑲𐑑𐑩𐑤 𐑜𐑴𐑟 𐑣𐑽"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:1027
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"𐑛𐑮𐑵 %d 𐑓𐑮𐑱𐑥𐑟 𐑦𐑯 %g 𐑒𐑤𐑲𐑩𐑯𐑑-𐑕𐑲𐑛 𐑕𐑧𐑒𐑩𐑯𐑛𐑟 (%g 𐑥𐑦𐑤𐑦𐑕𐑧𐑒𐑩𐑯𐑛𐑟 𐑐𐑻 𐑓𐑮𐑱𐑥) 𐑯 %g 𐑕𐑧𐑒𐑩𐑯𐑛𐑟 "
+"𐑢𐑷𐑤 𐑒𐑤𐑪𐑒 𐑑𐑲𐑥 𐑦𐑯𐑒𐑤𐑵𐑛𐑦𐑙 X 𐑕𐑻𐑝𐑼 𐑮𐑦𐑟𐑹𐑕𐑩𐑟 (%g 𐑥𐑦𐑤𐑦𐑕𐑧𐑒𐑩𐑯𐑛𐑟 𐑐𐑻 𐑓𐑮𐑱𐑥)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "𐑐𐑩𐑟𐑦𐑖𐑩𐑯 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑑𐑧𐑕𐑑 𐑮𐑦𐑑𐑻𐑯𐑛 𐑑𐑮𐑵 𐑚𐑳𐑑 𐑕𐑧𐑑 𐑻𐑼"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "𐑐𐑩𐑟𐑦𐑖𐑩𐑯 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯 𐑑𐑧𐑕𐑑 𐑮𐑦𐑑𐑻𐑯𐑛 𐑓𐑷𐑤𐑕 𐑚𐑳𐑑 𐑛𐑦𐑛𐑯𐑑 𐑕𐑧𐑑 𐑻𐑼"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "𐑻𐑼 𐑢𐑪𐑟 𐑦𐑒𐑕𐑐𐑧𐑒𐑑𐑩𐑛 𐑚𐑳𐑑 𐑯𐑳𐑯 𐑜𐑦𐑝𐑩𐑯"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:1254
+msgid "Error %d was expected but %d given"
+msgstr "𐑻𐑼 %d 𐑢𐑪𐑟 𐑦𐑒𐑕𐑐𐑧𐑒𐑑𐑩𐑛 𐑚𐑳𐑑 %d 𐑜𐑦𐑝𐑩𐑯"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:1260
+msgid "Error not expected but one was returned: %s"
+msgstr "𐑻𐑼 𐑯𐑪𐑑 𐑦𐑒𐑕𐑐𐑧𐑒𐑑𐑩𐑛 𐑚𐑳𐑑 𐑢𐑳𐑯 𐑢𐑪𐑟 𐑮𐑦𐑑𐑻𐑯𐑛: %s"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:1264
+msgid "x value was %d, %d was expected"
+msgstr "x 𐑝𐑨𐑤𐑿 𐑢𐑪𐑟 %d, %d 𐑢𐑪𐑟 𐑦𐑒𐑕𐑐𐑧𐑒𐑑𐑩𐑛"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:1267
+msgid "y value was %d, %d was expected"
+msgstr "y 𐑝𐑨𐑤𐑿 𐑢𐑪𐑟 %d, %d 𐑢𐑪𐑟 𐑦𐑒𐑕𐑐𐑧𐑒𐑑𐑩𐑛"
+
+#, c-format
+#: ../src/ui/theme-viewer.c:1332
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d 𐑒𐑴𐑹𐑛𐑩𐑯𐑱𐑑 𐑦𐑒𐑕𐑐𐑮𐑧𐑖𐑩𐑯𐑟 𐑐𐑸𐑟𐑛 𐑦𐑯 %g 𐑕𐑧𐑒𐑩𐑯𐑛𐑟 (%g 𐑕𐑧𐑒𐑩𐑯𐑛𐑟 𐑨𐑝𐑼𐑦𐑡)\n"
+
diff --git a/po/en_CA.po b/po/en_CA.po
new file mode 100644
index 00000000..1655ab86
--- /dev/null
+++ b/po/en_CA.po
@@ -0,0 +1,3631 @@
+# English/Canada translation of marco.
+# Copyright (C) 2004-2006 Adam Weinberger and the MATE Foundation
+# This file is distributed under the same licence as the marco package.
+# Adam Weinberger <[email protected]>, 2004, 2005, 2006.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-08-15 15:37-0400\n"
+"PO-Revision-Date: 2005-07-18 18:28-0400\n"
+"Last-Translator: Adam Weinberger <[email protected]>\n"
+"Language-Team: Canadian English <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Desktop"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Window Management"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Usage: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:133
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco was compiled without support for verbose mode\n"
+
+#: ../src/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Unknown window information request: %d"
+
+#: ../src/delete.c:67 ../src/delete.c:94 ../src/marco-dialog.c:50
+#: ../src/theme-parser.c:484
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Could not parse \"%s\" as an integer"
+
+#: ../src/delete.c:74 ../src/delete.c:101 ../src/marco-dialog.c:57
+#: ../src/theme-parser.c:493 ../src/theme-parser.c:548
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Did not understand trailing characters \"%s\" in string \"%s\""
+
+#: ../src/delete.c:132
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Failed to parse message \"%s\" from dialogue process\n"
+
+#: ../src/delete.c:267
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Error reading from dialogue display process: %s\n"
+
+#: ../src/delete.c:350
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Error launching marco-dialogue to ask about killing an application: %s\n"
+
+#: ../src/delete.c:459
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Failed to get hostname: %s\n"
+
+#: ../src/display.c:349
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Failed to open X Window System display '%s'\n"
+
+#: ../src/errors.c:271
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+
+#: ../src/errors.c:278
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Fatal IO error %d (%s) on display '%s'.\n"
+
+#: ../src/frames.c:1078
+msgid "Close Window"
+msgstr "Close Window"
+
+#: ../src/frames.c:1081
+msgid "Window Menu"
+msgstr "Window Menu"
+
+#: ../src/frames.c:1084
+msgid "Minimize Window"
+msgstr "Minimize Window"
+
+#: ../src/frames.c:1087
+msgid "Maximize Window"
+msgstr "Maximize Window"
+
+#: ../src/frames.c:1090
+msgid "Unmaximize Window"
+msgstr "Unmaximize Window"
+
+#: ../src/frames.c:1093
+msgid "Roll Up Window"
+msgstr "Roll Up Window"
+
+#: ../src/frames.c:1096
+msgid "Unroll Window"
+msgstr "Unroll Window"
+
+#: ../src/frames.c:1099
+msgid "Keep Window On Top"
+msgstr "Keep Window On Top"
+
+#: ../src/frames.c:1102
+msgid "Remove Window From Top"
+msgstr "Remove Window From Top"
+
+#: ../src/frames.c:1105
+msgid "Always On Visible Workspace"
+msgstr "Always On Visible Workspace"
+
+#: ../src/frames.c:1108
+msgid "Put Window On Only One Workspace"
+msgstr "Put Window On Only One Workspace"
+
+#: ../src/keybindings.c:1087
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+
+#: ../src/keybindings.c:2716
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+"Error launching marco-dialogue to print an error about a command: %s\n"
+
+#: ../src/keybindings.c:2821
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "No command %d has been defined.\n"
+
+#: ../src/keybindings.c:3849
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "No terminal command has been defined.\n"
+
+#: ../src/main.c:67
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2007 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-2007 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/main.c:171
+msgid "Disable connection to session manager"
+msgstr "Disable connection to session manager"
+
+#: ../src/main.c:177
+msgid "Replace the running window manager with Marco"
+msgstr "Replace the running window manager with Marco"
+
+#: ../src/main.c:183
+msgid "Specify session management ID"
+msgstr "Specify session management ID"
+
+#: ../src/main.c:188
+msgid "X Display to use"
+msgstr "X Display to use"
+
+#: ../src/main.c:194
+msgid "Initialize session from savefile"
+msgstr "Initialize session from savefile"
+
+#: ../src/main.c:200
+msgid "Print version"
+msgstr "Print version"
+
+#: ../src/main.c:353
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Failed to scan themes directory: %s\n"
+
+#: ../src/main.c:369
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+
+#: ../src/main.c:429
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Failed to restart: %s\n"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimize"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximize"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:74
+msgid "Unma_ximize"
+msgstr "Unma_ximize"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:76
+msgid "Roll _Up"
+msgstr "Roll _Up"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:78
+msgid "_Unroll"
+msgstr "_Unroll"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:80
+msgid "_Move"
+msgstr "_Move"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:82
+msgid "_Resize"
+msgstr "_Resize"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Move Titlebar On_screen"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:87 ../src/menu.c:89
+msgid "Always on _Top"
+msgstr "Always on _Top"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Always on Visible Workspace"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Only on This Workspace"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Move to Workspace _Left"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Move to Workspace R_ight"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Move to Workspace _Up"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Move to Workspace _Down"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:105
+msgid "_Close"
+msgstr "_Close"
+
+#: ../src/menu.c:199 ../src/prefs.c:2246 ../src/prefs.c:2780
+#, c-format
+msgid "Workspace %d"
+msgstr "Workspace %d"
+
+#: ../src/menu.c:208
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Workspace 1_0"
+
+#: ../src/menu.c:210
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Workspace %s%d"
+
+#: ../src/menu.c:390
+msgid "Move to Another _Workspace"
+msgstr "Move to Another _Workspace"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr "\"%s\" is not responding."
+
+#: ../src/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+
+#: ../src/marco-dialog.c:107
+msgid "_Wait"
+msgstr "_Wait"
+
+#: ../src/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "_Force Quit"
+
+#: ../src/marco-dialog.c:206
+msgid "Title"
+msgstr "Title"
+
+#: ../src/marco-dialog.c:218
+msgid "Class"
+msgstr "Class"
+
+#: ../src/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+
+#: ../src/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"There was an error running \"%s\":\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Not implemented) Navigation works in terms of applications not windows"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Action on title bar double-click"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Action on title bar middle-click"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Action on title bar right-click"
+
+#: ../src/marco.schemas.in.h:6
+msgid "Activate window menu"
+msgstr "Activate window menu"
+
+#: ../src/marco.schemas.in.h:7
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Arrangement of buttons on the titlebar"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+
+#: ../src/marco.schemas.in.h:9
+msgid "Automatically raises the focused window"
+msgstr "Automatically raises the focused window"
+
+#: ../src/marco.schemas.in.h:10
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+
+#: ../src/marco.schemas.in.h:11
+msgid "Close window"
+msgstr "Close window"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Commands to run in response to keybindings"
+msgstr "Commands to run in response to keybindings"
+
+#: ../src/marco.schemas.in.h:13
+msgid "Compositing Manager"
+msgstr "Compositing Manager"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Control how new windows get focus"
+msgstr "Control how new windows get focus"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Current theme"
+msgstr "Current theme"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Delay in milliseconds for the auto raise option"
+
+#: ../src/marco.schemas.in.h:17
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determines whether Marco is a compositing manager."
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+
+#: ../src/marco.schemas.in.h:19
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Disable misfeatures that are required by old or broken applications"
+
+#: ../src/marco.schemas.in.h:20
+msgid "Enable Visual Bell"
+msgstr "Enable Visual Bell"
+
+#: ../src/marco.schemas.in.h:21
+msgid "Hide all windows and focus desktop"
+msgstr "Hide all windows and focus desktop"
+
+#: ../src/marco.schemas.in.h:22
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+
+#: ../src/marco.schemas.in.h:23
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+
+#: ../src/marco.schemas.in.h:24
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+
+#: ../src/marco.schemas.in.h:25
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+
+#: ../src/marco.schemas.in.h:26
+msgid "If true, trade off usability for less resource usage"
+msgstr "If true, trade off usability for less resource usage"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Lower window below other windows"
+msgstr "Lower window below other windows"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Maximize window"
+msgstr "Maximize window"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Maximize window horizontally"
+msgstr "Maximize window horizontally"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Maximize window vertically"
+msgstr "Maximize window vertically"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Minimize window"
+msgstr "Minimize window"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Modifier to use for modified window click actions"
+msgstr "Modifier to use for modified window click actions"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Move backward between panels and the desktop immediately"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "Move backwards between panels and the desktop with popup"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move backwards between windows immediately"
+msgstr "Move backwards between windows immediately"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move backwards between windows of an application immediately"
+msgstr "Move backwards between windows of an application immediately"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move backwards between windows of an application with popup"
+msgstr "Move backwards between windows of an application with popup"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move between panels and the desktop immediately"
+msgstr "Move between panels and the desktop immediately"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move between panels and the desktop with popup"
+msgstr "Move between panels and the desktop with popup"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move between windows immediately"
+msgstr "Move between windows immediately"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move between windows of an application immediately"
+msgstr "Move between windows of an application immediately"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move between windows of an application with popup"
+msgstr "Move between windows of an application with popup"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move between windows with popup"
+msgstr "Move between windows with popup"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move focus backwards between windows using popup display"
+msgstr "Move focus backwards between windows using popup display"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window"
+msgstr "Move window"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window one workspace down"
+msgstr "Move window one workspace down"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window one workspace to the left"
+msgstr "Move window one workspace to the left"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window one workspace to the right"
+msgstr "Move window one workspace to the right"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window one workspace up"
+msgstr "Move window one workspace up"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to east side of screen"
+msgstr "Move window to east side of screen"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to north side of screen"
+msgstr "Move window to north side of screen"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to north-east corner"
+msgstr "Move window to north-east corner"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Move window to north-west corner"
+msgstr "Move window to north-west corner"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Move window to south side of screen"
+msgstr "Move window to south side of screen"
+
+#: ../src/marco.schemas.in.h:55
+msgid "Move window to south-east corner"
+msgstr "Move window to south-east corner"
+
+#: ../src/marco.schemas.in.h:56
+msgid "Move window to south-west corner"
+msgstr "Move window to south-west corner"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Move window to west side of screen"
+msgstr "Move window to west side of screen"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Move window to workspace 1"
+msgstr "Move window to workspace 1"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Move window to workspace 10"
+msgstr "Move window to workspace 10"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Move window to workspace 11"
+msgstr "Move window to workspace 11"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Move window to workspace 12"
+msgstr "Move window to workspace 12"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Move window to workspace 2"
+msgstr "Move window to workspace 2"
+
+#: ../src/marco.schemas.in.h:63
+msgid "Move window to workspace 3"
+msgstr "Move window to workspace 3"
+
+#: ../src/marco.schemas.in.h:64
+msgid "Move window to workspace 4"
+msgstr "Move window to workspace 4"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Move window to workspace 5"
+msgstr "Move window to workspace 5"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Move window to workspace 6"
+msgstr "Move window to workspace 6"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Move window to workspace 7"
+msgstr "Move window to workspace 7"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Move window to workspace 8"
+msgstr "Move window to workspace 8"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Move window to workspace 9"
+msgstr "Move window to workspace 9"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Name of workspace"
+msgstr "Name of workspace"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Number of workspaces"
+msgstr "Number of workspaces"
+
+#: ../src/marco.schemas.in.h:72
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+
+#: ../src/marco.schemas.in.h:73
+msgid "Raise obscured window, otherwise lower"
+msgstr "Raise obscured window, otherwise lower"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Raise window above other windows"
+msgstr "Raise window above other windows"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Resize window"
+msgstr "Resize window"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Run a defined command"
+msgstr "Run a defined command"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Run a terminal"
+msgstr "Open a terminal window"
+
+#: ../src/marco.schemas.in.h:78
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Set this option to false to decouple "
+"raising from other user actions. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the bug "
+"they requested. See also http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+msgstr ""
+"Setting this option to false can lead to buggy behaviour, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Set this option to false to decouple "
+"raising from other user actions. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the bug "
+"they requested. See also http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+
+#: ../src/marco.schemas.in.h:79
+msgid "Show the panel menu"
+msgstr "Show the panel menu"
+
+#: ../src/marco.schemas.in.h:80
+msgid "Show the panel run application dialog"
+msgstr "Show the panel run application dialogue"
+
+#: ../src/marco.schemas.in.h:81
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+
+#: ../src/marco.schemas.in.h:82
+msgid "Switch to workspace 1"
+msgstr "Switch to workspace 1"
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 10"
+msgstr "Switch to workspace 10"
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace 11"
+msgstr "Switch to workspace 11"
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace 12"
+msgstr "Switch to workspace 12"
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace 2"
+msgstr "Switch to workspace 2"
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace 3"
+msgstr "Switch to workspace 3"
+
+#: ../src/marco.schemas.in.h:88
+msgid "Switch to workspace 4"
+msgstr "Switch to workspace 4"
+
+#: ../src/marco.schemas.in.h:89
+msgid "Switch to workspace 5"
+msgstr "Switch to workspace 5"
+
+#: ../src/marco.schemas.in.h:90
+msgid "Switch to workspace 6"
+msgstr "Switch to workspace 6"
+
+#: ../src/marco.schemas.in.h:91
+msgid "Switch to workspace 7"
+msgstr "Switch to workspace 7"
+
+#: ../src/marco.schemas.in.h:92
+msgid "Switch to workspace 8"
+msgstr "Switch to workspace 8"
+
+#: ../src/marco.schemas.in.h:93
+msgid "Switch to workspace 9"
+msgstr "Switch to workspace 9"
+
+#: ../src/marco.schemas.in.h:94
+msgid "Switch to workspace above this one"
+msgstr "Switch to workspace above this one"
+
+#: ../src/marco.schemas.in.h:95
+msgid "Switch to workspace below this one"
+msgstr "Switch to workspace below this one"
+
+#: ../src/marco.schemas.in.h:96
+msgid "Switch to workspace on the left"
+msgstr "Switch to workspace on the left"
+
+#: ../src/marco.schemas.in.h:97
+msgid "Switch to workspace on the right"
+msgstr "Switch to workspace on the right"
+
+#: ../src/marco.schemas.in.h:98
+msgid "System Bell is Audible"
+msgstr "System Bell is Audible"
+
+#: ../src/marco.schemas.in.h:99
+msgid "Take a screenshot"
+msgstr "Take a screenshot"
+
+#: ../src/marco.schemas.in.h:100
+msgid "Take a screenshot of a window"
+msgstr "Take a screenshot of a window"
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:146
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:147
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application without a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus backwards between windows of an "
+"application without a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application, using a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus backwards between windows of an "
+"application, using a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:151
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"The keybinding used to move focus between windows of an application without "
+"a popup window. Holding the \"shift\" key while using this binding reverses "
+"the direction of movement. The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus between windows of an application without "
+"a popup window. Holding the \"shift\" key while using this binding reverses "
+"the direction of movement. The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"The keybinding used to move focus between windows of an application, using a "
+"popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while "
+"using this binding reverses the direction of movement. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus between windows of an application, using a "
+"popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while "
+"using this binding reverses the direction of movement. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:158
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:159
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:160
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:161
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+
+#: ../src/marco.schemas.in.h:162
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"The keybinding which display's the panel's \"Run Program\" dialogue box. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:164
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:165
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:166
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:167
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:168
+msgid "The name of a workspace."
+msgstr "The name of a workspace."
+
+#: ../src/marco.schemas.in.h:169
+msgid "The screenshot command"
+msgstr "The screenshot command"
+
+#: ../src/marco.schemas.in.h:170
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+
+#: ../src/marco.schemas.in.h:171
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+
+#: ../src/marco.schemas.in.h:172
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+
+#: ../src/marco.schemas.in.h:173
+msgid "The window screenshot command"
+msgstr "The window screenshot command"
+
+#: ../src/marco.schemas.in.h:174
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another one, it raises the window above all others, "
+"and if the window is already fully visible, it lowers it below all others. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another one, it raises the window above all others, "
+"and if the window is already fully visible, it lowers it below all others. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:175
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:176
+msgid ""
+"This keybinding moves a window against the north (top) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"This keybinding moves a window against the north (top) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:177
+msgid ""
+"This keybinding moves a window into the east (right) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"This keybinding moves a window into the east (right) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:178
+msgid ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+
+#: ../src/marco.schemas.in.h:179
+msgid ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+
+#: ../src/marco.schemas.in.h:180
+msgid ""
+"This keybinding moves a window into the south (bottom) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"This keybinding moves a window into the south (bottom) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:181
+msgid ""
+"This keybinding moves a window into the south-east (bottom right) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"This keybinding moves a window into the south-east (bottom right) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+
+#: ../src/marco.schemas.in.h:182
+msgid ""
+"This keybinding moves a window into the south-west (bottom left) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"This keybinding moves a window into the south-west (bottom left) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+
+#: ../src/marco.schemas.in.h:183
+msgid ""
+"This keybinding moves a window into the west (left) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"This keybinding moves a window into the west (left) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:184
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:185
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:186
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+
+#: ../src/marco.schemas.in.h:187
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+
+#: ../src/marco.schemas.in.h:188
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+
+#: ../src/marco.schemas.in.h:189
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+
+#: ../src/marco.schemas.in.h:190
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+
+#: ../src/marco.schemas.in.h:191
+msgid "Toggle always on top state"
+msgstr "Toggle always on top state"
+
+#: ../src/marco.schemas.in.h:192
+msgid "Toggle fullscreen mode"
+msgstr "Toggle fullscreen mode"
+
+#: ../src/marco.schemas.in.h:193
+msgid "Toggle maximization state"
+msgstr "Toggle maximization state"
+
+#: ../src/marco.schemas.in.h:194
+msgid "Toggle shaded state"
+msgstr "Toggle shaded state"
+
+#: ../src/marco.schemas.in.h:195
+msgid "Toggle window on all workspaces"
+msgstr "Toggle window on all workspaces"
+
+#: ../src/marco.schemas.in.h:196
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+
+#: ../src/marco.schemas.in.h:197
+msgid "Unmaximize window"
+msgstr "Unmaximize window"
+
+#: ../src/marco.schemas.in.h:198
+msgid "Use standard system font in window titles"
+msgstr "Use standard system font in window titles"
+
+#: ../src/marco.schemas.in.h:199
+msgid "Visual Bell Type"
+msgstr "Visual Bell Type"
+
+#: ../src/marco.schemas.in.h:200
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Whether raising should be a side-effect of other user interactions"
+
+#: ../src/marco.schemas.in.h:201
+msgid "Window focus mode"
+msgstr "Window focus mode"
+
+#: ../src/marco.schemas.in.h:202
+msgid "Window title font"
+msgstr "Window title font"
+
+#: ../src/prefs.c:434
+#, c-format
+msgid "Type of %s was not integer"
+msgstr "Type of %s was not integer"
+
+#: ../src/prefs.c:572 ../src/prefs.c:600 ../src/prefs.c:616 ../src/prefs.c:632
+#: ../src/prefs.c:648 ../src/prefs.c:664 ../src/prefs.c:680 ../src/prefs.c:696
+#: ../src/prefs.c:716 ../src/prefs.c:732 ../src/prefs.c:748 ../src/prefs.c:766
+#: ../src/prefs.c:782 ../src/prefs.c:801 ../src/prefs.c:817 ../src/prefs.c:852
+#: ../src/prefs.c:868 ../src/prefs.c:885 ../src/prefs.c:901 ../src/prefs.c:917
+#: ../src/prefs.c:933 ../src/prefs.c:949 ../src/prefs.c:964 ../src/prefs.c:979
+#: ../src/prefs.c:994 ../src/prefs.c:1010 ../src/prefs.c:1026
+#: ../src/prefs.c:1042 ../src/prefs.c:1058
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf key \"%s\" is set to an invalid type\n"
+
+#: ../src/prefs.c:1103
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+
+#: ../src/prefs.c:1127 ../src/prefs.c:1148 ../src/prefs.c:1705
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf key '%s' is set to an invalid value\n"
+
+#: ../src/prefs.c:1277
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+"range 1..128\n"
+msgstr ""
+"%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+"range 1--128\n"
+
+#: ../src/prefs.c:1357
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Could not parse font description \"%s\" from MateConf key %s\n"
+
+#: ../src/prefs.c:1599
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+
+#: ../src/prefs.c:1659
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+
+#: ../src/prefs.c:1732
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "%d stored in MateConf key %s is out of range 0 to %d\n"
+
+#: ../src/prefs.c:1881
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Error setting number of workspaces to %d: %s\n"
+
+#: ../src/prefs.c:2276 ../src/prefs.c:2446
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+
+#: ../src/prefs.c:2861
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Error setting name for workspace %d to \"%s\": %s\n"
+
+#: ../src/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:410
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Screen %d on display '%s' is invalid\n"
+
+#: ../src/screen.c:426
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+
+#: ../src/screen.c:453
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+
+#: ../src/screen.c:511
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Screen %d on display \"%s\" already has a window manager\n"
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Could not release screen %d on display \"%s\"\n"
+
+#: ../src/session.c:826 ../src/session.c:833
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Could not create directory '%s': %s\n"
+
+#: ../src/session.c:843
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Could not open session file '%s' for writing: %s\n"
+
+#: ../src/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Error writing session file '%s': %s\n"
+
+#: ../src/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Error closing session file '%s': %s\n"
+
+#: ../src/session.c:1075
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Failed to read saved session file %s: %s\n"
+
+#: ../src/session.c:1110
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Failed to parse saved session file: %s\n"
+
+#: ../src/session.c:1159
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> attribute seen but we already have the session ID"
+
+#: ../src/session.c:1172
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "Unknown attribute %s on <marco_session> element"
+
+#: ../src/session.c:1189
+#, c-format
+msgid "nested <window> tag"
+msgstr "nested <window> tag"
+
+#: ../src/session.c:1247 ../src/session.c:1279
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Unknown attribute %s on <window> element"
+
+#: ../src/session.c:1351
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Unknown attribute %s on <maximized> element"
+
+#: ../src/session.c:1411
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Unknown attribute %s on <geometry> element"
+
+#: ../src/session.c:1431
+#, c-format
+msgid "Unknown element %s"
+msgstr "Unknown element %s"
+
+#: ../src/session.c:1868
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Error launching marco-dialogue to warn about apps that don't support "
+"session management: %s\n"
+
+#: ../src/theme-parser.c:227 ../src/theme-parser.c:245
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Line %d character %d: %s"
+
+#: ../src/theme-parser.c:399
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Attribute \"%s\" repeated twice on the same <%s> element"
+
+#: ../src/theme-parser.c:417 ../src/theme-parser.c:442
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Attribute \"%s\" is invalid on <%s> element in this context"
+
+#: ../src/theme-parser.c:503
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Integer %ld must be positive"
+
+#: ../src/theme-parser.c:511
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Integer %ld is too large, current max is %d"
+
+#: ../src/theme-parser.c:539 ../src/theme-parser.c:655
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Could not parse \"%s\" as a floating point number"
+
+#: ../src/theme-parser.c:570 ../src/theme-parser.c:598
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Boolean values must be \"true\" or \"false\" not \"%s\""
+
+#: ../src/theme-parser.c:625
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Angle must be between 0.0 and 360.0, was %g\n"
+
+#: ../src/theme-parser.c:688
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+
+#: ../src/theme-parser.c:753
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+
+#: ../src/theme-parser.c:798 ../src/theme-parser.c:806
+#: ../src/theme-parser.c:888 ../src/theme-parser.c:985
+#: ../src/theme-parser.c:1027 ../src/theme-parser.c:1138
+#: ../src/theme-parser.c:1188 ../src/theme-parser.c:1196
+#: ../src/theme-parser.c:3074 ../src/theme-parser.c:3163
+#: ../src/theme-parser.c:3170 ../src/theme-parser.c:3177
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "No \"%s\" attribute on <%s> element"
+
+#: ../src/theme-parser.c:922 ../src/theme-parser.c:993
+#: ../src/theme-parser.c:1035 ../src/theme-parser.c:1146
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> name \"%s\" used a second time"
+
+#: ../src/theme-parser.c:934 ../src/theme-parser.c:1047
+#: ../src/theme-parser.c:1158
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> parent \"%s\" has not been defined"
+
+#: ../src/theme-parser.c:1060
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometry \"%s\" has not been defined"
+
+#: ../src/theme-parser.c:1073
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> must specify either a geometry or a parent that has a geometry"
+
+#: ../src/theme-parser.c:1115
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "You must specify a background for an alpha value to be meaningful"
+
+#: ../src/theme-parser.c:1206
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Unknown type \"%s\" on <%s> element"
+
+#: ../src/theme-parser.c:1217
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Unknown style_set \"%s\" on <%s> element"
+
+#: ../src/theme-parser.c:1225
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Window type \"%s\" has already been assigned a style set"
+
+#: ../src/theme-parser.c:1261
+msgid "Theme already has a fallback icon"
+msgstr "Theme already has a fallback icon"
+
+#: ../src/theme-parser.c:1273
+msgid "Theme already has a fallback mini_icon"
+msgstr "Theme already has a fallback mini_icon"
+
+#: ../src/theme-parser.c:1286 ../src/theme-parser.c:1350
+#: ../src/theme-parser.c:1639 ../src/theme-parser.c:3262
+#: ../src/theme-parser.c:3316 ../src/theme-parser.c:3488
+#: ../src/theme-parser.c:3704 ../src/theme-parser.c:3742
+#: ../src/theme-parser.c:3780 ../src/theme-parser.c:3818
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> is not allowed below <%s>"
+
+#: ../src/theme-parser.c:1376 ../src/theme-parser.c:1463
+#: ../src/theme-parser.c:1533
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "No \"name\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1383 ../src/theme-parser.c:1470
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "No \"value\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1414 ../src/theme-parser.c:1428
+#: ../src/theme-parser.c:1487
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+
+#: ../src/theme-parser.c:1437
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Distance \"%s\" is unknown"
+
+#: ../src/theme-parser.c:1496
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Aspect ratio \"%s\" is unknown"
+
+#: ../src/theme-parser.c:1540
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "No \"top\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1547
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "No \"bottom\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1554
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "No \"left\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1561
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "No \"right\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1593
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Border \"%s\" is unknown"
+
+#: ../src/theme-parser.c:1746 ../src/theme-parser.c:1856
+#: ../src/theme-parser.c:1963 ../src/theme-parser.c:2190
+#: ../src/theme-parser.c:3007
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "No \"color\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1753
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "No \"x1\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1760 ../src/theme-parser.c:2852
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "No \"y1\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1767
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "No \"x2\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1774 ../src/theme-parser.c:2859
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "No \"y2\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1863 ../src/theme-parser.c:1970
+#: ../src/theme-parser.c:2116 ../src/theme-parser.c:2197
+#: ../src/theme-parser.c:2303 ../src/theme-parser.c:2401
+#: ../src/theme-parser.c:2621 ../src/theme-parser.c:2747
+#: ../src/theme-parser.c:2845 ../src/theme-parser.c:2919
+#: ../src/theme-parser.c:3014
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "No \"x\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1870 ../src/theme-parser.c:1977
+#: ../src/theme-parser.c:2123 ../src/theme-parser.c:2204
+#: ../src/theme-parser.c:2310 ../src/theme-parser.c:2408
+#: ../src/theme-parser.c:2628 ../src/theme-parser.c:2754
+#: ../src/theme-parser.c:2926 ../src/theme-parser.c:3021
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "No \"y\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1877 ../src/theme-parser.c:1984
+#: ../src/theme-parser.c:2130 ../src/theme-parser.c:2211
+#: ../src/theme-parser.c:2317 ../src/theme-parser.c:2415
+#: ../src/theme-parser.c:2635 ../src/theme-parser.c:2761
+#: ../src/theme-parser.c:2933
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "No \"width\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:1884 ../src/theme-parser.c:1991
+#: ../src/theme-parser.c:2137 ../src/theme-parser.c:2218
+#: ../src/theme-parser.c:2324 ../src/theme-parser.c:2422
+#: ../src/theme-parser.c:2642 ../src/theme-parser.c:2768
+#: ../src/theme-parser.c:2940
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "No \"height\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:2000
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "No \"start_angle\" or \"from\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:2007
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "No \"extent_angle\" or \"to\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:2016
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "No \"start_angle\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:2023
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "No \"extent_angle\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:2225
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "No \"alpha\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:2296
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "No \"type\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:2344
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Did not understand value \"%s\" for type of gradient"
+
+#: ../src/theme-parser.c:2429
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "No \"filename\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:2454 ../src/theme-parser.c:2965
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Did not understand fill type \"%s\" for <%s> element"
+
+#: ../src/theme-parser.c:2600 ../src/theme-parser.c:2733
+#: ../src/theme-parser.c:2838
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "No \"state\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:2607 ../src/theme-parser.c:2740
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "No \"shadow\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:2614
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "No \"arrow\" attribute on element <%s>"
+
+#: ../src/theme-parser.c:2667 ../src/theme-parser.c:2789
+#: ../src/theme-parser.c:2877
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Did not understand state \"%s\" for <%s> element"
+
+#: ../src/theme-parser.c:2677 ../src/theme-parser.c:2799
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Did not understand shadow \"%s\" for <%s> element"
+
+#: ../src/theme-parser.c:2687
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Did not understand arrow \"%s\" for <%s> element"
+
+#: ../src/theme-parser.c:3100 ../src/theme-parser.c:3216
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "No <draw_ops> called \"%s\" has been defined"
+
+#: ../src/theme-parser.c:3112 ../src/theme-parser.c:3228
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Including draw_ops \"%s\" here would create a circular reference"
+
+#: ../src/theme-parser.c:3291
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "No \"value\" attribute on <%s> element"
+
+#: ../src/theme-parser.c:3348
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "No \"position\" attribute on <%s> element"
+
+#: ../src/theme-parser.c:3357
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Unknown position \"%s\" for frame piece"
+
+#: ../src/theme-parser.c:3365
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Frame style already has a piece at position %s"
+
+#: ../src/theme-parser.c:3382 ../src/theme-parser.c:3473
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "No <draw_ops> with the name \"%s\" has been defined"
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "No \"function\" attribute on <%s> element"
+
+#: ../src/theme-parser.c:3418 ../src/theme-parser.c:3534
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "No \"state\" attribute on <%s> element"
+
+#: ../src/theme-parser.c:3427
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Unknown function \"%s\" for button"
+
+#: ../src/theme-parser.c:3436
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Button function \"%s\" does not exist in this version (%d, need %d)"
+
+#: ../src/theme-parser.c:3448
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Unknown state \"%s\" for button"
+
+#: ../src/theme-parser.c:3456
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Frame style already has a button for function %s state %s"
+
+#: ../src/theme-parser.c:3526
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "No \"focus\" attribute on <%s> element"
+
+#: ../src/theme-parser.c:3542
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "No \"style\" attribute on <%s> element"
+
+#: ../src/theme-parser.c:3551
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" is not a valid value for focus attribute"
+
+#: ../src/theme-parser.c:3560
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" is not a valid value for state attribute"
+
+#: ../src/theme-parser.c:3570
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "A style called \"%s\" has not been defined"
+
+#: ../src/theme-parser.c:3581
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "No \"resize\" attribute on <%s> element"
+
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3614
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" is not a valid value for resize attribute"
+
+#: ../src/theme-parser.c:3625
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+
+#: ../src/theme-parser.c:3639
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+
+#: ../src/theme-parser.c:3653 ../src/theme-parser.c:3675
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Style has already been specified for state %s resize %s focus %s"
+
+#: ../src/theme-parser.c:3664 ../src/theme-parser.c:3686
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Style has already been specified for state %s focus %s"
+
+#: ../src/theme-parser.c:3725
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+
+#: ../src/theme-parser.c:3763
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+
+#: ../src/theme-parser.c:3801
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+
+#: ../src/theme-parser.c:3849
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Outermost element in theme must be <marco_theme> not <%s>"
+
+#: ../src/theme-parser.c:3869
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+
+#: ../src/theme-parser.c:3874
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> is not allowed inside a <constant> element"
+
+#: ../src/theme-parser.c:3886
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+
+#: ../src/theme-parser.c:3908
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Element <%s> is not allowed inside a draw operation element"
+
+#: ../src/theme-parser.c:3918 ../src/theme-parser.c:3948
+#: ../src/theme-parser.c:3953 ../src/theme-parser.c:3958
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> is not allowed inside a <%s> element"
+
+#: ../src/theme-parser.c:4180
+msgid "No draw_ops provided for frame piece"
+msgstr "No draw_ops provided for frame piece"
+
+#: ../src/theme-parser.c:4195
+msgid "No draw_ops provided for button"
+msgstr "No draw_ops provided for button"
+
+#: ../src/theme-parser.c:4247
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "No text is allowed inside element <%s>"
+
+#: ../src/theme-parser.c:4302
+msgid "<name> specified twice for this theme"
+msgstr "<name> specified twice for this theme"
+
+#: ../src/theme-parser.c:4313
+msgid "<author> specified twice for this theme"
+msgstr "<author> specified twice for this theme"
+
+#: ../src/theme-parser.c:4324
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> specified twice for this theme"
+
+#: ../src/theme-parser.c:4335
+msgid "<date> specified twice for this theme"
+msgstr "<date> specified twice for this theme"
+
+#: ../src/theme-parser.c:4346
+msgid "<description> specified twice for this theme"
+msgstr "<description> specified twice for this theme"
+
+#: ../src/theme-parser.c:4573
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Failed to find a valid file for theme %s\n"
+
+#: ../src/theme-parser.c:4629
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Theme file %s did not contain a root <marco_theme> element"
+
+#: ../src/theme-viewer.c:74
+msgid "/_Windows"
+msgstr "/_Windows"
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/tearoff"
+msgstr "/Windows/tearoff"
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Dialog"
+msgstr "/Windows/_Dialogue"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Modal dialog"
+msgstr "/Windows/_Modal dialogue"
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Utility"
+msgstr "/Windows/_Utility"
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Splashscreen"
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_Top dock"
+msgstr "/Windows/_Top dock"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/_Bottom dock"
+msgstr "/Windows/_Bottom dock"
+
+#: ../src/theme-viewer.c:82
+msgid "/Windows/_Left dock"
+msgstr "/Windows/_Left dock"
+
+#: ../src/theme-viewer.c:83
+msgid "/Windows/_Right dock"
+msgstr "/Windows/_Right dock"
+
+#: ../src/theme-viewer.c:84
+msgid "/Windows/_All docks"
+msgstr "/Windows/_All docks"
+
+#: ../src/theme-viewer.c:85
+msgid "/Windows/Des_ktop"
+msgstr "/Windows/Des_ktop"
+
+#: ../src/theme-viewer.c:134
+msgid "Open another one of these windows"
+msgstr "Open another one of these windows"
+
+#: ../src/theme-viewer.c:141
+msgid "This is a demo button with an 'open' icon"
+msgstr "This is a demo button with an 'open' icon"
+
+#: ../src/theme-viewer.c:148
+msgid "This is a demo button with a 'quit' icon"
+msgstr "This is a demo button with a 'quit' icon"
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr "This is a sample message in a sample dialogue"
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Fake menu item %d\n"
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "Border-only window"
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr "Bar"
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "Normal Application Window"
+
+#: ../src/theme-viewer.c:381
+msgid "Dialog Box"
+msgstr "Dialogue Box"
+
+#: ../src/theme-viewer.c:385
+msgid "Modal Dialog Box"
+msgstr "Modal Dialogue Box"
+
+#: ../src/theme-viewer.c:389
+msgid "Utility Palette"
+msgstr "Utility Palette"
+
+#: ../src/theme-viewer.c:393
+msgid "Torn-off Menu"
+msgstr "Torn-off Menu"
+
+#: ../src/theme-viewer.c:397
+msgid "Border"
+msgstr "Border"
+
+#: ../src/theme-viewer.c:725
+#, c-format
+msgid "Button layout test %d"
+msgstr "Button layout test %d"
+
+#: ../src/theme-viewer.c:754
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milliseconds to draw one window frame"
+
+#: ../src/theme-viewer.c:797
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Usage: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/theme-viewer.c:804
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Error loading theme: %s\n"
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Loaded theme \"%s\" in %g seconds\n"
+
+#: ../src/theme-viewer.c:833
+msgid "Normal Title Font"
+msgstr "Normal Title Font"
+
+#: ../src/theme-viewer.c:839
+msgid "Small Title Font"
+msgstr "Small Title Font"
+
+#: ../src/theme-viewer.c:845
+msgid "Large Title Font"
+msgstr "Large Title Font"
+
+#: ../src/theme-viewer.c:850
+msgid "Button Layouts"
+msgstr "Button Layouts"
+
+#: ../src/theme-viewer.c:855
+msgid "Benchmark"
+msgstr "Benchmark"
+
+#: ../src/theme-viewer.c:902
+msgid "Window Title Goes Here"
+msgstr "Window Title Goes Here"
+
+#: ../src/theme-viewer.c:1006
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+
+#: ../src/theme-viewer.c:1219
+msgid "position expression test returned TRUE but set error"
+msgstr "position expression test returned TRUE but set error"
+
+#: ../src/theme-viewer.c:1221
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "position expression test returned FALSE but didn't set error"
+
+#: ../src/theme-viewer.c:1225
+msgid "Error was expected but none given"
+msgstr "Error was expected but none given"
+
+#: ../src/theme-viewer.c:1227
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Error %d was expected but %d given"
+
+#: ../src/theme-viewer.c:1233
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Error not expected but one was returned: %s"
+
+#: ../src/theme-viewer.c:1237
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x value was %d, %d was expected"
+
+#: ../src/theme-viewer.c:1240
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y value was %d, %d was expected"
+
+#: ../src/theme-viewer.c:1303
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+
+#: ../src/theme.c:206
+msgid "top"
+msgstr "top"
+
+#: ../src/theme.c:208
+msgid "bottom"
+msgstr "bottom"
+
+#: ../src/theme.c:210
+msgid "left"
+msgstr "left"
+
+#: ../src/theme.c:212
+msgid "right"
+msgstr "right"
+
+#: ../src/theme.c:226
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "frame geometry does not specify \"%s\" dimension"
+
+#: ../src/theme.c:245
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "frame geometry does not specify dimension \"%s\" for border \"%s\""
+
+#: ../src/theme.c:282
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Button aspect ratio %g is not reasonable"
+
+#: ../src/theme.c:294
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Frame geometry does not specify size of buttons"
+
+#: ../src/theme.c:925
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Gradients should have at least two colours"
+
+#: ../src/theme.c:1051
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK colour specification must have the state in brackets, e.g. gtk:fg"
+"[NORMAL] where NORMAL is the state; could not parse \"%s\""
+
+#: ../src/theme.c:1065
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK colour specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+
+#: ../src/theme.c:1076
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Did not understand state \"%s\" in colour specification"
+
+#: ../src/theme.c:1089
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Did not understand colour component \"%s\" in colour specification"
+
+#: ../src/theme.c:1119
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Blend format is \"blend/bg_colour/fg_colour/alpha\", \"%s\" does not fit the "
+"format"
+
+#: ../src/theme.c:1130
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Could not parse alpha value \"%s\" in blended colour"
+
+#: ../src/theme.c:1140
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alpha value \"%s\" in blended colour is not between 0.0 and 1.0"
+
+#: ../src/theme.c:1187
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Shade format is \"shade/base_colour/factor\", \"%s\" does not fit the format"
+
+#: ../src/theme.c:1198
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Could not parse shade factor \"%s\" in shaded colour"
+
+#: ../src/theme.c:1208
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Shade factor \"%s\" in shaded colour is negative"
+
+#: ../src/theme.c:1237
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Could not parse colour \"%s\""
+
+#: ../src/theme.c:1496
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Coordinate expression contains character '%s' which is not allowed"
+
+#: ../src/theme.c:1523
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+
+#: ../src/theme.c:1537
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Coordinate expression contains integer '%s' which could not be parsed"
+
+#: ../src/theme.c:1604
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+
+#: ../src/theme.c:1661
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Coordinate expression was empty or not understood"
+
+#: ../src/theme.c:1798 ../src/theme.c:1808 ../src/theme.c:1842
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Coordinate expression results in division by zero"
+
+#: ../src/theme.c:1850
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+
+#: ../src/theme.c:1906
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+
+#: ../src/theme.c:1915
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Coordinate expression had an operand where an operator was expected"
+
+#: ../src/theme.c:1923
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Coordinate expression ended with an operator instead of an operand"
+
+#: ../src/theme.c:1933
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+
+#: ../src/theme.c:2051
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Coordinate expression parser overflowed its buffer."
+
+#: ../src/theme.c:2080
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Coordinate expression had a close parenthesis with no open parenthesis"
+
+#: ../src/theme.c:2142
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Coordinate expression had unknown variable or constant \"%s\""
+
+#: ../src/theme.c:2197
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Coordinate expression had an open parenthesis with no close parenthesis"
+
+#: ../src/theme.c:2208
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Coordinate expression doesn't seem to have any operators or operands"
+
+#: ../src/theme.c:2449 ../src/theme.c:2471 ../src/theme.c:2492
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+
+#: ../src/theme.c:3946
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+
+#: ../src/theme.c:4422 ../src/theme.c:4447
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/theme.c:4493
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Failed to load theme \"%s\": %s\n"
+
+#: ../src/theme.c:4603 ../src/theme.c:4610 ../src/theme.c:4617
+#: ../src/theme.c:4624 ../src/theme.c:4631
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "No <%s> set for theme \"%s\""
+
+#: ../src/theme.c:4639
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+
+#: ../src/theme.c:5006 ../src/theme.c:5068 ../src/theme.c:5131
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+
+#: ../src/theme.c:5014 ../src/theme.c:5076 ../src/theme.c:5139
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Constant \"%s\" has already been defined"
+
+#: ../src/util.c:98
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Failed to open debug log: %s\n"
+
+#: ../src/util.c:108
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Failed to fdopen() log file %s: %s\n"
+
+#: ../src/util.c:114
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Opened log file %s\n"
+
+#: ../src/util.c:231
+msgid "Window manager: "
+msgstr "Window manager: "
+
+#: ../src/util.c:379
+msgid "Bug in window manager: "
+msgstr "Bug in window manager: "
+
+#: ../src/util.c:408
+msgid "Window manager warning: "
+msgstr "Window manager warning: "
+
+#: ../src/util.c:432
+msgid "Window manager error: "
+msgstr "Window manager error: "
+
+#: ../src/window-props.c:192
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Application set a bogus _NET_WM_PID %lu\n"
+
+#: ../src/window-props.c:324
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (on %s)"
+
+#: ../src/window-props.c:1406
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+
+#. first time through
+#: ../src/window.c:5551
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:6116
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+
+#: ../src/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Property %s on window 0x%lx contained invalid UTF-8\n"
+
+#: ../src/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
diff --git a/po/en_GB.po b/po/en_GB.po
new file mode 100644
index 00000000..0996665a
--- /dev/null
+++ b/po/en_GB.po
@@ -0,0 +1,3776 @@
+# English (British) translation for marco.
+# Copyright (C) 2002 The Mate Foundation.
+# This file is distributed under the same licence as the marco package.
+# Robert Brady <[email protected]>, Bastien Nocera <[email protected]>, 2002.
+# Gareth Owen <[email protected]>, 2004.
+# Bruce Cowan <[email protected]>, 2009, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-02-24 17:30+0000\n"
+"PO-Revision-Date: 2010-02-24 17:31+0100\n"
+"Last-Translator: Bruce Cowan <[email protected]>\n"
+"Language-Team: British English <[email protected]>\n"
+"Language: en_GB\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Virtaal 0.5.2\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Desktop"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Window Management"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Bell event"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Unknown window information request: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> is not responding."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Wait"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Force Quit"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Failed to get hostname: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Missing %s extension required for compositing"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Failed to open X Window System display '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Fatal IO error %d (%s) on display '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "No command %d has been defined.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "No terminal command has been defined.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Disable connection to session manager"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Replace the running window manager with Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Specify session management ID"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X Display to use"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Initialise session from savefile"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Print version"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Make X calls synchronous"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Turn compositing on"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Turn compositing off"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Don't make fullscreen windows that are maximised and have no decorations"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Failed to scan themes directory: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Failed to restart: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf key '%s' is set to an invalid value\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d stored in MateConf key %s is out of range %d to %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf key \"%s\" is set to an invalid type\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Could not parse font description \"%s\" from MateConf key %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Error setting number of workspaces to %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Workspace %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Error setting name for workspace %d to \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Error setting compositor status: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Screen %d on display '%s' is invalid\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Screen %d on display \"%s\" already has a window manager\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Could not release screen %d on display \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Could not create directory '%s': %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Could not open session file '%s' for writing: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Error writing session file '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Error closing session file '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Failed to read saved session file %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Failed to parse saved session file: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> attribute seen but we already have the session ID"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Unknown attribute %s on <%s> element"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "nested <window> tag"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Unknown element %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Failed to open debug log: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Failed to fdopen() log file %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Opened log file %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco was compiled without support for verbose mode\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Window manager: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Bug in window manager: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Window manager warning: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Window manager error: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Application set a bogus _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (on %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (as superuser)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (as %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (as another user)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Property %s on window 0x%lx contained invalid UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Switch to workspace 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Switch to workspace 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Switch to workspace 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Switch to workspace 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Switch to workspace 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Switch to workspace 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Switch to workspace 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Switch to workspace 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Switch to workspace 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Switch to workspace 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Switch to workspace 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Switch to workspace 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Switch to workspace on the left of the current workspace"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Switch to workspace on the right of the current workspace"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Switch to workspace above the current workspace"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Switch to workspace below the current workspace"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Move between windows of an application, using a popup window"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Move backwards between windows of an application, using a popup window"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Move between windows, using a popup window"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Move backwards between windows, using a popup window"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Move between panels and the desktop, using a popup window"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Move backwards between panels and the desktop, using a popup window"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Move between windows of an application immediately"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Move backwards between windows of an application immediately"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Move between windows immediately"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Move backwards between windows immediately"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Move between panels and the desktop immediately"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Move backward between panels and the desktop immediately"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Hide all normal windows and set focus to the desktop"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Show the panel's main menu"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Show the panel's \"Run Application\" dialogue box"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Take a screenshot"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Take a screenshot of a window"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Run a terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Activate the window menu"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Toggle fullscreen mode"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Toggle maximisation state"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Toggle whether a window will always be visible over other windows"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximise window"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restore window"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Toggle shaded state"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimise window"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Close window"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Move window"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Resize window"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Toggle whether window is on all workspaces or just one"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Move window to workspace 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Move window to workspace 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Move window to workspace 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Move window to workspace 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Move window to workspace 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Move window to workspace 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Move window to workspace 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Move window to workspace 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Move window to workspace 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Move window to workspace 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Move window to workspace 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Move window to workspace 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Move window one workspace to the left"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Move window one workspace to the right"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Move window one workspace up"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Move window one workspace down"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Raise window if it's covered by another window, otherwise lower it"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Raise window above other windows"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Lower window below other windows"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximise window vertically"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximise window horizontally"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Move window to north-west (top left) corner"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Move window to north-east (top right) corner"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Move window to south-west (bottom left) corner"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Move window to south-east (bottom right) corner"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Move window to north (top) side of screen"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Move window to south (bottom) side of screen"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Move window to east (right) side of screen"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Move window to west (left) side of screen"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Move window to centre of screen"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Not implemented) Navigation works in terms of applications not windows"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Action on title bar double-click"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Action on title bar middle-click"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Action on title bar right-click"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Arrangement of buttons on the titlebar"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Automatically raises the focused window"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;\" "
+"or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;\" "
+"or \"&lt;Super&gt;\" for example."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Commands to run in response to keybindings"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Compositing Manager"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Control how new windows get focus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Current theme"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Delay in milliseconds for the auto raise option"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determines whether Marco is a compositing manager."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Disable misfeatures that are required by old or broken applications"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Enable Visual Bell"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "If true, trade off usability for less resource usage"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modifier to use for modified window click actions"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Name of workspace"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Number of workspaces"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Run a defined command"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Setting this option to false can lead to buggy behaviour, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "System Bell is Audible"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "The name of a workspace."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "The screenshot command"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "The window screenshot command"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximise/unmaximise the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximise/unmaximise the window in that direction only, 'minimize' which will "
+"minimise the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximise/unmaximise the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximise/unmaximise the window in that direction only, 'minimize' which will "
+"minimise the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximise/unmaximise the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximise/unmaximise the window in that direction only, 'minimize' which will "
+"minimise the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Use standard system font in window titles"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Visual Bell Type"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Whether raising should be a side-effect of other user interactions"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Whether to resize with the right button"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Window focus mode"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Window title font"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Usage: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Close Window"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Window Menu"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimise Window"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximise Window"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restore Window"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Roll Up Window"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Unroll Window"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Keep Window On Top"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Remove Window From Top"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Always On Visible Workspace"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Put Window On Only One Workspace"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimise"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximise"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Unma_ximise"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Roll _Up"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Unroll"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Move"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Resize"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Move Titlebar On_screen"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Always on _Top"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Always on Visible Workspace"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Only on This Workspace"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Move to Workspace _Left"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Move to Workspace R_ight"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Move to Workspace _Up"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Move to Workspace _Down"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Close"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Workspace %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Workspace 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Workspace %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Move to Another _Workspace"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "top"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "bottom"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "left"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "right"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "frame geometry does not specify \"%s\" dimension"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "frame geometry does not specify dimension \"%s\" for border \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Button aspect ratio %g is not reasonable"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Frame geometry does not specify size of buttons"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Gradients should have at least two colours"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK colour specification must have the state in brackets, e.g. gtk:fg"
+"[NORMAL] where NORMAL is the state; could not parse \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK colour specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Did not understand state \"%s\" in colour specification"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Did not understand colour component \"%s\" in colour specification"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Blend format is \"blend/bg_colour/fg_colour/alpha\", \"%s\" does not fit the "
+"format"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Could not parse alpha value \"%s\" in blended colour"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alpha value \"%s\" in blended colour is not between 0.0 and 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Shade format is \"shade/base_colour/factor\", \"%s\" does not fit the format"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Could not parse shade factor \"%s\" in shaded colour"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Shade factor \"%s\" in shaded colour is negative"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Could not parse colour \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Coordinate expression contains character '%s' which is not allowed"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Coordinate expression contains integer '%s' which could not be parsed"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Coordinate expression was empty or not understood"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Coordinate expression results in division by zero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Coordinate expression had an operand where an operator was expected"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Coordinate expression ended with an operator instead of an operand"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Coordinate expression had unknown variable or constant \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Coordinate expression parser overflowed its buffer."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Coordinate expression had a close parenthesis with no open parenthesis"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Coordinate expression had an open parenthesis with no close parenthesis"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Coordinate expression doesn't seem to have any operators or operands"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Theme contained an expression that resulted in an error: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Failed to load theme \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "No <%s> set for theme \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Constant \"%s\" has already been defined"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "No \"%s\" attribute on element <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Line %d character %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Attribute \"%s\" repeated twice on the same <%s> element"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Attribute \"%s\" is invalid on <%s> element in this context"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Could not parse \"%s\" as an integer"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Did not understand trailing characters \"%s\" in string \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Integer %ld must be positive"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Integer %ld is too large, current max is %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Could not parse \"%s\" as a floating point number"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Boolean values must be \"true\" or \"false\" not \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Angle must be between 0.0 and 360.0, was %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> name \"%s\" used a second time"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> parent \"%s\" has not been defined"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometry \"%s\" has not been defined"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> must specify either a geometry or a parent that has a geometry"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "You must specify a background for an alpha value to be meaningful"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Unknown type \"%s\" on <%s> element"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Unknown style_set \"%s\" on <%s> element"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Window type \"%s\" has already been assigned a style set"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> is not allowed below <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Distance \"%s\" is unknown"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Aspect ratio \"%s\" is unknown"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Border \"%s\" is unknown"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "No \"start_angle\" or \"from\" attribute on element <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "No \"extent_angle\" or \"to\" attribute on element <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Did not understand value \"%s\" for type of gradient"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Did not understand fill type \"%s\" for <%s> element"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Did not understand state \"%s\" for <%s> element"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Did not understand shadow \"%s\" for <%s> element"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Did not understand arrow \"%s\" for <%s> element"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "No <draw_ops> called \"%s\" has been defined"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Including draw_ops \"%s\" here would create a circular reference"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Unknown position \"%s\" for frame piece"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Frame style already has a piece at position %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "No <draw_ops> with the name \"%s\" has been defined"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Unknown function \"%s\" for button"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Button function \"%s\" does not exist in this version (%d, need %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Unknown state \"%s\" for button"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Frame style already has a button for function %s state %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" is not a valid value for focus attribute"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" is not a valid value for state attribute"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "A style called \"%s\" has not been defined"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" is not a valid value for resize attribute"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Should not have \"resize\" attribute on <%s> element for maximised/shaded "
+"states"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Should not have \"resize\" attribute on <%s> element for maximised states"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Style has already been specified for state %s resize %s focus %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Style has already been specified for state %s focus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Outermost element in theme must be <marco_theme> not <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> is not allowed inside a <constant> element"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Element <%s> is not allowed inside a draw operation element"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> is not allowed inside a <%s> element"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "No draw_ops provided for frame piece"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "No draw_ops provided for button"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "No text is allowed inside element <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> specified twice for this theme"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Failed to find a valid file for theme %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Theme file %s did not contain a root <marco_theme> element"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Windows"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Windows/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Windows/_Dialogue"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Windows/_Modal dialogue"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Windows/_Utility"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Splashscreen"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Windows/_Top dock"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Windows/_Bottom dock"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Windows/_Left dock"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Windows/_Right dock"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Windows/_All docks"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Windows/Des_ktop"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "This is a sample message in a sample dialog"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Fake menu item %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Border-only window"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Bar"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normal Application Window"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialogue Box"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modal Dialogue Box"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Utility Palette"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Torn-off Menu"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Border"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Button layout test %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milliseconds to draw one window frame"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Usage: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Error loading theme: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Loaded theme \"%s\" in %g seconds\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Normal Title Font"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Small Title Font"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Large Title Font"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Button Layouts"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Benchmark"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Window Title Goes Here"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "position expression test returned TRUE but set error"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "position expression test returned FALSE but didn't set error"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Error was expected but none given"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Error %d was expected but %d given"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Error not expected but one was returned: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x value was %d, %d was expected"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y value was %d, %d was expected"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Open another one of these windows"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "This is a demo button with an 'open' icon"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "This is a demo button with a 'quit' icon"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Failed to parse message \"%s\" from dialogue process\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Error reading from dialogue display process: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Unmaximise Window"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Title"
+
+#~ msgid "Class"
+#~ msgstr "Class"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Set this option to "
+#~ "false to decouple raising from other user actions. Even when this option "
+#~ "is false, windows can still be raised by an alt-left-click anywhere on "
+#~ "the window, a normal click on the window decorations, or by special "
+#~ "messages, such as activation requests from pagers. This option is "
+#~ "currently disabled in click-to-focus mode."
+#~ msgstr ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Set this option to "
+#~ "false to decouple raising from other user actions. Even when this option "
+#~ "is false, windows can still be raised by an alt-left-click anywhere on "
+#~ "the window, a normal click on the window decorations, or by special "
+#~ "messages, such as activation requests from pagers. This option is "
+#~ "currently disabled in click-to-focus mode."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to maximise a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to minimise a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to toggle maximisation. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to unmaximise a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1. The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Toggle always on top state"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Unmaximise window"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Unknown attribute %s on <marco_session> element"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Unknown attribute %s on <maximized> element"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Unknown attribute %s on <geometry> element"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Error launching marco-dialogue to warn about apps that don't support "
+#~ "session management: %s\n"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "No \"%s\" attribute on <%s> element"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Theme already has a fallback icon"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Theme already has a fallback mini_icon"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "No \"name\" attribute on element <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "No \"value\" attribute on element <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "No \"top\" attribute on element <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "No \"bottom\" attribute on element <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "No \"left\" attribute on element <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "No \"right\" attribute on element <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "No \"color\" attribute on element <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "No \"x1\" attribute on element <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "No \"y1\" attribute on element <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "No \"x2\" attribute on element <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "No \"y2\" attribute on element <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "No \"y\" attribute on element <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "No \"width\" attribute on element <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "No \"height\" attribute on element <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "No \"start_angle\" attribute on element <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "No \"extent_angle\" attribute on element <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "No \"alpha\" attribute on element <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "No \"type\" attribute on element <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "No \"filename\" attribute on element <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "No \"state\" attribute on element <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "No \"shadow\" attribute on element <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "No \"arrow\" attribute on element <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "No \"value\" attribute on <%s> element"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "No \"position\" attribute on <%s> element"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "No \"function\" attribute on <%s> element"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "No \"state\" attribute on <%s> element"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "No \"focus\" attribute on <%s> element"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "No \"style\" attribute on <%s> element"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "No \"resize\" attribute on <%s> element"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> specified twice for this theme"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> specified twice for this theme"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> specified twice for this theme"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> specified twice for this theme"
+
+#~ msgid "On _Top"
+#~ msgstr "On _Top"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Unknown function \"%s\" for menu icon"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Unknown state \"%s\" for menu icon"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "Theme already has a menu icon for function %s state %s"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "No draw_ops provided for menu icon"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "Failed to read theme from file %s: %s\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogues in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogues. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogues, so "
+#~ "Marco has to disable dialogue positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
diff --git a/po/eo.po b/po/eo.po
new file mode 100644
index 00000000..c267791b
--- /dev/null
+++ b/po/eo.po
@@ -0,0 +1,2190 @@
+# Esperanto translation for marco
+# Copyright (c) (c) 2006 Canonical Ltd, and Rosetta Contributors 2006
+# This file is distributed under the same license as the marco package.
+# Ed GLEZ <[email protected]>, 2006.
+# Aisano <>, 2008.
+# LaPingvino <[email protected]>, 2008.
+# OliverWeb < [email protected]>, 2008.
+# M. <>, 2009.
+# Michael MORONI, <[email protected]>, 2009.
+# Kristjan SCHMIDT <[email protected]>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco-eo-20070615\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-06-20 09:45+0000\n"
+"PO-Revision-Date: 2010-06-29 15:03+0200\n"
+"Last-Translator: Kristjan SCHMIDT <[email protected]>\n"
+"Language-Team: Esperanto <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2010-06-28 16:40+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Labortablo"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Fenestroadministrado"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Sonoril-evento"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Nekonata peto pri fenestra informo: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> ne respondas."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Atendi"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "Per_forta eliro"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Malsukcesis atingi nomon de la komputilo: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Mankas la kromaĵo %s, necesa por kompostado"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Malsukcesis malfermi jenan vidigon de fenestra sistemo X: '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Perdis konekton kun vidigo '%s';\n"
+"plej probable la X-servilo estis elŝaltita aŭ vi ĉesigis/detruis \n"
+"la fenestromastrumilon.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Pereiga eniga/eliga eraro %d (%s) en vidigo '%s'\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "Iu alia programo jam uzas klavon %s kun modifiloj %x kiel bindon\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Okazis eraro lanĉante <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Neniu komando %d estis difinita.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Neniu terminala komando estis difinita.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Kopirajto (C) 2001-%s Havoc Pennington, Red Hat, Inc., kaj aliaj\n"
+"Ĉi tiu estas libera programaro; bonvolu vidi la fontan kodon por kopiaj "
+"kondicojn,\n"
+"NE estas IU garantio; nek por KOMERCEBLECO nek ADAPTEBLECO POR SPECIFA "
+"CELO.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Elŝalti konekton al la seanco-administrilo"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Anstataŭigi la nun ruliĝantan fenestromastrumilon per Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Specifi seancoadministran identigilon"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X-Vidigo uzenda"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Pravalorizi la seancon el konservita dosiero"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Presi version"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Fari X-vokojn sinkrone"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Enŝalti kompostadon"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Elŝalti kompostadon"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "Ne tutekranigi fenestrojn jam grandigitajn kaj sen ornamojn."
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Malsukcesis skani etosan dosierujon %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Ne eblis trovi ian etoson! Certigu, ke %s ekzistas kaj enhavas la ordinarajn "
+"etosojn.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Malsukcesis restartigi: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "La MateConf-ŝlosilo '%s' havas ne-validan valoron.\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"La valoro %d de la MateConf-ŝlosilo %s estas ekster intervalo de %d ĝis %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "La MateConf-ŝlosilo \"%s\" havas ne-validan valoron.\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Provizoraj solvoj por rompitaj aplikaĵoj estas malaktivigitaj. Kelkaj "
+"aplikaĵoj povus ruli malkorekte.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Ne eblis analizi la tiparan difinon \"%s\" de la MateConf-agorda ŝlosilo %s.\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Valoro \"%s\", trovita en la agorda datenbanko, ne estas cvalida valoro kiel "
+"mus-butona modifilo.\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Eraro ŝanĝante la nombron da labortabloj al %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Laborspaco %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Valoro %s, trovita en la MateConf-agordaro, ne estas valida kiel klavo-bindaĵo "
+"\"%s\".\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Eraro agordante la nomon por la laborspaco %d al \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr ""
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Ekrano %d en vidigo '%s' ne estas valida.\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Ekrano %d en montrilo \"%s\" jam havas fenestroadministrilo; provi uzi "
+"opcion --replace por anstataŭigi la nunan fenestroadministrilo.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Neeblas akiri fenestroadministrilan elekton ĉe ekrano %d, montrilo “%s”\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr ""
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Ne povis krei dosierujon '%s': %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Ne povis malfermi sesian dosieron '%s' por skribado: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Eraro dum skribado al sesia dosiero '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Eraro dum fermado de sesia dosiero '%s': %s\n"
+
+#: ../src/core/session.c:1143
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Malsuksesis analizi konservitan sesian dosieron: %s\n"
+
+#: ../src/core/session.c:1192
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/core/session.c:1205 ../src/core/session.c:1280
+#: ../src/core/session.c:1312 ../src/core/session.c:1384
+#: ../src/core/session.c:1444
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Nekonata atributo %s ĉe elemento <%s>"
+
+#: ../src/core/session.c:1222
+#, c-format
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/core/session.c:1464
+#, c-format
+msgid "Unknown element %s"
+msgstr "Nekonata elemento %s"
+
+#: ../src/core/session.c:1816
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr ""
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco estis kompilita sen subteno por eksplicita reĝimo\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Fenestroadministrilo: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Cimo en fenestroadministrilo: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Fenestroadministrila atentigo: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Fenestroadministrila eraro: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5660
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6225
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr ""
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (ĉe %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (kiel ĉefuzanto)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (kiel %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (kiel alia uzanto)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Eco %s ĉe fenestro 0x%lx enhavis nevalidan UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Ŝalti al laborspaco 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Ŝalti al laborspaco 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Ŝalti al laborspaco 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Ŝalti al laborspaco 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Ŝalti al laborspaco 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Ŝalti al laborspaco 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Ŝalti al laborspaco 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Ŝalti al laborspaco 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Ŝalti al laborspaco 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Ŝalti al laborspaco 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Ŝalti al laborspaco 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Ŝalti al laborspaco 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Ŝalti al laborspaco maldekstra de la aktuala laborspaco"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Ŝalti al laborspaco dekstra de la aktuala laborspaco"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Ŝalti al laborspaco super la aktuala laborspaco"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Ŝalti al laborspaco sub la aktuala laborspaco"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Moviĝi inter fenestroj de aplikaĵo, uzante ŝprucfenestron"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Moviĝi malantaŭen inter fenestroj de aplikaĵo, uzante ŝprucfenestron"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Moviĝi inter fenestroj, uzante ŝprucfenestron"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Moviĝi malantaŭen inter fenestroj, uzante ŝprucfenestron"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Moviĝi inter paneloj kaj labortablo, uzante ŝprucfenestron"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Moviĝi malantaŭen inter paneloj kaj labortablo, uzante ŝprucfenestron"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Moviĝi inter fenestroj de aplikaĵo tuj"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Moviĝi malantaŭen inter fenestroj de aplikaĵo tuj"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Moviĝi inter fenestroj tuj"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Moviĝi malantaŭen inter fenestroj tuj"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Moviĝi inter paneloj kaj labortablo tuj"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Moviĝi malantaŭen inter paneloj kaj labortablo tuj"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Kaŝi ĉiujn normalajn fenestrojn kaj enfokusigi la labortablon"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Montri la ĉefmenuon de la panelo"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Montri la dialogujon \"Ruli aplikaĵon\" de la panelo"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Ekrankopii"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Ekrankopii fenestron"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Ruli terminalon"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Aktivigi tutekranan reĝimon"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maksimumigi la fenestron"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restaŭri fenestron"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimumigi fenestron"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Fermi la fenestron"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Movi fenestron"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Ŝanĝi fenestrograndecon"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Movi fenestron al laborspaco 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Movi fenestron al laborspaco 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Movi fenestron al laborspaco 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Movi fenestron al laborspaco 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Movi fenestron al laborspaco 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Movi fenestron al laborspaco 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Movi fenestron al laborspaco 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Movi fenestron al laborspaco 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Movi fenestron al laborspaco 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Movi fenestron al laborspaco 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Movi fenestron al laborspaco 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Movi fenestron al laborspaco 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Movi fenestron al la maldekstra laborspaco"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Movi fenestron al la dekstra laborspaco"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Movi fenestron al la supra laborspaco"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Movi fenestron al la suba laborspaco"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Vertikale maksimumigi la fenestron"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Horizontale maksimumigi la fenestron"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Kunmet-administrilo"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Kontroli kiel novaj fenestroj iĝas fokusitaj"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Aktuala etoso"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Ebligi videblan sonorilon"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nomo de laborspaco"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Nombro da laborspacoj"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Sistempepo estas aŭdeble"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "La nomo de laborspaco."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr ""
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Uzo: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Fermi Fenestron"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Fenestra Menuo"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimumigu fenestron"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maksimumigu fenestron"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restaŭri fenestron"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Teni fenstron maldone"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Forigi fenestron de la malfono"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr ""
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimumigi"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ksimumigi"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Malma_ksimumigi"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Movi"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Readapti"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr ""
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Ĉiam malfone"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Ĉi_am en videbla laborspaco"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Nur en ĉi tiu laborspaco"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Movi al la _maldekstra laborspaco"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Movi al la _dekstra laborspaco"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Movi al la su_pra laborspaco"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Movi al la su_ba laborspaco"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Fermi"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Laborspaco %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Laborspaco 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Laborspaco %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Movi al alia laborspaco"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Majuskl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ktrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr ""
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "supre"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "malsupre"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "maldekstre"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "dekstre"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr ""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr ""
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr ""
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1586
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/ui/theme.c:1613
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1627
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1749
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1806
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/ui/theme.c:1917 ../src/ui/theme.c:1927 ../src/ui/theme.c:1961
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/ui/theme.c:1969
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/ui/theme.c:2025
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2034
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2042
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/ui/theme.c:2052
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+
+#: ../src/ui/theme.c:2199 ../src/ui/theme.c:2240
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:2294
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+
+#: ../src/ui/theme.c:2323
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2387
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2398
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/ui/theme.c:2602 ../src/ui/theme.c:2622 ../src/ui/theme.c:2642
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/ui/theme.c:4209
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+
+#: ../src/ui/theme.c:4717 ../src/ui/theme.c:4742
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+
+#: ../src/ui/theme.c:4786
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Ŝargo de etoso fiaskis \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4916 ../src/ui/theme.c:4923 ../src/ui/theme.c:4930
+#: ../src/ui/theme.c:4937 ../src/ui/theme.c:4944
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:4952
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/ui/theme.c:5395 ../src/ui/theme.c:5457 ../src/ui/theme.c:5520
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/ui/theme.c:5403 ../src/ui/theme.c:5465 ../src/ui/theme.c:5528
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atributo \"%s\" ripetas duoble en la sama <%s> elemento"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atributo \"%s\" ne estas valida en elemento <%s> en tiu ĉi kunteksto"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Ne povis kompreni \"%s\" kiel entjeron"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Ne komprenis vostajn signojn \"%s\" en ĉeno \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Elemento <%s> ne estas permesita sub <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Fenestroj"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Breto"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialogujo"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Rando"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Taksotestado"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+
+#~ msgid "Desk %d"
+#~ msgstr "Tablo %d"
+
+#~ msgid "Failed to read saved session file %s: %s\n"
+#~ msgstr "Malsukcesis legi konservitan sesian dosieron %s: %s\n"
+
+#~ msgid "Desk %d%n"
+#~ msgstr "Labortablo %d%n"
+
+#~ msgid "Desk 1_0"
+#~ msgstr "Labortablo 1_0"
+
+#~ msgid "Desk %s%d"
+#~ msgstr "Labortablo %s%d"
diff --git a/po/es.po b/po/es.po
new file mode 100644
index 00000000..c0870cd4
--- /dev/null
+++ b/po/es.po
@@ -0,0 +1,3818 @@
+# translation of marco.HEAD.po to Español
+# Spanish trasnlation for Marco
+# Copyright © 2001,2002,2003, 2006, 2007, 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+#
+# Héctor García Álvarez <[email protected]>, 2001.
+# Pablo Gonzalo del Campo <[email protected]>,2002,2003.
+# Francisco Javier F. Serrador <[email protected]>, 2004, 2005, 2006.
+# Jorge González <[email protected]>, 2007, 2008, 2009, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-01-21 21:34+0000\n"
+"PO-Revision-Date: 2010-01-25 19:39+0100\n"
+"Last-Translator: Jorge González <[email protected]>\n"
+"Language-Team: Español <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Escritorio"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Administrador de ventanas"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Evento de campana"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Petición de información de ventana desconocida: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> no está respondiendo."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Puede elegir esperar un momento para que continúe o forzar a la aplicación a "
+"terminar."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Esperar"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Forzar la salida"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Ocurrió un error al obtener el nombre del host: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Falta la extensión %s requerida para la composición"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Ocurrió un error al abrir la pantalla de X Window System «%s»\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Se ha perdido la conexión con la pantalla «%s»; \n"
+"parece que el servidor X fue apagado o que usted ha matado o destruido el "
+"gestor de ventanas.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Error fatal de E/S %d (%s) en la pantalla «%s».\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Algún otro programa ya está usando la clave %s con el modificador %x como "
+"una vinculación\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Hubo un error al ejecutar <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "No ha sido definido ningún comando %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "No ha sido definido ningún comando de terminal.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright © 2001-%s Havoc Pennington, Red Hat, Inc., y otros\n"
+"Este programa es software libre; vea el código fuente para obtener las\n"
+"condiciones de copia. NO se proporciona ninguna garantía; ni de\n"
+"MERCANTILIDAD O DE IDONEIDAD PARA UN PROPÓSITO PARTICULAR.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Desactivar conexión al gestor de sesión"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Reemplazar el gestor de ventanas en ejecución por Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Especificar el ID se gestión de sesión"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Pantalla X que usar"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inicializar sesión desde el archivo de salvaguarda"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Imprimir versión"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Hacer que las llamadas a las X sean síncronas"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Activar la composición"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Desactivar la composición"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"No poner a pantalla completa las ventanas maximizadas que no tienen "
+"decoración"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Falló al inspeccionar el directorio de temas: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"No se ha podido encontrar un tema. Asegúrese de que %s existe y contiene los "
+"temas usuales.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "No se pudo reiniciar: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "La clave MateConf «%s» está configurada con un valor inválido\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"%d almacenado en la clave de MateConf %s está fuera de rango %d hasta %d\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "La clave MateConf «%s» está configurada con un tipo inválido\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Los arreglos para aplicaciones rotas se han deshabilitado. Algunas "
+"aplicaciones podrían no comportarse correctamente.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"No se ha podido interpretar la descripción de la tipografía «%s» de la clave "
+"MateConf %s\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"«%s» encontrado en la base de datos de configuración no es un valor válido "
+"para el modificador del botón del ratón\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+"Ocurrió un error configurando la número de espacios de trabajo para %d: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "Área de trabajo %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"«%s» encontrado en la base de datos de configuración no es un valor válido "
+"para la combinación de teclas «%s»\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+"Ocurrió un error al establecer el nombre del área de trabajo %d como «%s»: %"
+"s \n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Error al establecer el estado del compositor: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "La ventana %d en la pantalla «%s» no es válida\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"La ventana %d en la pantalla «%s» ya tiene un gestor de ventanas, intente "
+"usar la opción «--replace» para reemplazar el gestor de ventanas activo.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"No se ha podido obtener la selección del gestor de ventanas en la ventana %d "
+"en la pantalla «%s»\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "La ventana %d en la pantalla «%s» ya tiene un gestor de ventanas\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "No se ha podido liberar el monitor %d en la pantalla «%s»\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"El formato se parece a «<Control>a» o «<Shift><Alt>F1».\n"
+"\n"
+"El intérprete es bastante liberal y permite tanto mayúsculas como minúsculas "
+"además de abreviaturas como por ejemplo «<Ctl>» y «<Ctrl>». Si configura esta "
+"opción con la cadena especial «disabled» entonces no habrá combinación de "
+"teclas para esta acción."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"El formato se parece a «<Control>a» o «<Shift><Alt>F1».\n"
+"\n"
+"El intérprete es bastante liberal y permite tanto mayúsculas como minúsculas "
+"además de abreviaturas como por ejemplo «<Ctl>» y «<Ctrl>». Si configura esta "
+"opción con la cadena especial «disabled» entonces no habrá combinación de "
+"teclas para esta acción.\n"
+"\n"
+"Esta combinación de teclas puede invertirse manteniendo pulsada la tecla "
+"«Mayús»; por ello «Mayús» no puede ser una de las teclas de la combinación."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "No se ha podido crear el directorio «%s»: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "No se ha podido abrir para escritura el archivo de sesión «%s»: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Ocurrió un error al escribir en el archivo de sesión «%s»: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Ocurrió un error al cerrar el archivo de sesión «%s»: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Ocurrió un error al leer el archivo de sesión guardado %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Ocurrió un error al interpretar el archivo de sesión guardado: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"El atributo <marco_session> ha sido visto pero ya tenemos el ID de la "
+"sesión"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Atributo desconocido %s en el elemento <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "etiqueta <window> anidada"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Elemento desconocido %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Estas ventanas no soportan «guardar la configuración actual» y tendrán que "
+"reiniciarse manualmente la próxima vez que inicie una sesión."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Ocurrió un error al abrir el registro de errores: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Ocurrió un error al hacer fdopen() en el archivo de registro %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Archivo de registro %s abierto\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco fue compilado sin soporte para modo prolijo\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Administrador de ventanas: "
+
+# Diferenciar de eRRor en el gestor de ventanas, más abajo
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Error en el gestor de ventanas: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Advertencia del gestor de ventanas: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Error del gestor de ventanas: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"La ventana %s ha establecido SM_CLIENT_ID sobre sí misma en vez de hacerlo "
+"en la ventana WM_CLIENT_LEADER como está especificado en el ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"La ventana %s ha establecido la propiedad MWM indicando que no es "
+"redimensionable, pero configuró el tamaño mínimo a %d x %d y el tamaño "
+"máximo a %d x %d ; esto no tiene mucho sentido.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "La aplicación establecio un _NET_WM_PID %lu erróneo\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (on %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (como superusuario)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (como %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (como otro usuario)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+"WM_TRANSIENT_FOR inválido para la ventana 0x%lx especificada para %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"La ventana 0x%lx tiene la propiedad %s \n"
+"que se esperaba tuviese el tipo %s con el formato %d\n"
+"y actualmente tiene un tipo %s con el formato %d y n_items %d\n"
+"Esto no parece ser un error de la aplicación ni del gestor de ventanas.\n"
+"La ventana tiene título=«%s» la clase=«%s» y el nombre=«%s»\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "La propiedad %s en la ventana 0x%lx contiene UTF-8 inválido\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"La propiedad %s en la ventana 0x%lx contiene UTF-8 inválido para el elemento "
+"%d de la lista\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Cambiar al área de trabajo 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Cambiar al área de trabajo 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Cambiar al área de trabajo 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Cambiar al área de trabajo 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Cambiar al área de trabajo 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Cambiar al área de trabajo 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Cambiar al área de trabajo 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Cambiar al área de trabajo 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Cambiar al área de trabajo 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Cambiar al área de trabajo 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Cambiar al área de trabajo 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Cambiar al área de trabajo 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Cambiar al área de trabajo a la izquierda del área de trabajo actual"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Cambiar al área de trabajo a la derecha del área de trabajo actual"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Cambiar al área de trabajo encima del área de trabajo actual"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Cambiar al área de trabajo debajo del área de trabajo actual"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr ""
+"Moverse entre las ventanas de una aplicación usando una ventana emergente"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Retroceder entre las ventanas de una aplicación usando una ventana emergente"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Moverse entre las ventanas usando una ventana emergente"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Retroceder entre ventanas usando una ventana emegernte"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Moverse entre los paneles y el escritorio usando una ventana emergente"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Retroceder entre los paneles y escritorio usando una ventana emergente"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Moverse entre las ventanas de una aplicación inmediatamente"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Retroceder entre las ventanas de una aplicación inmediatamente"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Moverse entre las ventanas inmediatamente"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Retroceder entre las ventanas inmediatamente"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Moverse entre los paneles y el escritorio inmediatamente"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Retroceder entre los paneles y el escritorio inmediatamente"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Ocultar todas las ventanas normales y dar foco al escritorio"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Mostrar el menú principal del panel"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Mostrar el cuadro de diálogo del panel «Ejecutar aplicación»"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Capturar la pantalla"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Capturar una ventana"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Ejecutar en un terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Activar el menú de la ventana"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Cambiar a modo de pantalla completa"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Cambiar el estado de maximización"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Conmutar si una ventana siempre se verá encima de otras ventanas"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximizar la ventana"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restablecer la ventana"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Cambiar el estado de enrollado"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimizar la ventana"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Cerrar la ventana"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Mover la ventana"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Redimensiona la ventana"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Conmutar si la ventana aparece en todas las áreas de trabajo o sólo en una"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Mover la ventana al área de trabajo 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Mover la ventana al área de trabajo 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Mover la ventana al área de trabajo 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Mover la ventana al área de trabajo 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Mover la ventana al área de trabajo 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Mover la ventana al área de trabajo 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Mover la ventana al área de trabajo 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Mover la ventana al área de trabajo 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Mover la ventana al área de trabajo 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Mover la ventana al área de trabajo 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Mover la ventana al área de trabajo 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Mover la ventana al área de trabajo 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Mover la ventana un área de trabajo a la izquierda"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Mover la ventana un área de trabajo a la derecha"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Subir la ventana un área de trabajo"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Bajar la ventana un área de trabajo"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Levantar la ventana si está cubierta por otra ventana, minimizarla en otro "
+"caso"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Levanta la ventana por encima de otras ventanas"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Bajar la ventana por debajo de otras ventanas"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximizar la ventana verticalmente"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximizar la ventana horizontalmente"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Mover la ventana a la esquina noroeste (arriba a la izquierda)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Mover la ventana a la esquina noreste (arriba a la derecha)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Mover la ventana a la esquina sureste (abajo a la izquierda)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Mover la ventana a la esquina suroeste (abajo a la derecha)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Mover la ventana al lado norte (arriba) de la pantalla"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Mover la ventana al lado sur (abajo) de la pantalla"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Mover la ventana al lado este (derecha) de la pantalla"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Mover la ventana al lado oeste (izquierda) de la pantalla"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Mover la ventana al centro de la pantalla"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(No implementado) La navegación funciona en términos de aplicaciones, no "
+"ventanas"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Una cadena de descripción de tipografía describiendo una tipografía para los "
+"títulos de las ventanas. El tamaño de la descripción sólo se usará si la "
+"opción titlebar_font_size está establecida a 0. Además, esta opción también "
+"está deshabilitada si la opción titlebar_uses_desktop_font está puesta a "
+"«true» ."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Acción al pulsar dos veces en la barra de títulos"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Acción al pulsar con el botón central en la barra de títulos"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Acción al pulsar con el botón derecho en la barra de títulos"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Distribución de botones en la barra de títulos"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Distribución de botones en la barra de títulos. El valor debe ser una "
+"cadena, como \"menu:minimize,maximize,spacer,close\" ; los dos puntos "
+"separan la esquina izquierda de la ventana de la esquina derecha, y los "
+"nombres de los botones están separados por comas. No se permiten botones "
+"duplicados. Los nombres desconocidos de botones se ignoran ignorados sin "
+"avisar de este modo esos botones puedan añadirse en las versiones futuras de "
+"marco sin problemas con las versiones más antiguas. Se puede usar una "
+"etiqueta espaciadora para insertar algunos espacios entre dos botones "
+"adyacentes."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Elevar automáticamente la ventana que tiene el foco"
+
+#: ../src/marco.schemas.in.in.h:9
+#| msgid ""
+#| "Clicking a window while holding down this modifier key will move the "
+#| "window (left click), resize the window (middle click), or show the window "
+#| "menu (right click). The left and right operations may be swapped using "
+#| "the \"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" "
+#| "or \"&lt;Super&gt;\" for example."
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Al pulsar sobre una ventana manteniendo presionada esta tecla modificadora "
+"se moverá la ventana (botón izquierdo), se redimensionará la ventana (botón "
+"del medio) o se mostrará el menú de la ventana (botón derecho). Las "
+"operaciones izquierda y derecha se pueden intercambiar usando la tecla "
+"modificadora «resize_with_right_button». El modificador se expresa por "
+"ejemplo como «&lt;Alt&gt;» o «&lt;Súper&gt;»."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Comandos a ejecutar en respuesta a combinaciones de teclas"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Gestor de composición"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Controla cómo obtienen el foco las ventanas nuevas"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Tema actual"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Retardo en milisegundos para la opción auto-elevar"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determina si Marco es un gestor de composición."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determina si las aplicaciones o el sistema pueden generar «bips» audibles; "
+"podría usarse en conjunto con «la campana visual» para permitir «bips» "
+"silenciosos."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Deshabilitar características antiguas que son requeridas por aplicaciones "
+"antiguas o rotas"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Activar la campana visual"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Si está establecido a «true» y el modo del foco es «sloppy» o «mouse» entonces "
+"la ventana con el foco será elevada automáticamente tras un retardo "
+"especificado en la clave auto_raise_delay. Esto no está relacionado con "
+"pulsar en una ventana para elevarla, no con entrar en una ventana durante "
+"una operación de arrastrar y soltar."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Si es verdadero ignora la opción titlebar_font y usa la tipografía estándar "
+"de la aplicación para los títulos de las ventanas."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Si es «true», marco dará al usuario menos información y menos sensación de "
+"«manipulación directa», usando marcos de alambre, evitando animaciones, u "
+"otros medios. Esto es una reducción significante en usabilidad para muchos "
+"usuarios, pero puede permitir funcionar a las aplicaciones heredadas y "
+"servidores de terminal cuando de otra forma sería impracticable. Sin "
+"embargo, la característica de marcos de alambre se desactiva cuando la "
+"accesibilidad está activada."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Si es «true», entonces Marco funciona en términos de aplicaciones en vez "
+"de ventanas. El concepto es un poco abstracto, pero en general una "
+"configuración basada en aplicaciones es más parecida a un Mac y menos a un "
+"Windows. Cuando enfoca a una ventana en el modo basado en aplicación todas "
+"las ventanas en la aplicación se elevan. También en el modo basado en "
+"aplicación las pulsaciones del foco no se pasan a través de las ventanas en "
+"otras aplicaciones. El modo basado en aplicaciones está, sin embargo, no "
+"implementado en gran parte en este momento."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Si es «true», reducir usabilidad para menos uso de recursos"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Modificador que se va a usar para las acciones de pulsación modificadas de "
+"ventana"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nombre del área de trabajo"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Número de áreas de trabajo"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Número de áreas de trabajo. Debe ser mayor que cero, y tiene un máximo fijo "
+"para prevenir la inutilización del escritorio al pedir accidentalmente "
+"demasiadas áreas de trabajo."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Ejecuta un comando definido"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Establezca esto a «verdadero» para redimensionar con el botón derecho y "
+"mostrar un menú con el botón del medio mientras se mantiene pulsada la tecla "
+"dada en \"mouse_button_modifier\"; establézcalo a «falso» para hacer que se "
+"comporte de forma contraria."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Ajustar esta opción a «false» puede llevar a un comportamiento erróneo, de "
+"tal forma que se recomienda encarecidamente a los usuarios que no la cambien "
+"del valor «true». Muchas acciones (ej. pulsar en el área del cliente, mover o "
+"redimensionar la ventana) generalmente levantan la ventana como efecto "
+"colateral. Ajustar este valor a «false», algo que se desaconseja, desacoplará "
+"el levantado de las otras acciones del usuario e ignorará las peticiones de "
+"levantar que generen las aplicaciones. Consulte http://bugzilla.gnome.org/"
+"show_bug.cgi?id=445447#c6. Incluso cuando esta opción es «false», las "
+"ventanas aún se pueden levantar pulsando con el botón izquierdo del ratón "
+"sobre cualquier parte de la ventana, una pulsación normal en la decoración "
+"de la ventana, o por mensajes especiales de alguna aplicación, tal como las "
+"peticiones de activación de las miniaplicaciones de listas de tareas. "
+"Actualmente esta opción está desactivada en el modo pulsar para dar el foco. "
+"Note que la lista de formas de levantar ventanas cuando raise_on_click está "
+"a «false» no incluye peticiones programadas de las aplicaciones para levantar "
+"las ventanas; tales peticiones se ignoran independientemente de la razón de "
+"la petición. Si es un desarrollador de aplicaciones y tiene un usuario "
+"quejándose de que su aplicación no funciona con este ajuste desactivado, "
+"dígale que es _su_ problema (de él) por romper el gestor de ventanas y que "
+"deben cambiar la opción a «true» o vivir con el error que han solicitado."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Algunas aplicaciones no hacen caso de las especificaciones en formas que "
+"resultan en comportamiento incorrecto del gestor de ventanas. Esta opción "
+"pone a Marco en un modo rigurosamente correcto, lo que da un interfaz de "
+"usuario más consistente, supuesto que uno no necesita ejecutar ninguna "
+"aplicación que se comporte mal."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "La campana del sistema es audible"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Le dice a Marco cómo implementar la indicación visual de que ha sonado la "
+"campana del sistema o la campana de indicación de otra aplicación. "
+"Actualmente hay dos valores válidos, «fullscreen», que causa un parpadeo en "
+"blanco y negro en toda la pantalla y «frame_flash» que causa que la barra de "
+"títulos de la ventana de la aplicación que ha enviado la señal de campana "
+"parpadee. Si la aplicación que ha enviado la campana es desconocida (como es "
+"usualmente el caso para el «bip del sistema» predeterminado), la barra de "
+"títulos de la ventana actual que tenga el foco parpadeará."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Las claves /apps/marco/global_keybindings/run_command_N definen las "
+"combinaciones de teclas que corresponden a esos comandos. Al presionar la "
+"combinación de teclas para «run_command_N» se ejecutará el «command_N»."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"La clave /apps/marco/global_keybindings/run_command_screenshot define una "
+"combinación de teclas que hace que el comando especificado por esta "
+"configuración se invoque."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"La clave /apps/marco/global_keybindings/run_command_window_screenshot "
+"define una combinación de teclas que hace que el comando especificado por "
+"esta configuración se invoque."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"La combinación de teclas que ejecuta el comando numerado correspondiente en /"
+"apps/marco/keybinding_commands. El formato se ve como «&lt;Control&gt;a» o "
+"«&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es bastante liberal y permite "
+"tanto mayúsculas como minúsculas además de abreviaturas como por ejemplo «&lt;"
+"Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la cadena especial "
+"«disabled» entonces no habrá combinación de teclas para esa acción."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "El nombre de un área de trabajo."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "El comando de captura de pantalla"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"El tema determina la apariencia de los bordes de la ventana, el título y "
+"demás."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"El retardo antes de desplegar una ventana si «auto_rise» está configurado "
+"como verdadero. El retardo está especificado en milésimas de segundo."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"El modo de foco de la ventana indica cómo son activadas las ventanas. Tiene "
+"tres valores posibles; «click» significa que la ventana debe seleccionarse "
+"para obtener el foco, «sloppy» significa que ventanas obtienen el foco cuando "
+"el ratón entra en la ventana y «mouse» significa que la ventanas obtienen el "
+"foco cuando el ratón entra en la ventana y lo pierden cuando el ratón sale "
+"de la ventana."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "El comando de captura de una ventana"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opción determina los efectos de la pulsación doble en la barra de "
+"títulos. Las opciones válidas actualmente son «toggle_shade», que enrolla/"
+"desenrolla la ventana, «toggle_maximized» que maximiza/desmaximiza la "
+"ventana, «toggle_maximize_horizontally» y «toggle_maximize_vertically» que "
+"maximiza/desmaximiza la ventana sólo en esa dirección, «minimize» que "
+"minimiza la ventana, «shade» que enrolla la ventana hacia arriba, «menu» que "
+"muestra la ventana de menú, «lower» que pone la ventana detrás de todas las "
+"demás y «none» que no hará nada."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opción determina los efectos de la pulsación con el botón central en la "
+"barra de títulos. Las opciones válidas actualmente son «toggle_shade», que "
+"enrolla/desenrolla la ventana, «toggle_maximized» que maximiza/desmaximiza la "
+"ventana, «toggle_maximize_horizontally» y «toggle_maximize_vertically» que "
+"maximiza/desmaximiza la ventana sólo en esa dirección, «minimize» que "
+"minimiza la ventana, «shade» que enrolla la ventana hacia arriba, «menu» que "
+"muestra la ventana de menú, «lower» que pone la ventana detrás de todas las "
+"demás y «none» que no hará nada."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opción determina los efectos de la pulsación con el botón derecho en la "
+"barra de títulos. Las opciones válidas actualmente son «toggle_shade», que "
+"enrolla/desenrolla la ventana, «toggle_maximized» que maximiza/desmaximiza la "
+"ventana, «toggle_maximize_horizontally» y «toggle_maximize_vertically» que "
+"maximiza/desmaximiza la ventana sólo en esa dirección, «minimize» que "
+"minimiza la ventana, «shade» que enrolla la ventana hacia arriba, «menu» que "
+"muestra la ventana de menú, «lower» que pone la ventana detrás de todas las "
+"demás y «none» que no hará nada."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Esta opción proporciona control adicional sobre cómo las ventanas "
+"recientemente creadas obtienen foco. Tiene dos valores posibles: «smart» "
+"aplica el modo de foco normal del usuario, y «strict» hace que las ventanas "
+"iniciadas desde un terminal no se les dé el foco."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Activa una indicación visual cuando una aplicación o el sistema emite una "
+"«campanada» o un «bip» ; es muy útil para los ambientes ruidosos y para las "
+"personas con dificultades auditivas."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Usar tipografía estándar del sistema en los títulos de la ventana"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Tipo de campana visual"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Indica si elevar debe ser un efecto lateral de otras interacciones del "
+"usuario"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Indica si se debe redimensionar con el botón derecho"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Modo de foco de la ventana"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Tipografía del título de la ventana"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Uso: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Cerrar la ventana"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menú de la ventana"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimizar la ventana"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximizar la ventana"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restablecer la ventana"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Enrollar ventana"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Desenrollar ventana"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Mantener la ventana encima"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Quitar ventana de encima"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Siempre en el área de trabajo visible"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Poner la ventana sólo en un área de trabajo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Desma_ximizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Enro_llar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "De_senrollar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Mover"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Redimensionar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Mover la barra de título a la _pantalla"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Siempre _encima"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Siempre en el área de trabajo _visible"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Sólo en esta área de trabajo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Mover al área de trabajo de la _izquierda"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Mover al área de trabajo de la _derecha"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Mover al área de trabajo de _arriba"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Mover al área de trabajo de a_bajo"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Cerrar"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Área de trabajo %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Área de trabajo 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Área de trabajo %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Mover a _otra área de trabajo"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Mayús."
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hiper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "superior"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "inferior"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "izquierda"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "derecha"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "La geometría del marco no especifica la dimensión «%s»"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"La geometría del marco no especifica la dimensión «%s» para el borde «%s»"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "La proporción del botón %g no es razonable"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "La geometría del marco no especifica el tamaño de los botones"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Los degradados deben tener al menos dos colores"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"La especificación de color GTK debe tener el estado entre corchetes, "
+"ejemplo. gtk:fg[NORMAL] donde NORMAL es el estado ; no se ha podido "
+"interpretar «%s»"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"La especificación de color GTK debe tener un corchete cerrado después del "
+"estado, ejemplo. gtk:fg[NORMAL] donde NORMAL es el estado ; no se ha podido "
+"interpretar «%s»"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "No se entiende el estado «%s» en la especificación del color"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+"No se entiende el componente de color «%s» en la especificación del color"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"El formato de blend es «blend/bg_color/fg_color/alfa», «%s» no cumple con el "
+"formato"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "No se ha podido interpretar el valor alfa «%s» en el color mezclado"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "El valor alfa «%s» en el color mezclado no está entre 0.0 y 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"El formato de sombreado es «shade/base_color/factor», «%s» no coincide con el "
+"formato"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+"No se ha podido interpretar el factor de sombreado «%s» en el color del "
+"sombreado"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "El factor de sombreado «%s» en el color sombreado es negativo"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "No se ha podido interpretar el color «%s»"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+"La expresión de coordenadas contenía un carácter «%s» en cual no está "
+"permitido"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"La expresión de coordenadas contenía un número de coma flotante «%s» en cual "
+"no pudo ser analizado"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"La expresión de coordenadas contenía un entero «%s» que no pudo ser analizado"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"La expresión de coordenadas contenía un operador inválido al inicio de su "
+"texto: «%s»"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "La expresión de coordenadas estaba vacía o no fue entendida"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "La expresión de coordenadas resultó en un error de división por cero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"La expresión de coordenadas intentó usar un operador mod con un número de "
+"coma flotante"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"La expresión de coordenadas tiene un operador «%s» donde se esperaba un "
+"operando"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"La expresión de coordenadas tiene un operando donde se esperaba un operador"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"La expresión de coordenadas termina con una operador en vez de un operando"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"La expresión de coordenadas tiene el operador «%c» seguido del operador «%c» "
+"sin un operando entre ellos"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"La expresión de coordenadas tenía una variable o constante desconocida «%s»"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "El parser de la expresión de coordenadas desbordó su búfer."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"La expresión de coordenadas tenía un paréntesis cerrado sin un paréntesis "
+"abierto"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"La expresión de coordenadas tenía un paréntesis abierto sin un paréntesis "
+"cerrado"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "La expresión de coordenadas no parece tener ni operadores ni operandos"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "El tema contenía una expresión que ha resultado en un error: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> debe ser "
+"especificado para este estilo de marco"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Falta <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Ocurrió un error al cargar el tema «%s»: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "No se configuró <%s> para el tema «%s»"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"No hay un estilo de marco para el tipo de ventana «%s» en el tema «%s», añada "
+"un elemento <window type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Las constantes definidas por el usuario deben comenzar con una letra "
+"mayúscula; «%s» no lo hace"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "La constante «%s» ya ha sido definida"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "El atributo «%s» no está definido en el elemento <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Línea %d carácter %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "El atributo «%s» se ha repetido dos veces en el mismo elemento <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "El atributo «%s» es inválido en el elemento <%s> en este contexto"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "No se ha podido interpretar «%s» como un entero"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "No se comprenden los caracteres sobrantes «%s» en la cadena «%s»"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "El entero %ld debe ser positivo"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "El entero %ld es demasiado grande, el máximo actual es %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "No se ha podido interpretar «%s» como un número de coma flotante"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Los valores booleanos deben ser «true» o «false» no «%s»"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "El ángulo debe estar entre 0.0 y 360.0, fue %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"El valor de alfa debe estar entre 0.0 (invisible) y 1.0 (completamente "
+"opaco), fue %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Escala de título inválida «%s» (debe ser una de xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> nombre «%s» usado una segunda vez"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "El <%s> padre «%s» no ha sido definido"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "La <%s> geometría «%s» no ha sido definida"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> debe especificar o una geometría o un padre para tenga una geometría"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Debe especificar un fondo para un valor alfa para que tenga sentido"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Tipo «%s» desconocido en el elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set «%s» desconocido en el elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "El tipo de ventana «%s» ya ha sido asignado a un conjunto de estilo"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "El elemento <%s> no está permitido debajo de <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"No se puede especificar ambos «button_width»/«button_height» y «aspect ratio» "
+"para los botones"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "La distancia «%s» es desconocida"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "La proporción «%s» es desconocido"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "El borde «%s» es desconocido"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "No hay atributo «start_angle» o «from» en el elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "No hay atributo «extent_angle» o «to» en el elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "No se entendió el valor «%s» para el tipo de degradado"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "No se entendió en tipo de relleno «%s» para el elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "No se entendió estado «%s» para el elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "No se entendió enrollar «%s» para el elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "No se entendió la flecha «%s» para el elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "No se ha definido una <draw_ops> llamada «%s»"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Incluir el draw_ops «%s» aquí podría crear una referencia circular"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Posición desconocida «%s» para la pieza del marco"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "El estilo del marco ya tiene una pieza en la posición %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "No se ha definido ninguna <draw_ops> con el nombre «%s»"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Función desconocida «%s» para el botón"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "La función del botón «%s» no existe en esta versión (%d, necesita %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Estado desconocido «%s» para el botón"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "El estilo del marcos ya tiene un botón para la función %s estado %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "«%s» no es valor válido para el atributo foco"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "«%s» no es un valor válido para el atributo estado"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "No se ha definido ningún estilo llamado «%s»"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "«%s» no es un estado válido para el atributo resize"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"No debería tener un atributo «resize» en el elemento <%s> para los estados "
+"maximizado/enrollado"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"No debería tener un atributo «resize» en el elemento <%s> para los estados "
+"maximizados."
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"El estilo ya ha sido especificado para estado %s redimensionado %s foco %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "El estilo ya ha sido especificado para estado %s foco %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"No puede tener dos draw_ops para un elemento <piece> (el tema ha "
+"especificado un atributo draw_ops y también un elemento <draw_ops> o ha "
+"especificado los dos elementos)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"No puede tener dos draw_ops para un elemento <button> (el tema ha "
+"especificado un atributo draw_ops y también un elemento <draw_ops> o ha "
+"especificado los dos elementos)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"No puede tener dos draw_ops para un elemento <menu_icon> (el tema ha "
+"especificado un atributo draw_ops y también un elemento <draw_ops> o ha "
+"especificado los dos elementos)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "El elemento mas externo en un tema debe ser <marco_theme> no <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"El elemento <%s> no esta permitido dentro de un elemento name/author/date/"
+"description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "El elemento <%s> no esta permitido dentro de un elemento <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"El elemento <%s> no esta permitido dentro de un elemento distance/border/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+"El elemento <%s> no esta permitido dentro de un elemento de operación de "
+"dibujo"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "El elemento <%s> no esta permitido dentro del elemento <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "No se dio draw_ops para la pieza del cuadro"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "No se dio draw_ops para botón"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "No se permite texto dentro del elemento <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> especificado dos veces para este tema"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Falló al encontrar un archivo válido para el tema%s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "El archivo de tema %s no contiene un elemento raíz <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Ventanas"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Ventanas/tirador"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Ventanas/_Diálogo"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Ventanas/Diálogo _modal"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "Ventanas/_Utilidades"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Ventanas/_Pantalla de inicio"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Ventanas/Empotrable _superior"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "Ventanas/Empotrable _inferior"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Ventanas/Empotrable _izquierdo"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Ventanas/Empotrable de_recho"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Ventanas/_Todos los empotrables"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Ventanas/_Escritorio"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Esto es un mensaje de ejemplo en un diálogo de ejemplo"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Elemento de menú de pega %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Ventana con sólo borde"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Barra"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Ventana de aplicación normal"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Caja de diálogo"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Caja de diálogo modal"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta de utilidades"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menú apagado"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Borde"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test de distribución de botones %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisegundos para dibujar un marco de ventana"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Uso: marco-theme-viewer [NOMBRETEMA]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Ocurrió un error al cargar el tema:«%s»\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Se cargó el tema «%s» en %g segundos\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Tipografía de título normal"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Tipografía de título pequeña"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Tipografía de título grande"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Distribución de botones"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Banco de pruebas"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "El título de la ventana va aquí"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Dibujó %d marcos en %g segundos del lado del cliente (%g milisegundos por "
+"marco) y %g segundos de tiempo estándar incluyendo recursos del servidor X (%"
+"g milisegundos por marco)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"prueba de expresión de la posición devolvió TRUE pero estableció un error"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"prueba de expresión de la posición devolvió FASE pero no estableció un error"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Se esperaba un error, pero no se dio ninguno"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Se esperaba el error %d pero se dio el %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "No se esperaba un error pero se devolvió uno: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "el valor x era %d, se esperaba %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "el valor y era %d, se esperaba %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d expresiones de coordenadas interpretadas en %g segundos (%g segundos de "
+"media)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Abrir otra de estas ventanas"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Esto es un botón de demostración con un icono de apertura"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Esto es un botón de demostración con un icono de salida"
+
+#~ msgid ""
+#~ "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#~ "\n"
+#~ "<i>You may choose to wait a short while for it to continue or force the "
+#~ "application to quit entirely.</i>"
+#~ msgstr ""
+#~ "<big><b><tt>%s</tt> no está respondiendo.</b></big>\n"
+#~ "\n"
+#~ "<i>Puede elegir esperar un momento para que continúe o forzar a la "
+#~ "aplicación a que termine.</i>"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Ocurrió un error al lanzar marco-dialog para advertir acerca de las "
+#~ "aplicaciones que no soportan gestión de sesión: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Título"
+
+#~ msgid "Class"
+#~ msgstr "Clase"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Ha ocurrido un error ejecutando «%s»:\n"
+#~ "%s."
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr ""
+#~ "Ocurrió un error al interpretar el mensaje «%s» desde el proceso de "
+#~ "diálogo\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr ""
+#~ "Ocurrió un error leyendo desde el proceso de diálogo de pantalla: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Ocurrió un error al lanzar marco-dialog para preguntar acerca de matar "
+#~ "una aplicación: %s\n"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> especificado dos veces para este tema"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> especificado dos veces para este tema"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> especificada dos veces para este tema"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> especificada dos veces para este tema"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Desmaximizar la ventana"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Desmaximizar la ventana"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Muchas acciones (p.ej. pulsar en el área del cliente, mover o "
+#~ "redimensionar la ventana) normalmente elevan la ventana como un efecto "
+#~ "lateral. Al establecer esta opción como «false», lo que no se recomienda, "
+#~ "desligará la acción de elevar la ventana de otras acciones del usuario e "
+#~ "ignorará las peticiones de elevación generadas por las aplicaciones. "
+#~ "Consulte http://bugzilla.gnome.org/show_bug.cgi?id=445447#6."
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Ocurrió un error al lanzar marco-dialog para imprimir un error acerca "
+#~ "de un comando: %s\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Atributo desconocido %s en el elemento <marco_session>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Atributo desconocido %s en el elemento <maximized>"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Atributo desconocido %s en el elemento <geometry>"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo por encima de la "
+#~ "actual. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;"
+#~ "F1». El intérprete es bastante liberal y permite tanto mayúsculas como "
+#~ "minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;"
+#~ "Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo por debajo de la "
+#~ "actual. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;"
+#~ "F1». El intérprete es bastante liberal y permite tanto mayúsculas como "
+#~ "minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;"
+#~ "Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo hacia la izquierda "
+#~ "de la actual. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo hacia la derecha "
+#~ "de la actual. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 1. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es "
+#~ "bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 10. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es "
+#~ "bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 11. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es "
+#~ "bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 12. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es "
+#~ "bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 2. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es "
+#~ "bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 3. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es "
+#~ "bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 4. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete "
+#~ "es bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 5. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete "
+#~ "es bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 6. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete "
+#~ "es bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 7. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete "
+#~ "es bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 8. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete "
+#~ "es bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que cambia al área de trabajo 9. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete "
+#~ "es bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usado para activar el menú de la ventana. El "
+#~ "formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El "
+#~ "intérprete es bastante liberal y permite tanto mayúsculas como "
+#~ "minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;"
+#~ "Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para activar el «modo mover» y poder mover "
+#~ "una ventana utilizando el teclado. El formato se ve como «&lt;Control&gt;"
+#~ "a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es bastante liberal y "
+#~ "permite tanto mayúsculas como minúsculas además de abreviaturas como por "
+#~ "ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la "
+#~ "cadena especial «disabled» entonces no habrá combinación de teclas para "
+#~ "esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para activar el «modo redimensionar» y "
+#~ "poder redimensionar una ventana utilizando el teclado. El formato se ve "
+#~ "como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El analizador es "
+#~ "bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para ocultar todas las ventanas y darle el "
+#~ "foco al fondo del escritorio. El formato se ve como «&lt;Control&gt;a» o "
+#~ "«&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es bastante liberal y permite "
+#~ "tanto mayúsculas como minúsculas además de abreviaturas como por ejemplo "
+#~ "«&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la cadena "
+#~ "especial «disabled» entonces no habrá combinación de teclas para esta "
+#~ "acción."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para maximizar una ventana. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El analizador es "
+#~ "bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para minimizar una ventana. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El analizador es "
+#~ "bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana un área de trabajo "
+#~ "hacia abajo. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana un área de trabajo "
+#~ "hacia la izquierda. El formato se ve como «&lt;Control&gt;a» o «&lt;"
+#~ "Mayús&gt;&lt;Alt&gt;F1». El intérprete es bastante liberal y permite "
+#~ "tanto mayúsculas como minúsculas además de abreviaturas como por ejemplo "
+#~ "«&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la cadena "
+#~ "especial «disabled» entonces no habrá combinación de teclas para esta "
+#~ "acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana un área de trabajo "
+#~ "hacia la derecha. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;"
+#~ "&lt;Alt&gt;F1». El intérprete es bastante liberal y permite tanto "
+#~ "mayúsculas como minúsculas además de abreviaturas como por ejemplo «&lt;"
+#~ "Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la cadena especial "
+#~ "«disabled» entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana un área de trabajo "
+#~ "hacia arriba. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 1. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 10. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 11. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 12. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "»&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 2. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "»&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 3. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 4. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 5. El formato se ve como «&lt;Control&gt;a» o »&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "»&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 6. El formato se ve como «&lt;Control&gt;a» o »&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "»&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 7. El formato se ve como «&lt;Control&gt;a» o »&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "»&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 8. El formato se ve como «&lt;Control&gt;a» o »&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "»&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover una ventana hacia el espacio de "
+#~ "trabajo 9. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "»&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover el foco entre los paneles y el "
+#~ "escritorio usando una ventana emergente. El formato se ve como »&lt;"
+#~ "Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El analizador es bastante "
+#~ "liberal y permite tanto mayúsculas como minúsculas además de abreviaturas "
+#~ "como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción "
+#~ "con la cadena especial «disabled» entonces no habrá combinación de teclas "
+#~ "para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover el foco entre los paneles y el "
+#~ "escritorio, sin una ventana emergente. El formato se ve como «&lt;"
+#~ "Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es bastante "
+#~ "liberal y permite tanto mayúsculas como minúsculas además de abreviaturas "
+#~ "como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción "
+#~ "con la cadena especial «disabled» entonces no habrá combinación de teclas "
+#~ "para esa acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para retroceder el foco entre las ventanas "
+#~ "de una aplicación sin una ventana emergente. Manteniendo pulsada la tecla "
+#~ "«Mayús.» junto con esta combinación hace que la dirección vaya hacia "
+#~ "adelante de nuevo. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;"
+#~ "&lt;Alt&gt;F1». El analizador es bastante liberal y permite tanto "
+#~ "mayúsculas como minúsculas además de abreviaturas como por ejemplo «&lt;"
+#~ "Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la cadena especial "
+#~ "«disabled» entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para retroceder el foco entre las ventanas "
+#~ "de una aplicación, usando una ventana emergente. Manteniendo pulsada la "
+#~ "tecla «Mayús.» junto con esta combinación hace que la dirección vaya hacia "
+#~ "adelante de nuevo. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;"
+#~ "&lt;Alt&gt;F1». El intérprete es bastante liberal y permite tanto "
+#~ "mayúsculas como minúsculas además de abreviaturas como por ejemplo «&lt;"
+#~ "Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la cadena especial "
+#~ "«disabled» entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover el foco entre ventanas sin una "
+#~ "ventana emergente. Manteniendo pulsada la tecla «Mayús.» junto con esta "
+#~ "combinación hace que la dirección vaya hacia adelante de nuevo. El "
+#~ "formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El "
+#~ "analizador es bastante liberal y permite tanto mayúsculas como minúsculas "
+#~ "además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si "
+#~ "configura esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover el foco entre ventanas, usando "
+#~ "una ventana emergente. Manteniendo pulsada la tecla «Mayús.» junto con "
+#~ "esta combinación hace que la dirección vaya hacia adelante de nuevo. El "
+#~ "formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El "
+#~ "intérprete es bastante liberal y permite tanto mayúsculas como "
+#~ "minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;"
+#~ "Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover el foco entre los paneles y el "
+#~ "escritorio usando una ventana emergente El formato se ve como «&lt;"
+#~ "Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El analizador es bastante "
+#~ "liberal y permite tanto mayúsculas como minúsculas además de abreviaturas "
+#~ "como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción "
+#~ "con la cadena especial «disabled» entonces no habrá combinación de teclas "
+#~ "para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover el foco entre los paneles y el "
+#~ "escritorio, sin una ventana emergente. El formato se ve como «&lt;"
+#~ "Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es bastante "
+#~ "liberal y permite tanto mayúsculas como minúsculas además de abreviaturas "
+#~ "como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción "
+#~ "con la cadena especial «disabled» entonces no habrá combinación de teclas "
+#~ "para esa acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover el foco entre las ventanas de "
+#~ "una aplicación sin una ventana emergente. Manteniendo pulsada la tecla "
+#~ "«Mayús.» mientras se usa esta combinación invierte la dirección del "
+#~ "movimiento. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El analizador es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover el foco entre las ventanas de "
+#~ "una aplicación, usando una ventana emergente. (Tradicionalmente &lt;"
+#~ "Alt&gt;F6). El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover el foco entre ventanas sin una "
+#~ "ventana emergente. (Tradicionalmente &lt;Alt&gt;Escape). Manteniendo "
+#~ "pulsada la tecla «Mayús.» mientras se usa esta combinación invierte la "
+#~ "dirección del movimiento. El formato se ve como «&lt;Control&gt;a» o «&lt;"
+#~ "Mayús&gt;&lt;Alt&gt;F1». El analizador es bastante liberal y permite "
+#~ "tanto mayúsculas como minúsculas además de abreviaturas como por ejemplo "
+#~ "«&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la cadena "
+#~ "especial «disabled» entonces no habrá combinación de teclas para esta "
+#~ "acción."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para mover el foco entre ventanas, usando "
+#~ "una ventana emergente. (Tradicionalmente &lt;Alt&gt;Tab). El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es "
+#~ "bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para activar siempre encima. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El analizador es "
+#~ "bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para activar el modo de pantalla completa. "
+#~ "El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El "
+#~ "analizador es bastante liberal y permite tanto mayúsculas como minúsculas "
+#~ "además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si "
+#~ "configura esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para maximizar la ventana. El formato se "
+#~ "ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete "
+#~ "es bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para enrollar o desenrollar la ventana. El "
+#~ "formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El "
+#~ "intérprete es bastante liberal y permite tanto mayúsculas como minúsculas "
+#~ "además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y »&lt;Ctrl&gt;». Si "
+#~ "configura esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para activar una ventana en todos los "
+#~ "espacios de trabajo o sólo en uno. El formato se ve como «&lt;Control&gt;"
+#~ "a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es bastante liberal y "
+#~ "permite tanto mayúsculas como minúsculas además de abreviaturas como por "
+#~ "ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la "
+#~ "cadena especial «disabled» entonces no habrá combinación de teclas para "
+#~ "esta acción."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas usada para desmaximizar una ventana. El formato "
+#~ "se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El "
+#~ "intérprete es bastante liberal y permite tanto mayúsculas como "
+#~ "minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;"
+#~ "Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas que muestra el diálogo del panel «Ejecutar "
+#~ "aplicación». El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "La combinación de teclas que muestra el menú principal del panel. El "
+#~ "formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El "
+#~ "intérprete es bastante liberal y permite tanto mayúsculas como "
+#~ "minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;"
+#~ "Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas que invoca la utilidad del panel de captura de "
+#~ "pantalla para obtener una captura de pantalla de una ventana. El formato "
+#~ "se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El "
+#~ "intérprete es bastante liberal y permite tanto mayúsculas como "
+#~ "minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;"
+#~ "Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "La combinación de teclas que invoca a la utilidad de captura de pantalla "
+#~ "del panel. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "La combinación de teclas que muestra el menú principal del panel. El "
+#~ "formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El "
+#~ "intérprete es bastante liberal y permite tanto mayúsculas como "
+#~ "minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;"
+#~ "Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas cambia dependiendo de si una ventana está "
+#~ "encima o debajo de otras ventanas. Si la ventana está tapada por otra, "
+#~ "levanta la ventana por encima de todas ellas y si la ventana ya está "
+#~ "completamente visible, coloca la ventana debajo de todas las otras "
+#~ "ventanas. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El intérprete es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "»&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas coloca una ventana detrás de otras. El formato "
+#~ "se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El analizador "
+#~ "es bastante liberal y permite tanto mayúsculas como minúsculas además de "
+#~ "abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura "
+#~ "esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas coloca una ventana al norte (arriba) de la "
+#~ "pantalla. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El analizador es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas coloca una ventana al este (derecha) de la "
+#~ "pantalla. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El analizador es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas mueve una ventana a la esquina noroeste "
+#~ "(arriba a la derecha) de la pantalla. El formato se ve como «&lt;"
+#~ "Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El analizador es bastante "
+#~ "liberal y permite tanto mayúsculas como minúsculas además de abreviaturas "
+#~ "como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción "
+#~ "con la cadena especial «disabled» entonces no habrá combinación de teclas "
+#~ "para esta acción."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas mueve una ventana a la esquina noroeste "
+#~ "(arriba a la izquierda) de la pantalla. El formato se ve como «&lt;"
+#~ "Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El analizador es bastante "
+#~ "liberal y permite tanto mayúsculas como minúsculas además de abreviaturas "
+#~ "como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción "
+#~ "con la cadena especial «disabled» entonces no habrá combinación de teclas "
+#~ "para esta acción."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas mueve una ventana al sur (abajo) de la "
+#~ "pantalla. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El analizador es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas mueve una ventana a la esquina sureste (abajo "
+#~ "a la derecha) de la pantalla. El formato se ve como «&lt;Control&gt;a» o "
+#~ "«&lt;Mayús&gt;&lt;Alt&gt;F1». El analizador es bastante liberal y permite "
+#~ "tanto mayúsculas como minúsculas además de abreviaturas como por ejemplo "
+#~ "«&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la cadena "
+#~ "especial «disabled» entonces no habrá combinación de teclas para esta "
+#~ "acción."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas mueve una ventana a la esquina suroeste (abajo "
+#~ "a la izquierda) de la pantalla. El formato se ve como «&lt;Control&gt;a» o "
+#~ "«&lt;Mayús&gt;&lt;Alt&gt;F1». El analizador es bastante liberal y permite "
+#~ "tanto mayúsculas como minúsculas además de abreviaturas como por ejemplo "
+#~ "«&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la cadena "
+#~ "especial «disabled» entonces no habrá combinación de teclas para esta "
+#~ "acción."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas mueve una ventana al lado oeste (izquierdo) de "
+#~ "la pantalla. El formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;"
+#~ "Alt&gt;F1». El analizador es bastante liberal y permite tanto mayúsculas "
+#~ "como minúsculas además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y "
+#~ "«&lt;Ctrl&gt;». Si configura esta opción con la cadena especial «disabled» "
+#~ "entonces no habrá combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas eleva una ventana por encima de otras. El "
+#~ "formato se ve como «&lt;Control&gt;a» o «&lt;Mayús&gt;&lt;Alt&gt;F1». El "
+#~ "analizador es bastante liberal y permite tanto mayúsculas como minúsculas "
+#~ "además de abreviaturas como por ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si "
+#~ "configura esta opción con la cadena especial «disabled» entonces no habrá "
+#~ "combinación de teclas para esta acción."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas redimensiona una ventana para que rellene todo "
+#~ "el espacio horizontal disponible. El formato se ve como «&lt;Control&gt;a» "
+#~ "o «&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es bastante liberal y "
+#~ "permite tanto mayúsculas como minúsculas además de abreviaturas como por "
+#~ "ejemplo «&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la "
+#~ "cadena especial «disabled» entonces no habrá combinación de teclas para "
+#~ "esta acción."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Esta combinación de teclas redimensiona una ventana para que rellene todo "
+#~ "el espacio vertical disponible. El formato se ve como «&lt;Control&gt;a» o "
+#~ "»&lt;Mayús&gt;&lt;Alt&gt;F1». El intérprete es bastante liberal y permite "
+#~ "tanto mayúsculas como minúsculas además de abreviaturas como por ejemplo "
+#~ "»&lt;Ctl&gt;» y «&lt;Ctrl&gt;». Si configura esta opción con la cadena "
+#~ "especial «disabled» entonces no habrá combinación de teclas para esta "
+#~ "acción."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Cambiar el estado de siempre encima"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "No hay atributo «%s» en el elemento <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "El tema ya tiene un icono a prueba de fallos"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "El tema ya tiene un mini_icono a prueba de fallos"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "No hay atributo \"name\" en el elemento <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "No hay atributo \"value\" en el elemento <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "No hay atributo \"top\" en el elemento <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "No hay atributo \"bottom\" en el elemento <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "No hay atributo \"left\" en el elemento <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "No hay atributo \"right\" en el elemento <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "No hay atributo «color» en el elemento <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "No hay atributo «x1» en el elemento <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "No hay atributo «y1» en el elemento <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "No hay atributo «x2» en el elemento <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "No hay atributo «y2» en el elemento <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "No hay atributo «y» en el elemento <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "No hay atributo «width» en el elemento <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "No hay atributo «height» en el elemento <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "No hay atributo «start_angle» en el elemento <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "No hay atributo «extent_angle» en el elemento <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "No hay atributo «alfa» en el elemento <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "No hay atributo «type» en el elemento <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "No hay atributo «filename» en el elemento <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "No hay atributo «state» en el elemento <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "No hay atributo «shadow» en el elemento <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "No hay atributo «arrow» en el elemento <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "No se definió el atributo «value» en el elemento <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "No se definió el atributo «position» en el elemento <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "No se definió el atributo «function» en el elemento <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "No se definió el atributo «state» en el elemento <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "No se definió el atributo «focus» en el elemento <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "No se definió el atributo «style» en el elemento <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "No hay un atributo «resize» en el elemento <%s>"
diff --git a/po/et.po b/po/et.po
new file mode 100644
index 00000000..66af9169
--- /dev/null
+++ b/po/et.po
@@ -0,0 +1,1942 @@
+# Marco eesti tõlge.
+# Estonian translation of Marco
+#
+# Copyright (C) 2004-2005 The Free Software Foundation
+# Copyright (C) 2006-2010 The MATE Project.
+# This file is distributed under the same license as the marco package.
+#
+# Tõivo Leedjärv <toivo linux ee>, 2004.
+# Ivar Smolin <okul linux ee>, 2005, 2006, 2009, 2010.
+# Mattias Põldaru <mahfiaz gmail com>, 2008-2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco master\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-01-21 21:34+0000\n"
+"PO-Revision-Date: 2010-02-25 17:24+0300\n"
+"Last-Translator: Mattias Põldaru <mahfiaz gmail com>\n"
+"Language-Team: Estonian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+msgid "Desktop"
+msgstr "Töölaud"
+
+msgid "Window Management"
+msgstr "Akende haldamine"
+
+msgid "Bell event"
+msgstr "Piiksu sündmus"
+
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Tundmatu aknateabe päring: %d"
+
+#. Translators: %s is a window title
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> ei vasta."
+
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "Sa võid natukene selle järel oodata või sundida rakendust lõpetama."
+
+msgid "_Wait"
+msgstr "_Oota"
+
+msgid "_Force Quit"
+msgstr "_Välju jõuga"
+
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Tõrge hostimine hankimisel: %s\n"
+
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Puuduv laiendus %s on vajalik komposiitmontaaži jaoks"
+
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Tõrge X Window System'i kuva '%s' avamisel\n"
+
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Kadus ühendus kuvaga '%s';\n"
+"kõige tõenäolisem, et Xserver suleti või sa kõrvaldasid\n"
+"aknahalduri.\n"
+
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Saatuslik SV viga %d (%s) kuval '%s'.\n"
+
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Mõni teine programm juba kasutab klahvi %s koos muuteklahvidega %x "
+"kiirklahvina\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> käivitamisel esines viga:\n"
+"\n"
+"%s"
+
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Käsku %d pole defineeritud.\n"
+
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Terminalikäsku pole defineeritud.\n"
+
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Autoriõigused (C) 2001-%s Havoc Pennington, Red Hat, Inc., ja teised\n"
+"See programm on vaba tarkvara; kopeerimistingimuste kohta vaata\n"
+"programmi lähteteksti. Sellel programmil pole MINGISUGUST GARANTIID;\n"
+"isegi MITTE KOMMERTSGARANTIID EGA GARANTIID SOBIVUSELE\n"
+"TEATUD KINDLAKS EESMÄRGIKS.\n"
+
+msgid "Disable connection to session manager"
+msgstr "Seansihalduriga ühendumise keelamine"
+
+msgid "Replace the running window manager with Marco"
+msgstr "Käivitatud aknahalduri asendamine Marco'ga"
+
+msgid "Specify session management ID"
+msgstr "Seansihalduse ID määramine"
+
+msgid "X Display to use"
+msgstr "X'i kuva, mida kasutada"
+
+msgid "Initialize session from savefile"
+msgstr "Seansi lähtestamine salvestatud failist"
+
+msgid "Print version"
+msgstr "Versiooni printimine"
+
+msgid "Make X calls synchronous"
+msgstr "Tee Xi väljakutsedkutsed sünkroonseks"
+
+msgid "Turn compositing on"
+msgstr "Komposiitmontaaž lubatud"
+
+msgid "Turn compositing off"
+msgstr "Komposiitmontaaž keelatud"
+
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Ilma dekoratsioonideta ja maksimeeritud aknaid ei muudeta täisekraaniakendeks"
+
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Tõrge teemadekataloogi skannimisel: %s\n"
+
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Teemat ei leitud! Veendu, et %s on olemas ja sisaldab harilikke teemasid.\n"
+
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Tõrge taaskäivitamisel: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf võtme '%s' väärtus on vigane\n"
+
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d min on salvesatud MateConf võtmes %s on väljaspool piirkonda %d - %d\n"
+
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf-i võti \"%s\" on määratud vigase tüübiga\n"
+
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Ümbernurga parandused vigastele rakendustele on keelatud. Mõned rakendused "
+"ei pruugi õigesti käituda.\n"
+
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Fondi kirjeldust \"%s\" MateConf võtmest %s ei saa töödelda\n"
+
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Seadistuste andmebaasist leitud väärtus \"%s\" ei sobi hiireklahvi "
+"modifikaatoriks\n"
+
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Viga töölaudade arvuks %d määramisel: %s\n"
+
+#, c-format
+msgid "Workspace %d"
+msgstr "Tööala %d"
+
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Seadistuste andmebaasist leitud väärtus \"%s\" ei sobi kiirklahvile \"%s\"\n"
+
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Viga tööalale %d nime \"%s\" määramisel: %s\n"
+
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Viga komposiitmonteerija oleku määramisel: %s\n"
+
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Ekraan %d kuval '%s' on vigane\n"
+
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Ekraan %d kuval '%s' on juba aknahalduri poolt hallatav. Olemasoleva "
+"aknahalduri asendamiseks proovi --replace võtit \n"
+
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Aknahalduri valikut ei saa hankida ekraani %d kuval \"%s\"\n"
+
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Ekraan %d kuval '%s' on juba aknahalduri poolt hallatav\n"
+
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Ekraani %d kuval \"%s\" ei saa vabastada\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Vorming on kujul \"<Control>a\" või \"<Shift><Alt>F1\".\n"
+"\n"
+"Parser on vormingu suhtes üpris leplik ja lubab läbisegi nii suur- kui "
+"väiketähti, samuti ka lühendeid nagu \"<Ctl>\" ja \"<Ctrl>\". Kui väärtuseks "
+"määrata eristring \"disabled\", siis on selle toimingu jaoks "
+"klahvikombinatsioon keelatud."
+
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Vorming on kujul \"<Control>a\" või \"<Shift><Alt>F1\".\n"
+"\n"
+"Parser on vormingu suhtes üpris leplik ja lubab läbisegi nii suur- kui "
+"väiketähti, samuti ka lühendeid nagu \"<Ctl>\" ja \"<Ctrl>\". Kui väärtuseks "
+"määrata eristring \"disabled\", siis on selle toimingu jaoks "
+"klahvikombinatsioon keelatud.\n"
+"\n"
+"Selle klahviseose võib ümber pöörata hoides all \"shift\" klahvi; seetõttu "
+"ei saa \"shift\" klahvi seoses kasutada."
+
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Kataloogi '%s' pole võimalik luua: %s\n"
+
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Seansifaili '%s' pole võimalik kirjutamiseks avada: %s\n"
+
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Viga seansifaili '%s' kirjutamisel: %s\n"
+
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Viga seansifaili '%s' sulgemisel: %s\n"
+
+#. oh, just give up
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Viga salvestatud seansifaili '%s' lugemisel: %s\n"
+
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Viga salvestatud seansifaili analüüsimisel: %s\n"
+
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "Nähti <marco_session> atribuuti, aga sessiooni ID on juba määratud"
+
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Tundmatu atribuut %s <%s> elemendil"
+
+#, c-format
+msgid "nested <window> tag"
+msgstr "pesastatud <window>"
+
+#, c-format
+msgid "Unknown element %s"
+msgstr "Tundmatu element %s"
+
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Need aknad ei toeta &quot;praeguse paigutuse salvestamist&quot; ja tuleb "
+"järgmisel sisselogimisel käsitsi taaskäivitada."
+
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Tõrge silumislogi avamisel: %s\n"
+
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Tõrge logifaili %s avamisel funktsiooniga fdopen(): %s\n"
+
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Avati logifail %s\n"
+
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco kompileeriti ilma jutukuse režiimi toeta\n"
+
+msgid "Window manager: "
+msgstr "Aknahaldur: "
+
+msgid "Bug in window manager: "
+msgstr "Viga aknahalduris: "
+
+msgid "Window manager warning: "
+msgstr "Aknahalduri hoiatus: "
+
+msgid "Window manager error: "
+msgstr "Aknahalduri viga: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Aken %s määrab SM_CLIENT_ID endale, selle asemel, et määrata see "
+"WM_CLIENT_LEADER aknale, nagu seda kirjeldab ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Aken %s määrab MWM vihje, näidates, et see pole muudetava suurusega, aga "
+"määrab vähimaks suuruseks %d x %d ja suurimaks suuruseks %d x %d; sel pole "
+"tähendust.\n"
+
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Rakendus määras võltsitud _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (masinas %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (juurkasutajana)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (kasutajana %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (teise kasutajana)"
+
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Vigane WM_TRANSIENT_FOR aknale 0x%lx määratud %s jaoks.\n"
+
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Aknal 0x%lx on omadus %s\n"
+"mis oleks pidanud olema %s tüüpi %d vormingus,\n"
+"aga tegelikult oli %s tüüpi %d vormingus n_items %d.\n"
+"See on kõige tõenäolisemalt rakenduse viga, mitte aknahalduri viga.\n"
+"Aknal on title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Omadus %s aknal 0x%lx sisaldab vigast UTF-8\n"
+
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "Omadus %s aknal 0x%lx sisaldab vigast UTF-8 %d kirjele nimekirjas\n"
+
+msgid "Switch to workspace 1"
+msgstr "Lülitumine 1. tööalale"
+
+msgid "Switch to workspace 2"
+msgstr "Lülitumine 2. tööalale"
+
+msgid "Switch to workspace 3"
+msgstr "Lülitumine 3. tööalale"
+
+msgid "Switch to workspace 4"
+msgstr "Lülitumine 4. tööalale"
+
+msgid "Switch to workspace 5"
+msgstr "Lülitumine 5. tööalale"
+
+msgid "Switch to workspace 6"
+msgstr "Lülitumine 6. tööalale"
+
+msgid "Switch to workspace 7"
+msgstr "Lülitumine 7. tööalale"
+
+msgid "Switch to workspace 8"
+msgstr "Lülitumine 8. tööalale"
+
+msgid "Switch to workspace 9"
+msgstr "Lülitumine 9. tööalale"
+
+msgid "Switch to workspace 10"
+msgstr "Lülitumine 10. tööalale"
+
+msgid "Switch to workspace 11"
+msgstr "Lülitumine 11. tööalale"
+
+msgid "Switch to workspace 12"
+msgstr "Lülitumine 12. tööalale"
+
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Lülitumine sellest tööalast vasakul olevale tööalale"
+
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Lülitumine sellest tööalast paremal olevale tööalale"
+
+msgid "Switch to workspace above the current workspace"
+msgstr "Lülitumine selle tööala kohal olevale tööalale"
+
+msgid "Switch to workspace below the current workspace"
+msgstr "Lülitumine selle tööala all olevale tööalale"
+
+msgid "Move between windows of an application, using a popup window"
+msgstr "Rakenduse akende vahel liikumine, hüpikaknaga"
+
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Rakenduse akende vahel tagasisuunas liikumine, hüpikaknaga"
+
+msgid "Move between windows, using a popup window"
+msgstr "Akende vahel liikumine, hüpikaknaga"
+
+msgid "Move backward between windows, using a popup window"
+msgstr "Akende vahel tagasisuunas liikumine, hüpikaknaga"
+
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Paneelide ja töölaua vahel liikumine, hüpikaknaga"
+
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Paneelide ja töölaua vahel tagasisuunas liikumine, hüpikaknaga"
+
+msgid "Move between windows of an application immediately"
+msgstr "Rakenduse akende vahel kohenene liikumine"
+
+msgid "Move backward between windows of an application immediately"
+msgstr "Rakenduse akende vahel kohenene tagasisuunas liikumine"
+
+msgid "Move between windows immediately"
+msgstr "Akende vahel kohenene liikumine"
+
+msgid "Move backward between windows immediately"
+msgstr "Akende vahel kohenene tagasisuunas liikumine"
+
+msgid "Move between panels and the desktop immediately"
+msgstr "Paneeli ja töölaua vahel kohenene liikumine"
+
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Paneeli ja töölaua vahel kohenene tagasisuunas liikumine"
+
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Tavaliste akende peitmine ja töölaua fokuseerimine"
+
+msgid "Show the panel's main menu"
+msgstr "Paneeli peamenüü näitamine"
+
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Paneeli dialoogi \"Rakenduse käivitamine\" näitamine"
+
+msgid "Take a screenshot"
+msgstr "Kuvatõmmise võtmine"
+
+msgid "Take a screenshot of a window"
+msgstr "Kuvatõmmise võtmine aknast"
+
+msgid "Run a terminal"
+msgstr "Terminali käivitamine"
+
+msgid "Activate the window menu"
+msgstr "Aknamenüü aktiveerimine"
+
+msgid "Toggle fullscreen mode"
+msgstr "Täisekraanivaate sisse- ja väljalülitamine"
+
+msgid "Toggle maximization state"
+msgstr "Maksimeeritud oleku sisse- ja väljalülitamine"
+
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Alati kõige pealmiseks olemise sisse- ja väljalülitamine"
+
+msgid "Maximize window"
+msgstr "Akna maksimeerimine"
+
+msgid "Restore window"
+msgstr "Akna suuruse taastamine"
+
+msgid "Toggle shaded state"
+msgstr "Varjutatud oleku sisse- ja väljalülitamine"
+
+msgid "Minimize window"
+msgstr "Akna minimeerimine"
+
+msgid "Close window"
+msgstr "Akna sulgemine"
+
+msgid "Move window"
+msgstr "Akna liigutamine"
+
+msgid "Resize window"
+msgstr "Akna suuruse muutmine"
+
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Akna määramine ühele või kõigile tööaladele"
+
+msgid "Move window to workspace 1"
+msgstr "Akna tõstmine 1. tööalale"
+
+msgid "Move window to workspace 2"
+msgstr "Akna tõstmine 2. tööalale"
+
+msgid "Move window to workspace 3"
+msgstr "Akna tõstmine 3. tööalale"
+
+msgid "Move window to workspace 4"
+msgstr "Akna tõstmine 4. tööalale"
+
+msgid "Move window to workspace 5"
+msgstr "Akna tõstmine 5. tööalale"
+
+msgid "Move window to workspace 6"
+msgstr "Akna tõstmine 6. tööalale"
+
+msgid "Move window to workspace 7"
+msgstr "Akna tõstmine 7. tööalale"
+
+msgid "Move window to workspace 8"
+msgstr "Akna tõstmine 8. tööalale"
+
+msgid "Move window to workspace 9"
+msgstr "Akna tõstmine 9. tööalale"
+
+msgid "Move window to workspace 10"
+msgstr "Akna tõstmine 10. tööalale"
+
+msgid "Move window to workspace 11"
+msgstr "Akna tõstmine 11. tööalale"
+
+msgid "Move window to workspace 12"
+msgstr "Akna tõstmine 12. tööalale"
+
+msgid "Move window one workspace to the left"
+msgstr "Akna tõstmine ühe tööala võrra vasakule"
+
+msgid "Move window one workspace to the right"
+msgstr "Akna tõstmine ühe tööala võrra paremale"
+
+msgid "Move window one workspace up"
+msgstr "Akna tõstmine ühe tööala võrra ülespoole"
+
+msgid "Move window one workspace down"
+msgstr "Akna tõstmine ühe tööala võrra allapoole"
+
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Akna tõstmine, kui seda katab teine aken, või taha viimine"
+
+msgid "Raise window above other windows"
+msgstr "Akna tõstmine teiste akende kohale"
+
+msgid "Lower window below other windows"
+msgstr "Akna viimine teiste taha"
+
+msgid "Maximize window vertically"
+msgstr "Akna maksimeerimine vertikaalselt"
+
+msgid "Maximize window horizontally"
+msgstr "Akna maksimeerimine horisontaalselt"
+
+msgid "Move window to north-west (top left) corner"
+msgstr "Akna tõstmine ekraani loodenurka (ülemisse vasakusse)"
+
+msgid "Move window to north-east (top right) corner"
+msgstr "Akna tõstmine ekraani kirdenurka (ülemisse paremasse)"
+
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Akna tõstmine ekraani edelanurka (alumisse vasakusse)"
+
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Akna tõstmine ekraani kagunurka (alumisse paremasse)"
+
+msgid "Move window to north (top) side of screen"
+msgstr "Akna tõstmine ekraani põhjakülge (ülemisse)"
+
+msgid "Move window to south (bottom) side of screen"
+msgstr "Akna tõstmine ekraani lõunakülge (alumisse)"
+
+msgid "Move window to east (right) side of screen"
+msgstr "Akna tõstmine ekraani idakülge (paremasse)"
+
+msgid "Move window to west (left) side of screen"
+msgstr "Akna tõstmine ekraani läänekülge (vasakusse)"
+
+msgid "Move window to center of screen"
+msgstr "Akna tõstmine ekraani keskele"
+
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Pole teostatud) Navigeerimine töötab rakenduste, mitte akende kaupa"
+
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Kirjastiili kirjelduse sõne, mis kirjeldab akna tiitliriba kirjastiili. "
+"Selle kirjelduse suurust kasutatakse ainult siis, kui titlebar_font_size "
+"väärtuseks on 0. Lisaks, see valik on kasutu, kui titlebar_uses_desktop_font "
+"väärtus on määratud tõeseks."
+
+msgid "Action on title bar double-click"
+msgstr "Pealkirjariba topeltklõpsamisel tehtav tegevus"
+
+msgid "Action on title bar middle-click"
+msgstr "Pealkirjaribal keskmise klahviga klõpsamisel tehtav tegevus"
+
+msgid "Action on title bar right-click"
+msgstr "Pealkirjariba paremklõpsamisel tehtav tegevus"
+
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Tiitliriba nuppude järjestus"
+
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Tiitliriba nuppude järjestus. Väärtus peaks olema sarnane sõnele \"menu:"
+"minimize,maximize,spacer,close\"; koolon eraldab akna vasakut nurka "
+"paremast, nuppude nimed eraldatakse komaga. Topeltnupud pole lubatud. "
+"Tundmatute nuppude nimesid eiratakse vaikides, et marco järgmistes "
+"versioonides saaks lisada uusi nuppe ilma rikkumata ühilduvust vanade "
+"versioonidega. Erilist Kahe nupu vahele ruumi tegemiseks saab kasutada "
+"erilist ruumimärki."
+
+msgid "Automatically raises the focused window"
+msgstr "Automaatselt tõstab fookuses oleva akna"
+
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Modifikaatorklahvi all hoides aknale klõpsates saab akent nihutada "
+"(vasakklõps), muuta suurust (keskklahvi klõps) või kuvada akna menüüd "
+"(paremklõps). Keskmise ja parema klahvi tegevusi saab vahetada võtme "
+"\"resize_with_right_button\" abil. Modifikaatorit väljendatakse näiteks kui "
+"\"&lt;Alt&gt;\" või \"&lt;Super&gt;\"."
+
+msgid "Commands to run in response to keybindings"
+msgstr "Käsud mida käivitada kiirklahvidele reageerides"
+
+msgid "Compositing Manager"
+msgstr "Komposiithaldur"
+
+msgid "Control how new windows get focus"
+msgstr "Määrab, kuidas uued aknad saavad fookuse"
+
+msgid "Current theme"
+msgstr "Praegune teema"
+
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Automaattõstmise valiku viivitus millisekundites"
+
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Määrab, kas Marco on komposiithaldur"
+
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Määrab, kas süsteemi rakendused saavad tekitada kuuldavaid \"piikse\"; võib "
+"kasutada koos \"visuaalkellukesega\", et võimaldada vaikseid \"piikse\"."
+
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Keela väärvõimalused, mis on vajalikud vanadele või rikkis rakendustele"
+
+msgid "Enable Visual Bell"
+msgstr "Luba visuaalkelluke"
+
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Kui märgitud ja fookuse režiim on \"sloppy\" või \"mouse\", siis tõstetakse "
+"fokuseeritud aken automaatselt pärast auto_raise_delay võtme määratud "
+"viivitust. See ei ole seotud aknal klõpsamisega selle tõstmiseks ega "
+"lohistamisel aknasse sisenemisega."
+
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Kui märgitud, siis titlebar_font valikut eiratakse ja akende tiitliribal "
+"kasutatakse standardset rakenduste kirjastiili."
+
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Kui märgitud, annab marco kasutajale vähem tagasisidet kasutades "
+"sõrestikvaadet, hoidudes animatsioonides ja teistest tagasiside viisidest. "
+"See vähendab mõne kasutaja jaoks oluliselt kasutatavust, aga võib jätta "
+"ammused pärandprogrammid tööle, lisaks võib olla kasulik kompromiss "
+"terminaliserveris. Siiski on hõlbustuste sisselülitamise korral "
+"sõrestikvaade keelatud."
+
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Kui märgitud, haldab Marco akende asemel rakendusi. Põhimõte on pisut "
+"abstraktne, aga üldiselt on rakenduste baasil süsteem rohkem Maci ja vähem "
+"Windowsi moodi. Kui sa fokuseerid akna rakenduste-baasil režiimis, "
+"tõstetakse kõik selle rakenduse aknad. Lisaks rakenduste-baasil režiimis ei "
+"edastata fokuseerimise klõpse teiste rakenduste akendele. Rakenduste-baasil "
+"režiim on hetkel siiski veel teostamata."
+
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Kui märgitud, tehakse kasutatavause arvelt kompromiss ressursside "
+"säästmisekst"
+
+msgid "Modifier to use for modified window click actions"
+msgstr "Modifikaator, mida kasutatakse muudetud aknaklõpsamise tegevustel"
+
+msgid "Name of workspace"
+msgstr "Tööala nimi"
+
+msgid "Number of workspaces"
+msgstr "Tööalade arv"
+
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Tööalade arv. Peab olema suurem kui null ja omab fikseeritud "
+"maksimaalsuurust, et ära hoida kogemata töölaua rikkumist liiga paljude "
+"tööalade eraldamise tagajärjel."
+
+msgid "Run a defined command"
+msgstr "Käivita defineeritud käsk"
+
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Kui märgitud, muudab paremklahv suurust ja keskklahvi vajutamisel, kui all "
+"hoitakse \"mouse_button_modifier\" võtme määratud klahvi, näitab menüüd; kui "
+"mitte märkida, toimib see vastupidi."
+
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Selle valiku väärtuseks false määramine võib põhjustada vigast käitumist, "
+"nii on selle vaikimisi väärtuse true muutmine rangelt mittesoovitatav. "
+"Paljud tegevused (nt kliendialal klõpsamine, akna liigutamine või suuruse "
+"muutmine) tõstavad kõrvaltoimena akna. Selle väärtuseks false määramine, mis "
+"on rangelt mittesoovitatav, keelab akna tõstmise teiste kasutaja tegevuste "
+"peale ja eirab rakenduste tõstmispäringuid. Vaata http://bugzilla.gnome.org/"
+"show_bug.cgi?id=445447#c6. Isegi kui selle valiku väärtus on false, saab "
+"aknaid tõsta tehes alt+vasakklõps suvalises kohas aknal, hariliku "
+"klõpsamisega aknaääristel või eriteadetega lehesüsteemidelt, nagu "
+"aktiveerimispäringud rakenduste nimekirja rakendilt. See valik on praegu "
+"keelatud fokuseerimiseks-klõpsa režiimis. Akende tõstmise päringuid "
+"rakenduse seest eiratakse sõltumata päringu põhjusest. Kui sa oled arendaja "
+"ja mõni kasutaja kurdab, et rakendused ei tööta, kui see säte on keelatud, "
+"siis ütle neile, et see on _nende_ viga, et nad rikkusid aknahalduri ja neil "
+"tuleb selle valiku väärtuseks määrata uuesti \"true\" võib elada \"veaga\", "
+"mille nad ise põhjustasid."
+
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Mõned rakendused eiravad spetsifikatsiooni nii et see avaldub aknahalduri "
+"valekäitumises. See valik seab Marco rangelt korrektsesse režiimi, mis "
+"annab ühtlasema kasutajakeskkonna, kui valestikäituvaid rakendusi pole vaja."
+
+msgid "System Bell is Audible"
+msgstr "Süsteemipiiks on kuuldav"
+
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Teatab Marcole, kuidas visuaalselt näidata, et süsteemi või mõne muu "
+"rakenduse 'kell' helises. Praegu on sellel kaks võimalikku väärtust, "
+"\"fullscreen\", mis teeb täisekraani must-valge välgatuse, ja \"frame_flash"
+"\", mis paneb signaali saatnud rakenduse tiitliriba vilkuma. Kui kella "
+"signaali saatnud rakendus on teadmata (nagu see tavaliselt vaikimisi "
+"\"süsteemipiiksul\" on), vilgutatakse parasjagu fokuseeritud akna tiitliriba."
+
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N võtmed määravad "
+"klahvikombinatsioonid, mis nendele käskudele vastavad. Klahvikombinatsiooni "
+"run_command_N vajutamine käivitab käsu command_N."
+
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot määrab "
+"klahvikombinatsiooni, mis käivitab selle sättega määratud käsu."
+
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot võti määrab "
+"klahvikombinatsiooni, mis käivitab selle sättega määratud käsu."
+
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Vastava järjenumbriga käsu /apps/marco/keybinding_commands käivitamise "
+"klahvikombinatsioon. Vorming on kujul \"&lt;Control&gt;a\" või \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Parser on vormingu suhtes üpris leplik ja lubab "
+"läbisegi nii suur- kui väiketähti, samuti ka lühendeid nagu \"&lt;Ctl&gt;\" "
+"ja \"&lt;Ctrl&gt;\". Kui väärtuseks määrata eristring \"disabled\", siis on "
+"selle toimingu jaoks klahvikombinatsioon keelatud."
+
+msgid "The name of a workspace."
+msgstr "Tööala nimi."
+
+msgid "The screenshot command"
+msgstr "Ekraanitõmmise võtmise käsk"
+
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Teema määrab aknaääriste, tiitliriba jm väljanägemise."
+
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Viivitus millisekundites enne akna tõstmist, kui auto_raise on määratud "
+"tõeseks."
+
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Akna fookuse režiim määrab kuidas aknaid aktiveeritakse. Sellel on kolm "
+"võimalikku väärtus; \"click\" tähendab et akna fokuseerimiseks tuleb sellel "
+"klõpsata, \"sloppy\" tähendab et aken fokuseeritakse, kui hiir siseneb "
+"aknasse ja \"mouse\" tähendab, et aken aktiveeritakse kui hiir siseneb "
+"aknasse ja deaktiveeritakse, kui hiir lahkub aknast."
+
+msgid "The window screenshot command"
+msgstr "Akna ekraanitõmmise käsk"
+
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"See valik määrab tiitliriba topeltklõpsu toimingu. Praegu sobivad võimalused "
+"'toggle_shade', mis akna kas varjutab või toob välja, 'toggle_maximize' mis "
+"maksimeerib/taastab akna, 'toggle_maximize_horizontally' ja "
+"'toggle_maximize_vertically' mis maksimeerib/taastab suuruse ainult ühes "
+"suunas, 'minimize' mis minimeerib akna, 'shade' mis kerib akna ülse, 'menu' "
+"mis näitab akna menüüd, 'lower' mis saadab akna kõigi teiste taha ja 'none' "
+"mis ei tee midagi."
+
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"See valik määrab tiitliriba kesk-klõpsu toimingu. Praegu sobivad võimalused "
+"'toggle_shade', mis akna kas varjutab või toob välja, 'toggle_maximize' mis "
+"maksimeerib/taastab akna, 'toggle_maximize_horizontally' ja "
+"'toggle_maximize_vertically' mis maksimeerib/taastab suuruse ainult ühes "
+"suunas, 'minimize' mis minimeerib akna, 'shade' mis kerib akna ülse, 'menu' "
+"mis näitab akna menüüd, 'lower' mis saadab akna kõigi teiste taha ja 'none' "
+"mis ei tee midagi."
+
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"See valik määrab tiitliriba paremklõpsu toimingu. Praegu sobivad võimalused "
+"'toggle_shade', mis akna kas varjutab või toob välja, 'toggle_maximize' mis "
+"maksimeerib/taastab akna, 'toggle_maximize_horizontally' ja "
+"'toggle_maximize_vertically' mis maksimeerib/taastab suuruse ainult ühes "
+"suunas, 'minimize' mis minimeerib akna, 'shade' mis kerib akna ülse, 'menu' "
+"mis näitab akna menüüd, 'lower' mis saadab akna kõigi teiste taha ja 'none' "
+"mis ei tee midagi."
+
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"See valik võimaldab lisakontrolli uute akende fookuse haaramisele. Sellel on "
+"kaks võimalikku väärtust; \"smart\" rakendab kasutaja tavalisi fokuseerimise "
+"sätteid ja \"strict\" määrab, et terminalist käivitatud aknaid ei "
+"fookuseerita."
+
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Lülitab sisse visuaalse süsteemi piiksu näitaja; on kasulik lärmakas "
+"keskkonnas."
+
+msgid "Use standard system font in window titles"
+msgstr "Kasuta standardset süsteemifonti akende tiitlites"
+
+msgid "Visual Bell Type"
+msgstr "Visuaalpiiksu tüüp"
+
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Kas akna tõstmine peaks kaasnema kasutaja teiste tegevustega"
+
+msgid "Whether to resize with the right button"
+msgstr "Kas paremklahv muudab suurust"
+
+msgid "Window focus mode"
+msgstr "Aknafookuse režiim"
+
+msgid "Window title font"
+msgstr "Akna pealkirja kirjatüüp"
+
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Kasutamine: %s\n"
+
+msgid "Close Window"
+msgstr "Sulge aken"
+
+msgid "Window Menu"
+msgstr "Aknamenüü"
+
+msgid "Minimize Window"
+msgstr "Akna minimeerimine"
+
+msgid "Maximize Window"
+msgstr "Akna maksimeerimine"
+
+msgid "Restore Window"
+msgstr "Akna taastamine"
+
+msgid "Roll Up Window"
+msgstr "Akna kokkukerimine"
+
+msgid "Unroll Window"
+msgstr "Akna lahtikerimine"
+
+msgid "Keep Window On Top"
+msgstr "Akna kõige pealmiseks määramine"
+
+msgid "Remove Window From Top"
+msgstr "Eemalda aken kõige pealmise kohalt"
+
+msgid "Always On Visible Workspace"
+msgstr "Alati nähtaval tööalal"
+
+msgid "Put Window On Only One Workspace"
+msgstr "Tõsta aken ainult ühele tööalale"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Mi_nimize"
+msgstr "_Minimeeri"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Ma_ximize"
+msgstr "Ma_ksimeeri"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Unma_ximize"
+msgstr "T_aasta suurus"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Roll _Up"
+msgstr "K_eri kokku"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Unroll"
+msgstr "K_eri lahti"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Move"
+msgstr "_Liiguta"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Resize"
+msgstr "Muuda s_uurust"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Move Titlebar On_screen"
+msgstr "Liiguta tiitliriba mööda _ekraani"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Always on _Top"
+msgstr "Alati _pealmine"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Always on Visible Workspace"
+msgstr "_Alati nähtaval tööalal"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Only on This Workspace"
+msgstr "Ainu_lt sellel tööalal"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Move to Workspace _Left"
+msgstr "Tõsta _vasakpoolsele tööalale"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Move to Workspace R_ight"
+msgstr "Tõsta pa_rempoolsele tööalale"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Move to Workspace _Up"
+msgstr "Tõsta _ülemisele tööalale"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Move to Workspace _Down"
+msgstr "T_õsta alumisele tööalale"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Close"
+msgstr "_Sulge"
+
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Tööala %d%n"
+
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Tööala 1_0"
+
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Tööala %s%d"
+
+msgid "Move to Another _Workspace"
+msgstr "Tõsta muule _tööalale"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+msgid "top"
+msgstr "ülemine"
+
+msgid "bottom"
+msgstr "alumine"
+
+msgid "left"
+msgstr "vasak"
+
+msgid "right"
+msgstr "parem"
+
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "raami asukoht ei määra \"%s\" dimensiooni"
+
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "raami asukoht ei määra dimensiooni \"%s\" servale \"%s\""
+
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Nupu külgede suhe %g ei ole mõistlik"
+
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Raami geomeetri ei määra nuppude suurust"
+
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Värviüleminekus peaks olema vähemalt kaks värvi"
+
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK värvispetsifikatsioonil peab olek olema määratud nurksulgudes, nt. gtk:fg"
+"[NORMAL] kus NORMAL on olek; väärtust \"%s\" ei saa töödelda"
+
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK värvispetsifikatsioonil peab lõppema nurksuluga, nt. gtk:fg[NORMAL] kus "
+"NORMAL on olek; väärtust \"%s\" ei saa töödelda"
+
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Ei mõistnud värvispetsifikatsiooni olekut \"%s\""
+
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Mõistetamatu värvikomponent \"%s\" värvispetsifikatsioonis"
+
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Segatud värvi vorming on \"segamine/taustavärv/värv/katvus\", \"%s\" ei sobi "
+"vorminguga"
+
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Segatud värvi katvuse väärtus \"%s\" ei ole töödeldav"
+
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Segatud värvi katvuse väärtus \"%s\" ei ole 0.0 ja 1.0 vahel"
+
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Varjundamise vorming on \"varjundus/alusvärv/tegur\", \"%s\" ei sobi "
+"vorminguga"
+
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Varjundatud värvi varjundamise tegur \"%s\" ei ole töödeldav"
+
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Varjuntatud värvi varjuntamise tegur \"%s\" on negatiivne"
+
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Värvust \"%s\" pole võimalik analüüsida"
+
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Koordinaatide avaldis sisaldab lubamatut märki '%s'"
+
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Koordinaatide avaldis sisaldab ujukomaarvu '%s', seda aga pole võimalik "
+"analüüsida"
+
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Koordinaatide avaldis sisaldab täisarvu '%s', seda aga pole võimalik "
+"analüüsida"
+
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Koordinaatide avaldis sisaldab teksti alguses tundmatut operaatorit: \"%s\""
+
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Koordinaatide avaldis on tühi või arusaamatult koostatud"
+
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Koordinaatide avaldise tulemuseks on nulliga jagamine"
+
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Koordinaatide avaldis püüab ujukomaarvul kasutada jagamise jäägi (mod) "
+"operaatorit"
+
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Koordinaatide avaldis sisaldab operandi kohal operaatorit \"%s\""
+
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Koordinaatide avaldis sisaldab operandi seal, kus oodati operaatorit"
+
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Koordinaatide avaldis lõppes operandi asemel operaatoriga"
+
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Koordinaatide avaldis sisaldab operaatoreid \"%c\" ja \"%c\" ilma "
+"nendevahelise operandita"
+
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Koordinaatide avaldis sisaldab tundmatut muutujat või konstanti \"%s\""
+
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Koordinaatide avaldise analüsaatoril tekkis puhvri ületäitumine."
+
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Koordinaatide avaldises on sulgevad sulud ilma avavate sulgudeta"
+
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Koordinaatide avaldises on avavad sulud ilma sulgevate sulgudeta"
+
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"Tundub, et koordinaatide avaldis ei sisalda ei operaatoreid ega operande"
+
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Teema sisaldas avaldist, mis põhjustas vea: %s\n"
+
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"misiganes\"/> peab selles "
+"raamistiilis olema määratud"
+
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Puuduv <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"misiganes\"/>"
+
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Tõrge teema \"%s\" laadimisel: %s\n"
+
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Teemas \"%s2\" pole määratud ühtki <%s1>"
+
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Teemas \"%s2\" pole \"%s1\" tüüpi aknale määratud raamistiili, lisa <window "
+"type=\"%s3\" style_set=\"misiganes\"/> element"
+
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Kasutajadefineeritud konstandid peavad algama suurtähega; \"%s\" ei alga"
+
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstant \"%s\" on juba kirjeldatud"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Elemendil <%2s> pole \"%1s\" atribuuti"
+
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Rida %d, märk %d: %s"
+
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atribuuti \"%s\" korratakse kaks korda samas elemendis <%s>"
+
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atribuudi \"%s\" esinemise selles kontekstis elemendil <%s> on viga"
+
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" pole täisarvuna võimalik analüüsida"
+
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Lõpumärgid \"%s\" sõnes \"%s\" on arusaamatud"
+
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Täisarv %ld peab olema positiivne"
+
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Täisarv %ld on liiga suur, praegu on suurim lubatud väärtus %d"
+
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Väärtust \"%s\" ei saa töödelda ujukomaarvuna"
+
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Tõeväärtused peavad olema kas \"true\" või \"false\" aga mitte \"%s\""
+
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Nurk peab olema 0.0 ja 360.0 vahel, oli aga %g\n"
+
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Läbipaistvus peab olema 0.0 (nähtamatu) ja 1.0 (täiskattev) vahel, oli %g\n"
+
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Tiitli suurus \"%s\" on sobimatu (peab olema üks valikust: xx-small,x-small,"
+"small,medium,large,x-large,xx-large)\n"
+
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> kasutab teist korda nime \"%s\""
+
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> vanem \"%s\" pole määratud"
+
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> asukoht \"%s\" pole määratud"
+
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> või selle vanema jaoks peab olema asukoht määratud"
+
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Et alfa väärtusel oleks tähendus, peab taust olema määratud"
+
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Elemendi <%s2> tüüp \"%s1\" on tundmatu"
+
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Tundmatu stiilikomplekt style_set \"%s\" elemendil <%s>"
+
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Aknatüübile \"%s\" on stiilikomplekt juba määratud"
+
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> pole lubatud <%s> sees"
+
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Nuppudele ei saa korraga määrata \"button_width\"/\"button_height\" ja "
+"\"aspect_ratio\" atribuute"
+
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Vahemaa \"%s\" on tundmatu"
+
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Proportsioon \"%s\" on tundmatu"
+
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Raam \"%s\" on tundmatu"
+
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Elemendil <%s> pole \"start_angle\" ega \"from\" atribuute"
+
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Elemendil <%s> pole \"extent_angle\" ega \"to\" atribuute"
+
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Väärtust \"%s\" ei saa mõista värviülemineku tüübina"
+
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Väärtust \"%s\" ei saa mõista täitetüübina elemendile <%s>"
+
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Väärtust \"%s\" ei saa mõista olekuna elemendile <%s>"
+
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Väärtus \"%s\" ei saa mõista varjuna elemendile <%s>"
+
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Väärtust \"%s\" ei saa mõista noolena elemendile <%s>"
+
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Ühtki <draw_ops> poolt kutsutud \"%s\" ei ole määratud"
+
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "draw_ops \"%s\" lisamine siia põhjustaks ringviitamise"
+
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Raamitükile on asukoht \"%s\" tundmatu"
+
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Raamistiilil juba on tükk asukohas %s"
+
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Ühtki \"%s\" nimelist <draw_ops> pole määratud"
+
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Nupule on funktsioon \"%s\" tundmatu"
+
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Nupu funktsiooni \"%s\" selles versioonis pole (%d, vaja on %d)"
+
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Nupule on olek \"%s\" tundmatu"
+
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Raami stiilil juba on nupp funktsiooni %s olekule %s"
+
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" pole sobiv väärtus focus atribuudile"
+
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" pole sobiv väärtus state atribuudile"
+
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" nimeline stiil pole määratud"
+
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" pole sobiv väärtus resize atribuudile"
+
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Elemendil <%s> ei peaks olema \"resize\" atribuuti maximized/shaded olekute "
+"jaoks"
+
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Elemendil <%s> ei peaks olema \"resize\" atribuuti maximized oleku jaoks"
+
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Olekule %s suurusele %s ja fookusele %s on stiil juba määratud"
+
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Olekule %s ja fookusele %s on stiil juba määratud"
+
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Elemendil <piece> ei saa olla kaks draw_ops'i (teema määras draw_ops "
+"atribuudi ja <draw_ops> elemendi või kaks elementi)"
+
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Elemendil <button> ei saa olla kaks draw_ops'i (teema määras draw_ops "
+"atribuudi ja <draw_ops> elemendi või kaks elementi)"
+
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Elemendil <menu_icon> ei saa olla kaks draw_ops'i (teema määras draw_ops "
+"atribuudi ja <draw_ops> elemendi või kaks elementi)"
+
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Teema kõige välimine element peab olema <marco_theme> mitte <%s>"
+
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Element <%s> pole elementide name/author/date/description sees lubatud"
+
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> pole elemendi <constant> sees lubatud"
+
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Element <%s> pole elementide distance/border/aspect_ratio sees lubatud"
+
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Element <%s> pole joonistusoperatsiooni elemendi sees lubatud"
+
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> pole elemendi <%s> sees lubatud"
+
+msgid "No draw_ops provided for frame piece"
+msgstr "Raamitükile pole määratud draw_ops"
+
+msgid "No draw_ops provided for button"
+msgstr "Nupule pole määratud draw_ops"
+
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Elemendi <%s> sees pole tekst lubatud"
+
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "Selle teema jaoks on <%s> määratud kaks korda"
+
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Tõrge %s teema jaoks korrektse faili leidmisel\n"
+
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Teemafail %s ei sisaldanud juurelementi <marco_theme>"
+
+msgid "/_Windows"
+msgstr "/_Aknad"
+
+msgid "/Windows/tearoff"
+msgstr "/Aknad/ärarebimine"
+
+msgid "/Windows/_Dialog"
+msgstr "/Aknad/_Dialoog"
+
+msgid "/Windows/_Modal dialog"
+msgstr "/Aknad/_Modaalne dialoog"
+
+msgid "/Windows/_Utility"
+msgstr "/Aknad/_Utiliit"
+
+msgid "/Windows/_Splashscreen"
+msgstr "/Aknad/_Käivitusekraan"
+
+msgid "/Windows/_Top dock"
+msgstr "/Aknad/_Ülemine dokk"
+
+msgid "/Windows/_Bottom dock"
+msgstr "/Aknad/_Alumine dokk"
+
+msgid "/Windows/_Left dock"
+msgstr "/Aknad/_Vasak dokk"
+
+msgid "/Windows/_Right dock"
+msgstr "/Aknad/_Parem dokk"
+
+msgid "/Windows/_All docks"
+msgstr "/Aknad/_Kõik dokid"
+
+msgid "/Windows/Des_ktop"
+msgstr "/Aknad/_Töölaud"
+
+msgid "This is a sample message in a sample dialog"
+msgstr "See on näidisteade näidisdialoogis"
+
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Võltsitud menüüpunkt %d\n"
+
+msgid "Border-only window"
+msgstr "Ainult raamiga aken"
+
+msgid "Bar"
+msgstr "Riba"
+
+msgid "Normal Application Window"
+msgstr "Tavaline rakenduseaken"
+
+msgid "Dialog Box"
+msgstr "Dialoogikast"
+
+msgid "Modal Dialog Box"
+msgstr "Modaalne dialoogikast"
+
+msgid "Utility Palette"
+msgstr "Rakendite palett"
+
+msgid "Torn-off Menu"
+msgstr "Ärarebitav menüü"
+
+msgid "Border"
+msgstr "Raam"
+
+#, c-format
+msgid "Button layout test %d"
+msgstr "Nuppude paigutuse test %d"
+
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g millisekundit kulub ühe akna raami joonistamiseks"
+
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Kasutamine: marco-theme-viewer [TEEMANIMI]\n"
+
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Viga teema laadimisel: %s\n"
+
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Teema \"%s\" laaditi %g sekundiga\n"
+
+msgid "Normal Title Font"
+msgstr "Tiitli tavasuurusega kirjatüüp"
+
+msgid "Small Title Font"
+msgstr "Tiitli väike kirjatüüp"
+
+msgid "Large Title Font"
+msgstr "Tiitli suur kirjatüüp"
+
+msgid "Button Layouts"
+msgstr "Nuppude paigutus"
+
+msgid "Benchmark"
+msgstr "Jõudlus"
+
+msgid "Window Title Goes Here"
+msgstr "Siia tuleb akna pealkiri"
+
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Joonistati %d kaadrit %g kliendi-kella sekundiga (%g millisekundit kaadrile) "
+"ja %g sekundiga seinakella järgi, millesse on kaasatud X serveri "
+"ressursikasutus (%g millisekundit kaadrile)\n"
+
+msgid "position expression test returned TRUE but set error"
+msgstr "asukoha avaldise kontroll tagastas TÕENE aga määras vea"
+
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "asukoha avaldise kontroll tagastas VÄÄR aga ei määranud viga"
+
+msgid "Error was expected but none given"
+msgstr "Oodati viga, aga ühtegi ei edastatud"
+
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Oodati viga %d aga edastati viga %d"
+
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Viga ei oodatud, aga üks edastati: %s"
+
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x väärtus oli %d, oodati väärtust %d"
+
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y väärtus oli %d, oodati väärtust %d"
+
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d koordinaatide avaldis töödeldi %g sekundiga (keskmine %g sekundit)\n"
diff --git a/po/eu.po b/po/eu.po
new file mode 100644
index 00000000..2af61505
--- /dev/null
+++ b/po/eu.po
@@ -0,0 +1,2382 @@
+# translation of eu.po to Basque
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
+#
+# Hizkuntza Politikarako Sailburuordetza <[email protected]>, 2004.
+# Iñaki Larrañaga Murgoitio <[email protected]>, 2004, 2005, 2006, 2008, 2009, 2010.
+# Iñaki Larrañaga Murgoitio <[email protected]>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: eu\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-27 18:34+0100\n"
+"PO-Revision-Date: 2010-03-27 18:34+0100\n"
+"Last-Translator: Iñaki Larrañaga Murgoitio <[email protected]>\n"
+"Language-Team: Basque <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Mahaigaina"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Leiho-kudeatzailea"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Soinuaren gertaera"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Leihoaren informazio eskaera ezezaguna: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt>(e)k ez du erantzuten."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Aukeratu piskatean zain egotea aplikazioak jarraitzeko edo derrigortu "
+"aplikazioa erabat ixtea."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Itxaron"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Behartu ixtera"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Huts egin du ostalari-izena hartzean: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Konposaketa lantzeko beharrezkoa den %s hedapena falta da"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Huts egin du X Window sistemaren '%s' pantaila irekitzean\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"'%s' pantailaren konexioa galdu da;\n"
+"seguru asko X zerbitzaria itzalita egongo da edo leiho-kudeatzailea \n"
+"hilko/hondatuko zenuen.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "S/Iko %d (%s) errore konponezina '%s' pantailan.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Beste programaren batek erabiltzen du %s gakoa %x aldatzaileekin lotura "
+"gisa\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Errorea gertatu da <tt>%s</tt> exekutatzean:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "%d komandoa ez dago definituta.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Ez da terminalaren komandoa definitu.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright-a (C) 2001-%s Havoc Pennington, Red Hat, Inc., eta beste batzuk\n"
+"Hau software librea da; ikus kopiatzeko baldintzak iturburu-kodean.\n"
+"EZ du bermerik; ezta MERKATURATZEKO edo XEDE JAKIN BATERAKO EGOKITASUNAREN "
+"BERMERIK ERE.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Desgaitu saio-kudeatzailearen konexioa"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Ordeztu exekutatzen dagoen leiho-kudeatzailea Marco-rekin"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Zehaztu saio-kudeatzailearen IDa"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X pantaila erabiltzeko"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Hasieratu saioa babes-fitxategitik"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Erakutsi bertsioa"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Egin X deiak sinkronoak izatea"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Aktibatu konposaketa"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Desaktibatu konposaketa"
+
+#: ../src/core/main.c:322
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Ez jarri pantaila osoko leihoak maximizatuta badaude eta dekoraziorik ez "
+"badute"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Huts egin du gaien direktorioa aztertzean: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Gai bat ezin izan da aurkitu. Ziurtatu %s badagoela eta ohiko gaiak "
+"dituela.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Ezin izan da berrabiarazi: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "\"%s\" MateConf gakoa balio baliogabean ezarrita dago\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%2$s MateConf gakoko %1$d balioa %3$d - %4$d barrutitik kanpo dago\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "\"%s\" MateConf gakoa mota baliogabean ezarrita dago\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Aplikazio hautsien konponbidea desgaituta. Aplikazio batzuk ez dira behar "
+"den bezala ibiliko.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Ezin izan da analizatu \"%s\" letra-tipoaren deskribapena %s MateConf gakoan\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Konfigurazioaren datu-basean aurkitutako \"%s\" balioa ez da baliozkoa sagu-"
+"botoiaren aldatzailearentzat\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Errorea laneko %d area ezartzean: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "%d. laneko area"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Konfigurazioaren datu-basean aurkitutako \"%s\" balioa ez da baliozkoa \"%s"
+"\" laster-teklarentzat.\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Errorea %d. laneko areari \"%s\" izena ezartzean: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Errorea konposaketaren egoera ezartzean: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "'%2$s' bistaratzeko %1$d pantaila ez da baliozkoa\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"\"%2$s\" bistaratzeko %1$d pantailak badu leiho-kudeatzailea; leiho-"
+"kudeatzaile hori ordeztu nahi baduzu, saiatu --replace aukerarekin.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Ezin izan da eskuratu leiho-kudeatzailearen hautapena \"%2$s\" bistaratzeko %"
+"1$d pantailan\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "\"%2$s\" bistaratzeko %1$d pantailak badu leiho-kudeatzailea\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Ezin izan da askatu \"%2$s\" bistaratzeko %1$d pantaila\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Formatua \"<Control>\" edo \"<Shift><Alt>F1\" itxurakoa izango da.\n"
+"\n"
+"Analizatzailea oso irekia da eta maiuskulak eta minuskulak onartzen ditu, "
+"eta baita \"<Ctl>\" eta \"<Ctrl>\" moduko laburdurak ere. Aukeran \"disabled"
+"\" kate berezia ezartzen baduzu, ez da laster-teklarik izango ekintza "
+"honentzat."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Formatua \"<Control>\" edo \"<Shift><Alt>F1\" itxurakoa izango da.\n"
+"\n"
+"Analizatzailea oso irekia da eta maiuskulak eta minuskulak onartzen ditu, "
+"eta baita \"<Ctl>\" eta \"<Ctrl>\" moduko laburdurak ere. Aukeran \"disabled"
+"\" kate berezia ezartzen baduzu, ez da laster-teklarik izango ekintza "
+"honentzat.\n"
+"\n"
+"Laster-tekla hau alderantzikatu daiteke \"Maius\" tekla sakatuta edukiz; "
+"horrela \"Maius\" ez da izango erabiltzen duen tekletariko bat."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Ezin izan da '%s' direktorioa sortu: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Ezin izan da '%s' saio-fitxategia idazteko ireki: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Errorea '%s' saio-fitxategia idaztean: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Errorea '%s' saio-fitxategia ixtean: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Huts egin du gordetako %s saio-fitxategia irakurtzean: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Huts egin du gordetako saio-fitxategia analizatzean: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> atributua ikusi da baina dagoeneko badugu saio-IDa"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "%s atributu ezezaguna <%s> elementuan"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "<window> etiketa habiaratua"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "%s elementu ezezaguna"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Leiho hauek ez dute onartzen &quot;gorde uneko konfigurazioa&quot; eta eskuz "
+"berrabiarazi beharko dituzu hurrengo saioa hasten duzunean."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Huts egin du arazketako egunkaria irekitzean: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Huts egin du %s egunkari-fitxategian fdopen() egitean: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "%s egunkari-fitxategia irekita\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco modu xehatuaren euskarririk gabe konpilatu da\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Leiho-kudeatzailea: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Akatsa leiho-kudeatzailean: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Leiho-kudeatzailearen abisua: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Leiho-kudeatzailearen errorea: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"%s leihoak bere buruari ezartzen dio SM_CLIENT_ID, WM_CLIENT_LEADER leihoari "
+"ezarri beharren, ICCCMan zehaztuta dagoen moduan.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"%s leihoak MWM aholkua ezartzen du, tamainarik ezin zaiola aldatu "
+"adierazteko, baina aldi berean gutxieneko tamaina (%d x %d) eta gehienezkoa "
+"(%d x %d) ezartzen ditu, eta horrek ez du zentzu handirik.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Aplikazioak _NET_WM_PID %lu faltsua ezarri du\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (supererabiltzaile gisa)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s gisa)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (beste erabiltzaile bat gisa)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "%2$s(e)n baliogabeko WM_TRANSIENT_FOR 0x%1$lx leihoa zehaztu da.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"0x%lx leihoak %s propietatea du\n"
+"horrek %s mota %d formatua izatea espero zen\n"
+"baina %s mota %d formatua %d n_items du.\n"
+"Gehiago ematen du aplikazioaren akatsa leiho-kudeatzailearena baino.\n"
+"Leihoak title=\"%s\" class=\"%s\" name=\"%s\" du\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "0x%2$lx leihoko %1$s propietateak UTF-8 baliogabea du\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"0x%2$lx leihoko %1$s propietateak UTF-8 baliogabea du zerrendako %3$d. "
+"elementuan\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Aldatu 1. laneko areara"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Aldatu 2. laneko areara"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Aldatu 3. laneko areara"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Aldatu 4. laneko areara"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Aldatu 5. laneko areara"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Aldatu 6. laneko areara"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Aldatu 7. laneko areara"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Aldatu 8. laneko areara"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Aldatu 9. laneko areara"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Aldatu 10. laneko areara"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Aldatu 11. laneko areara"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Aldatu 12. laneko areara"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Aldatu uneko laneko arearen ezkerreko laneko areara"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Aldatu uneko laneko arearen eskuineko laneko areara"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Aldatu uneko laneko arearen gaineko laneko areara"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Aldatu uneko laneko arearen azpiko laneko areara"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Mugitu aplikazioaren leihoen artean, laster-leiho bat erabiliz"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Atzerantz joan aplikazioaren leihoen artean, laster-leiho bat erabiliz"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Mugitu leihoen artean, laster-leiho bat erabiliz"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Atzerantz joan leihoen artean, laster-leiho bat erabiliz"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Mugitu panelen eta mahaigainaren artean laster-leihoarekin"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Atzerantz joan panelen eta mahaigainaren artean, laster-leiho bat erabiliz"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Mugitu aplikazio baten leihoen artean berehala"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Atzerantz joan aplikazio baten leihoen artean berehala"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Mugitu leihoen artean berehala"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Atzerantz joan leihoen artean berehala"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Mugitu panelen eta mahaigainaren artean berehala"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Atzerantz joan panelen eta mahaigainaren artean berehala"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Ezkutatu leiho normal guztiak eta eman fokua mahaigainari"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Erakutsi paneleko menu nagusia"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Erakutsi panelaren \"Exekutatu aplikazioa\" elkarrizketa-koadroa"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Egin pantaila-argazki bat"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Egin leiho baten pantaila-argazkia"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Exekutatu terminala"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Aktibatu leiho-menua"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Txandakatu pantaila osoaren modua"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Txandakatu maximizatze-egoera"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Txandakatu leiho bat beste leiho guztien gainean ikusgai egongo den edo ez"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximizatu leihoa"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Leheneratu leihoa"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Txandakatu bildutako egoera"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimizatu leihoa"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Itxi leihoa"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Lekuz aldatu leihoa"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Aldatu leihoaren tamaina"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Txandakatu leihoa laneko area guztietan edo bakar batean egotea"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Eraman leihoa 1. laneko areara"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Eraman leihoa 2. laneko areara"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Eraman leihoa 3. laneko areara"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Eraman leihoa 4. laneko areara"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Eraman leihoa 5. laneko areara"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Eraman leihoa 6. laneko areara"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Eraman leihoa 7. laneko areara"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Eraman leihoa 8. laneko areara"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Eraman leihoa 9. laneko areara"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Eraman leihoa 10. laneko areara"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Eraman leihoa 11. laneko areara"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Eraman leihoa 12. laneko areara"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Eraman leihoa laneko area bat ezkerrera"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Eraman leihoa laneko area bat eskuinera"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Eraman leihoa laneko area bat gora"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Eraman leihoa laneko area bat behera"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Goratu leihoa beste leiho batek estaltzen badu, bestela beheratu"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Goratu leihoa beste leihoen gainera"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Beheratu leihoa beste leihoen azpira"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximizatu leihoa bertikalki"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximizatu leihoa horizontalki"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Eraman leihoa ipar-mendebaldeko (goi-ezkerreko) ertzera"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Eraman leihoa ipar-ekialdeko (goi-eskuineko) ertzera"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Eraman leihoa hego-mendebaldeko (ezker-beheko) ertzera"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Eraman leihoa hego-ekialdeko (eskuin-beheko) ertzera"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Eraman leihoa pantailaren iparraldeko (goiko) aldera"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Eraman leihoa pantailaren hegoaldeko (beheko) aldera"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Eraman leihoa pantailaren ekialdeko (eskuineko) aldera"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Eraman leihoa pantailaren mendebaldeko (ezkerreko) aldera"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Eraman leihoa pantailaren zentruko aldera"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Ez dago inplementatuta) Nabigazioa aplikazioetan egiten da, ez leihoetan"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Leihoen titulu-barrako letra-tipoa deskribatzeko katea. Hala ere, "
+"deskribapen honetako tamaina titlebar_font_size aukera 0an ezarrita badago "
+"bakarrik erabiliko da. Gainera, aukera hau desgaitu egingo da "
+"titlebar_uses_desktop_font aukeraren balioa egiazkoa bada."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Titulu-barran klik bikoitza egitearen eragina"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Ekintza titulu-barran erdiko botoiarekin klik egitean"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Ekintza titulu-barran eskuineko botoiarekin klik egitean"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Titulu-barrako botoien antolamendua"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Titulu-barrako botoien antolamendua. Balioak katea izan behar du, \"menu:"
+"minimize,maximize,spacer,close\" erakoa; bi puntuek leihoaren ezkerreko "
+"izkina eskuineko izkinatik bereizten dute, eta botoi-izenak komaz bereizita "
+"jartzen dira. Ez da onartzen bikoiztutako botoirik. Botoi-izen ezezagunei ez "
+"ikusi egiten zaie zuzenean, eta horrela botoiak gehitu ahal izango dira "
+"marco-ren etorkizuneko bertsioetan bertsio zaharragoak hautsi gabe. "
+"Etiketa tartekatzaile berezia erabil daiteke jarraian dauden bi botoiren "
+"artean tartea sartzeko."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Automatikoki goratzen du fokua duen leihoa"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Tekla aldatzaile hau sakatuta dagoela leihoan klik egiten bada, leihoa lekuz "
+"aldatuko da (klik egin saguaren ezkerreko botoiarekin), leihoaren tamaina "
+"aldatuko da (klik egin saguaren erdiko botoiarekin), edo leihoaren menua "
+"erakutsiko da (klik egin saguaren eskuineko botoiarekin). Erdi eta eskuineko "
+"eragiketak truka daitezke \"mouse_button_resize\" erabiliz. Aldatzailea "
+"\"&lt;Alt&gt;\" edo \"&lt;Super&gt;\" izango da, adibidez."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Komandoak laster-teklei erantzunez exekutatzeko"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Konposatze-kudeatzailea"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Kontrolatu leiho berriek fokua nola lortzea"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Uneko gaia"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Atzerapena automatikoki goratu aurretik (milisegundoak)"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Marco konposatzeko kudeatzaile bat al den zehazten du."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Aplikazioak edo sistemak entzuteko moduko soinu-seinalerik egin behar duen "
+"erabakitzen du; 'soinu bisualekin' konbina daiteke, isileko soinuak "
+"onartzeko."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Desgaitu aplikazio zaharrek edo hautsitakoek eskatzen dituzten eginbide "
+"galduak"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Gaitu soinu bisuala"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Egia bada, eta fokuaren modua \"sloppy\" edo \"mouse\" bada, fokua duen "
+"leihoa automatikoki goratuko da 'auto_raise_key' gakoan zehaztutako "
+"atzerapena igarotakoan. Honek ez dauka zerikusirik leiho baten klik "
+"egitearekin goratzeko, ezta leiho batean sartzearekin arrastatu eta "
+"jaregitean."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Egiazkoa bada, ez ikusi egin titlebar_font aukerari eta erabili "
+"aplikazioaren letra-tipo estandarra leihoen tituluan."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Egia bada, marco-k erabiltzaileari informazio eta \"zuzeneko kudeaketa\" "
+"zentzu gutxiago eskainiko dio, burdin-hariak erabiliz, animazioak saihestuz, "
+"e.a. Erabiltzaile askorentzako honek erabilgarritasuna gutxiagotzen du, "
+"baina heredatutako aplikazioak eta terminal-zerbitzariak funtzionatzea "
+"baimendu dezake, beste kasuetan ezinezkoa izango zatekeena. Hala ere, "
+"erabilgarritasuna aktibo dagoenean wireframe funtzionalitatea desgaitu "
+"egiten da."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Egiazkoa bada, Marco-k aplikazioekin funtzionatzen du, leihoekin baino "
+"gehiago. Kontzeptua abstraktu samarra da, baina, oro har, aplikazioan "
+"oinarritutako konfigurazioak Mac-en itxura handiagoa du Windows-ena baino. "
+"Aplikazioan oinarritutako moduan leiho bati fokua ematen diozunean, "
+"aplikazio horretako leiho guztiak goratuko dira. Gainera, aplikazioan "
+"oinarritutako moduan, foku-klikak ez dira pasatzen beste aplikazio "
+"batzuetako leihoetara. Horretaz gain, aplikazioa oinarritutako modua ez dago "
+"ia batere inplementatuta oraingoz."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Egia bada, gutxiagotu erabilgarritasuna errekurtso gutxiago erabiltzeko"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Aldatzailea leihoen klik-ekintza aldatuetan erabiltzeko"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Laneko arearen izena"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Laneko areen kopurua"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Laneko areen kopurua. Zero baino handiagoa izan behar du, eta gehienezko "
+"kopuru finko bat izan behar du (laneko area gehiago eskatu eta nahi gabe "
+"mahaigaina ez hondatzeko)."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Exekutatu definitutako komandoa"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Ezarri TRUE (egia) gisa saguaren eskuineko botoiarekin tamaina aldatzeko eta "
+"erdiko botoiarekin menua erakusteko \"mouse_button_modifier\"-en emandako "
+"tekla sakatuta mantentzen den bitartean. Ezarri FALSE (faltsua) gisa beste "
+"erara funtzionatzeko."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Aukera hau faltsua gisa ezartzen bada portaera akastun batera eraman "
+"lezakeenez, erabiltzaileei ez zaie gomendatzen balio lehenetsia (egia) "
+"aldatzea. Ekintza askok (adib. bezeroaren arean klik egitea, leihoa lekuz "
+"edo tamainaz aldatzea) normalean leihoa goratzen du bigarren mailako eragin "
+"gisa. Ezarpen hau faltsua gisa ezartzen bada, ez egitea biziki gomendatzen "
+"da, goratzearen elkartea kendu egingo du erabiltzailearen beste "
+"ekintzetatik, eta aplikazioek eskatutako goratzeari ez ikusi egingo dio. "
+"Ikusi http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Nahiz eta aukera "
+"hau faltsua izan, leihoak goratu daitezke leihoko edozein lekutan Alt tekla "
+"sakatuta dagoela saguaren ezkerreko botoiarekin klik eginez gero, edo "
+"leihoaren dekorazioetan klik arrunta eginez, edo aplikazioen mezu bereziak ."
+"Nahiz eta aukera hau faltsua izan, leihoak oraindik goratu daitezke leihoko "
+"beste edozein lekutan Alt+Ezkerrarekin klik egitean, klik normala leihoko "
+"dekorazioetan edo ataza-zerrenden miniaplikazioaren bezalako eskakizunen "
+"mezu bereziengatik. Aukera hau desgaituta dago click-to-focus moduan. Jakin "
+"ezazu leihoa goratzeko moduen zerrenda raise_on_click faltsua denean ez du "
+"programazioko eskaerarik aplikazioetatik leihoak goratzeko, eta horrelako "
+"eskaerei ezikusi egingo zaie eskaeraren arrazoiari jaramonik egin gabe."
+"Aplikazio garatzailea bazara, eta eta erabiltzaile batzuk kexan badabiltza "
+"zure aplikazioak ez duela funtzionatzen ezarpen hau desgaituta dagoela, "
+"esaiezu beraiei _beraien_ hanka-sartzea dela leiho-kudeatzailea hausteagatik "
+"eta aukera hau TRUE gisa ezarri behar dutela edo bizi daitezela \"akatsarekin"
+"\" betirako."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Aplikazio batzuk espezifikazioei jaramonik ez diete egiten, leiho-"
+"kudeatzailearen funtzionalitatea gutxituz. Aukera honek Marco era "
+"zorrotzeko zuzeneko moduan du, erabiltzailearen interfazeari sendotasun "
+"gehiago emanez, eskainitakoak ez dauka gaizki portatzen diren aplikazioak "
+"exekutatu beharrik."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Sistema-soinua entzungarri"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Sistemaren soinua edo beste aplikazio baten 'soinua' jotzean, bisualki nola "
+"adierazi behar duen esaten dio Marco-ri. Oraingoz bi balio daude aukeran, "
+"\"fullscreen\", pantaila osoko zuri-beltzeko flash-a egiten duena; eta "
+"\"frame_flash\", soinua jotzeko agindua eman duen aplikazioaren titulu-barra "
+"keinuka erakusten duena. Soinua zein aplikaziok jo duen jakiterik ez badago "
+"(hori gertatzen da normalean \"sistema-soinu\" lehenetsia denean), unean "
+"fokua duen leihoaren titulu-barra agertzen da keinuka."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N gakoek definitzen dituzte "
+"komando horiei dagozkien laster-teklak. run_command_N komandoarentzat "
+"zehaztutako laster-teklak sakatzean N komandoa exekutatuko da."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot gakoak laster-tekla "
+"bat definitzen du, ezarpen honetan zehaztutako komandoa exekutatuko duelarik."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot gakoak "
+"laster-tekla bat definitzen du, ezarpen honetan zehaztutako komandoa "
+"exekutatuko duelarik."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"/apps/marco/keybinding_commands-en dagokion zenbakitutako komandoa "
+"exekutatzen duen laster-tekla. Formatua \"&lt;Control&gt;\" edo \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1 itxurakoa izango da. Analizatzailea oso irekia da eta "
+"maiuskulak eta minuskulak onartzen ditu, eta baita \"&lt;Ctl&gt;\" eta \"&lt;"
+"Ctrl&gt;\" moduko laburdurak ere. Aukeran \"disabled\" kate berezia ezartzen "
+"baduzu, ez da laster-teklarik izango ekintza honentzat."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Laneko area baten izena."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Pantaila-argazkiaren komandoa"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Gaiak erabakiko du leihoen ertzen, titulu-barren eta horrelakoen itxura."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"auto_raise ezarrita badago, zenbat denbora itxaron behar den leihoa goratu "
+"aurretik. Milisegundotan ematen da."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Leihoei fokua emateko moduak adierazten du leihoak nola aktibatuko diren. "
+"Hiru aukera daude: \"click\" (leihoari fokua emateko, bertan klik egin behar "
+"da), \"sloppy\" (sagua leihoan sartzen denean leihoak fokua hartuko du), eta "
+"\"mouse\" (sagua leihoan sartzen denean leihoak fokua hartuko du, eta saguak "
+"leihotik alde egiten duenean, fokua galduko du)."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Leihoaren pantaila-argazkiaren komandoa"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Aukera honek erabakitzen du titulu-barran klik bikoitza egindakoan zer "
+"gertatuko den. Uneko aukerak hauek dira: 'toggle_shade', leihoa bildu edo "
+"zabaltzeko; 'toggle_maximize' leihoa maximizatu edo desmaximizatzeko; "
+"'toggle_maximize_horizontally' eta 'toggle_maximize_vertically' leihoa "
+"horizontalki edo bertikalki maximizatzeko edo desmaximizatzeko; 'minimize' "
+"leihoa minimizatzeko; 'shade' leihoa biltzeko; 'menu' leihoaren menua "
+"bistaratzeko; 'lower' leihoa beste leiho guztien atzean jartzeko;eta 'none' "
+"ezer ez egiteko."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Aukera honek erabakitzen du titulu-barran erdiko botoiarekin klik egindakoan "
+"zer gertatuko den. Uneko aukerak hauek dira: 'toggle_shade', leihoari itzala "
+"jarri edo kentzen dio; 'toggle_maximize' leihoa maximizatu edo "
+"leheneratzeko; 'toggle_maximize_horizontally' eta "
+"'toggle_maximize_vertically' leihoa horizontalki edo bertikalki "
+"maximizatzeko edo desmaximizatzeko; 'minimize' leihoa minimizatzeko; 'shade' "
+"leihoa biltzeko; 'menu' leihoaren menua bistaratzeko; 'lower' leihoa beste "
+"leiho guztien atzean jartzeko;eta 'none' ezer ez egiteko."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Aukera honek erabakitzen du titulu-barran eskuineko botoiarekin klik "
+"egindakoan zer gertatuko den. Uneko aukerak hauek dira: 'toggle_shade', "
+"leihoari itzala jarri edo kentzen dio; 'toggle_maximize' leihoa maximizatu "
+"edo leheneratzeko; 'minimize' leihoa minimizatzeko; eta 'none' ezer ez "
+"egiteko. 'toggle_maximize_horizontally' eta 'toggle_maximize_vertically' "
+"leihoa horizontalki edo bertikalki maximizatzeko edo desmaximizatzeko; "
+"'minimize' leihoa minimizatzeko; 'shade' leihoa biltzeko; 'menu' leihoaren "
+"menua bistaratzeko; 'lower' leihoa beste leiho guztien atzean jartzeko;eta "
+"'none' ezer ez egiteko."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Aukera honek leihoak sortu berriek nola lortzen duten fokuaren gaineko "
+"kontrol gehiago ematen du. Bi balio izan ditzake: \"smart\" erabiltzailearen "
+"foku-modu normala aplikatzen du, eta \"sctrict\" leihoa terminal batetik "
+"abiaratzen denean eta fokua lortzen ez duenekoa."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Adierazpen bisuala aktibatzen du aplikazio batek edo sistemak soinua "
+"bidaltzen duenean; erosoa da entzumen-arazoak dituztenentzat edo inguruan "
+"zarata handia dagoen egoeretako."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Erabili sistemaren letra-tipo estandarra leiho-tituluetan"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Soinu bisual mota"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Goratzean albo-ondoriorik izango duen erabiltzailearen beste "
+"elkarreraginetan edo ez."
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Saguaren eskuineko botoiarekin tamaina aldatu ala ez"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Leiho-fokuaren modua"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Leihoaren tituluaren letra-tipoa"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Erabilera: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Itxi leihoa"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Leiho-menua"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimizatu leihoa"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximizatu leihoa"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Leheneratu leihoa"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Bildu leihoa"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Zabaldu leihoa"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Mantendu leihoa gainean"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Kendu leihoa gainetik"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Beti laneko area ikusgaian"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Jarri leihoa laneko area bakar batean"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "M_inimizatu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_Maximizatu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Desma_ximizatu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Bildu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Zabaldu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Aldatu _lekuz"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Aldatu _tamaina"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Eraman titulu-barra p_antailara"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Beti _goian"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Laneko area ikusgaian _beti"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Laneko area _honetan bakarrik"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Eraman e_zkerreko laneko areara"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Eraman e_skuineko laneko areara"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Eraman _gaineko laneko areara"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Eraman _azpiko laneko areara"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "It_xi"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "%d.%n laneko area"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "1_0 laneko area"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "%s%d laneko area"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Eraman beste laneko areara"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Maius"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ktrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hiper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Ald2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Ald3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Ald4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Ald5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "goian"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "behean"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "ezkerrean"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "eskuinean"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "marko-geometriak ez du zehazten \"%s\" neurririk"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "marko-geometriak ez du zehazten \"%s\" neurririk \"%s\" ertzerako"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Botoiaren %g aspektu-erlazioa ez da arrazoizkoa"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Marko-geometriak ez du zehazten botoien tamainarik"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Gradienteek bi kolore izan behar dituzte gutxienez"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK kolore-zehaztapenak egoera kortxete artean izan behar du, adib. gtk:fg"
+"[NORMAL], NORMAL egoera izanik; \"%s\" ezin da analizatu"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK kolore-zehaztapenak ixteko kortxetea izan behar egoeraren ondoren, adib. "
+"gtk:fg[NORMAL], NORMAL egoera izanik; \"%s\" ezin da analizatu"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Ez da ulertu \"%s\" egoera kolore-zehaztapenean"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Ez da ulertu \"%s\" kolore-osagaia kolore-zehaztapenean"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Nahaste-formatua \"blend/bg_color/fg_color/alpha\" da, \"%s\" ez dator bat "
+"formatuarekin"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Ezin da analizatu \"%s\" alfa balioa kolore nahastuan"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Kolore nahastuko \"%s\" alfa balioa ez dago 0,0 eta 1,0 artean"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Itzal-faktorea \"shade/base_color/factor\" da, \"%s\" ez dator bat "
+"formatuarekin"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Ezin da analizatu \"%s\" itzal-faktorea itzaldun kolorean"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Itzaldun kolorean \"%s\" itzal-faktorea negatiboa da"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Ezin izan da \"%s\" kolorea analizatu"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Koordenatuen adierazpenak '%s' karakterea dauka, eta hori ez da onartzen"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Koordenatuen adierazpenak '%s' koma mugikorreko zenbakia dauka, eta ezin da "
+"analizatu"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Koordenatuen adierazpenak '%s' osoko zenbakia dauka, eta ezin da analizatu"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Koordenatuen adierazpenak eragile ezezaguna dauka testu honen hasieran: \"%s"
+"\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Koordenatuen adierazpena hutsik dago edo ez da ulertu"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Koordenatuen adierazpenak zero zatitzaileko zatiketa ematen du"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Koordenatuen adierazpena mod eragilea erabiltzen saiatzen da koma "
+"mugikorreko zenbaki batean"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Koordenatuen adierazpenak \"%s\" eragilea du eragigai bat espero zen lekuan"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Koordenatuen adierazpenak eragigai bat du eragile bat espero zen lekuan"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"Koordenatuen adierazpena eragile batez amaitzen da, eragigai batez amaitu "
+"beharrean"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Koordenatuen adierazpenak \"%c\" eragilea du \"%c\" eragilearen ondoren, "
+"tartean eragigairik gabe"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Koordenatuen adierazpenak \"%s\" aldagai edo konstante ezezaguna du"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Koordenatuen adierazpenaren analizatzaileak bere bufferra gainezkatu du"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Koordenatuen adierazpenak ixteko parentesi bat du, baina irekitzekoa falta da"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Koordenatuen adierazpenak irekitzeko parentesi bat du, baina ixtekoa falta da"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Koordenatuen adierazpenak ez dirudi eragilerik edo eragigairik duenik"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Gaiak errorea ematen duen adierazpen bat dauka: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> zehaztu behar "
+"da marko-estilo honetan"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> falta da"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Huts egin du \"%s\" gaia kargatzean: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "<%s> ez da ezarri \"%s\" gaian"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Ez da marko-estilorik ezarri set \"%s\" leiho-motarentzat \"%s\" gaian, "
+"gehitu <window type=\"%s\" style_set=\"whatever\"/> elementu bat"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Erabiltzaileak definitutako konstanteak maiuskulaz hasi behar du; \"%s\" ez "
+"da maiuskulaz hasten"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "\"%s\" konstantea lehendik definituta dago"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Ez dago \"%s\" atributurik <%s> elementuan"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "%d. lerroa %d. karakterea: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "\"%s\" atributua birritan errepikatuta <%s> elementu berean"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "\"%s\" atributua ez da baliozkoa <%s> elementuaren testuinguru honetan"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Ezin da \"%s\" analizatu osoko gisa"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Ez dira ulertzen amaierako \"%s\" karaktereak \"%s\" katean"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "%ld osokoak positiboa izan behar du"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "%ld osokoa handiegia da, uneko gehienezkoa %d da"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\" ezin da analizatu koma mugikorreko zenbaki gisa"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Balio boolearrak \"egiazkoak\" edo \"faltsuak\" izan daitezke, ez \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Angeluak 0.0 eta 360.0 bitartekoa behar du, %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Alfak 0.0 (ikusezina) eta 1.0 (erabat opakoa) artekoa izan behar du, %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"\"%s\" titulu-eskala baliogabea (xx-small,x-small,small,medium,large,x-large,"
+"xx-large izan behar du)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> \"%s\" izena bigarren aldiz erabili da"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> \"%s\" gurasoa ez da definitu"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> \"%s\" geometria ez da definitu"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s>(e)k geometria bat edo geometria duen guraso bat zehaztu behar du"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Atzeko planoa zehaztu alfa balioarekin esanguratsua izateko"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "\"%s\" mota ezezaguna <%s> elementuan"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "\"%s\" style_set ezezaguna <%s> elementuan"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "\"%s\" leiho-motak dagoeneko esleituta du estilo-multzoa"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Ez da onartzen <%s> elementua <%s>(r)en azpian jartzea"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"\"button_width\"/\"button_height\" (botoi-zabalera/botoi-altuera) eta "
+"\"aspect_ratio\" (aspektu-erlazioa) ezin dira batera zehaztu botoietan"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "\"%s\" distantzia ezezaguna da"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "\"%s\" aspektu-erlazioa ezezaguna da"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "\"%s\" ertza ezezaguna da"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Ez dago \"start_angle\" edo \"from\" atributurik <%s> elementuan"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Ez dago \"extent_angle\" edo \"to\" atributurik <%s> elementuan"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Gradiente-motan ez da ulertu \"%s\" balioa"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Ez da ulertu \"%s\" betetze-mota <%s> elementuan"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Ez da ulertu \"%s\" egoera <%s> elementuan"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Ez da ulertu \"%s\" itzala <%s> elementuan"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Ez da ulertu \"%s\" gezia <%s> elementuan"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Ez da \"%s\" izeneko <draw_ops> bat ere definitu"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Hemen \"%s\" draw_ops sartzen bada, erreferentzia zirkularra sortuko da"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "\"%s\" kokaleku ezezaguna markoarentzat"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Marko-estiloak badu zati bat %s posizioan"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Ez da \"%s\" izeneko <draw_ops> bat ere definitu"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "\"%s\" funtzioa ezezaguna botoiarentzat"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "\"%s\" botoi-funtzioa ez da existitzen bertsio honetan (%d, %d behar du)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "\"%s\" egoera ezezaguna botoiarentzat"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Marko-estiloak badu botoi bat %s funtzioan %s egoeran"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" ez da baliozko balioa foku-atributuarentzat"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" ez da baliozko balioa egoera-atributuarentzat"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" izeneko estiloa ez da definitu"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" ez da baliozko balioa tamainaz aldatzeko atributuarentzat"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Ez luke izan behar \"resize\" atributurik <%s> elementuan maximizatutako/"
+"bildutako egoerentzat"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Ez luke izan behar \"resize\" atributurik <%s> elementuan maximizatutako "
+"egoerentzat"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Estiloa dagoeneko zehaztu da %s egoeran %s tamaina-aldatzean %s fokuan"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Estiloa dagoeneko zehaztu da %s egoeran %s fokuan"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ezin dira bi draw_ops izan <piece> elementu batean (gaiak draw_ops atributu "
+"bat eta <draw_ops> elementu bat zehaztu ditu, edo bi elementu zehaztu ditu)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ezin dira bi draw_ops izan <button> elementu batean (gaiak draw_ops atributu "
+"bat eta <draw_ops> elementu bat zehaztu ditu, edo bi elementu zehaztu ditu)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ezin dira bi draw_ops izan <menu_icon> elementu batean (gaiak draw_ops "
+"atributu bat eta <draw_ops> elementu bat zehaztu ditu, edo bi elementu "
+"zehaztu ditu)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Gaian kanporen dagoen elementuak <marco_theme> izan behar du, ez <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "<%s> elementua ez da onartzen name/author/date/description elementuan"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<%s> elementua ez da onartzen <constant> elementuaren barnean"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "<%s> elementua ez da onartzen distance/border/aspect_ratio elementuan"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "<%s> elementua ez da onartzen marrazteko eragiketaren elementuaren barnean"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%s> elementua ez da onartzen <%s> elementuaren barnean"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Ez da draw_ops-ik eman marko-zatiarentzat"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Ez da draw_ops-ik eman botoiarentzat"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Ez da testurik onartzen <%s> elementuaren barnean"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> birritan zehaztu da gai honetan"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Huts egin du %s gaiaren fitxategi egokia bilatzean\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "%s gai-fitxategiak ez du erroko <marco_theme> elementurik"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Leihoak"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Leihoak/askagarria"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Leihoak/_Elkarrizketa-koadroa"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Leihoak/Elkarrizketa-koadro _modala"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Leihoak/_Utilitatea"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Leihoak/_Harrerako pantaila"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Leihoak/_Goiko atrakagarria"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Leihoak/_Azpiko atrakagarria"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Leihoak/E_zkerreko atrakagarria"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Leihoak/E_skuineko atrakagarria"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Leihoak/Atrakagarri _denak"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Leihoak/_Mahaigaina"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Hau mezu adibide bat da, adibidezko elkarrizketa-koadro batekin"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Menuko %d elementu faltsua\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Ertz-soileko leihoa"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Barra"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Aplikazio normalaren leihoa"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Elkarrizketa-koadroko kutxa"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Elkarrizketa-koadroko kutxa modala"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta utilitatea"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menua itzalita"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Ertza"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Botoi diseinuen %d. proba"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisegundo leiho-markoa marrazteko"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Erabilera: marco-theme-viewer [GAIA]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Errorea gaia kargatzean: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" gaia %g segundotan kargatua\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Tituluko letra-tipo normala"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Tituluko letra-tipo txikia"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Tituluko letra-tipo handia"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Botoien diseinua"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Proba-lekua"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Leihoaren titulua hemen doa"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d marko %g bezero-aldeko segundotan (%g milisegundo/markoko) marraztua eta "
+"denbora estandarreko %g segundo X zerbitzariko errekurtsoak barne (%g "
+"milisegundo/markoko)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "adierazpenaren posizioko probak TRUE itzuli du, baina errore bat ezarri du"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "adierazpenaren posizioko probak FALSE itzuli du, baina ez du errorerik ezarri"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Errorea espero zen, baina ez da gertatu"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "%d errorea espero zen, baina %d gertatu da"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Errorerik ez zen espero, baina bat itzuli du: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x balioa %d zen, %d espero zenean"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y balioa %d zen, %d espero zenean"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d koordenada adierazpen analizatua %g segundotan (%g segundo batezbesteko)\n"
+
diff --git a/po/fa.po b/po/fa.po
new file mode 100644
index 00000000..d7e5d74a
--- /dev/null
+++ b/po/fa.po
@@ -0,0 +1,3236 @@
+# Persian translation of marco.
+# Copyright (C) 2003, 2005, 2006 Sharif FarsiWeb, Inc.
+# Roozbeh Pournader <[email protected]>, 2003.
+# Elnaz Sarbar <[email protected]>, 2005, 2006.
+# Meelad Zakaria <[email protected]>, 2006.
+# Farzaneh Sarafraz <[email protected]>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco HEAD\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-02-16 09:13+0100\n"
+"PO-Revision-Date: 2006-02-18 16:19+0330\n"
+"Last-Translator: Farzaneh Sarafraz <[email protected]>\n"
+"Language-Team: Persian\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "کاربرد: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:131
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "متاسیتی بدون پشتیبانی حالت مفصل ترجمه شده است\n"
+
+#: ../src/delete.c:64 ../src/delete.c:91 ../src/marco-dialog.c:71
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "«%s»به عنوان عدد صحیح قابل تجزیه نیست "
+
+#: ../src/delete.c:71 ../src/delete.c:98 ../src/marco-dialog.c:78
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "نویسه‌ی «%s» در رشته‌ی «%s» قابل درک نیست"
+
+#: ../src/delete.c:129
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "شکست در تجزیه پیغام «%s» از پردازش محاوره\n"
+
+#: ../src/delete.c:264
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "خطا در خواندن از پردازش نمایش محاوره: %s\n"
+
+#: ../src/delete.c:345
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"خطا در راه‌اندازی marco-dialog برای پرسش درباره کشتن یک برنامه‌ی کاربردی: %"
+"s\n"
+
+#: ../src/delete.c:453
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "شکست در گرفتن نام میزبان: %s\n"
+
+#: ../src/display.c:308
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "شکست در باز کردن نمایش «%s» سیستم پنجره‌ی X\n"
+
+#: ../src/errors.c:233
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"از دست دادن اتصال برای نمایش «%s»؛\n"
+"به احتمال زیاد کارگزار X خاموش شده است یا شما مدیر پنجره‌ها را\n"
+"تخریب کرده‌اید یا کشته‌اید.\n"
+
+#: ../src/errors.c:240
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "خطای مهلک ورودی/خروجی %Id (%s) هنگام نمایش «%s».\n"
+
+#: ../src/frames.c:1097
+msgid "Close Window"
+msgstr "بستن پنجره"
+
+#: ../src/frames.c:1100
+msgid "Window Menu"
+msgstr "منوی پنجره"
+
+#: ../src/frames.c:1103
+msgid "Minimize Window"
+msgstr "حداقل کردن پنجره"
+
+#: ../src/frames.c:1106
+msgid "Maximize Window"
+msgstr "حداکثر کردن پنجره"
+
+#: ../src/frames.c:1109
+msgid "Unmaximize Window"
+msgstr "ناحداکثر کردن پنجره"
+
+#: ../src/keybindings.c:996
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"برنامه‌ی دیگری کلید %s را با تغییردهنده‌های %x برای مقیدسازی به کار می‌برد\n"
+
+#: ../src/keybindings.c:2534
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr "خطا در راه‌اندازی marco-dialog برای چاپ خطا درباره‌ی یک فرمان: %s\n"
+
+#: ../src/keybindings.c:2639
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr " فرمان %Id تعریف نشده است.\n"
+
+#: ../src/keybindings.c:3501
+msgid "No terminal command has been defined.\n"
+msgstr "هیچ فرمان پایانه‌ای تعریف نشده است.\n"
+
+#: ../src/main.c:70
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"این نرم‌افزار آزاد است؛ برای دیدن شرایط نسخه‌برداری متن برنامه را ببینید.\n"
+"هیچ تضمینی وجود ندارد؛ حتی در مورد قابلیت تجاری یا مناسبت برای\n"
+" یک هدف به خصوص.\n"
+
+#: ../src/main.c:258
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:264
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:270
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:275
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:281
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:287
+msgid "Print version"
+msgstr ""
+
+#: ../src/main.c:439
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "شکست در پویش شاخه‌ی تم‌ها: %s\n"
+
+#: ../src/main.c:455
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr "تم پیدا نشد! مطمئن شوید %s .وجود دارد و شامل تم‌های معمول است"
+
+#: ../src/main.c:527
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "شکست در راه‌اندازی مجدد: %s\n"
+
+#: ../src/menu.c:55
+msgid "Mi_nimize"
+msgstr "حداقل کردن"
+
+#: ../src/menu.c:56
+msgid "Ma_ximize"
+msgstr "حداکثر کردن"
+
+#: ../src/menu.c:57
+msgid "Unma_ximize"
+msgstr "ناحداکثر کردن"
+
+#: ../src/menu.c:58
+msgid "Roll _Up"
+msgstr "جمع کردن"
+
+#: ../src/menu.c:59
+msgid "_Unroll"
+msgstr "پهن کردن"
+
+#: ../src/menu.c:60 ../src/menu.c:61
+msgid "On _Top"
+msgstr "همیشه رو"
+
+#: ../src/menu.c:62
+msgid "_Move"
+msgstr "جابه‌جایی"
+
+#: ../src/menu.c:63
+msgid "_Resize"
+msgstr "تغییر اندازه"
+
+#: ../src/menu.c:64
+msgid "Move Titlebar On_screen"
+msgstr ""
+
+#. separator
+#: ../src/menu.c:66
+msgid "_Close"
+msgstr "بستن"
+
+#. separator
+#: ../src/menu.c:68
+msgid "_Always on Visible Workspace"
+msgstr "_همیشه در فضای کاری قابل مشاهده"
+
+#: ../src/menu.c:69
+msgid "_Only on This Workspace"
+msgstr "_فقط در این فضای کاری"
+
+#: ../src/menu.c:70
+msgid "Move to Workspace _Left"
+msgstr "نقل‌مکان به فضای کاری _چپ"
+
+#: ../src/menu.c:71
+msgid "Move to Workspace R_ight"
+msgstr "نقل‌مکان به فضای کاری _راست"
+
+#: ../src/menu.c:72
+msgid "Move to Workspace _Up"
+msgstr "نقل‌مکان به فضای کاری _بالا "
+
+#: ../src/menu.c:73
+msgid "Move to Workspace _Down"
+msgstr "نقل‌مکان به فضای کاری _پایین"
+
+#: ../src/menu.c:164 ../src/prefs.c:1978 ../src/prefs.c:2279
+#, c-format
+msgid "Workspace %d"
+msgstr "فضای کاری %Id"
+
+#: ../src/menu.c:173
+msgid "Workspace 1_0"
+msgstr "فضای کاری ۱_۰"
+
+#: ../src/menu.c:175
+#, c-format
+msgid "Workspace %s%d"
+msgstr "فضای کاری %s%Id"
+
+#: ../src/menu.c:370
+msgid "Move to Another _Workspace"
+msgstr "نقل‌مکان به فضای کاری دیگر"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:103
+msgid "Shift"
+msgstr "تبدیل"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:109
+msgid "Ctrl"
+msgstr "مهار"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:115
+msgid "Alt"
+msgstr "دگرساز"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:121
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:127
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:133
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:139
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:145
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:151
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:157
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:111
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr "پنجره‌ی «%s» پاسخ نمی‌دهد."
+
+#: ../src/marco-dialog.c:119
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr "اجبار این برنامه به ترک باعث از دست رفتن تغییرات ذخیره نشده می‌شود."
+
+#: ../src/marco-dialog.c:130
+msgid "_Force Quit"
+msgstr "ترک اجباری"
+
+#: ../src/marco-dialog.c:227
+msgid "Title"
+msgstr "عنوان"
+
+#: ../src/marco-dialog.c:239
+msgid "Class"
+msgstr "رده"
+
+#: ../src/marco-dialog.c:265
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"این پنجره‌ها «ذخیره‌ی برپاسازی فعلی» را پشتیبانی نمی‌کنند و باید در ورود بعدی "
+"به سیستم به صورت دستی راه‌اندازی مجدد شوند. "
+
+#: ../src/marco-dialog.c:331
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"شکست هنگام اجرای «%s»:\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "متاسیتی"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(پیاده‌سازی نشده) ناوش در میان برنامه‌ها کار می‌کند نه پنجره‌ها"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr ""
+"رشته‌ی شرح قلم که قلم نوارهای عنوان پنجره را شرح می‌دهد. اما تنها زمانیکه "
+"گزینه‌ی titlebar_font_size، 0 تنظیم شده باشد، اندازه‌ی شرح استفاده می‌شود. به "
+"علاوه در صورتی که گزینه‌ی titlebar_uses_desktop_font درست تنظیم شده باشداین "
+"گزینه از کار انداخته می‌شود. طبق پیش فرض، titlebar_font تنظیم نشدهاست که باعث "
+"می‌شود متاسیتی از قلم رومیزی استفاده کند حتی اگر "
+"titlebar_uses_desktop_fontنادرست باشد."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "کنشی که با دوبار کلیک روی نوار عنوان انجام می‌شود"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr "فعال کردن منوی پنجره"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr "آرایش دکمه‌ها روی نوار عنوان"
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"آرایش دکمه‌ها روی نوار عنوان. مقدار باید یک رشته باشد. مثلاً «menu:minimize,"
+"maximize,close»؛ دونقطه، گوشه‌ی چپ پنجره را ازگوشه‌ی راست جدا می‌کند و نام "
+"دکمه‌ها با ویرگول از هم جدا می‌شوند.دکمه تکراری مجاز نیست. دکمه‌های ناشناس در "
+"سکوت نادیده گرفته می‌شوند تا دکمه‌های جدید بدون از کار انداختن نسخه‌های قدیمی‌تر "
+"به نسخه‌های آینده‌ی متاسیتی اضافه شوند."
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr "پنجره مورد تمرکز را به طور خودکار پیش‌بکشد."
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"کلیک کردن روی یک پنجره در حین پایین نگه داشتن این کلید تغییردهنده، باعث حرکت "
+"پنجره (کلیک چپ)، تغییر اندازه‌ی پنجره (کلیک وسط) یا نمایش منوی پنجره (کلیک "
+"راست) می‌شود. تغییردهنده به صورت مثلاً«&lt;Alt&gt;» یا «&lt;Super&gt;» نمایش "
+"داده می‌شود."
+
+#: ../src/marco.schemas.in.h:9
+msgid "Close window"
+msgstr "بستن پنجره"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "فرمان‌هایی که در پاسخ به کلیدهای مقید اجرا می‌شوند"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr "تم فعلی"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "تأخیر به میلی ثانیه برای گزینه‌ی پیش آوردن خودکار "
+
+#: ../src/marco.schemas.in.h:13
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"مشخص می‌کند که برنامه‌ها یا سیستم می‌توانند «بوق» قابل شنیدن تولید کنند یا نه: "
+"ممکن است همزمان با «زنگ دیداری» به کار رود تا «بوق» بی‌صدا امکان پذیر شود."
+
+#: ../src/marco.schemas.in.h:14
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"از کار انداختن امکانات معیوبی که مورد نیاز برنامه‌های قدمی یا از کارافتاده‌اند "
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr "به کار انداختن زنگ دیداری"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Hide all windows and focus desktop"
+msgstr "مخفی کردن همه‌ی پنجره‌ها و تمرکز روی رومیزی"
+
+#: ../src/marco.schemas.in.h:17
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key). This preference is poorly named, but "
+"kept for backwards compatibility. To try to be more clear (at least to the "
+"technically inclined), its meaning is \"automatically raise the window "
+"following a timeout which is triggered by non-grabbed mouse entry in sloppy "
+"or mouse focus modes\". It is unrelated to clicking behavior (i.e. this is "
+"not related to raise-on-click/orthogonal-raise). It is unrelated to entering "
+"a window during drag and drop (because that results in the application "
+"grabbing the mouse)"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"اگر درست باشد گزینه‌ی titlebar_font نادیده گرفته شده و برای عنوان پنجره‌ها از "
+"قلم استاندارد برنامه استفاده می‌شود."
+
+#: ../src/marco.schemas.in.h:19
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+"اگر درست باشد، متاسیتی با استفاده از چارچوب‌های سیمی، نشان ندادن پویانمایی‌ها "
+"یا به طرق دیگر، بازخوردهای کمتر و حس «دستکاری مستقیم» کمتری به کاربر می‌دهد. "
+"این کار باعث تقلیل محسوس قابلیت کاربری برای بسیاری از کاربران می‌شود، ولی "
+"شاید برنامه‌ها و کارگزارهای پایانه‌ی قدیمی را قادر سازد در شرایطی کار کنند که "
+"در غیر این صورت کار نمی‌کردند. به هر حال هنگامی که دسترسی‌پذیری روشن است برای "
+"جلوگیری از خرابی‌های غیرعادی رومیزی، امکانات چارچوب‌های سیمی از کار انداخته "
+"می‌شود."
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr ""
+"اگر درست باشد، متاسیتی بر مبنای برنامه‌ها کار می‌کند نه پنجره‌ها. این مفهوم کمی "
+"مجرد است، ولی عموماً برپاسازی بر پایه‌ی برنامه بیشتر شبیه مکینتاش و کمتر شبیه "
+"ویندوز است. در حالت بر پایه‌ی برنامه وقتی روی یک پنجره تمرکز می‌کنید، همه‌ی "
+"پنجره‌های برنامه پیش می‌آیند. همچنین، در حالت بر پایه‌ی برنامه، کلیک‌های تمرکز "
+"به پنجره‌های برنامه‌های دیگر رد نمی‌شوند. وجود این تنظیمات تا حدودی سؤال "
+"برانگیز است. ولی بهتر از داشتن تنظیمات برای همه‌ی جزئیات خاص بر پایه‌ی برنامه "
+"در برابر بر پایه‌ی پنجره است، مثلاً این که کلیک ‌ها رد بشوند یا نه. در ضمن، "
+"حالت بر پایه‌ی برنامه در حال حاضر تا حدود زیادی پیاده‌سازی نشده است."
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"اگر درست بود از قابلیت کاربری در قبال استفاده‌ی کمتر از منابع صرف نظر شود"
+
+#: ../src/marco.schemas.in.h:22
+msgid "Lower window below other windows"
+msgstr "پایین بردن پنجره زیر پنجره‌های دیگر"
+
+#: ../src/marco.schemas.in.h:23
+msgid ""
+"Many actions (e.g. clicking in the client area, moving or resizing the "
+"window) normally raise the window as a side-effect. Set this option to false "
+"to decouple raising from other user interactions. When false, windows can "
+"still be raised by an alt-left-click anywhere on the window or a normal "
+"click on the window decorations (assuming such clicks aren't used to start a "
+"move or resize operation). Special messages, such as activation requests "
+"from pagers, may also raise windows when this option is false. This option "
+"is currently disabled in click-to-focus mode."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:24
+msgid "Maximize window"
+msgstr "حداکثر کردن پنجره"
+
+#: ../src/marco.schemas.in.h:25
+msgid "Maximize window horizontally"
+msgstr "حداکثر کردن افقی پنجره"
+
+#: ../src/marco.schemas.in.h:26
+msgid "Maximize window vertically"
+msgstr "حداکثر کردن عمودی پنجره"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Minimize window"
+msgstr "حداقل کردن پنجره"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"تغییردهنده‌ای که برای کنش‌های کلیک روی پنجره‌ی تغییر داده شده به کار می‌رود"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Move backward between panels and the desktop immediately"
+msgstr "جابه‌جایی آنی به عقب بین تابلو و رومیزی"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "جابه‌جایی به عقب بین تابلوها و رومیزی با واشو"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Move backwards between windows immediately"
+msgstr "جابه‌جایی آنی به عقب بین پنجره‌ها"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move between panels and the desktop immediately"
+msgstr "جابه‌جایی آنی بین تابلو و رومیزی"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move between panels and the desktop with popup"
+msgstr "جابه‌جایی بین تابلوها و رومیزی با واشو"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move between windows immediately"
+msgstr "جابه‌جایی آنی بین پنجره‌ها"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move between windows with popup"
+msgstr "جابه‌جایی بین پنجره‌ها با واشو"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move focus backwards between windows using popup display"
+msgstr "انتقال تمرکز به عقب بین پنجره‌ها با نمایش واشو"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move window"
+msgstr "جابه‌جایی پنجره"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move window one workspace down"
+msgstr "جابه‌جایی پنجره به فضای کاری پایینی"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move window one workspace to the left"
+msgstr "جابه‌جایی پنجره به فضای کاری چپ "
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move window one workspace to the right"
+msgstr "جابه‌جایی پنجره به فضای کاری راست"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move window one workspace up"
+msgstr "جابه‌جایی پنجره به فضای کاری بالایی"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move window to workspace 1"
+msgstr "جابه‌جایی پنجره به فضای کاری ۱"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move window to workspace 10"
+msgstr "جابه‌جایی پنجره به فضای کاری ۱۰"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window to workspace 11"
+msgstr "جابه‌جایی پنجره به فضای کاری ۱۱"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window to workspace 12"
+msgstr "جابه‌جایی پنجره به فضای کاری ۱۲"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window to workspace 2"
+msgstr "جابه‌جایی پنجره به فضای کاری ۲"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window to workspace 3"
+msgstr "نقل‌مکان پنجره به فضای کاری ۳"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window to workspace 4"
+msgstr "جابه‌جایی پنجره به فضای کاری ۴"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 5"
+msgstr "جابه‌جایی پنجره به فضای کاری ۵"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 6"
+msgstr "جابه‌جایی پنجره به فضای کاری ۶"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 7"
+msgstr "جابه‌جایی پنجره به فضای کاری ۷"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 8"
+msgstr "جابه‌جایی پنجره به فضای کاری ۸"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Move window to workspace 9"
+msgstr "جابه‌جایی پنجره به فضای کاری ۹"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Name of workspace"
+msgstr "نام فضای کاری"
+
+#: ../src/marco.schemas.in.h:55
+msgid "Number of workspaces"
+msgstr "تعداد فضاهای کاری"
+
+#: ../src/marco.schemas.in.h:56
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr ""
+"تعداد فضاهای کاری. باید بیش از صفر باشد و حداکثر مشخصی دارد (برای این که "
+"اتفاقی رومیزی‌تان را با درخواست ۳۴ میلیون فضای کاری از بین نبرید)."
+
+#: ../src/marco.schemas.in.h:57
+msgid "Raise obscured window, otherwise lower"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:58
+msgid "Raise window above other windows"
+msgstr "پیش آوردن پنجره روی همه‌ی پنجره‌ها"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Resize window"
+msgstr "تغییر اندازه‌ی پنجره"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Run a defined command"
+msgstr "اجرای یک فرمان تعریف شده"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Run a terminal"
+msgstr "اجرای پایانه"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Show the panel menu"
+msgstr "نشان دادن منوی تابلو"
+
+#: ../src/marco.schemas.in.h:63
+msgid "Show the panel run application dialog"
+msgstr "نشان دادن محاوره‌ی اجرای برنامه‌ی تابلو"
+
+#: ../src/marco.schemas.in.h:64
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+"بعضی از برنامه‌ها قواعد جزئی را طوری نقض می‌کنند که به بد کار کردن مدیر "
+"پنجره‌ها منجر می‌شود. به عنوان مثال، متاسیتی در وضع مطلوب تمام محاوره‌ها را در "
+"وضعیت سازگار با پنجره‌ی والد آن‌ها قرار می‌دهد. این مسأله نیازمند نادیده گرفتن "
+"مشخصات برنامه‌ها برای وضعیت محاوره‌ها است. اما بعضی از نسخه‌های Java/Swing "
+"منوهای واشو را به عنوان محاوره ثبت می‌کنند و متاسیتی مجبور است برای کار کردن "
+"منوها در برنامه‌های خراب جاوا جاگذاری محاوره را از کار بیاندازد. مثال‌های "
+"مختلف دیگری نیز از این دست وجود دارند. این گزینه متاسیتی را در حالت درست با "
+"همه‌ی گزینه‌ها قرار می‌دهد که احتمالاً اگر نیاز به اجرای برنامه‌های خراب نداشته "
+"باشید، واسط کاربر بهتری خواهد داشت. متأسفانه دور زدن‌ها را باید به طور پیش "
+"فرض به کار انداخت؛ دنیای واقعی جای زشتی است. بعضی از دور زدن‌ها دورزدن "
+"کمبودهای خود قواعد جزئی هستند، بنابراین بعضی وقت‌ها اشکال در حالت دور زدن "
+"بدون دستکاری قواعد قبل رفع نیست."
+
+#: ../src/marco.schemas.in.h:65
+msgid "Switch to workspace 1"
+msgstr "تعویض به فضای کاری ۱"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Switch to workspace 10"
+msgstr "تعویض به فضای کاری ۱۰"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Switch to workspace 11"
+msgstr "تعویض به فضای کاری ۱۱"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Switch to workspace 12"
+msgstr "تعویض به فضای کاری ۱۲"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Switch to workspace 2"
+msgstr "تعویض به فضای کاری ۲"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Switch to workspace 3"
+msgstr "تعویض به فضای کاری ۳"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Switch to workspace 4"
+msgstr "تعویض به فضای کاری ۴"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 5"
+msgstr "تعویض به فضای کاری ۵"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 6"
+msgstr "تعویض به فضای کاری ۶"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 7"
+msgstr "تعویض به فضای کاری ۷"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 8"
+msgstr "تعویض به فضای کاری ۸"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace 9"
+msgstr "تعویض به فضای کاری ۹"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace above this one"
+msgstr "تعویض به فضای کاری بالایی"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace below this one"
+msgstr "تعویض به فضای کاری پایینی"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace on the left"
+msgstr "تعویض به فضای کاری چپ"
+
+#: ../src/marco.schemas.in.h:80
+msgid "Switch to workspace on the right"
+msgstr "تعویض به فضای کاری راست"
+
+#: ../src/marco.schemas.in.h:81
+msgid "System Bell is Audible"
+msgstr "زنگ سیستم قابل شنیدن است"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Take a screenshot"
+msgstr "عکس گرفتن از صفحه"
+
+#: ../src/marco.schemas.in.h:83
+msgid "Take a screenshot of a window"
+msgstr "عکس گرفتن از پنجره "
+
+#: ../src/marco.schemas.in.h:84
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"به متاسیتی می‌گوید چطور شاخص تصویری‌ای که زنگ سیستم یا برنامه‌ی شاخص «زنگ» "
+"دیگری به صدا در آمده است را پیاده‌سازی کند. در حال حاضر دو مقدار معتبر وجود "
+"دارند، «fullscreen» که سبب یک جرقه‌ی سیاه و سفید تمام‌صفحه می‌شود، و "
+"«frame_flsh» که سبب می‌شود نوار عنوان برنامه‌ای که سیگنال زنگ را ارسال کرده "
+"جرقه بزند. اگر برنامه‌ای که سیگنال زنگ را فرستاده نامعلوم باشد (که معمولاً در "
+"مورد برای «بوق سیستم» پیش‌فرض این طور است)، نوار عنوان پنجره‌ای که فعلاً مورد "
+"تمرکز است جرقه می‌زند."
+
+#: ../src/marco.schemas.in.h:85
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"کلیدهای /apps/marco/global_keybindings/run_command_N کلیدهای مقیدی تعریف "
+"می‌کنند که متناظر با این فرمان‌ها هستند. فشار دادن کلید مقید برای "
+"run_command_N، command_N را اجرا خواهد کرد."
+
+#: ../src/marco.schemas.in.h:86
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"کلید /apps/marco/global_keybindings/run_command_screenshot کلید مقیدی "
+"تعریف می‌کند که سبب می‌شود فرمان مشخص شده با این تنظیم احضار شود."
+
+#: ../src/marco.schemas.in.h:87
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"کلید /apps/marco/global_keybindings/run_command_window_screenshot کلید "
+"مقیدی تعریف می‌کند که سبب می‌شود فرمان مشخص شده با این تنظیم احضار شود."
+
+#: ../src/marco.schemas.in.h:88
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که فرمان correspondingly-numbered را در/appsmarco/"
+"keybinding_commands اجرا می‌کند: قالب آن به شکل«&lt;Control&gt;a» یا «&lt;"
+"Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا "
+"کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر "
+"این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این "
+"کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:89
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"مقیدسازی کلیدی که فضای کاری فعلی را با فضای کاری بالایی تعویض می‌کند؛ قالب آن "
+"به شکل«&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به "
+"نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و "
+"«&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:90
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"مقیدسازی کلیدی که فضای کاری فعلی را با فضای کاری پایینی تعویض می‌کند؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1»است. این تجزیه‌گر به "
+"نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و "
+"«&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:91
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که فضای کاری فعلی را با فضای کاری چپش تعویض می‌کند؛ قالب آن به "
+"شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1»است. این تجزیه‌گر به "
+"نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و "
+"«&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:92
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که فضای کاری فعلی را با فضای کاری راستش تعویض می‌کند؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1»است. این تجزیه‌گر به "
+"نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و "
+"«&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:93
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری ۱. قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:94
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری ۱۰. قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:95
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری ۱۱. قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:96
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری ۱۲. قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:97
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری ۲. قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:98
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری ۳. قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:99
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری ۴. قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:100
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری ۵. قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری۶. قالب آن به شکل «&lt;Control&gt;a» یا "
+"«&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری ۷. قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری ۸. قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید برای تعویض به فضای کاری ۹. قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبتآسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل«&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی«disabled» قرار دهید، کلید مقیدی "
+"برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای فعال‌سازی منوی پنجره به کار می‌رود؛ قالب آن به شکل «&lt;"
+"Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت "
+"آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;"
+"Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» "
+"قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای بستن پنجره به کار می‌رود؛ قالب آن به شکل «&lt;"
+"Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت "
+"آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;"
+"Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» "
+"قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای وارد شدن به «حالت جابه‌جایی» و شروع جابه‌جایی پنجره با "
+"استفاده از صفحه‌کلید به کار می‌رود؛ قالب آن به شکل «&lt;Control&gt;a» یا «&lt;"
+"Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا "
+"کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر "
+"این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این "
+"کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای وارد شدن به «حالت تغییر اندازه» و شروع تغییر اندازه‌ی "
+"پنجره با استفاده از صفحه‌کلید به کار می‌رود؛ قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای پنهان کردن تمام پنجره‌های عادی و قرار دادن تمرکز بر "
+"پس‌زمینه‌ی رومیزی به کار می‌رود؛ قالب آن به شکل «&lt;Control&gt;a» یا «&lt;"
+"Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا "
+"کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر "
+"این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این "
+"کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای حداکثر کردن پنجره به کار می‌رود؛ قالب آن به شکل «&lt;"
+"Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت "
+"آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;"
+"Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» "
+"قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای حداقل کردن پنجره به کار می‌رود؛ قالب آن به شکل «&lt;"
+"Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت "
+"آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;"
+"Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» "
+"قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به یک فضای کاری پایین‌تر به کار می‌رود؛ "
+"قالب آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این "
+"تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;"
+"Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی "
+"ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری چپش به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری راستش به کار می‌رود؛ قالب "
+"آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این "
+"تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;"
+"Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی "
+"ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به یک فضای کاری بالاتر به کار می‌رود؛ "
+"قالب آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این "
+"تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;"
+"Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی "
+"ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۱ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۱۰ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۱۱ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۱۲ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۲ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۳ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۴ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۵ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۶ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۷ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۸ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی پنجره به فضای کاری ۹ به کار می‌رود؛ قالب آن "
+"به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر "
+"به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» "
+"و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی "
+"«disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی تمرکز به عقب بین تابلوها و رومیزی، با "
+"استفاده از یک پنجره‌ی واشو به کار می‌رود؛ قالب آن به شکل «&lt;Control&gt;a» یا "
+"«&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی تمرکز به عقب بین تابلوها و رومیزی، بدون "
+"استفاده از پنجره‌ی واشو به کار می‌رود؛ قالب آن به شکل «&lt;Control&gt;a» یا "
+"«&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی تمرکز به عقب بین پنجره‌ها بدون استفاده از "
+"پنجره‌ی واشو به کار می‌رود؛ نگه داشتن «تبدیل» همراه با این کلید مقید سبب رو به "
+"جلو شدن جهت می‌شود. قالب آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;"
+"Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه "
+"کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را "
+"برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش وجود "
+"نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی تمرکز به عقب بین پنجره‌ها، با استفاده از یک "
+"پنجره‌ی واشو به کار می‌رود؛ نگه داشتن «تبدیل» همراه با این کلید مقید سبب رو به "
+"جلو شدن جهت می‌شود. قالب آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;"
+"Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه "
+"کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را "
+"برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش وجود "
+"نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی تمرکز بین تابلوها و رومیزی، با استفاده از یک "
+"پنجره‌ی واشو به کار می‌رود؛ قالب آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;"
+"&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و "
+"خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این "
+"گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش "
+"وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی تمرکز بین تابلوها و رومیزی، بدون استفاده از "
+"پنجره‌ی واشو به کار می‌رود؛ قالب آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;"
+"&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و "
+"خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این "
+"گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش "
+"وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی تمرکز بین پنجره‌ها بدون استفاده از پنجره‌ی "
+"واشو به کار می‌رود؛ قالب آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;"
+"Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه "
+"کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را "
+"برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش وجود "
+"نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای جابه‌جایی تمرکز بین پنجره‌ها با استفاده از پنجره‌ی واشو "
+"به کار می‌رود؛ (&lt;Alt&gt;Tab طبق سنت) نگهداشتن کلید «تبدیل» هنگام استفاده "
+"از این کلید مقید جهت حرکت را برعکس می‌کند.قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید ضامن همیشه بالا. پنجره‌ای که همیشه بالا است، روی تمام پنجره‌هایی "
+"که هم‌پوشانی دارند دیده خواهد شد؛ قالب آن به شکل «&lt;Control&gt;a» یا «&lt;"
+"Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا "
+"کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر "
+"این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این "
+"کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید ضامن حالت تمام صفحه. قالب آن به شکل «&lt;Control&gt;a» یا «&lt;"
+"Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا "
+"کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر "
+"این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این "
+"کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید ضامن حداکثر کردن. قالب آن به شکل «&lt;Control&gt;a» یا «&lt;"
+"Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا "
+"کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر "
+"این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این "
+"کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلید ضامن وضعیت سایه‌دار با بدون سایه. قالب آن به شکل «&lt;"
+"Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت "
+"آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;"
+"Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» "
+"قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"مقیدسازی کلید ضامن وجود پنجره در تمام فضاهای کاری یا فقط یک فضای کاری. قالب "
+"آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این "
+"تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;"
+"Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی "
+"ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برای ناحداکثر کردن پنجره به کار می‌رود. قالب آن به شکل «&lt;"
+"Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت "
+"آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;"
+"Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» "
+"قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"مقیدسازی کلیدی که جعبه‌ی محاوره‌ی «اجرای برنامه»ی تابلو را نمایش می‌دهد؛ قالب "
+"آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این "
+"تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;"
+"Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی "
+"ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که یک پایانه احضار می‌کند؛ قالب آن به شکل «&lt;Control&gt;a» "
+"یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف "
+"بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+"می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+"مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که برنامه‌ی عکس از صفحه را احضار می‌کند تا یک عکس از صفحه‌ی "
+"پنجره بگیرد؛ قالب آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;"
+"F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن "
+"به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر "
+"با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد "
+"داشت."
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"مقیدسازی کلیدی که برنامه‌ی عکس از صفحه را احضار می‌کند؛ قالب آن به شکل «&lt;"
+"Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت "
+"آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;"
+"Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» "
+"قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:146
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"مقیدسازی کلیدی که منوی اصلی تابلو را نشان می‌دهد؛ قالب آن به شکل «&lt;"
+"Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت "
+"آسان‌گیر است و حروف بزرگ یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;"
+"Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» "
+"قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:147
+msgid "The name of a workspace."
+msgstr "نام فضای کاری."
+
+#: ../src/marco.schemas.in.h:148
+msgid "The screenshot command"
+msgstr "فرمان عکس از صفحه"
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"تم، قیافه‌ی کناره‌ی پنجره‌ها، نوار عنوان و چیزهایی از این دست را تعیین می‌کند."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"تأخیر زمانی قبل از پیش کشیدن پنجره در صورتی که auto_raise روی درست تنظیم شده "
+"باشد. تأخیر به هزارم ثانیه داده شده است."
+
+#: ../src/marco.schemas.in.h:151
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"حالت تمرکز پنجره نحوه‌ی فعال‌سازی پنجره‌ها را نشان می‌دهد. سه مقدار می‌تواند "
+"بگیرد؛ «click» یعنی برای تمرکز روی پنجره‌ها رویشان کلیک شود، «sloppy» یعنی "
+"وقتی موشی وارد پنجره‌ای شد تمرکز روی آن پنجره قرار بگیرد و «mouse» یعنی وقتی "
+"موشی وارد پنجره‌ای شد تمرکز روی آن قرار بگیرد و وقتی خارج شد تمرکز از روی آن "
+"برداشته شود."
+
+#: ../src/marco.schemas.in.h:152
+msgid "The window screenshot command"
+msgstr "فرمان عکس از صفحه‌ی پنجره"
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"این کلید مقید زیر یا رو بودن یک پنجره را نسبت به بقیه پنجره‌ها تغییر می‌دهد. "
+"اگر پنجره با پنجره‌ی دیگری پوشیده شده باشد، آن را پیش می‌آورد. اگر پنجره به "
+"طور کامل دیده شود، آن را زیر پنجره‌های دیگر قرار می‌دهد. قالب آن به شکل «&lt;"
+"Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت "
+"آسان‌گیر است و حروف بزرگ یا کوچک یا خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;"
+"Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» "
+"قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"این کلید مقید یک پنجره را زیر پنجره‌های دیگر قرار می‌دهد. قالب آن به شکل «&lt;"
+"Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت "
+"آسان‌گیر است و حروف بزرگ یا کوچک یا خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;"
+"Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» "
+"قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"این کلید مقید یک پنجره را روی پنجره‌های دیگر پیش می‌آورد. قالب آن به شکل «&lt;"
+"Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت "
+"آسان‌گیر است و حروف بزرگ یا کوچک یا خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;"
+"Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» "
+"قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"این کلید مقید اندازه‌ی یک پنجره را تغییر می‌دهد تا فضای افقی موجود را پر کند. "
+"قالب آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این "
+"تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک یا خلاصه کردن به شکل «&lt;"
+"Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی "
+"ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"این کلید مقید اندازه‌ی یک پنجره را تغییر می‌دهد تا فضای عمودی موجود را پر کند. "
+"قالب آن به شکل «&lt;Control&gt;a» یا «&lt;Shift&gt;&lt;Alt&gt;F1» است. این "
+"تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ یا کوچک یا خلاصه کردن به شکل «&lt;"
+"Ctl&gt;» و «&lt;Ctrl&gt;» را قبول می‌کند. اگر این گزینه را برابر با رشته‌ی "
+"ویژه‌ی «disabled» قرار دهید، کلید مقیدی برای این کنش وجود نخواهد داشت."
+
+#: ../src/marco.schemas.in.h:158
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"این گزینه تأثیر دوبار کلیک روی نوار عنوان را تعیین می‌کند. گزینه‌های معتبر "
+"فعلی عبارتند از «toggle_shade» که پنجره را سایه خورده یا بدون سایه می‌کند، "
+"«toggle_maximize» که پنجره را حداکثر یا ناحداکثر می‌کند، «minimize»که پنجره "
+"را حداقل می‌کند، و «none» که کاری انجام نمی‌دهد."
+
+#: ../src/marco.schemas.in.h:159
+msgid "Toggle always on top state"
+msgstr "ضامن همیشه در وضعیت بالایی"
+
+#: ../src/marco.schemas.in.h:160
+msgid "Toggle fullscreen mode"
+msgstr "ضامن حالت تمام صفحه"
+
+#: ../src/marco.schemas.in.h:161
+msgid "Toggle maximization state"
+msgstr "ضامن همیشه در وضیعت حداکثر"
+
+#: ../src/marco.schemas.in.h:162
+msgid "Toggle shaded state"
+msgstr "ضامن وضعیت سایه خورده"
+
+#: ../src/marco.schemas.in.h:163
+msgid "Toggle window on all workspaces"
+msgstr "ضامن پنجره در تمام فضاهای کاری"
+
+#: ../src/marco.schemas.in.h:164
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+"هنگامی که یک برنامه یا سیستم «زنگ»‌ یا «بوق» می‌زند، یک شاخص تصویری را روشن "
+"می‌کند: مفید برای گوش‌های سنگین و برای استفاده در محیط‌های پر سر و صدا یا زمانی "
+"که «زنگ شنیداری» خاموش است."
+
+#: ../src/marco.schemas.in.h:165
+msgid "Unmaximize window"
+msgstr "ناحداکثر کردن پنجره"
+
+#: ../src/marco.schemas.in.h:166
+msgid "Use standard system font in window titles"
+msgstr "استفاده از قلم استاندارد سیستم در عنوان پنجره‌ها"
+
+#: ../src/marco.schemas.in.h:167
+msgid "Visual Bell Type"
+msgstr "نوع زنگ دیداری"
+
+#: ../src/marco.schemas.in.h:168
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:169
+msgid "Window focus mode"
+msgstr "حالت تمرکز پنجره"
+
+#: ../src/marco.schemas.in.h:170
+msgid "Window title font"
+msgstr "قلم عنوان پنجره"
+
+#: ../src/prefs.c:560 ../src/prefs.c:576 ../src/prefs.c:592 ../src/prefs.c:608
+#: ../src/prefs.c:624 ../src/prefs.c:640 ../src/prefs.c:660 ../src/prefs.c:676
+#: ../src/prefs.c:692 ../src/prefs.c:708 ../src/prefs.c:724 ../src/prefs.c:740
+#: ../src/prefs.c:756 ../src/prefs.c:772 ../src/prefs.c:789 ../src/prefs.c:805
+#: ../src/prefs.c:821 ../src/prefs.c:837 ../src/prefs.c:853 ../src/prefs.c:868
+#: ../src/prefs.c:883 ../src/prefs.c:898 ../src/prefs.c:914 ../src/prefs.c:930
+#: ../src/prefs.c:946
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "کلید «%s» MateConf از نوع نامعتبری تنظیم شده است\n"
+
+#: ../src/prefs.c:991
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"«%s» پیدا شده در پایگاه‌داده‌ی پیکربندی مقدار معتبری برای تغییردهنده‌ی دکمه‌ی "
+"موشی نیست\n"
+
+#: ../src/prefs.c:1015 ../src/prefs.c:1505
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "کلید «%s» GCon به مقدار نامعتبری تنظیم شده است\n"
+
+#: ../src/prefs.c:1138
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+"range 1..128\n"
+msgstr ""
+"%Id ذخیره شده در کلید %s MateConf عدد معقولی برای اندازه‌ی مکان‌نما نیست؛ باید در "
+"محدوده‌ی ۱ تا ۱۲۸ باشد\n"
+
+#: ../src/prefs.c:1218
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "تجزیه‌ی شرح قلم «%s» از کلید MateConf %s ممکن نیست\n"
+
+#: ../src/prefs.c:1403
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+"%Id ذخیره شده در کلید %s MateConf عدد معقولی برای تعداد فضاهای کاری نیست، "
+"حداکثر فعلی %Id است\n"
+
+#: ../src/prefs.c:1463
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"دور زدن برنامه‌های از کار افتاده، از کار انداخته شده است. بعضی از برنامه‌ها "
+"ممکن است رفتار مناسبی نداشته باشند.\n"
+
+#: ../src/prefs.c:1532
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "%Id ذخیره شده در کلید MateConf %s خارج از محدوده‌ی ۰ تا %Id است\n"
+
+#: ../src/prefs.c:1669
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "خطای تنظیم تعداد فضاهای کاری به %Id: %s\n"
+
+#: ../src/prefs.c:2005
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"«%s» که در پایگاه داده‌ی پیکربندی پیدا شده مقدار معتبری برای کلید مقید «%s» "
+"نیست\n"
+
+#: ../src/prefs.c:2360
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "خطای تنظیم نام فضای کاری %Id به \"%s\": %s\n"
+
+#: ../src/resizepopup.c:126
+#, c-format
+msgid "%d x %d"
+msgstr "%Id × %Id"
+
+#: ../src/screen.c:403
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "صفحه‌ی %Id روی نمایشگر «%s» نامعتبر است\n"
+
+#: ../src/screen.c:419
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"صفحه‌ی %Id روی نمایشگر «%s» مدیر پنجره‌ها دارد. برای جایگزین کردنمدیر پنجره‌های "
+"فعلی از گزینه‌ی --replace استفاده کنید.\n"
+
+#: ../src/screen.c:443
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "انتخاب مدیر پنجره‌ها روی صفحه‌ی %Id نمایش «%s»\n"
+
+#: ../src/screen.c:501
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "صفحه‌ی %Id روی نمایشگر «%s» مدیر پنجره دارد\n"
+
+#: ../src/screen.c:702
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "آزاد کردن صفحه‌ی %Id روی نمایشگر «%s» ممکن نیست\n"
+
+#: ../src/session.c:835 ../src/session.c:842
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "ایجاد شاخه‌ی «%s» ممکن نیست: %s\n"
+
+#: ../src/session.c:852
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "باز کردن پرونده‌ی نشست «%s» برای نوشتن ممکن نیست: %s\n"
+
+#: ../src/session.c:1004
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "خطا در نوشتن پرونده‌ی نشست «%s»: %s\n"
+
+#: ../src/session.c:1009
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "خطا در بستن پرونده‌ی نشست «%s»: %s\n"
+
+#: ../src/session.c:1084
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "شکست در خواندن پرونده‌ی نشست ذخیره شده %s: %s\n"
+
+#: ../src/session.c:1119
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "شکست در تجزیه‌ی پرونده‌ی نشست ذخیره شده: %s\n"
+
+#: ../src/session.c:1168
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "مشخصه‌ی <marco_session> دیده شد اما شناسه‌ی نشست از قبل موجود بود"
+
+#: ../src/session.c:1181
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "مشخصه‌ی %s روی عنصر <marco_session> نامعلوم است"
+
+#: ../src/session.c:1198
+msgid "nested <window> tag"
+msgstr "برچسب <window> تودرتو است"
+
+#: ../src/session.c:1256 ../src/session.c:1288
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "مشخصه‌ی ‌%s روی عنصر <window> نامعلوم است"
+
+#: ../src/session.c:1360
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "مشخصه‌ی ‌%s روی عنصر <maximized> نامعلوم است"
+
+#: ../src/session.c:1420
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "مشخصه‌ی ‌%s روی عنصر <geometry> نامعلوم است"
+
+#: ../src/session.c:1440
+#, c-format
+msgid "Unknown element %s"
+msgstr "عنصر %s نامعلوم است"
+
+#: ../src/session.c:1906
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"خطا در راه‌اندازی marco-dialog برای هشدار در مورد برنامه‌هایی که مدیریت "
+"نشست را پشتیبانی نمی‌کنند: %s\n"
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "خط %Id نویسه‌ی %Id: %s"
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "مشخصه‌ی «%s» در عنصر <%s> دو بار تکرار شده است"
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "مشخصه‌ی «%s» در این موقعیت روی عنصر <%s> نامعتبر است"
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "عدد صحیح %ld باید مثبت باشد"
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "عدد صحیح %ld خیلی بزرگ است، حداکثر فعلی %d است"
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "«%s» به عنوان عدد اعشاری ممیز شناور قابل تجزیه نیست"
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "مقدار بولی باید «درست» یا «نادرست» باشد نه «%s»"
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "زاویه %Ig بود، باید بین ۰٫۰ و ۳۶۰٫۰ باشد\n"
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "آلفا %Ig بود، باید بین ۰٫۰ (نامرئی) و ۱٫۰ (به تمامی تیره) باشد\n"
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"مقیاس عنوان «%s» نامعتبر است (باید xx-small یا x-small یا small یا medium یا "
+"large یا x-large یا xx-large باشد)\n"
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "عنصر <%2$s> مشخصه‌ی «%1$s» ندارد"
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> نام «%s» برای بار دوم استفاده شده است"
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> والد «%s» تعریف نشده است"
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> پیکربندی ظاهری «%s» تعریف نشده است"
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> باید پیکربندی ظاهری یا والدی که پیکربندی ظاهری داشته باشد مشخص شود"
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "نوع «%s» روی عنصر <%s> نامعلوم است"
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set «%s» روی عنصر <%s> نامعلوم است"
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr " نوع پنجره‌ی «%s» قبلاً به یک مجموعه‌ی سبک تخصیص داد شده است"
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr "تابع «%s» برای شمایل منو نامعلوم است"
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr "وضعیت «%s» برای شمایل منو نامعلوم است"
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr "تم در حال حاضر برای تابع %s وضعیت %s شمایل منو دارد"
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "<draw_ops> با نام «%s» تعریف نشده است"
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "عنصر <%s> زیر <%s> مجاز نیست"
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «name» ندارد"
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «value» ندارد"
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"button_width/button_height و نسبت عرض به ارتفاع دکمه‌ها هم زمان مشخص "
+"نمی‌شوند "
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "فاصله‌ی «%s» نامعلوم است"
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "نسبت عرض به ارتفاع «%s» نامعلوم است"
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «top» ندارد"
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «bottom» ندارد"
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «left» ندارد"
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «right» ندارد"
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "کناره‌ی «%s» نامعلوم است"
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «color» ندارد"
+
+#: ../src/theme-parser.c:1662
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «x1» ندارد"
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «y1» ندارد"
+
+#: ../src/theme-parser.c:1676
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «x2» ندارد"
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «y2» ندارد"
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «x» ندارد"
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «y» ندارد"
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «width» ندارد"
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «height» ندارد"
+
+#: ../src/theme-parser.c:1903
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «start_angle» ندارد"
+
+#: ../src/theme-parser.c:1910
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «extent_angle» ندارد"
+
+#: ../src/theme-parser.c:2090
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «alpha» ندارد"
+
+#: ../src/theme-parser.c:2161
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «type» ندارد"
+
+#: ../src/theme-parser.c:2209
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "مقدار «%s» برای نوع شیب قابل درک نیست"
+
+#: ../src/theme-parser.c:2294
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «filename» ندارد"
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «state» ندارد"
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «shadow» ندارد"
+
+#: ../src/theme-parser.c:2476
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "عنصر <%s> مشخصه‌ی «arrow» ندارد"
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "وضعیت «%s» برای عنصر <%s> قابل درک نیست"
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "سایه‌ی «%s» برای عنصر <%s> قابل درک نیست"
+
+#: ../src/theme-parser.c:2549
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "پیکان «%s» برای عنصر <%s> قابل درک نیست"
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "<draw_ops> با نام «%s» تعریف نشده است"
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "گنجاندن draw_ops «%s» در اینجا، مرجع دوری ایجاد می‌کند"
+
+#: ../src/theme-parser.c:3153
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "عنصر <%s> مشخصه‌ی «value» ندارد"
+
+#: ../src/theme-parser.c:3210
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "عنصر <%s> مشخصه‌ی «position» ندارد"
+
+#: ../src/theme-parser.c:3219
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "موقعیت «%s» برای قطعه‌ی چارچوب نامعلوم است"
+
+#: ../src/theme-parser.c:3227
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "سبک چارچوب در حال حاضر قطعه‌ای در موقعیت %s دارد"
+
+#: ../src/theme-parser.c:3272
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "عنصر <%s> مشخصه‌ی «function» ندارد"
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "عنصر <%s> مشخصه‌ی «state» ندارد"
+
+#: ../src/theme-parser.c:3289
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "تابع «%s» برای دکمه نامعلوم است"
+
+#: ../src/theme-parser.c:3298
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "وضعیت «%s» برای دکمه نامعلوم است"
+
+#: ../src/theme-parser.c:3306
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "سبک چارچوب در حال حاضر برای تابع %s وضعیت %s دکمه دارد"
+
+#: ../src/theme-parser.c:3376
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "عنصر <%s> مشخصه‌ی «focus» ندارد"
+
+#: ../src/theme-parser.c:3392
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "عنصر <%s> مشخصه‌ی «style» ندارد"
+
+#: ../src/theme-parser.c:3401
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "«%s» مقدار معتبری برای مشخصه‌ی تمرکز نیست"
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "«%s» مقدار معتبری برای مشخصه‌ی وضعیت نیست"
+
+#: ../src/theme-parser.c:3420
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "سبکی با نام «%s» تعریف نشده است"
+
+#: ../src/theme-parser.c:3430
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "عنصر <%s> مشخصه‌ی «resize» ندارد"
+
+#: ../src/theme-parser.c:3440
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "«%s» مقدار معتبری برای مشخصه‌ی تغییر اندازه نیست"
+
+#: ../src/theme-parser.c:3450
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"عنصر <%s> در وضعیت‌های حداکثر و سایه خورده مشخصه‌ی «resize» نباید داشته باشد"
+
+#: ../src/theme-parser.c:3464
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "سبک، در حال حاضر، برای وضعیت %s تغییر اندازه %s تمرکز %s مشخص شده است"
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "سبک، در حال حاضر، برای وضعیت %s تمرکز %s مشخص شده است"
+
+#: ../src/theme-parser.c:3536
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"عنصر <piece> نمی‌تواند دو draw_ops داشته باشد. (تم یک مشخصه‌ی draw_ops و یک "
+"عنصر <draw_ops> یا دو عنصر مشخص کرده است) "
+
+#: ../src/theme-parser.c:3574
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"عنصر <button> نمی‌تواند دو draw_ops داشته باشد. (تم یک مشخصه‌ی draw_ops و یک "
+"عنصر <draw_ops> یا دو عنصر مشخص کرده است) "
+
+#: ../src/theme-parser.c:3612
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"عنصر <menu_icon> نمی‌تواند دو draw_ops داشته باشد. (تم یک مشخصه‌ی draw_ops و "
+"یک عنصر <draw_ops> یا دو عنصر مشخص کرده است) "
+
+#: ../src/theme-parser.c:3659
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "بیرونی‌ترین عنصر تم باید <marco_theme> باشد نه <%s>"
+
+#: ../src/theme-parser.c:3679
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"عنصر <%s> درون عنصرهای name یا author یا date یا description جایز نیست"
+
+#: ../src/theme-parser.c:3684
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "عنصر <%s> درون عنصر <constant> جایز نیست"
+
+#: ../src/theme-parser.c:3696
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "عنصر <%s> درون عنصرهای disanceیا border یا aspect_ratio جایز نیست"
+
+#: ../src/theme-parser.c:3718
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "عنصر <%s> داخل عنصر عملیات رسم مجاز نیست"
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "عنصر <%s> درون یک عنصر <%s> جایز نیست"
+
+#: ../src/theme-parser.c:3984
+msgid "No draw_ops provided for frame piece"
+msgstr "draw_ops برای قطعه‌ی چارچوب منظور نشده است"
+
+#: ../src/theme-parser.c:3999
+msgid "No draw_ops provided for button"
+msgstr "draw_ops برای دکمه منظور نشده است"
+
+#: ../src/theme-parser.c:4014
+msgid "No draw_ops provided for menu icon"
+msgstr "draw_ops برای شمایل منو منظور نشده است"
+
+#: ../src/theme-parser.c:4054
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "هیچ متنی درون عنصر <%s> جایز نیست"
+
+#: ../src/theme-parser.c:4109
+msgid "<name> specified twice for this theme"
+msgstr "<name> دو بار برای این تم مشخص شده است"
+
+#: ../src/theme-parser.c:4120
+msgid "<author> specified twice for this theme"
+msgstr "<author> دو بار برای این تم مشخص شده است"
+
+#: ../src/theme-parser.c:4131
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> دو بار برای این تم مشخص شده است"
+
+#: ../src/theme-parser.c:4142
+msgid "<date> specified twice for this theme"
+msgstr "<date> دو بار برای این تم مشخص شده است"
+
+#: ../src/theme-parser.c:4153
+msgid "<description> specified twice for this theme"
+msgstr "<description> دو بار برای این تم مشخص شده است"
+
+#: ../src/theme-parser.c:4348
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr "شکست در خواندن تم از پرونده‌ی %s: %s\n"
+
+#: ../src/theme-parser.c:4403
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "پرونده‌ی تم %s شامل یک عنصر <marco_theme> شاخه نیست"
+
+#: ../src/theme-viewer.c:72
+msgid "/_Windows"
+msgstr "/پنجره‌ها"
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/tearoff"
+msgstr "پنجره‌ها/کنده‌شدنی"
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Dialog"
+msgstr "/پنجره‌ها/محاوره"
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Modal dialog"
+msgstr "پنجره‌ها/محاوره‌ی وجهی"
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Utility"
+msgstr "پنجره‌ها/برنامه"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:82
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/theme-viewer.c:83
+msgid "/Windows/Des_ktop"
+msgstr "/پنجره‌ها/رومیزی"
+
+#: ../src/theme-viewer.c:132
+msgid "Open another one of these windows"
+msgstr "یکی دیگر از این پنجره‌ها بازشود"
+
+#: ../src/theme-viewer.c:139
+msgid "This is a demo button with an 'open' icon"
+msgstr "این یک دکمه‌ی نمایشی با شمایل «بازکردن» است"
+
+#: ../src/theme-viewer.c:146
+msgid "This is a demo button with a 'quit' icon"
+msgstr "این یک دکمه‌ی نمایشی با شمایل «ترک» است"
+
+#: ../src/theme-viewer.c:239
+msgid "This is a sample message in a sample dialog"
+msgstr "این یک پیغام نمونه در یک محاوره‌ی نمونه است"
+
+#: ../src/theme-viewer.c:322
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "مورد %Id منوی جعلی\n"
+
+#: ../src/theme-viewer.c:356
+msgid "Border-only window"
+msgstr "پنجره‌ی فقط کناره‌دار"
+
+#: ../src/theme-viewer.c:358
+msgid "Bar"
+msgstr "نوار"
+
+#: ../src/theme-viewer.c:375
+msgid "Normal Application Window"
+msgstr "پنجره‌ی عادی برنامه"
+
+#: ../src/theme-viewer.c:379
+msgid "Dialog Box"
+msgstr "جعبه‌ی محاوره"
+
+#: ../src/theme-viewer.c:383
+msgid "Modal Dialog Box"
+msgstr "جعبه‌ی محاوره‌ی چند حالتی"
+
+#: ../src/theme-viewer.c:387
+msgid "Utility Palette"
+msgstr "تخته‌رنگ برنامه‌"
+
+#: ../src/theme-viewer.c:391
+msgid "Torn-off Menu"
+msgstr "منوی کنده شدنی"
+
+#: ../src/theme-viewer.c:395
+msgid "Border"
+msgstr "کناره"
+
+#: ../src/theme-viewer.c:723
+#, c-format
+msgid "Button layout test %d"
+msgstr "آزمایش %Id چیدمان دکمه‌ها"
+
+#: ../src/theme-viewer.c:752
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%Ig میلی ثانیه برای کشیدن چارچوب یک پنجره"
+
+#: ../src/theme-viewer.c:795
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "کاربرد: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/theme-viewer.c:802
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "خطا در بارگذاری تم : %s\n"
+
+#: ../src/theme-viewer.c:808
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "تم‌ «%s» در %Ig ثانیه بارشد\n"
+
+#: ../src/theme-viewer.c:831
+msgid "Normal Title Font"
+msgstr "قلم عنوان عادی"
+
+#: ../src/theme-viewer.c:837
+msgid "Small Title Font"
+msgstr "قلم عنوان ریز"
+
+#: ../src/theme-viewer.c:843
+msgid "Large Title Font"
+msgstr "قلم عنوان درشت"
+
+#: ../src/theme-viewer.c:848
+msgid "Button Layouts"
+msgstr "چیدمان‌های دکمه‌ها"
+
+#: ../src/theme-viewer.c:853
+msgid "Benchmark"
+msgstr "آزمایش محک"
+
+#: ../src/theme-viewer.c:900
+msgid "Window Title Goes Here"
+msgstr "عنوان پنجره اینجا قرار می‌گیرد"
+
+#: ../src/theme-viewer.c:1004
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%Id چارچوب در %Ig ثانیه‌ی سمت مخدوم (%Ig میلی ثانیه برای هر چارچوب) و %Ig "
+"ثانیه‌ی ساعت دیواری شامل منابع خادم X (%Ig میلی ثانیه برای هر چارچوب)\n"
+
+#: ../src/theme-viewer.c:1219
+msgid "position expression test returned TRUE but set error"
+msgstr "آزمایش عبارت وضعیت، درست بازگرداند ولی خطا تنظیم کرد"
+
+#: ../src/theme-viewer.c:1221
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "آزمایش عبارت وضعیت، نادرست بازگرداند ولی خطایی تنظیم نکرد"
+
+#: ../src/theme-viewer.c:1225
+msgid "Error was expected but none given"
+msgstr "انتظار خطا می‌رفت ولی خطایی مشاهده نشد"
+
+#: ../src/theme-viewer.c:1227
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "انتظار خطای %Id می‌رفت ولی خطای %Id مشاهده شد"
+
+#: ../src/theme-viewer.c:1233
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "انتظار خطا نمی‌رفت ولی خطایی برگردانده شد: %s"
+
+#: ../src/theme-viewer.c:1237
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "مقدار x %Id بود، %Id انتظار می‌رفت"
+
+#: ../src/theme-viewer.c:1240
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "مقدار y %Id بود، %Id انتظار می‌رفت"
+
+#: ../src/theme-viewer.c:1303
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%Id عبارت مختصاتی در %Ig ثانیه تجزیه شد (متوسط %Ig ثانیه)\n"
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "بالا"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "پایین"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "چپ"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "راست"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "پیکربندی ظاهری چارچوب بعد «%s» را مشخص نمی‌کند"
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "پیکربندی ظاهری چارچوب بعد «%s» را برای کناره‌ی «%s» مشخص نمی‌کند"
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "%Ig به عنوان نسبت طول به عرض دکمه معقول نیست"
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr "پیکربندی ظاهری چارچوب اندازه‌ی دکمه‌ها را مشخص نمی‌کند"
+
+#: ../src/theme.c:842
+msgid "Gradients should have at least two colors"
+msgstr "شیب‌ها باید حداقل دو رنگ داشته باشند"
+
+#: ../src/theme.c:968
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"وضعیت در مشخصه‌ی رنگ GTK باید داخل قلاب نوشته شود، به طور مثال gtk:fg[NORMAL] "
+"که NORMAL وضعیت است: »%s» قابل تجزیه نیست"
+
+#: ../src/theme.c:982
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"در مشخصه‌ی رنگ GTK باید بعد از وضعیت، قلاب بسته داشته باشد، به طور مثال gtk:fg"
+"[NORMAL] که NORMAL وضعیت است: »%s» قابل تجزیه نیست"
+
+#: ../src/theme.c:993
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "وضعیت «%s» در مشخصه‌ی رنگ قابل درک نیست"
+
+#: ../src/theme.c:1006
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "مؤلفه‌ی «%s» در مشخصه‌ی رنگ قابل درک نیست"
+
+#: ../src/theme.c:1036
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"قالب ترکیب «blend/bg_color/fg_color/alpha» است، «%s» در قالب اندازه نمی‌شود"
+
+#: ../src/theme.c:1047
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "ارزش آلفای «%s» در رنگ ترکیب شده قابل تجزیه نیست"
+
+#: ../src/theme.c:1057
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "ارزش آلفای «%s» در رنگ ترکیب شده بین ۰٫۰ و ۱٫۰ نیست"
+
+#: ../src/theme.c:1104
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "قالب سایه «shade/base_color/factor» است، «%s» در قالب اندازه نمی‌شود"
+
+#: ../src/theme.c:1115
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "‌عامل سایه‌ی «%s» در رنگ سایه خورده قابل تجزیه نیست"
+
+#: ../src/theme.c:1125
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "عامل سایه‌ی «%s» در رنگ سایه خورده منفی است"
+
+#: ../src/theme.c:1154
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "رنگ «%s» قابل تجزیه نیست"
+
+#: ../src/theme.c:1416
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "عبارت مختصاتی شامل نویسه‌ی «%s» است که جایز نیست"
+
+#: ../src/theme.c:1443
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "عبارت مختصاتی شامل عدد اعشار ممیز شناور «%s» است که قابل تجزیه نیست"
+
+#: ../src/theme.c:1457
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "عبارت مختصاتی شامل عددصحیح «%s» است که قابل تجزیه نیست"
+
+#: ../src/theme.c:1524
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "عبارت مختصاتی شامل عملگر نامعلومی در ابتدای متن است: «%s»"
+
+#: ../src/theme.c:1581
+msgid "Coordinate expression was empty or not understood"
+msgstr "عبارت مختصاتی خالی بود یا قابل درک نبود"
+
+#: ../src/theme.c:1724 ../src/theme.c:1734 ../src/theme.c:1768
+msgid "Coordinate expression results in division by zero"
+msgstr "عبارت مختصاتی موجب تقسیم به صفر می‌شود"
+
+#: ../src/theme.c:1776
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"عبارت مختصاتی سعی دارد از عملگر باقی مانده روی عدد اعشاری ممیز شناوری استفاد "
+"کند"
+
+#: ../src/theme.c:1832
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr " عبارت مختصاتی در جایی که انتظار عملوند می‌رفت، عملگر«%s» داشت"
+
+#: ../src/theme.c:1841
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "عبارت مختصاتی در جایی که انتظار عملگر "
+
+#: ../src/theme.c:1849
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "عبارت مختصاتی به جای عملوند با عملگر تمام می‌شود"
+
+#: ../src/theme.c:1859
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"در عبارت مختصاتی، عملگر «%c» بدون هیچ عملوندی به دنبال عملگر «%c» آمده است"
+
+#: ../src/theme.c:1978
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr ""
+"تجزیه‌گر عبارت مختصاتی میانگیرش را سریز کرد، این واقعاً اشکال متاسیتی است، اما "
+"شما مطمئنید که به چنین عبارت بزرگی نیاز دارید؟"
+
+#: ../src/theme.c:2007
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "عبارت مختصاتی پرانتر بسته‌ای دارد که پرانتز باز ندارد"
+
+#: ../src/theme.c:2069
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "عبارت مختصاتی متغییر یا ثابت «%s» نامعلوم دارد"
+
+#: ../src/theme.c:2126
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "عبارت مختصاتی پرانتر بازی دارد که پرانتز بسته ندارد"
+
+#: ../src/theme.c:2137
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "به نظر نمی‌رسد که عبارت مختصاتی عملگر یا عملوندی داشته باشد"
+
+#: ../src/theme.c:2381 ../src/theme.c:2403 ../src/theme.c:2424
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "تم شامل عبارت «%s» است که منجر به خطا می‌شود: %s\n"
+
+#: ../src/theme.c:3910
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/>باید برای این "
+"سبک چارچوب مشخص شود"
+
+#: ../src/theme.c:4360 ../src/theme.c:4392
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> نبود"
+
+#: ../src/theme.c:4443
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "شکست در بارکردن تم «%s»: %s\n"
+
+#: ../src/theme.c:4597 ../src/theme.c:4604 ../src/theme.c:4611
+#: ../src/theme.c:4618 ../src/theme.c:4625
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "<%s> برای تم «%s» تنظیم نشده است"
+
+#: ../src/theme.c:4635
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"سبک جارچوب برای نوع پنجره «%s» در تم «%s» تنظیم نشده است، یک عنصر <window "
+"type=\"%s\" style_set=\"whatever\"/> اضافه کنید"
+
+#: ../src/theme.c:4657
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> باید برای "
+"این تم مشخص شود "
+
+#: ../src/theme.c:5046 ../src/theme.c:5108
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"ثابت‌هایی که کاربر تعریف کرده اسن باید با حروف بزرگ شروع شوند؛ «%s» این طور "
+"نیست "
+
+#: ../src/theme.c:5054 ../src/theme.c:5116
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "ثابت «%s» قبلاً تعریف شده است"
+
+#: ../src/util.c:96
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "شکست در بازکردن ثبت وقایع اشکال‌زدایی: %s\n"
+
+#: ../src/util.c:106
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "شکست در انجام fdopen() پرونده‌ی ثبتی %s: %s\n"
+
+#: ../src/util.c:112
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "پرونده‌ی ثبتی %s باز شد\n"
+
+#: ../src/util.c:220
+msgid "Window manager: "
+msgstr "مدیر پنجره‌ها: "
+
+#: ../src/util.c:366
+msgid "Bug in window manager: "
+msgstr "اشکال در مدیر پنجره‌ها: "
+
+#: ../src/util.c:395
+msgid "Window manager warning: "
+msgstr "هشدار مدیر پنجره‌ها: "
+
+#: ../src/util.c:419
+msgid "Window manager error: "
+msgstr "خطای مدیر پنجره‌ها: "
+
+#: ../src/window-props.c:169
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "برنامه _NET_WM_PID %Ilu جعلی تنظیم کرده است\n"
+
+#. first time through
+#: ../src/window.c:5409
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"پنجره %s به جای تنظیم SM_CLIENT_ID روی پنجره‌ی WM_CLIENT_LEADER طبق ICCCM "
+"آن را روی خودش تنظیم کرده است.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:6028
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"پنجره‌ی %s یک راهنمای MWM تنظیم می‌کند که نشان می‌دهد امکان تغییر اندازه ندارد، "
+"اما اندازه‌ی حداقل را %Id × %Id و اندازه‌ی حداکثر را %Id × %Id تنظیم می‌کند؛ "
+"این منطقی نیست.\n"
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"پنجره‌ی 0x%lx ویژگی %s را دارد که \n"
+"انتظار می‌رفت از نوع %s قالب %Id باشد\n"
+"اما از نوع %s قالب %Id n_items %Id بود.\n"
+"این به احتمال زیاد اشکال برنامه است نه اشکال مدیر پنجره‌ها.\n"
+"در این پنجره title=«%s» class=«%s» name=«%s» است\n"
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "ویژگی %s روی پنجره‌ی 0x%lx UTf-8 نامعتبر دارد\n"
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "ویژگی %s روی پنجره‌ی 0x%lx برای مورد %Id در فهرست، UTf-8 نامعتبر دارد\n"
+
+#~ msgid ""
+#~ "If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+#~ "focused window will be automatically raised after a delay (the delay is "
+#~ "specified by the auto_raise_delay key)."
+#~ msgstr ""
+#~ "اگر درست باشد و حالت تمرکز «sloppy» یا «mouse» باشد، پنجره‌یمورد تمرکز به "
+#~ "طور خودکار بعد از تاخیری که با auto_raise_delay مشخصمی‌شود، پیش کشیده "
+#~ "می‌شود."
+
+#~ msgid ""
+#~ "The keybinding that runs the correspondingly-numbered command in /apps/"
+#~ "marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1. The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "مقیدسازی کلیدی که فرمان correspondingly-numbered را در ‎/appsmarco/"
+#~ "keybinding_commands اجرا می‌کند: قالب آن به شکل«&lt;Control&gt;a» یا «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1» است. این تجزیه‌گر به نسبت آسان‌گیر است و حروف بزرگ "
+#~ "یا کوچک و خلاصه کردن به شکل «&lt;Ctl&gt;» و «&lt;Ctrl&gt;» را قبول "
+#~ "می‌کند. اگر این گزینه را برابر با رشته‌ی ویژه‌ی «disabled» قرار دهید، کلید "
+#~ "مقیدی برای این کنش وجود نخواهد داشت."
+
+#~ msgid "No \"%s\" attribute on element <%s>"
+#~ msgstr "عنصر <%2$s> مشخصه‌ی «%1$s» ندارد"
diff --git a/po/fi.po b/po/fi.po
new file mode 100644
index 00000000..8e1a730b
--- /dev/null
+++ b/po/fi.po
@@ -0,0 +1,2402 @@
+# Marco Finnish translation.
+# Suomennos: http://mate-fi.sourceforge.net/
+#
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Pauli Virtanen <[email protected]>, 2003-2005.
+# Ilkka Tuohela <[email protected]> 2005-2008.
+# Tommi Vainikainen <[email protected]>, 2009-2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-19 14:51+0200\n"
+"PO-Revision-Date: 2010-03-19 14:51+0200\n"
+"Last-Translator: Tommi Vainikainen <[email protected]>\n"
+"Language-Team: Finnish <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Työtila"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Ikkunoiden hallinta"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Kellonsoitto"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Tuntematon ikkunatietojen pyyntö: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> ei vastaa."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Voit odottaa sovellusta vielä hetken valitsemalla ”Odota”, tai sulkea "
+"sovelluksen väkisin heti."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Odota"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "Sulje _väkisin"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Verkkonimen haku epäonnistui: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Kerrostukseen vaadittava laajennos %s puuttuu"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X-ikkunointijärjestelmän näytön ”%s” avaaminen epäonnistui\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Yhteys näyttöön ”%s” katkesi:\n"
+"todennäköisesti X-palvelin sammutettiin tai tapoit\n"
+"ikkunointiohjelman.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Vakava IO-virhe %d (%s) näytöllä ”%s”.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Jokin muu ohjelma käyttää jo näppäintä %s muunnoksin %x pikanäppäimenään\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Komentoa <tt>%s</tt> suorittaessa tapahtui virhe:\n"
+"\n"
+"%s."
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Mitään komentoa %d ei ole määritelty.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Mitään päätteen komentoa ei ole määritelty.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Tekijänoikeudet © 2001-%s Havoc Pennington, Red Hat, Inc., ja muut\n"
+"Tämä on vapaata ohjelmistoa: katso kopiointiehdot lähdekoodista.\n"
+"Ei MINKÄÄNLAISTA takuuta: ei edes takuuta MYYNTIKELPOISUUDESTA tai\n"
+"SOPIVUUDESTA JOHONKIN KÄYTTÖÖN.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Estä yhteys sessionhallintaan"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Vaihda käytössä oleva ikkunamanageri marcoyn"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Anna sessionhallinnan ID"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Käytettävä X-näyttö"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Alusta sessio tiedostosta"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Näytä versio"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Käytä synkronisia X-kutsuja"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Käytä kerrostusta"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Älä käytä kerrostusta"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Älä tee kokoruutuikkunoita, jotka on suurennettu ja joilla ei ole reunoja"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Teemakansion lukeminen epäonnistui: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Teemaa ei löydy! Varmista, että %s on olemassa, ja sisältää tavalliset "
+"teemat.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Uudelleenkäynnistys epäonnistui: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf-avain ”%s” on asetettu arvoltaan vääräksi\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "arvo %d MateConf-avaimessa %s ei ole väliltä %d - %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf-avain ”%s” on asetettu väärän tyyppiseksi\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Rikkinäisten sovellusten kiertotiet eivät ole käytössä. Jotkin sovellukset "
+"eivät välttämättä käyttäydy kunnolla.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "MateConf-avaimesta %2$s saatu kirjasinkuvaus ”%1$s” ei jäsenny\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Asetustietokannassa oleva ”%s” ei ole kelvollinen hiiren muunnosnäppäin\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Virhe työtilojen määrän asettamisessa arvoon %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Työtila %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"”%s”, joka on asetustietokannassa, ei ole kelvollinen näppäinsidonnan ”%s” "
+"arvo\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Virhe työtilan %d nimen asettamisessa nimeksi ”%s”: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Virhe asetettaessa kerrostuksen tilaa: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Näytön ”%2$s” ruutu %1$d ei ole kelvollinen\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Näytön ”%2$s” ruudulla %1$d on jo ikkunointiohjelma: kokeile valitsinta --"
+"replace, jos haluat korvata nykyisen ikkunointiohjelman.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Näytön ”%2$s” ruudun %1$d ikkunointiohjelman valinnan hankkiminen "
+"epäonnistui\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Näytön ”%2$s” ruudulla %1$d on jo ikkunointiohjelma\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Näytön ”%2$s” ruudun %1$d vapauttaminen ei onnistunut\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Pikanäppäimet ovat muotoa ”<Control>a” tai ”<Shift><Alt>F1”.\n"
+"\n"
+"Jäsennin on varsin vapaamielinen, ei välitä kirjainkoosta ja ymmärtää myös "
+"lyhenteitä, kuten ”<Ctl>” ja ”<Ctrl>”. Jos vaihdat arvoksi erityisen "
+"merkkijonon ”disabled”, niin tähän toimintoon ei liity pikanäppäintä."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Pikanäppäimet ovat muotoa ”<Control>a” tai ”<Shift><Alt>F1”.\n"
+"\n"
+"Jäsennin on varsin vapaamielinen, ei välitä kirjainkoosta ja ymmärtää myös "
+"lyhenteitä, kuten ”<Ctl>” ja ”<Ctrl>”. Jos vaihdat arvoksi erityisen "
+"merkkijonon ”disabled”, niin tähän toimintoon ei liity pikanäppäintä.\n"
+"\n"
+"Tämä pikanäppäin voidaan muuttaa käänteiseksi pitämällä ”Shift”-näppäin "
+"alhaalla, joten ”Shift” ei voi olla yksikään käytetyistä näppäimistä."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Kansion ”%s” luominen ei onnistunut: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ""
+"Istuntotiedoston ”%s” avaaminen kirjoittamista varten ei onnistunut: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Virhe istuntotiedoston ”%s” kirjoittamisessa: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Virhe istuntotiedoston ”%s” sulkemisessa: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Tallennetun istuntotiedoston ”%s” luku epäonnistui: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Tallennetun istuntotiedoston jäsennys epäonnistui: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session>-määre havaittu, mutta istunnon ID on jo selvinnyt"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Tuntematon <%2$s>-elementin määre %1$s"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "sisäkkäiset <window>-laput"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Tuntematon elementti %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Nämä ikkunat eivät ymmärrä ”tallenna nykyinen tila”-komentoa, ja ne täytyy "
+"käynnistää käsin uudelleen kun kirjaudut seuraavan kerran sisään."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Vianetsintälokin avaaminen epäonnistui: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Lokitiedoston ”%s” fdopen() epäonnistui: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Lokitiedosto %s avattu\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco on käännetty ilman tukea monisanaisille ilmoituksille\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Ikkunointiohjelma:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Vika ikkunointiohjelmassa."
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Ikkunointiohjelman varoitus:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Ikkunointiohjelmavirhe:"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Ikkuna %s asetti SM_CLIENT_ID:n itselleen, ei WM_CLIENT_LEADERia, kuten sen "
+"ICCCM:n mukaan olisi pitänyt tehdä.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Ikkuna %s asetti MWM-vihjeen ilmoittaakseen, ettei sen kokoa voi muuttaa, "
+"mutta asetti myös minimikoon %d × %d ja maksimikoon %d × %d, mikä ei ole "
+"järkevää.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Sovellus asetti ylimääräisen _NET_WM_PIDin %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s @ %s"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (pääkäyttäjänä)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (käyttäjänä %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (toisena käyttäjänä)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Virheellinen WM_TRANSIENT_FOR ikkuna 0x%lx kohteelle %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Ikkunalla 0x%lx on ominaisuus %s\n"
+"jonka odotettu tyyppi on %s ja muoto %d,\n"
+"mutta on todella tyyppi %s, muoto %d, n_items %d.\n"
+"Vika on todennäköisesti sovelluksessa, ei ikkunointiohjelmassa.\n"
+"Ikkunan otsikko on ”%s”, luokka ”%s” ja nimi ”%s”\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Ikkunan 0x%2$lx ominaisuus %1$s sisälsi virheellistä UTF-8:aa\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Ikkunan 0x%2$lx ominaisuus %1$s sisälsi virheellistä UTF-8:aa luettelon "
+"kohdassa %3$d\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Siirry työtilaan 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Siirry työtilaan 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Siirry työtilaan 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Siirry työtilaan 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Siirry työtilaan 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Siirry työtilaan 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Siirry työtilaan 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Siirry työtilaan 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Siirry työtilaan 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Siirry työtilaan 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Siirry työtilaan 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Siirry työtilaan 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Siirry nykyisestä vasemmalla olevaan työtilaan"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Siirry nykyisestä oikealla olevaan työtilaan"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Siirry nykyisen yllä olevaan työtilaan"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Siirry nykyisen alla olevaan työtilaan"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Siirry sovelluksen ikkunoiden välillä ponnahdusikkunalla"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Siirry taaksepäin sovelluksen ikkunoiden välillä ponnahdusikkunalla"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Siirry ikkunoiden välillä ponnahdusikkunalla"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Siirry taaksepäin ikkunoiden välillä ponnahdusikkunalla"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Siirry paneeleiden ja työpöydän välillä ponnahdusikkunalla"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Siirry taaksepäin paneeleiden ja työtilan välillä ponnahdusikkunalla"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Siirry heti sovelluksen ikkunoiden välillä"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Siirry heti taaksepäin sovelluksen ikkunoiden välillä"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Siirry heti ikkunoiden välillä"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Siirry heti taaksepäin ikkunoiden välillä"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Siirry heti paneeleiden ja työtilan välillä"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Siirry heti taaksepäin paneelien ja työpöydän välillä"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Piilota kaikki ikkunat ja kohdista työpöytä"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Näytä paneelin päävalikko"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Näytä paneelin ”Suorita sovellus”-ikkuna"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Ota kuvakaappaus"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Ota kuvakaappaus ikkunasta"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Käynnistä pääte"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Aktivoi ikkunavalikko"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Vaihda kokoruututilaa"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Vaihda suurennustilaa"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Vaihda tilaa, jossa ikkuna on aina näkyvissä muiden ikkunoiden päällä"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Suurenna ikkuna"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Palauta ikkuna"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Vaihda rullaustilaa"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Pienennä ikkuna"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Sulje ikkuna"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Siirrä ikkunaa"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Muuta ikkunan kokoa"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Valitse onko näyttö yhdessä vai kaikissa työtiloissa"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Siirrä ikkuna työtilaan 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Siirrä ikkuna työtilaan 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Siirrä ikkuna työtilaan 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Siirrä ikkuna työtilaan 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Siirrä ikkuna työtilaan 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Siirrä ikkuna työtilaan 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Siirrä ikkuna työtilaan 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Siirrä ikkuna työtilaan 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Siirrä ikkuna työtilaan 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Siirrä ikkuna työtilaan 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Siirrä ikkuna työtilaan 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Siirrä ikkuna työtilaan 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Siirrä ikkunaa yksi työtila vasemmalle"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Siirrä ikkunaa yksi työtila oikealle"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Siirrä ikkunaa yksi työtila ylös"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Siirrä ikkunaa yksi työtila alas"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Nosta ikkuna, jos se on peittynyt, muuten laske se"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Nosta ikkuna muiden päälle"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Laske ikkuna muiden alle"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Suurenna ikkuna pystysuunnassa"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Suurenna ikkuna vaakasuunnassa"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Siirrä ikkuna näytön vasempaan yläkulmaan"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Siirrä ikkuna näytön oikeaan yläkulmaan"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Siirrä ikkuna näytön vasempaan alakulmaan"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Siirrä ikkuna näytön oikeaan alakulmaan"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Siirrä ikkuna näytön ylälaitaan"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Siirrä ikkuna näytön alalaitaan"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Siirrä ikkuna näytön oikeaan reunaan"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Siirrä ikkuna näytön vasempaan reunaan"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Siirrä ikkuna näytön keskelle"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Ei toteutettu) Navigointi toimii sovelluksittain, ei ikkunoittain."
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Kirjasinlajin kuvausmerkkijono otsikkopalkkeja varten. Kuvauksen "
+"määrittelemä koko vaikuttaa ainoastaan, jos asetuksen titlebar_font_size "
+"arvo on 0. Lisäksi tämä asetus ei ole käytössä, jos asetus "
+"titlebar_uses_desktop_font on tosi."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Toiminto otsikkopalkin kaksoisnapsautukselle"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Toiminto otsikkopalkin napsautukselle keskinapilla"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Toiminto otsikkopalkin napsautukselle oikealla napilla"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Otsikkopalkin painikkeiden järjestys"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Otsikkopalkin painikkeiden järjestys. Arvon täytyy olla merkkijono, kuten "
+"”menu:minimize,maximize,spacer,close”, jossa kaksoispiste erottaa vasemman "
+"nurkan oikeasta nurkasta ja painikkeiden nimet on pilkuin eroteltu. Kukin "
+"painike voi esiintyä vain kerran. Tuntemattomat painikkeiden nimet jäävät "
+"kokonaan huomiotta, joten uusia painikkeita voi lisätä tuleviin marcon "
+"versioihin rikkomatta yhteensopivuutta vanhojen kanssa."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Nosta kohdistettu ikkuna itsestään"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Ikkunan napsauttaminen tämän muunnospainikkeen ollessa pohjassa siirtää "
+"ikkunaa (vasen painike), muuttaa ikkunan kokoa (keskipainike) tai näyttää "
+"ikkunavalikon (oikea painike). Keskimmäisen ja oikean painikkeen toiminnot "
+"voi vaihtaa keskenään avaimella ”resize_with_right_button”. Muunnosnäppäintä "
+"merkitään esimerkiksi ”&lt;Alt&gt;” tai ”&lt;Super&gr;”."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Komennot, jotka käynnistyvät pikanäppäimin"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Kerrostuksen hallintaohjelma"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Määrittele kuinka uudet ikkunat kohdistetaan"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Nykyinen teema"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Viive (millisekunteina) automaattista nostoa varten"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Määrittää, tulisiko marcon toimia kerrostuksen hallintaohjelmana."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Määrittelee, voivatko sovellukset tai järjestelmä päästää kuultavia "
+"”piippauksia”. Tätä voi käyttää yhdessä ”näkyvien piippausten” kanssa ja "
+"sallia ”hiljaiset piippaukset”."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Poista käytöstä ”ominaisuuksia”, joita vanhat tai rikkinäiset sovellukset "
+"vaativat toimiakseen"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Käytä näkyviä piippauksia"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Jos arvo on tosi ja kohdistustila on joko ”sloppy” tai ”mouse”, nostetaan "
+"kohdistettu ikkuna automaattisesti avaimessa auto_raise-delay määritellyn "
+"viiveen jälkeen. Tämä ei liity ikkunan napsauttamiseen sen nostamiseksi eikä "
+"ikkunan kohdistamiseen raahaustoiminnon aikana."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Jos tosi, jätä titlebar_font-asetus huomiotta, ja käytä sovellusten "
+"tavallista kirjasinta ikkunoiden otsikoissa."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Jos tosi, marco antaa käyttäjälle vähemmän palautetta piirtämällä "
+"kehykset viivoina, välttämällä animaatioita ja muin keinoin. Tämä vähentää "
+"käytettävyyttä useimpien käyttäjien kohdalla, mutta saattaa saada "
+"vanhentuneet sovellukset toimimaan oikein tai mahdollistaa hitaiden "
+"päätepalvelimien käytön. Kehyksiä ei kuitenkaan piirretä viivoina, jos "
+"esteettömyysominaisuudet ovat käytössä."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Jos tosi, Marco toimii sovelluksiin keskittyvästi, ei ikkunoihin "
+"keskittyvästi. Tämä on hieman abstrakti käsite, mutta yleisesti sovelluksiin "
+"keskittyvä tila toimii enemmän Macin kuin Windowsin kaltaisesti. Kun ikkuna "
+"kohdistetaan sovellustilassa, kaikki sovelluksen ikkunat nousevat. Lisäksi "
+"kohdistusnapsautukset eivät välity muiden sovellusten ikkunoille. "
+"Sovellustilaa ei ole suurimmaksi osaksi vielä toteutettu kunnolla."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Jos tosi, käytä vähemmän resursseja käytettävyyden kustannuksella"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Muunnosnäppäin ikkunoiden muunnettuja napsautustoimintoja varten"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Työtilan nimi"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Työtilojen määrä"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Työtilojen lukumäärä. Arvon täytyy olla nollaa suurempi, ja sillä on kiinteä "
+"yläraja, jotta työpöytää ei vahingossa voi tehdä käyttökelvottomaksi "
+"pyytämällä liian monia työtiloja."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Suorita annettu komento"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Aseta tämä todeksi jos haluat muuttaa ikkunan kokoa oikealla painikkeella ja "
+"näyttää valikon keskipainikkeella silloin kun pidät pohjassa näppäintä "
+"”mouse_button_modifier”. Jos tämä on epätosi, niin näppäimet toimivat "
+"päinvastoin."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Tämän valitsimen asettaminen epätodeksi voi johtaa virheelliseen toimintaan, "
+"joten on erittäin suositeltavaa olla muuttamatta oletusarvo tosi. Monet "
+"toiminnot, kuten napsautus ikkunan asiakasosaan sekä ikkunan siirto ja koon "
+"muuttaminen, nostavat samalla ikkunan näkyviin. Asettamalla tämän "
+"epätodeksi, jota ei todellakaan suositella, erotetaan nostaminen muista "
+"käyttäjän toimista ja ohitetaan sovelluksen tuottamat nostopyynnöt. Lue "
+"lisää osoitteesta http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. "
+"Arvosta riippumatta ikkuna voidaan nostaa edelleen aina päällimmäiseksi "
+"napsauttamalla ikkunaa Alt-vasen-napilla, napsauttamalla ikkunan reunoja "
+"tavallisesti tai erityisillä sivuttajien viesteillä, kuten "
+"tehtävälistasovelman aktivointipyynnöllä. Tämä valitsin ei ole lainkaan "
+"käytössä click-to-focus-tilassa. Huomaa, että tavat nostaa ikkuna valitsimen "
+"raise_on_click ollessa epätosi eivät sisällä ohjelmallisia pyyntöjä "
+"sovelluksilta ikkunan nostoon: tällaiset pyynnöt jätetään huomioimatta "
+"riippumatta pyynnön syystä. Jos olet sovelluskehittäjä, ja käyttäjäsi "
+"valittavat ettei sovellus toimi tämän asetuksen ollessa epätosi, voit kertoa "
+"että tämä on käyttäjien oma vika ja heidän tulee joko asettaa tämä uudestaan "
+"todeksi tai sietää ”vikaa”, jota itse ovat pyytäneet asettamalla arvon "
+"epätodeksi."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Jotkut sovellukset eivät kunnioita määrittelyjä ja tämä johtaa ongelmiin "
+"ikkunamanagerin kanssa. Tämä valitsin laittaa Marcon tarkalleen oikein "
+"toimivaan tilaan, joka takaa yhtenäisen käyttöliittymän jos voidaan olla "
+"varmoja ettei tällaisia väärin toimivia ohjelmia käytetä."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Järjestelmän piippaus on kuultavissa"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Kertoo Marcolle, miten ilmaista näkyvästi, että järjestelmä tai ohjelma "
+"on päästänyt äänimerkin. Mahdollisia arvoja on tällä hetkellä kaksi: "
+"”fullscreen”, joka saa koko ruudun välkähtämään mustasta valkoiseksi ja "
+"”frame_flash”, joka saa merkin päästäneen sovelluksen ikkunan otsikkopalkin "
+"välkähtämään. Jos merkin lähettäjä on tuntematon (kuten yleensä kun "
+"”järjestelmä piippaa”), nykyisen ikkunan otsikkopalkki välkähtää."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N-avaimet määrittelevät "
+"pikanäppäimet, jotka liittyvät näihin komentoihin. Avaimen run_command_N "
+"pikanäppäimen painaminen suorittaa komennon command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot-avain määrittelee "
+"pikanäppäimen, joka käynnistää tämän asetuksen määrittelemän ohjelman."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot-avain "
+"määrittelee pikanäppäimen, joka käynnistää tämän asetuksen määrittelemän "
+"ohjelman."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Pikanäppäin, joka suorittaa vastaavasti numeroidun komennon luettelosta /"
+"apps/marco/keybinding_commands. Pikanäppäimet ovat muotoa ”&lt;Control&gt;"
+"a” tai ”&lt;Shift&gt;&lt;Alt&gt;F1”. Jäsennin on varsin vapaamielinen, ei "
+"välitä kirjainkoosta ja ymmärtää myös lyhenteitä, kuten ”&lt;Ctl&gt;” ja "
+"”&lt;Ctrl&gt;”. Jos vaihdat arvoksi erityisen merkkijonon ”disabled”, niin "
+"tähän toimintoon ei liity pikanäppäintä."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Työtilan nimi."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Kuvakaappauksen ottokomento"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Teema määrittää ikkunoiden reunojen, valikkopalkkien yms. ulkonäön"
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Viive ennen ikkunan nousemista, jos auto_raise on tosi. Viive on "
+"millisekunteina."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Ikkunoiden kohdistustapa ilmaisee, miten ikkunoita aktivoidaan. Sillä on "
+"kolme mahdollista arvoa: ”click”, eli ikkunat kohdistetaan niitä "
+"napsauttamalla; ”sloppy”, eli ikkunat kohdistuvat, kun hiiri liikkuu niiden "
+"päälle; ”mouse”, eli ikkunat kohdistuvat, kun hiiri liikkuu niiden päälle, "
+"ja menettävät kohdistuksen, kun hiiri liikkuu pois."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Ikkunan kuvakaappauksen ottokomento"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Tämä valinta määrittelee mitä tapahtuu kaksoisnapsautettaessa "
+"otsikkopalkkia. Tällä hetkellä mahdolliset toiminnot ovat ”toggle_shade”, "
+"joka rullaa ikkunan ylös tai avaa rullauksen, ”toggle_maximize”, joka "
+"suurentaa tai palauttaa ikkunan, ”toggle_maximize_horizontally” ja "
+"”toggle_maximize_vertically”, jotka suurentavat ja palauttavat ikkunan vain "
+"pysty- tai vaakasuunnassa, ”minimize”, joka pienentää ikkunan, ”shade” joka "
+"rullaa ikkunan ylös, ”menu”, joka näyttää ikkunan valikon, ”lower” joka "
+"alentaa ikkunan, tai ”none” joka ei tee mitään."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Tämä valinta määrittelee mitä tapahtuu otsikkopalkkia keskinapilla "
+"napsautettaessa. Tällä hetkellä mahdolliset toiminnot ovat ”toggle_shade”, "
+"joka rullaa ikkunan ylös tai avaa rullauksen, ”toggle_maximize”, joka "
+"suurentaa tai palauttaa ikkunan, ”toggle_maximize_horizontally” ja "
+"”toggle_maximize_vertically”, jotka suurentavat ja palauttavat ikkunan vain "
+"pysty- tai vaakasuunnassa, ”minimize”, joka pienentää ikkunan, ”shade” joka "
+"rullaa ikkunan ylös, ”menu”, joka näyttää ikkunan valikon, ”lower” joka "
+"alentaa ikkunan, tai ”none” joka ei tee mitään."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Tämä valinta määrittelee mitä tapahtuu otsikkopalkkia oikealla napilla "
+"napsautettaessa. Tällä hetkellä mahdolliset toiminnot ovat ”toggle_shade”, "
+"joka rullaa ikkunan ylös tai avaa rullauksen, ”toggle_maximize”, joka "
+"suurentaa tai palauttaa ikkunan, ”toggle_maximize_horizontally” ja "
+"”toggle_maximize_vertically”, jotka suurentavat ja palauttavat ikkunan vain "
+"pysty- tai vaakasuunnassa, ”minimize”, joka pienentää ikkunan, ”shade” joka "
+"rullaa ikkunan ylös, ”menu”, joka näyttää ikkunan valikon, ”lower” joka "
+"alentaa ikkunan, tai ”none” joka ei tee mitään."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Tämä valitsin antaa lisämahdollisuuksia ohjata, kuinka uudet ikkunan "
+"kohdistetaan. Kentällä on kaksi mahdollista; ”smart” käyttää käyttäjän "
+"valitsemaa kohdistustilaa ja ”strict” estää pääteikkunasta käynnistettyjen "
+"ikkunoiden kohdistamisen."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Ottaa käyttöön näkyvän ilmaisimen järjestelmän 'piippauksille'. Tämä on "
+"hyödyllistä, jos kuulo on heikko tai ympäristö on meluinen."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Järjestelmän oletuskirjasin ikkunoiden otsikoissa"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Näkyvän piippauksen tyyppi"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Tulisiko nostamisen olla muiden toimenpiteiden sivuvaikutus"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Muutetaanko oikealla napilla kokoa"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Windows-tyylinen kohdistus"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Ikkunan otsikon kirjasin"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Käyttö: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Sulje ikkuna"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Ikkunavalikko"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Pienennä ikkuna"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Suurenna ikkuna"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Palauta ikkuna"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "_Rullaa ikkuna ylös"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Avaa rullattu ikkuna"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Pidä ikkuna päällimmäisenä"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Poista ikkuna päältä"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Näytä aina näkyvässä työtilassa"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Näytä ikkuna vain yhdessä työtilassa"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Pienennä"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "S_uurenna"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "_Palauta koko"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Rullaa ylös"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Rullaa alas"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "S_iirrä"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Muuta kokoa"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Siirrä otsikkopalkkia _näytöllä"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Aina _päällimmäisenä"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Näytä _aina tässä työtilassa"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Näytä vain _tässä työtilassa"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Siirrä _vasempaan työtilaan"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Siirrä _oikeaan työtilaan"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Siirry _yllä olevaan työtilaan"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Siirrä _alla olevaan työtilaan"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Sulje"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Työtila %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Työtila 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Työtila %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Siirrä toiseen t_yötilaan"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Vaihto"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d × %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "ylä"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "ala"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "vasen"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "oikea"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "kehyksen mitat eivät määrittele ”%s”-kokoa"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "kehyksen mitat eivät määrittele ”%2$s”-reunan ”%1$s”-kokoa"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Painikkeen sivusuhde %g ei ole järkevä"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Kehyksen mitat eivät määrittele painikkeiden kokoa"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Väriliu'uissa täytyy olla vähintään kaksi väriä"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-värimääritteessä täytyy olla tila hakasuluissa. Esimerkiksi gtk:fg"
+"[NORMAL], jossa NORMAL on tila. ”%s” ei jäsentynyt."
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-värimääritteessä täytyy olla loppuhakasulku tilan jälkeen. Esimerkiksi "
+"gtk:fg[NORMAL], jossa NORMAL on tila. ”%s” ei jäsenny."
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Tila ”%s” ei ole värimääritteessä järkevä"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Värikomponentti ”%s” ei ole värimääritteessä järkevä"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Sekoitusmuoto on ”blend/taustaväri/edustaväri/alfa”. ”%s” ei ole tätä muotoa."
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Alfa-arvo ”%s” sekoitusvärissä ei jäsenny"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alfa-arvo ”%s” sekoitusvärissä ei ole välillä 0.0 - 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Varjostusmuoto on ”shade/perusväri/kerroin”. ”%s” ei ole tämän muotoinen."
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Varjostuskerroin ”%s” varjostetussa värissä ei jäsenny"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Varjostuskerroin ”%s” varjostetussa värissä on negatiivinen"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Värin ”%s” jäsentäminen ei onnistunut"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Koordinaattilauseke sisältää merkin ”%s”, joka ei ole sallittu"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "Koordinaattilauseke sisältää liukuluvun ”%s”, joka ei jäsentynyt"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Koordinaattilauseke sisältää kokonaisluvun ”%s”, joka ei jäsentynyt"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Koordinaattilauseke sisälsi tuntemattoman operaattorin seuraavan tekstin "
+"alussa: ”%s”"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Koordinaattilauseke oli tyhjä tai ei järkevä"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Koordinaattilauseke johtaa nollalla jakamiseen"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "Koordinaattilauseke yrittää soveltaa mod-operaattoria liukulukuun"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Koordinaattilausekkeessa on operaattori ”%s”, jonka paikalla pitäisi olla "
+"operandi"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"Koordinaattilauseke sisälsi operandin kohdassa, johon kuuluisi operaattori"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Koordinaattilauseke päättyi operaattoriin, ei operandiin"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Koordinaattilausekkeessa on operaattori ”%c” operaattorin ”%c” perässä ilman "
+"operandia välissä"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Koordinaattilausekkeessa oli tuntematon muuttuja tai vakio ”%s”"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Koordinaattilausekkeen tulkitsijan puskuri ylitettiin."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Koordinaattilausekkeessa oli lopetussulje ilman vastaavaa aloitussuljetta"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Koordinaattilauseke oli aloitussulje ilman vastaavaa lopetussuljetta"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"Koordinaattilausekkeessa ei vaikuta olevan operaattoreita eikä operandeja"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Teema sisälsi lausekkeen, josta seurasi virhe: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"mikä lienee\"/> täytyy olla "
+"määritelty tätä kehystyyliä varten"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"mikä lienee\"/> "
+"puuttuu"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Teeman ”%s” lataaminen epäonnistui: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "<%s> ei ole asetettu teemaa ”%s” varten"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Ikkunatyypille ”%s” ei ole asetettu kehystyyliä teemassa ”%s”. Lisää <window "
+"type=\"%s\" style_set=\"mikä lienee\"/>-elementti."
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Käyttäjän määrittelemien vakioiden täytyy alkaa isolla kirjaimella; ”%s” ei "
+"ala"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Vakio ”%s” on jo määritelty"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Attribuuttia ”%s” ei löydy elementistä <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Rivi %d, merkki %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Määre ”%s” on toistettu kahdesti samassa <%s>-elementissä"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Määre ”%s” ei ole kelvollinen <%s>-elementissä tässä yhteydessä"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "”%s” ei jäsentynyt kokonaisluvuksi"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Perässä olevat merkit ”%s” merkkijonossa ”%s” eivät ole järkeviä"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Kokonaisluvun %ld täytyy olla positiivinen"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Kokonaisluku %ld on liian suuri, nykyinen maksimi on %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "”%s” ei jäsentynyt liukuluvuksi"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Totuusarvojen täytyy olla ”true” tai ”false”, ei ”%s”"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Kulman pitäisi olla välillä 0.0 - 360.0, mutta se oli %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfan täytyy olla välillä 0.0 (näkymätön) - 1.0 (täysin peittävä). Se oli %"
+"g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Virheellinen otsikon skaala ”%s” (täytyy olla joko xx-small,x-small,small,"
+"medium,large,x-large tai xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s>-elementin nimeä ”%s” käytetty toisenkin kerran"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s>-elementin emo ”%s” ei ole määritelty"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s>-elementin mitat ”%s” eivät ole määriteltyjä"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s>:n täytyy joko määritellä mitat, tai emo, jolla on jo mitat"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Tausta täytyy määritellä, jotta alfa-arvo olisi mielekäs"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Tuntematon tyyppi ”%s” elementissä <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Tuntematon style_set ”%s” elementissä <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Ikkunatyyppiin ”%s” on jo liitetty tyylijoukko"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Elementti <%s> ei ole mahdollinen elementin <%s> alla"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Arvoja ”button_width”/”button_height” ja ”aspect_ratio” ei voi määritellä "
+"samalle painikkeille"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Etäisyys ”%s” on tuntematon"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Sivusuhde ”%s” on tuntematon"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Reuna ”%s” on tuntematon"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Elementissä <%s> ei ole ”start_angle”- tai ”from”-määrettä"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Elementissä <%s> ei ole ”extent_angle”- tai ”to”-määrettä"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Väriliu'un arvo ”%s” ei ole järkevä"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Täyttötyyppi ”%s” ei ole järkevä elementissä <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Tila ”%s” ei ole järkevä elementissä <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Varjo ”%s” ei ole järkevä elementissä <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Nuoli ”%s” ei ole järkevä elementissä <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "<draw_ops> ”%s” ei ole määritelty"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Draw_opsin ”%s” sisällyttäminen tähän aiheuttaisi kehäviitteen"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Tuntematon kehyksen palan sijainti ”%s”"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Kehystyylissä on jo pala sijainnissa %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "”%s”-nimistä <draw_ops>:ia ei ole määritelty"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Tuntematon painikkeen toiminto ”%s”"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Painiketoimintoa ”%s” ei ole tässä versiossa (%d, tarvitaan %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Tuntematon painikkeen tila ”%s”"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Kehystyylillä on jo painike funktiota %s, tilaa %s varten"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "”%s” ei ole kelvollinen kohdistusmääreen arvo"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "”%s” ei ole kelvollinen tilamääreen arvo"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "”%s”-nimistä tyyliä ei ole määritelty"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "”%s” ei ole kelvollinen koonmuutosmääreen arvo"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Elementissä <%s> pitäisi olla ”resize”-määre suurennettua ja rullattua tilaa "
+"varten"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Elementissä <%s> ei pitäisi olla ”resize”-määrettä suurennetuilla tiloilla"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Tyyli on jo määritelty tilaa %s, koonmuutosta %s, kohdistusta %s varten"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Tyyli on jo määritelty tilaa %s, kohdistusta %s varten"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<piece>-elementissä ei voi olla kahta draw_opsia (teema määritteli joko "
+"draw_ops-määreen sekä <draw_ops>-elementin tai kaksi elementtiä)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<button>-elementissä ei voi olla kahta draw_opsia (teema määritteli joko "
+"draw_ops-määreen sekä <draw_ops>-elementin tai kaksi elementtiä)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<menu_icon>-elementissä ei voi olla kahta draw_opsia (teema määritteli joko "
+"draw_ops-määreen sekä <draw_ops>-elementin tai kaksi elementtiä)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Uloin elementti täytyy olla <marco_theme>, ei <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Elementti <%s> ei voi olla nimi-, tekijä-, päiväys- tai kuvauselementin "
+"sisällä"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Elementti <%s> ei voi olla <constant>-elementin sisällä"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Elementti <%s> ei voi olla etäisyys-, reuna- tai sivusuhde-elementin sisällä"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Elementti <%s> ei voi olla piirto-operaatioelementin sisällä"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Elementti <%s> ei voi olla elementin <%s> sisällä"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Kehyksen palaa varten ei ole draw_opsia"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Painiketta varten ei ole draw_opsia"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Elementin <%s> sisällä ei voi olla tekstiä"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> määritelty kahdesti tälle teemalle"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Teemalle %s ei löytynyt kelvollista tiedostoa\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Teematiedosto %s ei sisältänyt <marco_theme>-juurielementtiä"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Ikkunat"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Ikkunat/irrotus"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Ikkunat/_Valintaikkuna"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Ikkunat/_Modaalinen valintaikkuna"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Ikkunat/_Työkalu"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Ikkunat/_Käynnistysikkuna"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Ikkunat/_Ylätelakka"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Ikkunat/_Alatelakka"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Ikkunat/_Vasen telakka"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Ikkunat/_Oikea telakka"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Ikkunat/_Kaikki telakat"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Ikkunat/T_yöpöytä"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Tämä on esimerkkiviesti esimerkkivalintaikkunassa"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Valikon kohta %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Ikkuna, jossa on vain reunat"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Palkki"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Tavallisen sovelluksen ikkuna"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Valintaikkuna"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modaalinen valintaikkuna"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Palettityökalu"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Irrotettu valikko"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Reuna"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Painikkeiden asettelutesti %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g millisekuntia yhden ikkunan kehyksen piirtämiseen"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Käyttö: marco-theme-viewer [TEEMANIMI]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Virhe teeman lataamisessa: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Teema ”%s” latautui %g sekunnissa\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Tavallinen otsikon kirjasin"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Pieni otsikon kirjasin"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Suuri otsikon kirjasin"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Painikkeiden asettelu"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Koesta"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Ikkunan otsikko tähän"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d kehystä piirtyi %g asiakaspuolen sekunnissa (%g millisekuntia per kehys) "
+"ja %g todellisessa sekunnissa, ottaen mukaan X-palvelimen resurssit (%g "
+"millisekuntia per kehys)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "sijaintilausekkeen testi palautti TOSI, mutta asetti virheen"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "sijaintilausekkeen testi palautti EPÄTOSI, mutta ei asettanut virhettä"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Virhe odotettu, mutta mitään ei ilmennyt"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Virhe %d odotettu, mutta %d ilmeni"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Virhettä ei odotettu, mutta eräs ilmeni: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x-arvo oli %d, %d oli odotettu"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y-arvo oli %d, %d oli odotettu"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d-sijaintilauseketta jäsentyi %g sekunnissa (%g sekuntia keksimäärin)\n"
+
+#~ msgid ""
+#~ "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#~ "\n"
+#~ "<i>You may choose to wait a short while for it to continue or force the "
+#~ "application to quit entirely.</i>"
+#~ msgstr ""
+#~ "<big><b><tt>%s</tt> ei vastaa.</b></big>\n"
+#~ "\n"
+#~ "<i>Voit odottaa sovellusta vielä hetken valitsemalla ”Odota”, tai sulkea "
+#~ "sovelluksen väkisin heti.</i>"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Avaa uusi tällainen ikkuna"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Virhe marco-dialogin käynnistämisessä istunnon ulkopuolisista "
+#~ "ohjelmista varoittamista varten: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Otsikko"
+
+#~ msgid "Class"
+#~ msgstr "Luokka"
diff --git a/po/fr.po b/po/fr.po
new file mode 100644
index 00000000..98becff0
--- /dev/null
+++ b/po/fr.po
@@ -0,0 +1,2489 @@
+# French translation of marco.
+# Copyright (C) 2002-2009 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+#
+# Christophe Fergeau <[email protected]>, 2002.
+# Christophe Merlet (RedFox) <[email protected]>, 2002-2006.
+# Sun G11n <[email protected]>, 2002.
+# Guy Clotilde <[email protected]>, 2002.
+# Baptiste Mille-Mathias <[email protected]>, 2004.
+# Jonathan Ernst <[email protected]>, 2006.
+# Cyprien Le Pannérer <[email protected]>, 2006.
+# Robert-André Mauchin <[email protected]>, 2007.
+# Stéphane Raimbault <[email protected]>, 2007.
+# Claude Paroz <[email protected]>, 2008-2009.
+# Bruno Brouard <[email protected]>, 2010
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco HEAD\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-01-21 21:34+0000\n"
+"PO-Revision-Date: 2009-09-04 21:31+0200\n"
+"Last-Translator: Bruno Brouard <[email protected]>\n"
+"Language-Team: MATE French Team <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Bureau"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Gestion des fenêtres"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Évènement sonnerie"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Requête d'information de fenêtre inconnue : %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> ne répond pas."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Vous pouvez attendre un instant pour continuer ou insister pour quitter "
+"l'application."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Attendre"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Forcer à quitter"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Impossible d'obtenir le nom de machine : %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Extension %s manquante, mais nécessaire pour la composition"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Impossible d'ouvrir le visuel « %s » du système X Window\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Perte de la connexion avec le visuel « %s » ;\n"
+"le serveur X a probablement été arrêté ou vous avez tué/détruit\n"
+"le gestionnaire de fenêtres.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Erreur fatale d'E/S %d (%s) sur le visuel « %s ».\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Un autre programme utilise déjà la clé %s avec les modificateurs %x comme "
+"liaison\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Il y a eu une erreur lors de l'exécution de <tt>%s</tt> :\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Aucune commande %d n'a été définie.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Aucune commande de terminal n'a été définie.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright © 2001-%s Havoc Pennington, Red Hat, Inc., et autres.\n"
+"Ceci est un logiciel libre ; consultez le code source pour les\n"
+"conditions de copie.\n"
+"Il n'y a AUCUNE garantie ; même pas de VALEUR MARCHANDE ou\n"
+"d'ADÉQUATION À UN USAGE PARTICULIER.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Désactiver la connexion au gestionnaire de sessions"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr ""
+"Remplacer le gestionnaire de fenêtres en cours de fonctionnement par Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Indiquer l'ID de gestion de sessions"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Visuel X à utiliser"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Initialiser la session depuis le fichier de sauvegarde"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Afficher la version"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Rendre synchrones les appels à X"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Activer la composition"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Désactiver la composition"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Ne pas mettre en plein écran des fenêtres qui sont maximisées et ne "
+"possèdent pas de décorations"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Le parcours du répertoire de thèmes a échoué : %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Impossible de trouver un thème ! Assurez-vous que %s existe et contient les "
+"thèmes habituels.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Impossible de redémarrer : %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "La valeur de la clé MateConf « %s » n'est pas valide\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d enregistré dans la clé MateConf %s n'est pas compris entre %d et %d\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Le type de la clé MateConf « %s » n'est pas valide\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Solutions de rechange désactivées pour les applications endommagées. "
+"Certaines applications peuvent ne pas se comporter correctement.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Impossible d'analyser la description de police « %s » depuis la clé MateConf %s\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"« %s » trouvée dans la base de données de configuration n'est pas une valeur "
+"correcte pour le bouton de souris\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Erreur de définition du nombre d'espaces de travail sur %d : %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "Espace de travail %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"« %s » trouvé dans la base de données de configuration n'est pas une valeur "
+"correcte pour la combinaison de touches « %s »\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+"Erreur dans la définition du nom pour l'espace de travail %d à « %s » : %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Erreur dans la définition de l'état de la composition : %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "L'écran %d sur le visuel « %s » n'est pas valide\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"L'écran %d sur le visuel « %s » a déjà un gestionnaire de fenêtres ; essayez "
+"d'utiliser l'option --replace pour remplacer le gestionnaire de fenêtres "
+"actuel.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Impossible d'avoir la sélection du gestionnaire de fenêtres sur l'écran %d "
+"du visuel « %s »\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "L'écran %d sur le visuel « %s » a déjà un gestionnaire de fenêtres\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Impossible de libérer l'écran %d sur le visuel « %s »\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Le format ressemble à « <Control>a » ou « <Shift><Alt>F1 ».\n"
+"\n"
+"L'analyseur est assez souple et permet d'utiliser des majuscules ou des "
+"minuscules et des abréviations telles que « <Ctl> » et « <Ctrl> ». Si vous "
+"définissez l'option sur la chaîne spéciale « disabled » (désactivé), il n'y "
+"aura pas de combinaison de touches pour cette action."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Le format ressemble à « <Control>a » ou « <Shift><Alt>F1 ».\n"
+"\n"
+"L'analyseur est assez souple et permet d'utiliser des majuscules ou des "
+"minuscules et des abréviations telles que « <Ctl> » et « <Ctrl> ». Si vous "
+"définissez l'option sur la chaîne spéciale « disabled » (désactivé), il n'y "
+"aura pas de combinaison de touches pour cette action.\n"
+"Cette combinaison de touches peut être inversée en maintenant enfoncée la "
+"touche « Maj ». Par conséquent, « Maj » ne peut pas faire partie de cette "
+"combinaison."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Impossible de créer le répertoire « %s » : %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Impossible d'ouvrir le fichier de session « %s » en écriture : %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Erreur lors de l'écriture du fichier de session « %s » : %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Erreur lors de la fermeture du fichier de session « %s » : %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "La lecture du fichier de session enregistré %s a échoué : %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "L'analyse du fichier de session enregistré a échoué : %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"L'attribut <marco_session> a été trouvé, mais nous possédons déjà l'ID de "
+"session"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Attribut %s inconnu sur l'élément <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "balise <window> imbriquée"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Élément %s inconnu"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Ces fenêtres ne prennent pas en charge « l'enregistrement de la configuration "
+"actuelle » et devront être redémarrées manuellement à la prochaine connexion."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "L'ouverture du journal de débogage a échoué : %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+"L'exécution de la commande fdopen() sur le fichier journal %s a échoué : %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Ouverture du fichier journal %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco a été compilé sans la prise en charge du mode bavard\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Gestionnaire de fenêtres : "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Anomalie dans le gestionnaire de fenêtres : "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Avertissement du gestionnaire de fenêtres : "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Erreur du gestionnaire de fenêtres : "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"La fenêtre %s positionne SM_CLIENT_ID sur elle-même, au lieu de le "
+"positionner sur la fenêtre WM_CLIENT_LEADER tel qu'indiqué dans l'ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"La fenêtre %s positionne un indice MWM indiquant qu'elle n'est pas "
+"redimensionnable, mais positionne une taille minimale de %d x %d et une "
+"taille maximale de %d x %d ; ceci n'a pas beaucoup de sens.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "L'application a défini un _NET_WM_PID %lu erronné\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (sur %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (au nom du superutilisateur)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (au nom de %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (au nom d'un autre utilisateur)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Fenêtre WM_TRANSIENT_FOR 0x%lx non valide indiquée pour %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"La fenêtre 0x%lx a la propriété %s\n"
+"qui devrait avoir le type %s et le format %d\n"
+"et a en fait le type %s et le format %d n_items %d\n"
+"C'est probablement un bogue de l'application, et non du gestionnaire\n"
+"de fenêtres.\n"
+"Le titre de la fenêtre est=\"%s\" sa classe=\"%s\" et son nom=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+"La propriété %s de la fenêtre 0x%lx contient un code UTF-8 non valide\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"La propriété %s de la fenêtre 0x%lx contient un code UTF-8 non valide pour "
+"l'élément %d dans la liste\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Passer à l'espace de travail 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Passer à l'espace de travail 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Passer à l'espace de travail 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Passer à l'espace de travail 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Passer à l'espace de travail 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Passer à l'espace de travail 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Passer à l'espace de travail 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Passer à l'espace de travail 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Passer à l'espace de travail 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Passer à l'espace de travail 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Passer à l'espace de travail 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Passer à l'espace de travail 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Passer à l'espace de travail à gauche de l'espace actuel"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Passer à l'espace de travail à droite de l'espace actuel"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Passer à l'espace de travail au-dessus de l'espace actuel"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Passer à l'espace de travail au-dessous de l'espace actuel"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr ""
+"Se déplacer entre les fenêtres d'une application via une fenêtre de premier "
+"plan"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Se déplacer en arrière entre les fenêtres d'une application via une fenêtre "
+"de premier plan"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Se déplacer entre les fenêtres via une fenêtre de premier plan"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr ""
+"Se déplacer en arrière entre les fenêtres via une fenêtre de premier plan"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr ""
+"Se déplacer entre les tableaux de bord et le bureau via une fenêtre de "
+"premier plan"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Se déplacer en arrière entre les tableaux de bord et le bureau via une "
+"fenêtre de premier plan"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Se déplacer immédiatement entre les fenêtres d'une application"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr ""
+"Se déplacer immédiatement en arrière entre les fenêtres d'une application"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Se déplacer entre les fenêtres directement"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Se déplacer en arrière entre les fenêtres immédiatement"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Se déplacer entre les tableaux de bord et le bureau immédiatement"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+"Se déplacer en arrière entre les tableaux de bord et le bureau immédiatement"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Masquer toutes les fenêtres normales et donner le focus au bureau"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Afficher le menu principal du tableau de bord"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr ""
+"Afficher la boîte de dialogue « Lancer une application » du tableau de bord"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Prendre une capture d'écran"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Prendre une capture de la fenêtre"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Lancer un terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Activer le menu fenêtre"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Basculer en mode plein écran"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Basculer l'état d'agrandissement"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+"Active ou désactive la propriété d'une fenêtre d'être toujours au premier "
+"plan"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximiser la fenêtre"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restaurer la fenêtre"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Basculer l'état de repli"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Réduire la fenêtre"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Fermer la fenêtre"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Déplacer la fenêtre"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Redimensionner la fenêtre"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Placer la fenêtre sur tous les espaces de travail, ou sur un seul"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Déplacer la fenêtre vers l'espace de travail 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Déplacer la fenêtre vers l'espace de travail 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Déplacer la fenêtre vers l'espace de travail 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Déplacer la fenêtre vers l'espace de travail 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Déplacer la fenêtre vers l'espace de travail 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Déplacer la fenêtre vers l'espace de travail 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Déplacer la fenêtre vers l'espace de travail 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Déplacer la fenêtre vers l'espace de travail 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Déplacer la fenêtre vers l'espace de travail 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Déplacer la fenêtre vers l'espace de travail 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Déplacer la fenêtre vers l'espace de travail 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Déplacer la fenêtre vers l'espace de travail 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Déplacer la fenêtre d'un espace de travail vers la gauche"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Déplacer la fenêtre d'un espace de travail vers la droite"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Déplacer la fenêtre d'un espace de travail vers le haut"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Déplacer la fenêtre d'un espace de travail vers le bas"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Mettre la fenêtre au premier plan si elle est cachée par une autre fenêtre, "
+"sinon en arrière-plan"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Mettre la fenêtre au premier plan"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Mettre la fenêtre sous les autres fenêtres"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximiser la fenêtre verticalement"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximiser la fenêtre horizontalement"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Déplacer la fenêtre vers le coin nord-ouest (en haut à gauche)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Déplacer la fenêtre vers le coin nord-est (en haut à droite)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Déplacer la fenêtre vers le coin sud-ouest (en bas à gauche)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Déplacer la fenêtre vers le coin sud-est (en bas à droite)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Déplacer la fenêtre vers le côté nord de l'écran (en haut)"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Déplacer la fenêtre vers le côté sud de l'écran (en bas)"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Déplacer la fenêtre vers le côté est de l'écran (à droite)"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Déplacer la fenêtre vers le côté ouest de l'écran (à gauche)"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Déplacer la fenêtre au centre de l'écran"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(non implémenté) La navigation fonctionne en termes d'applications et non de "
+"fenêtres"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Une chaîne de description de police décrivant une police pour les barres de "
+"titre de fenêtres. La taille de la description ne sera toutefois utilisée "
+"que si l'option titlebar_font_size est réglée sur 0. Cette option est en "
+"outre désactivée si l'option titlebar_uses_desktop_font est réglée sur VRAI."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Action d'un double-clic sur la barre de titre"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Action d'un clic du milieu sur la barre de titre"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Action d'un clic droit sur la barre de titre"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Agencement des boutons sur la barre de titre"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Agencement des boutons sur la barre de titre. La valeur doit être une "
+"chaîne, par exemple « menu:minimize,maximize,spacer,close » ; les deux-points "
+"séparent le coin gauche de la fenêtre du coin droit, et les noms des boutons "
+"doivent être séparés par des virgules. Les boutons dupliqués ne sont pas "
+"autorisés. Les noms de bouton inconnus sont silencieusement ignorés, ainsi "
+"des boutons pourront être ajoutés dans des futures versions de marco sans "
+"casser les anciennes versions. Une balise spéciale « spacer » permet "
+"d'insérer un peu d'espace entre deux boutons adjacents."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Place automatiquement la fenêtre active au premier plan"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Cliquer sur une fenêtre en maintenant enfoncée cette touche de modification "
+"déplacera la fenêtre (clic gauche), redimensionnera la fenêtre (clic du "
+"milieu), ou affichera le menu de la fenêtre (clic droit). Les opérations "
+"milieu et droite peuvent être inversées en utilisant la clé "
+"« resize_with_right_button ». Le modificateur est défini comme « &lt;Alt&gt; » ou "
+"« &lt;Super&gt; » par exemple."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Commande à exécuter en réponse aux combinaisons de touches"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Gestionnaire de composition"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Contrôle la façon dont les nouvelles fenêtres deviennent actives"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Thème actuel"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+"Délai en millisecondes pour l'option de mise automatique au premier plan"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Détermine si Marco est utilisé comme gestionnaire de composition."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Détermine si les applications ou le système peuvent générer des bips "
+"audibles ; peut être utilisé en conjonction avec « sonnerie visuelle » pour "
+"permettre des bips silencieux."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Désactive les ajustements requis par les applications anciennes ou mal "
+"conçues"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Activer la sonnerie visuelle"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Si VRAI et que le mode de focus est soit « sloppy » soit « mouse » alors la "
+"fenêtre qui a le focus est automatiquement mis au premier plan après un "
+"délai indiqué par la clé auto_raise_delay. Ceci n'est pas similaire à "
+"cliquer sur une fenêtre pour la mettre au premier plan, ni à déplacer une "
+"fenêtre durant un glisser-déposer."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Si VRAI, ignore l'option titlebar_font et utilise la police standard de "
+"l'application pour les titres de fenêtres."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Si VRAI, Marco donnera à l'utilisateur moins de retour d'informations en "
+"utilisant des contours en fil de fer, évitant des animations ou autres "
+"fioritures. Ceci signifie une baisse d'ergonomie pour beaucoup "
+"d'utilisateurs mais peut permettre aux vieilles applications de continuer à "
+"fonctionner, et peut aussi être utile au serveurs de terminaux X pour "
+"améliorer les performances. Cependant, la fonction fil de fer est désactivé "
+"lorsque l'accessibilité est activé."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Si VRAI, Marco fonctionne en termes d'applications plutôt que de "
+"fenêtres. Le concept est assez abstrait, mais, en général, une configuration "
+"basée sur les applications est plus proche de Mac OS que de Windows. Lorsque "
+"vous activez une fenêtre en mode basé sur les applications, toutes les "
+"fenêtres de l'application seront mises au premier plan. En outre, en mode "
+"basé sur les applications, les clics de focus ne sont pas transmis aux "
+"fenêtres d'autres applications. Pour l'instant, le mode basé sur des "
+"applications n'est généralement pas mis en œuvre."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Si VRAI, favorise une faible utilisation des ressources au détriment de la "
+"convivialité"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Touche à utiliser pour modifier les actions du clic"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nom de l'espace de travail"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Nombre d'espaces de travail"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Nombre d'espaces de travail. Il doit être supérieur à zéro et présente une "
+"limite maximale fixée afin d'éviter de rendre votre bureau inutilisable en "
+"demandant trop d'espaces de travail."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Exécuter la commande définie"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Définir à « true » pour redimensionner avec le bouton droit et afficher un "
+"menu avec le bouton du milieu en maintenant enfoncée la touche donnée dans "
+"« mouse_button_modifier » ; définir à « false » pour avoir le fonctionnement "
+"inverse."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Mettre cette option à « false » peut entraîner des erreurs de comportement, "
+"il est vraiment déconseillé de modifier sa valeur par défault, « true ». "
+"Beaucoup d'actions (par ex. les clics dans la zone client, le déplacement ou "
+"le redimensionnement des fenêtres) ont pour effet de bord de placer la "
+"fenêtre au premier plan. En mettant cette option à « false », ce qui est "
+"fortement déconseillé, les actions des utilisateurs et la mise au premier "
+"plan des fenêtres sont découplés. Les demandes de mise au premier plan "
+"provenant des applications seront également ignorées. Voir http://bugzilla."
+"gnome.org/show_bug.cgi?id=445447#c6. Même quand cette option est « false », "
+"les fenêtres peuvent encore être placées au premier plan par un clic avec "
+"Alt enfoncée n'importe où dans la fenêtre, par un clic sur la décoration de "
+"la fenêtre, ou par des messages particuliers envoyés des sélecteurs "
+"d'espaces de travail, comme les demandes d'activation envoyées par l'applet "
+"« Liste des fenêtres ». Cette option est actuellement désactivée dans le mode "
+"« focus-au-clic ». Notez que la liste des méthodes pour amener une fenêtre au "
+"premier plan quand « raise_on_click » est à « false » ne comporte pas les "
+"demandes programmées par des applications pour amener une fenêtre au premier "
+"plan ; ces demandes seront ignorées, peu importe leur raison. Si vous "
+"développez une application et que des utilisateurs se plaignent que votre "
+"application ne fonctionne pas avec ce paramètre désactivé, dites-leur que "
+"c'est de *leur* faute et qu'ils ont cassé leur gestionnaire de fenêtres, "
+"qu'ils doivent remettre cette option à « true » ou vivre avec le « bug » "
+"qu'ils ont demandé."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Certaines applications négligent les spécifications ; il en résulte un "
+"dysfonctionnement du gestionnaire de fenêtres. Cette option oblige Marco "
+"à adopter un mode rigoureux qui offre une interface plus cohérente à "
+"l'utilisateur à condition que celui-ci n'ait pas besoin de lancer des "
+"applications qui ne respectent pas les spécifications."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Le bip système est audible"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Indique à Marco quelle méthode d'indication visuelle utiliser suite à une "
+"sonnerie système ou d'application. Il y a actuellement deux valeurs "
+"possibles, « fullscreen », qui provoque le clignotement de tout l'écran, et "
+"« frame_flash » qui provoque le clignotement de la barre de titre de "
+"l'application qui a envoyé le signal de sonnerie. Si l'application qui "
+"envoie la sonnerie est inconnue (c'est le cas de la sonnerie système par "
+"défaut), la barre de titre de la fenêtre qui a actuellement le focus "
+"clignote."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Les clés /apps/marco/global_keybindings/run_command_N définissent les "
+"combinaisons de touches qui correspondent à ces commandes. Presser la "
+"combinaison pour run_command_N exécutera la command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"La clé /apps/marco/global_keybindings/run_command_screenshot définit une "
+"combinaison de touches qui invoque la commande indiquée par ce réglage."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"La clé /apps/marco/global_keybindings/run_command_window_screenshot "
+"définit une combinaison de touches qui invoque la commande indiquée par ce "
+"réglage."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Les combinaisons de touches qui exécutent les commandes numérotées "
+"correspondantes dans /apps/marco/keybinding_commands. Le format ressemble "
+"à ceci : « &lt;Control&gt;a » ou « &lt;Shift&gt;&lt;Alt&gt;F1 ». L'analyseur "
+"est assez souple et permet d'utiliser des majuscules ou des minuscules et "
+"des abréviations telles que « &lt;Ctl&gt; » et « &lt;Ctrl&gt; ». Si vous "
+"définissez l'option sur la chaîne spéciale « disabled » (désactivé), il n'y "
+"aura pas de combinaison de touches pour cette action."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Le nom d'un espace de travail."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "La commande de capture d'écran"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Le thème détermine l'apparence des bordures, de la barre de titre, etc. de "
+"la fenêtre."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Le délai avant la mise au premier plan de la fenêtre si l'option auto_raise "
+"a la valeur VRAI. Il est indiqué en millièmes de secondes."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Le mode de focus de la fenêtre indique la façon dont les fenêtres sont "
+"activées. Il présente trois valeurs possibles ; « click » signifie que vous "
+"devez cliquer sur les fenêtres pour les activer, « sloppy » (« coulé ») "
+"signifie que les fenêtres sont activées lorsque la souris s'y place et "
+"« mouse » (« souris »), signifie que les fenêtres sont activées lorsque la "
+"souris s'y place et désactivées lorsqu'elle les quitte."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "La commande de capture d'écran de fenêtre"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Cette option détermine les effets d'un double-clic sur la barre de titre "
+"d'une fenêtre. Les valeurs possibles sont « toggle_shade » qui replie la "
+"fenêtre ou la déplie, « toggle_maximize » qui maximise la fenêtre ou la remet "
+"à sa taille initiale avant maximisation, « toggle_maximize_horizontally » et "
+"« toggle_maximize_vertically » qui limitent la maximisation dans la direction "
+"indiquée, « minimize » qui réduit la fenêtre, « shade » qui replie la fenêtre, "
+"« menu » qui affiche le menu de la fenêtre, « lower » qui place la fenêtre "
+"derrière toutes les autres et « none » qui ne fait rien."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Cette option détermine les effets d'un clic du milieu sur la barre de titre "
+"d'une fenêtre. Les valeurs possibles sont « toggle_shade » qui replie la "
+"fenêtre ou la déplie, « toggle_maximize » qui maximise la fenêtre ou la remet "
+"à sa taille initiale avant maximisation, « toggle_maximize_horizontally » et "
+"« toggle_maximize_vertically » qui limitent la maximisation dans la direction "
+"indiquée, « minimize » qui réduit la fenêtre, « shade » qui replie la fenêtre, "
+"« menu » qui affiche le menu de la fenêtre, « lower » qui place la fenêtre "
+"derrière toutes les autres et « none » qui ne fait rien."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Cette option détermine les effets d'un clic droit sur la barre de titre "
+"d'une fenêtre. Les valeurs possibles sont « toggle_shade » qui replie la "
+"fenêtre ou la déplie, « toggle_maximize » qui maximise la fenêtre ou la remet "
+"à sa taille initiale avant maximisation, « toggle_maximize_horizontally » et "
+"« toggle_maximize_vertically » qui limitent la maximisation dans la direction "
+"indiquée, « minimize » qui réduit la fenêtre, « shade » qui replie la fenêtre, "
+"« menu » qui affiche le menu de la fenêtre, « lower » qui place la fenêtre "
+"derrière toutes les autres et « none » qui ne fait rien."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Cette option fournit un contrôle supplémentaire sur la façon dont les "
+"nouvelles fenêtres deviennent actives. Elle a deux valeurs "
+"possible: « smart » qui correspond au mode d'activation utilisateur normal et "
+"« strict » qui n'active pas les fenêtre démarrées depuis un terminal."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Active une indication visuelle lorsqu'une application ou le système émet un "
+"bip ; utile pour les malentendants et pour une utilisation dans des "
+"environnements bruyants."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Utiliser la police standard du système dans les titres des fenêtres"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Type de sonnerie visuelle"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Indique si la mise au premier plan doit être un effet de bord d'autres "
+"interactions avec l'utilisateur"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Indique si le bouton droit peut servir à redimensionner"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Mode de focus des fenêtres"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Police de titre des fenêtres"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Utilisation : %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Fermer la fenêtre"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menu Fenêtre"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Réduire la fenêtre"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximiser la fenêtre"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restaurer la fenêtre"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Replier la fenêtre"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Déplier la fenêtre"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Garder la fenêtre au premier plan"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Enlever la fenêtre du premier plan"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Toujours sur l'espace de travail visible"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Mettre la fenêtre sur un seul espace de travail"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Réd_uire"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximiser"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "R_estaurer"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Repl_ier"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Déplier"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Dé_placer"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Redimensionner"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Déplacer la barre de titre sur l'é_cran"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Au premier _plan"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Toujours sur l'espace de travail visible"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Seulement sur cet espace de travail"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Déplacer vers l'espace de travail de _gauche"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Déplacer vers l'espace de travail de _droite"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Déplacer vers l'espace de travail du dess_us"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Déplacer vers l'espace de travail du dess_ous"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Fermer"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Espace de travail %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Espace de travail 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Espace de travail %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Déplacer vers un _autre espace de travail"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "haut"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "bas"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "gauche"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "droite"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "la géométrie du cadre n'indique pas la dimension « %s »"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"la géométrie du cadre n'indique pas la dimension « %s » pour la bordure « %s »"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "La proportion du bouton %g n'est pas raisonnable"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "La géométrie du cadre n'indique pas la taille des boutons"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Les dégradés doivent comporter au moins deux couleurs"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"La spécification de couleur GTK doit présenter l'état entre crochets, p. ex. "
+"gtk:fg[NORMAL] où NORMAL est l'état ; impossible d'analyser « %s »"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"La spécification de couleur GTK doit comporter un crochet de fermeture après "
+"l'état, p. ex. gtk:fg[NORMAL] où NORMAL est l'état ; impossible d'analyser « %"
+"s »"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Impossible de comprendre l'état « %s » dans la spécification de couleur"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+"Impossible de comprendre le composant de couleur « %s » dans la spécification "
+"de couleur"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Le format de mélange est « blend/bg_color/fg_color/alpha », « %s » ne "
+"correspond pas à ce format ."
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Impossible d'analyser la valeur alpha « %s » en couleur mélangée"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+"La valeur alpha « %s » en couleur mélangée n'est pas comprise entre 0,0 et 1,0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Le format d'ombre est « shade/base_color/factor », « %s » ne correspond pas au "
+"format"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Impossible d'analyser le facteur d'ombre « %s » en couleur ombrée"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Le facteur d'ombre « %s » en couleur ombrée est négatif"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Impossible d'analyser la couleur « %s »"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+"L'expression de la coordonnée contient le caractère « %s » qui n'est pas "
+"autorisé"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"L'expression de la coordonnée contient la valeur en virgule flottante « %s » "
+"qui ne peut pas être analysée"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"L'expression de la coordonnée contient l'entier « %s » qui n'a pas pu être "
+"analysé"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"L'expression de la coordonnée contenait un opérateur inconnu au début de ce "
+"texte : « %s »"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "L'expression de la coordonnée était vide ou incomprise"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "L'expression de la coordonnée entraîne une division par zéro"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"L'expression de la coordonnée tente d'utiliser l'opérateur mod sur une "
+"valeur en virgule flottante"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"L'expression de la coordonnée a un opérateur « %s » là où un opérande était "
+"attendu"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"L'expression de la coordonnée a un opérande là où un opérateur était attendu"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"L'expression de la coordonnée était terminée par un opérateur au lieu d'un "
+"opérande"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"L'expression de la coordonnée a un opérateur « %c » suivant l'opérateur « %c » "
+"sans opérande entre eux"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"L'expression de la coordonnée possède une variable ou constante inconnue « %"
+"s »"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+"L'analyseur d'expression de coordonnées a dépassé la capacité de son tampon."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"L'expression de la coordonnée comporte une parenthèse de fermeture, mais pas "
+"de parenthèse d'ouverture"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"L'expression de la coordonnée comporte une parenthèse d'ouverture, mais pas "
+"de parenthèse de fermeture"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"L'expression de la coordonnée ne semble pas comprendre d'opérateur ni "
+"d'opérande"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Le thème contient une expression qui a entraîné une erreur : %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> doit être "
+"indiqué pour ce style de cadre"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> manquant"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Impossible de charger le thème « %s » : %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Aucun <%s> défini pour le thème « %s »"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Aucun style de cadre défini pour le type de fenêtre « %s » dans le thème « %"
+"s », ajoutez un élément <window type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Les constantes définies par l'utilisateur doivent commencer par une "
+"majuscule ; « %s » commence par une minuscule"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "La constante « %s » a déjà été définie"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Aucun attribut « %s » sur l'élément <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Ligne %d caractère %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Attribut « %s » répété deux fois sur le même élément <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Attribut « %s » non valide sur l'élément <%s> dans ce contexte"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Impossible d'analyser « %s » en tant qu'entier"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Caractères de fin « %s » non compris dans la chaîne « %s »"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "L'entier %ld doit être positif"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "L'entier %ld est trop élevé, le max. actuel est %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Impossible d'analyser « %s » en tant que valeur en virgule flottante"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Les valeurs booléennes doivent être « true » ou « false » et non « %s »"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "L'angle doit être compris entre 0,0 et 360,0. Il était de %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"La valeur alpha doit être comprise entre 0,0 (invisible) et 1,0 (entièrement "
+"opaque). Elle était de %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Échelle de titre non valide « %s » (elle doit avoir l'une des valeurs "
+"suivantes : xx-small, x-small, small, medium,large, x-large, xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> - nom « %s » utilisé une deuxième fois"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> - parent « %s » non défini"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> - géométrie « %s » non définie"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> doit indiquer une géométrie ou un parent qui en possède une"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Vous devez indiquer une valeur pour le paramètre alpha."
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Type inconnu « %s » sur l'élément <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set inconnu « %s » sur l'élément <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Le type de fenêtre « %s » s'est déjà vu attribuer un jeu de styles"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "L'élément <%s> n'est pas autorisé sous <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Impossible d'indiquer à la fois « button_width » / « button_height » (largeur/"
+"hauteur) et « aspect_ratio » (proportion) pour les boutons"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Distance « %s » inconnue"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Proportion « %s » inconnue"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Bordure « %s » inconnue"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+"Aucun attribut « start_angle » (« début d'angle ») ou « from » (« depuis ») sur "
+"l'élément <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+"Aucun attribut « extent_angle » (« extension d'angle ») ou « to » (« vers ») sur "
+"l'élément <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Impossible de comprendre la valeur « %s » pour le type de dégradé"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+"Impossible de comprendre le type de remplissage « %s » pour l'élément <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Impossible de comprendre l'état « %s » pour l'élément <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Impossible de comprendre l'ombre « %s » pour l'élément <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Impossible de comprendre la flèche « %s » pour l'élément <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Aucun <draw_ops> appelé « %s » n'a été défini"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "L'inclusion du draw_ops « %s » ici créerait une référence circulaire"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Position inconnue « %s » de la pièce du cadre"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Le style de cadre a déjà une pièce à la position %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Aucun <draw_ops> avec le nom « %s » n'a été défini"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Fonction inconnue « %s » pour le bouton"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"La fonction « %s » du bouton n'existe pas dans la version (%d, a besoin de %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "État inconnu « %s » pour le bouton"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Le style de cadre a déjà un bouton pour la fonction %s, état %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "« %s » n'est pas une valeur valide pour l'attribut de focus"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "« %s » n'est pas une valeur valide pour l'attribut d'état"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Aucun style appelé « %s » n'a été défini"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "« %s » n'est pas une valeur valide pour l'attribut de redimensionnement"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"L'attribut « resize » (« redimensionnement ») ne devrait pas figurer sur "
+"l'élément <%s> pour les états maximisé/réduit dans la barre de titre"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"L'attribut « resize » (« redimensionnement ») ne devrait pas figurer sur "
+"l'élément <%s> pour l'état maximisé"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Le style a déjà été indiqué pour l'état %s, redimensionnement %s, focus %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Le style a déjà été indiqué pour l'état %s, focus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossible d'avoir deux attributs draw_ops pour un élément <piece> (le thème "
+"indiquait un attribut draw_ops et un élément <draw_ops> ou deux éléments)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossible d'avoir deux attributs draw_ops pour un élément <button> (le "
+"thème indiquait un attribut draw_ops et un élément <draw_ops> ou deux "
+"éléments)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossible d'avoir deux attributs draw_ops pour un élément <menu_icon> (le "
+"thème indiquait un attribut draw_ops et un élément <draw_ops> ou deux "
+"éléments)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+"L'élément le plus extérieur dans le thème doit être <marco_theme> et non <"
+"%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"L'élément <%s> n'est pas autorisé dans un élément name/author/date/"
+"description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "L'élément <%s> n'est pas autorisé dans un élément <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"L'élément <%s> n'est pas autorisé dans un élément distance/border/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+"L'élément <%s> n'est pas autorisé dans un élément d'opération de dessin"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "L'élément <%s> n'est pas autorisé dans un élément <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Aucun attribut draw_ops fourni pour la pièce du cadre"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Aucun attribut draw_ops fourni pour le bouton"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Aucun texte autorisé dans l'élément <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> indiqué deux fois pour ce thème"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Impossible de trouver un fichier valide pour le thème %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+"Le fichier de thème %s ne contenait pas d'élément racine <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Fenêtres"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Fenêtres/détachée"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Fenêtres/_Dialogue"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Fenêtres/Dialogue _modale"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Fenêtres/_Utilitaire"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Fenêtres/Écr_an de démarrage"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Fenêtres/Panneau du _haut"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Fenêtres/Panneau du _bas"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Fenêtres/Panneau de _gauche"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Fenêtres/Panneau de _droite"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Fenêtres/_Tous les panneaux"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Fenêtres/_Bureau"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "C'est un message d'exemple dans une boîte de dialogue d'exemple"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Élément de menu factice %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Fenêtre avec seulement des bordures"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Barre"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Fenêtre d'application normale"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Boîte de dialogue"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Boîte de dialogue modale"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Palette utilitaire"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menu détaché"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Bordure"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test d'agencement de boutons %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g millisecondes pour dessiner un cadre de fenêtre"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Usage : marco-theme-viewer [NOMDUTHEME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Erreur lors du chargement du thème : %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Thème « %s » chargé en %g secondes\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Police de titre normal"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Petite police de titre"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Grande police de titre"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Agencements des boutons"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Performance"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Le titre des fenêtres se trouve ici"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d cadres furent dessinés en %g secondes du côté client (%g millisecondes "
+"par cadre) et %g secondes passées dans les ressources du serveur X (%g "
+"millisecondes par cadre)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"le test d'expression de position a retourné TRUE mais a signalé une erreur"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"le test d'expression de position a retourné FALSE mais n'a pas signalé "
+"d'erreur"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Une erreur était attendue mais aucune n'a été retournée"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "L'erreur %d était attendue mais %d est arrivée"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Aucune erreur n'était attendue mais une a été retournée : %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "la valeur x était %d, %d était attendu"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "la valeur y était %d, %d était attendu"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d expressions de coordonnées analysées en %g secondes (%g secondes en "
+"moyenne)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Ouvrir une autre de ces fenêtres"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "C'est un bouton de démonstration avec une icône « Ouvrir »"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "C'est un bouton de démonstration avec une icône « Quitter »"
diff --git a/po/ga.po b/po/ga.po
new file mode 100644
index 00000000..e0577c9c
--- /dev/null
+++ b/po/ga.po
@@ -0,0 +1,2169 @@
+# Irish translations for marco package.
+# Copyright (C) 2003-2009 Free Software Foundation Inc.
+# This file is distributed under the same license as the marco package.
+# Paul Duffy <[email protected]>, 2003.
+# Alastair McKinstry <[email protected]>, 2004.
+# Seán de Búrca <[email protected]>, 2007, 2008, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.master\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-08-17 05:40-0600\n"
+"PO-Revision-Date: 2009-08-17 06:05-0600\n"
+"Last-Translator: Seán de Búrca <[email protected]>\n"
+"Language-Team: Irish <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=5; plural=n==1 ? 0 : (n%10==1 || n%10==2) ? 1 : (n%"
+"10>=3 && n%10<= 6) ? 2 : ((n%10>=7 && n%10<=9) || n==10) ? 3 : 4;\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Deasc"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Bainistíocht Fuinneog"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr ""
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr ""
+
+#: ../src/core/delete.c:104
+#, c-format
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+
+#: ../src/core/delete.c:115
+msgid "_Wait"
+msgstr "_Fan"
+
+#: ../src/core/delete.c:115
+msgid "_Force Quit"
+msgstr "Éignigh _Scor"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Teip ag leámh óstainm: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr ""
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Teipeadh ag oscailt scathán Corás Fhunneoga X '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr ""
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Tharla earráid agus <tt>%s</tt> á rith:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr ""
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr ""
+
+#: ../src/core/main.c:130
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Cóipcheart (C) 2001-%s Havoc Pennington, Red Hat, Inc., agus daoine eile\n"
+"Is bogearraí saor é seo; féach an cód foinseach le haghaidh coinníollacha "
+"cóipeála.\n"
+"Níl AON bharánta ann; le haghaidh INDÍOLTÓIREACHTA nó OIRIÚNACHTA D'FHEIDHM "
+"ÁIRITHE fiú.\n"
+
+#: ../src/core/main.c:268
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/core/main.c:274
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/core/main.c:280
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/core/main.c:285
+msgid "X Display to use"
+msgstr "Taispeáint X le húsáid"
+
+#: ../src/core/main.c:291
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/core/main.c:297
+msgid "Print version"
+msgstr "Priontáil leagan"
+
+#: ../src/core/main.c:303
+msgid "Make X calls synchronous"
+msgstr "Déan sioncronach glaonna X"
+
+#: ../src/core/main.c:309
+msgid "Turn compositing on"
+msgstr ""
+
+#: ../src/core/main.c:315
+msgid "Turn compositing off"
+msgstr ""
+
+#: ../src/core/main.c:321
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+
+#: ../src/core/main.c:543
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Theip ar scanadh na comhadlainne théamaí: %s\n"
+
+#: ../src/core/main.c:559
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+
+#: ../src/core/main.c:618
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Theip ar atosú: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr ""
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "Spás Oibre %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr ""
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr ""
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr ""
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+
+#: ../src/core/session.c:845 ../src/core/session.c:852
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr ""
+
+#: ../src/core/session.c:862
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1003
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr ""
+
+#. oh, just give up
+#: ../src/core/session.c:1101
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1140
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/core/session.c:1202 ../src/core/session.c:1277
+#: ../src/core/session.c:1309 ../src/core/session.c:1381
+#: ../src/core/session.c:1441
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr ""
+
+#: ../src/core/session.c:1219
+#, c-format
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/core/session.c:1461
+#, c-format
+msgid "Unknown element %s"
+msgstr ""
+
+#: ../src/core/session.c:1812
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "D'oscail comhad loga %s\n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "Bainisteoir fuinneog:"
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr ""
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr ""
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr ""
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5627
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6192
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr ""
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (ar %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (mar fhorúsáideoir)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (mar %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (mar úsáideoir eile)"
+
+#: ../src/core/window-props.c:1429
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Athraigh go spás oibre 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Athraigh go spás oibre 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Athraigh go spás oibre 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Athraigh go spás oibre 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Athraigh go spás oibre 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Athraigh go spás oibre 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Athraigh go spás oibre 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Athraigh go spás oibre 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Athraigh go spás oibre 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Athraigh go spás oibre 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Athraigh go spás oibre 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Athraigh go spás oibre 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Athraigh go spás oibre ar chlé an spáis oibre reatha"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Athraigh go spás oibre ar dheis an spáis oibre reatha"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Athraigh go spás oibre os cionn an spáis oibre reatha"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Athraigh go spás oibre faoin spás oibre reatha"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Athraigh idir fhuinneoga feidhmchláir le preabfhuinneog"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Athraigh ar gcúl idir fhuinneoga feidhmchláir le preabfhuinneog"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Athraigh idir fhuinneoga le preabfhuinneog"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Athraigh ar gcúl idir fhuinneoga le preabfhuinneog"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Athraigh idir phainéil agus an deasc le preabfhuinneog"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Athraigh ar gcúl idir phainéil agus an deasc le preabfhuinneog"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Athraigh idir fhuinneoga feidhmchláir láithreach"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Athraigh ar gcúl idir fhuinneoga feidhmchláir láithreach"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Athraigh idir fhuinneoga láithreach"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Athraigh ar gcúl idir fhuinneoga láithreach"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Athraigh idir phainéil agus an deasc láithreach"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Athraigh ar gcúl idir phainéil agus an deasc láithreach"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Folaigh gach gnáthfhuinneog agus tabhair fócas don deasc"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Taispeáin príomhroghchlár an phainéil"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Taispeáin bosca dialóige \"Rith Feidhmchlár\" an phainéil"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Tóg scáilghraf"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Tóg scáilghraf fuinneoige"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Rith teirminéal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Gníomhachtaigh an roghchlár fuinneoige"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Scoránaigh mód lánscáileáin"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Scoránaigh staid uasmhéadaithe"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+"Scoránaigh an mbeidh fuinneog infheicthe os cionn fuinneog eile i gcónaí"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Uasmhéadaigh fuinneog"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Athchóirigh fuinneog"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Scoránaigh staid scáthaithe"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Íoslaghdaigh fuinneog"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Dún fuinneog"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Bog fuinneog"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Athmhéadaigh fuinneog"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Scoránaigh an bhfuil fuinneog ar gach spás oibre nó ar cheann amháin"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Bog fuinneog go spás oibre 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Bog fuinneog go spás oibre 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Bog fuinneog go spás oibre 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Bog fuinneog go spás oibre 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Bog fuinneog go spás oibre 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Bog fuinneog go spás oibre 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Bog fuinneog go spás oibre 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Bog fuinneog go spás oibre 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Bog fuinneog go spás oibre 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Bog fuinneog go spás oibre 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Bog fuinneog go spás oibre 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Bog fuinneog go spás oibre 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Bog fuinneog spás oibre ar chlé"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Bog fuinneog spás oibre ar dheis"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Bog fuinneog spás oibre suas"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Bog fuinneog spás oibre síos"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Ardaigh fuinneog má tá sí chlúdaíonn fuinneog eile í, nó ísligh í"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Ardaigh fuinneog os cionn fuinneog eile"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Ísligh fuinneog faoi fhuinneoga eile"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Uasmhéadaigh fuinneog go hingearach"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Uasmhéadaigh fuinneog go cothrománach"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Bog fuinneog go cúinne iarthuaiscirt (barr ar chlé)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Bog fuinneog go cúinne oirthuaiscirt (barr ar dheis)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Bog fuinneog go cúinne iardheiscirt (bun ar chlé)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Bog fuinneog go cúinne oirdheiscirt (bun ar dheis)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Bog fuinneog go taobh thuaisceart (barr) an scáileáin"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Bog fuinneog go taobh dheisceart (bun) an scáileáin"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Bog fuinneog go taobh oirthear (taobh deas) an scáileáin"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Bog fuinneog go taobh iarthar (taobh clé) an scáileáin"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Bog fuinneog go lár an scáileáin"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Bainisteoir Comhshuite"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Téama reatha"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Cumasaigh Cloigín Infeicthe"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Ainm spás oibre"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Líon na spásanna oibre"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "An t-ainm spás oibre."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "An ordú scáilghraif"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr ""
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Úsáid: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Dún Fuinneog"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Roghchlár Fuinneoige"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Íoslaghdaigh Fuinneog"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Uasmhéadaigh Fuinneog"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Athchóirigh Fuinneog"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Roll Fuinneog Isteach"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Roll Fuinneog Amach"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Coinnigh Fuinneog ar Barr"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Bain Fuinneog ó Bharr"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Ar Spás Oibre Reatha i gCónaí"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Cuir Fuinneog ar Spás Oibre Amháin"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Íos_laghdaigh"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_Uasmhéadaigh"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Dí-uas_mhéadaigh"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Roll _Isteach"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Roll _Amach"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Bog"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Athmhéadaigh"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Bog Barra Teidil ar _Scáileáin"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Ar Barr i gCónaí"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Ar Spás Oibre Reatha i _gCónaí"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Ar an Spás _Oibre Seo Amháin"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Bog go Spás Oibre ar _Chlé"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Bog go Spás Oibre ar _Dheis"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Bog go Spás Oibre Os C_ionn"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Bog go Spás Oibre _Faoi Bhun"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Dún"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Spás Oibre %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Spás Oibre 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Spás Oibre %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Bog go _Spás Oibre Eile"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "ag barr"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "ag bun"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "ar chlé"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "ar dheis"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr ""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr ""
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr ""
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Theip ar luchtú téama \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Gan <%s> socraithe don téama \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Líne %d carachtar %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Fuinneoga"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:136
+msgid "Open another one of these windows"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:143
+msgid "This is a demo button with an 'open' icon"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:150
+msgid "This is a demo button with a 'quit' icon"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:243
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:326
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Border-only window"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:362
+msgid "Bar"
+msgstr "Barra"
+
+#: ../src/ui/theme-viewer.c:379
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:383
+msgid "Dialog Box"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:391
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:395
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:399
+msgid "Border"
+msgstr "Imlíne"
+
+#: ../src/ui/theme-viewer.c:727
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:756
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:799
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Úsáid: marco-theme-viewer [AINMTÉAMA]\n"
+
+#: ../src/ui/theme-viewer.c:806
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Earráid agus téama á luchtú: %s\n"
+
+#: ../src/ui/theme-viewer.c:812
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Luchtaíodh téama \"%s\" i %g soicind\n"
+
+#: ../src/ui/theme-viewer.c:853
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:859
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:865
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:870
+msgid "Button Layouts"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:875
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:922
+msgid "Window Title Goes Here"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1026
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1245
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1247
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1251
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1253
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1259
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1263
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1266
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1331
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
diff --git a/po/gl.po b/po/gl.po
new file mode 100644
index 00000000..7798bf52
--- /dev/null
+++ b/po/gl.po
@@ -0,0 +1,2426 @@
+# translation of marco.HEAD.gl.po to Galician translation of Marco, a tiny WM for MATE.
+# Copyright (C) 2001, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+#
+# Manuel A. Fernández Montecelo <[email protected]>, 2001, 2005.
+# Ignacio Casal Quinteiro <[email protected]>, 2005, 2006.
+# Ignacio Casal Quinteiro <[email protected]>, 2007, 2008.
+# Mancomún - Centro de Referencia e Servizos de Software Libre <[email protected]>, 2009.
+# Suso Baleato <[email protected]>, 2009.
+# Francisco Diéguez <[email protected]>, 2009.
+# Antón Méixome <[email protected]>, 2009.
+# Fran Diéguez <[email protected]>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco-master-po-gl-37635\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-08-04 16:32+0200\n"
+"PO-Revision-Date: 2010-09-26 13:35+0200\n"
+"Last-Translator: Fran Diéguez <[email protected]>\n"
+"Language-Team: Galician <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: gl\n"
+"Plural-Forms: nplurals=2; plural=(n!=1);\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Escritorio"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Xestión de xanelas"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Evento da campaíña do sistema"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Requírese información de xanela descoñecida: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> non está respondendo."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Elixa entre esperar un pouco a que continúe ou forzar a saída do aplicativo."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "Espe_rar"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Forzar a saída"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Produciuse un fallo ao obter o nome do host: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Falta a extensión %s que se require para a composición"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Produciuse un fallo ao abrir a pantalla do sistema de xanelas X «%s»\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Perdeuse a conexión coa pantalla «%s»;\n"
+"probabelmente saíu do servidor X ou \n"
+"matou/destruíu o xestor de xanelas.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Erro moi grave de E/S %d (%s) na pantalla «%s».\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Algún outro programa xa está usando a tecla %s cos modificadores %x como "
+"combinación\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Produciuse un erro ao executar <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Non se definiu ningunha orde %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Non se definiu ningunha orde de terminal.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Dereitos de autor (C) 2001-%s Havoc Pennington, Red Hat, Inc., e outros\n"
+"Isto é software libre; vexa o código fonte para obter as condicións de "
+"copia.\n"
+"Non hai NINGUNHA GARANTÍA nin de VALOR COMERCIAL nin de ADECUACIÓN PARA UN "
+"FIN ESPECÍFICO.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Desactivar a conexión ao xestor de sesión"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Substituír o xestor de xanelas en execución co Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Especificar o ID de xestión de sesión"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Pantalla X que se vai usar"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inicializar a sesión desde o ficheiro de salvagarda"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Imprimir versión"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Facer que as chamadas a X sexan síncronas"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Activar a composición"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Desactivar a composición"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Non facer xanelas de pantalla completa que estean maximizadas e sen "
+"decoracións"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Produciuse un fallo ao analizar o directorio de temas: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Non foi posíbel encontrar ningún tema! Asegúrese de que %s existe e de que "
+"contén os temas habituais.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Produciuse un fallo ao reiniciar: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "A chave MateConf «%s» está configurada cun valor non válido\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d almacenado na chave MateConf %s está fóra do intervalo %d a %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "A chave MateConf «%s» está configurada cun tipo non válido\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Desactiváronse os arranxos para aplicativos danados. Pode que algúns "
+"aplicativos non se comporten correctamente.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Non foi posíbel analizar a descrición do tipo de letra «%s» da chave MateConf "
+"%s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"«%s» encontrado na base de datos de configuración non é un valor válido para "
+"o modificador do botón do rato\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+"Produciuse un erro ao definir o número de espazos de traballo en %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Espazo de traballo %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"«%s» encontrado na base de datos de configuración non é un valor válido para "
+"a combinación de teclas «%s»\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+"Produciuse un erro ao definir o nome do espazo de traballo %d como «%s»: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Produciuse un erro ao definir o estado do compositor: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "A pantalla %d na visualización «%s» non é válida\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"A visualización %d na pantalla «%s» ten xa un xestor de xanelas, tente usar "
+"a opción --replace para substituír o xestor de xanelas.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Non foi posíbel obter a selección do xestor de xanelas na pantalla %d na "
+"visualización «%s»\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "A visualización %d na pantalla «%s» ten xa un xestor de xanelas\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Non foi posíbel liberar a visualización %d na pantalla «%s»\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"O formato seméllase a \"<Control>a\" ou \"<Shift><Alt>F1\".\n"
+"\n"
+"O analizador é bastante libre e permite minúsculas ou maiúsculas, e tamén "
+"abreviaturas como \"<Ctl>\" e \"<Ctrl>\". Se define esta opción coa cadea "
+"especial \"disabled\", entón non haberá unha combinación de teclas para esta "
+"acción."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"O formato seméllase a \"<Control>a\" ou \" <Shift><Alt>F1\".\n"
+"\n"
+"O analizador é bastante libre e permite minúsculas ou maiúsculas, e tamén "
+"abreviacións como \"<Ctl>\" e \"<Ctrl>\". Se define esta opción coa cadea "
+"especial \"disabled\", entón non haberá unha combinación de teclas para esta "
+"acción.\n"
+"\n"
+"Esta combinación de teclas pode ser invertida mantendo premida a tecla "
+"\"shift\"; polo tanto, a tecla \"shift\" non poderá ser unha das teclas "
+"usadas."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Non foi posíbel crear o directorio «%s»: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Non foi posíbel abrir o ficheiro de sesión «%s» para escritura: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Produciuse un erro ao escribir o ficheiro de sesión «%s»: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Produciuse un erro ao pechar o ficheiro de sesión «%s»: %s\n"
+
+#: ../src/core/session.c:1143
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Produciuse un fallo ao analizar o ficheiro de sesión gardado: %s\n"
+
+#: ../src/core/session.c:1192
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "O atributo <marco_session> foi visto mais xa temos o ID de sesión"
+
+#: ../src/core/session.c:1205 ../src/core/session.c:1280
+#: ../src/core/session.c:1312 ../src/core/session.c:1384
+#: ../src/core/session.c:1444
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Atributo descoñecido %s no elemento <%s>"
+
+#: ../src/core/session.c:1222
+#, c-format
+msgid "nested <window> tag"
+msgstr "etiqueta <window> aniñada"
+
+#: ../src/core/session.c:1464
+#, c-format
+msgid "Unknown element %s"
+msgstr "Elemento descoñecido %s"
+
+#: ../src/core/session.c:1816
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Estas xanelas non permiten &quot;gardar a configuración actual&quot; e terán "
+"que se reiniciar manualmente a próxima vez que inicie a sesión."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Produciuse un fallo ao abrir o rexistro de depuración: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Produciuse un fallo ao facer fdopen() no ficheiro de rexistro %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Ficheiro de rexistro %s aberto\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "O Marco compilouse sen capacidade para o modo detallado\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Xestor de xanelas: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Erro no xestor de xanelas: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Aviso do xestor de xanelas: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Erro do xestor de xanelas: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5660
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"A xanela %s estabelece SM_CLIENT_ID sobre si mesma en vez de facelo na "
+"xanela WM_CLIENT_LEADER como está especificado no ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6225
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size "
+"%d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"A xanela %s estabeleceu a propiedade MWM indicando que non é redimensionábel "
+"mais configurou o tamaño mínimo a %d x %d e o tamaño máximo a %d x %d, isto "
+"non ten moito sentido.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "O aplicativo configurou un _NET_WM_PID %lu falso\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (en %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (como superusuario)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (como %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (como outro usuario)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+"WM_TRANSIENT_FOR non válido para a xanela 0x%lx especificada para %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"A xanela 0x%lx ten a propiedade %s\n"
+"que se esperaba que tivese o tipo %s co formato %d\n"
+"e actualmente ten un tipo %s co formato %d e n_items %d.\n"
+"Isto non parece ser un erro do aplicativo nin do xestor de xanelas.\n"
+"A xanela ten título=«%s» a clase=«%s» e o nome=«%s»\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "A propiedade %s na xanela 0x%lx contén UTF-8 non válido\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"A propiedade %s na xanela 0x%lx contén UTF-8 non válido para o elemento da "
+"lista %d\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Cambiar ao espazo de traballo 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Cambiar ao espazo de traballo 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Cambiar ao espazo de traballo 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Cambiar ao espazo de traballo 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Cambiar ao espazo de traballo 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Cambiar ao espazo de traballo 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Cambiar ao espazo de traballo 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Cambiar ao espazo de traballo 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Cambiar ao espazo de traballo 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Cambiar ao espazo de traballo 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Cambiar ao espazo de traballo 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Cambiar ao espazo de traballo 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Cambiar ao espazo de traballo á esquerda do espazo actual"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Cambiar ao espazo de traballo á dereita do espazo actual"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Cambiar ao espazo de traballo sobre o espazo actual"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Cambiar ao espazo de traballo baixo o espazo actual"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Moverse entre xanelas dun aplicativo usando unha xanela emerxente"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Moverse cara a atrás entre xanelas dun aplicativo usando unha xanela "
+"emerxente"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Moverse entre xanelas usando unha xanela emerxente"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Moverse cara a atrás entre xanelas usando unha xanela emerxente"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Moverse entre os paneis e o escritorio usando unha xanela emerxente"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Moverse cara a atrás entre os paneis e o escritorio usando unha xanela "
+"emerxente"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Moverse inmediatamente entre xanelas dun aplicativo"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Moverse cara a atrás entre xanelas dun aplicativo inmediatamente"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Moverse inmediatamente entre xanelas"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Moverse cara a atrás entre xanelas inmediatamente"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Moverse inmediatamente entre os paneis e o escritorio"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Moverse inmediatamente cara a atrás entre os paneis e o escritorio"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Ocultar todas as xanelas normais e cambiar o foco ao escritorio"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Mostrar o menú principal do panel"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Mostrar a caixa de diálogo \"Executar un aplicativo\" do panel"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Coller unha captura de pantalla"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Coller unha captura de pantalla dunha xanela"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Executar nun terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Activar o menú da xanela"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Alternar o modo de pantalla completa"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Alternar o estado maximizado"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+"Alternar entre se unha xanela será visíbel sempre sobre outras xanelas ou non"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximizar a xanela"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restaurar a xanela"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Alternar o estado ensombrecido"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimizar a xanela"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Pechar a xanela"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Mover a xanela"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Redimensionar a xanela"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Alternar entre se unha xanela está en todos os espazos de traballo ou só nun"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Mover a xanela ao espazo de traballo 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Mover a xanela ao espazo de traballo 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Mover a xanela ao espazo de traballo 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Mover a xanela ao espazo de traballo 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Mover a xanela ao espazo de traballo 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Mover a xanela ao espazo de traballo 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Mover a xanela ao espazo de traballo 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Mover a xanela ao espazo de traballo 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Mover a xanela ao espazo de traballo 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Mover a xanela ao espazo de traballo 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Mover a xanela ao espazo de traballo 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Mover a xanela ao espazo de traballo 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Mover a xanela un espazo de traballo cara á esquerda"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Mover a xanela un espazo de traballo cara á dereita"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Mover a xanela un espazo de traballo cara a arriba"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Mover a xanela un espazo de traballo cara a abaixo"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Elevar unha xanela se está cuberta por outra, en caso contrario baixala"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Subir a xanela por enriba doutras xanelas"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Baixar unha xanela debaixo doutras xanelas"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximizar a xanela verticalmente"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximizar a xanela horizontalmente"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Mover a xanela á esquina noroeste (arriba á esquerda)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Mover a xanela á esquina nordeste (arriba á dereita)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Mover a xanela á esquina sudoeste (abaixo á esquerda)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Mover a xanela á esquina sueste (abaixo á dereita)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Mover a xanela ao lado norte (arriba) da pantalla"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Mover a xanela ao lado sur (abaixo) da pantalla"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Mover a xanela ao lado leste (dereita) da pantalla"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Mover a xanela ao lado oeste (esquerda) da pantalla"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Mover a xanela ao centro da pantalla"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Non implementado) A navegación funciona en termos de aplicativos, non de "
+"xanelas"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Unha cadea de descrición do tipo de letra que describe un tipo de letra para "
+"os títulos das xanelas. O tamaño dunha descrición só se usará se a opción "
+"titlebar_font_size está definida como 0; do mesmo modo, esta opción tamén "
+"está desactivada se a opción titlebar_uses_desktop_font está definida como "
+"verdadeira."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Acción ao premer dúas veces na barra de título"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Acción ao premer co botón do medio do rato na barra de título"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Acción ao premer co botón dereito na barra de título"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Distribución dos botóns na barra de títulos"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"A disposición dos botóns na barra de título. O valor debe ser unha cadea "
+"como \"menu:minimize,maximize,spacer,close\"; a vírgula separa a esquina "
+"esquerda da xanela da dereita, e os nomes dos botóns están separados por "
+"vírgulas. Non están permitidos os botóns duplicados. Os nomes de botóns "
+"descoñecidos son ignorados silenciosamente, para que se poidan engadir "
+"botóns en futuras versións do Marco sen romper as versións anteriores. "
+"Pódese usar unha etiqueta separadora especial para inserir un pouco de "
+"espazo entre dous botóns adxacentes."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Eleva automaticamente a xanela enfocada"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Ao facer clic nunha xanela mentres se mantén premida esta tecla "
+"modificadora, fará que a xanela se mova (co clic esquerdo), se restaure (co "
+"clic co botón do medio) ou que se mostre o menú da xanela (co clic dereito). "
+"As operacións esquerda e dereita poden ser intercambiadas usando a chave "
+"\"resize_with_right_button\". O modificador exprésase como \"&lt;Alt&gt;\" "
+"ou \"&lt;Super&gt;\" por exemplo."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Ordes que se van executar en resposta ás combinacións de teclas"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Xestor de composición"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Controla como obteñen o foco as novas xanelas"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Tema actual"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Atraso en milisegundos para a opción de subida automática"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determina se o Marco é un xestor de composición."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determina se os aplicativos ou o sistema poden xerar 'tons de aviso' "
+"audíbeis; pode usarse en conxunto co 'ton de campá visual' para permitir "
+"'tons de aviso' silenciosos."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Desactivar as características non adecuadas que son requiridas por "
+"aplicativos antigos ou danados"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Activar a campá visual"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Se se define como true, e o modo de foco é \"sloppy\" ou \"mouse\", entón a "
+"xanela enfocada subirá automaticamente despois dun atraso especificado na "
+"chave auto_raise_delay. Isto non está relacionado con premer nunha xanela "
+"para subila, nin con entrar nunha xanela durante unha operación de arrastrar "
+"e soltar."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Se é true, ignora a opción titlebar_font e usa o tipo de letra estándar do "
+"aplicativo para os títulos das xanelas."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Se é true, o Marco daralle ao usuario unha menor retroacción usando "
+"contornos de liña, evitando animacións ou outros medios. Isto é unha "
+"redución significativa da usabilidade para moitos usuarios, mais pode "
+"permitir funcionar os aplicativos antigos e tamén é unha boa solución de "
+"compromiso para servidores de terminal. Con todo, a característica de "
+"contorno de liña desactívase cando a accesibilidade está activa."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Se é true, entón o Marco funciona en termos de aplicativos en vez de en "
+"xanelas. O concepto é un pouco abstracto, mais en xeral unha configuración "
+"baseada en aplicativos é máis parecida a un Mac e menos a un Windows. Cando "
+"enfoca unha xanela no modo baseado en aplicativo, subiranse todas as xanelas "
+"do aplicativo. Tamén no modo baseado en aplicativo as pulsacións do foco non "
+"se pasan a través das xanelas noutros aplicativos. Porén, este modo baseado "
+"en aplicativo non está implementado neste momento."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Se é true, reducir a usabilidade para aforrar recursos recursos"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Modificador que se vai usar para as accións modificadas de pulsación de "
+"xanela"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nome do espazo de traballo"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Número de espazos de traballo"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Número de espazos de traballo. Debe ser maior que cero e ter un máximo fixo "
+"para prever a destrución accidental do seu escritorio ao pedir moitos "
+"espazos de traballo."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Executar unha orde definida"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Defina isto como true para redimensionar co botón dereito e para mostrar un "
+"menú co botón do medio mentres se mantén premida a tecla indicada en "
+"\"mouse_button_modifier\"; defínao como false para que funcione da maneira "
+"contraria."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Definir esta opción como false pode conducir a un comportamento incorrecto, "
+"así que lle recomendamos encarecidamente aos usuarios que non cambien a "
+"opción true predefinida. Moitas accións, como por exemplo premer na área "
+"cliente ou mover e redimensionar a xanela, normalmente elevan a xanela como "
+"efecto colateral. Definindo esta opción como false, o que se desaconsella "
+"encarecidamente, pódese desacoplar a elevación para outras accións do "
+"usuario e ignorar as solicitudes de elevación xeradas polos aplicativos. "
+"Vexa http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Aínda cando esta "
+"opción está definida como false, as xanelas poden ser elevadas por calquera "
+"Alt-Esq-Clic nalgún lugar da xanela, un clic normal nas decoracións da "
+"xanela ou a través de mensaxes especiais dos paxinadores, como as "
+"solicitudes de activación dos miniaplicativos de lista de tarefas. Esta "
+"opción está actualmente desactivada no modo de \"clic para premer\". Note "
+"que a lista de maneiras para elevar xanelas cando raise_on_click é false non "
+"inclúe as solicitudes programáticas dos aplicativos para elevar as xanelas; "
+"estas solicitudes serán ignoradas sen importar o motivo da solicitude. Se "
+"vostede é unha persoa desenvolvedora de aplicativos e ten un usuario que se "
+"queixa de que o seu aplicativo non funciona con esta configuración "
+"desactivada, dígalle que é responsabilidade del por romper o seu xestor de "
+"xanelas, e que precisa cambiar esta opción de novo como true ou vivir co "
+"\"informe de erro\" que enviou."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Algúns aplicativos non consideran as especificacións en formas que teñen "
+"como resultado un comportamento incorrecto do xestor de xanelas. Esta opción "
+"pon ao Marco nun modo rigorosamente correcto, o que dá unha interface de "
+"usuario máis consistente, sempre que non se necesite executar ningún "
+"aplicativo que sexa problemático."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "O ton de campá do sistema é audíbel"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Dílle ao Marco como implementar a indicación visual de que soou a campá "
+"do sistema ou a campá de indicación doutro aplicativo. Actualmente hai dous "
+"valores válidos, «fullscreen», que causa un escintilo en branco e negro en "
+"toda a pantalla e «frame_flash» que provoca que a barra de títulos da xanela "
+"de aplicativos que enviou o sinal de campá escintile. Se o aplicativo que "
+"enviou o ton de campá é descoñecido (como é normalmente para o «ton de aviso "
+"do sistema» predefinido), a barra de título da xanela actual enfocada "
+"escintilará."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"As chaves /apps/marco/global_keybindings/run_command_N definen as "
+"combinacións de teclas que corresponden a esas ordes. Ao premer a "
+"combinación de teclas para run_command_N executarase o command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"A chave /apps/marco/global_keybindings/run_command_screenshot define unha "
+"combinación de teclas que fai que se invoque a orde especificada por esta "
+"configuración."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"A chave /apps/marco/global_keybindings/run_command_window_screenshot "
+"define unha combinación de teclas que fai que se invoque a orde especificada "
+"por esta configuración."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"A combinación de teclas que executa a orde numerada correspondente en /apps/"
+"marco/keybinding_commands. O formato vese como \"&lt;Control&gt;a\" ou "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". O analizador é bastante flexíbel e permite "
+"tanto maiúsculas como minúsculas ademais de abreviaturas como por exemplo "
+"\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se configura esta opción coa cadea "
+"especial \"disabled\", entón non haberá combinación de teclas para esa "
+"acción."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "O nome do espazo de traballo."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "A orde de captura de pantalla"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "O tema determina a aparencia dos bordos da xanela, o título e o resto."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"O atraso antes de subir unha xanela se auto_raise está configurado como "
+"true. O atraso está indicado en milésimas de segundo."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"O modo de foco da xanela indica como se activan as xanelas. Ten tres valores "
+"posíbeis; \"click\" significa que a xanela debe seleccionarse para obter o "
+"foco, \"sloppy\" significa que as xanelas se enfocan cando o rato entra na "
+"xanela e \"mouse\" significa que as xanelas se enfocan cando o rato entra na "
+"xanela e que deixan de estalo cando o rato sae da xanela."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "A orde de captura de pantalla dunha xanela"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opción determina os efectos de facer un dobre clic na barra de título. "
+"As opcións válidas actuais son «toggle_shade», que enrrolará/desenrrolará ou "
+"desensombrecerá a xanela; «toggle_maximize_horizontally» e "
+"«toggle_maximize_vertically» que maximizará ou restaurará a xanela só nesa "
+"dirección; «minimize», que minimizará a xanela; «shade», que enrolará a "
+"xanela; «menu» que mostrará o menú da xanela; «lower», que colocará a xanela "
+"por detrás de todas as outras e «none», que non fará nada."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opción determina os efectos de facer un clic co botón do medio na barra "
+"de título. As opcións válidas actuais son «toggle_shade», que ensombrecerá "
+"ou desensombrecerá a xanela; «toggle_maximize_horizontally» e "
+"«toggle_maximize_vertically» que maximizará ou restaurará a xanela só nesa "
+"dirección; «minimize», que minimizará a xanela; «shade», que enrolará a "
+"xanela; «menu» que mostrará o menú da xanela; «lower», que colocará a xanela "
+"por detrás de todas as outras e «none», que non fará nada."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opción determina os efectos de facer un clic co botón dereito na barra "
+"de título. As opcións válidas actuais son «toggle_shade», que ensombrecerá "
+"ou desensombrecerá a «toggle_maximize_horizontally» e "
+"«toggle_maximize_vertically» que maximizará ou restaurará a xanela só nesa "
+"dirección; «minimize», que minimizará a xanela; «shade», que enrolará a "
+"xanela; «menu» que mostrará o menú da xanela; «lower», que colocará a xanela "
+"por detrás de todas as outras e «none», que non fará nada."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Esta opción proporciona control adicional sobre como obteñen o foco as "
+"xanelas creadas recentemente. Ten dous valores posíbeis: «smart» aplica o "
+"modo de foco normal do usuario «strict» fai que ás xanelas iniciadas desde "
+"un terminal non se lles dea o foco."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Activa unha indicación visual cando un aplicativo ou o sistema emite un «ton "
+"de campá» ou un «ton de aviso»; é moi útil para os contornos ruidosos e para "
+"as persoas con dificultades auditivas."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Usar un tipo de letra estándar de sistema nos títulos da xanela"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Tipo de ton de campá visual"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Indica se subir debe ser unha acción que vaia ligada a outras interaccións "
+"do usuario"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Se hai que redimensionar co botón dereito"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Modo de foco da xanela"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Tipo de letra do título da xanela"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Uso: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Pechar a xanela"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menú da xanela"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimizar a xanela"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximizar a xanela"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restaurar a xanela"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Pregar a xanela"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Despregar a xanela"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Manter a xanela na parte superior"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Quitar a xanela da parte superior"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Sempre no espazo de traballo visíbel"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Pór a xanela nun só espazo de traballo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Resta_urar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "P_regar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Despregar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Mover"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Redimensionar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Mover a barra de título na _pantalla"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Sempre _enriba das demais xanelas"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Se_mpre no espazo de traballo visíbel"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Só neste espazo de traballo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Mover ao espazo da _esquerda"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Mover ao espazo da dere_ita"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Mover ao espazo de _arriba"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Mover ao espazo de a_baixo"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Pechar"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Espazo de traballo %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Espazo de traballo 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Espazo de traballo %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Mover a outro _espazo de traballo"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Maiús"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hiper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "superior"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "inferior"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "esquerda"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "dereita"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "a xeometría do marco non especifica a dimensión «%s»"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "a xeometría do marco non especifica a dimensión «%s» para o bordo «%s»"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "A proporción de aspecto do botón %g non é razoábel"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "A xeometría do marco non especifica o tamaño dos botóns"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Os degradados deben ter polo menos dúas cores"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"A especificación de cor do GTK debe ter o estado entre parénteses, exemplo. "
+"gtk:fg[NORMAL] onde NORMAL é o estado; non foi posíbel analizar «%s»"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"A especificación de cor do GTK debe ter unha paréntese pechada despois do "
+"estado, exemplo. gtk:fg[NORMAL] onde NORMAL é o estado; non foi posíbel "
+"analizar «%s»"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Non se entende o estado «%s» na especificación da cor"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Non se entende o compoñente de cor «%s» na especificación da cor"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"O formato de blend é \"blend/bg_color/fg_color/alpha\", «%s»non coincide co "
+"formato"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Non foi posíbel analizar o valor alfa «%s» na cor mesturada"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "O valor alfa «%s» na cor mesturada non está entre 0.0 e 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"O formato de sombreado é \"shade/base_color/factor\", «%s» non coincide co "
+"formato"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Non foi posíbel o factor de sombreado «%s» na cor sombreada"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "O factor de sombreado «%s» na cor sombreada é negativo"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Non foi posíbel analizar a cor «%s»"
+
+#: ../src/ui/theme.c:1586
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+"A expresión de coordenadas contén un carácter «%s» que non está permitido"
+
+#: ../src/ui/theme.c:1613
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"A expresión de coordenadas contén un número de coma flotante «%s» que non se "
+"puido analizar"
+
+#: ../src/ui/theme.c:1627
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"A expresión de coordenadas contén un enteiro «%s» que non se puido analizar"
+
+#: ../src/ui/theme.c:1749
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"A expresión de coordenadas contén un operador non válido ao inicio do seu "
+"texto: «%s»"
+
+#: ../src/ui/theme.c:1806
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "A expresión de coordenadas está baleira ou non se entendeu"
+
+#: ../src/ui/theme.c:1917 ../src/ui/theme.c:1927 ../src/ui/theme.c:1961
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "A expresión de coordenadas resultou nun erro de división por cero"
+
+#: ../src/ui/theme.c:1969
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"A expresión de coordenadas tentou usar un operador mod cun número de coma "
+"flotante"
+
+#: ../src/ui/theme.c:2025
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"A expresión de coordenadas ten un operador «%s» onde se esperaba un operando"
+
+#: ../src/ui/theme.c:2034
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"A expresión de coordenadas ten un operando onde se esperaba un operador"
+
+#: ../src/ui/theme.c:2042
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "A expresión de coordenadas remata cun operador en vez dun operando"
+
+#: ../src/ui/theme.c:2052
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"A expresión de coordenadas ten un operador \"%c\" seguido do operador \"%c\" "
+"sen un operando entre eles"
+
+#: ../src/ui/theme.c:2199 ../src/ui/theme.c:2240
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"A expresión de coordenadas ten unha variábel ou constante descoñecida «%s»"
+
+#: ../src/ui/theme.c:2294
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "O analizador da expresión de coordenadas desbordou o seu búfer."
+
+#: ../src/ui/theme.c:2323
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"A expresión de coordenadas ten unha paréntese pechada sen unha paréntese "
+"aberta"
+
+#: ../src/ui/theme.c:2387
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"A expresión de coordenadas ten unha paréntese aberta sen unha paréntese "
+"pechada"
+
+#: ../src/ui/theme.c:2398
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "A expresión de coordenadas non parece ter nin operadores nin operandos"
+
+#: ../src/ui/theme.c:2602 ../src/ui/theme.c:2622 ../src/ui/theme.c:2642
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "O tema contiña unha expresión que resultou ser un erro: %s\n"
+
+#: ../src/ui/theme.c:4209
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=«%s» state=«%s» draw_ops=\"whatever\"/> débese especificar "
+"para este estilo de marco"
+
+#: ../src/ui/theme.c:4717 ../src/ui/theme.c:4742
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "Falta <frame state=«%s» resize=«%s» focus=«%s» style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4786
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Produciuse un fallo ao cargar o tema «%s»: %s\n"
+
+#: ../src/ui/theme.c:4916 ../src/ui/theme.c:4923 ../src/ui/theme.c:4930
+#: ../src/ui/theme.c:4937 ../src/ui/theme.c:4944
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Non se configurou <%s> para o tema «%s»"
+
+#: ../src/ui/theme.c:4952
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Non hai un estilo de marco para o tipo de xanela «%s» no tema «%s», engada "
+"un elemento <window type=«%s» style_set=\"o_que_sexa\"/>"
+
+#: ../src/ui/theme.c:5395 ../src/ui/theme.c:5457 ../src/ui/theme.c:5520
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"As constantes definidas polo usuario deben comezar con unha letra maiúscula; "
+"«%s» non o fai"
+
+#: ../src/ui/theme.c:5403 ../src/ui/theme.c:5465 ../src/ui/theme.c:5528
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "A constante «%s» xa foi definida"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Non está definido o atributo «%s» no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Liña %d carácter %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "O atributo «%s» repetiuse dúas veces no mesmo elemento <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "O atributo «%s» non é válido no elemento <%s> neste contexto"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Non foi posíbel analizar «%s» como un enteiro"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Non se comprenden os caracteres sobrantes «%s» na cadea «%s»"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "O enteiro %ld debe ser positivo"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "O enteiro %ld é demasiado grande. O máximo actual é %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Non foi posíbel analizar «%s» como un número de coma flotante"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Os valores booleanos deben ser \"true\" ou \"false\", non «%s»"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "O ángulo debe estar entre 0.0 e 360.0, foi %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa debe estar entre 0.0 (invisíbel) e 1.0 (completamente opaco), foi %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"A escala de título non é válida «%s» (debe ser de xx-small,x-small,small,"
+"medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> nome «%s» usado unha segunda vez"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "O <%s> pai «%s» non se definiu"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "A <%s> xeometría «%s» non se definiu"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> debe especificar ou unha xeometría ou un pai que teña unha xeometría"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Especifique un fondo para un valor alfa para que teña sentido"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Descoñécese o tipo «%s» no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Descoñécese o style_set «%s» no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "O tipo de xanela «%s» xa se asignou a un conxunto de estilo"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Non se permite o elemento <%s> por baixo de <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Non é posíbel especificar \"button_width\"/\"button_height\" e \"aspect_ratio"
+"\" ao mesmo tempo para os botóns"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Descoñécese a distancia «%s»"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Descoñécese a proporción de aspecto «%s»"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Descoñécese o bordo «%s»"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Non hai ningún atributo \"start_angle\" nin \"from\" no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Non hai ningún atributo \"extent_angle\" nin \"to\" no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Non se entendeu o valor «%s» para o tipo de degradado"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Non se entendeu o tipo de recheo «%s» para o elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Non se entendeu o estado «%s» para o elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Non se entendeu a sombra «%s» para o elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Non se entendeu a frecha «%s» para o elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Non se definiu unha <draw_ops> chamada «%s»"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Incluír o draw_ops «%s» aquí poderá crear unha referencia circular"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Descoñécese a posición «%s» para a peza do marco"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "O estilo do marco xa ten unha peza na posición %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Non se definiu ningunha <draw_ops> co nome «%s»"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Descoñécese a función «%s» para o botón"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "A función «%s» do botón non existe nesta versión (%d, necesítase %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Descoñécese o estado descoñecido «%s» para o botón"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "O estilo do marco xa ten un botón para a función %s estado %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "«%s» non é un valor válido para o atributo foco"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "«%s» non é un valor válido para o atributo estado"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Non se definiu ningún estilo chamado «%s»"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "«%s» non é un valor válido para o atributo redimensionar"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Non debería ter o atributo \"resize\" no elemento <%s> para os estados "
+"maximizado/ensombrecido"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Non debería ter o atributo \"resize\" no elemento <%s> para os estados "
+"maximizados"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"O estilo xa foi especificado para o estado %s redimensionado %s foco %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "O estilo xa foi especificado para estado %s foco %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Non pode ter dous draw_ops para un elemento <piece> (o tema especificou un "
+"atributo draw_ops e tamén un elemento <draw_ops> ou especificou os dous "
+"elementos)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Non pode ter dous draw_ops para un elemento <button> (o tema especificou un "
+"atributo draw_ops e tamén un elemento <draw_ops> ou especificou os dous "
+"elementos)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Non pode ter dous draw_ops para un elemento <menu_icon> (o tema especificou "
+"un atributo draw_ops e tamén un elemento <draw_ops> ou especificou os dous "
+"elementos)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "O elemento máis externo no tema debe ser <marco_theme> non <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Non se permite o elemento <%s> dentro dun elemento name/author/date/"
+"description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Non se permite o elemento <%s> dentro dun elemento <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Non se permite o elemento <%s> dentro dun elemento distance/border/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Non se permite o elemento <%s> dentro dun elemento de operación debuxo"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Non se permite o elemento <%s> dentro dun elemento <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Non se proporcionou draw_ops para a peza do marco"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Non se proporcionou draw_ops para botón"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Non se permite texto dentro do elemento <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> especificada dúas veces para este tema"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Non se encontrou ningún ficheiro válido para o tema %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "O ficheiro de tema %s non contén ningún elemento raíz <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Xanelas"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Xanelas/tirador"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Xanelas/_Diálogo"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Xanelas/Diálogo _modal"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Xanelas/_Utilidades"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Xanelas/_Pantalla de inicio"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Xanelas/_Ancoraxe superior"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Xanelas/Ancoraxe _inferior"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Xanelas/Ancoraxe _esquerda"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Xanelas/Ancoraxe _dereita"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Xanelas/_Todas as ancoraxes"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Xanelas/_Escritorio"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Esta é unha mensaxe de mostra no diálogo de mostra"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Elemento de menú falso %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Xanela só con bordo"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Barra"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Xanela de aplicativo normal"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Caixa de diálogo"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Caixa de diálogo modal"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta de utilidades"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menú desprazado"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Bordo"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Proba de disposición de botóns %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisegundos para debuxar un marco de xanela"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Uso: marco-theme-viewer [NOMETEMA]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Produciuse un erro ao cargar o tema: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Cargouse o tema «%s» en %g segundos\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Tipo de letra de título normal"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Tipo de letra de título pequena"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Tipo de letra de título grande"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Disposición dos botóns"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Banco de probas"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "O título da xanela vai aquí"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Debuxou %d marcos en %g segundos do lado do cliente (%g milisegundos por "
+"marco) e %g segundos de tempo estándar incluíndo recursos do servidor X (%g "
+"milisegundos por marco)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"a proba de expresión da posición devolveu TRUE mais estabeleceu un erro"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"a proba de expresión da posición devolveu FALSE mais estabeleceu un erro"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Esperábase un erro, mais non se deu ningún"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Esperábase un erro %d mais deuse %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Non se esperaba ningún erro mais devolveuse un: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "o valor x era %d, esperábase %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "o valor y era %d, esperábase %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d expresións de coordenadas interpretadas en %g segundos (%g segundos de "
+"media)\n"
diff --git a/po/gu.po b/po/gu.po
new file mode 100644
index 00000000..5b011f67
--- /dev/null
+++ b/po/gu.po
@@ -0,0 +1,2339 @@
+# translation of marco.master.gu.po to Gujarati
+# Ankit Patel <[email protected]>, 2005, 2006.
+# Ankit Patel <[email protected]>, 2007, 2009.
+# Sweta Kothari <[email protected]>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.master.gu\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2009-08-24 17:51+0000\n"
+"PO-Revision-Date: 2009-09-09 15:49+0530\n"
+"Last-Translator: Sweta Kothari <[email protected]>\n"
+"Language-Team: Gujarati\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n!=1);\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "ડેસ્કટોપ"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "વિન્ડો વ્યવસ્થાપન"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Bell ઘટના"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "અજ્ઞાત વિન્ડો જાણકારી અરજી: %d"
+
+#: ../src/core/delete.c:104
+#, c-format
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+"<big><b><tt>%s</tt> એ જવાબ આપી રહ્યુ નથી.</b></big>\n"
+"\n"
+"<i>તેને ચાલુ રાખવા માટે અથવા કાર્યક્રમને સંપૂર્ણપણે બંધ થઈ જવા માટે તમે થોડો સમય રાહ જોવાનું "
+"પસંદ કરી શકશો.</i>"
+
+#: ../src/core/delete.c:115
+msgid "_Wait"
+msgstr "રાહ જુઓ (_W)"
+
+#: ../src/core/delete.c:115
+msgid "_Force Quit"
+msgstr "જબરદસ્તી બહાર કાઢો (_F)"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "યજમાનનું નામ મેળવવામાં નિષ્ફળ: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "કમ્પોઝીટીંગ માટે ગુમ થયેલ %s એક્સટેન્સન જરૂરી"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X વિન્ડો સિસ્ટમ ડિસ્પ્લે '%s' ને ખોલવામાં નિષ્ફળ\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"ડિસ્પ્લે '%s' સાથે સંપર્ક તૂટી ગયો;\n"
+"મોટે ભાગે X સર્વરને બંધ કરી દેવાયું હતું અથવા તમે વિન્ડો વ્યવસ્થાપકને મારી નાખ્યું\n"
+"/નાશ કરી નાખ્યો હતો.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "ઘાતક IO ભૂલ %d (%s) %s ડિસ્પ્લે પર.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "કોઈ બીજો કાર્યક્રમ પહેલેથીજ કી %s ને બદલનાર %x સાથે જોડાણ તરીકે વાપરી રહ્યુ છે\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> ચલાવતી વખતે ભૂલ હતી:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "કોઈ આદેશ %d વ્યાખ્યાયિત કરાયો નથી.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "કોઈ ટર્મિનલ આદેશ વ્યાખ્યાયિત નથી.\n"
+
+#: ../src/core/main.c:130
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:268
+msgid "Disable connection to session manager"
+msgstr "સત્ર વ્યવસ્થાપકનું જોડાણ નિષ્ક્રિય કરો"
+
+#: ../src/core/main.c:274
+msgid "Replace the running window manager with Marco"
+msgstr "ચાલી રહેલ વિન્ડો વ્યવસ્થાપક મેટાસીટી વડે બદલો"
+
+#: ../src/core/main.c:280
+msgid "Specify session management ID"
+msgstr "સત્ર વ્યવસ્થાપન ID સ્પષ્ટ કરો"
+
+#: ../src/core/main.c:285
+msgid "X Display to use"
+msgstr "વાપરવા માટેનું X ડિસ્પ્લે"
+
+#: ../src/core/main.c:291
+msgid "Initialize session from savefile"
+msgstr "સંગ્રહાયેલ ફાઈલમાંથી સત્રનો પ્રારંભ કરો"
+
+#: ../src/core/main.c:297
+msgid "Print version"
+msgstr "છાપન આવૃત્તિ"
+
+#: ../src/core/main.c:303
+msgid "Make X calls synchronous"
+msgstr "X કોલ સુમેળ રીતે કરો"
+
+#: ../src/core/main.c:309
+msgid "Turn compositing on"
+msgstr "કમ્પોઝીટીંગ ચાલુ કરો"
+
+#: ../src/core/main.c:315
+msgid "Turn compositing off"
+msgstr "કમ્પોઝીટીંગ બંધ કરો"
+
+#: ../src/core/main.c:321
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "સંપૂર્ણસ્ક્રીન વિન્ડોને બનાવો નહિં કે જે મહત્તમ થયેલ છે અને સુશોભિત નથી"
+
+#: ../src/core/main.c:543
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "થીમની ડિરેક્ટરી જોવામાં નિષ્ફળ: %s\n"
+
+#: ../src/core/main.c:559
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "થીમ શોધી શકાઈ નહિં! ખાતરી કરો કે %s અસ્તિત્વ ધરાવે છે અને તેમાં સામાન્ય થીમ છે.\n"
+
+#: ../src/core/main.c:618
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "ફરીથી શરુ કરવામાં નિષ્ફળ: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "જીકોન્ફ કી '%s' એ અયોગ્ય કિંમતમાં ગોઠવાયેલી છે\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d એ MateConf કી %s માં સંગ્રહાયેલ છે જે વિસ્તાર %d થી %d ની બહાર છે\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "જીકોન્ફ કી \"%s\" એ અયોગ્ય પ્રકારમાં ગોઠવાયેલી છે\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"બગડેલા કાર્યક્રમો માટે આસપાસના કાર્યો નિષ્ક્રિય કરેલા છે. કદાચ કેટલાક કાર્યક્રમો યોગ્ય "
+"રીતે નહિ વર્તતા હોય.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "\"%s\" ફોન્ટના વર્ણનને જીકોન્ફ કી %s માંથી પદચ્છેદ કરી શકાતા નથી\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "માઉસ બટનની કિંમત બદલવા માટે રુપરેખાના ડેટાબેઝમાંથી મળેલ કિંમત \"%s\" એ યોગ્ય નથી\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "કામ કરવાની જગ્યાની સંખ્યા %d નક્કી કરવામાં ભૂલ થઈ: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "કામ કરવાની જગ્યા %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "કી જોડાણ \"%s\" માટે રુપરેખાના ડેટાબેઝ \"%s\" માં મળેલ કિંમત યોગ્ય નથી\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "કામ કરવાની જગ્યા %d ને \"%s\" નું નામ બદલવામાં ભૂલ થઈ: %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "કમ્પોઝીટર પરિસ્થિતિ સુયોજીત કરવામાં ભૂલ: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "સ્ક્રીન %d કે જે ડિસ્પ્લે '%s' પર છે એ અયોગ્ય છે\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"સ્ક્રીન %d કે જે ડિસ્પ્લે \"%s\" પર છે ત્યાં પહેલેથીજ વિન્ડો વ્યવસ્થાપક છે, --replace "
+"વિક્લ્પનો ઉપયોગ કરીને વિન્ડો વ્યવસ્થાપકને બદલવાનો પ્રયત્ન કરો.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "સ્ક્રીન %d કે જે ડિસ્પ્લે \"%s\" પર છે તે વિન્ડો વ્યવસ્થાપકની પસંદગીને મેળવી શકાતી નથી\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "સ્ક્રીન %d કે જે ડિસ્પ્લે \"%s\" પર છે ત્યાં પહેલેથીજ વિન્ડો વ્યવસ્થાપક છે\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "સ્ક્રીન %d કે જે ડિસ્પ્લે \"%s\" પર છે તેને દૂર કરી શકાતી નથી\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+#| msgid ""
+#| "The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+#| "\n"
+#| "The parser is fairly liberal and allows lower or upper case, and also "
+#| "abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to "
+#| "the special string \"disabled\", then there will be no keybinding for "
+#| "this action."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"બંધારણ \"<Control>a\" અથવા <Shift><Alt>F1\" જેવું દેખાય છે.\n"
+"\n"
+"પદચ્છેદક એ ખૂબ ઉદાર છે અને નાના તથા મોટા કિસ્સાને પરવાનગી આપે છે, અને તે \"<Ctl>\" અને "
+"\"<Ctrl>\" ની જેમ પણ ટૂંકાણો આપે છે. જો તમે વિશિષ્ટ શબ્દમાળા \"disabled\" ને વિકલ્પ "
+"સુયોજીત કરો, તો પછી ત્યાં આ ક્રિયા માટે કોઈ કીબાઈન્ડીંગ હશે નહિં."
+
+#: ../src/core/schema-bindings.c:177
+#| msgid ""
+#| "The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+#| "\n"
+#| "The parser is fairly liberal and allows lower or upper case, and also "
+#| "abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to "
+#| "the special string \"disabled\", then there will be no keybinding for "
+#| "this action.\n"
+#| "\n"
+#| "This keybinding may be reversed by holding down the \"shift\" key; "
+#| "therefore, \"shift\" cannot be one of the keys it uses."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"બંધારણ \"<Control>a\" અથવા <Shift><Alt>F1\" જેવું દેખાય છે.\n"
+"\n"
+"પદચ્છેદક એ ખૂબ ઉદાર છે અને નાના તથા મોટા કિસ્સાને પરવાનગી આપે છે, અને તે \"<Ctl>\" અને "
+"\"<Ctrl>\" ની જેમ પણ ટૂંકાણો આપે છે. જો તમે વિશિષ્ટ શબ્દમાળા \"disabled\" ને વિકલ્પ "
+"સુયોજીત કરો, તો પછી ત્યાં આ ક્રિયા માટે કોઈ કીબાઈન્ડીંગ હશે નહિં.\n"
+"\n"
+"આ કીબાઈન્ડીંગ \"shift\" કીને પકડી રાખવાથી આરક્ષિત રહેશે; તેથી, \"shift\" એ કીઓમાંની "
+"એક હોઈ શકે નહિં કે જેને તે વાપરે."
+
+#: ../src/core/session.c:845 ../src/core/session.c:852
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "ડિરેક્ટરી '%s' બનાવી શકાતી નથી: %s\n"
+
+#: ../src/core/session.c:862
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "સત્રની ફાઈલ '%s' ને લખવા માટે ખોલી શકાતી નથી: %s\n"
+
+#: ../src/core/session.c:1003
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "સત્રની ફાઈલ '%s' ને લખવામાં ભૂલ: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "સત્રની ફાઈલ '%s' ને બંધ કરવામાં ભૂલ: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1101
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "સંગ્રહિત સત્રની ફાઈલ '%s' ને વાંચવામાં ભૂલ: %s\n"
+
+#: ../src/core/session.c:1140
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "સંગ્રહિત સત્રની ફાઈલ ને પદચ્છેદ કરવામાં ભૂલ: %s\n"
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> લક્ષણ દેખાય છે પરંતુ આપણી પાસે પહેલેથી જ સત્ર ID છે"
+
+#: ../src/core/session.c:1202 ../src/core/session.c:1277
+#: ../src/core/session.c:1309 ../src/core/session.c:1381
+#: ../src/core/session.c:1441
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "અજ્ઞાત લક્ષણ %s એ ઘટક <%s> પર"
+
+#: ../src/core/session.c:1219
+#, c-format
+msgid "nested <window> tag"
+msgstr "પુનરાવર્તિત <window> નિશાની"
+
+#: ../src/core/session.c:1461
+#, c-format
+msgid "Unknown element %s"
+msgstr "અજાણી વસ્તુ %s"
+
+#: ../src/core/session.c:1812
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"આ વિન્ડો &quot;વર્તમાન સુયોજનનો સંગ્રહ કરો&quot; ને આધાર આપતી નથી અને બીજી વખત તમે પ્રવેશ "
+"કરો ત્યારે જાતે જ ફરી શરુ કરવું પડશે."
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "ભૂલ શોધવા માટેનું નોંધપત્ર ખોલવામાં નિષ્ફળ: %s\n"
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "fdopen() નોંધપત્ર ફાઈલ %s ખોલવામાં નિષ્ફળ: %s\n"
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "પ્રવેશ ફાઈલ %s ખૂલેલી છે\n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "મેટાસીટીને વર્ણનિય પદ્ધતિના આધાર વગર કમ્પાઈલ કરાયુ હતુ\n"
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "વિન્ડો વ્યવસ્થાપક: "
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr "વિન્ડો વ્યવસ્થાપકમાં ભૂલ: "
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr "વિન્ડો વ્યવસ્થાપકની ચેતવણી: "
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr "વિન્ડો વ્યવસ્થાપકની ભૂલ: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "મેટાસીટી"
+
+#. first time through
+#: ../src/core/window.c:5627
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"ICCCM માં સ્પષ્ટ કરેલ WM_CLIENT_LEADER વિન્ડોની %s જગ્યાએ વિન્ડોએ તેની જાતે જ "
+"SM_CLIENT_ID ગોઠવ્યું.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6192
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"વિન્ડો %s એ MWM સંકેત ગોઠવ્યો કે જે તેનું માપ બદલી શકાતુ નથી એમ સૂચવે છે, પરંતુ ન્યૂનત્તમ માપ %"
+"d x %d અને મહત્તમ માપ %d x %d ગોઠવાયેલુ છે; તેનો કોઈ ખાસ અર્થ નીકળતો નથી.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "કાર્યક્રમ એ ખોટું _NET_WM_PID %lu સુયોજિત કર્યું છે\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s પર)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (મુખ્ય વપરાશકર્તા તરીકે)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s તરીકે)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (બીજા વપરાશકર્તા તરીકે)"
+
+#: ../src/core/window-props.c:1429
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "અયોગ્ય WM_TRANSIENT_FOR વિન્ડો 0x%lx એ %s માટે સ્પષ્ટ થયેલ છે.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"વિન્ડો 0x%lx પાસે ગુણધર્મ %s છે\n"
+"જેના માટે પ્રકાર %s માળખું %d હોવુ જોઈએ\n"
+"અને વાસ્તવમાં તેને પ્રકાર %s માળખું %d n_items %d છે.\n"
+"આ મોટે ભાગે કાર્યક્રમની ભૂલ હોવી જોઈએ, નહિ કે વિન્ડો વ્યવસ્થાપકની ભૂલ.\n"
+"વિન્ડોને શીર્ષક=\"%s\" વર્ગ=\"%s\" નામ=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "ગુણધર્મ %s વિન્ડો 0x%lx પર અયોગ્ય UTF-8 ધરાવે છે\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "ગુણધર્મ %s વિન્ડો 0x%lx પર યાદીમાં %d વસ્તુ પર અયોગ્ય UTF-8 ધરાવે છે\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "કામ કરવાની જગ્યા ૧ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "કામ કરવાની જગ્યા ૨ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "કામ કરવાની જગ્યા ૩ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "કામ કરવાની જગ્યા ૪ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "કામ કરવાની જગ્યા ૫ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "કામ કરવાની જગ્યા ૬ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "કામ કરવાની જગ્યા ૭ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "કામ કરવાની જગ્યા ૮ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "કામ કરવાની જગ્યા ૯ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "કામ કરવાની જગ્યા ૧૦ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "કામ કરવાની જગ્યા ૧૧ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "કામ કરવાની જગ્યા ૧૨ માં જાઓ"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "વર્તમાન કામ કરવાની જગ્યાની ડાબી બાજુની કામ કરવાની જગ્યામાં બદલાવ"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "વર્તમાન કામ કરવાની જગ્યાની જમણી બાજુની કામ કરવાની જગ્યામાં બદલાવ"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "વર્તમાન કામ કરવાની જગ્યાની ઉપરની કામ કરવાની જગ્યામાં બદલાવ"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "વર્તમાન કામ કરવાની જગ્યાની નીચેની કામ કરવાની જગ્યામાં બદલાવ"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "કાર્યક્રમની વિન્ડોમાં ખસો, પોપઅપ વિન્ડોની મદદથી"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "કાર્યક્રમની વિન્ડો વચ્ચે પાછળ ખસો, પોપઅપ વિન્ડોની મદદથી"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "વિન્ડો વચ્ચે ખસો, પોપઅપ વિન્ડોની મદદથી"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "વિન્ડો વચ્ચે પાછળ ખસો, પોપઅપ વિન્ડોની મદદથી"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "પેનલો અને ડેસ્કટોપ વચ્ચે ખસો, પોપઅપ વિન્ડોની મદદથી"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "પેનલો અને ડેસ્કટોપ વચ્ચે પાછળ ખસો, પોપઅપ વિન્ડોની મદદથી"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "કાર્યક્રમની વિન્ડો વચ્ચે તુરંત જ ખસેડો"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "કાર્યક્રમની વિન્ડો વચ્ચે તુરંત જ પાછળ ખસો"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "તરત જ બધી વિન્ડો વચ્ચે ખસો"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "વિન્ડો વચ્ચે પાછળ તરત જ ખસો"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "તરત જ પેનલ તથા ડેસ્કટોપ વચ્ચે ખસો"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "તરત જ પેનલ તથા ડેસ્કટોપ વચ્ચે પાછા ફરો"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "બધી સામાન્ય વિન્ડો છુપાવો અને ડેસ્કટોપને ફોકસ સુયોજીત કરો"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "પેનલનું મુખ્ય મેનુ બતાવો"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "પેનલનો \"કાર્યક્રમ ચલાવો\" સંવાદ બોક્સ બતાવો"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "ફોટો લો"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "વિન્ડોનો ફોટો લો"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "ટર્મિનલમાં ચલાવો"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "વિન્ડો મેનુ સક્રિય કરો"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "આખી સ્ક્રીન કરવાની સ્થિતિમાં ફેરબદલી"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "મહત્તમ કરવાની સ્થિતિમાં ફેરબદલી"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "શું વિન્ડો હંમેશા અન્ય વિન્ડો ઉપર દેખાતી રહેશે તે બદલો"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "વિન્ડોને મહત્તમ સ્થિતિમાં લાવો"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "વિન્ડો પુનઃસંગ્રહિત કરો"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "છાયાંકિત કરવાની સ્થિતિમાં ફેરબદલી"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "વિન્ડોને ન્યૂનત્તમ સ્થિતિમાં લાવો"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "વિન્ડો બંધ કરો"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "વિન્ડોને ખસાડો"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "વિન્ડોનુ માપ બદલો"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "શું વિન્ડો એ બધી કામ કરવાની જગ્યાઓ ઉપર છે કે ખાલી એક પર છે તે બદલો"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૧ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૨ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૩ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૪ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૫ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૬ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૭ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૮ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૯ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૧૦ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૧૧ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "વિન્ડોને કામ કરવાની જગ્યા ૧૨ માં લઈ જાઓ"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "વિન્ડોને ડાબી બાજુની કામ કરવાની જગ્યામાં લાવો"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "વિન્ડોને જમણી બાજુની કામ કરવાની જગ્યામાં લાવો"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "વિન્ડોને ઉપરની બાજુની કામ કરવાની જગ્યામાં લાવો"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "વિન્ડોને નીચેની કામ કરવાની જગ્ચામાં લાવો"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "જો વિન્ડો અન્ય વિન્ડો દ્વારા આવરાયેલ હોય, અથવા તેની નીચે હોય તો તેને વધારો"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "વિન્ડોને બીજી બધી વિન્ડોની ઉપર લાવો"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "બીજી વિન્ડો નીચેની વિન્ડોને નાની કરો"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "વિન્ડોને ઉભી દિશામાં મોટી કરો"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "વિન્ડોને આડી દિશામાં મોટી કરો"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "વિન્ડોને ઉત્તર-પશ્ચિમ (ટોચે ડાબે) ખૂણે ખસેડો"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "વિન્ડોને ઉત્તર-પૂર્વ (ટોચે જમણે) ખૂણે ખસેડો"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "વિન્ડોને દક્ષિણ-પશ્ચિમ (તળિયે ડાબે) ખૂણે ખસેડો"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "વિન્ડોને દક્ષિણ-પૂર્વ (તળિયે જમણે) ખૂણે ખસેડો"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "વિન્ડોને સ્ક્રીનની ઉત્તર (ટોચ) બાજુએ ખસેડો"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "વિન્ડોને સ્ક્રીનની દક્ષિણ (તળિયે) બાજુએ ખસેડો"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "વિન્ડોને સ્ક્રીનની પૂર્વ (જમણી) બાજુએ ખસેડો"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "વિન્ડોને સ્ક્રીનની પશ્ચિમ (ડાબી) બાજુએ ખસેડો"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "વિન્ડોને સ્ક્રીનના કેન્દ્રમાં ખસેડો"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(અમલમાં નથી મૂકાયુ) શોધખોળ કાર્યક્રમ અનુસાર થાય છે વિન્ડો અનુસાર નહિં"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"ફોન્ટ વર્ણન શબ્દમાણા એ વિન્ડો શીર્ષકપટ્ટીઓ માટે ફોન્ટ વર્ણવે છે. વર્ણનમાંથી માપ એ માત્ર "
+"ત્યારે જ વપરાશે જો titlebar_font_size વિકલ્પ એ ૦ માં સુયોજિત હોય. અને, આ વિકલ્પ એ "
+"નિષ્ક્રિય કરેલ છે જો titlebar_uses_desktop_font વિકલ્પ એ true તરીકે સુયોજિત થયેલ હોય."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "શીર્ષકપટ્ટી પર બે વખત ક્લિક કરવા પર કરવામાં આવતી ક્રિયા"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "શીર્ષક પટ્ટી પર ક્રિયા વચ્ચેનું-ક્લિક"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "શીર્ષક પટ્ટી પર ક્રિયા જમણું-ક્લિક"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "શીર્ષકપટ્ટી પર બટનોની ગોઠવણી"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"શીર્ષકપટ્ટી પર બટનોની ગોઠવણી. કિંમત એક શબ્દમાળા હોવી જોઈએ, જેમ કે \"menu:minimize,"
+"maximize,spacer,close\"; વિસર્ગ ડાબા ખૂણાને જમણા ખૂણાથી છૂટુ પાડે છે, અને બટનના નામ "
+"અલ્પવિરામ ચિહ્ન દ્વારા છુટા પડાયેલા છે. નકલી બટનો ચલાવાશે નહિં. અજાણ્યા બટનના નામો "
+"ચૂપચાપ અવગણી કઢાયા છે, જેથી કરીને બટનોને મેટાસીટીની જૂની આવૃત્તિ તોડ્યા વગર ભવિષ્યની "
+"આવૃત્તિમાં ઉમેરી શકાય. વિશિષ્ટ spacer ટેગ બે પાસપાસેના બટનો વચ્ચે અમુક જગ્યા મૂકવા માટે "
+"વાપરી શકાય છે."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "પ્રકાશન વિન્ડોને આપોઆપ મોટી કરે છે"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+"આ સુધારક કી દબાવી રાખીને વિન્ડો પર ક્લિક કરવાનું વિન્ડોને ખસેડશે (ડાબું ક્લિક), વિન્ડોનું "
+"માપ બદલશે (જમણું ક્લિક), અથવા વિન્ડો મેનુ બતાવશે (જમણું ક્લિક). ડાબી અને જમણી પ્રક્રિયાઓ "
+"\"mouse_button_resize\" કીની મદદથી બદલવામાં આવશે. ઉદાહરણ તરીકે સુધારક \"&lt;"
+"Alt&gt;\" અથવા \"&lt;Super&gt;\" તરીકે દર્શાવાય છે."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "કી જોડાણના વળતા જવાબમાં ચલાવવા માટેનો આદેશ"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "કમ્પોઝીશન વ્યવસ્થાપક"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "કેવી રીતે નવી વિન્ડો ફોકસ મેળવે તે નિયંત્રિત કરે છે"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "વર્તમાન થીમ"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "'આપોઆપ વધારો' વિકલ્પ માટે મિલિસેકન્ડોમાં વિલંબ"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "શું મેટાસીટી એ કમ્પોઝીટીંગ વ્યવસ્થાપક છે કે નહિં તે નક્કી કરે છે."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"નક્કી કરો કે કાર્યક્રમ કે પછી સિસ્ટમ સાંભળી શકાય તેવા 'બીપ' ઉત્પન્ન કરી શકે છે કે નહિં; "
+"શાંત 'બીપ' ચલાવવા માટે 'દેખીતી ઘંટડી' સાથે કદાચ વાપરી શકાય."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "જૂના અથવા બગડેલા કાર્યક્રમ દ્વારા જરુરી ખરાબ લક્ષણોને નિષ્ક્રિય કરો"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "'દેખીતી ઘંટડી' ને સક્રિય કરો"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"જો true તરીકે સુયોજિત હોય, અને ફોકસ સ્થિતિ એ ક્યાં તો \"sloppy\" અથવા \"mouse\" તો "
+"પછી ફોકસ થયેલ વિન્ડો આપોઆપ auto_raise_delay key દ્વારા સ્પષ્ટ થયેલ વિલંબ પછી મોટી "
+"થઈ જશે. આ વિન્ડોને વધારવા માટે તેના પર ક્લિક કરવાને સંબંધિત નથી, નહિં કે તે ખેંચો-અને-મૂકો "
+"દરમ્યાન વિન્ડો દાખલ કરવા જેવું છે."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"જો ખરુ હોય તો, શીર્ષકપટ્ટી_ફોન્ટ વિકલ્પને અવગણી દો અને વિન્ડો શીર્ષકો માટે મૂળભૂત "
+"કાર્યક્રમ ફોન્ટ વાપરો."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"જો true હોય, તો મેટાસીટી વપરાશકર્તાને વાયરફ્રેમની મદદથી ઓછો ફીડબેક આપશે, એનીમેશનોને "
+"અવગણીને, અથવા અન્ય અર્થે. આ ઘણા વપરાશકર્તાઓ માટે વપરાશમાં નોંધપાત્ર ઘટાડો છે, પરંતુ તે "
+"કદાચ કામ કરવાનું ચાલુ રાખવા માટે લીગસી કાર્યક્રમોની પરવાનગી આપશે, અને તે ટર્મિનલ સર્વરો "
+"માટે ટ્રેડઓફ માટે પણ ઉપયોગી રહેશે. છતાં, જ્યારે સુલભતા ચાલુ હોય ત્યારે વાયરફ્રેમ લક્ષ્ણ એ "
+"નિષ્ક્રિય કરેલ હોય છે."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"જો true હોય, તો પછી મેટાસીટી કાર્યક્રમોની જગ્યાએ વિન્ડો સાથે કામ કરશે. હેતુ થોડો અલગ "
+"છે, પરંતુ કાર્યક્રમ-આધારિત સુયોજિ એ Mac જેવું વધુ અને Windows જેવું ઓછું છે. જ્યારે તમે કાર્યક્રમ-"
+"આધારિત સ્થિતિમાં વિન્ડો પર ફોકસ કરો, ત્યારે કાર્યક્રમમાંની બધી વિન્ડો મોટી થઈ જાય. "
+"અને, કાર્યક્રમ-આધારિત સ્થિતિમાં, અન્ય કાર્યક્રમોમાં વિન્ડો મારફતે ફોકસ ક્લિક પસાર થતા "
+"નથી. કાર્યક્રમ-આધારિત સ્થિતિ એ, છતાં, આ ક્ષણે મોટા પ્રમણમાં અમલમાં મૂકાયેલ નથી."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "જો સાચુ હોય તો, સ્રોતોના ઓછો વપરાશ કરવાથી ઉપયોગિતા ઘટશે"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "બદલેલી વિન્ડોની ક્લિક ક્રિયાઓ માટે વાપરવાનું બદલનાર"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "કામ કરવાની જગ્યાનુ નામ"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "કામ કરવા માટેની જગ્યાઓની સંખ્યા"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"કામ કરવાની જગ્યાઓની સંખ્યા. શૂન્ય કરતાં મોટી હોવી જ જોઈએ, અને તેને ચોક્કસ મહત્તમ હોવી જ "
+"જોઈએ ડેસ્કટોપને નહિં વાપરી શકાય તેવું બનાવવા માટે ઘણી બધી કામ કરવાની જગ્યાઓ માટે અચાનક "
+"પૂછીને."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "વ્યાખ્યાયિત આદેશ ચલાવો"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"જમણા બટન સાથે માપ બદલવા માટે આને ખરા તરીકે સુયોજીત કરો અને \"mouse_button_modifier"
+"\" માં અપાયેલ કી દબાવી રાખતી વખતે વચ્ચેનું બટન સાથે મેનુ બતાવો; તેને કામ કરાવવા માટે ખોટા "
+"તરીકે સુયોજીત કરો ઊંધા રસ્તે."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"આ વિકલ્પને ખોટા તરીકે સુયોજીત કરવાનું ભૂલભરેલી વર્તણીકમાં પરિણમી શકે છે, તેથી વપરાશકર્તાઓને "
+"આગ્રહ કરવામાં આવે છે તેને મૂળભૂત રીતે ખરામાં સુયોજીત નહિં કરો. ઘણી ક્રિયાઓ (દા.ત. ક્લાઈન્ટ "
+"વિસ્તારમાં ક્લિક કરવાનું, વિન્ડોને ખસેડવાનું કે તેનું માપ બદલવાનું) સામાન્ય રીતે વિન્ડોને આડ-અસર "
+"તરીકે વધારે છે. આ વિકલ્પને ખોટા તરીકે સુયોજીત કરવાનું, કે જેની ભારપૂર્વક મનાઈ કરવામાં આવે "
+"છે, તે અન્ય વપરાશકર્તા ક્રિયાઓમાંથી વધારવાથી તૂટી જશે, અને કાર્યક્રમો દ્વારા પેદા કરવામાં "
+"આવેલ અરજીઓને વધારવાનું અવગણશે. http://bugzilla.gnome.org/show_bug.cgi?"
+"id=445447#c6 જુઓ. જ્યારે આ વિકલ્પ ખોટો હોય ત્યારે પણ, વિન્ડો વિન્ડો પર ગમે ત્યાં alt-"
+"left-ક્લિક દ્વારા વધારી શકાશે, વિન્ડો શણગાર પર સામાન્ય ક્લિક, અથવા પેજરો તરફથી "
+"વિશિષ્ટ સંદેશાઓ દ્વારા, જેમ કે બાબતયાદી એપ્લેટોમાંથી સક્રિયકરણ અરજીઓ. આ વિકલ્પ વર્તમાનમાં "
+"ફોકસ-પર-ક્લિક સ્થિતિમાંથી નિષ્ક્રિય કરવામાં આવેલ છે. નોંધ કરો કે વિન્ડો મોટી કરવાના "
+"માર્ગોની યાદી જ્યારે ક્લિક-પર-વધારો ખોટું હોય ત્યારે કાર્યક્રમિક અરજીઓમાંથી વિન્ડોને વધારે "
+"છે; આવી અરજીઓ અરજી માટેના કારણની કાળજી રાખ્યા વિના અવગણવામાં આવશે. જો તમે કાર્યક્રમ "
+"વિકાસકર્તા હોય અને તમારી પાસે વપરાશકર્તા હોય કે જે ફરિયાદ કરી રહ્યા હોય કે તમારો "
+"કાર્યક્રમ બરાબર ચાલતો નથી જ્યારે આ સુયોજન નિષ્ક્રિય કરેલ હોય, તો તેમને કહો કે એ તેમની ભૂલ "
+"છે તેમના વિન્ડો વ્યવસ્થાપકને તોડવામાં અને તેથી તેઓને આ વિકલ્પ ખરામાં પાછું બદલવાની જરૂર છે "
+"નહિંતર તેમણે અરજી કરેલ \"ત્રુટિ\" સાથે કામ ચલાવો."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"અમુક કાર્યક્રમ સ્પષ્ટીકરણોનો ખોટો સંદર્ભ અમુક માર્ગોએ આપે છે કે જે વિન્ડો વ્યવસ્થાપક દુર્ગુણોમાં "
+"પરિણમે છે. આ વિકલ્પ મેટાસીટીને ચોક્કસપણે સાચી સ્થિતિમાં મૂકે છે, કે જે વધુ અચળ વપરાશકર્તા "
+"ઈન્ટરફેસ આપે છે, પૂરું પાડવામાં આવેલ એકને કોઈપણ ખોટા વર્તાવના કાર્યક્રમોની જરૂર રહેતી નથી."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "સિસ્ટમની ઘંટડી સાંભળી શકાય તેવી છે"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"મેટાસીટીને કહે છે કે કયા દ્રશ્ય સંકેતો કામમાં લેવામાં આવે કે જેથી સિસ્ટમ કોલ અથવા બીજા "
+"કાર્યક્રમ ઘંટડી વગાડે. હાલમાં બે માન્ય કિંમતો છે, \"સંપૂર્ણ સ્ક્રીન\", જે આખી સ્ક્રીન સફેદ-"
+"કાળી ફ્લેશ કરે છે તથા \"ઝબૂકતુ ચોકઠુ\" જે સંબંધિત કાર્યક્રમની શીર્ષકપટ્ટીને ફ્લેશ કરવાના હેતુથી "
+"સંકેત કરે છે, જેને ઘંટી સંકેત મોકલે છે. જે કાર્યક્રમે ઘંટી સંકેત મોકલ્યો હોય તે જો અજાણ હોય તો "
+"(જેમકે ખાસ કરીને મૂળભૂત કિસ્સા માટે \"સિસ્ટમ બીપ\" હોય છે), વર્તમાન પ્રકાશન વિન્ડોની "
+"શિર્ષકપટ્ટી પર ફ્લેશ કરશે."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N કી આદેશ સાથે સંકળાયેલા કી જોડાણને "
+"વ્યાખ્યાયિત કરે છે. run_command_N માટેના કી જોડાણ દબાવતાં command_N ને ચલાવશે."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot કી જોડાણને વ્યાખ્યાયિત "
+"કરે છે જે આ સુયોજન દ્વારા સ્પષ્ટ કરાયેલા આદેશને જગાડે છે."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot કી જોડાણને "
+"વ્યાખ્યાયિત કરે છે જે આ સુયોજન દ્વારા સ્પષ્ટ કરાયેલા આદેશને જગાડે છે."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"કી જોડાણ કે જે /apps/marco/keybinding_commands માં રહેલા અંકો સાથે સંકળાયેલા આદેશને "
+"ચલાવે છે. માળખું આ રીતે હશે \"&lt;Control&gt;\" અથવા \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". આ પદચ્છેદ કરનાર ઘણું ઉદાર છે અને નાના અથવા મોટા બંને અક્ષર સ્વીકારે છે, ટૂંકુ નામ કે જે- "
+"\"&lt;Ctl&gt;\" અને \"&lt;Ctrl&gt;\". જો તમે વિકલ્પને વિશિષ્ટ શબ્દમાળા તરીકે સુયોજિત "
+"કરેલી હશે \"disabled\", તો આ ક્રિયા માટે કોઈપણ કી જોડાણ નહિં હોય."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "કામ કરવાની જગ્યાનું નામ."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "ફોટો પાડવા માટેનો આદેશ"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "થીમ વિન્ડોની કિનારી, શીર્ષકપટ્ટી અને બીજી બધી વસ્તુઓના દેખાવને નક્કી કરે છે."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"જો auto_raise એ સાચું હોય એ રીતે ગોઠવાયેલુ હોય તો વિન્ડોનો વધારો કરવામાં લાગતો "
+"વિલંબ. વિલંબને સેકન્ડના હજારમા ભાગમાં આપેલો છે."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"વિન્ડો પ્રકાશન સ્થિતિ સૂચવે છે કે વિન્ડો કઈ રીતે કાર્યશીલ છે. તેની ત્રણ શક્ય કિંમતો છે; "
+"\"click\" એટલે કે વિન્ડોને પ્રકાશન કરવા તેના પર ક્લિક કરવું જરુરી છે, \"sloppy\" એટલે કે "
+"માઉસ જે વિન્ડોમાં જાય તે પ્રકાશનમાં આપે, અને \"mouse\" એટલે કે વિન્ડોમાં માઉસ આપતા તે "
+"પ્રકાશનમાં આવે છે. અને માઉસ જતુ રહેતાં તે પ્રકાશનમાં નથી રહેતી."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "વિન્ડોના ફોટો પાડવા માટેનાે આદેશ"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"આ વિકલ્પ શીર્ષક પટ્ટી પર બેવડું-ક્લિક કરવાની અસરો નક્કી કરે છે. 'toggle_shade', કે જે "
+"વિન્ડો પર છાયા નાંખશે/દૂર કરશે, 'toggle_maximize' કે જે વિન્ડો મોટી કરશે/મોટું દૂર કરશે, "
+"'toggle_maximize_horizontally' અને 'toggle_maximize_vertically' કે જે વિન્ડોને "
+"માત્ર તે દિશામાં જ મોટી કરશે/મોટું દૂર કરશે, 'minimize' કે જે વિન્ડો નાની કરશે, 'shade' "
+"કે જે વિન્ડોને ઉપર વીંટી લેશે, 'menu' કે જે વિન્ડો મેનુ દર્શાવશે, 'lower' કે જે વિન્ડોને બાકી "
+"બધાની પાછળ મૂકશે, અને 'none' કે જે કંઈ કરશે નહિં, એ વર્તમાન માન્ય વિકલ્પો છે."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"આ વિકલ્પ શીર્ષક પટ્ટી પર વચ્ચેનું-ક્લિક કરવાની અસરો નક્કી કરે છે. 'toggle_shade', કે જે "
+"વિન્ડો પર છાયા નાંખશે/દૂર કરશે, 'toggle_maximize' કે જે વિન્ડો મોટી કરશે/મોટું દૂર કરશે, "
+"'toggle_maximize_horizontally' અને 'toggle_maximize_vertically' કે જે વિન્ડોને "
+"માત્ર તે દિશામાં જ મોટી કરશે/મોટું દૂર કરશે, 'minimize' કે જે વિન્ડો નાની કરશે, 'shade' "
+"કે જે વિન્ડોને ઉપર વીંટી લેશે, 'menu' કે જે વિન્ડો મેનુ દર્શાવશે, 'lower' કે જે વિન્ડોને બાકી "
+"બધાની પાછળ મૂકશે, અને 'none' કે જે કંઈ કરશે નહિં, એ વર્તમાન માન્ય વિકલ્પો છે."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"આ વિકલ્પ શીર્ષક પટ્ટી પર જમણું-ક્લિક કરવાની અસરો નક્કી કરે છે. 'toggle_shade', કે જે "
+"વિન્ડો પર છાયા નાંખશે/દૂર કરશે, 'toggle_maximize' કે જે વિન્ડો મોટી કરશે/મોટું દૂર કરશે, "
+"'toggle_maximize_horizontally' અને 'toggle_maximize_vertically' કે જે વિન્ડોને "
+"માત્ર તે દિશામાં જ મોટી કરશે/મોટું દૂર કરશે, 'minimize' કે જે વિન્ડો નાની કરશે, 'shade' "
+"કે જે વિન્ડોને ઉપર વીંટી લેશે, 'menu' કે જે વિન્ડો મેનુ દર્શાવશે, 'lower' કે જે વિન્ડોને બાકી "
+"બધાની પાછળ મૂકશે, અને 'none' કે જે કંઈ કરશે નહિં, એ વર્તમાન માન્ય વિકલ્પો છે."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"આ વિકલ્પ કેવી રીતે નવી બનેલ વિન્ડો ફોકસ મેળવે તેના પર વધારાનો નિયંત્રણ પૂરો પાડે છે. તેને બે "
+"શક્ય કિંમતો છે; \"હોશિયાર\" વપરાશકર્તાની સામાન્ય ફોકસ સ્થિતિને લાગુ પડે છે, અને \"સખ્ત\" "
+"એ ટર્મિનલમાંથી શરૂ થયેલ અને નહિં ફોકસ થયેલ વિન્ડોમાં પરિણમે છે."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"દૃશ્ય સૂચન ચાલુ કરે છે જ્યારે કાર્યક્રમ અથવા સિસ્ટમ એ 'ઘંટડી' અથવા 'બીપ' અવાજ પેદા કરે; "
+"સાંભળવાના-સખ્ત માટે ઉપયોગી છે અને ઘોંઘાટીયા પર્યાવરણોના વપરાશ માટે."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "વિન્ડોના શીર્ષક માટે મૂળભૂત સિસ્ટમના ફોન્ટનો ઉપયોગ કરો"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "દેખાતી ઘંટડીનો પ્રકાર"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "શું વધારવાનું અન્ય વપરાશકર્તા સંપર્કોની આડ-અસર હોવી જોઈએ"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "શું જમણા બટન વડે માપ બદલવું છે"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "વિન્ડોની પ્રકાશન સ્થિતિ"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "વિન્ડોના શીર્ષકના ફોન્ટ"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "વપરાશ: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "વિન્ડો બંધ કરો"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "વિન્ડોનું મેનુ"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "વિન્ડોને ન્યૂનત્તમ સ્થિતિમાં લાવો"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "વિન્ડોને મહત્તમ સ્થિતિમાં લાવો"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "વિન્ડો પુનઃસંગ્રહો"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "વિન્ડો વીંટી લો"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "વિન્ડોનું વીંટેલુ પાછુ લો"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "વિન્ડોને ટોચે રાખો"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "વિન્ડોને ટોચથી દૂર કરો"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "હંમેશા દૃશ્ય કામ કરવાની જગ્યા પર"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "વિન્ડોને માત્ર એક કાર્યસ્થળ પર મૂકો"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "ન્યૂનત્તમ કરો (_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "મહત્તમ કરો (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "મહત્તમમાંથી પાછુ લાવો (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "વીંટી લો (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "ખોલી કાઢો (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "ખસેડો (_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "માપ બદલો (_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "શીર્ષકપટ્ટી સ્ક્રીન પર ખસેડો (_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "હંમેશા ટોચ પર (_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "હંમેશા દ્રશ્ય કામ કરવાની જગ્યા પર (_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "માત્ર આ કામ કરવાની જગ્યા પર (_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "ડાબી કામ કરવાની જગ્યામાં ખસો (_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "જમણી કામ કરવાની જગ્યામાં ખસો (_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "ઉપરની કામ કરવાની જગ્યામાં ખસો (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "ઉપરની કામ કરવાની જગ્યામાં ખસો (_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "બંધ કરો (_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "કામ કરવાની જગ્યા %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "કામ કરવાની જગ્યા ૧_૦"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "કામ કરવાની જગ્યા %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "બીજી કામ કરવાની જગ્યામાં ખસેડો"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "ઉપર"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "નીચે"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "ડાબે"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "જમણે"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "ચોકઠાની ભૂમિતિ માપ \"%s\" સ્પષ્ટ કરતી નથી"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "ચોકઠાની ભૂમિતિ કિનારી \"%s\" માટે માપ \"%s\" સ્પષ્ટ કરતી નથી"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "બટન માટે ધારેલુ પ્રમાણ %g એ વ્યવસ્થિત નથી"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "ચોકઠાની ભૂમિતિ બટનોનું માપ સ્પષ્ટ કરતી નથી"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "ઢાળમાં ઓછામાં ઓછા બે રંગ હોવા જોઈએ"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK રંગના સ્પષ્ટીકરણમાં કૌંસમાં સ્થિતિ હોવી જોઈએ દા.ત. gtk:fg[NORMAL] જ્યાં NORMAL "
+"સ્થિતિ છે; \"%s\" નો પદચ્છેદ કરી શકાય નહિં"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK રંગના સ્પષ્ટીકરણમાં સ્થિતિ પછી કૌંસ બંધ થવો જોઈએ દા.ત. gtk:fg[NORMAL] જ્યાં "
+"NORMAL સ્થિતિ છે; \"%s\" નો પદચ્છેદ કરી શકાય નહિં"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "રંગના સ્પષ્ટીકરણમાં સ્થિતિ \"%s\" સમજી શકાઈ નહિં"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "રંગના સ્પષ્ટીકરણમાં રંગની વસ્તુ \"%s\" સમજી શકાયો નહિં"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "\"blend/bg_color/fg_color/alpha\" એ મિશ્રિત માળખું છે, \"%s\" માળખામાં બેસતું નથી "
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "મિશ્રિત રંગમાં આલ્ફાની કિંમત \"%s\" નું પદચ્છેદ કરી શકાતુ નથી"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "મિશ્રિત રંગમાં આલ્ફાની કિંમત \"%s\" ૦.૦ અને ૧.૦ ની વચ્ચે નથી"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "છાયાનું માળખું \"shade/base_color/factor\" છે, \"%s\" માળખામાં બેસતુ નથી"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "છાયાંકિત રંગમાં છાયાનો અવયવ \"%s\" નું પદચ્છેદ કરી શકાતુ નથી"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "છાયાનો અવયવ \"%s\" છાયાના રંગમાં ઋણ છે"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "રંગ \"%s\" નુ પદચ્છેદ કરી શકાતુ નથી"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "યામાક્ષ સમીકરણ અક્ષર '%s' ધરાવે છે જે સ્વીકાર્ય નથી"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "યામાક્ષ સમીકરણ અપૂર્ણાંક સંખ્યા '%s' ધરાવે છે જેનું પદચ્છેદ કરી શકાતું નથી"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "યામાક્ષ સમીકરણ પૂર્ણાંક સંખ્યા '%s' ધરાવે છે જેનું પદચ્છેદ કરી શકાતું નથી"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "યામાક્ષ સમીકરણમાં આ લખાણની શરુઆતમાં અજાણ્યા કારકો ધરાવે છે: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "યામાક્ષ સમીકરણ ખાલી છે અથવા સમજી શકાય એવું નથી"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "યામાક્ષ સમીકરણ શૂન્ય વડે ભાગાકારમાં પરિણમશે"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "યામાક્ષ સમીકરણ અપૂર્ણાંક સંખ્યાની ઉપર શેષ કારકનો ઉપયોગ કરવાનો પ્રયત્ન કરે છે"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "યામાક્ષ સમીકરણ માટે \"%s\" કારક છે જેના માટે ઓપરન્ડ હોવા જોઈએ"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "યામાક્ષ સમીકરણમાં ઓપરન્ડ છે જ્યાં કારક હોવુ જોઈતું હતું"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "યામાક્ષ સમીકરણનો અંત ઓપરન્ડની જગ્યાએ કારકથી થાય છે"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "યામાક્ષ સમીકરણમાં \"%c\" કારક પછી તરત જ \"%c\" કારક છે જેમની વચ્ચે કોઈ ઓપરન્ડ નથી"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "યામાક્ષ સમીકરણમાં અજાણ્યો ચલ કે અચલ \"%s\" છે"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "યામાક્ષ સમીકરણ પદચ્છેદકે તેનું બફર ઓવરફ્લો કરી નાંખ્યું."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "યામાક્ષ સમીકરણ પાસે ખુલ્લા કૌંસની વગર જ બંધ કૌંસ છે"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "યામાક્ષ સમીકરણ પાસે બંધ કૌંસની વગર જ ખુલ્લો કૌંસ હતો"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "યામાક્ષ સમીકરણમાં કોઈ કારક કે ઓપરન્ડ હોય તેવુ લાગતુ નથી"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "થીમે સમાવેલ સમીકરણને કારણે ભૂલમાં પરિણમ્યું: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"આ માળખાની શૈલી માટે <button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/"
+"> સ્પષ્ટ કરેલી હોવી જરુરી છે"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> ખોવાય છે"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "થીમ \"%s\" લાવવામાં નિષ્ફળ: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "કોઈ <%s> ગોઠવણ થીમ \"%s\" માટે નથી"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"થીમ \"%s\" માં વિન્ડોના પ્રકાર \"%s\" માટે કોઈ માળખાની શૈલી ગોઠવાયેલી નથી, <window "
+"type=\"%s\" style_set=\"whatever\"/> વસ્તુ ઊમેરો"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "વપરાશકર્તા દ્વારા વ્યાખ્યાયિત અચલો મોટા અક્ષરથી જ શરુ થવા જોઈએ; \"%s\" નહિં"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "અચલ \"%s\" પહેલેથી જ વ્યાખ્યાયિત છે"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "કોઈ \"%s\" લક્ષણ ઘટક <%s> પર નથી"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "લીટી %d અક્ષર %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "લક્ષણ \"%s\" સરખી <%s> વસ્તુઓ પર બે વખત પુનરાવરર્તિત થાય છે"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "લક્ષણ \"%s\" આ સંદર્ભ માટે <%s> વસ્તુ પર અયોગ્ય છે"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" ને પૂર્ણાંક તરીકે પદચ્છેદ કરી શકાયુ નહિ"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "શબ્દમાળા \"%s\" માં પૂંછડિયા અક્ષરો \"%s\" સમજી શકાયા નહિં"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "પૂર્ણાંક %ld ધન હોવું જોઈએ"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "પૂર્ણાંક %ld બહુ મોટો છે, વર્તમાન મહત્તમ %d છે"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\" ને અપૂર્ણાંક સંખ્યા તરીકે પદચ્છેદ કરી શકાયો નહિં"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "બુલિયન કિંમતો \"ખરુ\" અથવા \"ખોટુ\" હોવી જોઈએ નહિં કે \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "ખૂણો ૦.૦ અને ૩૬૦.૦ ની વચ્ચે હોવો જોઈએ, જે %g હતો\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "ખૂણો ૦.૦ (અદ્રશ્ય) અને ૧.૦ (પૂર્ણ અપારદર્શક) ની વચ્ચે હોવો જોઈએ, જે %g હતો\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"શીર્ષક \"%s\" નું અયોગ્ય માપ (આમાંથી જ એક હોવું જોઈએ- xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> નામ \"%s\" નો બીજી વાર ઉપયોગ થયો"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> પિતૃ \"%s\" વ્યાખ્યાયિત નથી"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> ભૂમિતિ \"%s\" વ્યાખ્યાયિત નથી"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> ને ભૂમિતિ અથવા પિતૃ કે જેની પાસે ભૂમિતિ હોય તે સ્પષ્ટ કરવો જ પડે છે"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "આલ્ફા કિંમત ઉપયોગી હોય તે માટે તમારે પાશ્વભાગ સ્પષ્ટ કરવો જ પડશે"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "<%s> વસ્તુ પર અજાણ્યો પ્રકાર \"%s\""
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "<%s> વસ્તુ પર અજાણી શૈલીની ગોઠવણી \"%s\""
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "વિન્ડોના પ્રકાર \"%s\" માટે પહેલેથી જ શૈલીની ગોઠવણીની નિમણૂક કરેલી છે"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "વસ્તુ <%s> એ <%s> ની નીચે સ્વીકૃત નથી"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"બટનો માટે \"button_width\"/\"button_height\" અને \"aspect_ratio\" બંને સ્પષ્ટ કરી "
+"શકતા નથી"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "અંતર \"%s\" અજાણ છે"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "ધારેલુ પ્રમાણ \"%s\" અજાણ છે"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "કિનારી \"%s\" અજાણી છે"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "ઘટક <%s> પર કોઈ \"start_angle\" અથવા \"from\" લક્ષણ નથી"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "ઘટક <%s> પર કોઈ \"extent_angle\" અથવા \"to\" લક્ષણ નથી"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "ઢાળના પ્રકાર માટે કિંમત \"%s\" ને સમજી શકાતી નથી"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "વસ્તુ <%s> માટે ફિલનો પ્રકાર \"%s\" સમજી શકાતો નથી"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "સ્થિતિ \"%s\" વસ્તુ <%s> માટે સમજી શકાતી નથી"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "છાયા \"%s\" વસ્તુ <%s> માટે સમજી શકાતી નથી"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "તીર \"%s\" વસ્તુ <%s> માટે સમજી શકાતુ નથી"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "કોઈ <draw_ops> બોલાવાયેલ \"%s\" વ્યાખ્યાયિત નથી"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "draw_ops ની સાથે \"%s\" વર્તુળાકાર નિર્દેશ બની જશે"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "તકતીના ટુકડા માટે અજાણી સ્થિતિ \"%s\" છે"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "તકતીની શૈલી પાસે પહેલેથી જ સ્થિતિ %s પાસે ટુકડો છે"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "કોઈ પણ <draw_ops> નામ \"%s\" સાથે વ્યાખ્યાયિત નથી"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "\"%s\" એ બટન માટે અજાણ્યું વિધેય છે"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "બટન વિધેય \"%s\" આ આવૃત્તિમાં અસ્તિત્વમાં નથી (%d, %d જરૂર)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "\"%s\" એ બટન માટે અજાણી સ્થિતિ છે"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "વિધેય %s ની સ્થિતિ %s માટેના ચોકઠાની શૈલી પાસે પહેલેથી જ બટન છે"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "પ્રકાશન લક્ષણ માટે \"%s\" એ યોગ્ય કિંમત નથી"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "સ્થિતિ લક્ષણ માટે \"%s\" એ યોગ્ય કિંમત નથી"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "શૈલી જે \"%s\" તરીકે ઓળખાય છે તે હજુ સુધી વ્યાખ્યાયિત થઈ નથી"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "માપ બદલવાના લક્ષણ માટે \"%s\" એ યોગ્ય કિંમત નથી"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "મહત્તમ/છાયાંકિત સ્થિતિઓ માટે <%s> વસ્તુ પર \"માપ બદલો\" એવું કોઈ લક્ષણ નથી"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "મહત્તમ સ્થિતિઓ માટે ઘટક <%s> પર \"resize\" એવું કોઈ લક્ષણ નથી"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "સ્થિતિ %s માપ બદલનાર %s પ્રકાશન %s માટે પહેલેથી જ શૈલી સ્પષ્ટ કરાયેલી છે"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "સ્થિતિ %s પ્રકાશન %s માટે પહેલેથી જ શૈલી સ્પષ્ટ કરાયેલી છે"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<piece> વસ્તુ માટે બે draw_ops ના હોઈ શકે (થીમે draw_ops લક્ષણ તથા <draw_ops> વસ્તુ "
+"પણ સ્પષ્ટ કર્યો, અથવા બંને વસ્તુઓ સ્પષ્ટ કર્યા)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<button> વસ્તુ માટે બે draw_ops ના હોઈ શકે (થીમે draw_ops લક્ષણ તથા <draw_ops> વસ્તુ "
+"પણ સ્પષ્ટ કર્યો, અથવા બંને વસ્તુઓ સ્પષ્ટ કર્યા)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<menu_icon> વસ્તુ માટે બે draw_ops ના હોઈ શકે (થીમે draw_ops લક્ષણ તથા <draw_ops> "
+"વસ્તુ પણ સ્પષ્ટ કર્યો, અથવા બંને વસ્તુઓ સ્પષ્ટ કર્યા)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "થીમની સૌથી બહારની વસ્તુ <marco_theme> જ હોવો જોઈએ નહિં કે <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "વસ્તુ <%s> name/author/date/description ની અંદર સ્વીકાર્ય નથી"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "વસ્તુ <%s> એ <constant> વસ્તુની અંદર સ્વીકાર્ય નથી"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "વસ્તુ <%s> એ distance/border/aspect_ratio વસ્તુની અંદર સ્વીકાર્ય નથી"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "વસ્તુ <%s> એ દોરવાની પ્રક્રિયાના વસ્તુની અંદર સ્વીકાર્ય નથી"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "વસ્તુ <%s> એ <%s> વસ્તુની અંદર સ્વીકાર્ય નથી"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "ચોકઠાના ટુકડા માટે કોઈ draw_ops આપેલ નથી"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "બટન માટે કોઈ draw_ops આપેલ નથી"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "કોઈ લખાણ વસ્તુ <%s> ની અંદર સ્વીકાર્ય નથી"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "આ થીમ માટે <%s> બે વખત સ્પષ્ટ કરેલ છે"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "થીમ %s માટે માન્ય ફાઈલ શોધવામાં નિષ્ફળ\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "થીમ ફાઈલ %s રુટ વસ્તુ <marco_theme> ધરાવતું નથી"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/વિન્ડોઝ (_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/વિન્ડોઝ/ટીયરઓફ"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/વિન્ડોઝ/સંવાદ (_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/વિન્ડોઝ/મોડેલ સંવાદ (_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/વિન્ડોઝ/ઉપયોગિતા (_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/વિન્ડોઝ/ઝબૂક સ્ક્રીન (_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/વિન્ડોઝ/ઉપરનો ડોક (_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/વિન્ડોઝ/નીચલો ડોક (_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/વિન્ડોઝ/ડાબુ ડોક (_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/વિન્ડોઝ/જમણું ડોક (_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/વિન્ડોઝ/બધા ડોક (_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/વિન્ડોઝ/ડેસ્કટોપ (_k)"
+
+#: ../src/ui/theme-viewer.c:136
+msgid "Open another one of these windows"
+msgstr "આ બધી વિન્ડોમાંથી બીજી વિન્ડો ખોલો"
+
+#: ../src/ui/theme-viewer.c:143
+msgid "This is a demo button with an 'open' icon"
+msgstr "આ ડેમો બટન 'ખોલો' ચિહ્ન સાથે છે"
+
+#: ../src/ui/theme-viewer.c:150
+msgid "This is a demo button with a 'quit' icon"
+msgstr "આ ડેમો બટન 'બહાર નીકળો' ચિહ્ન સાથે છે"
+
+#: ../src/ui/theme-viewer.c:243
+msgid "This is a sample message in a sample dialog"
+msgstr "આ નમબના સંવાદમાં સરળ સંદેશો છે"
+
+#: ../src/ui/theme-viewer.c:326
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "ખોટી મેનુ વસ્તુ %d\n"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Border-only window"
+msgstr "વિન્ડો માટે માત્ર કિનારી"
+
+#: ../src/ui/theme-viewer.c:362
+msgid "Bar"
+msgstr "પટ્ટી"
+
+#: ../src/ui/theme-viewer.c:379
+msgid "Normal Application Window"
+msgstr "કાર્યક્રમની સામાન્ય વિન્ડો"
+
+#: ../src/ui/theme-viewer.c:383
+msgid "Dialog Box"
+msgstr "સંવાદ પેટી"
+
+#: ../src/ui/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "નમુના સંવાદ પેટી"
+
+#: ../src/ui/theme-viewer.c:391
+msgid "Utility Palette"
+msgstr "ઉપયોગિતા પેલેટ"
+
+#: ../src/ui/theme-viewer.c:395
+msgid "Torn-off Menu"
+msgstr "કાઢી નાખેલ મેનુ"
+
+#: ../src/ui/theme-viewer.c:399
+msgid "Border"
+msgstr "કિનારી"
+
+#: ../src/ui/theme-viewer.c:727
+#, c-format
+msgid "Button layout test %d"
+msgstr "બટનના દેખાવની ચકાસણી %d"
+
+#: ../src/ui/theme-viewer.c:756
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "એક વિન્ડોનું ચોકઠુ દોરવા માટે %g મિલિસેકન્ડો"
+
+#: ../src/ui/theme-viewer.c:799
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "વપરાશઃ મેટાસીટી-થીમ-દર્શક [થીમનુ નામ]\n"
+
+#: ../src/ui/theme-viewer.c:806
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "થીમ લાવવામાં ભૂલ: %s\n"
+
+#: ../src/ui/theme-viewer.c:812
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "લવાયેલ થીમ \"%s\" %g સેકન્ડોમાં\n"
+
+#: ../src/ui/theme-viewer.c:853
+msgid "Normal Title Font"
+msgstr "સામાન્ય શીર્ષક ફોન્ટ"
+
+#: ../src/ui/theme-viewer.c:859
+msgid "Small Title Font"
+msgstr "નાના શીર્ષક ફોન્ટ"
+
+#: ../src/ui/theme-viewer.c:865
+msgid "Large Title Font"
+msgstr "મોટા શીર્ષક ફોન્ટ"
+
+#: ../src/ui/theme-viewer.c:870
+msgid "Button Layouts"
+msgstr "બટનના દેખાવો"
+
+#: ../src/ui/theme-viewer.c:875
+msgid "Benchmark"
+msgstr "બેન્ચમાર્ક"
+
+#: ../src/ui/theme-viewer.c:922
+msgid "Window Title Goes Here"
+msgstr "વિન્ડોનુ શીર્ષક અંહિ જાય છે"
+
+#: ../src/ui/theme-viewer.c:1026
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"ડ્રિયુ %d ચોકઠાંઓ %g ક્લાઈન્ટ બાજુની સેકન્ડો (%g મિલિસેકન્ડો પ્રતિ ચોકઠાએ) અને %g દિવાલ "
+"ઘડિયાળના સમયની સેકન્ડો X સર્વર સ્રોતોને સમાવીને (%g મિલિસેકન્ડો પ્રતિ ચોકઠાએ)\n"
+
+#: ../src/ui/theme-viewer.c:1245
+msgid "position expression test returned TRUE but set error"
+msgstr "જગ્યા સમીકરણ ચકાસણી સાચુ મોકલશે પરંતુ ભૂલ સુયોજિત કરશે"
+
+#: ../src/ui/theme-viewer.c:1247
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "જગ્યા સમીકરણ ચકાસણી બૂલ મોકલશે પરંતુ ભૂલ સુયોજિત કરતું નથી"
+
+#: ../src/ui/theme-viewer.c:1251
+msgid "Error was expected but none given"
+msgstr "ભૂલ થવાની સંભાવના હતી પરંતુ કંઈ અપાયુ નથી"
+
+#: ../src/ui/theme-viewer.c:1253
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "ભૂલ %d થવાની સંભાવના હતી પરંતુ %d અપાયુ"
+
+#: ../src/ui/theme-viewer.c:1259
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "ભૂલ થવાની સંભાવના હતી પરંતુ એક મોકલાયુ હતું: %s"
+
+#: ../src/ui/theme-viewer.c:1263
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x કિંમત %d હતી, %d ની ઈચ્છા હતી"
+
+#: ../src/ui/theme-viewer.c:1266
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y કિંમત %d હતી, %d ની ઈચ્છા હતી"
+
+#: ../src/ui/theme-viewer.c:1331
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d યામાક્ષ સમીકરણ %g સેકન્ડોમાં પદચ્છેદ થયુ (સરેરાશ %g સેકન્ડો)\n"
+
diff --git a/po/ha.po b/po/ha.po
new file mode 100644
index 00000000..35b67728
--- /dev/null
+++ b/po/ha.po
@@ -0,0 +1,3599 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: marco-2.0\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2009-01-17 08:21+0000\n"
+"PO-Revision-Date: 2006-05-11 13:30+0100\n"
+"Last-Translator: saudat mohammed <saudat@wazobialinux>\n"
+"Language-Team: hausa\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+#, fuzzy
+msgid "Desktop"
+msgstr "sama"
+
+#: ../src/50-marco-key.xml.in.h:1
+#, fuzzy
+msgid "Window Management"
+msgstr "Manajan taga: "
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr ""
+
+#: ../src/core/delete.c:70 ../src/core/delete.c:97
+#: ../src/ui/marco-dialog.c:50 ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "An kasa parse ga \"%s\" kamar wata inteja"
+
+#: ../src/core/delete.c:77 ../src/core/delete.c:104
+#: ../src/ui/marco-dialog.c:57 ../src/ui/theme-parser.c:531
+#: ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Ba'a gane baƙaƙe masu bin juna na \"%s\" cikin jimlar \"%s\" ba"
+
+#: ../src/core/delete.c:135
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "An kasa parse ga saƙon \"%s\" daga hanyar zauren akwatin bayani\n"
+
+#: ../src/core/delete.c:253
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Karatun kure daga hanya mai nuna zauren akwatin bayani: %s\n"
+
+#: ../src/core/delete.c:336
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Kuskure wajen gabatar da zauren akwatin bayanin-marco don yin tambaya "
+"game da wata shirin ayuka wanda za'a kashe: %s\n"
+
+#: ../src/core/delete.c:445
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "An kasa samun sunan na'urar masaukin bayani: %s\n"
+
+#: ../src/core/display.c:256
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr ""
+
+#: ../src/core/display.c:334
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "An kasa buɗe shirin nuna Na'urar Tagan X na '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"An ɓatar da haɗi zuwa shirin nunawa '%s';\n"
+"Wata ƙila an rufe X sava ko kuma ka kashe/halaƙar da\n"
+"manajan tagan.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Mumunan kuskure na IO %d (%s) da ake nuna kan '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Wata shiri daban na amfani da maɓallin %s tare da masu gyare-gyare %x kamar "
+"wata baindin\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, fuzzy, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"An sami kure wajen tafiyar da \"%s\":\n"
+"%s."
+
+#: ../src/core/keybindings.c:2381
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Babu wata umarni na %d a bayyane.\n"
+
+#: ../src/core/keybindings.c:3335
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Babu umarnin tasha a bayyane.\n"
+
+#: ../src/core/main.c:116
+#, fuzzy, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Hakkin Mallaka (C) 2001-2002 Havoc Pennington, Red Hat, Inc., da saura\n"
+"Wannan wata masarrafin kwamfyutan kyauta ce, duba mafari wa sharuɗɗan "
+"kwafewa.\n"
+"BABU wani waranti; ko da wa MACANTABILITI ko kuma DACEWA DA WATA AIKI "
+"TAKAMAIMAI.\n"
+
+#: ../src/core/main.c:253
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/core/main.c:259
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/core/main.c:265
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/core/main.c:270
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/core/main.c:276
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/core/main.c:282
+msgid "Print version"
+msgstr ""
+
+#: ../src/core/main.c:288
+msgid "Make X calls synchronous"
+msgstr ""
+
+#: ../src/core/main.c:294
+msgid "Turn compositing on"
+msgstr ""
+
+#: ../src/core/main.c:300
+msgid "Turn compositing off"
+msgstr ""
+
+#: ../src/core/main.c:478
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "An kasa sikan na gafakan jigo: %s\n"
+
+#: ../src/core/main.c:494
+#, fuzzy, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"An kasa samun wani jigo! Ka tabbata cewa %s ta kasance, kuma tana ƙunsa da "
+"jigo wanda aka saba da."
+
+#: ../src/core/main.c:550
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "An kasa sake fara shi: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:499 ../src/core/prefs.c:654
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "An daidaita maɓallin MateConf '%s' zuwa wani kima mai maras inganci\n"
+
+#: ../src/core/prefs.c:580 ../src/core/prefs.c:823
+#, fuzzy, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"%d wanda aka adana cikin maɓallin MateConf %s bai cikin zangon 0 zuwa %d\n"
+
+#: ../src/core/prefs.c:624 ../src/core/prefs.c:701 ../src/core/prefs.c:749
+#: ../src/core/prefs.c:813 ../src/core/prefs.c:1106 ../src/core/prefs.c:1122
+#: ../src/core/prefs.c:1139 ../src/core/prefs.c:1155
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "An daidaita maɓallin MateConf \"%s\" zuwa wata nau'i mai maras inganci\n"
+
+#: ../src/core/prefs.c:1225
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"An kashe byfass wa shiryoyin ayuka a ƙarye. Wasu shiryoyin ayuka ba za su "
+"nuna hali mai daidai ba.\n"
+
+#: ../src/core/prefs.c:1296
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"An kasa yin parse ga kwatancin nau'in rubutu \"%s\" daga maɓallin MateConf %s\n"
+
+#: ../src/core/prefs.c:1356
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" da aka samu cikin rumbun bayani na canza tsari, ba wata kima mai "
+"inganci wa mai gyaren maɓallin linzami ba\n"
+
+#: ../src/core/prefs.c:1771
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Kuskure wajen shirya yawan filayen aiki zuwa %d: %s\n"
+
+#: ../src/core/prefs.c:1960 ../src/core/prefs.c:2463
+#, c-format
+msgid "Workspace %d"
+msgstr "Filin aiki %d"
+
+#: ../src/core/prefs.c:1990 ../src/core/prefs.c:2168
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" da aka samu cikin rumbun bayanin canza tsari bai da kima mai inganci "
+"wa kibaindin \"%s\"\n"
+
+#: ../src/core/prefs.c:2544
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Kuskure wajen daidaita suna wa filin aikin %d zuwa \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2730
+#, fuzzy, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Kuskure wajen daidaita suna wa filin aikin %d zuwa \"%s\": %s\n"
+
+#: ../src/core/screen.c:350
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Fuskar kwamfyuta %d da ake nuna '%s' bai da inganci\n"
+
+#: ../src/core/screen.c:366
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Fuskar kwamfyuta %d da ake nuna \"%s\" ya riga yana da wani manajan taga; ka "
+"gwada yin amfani da --zaɓen mayewa don ka maye manajan taga na yanzu.\n"
+
+#: ../src/core/screen.c:393
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"An kasa samun zaɓen manajan taga kan fuskar kwamfyuta %d da ake nuna \"%s\"\n"
+
+#: ../src/core/screen.c:451
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Fuskar kwamfyuta %d da ake nuna \"%s\" na da manajan taga\n"
+
+#: ../src/core/screen.c:661
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "An kasa sakar da fuskar kwamfyuta %d da ake nuna \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:165
+#, fuzzy
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Kibaindin da ake amfani da wajen rufe wani taga. Tsarin na kama da \"&lt;"
+"Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+"sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+"taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+"daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+"kibaindin wa wannan aikin ba."
+
+#: ../src/core/schema-bindings.c:173
+#, fuzzy
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Kibaindin da ake amfani da wajen rufe wani taga. Tsarin na kama da \"&lt;"
+"Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+"sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+"taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+"daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+"kibaindin wa wannan aikin ba."
+
+#: ../src/core/session.c:837 ../src/core/session.c:844
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "An kasa ƙiƙiro gafaka '%s': %s\n"
+
+#: ../src/core/session.c:854
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "An kasa buɗe fayil na zaman shawara '%s' wa yin rubutu: %s\n"
+
+#: ../src/core/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Kuskure wajen rubuta fayil ɗin zaman shawara '%s': %s\n"
+
+#: ../src/core/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Kuskure wajen rufe fayil ɗin zaman shawara '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1093
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "An kasa karanta fayil ɗin zaman shawara da aka adana %s: %s\n"
+
+#: ../src/core/session.c:1132
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "An kasa yin parse ga fayil ɗin zaman shawara da aka adana:%s\n"
+
+#: ../src/core/session.c:1181
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"<zaman shawarar_metaciti> an ga halin amma mun riga muna da shaidar zaman "
+"shawarar"
+
+#: ../src/core/session.c:1194 ../src/core/session.c:1269
+#: ../src/core/session.c:1301 ../src/core/session.c:1373
+#: ../src/core/session.c:1433
+#, fuzzy, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Halin da ba'a sani ba %s kan ƙanshin <taga>"
+
+#: ../src/core/session.c:1211
+#, c-format
+msgid "nested <window> tag"
+msgstr "nested <taga> tag"
+
+#: ../src/core/session.c:1453
+#, c-format
+msgid "Unknown element %s"
+msgstr "Ƙanshin da ba'a sani ba %s"
+
+#: ../src/core/session.c:1879
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Kuskure wajen gabatar da zauren akwatin bayanin-metaciti don ba da gargaɗi "
+"kan apps wanda basu goyi bayan hukumar sarrafa zaman shawara ba: %s\n"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "An kasa buɗe rajistan ayuka na cire cuta: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "An kasa fdbuɗe() fayil ɗin rajistan ayuka na %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "An buɗe rajistan ayuka na fayil %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "An tara Marco ba tare da goyon baya wa shirin verbose ba\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Manajan taga: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Cuta cikin manajan taga: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Gargaɗi na manajan taga: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Kuren manajan taga: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:577 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Metaciti"
+
+#. first time through
+#: ../src/core/window.c:5743
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Tagan %s na shirya SM_CLIENT_ID game da kansa, maimakon kan tagan "
+"WM_CLIENT_LEADER kamar yanda aka ƙayyade cikin ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6308
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Window %s na daidaita wata matashiyar MWM mai nuna cewa ba za'a iya sake "
+"girmarsa ba, amma, yana daidaita a ƙalla girmar %d x %d da iyaka girmar %d x "
+"%d, amma bai da ma'ana sosai.\n"
+
+#: ../src/core/window-props.c:206
+#, fuzzy, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Shirin ayuka ta daidaita wani _NET_WM_PID %ld mai maras daidai\n"
+
+#: ../src/core/window-props.c:338
+#, c-format
+msgid "%s (on %s)"
+msgstr ""
+
+#: ../src/core/window-props.c:1422
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+
+#: ../src/core/xprops.c:155
+#, fuzzy, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Tagan 0x%lx na da furofati na %s\n"
+"da aka tsammani na da nau'in %s tsarin %d\n"
+"da kuma yana da nau'in %s na tsarin %d n_abubuwa %s a gaskiya.\n"
+"Wannan zai zama yawanci wani cuta ga shirin ayuka ne, ba wani cutan manajan "
+"taga ba.\n"
+"Tagan na da suna=\"%s\" ajin=\"%s\" suna=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Furofati %s na kan tagan 0x%lx na ƙunsa da UTF-8 mai maras inganci\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Furofati %s na kan tagan 0x%lx na ƙunsa da UTF-8 mai maras inganci wa abun %"
+"d cikin jerin\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Sauya zuwa filin aiki 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Sauya zuwa filin aiki 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Sauya zuwa filin aiki 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Sauya zuwa filin aiki 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Sauya zuwa filin aiki 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Sauya zuwa filin aiki 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Sauya zuwa filin aiki 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Sauya zuwa filin aiki 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Sauya zuwa filin aiki 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Sauya zuwa filin aiki 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Sauya zuwa filin aiki 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Sauya zuwa filin aiki 12"
+
+#: ../src/include/all-keybindings.h:122
+#, fuzzy
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Sauya zuwa filin aiki da ke hagu"
+
+#: ../src/include/all-keybindings.h:126
+#, fuzzy
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Sauya zuwa filin aiki da ke dama"
+
+#: ../src/include/all-keybindings.h:130
+#, fuzzy
+msgid "Switch to workspace above the current workspace"
+msgstr "Sauya zuwa filin aiki da ke saman wannan"
+
+#: ../src/include/all-keybindings.h:134
+#, fuzzy
+msgid "Switch to workspace below the current workspace"
+msgstr "Sauya zuwa filin aiki da ke ƙasan wannan"
+
+#: ../src/include/all-keybindings.h:150
+#, fuzzy
+msgid "Move between windows of an application, using a popup window"
+msgstr "Gusa da shirin nunowa da ɓacewa tsakanin tagogi"
+
+#: ../src/include/all-keybindings.h:153
+#, fuzzy
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Yi amfani da nunawan shirin nunowa da ɓacewa don ka motsa zura ido ta baya-"
+"baya tsakanin tagogi"
+
+#: ../src/include/all-keybindings.h:157
+#, fuzzy
+msgid "Move between windows, using a popup window"
+msgstr "Gusa da shirin nunowa da ɓacewa tsakanin tagogi"
+
+#: ../src/include/all-keybindings.h:160
+#, fuzzy
+msgid "Move backward between windows, using a popup window"
+msgstr ""
+"Yi amfani da nunawan shirin nunowa da ɓacewa don ka motsa zura ido ta baya-"
+"baya tsakanin tagogi"
+
+#: ../src/include/all-keybindings.h:163
+#, fuzzy
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Gusa da shirin nunowa da ɓacewa tsakanin fanel da kwamfyutan tebur"
+
+#: ../src/include/all-keybindings.h:166
+#, fuzzy
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Gusa baya-baya da shirin nunowa da ɓacewa tsakanin fanel da kwamfyutan tebur"
+
+#: ../src/include/all-keybindings.h:171
+#, fuzzy
+msgid "Move between windows of an application immediately"
+msgstr "Gusa tsakanin tagogi yanzu-yanzu"
+
+#: ../src/include/all-keybindings.h:174
+#, fuzzy
+msgid "Move backward between windows of an application immediately"
+msgstr "Gusa baya-baya takanin tagogi yanzu-yanzu"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Gusa tsakanin tagogi yanzu-yanzu"
+
+#: ../src/include/all-keybindings.h:180
+#, fuzzy
+msgid "Move backward between windows immediately"
+msgstr "Gusa baya-baya takanin tagogi yanzu-yanzu"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Gusa tsakanin fanel da kwamfyutan tebur yanzu-yanzu"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Gusa baya-baya tsakanin fanel da kwamfyutan tebur yanzu-yanzu"
+
+#: ../src/include/all-keybindings.h:191
+#, fuzzy
+msgid "Hide all normal windows and set focus to the desktop background"
+msgstr "Ɓoye duk tagogi kuma a zura ido kan kwamfyutan tebur"
+
+#: ../src/include/all-keybindings.h:194
+#, fuzzy
+msgid "Show the panel's main menu"
+msgstr "Nuna mazaɓen fanel"
+
+#: ../src/include/all-keybindings.h:197
+#, fuzzy
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Nuna fanel ɗin tafiyar da zauren akwatin bayani na shirin ayuka"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Ka ɗau wani hoton fuskar kwamfyuta"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Ka ɗau wani hoto na taga"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "A tafiyar wata tasha"
+
+#: ../src/include/all-keybindings.h:257
+#, fuzzy
+msgid "Activate the window menu"
+msgstr "Kunna mazaɓen taga"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Shirin cikakken fuska na toggle"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Halin faɗaɗawa na toggle"
+
+#: ../src/include/all-keybindings.h:264
+#, fuzzy
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Yi ƙasa da taga a ƙarƙashin sauran tagogi"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Faɗaɗa taga"
+
+#: ../src/include/all-keybindings.h:268
+#, fuzzy
+msgid "Restore window"
+msgstr "Sake girmar taga"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Halin inuwantarwa na toggle"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Tsuke taga"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Rufe taga"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Motsa taga"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Sake girmar taga"
+
+#: ../src/include/all-keybindings.h:281
+#, fuzzy
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Yi toggle ga taga kan duk filayen aiki"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Motsa taga zuwa filin aiki 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Motsa taga zuwa filin aiki 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Motsa taga zuwa filin aiki 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Motsa taga zuwa filin aiki 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Motsa taga zuwa filin aiki 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Motsa taga zuwa filin aiki 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Motsa taga zuwa filin aiki 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Motsa taga zuwa filin aiki 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Motsa taga zuwa filin aiki 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Motsa taga zuwa filin aiki 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Motsa taga zuwa filin aiki 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Motsa taga zuwa filin aiki 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Motsa taga ta hagun filin aiki taki ɗaya"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Motsa taga ta daman filin aiki taki ɗaya"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Motsa taga ta saman filin aiki taki ɗaya"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Motsa taga ta ƙasan filin aiki taki ɗaya"
+
+#: ../src/include/all-keybindings.h:342
+#, fuzzy
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Ɗaga ɓoyayyiyar taga, idan ba haka ba, ka sauƙar da shi"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Ɗaga taga kan sauran tagogi"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Yi ƙasa da taga a ƙarƙashin sauran tagogi"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Faɗaɗa taga a tsaye"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Faɗaɗa taga a kwance"
+
+#: ../src/include/all-keybindings.h:358
+#, fuzzy
+msgid "Move window to north-west (top left) corner"
+msgstr "Motsa taga ta hagun filin aiki taki ɗaya"
+
+#: ../src/include/all-keybindings.h:361
+#, fuzzy
+msgid "Move window to north-east (top right) corner"
+msgstr "Motsa taga ta daman filin aiki taki ɗaya"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:383
+#, fuzzy
+msgid "Move window to center of screen"
+msgstr "Motsa taga ta ƙasan filin aiki taki ɗaya"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Ba'a zartar da shi ba) Neman hanya na aiki game da shirin ayuka, bada taga "
+"ba"
+
+#: ../src/marco.schemas.in.in.h:2
+#, fuzzy
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Wata jimlar kwatancin nau'in rubutu mai kwatanta wata nau'in rubutu wa "
+"layukan sunaye na taga. Amma, duk da hakan, za'a yi amfani da girma daga "
+"kwatancin kawai idan an daidaita girmar_nau'in rubutun_layin suna zuwa 0. "
+"Hakan kuma, za'a warware wannan zaɓe idan an daidaita zaɓen layin suna_na "
+"amfani da_nau'in rubutun_kwamfyutan tebur zuwa na gaske. Ta difwalt, watau "
+"ba'a daidaita nau'in rubutun_layin suna ba, kuma zai sa Metaciti ta koma ga "
+"nau'in rubutun kwamfyutan tebur ko da shiri na layin suna_na amfani "
+"da_nau'in rubutun_kwamfyutan tebur, na ƙarya ne."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Aiki idan an danna layin suna sau-biyu"
+
+#: ../src/marco.schemas.in.in.h:4
+#, fuzzy
+msgid "Action on title bar middle-click"
+msgstr "Aiki idan an danna layin suna sau-biyu"
+
+#: ../src/marco.schemas.in.in.h:5
+#, fuzzy
+msgid "Action on title bar right-click"
+msgstr "Aiki idan an danna layin suna sau-biyu"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Tsarin maɓallu kan layin suna"
+
+#: ../src/marco.schemas.in.in.h:7
+#, fuzzy
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Tsarin maɓallu kan layin suna. Ana son kimar ya zama wata jumla kamar "
+"\"mazaɓa:tsuke,faɗaɗa,rufe\"; ruwa biyu ɗin na rarraba lungun hagu na tagan "
+"daga lungu na dama kuma, ana raba sunayen maɓallun da waƙafi. Ba'a yarda da "
+"maɓallun dobur. Ana ɗan kyale maɓallun da ba'a san sunayen su ba don a iya "
+"haɗa su cikin sigogin metaciti na nan gaba, kuma a kiyaye ƙarya tsohon "
+"sigogin idan ana hakan."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Yana ɗaga tagan da aka zura wa ido farat ɗaya"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Idan ana danna wani taga a lokacin da aka riƙe wannan maɓallin gyare-gyare, "
+"zai motsa tagan (danne hagu), sake girmar tagan (danne tsakiya), ko kuma ya "
+"nuna mazaɓen tagan (danne dama). Akan nuna mai gyare-gyare kamar misali, "
+"\"&lt;Alt&gt;\" ko \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Umarnai da za'a tafiyar da cikin ba da amsa zuwa kibaindin"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Jigo wanda ake kai yanzu"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Jinkiri cikin millisakan wa zaɓe na ɗagawa farat ɗaya"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Yana ƙudura ko da shirin ayuka ko kuma na'urar zai iya bada 'ƙara' da za'a "
+"iya ji; ko kuma wanda za'a iya amfani da tare da 'ƙararrawar da ake gani' "
+"don ya yarda da 'ƙaran' mai shiru."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Ka kashe misfeature wanda tsohon shiryoyin ayuka ko shiryoyin ayuka wanda "
+"aka karya ke buƙata"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Fara Ƙararrawa na Gani"
+
+#: ../src/marco.schemas.in.in.h:19
+#, fuzzy
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"In da gaske, shirin zura ido zai zama ko \"sloppy\" ko \"linzami\" sannan a "
+"ɗaga tagan da aka zura wa ido farat ɗaya bayan ɗan jinkirtawa (maɓalli na "
+"jinkirtar da_ɗagawa_farat ɗaya na ƙayyade jinkirtawar)."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"In da gaske, sai ka ƙyale zaɓe na nau'in rubutun_layinsuna, kuma ka yi "
+"amfani da daidaitacciyar nau'in rubutu na shiryoyin ayuka wa sunayen taga."
+
+#: ../src/marco.schemas.in.in.h:21
+#, fuzzy
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"In da gaske, metaciti zai rage feedbak da ƙarfin \"sarrafawa kai tsaye\" wa "
+"mai amfani da shi, ta yin amfani da wayarfiram, gudun surori masu mosti, ko "
+"wasu hanyoyi. Wannan ragi mai muhimmi ne game da amfani na yawancin masu "
+"amfani da, amma, ƙila ya yarda shiryoyin ayukan legesi da savan tasha su yi "
+"aiki idan aikin su ba mai yiwuwa bane. Ko ta yaya, ana kashe alamar "
+"wayarfiram idan an kunna fasahan mataimaki naƙasan mutum don a yi gudun "
+"karye-karyen kwamfyutan tebur masu wani iri."
+
+#: ../src/marco.schemas.in.in.h:22
+#, fuzzy
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"In da gaske, to Metaciti zai yi aiki da shiryoyin ayuka maimakon windows. "
+"Dabarar ya kan da ɗan tsamo, amma, yawancin tsari wanda aka ƙiƙiro kan tsari "
+"na-shirin ayuka ya fi kama da na Mac fiye da Windows. Za'a ɗaga duk tagogi "
+"masu cikin shirin ayuka idan ka zura ido kan wani taga cikin tsari wanda aka "
+"ƙiƙiro kan tsari na-shirin ayuka. Hakan kuma, idan ana cikin tsarin na-"
+"shiryoyin ayuka, ba'a tura danne-dannen zura ido zuwa tagogi masu cikin wasu "
+"shiryoyin ayuka daban. Akwai shakka da dama-dama ga rayuwar wannan kewayen. "
+"Amma, ya fi samun kayan daidaitawa wa duk cikakken bayani takamaimai, na "
+"tsarin-shirin ayuka vs. game da na-taga, misali, ko za'a tura ta yin danne-"
+"danne. Kuma, ba za'a zartar da yawancin shirin game da-shirin ayuka a yanzu "
+"ba."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "In da gaske, ka sauya sauƙin amfani wa rage amfani na arziki "
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Shirin Gyare-Gyare da za'a yi amfani da wa ayukan danne-dannen tagan da aka "
+"yi wa gyare-gyare"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Sunan filin aiki"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Yawan filayen aiki"
+
+#: ../src/marco.schemas.in.in.h:27
+#, fuzzy
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Yawan filayen aiki. Ana tilasa ya fi sifiri, kuma ya zamato yana da "
+"ƙayyadaddun iyaka (don a kiyaye rusar da kwamfyutan teburin ka ba da ganga "
+"ba ta yin tambayan filayen aiki na guda miliyan 34)."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "A tafiyar da wata umarnin a bayyane"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid "System Bell is Audible"
+msgstr "Ana Jin Ƙararrawar Na'ura"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Yana gaya wa Metaciti yanda yakamata ya aiwatar da indiketa wanda ana gani, "
+"mai nuna cewa an danna ƙararrawar na'ura ko kuma an danna wata indiketa na "
+"shirin ayuka 'ƙararrawa' daban. A yanzu, akwai kima guda biyu masu inganci, "
+"\"cikakkenfuska\", mai jawo wata filash mai fari-baƙi ga cikakken fuska, da "
+"kuma \"filash na_firam\" da ke sa layin sunan shirin ayuka, wanda ya aika da "
+"alamar ƙararrawa ya yi filash. Idan ba'a san da shirin ayuka wanda ya aika "
+"da ƙararrawar ba (yawanci matsalar da ke shafi difwalt \"ƙarar na'ura\"), "
+"layin sunan taga da aka zura wa ido a lokacin zai yi filash."
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Wannan /apps/marco/global_keybindings/run_command_N keys na bayyana "
+"kibaindin da suka dace da waɗannan umarnai. Idan an danna kibaindin wa "
+"tafiyar da_umarnin_N, zai zartar da umarnin_N."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Wannan /apps/marco/global_keybindings/run_command_screenshot key na "
+"bayyana kibaindin da ke sa a kira umarnin da wannan kewaye ke ƙayyade."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Wannan /apps/marco/global_keybindings/run_command_window_screenshot key "
+"na ƙayyade wata kibaindin da ke sa a ƙira umarnin da wannan kewaye ta "
+"ƙayyade."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Kibaindin da ke tafiyar da umarnin da alƙalaminsu-suka dace cikin /apps/"
+"marco/keybinding_commands. Tsarin na kama da \"&lt;Control&gt;a\" ko "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana "
+"yarda da baƙaƙƙe masu kanana da babba, da kuma taƙaitaccen sunaye kamar "
+"\"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumla mai "
+"musamman na \"an kashe\", to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid "The name of a workspace."
+msgstr "Sunan wata filin aiki."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The screenshot command"
+msgstr "Umarnin hoton fuskar kwamfyuta"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Jigon na ƙudura surar gefen taga, layin suna, da kaza da kaza."
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Jinkintar lokaci kafin a ɗaga wani taga idan an daidaita ɗagawa_farat ɗaya "
+"zuwa gaske. Ana ba da jinkintar cikin dubban sakan."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Shirin zura ido na taga na nuna yanda ake kunna tagogi. Yana da kima guda "
+"uku masu yiwu; ma'anar \"danna\" shine ya kamata a danna tagogi don a samu a "
+"zura musu ido, ma'anar \"sloppy\" shine ana zura ma tagogi ido idan linzami "
+"ta shiga tagan, da ma'anar \"linzami\" shine ana zura wa tagogi ido idan "
+"linzamin ta shiga tagan kuma ana cire idon idan linzamin ta bar tagan."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid "The window screenshot command"
+msgstr "Umarnin hoton fuskar kwamfyutan taga"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:47
+#, fuzzy
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Yana kunna indiketa da ana iya gani idan wata shirin ayuka ko na'ura ya ba "
+"da 'ƙararrawa' ko 'ƙara'; yana da amfani wa mutane wanda basu gin-magana-"
+"sosai da kuma, idan ana cikin muhalli mai ƙara, ko idan an kashe 'muryar "
+"ƙararrawa'."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid "Use standard system font in window titles"
+msgstr "Yi amfani da daidaitacciyar nau'in rubutu na na'ura cikin sunan taga"
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Visual Bell Type"
+msgstr "Nau'in Ƙararrawa Na Kallo"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Window focus mode"
+msgstr "Shirin zura ido kan taga"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Window title font"
+msgstr "Nau'in rubutun sunan taga"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Yin Amfani da: %s\n"
+
+#: ../src/ui/frames.c:1077
+msgid "Close Window"
+msgstr "Rufe Taga"
+
+#: ../src/ui/frames.c:1080
+msgid "Window Menu"
+msgstr "Mazaɓen Taga"
+
+#: ../src/ui/frames.c:1083
+msgid "Minimize Window"
+msgstr "Tsuke Taga"
+
+#: ../src/ui/frames.c:1086
+msgid "Maximize Window"
+msgstr "Faɗaɗa Taga"
+
+#: ../src/ui/frames.c:1089
+#, fuzzy
+msgid "Restore Window"
+msgstr "Sake girmar taga"
+
+#: ../src/ui/frames.c:1092
+#, fuzzy
+msgid "Roll Up Window"
+msgstr "Naɗe _Sama"
+
+#: ../src/ui/frames.c:1095
+#, fuzzy
+msgid "Unroll Window"
+msgstr "Rufe Taga"
+
+#: ../src/ui/frames.c:1098
+msgid "Keep Window On Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1101
+msgid "Remove Window From Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1104
+#, fuzzy
+msgid "Always On Visible Workspace"
+msgstr "_Kullum Kan Filin Aiki da Ake Gani"
+
+#: ../src/ui/frames.c:1107
+#, fuzzy
+msgid "Put Window On Only One Workspace"
+msgstr "Yi toggle ga taga kan duk filayen aiki"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Ts_uke"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Fa_ɗaɗa"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Cire fa_ɗaɗawa"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Naɗe _Sama"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Cire Naɗi"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Motsa"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Sake Girma"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr ""
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Kullum Kan Filin Aiki da Ake Gani"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Kan Wannan Filin Aiki Kawai"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Motsa Zuwa Filin aiki _Hagu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Motsa Zuwa Filin aiki D_ama"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Motsa Zuwa Filin aiki _Sama"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Mosta Zuwa Filin aiki _Ƙasa"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Rufe"
+
+#: ../src/ui/menu.c:203
+#, fuzzy, c-format
+msgid "Workspace %d%n"
+msgstr "Filin aiki %d"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Filin aiki 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Filin aiki %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Motsa Zuwa Wata _Filin aiki Daban"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/ui/marco-dialog.c:90
+#, fuzzy, c-format
+msgid "\"%s\" is not responding."
+msgstr "Tagan \"%s\" ba ya amsawa."
+
+#: ../src/ui/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "_Daina da Ƙarfi"
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr "Suna"
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr "Aji"
+
+#: ../src/ui/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Waɗannan tagogi basu goyon bayan \"adana tsarin da ake kai yanzu\" sabo da "
+"haka ana buƙatan ka sake fara tsarin da hannu nan gaba idan za ka sake shiga."
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"An sami kure wajen tafiyar da \"%s\":\n"
+"%s."
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "sama"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "ƙasa"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "hagu"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "dama"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "jometiri ɗin firam bai ƙayyade girmar \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "jometiri na firam bai ƙayyade girmar \"%s\" wa gefen \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Maɓalli na gwada tsawo da faɗin %g ba mai hankali ba"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Jometiri ɗin firam ba ya ƙayyade girmar maɓallu"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Ana son grediyant ya ƙunsa da a ƙalla launuka guda biyu"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Tilas ne buƙatan launi na GTK ya ƙayyade halin cikin baka biyu, misali gtk:fg"
+"[NA KULLUM] inda NA KULLUM halinsa kenan; kuma an kasa yin parse ga \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Tilas ne buƙatan launi na GTK ya zaɓi wata rufaffiyar baka biyu bayan halin, "
+"misali, gtk:fg[NA KULLUM] inda NA KULLUM watau halinsa kenan; kuma an kasa "
+"yin parse ga \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "An kasa fahimci halin \"%s\" cikin buƙatan launi"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Ba'a gane da ruƙunin launi na \"%s\" wanda ke cikin buƙatan launi ba"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Tsarin sajewa shine \"blend/bg_color/fg_color/alpha\", \"%s\" bai dace da "
+"tsarin ba"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "An kasa yin parse ga kimar alfa na \"%s\" cikin launin da aka saje"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+"Kimar alfa \"%s\" da ke cikin launin da aka saje bai tsakanin 0,0 da 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Tsarin inuwantarwa shine \"shade/base_color/factor\", \"%s\" bai dace da "
+"tsarin ba"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+"An kasa yin parse ga shade fakto na\"%s\" cikin launin da aka inuwantar da"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Shade fakto \"%s\" wanda ke cikin launin da aka inuwantar da, korau ne"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "An kasa yin parse ga launin \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Salon maganar ajiya na ƙunsa da baƙin '%s' wanda ba'a yarda ba "
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Salon maganar ajiya na ƙunsa da tsarin adana lambobi na flotin point na '%s' "
+"da aka kasa yin parse"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Salon maganar ajiya na ƙunsa da inteja '%s' da aka kasa yin parse"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Salon maganar ajiya na ƙunsa da afareta wanda ba'a sani ba a wajen fara "
+"wannan rubutu : \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Babu komai cikin salon maganar ajiya ko kuma ba'a gane shi ba"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Salon maganar ajiya na bada sakammako cikin rabawa da sifiri"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Salon maganar ajiya na ƙoƙarin yin amfani da afaretar mod kan tsarin adana "
+"lambobi na flotin-point"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Salon maganar ajiya na da wata afareta \"%s\" inda aka saurari wani operand"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Salon maganar ajiya na da wani operand inda aka saurari wata afareta"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Salon maganar ajiya ta ƙare da wata afareta maimakon wata operand"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Salon maganar ajiya na da afaretar \"%c\" mai bin afaretar \"%c\" kuma babu "
+"wani operand tsakanin su"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Salon maganar ajiya na da veriyabur ko kwanstant wanda ba'a sani ba \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, fuzzy, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Babu komai cikin salon maganar ajiya ko kuma ba'a gane shi ba"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Salon maganar ajiya na da wata rufaffiyar baka-biyu mai maras buɗaɗɗen baka-"
+"biyu"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Salon maganar ajiya ta sami wata buɗaɗɗiyar baka biyu mai maras rufaffiyar "
+"baka biyu"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Kamar salon maganar ajiya bai da wasu afareta ko operands"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, fuzzy, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr ""
+"Jigon ya ƙunsa da wani salon magana \"%s\" wanda ya jawo wani kuskure: %s\n"
+
+#: ../src/ui/theme.c:4155
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Tilas ne a ƙayyade <aikin maɓalli=\"%s\" state=\"%s\" duro_ops=\"komene ne\"/"
+"> wa wannan salon firam"
+
+#: ../src/ui/theme.c:4635 ../src/ui/theme.c:4660
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Wanda ya ɓata <halin firam=\"%s\" sake girma=\"%s\" zura ido=\"%s\" salo="
+"\"komene ne\"/>"
+
+#: ../src/ui/theme.c:4704
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "An kasa loda jigon \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4834 ../src/ui/theme.c:4841 ../src/ui/theme.c:4848
+#: ../src/ui/theme.c:4855 ../src/ui/theme.c:4862
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Babu <%s> tsari wa jigon \"%s\""
+
+#: ../src/ui/theme.c:4870
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Babu salon firam da aka daidaita wa nau'in taga \"%s\" cikin jigon \"%s\", "
+"ƙara wata ƙanshi na <nau'in taga=\"%s\" salon_daidaita=\"komene ne\"/>"
+
+#: ../src/ui/theme.c:5295 ../src/ui/theme.c:5357 ../src/ui/theme.c:5420
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Tilas ne babbaƙu wanda mai amfani da-ya bayyana, su fara da baƙi babba; \"%s"
+"\" bai yi"
+
+#: ../src/ui/theme.c:5303 ../src/ui/theme.c:5365 ../src/ui/theme.c:5428
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "An riga an bayyana babbƙu na \"%s\""
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Babu halin \"%s\" kan ƙanshin <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Layi %d baƙi %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "An maimaita halin \"%s\" sau biyu kan ƙanshi <%s> guda"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Halin \"%s\" na da inganci kan <%s> ƙanshi na cikin wannan muhalli"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Tilas ne inteja na %ld ya zama tabbatacce"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Inteja %ld ya yi girma ainun, iyakan da ake buƙata yanzu shine %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "An kasa yin parse \"%s\" kamar wata shirin lissafa da adana alƙalami"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+"Tilas ne kimar Bookean su zama na \"gaske\" ko \"ƙarya\" ba na \"%s\" ba"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Ana son kusurwa ta tsaya tsakanin 0.0 da 360.0, shine %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Ana so alfa ta tsaya tsakanin 0.0 (wanda ba ya ganuwa) da 1.0 (cikakken "
+"shirin opaque), shine %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Sikeli na suna mai maras inganci \"%s\" (ana so ya zama ɗaya cikin xx-ƙarami,"
+"x-ƙarami,ƙarami,madaidaici,babba,x-babba,xx-babba)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> sunan \"%s\" da aka amfani da na biyu"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "ba'a bayyana <%s> uwar \"%s\" ba"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Ba'a bayyana <%s> jometiri \"%s\" ba"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> sai ka ƙayyada ko wani jometiri ko kuma wata uwa da ke da wani jometiri"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Nau'in da ba'a sani ba \"%s\" kan ƙanshin <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "tsarin_salon da ba'a sani ba \"%s\" kan ƙanshin <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "An riga an raba wani tsarin salo ga nau'in taga \"%s\""
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2732
+#: ../src/ui/theme-parser.c:2778 ../src/ui/theme-parser.c:2926
+#: ../src/ui/theme-parser.c:3118 ../src/ui/theme-parser.c:3156
+#: ../src/ui/theme-parser.c:3194 ../src/ui/theme-parser.c:3232
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Ba'a yarda da ƙanshin <%s> a ƙasan <%s> ba"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+#, fuzzy
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"An kasa ƙayyade maɓallin_faɗi/maɓallin_tsawo tare da kuma bambancin faɗi da "
+"tsayi wa maɓallun"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Ba'a san nisan \"%s\" ba"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Bambancin faɗi da tsayi \"%s\" da ba'a sani ba"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Ba'a san gefen \"%s\" ba"
+
+#: ../src/ui/theme-parser.c:1776
+#, fuzzy, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Babu halin \"kusurwar_farawa\" kan ƙanshin <%s>"
+
+#: ../src/ui/theme-parser.c:1783
+#, fuzzy, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Babu halin \"kusurwar_iyakaci\" kan ƙanshin <%s>"
+
+#: ../src/ui/theme-parser.c:2023
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Ba'a gane kimar \"%s\" wa irin grediyent ba"
+
+#: ../src/ui/theme-parser.c:2101 ../src/ui/theme-parser.c:2476
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Ban gane nau'in \"%s\" na cikawa wa ƙanshin <%s> ba"
+
+#: ../src/ui/theme-parser.c:2268 ../src/ui/theme-parser.c:2351
+#: ../src/ui/theme-parser.c:2414
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Ban gane halin \"%s\" wa ƙanshin <%s> ba"
+
+#: ../src/ui/theme-parser.c:2278 ../src/ui/theme-parser.c:2361
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Ban gane inuwar \"%s\" wa ƙanshin <%s> ba"
+
+#: ../src/ui/theme-parser.c:2288
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Ban gane kibiyar \"%s\" wa ƙanshin <%s> ba"
+
+#: ../src/ui/theme-parser.c:2588 ../src/ui/theme-parser.c:2684
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Babu <duro_ops> mai suna \"%s\" da aka bayyana"
+
+#: ../src/ui/theme-parser.c:2600 ../src/ui/theme-parser.c:2696
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+"Idan an tsira da duro_ops \"%s\" nan, zai ƙiƙiro wani matsalar zagaye-zagaye"
+
+#: ../src/ui/theme-parser.c:2811
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Wurin da ba'a sani ba na \"%s\" wa ɗan firam"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Salon firam ya riga yana da wani ɗan firam a wurin %s"
+
+#: ../src/ui/theme-parser.c:2836 ../src/ui/theme-parser.c:2911
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Babu <duro_ops> mai sunan \"%s\" da aka bayyana"
+
+#: ../src/ui/theme-parser.c:2865
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Aikin da ba'a sani ba na \"%s\" wa maɓalli"
+
+#: ../src/ui/theme-parser.c:2874
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2886
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Halin da ba'a sani ba na \"%s\" wa maɓalli"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Salon firam ya riga yana da wani maɓalli wa aikin %s halin %s"
+
+#: ../src/ui/theme-parser.c:2965
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" ba wani kima mai inganci wa halin zura ido bane"
+
+#: ../src/ui/theme-parser.c:2974
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" ba wata kima mai inganci wa halin matsayi bane"
+
+#: ../src/ui/theme-parser.c:2984
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Ba'a bayyana wata salo mai suna \"%s\" ba"
+
+#: ../src/ui/theme-parser.c:3005 ../src/ui/theme-parser.c:3028
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" ba wata kima mai inganci wa halin sake girma ba"
+
+#: ../src/ui/theme-parser.c:3039
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Bai kamata ana da halin \"sake girma\" kan ƙanshi na <%s> wa halayen da aka "
+"faɗaɗa/inuwantar da"
+
+#: ../src/ui/theme-parser.c:3053
+#, fuzzy, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Bai kamata ana da halin \"sake girma\" kan ƙanshi na <%s> wa halayen da aka "
+"faɗaɗa/inuwantar da"
+
+#: ../src/ui/theme-parser.c:3067 ../src/ui/theme-parser.c:3089
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "An riga an ƙayyade salo wa halin %s sake girma %s zura ido %s"
+
+#: ../src/ui/theme-parser.c:3078 ../src/ui/theme-parser.c:3100
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "An riga an ƙayyade salo wa halin %s zura ido %s"
+
+#: ../src/ui/theme-parser.c:3139
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ba za'a iya sami duro_ops guda biyu wa wani <gutsuren> ƙanshi ba (jigon ya "
+"ƙayyade wani halin duro_ops da kuma wani ƙanshi na <duro_ops>, ko kuma ya "
+"ƙayyade ƙanshi guda biyu)"
+
+#: ../src/ui/theme-parser.c:3177
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ba za'a iya sami duro_ops guda biyu wa wani <maɓallin> ƙanshi ba (jigon ya "
+"ƙayyade wani halin duro_ops da kuma wata ƙanshi na <duro_ops>, ko kuma ya "
+"ƙayyade ƙanshi guda biyu)"
+
+#: ../src/ui/theme-parser.c:3215
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ba za'a iya sami wani duro_ops wa wani ƙanshi na <alamar_mazaɓa> ba (jigon "
+"ya ƙayyade wani halin duro_ops da kuma wani ƙanshi na <duro_ops>, ko kuma ya "
+"ƙayyade ƙanshi guda biyu)"
+
+#: ../src/ui/theme-parser.c:3263
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+"Tilas ne ƙanshi na waje cikin jigon ya zama <jigon_marco> ba <%s> ba"
+
+#: ../src/ui/theme-parser.c:3283
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Ba'a yarda da ƙanshi na <%s> cikin wani ƙanshi na name/author/date/"
+"description ba"
+
+#: ../src/ui/theme-parser.c:3288
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Ba'a yarda da ƙanshi na <%s> cikin wani ƙanshi na <kullum> ba"
+
+#: ../src/ui/theme-parser.c:3300
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Ba'a yarda da ƙanshi na <%s> cikin wani ƙanshi na distance/border/"
+"aspect_ratio ba"
+
+#: ../src/ui/theme-parser.c:3322
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Ba'a yarda da ƙanshi na <%s> cikin ƙanshi na wani aikin duro ba"
+
+#: ../src/ui/theme-parser.c:3332 ../src/ui/theme-parser.c:3362
+#: ../src/ui/theme-parser.c:3367 ../src/ui/theme-parser.c:3372
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Ba'a yarda da ƙanshi na <%s> cikin wani ƙanshi na <%s> ba"
+
+#: ../src/ui/theme-parser.c:3594
+msgid "No draw_ops provided for frame piece"
+msgstr "Babu duro_ops da aka samar wa gutsuren firam"
+
+#: ../src/ui/theme-parser.c:3609
+msgid "No draw_ops provided for button"
+msgstr "Babu duro_ops da aka samar wa maɓalli"
+
+#: ../src/ui/theme-parser.c:3661
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Ba'a yarda da rubutu cikin ƙanshi na <%s> ba"
+
+#: ../src/ui/theme-parser.c:3716
+msgid "<name> specified twice for this theme"
+msgstr "<suna> da aka ƙayyade sau biyu wa wannan jigo"
+
+#: ../src/ui/theme-parser.c:3727
+msgid "<author> specified twice for this theme"
+msgstr "<marubuci> da aka ƙayyade sau biyu wa wannan jigon"
+
+#: ../src/ui/theme-parser.c:3738
+msgid "<copyright> specified twice for this theme"
+msgstr "<hakkin mallaka> da aka ƙayyade sau biyu wa wannan jigon"
+
+#: ../src/ui/theme-parser.c:3749
+msgid "<date> specified twice for this theme"
+msgstr "<kwanan wata> da aka ƙayyade sau biyu wa wannan jigon"
+
+#: ../src/ui/theme-parser.c:3760
+msgid "<description> specified twice for this theme"
+msgstr "<kwatance> da aka ƙayyade sau biyu wa wannan jigon"
+
+#: ../src/ui/theme-parser.c:4027
+#, fuzzy, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "An kasa fdbuɗe() fayil ɗin rajistan ayuka na %s: %s\n"
+
+#: ../src/ui/theme-parser.c:4083
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+"Fayil ɗin jigo na %s bai ƙunsa da wata ƙanshi na tushen <jigon_marco> ba"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Windows"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Windows/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Windows/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Windows/_Modal dialog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Windows/_Utility"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Splashscreen"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Windows/_Top dock"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Windows/_Bottom dock"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Windows/_Left dock"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Windows/_Right dock"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Windows/_All docks"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Windows/Des_ktop"
+
+#: ../src/ui/theme-viewer.c:135
+msgid "Open another one of these windows"
+msgstr "Buɗe wani na waɗannan tagogi"
+
+#: ../src/ui/theme-viewer.c:142
+msgid "This is a demo button with an 'open' icon"
+msgstr "Wannan wani maɓalli na gwaji ne mai alamar 'buɗe'"
+
+#: ../src/ui/theme-viewer.c:149
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Wannan wani maɓalli na gwaji ne mai alamar 'daina'"
+
+#: ../src/ui/theme-viewer.c:242
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+"Wannan wani samfurin saƙo na cikin wani samfurin zauren akwatin bayani ne"
+
+#: ../src/ui/theme-viewer.c:325
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Abun mazaɓa na ƙarya %d\n"
+
+#: ../src/ui/theme-viewer.c:359
+msgid "Border-only window"
+msgstr "Taga na gefe-kawai"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Bar"
+msgstr "Layi"
+
+#: ../src/ui/theme-viewer.c:378
+msgid "Normal Application Window"
+msgstr "Tagan Shiryoyin Ayuka na Kullum"
+
+#: ../src/ui/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Akwatin Tattaunawa"
+
+#: ../src/ui/theme-viewer.c:386
+msgid "Modal Dialog Box"
+msgstr "Akwatin Tattaunawa na Modal"
+
+#: ../src/ui/theme-viewer.c:390
+msgid "Utility Palette"
+msgstr "Farentin Amfani"
+
+#: ../src/ui/theme-viewer.c:394
+msgid "Torn-off Menu"
+msgstr "Mazaɓen da Ake-Cire"
+
+#: ../src/ui/theme-viewer.c:398
+msgid "Border"
+msgstr "Gefe"
+
+#: ../src/ui/theme-viewer.c:726
+#, c-format
+msgid "Button layout test %d"
+msgstr "Gwajin tsarin maɓalli %d"
+
+#: ../src/ui/theme-viewer.c:755
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g millisakan da za'a ja firam guda na taga"
+
+#: ../src/ui/theme-viewer.c:798
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Amfani: mai kallon-jigon-metaciti [SUNANJIGO]\n"
+
+#: ../src/ui/theme-viewer.c:805
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Kuskure wajen loda jigo: %s\n"
+
+#: ../src/ui/theme-viewer.c:811
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "An loda jigon \"%s\" cikin %g sakan\n"
+
+#: ../src/ui/theme-viewer.c:852
+msgid "Normal Title Font"
+msgstr "Nau'in Rubutun Suna na Kullum"
+
+#: ../src/ui/theme-viewer.c:858
+msgid "Small Title Font"
+msgstr "Nau'in Rubutun Suna mai Ƙarami"
+
+#: ../src/ui/theme-viewer.c:864
+msgid "Large Title Font"
+msgstr "Nau'in Rubutun Suna mai Babba"
+
+#: ../src/ui/theme-viewer.c:869
+msgid "Button Layouts"
+msgstr "Tsarin Maɓallu"
+
+#: ../src/ui/theme-viewer.c:874
+msgid "Benchmark"
+msgstr "Bancmak"
+
+#: ../src/ui/theme-viewer.c:921
+msgid "Window Title Goes Here"
+msgstr "Sunan Taga Zai Zo Nan"
+
+#: ../src/ui/theme-viewer.c:1025
+#, fuzzy, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"An zana %s firam cikin %g sakan na gefen-kilayant (%g millisakan ga kowani "
+"firam) da %g sakan na lokacin agogo na bango tare da arzikun savan X (%g "
+"millisakan ga kowani firam)\n"
+
+#: ../src/ui/theme-viewer.c:1244
+msgid "position expression test returned TRUE but set error"
+msgstr "an maida gwajin salon maganan wuri GASKE NE amma ya daidaita kure"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"an maida gwajin salon maganar wuri ƘARYA NE amma, bai daidaita kuren ba"
+
+#: ../src/ui/theme-viewer.c:1250
+msgid "Error was expected but none given"
+msgstr "Ana zaton kuskure amma babu wanda aka ba da"
+
+#: ../src/ui/theme-viewer.c:1252
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "An yi zaton kuskuren %d amma an ba da %d"
+
+#: ../src/ui/theme-viewer.c:1258
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Ba'a yi zaton kuskure ba amma an maida guda: %s"
+
+#: ../src/ui/theme-viewer.c:1262
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "kimar x shine %d, an yi zaton %d"
+
+#: ../src/ui/theme-viewer.c:1265
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "kimar y shine %d, an yi zaton %d"
+
+#: ../src/ui/theme-viewer.c:1330
+#, fuzzy, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"an yi parse ga salon maganganun wurare cikin %g sakan (matsakaicin %g "
+"sakan)\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d da aka adana cikin maɓallin MateConf %s ba mai yawan filayen aiki mai "
+#~ "kyau bane, iyakarsa yanzu shine %d\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "Tilas ne a ƙayyade <aikin alamar_mazaɓa=\"%s\" hali=\"%s\" duro_ops="
+#~ "\"komene ne\"/> wa wannan jigo"
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Parser na salon maganar ajiya ya tumbatse buffarsa, lallai wannan cutar "
+#~ "na Metaciti ce, amma ka tabbata kana buƙatan wani salon magana mai "
+#~ "gagarumi kamar wannan?"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Kuskure wajen gabatar da zauren akwatin bayanin-marco don ta buga "
+#~ "ɗab'in wani kure game da wata umarni: %s\n"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "An kasa karanta jigo daga fayil %s: %s\n"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Idan ka tilasa wa wannan shirin ayuka ta daina aiki, zai sa ka rasa "
+#~ "kowane canje-canjen da baka adana ba."
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Babu halin \"%s\" kan ƙanshin <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Babu halin \"alfa\" kan ƙanshin <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Babu halin \"kibiya\" kan ƙanshin <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Babu halin \"ƙasa\" kan ƙanshin <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Babu halin \"launi\" kan ƙanshin <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Babu halin \"sunanfayil\" kan ƙanshin <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Babu halin \"zura ido\" kan ƙanshi na <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Babu hali \"aiki\"kan ƙanshi na <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Babu halin \"tsawo\" kan ƙanshin <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Babu halin \"hagu\" kan ƙanshin <%s>"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Babu halin \"suna\" kan ƙanshin <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Babu halin \"wuri\" kan ƙanshi na <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Babu halin \"sake girma\" kan ƙanshi na <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Babu halin \"dama\" kan ƙanshin <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Babu halin \"inuwa\" kan ƙanshin <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Babu halin \"matsayi\" kan ƙanshi na <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Babu halin \"matsayi\" kan ƙanshin <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Babu halin \"salo\" kan ƙanshi na <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Babu halin \"sama\" kan ƙanshin <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Babu halin \"nau'i\" kan ƙanshin <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Babu halin \"kima\" kan ƙanshin <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Babu halin \"kima\" kan ƙanshin <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Babu halin \"faɗi\" kan ƙanshin <%s>"
+
+#~ msgid "No \"x\" attribute on element <%s>"
+#~ msgstr "Babi halin \"x\" kan ƙanshin <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Babu halin \"x1\" kan ƙanshin <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Babu halin \"x2\" kan ƙanshin <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Babu halin \"y\" kan ƙanshin <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Babu halin \"y1\" kan ƙanshin <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Babu halin \"y2\" kan ƙanshin <%s>"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "Babu duro_ops da aka samar wa alamar mazaɓa"
+
+#~ msgid "On _Top"
+#~ msgstr "Kan _Sama"
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Wasu shiryoyin ayuka na ƙarya buƙatuwa ta hanyoyi masu ba da sakamakon "
+#~ "kuren tsarin manaja. Misali, Ya kamata Metaciti ta saka duk zauren "
+#~ "akwatunan bayanai cikin wani wuri mai bai ɗaya ta fuskar uwar tagan su. "
+#~ "Wannan na buƙata a ƙyale ƙayyadaddun wurare na-shirin ayuka wa zauren "
+#~ "akwatunan bayanai. Amma, wasu sigogi na Java/Swing na alamtar da mazaɓen "
+#~ "su masu nunowa da ɓacewa kamar zauren akwatunan bayanai, sabo da haka, ya "
+#~ "zama tilas Metaciti ta kashe daidaita wurin zauren akwatin bayani don ta "
+#~ "yarda mazaɓa su yi aiki cikin shiryoyin ayuka na Java da aka ƙarye. Akwai "
+#~ "misalai na irin waɗannan masu dama. Wannan zaɓe na saka Marco kan-"
+#~ "cikakken shirin daidai, wanda kila ke ba da UI mai matsakaicin kyau, idan "
+#~ "ba ka buƙatan tafiyar da apps a ƙarye. Da tausayi, amma, sai an kunna "
+#~ "byfass ta difwalt, haƙiƙanin duniya mumunar wuri ce. Wasu cikin bypass "
+#~ "watau, bypass ne na maƙurar tsarin kwamfyutan su, saboda haka, ba za'a "
+#~ "iya gyara cutar da ke cikin shirin babu-byfass idan ba'a yi wa spec gyara "
+#~ "ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aiki da ke saman filin aiki da ake kai "
+#~ "yanzu. Tsarin yana kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe "
+#~ "masu kanana da babba, da kuma taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da "
+#~ "\"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an "
+#~ "kashe\", to, ba za'a sami wata kibaindin wa wannan aiki ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aiki da ke ƙarƙashin filin aikin da ake "
+#~ "kai yanzu. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe "
+#~ "masu kanana da babba, da kuma taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da "
+#~ "\"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa wani jumlar musamman na "
+#~ "\"an kashe\", to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin da ke hagun filin aiki da ake kai "
+#~ "yanzu. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe "
+#~ "masu kanana da babba, da kuma taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da "
+#~ "\"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"kashe"
+#~ "\", to ba za'a sami wata keybindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin da ke gefen dama na filin aikin da "
+#~ "ake kai yanzu. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe "
+#~ "masu kanana da babba,da kuma taƙaitaccen sunaye kamar \"&lt;Ctr&gt;\" da "
+#~ "\"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an "
+#~ "kashe\", to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aiki 1. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu ƙanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin 10. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shfit&gt;&lt;F1\". Parser ɗin na da ɗan sassauci "
+#~ "kuma yana yarda da baƙaƙƙe masu ƙanana da babba, da kuma taƙaitaccen "
+#~ "sunaye kamar \"&lt;Shift&gt;\" da \"&lt;Ctrl&gt;\". Idan ka daidaita "
+#~ "zaɓen zuwa jumlar musamma na \"an kashe\", to ba za'a sami wata kibaindin "
+#~ "wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aiki 11. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu ƙanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin 12. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu ƙanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin 2. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "saussauci kuma yana yarda da baƙaƙƙke masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin 3. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin 4. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin 5. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar\"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin 6. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin 7. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin 8. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke sauya zuwa filin aikin 9. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibainding da ake amfani da wajen kunna mazaɓen taga. Tsarin na kama da "
+#~ "\"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da "
+#~ "ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen shigar da \"shirin motsi\" da yi amfani "
+#~ "da ferentin aninai don ka fara motsa wani taga. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" oko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen shigar da \"shirin sake girma\" da yi "
+#~ "amfani da ferentin aninai don ka fara sake girmar wani taga. Tsarin na "
+#~ "kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser "
+#~ "ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, "
+#~ "da kuma taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". "
+#~ "Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a "
+#~ "sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen ɓoye duk tagogi na kullum da kuma "
+#~ "daidaita zura ido zuwa bangon kwamfyutan tebur. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassuci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen faɗaɗa wani taga. Tsarin na kama da "
+#~ "\"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da "
+#~ "ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen tsuke wani taga. Tsarin na kama da "
+#~ "\"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da "
+#~ "ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana ko babba, da kuma "
+#~ "taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka "
+#~ "daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata "
+#~ "kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga ƙasan filin aiki sau "
+#~ "ɗaya. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu "
+#~ "kanana da babba, da kuma taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da "
+#~ "\"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an "
+#~ "kashe\", to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga sau ɗaya zuwa filin aiki "
+#~ "na hagu. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe "
+#~ "masu kanana da babba, da kuma taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da "
+#~ "\"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an "
+#~ "kashe\", to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa taga sau ɗaya zuwa filin aiki na "
+#~ "dama. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu "
+#~ "kanana da babba, da kuma taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da "
+#~ "\"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an "
+#~ "kashe\", to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa taga sau ɗaya zuwa filin aiki na "
+#~ "sama. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". Parse ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana "
+#~ "ko babba, da kuma taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", "
+#~ "to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga zuwa filin aikin 1. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parse ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana ko "
+#~ "babba, da kuma taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;"
+#~ "\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba "
+#~ "za'a iya sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibainding da aka amfani da wajen motsa wani taga zuwa filin aikin 10. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;"
+#~ "\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba "
+#~ "za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga zuwa filin aiki na 11. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\"."
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa wani jumlar musamman na \"an kashe"
+#~ "\", to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga zuwa filin aiki na 12. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa wani jumlar musamman na \"an kashe"
+#~ "\", to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga zuwa filin aiki na 2. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", "
+#~ "to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da aka amfani da wajen motsa wani taga zuwa filin aiki na 3. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumar musamman na \"an kashe\", "
+#~ "to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga zuwa filin aiki na 4. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", "
+#~ "to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga zuwa filin aiki na 5. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", "
+#~ "to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga zuwa filin aiki na 6. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", "
+#~ "to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga zuwa filin aiki na 7. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", "
+#~ "to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga zuwa filin aiki na 8. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa wani jumlar musamman na \"an kashe"
+#~ "\", to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa wani taga zuwa filin aiki na 9. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", "
+#~ "to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa shirin zura ido ta baya-baya "
+#~ "tsakanin fanel da kwamfyutan tebur, idan ana amfani da taga mai nunowa da "
+#~ "ɓacewa. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe "
+#~ "masu kanana da babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;"
+#~ "Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar "
+#~ "musamman na \"an kashe\", to ba za'a sami wata kibaindin wa wannan aikin "
+#~ "ba."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa shirin zura ido ta baya-baya "
+#~ "tsakanin fanel da kwamfyutan tebur, ba tare da wani taga mai nunowa da "
+#~ "ɓacewa ba. Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu "
+#~ "kanana da babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" "
+#~ "da \"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an "
+#~ "kashe\", to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa shirin zura ido ta baya-baya "
+#~ "tsakanin tagogi ba tare da taga mai nunowa da ɓacewa ba. Idan an danna "
+#~ "maɓallin \"shift\" aka riƙe shi tare da wannan baindin, watau, zai sake "
+#~ "nusar da shi gaba. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana yarda "
+#~ "da baƙaƙƙe masu kanana da babba, da kuma taƙaitaccen sunaye kamar misali "
+#~ "\"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar "
+#~ "musamman na \"an kashe\", to ba za'a sami wata kibaindin wa wannan aikin "
+#~ "ba."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa shirin zura ido ta baya-baya "
+#~ "tsakanin tagogi, idan ana amfani da taga mai nunowa da ɓacewa. Idan an "
+#~ "danna maɓallin \"shift\" aka riƙe shi tare da wannan baindin, watau, zai "
+#~ "sa a sake nusar da shi gaba. Tsarin na kama da \"&lt;Control&gt;a\" ko "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana "
+#~ "yarda da baƙaƙƙe masu kanana da babba, da kuma taƙaitaccen sunaye kamar "
+#~ "misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen jumlar "
+#~ "musamman na \"an kashe\", to ba za'a sami wata kibaindin wa wannan aikin "
+#~ "ba."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa shirin zura ido tsakanin fanel da "
+#~ "kwamfyutan tebur, idan ana amfani da taga mai nunowa da ɓacewa. Tsarin na "
+#~ "kama da \"&lt;Control&gt;a\" da \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser "
+#~ "ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, "
+#~ "da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;"
+#~ "\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba "
+#~ "za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa shirin zura ido tsakanin fanel da "
+#~ "kwamfyutan tebur, ba tare da taga mai nunowa da ɓacewa ba. Tsarin na kama "
+#~ "da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na "
+#~ "da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan "
+#~ "ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami "
+#~ "wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa shirin zura ido tsakanin tagogi ba "
+#~ "tare da taga mai nunowa da ɓacewa ba. (&lt; Alt&gt;Eskef ta gargajiya) "
+#~ "Idan an danna maɓallin \"shift\" aka riƙe shi a lokacin da ake amfani da "
+#~ "wannan kibaindin, watau, zai soke wurin da ake nufa. Tsarin na kama da "
+#~ "\"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da "
+#~ "ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan "
+#~ "ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami "
+#~ "wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen motsa shirin zura ido tsakanin tagogi, "
+#~ "idan ana amfani da taga mai nunowa da ɓacewa. (&lt;Alt&gt;Tab ta "
+#~ "gargajiya) Idan an danna maɓallin \"shift\" aka riƙe shi a lokacin da ake "
+#~ "amfani da wannan baindin, watau, zai nusar da tafiyarsa ta baya-baya. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", "
+#~ "to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen yin toggle kullum a kai. Za'a iya ganin "
+#~ "wani taga da ke sama kullum fiye da tagogi masu zoɓa junansu. Tsarin na "
+#~ "kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser "
+#~ "ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, "
+#~ "da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;"
+#~ "\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba "
+#~ "za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen yin toggle zuwa shirin cikakken fuska. "
+#~ "Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da "
+#~ "babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;"
+#~ "Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", "
+#~ "to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen samun iyaka amfanin toggle. Tsarin na "
+#~ "kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser "
+#~ "ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, "
+#~ "da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;"
+#~ "\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba "
+#~ "za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen yin toggle zuwa halin yin inuwa/cire "
+#~ "inuwa. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe "
+#~ "masu kanana da babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;"
+#~ "Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar "
+#~ "musamman na \"an kashe\", to ba za'a sami wata kibaindin wa wannan aikin "
+#~ "ba."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen yin toggle ko da tagan na kan duk "
+#~ "filayen aiki ko kuma filin aiki guda kawai. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu kanana ko babba, da kuma "
+#~ "taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan "
+#~ "ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami "
+#~ "wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ake amfani da wajen cire halin faɗaɗawa ga taga. Tsarin na "
+#~ "kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser "
+#~ "ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, "
+#~ "da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;"
+#~ "\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba "
+#~ "za'a sami wata kibaindin wa wannan zaɓe ba."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ke nuna akwatin tattaunawa na \"A Tafiyar da Shirin Ayuka\" "
+#~ "na fanel. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe "
+#~ "masu kanana da babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;"
+#~ "Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar "
+#~ "musamman na \"an kashe\", to ba za'a sami wata kibaindin wa wannan aikin "
+#~ "ba."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kibaindin da ke kiran wata tasha. Tsarin na kama da \"&lt;Control&gt;a\" "
+#~ "ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma "
+#~ "yana yarda da baƙaƙƙe masu kanana da babba, da kuma taƙaitaccen sunaye "
+#~ "kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen "
+#~ "zuwa jumlar musamman na \"an kashe\", to ba za'a sami wata kibaindin wa "
+#~ "wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ke kiran amfanin hoton fuskar kwamfytua na fanel don ya ɗau "
+#~ "hoton wani taga. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe "
+#~ "masu kanana da babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;"
+#~ "Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar "
+#~ "musamman na \"an kashe\", to ba za'a sami wata kibaindin wa wannan aikin "
+#~ "ba."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kibaindin da ke kiran amfanin hoton fuskar kwamfyuta na fanel. Tsarin na "
+#~ "kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser "
+#~ "ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, "
+#~ "da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;"
+#~ "\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba "
+#~ "za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kibaindin da ke nuna babbar mazaɓen fanel. Tsarin na kama da \"&lt;"
+#~ "Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan "
+#~ "sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan "
+#~ "ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami "
+#~ "wata kibaindin wa wannan aikin ba."
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "Jigon ya riga ya sami wani mazaɓa wa aikin %s hali %s"
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another window, it raises the window above "
+#~ "other windows. If the window is already fully visible, it lowers the "
+#~ "window below other windows. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Wannan kibaindin na canzawa ko da akwai wani taga da ke sama ko kasan "
+#~ "waccan tagogi. Idan wata taga ta rufe tagan, yakan ɗaga tagan kan waccan "
+#~ "tagogi. Idan ana iya ganin cikakken siffar tagan, yana sauƙar da tagan "
+#~ "ƙarƙashin waccan tagogi. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da ɗan sassauci kuma yana yarda "
+#~ "da baƙaƙƙe masu kanana da babba, da kuma taƙaitaccen sunaye kamar misali "
+#~ "\"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar "
+#~ "musamman na \"an kashe\", to ba za'a sami wata kibaindin wa wannan aikin "
+#~ "ba."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Wannan kibaindin na sauƙar da wani taga ƙarƙashin waccan tagogi. Tsarin "
+#~ "na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser "
+#~ "ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, "
+#~ "da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;"
+#~ "\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba "
+#~ "za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Wannan kibaindin na ɗaga taga saman waccan tagogi. Tsarin na kama da "
+#~ "\"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;F1\". Parser ɗin na da "
+#~ "ɗan sassauci kuma yana yarda da baƙaƙƙe masu kanana da babba, da kuma "
+#~ "taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" da \"&lt;Ctrl&gt;\". Idan "
+#~ "ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba za'a sami "
+#~ "wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Wannan kibaindin na sake girmar wani taga don ya cika fili a kwance da ke "
+#~ "nan. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an kashe\", to ba "
+#~ "za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Wannan kibaindin na sake girmar wani taga don ya cika fili a tsaye da ke "
+#~ "nan. Tsarin na kama da \"&lt;Control&gt;a\" ko \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". Parser ɗin na da ɗan sassauci kuma yana yarda da baƙaƙƙe masu "
+#~ "kanana da babba, da kuma taƙaitaccen sunaye kamar misali \"&lt;Ctl&gt;\" "
+#~ "da \"&lt;Ctrl&gt;\". Idan ka daidaita zaɓen zuwa jumlar musamman na \"an "
+#~ "kashe\", to ba za'a sami wata kibaindin wa wannan aikin ba."
+
+#~ msgid ""
+#~ "This option determines the effects of double-clicking on the title bar. "
+#~ "Current valid options are 'toggle_shade', which will shade/unshade the "
+#~ "window, and 'toggle_maximize' which will maximize/unmaximize the window."
+#~ msgstr ""
+#~ "Wannan zaɓe na ƙudura amfanin danna kan layin suna sau biyu. Zaɓuɓɓuka "
+#~ "masu inganci yanzu sune 'toggle_shade', watau aikinsa, zai inuwantar/cire "
+#~ "inuwa ga taga, da 'faɗaɗa_toggle' da zai faɗaɗa/ cire faɗaɗawa ga taga."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Yi toggle kullum kan hali"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Halin da ba'a sani ba %s kan ƙanshin <jometiri>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Halin da ba'a sani ba %s kan ƙanshin da aka <faɗaɗa>"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Halin da ba'a sani ba %s kan ƙanshin <zaman shawarar_metaciti>"
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Wani aiki da ba'a sani \"%s\" wa alamar mazaɓa"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Wata hali da ba'a sani na \"%s\" wa alamar mazaɓa"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Cire Shirin Faɗaɗawa ga Taga"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Cire faɗaɗawa ga taga"
+
+#~ msgid ""
+#~ "marco [--sm-disable] [--sm-client-id=ID] [--sm-save-file=FILENAME] [--"
+#~ "display=DISPLAY] [--replace] [--version]\n"
+#~ msgstr ""
+#~ "marco [--sm--kashe] [--sm-kilayant-id=ID] [--sm-adana-"
+#~ "fayil=SUNANFAYIL] [--nuna=NUNA] [--maye] [--siga]\n"
diff --git a/po/he.po b/po/he.po
new file mode 100644
index 00000000..20eae1c0
--- /dev/null
+++ b/po/he.po
@@ -0,0 +1,3736 @@
+# translation of marco.HEAD.he.po to Hebrew
+# translation of marco.HEAD.po to Hebrew
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) 2005 THE PACKAGE'S COPYRIGHT HOLDER
+# Gil 'Dolfin' Osher <[email protected]>, 2002,2003.
+# Yuval Tanny, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD.he\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-05-27 13:46+0300\n"
+"PO-Revision-Date: 2010-05-27 13:48+0200\n"
+"Last-Translator: Yaron Shahrabani <[email protected]>\n"
+"Language-Team: Hebrew <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10.2\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "שולחן עבודה"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "ניהול חלונות"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "אירוע צלצול"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Unknown window information request: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> אינו מגיב."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"ניתן לבחור האם להמתין זמן מה עד להמשך פעולת היישום או לאלץ את סגירת היישום "
+"לחלוטין."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_המתן"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_הכרח יציאה"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "נכשל בקבלת שם המארח: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Missing %s extension required for compositing"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Failed to open X Window System display '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"אבדה התקשורת עם התצוגה '%s';\n"
+"כנראה ושרת X נסגר או שהרגת/הרסת\n"
+"את מנהל החלונות.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "שגיאת קלט/פלט חמורה %d (%s) בתצוגה '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "תוכנית אחרת כבר משתמשת במקש %s עם המקש %x כצירוף\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"ארעה שגיאה בהרצת <tt>%s</tt>:‏\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "אף פקודה %d לא הוגדרה.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "אף פקודת מסוף לא הוגדרה.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Disable connection to session manager"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Replace the running window manager with Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Specify session management ID"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X Display to use"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Initialize session from savefile"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Print version"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Make X calls synchronous"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Turn compositing on"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Turn compositing off"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "אין ליצור חלונות על כל המסך כך שיהיו מוגדלים וללא עיצוב"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Failed to scan themes directory: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Failed to restart: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf key '%s' is set to an invalid value\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d stored in MateConf key %s is out of range %d to %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf key \"%s\" is set to an invalid type\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Could not parse font description \"%s\" from MateConf key %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Error setting number of workspaces to %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "סביבת עבודה %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Error setting name for workspace %d to \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Error setting compositor status: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Screen %d on display '%s' is invalid\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Screen %d on display \"%s\" already has a window manager\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Could not release screen %d on display \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Could not create directory '%s': %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Could not open session file '%s' for writing: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Error writing session file '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Error closing session file '%s': %s\n"
+
+#: ../src/core/session.c:1143
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Failed to parse saved session file: %s\n"
+
+#: ../src/core/session.c:1192
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> attribute seen but we already have the session ID"
+
+#: ../src/core/session.c:1205 ../src/core/session.c:1280
+#: ../src/core/session.c:1312 ../src/core/session.c:1384
+#: ../src/core/session.c:1444
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Unknown attribute %s on <%s> element"
+
+#: ../src/core/session.c:1222
+#, c-format
+msgid "nested <window> tag"
+msgstr "nested <window> tag"
+
+#: ../src/core/session.c:1464
+#, c-format
+msgid "Unknown element %s"
+msgstr "Unknown element %s"
+
+#: ../src/core/session.c:1816
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"חלון זה אינו תומך ב־&quot;שמירת ההגדרות הנוכחיות&quot;, ויהיה צורך באתחול "
+"ידני בכניסה הבאה שלך."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Failed to open debug log: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Failed to fdopen() log file %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Opened log file %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco was compiled without support for verbose mode\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Window manager: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Bug in window manager: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Window manager warning: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Window manager error: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5660
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6225
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Application set a bogus _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (מעל %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "‏%s (כמשתמש על)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "‏%s (מעל %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "‏%s (כמשתמש אחר)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Property %s on window 0x%lx contained invalid UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Switch to workspace 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Switch to workspace 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Switch to workspace 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Switch to workspace 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Switch to workspace 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Switch to workspace 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Switch to workspace 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Switch to workspace 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Switch to workspace 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Switch to workspace 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Switch to workspace 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Switch to workspace 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Switch to workspace on the left of the current workspace"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Switch to workspace on the right of the current workspace"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Switch to workspace above the current workspace"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Switch to workspace below the current workspace"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Move between windows of an application, using a popup window"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Move backward between windows of an application, using a popup window"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Move between windows, using a popup window"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Move backward between windows, using a popup window"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Move between panels and the desktop, using a popup window"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Move backward between panels and the desktop, using a popup window"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Move between windows of an application immediately"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Move backward between windows of an application immediately"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Move between windows immediately"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Move backward between windows immediately"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Move between panels and the desktop immediately"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Move backward between panels and the desktop immediately"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Hide all normal windows and set focus to the desktop"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Show the panel's main menu"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Show the panel's \"Run Application\" dialog box"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Take a screenshot"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Take a screenshot of a window"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Run a terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Activate the window menu"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Toggle fullscreen mode"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Toggle maximization state"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Toggle whether a window will always be visible over other windows"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximize window"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restore window"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Toggle shaded state"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimize window"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Close window"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Move window"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Resize window"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Toggle whether window is on all workspaces or just one"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Move window to workspace 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Move window to workspace 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Move window to workspace 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Move window to workspace 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Move window to workspace 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Move window to workspace 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Move window to workspace 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Move window to workspace 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Move window to workspace 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Move window to workspace 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Move window to workspace 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Move window to workspace 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Move window one workspace to the left"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Move window one workspace to the right"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Move window one workspace up"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Move window one workspace down"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Raise window if it's covered by another window, otherwise lower it"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Raise window above other windows"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Lower window below other windows"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximize window vertically"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximize window horizontally"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Move window to north-west (top left) corner"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Move window to north-east (top right) corner"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Move window to south-west (bottom left) corner"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Move window to south-east (bottom right) corner"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Move window to north (top) side of screen"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Move window to south (bottom) side of screen"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Move window to east (right) side of screen"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Move window to west (left) side of screen"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Move window to center of screen"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Not implemented) Navigation works in terms of applications not windows"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Action on title bar double-click"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Action on title bar middle-click"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Action on title bar right-click"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Arrangement of buttons on the titlebar"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Automatically raises the focused window"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Commands to run in response to keybindings"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Compositing Manager"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Control how new windows get focus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Current theme"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Delay in milliseconds for the auto raise option"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determines whether Marco is a compositing manager."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Disable misfeatures that are required by old or broken applications"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Enable Visual Bell"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "If true, trade off usability for less resource usage"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modifier to use for modified window click actions"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Name of workspace"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Number of workspaces"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Run a defined command"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "System Bell is Audible"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "The name of a workspace."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "The screenshot command"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "The window screenshot command"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Use standard system font in window titles"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Visual Bell Type"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Whether raising should be a side-effect of other user interactions"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Whether to resize with the right button"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Window focus mode"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Window title font"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "שימוש: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "סגור חלון"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "תפריט חלון"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "מזער חלון"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "הגדל חלון"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "שחזר חלון"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "גלול חלון מעלה"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "בטל גלילה"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "שמור על החלון גלוי"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "בטל שמירת החלון גלוי"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "הראה בכל סביבות העבודה"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "הראה את החלון על סביבת עבודה אחת בלבד"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_מזער"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "ה_גדל"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "_שחזר"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "גלול _מעלה"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "גלול _חזרה"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_הזז"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_שנה גודל"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "הזז את שורת הכותרת על ה_מסך"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "תמיד מ_למעלה"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_הראה בכל סביבות העבודה"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "רק בסביבת עבודה _זו"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "הזז חלון לסביבת העבודה ה_שמאלית"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "הזז חלון לסביבת העבודה ה_ימנית"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "הזז חלון לסביבת העבודה למעלה"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "הזז חלון לסביבת העבודה למטה"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_סגור"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "סביבת עבודה %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "סביבת עבודה 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "סביבת עבודה %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "הזז חלון לסביבת עבודה אחרת"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "מטה"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "top"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "bottom"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "left"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "right"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "frame geometry does not specify \"%s\" dimension"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "frame geometry does not specify dimension \"%s\" for border \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Button aspect ratio %g is not reasonable"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Frame geometry does not specify size of buttons"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Gradients should have at least two colors"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Did not understand state \"%s\" in color specification"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Did not understand color component \"%s\" in color specification"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Could not parse alpha value \"%s\" in blended color"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Could not parse shade factor \"%s\" in shaded color"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Shade factor \"%s\" in shaded color is negative"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Could not parse color \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Coordinate expression contains character '%s' which is not allowed"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Coordinate expression contains integer '%s' which could not be parsed"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Coordinate expression was empty or not understood"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Coordinate expression results in division by zero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Coordinate expression had an operand where an operator was expected"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Coordinate expression ended with an operator instead of an operand"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Coordinate expression had unknown variable or constant \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Coordinate expression parser overflowed its buffer."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Coordinate expression had a close parenthesis with no open parenthesis"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Coordinate expression had an open parenthesis with no close parenthesis"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Coordinate expression doesn't seem to have any operators or operands"
+
+#: ../src/ui/theme.c:2598 ../src/ui/theme.c:2618 ../src/ui/theme.c:2638
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Theme contained an expression that resulted in an error: %s\n"
+
+#: ../src/ui/theme.c:4205
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+
+#: ../src/ui/theme.c:4713 ../src/ui/theme.c:4738
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4782
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Failed to load theme \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4912 ../src/ui/theme.c:4919 ../src/ui/theme.c:4926
+#: ../src/ui/theme.c:4933 ../src/ui/theme.c:4940
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "No <%s> set for theme \"%s\""
+
+#: ../src/ui/theme.c:4948
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+
+#: ../src/ui/theme.c:5391 ../src/ui/theme.c:5453 ../src/ui/theme.c:5516
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+
+#: ../src/ui/theme.c:5399 ../src/ui/theme.c:5461 ../src/ui/theme.c:5524
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Constant \"%s\" has already been defined"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "No \"%s\" attribute on element <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Line %d character %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Attribute \"%s\" repeated twice on the same <%s> element"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Attribute \"%s\" is invalid on <%s> element in this context"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "לא ניתן להעביר את \"%s\" כמספר שלם"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "לא ניתן להבין את התוים \"%s\" במחרוזת \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Integer %ld must be positive"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Integer %ld is too large, current max is %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Could not parse \"%s\" as a floating point number"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Boolean values must be \"true\" or \"false\" not \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Angle must be between 0.0 and 360.0, was %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> name \"%s\" used a second time"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> parent \"%s\" has not been defined"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometry \"%s\" has not been defined"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> must specify either a geometry or a parent that has a geometry"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "You must specify a background for an alpha value to be meaningful"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Unknown type \"%s\" on <%s> element"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Unknown style_set \"%s\" on <%s> element"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Window type \"%s\" has already been assigned a style set"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> is not allowed below <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Distance \"%s\" is unknown"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Aspect ratio \"%s\" is unknown"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Border \"%s\" is unknown"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "No \"start_angle\" or \"from\" attribute on element <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "No \"extent_angle\" or \"to\" attribute on element <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Did not understand value \"%s\" for type of gradient"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Did not understand fill type \"%s\" for <%s> element"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Did not understand state \"%s\" for <%s> element"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Did not understand shadow \"%s\" for <%s> element"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Did not understand arrow \"%s\" for <%s> element"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "No <draw_ops> called \"%s\" has been defined"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Including draw_ops \"%s\" here would create a circular reference"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Unknown position \"%s\" for frame piece"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Frame style already has a piece at position %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "No <draw_ops> with the name \"%s\" has been defined"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Unknown function \"%s\" for button"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Button function \"%s\" does not exist in this version (%d, need %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Unknown state \"%s\" for button"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Frame style already has a button for function %s state %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" is not a valid value for focus attribute"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" is not a valid value for state attribute"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "A style called \"%s\" has not been defined"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" is not a valid value for resize attribute"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Style has already been specified for state %s resize %s focus %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Style has already been specified for state %s focus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Outermost element in theme must be <marco_theme> not <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> is not allowed inside a <constant> element"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Element <%s> is not allowed inside a draw operation element"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> is not allowed inside a <%s> element"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "No draw_ops provided for frame piece"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "No draw_ops provided for button"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "מלל לא מורשה בתג <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> צויין פעמיים בערכת נושא זו"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Failed to find a valid file for theme %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Theme file %s did not contain a root <marco_theme> element"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Windows"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Windows/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Windows/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Windows/_Modal dialog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Windows/_Utility"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Splashscreen"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Windows/_Top dock"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Windows/_Bottom dock"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Windows/_Left dock"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Windows/_Right dock"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Windows/_All docks"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Windows/Des_ktop"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "This is a sample message in a sample dialog"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Fake menu item %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Border-only window"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Bar"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normal Application Window"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialog Box"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modal Dialog Box"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Utility Palette"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Torn-off Menu"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Border"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Button layout test %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milliseconds to draw one window frame"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Usage: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Error loading theme: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Loaded theme \"%s\" in %g seconds\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Normal Title Font"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Small Title Font"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Large Title Font"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Button Layouts"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Benchmark"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Window Title Goes Here"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "position expression test returned TRUE but set error"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "position expression test returned FALSE but didn't set error"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Error was expected but none given"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Error %d was expected but %d given"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Error not expected but one was returned: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x value was %d, %d was expected"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y value was %d, %d was expected"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+
+#~ msgid "Failed to read saved session file %s: %s\n"
+#~ msgstr "Failed to read saved session file %s: %s\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Open another one of these windows"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "This is a demo button with an 'open' icon"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "This is a demo button with a 'quit' icon"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "נכשל בהעברת ההודעה \"%s\" מתהליך תיבת דו-השיח\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "שגיאה בקריאה מתהליך הצגת תיבת דו-שיח: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr "שגיאה בהפעלת תיבת דו-שיח של מטאסיטי השואלת אם להרוג יישום: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "כותרת"
+
+#~ msgid "Class"
+#~ msgstr "מחלקה"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "ארעה שגיאה בהפעלת \"%s\":\n"
+#~ "%s."
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> צויין פעמיים בערכת נושא זו"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> צויין פעמיים בערכת נושא זו"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> צויין פעמיים בערכת נושא זו"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> צויין פעמיים בערכת נושא זו"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "שגיאה בהפעלת תיבת דו-שיח של מטאסיטי כדי להדפיס שגיאה על הפקודה: %s\n"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "Type of %s was not integer"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Unknown attribute %s on <marco_session> element"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Unknown attribute %s on <maximized> element"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Unknown attribute %s on <geometry> element"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Toggle always on top state"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Unmaximize window"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "שחזר חלון"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "No \"%s\" attribute on <%s> element"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Theme already has a fallback icon"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Theme already has a fallback mini_icon"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "No \"name\" attribute on element <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "No \"value\" attribute on element <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "No \"top\" attribute on element <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "No \"bottom\" attribute on element <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "No \"left\" attribute on element <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "No \"right\" attribute on element <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "No \"color\" attribute on element <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "No \"x1\" attribute on element <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "No \"y1\" attribute on element <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "No \"x2\" attribute on element <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "No \"y2\" attribute on element <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "No \"y\" attribute on element <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "No \"width\" attribute on element <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "No \"height\" attribute on element <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "No \"start_angle\" attribute on element <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "No \"extent_angle\" attribute on element <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "No \"alpha\" attribute on element <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "No \"type\" attribute on element <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "No \"filename\" attribute on element <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "No \"state\" attribute on element <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "No \"shadow\" attribute on element <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "No \"arrow\" attribute on element <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "No \"value\" attribute on <%s> element"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "No \"position\" attribute on <%s> element"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "No \"function\" attribute on <%s> element"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "No \"state\" attribute on <%s> element"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "No \"focus\" attribute on <%s> element"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "No \"style\" attribute on <%s> element"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "No \"resize\" attribute on <%s> element"
+
+#~ msgid "On _Top"
+#~ msgstr "מ_על"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr "להכריח את ישום זה לסיים יגרום לאיבוד שינויים שלא נשמרו"
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Unknown function \"%s\" for menu icon"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Unknown state \"%s\" for menu icon"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "Theme already has a menu icon for function %s state %s"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "No draw_ops provided for menu icon"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "נכשל בקריאת ערכת נושא מהקובץ %s: %s\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
diff --git a/po/hi.po b/po/hi.po
new file mode 100644
index 00000000..629698d3
--- /dev/null
+++ b/po/hi.po
@@ -0,0 +1,2448 @@
+# translation of marco.master.po to Hindi
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
+#
+# G Karunakar <[email protected]>, 2003.
+# Ravishankar Shrivastava <[email protected]>, 2004.
+# Rajesh Ranjan <[email protected]>, 2005, 2006.
+# Rajesh Ranjan <[email protected]>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.master\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2009-08-24 17:51+0000\n"
+"PO-Revision-Date: 2009-09-15 15:11+0530\n"
+"Last-Translator: Rajesh Ranjan <[email protected]>\n"
+"Language-Team: Hindi <hindi.sf.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n!=1);\n\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+#| msgid "top"
+msgid "Desktop"
+msgstr "डेस्कटॉप"
+
+#: ../src/50-marco-key.xml.in.h:1
+#| msgid "Window manager: "
+msgid "Window Management"
+msgstr "विंडो प्रबंधक"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "बेल इवेंट"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "अज्ञात विंडो सूचना आग्रह: %d"
+
+#: ../src/core/delete.c:104
+#, c-format
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+"<big><b><tt>%s</tt> नहीं प्रतिक्रिया दे रहा है.</b></big>\n"
+"\n"
+"<i>आप कुछ समय के लिए प्रतीक्षा करने के लिए चुन सकते हैं जारी रखने के लिए या अनुप्रयोग को पूरी तरह से छोड़ने के लिए.</i>"
+
+#: ../src/core/delete.c:115
+msgid "_Wait"
+msgstr "प्रतीक्षा करें (_W)"
+
+#: ../src/core/delete.c:115
+msgid "_Force Quit"
+msgstr "जबर्दस्ती बाहर (_F)"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "होस्टनाम पाने में असफल: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "%s विस्तार अनुपस्थित कंपोजिटिंग के लिए जरूरी"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X विंडो तंत्र प्रदर्शक '%s' खोलने में असफल\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"प्रदर्शक '%s' से कनेक्शन छूट गया;\n"
+"बहुत संभावना है कि या तो एक्स सर्वर बन्द कर दिया गया या आपने विंडो प्रबंधक को \n"
+"खत्म/समाप्त कर दिया है.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "गंभीर आईओ त्रुटि %d (%s), प्रदर्शक '%s' में.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "कोई अन्य प्रोग्राम पहले से ही कुंजी %s उपयोग में ले रहा है, परिवर्धक %x बाइंडिंग के रूप में \n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+#| msgid ""
+#| "There was an error running \"%s\":\n"
+#| "%s."
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> को चलाने में त्रुटि थी:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "कोई कमांड %d पारिभाषित नहीं है.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "कोई टर्मिनल कमांड पारिभाषित नहीं है.\n"
+
+#: ../src/core/main.c:130
+#, c-format
+#| msgid ""
+#| "marco %s\n"
+#| "Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+#| "This is free software; see the source for copying conditions.\n"
+#| "There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+#| "PARTICULAR PURPOSE.\n"
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:268
+msgid "Disable connection to session manager"
+msgstr "सत्र प्रबंधक में संबंधन निष्क्रिय करें"
+
+#: ../src/core/main.c:274
+msgid "Replace the running window manager with Marco"
+msgstr "मेटासिटी के सात कार्यशील विंडो प्रबंधक बदलें"
+
+#: ../src/core/main.c:280
+msgid "Specify session management ID"
+msgstr "सत्र प्रबंधन ID निर्दिष्ट करें"
+
+#: ../src/core/main.c:285
+msgid "X Display to use"
+msgstr "प्रयोग के लिये X प्रदर्शन"
+
+#: ../src/core/main.c:291
+msgid "Initialize session from savefile"
+msgstr "सेवफाइल के लिये सत्र आरंभीकृत करें"
+
+#: ../src/core/main.c:297
+msgid "Print version"
+msgstr "मुद्रण संस्करण"
+
+#: ../src/core/main.c:303
+msgid "Make X calls synchronous"
+msgstr "X कॉल तुल्यकालित बनाएँ"
+
+#: ../src/core/main.c:309
+#| msgid "Compositing Manager"
+msgid "Turn compositing on"
+msgstr "कंपोजिटिंग चालू"
+
+#: ../src/core/main.c:315
+msgid "Turn compositing off"
+msgstr "कंपोजिटिंग को बंद कर रहा है"
+
+#: ../src/core/main.c:321
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "पूर्णस्क्रीन विंडो को मत बनाएँ जो कि अधिकतम है और कोई सजावट नहीं है"
+
+#: ../src/core/main.c:543
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "प्रसंग डिरेक्ट्री स्कैन करने में असफल: %s\n"
+
+#: ../src/core/main.c:559
+#, c-format
+#| msgid ""
+#| "Could not find a theme! Be sure %s exists and contains the usual themes."
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "प्रसंग नहीं ढूंढ सका! सुनिश्चित हों कि %s मौज़ूद है, तथा इसमें सामान्य प्रसंग हैं.\n"
+
+#: ../src/core/main.c:618
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "पुनः प्रारंभ करने में असफल: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "जी-कॉन्फ़ कुंजी '%s' एक अवैध प्रकार में नियत है\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+#| msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d जो जी-कॉन्फ़ कुंजी %s में भंडारित है वह सीमा %d से %d बाहर है\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "जी-कॉन्फ़ कुंजी \"%s\" एक अवैध प्रकार में नियत है\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"टूटे अनुप्रयोगों हेतु वर्कअराउन्ड अक्षम किया हुआ है. हो सकता है कुछ अनुप्रयोग उचित प्रकार "
+"व्यवहार न करें.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "फ़ॉन्ट विवरण \"%s\" की व्याख्या जी-कॉन्फ़ कुंजी %s से नहीं कर सका\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "कॉन्फ़िगरेशन डेटाबेस में प्राप्त \"%s\" माउस बटन मॉडीफ़ायर वैध मूल्य नहीं है\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "कार्यस्थान संख्या %d पर तय करने में त्रुटि: %s हुई.\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "कार्यस्थान %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "कॉन्फ़िगरेशन डेटाबेस में प्राप्त \"%s\" कीबाइंडिंग \"%s\" हेतु वैध मूल्य नहीं है\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "कार्यस्थान नाम %d को \"%s\" से में बदलने में त्रुटि: %s हुई\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+#| msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgid "Error setting compositor status: %s\n"
+msgstr "कंपोजिटर स्थिति सेट करने में त्रुटि %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "स्क्रीन %d जो प्रदर्शक '%s' पर है वह अवैध है\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"स्क्रीन %d जो प्रदर्शक \"%s\" पर है वहां पहले ही विंडो प्रबंधक है, --replace विकल्प का "
+"प्रयोग कर वर्तमान विंडो प्रबंधक को बदलने की कोशिश करें.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "स्क्रीन %d प्रदर्शक \"%s\" पर विंडो प्रबंधक चयन प्राप्त नहीं कर सका\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "स्क्रीन %d जो प्रदर्शक \"%s\" पर है वहां पहले ही विंडो प्रबंधक है\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "स्क्रीन %d जो प्रदर्शक \"%s\" पर है को मुक्त नहीं कर सका\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+#| msgid ""
+#| "The keybinding used to close a window. The format looks like \"&lt;"
+#| "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#| "liberal and allows lower or upper case, and also abbreviations such as "
+#| "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#| "special string \"disabled\", then there will be no keybinding for this "
+#| "action."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"फ़ॉर्मेट इस तरह दिखता है \"<Control>a\" या \"<Shift><Alt>F1\"\n"
+"\n"
+"यह पारसर पूरी तरह लिबरल है और बड़े या छोटे अक्षर दोनों "
+"स्वीकार करता है, तथा संक्षिप्ताक्षर भी जैसे- \"<Ctl>\" और \"<Ctrl>\". "
+"यदि आपने विकल्प विशेष स्ट्रिंग में तय किया है \"disabled\", तब वहाँ इस क्रिया हेतु कोई "
+"कीबाइंडिंग नहीं होगा."
+
+#: ../src/core/schema-bindings.c:177
+#| msgid ""
+#| "The keybinding used to close a window. The format looks like \"&lt;"
+#| "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#| "liberal and allows lower or upper case, and also abbreviations such as "
+#| "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#| "special string \"disabled\", then there will be no keybinding for this "
+#| "action."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"फ़ॉर्मेट इस तरह दिखता है \"<Control>a\" या \"<Shift><Alt>F1\"\n"
+"\n"
+"यह पारसर पूरी तरह लिबरल है और बड़े या छोटे अक्षर दोनों "
+"स्वीकार करता है, तथा संक्षिप्ताक्षर भी जैसे- \"<Ctl>\" और \"<Ctrl>\". "
+"यदि आपने विकल्प विशेष स्ट्रिंग में तय किया है \"disabled\", तब वहाँ इस क्रिया हेतु कोई "
+"कीबाइंडिंग नहीं होगा. "
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+
+#: ../src/core/session.c:845 ../src/core/session.c:852
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "डिरेक्ट्री '%s' बना नहीं पाया: %s\n"
+
+#: ../src/core/session.c:862
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "सत्र फ़ाइल '%s' लिखने हेतु नही खोल पाया: %s\n"
+
+#: ../src/core/session.c:1003
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "स्त्र फ़ाइल लिखने में त्रुटि '%s': %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "सत्र फ़ाइल बंद करने में त्रुटि '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1101
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "सहेजी गई सत्र फ़ाइल %s पढ़ने में असफल: %s\n"
+
+#: ../src/core/session.c:1140
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "सहेजी गई सत्र फ़ाइल: %s की व्याख्या करने में असफल\n"
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<मेटासिटी_सत्र> गुण देखा पर हमारे पास पहले ही सत्र आईडी है"
+
+#: ../src/core/session.c:1202 ../src/core/session.c:1277
+#: ../src/core/session.c:1309 ../src/core/session.c:1381
+#: ../src/core/session.c:1441
+#, c-format
+#| msgid "Unknown attribute %s on <window> element"
+msgid "Unknown attribute %s on <%s> element"
+msgstr "अज्ञात गुण %s <%s> तत्व पर"
+
+#: ../src/core/session.c:1219
+#, c-format
+msgid "nested <window> tag"
+msgstr "नेस्टेड <विंडो> टैग"
+
+#: ../src/core/session.c:1461
+#, c-format
+msgid "Unknown element %s"
+msgstr "अज्ञात तत्व %s"
+
+#: ../src/core/session.c:1812
+#| msgid ""
+#| "These windows do not support \"save current setup\" and will have to be "
+#| "restarted manually next time you log in."
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"ये विंडो &quot;save current setup&quot; समर्थन नहीं करते अतः इन्हें अगली बार जब आप लॉगइन करेंगे तब "
+"पुनः प्रारंभ करना होगा."
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "डिबग लॉग: %s खोलने में असफल\n"
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "लॉग फ़ाइल %s: fdopen() में असफल %s\n"
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "लॉग फ़ाइल %s खोला\n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "मेटासिटी को वाचाल विधि के बगैर कम्पाइल किया गया है\n"
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "विंडो प्रबंधक:"
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr "विंडो प्रबंधक में बग:"
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr "विंडो प्रबंधक चेतावनी"
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr "विंडो प्रबंधक त्रुटिः"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "मेटासिटी"
+
+# first time through
+#. first time through
+#: ../src/core/window.c:5627
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"विंडो %s नियत करता है SM_CLIENT_ID अपने आप ही, बजाए WM_CLIENT_LEADER विंडो के जैसा "
+"कि ICCCM में उल्लेखित किया गया है.\n"
+
+# We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+# * authoritative source for that info. Some apps such as mplayer or
+# * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+# * leads to e.g. us not fullscreening their windows. Apps that set
+# * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+# * about these apps but make them work.
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6192
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"विंडो %s ने एक एमडबल्यूएम संकेत नियत किया यह दिखाते हुए कि यह आकार बदलने लायक नहीं है, "
+"परंतु न्यूनतम आकार नियत किया %d x %d तथा अधिकतम आकार %d x %d; इसका कोई खास अर्थ "
+"नहीं निकलता.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "अनुप्रयोग ने नियत किया एक bogus _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s पर)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (बतौर सुपरयूजर)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+#| msgid "%s (on %s)"
+msgid "%s (as %s)"
+msgstr "%s (as %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (बतौर अन्य उपयोक्ता)"
+
+#: ../src/core/window-props.c:1429
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "अवैध WM_TRANSIENT_FOR window 0x%lx %s के लिये निर्दिष्ट.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"विंडो 0x%lx में गुण %s है \n"
+"जिसमें वांछित है प्रकार %s फ़ॉर्मेट %d \n"
+"तथा वास्तव में है प्रकार %s फ़ॉर्मेट %d एन_वस्तुएँ %d.\n"
+" इस बात की पूरी संभावना है कि यह एक अनुप्रयोग बग है, विंडो प्रबंधक बग नहीं.\n"
+" विंडो का शीर्षक है=\"%s\" क्लास=\"%s\" नाम=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "गुण %s विंडो 0x%lx में अवैध यूटीएफ़-8 है \n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "गुण %s विंडो 0x%lx पर %d वस्तुओं हेतु सूची में अवैध यूटीएफ़-8 है\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "कार्यस्थान 1 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "कार्यस्थान 2 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "कार्यस्थान 3 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "कार्यस्थान 4 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "कार्यस्थान 5 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "कार्यस्थान 6 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "कार्यस्थान 7 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "कार्यस्थान 8 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "कार्यस्थान 9 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "कार्यस्थान 10 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "कार्यस्थान 11 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "कार्यस्थान 12 पर जाएँ"
+
+#: ../src/include/all-keybindings.h:122
+#| msgid "Switch to workspace on the left"
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "मौजूदा कार्यस्थान के बाएँ कार्यस्थान पर जाएँ"
+
+#: ../src/include/all-keybindings.h:126
+#| msgid "Switch to workspace on the right"
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "मौजूदा कार्यस्थान के दाहिने कार्यस्थान पर जाएँ"
+
+#: ../src/include/all-keybindings.h:130
+#| msgid "Switch to workspace above this one"
+msgid "Switch to workspace above the current workspace"
+msgstr "मौजूदा कार्यस्थान के ऊपर कार्यस्थान पर जाएँ"
+
+#: ../src/include/all-keybindings.h:134
+#| msgid "Switch to workspace below this one"
+msgid "Switch to workspace below the current workspace"
+msgstr "मौजूदा कार्यस्थान के नीचे कार्यस्थान पर जाएँ"
+
+#: ../src/include/all-keybindings.h:150
+#| msgid "Move between windows of an application with popup"
+msgid "Move between windows of an application, using a popup window"
+msgstr "पॉपअप के साथ अनुप्रयोग के विंडो के बीच जायें"
+
+#: ../src/include/all-keybindings.h:153
+#| msgid "Move backwards between windows of an application with popup"
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "पॉपअप के साथ अनुप्रयोग के विंडो के बीच पीछे जायें"
+
+#: ../src/include/all-keybindings.h:157
+#| msgid "Move between windows with popup"
+msgid "Move between windows, using a popup window"
+msgstr "पॉपअप के साथ विंडो के बीच जायें"
+
+#: ../src/include/all-keybindings.h:160
+#| msgid "Move focus backwards between windows using popup display"
+msgid "Move backward between windows, using a popup window"
+msgstr "पॉपअप के साथ विंडो के बीच पीछे जायें"
+
+#: ../src/include/all-keybindings.h:163
+#| msgid "Move between panels and the desktop with popup"
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "पॉपअप के साथ पटल व डेस्कटॉप के बीच जायें"
+
+#: ../src/include/all-keybindings.h:166
+#| msgid "Move backwards between panels and the desktop with popup"
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "पॉपअप के साथ पटल व डेस्कटॉप के पीछे जायें"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "तत्काल अनुप्रयोग के विंडो के बीच जायें"
+
+#: ../src/include/all-keybindings.h:174
+#| msgid "Move backwards between windows of an application immediately"
+msgid "Move backward between windows of an application immediately"
+msgstr "किसी अनुप्रयोग के विंडो के बीच तत्काल पीछे जायें"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "विंडोज़ के बीच तत्काल खिसकाएँ"
+
+#: ../src/include/all-keybindings.h:180
+#| msgid "Move backwards between windows immediately"
+msgid "Move backward between windows immediately"
+msgstr "विंडोज़ के बीच तत्काल पीछे जाएँ"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "पटल तथा डेस्कटॉप के बीच तत्काल खिसकाएँ"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "पटल तथा डेस्कटॉप के बीच तत्काल पीछे जाएँ"
+
+#: ../src/include/all-keybindings.h:191
+#| msgid "Hide all windows and focus desktop"
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "सभी सामान्य विंडो को छुपाएँ और डेस्कटॉप पर फ़ोकस करें"
+
+#: ../src/include/all-keybindings.h:194
+#| msgid "Show the panel menu"
+msgid "Show the panel's main menu"
+msgstr "फ़लक मुख्य मेनू दिखाएँ"
+
+#: ../src/include/all-keybindings.h:197
+#| msgid "Show the panel run application dialog"
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "पटल के \"अनुप्रयोग चलाएँ\" संवाद पेटी दिखाएँ"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "स्क्रीन का चित्र लें"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "विंडो का चित्र लें"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "एक टर्मिनल चलायें"
+
+#: ../src/include/all-keybindings.h:257
+#| msgid "Activate window menu"
+msgid "Activate the window menu"
+msgstr "विंडो मेनू सक्रिय करें"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "पूरा स्क्रीन मोड टॉगल करें"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "अधिकतम स्थिति टॉगल करें"
+
+#: ../src/include/all-keybindings.h:264
+#| msgid "Lower window below other windows"
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "टॉगल करें कि क्या विंडो अन्य विंडो पर हमेशा दिखेगा"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "विंडो अधिकतम करें"
+
+#: ../src/include/all-keybindings.h:268
+#| msgid "Resize window"
+msgid "Restore window"
+msgstr "विंडो पुनर्बहाल करें"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "आभायुक्त स्थिति टॉगल करें"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "विंडो को न्यूनतम करें"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "विंडो बंद करें"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "विंडो खिसकाएँ"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "विंडो का आकार बदलें"
+
+#: ../src/include/all-keybindings.h:281
+#| msgid "Toggle window on all workspaces"
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "टॉगल करें कि विंडो सभी कार्यस्थान पर है या केवल एक"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "विंडो को कार्यस्थान 1 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "विंडो को कार्यस्थान 2 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "विंडो को कार्यस्थान 3 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "विंडो को कार्यस्थान 4 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "विंडो को कार्यस्थान 5 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "विंडो को कार्यस्थान 6 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "विंडो को कार्यस्थान 7 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "विंडो को कार्यस्थान 8 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "विंडो को कार्यस्थान 9 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "विंडो को कार्यस्थान 10 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "विंडो को कार्यस्थान 11 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "विंडो को कार्यस्थान 12 पर ले जाएँ"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "विंडो को एक कार्यस्थान बाएँ लाएँ"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "विंडो को एक कार्यस्थान दाएँ लाएँ"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "विंडो को एक कार्यस्थान ऊपर लाएँ"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "विंडो को एक कार्यस्थान नीचे लाएँ"
+
+#: ../src/include/all-keybindings.h:342
+#| msgid "Raise obscured window, otherwise lower"
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "विंडो ऊपर करें यदि यह दूसरे विंडो से ढ़ंका है अन्यथा नीचे रखें"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "विंडो को अन्य विंडो के ऊपर रखें"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "विंडो को अन्य विंडो के नीचे रखें"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "विंडो खड़ा अधिकतम करें"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "विंडो आड़ा अधिकतम करें"
+
+#: ../src/include/all-keybindings.h:358
+#| msgid "Move window one workspace to the left"
+msgid "Move window to north-west (top left) corner"
+msgstr "विंडो को उत्तर पश्चिम (top left) कोने पर खिसकाएँ"
+
+#: ../src/include/all-keybindings.h:361
+#| msgid "Move window one workspace to the right"
+msgid "Move window to north-east (top right) corner"
+msgstr "विंडो को उत्तर पश्चिम (ऊपरी बायें) कोने पर खिसकाएँ"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "विंडो को दक्षिण पश्चिम (तल बायां) हिस्से पर खिसकाएँ"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "विंडो को दक्षिण पूर्व (तल दाहिना) हिस्से पर खिसकाएँ"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "विंडो को स्क्रीन उत्तरी (शीर्ष) हिस्से पर खिसकाएँ"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "विंडो को स्क्रीन के दक्षिणी (तल) हिस्से पर खिसकाएँ"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "विंडो को स्क्रीन के पूर्वी (दाहिने) हिस्से पर खिसकाएँ"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "विंडो को स्क्रीन पश्चिमी (बाएँ) कोने पर खिसकाएँ"
+
+#: ../src/include/all-keybindings.h:383
+#| msgid "Move window one workspace down"
+msgid "Move window to center of screen"
+msgstr "विंडो को स्क्रीन के केंद्र में खिसकाएँ"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(कार्यान्वित नहीं) संचलन अनुप्रयोगों के अनुसार चलता है, विंडोज़ से नहीं"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"एक फंट विवरण स्ट्रिंग विंडो शीर्षक पट्टी के लिये फंट के बारे में बता रहा है. विवरण से आकार "
+"प्रयुक्त होगा अगर titlebar_font_size विकल्प 0 में सेट किया जाता है, साथ ही, यह विकल्प "
+"निष्क्रिय किया जाता है अगर titlebar_uses_desktop_font विकल्प को सही पर सेट किया "
+"जाता है."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "शीर्षक पट्टी में दोहरा-क्लिक करने पर क्रिया"
+
+#: ../src/marco.schemas.in.in.h:4
+#| msgid "Action on title bar double-click"
+msgid "Action on title bar middle-click"
+msgstr "शीर्षक पट्टी मध्य-क्लिक करने पर क्रिया"
+
+#: ../src/marco.schemas.in.in.h:5
+#| msgid "Action on title bar double-click"
+msgid "Action on title bar right-click"
+msgstr "शीर्षक पट्टी दाहिना-क्लिक करने पर क्रिया"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "शीर्षक-पट्टी में बटनों का विन्यास"
+
+#: ../src/marco.schemas.in.in.h:7
+#| msgid ""
+#| "Arrangement of buttons on the titlebar. The value should be a string, "
+#| "such as \"menu:minimize,maximize,close\"; the colon separates the left "
+#| "corner of the window from the right corner, and the button names are "
+#| "comma-separated. Duplicate buttons are not allowed. Unknown button names "
+#| "are silently ignored so that buttons can be added in future marco "
+#| "versions without breaking older versions."
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"शीर्षक-पट्टी में बटनों का विन्यास. मान स्ट्रिंग होने चाहिएँ, जैसे \"menu:minimize,maximize,spacer,close\"; कोलन विंडो के बाएँ कोने को दांए कोने से अलग करता है तथा बटन के नाम "
+"कॉमा से अलग हैं. दोहरे बटन स्वीकार्य नहीं हैं. अज्ञात बटन नाम अनदेखे किए जाते हैं ताकि "
+"भविष्य के मेटासिटी वर्सन में, पुराने संस्करण को तोड़े बगैर ये जोड़े जा सकें. विशेष स्पेसर टैग को दो साथ बटन के बीच कुछ स्थान घुसाने के लिए प्रयोग किए जा सकते हैं."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "फ़ोकस किए विंडो को स्वचालित उठाएँ"
+
+#: ../src/marco.schemas.in.in.h:9
+#| msgid ""
+#| "Clicking a window while holding down this modifier key will move the "
+#| "window (left click), resize the window (middle click), or show the window "
+#| "menu (right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;"
+#| "Super&gt;\" for example."
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+"इस परिवर्धक कुंजी को दबाकर रखते हुए विंडो में क्लिक करने पर विंडो को खिसकाता है (बायाँ "
+"क्लिक), विंडो का आकार बदलता है (मध्य क्लिक), या विंडो मेनू दिखाता है (दाँया क्लिक). \"mouse_button_resize\" के प्रयोग से बायां और दाहिना संक्रिया अदला बदली किया जा सकता है. परिवर्धक ऐसे बताए जा सकते हैं - \"&lt;Alt&gt;\" या "
+"\"&lt;Super&gt;\" उदाहरण के लिए."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "कीबाइंडिंग के प्रत्युत्तर में चलाया जाने वाला कमांड"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "कंपोजिटिंग प्रबंधक"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "नियंत्रित करें कि कैसे नया विंडो फोकस पाता है"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "वर्तमान प्रसंग"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "आटो रेस विकल्प हेतु मिलीसेकण्ड्स में देरी"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "निर्धारित करें कि Marco एक कंपोजिटिंग प्रबंधक है."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"निर्धारित करता है कि क्या अनुप्रयोग या तंत्र सुनने योग्य बीप पैदा कर सकता है, शायद "
+"दृष्टिगोच़र घंटी के साथ उपयोग किया जाकर शांति मय बीप स्वीकारे."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "मिसफीचर्स असमर्थ करें जो कि पुराने या टूटे अनुप्रयोगों द्वारा वांछित होते हैं"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "दृष्टिगोच़र घंटी सक्षम करें"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"अगर सही पर सेट किया जाता है, और फोकस मोड या तो \"स्लोपी\" या \"माउस\" हो तब "
+"फोकस किया विंडो तब auto_raise_delay कुंजी से निर्दिष्ट विलंब से फोकस किया विंडो उठाया "
+"जायेगा. यह विंडो पर क्लिक किये जाने से संबंधित नहीं है, न तो खींचे व छोड़ें पर दाखिल होकर."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"यदि सही है, शीर्षक पट्टी फ़ॉन्ट विकल्प का अनदेखा करें तथा विंडो शीर्षकों हेतु मानक अनुप्रयोग "
+"फ़ॉन्ट का प्रयोग करें"
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"अगर सही है, marco उपयोक्ता को कम फीडबेक और सीधा हस्तक्षेप का कम सेंस देगा, "
+"वायरफ्रेम, एनीमेशन अनदेखा करते हुये, या अन्य साधन. यह महत्वपूर्ण कमी है कई उपयोक्ता के "
+"प्रयोग में, लेकिन कई पुरातन अनुप्रयोग व टर्मिनल सर्वर की अनुमति देते हैं कि वे कब अन्यथा रूप "
+"से अप्रायोगिक होगें. हालांकि, वायरफ्रेम फीचर को निष्क्रिय किया जाता है जब पहुंच वीयर्ड "
+"डेस्कटॉप खंडन को अनदेखा करने के लिये हो."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"यदि सही है तो मेटासिटी विंडो के बजाए अनुप्रयोग जैसे कार्य करेगा. परिकल्पना थोड़ी संक्षिप्त "
+"है परंतु आमतौर पर अनुप्रयोग आधारित सेटअप मैक जैसा ज्यादा होगा विंडोज़ की तरह कम. यदि आप "
+"किसी विंडो को अनुप्रयोग आधारित मोड पर फ़ोकस करेंगे तो अनुप्रयोग में के सभी विंडो ऊपर हो "
+"जाएंगे. यह भी कि अनुप्रयोग आधारित मोड में फ़ोकस क्लिक अन्य अनुप्रयोग के विंडो से होकर नहीं "
+"जाता. अनुप्रयोग आधारित मोड विस्तृत रूप से इस समय कार्यान्वित नहीं है."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "यदि सही है, उपयोगिता को कम साधन उपयोग के साथ बदलें"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "विंडो क्लिक क्रिया परिवर्तन हेतु उपयोग में परिवर्धक"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "कार्यस्थान का नाम"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "कार्यस्थान की संख्या"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"कार्यस्थान की संख्या. यह शून्य से अधिक होना चाहिए तथा इसे एक अधिकतम पर निर्धारित करना "
+"चाहिये ज्यादा कार्यस्थान की मांग करने पर आपके डेस्कटॉप को दुर्धटनावश नष्ट होने से बचाने हेतु."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "पारिभाषित कमांड चलाएँ"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr "इसे सही पर सेट करें दाहिने बटन के साथ फिर आकार देने के लिए और मध्य बटन के साथ मेन्यू दिखाएँ जब \"mouse_button_modifier\"; में दी गई कुंजी को पकड़े हुए इसे गलत पर सेट करें इसे विलोम रूप में काम करते हुए."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"इस विकल्प को गलत पर सेट करना दोषपूर्ण आचरण की ओर ले जाएगा, इसलिए उपयोक्ता को बहुत अधिक हतोत्साहित किया जाता है तयशुदा से सही पर बदलने से. कई क्रिया (e.g. clicking in the client area, moving or resizing the window) विंडो को सामान्यतः बतौर साइड एफेक्ट उठाते हैं. इस विकल्प को गलत पर सेट करना, जो कि बहुत अधिक हतोत्साहित किया जाता है, जो दूसरे उपयोक्ता क्रिया से उटाने को डिकपल करेगा, और अनुप्रयोग द्वारा बनाए वृद्धि आग्रह को अनदेख. देखें http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. बावजूद कि यह विकल्प गलत है, विंडोज को किसी alt-left-click के द्वारा विंडो पर कही भी उठाया जा सकता है, विंडो डेकोरेशन पर एक सामान्य क्लिक, या पेजर से विशेष संदेश के द्वारा, जैसे कि कार्यसूची एप्लेट से सक्रिय आग्रह. यह विकल्प क्लिक से फोकस मोड में अभी निष्क्रिय है. नोट करें कि विंडो बढ़ना के तरीकों की सूची जब raise_on_click गलत है में प्रोग्राममेटिक आग्रह को शामिल नहीं करता है विंडो को बढ़ाने के लिए अनुप्रयोग से; वैसे आग्रह आग्रह के कारण के बिना अनदेखे किए जाएंगे. यदि आप अनुप्रयोग डेवलेपर हैं और उपयोक्ता है जो शिकायत करता है कि आपका अनुप्रयोग निष्क्रिय सेटिंग में काम नहीं करता है, उन्हें बताएँ कि यह अपने विंडो प्रबंधक को विगाड़ने का उनका काम है और उन्हें इस विकल्प को सही पर वापस सेट करना है निवेदित \"bug"
+"\" के साथ."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"कुछ अनुप्रयोग विशेषता को महत्व नहीं देते हैं जो कि विंडो प्रबंधक मिसफीचर में परिणाम लाता है. "
+"यह विकल्प Marco को काफी सही मोड में रखता है, जो कि ज्यादा संगत उपयोक्ता अंतरफलक "
+"देता है, अगर कोई गलत अनुप्रयोग नहीं चला रहा है."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "तंत्र घंटी सुनने योग्य है"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"मेटासिटी को बताता है कि कैसे दृश्य संकेत काम में लिया जाए कि तंत्र घंटी या अन्य अनुप्रयोग "
+"घंटी बजाना है. वर्तमान में दो मान्य मूल्य हैं, \"पूरा स्क्रीन\", जो फुलस्क्रीन काला-सफेद फ्लेश "
+"करता है तथा \"फ्रेम-फ्लैश\" जो संबंधित अनुप्रयोग के टाइटलबार को फ्लेश करने हेतु संकेत करता "
+"है, जिसको घंटी संकेत भेजता है. यदि अनुप्रयोग जिसने घंटी संकेत भेजा है. अज्ञात है तो ( जैसा कि "
+"आमतौर पर डिफ़ॉल्ट \"तंत्र बीप\" में होता है), वर्तमान फ़ोकस विंडो का शीर्षक पट्टी फ्लैश "
+"करेगा. "
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"कुंजियाँ /apps/marco/global_keybindings/run_command_N इन कमांड के तदनुरूप "
+"कीबाइंडिंग पारिभाषित करती हैं. run_command_N का कीबाइंडिंग दबाने पर यह command_N "
+"को चलाएगा. "
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"कुंजी /apps/marco/global_keybindings/run_command_screenshot वह कीबाइंडिंग "
+"पारिभाषित करती है जो इस विन्यास से उल्लेखित कमांड को प्रारंभ करती है."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"कुंजी /apps/marco/global_keybindings/run_command_window_screenshot वह "
+"कीबाइंडिंग पारिभाषित करती है जो इस विन्यास से उल्लेखित कमांड को प्रारंभ करती है."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"कीबाइंडिंग जो कि /apps/marco/keybinding_commands के तदनुरूप नम्बर वाले कमांड को "
+"चलाता है . फ़ॉर्मेट इस तरह दिखेंगे \"&lt;Control&gt;a\" या \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. यह पारसर पूरी तरह लिबरल है और बड़े या छोटे अक्षर दोनों स्वीकार करता है, "
+"तथा संक्षिप्ताक्षर भी जैसे- \"&lt;Ctl&gt;\" और \"&lt;Ctrl&gt;\". यदि आपने विकल्प "
+"विशेष स्ट्रिंग में तय किया है \"disabled\", तब वहाँ इस क्रिया हेतु कोई कीबाइंडिंग नहीं "
+"होगा."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "कार्यस्थान का नाम"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "स्क्रीन-शॉट कमांड "
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "प्रसंग, विंडो किनारा, शीर्षक पट्टी इत्यादि के रंग-रूप को निर्धारित करता है."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"यदि auto_raise सही पर नियत है तो विंडो ऊपर उठाने से पहले विलम्ब समय. यह विलम्ब "
+"सेकण्ड के हजारवें हिस्से में दिया जाता है."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"विंडो फ़ोकस मोड जो संकेत करता है कि विंडोज़ कैसे सक्रिय हों. इसके तीन संभावित मूल्य हैं, क्लिक "
+"\"क्लिक\" मतलब विंडो को फ़ोकस करने हेतु उनमें क्लिक करना होगा, \"स्लॉपी\" मतलब विंडो तब "
+"फ़ोकस होंगे जब माउस विंडो में प्रवेश करेगा, तथा \"माउस\" मतलब विंडो तब फ़ोकस होंगे जब "
+"माउस विंडो में प्रवेश करेगा तथा फ़ोकस से बाहर होगा जब माउस विंडो से बाहर होगा."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "विंडो स्क्रीन-शॉट कमांड "
+
+#: ../src/marco.schemas.in.in.h:44
+#| msgid ""
+#| "This option determines the effects of double-clicking on the title bar. "
+#| "Current valid options are 'toggle_shade', which will shade/unshade the "
+#| "window, 'toggle_maximize' which will maximize/unmaximize the window, "
+#| "'minimize' which will minimize the window, and 'none' which will not do "
+#| "anything."
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"यह शीर्षक पट्टी पर दोहरे-क्लिक के असर को निर्धारित करता है. वर्तमान वैध विकल्प हैं- "
+"'toggle_shade' जो विंडो की छाया चालू/बन्द करते हैं, तथा 'toggle_maximize' जो विंडो को "
+"अधिकतम/उससे बाहर करता है, 'toggle_maximize_horizontally' और 'toggle_maximize_vertically' जो विंडो को उसी दिशा में अधिकतम/बाहर करता है, 'minimize' जो कि विंडो को न्यूनतम करेगा, 'shade' जो विंडो को रॉलअप केरगा, 'menu' जो कि विंडो मेनूय दिखाएगा, 'lower' जो विंडो को दूसरों के पीछे रखेगा, और 'none' जो कुछ नहीं करेगा."
+
+#: ../src/marco.schemas.in.in.h:45
+#| msgid ""
+#| "This option determines the effects of double-clicking on the title bar. "
+#| "Current valid options are 'toggle_shade', which will shade/unshade the "
+#| "window, 'toggle_maximize' which will maximize/unmaximize the window, "
+#| "'minimize' which will minimize the window, and 'none' which will not do "
+#| "anything."
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"यह शीर्षक पट्टी पर मध्य-क्लिक के असर को निर्धारित करता है. वर्तमान वैध विकल्प हैं- "
+"'toggle_shade' जो विंडो की छाया चालू/बन्द करते हैं, तथा 'toggle_maximize' जो विंडो को "
+"अधिकतम/उससे बाहर करता है, 'toggle_maximize_horizontally' और 'toggle_maximize_vertically' जो विंडो को उसी दिशा में अधिकतम/बाहर करता है, 'minimize' जो कि विंडो को न्यूनतम करेगा, 'shade' जो विंडो को रॉलअप केरगा, 'menu' जो कि विंडो मेनूय दिखाएगा, 'lower' जो विंडो को दूसरों के पीछे रखेगा, और 'none' जो कुछ नहीं करेगा."
+
+#: ../src/marco.schemas.in.in.h:46
+#| msgid ""
+#| "This option determines the effects of double-clicking on the title bar. "
+#| "Current valid options are 'toggle_shade', which will shade/unshade the "
+#| "window, 'toggle_maximize' which will maximize/unmaximize the window, "
+#| "'minimize' which will minimize the window, and 'none' which will not do "
+#| "anything."
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"यह शीर्षक पट्टी पर दाहिने-क्लिक के असर को निर्धारित करता है. वर्तमान वैध विकल्प हैं- "
+"'toggle_shade' जो विंडो की छाया चालू/बन्द करते हैं, तथा 'toggle_maximize' जो विंडो को "
+"अधिकतम/उससे बाहर करता है, 'toggle_maximize_horizontally' और 'toggle_maximize_vertically' जो विंडो को उसी दिशा में अधिकतम/बाहर करता है, 'minimize' जो कि विंडो को न्यूनतम करेगा, 'shade' जो विंडो को रॉलअप केरगा, 'menu' जो कि विंडो मेनूय दिखाएगा, 'lower' जो विंडो को दूसरों के पीछे रखेगा, और 'none' जो कुछ नहीं करेगा."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"यह विकल्प अतिरिक्त नियंत्रण देता है कि कैसे नया बनाया विंडो फोकस पाता है. इसके दो "
+"संभावित मान हैं; \"smart\" उपयोक्ता के सामान्य फोकस मोड पर लागू होता है और \"strict"
+"\" ऐसे विंडो के रूप में आता है जो टर्मिनल से फोकस नहीं किये गये रूप में आता है."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"दृश्य संकेत चालू करना जब कोई अनुप्रयोग या तंत्र घंटी या बीप जारी करते हैं तो, शोरयुक्त "
+"वातावरण- जहाँ सुनने में कठिनाई हो या उंचा सुनने वाले के लिये उपयोगी होता है."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "विंडो शीर्षकों में मानक तंत्र फ़ॉन्ट प्रयोग करें"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "दृष्टिगोच़र घंटी प्रकार"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "अन्य उपयोक्ता अंतःक्रिया के प्रभाव को क्या उठाया जाना चाहिये"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "दाहिने बटन को क्या फिर आकार देना है"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "विंडो फ़ोकस मोड"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "विंडो शीर्षक फ़ॉन्ट"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "उपयोग: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "विंडो बंद करें"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "विंडो मेनू"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "विंडो न्यूनतम करें"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "विंडो अधिकतम करें"
+
+#: ../src/ui/frames.c:1130
+#| msgid "Resize window"
+msgid "Restore Window"
+msgstr "विंडो फिर वापस करें"
+
+#: ../src/ui/frames.c:1133
+#| msgid "Roll _Up"
+msgid "Roll Up Window"
+msgstr "विंडो उपर समेटें"
+
+#: ../src/ui/frames.c:1136
+#| msgid "Close Window"
+msgid "Unroll Window"
+msgstr "विंडो बंद करें"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "शीर्ष पर विंडो को रखें"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "शीर्ष पर विंडो हटाएँ"
+
+#: ../src/ui/frames.c:1145
+#| msgid "_Always on Visible Workspace"
+msgid "Always On Visible Workspace"
+msgstr "हमेशा दृश्य कार्यस्थान पर"
+
+#: ../src/ui/frames.c:1148
+#| msgid "Toggle window on all workspaces"
+msgid "Put Window On Only One Workspace"
+msgstr "विंडो को एक कार्यस्थान पर रखें"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "न्यूनतम (_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "अधिकतम (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "बड़े से छोटा करें (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "उपर समेटें (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "वापस खोलें (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "खिसकाएँ (_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "आकार बदलें (_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "ऑनस्क्रीन शीर्षकबार खिसकायें (_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "हमेशा शीर्ष पर (_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "हमेशा दृश्य कार्यस्थान पर (_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "सिर्फ इसी कार्यस्थान पर (_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "बाएँ कार्यस्थान में ले जाएँ (_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "दाएँ कार्यस्थान में ले जाएँ (_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "ऊपर कार्यस्थान में ले जाएँ (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "नीचे कार्यस्थान में ले जाएँ (_D)"
+
+# separator
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "बंद करें (_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+#| msgid "Workspace %d"
+msgid "Workspace %d%n"
+msgstr "कार्यस्थान %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "कार्यस्थान 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "कार्यस्थान %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "अन्य कार्यस्थान में ले जाएँ (_W)"
+
+# This is the text that should appear next to menu accelerators
+# * that use the shift key. If the text on this key isn't typically
+# * translated on keyboards used for your language, don't translate
+# * this.
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "शिफ़्ट"
+
+# This is the text that should appear next to menu accelerators
+# * that use the control key. If the text on this key isn't typically
+# * translated on keyboards used for your language, don't translate
+# * this.
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "कंट्रोल"
+
+# This is the text that should appear next to menu accelerators
+# * that use the alt key. If the text on this key isn't typically
+# * translated on keyboards used for your language, don't translate
+# * this.
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "आल्ट"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "मेटा"
+
+# This is the text that should appear next to menu accelerators
+# * that use the super key. If the text on this key isn't typically
+# * translated on keyboards used for your language, don't translate
+# * this.
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "सुपर"
+
+# This is the text that should appear next to menu accelerators
+# * that use the hyper key. If the text on this key isn't typically
+# * translated on keyboards used for your language, don't translate
+# * this.
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "हाइपर"
+
+# This is the text that should appear next to menu accelerators
+# * that use the mod2 key. If the text on this key isn't typically
+# * translated on keyboards used for your language, don't translate
+# * this.
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "परि.2"
+
+# This is the text that should appear next to menu accelerators
+# * that use the mod3 key. If the text on this key isn't typically
+# * translated on keyboards used for your language, don't translate
+# * this.
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "परि.3"
+
+# This is the text that should appear next to menu accelerators
+# * that use the mod4 key. If the text on this key isn't typically
+# * translated on keyboards used for your language, don't translate
+# * this.
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "परि.4"
+
+# This is the text that should appear next to menu accelerators
+# * that use the mod5 key. If the text on this key isn't typically
+# * translated on keyboards used for your language, don't translate
+# * this.
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "परि.5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "उपर"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "नीचे"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "बाएँ"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "दाएँ"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "फ्रेम ज्यामिती \"%s\" आयाम को उल्लेखित नहीं करता"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "फ्रेम ज्यामिती आयाम \"%s\" को किनारा \"%s\" हेतु उल्लेखित नहीं करता"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "बटन आस्पेक्ट रेशो %g यथोचित नहीं है"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "फ्रेम ज्यामिती बटनों के आकार को उल्लेखित नहीं करता"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "अनुपात में कम से कम दो रंग होने चाहिएँ"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"जीटीके रंग लक्षण कोष्ठक में स्थिति (स्टेट) होने चाहिएँ जैसे- gtk:fg[NORMAL] यहाँ NORMAL "
+"स्थिति है; \"%s\" की व्याख्या नहीं कर सका"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"जीटीके रंग लक्षण स्थिति के बाद बंद कोष्ठक में होने चाहिएँ जैसे- gtk:fg[NORMAL] यहाँ "
+"NORMAL स्थिति है; \"%s\" की व्याख्या नहीं कर सका"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "स्थिति \"%s\" रंग लक्षण में समझ नहीं सका"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "रंग अवयव \"%s\" रंग लक्षण में समझ नहीं सका"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"ब्लेंड फ़ॉर्मेट है \"blend/bg_color/fg_color/alpha\", \"%s\" जो फ़ॉर्मेट के अनुरूप नहीं "
+"होता"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "अल्फा मूल्य \"%s\" की ब्लेंडेड रंग में व्याख्या नहीं कर सका"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "अल्फा मूल्य \"%s\" ब्लेंडेड रंग में 0.0 और 1.0 के बीच नहीं है"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "शेड फॉर्मेट है \"shade/base_color/factor\", \"%s\" जो फॉर्मेट के अनुरूप नहीं होता"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "शेड फैक्टर \"%s\" की आभायुक्त रंग में व्याख्या नहीं कर सका"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "शेड फैक्टर \"%s\" आभायुक्त रंग में ऋणात्मक है"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "\"%s\" रंग की व्याख्या नहीं कर सका"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "कोआर्डिनेट एक्सप्रेशन मे अक्षर '%s' है जो स्वीकार्य नहीं है"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "कोआर्डिनेट एक्सप्रेशन मे फ्लोटिंग पाइंट नम्बर '%s' है जिसकी व्याख्या नहीं की जा सकी"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "कोआर्डिनेट एक्सप्रेशन मे पूर्णांक '%s' है जिसकी व्याख्या नहीं की जा सकी"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "कोआर्डिनेट एक्सप्रेशन मे इस पाठ: \"%s\" के आरंभ में ही अज्ञात आपरेटर है "
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "कोआर्डिनेट एक्सप्रेशन या खाली है या समझा नहीं जा सका"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "कोआर्डिनेट एक्सप्रेशन परिणाम शून्य से भाजक के रूप में मिला"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "कोआर्डिनेट एक्सप्रेशन, फ्लोटिंग पाइंट नम्बर पर माड आपरेटर के उपयोग की कोशिश में"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "कोआर्डिनेट एक्सप्रेशन में एक आपरेटर \"%s\" है जबकि आपरेंड वांछित है"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "कोआर्डिनेट एक्सप्रेशन में एक आपरेंड है जबकि आपरेटर वांछित है"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "कोआर्डिनेट एक्सप्रेशन एक आपरेटर से अंत हो रहा है एक आपरेंड के बदले"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "कोआर्डिनेट एक्सप्रेशन में आपरेटर \"%c\" के बाद आपरेटर \"%c\" है बीच में कोई आपरेण्ड नहीं है"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "कोआर्डिनेट एक्सप्रेशन में अज्ञात चर या अचर \"%s\" है"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "कोआर्डिनेट एक्सप्रेशन विश्लेषक इसके बफर को ओवरफ्लो कर गया है."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "कोआर्डिनेट एक्सप्रेशन में बन्द लघुकोष्ठक है जिसमें कोई खुला कोष्ठक नहीं है"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "कोआर्डिनेट एक्सप्रेशन में खुला लघुकोष्ठक है जिसमें कोई बंद कोष्ठक नहीं है"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "प्रतीत होता है कि कोआर्डिनेट एक्सप्रेशन में कोई आपरेटर या आपरेंड नहीं है"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+#| msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "प्रसंग में एक अभिव्यक्ति है जिसने प्रतिफल में त्रुटि दिया: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> इस फ्रेम शैली हेतु "
+"निर्दिष्ट किया जाना अनिवार्य है"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "नहीं है <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "प्रसंग \"%s\" लोड करने में असफल: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "कोई <%s> सेट प्रसंग \"%s\" हेतु नहीं है"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"विंडो प्रकार \"%s\" में प्रसंग \"%s\" में कोई फ्रेम स्टाइल नियत नहीं है, जोड़ें <window "
+"type=\"%s\" style_set=\"whatever\"/> तत्व "
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"उपयोगकर्ता द्वारा पारिभाषित स्थिरांक बड़े अक्षर से शुरू होने चाहिएँ, जो \"%s\" नहीं हो "
+"रहा है"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "स्थिरांक \"%s\" पहले ही पारिभाषित है"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+#| msgid "No \"x\" attribute on element <%s>"
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "कोई \"%s\" गुण तत्व <%s> पर नहीं "
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "पंक्ति %d अक्षर %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "गुण \"%s\" दो बार इसी <%s> तत्व पर दोहराया गया"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "गुण \"%s\", <%s> तत्व इस संदर्भ में अवैध है "
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" को पूर्णांक की तरह व्याख्या नहीं कर सका"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "पुछल्ले अक्षरों \"%s\" को स्ट्रिंग \"%s\" में समझ नहीं सका"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "पूर्णांक %ld धनात्मक होना ही चाहिए"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "पूर्णांक %ld बहुत बड़ा है, वर्तमान अधिकतम है %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\" की फ्लोटिंग पाइंट संख्या की तरह व्याख्या नहीं कर सका"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "बूलियन मूल्य होने चाहिएँ - \"सही\" या \"गलत\" न कि \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "कोण 0.0 और 360.0, के बीच होना चाहिए, जो था %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "अल्फा 0.0 (अदृश्य) और 1.0 (पूर्ण अपारदर्शी), के बीच होना चाहिए, जो था %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"अवैध शीर्षक स्केल \"%s\" (इसमें से एक होना चाहिएः xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> नाम \"%s\" दूसरी बार उपयोग में"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> मूल \"%s\" पारिभाषित नहीं है."
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s>ज्यामिती \"%s\" पारिभाषित नहीं है."
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> को या तो ज्यामिती या मूल जिसमें ज्यामिती हो, को निर्दिष्ट करना होगा"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "आपको जरूर किसी अल्फा मान को अर्थ पूर्ण रखने के लिए किसी पृष्ठभूमि को निर्दिष्ट करना चाहिए"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "अज्ञात प्रकार \"%s\" तत्व <%s> पर नहीं "
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "अज्ञात स्टाइल-सेट \"%s\" तत्व <%s> पर नहीं "
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "विंडो प्रकार \"%s\" को पहले ही एक स्टाइल सेट आबंटित है"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "तत्व <%s>, <%s>से नीचे स्वीकार्य नहीं है"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+#| msgid ""
+#| "Cannot specify both button_width/button_height and aspect ratio for "
+#| "buttons"
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr "बटनों के लिए \"button_width\"/\"button_height\" और \"aspect_ratio\" दोनों निर्दिष्ट नहीं कर सकता है"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "दूरी \"%s\" अज्ञात है"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "आकृति अनुपात \"%s\" अज्ञात है"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "किनारा \"%s\" अज्ञात है"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+#| msgid "No \"start_angle\" attribute on element <%s>"
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "कोई \"start_angle\" विशेषता तत्व <%s> पर नहीं "
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+#| msgid "No \"extent_angle\" attribute on element <%s>"
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "कोई \"extent_angle\" या \"to\" विशेषता तत्व <%s> पर नहीं"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "ग्रेडिएंट प्रकार हेतु मान \"%s\" समझ नहीं पाया"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "तत्व <%s> हेतु भराव प्रकार \"%s\" समझ नहीं पाया"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "तत्व <%s> हेतु स्थिति \"%s\" समझ नहीं पाया"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "तत्व <%s> हेतु छाया \"%s\" समझ नहीं पाया"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "तत्व <%s> हेतु एरो \"%s\" समझ नहीं पाया"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "कोई <draw_ops> \"%s\" नाम से पारिभाषित नहीं है"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "draw_ops यहाँ: \"%s\" जोड़ने से सर्कुलर रेफरेंस बन जाएगा"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "अज्ञात स्थिति \"%s\" फ्रेम पीस हेतु"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "स्थिति %s पर फ्रेम शैली के पास पहले ही एक पीस है"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "कोई भी <draw_ops> नाम \"%s\" के साथ पारिभाषित नहीं है"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "अज्ञात फंक्शन बटन \"%s\" हेतु"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "बटन प्रकार्य \"%s\" इस संस्करण (%d, need %d) में मौजूद नहीं है"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "अज्ञात स्थिति बटन \"%s\" हेतु"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "फंक्शन %s स्थिति %s हेतु फ्रेम शैली में पहले ही एक बटन है"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" फ़ोकस गुण हेतु वैध मूल्य नहीं है"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" स्थिति गुण हेतु वैध मूल्य नहीं है"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "शैली \"%s\" पारिभाषित नहीं है"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" नया आकार गुण हेतु वैध मूल्य नहीं है"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "\"नया-आकार\" गुण <%s> तत्व पर अधिकतम/आभायुक्त स्थिति हेतु नहीं है "
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+#| msgid ""
+#| "Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+#| "states"
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "\"resize\" गुण <%s> तत्व पर अधिकतम/आभायुक्त स्थिति नहीं रखना चाहिए"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "शैली पहले ही स्थिति %s नया-आकार %s फ़ोकस %s हेतु निर्दिष्ट है"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "शैली पहले ही स्थिति %s फ़ोकस %s हेतु निर्दिष्ट है"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"दो draw_ops नहीं हो सकते एक <पीस> तत्व हेतु (प्रसंग ने बटन किया एक draw_ops एट्रिब्यूट "
+"तथा एक और <draw_ops> तत्व, या बटन किया दो तत्व )"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"दो draw_ops नहीं हो सकते एक <बटन> तत्व हेतु (प्रसंग ने निर्दिष्ट किया एक draw_ops "
+"एट्रिब्यूट तथा एक और <draw_ops> तत्व, या निर्दिष्ट किया दो तत्व)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"दो draw_ops नहीं हो सकते एक <मेनू-चिह्न> तत्व हेतु (प्रसंग ने निर्दिष्ट किया एक draw_ops "
+"एट्रिब्यूट तथा एक और <draw_ops> तत्व, या निर्दिष्ट किया दो तत्व)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "प्रसंग का सबसे बाहरी तत्व <मेटासिटी-प्रसंग> होना चाहिए न कि <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "तत्व <%s>, एक name/author/date/description तत्व के भीतर स्वीकार्य नहीं है"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "तत्व <%s> <स्थिरांक> तत्व के भीतर स्वीकार्य नहीं है"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "तत्व <%s>, distance/border/aspect_ratio तत्व के भीतर स्वीकार्य नहीं है"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "तत्व <%s>, ड्रा ऑपरेशन तत्व के भीतर स्वीकार्य नहीं है"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "तत्व <%s>, एक <%s> तत्व के भीतर स्वीकार्य नहीं है"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "फ्रेम पीस हेतु कोई draw_ops नहीं दिया गया है"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "बटन हेतु कोई draw_ops नहीं दिया गया है"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "कोई पाठ तत्व <%s> के भीतर स्वीकार्य नहीं है"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+#| msgid "<name> specified twice for this theme"
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> ने इस प्रसंग के लिए दो बार निर्दिष्ट किया है"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+#| msgid "Failed to fdopen() log file %s: %s\n"
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "प्रसंग %s के लिए वैध फ़ाइल ढूँढ़ने में विफल\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "प्रसंग फ़ाइल %s में रूट <मेटासिटी-प्रसंग> तत्व सम्मिलित नहीं है"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/विंडोज़ (_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/विंडोज़/टीयरऑफ़"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/विंडोज़/संवाद (_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/विंडोज़/मॉडल संवाद (_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/विंडोज़/यूटिलिटी (_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/विंडोज़/स्प्लैशस्क्रीन (_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/विंडोज़/शीर्ष डॉक (_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/विंडोज़/निचला डॉक (_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/विंडोज़/बायाँ डॉक (_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/विंडोज़/दायाँ डॉक (_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/विंडोज़/सभी डॉक्स (_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/विंडोज़/डेस्कटॉप (_k)"
+
+#: ../src/ui/theme-viewer.c:136
+msgid "Open another one of these windows"
+msgstr "इनमें से एक अन्य विंडो खोलें"
+
+#: ../src/ui/theme-viewer.c:143
+msgid "This is a demo button with an 'open' icon"
+msgstr "यह 'खोलें' चिह्न युक्त एक डेमो बटन है"
+
+#: ../src/ui/theme-viewer.c:150
+msgid "This is a demo button with a 'quit' icon"
+msgstr "यह एक डेमो बटन है 'बाहर' चिह्न के साथ"
+
+#: ../src/ui/theme-viewer.c:243
+msgid "This is a sample message in a sample dialog"
+msgstr "यह नमूना संवाद में नमूना संदेश था"
+
+#: ../src/ui/theme-viewer.c:326
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "नकली मेनू वस्तु %d\n"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Border-only window"
+msgstr "सिर्फ-किनारा विंडो"
+
+#: ../src/ui/theme-viewer.c:362
+msgid "Bar"
+msgstr "पट्टी"
+
+#: ../src/ui/theme-viewer.c:379
+msgid "Normal Application Window"
+msgstr "सामान्य अनुप्रयोग विंडो"
+
+#: ../src/ui/theme-viewer.c:383
+msgid "Dialog Box"
+msgstr "संवाद बक्सा"
+
+#: ../src/ui/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "मॉडल संवाद बक्सा"
+
+#: ../src/ui/theme-viewer.c:391
+msgid "Utility Palette"
+msgstr "यूटिलिटी पट्टिका"
+
+#: ../src/ui/theme-viewer.c:395
+msgid "Torn-off Menu"
+msgstr "टॉर्न-ऑफ मेनू"
+
+#: ../src/ui/theme-viewer.c:399
+msgid "Border"
+msgstr "किनारा"
+
+#: ../src/ui/theme-viewer.c:727
+#, c-format
+msgid "Button layout test %d"
+msgstr "बटन अभिन्यास जाँच %d"
+
+#: ../src/ui/theme-viewer.c:756
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g मिलीसेकण्ड एक विंडो फ्रेम ड्रॉ करने में"
+
+#: ../src/ui/theme-viewer.c:799
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "उपयोग: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:806
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "प्रसंग लोड करने में त्रुटि: %s\n"
+
+#: ../src/ui/theme-viewer.c:812
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "प्रसंग \"%s\" लोड किया %g सेकण्ड्स में\n"
+
+#: ../src/ui/theme-viewer.c:853
+msgid "Normal Title Font"
+msgstr "सामान्य शीर्षक फ़ॉन्ट"
+
+#: ../src/ui/theme-viewer.c:859
+msgid "Small Title Font"
+msgstr "छोटा शीर्षक फ़ॉन्ट"
+
+#: ../src/ui/theme-viewer.c:865
+msgid "Large Title Font"
+msgstr "बड़ा शीर्षक फ़ॉन्ट"
+
+#: ../src/ui/theme-viewer.c:870
+msgid "Button Layouts"
+msgstr "बटन अभिन्यास"
+
+#: ../src/ui/theme-viewer.c:875
+msgid "Benchmark"
+msgstr "बेंचमार्क"
+
+#: ../src/ui/theme-viewer.c:922
+msgid "Window Title Goes Here"
+msgstr "विंडो शीर्षक यहाँ जाएगा"
+
+#: ../src/ui/theme-viewer.c:1026
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d frames को %g क्लाइंट पक्ष सेकेंड में खींचा (%g milliseconds per frame) और %g X "
+"सर्वर संसाधन को समाहित करता सेकेंड वाल घड़ी (%g विविध प्रति फ्रेम)\n"
+
+#: ../src/ui/theme-viewer.c:1245
+msgid "position expression test returned TRUE but set error"
+msgstr "स्थिति एक्सप्रेशन जाँच ने सही लौटाया परंतु त्रुटि नियत नहीं किया"
+
+#: ../src/ui/theme-viewer.c:1247
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "स्थिति एक्सप्रेशन जाँच ने ग़लत लौटाया परंतु त्रुटि नियत नहीं किया"
+
+#: ../src/ui/theme-viewer.c:1251
+msgid "Error was expected but none given"
+msgstr "त्रुटि प्रत्याशित था, परन्तु दिया नहीं गया"
+
+#: ../src/ui/theme-viewer.c:1253
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "त्रुटि %d वांछित था परन्तु %d दिया गया"
+
+#: ../src/ui/theme-viewer.c:1259
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "त्रुटि की प्रत्याशा नहीं थी परन्तु एक लौटाया गया: %s"
+
+#: ../src/ui/theme-viewer.c:1263
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "एक्स मूल्य था %d, %d वांछित था"
+
+#: ../src/ui/theme-viewer.c:1266
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "वाई मूल्य था %d, %d वांछित था"
+
+#: ../src/ui/theme-viewer.c:1331
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d निर्देशांक एक्सप्रेशन्स पार्स किया %g सेकण्ड्स में (औसतन %g सेकण्ड्स)\n"
+
diff --git a/po/hr.po b/po/hr.po
new file mode 100644
index 00000000..849495dc
--- /dev/null
+++ b/po/hr.po
@@ -0,0 +1,3679 @@
+# Translation of marco to Croatiann
+# Copyright (C) Croatiann team
+# Translators: Antun Krasic <[email protected]>,Automatski Prijevod <>,Danijel Studen <[email protected]>,Denis Lackovic <[email protected]>,Jerko Škifić <[email protected]>,Kresimir Kalafatic <>,Željko Brajdić <[email protected]>,Ljubomir Božić <[email protected]>,Nikola Planinac <>,pr pr <[email protected]>,Robert Sedak <[email protected]>,Tanja Minarik <[email protected]>,Tomislav Cavrag <[email protected]>,Vedran Vyroubal <[email protected]>,
+msgid ""
+msgstr ""
+"Project-Id-Version: marco 0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-09-09 17:59+0200\n"
+"PO-Revision-Date: 2008-04-11 03:22+0000\n"
+"Last-Translator: Launchpad Translations Administrators <rosetta@launchpad."
+"net>\n"
+"Language-Team: Croatian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
+"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"X-Launchpad-Export-Date: 2008-05-28 13:28+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Radna površina"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Upravitelj prozorima"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Nepoznati zahtijev informacija o prozoru: %d"
+
+#: ../src/core/delete.c:70 ../src/core/delete.c:97
+#: ../src/ui/marco-dialog.c:50 ../src/ui/theme-parser.c:481
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Nije moguće analizirati \"%s\" kao cijeli broj"
+
+#: ../src/core/delete.c:77 ../src/core/delete.c:104
+#: ../src/ui/marco-dialog.c:57 ../src/ui/theme-parser.c:490
+#: ../src/ui/theme-parser.c:545
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Nisam shvatio slijedece znakove \"%s\" u nizu podataka \"%s\""
+
+#: ../src/core/delete.c:135
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Nije uspjelo analiziranje poruke \"%s\" iz dijaloškog procesa\n"
+
+#: ../src/core/delete.c:253
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Pogreška pri čitanju kod procesa ekrana dijaloga: %s\n"
+
+#: ../src/core/delete.c:336
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Greška pri pokretanju marco-dialoga za potvrdu o zatvaranju aplikacije %"
+"s\n"
+
+#: ../src/core/delete.c:445
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Nije uspjelo dobivanje imena računala: %s\n"
+
+#: ../src/core/display.c:256
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Nedostaje ekstenzija %s potrebna za stvaranje kompozicije"
+
+#: ../src/core/display.c:334
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Nije uspjelo otvaranje X Window System prikaza'%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Izubljen spoj sa prikazom '%s';\n"
+"najvjerojatnije je X server ugašen, ili ste ubili/ubištili\n"
+"rukovoditelja prozora.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Kobna IO greška %d (%s) na prikazu '%s'.\n"
+
+#: ../src/core/keybindings.c:924
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Neki drugi prograk već koristi kljuć %s sa modifikacijama %x kao spoj\n"
+
+#: ../src/core/keybindings.c:2563
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+"Greška pri pokretanju marco-dialoga za ispisom greške o komandi %s\n"
+
+#: ../src/core/keybindings.c:2668
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Naredba %d nije definirana.\n"
+
+#: ../src/core/keybindings.c:3705
+msgid "No terminal command has been defined.\n"
+msgstr "Niti jedna konzolna naredba nije definirana\n"
+
+#: ../src/core/main.c:116
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+
+#: ../src/core/main.c:253
+msgid "Disable connection to session manager"
+msgstr "Isključi vezu prema upravitelju sesija"
+
+#: ../src/core/main.c:259
+msgid "Replace the running window manager with Marco"
+msgstr "Zamjeni tekući upravitelj porozorima sa Marco"
+
+#: ../src/core/main.c:265
+msgid "Specify session management ID"
+msgstr "Odredite ID upravljanja sesijama"
+
+#: ../src/core/main.c:270
+msgid "X Display to use"
+msgstr "Koji X Display da koristim"
+
+#: ../src/core/main.c:276
+msgid "Initialize session from savefile"
+msgstr "Inicijaliziraj sesiju iz spremljene datoteke"
+
+#: ../src/core/main.c:282
+msgid "Print version"
+msgstr "Inačica za ispis"
+
+#: ../src/core/main.c:288
+msgid "Make X calls synchronous"
+msgstr ""
+
+#: ../src/core/main.c:294
+msgid "Turn compositing on"
+msgstr "Uključi kompoziciju"
+
+#: ../src/core/main.c:300
+msgid "Turn compositing off"
+msgstr "Isključi kompoziciju"
+
+#: ../src/core/main.c:451
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Nisam uspio pretražiti mapu tema: %s\n"
+
+#: ../src/core/main.c:467
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Nije moguće naći temu! Provjerite postoji li %s i sadrži li uobičajene "
+"teme.\n"
+
+#: ../src/core/main.c:526
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Nije uspjelo ponovno pokretanje: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#.
+#: ../src/core/prefs.c:503 ../src/core/prefs.c:655
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf ključ '%s' je postavljen na neispravnu vrijednost\n"
+
+#: ../src/core/prefs.c:584 ../src/core/prefs.c:824
+#, fuzzy, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d pohranjen u MateConf ključu %s je izvan dometa od 0 do %d\n"
+
+#: ../src/core/prefs.c:628 ../src/core/prefs.c:702 ../src/core/prefs.c:750
+#: ../src/core/prefs.c:814 ../src/core/prefs.c:1109 ../src/core/prefs.c:1125
+#: ../src/core/prefs.c:1144 ../src/core/prefs.c:1160 ../src/core/prefs.c:1177
+#: ../src/core/prefs.c:1193
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf ključ \"%s\" je postavljen na neispravan tip\n"
+
+#: ../src/core/prefs.c:1263
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Kompromisi za loše programe su isključeni. Neki programi se mogu ponašati "
+"čudno.\n"
+
+#: ../src/core/prefs.c:1333
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Nije moguće analizirati opis pisma \"%s\" iz Gconf ključa %s\n"
+
+#: ../src/core/prefs.c:1393
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"“%s“ je pronađen u bazi podešavanja što nije ispravna vrijednost za tipku "
+"koja mijenja ponašanje tipki miša\n"
+
+#: ../src/core/prefs.c:1810
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Pogreška prilikom podešavanja broja radnih površina na %d: %s\n"
+
+#: ../src/core/prefs.c:2131 ../src/core/prefs.c:2643
+#, fuzzy, c-format
+msgid "Workspace %d"
+msgstr "Pomakni na _gornju radnu površinu"
+
+#: ../src/core/prefs.c:2161 ../src/core/prefs.c:2334
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "\"%s\" nađen u bazi postavki nije ispravna kombinacija tipki \"%s\"\n"
+
+#: ../src/core/prefs.c:2724
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Pogreška prilikom podešavanja imena radne površine %d u \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2917
+#, fuzzy, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Pogreška prilikom podešavanja imena radne površine %d u \"%s\": %s\n"
+
+#: ../src/core/screen.c:350
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Ekran %d na prikazu '%s' je neispravan\n"
+
+#: ../src/core/screen.c:366
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Ekran %d na prikazu \"%s\" već ima rkovoditelja prozora; pokušajte koristiti "
+"--replace opciju da zamjenite trenutni rukovoditelj prozora.\n"
+
+#: ../src/core/screen.c:393
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Nije moguće dobiti biranje upravitelja prozora na ekranu %d prikaza \"%s\"\n"
+
+#: ../src/core/screen.c:451
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Ekran %d na prikazu \"%s\" već ima rukovoditelj prozora\n"
+
+#: ../src/core/screen.c:661
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Nije moguće izbaciti otpustiti ekran %d na prikazu \"%s\"\n"
+
+#: ../src/core/session.c:837 ../src/core/session.c:844
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Nije moguće napraviti mapu '%s': %s\n"
+
+#: ../src/core/session.c:854
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Nije moguće otvoriti datoteku '%s' za zapis: %s\n"
+
+#: ../src/core/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Pogreška zapisivanja datoteke sesije '%s': %s\n"
+
+#: ../src/core/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Greška pri zatvaranju session datoteke '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1093
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Nije uspjelo čitanje snimljene datoteke sesije %s: %s\n"
+
+#: ../src/core/session.c:1132
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Nije uspjela analiza snimljene datoteke sesije: %s\n"
+
+#: ../src/core/session.c:1181
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> atribut opažen ali već imamo ID sesije"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "Nepoznato svojstvo %s u <marco_session> elementu"
+
+#: ../src/core/session.c:1211
+msgid "nested <window> tag"
+msgstr "ugniježden <window> tag"
+
+#: ../src/core/session.c:1269 ../src/core/session.c:1301
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Nepoznato svojstvo %s u <window> elementu"
+
+#: ../src/core/session.c:1373
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Nepoznato svojstvo %s u <maximized> elementu"
+
+#: ../src/core/session.c:1433
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Nepoznato svojstvo %s u <geometry> elementu"
+
+#: ../src/core/session.c:1453
+#, c-format
+msgid "Unknown element %s"
+msgstr "Nepoznati element %s"
+
+#: ../src/core/session.c:1879
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Greška pri pokretanju marco-dialoga da upozori aplikacije koje ne "
+"podržavaju session managment %s\n"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Nije uspjelo otvaranje zapisnika o ispravku grešaka: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Nije uspjelo fdopen() datoteke zapisnika%s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Otvorena zapisnička datoteka %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Metaciti je kompajliran bez podrške za preopširan način rada\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Upravitelj prozora: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Greška u upravitelju prozora: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Upozorenje upravitelja prozora: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Greška upravitelja prozora: "
+
+#: ../src/core/window-props.c:206
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Program je postavio neispravan NET_WM_PID %lu\n"
+
+#: ../src/core/window-props.c:338
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (na %s)"
+
+#: ../src/core/window-props.c:1420
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Neispravan WM_TRANSIENT_FOR prozor 0x%lx specificiran za %s.\n"
+
+#. first time through
+#: ../src/core/window.c:5643
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Prozor %s je postavio SM_CLIENT_ID na samog sebe umjesto na prozor "
+"WM_CLIENT_LEADER kao što je navedeno u ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6208
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Prozor %s je postavio MWM što nagovještava da nije promjenjljive veličine, "
+"ali je postavio minimalnu veličinu %d x %d i maksimalnu veličinu %d x %d što "
+"nema mnogo smisla.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Prozor 0x%lx ima osobinu %s\n"
+"tako da je očekivano da ima tip %s format %d,\n"
+"a zapravo ima tip %s format %d n_items %d.\n"
+"Ovo je najverovatnije greška u programu, a ne u menadžeru prozora.\n"
+"Prozor ima naslov=\"%s\" klasa=\"%s\" ime=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Svojstvo %s na prozoru 0x%lx je sadržalo neispravni UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Svojstvo %s na prozoru 0x%lx sadrži neispravni UTF-8 za predmet %d na "
+"popisu\n"
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Nije ugrađeno) Navigacija radi u smislu aplikacija, ne prozora"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Znakovni niz koji opisuje font za naslovnu traku prozora. Veličina će iz "
+"opisa biti upotrebljena samo ako je titlebar_font_size opcija postavljena na "
+"0. Također, ova opcija je onemogućena ako je titlebar_uses_desktop_font "
+"postavljena."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Akcija na naslovnom meniju dvostruki-klik"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Action on title bar middle-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:5
+msgid "Action on title bar right-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:6
+msgid "Activate window menu"
+msgstr "Aktiviraj prozor izbornika"
+
+#: ../src/marco.schemas.in.h:7
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Aranžman funkcijskih tipki na naslovoj traci"
+
+#: ../src/marco.schemas.in.h:8
+#, fuzzy
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Raspored gumba na naslovnoj traci. Vrijednost treba biti niz znakova, kao na "
+"primjer „menu:minimize,maximize,close“; dvije točke razdvaju lijevi kut "
+"prozora od desnog, a gumbi su razdvojeni točka-zarezima. Dupliranje gumba "
+"nije dozvoljeno. Nepoznata imena gumba se zanemaruju tako da se gumbi koji "
+"će se dodavati u buduće inačice marcoa bez poremećenja starijih inačica."
+
+#: ../src/marco.schemas.in.h:9
+msgid "Automatically raises the focused window"
+msgstr "Automatski podiže prozor sa fokusom"
+
+#: ../src/marco.schemas.in.h:10
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Pritiskom na prozor za vrijeme držanja ove tipke premejestiti će prozor "
+"(lijeva tipka miša), podići prozor (srednja tipka miša) ili prikazati glavni "
+"izbornik (desna tipka miša). Tipka može biti na primjer \"&lt;Alr&gt;\" ili "
+"\"&lt;Super&gt;\""
+
+#: ../src/marco.schemas.in.h:11
+msgid "Close window"
+msgstr "Zatvori prozor"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Commands to run in response to keybindings"
+msgstr "Naredbe koje će se pokrenuti na odaziv kombinacije tipki sa tipkovnice"
+
+#: ../src/marco.schemas.in.h:13
+msgid "Compositing Manager"
+msgstr "Kompozitni upravitelj"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Control how new windows get focus"
+msgstr "Kontrola fokusiranja novih prozora"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Current theme"
+msgstr "Trenutna tema"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Odgoda u milisekundama za opciju automatskog podizanja"
+
+#: ../src/marco.schemas.in.h:17
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Određuje li je Marco kompozitni upravitelj."
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Određuje hoće li aplikacije ili sistem generirati zvučne 'beepove'može se "
+"koristiti u spoju sa 'vizualnim zvonom' da se dozvoli tihi 'beep'"
+
+#: ../src/marco.schemas.in.h:19
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Isključi mogućnosti potrebne za stare ili neispravne aplikacijie"
+
+#: ../src/marco.schemas.in.h:20
+msgid "Enable Visual Bell"
+msgstr "Aktiviraj vidni signal"
+
+#: ../src/marco.schemas.in.h:21
+msgid "Hide all windows and focus desktop"
+msgstr "Sakrij sve prozore i pokaži radnu površinu"
+
+#: ../src/marco.schemas.in.h:22
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Ako je uključeno, a način fokusa je \"sloppy\" ili \"mouse\", tada će "
+"fokusirani prozor biti automatski podignut nakon vremena određenog s "
+"auto_raise_delay ključem. Ovo se ne odnosi na podizanje prozora klikom, niti "
+"sa fokusiranjem tokom povuci-pusti metode."
+
+#: ../src/marco.schemas.in.h:23
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ako je aktivirano, ignorira se titlebar_font opcija i koristi se standardno "
+"aplikacijsko pismo za naslovnu traku prozora."
+
+#: ../src/marco.schemas.in.h:24
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Ako je uključeno, marco če korisnicima davati manje povratnih informacija "
+"koristeći žičane modele, isključivajući animacije ili nekako drukčije. Ovo "
+"ozbiljno reducira korisnost za mnoge korisnike, ali zato omogućuje "
+"izvršavanje starijih programa, a također može biti korisno kod terminalskih "
+"poslužitelja. Usprkos tome žičani modeli su isključeni kada je ukjučen "
+"sustava za dostupnost."
+
+#: ../src/marco.schemas.in.h:25
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Ako je uključeno, Marco će raditi u aplikativnom, a ne prozorskom načinu. "
+"Koncept je malo apstraktan, ali općenito aplikativni način rada je sličniji "
+"Mac-u nego Windowsima. Kad prozor dobije fokus, svi prozori od te aplikacije "
+"će biti podignuti. Također klikovi se ne prosljeđuju do prozora u drugim "
+"aplikacijama. Trenutno ovaj naćin rada još nije potpuno implementiran."
+
+#: ../src/marco.schemas.in.h:26
+msgid "If true, trade off usability for less resource usage"
+msgstr "Ako je postavljno, mijenja se korisnost za manje korištenje resursa"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Lower window below other windows"
+msgstr "Spustiti prozor ispod ostalih prozora"
+
+#: ../src/marco.schemas.in.h:28
+msgid ""
+"Many actions (e.g. clicking in the client area, moving or resizing the "
+"window) normally raise the window as a side-effect. Setting this option to "
+"false, which is strongly discouraged, will decouple raising from other user "
+"actions, and ignore raise requests generated by applications. See http://"
+"bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:29
+msgid "Maximize window"
+msgstr "Maksimiziraj prozor"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Maximize window horizontally"
+msgstr "Maksimiziranje prozora horizontalno"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Maximize window vertically"
+msgstr "Maksimiziranje prozora okomito"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Minimize window"
+msgstr "Minimiziraj prozor"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Modifier to use for modified window click actions"
+msgstr "Preinake za korištenje prepravljenih akcija klika u prozoru"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Pomicanje unatrag između panela i radnih površina bez odlaganja"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "Pomicanje untrag između panela i radne površine sa popup-om"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move backwards between windows immediately"
+msgstr "Pomicanje unatrag između prozora bez odlaganja"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move backwards between windows of an application immediately"
+msgstr "Pomakni se trenutno između prozora programa unatrag"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move backwards between windows of an application with popup"
+msgstr "Pomakni se trenutno između prozora programa unatrag sa pop-upom"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move between panels and the desktop immediately"
+msgstr "Pomicanje između prozora i radne površine bez odlaganja"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move between panels and the desktop with popup"
+msgstr "Pomicanje između panela i radne površine sa popup-om."
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move between windows immediately"
+msgstr "Pomicanje između prozora bez odlaganja"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move between windows of an application immediately"
+msgstr "Pomakni se trenutno između prozora programa"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move between windows of an application with popup"
+msgstr "Prebacivanje između prozroza programa uz pop-up"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move between windows with popup"
+msgstr "Pomicanje između prozora sa popupom"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move focus backwards between windows using popup display"
+msgstr "Pomicanje usredotočenja unatrag između prozora koristeći popup prikaz"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window"
+msgstr "Pomakni prozor"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window one workspace down"
+msgstr "Pomakni prozor jedan radni prostor dolje"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window one workspace to the left"
+msgstr "Pomakni prozor jedan radni prostor nalijevo"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window one workspace to the right"
+msgstr "Pomakni prozor jedan radni prostor udesno"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window one workspace up"
+msgstr "Pomakni prozor jedan radni prostor gore"
+
+#: ../src/marco.schemas.in.h:51
+#, fuzzy
+msgid "Move window to center of screen"
+msgstr "Premjesti prozor na istočnu stranu zaslona"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to east side of screen"
+msgstr "Premjesti prozor na istočnu stranu zaslona"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Move window to north side of screen"
+msgstr "Premjesti prozor na sjevernu stranu zaslona"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Move window to north-east corner"
+msgstr "Premjesti prozor na sjevero-istočnu stranu zaslona"
+
+#: ../src/marco.schemas.in.h:55
+msgid "Move window to north-west corner"
+msgstr "Premjesti prozor na sjevero-zapadnu stranu zaslona"
+
+#: ../src/marco.schemas.in.h:56
+msgid "Move window to south side of screen"
+msgstr "Premjesti prozor na južnu stranu zaslona"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Move window to south-east corner"
+msgstr "Premjesti prozor na jugo-istočnu stranu zaslona"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Move window to south-west corner"
+msgstr "Premjesti prozor na jugo-zapadnu stranu zaslona"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Move window to west side of screen"
+msgstr "Premjesti prozor na zapadnu stranu zaslona"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Move window to workspace 1"
+msgstr "Pomakni prozor na radni prostor 1"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Move window to workspace 10"
+msgstr "Premjesti prozor na radni prostor 10"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Move window to workspace 11"
+msgstr "Premjesti prozor na radni prostor 11"
+
+#: ../src/marco.schemas.in.h:63
+msgid "Move window to workspace 12"
+msgstr "Premjesti prozor na radni prostor 12"
+
+#: ../src/marco.schemas.in.h:64
+msgid "Move window to workspace 2"
+msgstr "Premjesti prozor na radni prostor 2"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Move window to workspace 3"
+msgstr "Premjesti prozor na radni prostor 3"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Move window to workspace 4"
+msgstr "Premjesti prozor na radni prostor 4"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Move window to workspace 5"
+msgstr "Premjesti prozor na radni prostor 5"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Move window to workspace 6"
+msgstr "Premjesti prozor na radni prostor 6"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Move window to workspace 7"
+msgstr "Premjesti prozor na radni prostor 7"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Move window to workspace 8"
+msgstr "Premjesti prozor na radni prostor 8"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Move window to workspace 9"
+msgstr "Premjesti prozor na radni prostor 9"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Name of workspace"
+msgstr "Ime radnog prostora"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Number of workspaces"
+msgstr "Broj radnih prostora"
+
+#: ../src/marco.schemas.in.h:74
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Broj radnih površina. Mora biti veći od 0, a ima fiksni maksimalan broj kako "
+"bi se spriječila neupotrebljivost zbog slučajnog odabira prevelikog broja."
+
+#: ../src/marco.schemas.in.h:75
+msgid "Raise obscured window, otherwise lower"
+msgstr "Podigni nejasan prozor, inače spusti"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Raise window above other windows"
+msgstr "Podigni prozor iznad ostalih prozora"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Resize window"
+msgstr "Promijeni veličinu prozora"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Run a defined command"
+msgstr "Pokreni definiranu naredbu"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Run a terminal"
+msgstr "Pokreni u terminalu"
+
+#: ../src/marco.schemas.in.h:80
+msgid "Show the panel menu"
+msgstr "Pokažite izbornik panela"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Show the panel run application dialog"
+msgstr "Pokaži dijalog pokretanja programa u panelu"
+
+#: ../src/marco.schemas.in.h:82
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Neke aplikacije zanemaruju specifikacije upravitelja prozorima te stoga isti "
+"mogu imati problema s odreženim funkcionalnostima. Ova opcija stavlja "
+"Marco u rigorozno ispravan način rada, te daje mnogo koenzistnije "
+"korisniko sučelje, ali samo u slučaju da ne pokrećete aplikacije koje se ne "
+"ponašaju u skladu s specifikacijama."
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 1"
+msgstr "Prebaci se na radni prostor 1"
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace 10"
+msgstr "Prebaci se na radni prostor 10"
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace 11"
+msgstr "Prebaci se na radni prostor 11"
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace 12"
+msgstr "Prebaci se na radni prostor 12"
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace 2"
+msgstr "Prebaci se na radni prostor 2"
+
+#: ../src/marco.schemas.in.h:88
+msgid "Switch to workspace 3"
+msgstr "Prebaci se na radni prostor 3"
+
+#: ../src/marco.schemas.in.h:89
+msgid "Switch to workspace 4"
+msgstr "Prebaci se na radni prostor 4"
+
+#: ../src/marco.schemas.in.h:90
+msgid "Switch to workspace 5"
+msgstr "Prebaci se na radni prostor 5"
+
+#: ../src/marco.schemas.in.h:91
+msgid "Switch to workspace 6"
+msgstr "Prebaci se na radni prostor 6"
+
+#: ../src/marco.schemas.in.h:92
+msgid "Switch to workspace 7"
+msgstr "Prebaci se na radni prostor 7"
+
+#: ../src/marco.schemas.in.h:93
+msgid "Switch to workspace 8"
+msgstr "Prebaci se na radni prostor 8"
+
+#: ../src/marco.schemas.in.h:94
+msgid "Switch to workspace 9"
+msgstr "Prijeđi na radni prostor 9"
+
+#: ../src/marco.schemas.in.h:95
+msgid "Switch to workspace above this one"
+msgstr "Prijeđi na na radni prostor iznad ovog"
+
+#: ../src/marco.schemas.in.h:96
+msgid "Switch to workspace below this one"
+msgstr "Prijeđi na radni prostor ispod ovog"
+
+#: ../src/marco.schemas.in.h:97
+msgid "Switch to workspace on the left"
+msgstr "Prebaci se na radni prostor na ljevo"
+
+#: ../src/marco.schemas.in.h:98
+msgid "Switch to workspace on the right"
+msgstr "Prijeđi se na radni prostor na desno"
+
+#: ../src/marco.schemas.in.h:99
+msgid "System Bell is Audible"
+msgstr "Sistemsko zvono se čuje"
+
+#: ../src/marco.schemas.in.h:100
+msgid "Take a screenshot"
+msgstr "Uzmi sliku zaslona"
+
+#: ../src/marco.schemas.in.h:101
+msgid "Take a screenshot of a window"
+msgstr "Uzmi sliku prozora"
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Naređuje Metasitiju da prikaže nešto kada zazvoni sistemsko zvono ili neki "
+"drugi program zazvoni. Trenutno su moguće dve vrijednosti, „fullscreen“ "
+"kojim cijeli zaslon treperi crno-bijelo, i „frame_flash“ kada treperi samo "
+"naslovna linija prozora koji je zazvonio. Ukoliko nije poznat program koji "
+"je zazvonio (kao što je to obično slučaj sa „sistemskim zvonom“), trepereće "
+"naslovna linija prozora koji je trenutno u fokusu."
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Ključ /apps/marco/global_keybindings/run_command_N definira tiipke koji "
+"odgovaraju ovim komandama. Pritiskom kombinacije tipki za pokreni_komadu_N "
+"će izvršiti komandu_N."
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Ključ /apps/marco/global_keybindings/run_command_N definira funkciju "
+"tipki kojim se pokreće naredba navedena pomoću njega."
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Ključ /apps/marco/global_keybindings/run_command_window_screenshot "
+"definira funkciju tipki kojim se pokreće naredba navedena pomoću njega."
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Kombinacije tipki koji pokreću odgovarajuće označenu naredbu u /apps/"
+"marco/keybinding_commands ključu. Oblik zapisa izgleda kao \"<Control>a\" "
+"ili \"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava "
+"velika ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". "
+"Ako postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor iznad trenutnog radnog "
+"prostora. Oblik zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". "
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor ispod trenutnog radnog "
+"prostora. Oblik zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". "
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako pstavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor lijevo od trenutnog radnog "
+"prostora. Oblik zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". "
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor desno od trenutnog "
+"radnogprostora. Oblik zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1"
+"\". Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 1. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 10. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 11. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 12. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 2. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 3. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 4. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 5. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 6. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 7. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 8. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prebacuje na radni prostor 9. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\".Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja pokreće izbornik prozora. Oblik zapisa izgleda kao "
+"\"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< "
+"Ctrl>\". Ako postavite opciju na specijalni niz znakova \"disabled\", tada "
+"neće biti korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja zatvara prozor. Oblik zapisa izgleda kao \"<Control>a"
+"\" ili \"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava "
+"velika ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". "
+"Ako postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja postavlja prozor u način rada za pomicanje i "
+"omogućava pomicanje prozora pomoću tipkovnice. Oblik zapisa izgleda kao "
+"\"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< "
+"Ctrl>\". Ako postavite opciju na specijalni niz znakova \"disabled\", tada "
+"neće biti korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja postavlja prozor u način rada za razvlačenje i "
+"omogućava razvlačenje prozora pomoću tipkovnice. Oblik zapisa izgleda kao "
+"\"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< "
+"Ctrl>\". Ako postavite opciju na specijalni niz znakova \"disabled\", tada "
+"neće biti korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja skriva sve obične prozore i postavlja fokus na "
+"pozadinu radne površine. Oblik zapisa izgleda kao \"<Control>a\" ili "
+"\"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava velika "
+"ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja povećava prozor. Oblik zapisa izgleda kao \"<Control>a"
+"\" ili \"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava "
+"velika ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". "
+"Ako postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja smanjuje prozor. Oblik zapisa izgleda kao \"<Control>a"
+"\" ili \"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava "
+"velika ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". "
+"Ako postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor za jednu radnu površinu niže. Oblik "
+"zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice "
+"poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor za jednu radnu površinu lijevo. "
+"Oblik zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za "
+"obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni "
+"niz znakova \"disabled\", tada neće biti korištena niti jedna kombinacija "
+"tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor za jednu radnu površinu desno.Oblik "
+"zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice "
+"poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor za jednu radnu površinu više. Oblik "
+"zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice "
+"poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 1. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 1. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 11. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 12. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 2. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 3. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 4. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 5. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 6. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 7. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 8. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta prozor na radnu površinu 9. Oblik zapisa "
+"izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je "
+"dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:146
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta fokus unazad između panela i radne "
+"površine koristeći popup prozor. Oblik zapisa izgleda kao \"<Control>a\" ili "
+"\"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava velika "
+"ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:147
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta fokus unazad između panela i radne "
+"površine bez popup prozora. Oblik zapisa izgleda kao \"<Control>a\" ili "
+"\"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava velika "
+"ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application without a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ova kombinacija tipki se koristi kako bi prebacivali fokus unatrag između "
+"prozora aplikacije bez popup prozora. Držeći \"shift\" zajedno s ovom "
+"kombinacijom fokus se mjenja naprijed. Format izgleda kao \"&lt;Control&gt;a"
+"\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\", te je prilično fleksibilan te "
+"dozvoljava mala ili velika slova te kratice poput \"&lt;Ctl&gt;\" i \"&lt;"
+"Ctrl&gt;\". Ako unesete posebnu riječ \"disabled\", neće biti kombinacije "
+"tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application, using a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ova kombinacija tipki se koristi kako bi prebacivali fokus unatrag između "
+"prozora aplikacije sa popup prozorom.Držeći \"shift\" zajedno s ovom "
+"kombinacijom fokus se mjenja naprijed. Format izgleda kao \"&lt;Control&gt;a"
+"\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\", te je prilično fleksibilan te "
+"dozvoljava mala ili velika slova te kratice poput \"&lt;Ctl&gt;\" i \"&lt;"
+"Ctrl&gt;\". Ako unesete posebnu riječ \"disabled\", neće biti kombinacije "
+"tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta fokus unazad između prozora bez popup "
+"prozora. Držeći tipku \"shift\" zajedno s kombinacijom tipki omogućuje se "
+"suprotni smijer premiještanja. Oblik zapisa izgleda kao \"<Control>a\" ili "
+"\"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava velika "
+"ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:151
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta fokus unazad između prozora koristeći "
+"popup prozor. Držeći tipku \"shift\" zajedno s kombinacijom tipki omogućuje "
+"se suprotni smijer premiještanja. Oblik zapisa izgleda kao \"<Control>a\" "
+"ili \"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava "
+"velika ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". "
+"Ako postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta fokus između ploče i radne površine "
+"koristeći popup prozor. Oblik zapisa izgleda kao \"<Control>a\" ili "
+"\"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava velika "
+"ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta fokus između ploče i radne površine bez "
+"popup prozora. Oblik zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1"
+"\". Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"The keybinding used to move focus between windows of an application without "
+"a popup window. Holding the \"shift\" key while using this binding reverses "
+"the direction of movement. The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Ova kombinacija tipki se koristi kako bi prebacivali fokus unatrag između "
+"prozora aplikacije bez popup prozora. Držeći \"shift\" zajedno s ovom "
+"kombinacijom fokus se mjenja naprijed. Format izgleda kao \"&lt;Control&gt;a"
+"\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\", te je prilično fleksibilan te "
+"dozvoljava mala ili velika slova te kratice poput \"&lt;Ctl&gt;\" i \"&lt;"
+"Ctrl&gt;\". Ako unesete posebnu riječ \"disabled\", neće biti kombinacije "
+"tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"The keybinding used to move focus between windows of an application, using a "
+"popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while "
+"using this binding reverses the direction of movement. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ova kombinacija tipki se koristi kako bi prebacivali fokus unatrag između "
+"prozora aplikacije sa popup prozorom. Držeći \"shift\" zajedno s ovom "
+"kombinacijom fokus se mjenja naprijed. Format izgleda kao \"&lt;Control&gt;a"
+"\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\", te je prilično fleksibilan te "
+"dozvoljava mala ili velika slova te kratice poput \"&lt;Ctl&gt;\" i \"&lt;"
+"Ctrl&gt;\". Ako unesete posebnu riječ \"disabled\", neće biti kombinacije "
+"tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta fokus između prozora bez popup prozora."
+"(Uobičajeno <Alt>Escape) Držeći tipku \"shift\" zajedno s kombinacijom tipki "
+"omogućuje se suprotni smijer premiještanja. Oblik zapisa izgleda kao "
+"\"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< "
+"Ctrl>\". Ako postavite opciju na specijalni niz znakova \"disabled\", tada "
+"neće biti korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja premiješta fokus između prozora koristeći popup "
+"prozor. (Uobičajeno <Alt>Tab) Držeći tipku \"shift\" zajedno s kombinacijom "
+"tipki omogućuje se suprotni smijer premiještanja. Oblik zapisa izgleda kao "
+"\"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< "
+"Ctrl>\". Ako postavite opciju na specijalni niz znakova \"disabled\", tada "
+"neće biti korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:158
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja uključuje ili isključuje opciju da prozor bude uvijek "
+"na vrhu. Prozor koji je uvijek na vrhu videti će se preko drugih "
+"preklapajućih prozora. Oblik zapisa izgleda kao \"<Control>a\" ili "
+"\"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava velika "
+"ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:159
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja uključuje ili isključuje prikaz preko cijelog zaslona."
+"Oblik zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za "
+"obradu je dosta slobodan i dozvoljava velika ili mala slova, takođe i "
+"skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni "
+"niz znakova \"disabled\", tada neće biti korištena niti jedna kombinacija "
+"tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:160
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja uključuje ili isključuje uvećanje prozora na najveću "
+"moguću veličinu. Oblik zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1"
+"\". Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:161
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja uključuje ili isključuje zasjenčano stanje. Oblik "
+"zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice "
+"poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:162
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja uključuje ili isključuje mogučnost da prozor bude na "
+"svim radnim površinama. Oblik zapisa izgleda kao \"<Control>a\" ili "
+"\"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava velika "
+"ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja poništava uvećanje prozora na najveću moguću "
+"veličinu. Oblik zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". "
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:164
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija tipki koja prikazuje dijaloški okvir \"Pokreni program\". Oblik "
+"zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice "
+"poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:165
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prikazuje glavni izbornik ploče. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:166
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja pokreće alat ploče za snimanje izgleda prozora. Oblik "
+"zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice "
+"poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:167
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija tipki koja pokreće alat ploče za snimanje izgleda zaslone. Oblik "
+"zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice "
+"poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:168
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja prikazuje glavni izbornik ploče. Oblik zapisa izgleda "
+"kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu je dosta "
+"slobodan i dozvoljava velika ili mala slova, takođe i skraćenice poput "
+"\"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz znakova "
+"\"disabled\", tada neće biti korištena niti jedna kombinacija tipki za ovu "
+"aktivnost."
+
+#: ../src/marco.schemas.in.h:169
+msgid "The name of a workspace."
+msgstr "Ime radne površine."
+
+#: ../src/marco.schemas.in.h:170
+msgid "The screenshot command"
+msgstr "Naredba za slikanje zaslona"
+
+#: ../src/marco.schemas.in.h:171
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Tema utvrđuje izgled rubova prozora, naslovne linije i svega ostalog sličnog."
+
+#: ../src/marco.schemas.in.h:172
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Vremenski period prije podizanja prozora ako je opcija auto_raise "
+"postavljena na „true“. Period se izražava u tisućinkama sekunde."
+
+#: ../src/marco.schemas.in.h:173
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Fokus prozora podešava kako će prozori biti aktivirani. Ima tri moguće "
+"vrijednosti „click“ znači da prozor mora biti selektiran da bi dobio fokus, "
+"„sloppy“ znači da prozor dobija fokus kada pokazivač miša uđe u prozor i "
+"„mouse“ što znači da će prozor biti fokusiran kada pokazivačka strelica miša "
+"uđe u prozor i biti defokusiran kada strelica izađe iz prozora."
+
+#: ../src/marco.schemas.in.h:174
+msgid "The window screenshot command"
+msgstr "Naredba za snimanje prozora"
+
+#: ../src/marco.schemas.in.h:175
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another one, it raises the window above all others, "
+"and if the window is already fully visible, it lowers it below all others. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ova kombinacija tipki stavlja prozor iznad ili ispod ostalih prozora. Ako je "
+"prozor pokriven drugim prozorom, podiže aktivni prozor iznad svih ostalih, a "
+"ako je prozor već iznad svih, stavlja ga ispod. Format izgleda kao \"&lt;"
+"Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\", te je prilično "
+"fleksibilan te dozvoljava mala ili velika slova te kratice poput \"&lt;"
+"Ctl&gt;\" i \"&lt;Ctrl&gt;\". Ako unesete posebnu riječ \"disabled\", neće "
+"biti kombinacije tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:176
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja spušta prozor ispod svih ostalih prozora. Oblik "
+"zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice "
+"poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:177
+msgid ""
+"This keybinding moves a window against the north (top) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ova kombinacija tipki pomiće prozor na sjevernu (gornju) stranu ekrana. "
+"Format izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\", "
+"te je prilično fleksibilan te dozvoljava mala ili velika slova te kratice "
+"poput \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Ako unesete posebnu riječ "
+"\"disabled\", neće biti kombinacije tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:178
+#, fuzzy
+msgid ""
+"This keybinding moves a window into the center of the screen. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ova kombinacija tipki pomiće prozor na zapadnu (lijevo) stranu ekrana. "
+"Format izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\", "
+"te je prilično fleksibilan te dozvoljava mala ili velika slova te kratice "
+"poput \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Ako unesete posebnu riječ "
+"\"disabled\", neće biti kombinacije tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:179
+msgid ""
+"This keybinding moves a window into the east (right) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ova kombinacija tipki pomiće prozor na istočnu (desnu) stranu ekrana.Format "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\", te je "
+"prilično fleksibilan te dozvoljava mala ili velika slova te kratice poput "
+"\"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Ako unesete posebnu riječ \"disabled\", "
+"neće biti kombinacije tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:180
+msgid ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Ova kombinacija tipki pomiće prozor na sjeveroistočnu (gore desno) stranu "
+"ekrana. Format izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\", te je prilično fleksibilan te dozvoljava mala ili velika slova "
+"te kratice poput \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Ako unesete posebnu "
+"riječ \"disabled\", neće biti kombinacije tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:181
+msgid ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Ova kombinacija tipki pomiće prozor na sjeverozapadnu (gore lijevo) stranu "
+"ekrana. Format izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\", te je prilično fleksibilan te dozvoljava mala ili velika slova "
+"te kratice poput \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Ako unesete posebnu "
+"riječ \"disabled\", neće biti kombinacije tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:182
+msgid ""
+"This keybinding moves a window into the south (bottom) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ova kombinacija tipki pomiće prozor na južnu (dolje) stranu ekrana. Format "
+"izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\", te je "
+"prilično fleksibilan te dozvoljava mala ili velika slova te kratice poput "
+"\"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Ako unesete posebnu riječ \"disabled\", "
+"neće biti kombinacije tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:183
+msgid ""
+"This keybinding moves a window into the south-east (bottom right) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Ova kombinacija tipki pomiće prozor najugoistočnu (dolje desno) stranu "
+"ekrana. Format izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\", te je prilično fleksibilan te dozvoljava mala ili velika slova "
+"te kratice poput \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Ako unesete posebnu "
+"riječ \"disabled\", neće biti kombinacije tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:184
+msgid ""
+"This keybinding moves a window into the south-west (bottom left) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Ova kombinacija tipki pomiće prozor na jugozapadnu (dolje lijevo) stranu "
+"ekrana. Format izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\", te je prilično fleksibilan te dozvoljava mala ili velika slova "
+"te kratice poput \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Ako unesete posebnu "
+"riječ \"disabled\", neće biti kombinacije tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:185
+msgid ""
+"This keybinding moves a window into the west (left) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ova kombinacija tipki pomiće prozor na zapadnu (lijevo) stranu ekrana. "
+"Format izgleda kao \"&lt;Control&gt;a\" ili \"&lt;Shift&gt;&lt;Alt&gt;F1\", "
+"te je prilično fleksibilan te dozvoljava mala ili velika slova te kratice "
+"poput \"&lt;Ctl&gt;\" i \"&lt;Ctrl&gt;\". Ako unesete posebnu riječ "
+"\"disabled\", neće biti kombinacije tipki za ovu akciju."
+
+#: ../src/marco.schemas.in.h:186
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinacija tipki koja podiže prozor iznad svih ostalih prozora. Oblik "
+"zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". Program za obradu "
+"je dosta slobodan i dozvoljava velika ili mala slova, takođe i skraćenice "
+"poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na specijalni niz "
+"znakova \"disabled\", tada neće biti korištena niti jedna kombinacija tipki "
+"za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:187
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija tipki koja mijenja veličinu prozora tako da popuni čitav "
+"vodoravni prostor. Oblik zapisa izgleda kao \"<Control>a\" ili "
+"\"<Shift><Alt>F1\". Program za obradu je dosta slobodan i dozvoljava velika "
+"ili mala slova, takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako "
+"postavite opciju na specijalni niz znakova \"disabled\", tada neće biti "
+"korištena niti jedna kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:188
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinacija tipki koja mijenja veličinu prozora tako da popuni čitav okomiti "
+"prostor. Oblik zapisa izgleda kao \"<Control>a\" ili \"<Shift><Alt>F1\". "
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+"takođe i skraćenice poput \"<Ctl>\" i \"< Ctrl>\". Ako postavite opciju na "
+"specijalni niz znakova \"disabled\", tada neće biti korištena niti jedna "
+"kombinacija tipki za ovu aktivnost."
+
+#: ../src/marco.schemas.in.h:189
+#, fuzzy
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ova opciaj opsije efekte duplog klika na traku prozora. Mogućnosti su "
+"'smotaj', što za posljedicu ima skupljanje prozora, 'maksimiziraj', što za "
+"posljedicu ima razvlačenje prozora preko cijelog ekrana, 'minimiziraj', što "
+"za posljedicu ima spuštanje prozora u traku i 'ništa', što neće učiniti "
+"ništa."
+
+#: ../src/marco.schemas.in.h:190
+#, fuzzy
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ova opciaj opsije efekte duplog klika na traku prozora. Mogućnosti su "
+"'smotaj', što za posljedicu ima skupljanje prozora, 'maksimiziraj', što za "
+"posljedicu ima razvlačenje prozora preko cijelog ekrana, 'minimiziraj', što "
+"za posljedicu ima spuštanje prozora u traku i 'ništa', što neće učiniti "
+"ništa."
+
+#: ../src/marco.schemas.in.h:191
+#, fuzzy
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ova opciaj opsije efekte duplog klika na traku prozora. Mogućnosti su "
+"'smotaj', što za posljedicu ima skupljanje prozora, 'maksimiziraj', što za "
+"posljedicu ima razvlačenje prozora preko cijelog ekrana, 'minimiziraj', što "
+"za posljedicu ima spuštanje prozora u traku i 'ništa', što neće učiniti "
+"ništa."
+
+#: ../src/marco.schemas.in.h:192
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Ova opcija nudi dodatnu kontrolu nad fokusom za novokreirane prozore. Ima "
+"dvije vrijednosti: \"pametna\", koja postavlja uobičajeni fokus i \"stroga"
+"\", koja programima pokrenutima iz terminala ne daje fokus."
+
+#: ../src/marco.schemas.in.h:193
+msgid "Toggle always on top state"
+msgstr "Uključi da je uvijek na vrhu"
+
+#: ../src/marco.schemas.in.h:194
+msgid "Toggle fullscreen mode"
+msgstr "Postavi preko cijelog zaslona"
+
+#: ../src/marco.schemas.in.h:195
+msgid "Toggle maximization state"
+msgstr "Promijeni stanje maksimizacije"
+
+#: ../src/marco.schemas.in.h:196
+msgid "Toggle shaded state"
+msgstr "Promijeni stanje zasjenjenosti"
+
+#: ../src/marco.schemas.in.h:197
+msgid "Toggle window on all workspaces"
+msgstr "Uključi prozor na svim radnim površinama"
+
+#: ../src/marco.schemas.in.h:198
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Uključuje vizualnu obavijest kada program pozove 'bell' ili 'beep' signale; "
+"korisno za one sa slabim sluhom ili za uporabu u bučnom okružju."
+
+#: ../src/marco.schemas.in.h:199
+msgid "Unmaximize window"
+msgstr "Reduciraj veličinu prozora"
+
+#: ../src/marco.schemas.in.h:200
+msgid "Use standard system font in window titles"
+msgstr "Koristi standardni font sustava za naslov prozora"
+
+#: ../src/marco.schemas.in.h:201
+msgid "Visual Bell Type"
+msgstr "Vrsta vizulnog zvonca"
+
+#: ../src/marco.schemas.in.h:202
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Hoće li podizanje prozora biti posljedica drugih intervencija korisnika"
+
+#: ../src/marco.schemas.in.h:203
+msgid "Window focus mode"
+msgstr "Način fokusa prozora"
+
+#: ../src/marco.schemas.in.h:204
+msgid "Window title font"
+msgstr "Pismo naslova prozora"
+
+#: ../src/ui/frames.c:1077
+msgid "Close Window"
+msgstr "Zatvori prozor"
+
+#: ../src/ui/frames.c:1080
+msgid "Window Menu"
+msgstr "Izbornik Prozor"
+
+#: ../src/ui/frames.c:1083
+msgid "Minimize Window"
+msgstr "Minimiziraj prozor"
+
+#: ../src/ui/frames.c:1086
+msgid "Maximize Window"
+msgstr "Maksimiziraj prozor"
+
+#: ../src/ui/frames.c:1089
+msgid "Unmaximize Window"
+msgstr "Poništi uvećanje prozora"
+
+#: ../src/ui/frames.c:1092
+msgid "Roll Up Window"
+msgstr "Namotaj prozor"
+
+#: ../src/ui/frames.c:1095
+msgid "Unroll Window"
+msgstr "Odmotaj prozor"
+
+#: ../src/ui/frames.c:1098
+msgid "Keep Window On Top"
+msgstr "Drži prozor na vrhu"
+
+#: ../src/ui/frames.c:1101
+msgid "Remove Window From Top"
+msgstr "Ukloni prozor s vrha"
+
+#: ../src/ui/frames.c:1104
+msgid "Always On Visible Workspace"
+msgstr "Uvijek na vidljivoj radnoj površini"
+
+#: ../src/ui/frames.c:1107
+msgid "Put Window On Only One Workspace"
+msgstr "Postavi prozor na samo jednu radnu površinu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimiziraj"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_Maksimiziraj"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "_Vrati sa maksimiziranog"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Za_rolaj"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Odrolaj"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Pom_akni"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Promjena ve_ličine"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Premjesti traku naslova na _zaslon"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "_Uvijek na vrhu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Uvijek na vidljivom radnom prostoru"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Samo na _ovoj radnoj površini"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Pomakni na lij_evu radnu površinu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Pomakn_i na desnu radnu površinu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Pomakni na _gornju radnu površinu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Pomakni na _donju radnu površinu"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Zatvori"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr ""
+
+#: ../src/ui/menu.c:213
+#, fuzzy
+msgid "Workspace 1_0"
+msgstr "Pomakni na _gornju radnu površinu"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr ""
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Pomakni na drugu _radnu površinu"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hiper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/ui/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr "\"%s\" ne odgovara."
+
+#: ../src/ui/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Možete pričekati neko vrijeme da program nastavi s radom ili možete "
+"prisiliti prekid rada programa."
+
+#: ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr "_Čekaj"
+
+#: ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "_Prisili izlaženje"
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr "Naslov"
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr "Klasa"
+
+#: ../src/ui/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Ovi prozori ne podržavaju mogućnost \"snimi trenutne postavke\" i morati "
+"ćete ih ručno ponovno pokrenuti sljedeći put kada se prijavite.."
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Dogodila se greška prilikom pokretanja „%s“:\n"
+"%s."
+
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme-parser.c:227 ../src/ui/theme-parser.c:245
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Linija %d karakter %d: %s"
+
+#: ../src/ui/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Svojstvo \"%s\" je ponovljeno dva puta u istom elementu <%s>"
+
+#: ../src/ui/theme-parser.c:414 ../src/ui/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Svojstvo \"%s\" je neispravano u elementu <%s> u ovom kontekstu"
+
+#: ../src/ui/theme-parser.c:500
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Cijeli broj %ld mora biti pozitivan"
+
+#: ../src/ui/theme-parser.c:508
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Cijeli broj %ld je prevelik ,trenutno najveći je %d"
+
+#: ../src/ui/theme-parser.c:536 ../src/ui/theme-parser.c:652
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Nije moguće analizirati \"%s\" kao broj sa pomičnim zarezom"
+
+#: ../src/ui/theme-parser.c:567 ../src/ui/theme-parser.c:595
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Logičke vrijednosti moraju biti \"true\" ili \"false\", a ne \"%s\""
+
+#: ../src/ui/theme-parser.c:622
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Kut mora biti između 0.0 i 360.0, was %g\n"
+
+#: ../src/ui/theme-parser.c:685
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa postavka mora biti između 0.0 (nevidljivo) i 1.0 (potpuno neprozirno), "
+"bila je %g\n"
+
+#: ../src/ui/theme-parser.c:750
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Neispravna veličina naslova \"%s\" (mora biti jedna od xx-mala,x-mala,mala,"
+"srednja,velika,x-velika,xx-velika)\n"
+
+#: ../src/ui/theme-parser.c:795 ../src/ui/theme-parser.c:803
+#: ../src/ui/theme-parser.c:885 ../src/ui/theme-parser.c:982
+#: ../src/ui/theme-parser.c:1024 ../src/ui/theme-parser.c:1135
+#: ../src/ui/theme-parser.c:1185 ../src/ui/theme-parser.c:1193
+#: ../src/ui/theme-parser.c:3093 ../src/ui/theme-parser.c:3184
+#: ../src/ui/theme-parser.c:3191 ../src/ui/theme-parser.c:3198
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "Nije podešen atribut \"%s\" na <%s> elementu"
+
+#: ../src/ui/theme-parser.c:919 ../src/ui/theme-parser.c:990
+#: ../src/ui/theme-parser.c:1032 ../src/ui/theme-parser.c:1143
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> ime \"%s\" se već drugi put koristi"
+
+#: ../src/ui/theme-parser.c:931 ../src/ui/theme-parser.c:1044
+#: ../src/ui/theme-parser.c:1155
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> izvor \"%s\" nije definiran"
+
+#: ../src/ui/theme-parser.c:1057
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometrija \"%s\" se nije definirala"
+
+#: ../src/ui/theme-parser.c:1070
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> morate odrediti geometriju ili izvor koji ima geometriju"
+
+#: ../src/ui/theme-parser.c:1112
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Morate odrediti pozadinu kako bi alfa vrijednost imala smisla."
+
+#: ../src/ui/theme-parser.c:1203
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Nepoznat tip \"%s\" u elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1214
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Nepoznat style_set \"%s\" u elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1222
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Vrsti prozora \"%s\" je već dodijeljena grupa stilova"
+
+#: ../src/ui/theme-parser.c:1258
+msgid "Theme already has a fallback icon"
+msgstr "Tema već ima pomoćnu ikonu"
+
+#: ../src/ui/theme-parser.c:1270
+msgid "Theme already has a fallback mini_icon"
+msgstr "Tema već ima pomoćnu mini_ikonu"
+
+#: ../src/ui/theme-parser.c:1283 ../src/ui/theme-parser.c:1347
+#: ../src/ui/theme-parser.c:1636 ../src/ui/theme-parser.c:3285
+#: ../src/ui/theme-parser.c:3339 ../src/ui/theme-parser.c:3511
+#: ../src/ui/theme-parser.c:3727 ../src/ui/theme-parser.c:3765
+#: ../src/ui/theme-parser.c:3803 ../src/ui/theme-parser.c:3841
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> nije dozvoljen ispod <%s>"
+
+#: ../src/ui/theme-parser.c:1373 ../src/ui/theme-parser.c:1460
+#: ../src/ui/theme-parser.c:1530
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Bez \"ime\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1380 ../src/ui/theme-parser.c:1467
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Bez \"vrijednost\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1411 ../src/ui/theme-parser.c:1425
+#: ../src/ui/theme-parser.c:1484
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"Nije moguće odrediti istovremeno gumb_širine/gumb_visine i omjer slike za "
+"gumbe"
+
+#: ../src/ui/theme-parser.c:1434
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Udaljenost \"%s\" je nepoznata"
+
+#: ../src/ui/theme-parser.c:1493
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Odnos \"%s\" je nepoznat"
+
+#: ../src/ui/theme-parser.c:1537
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "Bez \"vrh\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1544
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "Bez \"dno\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1551
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "Bez \"lijevo\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1558
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "Bez \"desno\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1590
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Rub „%s“ je nepoznat"
+
+#: ../src/ui/theme-parser.c:1736 ../src/ui/theme-parser.c:1850
+#: ../src/ui/theme-parser.c:1961 ../src/ui/theme-parser.c:2192
+#: ../src/ui/theme-parser.c:3023
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "Bez \"boja\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1743
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "Bez \"x1\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1750 ../src/ui/theme-parser.c:2864
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "Bez \"y1\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1757
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "Bez \"x2\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1764 ../src/ui/theme-parser.c:2871
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "Bez \"y2\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1857 ../src/ui/theme-parser.c:1968
+#: ../src/ui/theme-parser.c:2117 ../src/ui/theme-parser.c:2199
+#: ../src/ui/theme-parser.c:2306 ../src/ui/theme-parser.c:2408
+#: ../src/ui/theme-parser.c:2630 ../src/ui/theme-parser.c:2758
+#: ../src/ui/theme-parser.c:2857 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3030
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "Bez \"x\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1864 ../src/ui/theme-parser.c:1975
+#: ../src/ui/theme-parser.c:2124 ../src/ui/theme-parser.c:2206
+#: ../src/ui/theme-parser.c:2313 ../src/ui/theme-parser.c:2415
+#: ../src/ui/theme-parser.c:2637 ../src/ui/theme-parser.c:2765
+#: ../src/ui/theme-parser.c:2941 ../src/ui/theme-parser.c:3037
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "Bez \"y\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1871 ../src/ui/theme-parser.c:1982
+#: ../src/ui/theme-parser.c:2131 ../src/ui/theme-parser.c:2213
+#: ../src/ui/theme-parser.c:2320 ../src/ui/theme-parser.c:2422
+#: ../src/ui/theme-parser.c:2644 ../src/ui/theme-parser.c:2772
+#: ../src/ui/theme-parser.c:2948
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "Bez \"širina\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1878 ../src/ui/theme-parser.c:1989
+#: ../src/ui/theme-parser.c:2138 ../src/ui/theme-parser.c:2220
+#: ../src/ui/theme-parser.c:2327 ../src/ui/theme-parser.c:2429
+#: ../src/ui/theme-parser.c:2651 ../src/ui/theme-parser.c:2779
+#: ../src/ui/theme-parser.c:2955
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "Bez \"visina\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1998
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Nema \"start_angle\" ili \"from\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2005
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Nema \"extent_angle\" ili \"to\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2014
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "Nema \"start_angle\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2021
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "Bez \"extent_ange\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2227
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "Bez \"alfa\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2299
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "Bez \"tip\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2349
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Nisam shvatio vrijednost \"%s\" za vrstu stupnjevanja"
+
+#: ../src/ui/theme-parser.c:2436
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "Bez \"imedatoteke\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2461 ../src/ui/theme-parser.c:2980
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Nisam shvatio vrstu popunjavanja \"%s\" za <%s> element"
+
+#: ../src/ui/theme-parser.c:2609 ../src/ui/theme-parser.c:2744
+#: ../src/ui/theme-parser.c:2850
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "Bez \"stanje\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2616 ../src/ui/theme-parser.c:2751
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "Bez \"sjena\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2623
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "Bez \"strelica\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2676 ../src/ui/theme-parser.c:2800
+#: ../src/ui/theme-parser.c:2891
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Nisam shvatio sjenu \"%s\" za <%s> element"
+
+#: ../src/ui/theme-parser.c:2686 ../src/ui/theme-parser.c:2810
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Nisam shvatio sjenu \"%s\" za <%s> element"
+
+#: ../src/ui/theme-parser.c:2696
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Ne razumijmem strelicu \"%s\" za <%s> element"
+
+#: ../src/ui/theme-parser.c:3120 ../src/ui/theme-parser.c:3237
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nije podešen <draw_ops> imena \"%s\""
+
+#: ../src/ui/theme-parser.c:3132 ../src/ui/theme-parser.c:3249
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "uključivanje draw_ops \"%s\" ovdje bi kreiralo kružnu napomenu"
+
+#: ../src/ui/theme-parser.c:3314
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "Bez \"vrijednost\" atributa na <%s> elementu"
+
+#: ../src/ui/theme-parser.c:3371
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "Bez \"pozicija\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Nepoznata pozicija \"%s\" za dio okvira"
+
+#: ../src/ui/theme-parser.c:3388
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Stil okvira već ima dio na poziciji %s"
+
+#: ../src/ui/theme-parser.c:3405 ../src/ui/theme-parser.c:3496
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nije podešen <draw_ops>sa imenom \"%s\""
+
+#: ../src/ui/theme-parser.c:3433
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "Bez \"funkcija\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:3441 ../src/ui/theme-parser.c:3557
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "Bez \"stanje\" atributa na <%s> elementu"
+
+#: ../src/ui/theme-parser.c:3450
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Nepoznata funkcija \"%s\" za gumb"
+
+#: ../src/ui/theme-parser.c:3459
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Funkcija tipke \"%s\" ne postoji u ovoj verziji (%d, treba %d)"
+
+#: ../src/ui/theme-parser.c:3471
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Nepoznato stanje \"%s\" za gumb"
+
+#: ../src/ui/theme-parser.c:3479
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Stil okvira već ima dugme za funkciju %s stanja %s"
+
+#: ../src/ui/theme-parser.c:3549
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "Bez \"usredotočenje\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:3565
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "Bez \"stil\" atributa na <%s> elementu"
+
+#: ../src/ui/theme-parser.c:3574
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s“ nije dozvoljena vrijednost za svojstvo focus"
+
+#: ../src/ui/theme-parser.c:3583
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" nije dozvoljena vrijednost za svojstvo state"
+
+#: ../src/ui/theme-parser.c:3593
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Stil nazvan \"%s\" nije bio određen"
+
+#: ../src/ui/theme-parser.c:3604
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "Bez \"promjenaveličine\" atributa na elementu <%s>"
+
+#: ../src/ui/theme-parser.c:3614 ../src/ui/theme-parser.c:3637
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" nije dozvoljena vrijednost za svojstvo resize"
+
+#: ../src/ui/theme-parser.c:3648
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Nikako ne treba imati „resize“ atribut u elementu <%s> za uvećana/zasjenčena "
+"stanja"
+
+#: ../src/ui/theme-parser.c:3662
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "Atribut <%s> elementa ne bi smio imati \"resize\" za maximized stanje"
+
+#: ../src/ui/theme-parser.c:3676 ../src/ui/theme-parser.c:3698
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Stil je već odabran za stanje %s promjene veličine %s usredotočenja %s"
+
+#: ../src/ui/theme-parser.c:3687 ../src/ui/theme-parser.c:3709
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stil je već odabran za stanje %s usredotočenja %s"
+
+#: ../src/ui/theme-parser.c:3748
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ne mogu postojati dva draw_ops-a za element <piece> (tema navodi svojstvo "
+"draw_ops i <draw_ops> element ili navodi dva elementa)"
+
+#: ../src/ui/theme-parser.c:3786
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ne mogu postojati dva draw_ops-a za element <button> (tema navodi draw_ops "
+"svojstvo i <draw_ops> element ili navodi dva elementa)"
+
+#: ../src/ui/theme-parser.c:3824
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ne mogu postojati dva draw_ops-a za element <menu_icon> (tema navodi "
+"svojstvo draw_ops i <draw_ops> element ili navodi dva elementa)"
+
+#: ../src/ui/theme-parser.c:3872
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Najdalji element u temi mora biti <marco_theme> a ne<%s>"
+
+#: ../src/ui/theme-parser.c:3892
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Element <%s> nije dozvoljen unutar imena/autora/datuma/opisa ."
+
+#: ../src/ui/theme-parser.c:3897
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> nije dozvoljen unutar <constant> elementa"
+
+#: ../src/ui/theme-parser.c:3909
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Element <%s> nije dozvoljen unutar udaljenost/granica/omjer_slike elementa"
+
+#: ../src/ui/theme-parser.c:3931
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Element <%s> nije dozvoljen unutar operacije crtanja"
+
+#: ../src/ui/theme-parser.c:3941 ../src/ui/theme-parser.c:3971
+#: ../src/ui/theme-parser.c:3976 ../src/ui/theme-parser.c:3981
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> nije dozvoljen unutar <%s> elementa"
+
+#: ../src/ui/theme-parser.c:4203
+msgid "No draw_ops provided for frame piece"
+msgstr "Bez draw_ops datih komadu okvira"
+
+#: ../src/ui/theme-parser.c:4218
+msgid "No draw_ops provided for button"
+msgstr "Bez draw_ops datih dugmetu"
+
+#: ../src/ui/theme-parser.c:4270
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Tekst nije dozvoljen unutar elementa<%s>"
+
+#: ../src/ui/theme-parser.c:4325
+msgid "<name> specified twice for this theme"
+msgstr "<ime> naznačen dvaput za ovu temu"
+
+#: ../src/ui/theme-parser.c:4336
+msgid "<author> specified twice for this theme"
+msgstr "<autor> naznačen dvaput za ovu temu"
+
+#: ../src/ui/theme-parser.c:4347
+msgid "<copyright> specified twice for this theme"
+msgstr "<autorska prava> određena dvaput za ovu temu"
+
+#: ../src/ui/theme-parser.c:4358
+msgid "<date> specified twice for this theme"
+msgstr "<datum> određen dvaput za ovu temu"
+
+#: ../src/ui/theme-parser.c:4369
+msgid "<description> specified twice for this theme"
+msgstr "<opis> naveden dvaput za ovu temu"
+
+#: ../src/ui/theme-parser.c:4636
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Neuspjeh pri traženju ispravne datoteke za temu %s\n"
+
+#: ../src/ui/theme-parser.c:4692
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Datoteka sa temom %s ne sadrži korjenski <marco_theme> element"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Prozori"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Windows/otcijepi"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Prozori/_Dijalog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Prozori/_Modalni dijalog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Windows/_Alat"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Pozdravni zaslon"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Windows/_Gornje sidro"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Prozori/D_onje sidro"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Prozori/_Lijevo sidro"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Prozori/_Desno sidro"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Prozori/_Sva sidra"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Prozori/_Radna površina"
+
+#: ../src/ui/theme-viewer.c:135
+msgid "Open another one of these windows"
+msgstr "Otvori neki drugi od ovih prozora"
+
+#: ../src/ui/theme-viewer.c:142
+msgid "This is a demo button with an 'open' icon"
+msgstr "Ovo je demonstracijski gumb s sličicom 'otvori'"
+
+#: ../src/ui/theme-viewer.c:149
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Ovo je demonstacijski gumb s sličicom 'izlaz'"
+
+#: ../src/ui/theme-viewer.c:242
+msgid "This is a sample message in a sample dialog"
+msgstr "Ovo je primjer poruke u primjeru dijaloga"
+
+#: ../src/ui/theme-viewer.c:325
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Lažna stavka izbornika %d\n"
+
+#: ../src/ui/theme-viewer.c:359
+msgid "Border-only window"
+msgstr "Prozor samo s okvirom"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Bar"
+msgstr "Položeni stup."
+
+#: ../src/ui/theme-viewer.c:378
+msgid "Normal Application Window"
+msgstr "Običan prozor programa"
+
+#: ../src/ui/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Dijaloški okvir"
+
+#: ../src/ui/theme-viewer.c:386
+msgid "Modal Dialog Box"
+msgstr "Modalni dijaloški prozor"
+
+#: ../src/ui/theme-viewer.c:390
+msgid "Utility Palette"
+msgstr "Paleta alata"
+
+#: ../src/ui/theme-viewer.c:394
+msgid "Torn-off Menu"
+msgstr "Isključi izbornik"
+
+#: ../src/ui/theme-viewer.c:398
+msgid "Border"
+msgstr "Rub"
+
+#: ../src/ui/theme-viewer.c:726
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test izgleda gumba %d"
+
+#: ../src/ui/theme-viewer.c:755
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekundi za crtanje jednog okvira okna"
+
+#: ../src/ui/theme-viewer.c:798
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Uporaba: marco-theme-viewer [NAZIV_TEME]\n"
+
+#: ../src/ui/theme-viewer.c:805
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Greška tijekom učitavanja teme: %s\n"
+
+#: ../src/ui/theme-viewer.c:811
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tema \"%s\" je učitana za %g sekundi.\n"
+
+#: ../src/ui/theme-viewer.c:852
+msgid "Normal Title Font"
+msgstr "Obično pismo naslova"
+
+#: ../src/ui/theme-viewer.c:858
+msgid "Small Title Font"
+msgstr "Malo pismo naslova"
+
+#: ../src/ui/theme-viewer.c:864
+msgid "Large Title Font"
+msgstr "Veliko pismo naslova"
+
+#: ../src/ui/theme-viewer.c:869
+msgid "Button Layouts"
+msgstr "Izgled gumba"
+
+#: ../src/ui/theme-viewer.c:874
+msgid "Benchmark"
+msgstr "Mjerilo"
+
+#: ../src/ui/theme-viewer.c:921
+msgid "Window Title Goes Here"
+msgstr "Ovdje ide naziv prozora"
+
+#: ../src/ui/theme-viewer.c:1025
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Na korisničkoj strani sam nacrtao %d okvira za %g sekundi (%g milisekundi po "
+"okviru) i %g sekundi ukupnog vremena uključujući resurse poslužitelja X-a (%"
+"g milisekundi po okviru)\n"
+
+#: ../src/ui/theme-viewer.c:1244
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"Ispitivanje mjesta izraza je rezultiralo izrazom \"TRUE\", ali je "
+"postavljena greška"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"Ispitivanje mjesta izraza je rezultiralo izrazom \"FALSE\", ali nije "
+"postavljena greška"
+
+#: ../src/ui/theme-viewer.c:1250
+msgid "Error was expected but none given"
+msgstr "Očekivana je greška, ali nije niti jedna prijavljena"
+
+#: ../src/ui/theme-viewer.c:1252
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Očekivana je greška %d, ali je dobivena %d"
+
+#: ../src/ui/theme-viewer.c:1258
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Nije očekivana greška, ali je prijavljena: %s"
+
+#: ../src/ui/theme-viewer.c:1262
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "vrijednost za x je bila %d, a očekivana je %d"
+
+#: ../src/ui/theme-viewer.c:1265
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "vrijednost za y je bila %d, a očekivana je %d"
+
+#: ../src/ui/theme-viewer.c:1330
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d koordinatni izrazi parsirani u %g sekundi (%g sekundi u prosjeku)\n"
+
+#: ../src/ui/theme.c:256
+msgid "top"
+msgstr "na vrh"
+
+#: ../src/ui/theme.c:258
+msgid "bottom"
+msgstr "na dno"
+
+#: ../src/ui/theme.c:260
+msgid "left"
+msgstr "lijevo"
+
+#: ../src/ui/theme.c:262
+msgid "right"
+msgstr "desno"
+
+#: ../src/ui/theme.c:289
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "geometrija okvira ne navodi „%s“ dimenziju"
+
+#: ../src/ui/theme.c:308
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "geometrija okvira ne navodi „%s“ dimenziju za rub „%s“"
+
+#: ../src/ui/theme.c:345
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Odnos gumb %g nije razuman"
+
+#: ../src/ui/theme.c:357
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Geometrija oblika nije odredila veličinu dugmadi."
+
+#: ../src/ui/theme.c:1022
+msgid "Gradients should have at least two colors"
+msgstr "Stupnjevanje mora imati barem dvije boje"
+
+#: ../src/ui/theme.c:1148
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK specifikacija boje mora imati stanje u zagradi,naprimjer gtk:fg[NORMAL] "
+"gdje je NORMAL stanje;nije moguće analizirati \"%s\""
+
+#: ../src/ui/theme.c:1162
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK specifikacija boje mora imati zatvorenu zagradu poslije stanja,"
+"naprimjer gtk:fg[NORMAL] gdje je NORMAL stanje;nije moguće analizirati \"%s"
+"\""
+
+#: ../src/ui/theme.c:1173
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Nisam shvatio stanje \"%s\" u odredbama boja"
+
+#: ../src/ui/theme.c:1186
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Ne razumijem komponentu boje \"%s\" u specifikaciji boja"
+
+#: ../src/ui/theme.c:1216
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Format miješanja „blend/bg_color/fg_color/alpha“, „%s“ se ne uklapa u "
+"traženi format zapisa"
+
+#: ../src/ui/theme.c:1227
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Nije moguće analizirati alfa vrijednost \"%s\" u nijansnoj boji"
+
+#: ../src/ui/theme.c:1237
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alfa vrijednost \"%s\" u nijansiranoj boji nije između 0.0 i 1.0"
+
+#: ../src/ui/theme.c:1284
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Format osjenčenja je \"shade/base_color/factor\", \"%s\" ne odgovara formatu"
+
+#: ../src/ui/theme.c:1295
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Nije moguće analizirati faktor sjenčanja \"%s\" u sjenčanim bojama"
+
+#: ../src/ui/theme.c:1305
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Faktor sjenčanja \"%s\" u zasjenjenoj boji je negativan"
+
+#: ../src/ui/theme.c:1334
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Nije moguće analizirati boju \"%s\""
+
+#: ../src/ui/theme.c:1584
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Izraz koordinacije sadrži karakter '%s' koji nije dozvoljen"
+
+#: ../src/ui/theme.c:1611
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Izraz koordinacije sadrži broj sa pokretnom točkom '%s' koji nije mogao biti "
+"analiziran"
+
+#: ../src/ui/theme.c:1625
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Izraz koordinacije sadrži cijeli broj '%s' koji neje mogao biti analiziran"
+
+#: ../src/ui/theme.c:1747
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Izraz koordinacije sadrži nepoznati operator na početku ovog teksta \"%s\""
+
+#: ../src/ui/theme.c:1804
+msgid "Coordinate expression was empty or not understood"
+msgstr "Izraz koordinacije je bio prazan ili nije shvatio"
+
+#: ../src/ui/theme.c:1915 ../src/ui/theme.c:1925 ../src/ui/theme.c:1959
+msgid "Coordinate expression results in division by zero"
+msgstr "Izraz koordinata je rezultat podjele sa nulom"
+
+#: ../src/ui/theme.c:1967
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Izraz koordinacije pokušava upotrijebiti mod operator na broju sa pomičnim "
+"zarezom"
+
+#: ../src/ui/theme.c:2023
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Izraz koordinacije ima operator \"%s\" gdje se očekivao operand"
+
+#: ../src/ui/theme.c:2032
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Izraz koordinacije je imao operand a očekivao se operator"
+
+#: ../src/ui/theme.c:2040
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Izraz koordinacije je završio sa operatorom umjesto operanda"
+
+#: ../src/ui/theme.c:2050
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Izraz koordinacije ima operator \"%c\" koji prati operator \"%c\" ali bez "
+"operacija između"
+
+#: ../src/ui/theme.c:2197 ../src/ui/theme.c:2238
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Izraz koordinacije je imao nepoznatu varijablu ili konstantu \"%s\""
+
+#: ../src/ui/theme.c:2292
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Kod pregledavanja koordinata došlo je do prekoračenja spremnika"
+
+#: ../src/ui/theme.c:2321
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Izraz koordinacije je morao zatvoriti zagrade sa ne otvorenim zagradama."
+
+#: ../src/ui/theme.c:2385
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Izraz koordinacije je imao otvorene zagrade sa ne zatvorenim zagradama"
+
+#: ../src/ui/theme.c:2396
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Izraz koordinacije izgleda ne sadrži operacije ili operande."
+
+#: ../src/ui/theme.c:2598 ../src/ui/theme.c:2618 ../src/ui/theme.c:2638
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/ui/theme.c:4157
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"svejedno\"/> mora biti "
+"određeno za format ovog okvira"
+
+#: ../src/ui/theme.c:4633 ../src/ui/theme.c:4658
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Nedostaje <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"svejedno\"/>"
+
+#: ../src/ui/theme.c:4702
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Nije uspjelo učitavanje teme \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4828 ../src/ui/theme.c:4835 ../src/ui/theme.c:4842
+#: ../src/ui/theme.c:4849 ../src/ui/theme.c:4856
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nije podešen <%s> za temu \"%s\""
+
+#: ../src/ui/theme.c:4864
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Nije odabrana vrsta okvira za prozor tipa \"%s\" u temi \"%s\", dodajte "
+"<window type=\"%s\" style_set=\"svejedno\"/> element"
+
+#: ../src/ui/theme.c:5231 ../src/ui/theme.c:5293 ../src/ui/theme.c:5356
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Korisnički definirane konstante moraju početi velikim slovom; \"%s\" ne "
+"počinje"
+
+#: ../src/ui/theme.c:5239 ../src/ui/theme.c:5301 ../src/ui/theme.c:5364
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstanta \"%s\" je već definirana"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Uporaba: %s\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d spremljen u MateConf ključ %s nije razuman cursor_size; mora biti između "
+#~ "1 i 128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d pohranjen u MateConf ključu %s nije podnošljiv broj radnih površina, "
+#~ "trenutno je maksimalan %d\n"
+
+#~ msgid "Desk %d"
+#~ msgstr "Radna površina %d"
+
+#~ msgid "Desk 1_0"
+#~ msgstr "Radna površina 1_0"
+
+#~ msgid "Desk %s%d"
+#~ msgstr "Radna površina %s%d"
diff --git a/po/hu.po b/po/hu.po
new file mode 100644
index 00000000..40216316
--- /dev/null
+++ b/po/hu.po
@@ -0,0 +1,2422 @@
+# Hungarian translation of marco.
+# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+#
+# Andras Timar <timar at mate dot hu>, 2002, 2003.
+# Gabor Sari <saga at externet dot hu>, 2003.
+# Laszlo Dvornik <dvornik at mate dot hu>, 2004.
+# Gabor Kelemen <kelemeng at mate dot hu>, 2004, 2005, 2006, 2007, 2008, 2009, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco master\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-05 01:14+0100\n"
+"PO-Revision-Date: 2010-03-05 01:13+0100\n"
+"Last-Translator: Gabor Kelemen <kelemeng at mate dot hu>\n"
+"Language-Team: Hungarian <mate at fsf dot hu>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Asztali környezet"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Ablakkezelés"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Csengetés esemény"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Ismeretlen ablakinformáció-kérés: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> nem válaszol."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Várhat egy kicsit a folytatódására, vagy kikényszerítheti az alkalmazás "
+"teljes kilépését."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "Vá_rakozás"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Erőltetett kilépés"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Hiba a gépnév lekérdezése közben: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Hiányzik a kompozit ablakkezeléshez szükséges %s kiterjesztés"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Nem sikerült megnyitni a(z) „%s” X Window rendszer képernyőt\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Elvesztettem a kapcsolatot a(z) „%s” képernyővel;\n"
+"a legvalószínűbb hogy az X kiszolgáló leállt vagy Ön kilőtte/"
+"megsemmisítette\n"
+"az ablakkezelőt.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Végzetes IO hiba %d (%s) a(z) „%s” képernyőn.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Valamely másik program már használja a(z) %s billentyűt %x módosítókkal "
+"összekötve\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Hiba történt a(z) <tt>%s</tt> futtatása közben:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Nincs %d parancs meghatározva.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Nincs terminálparancs meghatározva.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., és mások\n"
+"Ez egy szabad szoftver; lásd a forrást a másolás feltételeiről.\n"
+"NINCS garancia; még az ELADHATÓSÁGRA vagy EGY ADOTT CÉLRA VALÓ ALKALMASSÁGRA "
+"vonatkozólag sem.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "A munkamenet-kezelőhöz való csatlakozás tiltása"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "A futó ablakkezelő helyettesítése a Marco-vel"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "A munkamenet-kezelő azonosítójának megadása"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "A használandó X megjelenítő"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "A munkamenet előkészítése a mentési fájlból"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Verzió kinyomtatása"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Az X-hívások szinkronná tétele"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Kompozitálás bekapcsolása"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Kompozitálás kikapcsolása"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Ne tegye teljes képernyőssé a maximalizált és díszítésekkel nem rendelkező "
+"ablakokat"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Témakönyvtár beolvasása sikertelen: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Nem található téma! Bizonyosodjon meg róla hogy a(z) %s létezik és "
+"tartalmazza a szokásos témákat.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Újraindítás sikertelen: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "„%s” MateConf kulcs érvénytelen értékre van állítva\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"%d, ami a(z) %s MateConf kulcsban van tárolva, a tartományon (%d - %d) kívül "
+"van\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "„%s” MateConf kulcs érvénytelen típusú\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"A hibás alkalmazások hibáinak megkerülése nincs engedélyezve. Néhány "
+"alkalmazás lehet, hogy nem fog helyesen működni.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Nem sikerült feldolgozni a(z) „%s” betűkészlet leírását a(z) „%s” MateConf "
+"kulcsból\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"A konfigurációs adatbázisban talált „%s” érvénytelen érték az egérgomb "
+"módosítóhoz\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Hiba a munkaterületek számának beállításánál a következőre: %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "%d. munkaterület"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"A konfigurációs adatbázisban talált „%s” nem érvényes érték a következő "
+"billentyűkombinációhoz: „%s”\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+"Hiba a(z) %d. munkaterület nevének beállításánál a következőre: „%s”: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Hiba a kompozitáló állapotának beállításakor: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "A(z) %d képernyő a(z) „%s” megjelenítőn érvénytelen\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"A(z) %d képernyő a(z) „%s” megjelenítőn már rendelkezik egy ablakkezelővel; "
+"próbálja a --replace opcióval helyettesíteni a jelenlegi ablakkezelőt.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Nem sikerült beolvasni az ablakkezelő kiválasztását a(z) %d képernyőn a(z) „%"
+"s” megjelenítőn\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "A(z) %d képernyőnek a(z) „%s” megjelenítőn már van ablakkezelője\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Nem sikerült elengedni a(z) %d képernyőt a(z) „%s” kijelzőn\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Formátuma ehhez hasonló: „<Control>a” vagy „<Shift><Alt>F1”.\n"
+"\n"
+"Az elemző elég liberális, nem érzékeny a kis- és nagybetűkre, valamint "
+"rövidítéseket (mint „<Ctl>” és „<Ctrl>”) is megenged. Az opciót a speciális "
+"„disabled” karakterláncra állítva nem lesz billentyűkombináció társítva "
+"ehhez a művelethez."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Formátuma ehhez hasonló: „<Control>a” vagy „<Shift><Alt>F1”.\n"
+"\n"
+"Az elemző elég liberális, nem érzékeny a kis- és nagybetűkre, valamint "
+"rövidítéseket (mint „<Ctl>” és „<Ctrl>”) is megenged. Az opciót a speciális "
+"„disabled” karakterláncra állítva nem lesz billentyűkombináció társítva "
+"ehhez a művelethez.\n"
+"\n"
+"Ez a billentyűtársítás megfordítható a „Shift” billentyű lenyomásával, így a "
+"„Shift” itt nem használható."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Nem lehet létrehozni a(z) „%s” könyvtárat: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Nem sikerült a(z) „%s” munkamenet fájlt írásra megnyitni: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Hiba történt a(z) „%s” munkamenet fájl írása közben: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Hiba történt a(z) „%s” munkamenet fájl lezárása közben: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Hiba történt a(z) „%s” munkamenet fájl olvasása közben: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Nem sikerült feldolgozni a mentett munkamenet fájlt: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"A <marco_session> attribútum megjelent, de már rendelkezünk a munkamenet-"
+"azonosítóval"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Ismeretlen %s attribútum a(z) <%s> elemen"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "beágyazott <window> tag"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Ismeretlen elem: %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Az alábbi ablakok nem támogatják az &quot;aktuális beállítások "
+"mentését&quot;, emiatt ezeket a legközelebbi bejelentkezéskor manuálisan "
+"újra kell indítania."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Nem sikerült megnyitni a hibakeresési naplót: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Nem sikerült megnyitni az fdopen()-nel a(z) „%s” naplófájlt: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "%s naplófájl megnyitva\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+"A Marco ablakkezelőt a részletes mód támogatása nélkül fordították\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Ablakkezelő: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Hiba az ablakkezelőben: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Figyelmeztetés az ablakkezelőtől: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Hibaüzenet az ablakkezelőtől: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"%s ablak az ICCCM specifikációval ellentétben a SM_CLIENT_ID-t magára "
+"állította be, a WM_CLIENT_LEADER helyett.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"A(z) %s ablak egy MWM javaslatot állít be, ami szerint nem méretezhető át, "
+"de mégis %d x %d minimális és %d x %d maximális értéket ad meg, amelynek így "
+"nincs értelme.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Az alkalmazás hibás _NET_WM_PID-értéket állított be: %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (ezen: %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (rendszergazdaként)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (mint: %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (másik felhasználóként)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+"Érvénytelen WM_TRANSIENT_FOR ablak (0x%lx) került megadásra a következőhöz: %"
+"s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"A 0x%lx ablak %s tulajdonsággal rendelkezik\n"
+"ennek %s típusúnak és %d formátumúnak kellett volna lennie, de\n"
+"jelenleg %s típusú és %d formátumú a %d n_items.\n"
+"Ez valószínűleg az alkalmazás hibája, nem pedig az ablakkezelőé.\n"
+"Az ablak címe=„%s” osztálya=„%s” neve=„%s”\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+"A(z) %s tulajdonság a 0x%lx ablakon érvénytelen UTF-8 adatot tartalmazott\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"A(z) %s tulajdonság a 0x%lx ablakon érvénytelen UTF-8 adatot tartalmazott a "
+"lista %d. elemében\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Átváltás az 1. munkaterületre"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Átváltás a 2. munkaterületre"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Átváltás a 3. munkaterületre"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Átváltás a 4. munkaterületre"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Átváltás az 5. munkaterületre"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Átváltás a 6. munkaterületre"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Átváltás a 7. munkaterületre"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Átváltás a 8. munkaterületre"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Átváltás a 9. munkaterületre"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Átváltás a 10. munkaterületre"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Átváltás a 11. munkaterületre"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Átváltás a 12. munkaterületre"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Átváltás a jelenlegitől balra lévő munkaterületre"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Átváltás a jelenlegitől jobbra lévő munkaterületre"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Átváltás a jelenlegi feletti munkaterületre"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Átváltás a jelenlegi alatti munkaterületre"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Váltás egy alkalmazás ablakai között felugró ablakkal"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Váltás hátrafelé egy alkalmazás ablakai között felugró ablakkal"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Váltás ablakok között felugró ablakkal"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Váltás hátrafelé ablakok között között felugró ablakkal"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Váltás a panelek és az asztal között felugró ablakkal"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Váltás hátrafelé a panelek és az asztal között felugró ablakkal"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Váltás egy alkalmazás ablakai között azonnal"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Váltás hátrafelé egy alkalmazás ablakai között azonnal"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Váltás az ablakok között azonnal"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Váltás hátrafelé az ablakok között azonnal"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Váltás a panelek és az asztal között azonnal"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Váltás hátrafelé a panelek és az asztal között azonnal"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Minden normál ablak elrejtése és fókusz átvitele az asztalra"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "A panel főmenüjének megjelenítése"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "A panel „Alkalmazás futtatása” párbeszédablakának megjelenítése"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Képernyőkép készítése"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Képernyőkép készítése egy ablakról"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Terminál nyitása"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Ablakmenü aktiválása"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Teljes képernyős üzemmód"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Maximalizált állapot átváltása"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Az ablak mindig látható lesz más ablakok fölött"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Ablak maximalizálása"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Ablak visszaállítása"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Felgördített állapot átváltása"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Ablak minimalizálása"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Ablak bezárása"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Ablak áthelyezése"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Ablak átméretezése"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Ablak megjelenítése minden munkaterületen vagy csak az egyiken"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Ablak áthelyezése az 1. munkaterületre"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Ablak áthelyezése a 2. munkaterületre"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Ablak áthelyezése a 3. munkaterületre"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Ablak áthelyezése a 4. munkaterületre"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Ablak áthelyezése az 5. munkaterületre"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Ablak áthelyezése a 6. munkaterületre"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Ablak áthelyezése a 7. munkaterületre"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Ablak áthelyezése a 8. munkaterületre"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Ablak áthelyezése a 9. munkaterületre"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Ablak áthelyezése a 10. munkaterületre"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Ablak áthelyezése a 11. munkaterületre"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Ablak áthelyezése a 12. munkaterületre"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Ablak áthelyezése a balra lévő munkaterületre"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Ablak áthelyezése a jobbra lévő munkaterületre"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Ablak áthelyezése egy munkaterülettel feljebb"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Ablak áthelyezése egy munkaterülettel lejjebb"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Fedett ablak előtérbe hozása, egyébként háttérbe küldése"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Ablak más ablakok elé hozása"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Ablak más ablakok mögé küldése"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Ablak függőleges maximalizálása"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Ablak vízszintes maximalizálása"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Ablak áthelyezése az északnyugati (bal felső) sarokba"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Ablak áthelyezése az északkeleti (jobb felső) sarokba"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Ablak áthelyezése a délnyugati (bal alsó) sarokba"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Ablak áthelyezése a délkeleti (jobb alsó) sarokba"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Ablak áthelyezése a képernyő északi (felső) oldalához"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Ablak áthelyezése a képernyő déli (alsó) oldalához"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Ablak áthelyezése a képernyő keleti (jobb) oldalához"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Ablak áthelyezése a képernyő nyugati (bal) oldalához"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Ablak áthelyezése a képernyő közepére"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Nincs megvalósítva) A navigáció az alkalmazások és nem az ablakok szintjén "
+"működik"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Betűkészlet-leíró karakterlánc, amely meghatározza az ablak címsorának "
+"betűkészletét. A leírás méret része csak akkor érvényesül, ha a "
+"titlebar_font_size opció értéke 0. Ez az opció le van tiltva, ha a "
+"titlebar_uses_desktop_font értéke igaz."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "A címsoron való dupla kattintáskor bekövetkező esemény"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "A címsoron való középső gombos kattintáskor bekövetkező esemény"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "A címsoron való jobb gombos kattintáskor bekövetkező esemény"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "A gombok elrendezése az ablak címsorában"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"A címsor gombjainak igazítása. Az értéknek szövegnek kell lennie, mint "
+"például „menu:minimize,maximize,spacer,close”; a kettőspont választja el az "
+"ablak jobb és bal sarkát, a gombneveket pedig vesszők. Kettőzött gombok nem "
+"megengedettek. Az ismeretlen gombnevek jelzés nélkül figyelmen kívül lesznek "
+"hagyva, így a jövőbeli marco verziókkal készült gombsorok visszafelé "
+"kompatibilisek maradnak. A speciális spacer címkével némi hely szúrható két "
+"szomszédos gomb közé."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Automatikusan előtérbe hozza az aktív ablakot"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Ezen billentyű nyomva tartása mellett az ablakra kattintva az ablak "
+"mozgatható (bal gomb) átméretezhető (középső gomb) vagy megjeleníthető az "
+"ablakmenü (jobb gomb). A bal és jobb műveletek felcserélhetők a "
+"„resize_with_right_button” kulcs segítségével. A módosítót például a "
+"következő módon lehet megadni: „&lt;Alt&gt;” vagy „&lt;Super&gt;”."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "A billentyűkombinációkra válaszul futtatandó parancsok"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Kompozíciókezelő"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Új ablakok fókuszba kerülésének vezérlése"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Jelenlegi téma"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Az automatikus előtérbe hozás opció késleltetése (ezredmásodpercben)"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Meghatározza, hogy a Marco kompozíciókezelő-e."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Meghatározza, hogy az alkalmazások vagy a rendszer tudnak-e hallható "
+"hangjelzéseket kiadni, hasznos lehet a „látható rendszercsengővel” együtt "
+"alkalmazni, mert ennek segítségével lehetségesek a „néma hangjelzések” is."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Azon hibás funkciók letiltása, amelyeket régi vagy hibás alkalmazások "
+"használnak"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "„Látható csipogás” engedélyezése"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Ha igazra van állítva és a fókuszmód a „sloppy” vagy „mouse” egyike, akkor a "
+"fókuszba került ablak automatikusan az előtérbe lesz hozva az "
+"auto_raise_delay kulcsban megadott késleltetés letelte után. Ez nem "
+"kapcsolódik az ablakra kattintáshoz annak előtérbe hozása érdekében, sem az "
+"ablakra mutatáshoz fogd és ejtsd művelet során."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ha igazra van állítva, a titlebar_font opciót figyelmen kívül hagyja, és a "
+"szabvány alkalmazás betűkészletet használja az ablakok címsoraihoz."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Ha ez be van állítva, akkor a marco a felhasználónak kevesebb "
+"visszajelzést ad drótvázak használatával, animációk kikapcsolásával, vagy "
+"egyéb módon. Ez a használhatóság jelentős csökkentése sok felhasználó "
+"számára, de lehetővé teszi az örökölt alkalmazásoknak a működés folytatását "
+"és terminál kiszolgálóknak is hasznos engedmény lehet. Azonban a drótváz "
+"szolgáltatás ki van kapcsolva, ha az akadálymentesítés be van kapcsolva."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Ha ez be van állítva, akkor a Marco inkább az alkalmazások és nem az "
+"ablakok szintjén működik. A koncepció egy kicsit elvont, de összességében az "
+"alkalmazás alapú beállítás inkább mac-es és kevésbé windowsos. Ha fókuszba "
+"kerül valamelyik ablak az alkalmazás alapú módban, akkor az alkalmazás "
+"minden ablaka előtérbe kerül. Szintén ebben az üzemmódban a kattintások nem "
+"jutnak át más alkalmazások ablakain. Az alkalmazás alapú üzemmód azonban "
+"jelenleg nagyrészt nincs megvalósítva."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Ha ez be van állítva, a kisebb erőforrásigény érdekében a könnyű "
+"használhatóságból áldoz fel"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Módosító, amellyel a módosított ablakra kattintás műveletek használhatók"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Munkaterület neve"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Munkaterületek száma"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"A munkaterületek száma. Az értéknek nullánál nagyobbnak kell lennie, és van "
+"egy rögzített maximális érték, amely megakadályozza az asztal "
+"használhatatlanná tételét túl sok munkaterület véletlen beállításával."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Megadott parancs futtatása"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Állítsa igazra a „mouse_button_modifier” kulcsban megadott billentyű "
+"lenyomva tartása közben a jobb gombbal való átméretezéshez és a középső "
+"gombbal a menü megjelenítéséhez, állítsa hamisra az ellentétes működéshez."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Ezen érték hamisra állítása hibás viselkedést eredményezhet, ezért nem "
+"javasolt az alapértelmezett igaz érték módosítása. Számos művelet (például a "
+"kattintás a kliens területén, az ablak mozgatása vagy átméretezése) "
+"mellékhatásként előtérbe hozzák az ablakot. Ezen beállítás - nem javasolt – "
+"hamisra állításával az előtérbe hozást elválaszthatja más felhasználói "
+"műveletektől és figyelmen kívül hagyhatja az alkalmazások által generált "
+"előtérbe hozási kéréseket. Ha ez az érték hamis, az ablakok akkor is "
+"előtérbe hozhatók az Alt+bal gombbal kattintással az ablakban bárhová, "
+"normál kattintással az ablak díszítésein vagy a lapozók speciális "
+"üzeneteivel, például aktiválási kérésekkel a feladatlista "
+"kisalkalmazásoktól. Ez a beállítás jelenleg le van tiltva a „kattintás "
+"fókuszhoz” módban. Ne feledje, hogy az ablakok előtérbe hozási módjainak "
+"listája a „raise_on_click” kulcs hamis értéke esetén nem tartalmazza az "
+"alkalmazások ablak-előtérbe hozási programkéréseit, az ilyen kérések a kérés "
+"okától függetlenül figyelmen kívül maradnak. Ha alkalmazásfejlesztőként a "
+"felhasználói arra panaszkodnak, hogy az alkalmazás nem működik ezen "
+"beállítás letiltásakor, akkor vissza kell állítaniuk ezen beállítás igaz "
+"értékét. További információkért nézze meg a http://bugzilla.gnome.org/"
+"show_bug.cgi?id=445447#c6 oldalt."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Néhány alkalmazás a szabványokat olyan módon veszi semmibe, hogy az az "
+"ablakkezelő hibás viselkedését okozza. Ez a lehetőség a Marco-t "
+"kérlelhetetlenül helyes módba kapcsolja, amely sokkal konzisztensebb "
+"felhasználói felületet eredményez, feltéve hogy nem kell hibásan működő "
+"alkalmazásokat futtatnia."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "A rendszer pittyenése hallható"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Meghatározza, hogy a Marco hogyan jelenítse meg látható módon, ha a "
+"rendszercsengő (esetleg másik alkalmazás „csengője”) megszólal. Jelenleg két "
+"érvényes értéke van: a „fullscreen”, amely teljes képernyős fekete-fehér "
+"villanását okozza illetve a „frame_flash”, amely a címsor villanását okozza "
+"annál az alkalmazásnál, amely a jelzést kiváltotta. Ha ez az alkalmazás "
+"ismeretlen (amely általános az alapértelmezett „system beep” esetén), akkor "
+"a jelenleg aktív ablak címsora fog felvillanni."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Az /apps/marco/global_keybindings/run_command_N határozza meg a "
+"billentyűkombinációkat, amelyek ezekhez a parancsokhoz tartoznak. A "
+"run_command_N-hez tartozó billentyűkombináció lenyomásakor végre lesz hajtva "
+"a command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Az /apps/marco/global_keybindings/run_command_screenshot kulcs definiálja "
+"azt a billentyűkombinációt, amely ezen beállítások által meghatározott "
+"parancsot hívja meg."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Az /apps/marco/global_keybindings/run_command_window_screenshot kulcs "
+"definiálja azt a billentyűkombinációt, amely ezen beállítások által "
+"meghatározott parancsot hívja meg."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Az a billentyűkombináció, amely futtatja a megfelelő számú parancsot az /"
+"apps/marco/keybinding_commands kulcsból. Formátuma ehhez hasonló: „&lt;"
+"Control&gt;a” vagy „&lt;Shift&gt;&lt;Alt&gt;F1”. Az elemző elég liberális, "
+"nem érzékeny a kis- és nagybetűkre, valamint rövidítéseket (mint „&lt;"
+"Ctl&gt;” és „&lt;Ctrl&gt;”) is megenged. Ha az opciót a speciális „disabled” "
+"karakterláncra állítja be, akkor nem lesz billentyűkombináció társítva ehhez "
+"a művelethez."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "A munkaterület neve."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "A képernyőkép-készítő parancs"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "A téma meghatározza az ablakkeretek, a címsor és sok más kinézetét."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Késleltetés (ezredmásodpercben) az ablak automatikus előtérbe hozása előtt, "
+"ha az auto_raise engedélyezett."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Az ablakfókusz módja jelzi, hogy az ablakokat hogyan tehetőek aktívvá. Három "
+"lehetséges értéke van; „click” azt jelenti, hogy rá kell kattintani az adott "
+"ablakra hogy aktív legyen, „sloppy” azt jelenti, hogy az ablak aktív lesz, "
+"amint az egér az ablak fölé ér és a „mouse” azt jelenti, hogy az ablak aktív "
+"lesz, amint az egér az ablak fölé ér és nem lesz az, ha az egér elhagyja az "
+"ablakot."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Az ablakról képernyőképet készítő parancs"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ez az opció határozza meg, hogy mi történjen a címsoron való dupla kattintás "
+"esetén. Jelenleg érvényes opciók a „toggle_shade”, amely hatására az ablak "
+"felgördül/legördül, a „toggle_maximize”, amely hatására teljes képernyős/"
+"eredeti méretű lesz, „toggle_maximize_horizontally” és "
+"„toggle_maximize_vertically”, amelyek hatására az ablak csak vízszintesen/"
+"függőlegesen lesz maximalizálva, „minimize”, amely hatására kis méretű lesz "
+"az ablak, „shade”, amely hatására az ablak felgördül, „menu”, amely "
+"megjeleníti az ablak menüt, „lower”, amely az ablakot a többi ablak mögé "
+"viszi és „none”, amely nem hajt végre semmit."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ez az opció határozza meg, hogy mi történjen a címsoron való középső gombos "
+"kattintás esetén. Jelenleg érvényes opciók a „toggle_shade”, amely hatására "
+"az ablak felgördül/legördül, a „toggle_maximize”, amely hatására teljes "
+"képernyős/eredeti méretű lesz, „toggle_maximize_horizontally” és "
+"„toggle_maximize_vertically”, amelyek hatására az ablak csak vízszintesen/"
+"függőlegesen lesz maximalizálva, „minimize”, amely hatására kis méretű lesz "
+"az ablak, „shade”, amely hatására az ablak felgördül, „menu”, amely "
+"megjeleníti az ablak menüt, „lower”, amely az ablakot a többi ablak mögé "
+"viszi és „none”, amely nem hajt végre semmit."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ez az opció határozza meg, hogy mi történjen a címsoron való jobb gombos "
+"kattintás esetén. Jelenleg érvényes opciók a „toggle_shade”, amely hatására "
+"az ablak felgördül/legördül, a „toggle_maximize”, amely hatására teljes "
+"képernyős/eredeti méretű lesz, „toggle_maximize_horizontally” és "
+"„toggle_maximize_vertically”, amelyek hatására az ablak csak vízszintesen/"
+"függőlegesen lesz maximalizálva, „minimize”, amely hatására kis méretű lesz "
+"az ablak, „shade”, amely hatására az ablak felgördül, „menu”, amely "
+"megjeleníti az ablak menüt, „lower”, amely az ablakot a többi ablak mögé "
+"viszi és „none”, amely nem hajt végre semmit."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Ez a beállítás az újonnan létrehozott ablakok fókuszba kerülésének "
+"irányítására biztosít további lehetőséget. Két lehetséges értéke van: a "
+"„smart” (intelligens) a felhasználó normál fókuszmódját alkalmazza, a "
+"„strict” (korlátozott) hatására pedig a terminálból indított ablakok nem "
+"kapnak fókuszt."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Látható jelzést ad, amikor egy alkalmazás vagy a rendszer egy „csengést” "
+"vagy „sípolást” bocsát ki; hasznos a nagyothallók számára vagy hangos "
+"környezetben."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "A rendszer szabvány betűtípusának használata az ablak címsorában"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Látható csengetés típusa"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Az előtérbe hozás más felhasználói tevékenységek mellékhatása legyen-e"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Átméretezés a jobb egérgombbal"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Ablakfókusz módja"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Az ablak címsorának betűtípusa"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Használat: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Ablak bezárása"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Ablak menü"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Ablak minimalizálása"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Ablak maximalizálása"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Ablak visszaállítása"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Ablak felgördítése"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Ablak lenyitása"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Ablak legfelül tartása"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Ablak eltávolítása legfelülről"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Mindig a látható munkaterületen"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Ablak kirakása csak egy munkaterületre"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimalizálás"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximalizálás"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "_Eredeti méret"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Felgördítés"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Legördítés"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Át_helyezés"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Át_méretezés"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "_Címsor mozgatása a képernyőn"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Mindig _felül"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Mindig a látható m_unkaterületen"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Csak ezen a munkaterületen"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Áthelyezés a bal ol_dali munkaterületre"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Áthelyezés a j_obb oldali munkaterületre"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Áthelyezés a fel_ső munkaterületre"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Áthelyezés az _alsó munkaterületre"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Bezárás"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "%d%n. munkaterület"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "1_0. munkaterület"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "%s%d. munkaterület"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Áthelyezés mási_k munkaterületre"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "fent"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "lent"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "bal"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "jobb"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "a keretgeometria nem határoz meg „%s” dimenziót"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "a keretgeometria nem határoz meg „%s” dimenziót „%s” szegélynek"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "%g gomb méretaránya nem fogadható el"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "A keretgeometria nem határozza meg a gombok méretét"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "A színátmenetnek legalább két színűnek kell lennie"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK szín meghatározásnál az állapotnak szögletes zárójelben kell lennie, pl."
+"gtk:fg[NORMAL] ahol NORMAL az állapot; nem lehetett feldolgozni a "
+"következőt: „%s”"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"A GTK színmeghatározásnál kötelező záró szögletes zárójelet tenni az állapot "
+"után, például gtk:fg[NORMAL], ahol NORMAL az állapot; nem sikerült "
+"értelmezni a következőt: „%s”"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Nem sikerült a(z) „%s” állapotot értelmezni a szín meghatározásban"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Nem sikerült értelmezni „%s” színösszetevőt a színmeghatározásban"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"A keverés formátuma: „blend/bg_color/fg_color/alpha”, „%s” nem felel meg "
+"ennek"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Nem sikerült értelmezni a(z) „%s” alfa értéket a kevert színben"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "A(z) „%s” alfa érték a kevert színben nem 0.0 és 1.0 között van"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Az árnyék formátuma: „shade/base_color/factor”, „%s” nem felel meg ennek"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Nem sikerült a(z) „%s” árnyéktényezőt feldolgozni az árnyékolt színben"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "„%s” árnyéktényező az árnyékolt színben negatív"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Nem sikerült feldolgozni a(z) „%s” színt"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "A koordinátakifejezés „%s” karaktert tartalmaz, ami nem megengedett"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"A koordinátakifejezés „%s” lebegőpontos számot tartalmaz, amit nem sikerült "
+"feldolgozni"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"A koordinátakifejezés „%s” egész számot tartalmaz, amit nem sikerült "
+"feldolgozni"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"A koordinátakifejezés ismeretlen operátort tartalmaz ennek a szövegnek az "
+"elején: „%s”"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "A koordinátakifejezés üres vagy értelmezhetetlen volt"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "A koordinátakifejezés nullával való osztást okozott."
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"A koordinátakifejezés mod operátort próbált használni lebegőpontos számon"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "A koordinátakifejezésben egy operandus helyén „%s” operátor volt"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "A koordinátakifejezésben a várt operátor helyett operandus szerepelt"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "A koordinátakifejezés operátorral végződött, nem operandussal"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"A koordinátakifejezésben „%c” operátort „%c” operátor követi úgy, hogy nincs "
+"köztük operandus"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "A koordinátakifejezésben „%s” változó vagy állandó ismeretlen volt"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "A koordinátakifejezés-elemző túlcsordította a pufferét."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "A koordinátakifejezésben záró zárójel szerepelt kezdő nélkül"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "A koordinátakifejezésben kezdő zárójel szerepelt záró nélkül"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"A koordinátakifejezésben úgy tűnik nincsenek sem operátorok, sem operandusok"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "A téma által tartalmazott kifejezés hibát okozott: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Ehhez a keretstílushoz meg kell határozni a következő elemet: <button "
+"function=\"%s\" state=\"%s\" draw_ops=\"bármi\"/>"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Hiányzó <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"bármi\"/> elem"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Hiba a(z) „%s” téma betöltése közben: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nincs <%s> beállítva a(z) „%s” témához"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Nincs keretstílus beállítva a(z) „%s” ablaktípushoz a(z) „%s” témában, adjon "
+"hozzá egy <window type=\"%s\" style_set=\"bármi\"/> elemet"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"A felhasználó által meghatározott konstansoknak nagybetűvel kell kezdődniük, "
+"a(z) „%s” nem ilyen"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "A(z) „%s” konstans már definiálva van"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Nincs „%s” attribútuma a(z) <%s> elemnek"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "%d. sor %d. karakter: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "„%s” attribútum kétszer lett megismételve ugyanazon a(z) <%s> elemen"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "„%s” attribútum <%s> elemen érvénytelen ebben a szövegkörnyezetben"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "„%s” nem értelmezhető egész számként"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+"Nem lehetett „%s” zárókaraktereket értelmezni a(z) „%s” karakterláncban"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "%ld egész számnak pozitívnak kell lennie"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "%ld egész szám túl nagy, a jelenlegi maximum %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "„%s” nem dolgozható fel lebegőpontos számként"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "A logikai értékek „true” vagy „false” kell legyenek, nem pedig „%s”"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Szögnek 0.0 és 360.0 között kell lennie, %g volt\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Az alfának 0.0 (átlátszó) és 1.0 (teljesen átlátszatlan) között kell lennie, "
+"%g volt\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+" „%s” érvénytelen címméret (lehetséges értékek: xx-small,x-small,small,"
+"medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> „%s” név másodszor lett használva"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> „%s” szülő nincs meghatározva"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> „%s” geometria nincs meghatározva"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> vagy meg kell határozni a geometriát vagy szükség van egy szülőre "
+"aminek van geometriája"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Meg kell adnia egy hátteret, hogy az alfa értéknek értelme legyen"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "„%s” típus ismeretlen a(z) <%s> elemen"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "„%s” ismeretlen style_set a(z) <%s> elemen"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "„%s” ablak típushoz már hozzá van rendelve egy stílus beállítás"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "<%s> elem nem engedélyezett <%s> alatt"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Nem lehet egyszerre megadni a gombok „button_width” vagy „button_height” és "
+"az „aspect_ratio” paraméterét"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "„%s” távolság ismeretlen"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "„%s” méretarány ismeretlen"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "„%s” határ ismeretlen"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "A(z) <%s> elemnek nincs „start_angle” vagy „from” attribútuma"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "A(z) <%s> elemnek nincs „extent_angle” vagy „to” attribútuma"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Nem sikerült „%s” értéket értelmezni színátmenet típusaként"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Nem sikerült a(z) „%s” fájltípust értelmezni a(z) <%s> elem számára"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Nem sikerült értelmezni a(z) „%s” állapotot a(z) <%s> elem számára"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Nem sikerült „%s” árnyékot értelmezni a(z) <%s> elem számára"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Nem sikerült értelmezni a(z) „%s” nyilat a(z) <%s> elem számára"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nincsen „%s” nevű <draw_ops> meghatározva"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "„%s” draw_ops ide beépítésével körkörös hivatkozás alakulna ki"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "„%s” pozíció ismeretlen a keretdarabhoz"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "A keretstílusnak már van egy darabja a(z) „%s” pozícióban"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nincs „%s” nevű <draw_ops> meghatározva"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "„%s” funkció ismeretlen a gombhoz"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"A(z) „%s” gombfunkció nem létezik ebben a verzióban (%d, szükséges: %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "„%s” állapot ismeretlen a gombhoz"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+"A keretstílusnak már van gombja a(z) „%s” funkcióra a(z) „%s” állapotban"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "„%s” érték érvénytelen a fókusz attribútumhoz"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "„%s” érték érvénytelen az állapot attribútumhoz"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "„%s” nevű stílus nincs meghatározva"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "„%s” érték érvénytelen az átméretezés attribútumhoz"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"A(z) <%s> elemnek nem szabadna „resize” attribútummal rendelkeznie a teljes "
+"méretű/felgördített állapothoz"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"A(z) <%s> elemnek nem szabadna „resize” attribútummal rendelkeznie a teljes "
+"méretű állapothoz"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"%s állapothoz, %s átméretezéshez és %s fókuszhoz már meg van határozva stílus"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "%s állapothoz és %s fókuszhoz már meg van határozva stílus"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nem lehet két draw_ops-a egy <piece> elemnek (a téma meghatározott egy "
+"draw_ops attribútumot és egy <draw_ops> elemet, vagy két elemet határozott "
+"meg)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nem lehet két draw_ops-a egy <button> elemnek (a téma meghatározott egy "
+"draw_ops attribútumot és egy <draw_ops> elemet, vagy két elemet)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nem lehet két draw_ops-a egy <menu_icon> elemnek (a téma meghatározott egy "
+"draw_ops attribútumot és egy <draw_ops> elemet, vagy két elemet)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "A téma legkülső eleme <marco_theme> kell legyen, nem pedig <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"A(z) <%s> elem nem megengedett egy name/author/date/description elemen belül"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "A(z) <%s> elem nem megengedett egy <constant> elemen belül"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"<%s> elem nem megengedett egy distance/border/aspect_ratio elemen belül"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "<%s> elem nem megengedett egy rajzoló művelet elemen belül"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%s> elem nem megengedett egy <%s> elemen belül"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Nincsen draw_ops a keretdarabhoz"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Nincs draw_ops megadva a gombhoz"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Nincs szöveg engedélyezve a(z) <%s> elemen belül"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> kétszer lett meghatározva ehhez a témához"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Nem található érvényes fájl a következő témához: %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "%s téma fájl nem tartalmaz gyökér <marco_theme> elemet"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Ablakok"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Ablakok/leválasztó"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Ablakok/_Párbeszéd"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Ablakok/_Kizárólagos ablak"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Ablakok/_Eszköz"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Indítóképernyő"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Ablakok/_Felső dokk"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Ablakok/_Alsó dokk"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Ablakok/_Bal dokk"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Ablakok/_Jobb dokk"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Ablakok/Össz_es dokk"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Ablakok/_Asztal"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Ez egy mintaüzenet egy minta párbeszédben"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "%d. hamis menüelem\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Csak keretes ablak"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Sáv"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normál alkalmazásablak"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Párbeszédablak"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Kizárólagos párbeszéd doboz"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Eszközpaletta"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Leválasztott menü"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Szegély"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Gombelrendezés teszt %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g ezredmásodpercig tartott egy ablakkeret kirajzolása"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Használat: marco-theme-viewer [TÉMANÉV]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Hiba történt a téma betöltése közben: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "A(z) „%s” téma %g másodperc alatt betöltve\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Normál cím betűtípus"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Kicsi cím betűtípus"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Nagy cím betűtípus"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Gombelrendezések"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Teljesítményteszt"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Ide kerül az ablak címe"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d keret kirajzolása %g kliens-oldali másodperc alatt (%g ezredmásodperc "
+"képkeretenként) és %g összes idő beleértve az X szerver erőforrásokat (%g "
+"ezredmásodperc képkeretenként)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "a pozíció kifejezés teszt IGAZ értéket adott vissza, de hiba történt."
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"a pozíció kifejezés teszt HAMIS értéket adott vissza, de nem történt hiba"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Hibát vártunk, de nem történt egy sem"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "A(z) %d hibát vártuk, de a(z) %d hiba következett be"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Nem várt hiba következett be: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x értéke %d volt, de a várt érték %d volt"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y értéke %d volt, de a várt érték %d volt"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"A %d koordináta kifejezések %g másodperc alatt lettek feldolgozva (átlagosan "
+"%g másodperc)\n"
diff --git a/po/hy.po b/po/hy.po
new file mode 100644
index 00000000..ceb961e6
--- /dev/null
+++ b/po/hy.po
@@ -0,0 +1,2853 @@
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD.hy\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-09-19 12:30+0200\n"
+"PO-Revision-Date: 2005-09-04 18:18+0200\n"
+"Last-Translator: \n"
+"Language-Team: <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.9.1\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Օգտագործում։%s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:128
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+"Մետասիթին կոմպլեկտավորվել է առանց բազմաբառ օպերացիոն համակարգի ռեժիմի\n"
+
+#: ../src/delete.c:63 ../src/delete.c:90 ../src/marco-dialog.c:70
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Անկարող է վերլուծել \"%s\" որպես ամբողջ թիվ"
+
+#: ../src/delete.c:70 ../src/delete.c:97 ../src/marco-dialog.c:77
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Չհաջողվեց հասկանալ միակցված սիմվոլները \"%s\" տողում\"%s\""
+
+#: ../src/delete.c:128
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Հաղորդագրության \"%s\"վերլուծումը դիալոգի պրոցեսից խափանվեց\n"
+
+#: ../src/delete.c:263
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Դիալոգի պատկերակման պրոցեսի սխալ ընթերցում։%s\n"
+
+#: ../src/delete.c:344
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+" Կիրառական ծրագիրը չեղյալ համարելու մետասիթի դիալոգի հրահանգը գործարկելիս "
+"սխալ է կատարվել։%s\n"
+
+#: ../src/delete.c:452
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Խափանվեց ստանալ գլխավոր հանգույցի անունը։ %s\n"
+
+#: ../src/display.c:319
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Խափանվեց բացել X Window համակարգի պատկերը %s'\n"
+
+#: ../src/errors.c:231
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Պատկերի միացումը չպահպանվեց %s';\n"
+"Հավանաբար X սերվերը անջատվեց կամ դուք պատուհանի ծրագրի կառավարչին չեղյալ "
+"հրահանգ տվեցիք \n"
+
+#: ../src/errors.c:238
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Անխուսափելի IO սխալի %d (%s) պատկերում %s'.\n"
+
+#: ../src/frames.c:1125
+msgid "Close Window"
+msgstr "Պատուհանը փակել"
+
+#: ../src/frames.c:1128
+msgid "Window Menu"
+msgstr "Պատուհանի մենյու"
+
+#: ../src/frames.c:1131
+msgid "Minimize Window"
+msgstr "Պատուհանը իջեցնել"
+
+#: ../src/frames.c:1134
+msgid "Maximize Window"
+msgstr "Պատուհանը մեծացնել"
+
+#: ../src/frames.c:1137
+msgid "Unmaximize Window"
+msgstr "Պատուհանը փոքրացնել"
+
+#: ../src/keybindings.c:994
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Մեկ այլ ծրագիր արդեն օգտագործում է բանալին %s որպես հանգույց %x "
+"մոդիֆիկատորների հետ \n"
+
+#: ../src/keybindings.c:2620
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+"Հրահանգի սխալը տպելու մետասիթի դիալոգի գործարկման ժամանակ սխալ է կատարվել։%"
+"s\n"
+
+#: ../src/keybindings.c:2725
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Հրահանգ %d սահմանված չէ\n"
+
+#: ../src/keybindings.c:3570
+msgid "No terminal command has been defined.\n"
+msgstr "Վերջնական հրահանգ սահմանված չէ \n"
+
+#: ../src/main.c:69
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"Մետասիթի %s\n"
+"Հեղինակային իրավունք (C) 2001-2002 Havoc Pennington, Red Hat, Inc., և այլոք\n"
+"Սա անվճար ծրագիր է, տես պատճենման պայմանները \n"
+"Երաշխիքներ չկան, նույնիսկ վաճառքի պիտանելիության կամ առանձին նպատակների "
+"համար համապատասխան լինելու վերաբերյալ\n"
+
+#: ../src/main.c:257
+msgid "Disable connection to session manager"
+msgstr "Անկարող է միանալ ենթահամակարգի կառավարչին"
+
+#: ../src/main.c:263
+msgid "Replace the running window manager with Marco"
+msgstr "Աշխատանքի ընթացքի մեջ գտնվող պատուհանի կառավարչին փոխարինել մետասիթիով"
+
+#: ../src/main.c:269
+msgid "Specify session management ID"
+msgstr "Նշել ենթահամակարգի կառավարչի իդենտիֆիկատորները"
+
+#: ../src/main.c:274
+msgid "X Display to use"
+msgstr "X պատկերակում օգտագործման համար"
+
+#: ../src/main.c:280
+msgid "Initialize session from savefile"
+msgstr "Պահպանման ֆայլից ենթահամակարգը գործարկել "
+
+#: ../src/main.c:286
+msgid "Print version"
+msgstr "Տպման տարբերակ"
+
+#: ../src/main.c:440
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Թեմայի թղթապանակի ստուգումը չհաջողվեց։%s\n"
+
+#: ../src/main.c:456
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr ""
+"Թեման գտնելչհաջողվեց. Համոզվեք, որ %s առկա է և պարունակում է սովորական "
+"թեմաները"
+
+#: ../src/main.c:518
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Վերագործարկումը խափանվեց։%s\n"
+
+#: ../src/menu.c:54
+msgid "Mi_nimize"
+msgstr "Փո_քրացնել"
+
+#: ../src/menu.c:55
+msgid "Ma_ximize"
+msgstr "Մե_ծացնել"
+
+#: ../src/menu.c:56
+msgid "Unma_ximize"
+msgstr "Փոքրա_ցնել"
+
+#: ../src/menu.c:57
+msgid "Roll _Up"
+msgstr "Պտտ_ել"
+
+#: ../src/menu.c:58
+msgid "_Unroll"
+msgstr "—Հետ պտտել"
+
+#: ../src/menu.c:59 ../src/menu.c:60
+msgid "On _Top"
+msgstr "Վեր_ևում"
+
+#: ../src/menu.c:61
+msgid "_Move"
+msgstr "_Տեղափոխել"
+
+#: ../src/menu.c:62
+msgid "_Resize"
+msgstr "_ Չափը փոխել"
+
+#. separator
+#: ../src/menu.c:64
+msgid "_Close"
+msgstr "_Փակել"
+
+#. separator
+#: ../src/menu.c:66
+msgid "_Always on Visible Workspace"
+msgstr "_Միշտ տեսանելի աշխատանքային տարածքում"
+
+#: ../src/menu.c:67
+msgid "_Only on This Workspace"
+msgstr "_Միայն այս աշխատանքային տարածքում"
+
+#: ../src/menu.c:68
+msgid "Move to Workspace _Left"
+msgstr "Տեղափոխել դեպի աշխատանքային տարածք_Ձախ"
+
+#: ../src/menu.c:69
+msgid "Move to Workspace R_ight"
+msgstr "Տեղափոխել դեպի աշխատանքային տարածք_Աջ"
+
+#: ../src/menu.c:70
+msgid "Move to Workspace _Up"
+msgstr "Տեղափոխել դեպի աշխատանքային տարածք_Վեր"
+
+#: ../src/menu.c:71
+msgid "Move to Workspace _Down"
+msgstr "Տեղափոխել դեպի աշխատանքային տարածք_Ներքև"
+
+#: ../src/menu.c:162 ../src/prefs.c:2106
+#, c-format
+msgid "Workspace %d"
+msgstr "Աշխատանքային տարածք %d"
+
+#: ../src/menu.c:171
+msgid "Workspace 1_0"
+msgstr "Աշխատանքային տարածք 1_0"
+
+#: ../src/menu.c:173
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Աշխատանքային տարածք %s%d"
+
+#: ../src/menu.c:368
+msgid "Move to Another _Workspace"
+msgstr "Տեղափոխել այլ_ աշխատանքային տարածք"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "shift Ռեգիստրի փոփոխում"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl կարգավորում"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt փոփոխում"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta "
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:110
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr "Պատուհաը \"%s\" չի արձագանքում"
+
+#: ../src/marco-dialog.c:118
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr ""
+"Այս կիրառական ծրագիրը համակարգից հեռացնելով դուք կարող եք կորցնել ցանկացած "
+"չպահված փոփոխություն"
+
+#: ../src/marco-dialog.c:129
+msgid "_Force Quit"
+msgstr "_Համակարգից դուրս գալ"
+
+#: ../src/marco-dialog.c:226
+msgid "Title"
+msgstr "Վերնագիր"
+
+#: ../src/marco-dialog.c:238
+msgid "Class"
+msgstr "Կարգ"
+
+#: ../src/marco-dialog.c:264
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Այս պատուհանները չեն ապահովում \"պահպանել հանձնարարված ընթացիկ սխեման\" "
+"հրահանգի կատարումը և հաջորդ անգամ համակարգ մտնելիս պետք է վերագործարկվեն"
+
+#: ../src/marco-dialog.c:330
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Ծրագրի գործարկման ժամանակ սխալ է կատարվել\"%s\":\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Մետասիթի"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Կատարված չէ) Նավիգացիան կատարվում է ըստ կիրառական ծրագրերի և ոչ ըստ "
+"պատուհանների"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr ""
+"Պատուհանի վերնագիրի տողը նկարագրող տառատեսակի նկարագրման տող. Նկարագրման "
+"չափը օգտագործվում է միայն եթե titlebar_font_size տարբերակի համար ընտրված է "
+"0։ Նաև այս տարբերակը անջատվում է, եթե վերնագրի տողի "
+"titlebar_uses_desktop_font տարբերակի պայմանը ճիշտ է. Ըստ դեֆոլտի "
+"titlebar_font -ը վերադառնում է ելակետային վիճակի, մետասիթիին վերադարձնելով "
+"հետ դեպի աշխատանքային էկրանի տառատեսակին, նույնիսկ եթե "
+"titlebar_uses_desktop_font–ը սխալ է."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Գործողություն վերնագրի տողի վրա՝ կրկնակի կտտոցով"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr "Ակտիվացնել պատուհան մենյուն"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Վերնագրի տողի վրա կոճակների դասավորություն"
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"Վերնագրի տողի վրա կոճակների դասավորություն։ Արժեքը պետք է իրենից ներկայացնի "
+"տող, ինչպես \"menu:minimize,maximize,close\" \" մենյու։ փոքրացնել, մեծացնել, "
+"փակել\"; ստորակետը պատուհանի ձախ անկյունը անջատում է աջ անկյունից, և "
+"կոճակների անունները բաժանվում են ստորակետով. Կրկնակի կոճակներն արգելվում են։ "
+"Անհայտ կոճակների անունները լռությամբ բաց են թողնվում, այնպես որ ապագայում "
+"հնարավոր լինի կոճակներ ավելացնել մետասիթի տարբերակներին առանց հին "
+"տարբերակները փոփոխելու։"
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr "Ավտոմատ կերպով բարձրացնում է ակտիվ պատուհանը"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Պատուհանի վրա կտտոցը, պահելով այս մոդիֆիկատոր ստեղնը պատուհանը կտեղափոխի "
+"(ձախ կոճակ), պատուհանի չափսը կփոխի (միջին կոճակ), կամ ցույց կտա մենյու "
+"պատուհանը (աջ կոճակ). Մոդիֆիկատորն արտահայտվում է ինչպես \"&lt;Alt&gt;\" կամ"
+"\"&lt;Super&gt;\" օրինակ"
+
+#: ../src/marco.schemas.in.h:9
+msgid "Close window"
+msgstr "Պատուհանը փակել"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Ստեղների կոմբինացիաներին ի պատասխան գործարկվող հրահանգներ"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr "Ընթացիկ թեմա"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Միլիվայրկյանների հետաձգում պատուհանի ավտոմատ տեղափոխման համար"
+
+#: ../src/marco.schemas.in.h:13
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Որոշում է արդյոք կիրառական ծրագրերը կամ համակարգը կարող են լսելի ձայնային "
+"ազդանշաններ արձակել։ Կարող է օգտագործվել տեսանելի ազդանշանի հետ՝ անաղմուկ "
+"ձայնային ազդանշաններ արձակելու համար։"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Սխալ ֆունկցիաների անջատում, որոնք անհրաժեշտ են հին կամ վնասված կիրառական "
+"ծրագրերի համար"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr "Միացնել տեսանելի ազդանշանը"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Hide all windows and focus desktop"
+msgstr "Պատուհանը փակել և աշխատանքային էկրանը ակտիվացնել"
+
+#: ../src/marco.schemas.in.h:17
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key)."
+msgstr ""
+"Եթե ճշգրիտ է, և ակտիվ ռեժիմը ընտրված է \"sloppy\"կամ \"mouse\" ապա ակտիվ "
+"պատուհանը ավտոմատ կերպով առաջ է մղվում մի փոքր ուշացումով(ուշացման "
+"տևողությունը սահմանվում է (auto_raise_delay)-ով"
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Եթե ճշգրտ է, վերնագրի տող_տառատեսակ տարբերակը բաց թողնել և պատուհանի "
+"վերնագրերի համար օգտագործելստանդարտ կիրառական ծրագրերի տառատեսակը"
+
+#: ../src/marco.schemas.in.h:19
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+"Եթե ճշգրիտ է, մետասիթին գործարկողին ավելի քիչ հետադարձ կապ է տալիս և քիչ"
+"\"ուղղակի մանիպուլյացիայի\" հնարավորություն, օգտագործելով հենքը, խուսափելով "
+"անիմացիաներից կամ այլ միջոցներից։ Օգտագործման հնարավորությունները նշանակալից "
+"կերպով կրճատվում են գործարկողի համար, սակայն կարող են թույլատրել գործող "
+"կիրառական ծրագրերին և տերմինալային սերվերներին գործարկվել, որոնք այլ դեպքում "
+"կարող են չօգտագործվել։ Այնուամենայնիվ, կարկասի ֆունկցիաները անջատվում են, "
+"երբ հնարավոր է խուսափել աշխատանքային էկրանի խափանումներից"
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr ""
+"Եթե ճշգրիտ է, ապա մետասիթին աշխատում է կիրառական ծրագրերով և ոչ "
+"պատուհաններով: Ըմբռնումը մի փոքր աբստրակտ է, սակայն ընդհանուր առմամբ "
+"կիրառական ծրագրերի վրա հիմնված սխեման ավելի շատ նման է Mac–ի քան Windows–ի։ "
+"Երբ պատուհանը ակտիվացվում է կիրառական ծրագրերի ռեժիմով, կիրառական ծրագրերի "
+"բոլոր պատուհանները բացվում են։ Բացի այդ, կիրառական ծրագրերի վրա հիմնված "
+"ռեժիմում ակտիվ կտտոցները չեն փոխանցվում այլ ծրագրերի պատուհաններին։ Այսպիսի "
+"պարամետրերի նպատակահարմարությունը տարակուսելի է։ Սակայն դա ավելի լավ է, քան "
+"կարգադրվածքներում մտցնել կիրառական ծրագրերի բոլոր առանձնահատկությունները, "
+"համեմատած պատուհանների վրա հիմնված ռեժիմի հետ (օրինակ, փոխանցել կտտոցով)։ "
+"Բացի դա, կիրառական ծրագերի վրա հիմնված ռեժիմը ներկայումս դեռ ավարտված չէ։"
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Եթե ճշգրիտ է, օգտագործման հարմարավետությունը փոխարինվում է ավելի քիչ "
+"ռեսուրսների օգտագործումով։"
+
+#: ../src/marco.schemas.in.h:22
+msgid "Lower window below other windows"
+msgstr "Պատուհանը տեղադրել այլ պատուհանի տակ։"
+
+#: ../src/marco.schemas.in.h:23
+msgid "Maximize window"
+msgstr "Պատուհանը մեծացնել"
+
+#: ../src/marco.schemas.in.h:24
+msgid "Maximize window horizontally"
+msgstr "Պատուհանը մեծացնել հորիզոնական ուղղությամբ"
+
+#: ../src/marco.schemas.in.h:25
+msgid "Maximize window vertically"
+msgstr "Պատուհանը մեծացնել ուղղահայաց ուղղությամբ"
+
+#: ../src/marco.schemas.in.h:26
+msgid "Minimize window"
+msgstr "Պատուհանը իջեցնել"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Մոդիֆիկացված պատուհանի հետ կտտոցով գործողությունների համար օգտագործվող "
+"մոդիֆիկատոր"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+"Վահանակների և աշխատանքային էկրանի միջև ակտիվ կարգավիճակը անմիջապես վերացնել"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Move backwards between panels and the desktop with popup"
+msgstr ""
+"Վահանակների և աշխատանքային սեղանի միջև ակտիվ կարգավիճակը էկրանին հայտնվող "
+"պատուհանի միջոցով վերացնել"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Move backwards between windows immediately"
+msgstr "Պատուհանների միջև ակտիվ կարգավիճակը անմիջապես վերացնել"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Move between panels and the desktop immediately"
+msgstr ""
+"Վահանակների և աշխատանքային էկրանի միջև ակտիվ կարգավիճակը անմիջապես վերացնել"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move between panels and the desktop with popup"
+msgstr ""
+"Վահանակների և աշխատանքային էկրանի միջև ակտիվ կարգավիճակը էկրանին հայտնվող "
+"պատուհանի միջոցով վերացնել"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move between windows immediately"
+msgstr "Պատուհանների միջև ակտիվ կարգավիճակը վերացնել"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move between windows with popup"
+msgstr ""
+"Պատուհանների միջև ակտիվ կարգավիճակը էկրանին հայտնվող պատուհանի միջոցով "
+"վերացնել"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move focus backwards between windows using popup display"
+msgstr ""
+"Պատուհանների միջև ակտիվ կարգավիճակը էկրանին հայտնվող պատուհանի միջոցով "
+"վերացնել"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move window"
+msgstr "Պատուհանը տեղափոխել"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move window one workspace down"
+msgstr "Պատուհանը տեղափոխել մեկ աշխատանքային տարածք ներքև"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move window one workspace to the left"
+msgstr "Պատուհանը տեղափոխել մեկ աշխատանքային տարածք դեպի ձախ"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move window one workspace to the right"
+msgstr "Պատուհանը տեղափոխել մեկ աշխատանքային տարածք դեպի աջ"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move window one workspace up"
+msgstr "Պատուհանը տեղափոխել մեկ աշխատանքային տարածք դեպի վեր"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move window to workspace 1"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 1"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move window to workspace 10"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 10"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move window to workspace 11"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 11"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window to workspace 12"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 12"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window to workspace 2"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 2"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window to workspace 3"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 3"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window to workspace 4"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 4"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window to workspace 5"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 5"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 6"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 6"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 7"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 7"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 8"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 8"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 9"
+msgstr "Պատուհանը տեղափոխել աշխատանքային տարածք 9"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Name of workspace"
+msgstr "Աշխատանքային տարածքի անունը"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Number of workspaces"
+msgstr "Աշխատանքային տարածքների քանակը"
+
+#: ../src/marco.schemas.in.h:55
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr ""
+"Աշխատանքային տարածքների քանակը։ Պետք է լինի զրոյից մեծ և ունենա ֆիքսված "
+"առավելագույն թիվ (կանխելու համար պատահաբար աշխատանքային տարածքների "
+"ոչնչացումը, օրինակ 34 միլիոն աշխատանքային տեղեր պահանջի դեպքում)"
+
+#: ../src/marco.schemas.in.h:56
+msgid "Raise obscured window, otherwise lower"
+msgstr "Բացել չերևացող պատուհանը, կամ իջեցնել"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Raise window above other windows"
+msgstr "Պատուհանը տեղադրել մյուս պատուհաններից վերև"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Resize window"
+msgstr "Պատուհանիչափսերը փոխել"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Run a defined command"
+msgstr "Տալ որոշակի հրահանգ"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Run a terminal"
+msgstr "Գործարկել տերմինալը"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Show the panel menu"
+msgstr "Ցույց տալ վահանակի մենյուն"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Show the panel run application dialog"
+msgstr "Ցույց տալ վահանակի կիրառական ծրագրի գործարկման դիալոգը"
+
+#: ../src/marco.schemas.in.h:63
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+"ՄԻ քանի կիրառական ծրագրեր խախտում են տեխնիկական պահանջները, ինչը հանգեցնում "
+"է պատուհանների մենեջերի սխալ աշխատանքին։ Օրինակ, իդեալական տարբերակով "
+"մետասիթին պետք է բոլոր դիալոգների պատուհանները հավասարաչափ տեղակայի "
+"հիմնական պատուհանի նկատմամբ։ Դրա համար անհրաժեշտ է բաց թողնել դիալոգի "
+"պատուհանների կոորդինատները, որոնք սահմանված ե կիրառական ծրագրում։ Սակայն "
+"Java/Swing –ի որոշ տարբերակներ իրենց էկրանի վրա հայտնվող մենյուները "
+"ներկայացնում են որպես դիալոգ, այնպես որ մետասիթին պետք է անջատի դիալոգի "
+"պատուհանների կոորդինատները, որպեսզի այդ մենյուները կարողանան աշխատել Java–ի "
+"ոչ ստանդարտ կիրառական ծրագրերում։ Կան ևս մի քանի նման օրինակներ, Այդ "
+"պարամետրը Marco–ն փոխում է ստանդարտի համապատասխան, որը այդ ինտերֆեյսը "
+"առավել գրավիչ է դարձնում, եթե ոչ ստանդարտ կիրառական ծրագրերը չեն կիրառվում։ "
+"Ցավոք, թերությունները միևնույն է պետք է վերացնել, այսպիսին է կյանքը...Մի "
+"քանի թերություններ կապված են տեխնիկական սահմանափակումների հետ, այնպես որ "
+"երբեմն սխալը վերացնելհնարավոր չէ, առանց տեխնիկական պայմանները փոփոխելու"
+
+#: ../src/marco.schemas.in.h:64
+msgid "Switch to workspace 1"
+msgstr "Տեղափոխվել աշխատանքային տարածք 1"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Switch to workspace 10"
+msgstr "Տեղափոխվել աշխատանքային տարածք 10"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Switch to workspace 11"
+msgstr "Տեղափոխվել աշխատանքային տարածք 11"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Switch to workspace 12"
+msgstr "Տեղափոխվել աշխատանքային տարածք 12"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Switch to workspace 2"
+msgstr "Տեղափոխվել աշխատանքային տարածք 2"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Switch to workspace 3"
+msgstr "Տեղափոխվել աշխատանքային տարածք 3"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Switch to workspace 4"
+msgstr "Տեղափոխվել աշխատանքային տարածք 4"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Switch to workspace 5"
+msgstr "Տեղափոխվել աշխատանքային տարածք 5"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 6"
+msgstr "Տեղափոխվել աշխատանքային տարածք 6"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 7"
+msgstr "Տեղափոխվել աշխատանքային տարածք 7"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 8"
+msgstr "Տեղափոխվել աշխատանքային տարածք 8"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 9"
+msgstr "Տեղափոխվել աշխատանքային տարածք 9"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace above this one"
+msgstr "Տեղափոխվել վերևի աշխատանքային տարածք"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace below this one"
+msgstr "Տեղափոխվել ներքևի աշխատանքային տարածք"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace on the left"
+msgstr "Տեղափոխվել ձախ կողմի աշխատանքային տարածք"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace on the right"
+msgstr "Տեղափոխվել աջ կողմի աշխատանքային տարածք"
+
+#: ../src/marco.schemas.in.h:80
+msgid "System Bell is Audible"
+msgstr "Համակարգի ազդանշանը լսելի է"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Take a screenshot"
+msgstr "Ստանալ էկրանի նկարը"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Take a screenshot of a window"
+msgstr "Ստանալ պատուհանի նկարը"
+
+#: ../src/marco.schemas.in.h:83
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Մետասիթիի մենեջերին տեղեկացնում է ինչպես իրականացնել ձայնային ազդանշանի "
+"մասին տեղեկացումը, կամ որ մեկ այլ կիրառական ծրագրի զանգը հնչել է։Այժմ կան "
+"երկու արժեքներ \"fullscreen\", որն ամբողջ էկրանի վրա առաջ է բերում սև–"
+"սպիտակ առկայծում, և \"frame_flash\", որը ակտիվացնում է այն պատուհանի "
+"վերնագրի տողերը, որում կիրառական ծրագիրը ձայնային ազդանը առկայծում է "
+"հարուցել։ Եթե ծրագիրը, որն ազդանշան է ուղարկել հայտնի չէ, առկայծում է ակտիվ "
+"պատուհանի վերնագիրը։"
+
+#: ../src/marco.schemas.in.h:84
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+" /apps/marco/global_keybindings/run_command_N keys ստեղնը սահմանում է "
+"ստեղների կոմբինացիաները, որոնք համապատասխանում են այդ հրամաններին։ "
+"Սեղմելով run_command_N կոմբինացիան կգործարկի command_N–ը։"
+
+#: ../src/marco.schemas.in.h:85
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Հրաման (հավանաբար պարամետրերով), որը և ստեղծում է աշխատանքային էկրանի "
+"պատկերը։ /apps/marco/global_keybindings/run_command_screenshot ստեղնը "
+"սահմանում է ստեղների կոմբինացիան, որը թույլատրում է տվյալ դասավորությամբ "
+"սահմանված հրահանգի կատարումը"
+
+#: ../src/marco.schemas.in.h:86
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Հրաման (հավանաբար պարամետրերով), որը և ստեղծում է աշխատանքային պատուհանի "
+"պատկերը։ /apps/marco/global_keybindings/run_ command_window_screenshot "
+"ստեղնը սահմանում է ստեղների կոմբինացիան, որը և ստեղծում է պատուհանի պատկերը։ "
+
+#: ../src/marco.schemas.in.h:87
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Ստեղների կոմբինացիա, համապատասխան համար ունեցող ծրագրի գործարկման համար /"
+"apps/marco/keybindings_commands։ Օգտագործվում են\"&lt;Control&gt;a\" կամ "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1 ֆորմատները։ Անալիզատորը բավականին ոչ խիստ է, "
+"կարելի է օգտագործել վերին և ներքևի ռեգիստրները և կրճատումները, օրինակ \"&lt;"
+"Ctrl&gt;\" և \"&lt;Ctrl&gt;\".Եթե այս պարամետրի համար տեղադրվի \"disabled"
+"\" (\"անջատված է\") ստեղների կոմբինացիան, ապա այս գործողության համար "
+"ստեղների կոմբինացիան չի ակտիվանա։ "
+
+#: ../src/marco.schemas.in.h:88
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+" Ստեղների կոմբինացիա, որը ակտիվացնում է ընթացիկ աշխատանքային տարածքի վերևում "
+"գտնվող աշխատանքային տարածքը։ Օգտագործվում է \"&lt;Control&gt;a\". կամ "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1 ֆորմատները։ Անալիզատորը բավականին լիբերալ է, և "
+"թույլ է տալիս օգտագործել վերևի և ներքևի ռեգիստրները և հապավումները, օրինակ "
+"\"&lt;Ctl&gt;\" և \"&lt;Ctrl&gt;\"։ Եթե այդ պարամետրերի համար ընտրեք "
+"\"disabled\" ստեղների կոմբինացիան, ապա այդ գործողության համար ստեղների "
+"կոմբինացիան չի ակտիվանա։"
+
+#: ../src/marco.schemas.in.h:89
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ստեղների կոմբինացիա, որը ակտիվացնում է ընթացիկ աշխատանքային տարածքի վերևում "
+"գտնվող աշխատանքային տարածքը։Օգտագործվում են \"&lt;Control&gt;a\" կամ \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\" ֆորմատները։ Անալիզատորը բավականին լիբերալ է, և "
+"թույլ է տալիս օգտագործել վերևի և ներքևի ռեգիստրները և հապավումները, օրինակ "
+"\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". Եթե այդ պարամետրերի համար ընտրեք "
+"\"disabled\" ստեղների կոմբինացիան, ապա այդ գործողության համար ստեղների "
+"կոմբինացիան չի ակտիվանա։"
+
+#: ../src/marco.schemas.in.h:90
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Ստեղների կոմբինացիա, որն ակտիվացնում է ընթացիկ աշխատանքային տարածքից ձախ "
+"գտնվող աշխատանքային տարածքը: Օգտագործվում են \"&lt;Control&gt;a\" կամ \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\" ֆորմատները:Անալիզատորը բավականին լիբերալ է և կարելի "
+"է օգտագործել վերին և ներքևի ռեգիստրները և հապավումներ, օրինակ \"&lt;Ctl&gt;"
+"\" և \"&lt;Ctrl&gt;\" ։ Եթե այդ պարամետրի համար ընտրեք \"disabled\", "
+"ստեղների կոմբինացիան, ապա այդ գործողության համար ստեղների կոմբինացիան չի "
+"ակտիվաանա:"
+
+#: ../src/marco.schemas.in.h:91
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Ստեղների կոմբինացիա, որն ակտիվացնում է ընթացիկ աշխատանքային տարածքից աջ "
+"գտնվող աշխատանքային տարածքը: Օգտագործվում են \"&lt;Control&gt;a\" կամ \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\"ֆորմատները: Անալիզառրը բավականին լիբերալ է և կարելի "
+"է օգտագործել վերին և ներքևի ռեգիստրները և հապավումներ, օրինակ \"&lt;Ctl&gt;"
+"\" and \"&lt;Ctrl&gt;\"։ Եթե այդ պարամետրի համար ընտրեք \"disabled\", "
+"ստեղնրի կոմբինացիան, ապա այդ գործողության համար ստեղների կոմբինացիան չի "
+"ակտիվաանա:"
+
+#: ../src/marco.schemas.in.h:92
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ստեղների կոմբինացիա աշխատանքային տարածք 1ին միանալու համար: Օգտագործվում են "
+"\"&lt;Control&gt;a\" կամ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ֆորմատները:"
+"Անալիզատորը բավականին լիբերալ է և կարելի է օգտագործել վերին և ներքևի "
+"ռեգիստրները և հապավումներ, օրինակ \"&lt;Ctl&gt;\" և \"&lt;Ctrl&gt;\" ։ Եթե "
+"այդ պարամետրի համար ընտրեք\"disabled\" ստեղնրի կոմբինացիան, ապա այդ "
+"գործողության համար ստեղների կոմբինացիան չի ակտիվաանա:"
+
+#: ../src/marco.schemas.in.h:93
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ստեղների կոմբինացիա աշխատանքային տարածք 10ին միանալու համար: Օգտագործվում են "
+"\"&lt;Control&gt;a\" կամ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ֆորմատները:"
+"Անալիզատորը բավականին լիբերալ է և կարելի է օգտագործել վերին և ներքևի "
+"ռեգիստրները և հապավումներ, օրինակ \"&lt;Ctl&gt;\" և \"&lt;Ctrl&gt;\" ։ Եթե "
+"այդ պարամետրի համար ընտրեք \"disabled\", ստեղնրի կոմբինացիան, ապա այդ "
+"գործողության համար ստեղների կոմբինացիան չի ակտիվաանա:"
+
+#: ../src/marco.schemas.in.h:94
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ստեղների կոմբինացիա աշխատանքային տարածք 11ին միանալու համար: Օգտագործվում են "
+"\"&lt;Control&gt;a\" կամ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ֆորմատները:"
+"Անալիզատորը բավականին լիբերալ է և կարելի է օգտագործել վերին և ներքևի "
+"ռեգիստրները և հապավումներ, օրինակ \"&lt;Ctl&gt;\" և \"&lt;Ctrl&gt;\" ։ Եթե "
+"այդ պարամետրի համար ընտրեք \"disabled\", ստեղնրի կոմբինացիան, ապա այդ "
+"գործողության համար ստեղների կոմբինացիան չի ակտիվաանա:"
+
+#: ../src/marco.schemas.in.h:95
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+
+#: ../src/marco.schemas.in.h:96
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:97
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:98
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:99
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:100
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:146
+msgid "The name of a workspace."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:147
+msgid "The screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:151
+msgid "The window screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, and 'toggle_maximize' which will maximize/unmaximize the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:158
+msgid "Toggle always on top state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:159
+msgid "Toggle fullscreen mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:160
+msgid "Toggle maximization state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:161
+msgid "Toggle shaded state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:162
+msgid "Toggle window on all workspaces"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:164
+msgid "Unmaximize window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:165
+msgid "Use standard system font in window titles"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:166
+msgid "Visual Bell Type"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:167
+msgid "Window focus mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:168
+msgid "Window title font"
+msgstr ""
+
+#: ../src/prefs.c:528 ../src/prefs.c:544 ../src/prefs.c:560 ../src/prefs.c:576
+#: ../src/prefs.c:592 ../src/prefs.c:612 ../src/prefs.c:628 ../src/prefs.c:644
+#: ../src/prefs.c:660 ../src/prefs.c:676 ../src/prefs.c:692 ../src/prefs.c:708
+#: ../src/prefs.c:724 ../src/prefs.c:741 ../src/prefs.c:757 ../src/prefs.c:773
+#: ../src/prefs.c:789 ../src/prefs.c:805 ../src/prefs.c:820 ../src/prefs.c:835
+#: ../src/prefs.c:850 ../src/prefs.c:866 ../src/prefs.c:882 ../src/prefs.c:898
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr ""
+
+#: ../src/prefs.c:943
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+
+#: ../src/prefs.c:967 ../src/prefs.c:1428
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr ""
+
+#: ../src/prefs.c:1145
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+
+#: ../src/prefs.c:1330
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1390
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+
+#: ../src/prefs.c:1455
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1589
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+
+#: ../src/prefs.c:1833
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+
+#: ../src/prefs.c:2187
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+
+#: ../src/resizepopup.c:126
+#, c-format
+msgid "%d x %d"
+msgstr ""
+
+#: ../src/screen.c:408
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr ""
+
+#: ../src/screen.c:424
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+
+#: ../src/screen.c:448
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+
+#: ../src/screen.c:506
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr ""
+
+#: ../src/session.c:884 ../src/session.c:891
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:901
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ""
+
+#: ../src/session.c:1053
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:1058
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:1133
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr ""
+
+#: ../src/session.c:1168
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr ""
+
+#: ../src/session.c:1217
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/session.c:1230
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr ""
+
+#: ../src/session.c:1247
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/session.c:1305 ../src/session.c:1337
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr ""
+
+#: ../src/session.c:1409
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr ""
+
+#: ../src/session.c:1469
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr ""
+
+#: ../src/session.c:1489
+#, c-format
+msgid "Unknown element %s"
+msgstr ""
+
+#: ../src/session.c:1961
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr ""
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr ""
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1662
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1676
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1903
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1910
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2090
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2161
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2209
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/theme-parser.c:2294
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2476
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2549
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/theme-parser.c:3153
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3210
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3219
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3227
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3272
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3289
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr ""
+
+#: ../src/theme-parser.c:3298
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr ""
+
+#: ../src/theme-parser.c:3306
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3376
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3392
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3401
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3420
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:3430
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3440
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3450
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+
+#: ../src/theme-parser.c:3464
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3536
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3574
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3612
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3659
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:3679
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+
+#: ../src/theme-parser.c:3684
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3696
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/theme-parser.c:3718
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3984
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3999
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/theme-parser.c:4014
+msgid "No draw_ops provided for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:4054
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:4109
+msgid "<name> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4120
+msgid "<author> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4131
+msgid "<copyright> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4142
+msgid "<date> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4153
+msgid "<description> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4348
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr ""
+
+#: ../src/theme-parser.c:4403
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+
+#: ../src/theme-viewer.c:70
+msgid "/_Windows"
+msgstr ""
+
+#: ../src/theme-viewer.c:71
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/theme-viewer.c:72
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/Des_ktop"
+msgstr ""
+
+#: ../src/theme-viewer.c:131
+msgid "Open another one of these windows"
+msgstr ""
+
+#: ../src/theme-viewer.c:138
+msgid "This is a demo button with an 'open' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:145
+msgid "This is a demo button with a 'quit' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr ""
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr ""
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/theme-viewer.c:397
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/theme-viewer.c:402
+msgid "Border"
+msgstr ""
+
+#: ../src/theme-viewer.c:731
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/theme-viewer.c:760
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/theme-viewer.c:803
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:816
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:839
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:845
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:851
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:856
+msgid "Button Layouts"
+msgstr ""
+
+#: ../src/theme-viewer.c:861
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/theme-viewer.c:908
+msgid "Window Title Goes Here"
+msgstr ""
+
+#: ../src/theme-viewer.c:1012
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:1227
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1229
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1233
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1241
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/theme-viewer.c:1245
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1248
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1310
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr ""
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr ""
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr ""
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr ""
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr ""
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr ""
+
+#: ../src/theme.c:843
+msgid "Gradients should have at least two colors"
+msgstr ""
+
+#: ../src/theme.c:969
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:983
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:994
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1007
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1037
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+
+#: ../src/theme.c:1048
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/theme.c:1058
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/theme.c:1105
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/theme.c:1116
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/theme.c:1126
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/theme.c:1155
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr ""
+
+#: ../src/theme.c:1417
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/theme.c:1444
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+
+#: ../src/theme.c:1458
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/theme.c:1525
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+
+#: ../src/theme.c:1582
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/theme.c:1725 ../src/theme.c:1735 ../src/theme.c:1769
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/theme.c:1777
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/theme.c:1834
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/theme.c:1843
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/theme.c:1851
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/theme.c:1861
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+
+#: ../src/theme.c:1980
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr ""
+
+#: ../src/theme.c:2009
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2072
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/theme.c:2129
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2140
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/theme.c:2384 ../src/theme.c:2406 ../src/theme.c:2427
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/theme.c:3913
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+
+#: ../src/theme.c:4363 ../src/theme.c:4395
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+
+#: ../src/theme.c:4446
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr ""
+
+#: ../src/theme.c:4592 ../src/theme.c:4599 ../src/theme.c:4606
+#: ../src/theme.c:4613 ../src/theme.c:4620
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr ""
+
+#: ../src/theme.c:4630
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/theme.c:4652
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+
+#: ../src/theme.c:5041 ../src/theme.c:5103
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/theme.c:5049 ../src/theme.c:5111
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#: ../src/util.c:93
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr ""
+
+#: ../src/util.c:103
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+
+#: ../src/util.c:109
+#, c-format
+msgid "Opened log file %s\n"
+msgstr ""
+
+#: ../src/util.c:203
+msgid "Window manager: "
+msgstr ""
+
+#: ../src/util.c:349
+msgid "Bug in window manager: "
+msgstr ""
+
+#: ../src/util.c:378
+msgid "Window manager warning: "
+msgstr ""
+
+#: ../src/util.c:402
+msgid "Window manager error: "
+msgstr ""
+
+#: ../src/window-props.c:162
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %ld\n"
+msgstr ""
+
+#. first time through
+#: ../src/window.c:5205
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5876
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
diff --git a/po/id.po b/po/id.po
new file mode 100644
index 00000000..5215e4a1
--- /dev/null
+++ b/po/id.po
@@ -0,0 +1,2035 @@
+# Indonesian translation of PACKAGE.
+# Copyright (C) 2003 THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# Mohammad DAMT <[email protected]>, 2003.
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco master\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2010-04-24 18:48+0000\n"
+"PO-Revision-Date: 2010-04-26 11:05+0700\n"
+"Last-Translator: Andika Triwidada <[email protected]>\n"
+"Language-Team: MATE Indonesian Translation Team <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Poedit-Language: Indonesian\n"
+"X-Poedit-Country: Indonesia\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Desktop"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Manajemen Jendela"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Peristiwa bel"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Permintaan informasi jendela tak dikenal: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> tak menanggapi."
+
+#: ../src/core/delete.c:101
+msgid "You may choose to wait a short while for it to continue or force the application to quit entirely."
+msgstr "Anda bisa memilih untuk menunggu sebentar atau memaksa aplikasi keluar."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Tunggu"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Matikan Paksa"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Gagal mendapatkan alamat host: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Kehilangan ekstensi %s yang diperlukan untuk pengkomposisian"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Gagal membuka tampilan X Window System '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Kehilangan koneksi ke tampilan '%s':\n"
+"mungkin server Xnya mati atau ada yang mematikan \n"
+"pengatur jendela.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Galat IO yang fatal berkode %d (%s) pada tampilan '%s'\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid "Some other program is already using the key %s with modifiers %x as a binding\n"
+msgstr "Ada program lain yang menggunakan tombol %s dengan kombinasi %x\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Ada galat saat menjalankan <tt>%s</tt>:\n"
+"\n"
+"%s."
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Tidak ada perintah %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Tidak ada perintah untuk menjalankan terminal.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Hak Cipta (C) 2001-%s Havoc Pennington, Red Hat, Inc., dan lain-lain.\n"
+"Ini adalah perangkat lunak bebas, silakan lihat kode asalnya untuk kondisi penyalinan.\n"
+"TIDAK ADA jaminan, bahkan untuk KELAYAKAN JUAL atau KELAYAKAN UNTUK KEGUNAAN TERTENTU.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Matikan koneksi ke pengatur sesi"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Ganti program pengatur jendela yang aktif dengan Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Tentukan kode pengaturan sesi"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Tampilan X yang digunakan"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Aktifkan sesi dari berkas simpanan"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Cetak versi"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Buat panggilan X selaras"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Nyalakan pengkomposisian"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Matikan pengkomposisian"
+
+#: ../src/core/main.c:322
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "Jangan jadikan layar penuh jendela yang dimaksimalkan dan tak memiliki hiasan"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Gagal memeriksa direktori tema: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "Tak menemukan tema! Pastikan %s ada dan berisi tema yang biasa.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Gagal menjalankan ulang: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508
+#: ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Key MateConf '%s' bernilai salah\n"
+
+#: ../src/core/prefs.c:589
+#: ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d yang disimpan pada key MateConf %s berada di luar jangkauan %d hingga %d\n"
+
+#: ../src/core/prefs.c:633
+#: ../src/core/prefs.c:710
+#: ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822
+#: ../src/core/prefs.c:1115
+#: ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148
+#: ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Key \"%s\" MateConf tipenya salah\n"
+
+#: ../src/core/prefs.c:1234
+msgid "Workarounds for broken applications disabled. Some applications may not behave properly.\n"
+msgstr "Pencegahan kesalahan bagi aplikasi yang rusak sedang dinonaktifkan. Mungkin nanti ada beberapa aplikasi yang akan bertingkah aneh.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Tidak dapat membaca deskripsi fonta \"%s\" dari key MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for mouse button modifier\n"
+msgstr "\"%s\" yang ada pada database konfigurasi bukanlah nilai yang benar untuk tombol mouse.\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Ada galat saat mengeset jumlah area kerja menjadi %d: %s\n"
+
+#: ../src/core/prefs.c:1953
+#: ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Area kerja %d"
+
+#: ../src/core/prefs.c:1983
+#: ../src/core/prefs.c:2161
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for keybinding \"%s\"\n"
+msgstr "\"%s\" yang ada pada database konfigurasi bernilai tidak benar untuk kombinasi tombol \"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Ada galat saat melakukan seting nama workspace %d ke \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Galat saat melakukan penataan status pengkomposisi: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Layar %d pada tampilan '%s' tidak benar\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager; try using the --replace option to replace the current window manager.\n"
+msgstr "Layar %d pada tampilan \"%s\" sudah memiliki pengatur jendela. Cobalah gunakan pilihan --replace untuk mengganti pengatur jendela yang aktif.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Tidak dapat mendapatkan pilihan pengatur jendela pada layar %d tampilan \"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Layar %d pada tampilan \"%s\" sudah ada pengatur jendelanya\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Layar %d pada tampilan \"%s\" tidak dapat dilepas\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Format penulisannya seperti \"<Control>a\" atau \"<Shift><Alt>F1\".\n"
+"\n"
+"Pengurai ini sangat fleksibel dan memperbolehkan digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya singkatan seperti \"<Ctl>\" atau \"<Ctrl>\". Apabila Anda menuliskan kata \"disabled\" maka perintah ini tidak memiliki kombinasi tombol."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Format penulisannya seperti \"<Control>a\" atau \"<Shift><Alt>F1\".\n"
+"\n"
+"Pengurai ini sangat fleksibel dan memperbolehkan digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya singkatan seperti \"<Ctl>\" atau \"<Ctrl>\". Apabila Anda menuliskan kata \"disabled\" maka perintah ini tidak memiliki kombinasi tombol.\n"
+"\n"
+"Kombinasi tombol ini bisa dibalik dengan terus menekan kunci \"shift\"; maka, \"shift\" tak bisa menjadi salah satu kunci yang dipakai."
+
+#: ../src/core/session.c:850
+#: ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Tidak dapat membuat direktori '%s': %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Tidak dapat menulis ke dalam berkas sesi '%s': %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Ada galat saat menulisi berkas sesi '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Ada galat saat menutup berkas sesi '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Gagal saat membaca berkas sesi simpanan %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Gagal membaca berkas sesi simpanan: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "Atribut <marco_session> ada tapi kode sesi sudah ada sebelumnya"
+
+#: ../src/core/session.c:1207
+#: ../src/core/session.c:1282
+#: ../src/core/session.c:1314
+#: ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Atribut %s tidak dikenal pada elemen <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "Ada tag <window> bersarang"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Elemen %s tidak dikenal"
+
+#: ../src/core/session.c:1818
+msgid "These windows do not support &quot;save current setup&quot; and will have to be restarted manually next time you log in."
+msgstr "Jendela ini tidak bisa &quot;menyimpan setelan aktif saat ini&quot; dan bila log masuk kali lain Anda harus menjalankannya ulang."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Gagal membuka log debug: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Gagal melakukan fdopen pada berkas log %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Berkas log yang dibuka %s\n"
+
+#: ../src/core/util.c:136
+#: ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco dikompilasi tanpa dukungan mode verbose\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Manajer jendela: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Kutu pada manajer jendela: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Peringatan manajer jendela: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Galat manajer jendela: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570
+#: ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid "Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER window as specified in the ICCCM.\n"
+msgstr "Jendela %s menyetel SM_CLIENT_ID pada dirinya sendiri, padahal seharusnya disetel pada jendela WM_CLIENT_LEADER sesuai aturan ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid "Window %s sets an MWM hint indicating it isn't resizable, but sets min size %d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr "Jendela %s menyetel hint MWM yang menandakan bahwa ia tidak dapat dirubah ukurannya, sedangkan ukuran minimalnya adalah %d x %d dan maksimal %d x %d yang tidak masuk di akal.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Aplikasi telah membuat _NET_WM_PID %lu bohongan\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (pada %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (sebagai pengguna super)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (sebagai %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (sebagai pengguna lain)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "WM_TRANSIENT_FOR salah jendela 0x%lx ditentukan untuk %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Jendela 0x%lx memiliki properti %s\n"
+"yang seharusnya memiliki tipe %s format %d.\n"
+"Sekarang dia memiliki tipe %s format %d n_items %d.\n"
+"Sepertinya ini adalah bug aplikasinya, bukan bug pengatur jendela.\n"
+"Judul jendelanya adalah \"%s\" class=\"%s\" dan bernama=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Properti %s pada jendela 0x%lx berisi karakter UTF-8 yang salah\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "Properti %s pada jendela 0x%lx di obyek %d berisi karakter UTF-8 yang salah\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Ganti ke area kerja 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Ganti ke area kerja 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Ganti ke area kerja 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Ganti ke area kerja 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Ganti ke area kerja 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Ganti ke area kerja 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Ganti ke area kerja 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Ganti ke area kerja 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Ganti ke area kerja 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Ganti ke area kerja 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Ganti ke area kerja 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Ganti ke area kerja 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Ganti ke area kerja sebelah kiri"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Ganti ke area kerja sebelah kanan"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Ganti ke area kerja yang lebih atas"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Ganti ke area kerja yang lebih bawah"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Berpindah antar jendela dari suatu aplikasi, memakai suatu jendela popup"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Berpindah mundur antar jendela dari suatu aplikasi, memakai suatu jendela popup"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Berpindah antar jendela, memakai suatu jendela popup"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Berpindah mundur antar jendela, memakai suatu jendela popup"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Berpindah antara panel dan desktop, memakai suatu jendela popup"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Berpindah mundur antara panel dan desktop, memakai suatu jendela popup"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Berpindah antar jendela-jendela aplikasi seketika"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Berpindahkan mundur antar jendela-jendela aplikasi seketika"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Berpindah antara jendela-jendela seketika"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Berpindah mundur antara jendela-jendela seketika"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Pindahkan langsung antara panel dan desktop"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Pindahkan langsung ke belakang antara panel dan desktop"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Sembunyikan semua jendela normal dan tata fokus ke desktop"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Tampilkan menu utama panel"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Tampilkan kotak dialog \"Jalankan Aplikasi\" milik panel"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Ambil gambar layar"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Ambil gambar layar khusus jendela tertentu"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Jalankan terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Aktifkan menu jendela"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Jungkit mode layar penuh"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Jungkit kondisi maksimum"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Jungkitkan apakah suatu jendela akan selalu nampak di atas jendela lain"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maksimalkan ukuran jendela"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Kembalikan ukuran jendela"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Jungkit kondisi berbayang"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimalkan ukuran jendela"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Tutup jendela"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Pindahkan jendela"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Ubah ukuran jendela"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Jungkit apakah jendela pada semua area kerja atau hanya satu"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Pindahkan jendela ke area kerja 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Pindahkan jendela ke area kerja 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Pindahkan jendela ke area kerja 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Pindahkan jendela ke area kerja 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Pindahkan jendela ke area kerja 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Pindahkan jendela ke area kerja 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Pindahkan jendela ke area kerja 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Pindahkan jendela ke area kerja 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Pindahkan jendela ke area kerja 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Pindahkan jendela ke area kerja 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Pindahkan jendela ke area kerja 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Pindahkan jendela ke area kerja 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Pindahkan jendela ke area kerja kiri"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Pindahkan jendela ke area kerja kanan"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Pindahkan jendela ke area kerja atas"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Pindahkan jendela ke area kerja bawah"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Naikan jendela bila tertutup oleh jendela lain, bila tidak maka turunkan"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Naikan jendela ini di atas jendela-jendela lain"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Turunkan jendela di bawah jendela lain"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maksimalkan ukuran jendela secara vertikal"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maksimalkan ukuran jendela secara horisontal"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Pindahkan jendela ke pojok barat laut (kiri atas)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Pindahkan jendela ke pojok timur laut (kanan atas)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Pindahkan jendela ke pojok barat daya (kiri bawah)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Pindahkan jendela ke pojok tenggara (kanan bawah)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Pindahkan jendela ke tepi utara (atas) layar"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Pindahkan jendela ke tepi selatan (bawah) layar"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Pindahkan jendela ke tepi timur (kanan) layar"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Pindahkan jendela ke tepi barat (kiri) layar"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Pindahkan jendela ke tengah layar"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Belum jadi) Navigasi dilakukan berdasarkan aplikasi, bukan jendela"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid "A font description string describing a font for window titlebars. The size from the description will only be used if the titlebar_font_size option is set to 0. Also, this option is disabled if the titlebar_uses_desktop_font option is set to true."
+msgstr "Kalimat deskripsi font menjelaskan jenis huruf yang akan digunakan untuk judul jendela. Ukuran pada deskripsi akan digunakan hanya jika pilihan titlebar_font_size diset ke angka 0.Pilihan ini juga akan mati apabila pilihan titlebar_uses_desktop_font bernilai true."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Aksi saat batang judul diklik ganda"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Aksi saat batang judul diklik tengah"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Aksi saat batang judul diklik kanan"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Pengaturan tombol pada judul jendela"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid "Arrangement of buttons on the titlebar. The value should be a string, such as \"menu:minimize,maximize,spacer,close\"; the colon separates the left corner of the window from the right corner, and the button names are comma-separated. Duplicate buttons are not allowed. Unknown button names are silently ignored so that buttons can be added in future marco versions without breaking older versions. A special spacer tag can be used to insert some space between two adjacent buttons."
+msgstr "Pengaturan tombol pada judul menu. Nilai di sini harus berupa string, misalnya \"menu:minimize,maximize,space,close\". Tanda titik dua memisahkan bagian kiri window dan bagian kanan window, dan nama tombol dipisahkan dengan tanda koma. Tombol tak boleh lebih dari satu kali dicantumkan. Nama tombol yang tidak dikenal akan diabaikan sehingga di kemudian hari tombol tersebut akan dapat ditambahkan bila memang diperlukan tanpa harus merusak konfigurasi Marco yang ada sekarang. Suatu tag khusus spacer dapat dipakai untuk menyisipkan ruang antara dua tombol bersebelahan."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Naikan jendela yang berfokus secara otomatis"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid "Clicking a window while holding down this modifier key will move the window (left click), resize the window (middle click), or show the window menu (right click). The middle and right click operations may be swapped using the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" for example."
+msgstr "Klik pada jendela sambil menekan tombol kombinasi ini akan memindahkan jendela (klik kiri), mengubah ukuran jendela (klik tengah), atau menampilkan menu jendela (klik kanan). Operasi klik tengah dan kanan dapat ditukar dengan kunci \"resize_with_right_button\". Tombol tambahan ini dinyatakan sebagai misalnya \"&lt;Alt;&gt; atau \"&lt;Super&gt;\""
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Perintah yang akan dijalankan bila tombol kombinasi ditekan"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Manajer Pengkomposisian"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Kendalikan bagaimana jendela baru berfokus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Tema yang aktif"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Jeda dalam milidetik untuk pilihan naikan jendela secara otomatis"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Menentukan apakah Marco adalah suatu manajer pengkomposisian."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid "Determines whether applications or the system can generate audible 'beeps'; may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr "Menentukan apakah aplikasi atau sistem dapat membuat bel yang dapat terdengar.Hal ini berlawanan dengan bel visual yang tidak mengeluarkan suara pada saat membunyikan bel."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Nonaktifkan fitur yang diperlukan oleh aplikasi tua dan aplikasi jelek"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Gunakan Bel Visual"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid "If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then the focused window will be automatically raised after a delay specified by the auto_raise_delay key. This is not related to clicking on a window to raise it, nor to entering a window during drag-and-drop."
+msgstr "Bila bernilai true dan modus fokus bernilai \"sloppy\" atau \"mouse\" maka window yang berfokus akan dinaikkan secara otomatis setelah waktu jeda ditetapkan oleh key auto_rise_delay. Hal ini tidak berhubungan untuk mengklik pada jendela untuk memunculkannya, ataupun untuk memasukkan jendela ketika seret-dan-letakkan."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid "If true, ignore the titlebar_font option, and use the standard application font for window titles."
+msgstr "Bila bernilai true, pilihan titlebar_font akan diabaikan dan gunakan jenis huruf yang digunakan aplikasi standar pada judul windownya."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid "If true, marco will give the user less feedback by using wireframes, avoiding animations, or other means. This is a significant reduction in usability for many users, but may allow legacy applications to continue working, and may also be a useful tradeoff for terminal servers. However, the wireframe feature is disabled when accessibility is on."
+msgstr "Bila bernilai true, marco akan memberikan kembalian pengguna yang lebih sedikit dengan menggunakan wireframes menghindari animasi, atau yang lain. Ini berarti akan kurang berdaya guna untuk kebanyakan pemakai, tetapi akan membolehkan aplikasi lama untuk tetap bekerja, dan mungkin juga berguna untuk server terminal. Bagaimanapun, fitur bingkai kawat akan dimatikan saat kemudahan akses dinyalakan."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid "If true, then Marco works in terms of applications rather than windows. The concept is a bit abstract, but in general an application-based setup is more like the Mac and less like Windows. When you focus a window in application-based mode, all the windows in the application will be raised. Also, in application-based mode, focus clicks are not passed through to windows in other applications. Application-based mode is, however, largely unimplemented at the moment."
+msgstr "Bila bernilai true, Marco akan menjalankan tugas berdasarkan aplikasi, bukan berdasarkan jendela. Konsepnya agak sedikit abstrak, tapi secara umum, konsepnya lebih mirip ke Mac ketimbang ke Windows. Saat Anda memberi fokus pada window pada modus aplikasi, semua jendela pada aplikasi akan dinaikkan. Juga, pada mode berdasarkan aplikasi, klik fokus tidak diberikan ke jendela pada aplikasi lain. Mode berdasarkan aplikasi, bagaimanapun, belum lagi diterapkan secara luar pada saat ini."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Bila bernilai true, mementingkan penggunaan sumber daya yang lebih kecil dari pada daya guna"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Tombol yang digunakan untuk menjalankan suatu perintah apabila jendela diklik"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nama area kerja"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Cacah area kerja"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid "Number of workspaces. Must be more than zero, and has a fixed maximum to prevent making the desktop unusable by accidentally asking for too many workspaces."
+msgstr "Cacah ruang kerja. Harus bernilai lebih dari nol, dan memiliki batas maksimum untuk mencegah kerusakan pada desktop, misalnya karena minta membuat begitu banyak ruang kerja."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Jalankan perintah tertentu"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid "Set this to true to resize with the right button and show a menu with the middle button while holding down the key given in \"mouse_button_modifier\"; set it to false to make it work the opposite way around."
+msgstr "Tata ini ke true untuk mengubah ukuran dengan tombol kanan dan menampilkan suatu menu dengan tombol tengah ketika menekan kunci yang diberikan di \"mouse_button_modifier\"; tata ini ke false untuk membuat sebaliknya"
+
+#: ../src/marco.schemas.in.in.h:30
+msgid "Setting this option to false can lead to buggy behavior, so users are strongly discouraged from changing it from the default of true. Many actions (e.g. clicking in the client area, moving or resizing the window) normally raise the window as a side-effect. Setting this option to false, which is strongly discouraged, will decouple raising from other user actions, and ignore raise requests generated by applications. See http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can still be raised by an alt-left-click anywhere on the window, a normal click on the window decorations, or by special messages from pagers, such as activation requests from tasklist applets. This option is currently disabled in click-to-focus mode. Note that the list of ways to raise windows when raise_on_click is false does not include programmatic requests from applications to raise windows; such requests will be ignored regardless of the reason for the request. If you are an application developer and have a user complaining that your application does not work with this setting disabled, tell them it is _their_ fault for breaking their window manager and that they need to change this option back to true or live with the \"bug\" they requested."
+msgstr "Mengatur opsi ini ke false dapat menyebabkan perilaku berkutu, sehingga pengguna sangat dianjurkan untuk mengubahnya dari baku yang true. Banyak tindakan (misalnya klik di wilayah klien, memindahkan atau mengubah ukuran jendela) normalnya menimbulkan jendela sebagai efek samping. Menetapkan pilihan ini ke false, yang sangat dianjurkan, akan melepas menaikkan dari tindakan pengguna lain, dan mengabaikan permintaan meningkatkan yang dihasilkan oleh aplikasi. Lihat http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Bahkan ketika opsi ini false, jendela masih bisa dibangkitkan oleh klik-alt-kiri di mana saja di jendela, klik biasa di dekorasi jendela, atau dengan pesan khusus dari pager, seperti permintaan aktivasi dari aplet tasklist. Pilihan ini sedang dimatikan pada mode klik-untuk-fokus. Perhatikan bahwa daftar cara untuk meningkatkan jendela ketika raise_on_click adalah false tidak termasuk permintaan dari program aplikasi untuk menaikkan jendela; permintaan tersebut akan diabaikan tanpa alasan untuk permintaan tersebut. Jika Anda seorang pengembang aplikasi dan memiliki pengguna yang mengeluh bahwa aplikasi Anda tidak bekerja ketika pengaturan ini dimatikankan, katakan kepada mereka itu adalah kesalahan _mereka_ karena merusak window manager mereka dan bahwa mereka perlu mengubah pilihan ini kembali ke true atau hidup dengan \"kutu\" yang mereka minta."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid "Some applications disregard specifications in ways that result in window manager misfeatures. This option puts Marco in a rigorously correct mode, which gives a more consistent user interface, provided one does not need to run any misbehaving applications."
+msgstr "Beberapa aplikasi tidak mengacuhkan spesifikasi yang dapat menyebabkan keselahan pengelola jendela. Pilihan ini menempatkan Marco pada mode pembenaran yang tepat, yang akan memberikan antar muka pengguna yang lebih konsisten, sehingga tidak perlu menjalankan aplikasi yang berkelakuan tidak benar."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Bel Sistem dapat Terdengar"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid "Tells Marco how to implement the visual indication that the system bell or another application 'bell' indicator has been rung. Currently there are two valid values, \"fullscreen\", which causes a fullscreen white-black flash, and \"frame_flash\" which causes the titlebar of the application which sent the bell signal to flash. If the application which sent the bell is unknown (as is usually the case for the default \"system beep\"), the currently focused window's titlebar is flashed."
+msgstr "Menentukan cara Marco menyajikan indikasi visual saat bel sistem atau aplikasi sedang dibunyikan. Ada dua cara yang digunakan, yaitu \"fullscreen\"yang akan menampilkan kilatan hitam putih di seluruh area layar, dan \"frame_flash\"yang akan menampikan kilatan pada kotak judul window aplikasi yang membunyikan bel.Jika tidak diketahui aplikasi mana yang membunyikan bel (biasanya karena inimerupakan bel sistem standar) maka kilatan akan ditampilkan pada kotak judul window yang sedang memiliki fokus saat ini."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid "The /apps/marco/global_keybindings/run_command_N keys define keybindings that correspond to these commands. Pressing the keybinding for run_command_N will execute command_N."
+msgstr "Key /apps/marco/global_keybindings/run_command_N menentukan kombinasi tombol untuk perintah ini. Dengan menekan kombinasi tombol tersebut maka perintah command_N akan dijalankan."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid "The /apps/marco/global_keybindings/run_command_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr "Key /apps/marco/global_keybindings/run_command_screenshot menentukan kombinasi tombol untuk menjalankan perintah ini"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid "The /apps/marco/global_keybindings/run_command_window_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr "Key /apps/marco/global_keybindings/run_command_window_screenshot menentukan kombinasi tombol untuk menjalankan perintah ini."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid "The keybinding that runs the correspondingly-numbered command in /apps/marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Kombinasi tombol yang menjalankan perintah yang sesuai dengan nomor panggilnya pada /apps/marco/keybinding_commands. Format penulisannya seperti \"&lt;Control&gt;a\" atau \"&lt;Shift&gt;&lt;Alt&gt;F1. Program pendeteksi kombinasi tombol ini sangat fleksibel dan memperbolehkan digunakannya huruf besar dan huruf kecil, juga memperbolehkan digunakannya singkatan seperti \"&lt;Ctl&gt;\" atau \"&lt;Ctrl&gt;\". Dan apabila Anda menuliskan kata \"disabled\" maka perintah ini tidak memiliki kombinasi tombol."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Nama area kerja."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Perintah cuplik layar"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid "The theme determines the appearance of window borders, titlebar, and so forth."
+msgstr "Tema menentukan kemunculan batas-batas pada window, judul, dan lain-lain "
+
+#: ../src/marco.schemas.in.in.h:41
+msgid "The time delay before raising a window if auto_raise is set to true. The delay is given in thousandths of a second."
+msgstr "Waktu jeda sebelum suatu window akan otomatis naik apabila auto_rise diaktifkan. Waktu jeda dinyatakan dalam seperseribu detik."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid "The window focus mode indicates how windows are activated. It has three possible values; \"click\" means windows must be clicked in order to focus them, \"sloppy\" means windows are focused when the mouse enters the window, and \"mouse\" means windows are focused when the mouse enters the window and unfocused when the mouse leaves the window."
+msgstr "Modus fokus suatu window yang menentukan bagaimana cara mengaktifkan window tersebut. Ada tiga macam yaitu: \"klik\" berarti window harus diklik terlebih dahulu baru dinaikkan, \"sloppy\" berarti window akan menerima fokus saat mouse memasuki area window, dan \"mouse\" berarti window akan diberi fokus apabila mouse memasuki area window dan akan kembali kehilangan fokus saat mouse keluar dari area window."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Perintah pengambilan gambar layar pada jendela"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid "This option determines the effects of double-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr "Pilihan ini menentukan efek samping klik ganda pada judul jendela. Pilihan yang sah adalah 'toggle_shade' yang akan menggulung/membuka jendela, dan 'toggle_maximize' yang akan memaksimalkan dan mengecilkan jendela, 'toggle_maximize_horizontally' dan 'toggle_maximize_vertically' yang akan memaksimalkan/membatalkan pemaksimalan jendela hanya ke arah itu, 'minimize' yang akan meminimalkan jendela, 'shade' yang akan menggulung jendela up, 'menu' yang akan menampilkan menu jendela, 'lower' yang akan menempatkan jendela di belakang yang lain, dan 'none' tidak akan melakukan apapun."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid "This option determines the effects of middle-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr "Pilihan ini menentukan efek samping klik tengah pada judul jendela. Pilihan yang sah adalah 'toggle_shade' yang akan menggulung/membuka jendela, dan 'toggle_maximize' yang akan memaksimalkan dan mengecilkan jendela, 'toggle_maximize_horizontally' dan 'toggle_maximize_vertically' yang akan memaksimalkan/membatalkan pemaksimalan jendela hanya ke arah itu, 'minimize' yang akan meminimalkan jendela, 'shade' yang akan menggulung jendela up, 'menu' yang akan menampilkan menu jendela, 'lower' yang akan menempatkan jendela di belakang yang lain, dan 'none' tidak akan melakukan apapun."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid "This option determines the effects of right-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr "Pilihan ini menentukan efek samping klik kanan pada judul jendela. Pilihan yang sah adalah 'toggle_shade' yang akan menggulung/membuka jendela, dan 'toggle_maximize' yang akan memaksimalkan dan mengecilkan jendela, 'toggle_maximize_horizontally' dan 'toggle_maximize_vertically' yang akan memaksimalkan/membatalkan pemaksimalan jendela hanya ke arah itu, 'minimize' yang akan meminimalkan jendela, 'shade' yang akan menggulung jendela up, 'menu' yang akan menampilkan menu jendela, 'lower' yang akan menempatkan jendela di belakang yang lain, dan 'none' tidak akan melakukan apapun."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid "This option provides additional control over how newly created windows get focus. It has two possible values; \"smart\" applies the user's normal focus mode, and \"strict\" results in windows started from a terminal not being given focus."
+msgstr "Pilihan ini menyediakan kendali tambahan pada bagaimana jendela yang baru di buat berfokus. Dia memiliki dua nilai yang mungkin; \"pintar\" menerapkan mode fokus normal pengguna, dan \"strict\" menghasilkan jendela dimulai dari terminal tidak akan berfokus."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid "Turns on a visual indication when an application or the system issues a 'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy environments."
+msgstr "Nyalakan indikasi visual saat aplikasi atau sistem mengeluarkan 'bell' atau 'beep'. Ini berguna bagi pengguna yang mengalami kurang pendengaran atau pada penggunaan di tempat-tempat yang berisik."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Gunakan jenis huruf sistem standar pada judul jendela"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Tipe Bel Visual"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Apakah kemunculan akan menjadi efek-samping dari interaksi pengguna lain"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Apakah akan mengubah ukuran dengan tombol kanan"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Mode fokus jendela"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Jenis huruf yang dipakai pada judul jendela"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Cara pakai: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Tutup Jendela"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menu Jendela"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Kecilkan Jendela"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maksimalkan Ukuran Jendela"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Kembalikan Ukuran jendela"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Gulung Jendela"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Buka Gulungan Jendela"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Jaga Jendela Di Puncak"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Hapus Jendela Dari Puncak"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Selalu Pada Area Kerja Tampak"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Letakkan Jendela Hanya Pada Satu Area Kerja"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Kecilka_n"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Pe_rbesar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Kem_balikan"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "G_ulung"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "B_uka"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Pindahkan"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Ganti Uku_ran"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Pindahkan Judul Pada _layar"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87
+#: ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Selalu di _Puncak"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "T_ampak pada Area Kerja Aktif"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Tampak pada Area Kerja Ini Saja"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Pindahkan ke Area Kerja _Kiri"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Pindahkan ke A_rea Kerja Kanan"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Pindahkan ke Area Kerja Ata_s"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Pindahkan ke Area Kerja _Bawah"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Tutup"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Area kerja %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Area Kerja 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Area Kerja %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Pindahkan ke Area Kerja _Lain"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hiper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "atas"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "bawah"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "kiri"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "kanan"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "geometri rangka tidak menyebutkan dimensi \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "geometri rangka tidak menyebutkan dimensi \"%s\" untuk batas \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Aspek rasio tombol %g tidak wajar"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Ukuran frame tidak menyebutkan ukuran tombol"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Gradien harus paling tidak ada dua warna"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid "GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "Spesifikasi warna GTK harus memiliki kondisi pada kurung, misal gtk:fg[NORMAL] dengan NORMAL adalah jenis kondisinya, tidak dapat membaca \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid "GTK color specification must have a close bracket after the state, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "Spesifikasi warna GTK harus memiliki kurung tutup pada kondisinya, misal gtk:fg[NORMAL] dengan NORMAL adalah jenis kondisinya, tidak dapat membaca \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Kondisi \"%s\" tidak benar pada spesifikasi warna"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Komponen warna \"%s\" tidak benar pada spesifikasi warna"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid "Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the format"
+msgstr "Format pencampuran adalah \"blend/bg_color/fg_color/alpha\", \"%s\" bukan ditulis dalam format yang benar"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Tidak dapat membaca nilai alpha \"%s\" pada pencampuran warna"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Nilai alpha \"%s\" pada warna yang dicampur tidak ada dalam rentang 0.0 dan 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Format bayangan adalah \"shade/base_color/factor\", \"%s\" ditulis dalam format yang keliru"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Tidak dapat membaca faktor bayangan \"%s\" pada warna berbayang"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Faktor bayangan \"%s\" pada warna berbayang bernilai negatif"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Tidak dapat membaca warna \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Ekspresi koordinat berisi karakter '%s' yang tidak diperbolehkan"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid "Coordinate expression contains floating point number '%s' which could not be parsed"
+msgstr "Ekspresi koordinat berisi angka floating point '%s' yang tidak dapat dibaca"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Ekspresi koordinat berisi integer '%s' yang tidak dapat dibaca"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid "Coordinate expression contained unknown operator at the start of this text: \"%s\""
+msgstr "Ekspresi koordinat berisi operator tak dikenal pada awal teks berikut: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Ekspresi koordinat kosong atau tidak dapat dimengerti"
+
+#: ../src/ui/theme.c:1913
+#: ../src/ui/theme.c:1923
+#: ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Ekspresi koordinat menghasilkan pembagian dengan nol"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "Ekspresi koordinat menggunakan operator mod pada angka bilangan nyata"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Ekspresi koordinat menggunakan operator \"%s\" tanpa adanya operan"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Ekspresi koordinat menggunakan operand tanpa operator"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Ekspresi koordinat diakhiri dengan operator, seharusnya diakhiri dengan operand"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid "Coordinate expression has operator \"%c\" following operator \"%c\" with no operand in between"
+msgstr "Ekspresi koordinat memiliki operator \"%c\" diikuti operator \"%c\" tanpa adanya operand di antarany"
+
+#: ../src/ui/theme.c:2195
+#: ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Ada variabel atau konstanta \"%s\" tidak diketahui pada ekspresi koordinat"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Ekspresi koordinat melampaui batasannya."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Terdapat kurung tutup tanpa kurung buka pada ekspresi koordinat"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Terdapat kurung buka tanpa kurung tutup pada ekspresi koordinat "
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Ekspresi koordinat sepertinya tidak memiliki operator atau operan"
+
+#: ../src/ui/theme.c:2596
+#: ../src/ui/theme.c:2616
+#: ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Tema berisi suatu ekspresi yang menghasilkan galat: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be specified for this frame style"
+msgstr "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> tidak disebutkan pada gaya frame ini"
+
+#: ../src/ui/theme.c:4711
+#: ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> tidak ada"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Gagal membuka tema \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910
+#: ../src/ui/theme.c:4917
+#: ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931
+#: ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Tidak ada <%s> yang ditentukan untuk tema \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid "No frame style set for window type \"%s\" in theme \"%s\", add a <window type=\"%s\" style_set=\"whatever\"/> element"
+msgstr "Tidak ada gaya frame untuk tipe window \"%s\" pada tema \"%s\". Tambah dulu elemen <window type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5389
+#: ../src/ui/theme.c:5451
+#: ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "Konstanta buatan pengguna harus dimulai dengan huruf besar: \"%s\" tidak"
+
+#: ../src/ui/theme.c:5397
+#: ../src/ui/theme.c:5459
+#: ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstanta \"%s\" telah didefinisikan sebelumnya"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Tidak ada atribut \"%s\" untuk elemen <%s>"
+
+#: ../src/ui/theme-parser.c:231
+#: ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Baris %d karakter %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atribut \"%s\" diulangi dua kali pada elemen <%s> yang sama"
+
+#: ../src/ui/theme-parser.c:437
+#: ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atribut \"%s\" tidak diperkenankan pada elemen <%s> pada konteks ini"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Tidak dapat menguraikan \"%s\" sebagai integer"
+
+#: ../src/ui/theme-parser.c:531
+#: ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Tidak mengerti karakter \"%s\" kenapa ada dibuntut string \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Integer %ld harus bernilai positif"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Integer %ld terlalu besar, maksimal %d"
+
+#: ../src/ui/theme-parser.c:577
+#: ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Tidak dapat membaca \"%s\" sebagai angka floating point"
+
+#: ../src/ui/theme-parser.c:608
+#: ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Nilai boolean harus \"true\" atau \"false\" dan bukannya \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Sudut harus ada dalam rentang 0.0 dan 360.0, dalam berkas didapat %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Alpha harus ada dalam rentang 0.0 (tidak kelihatan) dan 1.0 (nampak semua, dalam berkas didapat %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid "Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+msgstr "Skala judul \"%s\" tidak benar (harusnya bernilai xx-small, x-small, small, medium, large, x-large, xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936
+#: ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033
+#: ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "Nama <%s> \"%s\" digunakan kedua kali"
+
+#: ../src/ui/theme-parser.c:948
+#: ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Induk <%s> \"%s\" belum didefinisikan"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Geometri <%s> \"%s\" belum didefinisikan"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> harus menentukan geometri atau induk yang ada geometrinya"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Anda mesti menyatakan suatu latar belakang bagi nilai alfa agar berarti"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Tipe \"%s\" tidak dikenal pada elemen <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set \"%s\" tidak dikenali pada elemen <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Tipe jendela \"%s\" sudah memiliki set gaya"
+
+#: ../src/ui/theme-parser.c:1229
+#: ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519
+#: ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786
+#: ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126
+#: ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202
+#: ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Elemen <%s> tidak diperkenankan ada di bawah <%s>"
+
+#: ../src/ui/theme-parser.c:1343
+#: ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid "Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" for buttons"
+msgstr "Tidak dapat menyatakan sekaligus \"button_width\"/\"button_height\" dan \"aspect_ratio\" untuk tombol"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Jarak \"%s\" tidak dikenal"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Rasio aspek \"%s\" tidak dikenal"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Batas \"%s\" tidak dikenal"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Tidak dijumpai atribut \"start_angle\" atau \"from\" pada elemen <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Tidak dijumpai atribut \"extent_angle\" atau \"to\" pada elemen <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Nilai \"%s\" bukan nilai yang sah untuk tipe gradien"
+
+#: ../src/ui/theme-parser.c:2109
+#: ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Tipe isian \"%s\" tidak dikenal untuk elemen <%s>"
+
+#: ../src/ui/theme-parser.c:2276
+#: ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Kondisi \"%s\" tidak dikenal untuk elemen <%s>"
+
+#: ../src/ui/theme-parser.c:2286
+#: ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Bayangan \"%s\" tidak dikenal untuk elemen <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Panah \"%s\" tidak dikenal untuk elemen <%s>"
+
+#: ../src/ui/theme-parser.c:2596
+#: ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Tidak ada <draw_ops> bernama \"%s\" yang telah didefinisikan"
+
+#: ../src/ui/theme-parser.c:2608
+#: ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Menyertakan draw_ops \"%s\" di sini akan membuat referensi tak berujung"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Posisi \"%s\" tidak dikenal untuk bagian frame"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Gaya frame sudah memiliki bagian pada posisi %s"
+
+#: ../src/ui/theme-parser.c:2844
+#: ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Tidak ada <draw_ops> dengan nama \"%s\" yang didefinisikan"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Fungsi \"%s\" tidak dikenal untuk tombol"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Fungsi tombol \"%s\" tak ada pada versi ini (%d, perlu %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Kondisi \"%s\" tidak dikenal untuk tombol"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Gaya bingkai sudah memiliki tombol untuk fungsi %s kondisi %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" bukan nilai yang benar untuk atribut focus"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" bukan nilai yang benar untuk atribut state"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Gaya bernama \"%s\" belum didefinisikan"
+
+#: ../src/ui/theme-parser.c:3013
+#: ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" bukan nilai yang benar untuk atribut resize"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized/shaded states"
+msgstr "Atribut \"resize\" tidak boleh ada pada elemen <%s> untuk kondisi ukuran window maksimum/tergulung"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "Atribut \"resize\" tidak boleh ada pada elemen <%s> untuk kondisi ukuran jendela maksimum"
+
+#: ../src/ui/theme-parser.c:3075
+#: ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Gaya sudah menjelaskan kondisi %s resize %s focus %s"
+
+#: ../src/ui/theme-parser.c:3086
+#: ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Gaya sudah menjelaskan kondisi %s focus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid "Can't have a two draw_ops for a <piece> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Tidak boleh ada dua draw_ops untuk elemen <piece> (tema menyebutkan atribut draw_ops dan juga elemen <draw_ops> atau meyebutkan dua elemen tersebut "
+
+#: ../src/ui/theme-parser.c:3185
+msgid "Can't have a two draw_ops for a <button> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Tidak boleh ada dua draw_ops untuk elemen <button> (tema menyebutkan atribut draw_ops dan juga elemen <draw_ops> atau meyebutkan dua elemen tersebut "
+
+#: ../src/ui/theme-parser.c:3223
+msgid "Can't have a two draw_ops for a <menu_icon> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Tidak boleh ada dua draw_ops untuk elemen <menu_icon> (tema menyebutkan atribut draw_ops dan juga elemen <draw_ops> atau meyebutkan dua elemen tersebut "
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Elemen tema paling luar haruslah <marco_theme> dan bukan <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Elemen <%s> tidak diperbolehkan berada elemen name/author/date/description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Elemen <%s> tidak boleh ada dalam elemen <constat>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Elemen <%s> tidak boleh ada di dalam elemen distance/border/aspec_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Elemen <%s> tidak boleh ada di dalam elemen operasi gambar"
+
+#: ../src/ui/theme-parser.c:3340
+#: ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375
+#: ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Elemen <%s> tidak boleh ada di dalam elemen <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Tidak ada draw_ops yang disediakan untuk bagian frame"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Tidak ada draw_ops yang disediakan untuk tombol"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Tidak boleh ada teks di dalam elemen <%s>"
+
+#: ../src/ui/theme-parser.c:3724
+#: ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748
+#: ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> disebutkan dua kali pada tema ini"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Gagal menemukan berkas yang valid bagi tema %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Berkas tema %s tidak berisi akar elemen <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Jendela"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Jendela/sobek"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Jendela/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Jendela/Dialog _Modal"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Jendela/_Perkakas"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Jendela/Layar _pembuka"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Jendela/Dok a_tas"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Jendela/Dok _Bawah"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Jendela/Dok k_iri"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Jendela/Dok kana_n"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Jendela/Semu_a dok"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Jendela/Des_ktop"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Ini contoh pesan pada suatu dialog"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Item menu palsu %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Jendela dengan hanya tepi"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Batang"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Jendela Aplikasi Normal"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Kotak Dialog"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Kotak Dialog Modal"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Palet Perkakas"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menu Dapat Dilepas"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Batas"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Tes komposisi tombol %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "lama waktu menggambar satu bingkai jendela %g milidetik"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Cara pakai: marco-theme-viewer [NAMA TEMA]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Ada galat saat memuat tema: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tema \"%s\" dibuka dalam %g detik\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Fonta Judul Normal"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Fonta Judul Kecil"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Fonta Judul Besar"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Tata Letak Tombol"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Pengukuran"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Ini tempat judul jendela"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid "Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g seconds wall clock time including X server resources (%g milliseconds per frame)\n"
+msgstr "%d frame dibuat dalam %g detik dalam waktu klien (%g milidetik per frame) dan %g detik dalam waktu sebenarnya (%g milidetik per frame)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "tes ekspresi posisi mengembalikan TRUE tapi justru ada galat"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "tes ekspresi posisi mengembalikan FALSE tapi tidak ada galat"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Seharusnya ada galat, tapi ini kok tidak ada"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Seharunya ada galat %d, tapi yang terjadi %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Seharusnya tidak ada galat, tapi ini tiba-tiba ada error: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "nilai x sebelumnya %d, padahal seharusnya %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "nilai y sebelumnya %d, padahal seharusnya %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "ekspresi koordinat %d diambil dalam %g detik (rata-rata %g detik)\n"
+
diff --git a/po/ig.po b/po/ig.po
new file mode 100644
index 00000000..a5a54e93
--- /dev/null
+++ b/po/ig.po
@@ -0,0 +1,3513 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2009-01-17 08:21+0000\n"
+"PO-Revision-Date: 2006-07-07 10:49+0100\n"
+"Last-Translator: Onye, Sylvester <[email protected]>\n"
+"Language-Team: Igbo\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10.2\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+#, fuzzy
+msgid "Desktop"
+msgstr "Elu"
+
+#: ../src/50-marco-key.xml.in.h:1
+#, fuzzy
+msgid "Window Management"
+msgstr "Onyenlekọta windo:"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr ""
+
+#: ../src/core/delete.c:70 ../src/core/delete.c:97
+#: ../src/ui/marco-dialog.c:50 ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Enweghị ike ịtọsasị \"%s\" dịka ịntiga"
+
+#: ../src/core/delete.c:77 ../src/core/delete.c:104
+#: ../src/ui/marco-dialog.c:57 ../src/ui/theme-parser.c:531
+#: ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Aghọtaghị ǹsòchọ̀ mkpụrụokwu \"%s\" n'ahịrịokwu \"%s\""
+
+#: ../src/core/delete.c:135
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Ọdịda n'ịtọsasị ozi \"%s\"site n'usoro dayalọ́ọ̀gụ̀\n"
+
+#: ../src/core/delete.c:253
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Nwepụta ndehie site n'usoro ngosi dayalọ́ògụ̀: %s\n"
+
+#: ../src/core/delete.c:336
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Mbubata ndehie nke marco-dayalọ́ọ̀gụ̀ ka a jụọ maka mmebi usoroiheomume: %s\n"
+
+#: ../src/core/delete.c:445
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Ọdịda nweta aha nnyere kọmputa: %s\n"
+
+#: ../src/core/display.c:256
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr ""
+
+#: ../src/core/display.c:334
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Ọdịda n'imepe X Windo sistem ngosi '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Anataghị mbanye ikuku ka egosi '%s';\n"
+"nke kacha nke a gbanyụrụ X server mọọbụ i mebie/mebisia\n"
+"onyenlekọta windo.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Ndehie IO nwere ike ibute nsogbu %d (%s) na ngosi '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Ụfọdụ program ndị ọzọ ejiwela kíì %s ya na omemmegharị %x dịka baịndịn\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, fuzzy, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Enwere ndehie na mbido a \"%s\":\n"
+"%s."
+
+#: ../src/core/keybindings.c:2381
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Onweghị ntiiwu %d akọwarala.\n"
+
+#: ../src/core/keybindings.c:3335
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Onweghị ntiiwu ngwaọrụ mbubata na mbupụ ozi akọwarala.\n"
+
+#: ../src/core/main.c:116
+#, fuzzy, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001=2002 Havoc Pennington, Red Hat, Inc., nakwa ndị ọzọ\n"
+"Nke a bụ sọftwwịa efu; hụ́ nsirinweta maka ọnọdụ ndebata.\n"
+"Onweghị Warantíì; ọbụnaghị maka AZUMAAHỊA mọọbụ IKE MAKA IHEOMUME AKWADORO "
+"IME.\n"
+
+#: ../src/core/main.c:253
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/core/main.c:259
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/core/main.c:265
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/core/main.c:270
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/core/main.c:276
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/core/main.c:282
+msgid "Print version"
+msgstr ""
+
+#: ../src/core/main.c:288
+msgid "Make X calls synchronous"
+msgstr ""
+
+#: ../src/core/main.c:294
+msgid "Turn compositing on"
+msgstr ""
+
+#: ../src/core/main.c:300
+msgid "Turn compositing off"
+msgstr ""
+
+#: ../src/core/main.c:478
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Ọdịda nke ị skáànụ̀ isiokwu ihenlereanya: %s\n"
+
+#: ../src/core/main.c:494
+#, fuzzy, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Enwetaghịnwu isiokwu! sàá anya mmiri %s mepụta ma mejupụta isiokwu ndị ahụ "
+"dị bu adị."
+
+#: ../src/core/main.c:550
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Ọdịda n'ibidogharị: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:499 ../src/core/prefs.c:654
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Kíì MateConf '%s' ka ekpokọtara n'uru na-enweghị isi\n"
+
+#: ../src/core/prefs.c:580 ../src/core/prefs.c:823
+#, fuzzy, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d echekwara na kíì MateConf %s apụọla n'usoro 0 na %d\n"
+
+#: ../src/core/prefs.c:624 ../src/core/prefs.c:701 ../src/core/prefs.c:749
+#: ../src/core/prefs.c:813 ../src/core/prefs.c:1106 ../src/core/prefs.c:1122
+#: ../src/core/prefs.c:1139 ../src/core/prefs.c:1155
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Kíì GCon \"%s\" ka ekpokọtara n'ụdị enweghị isi\n"
+
+#: ../src/core/prefs.c:1225
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Rụgharịa maka usoroiheomume mebirila emebi. Ụfọdụ usoroiheomume nwere ike ha "
+"agaghị akpa ezi agwa.\n"
+
+#: ../src/core/prefs.c:1296
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Agaghị enwenwu ike itọsasị nkọwa ihumkpụrụedemede \"%s\" site na kíì GCon %"
+"s\n"
+
+#: ../src/core/prefs.c:1356
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" Enwetara na kọnfịgọreshiọn databéèzì abụghị uru nwere isi maka "
+"omemmegharị bọtịn máụ̀sụ̀\n"
+
+#: ../src/core/prefs.c:1771
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Ndehie na-ahazi ọnụọgụgụ nke wọ́kspéèsì na %d: %s\n"
+
+#: ../src/core/prefs.c:1960 ../src/core/prefs.c:2463
+#, c-format
+msgid "Workspace %d"
+msgstr "Wọ́kspéèsì %d"
+
+#: ../src/core/prefs.c:1990 ../src/core/prefs.c:2168
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" enwetara na kọnfịgọreshiọn databéèzì abụghi uru nwere isi maka "
+"kíìbaịndịn \"%s\"\n"
+
+#: ../src/core/prefs.c:2544
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Ndehie na-ahazi aha maka wọ́kspéèsì %d na\"%s\": %s\n"
+
+#: ../src/core/prefs.c:2730
+#, fuzzy, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Ndehie na-ahazi aha maka wọ́kspéèsì %d na\"%s\": %s\n"
+
+#: ../src/core/screen.c:350
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Inyogo %d ná ngosi '%s' enweghị isi\n"
+
+#: ../src/core/screen.c:366
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Inyogo %d ná ngosi \"%s\" ènwéláàrị́ị̀ onyenlekọta windo; nwàá iji ngwaọrụ "
+"ihenhọrọ nke --nnọchi ka ọ nọchie onyenlekọta windo nọ nụ̄.\n"
+
+#: ../src/core/screen.c:393
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Agaghị enwenwu ike ịnata nhọrọ onyenlekọta windo na %d ngosi inyogo \"%s\"\n"
+
+#: ../src/core/screen.c:451
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Ngosi %d inyogo \"%s\" ènwéláàrị́ị̀ onyenlekọta windo\n"
+
+#: ../src/core/screen.c:661
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Agaghị ahapụnwu ngosi inyogo %d \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:165
+#, fuzzy
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Kiibaịndịn eji emechi windo. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ "
+"nke elu, ya na inwemkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ "
+"bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ "
+"agaghị enwezi kiibaịndịn maka mmem a."
+
+#: ../src/core/schema-bindings.c:173
+#, fuzzy
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Kiibaịndịn eji emechi windo. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ "
+"nke elu, ya na inwemkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ "
+"bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ "
+"agaghị enwezi kiibaịndịn maka mmem a."
+
+#: ../src/core/session.c:837 ../src/core/session.c:844
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Agaghị ekewapụtanwu ihenlereanya '%s': %s\n"
+
+#: ../src/core/session.c:854
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Agaghị emepenwu oge mmem faịlụ '%s' maka ichekwaozi: %s\n"
+
+#: ../src/core/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Ndehie nchekwaozi oge mmem faịlụ '%s': %s\n"
+
+#: ../src/core/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Ndehie mmechi oge mmem faịlụ '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1093
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Ọdịda n'iwepụtaozi nchekwa oge mmem faịlụ %s: %s\n"
+
+#: ../src/core/session.c:1132
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Ọdịda na ntọsasị nchekwa oge mmem faịlụ: %s\n"
+
+#: ../src/core/session.c:1181
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> A hụrụ átrībúùtù mana enwego ID oge mmem"
+
+#: ../src/core/session.c:1194 ../src/core/session.c:1269
+#: ../src/core/session.c:1301 ../src/core/session.c:1373
+#: ../src/core/session.c:1433
+#, fuzzy, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Átrībúùtù a na-amaghị %s na <window> elementị"
+
+#: ../src/core/session.c:1211
+#, c-format
+msgid "nested <window> tag"
+msgstr "néstéèdì <window> táàgị̀"
+
+#: ../src/core/session.c:1453
+#, c-format
+msgid "Unknown element %s"
+msgstr "Elementị a na-amaghị %s"
+
+#: ../src/core/session.c:1879
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Ndehie na-ebubata marco-dialog ka ọ dọọ aka na ntị maka apps nke na-"
+"anaghị akwado nlekọta oge mmem: %s\n"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Ọdịda n'imepe ebe nsogbu sistem; %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Ọdịda fdopen() n'ị́lọ̄ọ̀gụ̀ faịlụ %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Lọọgụ faịlụ emepere emepe %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Atụgharịrị marco na-enweghị nkwado maka vèbóòsù móòdù\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Onyenlekọta windo:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Nsogbu dị̄ n'onyenlekọta windo:"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Onyenlekọta windo na-ama ọkwa:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Ndehie onyenlekọta windo:"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:577 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5743
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Windo %s haziri SM_KLAYANTỊ_ID n'onwe ya, kama nke WM_KLAYANTỊ_LEADER windo "
+"dịka ezipụtara ya na ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6308
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Windo %s haziri hịntị MWM na-egosi ya ọ dịghị mmegharị ụhara, ma hazie "
+"nwebilata ụhara %d x %d nakwa nbawanye ụhara %d x %d; nke a ewepụtaghị ezi "
+"echiche.\n"
+
+#: ../src/core/window-props.c:206
+#, fuzzy, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Usoroiheomume haziri bógọ́ọ̀sụ̀ _NET_WM_PID %ld\n"
+
+#: ../src/core/window-props.c:338
+#, c-format
+msgid "%s (on %s)"
+msgstr ""
+
+#: ../src/core/window-props.c:1422
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Windo 0x%lx nwere ngwaọrụ %s\n"
+"nke echere na ọ ga-enwe ụdị %s ọdịdị %d\n"
+"ma kpọmkwem nwee ụdị %s ọdịdị %d n_items %d.\n"
+"Nke a bụ nsogbu usoroiheomume nke kacha nke, ọbụghị nsogbu onyenlekọta "
+"windo.\n"
+"Windo ahụ nwere isiokwu=\"%s\" kláàsị̀=\"%s\" aha=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Ngwaọrụ %s na windo 0x%lx nwere UTF-8 na-enweghị isi\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Ngwaọrụ %s na windo 0x%lx nwere UTF-8 na-enweghị isi maka ihenhọrọ %d n'ime "
+"ihendesịta\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Banye na wọ́kspéèsì 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Banye na wọ́kspéèsì 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Banye na wọ́kspéèsì 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Banye na wọ́kspéèsì 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Banye na wọ́kspéèsì 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Banye wọ́kspéèsì 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Banye na wọ́kspéèsì 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Banye na wọ́kspéèsì 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Banye na wọ́kspéèsì 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Banye na wọ́kspéèsì 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Banye na wọ́kspéèsì 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Swichie na wọkspeesi 12"
+
+#: ../src/include/all-keybindings.h:122
+#, fuzzy
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Banye na wọ́kspéèsì n'akaekpe"
+
+#: ../src/include/all-keybindings.h:126
+#, fuzzy
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Banye na wọ́kspéèsì n'akanri"
+
+#: ../src/include/all-keybindings.h:130
+#, fuzzy
+msgid "Switch to workspace above the current workspace"
+msgstr "Banye na wọ́kspéèsì n'elu nke a"
+
+#: ../src/include/all-keybindings.h:134
+#, fuzzy
+msgid "Switch to workspace below the current workspace"
+msgstr "Banye na wọ́kspéèsì n'ala nke a"
+
+#: ../src/include/all-keybindings.h:150
+#, fuzzy
+msgid "Move between windows of an application, using a popup window"
+msgstr "Kpụgharịa n'etiti windo ya na pọpọp"
+
+#: ../src/include/all-keybindings.h:153
+#, fuzzy
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Kpụghachi fókọ́ọ̀sụ̀ azụ n'etiti windo ndị ahụ n'iji ngosi pọpọp"
+
+#: ../src/include/all-keybindings.h:157
+#, fuzzy
+msgid "Move between windows, using a popup window"
+msgstr "Kpụgharịa n'etiti windo ya na pọpọp"
+
+#: ../src/include/all-keybindings.h:160
+#, fuzzy
+msgid "Move backward between windows, using a popup window"
+msgstr "Kpụghachi fókọ́ọ̀sụ̀ azụ n'etiti windo ndị ahụ n'iji ngosi pọpọp"
+
+#: ../src/include/all-keybindings.h:163
+#, fuzzy
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Kpụgharịa n'etiti pánēèlụ̀ na desktọ́ọ̀pụ̀ ya na pọpọp"
+
+#: ../src/include/all-keybindings.h:166
+#, fuzzy
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Kpụghachi azụ n'etiti pánēèlụ̀ na desktọ́ọ̀pụ̀ ya na pọpọp"
+
+#: ../src/include/all-keybindings.h:171
+#, fuzzy
+msgid "Move between windows of an application immediately"
+msgstr "Kpụgharịa n'etiti windo ozugbo"
+
+#: ../src/include/all-keybindings.h:174
+#, fuzzy
+msgid "Move backward between windows of an application immediately"
+msgstr "Kpụghachi azụ n'etiti windo ozugbo"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Kpụgharịa n'etiti windo ozugbo"
+
+#: ../src/include/all-keybindings.h:180
+#, fuzzy
+msgid "Move backward between windows immediately"
+msgstr "Kpụghachi azụ n'etiti windo ozugbo"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Kpụgharịa n'etiti pánēèlụ̀ na desktọ́ọ̀pụ̀ ozugbo"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Kpụghachi azụ n'etiti pánēèlụ̀ na desktọ́ọ̀pụ̀ ozugbo"
+
+#: ../src/include/all-keybindings.h:191
+#, fuzzy
+msgid "Hide all normal windows and set focus to the desktop background"
+msgstr "Zòó windo niile ma gbado ụkwụ na desktọ́ọ̀pụ̀"
+
+#: ../src/include/all-keybindings.h:194
+#, fuzzy
+msgid "Show the panel's main menu"
+msgstr "Gosi pánēèlụ̀ menu ahụ"
+
+#: ../src/include/all-keybindings.h:197
+#, fuzzy
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Gosi pánēèlụ̀ mbido usoroiheomume dayalọ́ọ̀gụ̀"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Skrììnshọ́ọ̀tụ̀ọ́"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Skrììnshọ́ọ̀tụ̀ọ́ na windo"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Bido ngwaọrụ mbupụ na mbubata ozi"
+
+#: ../src/include/all-keybindings.h:257
+#, fuzzy
+msgid "Activate the window menu"
+msgstr "Mee ka Windo menu rụwa orụ"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Pịa na móòdù fúlskríìn"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Pịa n'ọnọdụ mbawanye"
+
+#: ../src/include/all-keybindings.h:264
+#, fuzzy
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Budata windo n'okpuru windo ndị ọzọ"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Bawanye windo"
+
+#: ../src/include/all-keybindings.h:268
+#, fuzzy
+msgid "Restore window"
+msgstr "Megharịa ụhara windo"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Pịa n'ọnọdụ shéèdì"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Webilata windo"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Mechie windo"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Kpụgharịa windo"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Megharịa ụhara windo"
+
+#: ../src/include/all-keybindings.h:281
+#, fuzzy
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Pịa windo na wọ́kspéèsì niile"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Kpụga windo na 1wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Kpụga windo na 2 wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Kpụga windo na 3 wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Kpụga windo na 4 wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Kpụga windo na 5 wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Kpụga windo na 6 wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Kpụga windo na 7wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Kpụga windo na 8 wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Kpụga windo na 9 wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Kpụga windo na 10 wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Kpụga windo na 11 wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Kpụga windo na 12 wọ́kspēèsì"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Kpụga windo n'otu wọ́kspēèsì n'akaekpe"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Kpụga windo n'otu wọ́kspēèsì n'akanri"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Kpụga windo n'otu wọ́kspēèsì n'elu"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Kpụga windo n'otu wọ́kspēèsì ala"
+
+#: ../src/include/all-keybindings.h:342
+#, fuzzy
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Welite windo a na-ahụchaghị anya, kama budata"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Welite n'elu windo ndị ọzọ"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Budata windo n'okpuru windo ndị ọzọ"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Bawanye windo n'ụdị vatikal"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Bawanye windo n'ụdị horizontal"
+
+#: ../src/include/all-keybindings.h:358
+#, fuzzy
+msgid "Move window to north-west (top left) corner"
+msgstr "Kpụga windo n'otu wọ́kspēèsì n'akaekpe"
+
+#: ../src/include/all-keybindings.h:361
+#, fuzzy
+msgid "Move window to north-east (top right) corner"
+msgstr "Kpụga windo n'otu wọ́kspēèsì n'akanri"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:383
+#, fuzzy
+msgid "Move window to center of screen"
+msgstr "Kpụga windo n'otu wọ́kspēèsì ala"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Ewepụtaghị ya) Ngagharị n'arụ ọrụ dịka usoroiheomume ọ bụghị Windo"
+
+#: ../src/marco.schemas.in.in.h:2
+#, fuzzy
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Ihumkpụrụedemede nkọwa ahịrịokwu na-akọwa ihumkpụrụedemede maka windo "
+"taịtụlbáà ndị ahụ .A ga-eji sọsọ ụhara site na nkọwa ma ọ bụrụ na a haziri "
+"ihenhọrọ tittlebar_font_size na 0, Ka a na-aga. Tinyekwara, ihenhọrọ a ga-"
+"emebi ma ọ bụru na a haziri ihenhọrọ tittlebar_uses_desktop_font nà eziokwu."
+"Site na dìfọ́ọ̀ltụ̀, a hazibeghị tittlebar_font, na-ebutere marco "
+"ńdábèghàchí n'ihumkpụrụedemede desktọ́ọ̀pụ̀ ọbụnagodi ma "
+"tittlbar_uses_desktop_font ọ bụ asị."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Mmem na taịtụl báà pịa-mpịkwasa"
+
+#: ../src/marco.schemas.in.in.h:4
+#, fuzzy
+msgid "Action on title bar middle-click"
+msgstr "Mmem na taịtụl báà pịa-mpịkwasa"
+
+#: ../src/marco.schemas.in.in.h:5
+#, fuzzy
+msgid "Action on title bar right-click"
+msgstr "Mmem na taịtụl báà pịa-mpịkwasa"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Nhazi nke bọtịn ndị ahụ na taịtụlbaa"
+
+#: ../src/marco.schemas.in.in.h:7
+#, fuzzy
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Nhazi nke bọtịn ndị ahụ na taịtụlbaa. Valiu ahụ ga-abụ ahịrịokwu, dịka "
+"\"menu:minimize,maximize,close\"; kpọm elu na ala kewara akụkụ akaekpe nke "
+"windo site n'akụkụ akanri, rịkọm kewasị̤rị aha bọtịnị ndị ahụ. anabataghị "
+"ídùplìkéètì bọtịnị ndị ahụ. E ji nwayọọ leghara bọtịnị ndị a na-amaghị anya "
+"ka agbakwunye bọtịnị ahụ na-agbanke marco na ndịniihu na-akwụsịtụghị "
+"agbanke ochie."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Ji aka ya welite windo ebe fōkọ́ọ̀sụ̀rụ̀"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Ịpị windo mgbe ijigidere kíì omemmegharị a ga-akpụgha windo (pịa n'akaekpe), "
+"megharịa ụhara windo (pịa n'etiti), mọọbụ gosi windo menu (pịa n'akanri). A "
+"kọwara omemmegharị dịka \"&lt;Alt&gt;\" mọọbụ \"&lt;Super&gt;\" ọmụmatụ."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Ntiiwu iji bido na nzighachi na kíìbaịndịn ndị ahụ"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Isiokwu ọfụụ"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Ogbugbu oge na milisekọndụ ndị ahụ maka ihenhọrọ nwelite nkeonwe"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"ga-ekwu ma usoroiheomume mọọbụ sistem ahụ ga-ewepụta nnukwu 'ụda'; nwere ike "
+"jiri na njikọ nke ya na 'mgbịrịgba nlechapụta' ka ekwe 'ọ̀wụ̀' bata."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Enweghị iheọrụ mabiri emebi nke achọrọ site na nke ochie mọọbụ nkwụsị "
+"usoroiheomume ndị ahụ"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Na-ekwe mgbịrịgba nlechapụta"
+
+#: ../src/marco.schemas.in.in.h:19
+#, fuzzy
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Ọ bụrụ na ọ bu eziokwu, nakwa fókọ́ọ̀sụ̀ móòdù ahụ nwereike bụrụ \"sloppy\" "
+"mọọbụ \"mouse\" mgbe ahụ windo fókọ́ọ̀sụ̀ ga eji aka ya welite onwe ya "
+"n'ogbugbu oge ahụ (Ezipụtara ogbugbu oge ahụ site na kíì auto_raise_delay)."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ọ bụrụ na ọ bụ eziokwu, leghara nhọrọ tittlebar_font anya, ma jiri "
+"ihumkpụrụedemede usoroiheomume anabatara maka isiokwu windo ndị ahụ."
+
+#: ../src/marco.schemas.in.in.h:21
+#, fuzzy
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Ọ bụrụ na ọ bụ eziokwu, marco ga-enye ojieme nzighachi na echiche "
+"n'ejughị afọ nke \"direct manipulation\", site n'iji wáyáfréms, na-ezere "
+"animeshiọn, mọọbụ n'ụzọ ọzọ.Nke a bụ nwebilata na njieme maka ndị ojieme, ma "
+"nwe ike ihapụ usoroiheomume ochie na sava ngwaọrụ mbupụ na mbubataozi ka ha "
+"rụwa ọrụ ebe kama ha ekwesịghị ịrụ ọrụ. Ka ọ na-aga, emebiri iheọrụ wáyáfrém "
+"ahụ mgbe ikikembanye na-arụ ọrụ ka e zere mmebi desktọ́ọ̀pụ̀ ochie."
+
+#: ../src/marco.schemas.in.in.h:22
+#, fuzzy
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Ọ bụrụ na ọ bụ eziokwu, Marco ga-arụ ọrụ dịka nke usoroiheomume karia nke "
+"windo. echiche ahụ dị̀tụ̀ nwa abstraktị, mana abịa na zurugbezurugbe nrụnye "
+"béèzì-usoroiheomume dịka Mac ma belata dịka windo. Mgbe ị fōkọ́ọ̀sụ̀rụ̀ windo "
+"móòdù béèzì-usoriheomume, a ga-ewelite windo niile ahụ nọ n'ime "
+"usoroiheomume, Ọzọkwa, na moodu béèzì-usoroiheomume, ọpịpị fokọọsụ anaghị "
+"agafe na windo ndị ahụ n'usoroiheomume ndị ọzọ. Ọdịdị nke nhazi a nwere "
+"obere ajụjụ. Mana ọ ka mma inwe nhazi maka ndesịta mmem kpọmkwem nke nhazi "
+"nke béèzì-usoroiheomume nà. béèzì-windo, ọmụmatụ. ma ọ bụ igakwa na ọ̀pị̀pị̀. "
+"Ọzọkwa, ewepụtaghị móòdù béèzì-usoroiheomume buru ibu n'oge ahụ."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Ọ bụrụ na ọ bụ eziokwu, tréèdìá ọ́ọ̀fụ̀ njieme maka mbelata nsirinweta njieme"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Omemmegharị ga-eji maka mmem ọ̀pị̀pị́ windo mmegharị"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Aha wọ́kspēèsì"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Ọnụọgụgụ wọ́kspēèsì"
+
+#: ../src/marco.schemas.in.in.h:27
+#, fuzzy
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Ọnụọgụgụ wọ́kspēèsì. Ga-akarịrị nkịtị, ma nwe nwelite na-enweghị mgbanwe "
+"(N'igbochi n'inyo mebie desktọ́ọ̀pụ̀ gị site n'ịjụ maka 34 miliọn wọ́kspēèsì ndị "
+"ahụ)."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Bido ntiiwu a kọwara akọwa"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid "System Bell is Audible"
+msgstr "Bell sistem n'ada ụda"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Na-agwa Marco etu ọ ga-esi mepụta ngosi nlechapụta na sistem mgbịrịgba "
+"mọọbụ usoroiheomume ọzọ 'mgbịrịgba' akụọla ngwaọrụ ngosi. Ugbua e nwere "
+"valiu nwereisi abụọ, \"fullscreen\", nke n'ebutere njupụtainyogo waịt-blak "
+"flashị, na \"frame_flash\" nke n'ebutere taịtụlbáà nke usoroiheomume nke "
+"zigara signáàlụ̀ mgbịrịgba ahụ na flashị. Ọ bụrụ na-amaghị usoroiheomume nke "
+"zigara mgbịrịgba ahụ (Ka ọ dị bu kéèsì maka dìfọ́ọ̀ltụ̀ \"system beep\"), A "
+"fláàshị̀rị̀ windo fókọ́ọ̀sụ̀ taịtụlbáà nọ mgbe ahụ."
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+" /apps/marco/global_keybindings/run_command_N Kii ahụ nke na-akọwa "
+"kiibaịndịn ndị ahụ nke na-adaba ntiiwu ndị a. Ịpị kiibaịndịn maka "
+"run_command_N ga-emepụta command_N."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot Kii ahụ na-akọwa "
+"kiibaịdịn nke n'ebute ntiiwu ezipụtara site na nhazi à á ga-atụtegharị."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot Kii na-akọwa "
+"kiibaịndịn nke n'ebute ntiiwu ezipụtara site na nhazi à á ga-atụtegharị."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Kiibaịndịn ahụ nke na-ebido ntiiiwu ọnụọgụgụ na-adaba adaba na /apps/"
+"marco/keybinding_commands Ọdịdị ahụ dị̀kà \"&lt;Control&gt;a\" mọọbụ\"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\".Ọtọsa ngwe dị̀ líbrààlụ̀ ma hapụ kéèsì nke ala mọọbụ "
+"nke elu, ya na inwe mkpọbiri aha dịka \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\" Ọ "
+"bụrụ n'ihazie ihenhọrọ niile ahụ n'ahịrịokwu pụrụ iche \"disabled\", mgbe "
+"ahụ agaghị enwe kiibaịndịn maka mmem a."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid "The name of a workspace."
+msgstr "Aha wọ́kspéèsì."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The screenshot command"
+msgstr "Skrììnshọ́ọ̀tụ̀ọ́ ntiiwu"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Isiokwu ahụ na-ezipụta ngosipụta agbata windo, taịtụlbáà, na ndị ọzọ."
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Oge egburu tupuu nwelite windo ọ bụrụ na auto_raise na ahaziri ya ka ọ bụrụ "
+"eziokwu. A ga-enye ogbugbu oge ahụ na tawụzan nke otu sekọndụ."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Windo fókọ́ọ̀sụ̀ móòdù na-egosi etu windo arụ ọrụ. Onwere uru atọ dị omume; "
+"\"click\" pụtara na a ga-apịnye windo ndị ahụ ka é fókọ́ọ̀sụ̀ọ́ na ha, \"sloppy"
+"\" pụtara na é fōkọ́ọ̀sụ̀rụ̀ na windo ndị ahụ mgbe máụ̀sụ̀ banyere na windo, nakwa "
+"\"mouse\" pụtara na é fōkọ́ọ̀sụ̀rụ̀ windo mgbe máụ̀sụ̀ banyere na windo ahụ ma "
+"ọ̀nfókọ́ọ̀sụ̀ọ́ mgbe máụ̀sụ̀ ahụ hapụrụ windo ahụ."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid "The window screenshot command"
+msgstr "Windo ahụ skrììnshọ́ọ̀tụ̀rụ̀ ntiiwu"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:47
+#, fuzzy
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"N'atụgharị ná ngosi ihenlereanya mgbe usoroiheomume mọọbụ ozi sistem nke bụ̄ "
+"'mgbịrịngba' mọọbụ 'ọ̀kụ́kụ́'; na-aba uru maka ịnụsị-ihe-ike nakwa iji ya n'ebe "
+"ụ̀zụ̀ dị̀, mọọbụ mgbe 'mgbịrịgba ndasiike' kwụsịrị."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid "Use standard system font in window titles"
+msgstr "Jiri sistem ihumkpụrụedemede nke bụ ákpụ̀ n'isiokwu windo ndị ahụ"
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Visual Bell Type"
+msgstr "Ụdị mgbịrịgba ihenlereanya"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Window focus mode"
+msgstr "Móòdù fókọ́ọ̀sụ̀ windo"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Window title font"
+msgstr "Ihumkpụrụedemede isiokwu windo"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Njieme: %s\n"
+
+#: ../src/ui/frames.c:1077
+msgid "Close Window"
+msgstr "Mechie Windo"
+
+#: ../src/ui/frames.c:1080
+msgid "Window Menu"
+msgstr "Windo menu"
+
+#: ../src/ui/frames.c:1083
+msgid "Minimize Window"
+msgstr "Webilata Windo"
+
+#: ../src/ui/frames.c:1086
+msgid "Maximize Window"
+msgstr "Bawanye Windo"
+
+#: ../src/ui/frames.c:1089
+#, fuzzy
+msgid "Restore Window"
+msgstr "Megharịa ụhara windo"
+
+#: ../src/ui/frames.c:1092
+#, fuzzy
+msgid "Roll Up Window"
+msgstr "Mkpụli_elu"
+
+#: ../src/ui/frames.c:1095
+#, fuzzy
+msgid "Unroll Window"
+msgstr "Mechie Windo"
+
+#: ../src/ui/frames.c:1098
+msgid "Keep Window On Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1101
+msgid "Remove Window From Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1104
+#, fuzzy
+msgid "Always On Visible Workspace"
+msgstr "_Na-anọkarị na wọ́kspéèsì a hụrụ anya"
+
+#: ../src/ui/frames.c:1107
+#, fuzzy
+msgid "Put Window On Only One Workspace"
+msgstr "Pịa windo na wọ́kspéèsì niile"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "We_bilata"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ba_wanye"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Webil_ataụhara"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Mkpụli_elu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Sáwàpụ̀tá"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Kpụghaa"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Mmegharị ụhara"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr ""
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Na-anọkarị na wọ́kspéèsì a hụrụ anya"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Sọsọ na wọ́kspéèsì a"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Kpụga na wọ́kspéèsì _akaekpe"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Kpụga na wọ́kspéèsì a_kanri"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Kpụga na wọ́kspéèsì _elu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Kpụga na wọ́kspéèsì _ala"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Mechie"
+
+#: ../src/ui/menu.c:203
+#, fuzzy, c-format
+msgid "Workspace %d%n"
+msgstr "Wọ́kspéèsì %d"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Wọ́kspéèsì 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Wọ́kspéèsì %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Kpụga na _wọ́kspéèsì ọzọ"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Kpụkeje"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Ike"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Haịpa"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mọd2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mọd3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mọd4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mọd5"
+
+#: ../src/ui/marco-dialog.c:90
+#, fuzzy, c-format
+msgid "\"%s\" is not responding."
+msgstr "Windo ahụ \"%s\" anaghị ezighachi."
+
+#: ../src/ui/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "_Kwụsị n'ike"
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr "Isiokwu"
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr "Kláàsị̀"
+
+#: ../src/ui/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Windo ndị a anaghị akwado \"save current setup\" ma a ga-ebidogharịa ya "
+"n'aka mgbe ọzọ ị banyere."
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Enwere ndehie na mbido a \"%s\":\n"
+"%s."
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "Elu"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "Okpuru"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "Akaekpe"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "Akanri"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "Jiometịrị fréèmù ezipụtaghị \"%s\" mpaghara"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "Jiometịrị fréèmù ezipụtaghị mpaghara \"%s\" maka agbata \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Bọtịn aspektị reshio %g abụghị nke echere n'echiche"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Jiometịrị fréèmù ezipụtaghị ụhara nke bọtịn"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Mmakọ ụcha kwesịrị inwe ọbụnaghị ụcha abụọ"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK nzipụta ụcha ga-enwe ọnọdụ n'ụdị akara mmechi, ọmụmaatụ. gtk:fg[NORMAL] "
+"ebe NỌ́MÁÀLỤ̀ bụ ọnọdụ; agaghị enwenwu ike ịtọsasi \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK nzipụta ụcha ga-enwe akara mmechi ma agachaa ọnọdụ, ọmụmaatụ. gtk:fg"
+"[NORMAL] ebe NỌ́MÁÀLỤ̀ bụ ọnọdụ; agaghị enwenwu ike ịtọsasi \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Aghọtaghị ọnọdụ \"%s\" na nzipụta ụcha"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Aghọtaghị ọnọdụ mpaghara ụcha \"%s\" na nzipụta ụcha"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Mmezie ọdịdị bụ \"blend/bg_color/fg_color/alpha\", \"%s\" ọdabaghị n'ọdịdị "
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Agaghị atọsasị uru alpha \"%s\" n'ụcha amakọrọ ọfụma"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Valiu alpha \"%s\" n'ụcha amakọrọ ọfụma anọghị n'etiti 0.0 na 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Ọdịdị shéèdì bụ \"shade/base_color/factor\", \"%s\" ọdaghị n'ọnọdụ"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Agaghị atọsasịnwu faktọ shéèdì \"%s\" n'ụcha éshéèdị̀rị̀ èshéèdị̀"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Shéèdị̀ faktọ \"%s\" n'ụcha éshéèdị̀rị̀ èshéèdì dị negetíìvù"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr " Agaghị atọsasịnwu ụcha \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Chịkọlata nkọwa nwere mkpụrụokwu '%s' nke a na-anabataghị"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Chịkọlata nkọwa nwere ọnụọgụgụ pọịntị n'ehu ehu '%s' nke ga-agaghị enwenwu "
+"ike ntọsasị"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Chịkọlata nkọwa nwere ịntiga '%s' nke ga-agaghị enwenwu ike ntọsasị"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "Chịkọlata nkọwa nwere òpèrétọ̀ á ná-ámághị́ na mbido nke ngwe a: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "nchịkọlata nkọwa ghè óghē mọọbụ na aghọtaghị ya"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Mpụtara nchịkọlata nkọwa na nkewa site na zero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr " Nchịkọlata nkọwa nà-ánwà iji ọ̀pèrétọ̀ mood n'ọnụọgụgụ pọịntị-n'éhū èhù"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Nchịkọlata nkọwa nwere ọ̀pèrétọ̀ \"%s\" ebe achọrọ ópērándị̀"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Nchịkọlata nkọwa nwere ópērándị̀ ebe achọrọ ọ̀pèrètọ̀"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Nchịkọlata nkọwa gwụrụ ya na òpèrétọ̀ kama ópērándị̀"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Nchịkọlata nkọwa nwere ọ̀pèrétọ̀ \"%c\" na-eso ọ̀pèrétọ̀ \"%c\" ya na onweghị "
+"ópērándị̀ n'etiti"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Nchịkọlata nkọwa nwere mgbanwe mọọbụ nke na-enweghị mgbanwe a na-amaghị \"%s"
+"\""
+
+#: ../src/ui/theme.c:2290
+#, fuzzy, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "nchịkọlata nkọwa ghè óghē mọọbụ na aghọtaghị ya"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Nchịkọlata nkọwa nwere mmechi okwu mgbakwunye ya na enweghị mmepe okwu "
+"mgbakwunye"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Nchịkọlata nkọwa nwere mmepe okwu mgbakwunye ya na enweghị mmechi okwu "
+"mgbakwunye"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Nchịkọlata nkọwa adịghị ka onwere ọ̀pèrétọ̀ mọọbụ ópērándị̀ ndị ahụ"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, fuzzy, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Isiokwu nwere nkọwa \"%s\" nke butere ndehie: %s\n"
+
+#: ../src/ui/theme.c:4155
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"A ga-ezipụtarịrị <nrụọrụ bọtịn=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> "
+"maka ọdịdị fréèmù a"
+
+#: ../src/ui/theme.c:4635 ../src/ui/theme.c:4660
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Ọ na-efu efu <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever"
+"\"/>"
+
+#: ../src/ui/theme.c:4704
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Ọdịda n'ịdebata isiokwu \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4834 ../src/ui/theme.c:4841 ../src/ui/theme.c:4848
+#: ../src/ui/theme.c:4855 ../src/ui/theme.c:4862
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Enweghi <%s> nhazi maka isiokwu \"%s\""
+
+#: ../src/ui/theme.c:4870
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Enweghị ọdịdị fréèmù ekpokọrọ maka ụdị windo \"%s\" n'isiokwu \"%s\", tinye "
+"<window type=\"%s\" style_set=\"whatever\"/> elementị"
+
+#: ../src/ui/theme.c:5295 ../src/ui/theme.c:5357 ../src/ui/theme.c:5420
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Nkọwa-ojieme énwēghị́ḿgbánwè ga-ebido na mkpụrụ edemede nke ukwu; \"%s\" "
+"enweghị "
+
+#: ../src/ui/theme.c:5303 ../src/ui/theme.c:5365 ../src/ui/theme.c:5428
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "A kọwalá́árị́ị̀ \"%s\" enweghịmgbanwe"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Enweghị\"%s\" átrībúùtù n'elementị <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Ahịrịokwu %d mkpụrụokwu %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Átrībúùtù \"%s\"megharịrị ugboro abụọ n'otu <%s> elementị ahụ"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Átrībúùtù \"%s\" enweghị isi <%s> n'elementị n'ihe nghọta a"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Intiga %ld ga-abụrịrị eziokwu"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Intiga %ld buru nnukwu ibu, max ọfụụ bụ %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Agaghị atọsasịnwu \"%s\" dịka ọnụọgụgụ pọintị n'ehugharị"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Uru boolean ga-abụrịrị \"true\"mọọbụ \"false\" ọ bụghị \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Ńkọ́ ga-adịrịrị n'etiti 0.0 na 360.0, bụ %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alpha ga-adịrịrị n'etiti 0.0 (ahụghị anya ǹchá n̄chá) na 1.0 (Ahụchaghị anya "
+"ọfụma), bụ %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Skéèlụ̀ isiokwu na-enweghị isi \"%s\" (ga-abụrịrị otu n'ime xx-small,x-small,"
+"small,medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> aha \"%s\" e jiri nke ugboro abụọ"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> Akọwabeghị \"%s\" perentị"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> Akọwabeghị \"%s\" jiometịrị"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> ga-egosipụta ma ọ bụ jiometịrị ma ọ bụ perentị nwere jiometịrị"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Ụdị a na-amaghị \"%s\" na <%s> elementị"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Style_set a na-amaghị \"%s\" na <%s> elementị"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Enyego ụdị windo a \"%s\" ọdịdị nhazi"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2732
+#: ../src/ui/theme-parser.c:2778 ../src/ui/theme-parser.c:2926
+#: ../src/ui/theme-parser.c:3118 ../src/ui/theme-parser.c:3156
+#: ../src/ui/theme-parser.c:3194 ../src/ui/theme-parser.c:3232
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Anaghị anabata <%s> elementị n'okpuru <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+#, fuzzy
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Agaghị ezipụtanwu abụọ ndị a button_width/button_height na aspektị reshio "
+"maka bọtịn"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Amaghị \"%s\" òtìtè ányá"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Amaghị \"%s\" aspektị reshio"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Amaghị \"%s\" àgbàtà"
+
+#: ../src/ui/theme-parser.c:1776
+#, fuzzy, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Enweghị \"start_angle\" átrībúùtù na elementị <%s>"
+
+#: ../src/ui/theme-parser.c:1783
+#, fuzzy, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Enweghị \"extent_angle\" átrībúùtù na elementị <%s>"
+
+#: ../src/ui/theme-parser.c:2023
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Aghotaghị uru ahụ \"%s\" maka ụdị ḿmákọ́ ụcha"
+
+#: ../src/ui/theme-parser.c:2101 ../src/ui/theme-parser.c:2476
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Aghọtaghị mejuo ụdị \"%s\" maka <%s>elementị"
+
+#: ../src/ui/theme-parser.c:2268 ../src/ui/theme-parser.c:2351
+#: ../src/ui/theme-parser.c:2414
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Aghọtaghị ọnọdụ \"%s\" maka <%s> elementị"
+
+#: ../src/ui/theme-parser.c:2278 ../src/ui/theme-parser.c:2361
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "A ghọtaghị inyogo \"%s\" maka <%s> elementị"
+
+#: ../src/ui/theme-parser.c:2288
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "A ghọtaghị árò \"%s\" maka <%s> elementị"
+
+#: ../src/ui/theme-parser.c:2588 ../src/ui/theme-parser.c:2684
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Enweghị <draw_ops> ọ̀kpụ́kpọ́ \"%s\" akọwarala"
+
+#: ../src/ui/theme-parser.c:2600 ../src/ui/theme-parser.c:2696
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Itinye draw_ops \"%s\" ebe a ga-ekewapụta gburugburu nrụaka"
+
+#: ../src/ui/theme-parser.c:2811
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Ebe a na-amaghị \"%s\" maka fréém píìsì"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Ọdịdị fréèmù ènwéláàrị́ị̀ píìsì n'ebe %s"
+
+#: ../src/ui/theme-parser.c:2836 ../src/ui/theme-parser.c:2911
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Enweghị <draw_ops> ya na aha \"%s\" akọwarala"
+
+#: ../src/ui/theme-parser.c:2865
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Amaghị nrụọrụ \"%s\" maka bọtịn"
+
+#: ../src/ui/theme-parser.c:2874
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2886
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Amaghị ọnọdụ \"%s\" maka bọtịn"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Ọdịdị fréèmù ènwéláàrị́ị̀ bọtịn maka %s ọnọdụ nrụọrụ %s "
+
+#: ../src/ui/theme-parser.c:2965
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" abụghị uru nwereisi maka fókọ́ọ̀sụ̀ átrībúùtù"
+
+#: ../src/ui/theme-parser.c:2974
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" abụghị uru nwereisi maka ọnọdụ átrībúùtù"
+
+#: ../src/ui/theme-parser.c:2984
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Ọdịdị a na-akpọ \"%s\" akọwabeghị ya"
+
+#: ../src/ui/theme-parser.c:3005 ../src/ui/theme-parser.c:3028
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" abụghị uru nwereisi maka átrībúùtù mmegharị ụhara "
+
+#: ../src/ui/theme-parser.c:3039
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Agaghị enwe \"resize\" átrībúùtù na <%s> elementị maka ọnọdụ mbawanye/"
+"shédèèdị̀"
+
+#: ../src/ui/theme-parser.c:3053
+#, fuzzy, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Agaghị enwe \"resize\" átrībúùtù na <%s> elementị maka ọnọdụ mbawanye/"
+"shédèèdị̀"
+
+#: ../src/ui/theme-parser.c:3067 ../src/ui/theme-parser.c:3089
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Ezipụtala ọdịdị maka ọnọdụ %s megharịa ụhara %s fókọ́ọ̀sụ̀ %s"
+
+#: ../src/ui/theme-parser.c:3078 ../src/ui/theme-parser.c:3100
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Ezipụtala ọdịdị maka ọnọdụ %s fókọ́ọ̀sụ̀ %s"
+
+#: ../src/ui/theme-parser.c:3139
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Agaghị enwenwu draw_ops abụọ maka <piece> elementị (isiokwu zipụtara "
+"átrībúùtù draw_ops nakwa <draw_ops> elementị, mọọbụ elementị abụọ ndị "
+"ezipụtarala)"
+
+#: ../src/ui/theme-parser.c:3177
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Agaghị enwenwu draw_ops abụọ maka <button> elementị (isiokwu zipụtara "
+"átrībúùtù draw_ops nakwa <draw_ops> elementị, mọọbụ elementị abụọ ndị "
+"ezipụtarala)"
+
+#: ../src/ui/theme-parser.c:3215
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Agaghị enwenwu draw_ops abụọ maka <menu_icon> elementị (isiokwu zipụtara "
+"átrībúùtù draw_ops nakwa <draw_ops> elementị, mọọbụ elementị abụọ ndị "
+"ezipụtarala)"
+
+#: ../src/ui/theme-parser.c:3263
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Elementị kempụtacha n'isiokwu ga-abụ <marco_theme> ọbụghị <%s>"
+
+#: ../src/ui/theme-parser.c:3283
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Anabataghị <%s> elementị n'ime aha/odee/ụbọchị/elementị nkọwa"
+
+#: ../src/ui/theme-parser.c:3288
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Anabataghị <%s> elementị n'ime <constant> elementị"
+
+#: ../src/ui/theme-parser.c:3300
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Anabataghị <%s> elementị n'ime /agbata/aspect_ratio elementị dị anya"
+
+#: ../src/ui/theme-parser.c:3322
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Anabataghị <%s> elementị n'ime drọ́ọ̀ usoroomumeihe elementị"
+
+#: ../src/ui/theme-parser.c:3332 ../src/ui/theme-parser.c:3362
+#: ../src/ui/theme-parser.c:3367 ../src/ui/theme-parser.c:3372
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Anabataghị <%s> elementị n'ime <%s> elementị"
+
+#: ../src/ui/theme-parser.c:3594
+msgid "No draw_ops provided for frame piece"
+msgstr "Enweghị draw_ops ewepụtara maka fréèmụ̀ píìsì"
+
+#: ../src/ui/theme-parser.c:3609
+msgid "No draw_ops provided for button"
+msgstr "Enweghị draw_ops ewepụtara maka bọtịn"
+
+#: ../src/ui/theme-parser.c:3661
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Enweghị ngwe anabatara n'ime elementị <%s>"
+
+#: ../src/ui/theme-parser.c:3716
+msgid "<name> specified twice for this theme"
+msgstr "<name> ezipụtara ugboro abụọ maka isiokwu a"
+
+#: ../src/ui/theme-parser.c:3727
+msgid "<author> specified twice for this theme"
+msgstr "<author> ezipụtara ugboro abụọ maka isiokwu a"
+
+#: ../src/ui/theme-parser.c:3738
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> ezipụtara ugboro abụọ maka isiokwu a"
+
+#: ../src/ui/theme-parser.c:3749
+msgid "<date> specified twice for this theme"
+msgstr "<date> ezipụtara ugboro abụọ maka isiokwu a"
+
+#: ../src/ui/theme-parser.c:3760
+msgid "<description> specified twice for this theme"
+msgstr "<description> ezipụtara ugboro abụọ maka isiokwu a"
+
+#: ../src/ui/theme-parser.c:4027
+#, fuzzy, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Ọdịda fdopen() n'ị́lọ̄ọ̀gụ̀ faịlụ %s: %s\n"
+
+#: ../src/ui/theme-parser.c:4083
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Faịlụ isiokwu %s enweghị mgbọrọgwụ <marco_theme> elementị"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Windo ndị ahụ"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Windo ndị ahụ/emepụ"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Windo ndị ahụ/_Dayalọ́ọ̀gụ̀"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Windo ndị ahụ/_Módáàlụ̀ dayalọ́ọ̀gụ̀"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Windo ndị ahụ/_iheọrụ"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Windo ndị ahụ/_inyogo nzipụta ọpụọ"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Windo ndị ahụ/_elu dọ́ọ̀kụ̀"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Windo ndị ahụ/_okpụrụ dọ́ọ̀kụ̀"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Windo ndị ahụ/_akaekpe dọ́ọ̀kụ̀"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Windo ndị ahụ/_akanri dọ́ọ̀kụ̀"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Windo ndị ahụ/_dọ́ọ̀kụ̀ niile"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Windo ndị ahụ/Des_ktọ́ọ̀pụ̀"
+
+#: ../src/ui/theme-viewer.c:135
+msgid "Open another one of these windows"
+msgstr "Mepee ọzọ windo niile ndị a"
+
+#: ../src/ui/theme-viewer.c:142
+msgid "This is a demo button with an 'open' icon"
+msgstr "Nke a bụ demo bọtịn nwere aịkọn 'mepere emepe'"
+
+#: ../src/ui/theme-viewer.c:149
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Nke a bụ demo bọtịn nwere aịkọn 'nkwụsị'"
+
+#: ../src/ui/theme-viewer.c:242
+msgid "This is a sample message in a sample dialog"
+msgstr "Nke a bụ sampụlụ ozi n'ụdị sampụlụ dayalọ́ọ̀gụ̀"
+
+#: ../src/ui/theme-viewer.c:325
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Féèkìá ihenhọrọ menu %d\n"
+
+#: ../src/ui/theme-viewer.c:359
+msgid "Border-only window"
+msgstr "Àgbàtà-sọsọ windo"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Bar"
+msgstr "Báà"
+
+#: ../src/ui/theme-viewer.c:378
+msgid "Normal Application Window"
+msgstr "Nọ́máàlụ̀ usoroiheomume windo"
+
+#: ../src/ui/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Igbe dayalọ́ọ̀gụ̀"
+
+#: ../src/ui/theme-viewer.c:386
+msgid "Modal Dialog Box"
+msgstr "Igbe dayalọ́ọ̀gụ̀ módáàlụ̀"
+
+#: ../src/ui/theme-viewer.c:390
+msgid "Utility Palette"
+msgstr "Iheọrụ páléètị̀"
+
+#: ../src/ui/theme-viewer.c:394
+msgid "Torn-off Menu"
+msgstr "Pịpụ-menu "
+
+#: ../src/ui/theme-viewer.c:398
+msgid "Border"
+msgstr "Àgbàtà"
+
+#: ../src/ui/theme-viewer.c:726
+#, c-format
+msgid "Button layout test %d"
+msgstr "Nnwele ndozi bọtịn %d"
+
+#: ../src/ui/theme-viewer.c:755
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekọndụ ga-àdọ́ otu windo fréèmù"
+
+#: ../src/ui/theme-viewer.c:798
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Njieme: omengosi-isiokwu-marco [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:805
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Ndehie na-edebata isiokwu: %s\n"
+
+#: ../src/ui/theme-viewer.c:811
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Edebatara isiokwu \"%s\" n'otu %g ntabi anya\n"
+
+#: ../src/ui/theme-viewer.c:852
+msgid "Normal Title Font"
+msgstr "Nọ́máàlụ̀ isiokwu ihumkpụrụedemede"
+
+#: ../src/ui/theme-viewer.c:858
+msgid "Small Title Font"
+msgstr "Obere isiokwu ihumkpụrụedemede"
+
+#: ../src/ui/theme-viewer.c:864
+msgid "Large Title Font"
+msgstr "Nnukwu isiokwu ihumkpụrụedemede"
+
+#: ../src/ui/theme-viewer.c:869
+msgid "Button Layouts"
+msgstr "Ndozi bọtịn ndị ahụ"
+
+#: ../src/ui/theme-viewer.c:874
+msgid "Benchmark"
+msgstr "Nrụọrụ hadwịa na sọftwịa"
+
+#: ../src/ui/theme-viewer.c:921
+msgid "Window Title Goes Here"
+msgstr "Isiokwu windo n'aga ebe a "
+
+#: ../src/ui/theme-viewer.c:1025
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"A dọ́ọ́lá %d fréèmù na %g klayantị-saịdị ntabianya oge (%g milisekọndụ maka "
+"fréèmù nke ọbụla) nakwa %g oge elekere tinyere iheọrụ X sava (%g milisekọndụ "
+"maka fréèmù nke ọbụla)\n"
+
+#: ../src/ui/theme-viewer.c:1244
+msgid "position expression test returned TRUE but set error"
+msgstr "Nnwale ebe nkọwa weghachitara EZIOKWU ma hazipụta ndehie"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "Nnwale ebe nkọwa weghachitara ASỊ mana ahazighị ndehie"
+
+#: ../src/ui/theme-viewer.c:1250
+msgid "Error was expected but none given"
+msgstr "A chọrọ ndehie mana enyeghị ya"
+
+#: ../src/ui/theme-viewer.c:1252
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "A chọrọ %d ndehie mana e %d nyere ya"
+
+#: ../src/ui/theme-viewer.c:1258
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "A chọghị ndehie mana eweghachitara otu: %s"
+
+#: ../src/ui/theme-viewer.c:1262
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "valiu x bụ %d, %d a chọrọ ya"
+
+#: ../src/ui/theme-viewer.c:1265
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "valiu y bụ %d, %d a chọrọ ya"
+
+#: ../src/ui/theme-viewer.c:1330
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d chịkọlata nkọwa atọsasịrịla %g n'oge ntabianya (%g oge ntabianya "
+"nhatanha)\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d echekwara na kíì MateConf %s abụghị ezigbo ọnụọgụgụ nke wọ́kspéèsì, ogo "
+#~ "elu nọ mgbe ahụ bụ %d\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> ga-"
+#~ "ezipụtarịrị maka isiokwu"
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Nchịkọlata nkọwa ome ntọsasị hújùpụ̀rụ̀ ome nchekwa ya, nke a bụ nsogbu "
+#~ "marco, mana ikwesiriike na ịchọrọ nnukwu nkọwa dị etu ahụ?"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Mbubata ndehie marco-dayalọ́ọ̀gụ̀ ka ebipụta ndehie maka ntiiwu: %s\n"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "Ọ̀dị̀dá n'iwepụtaozi isiokwu site na faịlụ %s: %s\n"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr "Ị́kwụ̄sị́ iheomume a n'ike ga-eme ka mgbanwe ndị ị na-echekwaghị fùó."
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Enweghị \"%s\" átrībúùtù<%s> n'elementị"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Enweghị \"alpha\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Enweghị \"arrow\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Enweghị \"bottom\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Enweghị \"color\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Enweghị \"filename\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Enweghị \"focus\" átrībúùtù na <%s> elementị"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Enweghị \"function\" átrībúùtù na <%s> elementị"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Enweghị \"height\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Enweghị \"left\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Enweghị \"name\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Enweghị \"position\" átrībúùtù na <%s> elementị"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Enweghị \"resize\" átrībúùtù na <%s> elementị"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Enweghị \"right\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Enweghị \"shadow\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Enweghị \"state\" átrībúùtù na <%s> elementị"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Enweghị̤ \"state\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Enweghị \"style\" átrībúùtù na <%s> elementị"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Enweghị \"top\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Enweghị \"type\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Enweghị \"value\" átrībúùtù na <%s> elementị"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Enweghị \"value\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Enweghị \"width\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"x\" attribute on element <%s>"
+#~ msgstr "Enweghị \"x\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Enweghị \"x1\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Enweghị \"x2\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Enweghị \"y\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Enweghị \"y1\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Enweghị \"y2\" átrībúùtù na elementị <%s>"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "Enweghị draw_ops ewepụtara maka aịkọn"
+
+#~ msgid "On _Top"
+#~ msgstr "N'e_lu"
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Ụfọdụ usoroiheomume kwụsịrị nzipụta n'ụzọ mpụtara ná onyenlekọta windo ga-"
+#~ "agaghị enwe iheọrụ. Ọmumatụ, n'ụzọ echiche marco ga-edogowe dayalọ́ọ̀gụ̀ "
+#~ "niile n'ebe mgbe niile ya na nkwányere ugwu perentị windo. Nke a na-achọ "
+#~ "ileghara usoroiheomume-ezipụtara ebe maka dayalọ́ọ̀gụ̀.Mana ụfọdụ agbanke "
+#~ "java/Swingị máàkị̀ á pọpọp menu ha dịka dayalọ́ọ̀gụ̀,ya bụ na Marco ga-"
+#~ "emebi dayalọ́ọ̀gụ̀ ebe ka o kwe menu ịrụ ọrụ na mmebisi Jaja usoroiheomume. "
+#~ "Enwere ụfọdị ọmụmaatụ. Ihenhọrọ a na-etinye Marco na njupụta móòdù "
+#~ "dabara adaba, nke where ike inye UI anabatara katụ mma ma ọ bụrụ na "
+#~ "ịchọghị ibido app ndị mebiri emebi. Na nwute, a ga-ekwe ụzọ nzere nsogbu "
+#~ "site na dị̀fọ́ọ̀ltụ̀; Uwa a bụ ebe jọrọ njọ. Ụfọdụ ụzọ nzere nsogbu bụ ụzọ "
+#~ "nzere nsogbu maka ike mmem n'onwe ha, ya bụ mgbe ụfọdụ anaghị nsogbu "
+#~ "n'ụzọ nzere nsogbu móòdù agaghị adị ndozi na-ewebilataghị spéèkị̀."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịdịn nke na-abanye na wọ́kspéèsì n'elu wọ́kspéèsì nọ mgbe ahụ. Ọdịdị "
+#~ "ahụ dịka\"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\".Ọtọsa "
+#~ "ngwe dị̀ libraalụ ma ná-èkwè kéèsì nke ala mọọbụ nke elu, ya na inwe "
+#~ "mkpọbiriaha dịka \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie "
+#~ "ihenhọrọ ahụ n'ahịrịokwu pụrụ iche\"disabled\", mgbe ahụ agaghị enwezi "
+#~ "kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn nke na-abanye na wọ́kspéèsì n'okpuru wọ́kspéèsì nọ mgbe ahụ. "
+#~ "Ọdịdị a dịka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\"."
+#~ "Ọtọsa ngwe dị librààlụ̀ mà ná-èkwé kéèsì nke ala mọọbụ nke elu, ya na inwe "
+#~ "mkpọbiriaha dịka \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". \"&lt;Ctl&gt;\" na "
+#~ "\"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu pụrụ iche "
+#~ "\"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ " Kiibaịndịn nke na-abanye na wọ́kspéèsì n'akaekpe nke wọ́kspéèsì nọ mgbe "
+#~ "ahụ. Ọdịdị ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". Ọtọsa ngwe dị̀ líbrààlụ̀ mà ná-èkwé, kéèsì nke ala mọọbụ nke elu, ya "
+#~ "na inwe mkpọbiriaha dịka \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". \"&lt;"
+#~ "Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu "
+#~ "pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ " Kiibaịndịn nke na-abanye na wọ́kspéèsì n'akanri nke wọ́kspéèsì nọ mgbe "
+#~ "ahụ. Ọdịdị ahụ dịka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì nke ala mọọbụ nke elu, ya "
+#~ "na inwe mkpọbiriaha dịka \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na "
+#~ "ihazie ihenhọrọ ahụ n'ahịrịokwu pụrụ iche \"disabled\", mgbe ahụ agaghị "
+#~ "enwezi kiibaịndịn maka mmem a. "
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịndịn nke na-abanye na wọ́kspéèsì 1. Ọdịdị ahụ dị̀ka \"&lt;Control&gt;a"
+#~ "\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu pụrụ iche"
+#~ "\"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịndịn nke na-abanye na wọ́kspéèsì 10. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;"
+#~ "a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ndị ahụ n'ahịrịokwu ahụ "
+#~ "pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịdịn nke na-abanye na wọ́kspéèsì 11. Ọdịdị ahụ dị̀ka \"&lt;Control&gt;a"
+#~ "\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu,ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ "
+#~ "iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịdịn nke na-abanye na wọ́kspéèsì 12. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a"
+#~ "\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ "
+#~ "iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịdịn nke na-abanye na wọ́kspéèsì 2. Ọdịdị ahụ dị̀ka \"&lt;Control&gt;a"
+#~ "\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu,ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ "
+#~ "iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịdịn nke na-abanye na wọ́kspéèsì 3. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a"
+#~ "\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ "
+#~ "iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a. "
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịdịn nke na-abanye na wọ́kspéèsì 4. Ọdịdị ahụ dị̀ka \"&lt;Control&gt;a"
+#~ "\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwuahụ pụrụ "
+#~ "iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịdịn nke na-abanye na wọ́kspéèsì 5. Ọdịdị ahụ dị̀ka \"&lt;Control&gt;a"
+#~ "\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu, ya na inwemkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwuahụ pụrụ "
+#~ "iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a. "
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịdịn nke na-abanye na wọ́kspéèsì 6. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a"
+#~ "\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwuahụ pụrụ "
+#~ "iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịdịn nke na-abanye na wọ́kspéèsì 7. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a"
+#~ "\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwuahụ pụrụ "
+#~ "iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịdịn nke na-abanye na wọ́kspéèsì 8. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a"
+#~ "\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwuahụ pụrụ "
+#~ "iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịdịn nke na-abanye na wọ́kspéèsì 9. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a"
+#~ "\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu, ya na inwemkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwuahụ pụrụ "
+#~ "iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ " Kiibaịndịn eji arụ ọrụ windo menu. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" "
+#~ "mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé "
+#~ "kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na "
+#~ "\"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwuahụ pụrụ iche "
+#~ "\"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji abanye \"move mode\" ma bido ịkpụgharị windo n'iji "
+#~ "kíìbọ́ọ̀dụ̀. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\".Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya "
+#~ "na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na "
+#~ "ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ "
+#~ "agaghị enwezi kiibaịndịn maka mmem a. "
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji abanye \"resize mode\" ma bido imegharị ụhara windo n'iji "
+#~ "kíìbọ́ọ̀dụ̀. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya "
+#~ "na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na "
+#~ "ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ "
+#~ "agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji ezo windo niile ndị nọ́nụ̄ ma hazie fókọ́ọ̀sụ̀ n'okpuru "
+#~ "desktọ́ọ̀pụ̀. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\".Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya "
+#~ "na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na "
+#~ "ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ "
+#~ "agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji abawanye windo.Ọdịdị ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì "
+#~ "ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;"
+#~ "Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche "
+#~ "\"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji ewebilata windo. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì "
+#~ "ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;"
+#~ "Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwuahụ pụrụ iche "
+#~ "\"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo otu wọ́kspéèsì ala. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\" Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo otu wọ́kspéèsì n'akaekpe. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo otu wọ́kspéèsì n'akanri. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo otu wọ́kspéèsì elu. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 1. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 10. Ọdịdị ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́ka "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 11. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\".Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 12. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 2. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 3. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 4. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\".Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 5. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\".Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 6. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 7. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\".Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha "
+#~ "dị́kà, \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 8. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\".Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụga windo na wọ́kspéèsì 9. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwuahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ " Kiibaịndịn eji akpụghachi fókọ́ọ̀sụ̀ azụ n'etiti pánēèlụ̀ na desktọ́ọ̀pụ̀, "
+#~ "n'iji windo pọpọp. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala "
+#~ "mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;"
+#~ "Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche "
+#~ "\"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụghachi fókọ́ọ̀sụ̀ azụ n'etiti pánēèlụ̀ na desktọ́ọ̀pụ̀, na-"
+#~ "enweghị windo pọpọp. Onodụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala "
+#~ "mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;"
+#~ "Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche "
+#~ "\"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụghachi fókọ́ọ̀sụ̀ azụ n'etiti windo na-enweghị windo "
+#~ "pọpọp. Ijikọta \"shift\" ya na baịndịn a ọ́nụ̄ na-eme ka daịrekshiọn gaa "
+#~ "ihu ọzọ. ọdịdị ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\".Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya "
+#~ "na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na "
+#~ "ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ "
+#~ "agaghị enwezi kiibaịndịn maka mmem a. "
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụgha fókọ́ọ̀sụ̀ n'etiti windo, n'iji windo pọpọp. Ijikọta "
+#~ "\"shift\" ya na baịndịn a ọ́nụ̄ na-eme ka daịrekshiọn gaa ihu ọzọ. Ọnọdụ "
+#~ "ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\".Ọtọsa "
+#~ "ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe "
+#~ "mkpọbiriaha dị́kà, \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie "
+#~ "ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị "
+#~ "enwezi kiibaịndịn maka mmem a. "
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụgha fókọ́ọ̀sụ̀ n'etiti pánēèlụ̀ na desktọ́ọ̀pụ̀, n'iji windo "
+#~ "pọpọp. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, "
+#~ "ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na "
+#~ "ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ "
+#~ "agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụgha fókọ́ọ̀sụ̀ n'etiti pánēèlụ̀ na desktọ́ọ̀pụ̀, na-enweghị "
+#~ "windo pọpọp. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, "
+#~ "ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na "
+#~ "ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ "
+#~ "agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụgha fókọ́ọ̀sụ̀ n'etiti windo na-enweghị windo pọpọp. "
+#~ "(Tradishiọnali &lt;Alt&gt;Èskéèpụ̀) N'ijide kii \"shift\" mgbe i ji "
+#~ "baịndịn a arụ ọrụ ọ nà-àgbanwe mkpụgha daịrekshiọn. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji akpụgha fókọ́ọ̀sụ̀ n'etiti windo, n'iji windo pọpọp. "
+#~ "(Tradishiọnali &lt;Alt&gt;Táàbụ̀) N'ijide kii \"shift\" mgbe i ji baịndịn "
+#~ "a arụ ọrụ ọ nà-àgbanwe mkpụgha daịrekshiọn. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji apịnye n'elu. Windo nke ná-ánọ̀kárị́ n'elu nà-àká apụta ihe "
+#~ "karịa windo ndị ọzọ. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala "
+#~ "mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;"
+#~ "Ctrl&gt;\".Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche "
+#~ "\"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji apịnye na móòdù fúlskríìn. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;"
+#~ "a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\".Ọtọsa ngwe dị líbrààlụ̀ mà ná-"
+#~ "èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" "
+#~ "na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ "
+#~ "iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji apịnye mbawanye. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì "
+#~ "ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;"
+#~ "Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche "
+#~ "\"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji apịnye ọnọdụ shédèèdị̀/ọ̀nshédèèdị̀. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịdịn eji apịnye ma windo ọ nọ na wọ́kspéèsì niile mọọbụ sọsọ n'otu. "
+#~ "Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe "
+#~ "mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie "
+#~ "ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị "
+#~ "enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịndịn eji ewebilata ụhara windo. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" "
+#~ "mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé "
+#~ "kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na "
+#~ "\"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche "
+#~ "\"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn nke na-egosi igbe dayalọ́ọ̀gụ̀ pánēèlụ̀ \"Run Application\". Ọnọdụ "
+#~ "ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa "
+#~ "ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe "
+#~ "mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie "
+#~ "ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị "
+#~ "enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kiibaịndịn nke n'ebido ngwaọrụ mbupụ na mbubata ozi. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn nke n'ebido iheọrụ skríinshọ́ọ̀tụ̀ pánēèlụ̀ ka ọ méè skríìnshọ́ọ̀tụ̀ "
+#~ "nke windo. Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, "
+#~ "ya na inwe mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ "
+#~ "na ihazie ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ "
+#~ "agaghị enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn nke n'ebido iheọrụ skríínshọ́ọ̀tụ̀ pánēèlụ̀. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn nke na-egosi pánēèlụ̀ menu nkeisi. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwemkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "Isiokwu énwégóláàrị́ị̀ menu aịkọn maka %s ọnọdụ nrụọrụ %s "
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another window, it raises the window above "
+#~ "other windows. If the window is already fully visible, it lowers the "
+#~ "window below other windows. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn a na-agbanwe mà windo ọ nọ n'elụ mọọbụ n'ala nke windo ndị "
+#~ "ọzọ. Ọ bụrụ na ekpuchiri windo site n'aka windo ọzọ, ọ ga-ewelite windo "
+#~ "ahụ elu karia windo ndị ọzọ. Ọ bụrụ na windo ahụ àpụ̀táláàrị́ị̀ ìhè ọfụma, ọ "
+#~ "ga-ebudata windo ahụ ala n'okpuru windo ndị ọzọ. Ọnọdụ ahụ dị̀ka \"&lt;"
+#~ "Control&gt;a\" mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn a na-ebudata windo ala n'okpuru windo ndị ọzọ. Ọnọdụ ahụ dị̀ka "
+#~ "\"&lt;Control&gt;a\"mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\".Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kiibaịndịn a na-ewelite windo ahụ elu karịa windo ndị ọzọ. Ọnọdụ ahụ dị̀ka "
+#~ "\"&lt;Control&gt;a\"mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa ngwe dị "
+#~ "líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe mkpọbiriaha dị́kà "
+#~ "\"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie ihenhọrọ ahụ "
+#~ "n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị enwezi kiibaịndịn "
+#~ "maka mmem a."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn a na-emegharị ụhara windo ka emejuo ohere horizontal dị́ nụ̄. "
+#~ "Ọnọdụ ahụ dị̀ka \"&lt;Control&gt;a\"mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Ọtọsa ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì ala mọọbụ nke elu, ya na inwe "
+#~ "mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie "
+#~ "ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị "
+#~ "enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kiibaịndịn a na-emegharị ụhara windo ka emejuo ohere vatịkal dị́ nụ̄. Ọnọdụ "
+#~ "ahụ dị̀ka \"&lt;Control&gt;a\"mọọbụ \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ọtọsa "
+#~ "ngwe dị líbrààlụ̀ mà ná-èkwé kéèsì alamọọbụ nke elu, ya na inwe "
+#~ "mkpọbiriaha dị́kà \"&lt;Ctl&gt;\" na \"&lt;Ctrl&gt;\". Ọ bụrụ na ihazie "
+#~ "ihenhọrọ ahụ n'ahịrịokwu ahụ pụrụ iche \"disabled\", mgbe ahụ agaghị "
+#~ "enwezi kiibaịndịn maka mmem a."
+
+#~ msgid ""
+#~ "This option determines the effects of double-clicking on the title bar. "
+#~ "Current valid options are 'toggle_shade', which will shade/unshade the "
+#~ "window, and 'toggle_maximize' which will maximize/unmaximize the window."
+#~ msgstr ""
+#~ "Ihenhọrọ a na-ezipụta uru nke pịmpị-kwasa apịrị na taịtụl báà. 'a "
+#~ "tọ́gụ̀lụ̀rụ̀_shéèdì' ihenhọrọ nwereisi nọ̄ mgbe ahụ, nke ga-éshéèdì/ọ̀nshéèdìá "
+#~ "windo, nakwa 'tọ́gụ̀lụ̀ọ́_bawanye' nke ga-abawanyeụhara/nwebilataụhara windo "
+#~ "ahụ."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Pịa mgbe ọbụla n'ọnọdụ elu"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Átrībúùtù a na-amaghị %s na <geometry> elementị"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Átrībúùtù a na-amaghị %s na <maximized> elementị"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Átrībúùtù a na-amaghị %s na <marco_session>elementị"
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Nrụọrụ a na-amaghị \"%s\" maka menu aịkọn"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Ọnọdụ a na-amaghị \"%s\" maka menu aịkọn"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Abawanyekwala ụhara Windo"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Webilataụhara windo"
+
+#~ msgid ""
+#~ "marco [--sm-disable] [--sm-client-id=ID] [--sm-save-file=FILENAME] [--"
+#~ "display=DISPLAY] [--replace] [--version]\n"
+#~ msgstr ""
+#~ "marco [--sm-disable] [--sm-client-id=ID] [--sm-save-file=FILENAME] [--"
+#~ "display=DISPLAY] [--replace] [--version]\n"
diff --git a/po/is.po b/po/is.po
new file mode 100644
index 00000000..3d75dcca
--- /dev/null
+++ b/po/is.po
@@ -0,0 +1,2720 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR Samúel Jón Gunnarsson <[email protected]>, 2003.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-09-19 12:30+0200\n"
+"PO-Revision-Date: 2003-06-22 17:16--100\n"
+"Last-Translator: Samuel Jon Gunnarsson <[email protected]>\n"
+"Language-Team: Icelandic <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Notkun: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:128
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco var vistþýtt án stuðnings við aukin villuleitarham\n"
+
+#: ../src/delete.c:63 ../src/delete.c:90 ../src/marco-dialog.c:70
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Ekki tókst að greina \"%s\" sem heiltölu"
+
+#: ../src/delete.c:70 ../src/delete.c:97 ../src/marco-dialog.c:77
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+
+#: ../src/delete.c:128
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr ""
+
+#: ../src/delete.c:263
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr ""
+
+#: ../src/delete.c:344
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Villa átti sér stað við ræsingu á metalog-glugga með spurningu um aflífun á "
+"forriti: %s\n"
+
+#: ../src/delete.c:452
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Ekki tókst að ná í nafn hýsils: %s\n"
+
+#: ../src/display.c:319
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr ""
+
+#: ../src/errors.c:231
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+
+#: ../src/errors.c:238
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Banvæn IO villa %d (%s) á skjá '%s'.\n"
+
+#: ../src/frames.c:1125
+msgid "Close Window"
+msgstr "Loka glugga"
+
+#: ../src/frames.c:1128
+msgid "Window Menu"
+msgstr "Gluggavalmynd"
+
+#: ../src/frames.c:1131
+msgid "Minimize Window"
+msgstr "Lágmarka glugga"
+
+#: ../src/frames.c:1134
+msgid "Maximize Window"
+msgstr "Hámarka glugga"
+
+#: ../src/frames.c:1137
+msgid "Unmaximize Window"
+msgstr "Minnka glugga"
+
+#: ../src/keybindings.c:994
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+
+#: ../src/keybindings.c:2620
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+
+#: ../src/keybindings.c:2725
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Engin skipun %d hefur verið skilgreind.\n"
+
+#: ../src/keybindings.c:3570
+#, fuzzy
+msgid "No terminal command has been defined.\n"
+msgstr "Engin skipun %d hefur verið skilgreind.\n"
+
+#: ../src/main.c:69
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Höfundarréttur áskilin (C) 2001-2002 Havoc Pennington, Red Hat, Inc., og "
+"fleiri\n"
+"Þetta er frír hugbúnaður; sjá kóðan fyrir afritunarskilyrði.\n"
+"Það er ENGINN ábyrgð; ekki einu sinni fyrir MERCHANTABILITY eða FITNESS FOR "
+"A PARTICULAR PURPOSE.\n"
+
+#: ../src/main.c:257
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:263
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:269
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:274
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:280
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:286
+msgid "Print version"
+msgstr ""
+
+#: ../src/main.c:440
+#, fuzzy, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Ekki tókst að hlaða inn þema \"%s\": %s\n"
+
+#: ../src/main.c:456
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr ""
+"Ekki tókst að finna þema! Fullvissaðu þig um að %s finnist og innihaldi "
+"venjuleg þema."
+
+#: ../src/main.c:518
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Ekki tókst að endurræsa: %s\n"
+
+#: ../src/menu.c:54
+msgid "Mi_nimize"
+msgstr "Lág_marka"
+
+#: ../src/menu.c:55
+msgid "Ma_ximize"
+msgstr "_Hámarka"
+
+#: ../src/menu.c:56
+msgid "Unma_ximize"
+msgstr "Minn_ka glugga"
+
+#: ../src/menu.c:57
+msgid "Roll _Up"
+msgstr "Rúlla _Upp"
+
+#: ../src/menu.c:58
+msgid "_Unroll"
+msgstr "_Rúlla Niður"
+
+#: ../src/menu.c:59 ../src/menu.c:60
+msgid "On _Top"
+msgstr ""
+
+#: ../src/menu.c:61
+msgid "_Move"
+msgstr "_Flytja"
+
+#: ../src/menu.c:62
+msgid "_Resize"
+msgstr "_Endurstækka"
+
+#. separator
+#: ../src/menu.c:64
+msgid "_Close"
+msgstr "_Loka"
+
+#. separator
+#: ../src/menu.c:66
+#, fuzzy
+msgid "_Always on Visible Workspace"
+msgstr "Einungis á _þessu vinnusvæði"
+
+#: ../src/menu.c:67
+#, fuzzy
+msgid "_Only on This Workspace"
+msgstr "Einungis á _þessu vinnusvæði"
+
+#: ../src/menu.c:68
+#, fuzzy
+msgid "Move to Workspace _Left"
+msgstr "Flytja yfir á vinnusvæði 9"
+
+#: ../src/menu.c:69
+#, fuzzy
+msgid "Move to Workspace R_ight"
+msgstr "Flytja glugga yfir á vinnusvæði 1"
+
+#: ../src/menu.c:70
+#, fuzzy
+msgid "Move to Workspace _Up"
+msgstr "Flytja glugga yfir á vinnusvæði 1"
+
+#: ../src/menu.c:71
+#, fuzzy
+msgid "Move to Workspace _Down"
+msgstr "Flytja glugga niður um eitt vinnusvæði"
+
+#: ../src/menu.c:162 ../src/prefs.c:2106
+#, c-format
+msgid "Workspace %d"
+msgstr "Vinnusvæði %d"
+
+#: ../src/menu.c:171
+#, fuzzy
+msgid "Workspace 1_0"
+msgstr "Vinnusvæði %d"
+
+#: ../src/menu.c:173
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Vinnusvæði %s%d"
+
+#: ../src/menu.c:368
+#, fuzzy
+msgid "Move to Another _Workspace"
+msgstr "Flytja glugga upp um eitt vinnusvæði"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+# This is the text that should appear next to menu accelerators
+# * that use the super key. If the text on this key isn't typically
+# * translated on keyboards used for your language, don't translate
+# * this.
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:110
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr ""
+
+#: ../src/marco-dialog.c:118
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr ""
+
+#: ../src/marco-dialog.c:129
+msgid "_Force Quit"
+msgstr "_þvinga til að hætta"
+
+#: ../src/marco-dialog.c:226
+msgid "Title"
+msgstr "Titill"
+
+#: ../src/marco-dialog.c:238
+msgid "Class"
+msgstr "Klassi"
+
+#: ../src/marco-dialog.c:264
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+
+#: ../src/marco-dialog.c:330
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Villa átti sér stað við keyrslu \"%s\":\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Ekki ennþá innfært) Vöfrun virkar innan einungis í samhengi við forrit en "
+"ekki glugga"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Aðgerð við tvíklikk á titilrönd"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr "Virkja gluggavalmynd"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Staðsetning takka á tiltilrönd"
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:9
+#, fuzzy
+msgid "Close window"
+msgstr "Loka glugga"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr "Núverandi þema"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Seinkun í millisekúndum fyrir sjálfvirka hækkun valmöguleikan"
+
+#: ../src/marco.schemas.in.h:13
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Ákvarðar hvort forrit eða kerfið geti búið til heyranlegt 'bíbb'. Er hægt að "
+"nýta í samhengi með 'sýnilegri bjöllu' þegar leyfa á hljóðlaus 'bíbb'"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr "Virkja sýnilega bjöllu"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Hide all windows and focus desktop"
+msgstr "Fela alla glugga og gefa skjáborði fókus"
+
+#: ../src/marco.schemas.in.h:17
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key)."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:19
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:22
+msgid "Lower window below other windows"
+msgstr "Lækka glugga niður fyrir aðra glugga"
+
+#: ../src/marco.schemas.in.h:23
+#, fuzzy
+msgid "Maximize window"
+msgstr "Hámarka glugga"
+
+#: ../src/marco.schemas.in.h:24
+msgid "Maximize window horizontally"
+msgstr "Hámarka glugga lárétt"
+
+#: ../src/marco.schemas.in.h:25
+msgid "Maximize window vertically"
+msgstr "Hámarka glugga lóðrétt"
+
+#: ../src/marco.schemas.in.h:26
+#, fuzzy
+msgid "Minimize window"
+msgstr "Lágmarka glugga"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:28
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:29
+msgid "Move backwards between panels and the desktop with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:30
+msgid "Move backwards between windows immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:31
+msgid "Move between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move between panels and the desktop with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move between windows immediately"
+msgstr "Flytja á milli glugga án seinkunar"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move between windows with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move focus backwards between windows using popup display"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:36
+#, fuzzy
+msgid "Move window"
+msgstr "Flytja glugga"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move window one workspace down"
+msgstr "Flytja glugga niður um eitt vinnusvæði"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move window one workspace to the left"
+msgstr "Flytja glugga til vinstri um eitt vinnusvæði"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move window one workspace to the right"
+msgstr "Flytja glugga til hægri um eitt vinnusvæði"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move window one workspace up"
+msgstr "Flytja glugga upp um eitt vinnusvæði"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move window to workspace 1"
+msgstr "Flytja glugga yfir á vinnusvæði 1"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move window to workspace 10"
+msgstr "Flytja yfir á vinnusvæði 10"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move window to workspace 11"
+msgstr "Flytja yfir á vinnusvæði 11"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window to workspace 12"
+msgstr "Flytja yfir á vinnusvæði 12"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window to workspace 2"
+msgstr "Flytja yfir á vinnusvæði 2"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window to workspace 3"
+msgstr "Flytja yfir á vinnusvæði 3"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window to workspace 4"
+msgstr "Flytja yfir á vinnusvæði 4"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window to workspace 5"
+msgstr "Flytja yfir á vinnusvæði 5"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 6"
+msgstr "Flytja yfir á vinnusvæði 6"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 7"
+msgstr "Flytja yfir á vinnusvæði 7"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 8"
+msgstr "Flytja yfir á vinnusvæði 8"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 9"
+msgstr "Flytja yfir á vinnusvæði 9"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Name of workspace"
+msgstr "Nafn vinnusvæðis"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Number of workspaces"
+msgstr "Fjöldi vinnusvæða"
+
+#: ../src/marco.schemas.in.h:55
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr ""
+"Fjöldi vinnsvæða. Verðu að vera fleiri en núll, og með fast hámark ( til að "
+"koma í veg fyrir að rústa skjáborðinu með beiðni um 34 milljónir vinnusvæða)."
+
+#: ../src/marco.schemas.in.h:56
+msgid "Raise obscured window, otherwise lower"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:57
+msgid "Raise window above other windows"
+msgstr "Hækka glugga upp fyrir aðra glugga"
+
+#: ../src/marco.schemas.in.h:58
+#, fuzzy
+msgid "Resize window"
+msgstr "Endurstækka glugga"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Run a defined command"
+msgstr "Keyra tiltekna skipun"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Run a terminal"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:61
+msgid "Show the panel menu"
+msgstr "Sýna stikuvalmynd"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Show the panel run application dialog"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:63
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:64
+msgid "Switch to workspace 1"
+msgstr "Skipta yfir á vinnusvæði 1"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Switch to workspace 10"
+msgstr "Skipta yfir á vinnusvæði 10"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Switch to workspace 11"
+msgstr "Skipta yfir á vinnusvæði 11"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Switch to workspace 12"
+msgstr "Skipta yfir á vinnusvæði 12"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Switch to workspace 2"
+msgstr "Skipta yfir á vinnusvæði 2"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Switch to workspace 3"
+msgstr "Skipta yfir á vinnusvæði 3"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Switch to workspace 4"
+msgstr "Skipta yfir á vinnusvæði 4"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Switch to workspace 5"
+msgstr "Skipta yfir á vinnusvæði 5"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 6"
+msgstr "Skipta yfir á vinnusvæði 6"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 7"
+msgstr "Skipta yfir á vinnusvæði 7"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 8"
+msgstr "Skipta yfir á vinnusvæði 8"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 9"
+msgstr "Skipta yfir á vinnusvæði 9"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace above this one"
+msgstr "Skipta yfir á vinnusvæði fyrir ofan þetta"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace below this one"
+msgstr "Skipta yfir á vinnusvæði fyrir neðan þetta"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace on the left"
+msgstr "Skipta yfir á vinnusvæði á vinstri hönd"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace on the right"
+msgstr "Skipta yfir á vinnusvæði á hægri hönd"
+
+#: ../src/marco.schemas.in.h:80
+msgid "System Bell is Audible"
+msgstr "Kerfisbjalla er heyranleg"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Take a screenshot"
+msgstr "Taka skjámynd"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Take a screenshot of a window"
+msgstr "Taka skjámynd af glugga"
+
+#: ../src/marco.schemas.in.h:83
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:84
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:85
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:86
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:87
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:88
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:89
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:90
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:91
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:92
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:93
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:94
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:95
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:96
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:97
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:98
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:99
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:100
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:146
+msgid "The name of a workspace."
+msgstr "Nafn vinnusvæði."
+
+#: ../src/marco.schemas.in.h:147
+msgid "The screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:151
+msgid "The window screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, and 'toggle_maximize' which will maximize/unmaximize the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:158
+msgid "Toggle always on top state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:159
+msgid "Toggle fullscreen mode"
+msgstr "Fletta heilskjáham"
+
+#: ../src/marco.schemas.in.h:160
+msgid "Toggle maximization state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:161
+msgid "Toggle shaded state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:162
+msgid "Toggle window on all workspaces"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:164
+#, fuzzy
+msgid "Unmaximize window"
+msgstr "Minnka glugga"
+
+#: ../src/marco.schemas.in.h:165
+msgid "Use standard system font in window titles"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:166
+msgid "Visual Bell Type"
+msgstr "Gerð sýnilegrar bjöllu"
+
+#: ../src/marco.schemas.in.h:167
+msgid "Window focus mode"
+msgstr "Fókusgerð glugga"
+
+#: ../src/marco.schemas.in.h:168
+msgid "Window title font"
+msgstr "Leturgerð gluggatitils"
+
+#: ../src/prefs.c:528 ../src/prefs.c:544 ../src/prefs.c:560 ../src/prefs.c:576
+#: ../src/prefs.c:592 ../src/prefs.c:612 ../src/prefs.c:628 ../src/prefs.c:644
+#: ../src/prefs.c:660 ../src/prefs.c:676 ../src/prefs.c:692 ../src/prefs.c:708
+#: ../src/prefs.c:724 ../src/prefs.c:741 ../src/prefs.c:757 ../src/prefs.c:773
+#: ../src/prefs.c:789 ../src/prefs.c:805 ../src/prefs.c:820 ../src/prefs.c:835
+#: ../src/prefs.c:850 ../src/prefs.c:866 ../src/prefs.c:882 ../src/prefs.c:898
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr ""
+
+#: ../src/prefs.c:943
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+
+#: ../src/prefs.c:967 ../src/prefs.c:1428
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr ""
+
+#: ../src/prefs.c:1145
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+
+#: ../src/prefs.c:1330
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1390
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+
+#: ../src/prefs.c:1455
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1589
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+
+#: ../src/prefs.c:1833
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+
+#: ../src/prefs.c:2187
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+
+#: ../src/resizepopup.c:126
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:408
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr ""
+
+#: ../src/screen.c:424
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+
+#: ../src/screen.c:448
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+
+#: ../src/screen.c:506
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr ""
+
+#: ../src/session.c:884 ../src/session.c:891
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Ekki tókst að búa til möppu '%s': %s\n"
+
+#: ../src/session.c:901
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ""
+
+#: ../src/session.c:1053
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:1058
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:1133
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr ""
+
+#: ../src/session.c:1168
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr ""
+
+#: ../src/session.c:1217
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/session.c:1230
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr ""
+
+#: ../src/session.c:1247
+msgid "nested <window> tag"
+msgstr "hreiðraður <window> tag"
+
+#: ../src/session.c:1305 ../src/session.c:1337
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr ""
+
+#: ../src/session.c:1409
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr ""
+
+#: ../src/session.c:1469
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr ""
+
+#: ../src/session.c:1489
+#, c-format
+msgid "Unknown element %s"
+msgstr ""
+
+#: ../src/session.c:1961
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Lína %d tákn %d: %s"
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Heiltalan %ld verður að vera jákvæð"
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Heiltalan %ld er of stór. Núverandi hámark er %d"
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Ekki tókst að greina \"%s\" sem floating point tölu"
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Fjarlægð \"%s\" er óþekkt"
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Stærðarhlutföll \"%s\" eru óþekkt"
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1662
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1676
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1903
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1910
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2090
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2161
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2209
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/theme-parser.c:2294
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2476
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2549
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/theme-parser.c:3153
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3210
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3219
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3227
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3272
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3289
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Óþekkt fall \"%s\" fyrir hnapp"
+
+#: ../src/theme-parser.c:3298
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Óþekkt staða \"%s\" fyrir hnapp"
+
+#: ../src/theme-parser.c:3306
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3376
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3392
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3401
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3420
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:3430
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3440
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3450
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+
+#: ../src/theme-parser.c:3464
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3536
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3574
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3612
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3659
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:3679
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+
+#: ../src/theme-parser.c:3684
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3696
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/theme-parser.c:3718
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3984
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3999
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/theme-parser.c:4014
+msgid "No draw_ops provided for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:4054
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:4109
+msgid "<name> specified twice for this theme"
+msgstr "<name> uppgefið í tvígang fyrir þetta þema"
+
+#: ../src/theme-parser.c:4120
+msgid "<author> specified twice for this theme"
+msgstr "<author> uppgefið í tvígang fyrir þetta þema"
+
+#: ../src/theme-parser.c:4131
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> uppgefið í tvígang fyrir þetta þema"
+
+#: ../src/theme-parser.c:4142
+msgid "<date> specified twice for this theme"
+msgstr "<date> uppgefið í tvígang fyrir þetta þema"
+
+#: ../src/theme-parser.c:4153
+msgid "<description> specified twice for this theme"
+msgstr "<description> uppgefið í tvígang fyrir þetta þema"
+
+#: ../src/theme-parser.c:4348
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr "Ekki tókst að lesa þema frá skrá %s: %s\n"
+
+#: ../src/theme-parser.c:4403
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Þemaskrá %s innihélt ekki rótar <marco_theme> einingu"
+
+#: ../src/theme-viewer.c:70
+#, fuzzy
+msgid "/_Windows"
+msgstr "Gluggi í fókus"
+
+#: ../src/theme-viewer.c:71
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/theme-viewer.c:72
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/theme-viewer.c:76
+#, fuzzy
+msgid "/Windows/_Top dock"
+msgstr "Gluggi í fókus"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:80
+#, fuzzy
+msgid "/Windows/_All docks"
+msgstr "Gluggi í fókus"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/Des_ktop"
+msgstr ""
+
+#: ../src/theme-viewer.c:131
+#, fuzzy
+msgid "Open another one of these windows"
+msgstr "Hækka glugga upp fyrir aðra glugga"
+
+#: ../src/theme-viewer.c:138
+msgid "This is a demo button with an 'open' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:145
+msgid "This is a demo button with a 'quit' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr ""
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr ""
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/theme-viewer.c:397
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/theme-viewer.c:402
+msgid "Border"
+msgstr ""
+
+#: ../src/theme-viewer.c:731
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/theme-viewer.c:760
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/theme-viewer.c:803
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:810
+#, fuzzy, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Ekki tókst að hlaða inn þema \"%s\": %s\n"
+
+#: ../src/theme-viewer.c:816
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:839
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:845
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:851
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:856
+msgid "Button Layouts"
+msgstr ""
+
+#: ../src/theme-viewer.c:861
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/theme-viewer.c:908
+#, fuzzy
+msgid "Window Title Goes Here"
+msgstr "Leturgerð gluggatitils"
+
+#: ../src/theme-viewer.c:1012
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:1227
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1229
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1233
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1241
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/theme-viewer.c:1245
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1248
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1310
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "toppur"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "botn"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "vinstri"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "hægri"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr ""
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr ""
+
+#: ../src/theme.c:843
+msgid "Gradients should have at least two colors"
+msgstr ""
+
+#: ../src/theme.c:969
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:983
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:994
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1007
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1037
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+
+#: ../src/theme.c:1048
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/theme.c:1058
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/theme.c:1105
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/theme.c:1116
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/theme.c:1126
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/theme.c:1155
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Ekki tókst að greina lit \"%s\""
+
+#: ../src/theme.c:1417
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/theme.c:1444
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+
+#: ../src/theme.c:1458
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/theme.c:1525
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+
+#: ../src/theme.c:1582
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/theme.c:1725 ../src/theme.c:1735 ../src/theme.c:1769
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/theme.c:1777
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/theme.c:1834
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/theme.c:1843
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/theme.c:1851
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/theme.c:1861
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+
+#: ../src/theme.c:1980
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr ""
+
+#: ../src/theme.c:2009
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2072
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/theme.c:2129
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2140
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/theme.c:2384 ../src/theme.c:2406 ../src/theme.c:2427
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/theme.c:3913
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+
+#: ../src/theme.c:4363 ../src/theme.c:4395
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+
+#: ../src/theme.c:4446
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Ekki tókst að hlaða inn þema \"%s\": %s\n"
+
+#: ../src/theme.c:4592 ../src/theme.c:4599 ../src/theme.c:4606
+#: ../src/theme.c:4613 ../src/theme.c:4620
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr ""
+
+#: ../src/theme.c:4630
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/theme.c:4652
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+
+#: ../src/theme.c:5041 ../src/theme.c:5103
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/theme.c:5049 ../src/theme.c:5111
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#: ../src/util.c:93
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Ekki tókst að opna aflúsunarskrá: %s\n"
+
+#: ../src/util.c:103
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Ekki tókst að fdopen() log skrá %s: %s\n"
+
+#: ../src/util.c:109
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Opnaði log skrá %s\n"
+
+#: ../src/util.c:203
+msgid "Window manager: "
+msgstr "Gluggastjóri:"
+
+#: ../src/util.c:349
+msgid "Bug in window manager: "
+msgstr "Lús í gluggastjóra:"
+
+#: ../src/util.c:378
+msgid "Window manager warning: "
+msgstr "Viðvörun gluggastjóra:"
+
+#: ../src/util.c:402
+msgid "Window manager error: "
+msgstr "Villa gluggastjóra:"
+
+#: ../src/window-props.c:162
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %ld\n"
+msgstr ""
+
+#. first time through
+#: ../src/window.c:5205
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5876
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
diff --git a/po/it.po b/po/it.po
new file mode 100644
index 00000000..ddd1b621
--- /dev/null
+++ b/po/it.po
@@ -0,0 +1,2511 @@
+# Italian translation of Marco.
+# This file is distributed under the same license as marco package
+# Copyright (C) 2002,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc.
+# Pier Luigi Fiorini <[email protected]>, 2002.
+# Lapo Calamandrei <[email protected]>, 2003.
+# Luca Ferretti <[email protected]>, 2004,2005,2006,2007,2008,2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco 2.29.x\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2010-01-21 21:34+0000\n"
+"PO-Revision-Date: 2010-04-21 14:07+0200\n"
+"Last-Translator: Luca Ferretti <[email protected]>\n"
+"Language-Team: Italian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Ambiente grafico"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Gestione finestre"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Evento campanella"
+
+# notare l'abilità con cui nella traduzione non si capisce
+# se sconosciuta è la finestra o la richiesta :-) --Luca
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Richiesta informazioni finestra sconosciuta: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "Nessuna risposta da <tt>%s</tt>."
+
+#: ../src/core/delete.c:101
+#| msgid ""
+#| "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#| "\n"
+#| "<i>You may choose to wait a short while for it to continue or force the "
+#| "application to quit entirely.</i>"
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "È possibile scegliere di attendere un po' lasciando che l'applicazione continui, oppure forzare la terminazione dell'applicazione."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Attendi"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Forza uscita"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Recupero del nome host non riuscito: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Estensione %s richiesta per il compositing mancante"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Apertura del display «%s» di X Window System non riuscita\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Connessione al display «%s» persa;\n"
+"molto probabilmente il server X è stato arrestato oppure\n"
+"si è terminato o distrutto il window manager.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Errore fatale di IO %d (%s) relativo al display «%s».\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Qualche altro programma sta già usando il tasto %s con i modificatori %x "
+"come una associazione di tasti\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Si è verificato un errore nell'eseguire <tt>%s</tt>:\n"
+"\n"
+"%s."
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Non è stato definito alcuno comando %d.\n"
+
+# "comando di terminale" o "comando «terminal»" ???
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Non è stato definito alcun comando di terminale.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright © 2001-%s Havoc Pennington, Red Hat, Inc., e altri\n"
+"Questo è software libero; si vedano i sorgenti per le condizioni di copia.\n"
+"NON è fornita alcuna garanzia; neanche di COMMERCIABILITÀ o\n"
+"APPLICABILITÀ PER UNO SCOPO PARTICOLARE.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Disabilita la connessione al gestore di sessione"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Sostituisce il window manager in esecuzione con Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Specifica l'ID di gestione sessione"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Display X da usare"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inizializza la sessione da file salvato"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Stampa la versione"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Rende le chiamate X sincrone"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Attiva il compositing"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Disattiva il compositing"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Non rendere a schermo intero le finestre che sono massimizzate e che non "
+"hanno decorazioni"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Scansione della directory dei temi non riuscita: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Non è stato trovato alcun tema. Assicurarsi che %s esista e contenga i temi "
+"standard.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Riavvio non riuscito: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "La chiave MateConf «%s» è impostata ad un valore non valido\n"
+
+# lasciato "Il valore" iniziale che c'era in precendeza
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"Il valore %d memorizzato nella chiave MateConf %s è fuori dall'intervallo da %d "
+"a %d\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "La chiave MateConf «%s» è impostata ad un tipo non valido\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Disabilitate le funzionalità palliative per la applicazioni difettose. "
+"Alcune applicazioni potrebbero avere comportamenti errati.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Impossibile analizzare la descrizione del tipo di carattere «%s» dalla chiave "
+"MateConf %s\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Il valore «%s» trovato nel database di configurazione non è valido per il "
+"modificatore del tasto del mouse\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Errore nell'impostare il numero di spazi di lavoro a %d: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "Spazio di lavoro %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Il valore «%s» nel database di configurazione non è valido per l'associazione "
+"di tasti «%s»\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Errore nell'impostare il nome dello spazio di lavoro %d a «%s»: %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Errore nell'impostare lo stato del compositor: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Lo schermo %d nel display «%s» non è valido\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Lo schermo %d sul display «%s» ha già un window manager; provare a utilizzare "
+"l'opzione --replace per sostituirlo.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Impossibile acquisire la selezione del window manager per lo schermo %d nel "
+"display «%s»\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Lo schermo %d sul display «%s» ha già un window manager\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Impossibile rilasciare lo schermo %d sul display «%s»\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Il formato è tipo \"<Control>a\" o \"<Shift><Alt>F1\".\n"
+"\n"
+"Senza particolari restrizioni, è consentito l'utilizzo di lettere maiuscole "
+"e minuscole, così come abbreviazioni come \"<Ctl>\" o \"<Ctrl>\". Se "
+"l'opzione è impostata alla stringa speciale \"disabled\", allora non c'è "
+"alcuna associazione di tasti per questa azione."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Il formato è tipo \"<Control>a\" o \"<Shift><Alt>F1\".\n"
+"\n"
+"Senza particolari restrizioni, è consentito l'utilizzo di lettere maiuscole "
+"e minuscole, così come abbreviazioni come \"<Ctl>\" o \"<Ctrl>\". Se "
+"l'opzione è impostata alla stringa speciale \"disabled\", allora non c'è "
+"alcuna associazione di tasti per questa azione.\n"
+"\n"
+"Questa associazioni di tasti può essere invertita tenendo premuto il tasto "
+"\"Maiusc\"; per questo motivo \"<Shift>\" non può essere incluso nei tasti "
+"da usare."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Impossibile creare la directory «%s»: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Impossibile aprire il file di sessione «%s» in scrittura: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Errore nello scrivere il file di sessione «%s»: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Errore nel chiudere il file di sessione «%s»: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Lettura del file della sessione %s non riuscita: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Analisi del file della sessione salvato non riuscita: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"Attributo <marco_session> individuato, ma è già presente un ID della "
+"sessione"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Attributo %s sconosciuto per l'elemento <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "tag <window> annidato"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Elemento %s sconosciuto"
+
+# aggiunto funzione
+# si riferisce a quella cosa di mate-session
+# che però non funziona più dalla 2.24
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Queste finestre non supportano la funzione &quot;salva impostazioni "
+"attuali&quot; e dovranno essere riavviate manualmente al prossimo accesso."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Apertura nel file di registro di debug non riuscita: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Esecuzione di fdopen() sul file di registro %s non riuscita: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "File di registro %s aperto\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+"Marco è stato compilato escludendo il supporto per la modalità prolissa\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Window manager: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Bug nel window manager: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Avviso del window manager: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Errore del window manager: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"La finestra %s ha impostato SM_CLIENT_ID su se stessa, invece che sulla "
+"finestra WM_CLIENT_LEADER come da specifiche ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"La finestra %s ha impostato un hint MWM indicando che non è "
+"ridimensionabile, ma ha impostato la dimensione minima %d x %d e la "
+"dimensione massima %d x %d; ciò non ha senso.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "L'applicazione ha impostato un _NET_WM_PID errato %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (su %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (come superutente)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (come %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (come altro utente)"
+
+# Sì, direi che è oscuro -Luca
+#
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Specificato un WM_TRANSIENT_FOR finestra 0x%lx non valido per %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"La finestra 0x%lx ha la proprietà %s\n"
+"che era attesa avere tipo %s formato %d\n"
+"e in realtà ha tipo %s formato %d n_items %d.\n"
+"Molto probabilmente è un bug dell'applicazione, non del window manager.\n"
+"La finestra presenta titolo=\"%s\" classe=\"%s\" nome=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "La proprietà %s sulla finestra 0x%lx contiene UTF-8 non valido\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"La proprietà %s sulla finestra 0x%lx contiene UTF-8 non valido per "
+"l'elemento %d nella lista\n"
+
+# questo e i successivi presi dallo stesso
+# file vanno a comparire in
+# Preferenze -> Scorciatoie da tastiera
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Passa allo spazio di lavoro 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Passa allo spazio di lavoro 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Passa allo spazio di lavoro 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Passa allo spazio di lavoro 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Passa allo spazio di lavoro 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Passa allo spazio di lavoro 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Passa allo spazio di lavoro 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Passa allo spazio di lavoro 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Passa allo spazio di lavoro 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Passa allo spazio di lavoro 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Passa allo spazio di lavoro 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Passa allo spazio di lavoro 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Passa allo spazio di lavoro a sinistra di quello attuale"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Passa allo spazio di lavoro a destra di quello attuale"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Passa allo spazio di lavoro sopra quello attuale"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Passa allo spazio di lavoro sotto quello attuale"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Sposta tra le finestre di un'applicazione, usando una finestra"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Sposta al contrario tra le finestre di un'applicazione, usando una finestra "
+"a comparsa"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Sposta tra le finestra, usando una finestra a comparsa"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Sposta al contrario tra le finestra, usando una finestra a comparsa"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Sposta tra i pannelli e la scrivania, usando una finestra a comparsa"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Sposta al contrario tra i pannelli e la scrivania, usando una finestra a "
+"comparsa"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Sposta immediatamente tra le finestre di una applicazione"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Sposta immediatamente al contrario tra le finestre di una applicazione"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Sposta immediatamente tra le finestre"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Sposta immediatamente al contrario tra le finestre"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Sposta immediatamente tra i pannelli e la scrivania"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Sposta immediatamente al contrario tra i pannelli e la scrivania"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Nascondi tutte le finestre normali e imposta il focus sulla scrivania"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Mostra il menù principale del pannello"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Mostra la casella di dialogo \"Esegui applicazione\" del pannello"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Cattura una schermata"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Cattura una schermata di una finestra"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Esegui un terminale"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Attiva il menù della finestra"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Commuta la modalità schermo intero"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Commuta lo stato massimizzazione"
+
+# uuuuufffff
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Commuta la visibilità permanente di una finestra sopra le altre"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Massimizza la finestra"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Ripristina la finestra"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Commuta lo stato arrotolato"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimizza la finestra"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Chiudi la finestra"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Muovi la finestra"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Ridimensiona la finestra"
+
+# uuuuuuufff
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Commuta la presenza della finestra in tutti gli spazi di lavoro o solo in uno"
+
+# Nota: pur essendo il verbo originale "move" come poco sopra, è stato scelto di
+# usare "Muovi" per l'azione "clic e trascina sulla barra del titolo" e
+# "Sposta" per questa azione
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Sposta la finestra sullo spazio di lavoro 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Sposta la finestra sullo spazio di lavoro 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Sposta la finestra sullo spazio di lavoro 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Sposta la finestra sullo spazio di lavoro 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Sposta la finestra sullo spazio di lavoro 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Sposta la finestra sullo spazio di lavoro 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Sposta la finestra sullo spazio di lavoro 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Sposta la finestra sullo spazio di lavoro 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Sposta la finestra sullo spazio di lavoro 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Sposta la finestra sullo spazio di lavoro 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Sposta la finestra sullo spazio di lavoro 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Sposta la finestra sullo spazio di lavoro 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Sposta la finestra sullo spazio di lavoro a sinistra"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Sposta la finestra sullo spazio di lavoro a destra"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Sposta la finestra sullo spazio di lavoro in alto"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Sposta la finestra sullo spazio di lavoro in basso"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Solleva la finestra se è coperta da un'altra finestra, in caso contrario "
+"l'abbassa"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Solleva la finestra sopra le altre finestre"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Abbassa la finestra sotto le altre"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Massimizza verticalmente la finestra"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Massimizza orizzontalmente la finestra"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Muovi la finestra nell'angolo nord-ovest (sinistra in alto)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Muovi la finestra nell'angolo nord-est (destra in alto)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Muovi la finestra nell'angolo sud-ovest (sinistra in basso)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Muovi la finestra nell'angolo sud-est (destra in basso)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Muovi la finestra sul lato nord (in alto) dello schermo"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Muovi la finestra sul lato sud (in basso) dello schermo"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Muovi la finestra sul lato est (desta) dello schermo"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Muovi la finestra sul lato ovest (sinistra) dello schermo"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Muovi la finestra al centro dello schermo"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Non implementato) La navigazione funziona a livello applicazione, non a "
+"livello finestra"
+
+# MATE-2-26
+# allungata un po' rispetto all'originale
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Una stringa di descrizione del tipo di carattere che descrive un tipo di "
+"carattere per la barra del titolo della finestra. La dimensione specificata "
+"nella descrizione è usata solo se l'opzione \"titlebar_font_size\" è "
+"impostata a 0. Inoltre, questa opzione è disabilitata se l'opzione "
+"\"titlebar_uses_desktop_font\" è impostata a VERO."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Azione per doppio-clic su barra del titolo"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Azione per clic-centrale su barra del titolo"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Azione per clic-destro su barra del titolo"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Disposizione pulsanti su barra del titolo"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Disposizione dei pulsanti sulla barra del titolo. Il valore deve essere una "
+"stringa, tipo \"menu:minimize,maximize,spacer,close\". I due punti separano "
+"l'angolo sinistro della finestra dal destro, i nomi dei pulsanti sono "
+"separati da virgole. Non sono ammessi pulsanti duplicati. I nomi di pulsanti "
+"sconosciuti sono ignorati in silenzio in modo da poter aggiungere nuovi "
+"pulsanti nelle versioni future di marco, senza precludere la "
+"compatibilità con le versioni più vecchie. Un tag speciale \"spacer\" può "
+"essere usato per inserire dello spazio tra due pulsanti adiacenti."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Solleva automaticamente la finestra col focus"
+
+# Mi sa che l'originale è sbagliato aperto un bug
+#: ../src/marco.schemas.in.in.h:9
+#| msgid ""
+#| "Clicking a window while holding down this modifier key will move the "
+#| "window (left click), resize the window (middle click), or show the window "
+#| "menu (right click). The left and right operations may be swapped using "
+#| "the \"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" "
+#| "or \"&lt;Super&gt;\" for example."
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr "Facendo clic su una finestra mentre viene tenuto premuto questo tasto modificatore è possibile muovere la finestra (clic sinistro), ridimensionare la finestra (clic centrale) o visualizzare il menù finestra (clic destro). Le operazioni con il clic centrale e destro possono essere invertite usando la chiave \"resize_with_right_button\". Il modificatore è espresso come \"&lt;Alt&gt;\" o \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Comandi da eseguire in risposta alle associazioni di tasti"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Manager di composizione"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Controlla come le nuove finestre ottengono il focus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Tema corrente"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Ritardo in millisecondi per l'opzione sollevamento automatico"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determina se Marco opera come un manager di composizione."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determina se le applicazioni o il sistema possono generare dei bip udibili; "
+"può essere usato in congiunzione con \"visual_bell\" per consentire dei bip "
+"silenziosi."
+
+# inadeguate: see http://catb.org/jargon/html/M/misfeature.html
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Disabilita le funzioni inadeguate richieste da applicazioni vecchie o non "
+"funzionanti"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Abilita campanella visiva"
+
+# enter messo in modo un po' libero
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Se impostata a VERO e la modalità di focus è \"sloppy\" o \"mouse\", allora "
+"la finestra con il focus è sollevata automaticamente dopo un ritardo "
+"specificato nella chiave \"auto_raise_delay\". Ciò non ha relazioni con il "
+"fare clic su una finestra per sollevarla, né con il passare sopra una "
+"finestra durante un'operazione di trascinamento."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Se impostata a VERO, l'opzione \"titlebar_font\" è ignorata e per i titoli "
+"delle finestre viene usato il tipo di carattere predefinito per le "
+"applicazioni."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Se impostata a VERO, marco fornisce all'utente un minore riscontro usando "
+"wireframe, evitando le animazioni e altro. Questo comporta una significativa "
+"riduzione in termini di facilità d'uso per molti utenti, ma potrebbe "
+"consentire ad applicazioni legacy di continuare a funzionare, così come "
+"potrebbe essere un buon compromesso per i terminal server. Comunque, la "
+"funzionalità wireframe è disabilitata quando l'accessibilità è in funzione."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Se impostata a VERO, Marco funziona in termini di applicazioni invece che "
+"di finestre. Il concetto è un po' astratto, ma in generale una "
+"configurazione basata sulle applicazioni è più simile al Mac che a Windows. "
+"Quando si da il focus a una finestra nella modalità basata sulle "
+"applicazioni, tutte le finestre dell'applicazione vengono sollevate. Inoltre "
+"in questa modalità i clic per l'assegnazione del focus non vengono passati "
+"attraverso le finestre verso altre applicazioni. Al momento però, la "
+"modalità in base alle applicazioni è ampliamente non implementata."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Se impostata a VERO, riduce l'usabilità per un minor uso di risorse"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Modificatore da utilizzare per le azioni sulle finestre con i pulsanti del "
+"mouse"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nome dello spazio di lavoro"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Numero di spazi di lavoro"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Numero degli spazi di lavoro. Deve essere maggiore di zero e presenta un "
+"limite massimo prefissato per evitare di rendere l'ambiente grafico "
+"inutilizzabile qualora si richiedano accidentalmente troppi spazi di lavoro."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Esegui un comando stabilito"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Impostare questa opzione a VERO per ridimensionare con il pulsante destro e "
+"mostrare un menù con il pulsante centrale mentre si tiene premuto il tasto "
+"indicato in \"mouse_button_modifier\": impostare a FALSO per farli "
+"funzionare nel modo opposto."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Impostando questa opzione a FALSO può condurre a comportamenti inadeguati, "
+"perciò è fortemente sconsigliato cambiare il valore VERO predefinito. Molte "
+"azioni (per esempio fare clic nell'area client, muovere o ridimensionare la "
+"finestra) hanno come effetto collaterale quello di sollevale la finestra. "
+"Impostando questa opzione a FALSO, cosa fortemente sconsigliata, verrà "
+"disaccoppiato il sollevamento dalle altre azioni utente e verranno ignorate "
+"le richieste di sollevamento generate delle applicazioni. Consultare http://"
+"bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Anche quando questa opzione è "
+"FALSO, le finestre possono ancora essere sollevate da un clic+Alt_sinistro "
+"in un punto qualsiasi della finestra, da un clic normale sulle decorazioni "
+"delle finestre, o da speciali messaggi dai pager, come una richiesta di "
+"attivazione dall'applet Elenco finestre. Questa opzione è attualmente "
+"disabilitata nella modalità clic-per-focus. Notare che l'elenco di modalità "
+"di sollevamento delle finestre quando la chiave \"raise_on_click\" è FALSO "
+"non include le richieste programmatiche da parte delle applicazioni. Se "
+"siete gli sviluppatori di un'applicazione e qualche utente si lamenta che la "
+"vostra applicazione non funziona con questa impostazione disabilitata, fate "
+"loro notare che è un _loro_ difetto causato dall'aver rovinato il loro "
+"window manager e che dovrebbero riportare il valore di questa opzione a VERO "
+"oppure convivere con il \"bug\" che hanno richiesto."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Alcune applicazioni non rispettano le specifiche a tal punto da avere come "
+"risultato funzionalità inadeguate nel window manager. Questa opzione pone "
+"Marco in una modalità rigorosamente corretta, che fornisce una "
+"interfaccia utente più coerente, a meno che non si debba eseguire una "
+"qualche applicazione mal funzionante."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Campanella di sistema udibile"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Indica a Marco come implementare l'indicazione visiva che la campanella "
+"di sistema o un altro indicatore \"campanella\" di applicazione sta "
+"suonando. Al momento sono ammessi due valori: \"fullscreen\", che causa un "
+"lampeggio bianco-nero a schermo intero, e \"frame_flash\", che causa il "
+"lampeggio della barra del titolo dell'applicazione che ha inviato il segnale "
+"della campanella. Se l'applicazione che ha inviato la campanella è "
+"sconosciuta (come accade di solito nel caso della campanella di sistema), il "
+"lampeggio avviene sulla finestra che al momento ha il focus."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Le chiavi /apps/marco/global_keybindings/run_command_N definiscono le "
+"associazioni di tasti che corrispondono a questi comandi. Premendo "
+"l'associazione di tasti per la chiave \"run_command_N\", viene eseguito il "
+"comando della chiave \"command_N\"."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"La chiave /apps/marco/global_keybindings/run_command_screenshot definisce "
+"una associazione di tasti che causa l'invocazione del comando specificato da "
+"questa impostazione."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"La chiave /apps/marco/global_keybindings/run_command_window_screenshot "
+"definisce una associazione di tasti che causa l'invocazione del comando "
+"specificato da questa impostazione."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"L'associazione di tasti che esegue il comando con numero corrispondente in /"
+"apps/marco/keybinding_commands. Il formato è \"&lt;Control$gt;a\" oppure "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". È consentito l'utilizzo di lettere "
+"maiuscole, minuscole e anche di abbreviazioni tipo \"&lt;Ctl&gt;\" o \"&lt;"
+"Ctrl&gt;\". Se l'opzione è impostata alla stringa speciale \"disabled\", "
+"allora non c'è alcuna associazione di tasti per questa azione."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Il nome di uno spazio di lavoro."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Il comando per schermate"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Il tema determina l'aspetto dei bordi delle finestre, della barra del titolo "
+"e così via."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"L'intervallo di tempo in millisecondi prima che la finestra venga sollevata "
+"quando auto_raise è impostato a VERO."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"La modalità di focus delle finestre indica come vengono attivate le "
+"finestre. I possibili valori sono tre: \"click\" indica che è necessario "
+"fare clic sulle finestre al fine di dare loro il focus, \"sloppy\" indica "
+"che le finestre ottengono il focus quando il puntatore entra nella loro "
+"area, \"mouse\" indica che le finestre ottengono il focus quando il "
+"puntatore entra nella loro area e lo perdono quando abbandona tale area."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Il comando per schermate di finestre"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Questa opzione determina gli effetti del doppio-clic sulla barra del titolo. "
+"Le opzioni attualmente valide sono \"toggle_shade\" per arrotolare/srotolare "
+"la finestra, \"toggle_maximize\" per massimizzare/demassimizzare la "
+"finestra, \"toggle_maximize_horizontally\" e \"toggle_maximize_vertically\" "
+"per massimizzare/demassimizzare la finestra solo in una prefissata "
+"direzione, \"minimize\" per minimizzare la finestra, \"shade\" per "
+"arrotolare la finestra, \"menu\" per mostrare il menù finestra, \"lower\" "
+"per collocare la finestra sotto tutte le altre e \"none\" per non compiere "
+"alcuna azione."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Questa opzione determina gli effetti del clic-centrale sulla barra del "
+"titolo. Le opzioni attualmente valide sono \"toggle_shade\" per arrotolare/"
+"srotolare la finestra, \"toggle_maximize\" per massimizzare/demassimizzare "
+"la finestra, \"toggle_maximize_horizontally\" e \"toggle_maximize_vertically"
+"\" per massimizzare/demassimizzare la finestra solo in una prefissata "
+"direzione, \"minimize\" per minimizzare la finestra, \"shade\" per "
+"arrotolare la finestra, \"menu\" per mostrare il menù finestra, \"lower\" "
+"per collocare la finestra sotto tutte le altre e \"none\" per non compiere "
+"alcuna azione."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Questa opzione determina gli effetti del clic-destro sulla barra del titolo. "
+"Le opzioni attualmente valide sono \"toggle_shade\" per arrotolare/srotolare "
+"la finestra, \"toggle_maximize\" per massimizzare/demassimizzare la "
+"finestra, \"toggle_maximize_horizontally\" e \"toggle_maximize_vertically\" "
+"per massimizzare/demassimizzare la finestra solo in una prefissata "
+"direzione, \"minimize\" per minimizzare la finestra, \"shade\" per "
+"arrotolare la finestra, \"menu\" per mostrare il menù finestra, \"lower\" "
+"per collocare la finestra sotto tutte le altre e \"none\" per non compiere "
+"alcuna azione."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Questa opzione fornisce un controllo aggiuntivo sul modo in cui le finestre "
+"appena create ottengono il focus. Sono ammessi due valori: \"smart\" per "
+"applicare la normale modalità di focus dell'utente e \"strict\" per non dare "
+"il focus a finestre avviate da un terminale."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Attiva un'indicazione visiva quando un'applicazione o il sistema emette un "
+"\"bip\" o \"suona una campanella\"; utile per chi ha problemi d'udito o per "
+"l'uso in ambienti rumorosi."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Usare il carattere di sistema nei titoli delle finestre"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Tipo campanella visiva"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Indica se sollevare la finestra è un effetto secondario di altre interazioni "
+"utente"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Indica se ridimensionare con il pulsante destro"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Modalità di focus delle finestre"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Carattere per il titolo della finestra"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Uso: %s\n"
+
+# Questo e i successivi simili sono tooltip
+# per i pulsanti della cornice.
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Chiude la finestra"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menù finestra"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimizza la finestra"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Massimizza la finestra"
+
+# ==demassimizza
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Ripristina la finestra"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Arrotola la finestra"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Srotola la finestra"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Tiene la finestra in primo piano"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Rimuove la finestra dalla primo piano"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Sempre sullo spazio di lavoro visibile"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Pone la finestra su un solo spazio di lavoro"
+
+# mantenere in sync con libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Minimizza"
+
+# mantenere in sync con libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ssimizza"
+
+# mantenere in sync con libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Dema_ssimizza"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Arr_otola"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Sr_otola"
+
+# mantenere in sync con libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "M_uovi"
+
+# mantenere in sync con libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Ridimensiona"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Muovi barra del titolo su _schermo"
+
+# mantenere in sync con libwnck
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Sempre in _primo piano"
+
+# mantenere in sync con libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Sempre su spazio di lavoro _visibile"
+
+# mantenere in sync con libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Solo su _questo spazio di lavoro"
+
+# mantenere in sync con libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Sposta su spazio di lavoro a s_inistra"
+
+# mantenere in sync con libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Sposta su spazio di lavoro a d_estra"
+
+# mantenere in sync con libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Sposta su spazio di lavoro in alt_o"
+
+# mantenere in sync con libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Sposta su spazio di lavoro in _basso"
+
+# mantenere in sync con libwnck
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Chiudi"
+
+# mantenere in sync con libwnck
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Spazio di lavoro %d%n"
+
+# mantenere in sync con libwnck
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Spazio di lavoro 1_0"
+
+# mantenere in sync con libwnck
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Spazio di lavoro %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Sposta su _altro spazio di lavoro"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Maiusc"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d × %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "alto"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "basso"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "sinistra"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "destra"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "la geometria della cornice non specifica la dimensione «%s»"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"la geometria della cornice non specifica la dimensione «%s» per il bordo «%s»"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Le proporzioni %g del pulsante non sono ragionevoli"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "La geometria della cornice non specifica la dimensione dei pulsanti"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "I gradienti dovrebbero avere almeno due colori"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"La specificazione del colore GTK deve avere lo stato fra parentesi, per es. "
+"gtk:fg[NORMAL] dove NORMAL è lo stato; impossibile analizzare \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"La specificazione del colore GTK deve avere una parentesi di chiusura dopo "
+"lo stato, per es. gtk:fg[NORMAL] dove NORMAL è lo stato; impossibile "
+"analizzare \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "State «%s» incomprensibile nella specificazione del colore"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+"Componente di colore «%s» incomprensibile nella specificazione del colore"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Il formato della sfumature è «blend/bg_color/fg_color/alpha», «%s» non è "
+"adatto a tale formato"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Impossibile analizzare il valore alpha «%s» nel colore sfumato"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Il valore alpha «%s» nel colore sfumato non è compreso tra 0.0 e 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Il formato dell'ombreggiatura è «shade/base_color/factor», «%s» non è adatto a "
+"tale formato"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+"Impossibile analizzare il fattore di ombreggiatura «%s» nel colore ombreggiato"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Il fattore di ombreggiatura «%s» nel colore ombreggiato è negativo"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Impossibile analizzare il colore «%s»"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+"L'espressione delle coordinate contiene il carattere «%s» che non è consentito"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"L'espressione delle coordinate contiene il numero in virgola mobile «%s» che "
+"non può essere analizzato"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"L'espressione delle coordinate contiene l'intero «%s» che non può essere "
+"analizzato"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"L'espressione delle coordinate contiene un operatore sconosciuto all'inizio "
+"di questo testo: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "L'espressione delle coordinate è vuota o incomprensibile"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+"L'espressione delle coordinate ha come risultato una divisione per zero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"L'espressione delle coordinate tenta di usare un operatore mod su un numero "
+"in virgola mobile"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"L'espressione delle coordinate ha un operatore «%s» dove è atteso un operando"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"L'espressione delle coordinate ha un operando dove è atteso un operatore"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"L'espressione delle coordinate finisce con un operatore invece che un "
+"operando"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"L'espressione delle coordinate ha l'operatore «%c» seguito dall'operatore «%c» "
+"senza un operando fra i due"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"L'espressione delle coordinate ha la variabile o la costante «%s» sconosciuta"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+"L'analizzatore dell'espressione delle coordinate ha superato il proprio "
+"buffer."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"L'espressione delle coordinate ha una parentesi di chiusura senza la "
+"relativa di apertura"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"L'espressione delle coordinate ha una parentesi di apertura senza la "
+"relativa di chiusura"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"L'espressione delle coordinate non sembra avere né operatori né operandi"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Il tema contiene un'espressione che ha come risultato un errore: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"È necessario specificare <button function=\"%s\" state=\"%s\" draw_ops="
+"\"whatever\"/> per questo stile di cornice"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Risulta mancante <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style="
+"\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Caricamento del tema «%s» non riuscito: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nessun <%s> impostato per il tema «%s»"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Nessuno stile di cornice impostato per il tipo di finestra «%s» nel tema «%s», "
+"aggiungere un elemento <window type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Le costanti definite dall'utente devono iniziare con una lettera maiuscola, «%"
+"s» non lo fa"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "La costante «%s» è già definita"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Nessun attributo «%s» nell'elemento <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Riga %d carattere %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "L'attributo «%s» è ripetuto due volte nello stesso elemento <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "L'attributo «%s» non è valido nell'elemento <%s> in questo contesto"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Impossibile analizzare «%s» come un intero"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Non sono stati compresi i caratteri di chiusura «%s» nella stringa «%s»"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "L'intero %ld deve essere positivo"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "L'intero %ld è troppo grande, il massimo corrente è %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Impossibile analizzare «%s» come numero in virgola mobile"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "I valori booleani devono essere «true» o «false», non «%s»"
+
+# cambiato il finale, ma se è errore, vuol dire che %g è sbagliato..
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "L'angolo deve essere tra 0.0 e 360.0, non %g\n"
+
+# come sopra
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Alpha deve essere tra 0.0 (trasparente) e 1.0 (opaco), non %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Taglia del titolo «%s» non valida (deve essere xx-small, x-small, small, "
+"medium,large, x-large, o xx-large)\n"
+
+# element_name, name
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "Nome «%2$s» di <%1$s> usato una seconda volta"
+
+# element_name, parent
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Il genitore «%2$s» di <%1$s> non è stato definito"
+
+# element_name, geometry
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "La geometria «%2$s» di <%1$s> non è stata definita"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> deve specificare una geometria o un genitore che ha una geometria"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+"È necessario specificare uno sfondo per un valore alpha affinché sia "
+"significativo"
+
+# in base al successivo, type dovrebbe essere parola chiave....
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "type «%s» sconosciuto nell'elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set «%s» sconosciuto nell'elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+"Al tipo di finestra «%s» è stata già assegnata una impostazione di stile"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "L'elemento <%s> non è consentito all'interno di <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Non è possibile specificare sia \"button_width\"/\"button_height\" che "
+"\"aspect_ratio\" per i pulsanti"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "La distanza «%s» è sconosciuta"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Le proporzioni «%s» sono sconosciute"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Il bordo «%s» è sconosciuto"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Nessun attributo «start_angle» o «from» nell'elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Nessun attributo «extent_angle» o «to» nell'elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Valore «%s» incomprensibile per il tipo di gradiente"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Tipo di riempimento «%s» incomprensibile per l'elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Stato «%s» incomprensibile per l'elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Ombra «%s» incomprensibile per l'elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Freccia «%s» incomprensibile per l'elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Non è stato definito alcun <draw_ops> di nome «%s»"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+"Includendo draw_ops «%s» qui si potrebbe creare un riferimento circolare"
+
+# piece dovrebbe essere parola chiave
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Posizione «%s» sconosciuta per il piece di cornice"
+
+# piece dovrebbe essere parola chiave
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Lo stile della cornice ha già una piece alla posizione %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Non è stato definito alcun <draw_ops> con il nome «%s»"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Funzione «%s» sconosciuta per il pulsante"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"La funzione di pulsante «%s» non esiste in questa versione (%d, necessaria %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Stato «%s» sconosciuto per il pulsate"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Lo stile della cornice ha già un pulsante per la funzione %s stato %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "«%s» non è un valore valido per l'attributo focus"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "«%s» non è un valore valido per l'attributo state"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Uno stile chiamato «%s» non è stato definito"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "«%s» non è un valore valido per l'attributo resize"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Non si dovrebbe avere l'attributo «resize» nell'elemento <%s> per gli stati "
+"maximized/shaded"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Non si dovrebbe avere l'attributo «resize» nell'elemento <%s> per gli stati "
+"maximized"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Lo stile è stato già specificato per lo stato %s resize %s focus %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Lo stile è stato già specificato per lo stato %s focus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossibile avere due draw_ops per un elemento <piece> (il tema ha "
+"specificato un attributo draw_ops e anche un elemento <draw_ops>, o ha "
+"specificato due elementi)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossibile avere due draw_ops per un elemento <button> (il tema ha "
+"specificato un attributo draw_ops e anche un elemento <draw_ops>, o ha "
+"specificato due elementi)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossibile avere due draw_ops per un elemento <menu_icon> (il tema ha "
+"specificato un attributo draw_ops e anche un elemento <draw_ops>, o ha "
+"specificato due elementi)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "L'elemento più esterno nel tema deve essere <marco_theme> not <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"L'elemento <%s> non è consentito all'interno di un elemento name/author/date/"
+"description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "L'elemento <%s> non è consentito all'interno di un elemento <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"L'elemento <%s> non è consentito all'interno di un elemento distance/border/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+"L'elemento <%s> non è consentito all'interno di un elemento relativo "
+"un'operazione di disegno"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "L'elemento <%s> non è consentito all'interno di un elemento <%s>"
+
+# piece dovrebbe essere parola chiave
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Nessun draw_ops fornito per il piece di cornice"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Nessun draw_ops fornito per il pulsante"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Il testo non è consentito all'interno dell'elemento <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> specificato due volte per questo tema"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Ricerca di un file valido per il tema «%s» non riuscita\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Il file di tema «%s» non contiene un elemento radice <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Finestre"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Finestre/staccatore"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Finestre/_Dialogo"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Finestre/Dialogo _modale"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Finestre/_Utilità"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Finestre/_Schermata d'avvio"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Finestre/Dock superi_ore"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Finestre/Dock in_feriore"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Finestre/Dock _sinistro"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Finestre/Dock _destro"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Finestre/Tutti i doc_k"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Finestre/D_esktop"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Questo è un messaggio d'esempio in una finestra di dialogo d'esempio"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Voce di menu finta n.%d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Finestra solo-bordo"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Barra"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Finestra applicazione normale"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Casella di dialogo"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Casella di dialogo modale"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Tavolozza di utilità"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menù staccato"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Bordo"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test n.%d disposizione pulsanti"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g millisecondi per disegnare una cornice di finestra"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Uso: marco-theme-viewer [NOME_TEMA]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Errore nel caricare il tema: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tema «%s» caricato in %g secondi\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Carattere titolo normale"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Carattere titolo piccolo"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Carattere titolo grande"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Disposizione pulsanti"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Prestazioni"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Qui va il titolo della finestra"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Disegnate %d cornici in %g secondi lato client (%g millisecondi per cornice) "
+"e %g secondi di wall clock time, incluse le risorse del server X (%g "
+"millisecondi per cornice)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "test espressione posizione ha restituito TRUE, ma impostato errore"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"test espressione posizione ha restituito FALSE, ma non ha impostato errore"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Errore atteso, ma non fornito"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Atteso errore %d, ma fornito %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Errore non atteso, ma è stato restituito: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "valore x era %d, era atteso %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "valore y era %d, era atteso %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d espressioni di coordinate analizzate in %g secondi (%g secondi in media)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Apre un'altra di queste finestre"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Questo è un pulsante di prova con un'icona «Apri»"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Questo è un pulsante di prova con un'icona «Esci»"
diff --git a/po/ja.po b/po/ja.po
new file mode 100644
index 00000000..dba1931b
--- /dev/null
+++ b/po/ja.po
@@ -0,0 +1,3684 @@
+# marco ja.po.
+# Copyright (C) 2002-2010 Free Software Foundation, Inc.
+# Akira TAGOH <[email protected]>, 2002.
+# KAMAGASAKO Masatoshi <[email protected]>, 2003.
+# Takeshi AIHANA <[email protected]>, 2003-2008.
+# Yukihiro Nakai <[email protected]>, 2003.
+# Satoru SATOH <[email protected]>, 2006.
+# Takayuki KUSANO <[email protected]>, 2009-2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco master\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-08-17 12:37+0000\n"
+"PO-Revision-Date: 2010-09-14 01:22+0900\n"
+"Last-Translator: Takayuki KUSANO <[email protected]>\n"
+"Language-Team: Japanese <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "デスクトップ"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "ウィンドウの管理"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "ベル・イベント"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "ウィンドウ情報の要求が不明です: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> から応答がありません。"
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"応答があるまで少し待つか、または強制的にアプリケーションを終了するか選択して"
+"ください。"
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "待機する(_W)"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "強制終了する(_F)"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "ホスト名の取得に失敗しました: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "ウィンドウの合成に必要な %s という拡張モジュールが存在しません"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Xウィンドウ・システムのディスプレイ '%s' のオープンに失敗しました\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"ディスプレイ '%s' への接続が切れました。\n"
+"おそらくXサーバがシャットダウンしたか、\n"
+"ウィンドウ・マネージャが強制終了/破棄されたようです。\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "致命的なIOエラー %d (%s) - ディスプレイ '%s' が発生しました。\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"既にバインディングとして別のプログラムでキー %s (修飾キー %x) を使っていま"
+"す\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> が動作中にエラーがありました:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "コマンド %d は定義されていません。\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "端末を起動するコマンドが定義されていません。\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., とその他の貢献者\n"
+"これはフリーソフトウェアです; 複製する際の条件はソース・ファイルを参照してく"
+"ださい。\n"
+"このソフトウェアは無保証です; 商用や特定目的への適用についても保証しませ"
+"ん。\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "セッション・マネージャに接続しない"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "実行中のウィンドウ・マネージャを Marco で置き換える"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "セッション管理 ID を指定する"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "使用するXディスプレイを指定する"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "保存ファイルからセッションを初期化する"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "バージョンを表示する"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Xの呼び出しを同期する"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "合成マネージャをオン"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "合成マネージャをオフ"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "最大化されて、装飾のない全画面のウィンドウを作成しない"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "テーマ・フォルダのスキャンに失敗しました: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"テーマが見つかりませんでした! %s の存在と通常のテーマが含まれていることを確認"
+"してください。\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "再起動に失敗しました: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf の '%s' キーには無効な値が格納されています\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "MateConf の %2$s キーの値 %1$d は %3$d〜%4$d の範囲内にありません\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf の \"%s\" キーには無効な型が格納されています\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"仕様に準拠していないアプリケーションに対する次善策は無効になっています。一部"
+"のアプリケーションは正常に動作しない可能性があります\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "MateConf の %2$s キーからフォント名 \"%1$s\" を解析できませんでした\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"MateConf の \"%s\" はマウス・ボタンの修飾キーとして妥当な値ではありません\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "ワークスペース数を %d に設定中にエラーが発生しました: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "ワークスペース %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"設定データベースで発見した \"%s\" はキーバインド \"%s\" に有効な値ではありま"
+"せん\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+"ワークスペース %d の名前を \"%s\" に設定するときにエラーが発生しました: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "合成器の状態を設定するときにエラーが発生しました: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "ディスプレイ '%2$s' 上のスクリーン %1$d は無効です\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"ディスプレイ \"%2$s\" 上のスクリーン %1$d はすでにウィンドウマネージャを持っ"
+"ています; 現在のウィンドウマネージャを上書きするために--replace オプションの"
+"使用を試してください。\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"ディスプレイ \"%2$s\" 上のスクリーン %1$d でウィンドウマネージャの選択を取得"
+"できませんでした\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+"ディスプレイ \"%2$s\" 上のスクリーン %1$d はすでにウィンドウマネージャを持っ"
+"ています\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "ディスプレイ \"%2$s\" 上のスクリーン %1$d を解放できませんでした\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"フォーマットは \"<Control>a\" あるいは \"<Shift><Alt>F1\" のようにします。\n"
+"\n"
+"パーサはとてもに寛容で大文字や小文字を許可します。そして \"<Ctl>\" や "
+"\"<Ctrl>\" のような省略もできます。もし特別な文字 \"disabled\" をオプションに"
+"設定した場合は、この動作のキーバインドはなくなります。"
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"フォーマットは \"<Control>a\" あるいは \"<Shift><Alt>F1\" のようにします。\n"
+"\n"
+"パーサはとてもに寛容で大文字や小文字を許可します。そして \"<Ctl>\" や "
+"\"<Ctrl>\" のような省略もできます。もし特別な文字 \"disabled\" をオプションに"
+"設定した場合は、この動作のキーバインドはなくなります。\n"
+"\n"
+"このキーバインドは \"Shift\" キーを押しっぱなしにすることで反転できます。その"
+"ため、\"Shift\" は使用できないキーです。"
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "ディレクトリ '%s' を作成できませんでした : %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ""
+"書き込みのためのセッションファイル '%s' をオープンできませんでした: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "セッションファイル '%s' を書き込み中にエラーが発生しました: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "セッションファイル '%s' のクローズ中にエラーが発生しました: %s\n"
+
+#: ../src/core/session.c:1143
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "保存されたセッションファイルの解析に失敗しました: %s\n"
+
+#: ../src/core/session.c:1192
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"<marco_session> 属性は見られますが、すでにセッションIDを持っています"
+
+#: ../src/core/session.c:1205 ../src/core/session.c:1280
+#: ../src/core/session.c:1312 ../src/core/session.c:1384
+#: ../src/core/session.c:1444
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "<%2$s> エレメントに不明な属性 %1$s があります"
+
+#: ../src/core/session.c:1222
+#, c-format
+msgid "nested <window> tag"
+msgstr "<window> タグがネストされています"
+
+#: ../src/core/session.c:1464
+#, c-format
+msgid "Unknown element %s"
+msgstr "不明なエレメント %s があります"
+
+#: ../src/core/session.c:1816
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"これらのウィンドウは \"現在の設定を保存する\" 機能をサポートしません。次回ロ"
+"グインする時に手動で再起動してください。"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "デバッグ・ログのオープンに失敗しました: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "ログ・ファイル %s の fdopen() に失敗しました: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "ログ・ファイル %s をオープンしました\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "この marco は詳細ログ・モードをサポートしていません\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "ウィンドウ・マネージャ: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "ウィンドウ・マネージャのバグ: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "ウィンドウ・マネージャの警告: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "ウィンドウ・マネージャのエラー: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5660
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"ウィンドウ %s は ICCCM で指定されてたような WM_CLIENT_LEADER ウィンドウの代わ"
+"りに自分自身で SM_CLIENT_ID を設定しています\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6225
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"ウィンドウ %s はリサイズ可能ではない MWM ヒント指示を設定していますが、最小サ"
+"イズ %d x %d と最大サイズ %d x %dも設定しています。これはあまり意味がありませ"
+"ん\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "アプリケーションが間違った _NET_WM_PID %lu を設定しました\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (スーパーユーザで)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s で)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (他のユーザで)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+"%2$s で指定したウィンドウ 0x%1$lx の WM_TRANSIENT_FOR が間違っています\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"ウィンドウ 0x%1$lx には type %5$s format %6$d n_items %7$d のプロパティ\n"
+"%2$s が指定されていますが、実際には type %3$s format %4$d であることを\n"
+"期待されています。これは、ほとんどの場合、アプリケーションのバグであり、\n"
+"ウィンドウマネージャのバグではありません。\n"
+"ウィンドウの属性は title=\"%8$s\" class=\"%9$s\" name=\"%10$s\"です。\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "ウィンドウ 0x%2$lx 上のプロパティ %1$s は無効なUTF-8を含んでいました\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"ウィンドウ 0x%2$lx 上のプロパティ %1$s はリスト内のアイテム %3$d で無効な "
+"UTF-8を含んでいました\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "ワークスペース 1 へ切り替える"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "ワークスペース 2 へ切り替える"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "ワークスペース 3 へ切り替える"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "ワークスペース 4 へ切り替える"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "ワークスペース 5 へ切り替える"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "ワークスペース 6 へ切り替える"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "ワークスペース 7 へ切り替える"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "ワークスペース 8 へ切り替える"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "ワークスペース 9 へ切り替える"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "ワークスペース 10 へ切り替える"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "ワークスペース 11 へ切り替える"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "ワークスペース 12 へ切り替える"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "左側のワークスペースへ切り替える"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "右側のワークスペースへ切り替える"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "上側のワークスペースへ切り替える"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "下側のワークスペースへ切り替える"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr ""
+"ポップアップ・ウインドウを利用してアプリケーションのウィンドウの間を移動する"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"ポップアップ・ウインドウを利用して後方のアプリケーションのウィンドウへ移動す"
+"る"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "ポップアップ・ウィンドウを利用して、ウィンドウ間を移動する"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "ポップアップ・ウインドウを利用して後方のウィンドウへ移動する"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "ポップアップ・ウィンドウを使ってパネルとデスクトップの間を移動する"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"ポップアップ・ウィンドウを使ってパネルとデスクトップの間を後方に移動する"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "アプリケーションが持つ複数のウィンドウの間をすばやく移動する"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "アプリケーションが持つ複数のウィンドウの間を後方にすばやく移動する"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "ウィンドウ間のフォーカスを切り替える"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "ウィンドウ間を後方にすばやく移動する"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "パネルとデスクトップとのフォーカスを切り替える"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "後方のパネルとデスクトップとの間を切り替える"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "すべての通常のウィンドウを隠してデスクトップにフォーカスを移す"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "パネルのメイン・メニューを表示する"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "パネルの「アプリケーションの実行」ダイアログ・ボックスを表示する"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "スクリーンショットを撮る"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "ウィンドウのスクリーンショットを撮る"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "端末の起動"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "ウィンドウ・メニューをアクティブにする"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "フル・スクリーン表示を切り替える"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "最大化/最小化の状態を切り替える"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "ウィンドウを常に他のウィンドウの上に表示するかどうかを切り替える"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "ウィンドウを最大化する"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "ウィンドウを戻す"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "シェードの状態を切り替える"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "ウィンドウを最小化する"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "ウィンドウを閉じる"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "ウィンドウを移動する"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "ウィンドウ・サイズを変更する"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "ウィンドウを常にすべてのワークスペースに配置するかどうかを切り替える"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "ウィンドウをワークスペース 1 へ移動する"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "ウィンドウをワークスペース 2 へ移動する"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "ウィンドウをワークスペース 3 へ移動する"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "ウィンドウをワークスペース 4 へ移動する"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "ウィンドウをワークスペース 5 へ移動する"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "ウィンドウをワークスペース 6 へ移動する"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "ウィンドウをワークスペース 7 へ移動する"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "ウィンドウをワークスペース 8 へ移動する"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "ウィンドウをワークスペース 9 へ移動する"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "ウィンドウをワークスペース 10 へ移動する"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "ウィンドウをワークスペース 11 へ移動する"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "ウィンドウをワークスペース 12 へ移動する"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "ウィンドウを左側のワークスペースへ移動する"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "ウィンドウを右側のワークスペースへ移動する"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "ウィンドウを上側のワークスペースへ移動する"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "ウィンドウを下側のワークスペースへ移動する"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"ウィンドウが他のウィンドウに隠れていれば前面に出し、さもなくば下にします"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "ウィンドウを前面に出す"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "ウィンドウを一番奥に移動する"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "ウィンドウを垂直方向に最大化する"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "ウィンドウを水平方向に最大化する"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "ウィンドウを北西 (左側の上) へ移動する"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "ウィンドウを北東 (右側の上) へ移動する"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "ウィンドウを南西 (左側の下) へ移動する"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "ウィンドウを南東 (右側の下) へ移動する"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "ウィンドウを画面の北 (上側) へ移動する"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "ウィンドウを画面の南 (下側) へ移動する"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "ウィンドウを画面の東 (右側) へ移動する"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "ウィンドウを画面の西 (左側) へ移動する"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "ウィンドウを画面の中央へ移動する"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "ウィンドウを利用しないアプリの動作をナビゲートする条件 (未実装) "
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"ウィンドウのタイトルバーに表示するフォントを記述するフォント記述文字です。た"
+"だし、ここで指定したフォント・サイズが使用されるのは、titlebar_font_size オプ"
+"ションが 0 の場合だけです。また titlebar_uses_desktop_font オプションが TRUE "
+"の場合でも、このオプションは無効になります。"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "タイトル・バーをダブル・クリックした時のアクション"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "タイトル・バーを中クリックした時のアクション"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "タイトル・バーを右クリックした時のアクション"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "タイトルバーのボタンの配置"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"タイトル・バーのボタンの位置を指定します。ここで指定する値は \"menu:minimize,"
+"maximize,spacer,close\" のような文字列にしてください; コロンでウィンドウの右"
+"上隅と左上隅を分割し、ボタン名はコンマで区切ります。ボタンを重複させることは"
+"できません。不明なボタン名は単に無視されるだけなので、marco の将来のバー"
+"ジョンでも利用できます。spacer というタグはボタンとボタンの間に挿入する空白を"
+"意味します。"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "フォーカスされたウィンドウを自動的に上げる"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"この修飾キーを押したままの状態でウィンドウをクリックすると、ウィンドウを移動"
+"させたり (左クリック)、ウィンドウ・サイズを変更したり (中クリック)、ウィンド"
+"ウ・メニューを表示させたり(右クリック)することができます。中クリックと右ク"
+"リックの操作は \"resize_with_right_button\" キーを使えば交換できます。修飾"
+"キーは、例えば、\"&lt;Alt&gt;\" や \"&lt;Super&gt;\" のように表されます。"
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "キーバインドの応答で走らせるコマンド"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "合成マネージャ"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "新しいウィンドウに対するフォーカスの当て方"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "現在使用しているテーマ"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "自動的に前に出すオプションの遅延時間 (ミリ秒)"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Marco が合成マネージャになれるかどうかです。"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"アプリケーションもしくはシステムが聴覚的な 'ビープ' 音を生成できるか決定しま"
+"す; これは、無音の 'ビープ' を許可する '視覚的なベル' と共に用いられます。"
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"古いあるいは仕様に準拠していないアプリケーションが要求する不要な機能を無効に"
+"する"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "視覚的なベルを有効にする"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"この値が TRUE でかつフォーカス・モードが \"sloppy\" または \"mouse\" の場合、"
+"フォーカスを取得したウィンドウは auto_raise_delay キーに指定した時間が経過し"
+"た後に自動的に前面に表示されます。これはウィンドウをクリックして前面に表示す"
+"る場合とは関係はなく、ドラッグ・アンド・ドロップ中にポインタがウィンドウ内に"
+"入った場合とも関係はありません。"
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"この値が True の場合、titlebar_font オプションを無視してウィンドウ・タイトル"
+"に標準的なアプリケーション・フォントを使用します。"
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"この値が TRUE の場合、Marco はワイヤフレームを使ったり、アニメーションをし"
+"なくなったりするなど、ユーザへのフィードバックが少なくなり、\"直感的な操作\" "
+"という点でもその操作性が落ちます。これは多くのユーザにとってユーザビリティの"
+"重大な低下につながりますが、そうしないと操作に困るような旧式のアプリケーショ"
+"ンやターミナル・サーバもうまく使えるようになります。しかしながら、アクセシビ"
+"リティの機能が有効な場合はワイヤフレームの機能は無効になります。"
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"この値が TRUE の場合、Marco の動作はウィンドウではなくアプリケーションに依"
+"存します。この概念はやや抽象的ですが、一般的にアプリケーション固定モードは "
+"Apple の MacOS に近く、Microsoft Windows にはあまり似ていません。アプリケー"
+"ション固定モードでウィンドウがフォーカスされると、アプリケーションのすべての"
+"ウィンドウが手前に表示されます。また、アプリケーション固定モードでは、フォー"
+"カス・クリックが他のアプリケーションのウィンドウに渡されることはありません。"
+"しかしながら、アプリケーション固定モードは現在のところ大部分が未実装です。"
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "ユーザビリティとリソースの省力化がトレードオフ"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "変更したウィンドウ・クリック操作の修飾キー"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "ワークスペースの名前"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "ワークスペースの数"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"ワークスペースの数です。ワークスペースの数を 0にしないでください。そしてたく"
+"さんのワークスペース要求してデスクトップを誤って破損するのを防ぐために、最大"
+"値は固定になっています。"
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "実行するコマンド"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"これを TRUE に設定すると、\"mouse_button_modifier\" で設定したキーを押しなが"
+"ら右のボタンでサイズ変更し、真ん中のボタンでメニューを表示します。"
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+" このオプションを FALSE にするとバグだらけの動作になることがあります。デフォ"
+"ルトの TRUE から変更しないことを強く推奨します。多くの動作 (クライアントの領"
+"域でクリックしたり、ウインドウを移動したり大きさを変更したり、など) におい"
+"て、通常は副作用としてウィンドウが前面に出てきます。このオプションを FALSE に"
+"設定しないことを強く推奨しますが、FALSE にすることによって、他の操作とウィン"
+"ドウを前面に出す動作が分離されます。そして、アプリケーションによってウィンド"
+"ウを前面に出すリクエストが来ても無視されます。http://bugzilla.gnome.org/"
+"show_bug.cgi?id=445447#c6 をご覧ください。このオプションが FALSE であっても、"
+"ウィンドウ中の任意の場所でのALT + 左クリック、ウィンドウの装飾での通常のク"
+"リック、タスクリスト・アプレットからのアクティベーション・リクエストといった"
+"ページャからの特別なメッセージによって前面に出すことができます。このオプショ"
+"ンは click-to-focus モードでは現在、無効になっています。raise_on_click が "
+"FALSE の時にウィンドウを前面に出すこれらの方法には、アプリケーションからウィ"
+"ンドウの前面への移動をプログラム中で要求することは含まれていません。そのよう"
+"な要求は要求の理由を問わず無視されます。もしアプリケーションの開発者であれ"
+"ば、この設定を無効にすることでうまく動作しないとユーザが不満を延べたのであれ"
+"ば、それはウィンドウ・マネージャを壊すように設定した「ユーザの」責任であると"
+"伝え、このオプションを TRUE にすべきと言ってあげてください。あるいは、ユーザ"
+"の要求による「バグ」とつきあって生きていくよう言ってあげてください。"
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"いくつかのアプリケーションではウィンドウ・マネージャの間違った動きや機能の結"
+"果、仕様を無視します。このオプションは Marco を厳格に正しいモードにし、さ"
+"らに一貫したユーザ・インタフェースを提供することで、何かおかしな動きをするア"
+"プリケーションを実行することがないようにします。"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "システム・ベルの聴覚性"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"システムベルや他のアプリケーションの 'ベル' 表示が鳴らされたことを視覚的に通"
+"知する実装の方法を marco に通知します。現在、2つの方法が有効です。"
+"\"fullscree\" は全画面を白黒で点滅させます。\"frame_flas\" はベルのシグナルを"
+"通知したアプリケーションのタイトルバーを点滅させます。どのアプリケーションが"
+"ベルのシグナルを鳴らしたのか分からないとき (デフォルトの \"システムビープ\" "
+"ではよくあるケースです) は、その時点でフォーカスされているウィンドウのタイト"
+"ルバーを点滅させます。"
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/runs_command_N キーは、これらのコマンドに対"
+"応するキーバインドを定義します。run_command_N のキーバインドを押すとcommand_N"
+"が実行されます。"
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/runs_command_screenshot キーは。この設定で"
+"実行するよう指定されたコマンドに対応するキーバインドを定義します。"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/runs_command_window_screenshot キーは、この"
+"設定で実行するよう指定されたコマンドに対応するキーバインドを定義します。"
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"/apps/marco/keybinding_commands に対応する数字のコマンドを実行するキーバイ"
+"ンドを指定します。フォーマットは \"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可します。"
+"そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な"
+"文字 \"disabled\" をオプションに設定した場合は、この動作のキーバインドはなく"
+"なります。"
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "ワークスペースの名前"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "スクリーンショットを撮影するコマンド"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "テーマはウィンドウの境界やタイトルバーなどの外観を決定します。"
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"auto_raiseがtrueに設定されている場合に、ウィンドウを手前に表示するまでの遅延"
+"時間を指定します。この遅延は1000分の1秒単位で指定します"
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"ウィンドウフォーカスモードはウィンドウがどのようにアクティブにされるかを示し"
+"ます。設定可能な値は3つあり、\"click\"はフォーカスするためにクリックする必要"
+"があることを意味します。\"sloppy\"はマウスがウィンドウ内に入る時ウィンドウが"
+"フォーカスされることを意味し、\"mouse\"はマウスがウィンドウ内に入る時にウィン"
+"ドウがフォーカスされ、マウスがウィンドウから出る時にフォーカスが解除されるこ"
+"とを意味します"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "ウィンドウのスクリーンショットを撮影するコマンド"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"このオプションでタイトル・バーをダブル・クリックした際の効果を指定します。指"
+"定可能なオプション: 'toggle_shade' (ウィンドウの巻き上げ状態を切り替え"
+"る)、'toggle_maximize' (ウィンドウを最大化/最小化を切り換え"
+"る)、'toggle_maximize_horizontally' (水平方向にのみウィンドウの最大化/最小化"
+"を切り替える)、'toggle_maximize_vertically' (垂直方向にのみウィンドウの最大"
+"化/最小化を切り替える)、'minimize' (ウィンドウを最小化する)、'shade' (ウィン"
+"ドウを巻き上げる)、'menu' (ウィンドウ・メニューを表示する)、'lower' (ウィンド"
+"ウを一番後ろに回す)、'none' (何もしない)"
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"このオプションでタイトル・バーを中クリックした際の効果を指定します。指定可能"
+"なオプション: 'toggle_shade' (ウィンドウの巻き上げ状態を切り替え"
+"る)、'toggle_maximize' (ウィンドウを最大化/最小化を切り換え"
+"る)、'toggle_maximize_horizontally' (水平方向にのみウィンドウの最大化/最小化"
+"を切り替える)、'toggle_maximize_vertically' (垂直方向にのみウィンドウの最大"
+"化/最小化を切り替える)、'minimize' (ウィンドウを最小化する)、'shade' (ウィン"
+"ドウを巻き上げる)、'menu' (ウィンドウ・メニューを表示する)、'lower' (ウィンド"
+"ウを一番後ろに回す)、'none' (何もしない)"
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"このオプションでタイトル・バーを右クリックした際の効果を指定します。指定可能"
+"なオプション: 'toggle_shade' (ウィンドウの巻き上げ状態を切り替え"
+"る)、'toggle_maximize' (ウィンドウを最大化/最小化を切り換え"
+"る)、'toggle_maximize_horizontally' (水平方向にのみウィンドウの最大化/最小化"
+"を切り替える)、'toggle_maximize_vertically' (垂直方向にのみウィンドウの最大"
+"化/最小化を切り替える)、'minimize' (ウィンドウを最小化する)、'shade' (ウィン"
+"ドウを巻き上げる)、'menu' (ウィンドウ・メニューを表示する)、'lower' (ウィンド"
+"ウを一番後ろに回す)、'none' (何もしない)"
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"このオプションを使い、新しく生成したウィンドウに対して、どのようにフォーカス"
+"を与えるかを制御します。設定可能なオプション: \"smart\" (ユーザが定義した"
+"フォーカス・モードを適用します)、\"strict\" (端末から起動したアプリのウィンド"
+"ウにはフォーカスを与えないようにします)"
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"アプリケーションもしくはシステムが 'ベル' や 'ビープ' を鳴らしたときに、視覚"
+"的に通知するようにします。難聴のユーザや騒々しい環境で作業するユーザには便利"
+"です。"
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "ウィンドウのタイトルに標準のシステム・フォントを使う"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "視覚的なベルの種類"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "他のユーザ操作による副作用としてウィンドウを前面に出すかどうか"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "右ボタンで大きさを変更するかどうか"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "ウィンドウ・フォーカスのモード"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "ウィンドウ・タイトルのフォント"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "用法: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "ウィンドウを閉じます"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "ウィンドウ・メニューを表示します"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "ウィンドウを最小化します"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "ウィンドウを最大化します"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "ウィンドウを復帰する"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "ウィンドウを巻き上げます"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "ウィンドウの巻き上げを解除します"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "ウィンドウを最前面に維持します"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "ウィンドウを最前面の維持から解除します"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "すべてのワークスペースに配置します"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "現在のワークスペースにのみ配置します"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "最小化(_N)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "最大化(_X)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "元のサイズに戻す(_X)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "巻き上げる(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "展開する(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "移動(_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "サイズの変更(_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "画面上でタイトルバーを移動する(_S)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "最前面へ(_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "すべてのワークスペースに配置する(_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "現在のワークスペースのみ(_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "左側のワークスペースへ移動する(_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "右側のワークスペースへ移動する(_I)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "上側のワークスペースへ移動する(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "下側のワークスペースへ移動する(_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "閉じる(_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "ワークスペース %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "ワークスペース 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "ワークスペース %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "別のワークスペースへ移動する(_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "上"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "下"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "左"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "右"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "フレームジオメトリは \"%s\" のサイズを指定しません"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "境界 \"%2$s\" 用のフレームジオメトリは大きさ \"%1$s\" を指定しません"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "ボタンのアスペクト比 %g は妥当ではありません"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "フレームジオメトリはボタンのサイズを指定しません"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "階調度は少なくとも2つの色をもつべきです"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"\"%s\" を解析できませんでした; GTK の色指定では gtk:fg[NORMAL] のように状態を"
+"大括弧で囲み指定する必要があります (NORMAL は状態を示す)"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"\"%s\" を解析できませんでした; GTK の色指定では gtk:fg[NORMAL] のように状態の"
+"後に右大括弧をつける必要があります (NORMAL は状態を示す)"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "色指定で状態 \"%s\" は理解しませんでした"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "色指定でカラーコンポーネント \"%s\" は理解しませんでした"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"混合色のフォーマットは \"blend/bg_color/fg_color/alpha\" で、\"%s\" はこの"
+"フォーマットに適合していません"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "混合色のアルファ値 \"%s\" を解析できませんでした"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "混合色のアルファ値 \"%s\" は 0.0 から 1.0 の間ではありません"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"シェードのフォーマットは \"shade/base_color/factor\" で、\"%s\" はこのフォー"
+"マットに適合していません"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "シェードカラーのシェード係数 \"%s\" をパスできませんでした"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "シェードカラーのシェード係数 \"%s\" が負の値です"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "色 \"%s\" を解析できませんでした"
+
+#: ../src/ui/theme.c:1586
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "許可されていない文字 '%s' が座標式に含まれています"
+
+#: ../src/ui/theme.c:1613
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "解析できない浮動小数点数 '%s' が座標式に含まれています"
+
+#: ../src/ui/theme.c:1627
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "解析できない整数 '%s' が座標式に含まれています"
+
+#: ../src/ui/theme.c:1749
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "座標式は次のテキストの先頭に無効な演算子を含んでいました: \"%s\""
+
+#: ../src/ui/theme.c:1806
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "座標式が空か解析不能です"
+
+#: ../src/ui/theme.c:1917 ../src/ui/theme.c:1927 ../src/ui/theme.c:1961
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "座標式はゼロで除算しました"
+
+#: ../src/ui/theme.c:1969
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "座標式は浮動小数点で mod 演算子を使用しようとしています"
+
+#: ../src/ui/theme.c:2025
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "座標式はオペランドが必要な場所に演算子 \"%s\" を使用しています"
+
+#: ../src/ui/theme.c:2034
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "座標式は演算子が必要な場所でオペランドを使用しています"
+
+#: ../src/ui/theme.c:2042
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "座標式はオペランドの代わりに演算子で終わっています"
+
+#: ../src/ui/theme.c:2052
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"座標式は演算子 \"%2$c\" の後に演算子 \"%1$c\" が続いており、これらの間にオペ"
+"ランドがありません"
+
+#: ../src/ui/theme.c:2199 ../src/ui/theme.c:2240
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "座標式は無効な値または定数 \"%s\" が使用されていました"
+
+#: ../src/ui/theme.c:2294
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "座標式を解析する際にオーバーフローが発生しました"
+
+#: ../src/ui/theme.c:2323
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "座標式は左括弧がなしに右括弧が指定されています"
+
+#: ../src/ui/theme.c:2387
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "座標式は左括弧が指定されていますが、右括弧がありません"
+
+#: ../src/ui/theme.c:2398
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "座標式は演算子もオペランドも使用していないようです"
+
+#: ../src/ui/theme.c:2602 ../src/ui/theme.c:2622 ../src/ui/theme.c:2642
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "テーマにエラーを引き起こす式が含まれていました: %s\n"
+
+#: ../src/ui/theme.c:4209
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"このフレームスタイルは <button function=\"%s\" state=\"%s\" draw_ops="
+"\"whatever\"/> を指定する必要があります"
+
+#: ../src/ui/theme.c:4717 ../src/ui/theme.c:4742
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>がありませ"
+"ん"
+
+#: ../src/ui/theme.c:4786
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "テーマ \"%s\" の読み込みに失敗しました: %s\n"
+
+#: ../src/ui/theme.c:4916 ../src/ui/theme.c:4923 ../src/ui/theme.c:4930
+#: ../src/ui/theme.c:4937 ../src/ui/theme.c:4944
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "テーマ \"%1$s\" の <%2$s> が設定されていません"
+
+#: ../src/ui/theme.c:4952
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"テーマ \"%2$s\" にウィンドウタイプ \"%1$s\" のフレームスタイルが設定されてい"
+"ません。<window type=\"%3$s\" style_set=\"whatever\"/> エレメントを追加してく"
+"ださい"
+
+#: ../src/ui/theme.c:5395 ../src/ui/theme.c:5457 ../src/ui/theme.c:5520
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "ユーザ定義の定数は大文字で始まらなければなりません; \"%s\" は違います"
+
+#: ../src/ui/theme.c:5403 ../src/ui/theme.c:5465 ../src/ui/theme.c:5528
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "定数 \"%s\" は既に定義されています"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "エレメント <%2$s> に \"%1$s\" 属性がありません"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "%d 行目 %d 文字目: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "同じ <%2$s> エレメント上で属性 \"%1$s\" が 2 度繰り返されました"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "このコンテキスト内では <%2$s> エレメント上の属性 \"%1$s\" は無効です"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\"を整数として構文解釈できませんでした"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "末尾の文字列 \"%s\" (文字列 \"%s\") を理解できませんでした"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "整数 %ld は正数でなければなりません"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "整数 %ld は大きすぎます、現在の最大は %d です"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "浮動小数点として \"%s\" を解析できませんでした"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+"ブール値は \"true\" か \"false\" でなければならず \"%s\" ではありません"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "角度は 0.0 から 360.0 の間でなければなりませんが、%g でした\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"アルファ値は 0.0 (不可視)と 1.0 (完全に不透明) の間でなければなりませんが、%"
+"g でした\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"無効なタイトルスケール \"%s\" です (xx-small,x-small,small,medium,large,x-"
+"large,xx-large のひとつでなければなりません)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> の名前 \"%s\"が2回使われています"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> の親 \"%s\" は定義されていません"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> のジオメトリ \"%s\" は定義されていません"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> はジオメトリ、またはジオメトリを持つ親のどちらかを指定しなければなりませ"
+"ん"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "背景色の妥当なアルファ値を指定してください"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "<%2$s> エレメント上に不明なタイプ \"%1$s\" があります"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "<%2$s> エレメント上に不明な style_set \"%1$s\" があります"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "ウィンドウタイプ \"%s\" はすでにスタイル設定に割り当てられています"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "エレメント <%s> は <%s> の下では許可されていません"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"\"button_width\"/\"button_height\" と \"aspect_ratio\" の両方のプロパティを指"
+"定することはできません"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "間隔 \"%s\" は不明です"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "アスペクト比\"%s\"は不明です"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "境界 \"%s\" は不明です"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "エレメント <%s> に \"start_angle\" または \"from\" 属性はありません"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+"エレメント <%s> に \"extent_angle\" または \"to\" 属性はありません\n"
+" "
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "階調度のタイプの値 \"%s\" は解釈されませんでした"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "<%2$s>エレメント用のフィルタイプ \"%1$s\"は解釈されませんでした"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "<%2$s> エレメント用の状態 \"%1$s\" は解釈されませんでした"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "<%2$s> エレメント用の影 \"%1$s\" は解釈されませんでした"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "<%2$s> エレメント用の矢印 \"%1$s\" は解釈されませんでした"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "\"%s\"を呼ぶ <draw_ops> は定義されていません"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "ここに draw_ops \"%s\" を含めると循環参照が生成されます"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "フレーム要素の場所 \"%s\" は不明です"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "フレームスタイルはすでに場所 %s に要素を持っています"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "名前 \"%s\" で <draw_ops>が定義されていません"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "ボタンのための機能 \"%s\" は不明です"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"このバージョンでは \"%s\" というボタンの機能は提供していません (現 %d, 要 %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "ボタンのための状態 \"%s\" は不明です"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "フレームスタイルはすでに機能 %s 状態 %s のボタンを持っています"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" はフォーカス属性のためには有効な値ではありません"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" は状態の属性のためには有効な値ではありません"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" に呼ばれるスタイルは定義されていません"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" はリサイズ属性のためには有効な値ではありません"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"最大化/シェード化のための <%s> エレメントには \"resize\" 属性を指定できません"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "最大化のための <%s> エレメントには \"resize\" 属性を指定できません"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"状態 %s リサイズ %s フォーカス %s のためのスタイルはすでに指定されています"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "状態 %s フォーカス %s のためのスタイルはすでに指定されています"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<piece> エレメントは2つの draw_ops を持つことができません (テーマで draw_ops "
+"属性と <draw_ops> エレメントが指定されたか、あるいは 2 つのエレメントが指定さ"
+"れました)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<button> エレメントは 2 つの draw_ops を持つことができません (テーマで "
+"draw_ops 属性と <draw_ops> エレメントが指定されたか、あるいは 2 つのエレメン"
+"トが指定されました)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<menu_icon> エレメントは 2 つの draw_ops を持つことができません (テーマで "
+"draw_ops 属性と <draw_ops> エレメントが指定されたか、あるいは 2 つのエレメン"
+"トが指定されました)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+"テーマの最も外側のエレメントは <marco_theme> でなければならず、<%s>ではあ"
+"りません"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"エレメント <%s> は name/author/date/description エレメントの内側に許可されて"
+"いません"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "エレメント <%s> は <constant> エレメントの内側に許可されていません"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"エレメント <%s> はdistance/border/aspect_ratioエレメントの内側に許可されてい"
+"ません"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "エレメント <%s> は描画処理エレメントの内側に許可されていません"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "エレメント <%s> は <%s> エレメントの内側に許可されていません"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "フレームのための draw_ops は提供されていません"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "ボタンのための draw_ops は提供されていません"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "エレメント <%s> の内側にテキストは許可されません"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "このテーマで <%s> が二回指定しました"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "%s というテーマの妥当なファイルが見つかりませんでした\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+"テーマファイル %s はルートに <marco_theme> エレメントを含んでいませんでし"
+"た"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/ウィンドウ(_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/ウィンドウ/ティアオフ"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/ウィンドウ/ダイアログ(_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/ウィンドウ/モーダルダイアログ(_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/ウィンドウ/ユーティリティ(_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/ウィンドウ/スプラッシュスクリーン(_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/ウィンドウ/上ドック(_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/ウィンドウ/下ドック(_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/ウィンドウ/左ドック(_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/ウィンドウ/右ドック(_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/ウィンドウ/すべてのドック(_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/ウィンドウ/デスクトップ(_K)"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "これはサンプルダイアログの中のサンプルメッセージです"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "見せかけのメニュー・アイテム %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "ボーダーのみのウィンドウ"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "バー"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "通常のアプリケーションウィンドウ"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "ダイアログボックス"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "モーダルダイアログボックス"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "ユーティリティパレット"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "トーンオフ メニュー"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "ボーダー"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "ボタン・レイアウトのテスト %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "一つのウィンドウ・フレームの描画時間: %g ミリ秒"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "用法: marco-theme-viewer [テーマ名]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "テーマのロードでエラーが発生しました: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" というテーマを %g秒で読み込みました\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "通常のタイトルフォント"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "小さいタイトルフォント"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "大きいタイトルフォント"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "ボタンレイアウト"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "ベンチマーク"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "ここにウィンドウのタイトルが表示されます"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d フレームをクライアント側で %g秒 (1フレームにつき %gミリ秒)、実時間ではX"
+"サーバのリソースを含めて %g秒 (1フレームにつき %gミリ秒)で描画しました\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "位置式テストはTRUEを返しましたがエラーがセットされています"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "位置式テストはFALSEを返しましたがエラーをセットしていません"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "エラーが起きるはずですが何も起こりませんでした"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "エラー %d が起きるはずですが %d が起こりました"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "エラーは起きないはずですが一つ発生しました: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "xの値が %d でした (期待値: %d)"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "yの値は %d でした (期待値: %d)"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d個の座標式を %g秒 (平均 %g秒) で解析しました\n"
+
+#~ msgid "Failed to read saved session file %s: %s\n"
+#~ msgstr "保存されたセッションファイル %s の読み込みに失敗しました: %s\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "これらのウィンドウをもう一つ別に表示"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "これは'開く'アイコンが付いたデモボタンです"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "これは'終了'アイコンが付いたデモボタンです"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr ""
+#~ "ダイアログのプロセスからメッセージ \"%s\" の構文解釈に失敗しました\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "ダイアログ表示プロセスから読み込み際にエラーが発生しました: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "アプリケーションの強制終了を尋ねる marco-dialog を起動する際にエラーが"
+#~ "発生しました: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "コマンドのエラーを表示する marco-dialog を起動する際にエラーが発生しま"
+#~ "した: %s\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "<marco_session> エレメントに不明な属性 %s があります"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "<maximized> エレメントに不明な属性 %s があります"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "<geometry> エレメントに不明な属性 %s があります"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "セッション管理をサポートしないアプリケーションについて警告するために "
+#~ "marco-dialog の起動中にエラーが発生しました: %s\n"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "通常、いろいろな操作 (例: クライアントの領域をクリックしたり、ウィンドウの"
+#~ "移動や大きさの変更など) はその副作用としてウィンドウを前面に出します。この"
+#~ "オプションを FALSE にすると、これの効果を強制的に無効にします。すなわち、"
+#~ "ユーザ操作とウィンドウを前面に出す機能を切り離して、アプリケーションが要求"
+#~ "する前面に出す機能を無視するようになります。詳細は http://bugzilla.mate."
+#~ "org/show_bug.cgi?id=445447#c6 を参照してください。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "現在のワークスペースの上のワークスペースへ切り替えるキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "のようにします。パーサは完全に自由で大文字や小文字を許可します。そして "
+#~ "\"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文"
+#~ "字 \"disabled\" をオプションに設定した場合は、この動作のキーバインドはなく"
+#~ "なります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "現在のワークスペースの下のワークスペースへ切り替えるキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "のようにします。パーサは完全に自由で大文字や小文字を許可します。そして "
+#~ "\"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文"
+#~ "字 \"disabled\" をオプションに設定した場合は、この動作のキーバインドはなく"
+#~ "なります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "現在のワークスペースの左側にあるワークスペースへ切り替えるキーバインドを指"
+#~ "定します。フォーマットは \"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "現在のワークスペースの右側にあるワークスペースへ切り替えるキーバインドを指"
+#~ "定します。フォーマットは \"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 1 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 10 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 11 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 12 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 2 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 3 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 4 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 5 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 6 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 7 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 8 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ワークスペース 9 へ切り替えるキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" や \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ウィンドウメニューをアクティブにするために使うキーバインドを指定します。"
+#~ "フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\" のようにします。パーサは完全に自由で大文字や小文字を許可します。そして "
+#~ "\"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文"
+#~ "字 \"disabled\" をオプションに設定した場合は、この動作のキーバインドはなく"
+#~ "なります。"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "\"移動モード\" に入りキーボードを使ってウィンドウの移動を開始するために使"
+#~ "うキーバインドを指定します。フォーマットは \"&lt;Control&gt;a\" あるいは "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に自由で大文字"
+#~ "や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような"
+#~ "省略もできます。もし特別な文字 \"disabled\" をオプションに設定した場合は、"
+#~ "この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "\"サイズ変更モード\" に入りキーボードを使ってウィンドウのリサイズを開始す"
+#~ "るために使うキーバインドを指定します。フォーマットは \"&lt;Control&gt;a\" "
+#~ "あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に自由"
+#~ "で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" "
+#~ "のような省略もできます。もし特別な文字 \"disabled\" をオプションに設定した"
+#~ "場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "通常のウィンドウをすべて隠しデスクトップの背景へフォーカスを設定するために"
+#~ "使うキーバインドを指定します。フォーマットは \"&lt;Control&gt;a\" あるい"
+#~ "は \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に自由で大文"
+#~ "字や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のよう"
+#~ "な省略もできます。もし特別な文字 \"disabled\" をオプションに設定した場合"
+#~ "は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ウィンドウを最大化するために使うキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにしま"
+#~ "す。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ウィンドウを最小化するために使うキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにしま"
+#~ "す。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "一つ下のワークスペースへウィンドウを移動させるために使うキーバインドを指定"
+#~ "します。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "左側のワークスペースへウィンドウを移動させるために使うキーバインドを指定し"
+#~ "ます。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "右側のワークスペースへウィンドウを移動させるために使うキーバインドを指定し"
+#~ "ます。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "一つ上のワークスペースへウィンドウを移動させるために使うキーバインドを指定"
+#~ "します。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 1 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 10 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 11 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 12 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 2 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 3 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 4 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 5 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 6 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 7 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 8 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ワークスペース 9 へウィンドウを移動させるために使うキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ポップアップメニューを使ってパネルとデスクトップの間でフォーカスを後方へ移"
+#~ "動するために使うキーバインドを指定します。フォーマットは \"&lt;Control&gt;"
+#~ "a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に"
+#~ "自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;"
+#~ "\" のような省略もできます。もし特別な文字 \"disabled\" をオプションに設定"
+#~ "した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ポップアップメニューなしでパネルとデスクトップの間でフォーカスを後方へ移動"
+#~ "するために使うキーバインドを指定します。フォーマットは \"&lt;Control&gt;a"
+#~ "\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に"
+#~ "自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;"
+#~ "\" のような省略もできます。もし特別な文字 \"disabled\" をオプションに設定"
+#~ "した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ポップアップすることなく、アプリケーションが持つ複数のウィンドウの間の"
+#~ "フォーカスを後方へ移動する際に使用するキーバインドです。このキーバインドと"
+#~ "一緒に &lt;shift&g; キーを押すと逆に前方へ移動するようになります。指定する"
+#~ "書式は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のよう"
+#~ "にします。パーサは寛大な仕様になっており、大文字や小文字も許可します。そし"
+#~ "て \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な"
+#~ "文字 \"disabled\" をオプションに設定した場合は、この動作のキーバインドはな"
+#~ "くなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ポップアップしながら、アプリケーションが持つ複数のウィンドウの間のフォーカ"
+#~ "スを後方に移動する際に使用するキーバインドです。このキーバインドと一緒に "
+#~ "&lt;shift&gt; キーを押すと逆に前方へ移動するようになります。指定する書式"
+#~ "は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにし"
+#~ "ます。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ポップアップメニューなしでウィンドウ間でフォーカスを後方へ移動するために使"
+#~ "うキーバインドを指定します。フォーマットは \"&lt;Control&gt;a\" あるいは "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に自由で大文字"
+#~ "や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような"
+#~ "省略もできます。もし特別な文字 \"disabled\" をオプションに設定した場合は、"
+#~ "この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ポップアップメニューを使ってウィンドウ間でフォーカスを移動するために使う"
+#~ "キーバインドを指定します。\"shift\" を一緒に押すと、前方へ移動するようにな"
+#~ "ります。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ポップアップメニューを使ってパネルとデスクトップの間でフォーカスを移動する"
+#~ "ために使うキーバインドを指定します。フォーマットは \"&lt;Control&gt;a\" あ"
+#~ "るいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に自由で"
+#~ "大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" の"
+#~ "ような省略もできます。もし特別な文字 \"disabled\" をオプションに設定した場"
+#~ "合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ポップアップメニューなしでパネルとデスクトップの間でフォーカスを移動するた"
+#~ "めに使うキーバインドを指定します。フォーマットは \"&lt;Control&gt;a\" ある"
+#~ "いは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に自由で大"
+#~ "文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のよ"
+#~ "うな省略もできます。もし特別な文字 \"disabled\" をオプションに設定した場合"
+#~ "は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ポップアップすることなしに、アプリケーションが持つ複数のウィンドウの間で"
+#~ "フォーカスを移動する際に使用するキーバインドです。このキーバインドと一緒"
+#~ "に &lt;shift&gt; キーを押すと逆方向に移動します。ここで指定する書式は "
+#~ "\"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにしま"
+#~ "す。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ポップアップしながら、アプリケーションが持つ複数のウィンドウの間のフォーカ"
+#~ "スを移動する際に使用するキーバインドです。このキーバインドと一緒に &lt;"
+#~ "shift&gt; (伝統的には &lt;Alt&gt;F6) キーを押すと逆方向に移動します。ここ"
+#~ "で指定する書式は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\" のようにします。パーサは完全に自由で大文字や小文字を許可します。そし"
+#~ "て \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な"
+#~ "文字 \"disabled\" をオプションに設定した場合は、この動作のキーバインドはな"
+#~ "くなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ポップアップメニューなしでウィンドウ間でフォーカスを移動するために使うキー"
+#~ "バインドを指定します (伝統的には &lt;Alt&gt;Escape)。一緒に \"shift\" キー"
+#~ "を押すと、移動の順序が逆になります。フォーマットは \"&lt;Control&gt;a\" あ"
+#~ "るいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に自由で"
+#~ "大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" の"
+#~ "ような省略もできます。もし特別な文字 \"disabled\" をオプションに設定した場"
+#~ "合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ポップアップメニューを使ってウィンドウ間でフォーカスを移動するために使う"
+#~ "キーバインドを指定します (伝統的には &lt;Alt&gt;Tab)。一緒に \"shift\" を"
+#~ "押すと、移動の順序が逆になります。フォーマットは \"&lt;Control&gt;a\" ある"
+#~ "いは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に自由で大"
+#~ "文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のよ"
+#~ "うな省略もできます。もし特別な文字 \"disabled\" をオプションに設定した場合"
+#~ "は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウを常に前にだす状態を切り替える際に使用するキーバインドを指定しま"
+#~ "す。常に前にだされたウィンドウは重ねられて表示される他のウィンドウの上に表"
+#~ "示されます。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可し"
+#~ "ます。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。"
+#~ "もし特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバ"
+#~ "インドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "フルスクリーンモードの切り替えに使うキーバインドを指定します。フォーマット"
+#~ "は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにし"
+#~ "ます。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "最大化の切り替えに使うキーバインドを指定します。フォーマットは \"&lt;"
+#~ "Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。"
+#~ "パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や "
+#~ "\"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオ"
+#~ "プションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "シェード/非シェードの状態を切り替えるために使うキーバインドを指定します。"
+#~ "フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\" のようにします。パーサは完全に自由で大文字や小文字を許可します。そして "
+#~ "\"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文"
+#~ "字 \"disabled\" をオプションに設定した場合は、この動作のキーバインドはなく"
+#~ "なります。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウをすべてのワークスペースに含めるかどうかを切り替えるために使う"
+#~ "キーバインドを指定します。フォーマットは \"&lt;Control&gt;a\" あるいは "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に自由で大文字"
+#~ "や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような"
+#~ "省略もできます。もし特別な文字 \"disabled\" をオプションに設定した場合は、"
+#~ "この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ウィンドウの最大化を元に戻すために使うキーバインドを指定します。フォーマッ"
+#~ "トは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のように"
+#~ "します。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;"
+#~ "Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 "
+#~ "\"disabled\" をオプションに設定した場合は、この動作のキーバインドはなくな"
+#~ "ります。"
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "パネルの \"コマンドを実行\" ダイアログを表示するキーバインドを指定します。"
+#~ "フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\" のようにします。パーサは完全に自由で大文字や小文字を許可します。そして "
+#~ "\"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文"
+#~ "字 \"disabled\" をオプションに設定した場合は、この動作のキーバインドはなく"
+#~ "なります。"
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "端末を起動するキーバインドを指定します。フォーマットは \"&lt;Control&gt;a"
+#~ "\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に"
+#~ "自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;"
+#~ "\" のような省略もできます。もし特別な文字 \"disabled\" をオプションに設定"
+#~ "した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "パネルのスクリーンショットユーティリティを使ってウィンドウのスクリーン"
+#~ "ショットを撮るキーバインドを指定します。フォーマットは \"&lt;Control&gt;a"
+#~ "\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは完全に"
+#~ "自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;"
+#~ "\" のような省略もできます。もし特別な文字 \"disabled\" をオプションに設定"
+#~ "した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "パネルのスクリーンショットユーティリティを実行するキーバインドを指定しま"
+#~ "す。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "パネルのメインメニューを表示するキーバインドを指定します。フォーマットは "
+#~ "\"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにしま"
+#~ "す。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "このキーバインドはウィンドウを他のウィンドウの上あるいは下に置くかを変更し"
+#~ "ます。もしウィンドウが別のウィンドウの下にある場合、ウィンドウを他のウィン"
+#~ "ドウの上に表示します。もしウィンドウが完全に表示されている場合には、他の"
+#~ "ウィンドウの下に配置します。ここで指定する書式は \"&lt;Control&gt;a\" ある"
+#~ "いは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにします。パーサは寛大な仕様に"
+#~ "なっており、大文字や小文字も許可します。そして \"&lt;Ctl&gt;\" や \"&lt;"
+#~ "Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled\" をオプショ"
+#~ "ンに設定した場合は、この動作のキーバインドはなくなります。"
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ウィンドウを一番奥に移動するために使うキーバインドを指定します。フォーマッ"
+#~ "トは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のように"
+#~ "します。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;"
+#~ "Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 "
+#~ "\"disabled\" をオプションに設定した場合は、この動作のキーバインドが無効に"
+#~ "なります。"
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウを画面の上側へ移動する際のキーバインドを指定します。フォーマット"
+#~ "は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにし"
+#~ "ます。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドが無効になります。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウを画面の右側へ移動する際のキーバインドを指定します。フォーマット"
+#~ "は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにし"
+#~ "ます。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドは無効になります。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウを画面の右上へ移動する際のキーバインドを指定します。フォーマット"
+#~ "は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにし"
+#~ "ます。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドが無効になります。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウを画面の左上へ移動する際のキーバインドを指定します。フォーマット"
+#~ "は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにし"
+#~ "ます。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドが無効になります。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウを画面の下側へ移動する際のキーバインドを指定します。フォーマット"
+#~ "は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにし"
+#~ "ます。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドが無効になります。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウを画面の右下へ移動する際のキーバインドを指定します。フォーマット"
+#~ "は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにし"
+#~ "ます。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドが無効になります。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウを画面の左下へ移動する際のキーバインドを指定します。フォーマット"
+#~ "は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにし"
+#~ "ます。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドが無効になります。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウを画面の左側へ移動する際のキーバインドを指定します。フォーマット"
+#~ "は \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のようにし"
+#~ "ます。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;Ctl&gt;"
+#~ "\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 \"disabled"
+#~ "\" をオプションに設定した場合は、この動作のキーバインドが無効になります。"
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "他のウィンドウよりも手前にウィンドウを表示するために使うキーバインドを指定"
+#~ "します。フォーマットは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" のようにします。パーサは完全に自由で大文字や小文字を許可しま"
+#~ "す。そして \"&lt;Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。も"
+#~ "し特別な文字 \"disabled\" をオプションに設定した場合は、この動作のキーバイ"
+#~ "ンドはなくなります。"
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウを水平に可能な限り最大化するキーバインドを指定します。フォーマッ"
+#~ "トは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のように"
+#~ "します。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;"
+#~ "Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 "
+#~ "\"disabled\" をオプションに設定した場合は、この動作のキーバインドはなくな"
+#~ "ります。"
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ウィンドウを垂直に可能な限り最大化するキーバインドを指定します。フォーマッ"
+#~ "トは \"&lt;Control&gt;a\" あるいは \"&lt;Shift&gt;&lt;Alt&gt;F1\" のように"
+#~ "します。パーサは完全に自由で大文字や小文字を許可します。そして \"&lt;"
+#~ "Ctl&gt;\" や \"&lt;Ctrl&gt;\" のような省略もできます。もし特別な文字 "
+#~ "\"disabled\" をオプションに設定した場合は、この動作のキーバインドはなくな"
+#~ "ります。"
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "常に前に出すの状態を切り替える"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "ウィンドウの最大化を解除する"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "ウィンドウを元のサイズに戻します"
+
+#~ msgid "Title"
+#~ msgstr "タイトル"
+
+#~ msgid "Class"
+#~ msgstr "クラス"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "<%2$s> エレメント上に \"%1$s\" 属性がありません"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "既にテーマをアイコンに戻しました"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "既にテーマを小さなアイコンに戻しました"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"name\" 属性がありません"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"value\" 属性がありません"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"top\" 属性がありません"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"bottom\" 属性がありません"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"left\" 属性がありません"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"right\" 属性がありません"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"color\" 属性がありません"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"x1\" 属性がありません"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"y1\" 属性がありません"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"x2\" 属性がありません"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"y2\" 属性がありません"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"y\" 属性がありません"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"width\" 属性がありません"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"height\" 属性がありません"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"start_angle\" 属性がありません"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"extent_angle\" 属性がありません"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"alpha\" 属性がありません"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"type\" 属性がありません"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"filename\" 属性がありません"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"state\" 属性がありません"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"shadow\" 属性がありません"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "エレメント <%s> に \"arrow\" 属性がありません"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "<%s> エレメントに \"value\" 属性がありません"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "<%s> エレメントに \"position\" 属性がありません"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "<%s> エレメントに \"function\" 属性がありません"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "<%s> エレメントに \"state\" 属性がありません"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "<%s> エレメントに \"focus\" 属性がありません"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "<%s> エレメントに \"style\" 属性がありません"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "<%s> エレメントに \"resize\" 属性がありません"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "このテーマで <author> は二回指定しました"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "このテーマで <copyright> は二回指定しました"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "このテーマで <date> は二回指定しました"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "このテーマで<description>は二回指定しました"
diff --git a/po/ka.po b/po/ka.po
new file mode 100644
index 00000000..20c30b04
--- /dev/null
+++ b/po/ka.po
@@ -0,0 +1,3417 @@
+# translation of ka.po to Georgian
+# translation of ka.po to
+# Georgian translation for Marco
+# Copyright © 2006 Canonical Ltd. and Rosetta Contributors.
+# This file is distributed under the same license as the marco package.
+#
+#
+# Alexander Didebulidze <[email protected]>, 2006.
+# Vladimer Sichinava ვლადიმერ სიჭინავა <[email protected]>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: ka\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-09-07 14:02+0200\n"
+"PO-Revision-Date: 2007-09-07 14:18+0200\n"
+"Last-Translator: Vladimer Sichinava ვლადიმერ სიჭინავა <[email protected]>\n"
+"Language-Team: Georgian <http://mail.gnome.org/mailman/listinfo/mate-ge-list>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=1; plural=0\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "სამუშაო მაგიდა"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "ფანჯრების მართა"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "გამოყენება: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:133
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+
+#: ../src/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr ""
+
+#: ../src/delete.c:67 ../src/delete.c:94 ../src/marco-dialog.c:50
+#: ../src/theme-parser.c:484
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr ""
+
+#: ../src/delete.c:74 ../src/delete.c:101 ../src/marco-dialog.c:57
+#: ../src/theme-parser.c:493 ../src/theme-parser.c:548
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+
+#: ../src/delete.c:132
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr ""
+
+#: ../src/delete.c:267
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr ""
+
+#: ../src/delete.c:350
+#, c-format
+msgid "Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+
+#: ../src/delete.c:459
+#, fuzzy, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "ვერ განხორციელდა -სკენ წმ n"
+
+#: ../src/display.c:349
+#, fuzzy, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "ვერ განხორციელდა -სკენ გახსნა X ფანჯარა სისტემა წმ n"
+
+#: ../src/errors.c:271
+#, fuzzy, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr "-სკენ წმ X ან ფანჯარა n"
+
+#: ../src/errors.c:278
+#, fuzzy, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "ფატალური შეცდომა წმ ჩართულია წმ n"
+
+#: ../src/frames.c:1078
+msgid "Close Window"
+msgstr "ფანჯრის დახურვა"
+
+#: ../src/frames.c:1081
+msgid "Window Menu"
+msgstr "ფანჯრის მენუ"
+
+#: ../src/frames.c:1084
+msgid "Minimize Window"
+msgstr "ფანჯრის მინიმიზირება"
+
+#: ../src/frames.c:1087
+msgid "Maximize Window"
+msgstr "ფანჯრის მაქსიმიზირება"
+
+#: ../src/frames.c:1090
+msgid "Unmaximize Window"
+msgstr "ფანჯრის გადიდება"
+
+#: ../src/frames.c:1093
+#, fuzzy
+msgid "Roll Up Window"
+msgstr "_დახვევა"
+
+#: ../src/frames.c:1096
+#, fuzzy
+msgid "Unroll Window"
+msgstr "ფანჯრის დახურვა"
+
+#: ../src/frames.c:1099
+msgid "Keep Window On Top"
+msgstr "ფანჯრის წინაპლანზე დატოვება"
+
+#: ../src/frames.c:1102
+msgid "Remove Window From Top"
+msgstr "ფანჯრის წინაპლანიდან მოშორება"
+
+#: ../src/frames.c:1105
+msgid "Always On Visible Workspace"
+msgstr "ყოველთვის ხილულ გარემოში გამოჩენა"
+
+#: ../src/frames.c:1108
+msgid "Put Window On Only One Workspace"
+msgstr ""
+
+#: ../src/keybindings.c:1087
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+
+#: ../src/keybindings.c:2716
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+
+#: ../src/keybindings.c:2821
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "ბრძანება %d არ არის განსაზღვრული.\n"
+
+#: ../src/keybindings.c:3849
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "ტერმინალის ბრძანება არ არის განსაზღვრული.\n"
+
+#: ../src/main.c:67
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2007 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"თავისუფალი/საჯარო პროგრამაა. მისი გავრცელება და/ან შეცვლა\n"
+"შესაძლებელია Free Software Foundation-ის მიერ გამოცემული GNU ზოგადი\n"
+"საჯარო ლიცენზიის (GNU General Public License) ვერსია 2-ის, ან"
+"(თქვენი სურვილის შემთხვევაში) ნებისმიერი უფრო ახალი ვერსიის, პირობების შესაბამისად.\n"
+
+#: ../src/main.c:171
+msgid "Disable connection to session manager"
+msgstr "სესიების მმართველთან კავშირის გაუქმება"
+
+#: ../src/main.c:177
+msgid "Replace the running window manager with Marco"
+msgstr "მიმდინარე ფანჯრების მმართველის Marco-ით ჩანაცვლება"
+
+#: ../src/main.c:183
+msgid "Specify session management ID"
+msgstr "სესიის მართვის ID-ის მითითება"
+
+#: ../src/main.c:188
+msgid "X Display to use"
+msgstr "X გამოსაყენებელი გარემო"
+
+#: ../src/main.c:194
+msgid "Initialize session from savefile"
+msgstr "სესიის დამახსოვრებული ფაილიდან ჩატვირთვა"
+
+#: ../src/main.c:200
+msgid "Print version"
+msgstr "ამოსაბეჭდი ვერსია"
+
+#: ../src/main.c:353
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "ვერ განხორციელდა გაფორმების თემების დასტის სკანირება: %s\n"
+
+#: ../src/main.c:369
+#, fuzzy, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "არა პოვნა a წმ და შეიცავს."
+
+#: ../src/main.c:429
+#, fuzzy, c-format
+msgid "Failed to restart: %s\n"
+msgstr "ვერ განხორციელდა -სკენ წმ n"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:70
+msgid "Mi_nimize"
+msgstr "მი_ნიმიზირება"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:72
+msgid "Ma_ximize"
+msgstr "გაფართო_ება"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:74
+msgid "Unma_ximize"
+msgstr "შემც_ირება"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:76
+msgid "Roll _Up"
+msgstr "_დახვევა"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:78
+msgid "_Unroll"
+msgstr "_გაშლა"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:80
+msgid "_Move"
+msgstr "_გადაადგილება"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:82
+msgid "_Resize"
+msgstr "_ზომის შეცვლა"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "_სათაურის ზოლის ეკრანზე გადაადგილება"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:87 ../src/menu.c:89
+msgid "Always on _Top"
+msgstr "ყოველთვის წინა _პლანზე"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "ყოველთვის ხილულ გ_არემოში ჩვენება"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "მხ_ოლოდ ამ გარემოში"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "_მარცხენა გარემოში გადატანა"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "მარჯვენა გარემოშ_ი გადატანა"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "ზ_ემო გარემოში გადატანა"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "ქვემ_ო გარემოში გადატანა"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:105
+msgid "_Close"
+msgstr "_დახურვა"
+
+#: ../src/menu.c:199 ../src/prefs.c:2246 ../src/prefs.c:2780
+#, c-format
+msgid "Workspace %d"
+msgstr "სამუშაო გარემო %d"
+
+#: ../src/menu.c:208
+#, c-format
+msgid "Workspace 1_0"
+msgstr "სამუშაო გარემო 1_0"
+
+#: ../src/menu.c:210
+#, c-format
+msgid "Workspace %s%d"
+msgstr "სამუშაო გარემო %s%d"
+
+#: ../src/menu.c:390
+msgid "Move to Another _Workspace"
+msgstr "_სხვა გარემოში გადატანა"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr "\"%s\" ფანჯარა არ პასუხობს."
+
+#: ../src/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+
+#: ../src/marco-dialog.c:107
+msgid "_Wait"
+msgstr "_ლოდინი"
+
+#: ../src/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "_ნაძალადევი გამოსვლა"
+
+#: ../src/marco-dialog.c:206
+msgid "Title"
+msgstr "სათაური"
+
+#: ../src/marco-dialog.c:218
+msgid "Class"
+msgstr "კლასი"
+
+#: ../src/marco-dialog.c:244
+#, fuzzy
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr "არა შენახვა და -სკენ დრო დუ."
+
+#: ../src/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"დაიშვა შეცდომა \"%s\" გაშვებისას:\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+#, fuzzy
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "არა ნავიგაცია დუ ის არა"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "ფანჯრის სათაურის ზოლზე ორმაგი წკაპის მოქმედება"
+
+#: ../src/marco.schemas.in.h:4
+#, fuzzy
+msgid "Action on title bar middle-click"
+msgstr "ფანჯრის სათაურის ზოლზე ორმაგი წკაპის მოქმედება"
+
+#: ../src/marco.schemas.in.h:5
+#, fuzzy
+msgid "Action on title bar right-click"
+msgstr "ფანჯრის სათაურის ზოლზე ორმაგი წკაპის მოქმედება"
+
+#: ../src/marco.schemas.in.h:6
+msgid "Activate window menu"
+msgstr "ფანჯრის მენიუს გააქტიურება"
+
+#: ../src/marco.schemas.in.h:7
+#, fuzzy
+msgid "Arrangement of buttons on the titlebar"
+msgstr "ის ჩართულია"
+
+#: ../src/marco.schemas.in.h:8
+#, fuzzy
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"ის ჩართულია a სტრიქონი მენიუ დახურვა მარცხენა ის ფანჯარა მარჯვენა და "
+"დუბლირება არა უცნობი დუ მომავალი."
+
+#: ../src/marco.schemas.in.h:9
+#, fuzzy
+msgid "Automatically raises the focused window"
+msgstr "ავრომატურად ფანჯარა"
+
+#: ../src/marco.schemas.in.h:10
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:11
+msgid "Close window"
+msgstr "ფანჯრის დახურვა"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Commands to run in response to keybindings"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:13
+msgid "Compositing Manager"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:14
+msgid "Control how new windows get focus"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:15
+#, fuzzy
+msgid "Current theme"
+msgstr "მიმდინარე"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:17
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:19
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:20
+msgid "Enable Visual Bell"
+msgstr "Visual Bell-ის ჩართვა"
+
+#: ../src/marco.schemas.in.h:21
+#, fuzzy
+msgid "Hide all windows and focus desktop"
+msgstr "დამალვა ყველა და"
+
+#: ../src/marco.schemas.in.h:22
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:23
+#, fuzzy
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr "ჭეშმარიტი და პროგრამა ფანჯარა."
+
+#: ../src/marco.schemas.in.h:24
+#, fuzzy
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"ჭეშმარიტი ცოტა და ცოტა ის ან სხვა არის a დუ და ტერმინალი -სკენ ფუნქცია "
+"შესაძლებლობა არის გამორთული არის ჩართულია -სკენ."
+
+#: ../src/marco.schemas.in.h:25
+#, fuzzy
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"ჭეშმარიტი Marco დუ ის არის a დუ ჩვეულებრივი პროგრამა არის მეტი და ცოტა "
+"ფანჯრები a ფანჯარა დუ პროგრამა რეჟიმი ყველა დუ პროგრამა დუ პროგრამა რეჟიმი "
+"არა -სკენ დუ სხვა ის არის წმ ყველა ის პროგრამა ფანჯარა e g -სკენ პროგრამა "
+"რეჟიმი არის ეთ."
+
+#: ../src/marco.schemas.in.h:26
+#, fuzzy
+msgid "If true, trade off usability for less resource usage"
+msgstr "ჭეშმარიტი გამორთულია ცოტა რესურსი"
+
+#: ../src/marco.schemas.in.h:27
+#, fuzzy
+msgid "Lower window below other windows"
+msgstr "ჩაწევა ფანჯარა სხვა"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Maximize window"
+msgstr "ფანჯრის გადიდება"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Maximize window horizontally"
+msgstr "ფანჯრის ჰორიზონტალურად გაშლა"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Maximize window vertically"
+msgstr "ფანჯრის ვერტიკალურად გაშლა"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Minimize window"
+msgstr "ფანჯრის ჩაკეცვა"
+
+#: ../src/marco.schemas.in.h:32
+#, fuzzy
+msgid "Modifier to use for modified window click actions"
+msgstr "მოდიფიკატორი -სკენ შეცვლილია ფანჯარა"
+
+#: ../src/marco.schemas.in.h:33
+#, fuzzy
+msgid "Move backward between panels and the desktop immediately"
+msgstr "გადატანა და დაუყოვნებლივ"
+
+#: ../src/marco.schemas.in.h:34
+#, fuzzy
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "გადატანა და"
+
+#: ../src/marco.schemas.in.h:35
+#, fuzzy
+msgid "Move backwards between windows immediately"
+msgstr "გადატანა დაუყოვნებლივ"
+
+#: ../src/marco.schemas.in.h:36
+#, fuzzy
+msgid "Move backwards between windows of an application immediately"
+msgstr "გადატანა დაუყოვნებლივ"
+
+#: ../src/marco.schemas.in.h:37
+#, fuzzy
+msgid "Move backwards between windows of an application with popup"
+msgstr "გადატანა და"
+
+#: ../src/marco.schemas.in.h:38
+#, fuzzy
+msgid "Move between panels and the desktop immediately"
+msgstr "გადატანა და დაუყოვნებლივ"
+
+#: ../src/marco.schemas.in.h:39
+#, fuzzy
+msgid "Move between panels and the desktop with popup"
+msgstr "გადატანა და"
+
+#: ../src/marco.schemas.in.h:40
+#, fuzzy
+msgid "Move between windows immediately"
+msgstr "გადატანა დაუყოვნებლივ"
+
+#: ../src/marco.schemas.in.h:41
+#, fuzzy
+msgid "Move between windows of an application immediately"
+msgstr "გადატანა დაუყოვნებლივ"
+
+#: ../src/marco.schemas.in.h:42
+#, fuzzy
+msgid "Move between windows of an application with popup"
+msgstr "გადატანა"
+
+#: ../src/marco.schemas.in.h:43
+#, fuzzy
+msgid "Move between windows with popup"
+msgstr "გადატანა"
+
+#: ../src/marco.schemas.in.h:44
+#, fuzzy
+msgid "Move focus backwards between windows using popup display"
+msgstr "გადატანა"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window"
+msgstr "ფანჯრის გადაადგილება"
+
+#: ../src/marco.schemas.in.h:46
+#, fuzzy
+msgid "Move window one workspace down"
+msgstr "გადატანა ფანჯარა"
+
+#: ../src/marco.schemas.in.h:47
+#, fuzzy
+msgid "Move window one workspace to the left"
+msgstr "გადატანა ფანჯარა -სკენ მარცხენა"
+
+#: ../src/marco.schemas.in.h:48
+#, fuzzy
+msgid "Move window one workspace to the right"
+msgstr "გადატანა ფანჯარა -სკენ მარჯვენა"
+
+#: ../src/marco.schemas.in.h:49
+#, fuzzy
+msgid "Move window one workspace up"
+msgstr "გადატანა ფანჯარა"
+
+#: ../src/marco.schemas.in.h:50
+#, fuzzy
+msgid "Move window to east side of screen"
+msgstr "გადატანა ფანჯარა -სკენ 1"
+
+#: ../src/marco.schemas.in.h:51
+#, fuzzy
+msgid "Move window to north side of screen"
+msgstr "გადატანა ფანჯარა -სკენ 1"
+
+#: ../src/marco.schemas.in.h:52
+#, fuzzy
+msgid "Move window to north-east corner"
+msgstr "გადატანა ფანჯარა -სკენ 1"
+
+#: ../src/marco.schemas.in.h:53
+#, fuzzy
+msgid "Move window to north-west corner"
+msgstr "გადატანა ფანჯარა -სკენ 1"
+
+#: ../src/marco.schemas.in.h:54
+#, fuzzy
+msgid "Move window to south side of screen"
+msgstr "გადატანა ფანჯარა -სკენ 1"
+
+#: ../src/marco.schemas.in.h:55
+#, fuzzy
+msgid "Move window to south-east corner"
+msgstr "გადატანა ფანჯარა -სკენ 1"
+
+#: ../src/marco.schemas.in.h:56
+#, fuzzy
+msgid "Move window to south-west corner"
+msgstr "გადატანა ფანჯარა -სკენ 1"
+
+#: ../src/marco.schemas.in.h:57
+#, fuzzy
+msgid "Move window to west side of screen"
+msgstr "გადატანა ფანჯარა -სკენ 1"
+
+#: ../src/marco.schemas.in.h:58
+#, fuzzy
+msgid "Move window to workspace 1"
+msgstr "გადატანა ფანჯარა -სკენ 1"
+
+#: ../src/marco.schemas.in.h:59
+#, fuzzy
+msgid "Move window to workspace 10"
+msgstr "გადატანა ფანჯარა -სკენ 10"
+
+#: ../src/marco.schemas.in.h:60
+#, fuzzy
+msgid "Move window to workspace 11"
+msgstr "გადატანა ფანჯარა -სკენ 11"
+
+#: ../src/marco.schemas.in.h:61
+#, fuzzy
+msgid "Move window to workspace 12"
+msgstr "გადატანა ფანჯარა -სკენ 12"
+
+#: ../src/marco.schemas.in.h:62
+#, fuzzy
+msgid "Move window to workspace 2"
+msgstr "გადატანა ფანჯარა -სკენ 2"
+
+#: ../src/marco.schemas.in.h:63
+#, fuzzy
+msgid "Move window to workspace 3"
+msgstr "გადატანა ფანჯარა -სკენ 3"
+
+#: ../src/marco.schemas.in.h:64
+#, fuzzy
+msgid "Move window to workspace 4"
+msgstr "გადატანა ფანჯარა -სკენ 4"
+
+#: ../src/marco.schemas.in.h:65
+#, fuzzy
+msgid "Move window to workspace 5"
+msgstr "გადატანა ფანჯარა -სკენ 5"
+
+#: ../src/marco.schemas.in.h:66
+#, fuzzy
+msgid "Move window to workspace 6"
+msgstr "გადატანა ფანჯარა -სკენ 6"
+
+#: ../src/marco.schemas.in.h:67
+#, fuzzy
+msgid "Move window to workspace 7"
+msgstr "გადატანა ფანჯარა -სკენ 7"
+
+#: ../src/marco.schemas.in.h:68
+#, fuzzy
+msgid "Move window to workspace 8"
+msgstr "გადატანა ფანჯარა -სკენ 8"
+
+#: ../src/marco.schemas.in.h:69
+#, fuzzy
+msgid "Move window to workspace 9"
+msgstr "გადატანა ფანჯარა -სკენ 9"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Name of workspace"
+msgstr "სამუშაო გარემოს სახელი"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Number of workspaces"
+msgstr "სამუშაო გარემოებების რაოდენობა"
+
+#: ../src/marco.schemas.in.h:72
+#, fuzzy
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr "ნომერი ის მეტი და a სტაციონარული -სკენ."
+
+#: ../src/marco.schemas.in.h:73
+#, fuzzy
+msgid "Raise obscured window, otherwise lower"
+msgstr "აწევა ფანჯარა"
+
+#: ../src/marco.schemas.in.h:74
+#, fuzzy
+msgid "Raise window above other windows"
+msgstr "აწევა ფანჯარა სხვა"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Resize window"
+msgstr "ფანჯრის ზომის შეცვლა"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Run a defined command"
+msgstr "განსაზღვრული პროგრამის გაშვება"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Run a terminal"
+msgstr "ტერმინალის გაშვება"
+
+#: ../src/marco.schemas.in.h:78
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Set this option to false to decouple "
+"raising from other user actions. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the bug "
+"they requested. See also http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:79
+msgid "Show the panel menu"
+msgstr "პანელის მენუს ჩვენება"
+
+#: ../src/marco.schemas.in.h:80
+#, fuzzy
+msgid "Show the panel run application dialog"
+msgstr "ჩვენება პანელი პროგრამა დიალოგი"
+
+#: ../src/marco.schemas.in.h:81
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:82
+msgid "Switch to workspace 1"
+msgstr "გადადი გარემო 1"
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 10"
+msgstr "სამუშაო გარემო 10 გადართვა"
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace 11"
+msgstr "სამუშაო გარემო 11 გადართვა"
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace 12"
+msgstr "სამუშაო გარემო 12 გადართვა"
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace 2"
+msgstr "სამუშაო გარემო 2 გადართვა"
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace 3"
+msgstr "სამუშაო გარემო 3 გადართვა"
+
+#: ../src/marco.schemas.in.h:88
+msgid "Switch to workspace 4"
+msgstr "სამუშაო გარემო 4 გადართვა"
+
+#: ../src/marco.schemas.in.h:89
+msgid "Switch to workspace 5"
+msgstr "სამუშაო გარემო 5 გადართვა"
+
+#: ../src/marco.schemas.in.h:90
+msgid "Switch to workspace 6"
+msgstr "სამუშაო გარემო 2 გადართვა"
+
+#: ../src/marco.schemas.in.h:91
+msgid "Switch to workspace 7"
+msgstr "სამუშაო გარემო 7 გადართვა"
+
+#: ../src/marco.schemas.in.h:92
+msgid "Switch to workspace 8"
+msgstr "სამუშაო გარემო 8 გადართვა"
+
+#: ../src/marco.schemas.in.h:93
+msgid "Switch to workspace 9"
+msgstr "სამუშაო გარემო 9 გადართვა"
+
+#: ../src/marco.schemas.in.h:94
+#, fuzzy
+msgid "Switch to workspace above this one"
+msgstr "გადართვა -სკენ"
+
+#: ../src/marco.schemas.in.h:95
+#, fuzzy
+msgid "Switch to workspace below this one"
+msgstr "გადართვა -სკენ"
+
+#: ../src/marco.schemas.in.h:96
+#, fuzzy
+msgid "Switch to workspace on the left"
+msgstr "გადართვა -სკენ ჩართულია მარცხენა"
+
+#: ../src/marco.schemas.in.h:97
+#, fuzzy
+msgid "Switch to workspace on the right"
+msgstr "გადართვა -სკენ ჩართულია მარჯვენა"
+
+#: ../src/marco.schemas.in.h:98
+#, fuzzy
+msgid "System Bell is Audible"
+msgstr "სისტემა არის"
+
+#: ../src/marco.schemas.in.h:99
+msgid "Take a screenshot"
+msgstr "ეკრანის ანაბეჭდის გადაღება"
+
+#: ../src/marco.schemas.in.h:100
+msgid "Take a screenshot of a window"
+msgstr "ფანჯრის ანაბეჭდის გადაღება"
+
+#: ../src/marco.schemas.in.h:101
+#, fuzzy
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Marco -სკენ ან პროგრამა a თეთრი შავი და ჩარჩო ის პროგრამა -სკენ პროგრამა "
+"არის უცნობი არის ნაგულისხმევი ფანჯარა წმ არის."
+
+#: ../src/marco.schemas.in.h:102
+#, fuzzy
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr "N განსაზღვრა -სკენ N შესრულება N."
+
+#: ../src/marco.schemas.in.h:103
+#, fuzzy
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr "ეკრანის ანაბეჭდი გასაღები a -სკენ."
+
+#: ../src/marco.schemas.in.h:104
+#, fuzzy
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr "ფანჯარა ეკრანის ანაბეჭდი გასაღები a -სკენ."
+
+#: ../src/marco.schemas.in.h:105
+#, fuzzy
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"დუ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;&gt; "
+"და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:106
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:107
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:108
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"-სკენ ჩართულია მარცხენა ის&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; "
+"F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული "
+"არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:109
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"-სკენ ჩართულია მარჯვენა ის&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; "
+"F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული "
+"არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:110
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:111
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:112
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:113
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:114
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:115
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:116
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:117
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:118
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:119
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:120
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:121
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:122
+#, fuzzy
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ ფანჯარა მენიუ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის "
+"და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:123
+#, fuzzy
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ დახურვა a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:124
+#, fuzzy
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"-სკენ რეჟიმი და a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:125
+#, fuzzy
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"-სკენ რეჟიმი და a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:126
+#, fuzzy
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"-სკენ ყველა საშუალო და მინიჭება -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; "
+"Alt&gt; F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი "
+"გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:127
+#, fuzzy
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:128
+#, fuzzy
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:129
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:130
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ მარცხენა&lt; Control&gt; a ან&lt; Shift&gt;&lt; "
+"Alt&gt; F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი "
+"გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:131
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ მარჯვენა&lt; Control&gt; a ან&lt; Shift&gt;&lt; "
+"Alt&gt; F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი "
+"გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:132
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:133
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:134
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:135
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:136
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:137
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:138
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:139
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:140
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:141
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:142
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:143
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:144
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 "
+"არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:145
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"-სკენ და a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის "
+"და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:146
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"-სკენ და a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის "
+"და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:147
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application without a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:148
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application, using a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:149
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:150
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:151
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"-სკენ და a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის "
+"და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:152
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"-სკენ და a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის "
+"და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:153
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between windows of an application without "
+"a popup window. Holding the \"shift\" key while using this binding reverses "
+"the direction of movement. The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Alt&gt; Escape გასაღები ის&lt; Control&gt; a ან&lt; "
+"Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -"
+"სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:154
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between windows of an application, using a "
+"popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while "
+"using this binding reverses the direction of movement. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Alt&gt; ჩანართი გასაღები ის&lt; Control&gt; a ან&lt; "
+"Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -"
+"სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:155
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Alt&gt; Escape გასაღები ის&lt; Control&gt; a ან&lt; "
+"Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -"
+"სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:156
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Alt&gt; ჩანართი გასაღები ის&lt; Control&gt; a ან&lt; "
+"Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -"
+"სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:157
+#, fuzzy
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ ჩართულია ზემოთ A ფანჯარა არის ჩართულია ზემოთ ხილული სხვა&lt; "
+"Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;&gt; და&lt; "
+"Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:158
+#, fuzzy
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ რეჟიმი&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:159
+#, fuzzy
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:160
+#, fuzzy
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;"
+"&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:161
+#, fuzzy
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"-სკენ ფანჯარა არის ჩართულია ყველა ან&lt; Control&gt; a ან&lt; Shift&gt;&lt; "
+"Alt&gt; F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი "
+"გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:162
+#, fuzzy
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"-სკენ a ფანჯარა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:163
+#, fuzzy
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"წმ პანელი წმ გაშვება პროგრამა დიალოგი&lt; Control&gt; a ან&lt; Shift&gt;&lt; "
+"Alt&gt; F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი "
+"გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:164
+#, fuzzy
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"a ტერმინალი&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:165
+#, fuzzy
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"პანელი წმ ეკრანის ანაბეჭდი -სკენ a ეკრანის ანაბეჭდი ის a ფანჯარა&lt; "
+"Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან და&lt;&gt; და&lt; "
+"Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:166
+#, fuzzy
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"პანელი წმ ეკრანის ანაბეჭდი&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; "
+"F1 არის და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული "
+"არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:167
+#, fuzzy
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"პანელი წმ მენიუ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:168
+#, fuzzy
+msgid "The name of a workspace."
+msgstr "სახელი ის a."
+
+#: ../src/marco.schemas.in.h:169
+msgid "The screenshot command"
+msgstr "ეკრანის ანაბეჭდის მისაღები ბრძანება"
+
+#: ../src/marco.schemas.in.h:170
+#, fuzzy
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "ის ფანჯარა და."
+
+#: ../src/marco.schemas.in.h:171
+#, fuzzy
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr "დრო a ფანჯარა ავტო არის მინიჭება -სკენ ჭეშმარიტი არის დუ ის a წამი."
+
+#: ../src/marco.schemas.in.h:172
+#, fuzzy
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr "ფანჯარა რეჟიმი დუ -სკენ ფანჯარა და ფანჯარა და ფანჯარა."
+
+#: ../src/marco.schemas.in.h:173
+msgid "The window screenshot command"
+msgstr "ფანჯარის ანაბეჭდის გადასაღები ბრძანება"
+
+#: ../src/marco.schemas.in.h:174
+#, fuzzy
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another one, it raises the window above all others, "
+"and if the window is already fully visible, it lowers it below all others. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"a ფანჯარა არის ან სხვა ფანჯარა არის ფანჯარა ფანჯარა სხვა ფანჯარა არის "
+"ხილული ფანჯარა სხვა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის "
+"და ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:175
+#, fuzzy
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"a ფანჯარა სხვა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:176
+#, fuzzy
+msgid ""
+"This keybinding moves a window against the north (top) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"a ფანჯარა სხვა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:177
+#, fuzzy
+msgid ""
+"This keybinding moves a window into the east (right) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"a ფანჯარა სხვა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:178
+#, fuzzy
+msgid ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"a ფანჯარა სხვა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:179
+#, fuzzy
+msgid ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"a ფანჯარა სხვა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:180
+#, fuzzy
+msgid ""
+"This keybinding moves a window into the south (bottom) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"a ფანჯარა სხვა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:181
+#, fuzzy
+msgid ""
+"This keybinding moves a window into the south-east (bottom right) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"a ფანჯარა სხვა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:182
+#, fuzzy
+msgid ""
+"This keybinding moves a window into the south-west (bottom left) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"a ფანჯარა სხვა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:183
+#, fuzzy
+msgid ""
+"This keybinding moves a window into the west (left) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"a ფანჯარა სხვა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:184
+#, fuzzy
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"ფანჯარა სხვა&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და ან "
+"და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა მოქმედება."
+
+#: ../src/marco.schemas.in.h:185
+#, fuzzy
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:186
+#, fuzzy
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"a ფანჯარა -სკენ&lt; Control&gt; a ან&lt; Shift&gt;&lt; Alt&gt; F1 არის და "
+"ან და&lt;&gt; და&lt; Ctrl&gt; მინიჭება -სკენ სტრიქონი გამორთული არა "
+"მოქმედება."
+
+#: ../src/marco.schemas.in.h:187
+#, fuzzy
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"ის ორმაგი ჩართულია სათაური მიმდინარე პარამეტრები ფანჯარა ფანჯარა ფანჯარა და "
+"არა არა ნებისმიერი."
+
+#: ../src/marco.schemas.in.h:188
+#, fuzzy
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"ის ორმაგი ჩართულია სათაური მიმდინარე პარამეტრები ფანჯარა ფანჯარა ფანჯარა და "
+"არა არა ნებისმიერი."
+
+#: ../src/marco.schemas.in.h:189
+#, fuzzy
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"ის ორმაგი ჩართულია სათაური მიმდინარე პარამეტრები ფანჯარა ფანჯარა ფანჯარა და "
+"არა არა ნებისმიერი."
+
+#: ../src/marco.schemas.in.h:190
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:191
+msgid "Toggle always on top state"
+msgstr " \"ყოველთვის წინა პლანზე\" რეჟიმის ჩართვა"
+
+#: ../src/marco.schemas.in.h:192
+msgid "Toggle fullscreen mode"
+msgstr "სრული ეკრანის რეჟიმზე გადასვლა"
+
+#: ../src/marco.schemas.in.h:193
+msgid "Toggle maximization state"
+msgstr "მთელს ეკრანზე გაშლის რეჟიმი"
+
+#: ../src/marco.schemas.in.h:194
+msgid "Toggle shaded state"
+msgstr "დაჩრდილულ რეჟიმზე გადასვლა"
+
+#: ../src/marco.schemas.in.h:195
+msgid "Toggle window on all workspaces"
+msgstr "ყველა გარემოში გამოჩენა"
+
+#: ../src/marco.schemas.in.h:196
+#, fuzzy
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr "ჩართულია a პროგრამა ან a ან მაგარი ის და დუ ან არის გამორთულია."
+
+#: ../src/marco.schemas.in.h:197
+msgid "Unmaximize window"
+msgstr "ფანჯრის შემცირება"
+
+#: ../src/marco.schemas.in.h:198
+msgid "Use standard system font in window titles"
+msgstr "ფანჯრის სათაურში სისტემის შრიფტის გამოყენება"
+
+#: ../src/marco.schemas.in.h:199
+msgid "Visual Bell Type"
+msgstr "ვიზუალური სიგნალის ტიპი"
+
+#: ../src/marco.schemas.in.h:200
+#, fuzzy
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "a ეფექტი ის სხვა"
+
+#: ../src/marco.schemas.in.h:201
+msgid "Window focus mode"
+msgstr "ფანჯრის აქტივირების რეჟიმი"
+
+#: ../src/marco.schemas.in.h:202
+msgid "Window title font"
+msgstr "ფანჯარის სათაურის შრიფტი"
+
+#: ../src/prefs.c:434
+#, fuzzy, c-format
+msgid "Type of %s was not integer"
+msgstr "არა წმ მთელი"
+
+#: ../src/prefs.c:572 ../src/prefs.c:600 ../src/prefs.c:616 ../src/prefs.c:632
+#: ../src/prefs.c:648 ../src/prefs.c:664 ../src/prefs.c:680 ../src/prefs.c:696
+#: ../src/prefs.c:716 ../src/prefs.c:732 ../src/prefs.c:748 ../src/prefs.c:766
+#: ../src/prefs.c:782 ../src/prefs.c:801 ../src/prefs.c:817 ../src/prefs.c:852
+#: ../src/prefs.c:868 ../src/prefs.c:885 ../src/prefs.c:901 ../src/prefs.c:917
+#: ../src/prefs.c:933 ../src/prefs.c:949 ../src/prefs.c:964 ../src/prefs.c:979
+#: ../src/prefs.c:994 ../src/prefs.c:1010 ../src/prefs.c:1026
+#: ../src/prefs.c:1042 ../src/prefs.c:1058
+#, fuzzy, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf გასაღები წმ არის მინიჭება -სკენ არასწორი ტიპი n"
+
+#: ../src/prefs.c:1103
+#, fuzzy, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "წმ დუ არის არა a n"
+
+#: ../src/prefs.c:1127 ../src/prefs.c:1148 ../src/prefs.c:1705
+#, fuzzy, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf გასაღები წმ არის მინიჭება -სკენ არასწორი n"
+
+#: ../src/prefs.c:1277
+#, fuzzy, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+"range 1..128\n"
+msgstr "დუ MateConf გასაღები წმ არის არა a ზომა დუ n"
+
+#: ../src/prefs.c:1357
+#, fuzzy, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "არა აღწერა წმ MateConf გასაღები წმ n"
+
+#: ../src/prefs.c:1599
+#, fuzzy, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr "დუ MateConf გასაღები წმ არის არა a რიცხვი ის არის n"
+
+#: ../src/prefs.c:1659
+#, fuzzy
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr "გამორთული არა n"
+
+#: ../src/prefs.c:1732
+#, fuzzy, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "დუ MateConf გასაღები წმ არის ის -სკენ n"
+
+#: ../src/prefs.c:1881
+#, fuzzy, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "შეცდომა რიცხვი ის -სკენ წმ n"
+
+#: ../src/prefs.c:2276 ../src/prefs.c:2446
+#, fuzzy, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "წმ დუ არის არა a წმ n"
+
+#: ../src/prefs.c:2861
+#, fuzzy, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "შეცდომა სახელი -სკენ წმ წმ n"
+
+#: ../src/resizepopup.c:113
+#, fuzzy, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:410
+#, fuzzy, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "ეკრანი ჩართულია წმ არის არასწორი n"
+
+#: ../src/screen.c:426
+#, fuzzy, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr "ეკრანი ჩართულია წმ a ფანჯარა ჩანაცვლება -სკენ ჩანაცვლება ფანჯარა n"
+
+#: ../src/screen.c:453
+#, fuzzy, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "არა ფანჯარა ჩართულია წმ n"
+
+#: ../src/screen.c:511
+#, fuzzy, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "ეკრანი ჩართულია წმ a ფანჯარა n"
+
+#: ../src/screen.c:716
+#, fuzzy, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "არა ჩართულია წმ n"
+
+#: ../src/session.c:826 ../src/session.c:833
+#, fuzzy, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "არა წმ წმ n"
+
+#: ../src/session.c:843
+#, fuzzy, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "არა გახსნა სესია ფაილი წმ წმ n"
+
+#: ../src/session.c:995
+#, fuzzy, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "შეცდომა სესია ფაილი წმ წმ n"
+
+#: ../src/session.c:1000
+#, fuzzy, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "შეცდომა სესია ფაილი წმ წმ n"
+
+#: ../src/session.c:1075
+#, fuzzy, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "ვერ განხორციელდა -სკენ სესია ფაილი წმ წმ n"
+
+#: ../src/session.c:1110
+#, fuzzy, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "ვერ განხორციელდა -სკენ სესია ფაილი წმ n"
+
+#: ../src/session.c:1159
+#, fuzzy, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> ატრიბუტი სესია ID"
+
+#: ../src/session.c:1172
+#, fuzzy, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "უცნობი ატრიბუტი წმ ჩართულია<marco_session> ელემენტი"
+
+#: ../src/session.c:1189
+#, c-format
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/session.c:1247 ../src/session.c:1279
+#, fuzzy, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "უცნობი ატრიბუტი წმ ჩართულია<window> ელემენტი"
+
+#: ../src/session.c:1351
+#, fuzzy, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "უცნობი ატრიბუტი წმ ჩართულია<maximized> ელემენტი"
+
+#: ../src/session.c:1411
+#, fuzzy, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "უცნობი ატრიბუტი წმ ჩართულია<geometry> ელემენტი"
+
+#: ../src/session.c:1431
+#, fuzzy, c-format
+msgid "Unknown element %s"
+msgstr "უცნობი ელემენტი წმ"
+
+#: ../src/session.c:1868
+#, fuzzy, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr "შეცდომა დიალოგი -სკენ შესახებ t სესია წმ n"
+
+#: ../src/theme-parser.c:227 ../src/theme-parser.c:245
+#, fuzzy, c-format
+msgid "Line %d character %d: %s"
+msgstr "სტრიქონი %d, სიმბოლო %d: %s"
+
+#: ../src/theme-parser.c:399
+#, fuzzy, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "ატრიბუტი \"%s\" მეორდება ორჯერ იგივე <%s> ელემენტისთვის"
+
+#: ../src/theme-parser.c:417 ../src/theme-parser.c:442
+#, fuzzy, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "ატრიბუტი \"%s\" უმართებლოა <%s> ელემენტისთვის ამ კონტექსტში"
+
+#: ../src/theme-parser.c:503
+#, fuzzy, c-format
+msgid "Integer %ld must be positive"
+msgstr "მთელი რიცხვი"
+
+#: ../src/theme-parser.c:511
+#, fuzzy, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "მთელი რიცხვი არის მაქსიმუმი არის"
+
+#: ../src/theme-parser.c:539 ../src/theme-parser.c:655
+#, fuzzy, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "არა წმ a წერტილი რიცხვი"
+
+#: ../src/theme-parser.c:570 ../src/theme-parser.c:598
+#, fuzzy, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "ლოგიკური ჭეშმარიტი ან მცდარი არა წმ"
+
+#: ../src/theme-parser.c:625
+#, fuzzy, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "კუთხე და g n"
+
+#: ../src/theme-parser.c:688
+#, fuzzy, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "ალფა და g n"
+
+#: ../src/theme-parser.c:753
+#, fuzzy, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr "არასწორი სათაური წმ ის პატარა x პატარა პატარა x n"
+
+#: ../src/theme-parser.c:798 ../src/theme-parser.c:806
+#: ../src/theme-parser.c:888 ../src/theme-parser.c:985
+#: ../src/theme-parser.c:1027 ../src/theme-parser.c:1138
+#: ../src/theme-parser.c:1188 ../src/theme-parser.c:1196
+#: ../src/theme-parser.c:3074 ../src/theme-parser.c:3163
+#: ../src/theme-parser.c:3170 ../src/theme-parser.c:3177
+#, fuzzy, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "არა წმ ატრიბუტი ჩართულია წმ ელემენტი"
+
+#: ../src/theme-parser.c:922 ../src/theme-parser.c:993
+#: ../src/theme-parser.c:1035 ../src/theme-parser.c:1146
+#, fuzzy, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "წმ სახელი წმ a წამი დრო"
+
+#: ../src/theme-parser.c:934 ../src/theme-parser.c:1047
+#: ../src/theme-parser.c:1158
+#, fuzzy, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "წმ წმ არა"
+
+#: ../src/theme-parser.c:1060
+#, fuzzy, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "წმ წმ არა"
+
+#: ../src/theme-parser.c:1073
+#, fuzzy, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "წმ a ან a a"
+
+#: ../src/theme-parser.c:1115
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+
+#: ../src/theme-parser.c:1206
+#, fuzzy, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "უცნობი ტიპი წმ ჩართულია წმ ელემენტი"
+
+#: ../src/theme-parser.c:1217
+#, fuzzy, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "უცნობი მინიჭება წმ ჩართულია წმ ელემენტი"
+
+#: ../src/theme-parser.c:1225
+#, fuzzy, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "ფანჯარა ტიპი წმ a მინიჭება"
+
+#: ../src/theme-parser.c:1261
+msgid "Theme already has a fallback icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1273
+msgid "Theme already has a fallback mini_icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1286 ../src/theme-parser.c:1350
+#: ../src/theme-parser.c:1639 ../src/theme-parser.c:3262
+#: ../src/theme-parser.c:3316 ../src/theme-parser.c:3488
+#: ../src/theme-parser.c:3704 ../src/theme-parser.c:3742
+#: ../src/theme-parser.c:3780 ../src/theme-parser.c:3818
+#, fuzzy, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "ელემენტი <%s> დაუშვებელია <%s> კვანძში"
+
+#: ../src/theme-parser.c:1376 ../src/theme-parser.c:1463
+#: ../src/theme-parser.c:1533
+#, fuzzy, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "არა სახელი ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1383 ../src/theme-parser.c:1470
+#, fuzzy, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "არა ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1414 ../src/theme-parser.c:1428
+#: ../src/theme-parser.c:1487
+#, fuzzy
+msgid "Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr "სიგანე სიმაღლე და თანხმობა"
+
+#: ../src/theme-parser.c:1437
+#, fuzzy, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "წმ არის უცნობი"
+
+#: ../src/theme-parser.c:1496
+#, fuzzy, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "წმ არის უცნობი"
+
+#: ../src/theme-parser.c:1540
+#, fuzzy, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "არა ზემოთ ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1547
+#, fuzzy, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "არა ქვემოთ ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1554
+#, fuzzy, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "არა მარცხენა ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1561
+#, fuzzy, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "არა მარჯვენა ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1593
+#, fuzzy, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "ჩარჩო წმ არის უცნობი"
+
+#: ../src/theme-parser.c:1746 ../src/theme-parser.c:1856
+#: ../src/theme-parser.c:1963 ../src/theme-parser.c:2190
+#: ../src/theme-parser.c:3007
+#, fuzzy, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "არა ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1753
+#, fuzzy, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "არა ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1760 ../src/theme-parser.c:2852
+#, fuzzy, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "არა ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1767
+#, fuzzy, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "არა ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1774 ../src/theme-parser.c:2859
+#, fuzzy, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "არა ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1863 ../src/theme-parser.c:1970
+#: ../src/theme-parser.c:2116 ../src/theme-parser.c:2197
+#: ../src/theme-parser.c:2303 ../src/theme-parser.c:2401
+#: ../src/theme-parser.c:2621 ../src/theme-parser.c:2747
+#: ../src/theme-parser.c:2845 ../src/theme-parser.c:2919
+#: ../src/theme-parser.c:3014
+#, fuzzy, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "არა x ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1870 ../src/theme-parser.c:1977
+#: ../src/theme-parser.c:2123 ../src/theme-parser.c:2204
+#: ../src/theme-parser.c:2310 ../src/theme-parser.c:2408
+#: ../src/theme-parser.c:2628 ../src/theme-parser.c:2754
+#: ../src/theme-parser.c:2926 ../src/theme-parser.c:3021
+#, fuzzy, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "არა y ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1877 ../src/theme-parser.c:1984
+#: ../src/theme-parser.c:2130 ../src/theme-parser.c:2211
+#: ../src/theme-parser.c:2317 ../src/theme-parser.c:2415
+#: ../src/theme-parser.c:2635 ../src/theme-parser.c:2761
+#: ../src/theme-parser.c:2933
+#, fuzzy, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "არა სიგანე ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:1884 ../src/theme-parser.c:1991
+#: ../src/theme-parser.c:2137 ../src/theme-parser.c:2218
+#: ../src/theme-parser.c:2324 ../src/theme-parser.c:2422
+#: ../src/theme-parser.c:2642 ../src/theme-parser.c:2768
+#: ../src/theme-parser.c:2940
+#, fuzzy, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "არა სიმაღლე ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:2000
+#, fuzzy, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "არა დასაწყისი კუთხე ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:2007
+#, fuzzy, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "არა კუთხე ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:2016
+#, fuzzy, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "არა დასაწყისი კუთხე ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:2023
+#, fuzzy, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "არა კუთხე ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:2225
+#, fuzzy, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "არა ალფა ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:2296
+#, fuzzy, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "არა ტიპი ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:2344
+#, fuzzy, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "არა წმ ტიპი ის"
+
+#: ../src/theme-parser.c:2429
+#, fuzzy, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "არა ფაილის სახელი ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:2454 ../src/theme-parser.c:2965
+#, fuzzy, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "არა ტიპი წმ წმ ელემენტი"
+
+#: ../src/theme-parser.c:2600 ../src/theme-parser.c:2733
+#: ../src/theme-parser.c:2838
+#, fuzzy, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "არა ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:2607 ../src/theme-parser.c:2740
+#, fuzzy, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "არა ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:2614
+#, fuzzy, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "არა ისარი ატრიბუტი ჩართულია ელემენტი წმ"
+
+#: ../src/theme-parser.c:2667 ../src/theme-parser.c:2789
+#: ../src/theme-parser.c:2877
+#, fuzzy, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "არა წმ წმ ელემენტი"
+
+#: ../src/theme-parser.c:2677 ../src/theme-parser.c:2799
+#, fuzzy, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "არა წმ წმ ელემენტი"
+
+#: ../src/theme-parser.c:2687
+#, fuzzy, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "არა ისარი წმ წმ ელემენტი"
+
+#: ../src/theme-parser.c:3100 ../src/theme-parser.c:3216
+#, fuzzy, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "არა<draw_ops> წმ"
+
+#: ../src/theme-parser.c:3112 ../src/theme-parser.c:3228
+#, fuzzy, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "წმ a"
+
+#: ../src/theme-parser.c:3291
+#, fuzzy, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "არა ატრიბუტი ჩართულია წმ ელემენტი"
+
+#: ../src/theme-parser.c:3348
+#, fuzzy, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "არა ატრიბუტი ჩართულია წმ ელემენტი"
+
+#: ../src/theme-parser.c:3357
+#, fuzzy, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "უცნობი წმ ჩარჩო"
+
+#: ../src/theme-parser.c:3365
+#, fuzzy, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "ბლოკი a ეთ წმ"
+
+#: ../src/theme-parser.c:3382 ../src/theme-parser.c:3473
+#, fuzzy, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "არა<draw_ops> სახელი წმ"
+
+#: ../src/theme-parser.c:3410
+#, fuzzy, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "არა ფუნქცია ატრიბუტი ჩართულია წმ ელემენტი"
+
+#: ../src/theme-parser.c:3418 ../src/theme-parser.c:3534
+#, fuzzy, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "არა ატრიბუტი ჩართულია წმ ელემენტი"
+
+#: ../src/theme-parser.c:3427
+#, fuzzy, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "უცნობი ფუნქცია წმ"
+
+#: ../src/theme-parser.c:3436
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+
+#: ../src/theme-parser.c:3448
+#, fuzzy, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "უცნობი წმ"
+
+#: ../src/theme-parser.c:3456
+#, fuzzy, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "ბლოკი a ფუნქცია წმ წმ"
+
+#: ../src/theme-parser.c:3526
+#, fuzzy, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "არა ატრიბუტი ჩართულია წმ ელემენტი"
+
+#: ../src/theme-parser.c:3542
+#, fuzzy, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "არა ატრიბუტი ჩართულია წმ ელემენტი"
+
+#: ../src/theme-parser.c:3551
+#, fuzzy, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "წმ არის არა a ატრიბუტი"
+
+#: ../src/theme-parser.c:3560
+#, fuzzy, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "წმ არის არა a ატრიბუტი"
+
+#: ../src/theme-parser.c:3570
+#, fuzzy, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "A წმ არა"
+
+#: ../src/theme-parser.c:3581
+#, fuzzy, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "არა ატრიბუტი ჩართულია წმ ელემენტი"
+
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3614
+#, fuzzy, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "წმ არის არა a ატრიბუტი"
+
+#: ../src/theme-parser.c:3625
+#, fuzzy, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "არა ატრიბუტი ჩართულია წმ ელემენტი გაშლილი"
+
+#: ../src/theme-parser.c:3639
+#, fuzzy, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "არა ატრიბუტი ჩართულია წმ ელემენტი გაშლილი"
+
+#: ../src/theme-parser.c:3653 ../src/theme-parser.c:3675
+#, fuzzy, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "სტილი წმ წმ წმ"
+
+#: ../src/theme-parser.c:3664 ../src/theme-parser.c:3686
+#, fuzzy, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "სტილი წმ წმ"
+
+#: ../src/theme-parser.c:3725
+#, fuzzy
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "t a a<piece> ელემენტი a ატრიბუტი და a<draw_ops> ელემენტი ან"
+
+#: ../src/theme-parser.c:3763
+#, fuzzy
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "t a a<button> ელემენტი a ატრიბუტი და a<draw_ops> ელემენტი ან"
+
+#: ../src/theme-parser.c:3801
+#, fuzzy
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "t a a<menu_icon> ელემენტი a ატრიბუტი და a<draw_ops> ელემენტი ან"
+
+#: ../src/theme-parser.c:3849
+#, fuzzy, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "ელემენტი დუ<marco_theme> არა წმ"
+
+#: ../src/theme-parser.c:3869
+#, fuzzy, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "ელემენტი წმ არის არა a სახელი თარიღი აღწერა ელემენტი"
+
+#: ../src/theme-parser.c:3874
+#, fuzzy, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "ელემენტი წმ არის არა a<constant> ელემენტი"
+
+#: ../src/theme-parser.c:3886
+#, fuzzy, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "ელემენტი წმ არის არა a თანხმობა ელემენტი"
+
+#: ../src/theme-parser.c:3908
+#, fuzzy, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "ელემენტი წმ არის არა a ელემენტი"
+
+#: ../src/theme-parser.c:3918 ../src/theme-parser.c:3948
+#: ../src/theme-parser.c:3953 ../src/theme-parser.c:3958
+#, fuzzy, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "ელემენტი <%s> დაუშვებელია <%s> ელემენტში"
+
+#: ../src/theme-parser.c:4180
+#, fuzzy
+msgid "No draw_ops provided for frame piece"
+msgstr "არა ჩარჩო"
+
+#: ../src/theme-parser.c:4195
+#, fuzzy
+msgid "No draw_ops provided for button"
+msgstr "არა"
+
+#: ../src/theme-parser.c:4247
+#, fuzzy, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "ელემენტში <%s> ტექსტი დაუშვებელია"
+
+#: ../src/theme-parser.c:4302
+msgid "<name> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4313
+msgid "<author> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4324
+msgid "<copyright> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4335
+msgid "<date> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4346
+msgid "<description> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4573
+#, fuzzy, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "ვერ განხორციელდა -სკენ ფაილი წმ წმ n"
+
+#: ../src/theme-parser.c:4629
+#, fuzzy, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "გაფორმება ფაილი წმ არა შეიცავს a root<marco_theme> ელემენტი"
+
+#: ../src/theme-viewer.c:74
+#, fuzzy
+msgid "/_Windows"
+msgstr "ფანჯრები"
+
+#: ../src/theme-viewer.c:75
+#, fuzzy
+msgid "/Windows/tearoff"
+msgstr "ფანჯრები"
+
+#: ../src/theme-viewer.c:76
+#, fuzzy
+msgid "/Windows/_Dialog"
+msgstr "ფანჯრები დიალოგი"
+
+#: ../src/theme-viewer.c:77
+#, fuzzy
+msgid "/Windows/_Modal dialog"
+msgstr "ფანჯრები მოდალური დიალოგი"
+
+#: ../src/theme-viewer.c:78
+#, fuzzy
+msgid "/Windows/_Utility"
+msgstr "ფანჯრები"
+
+#: ../src/theme-viewer.c:79
+#, fuzzy
+msgid "/Windows/_Splashscreen"
+msgstr "ფანჯრები"
+
+#: ../src/theme-viewer.c:80
+#, fuzzy
+msgid "/Windows/_Top dock"
+msgstr "ფანჯრები ზემოთ"
+
+#: ../src/theme-viewer.c:81
+#, fuzzy
+msgid "/Windows/_Bottom dock"
+msgstr "ფანჯრები ქვემოთ"
+
+#: ../src/theme-viewer.c:82
+#, fuzzy
+msgid "/Windows/_Left dock"
+msgstr "ფანჯრები მარცხნივ"
+
+#: ../src/theme-viewer.c:83
+#, fuzzy
+msgid "/Windows/_Right dock"
+msgstr "ფანჯრები მარჯვნივ"
+
+#: ../src/theme-viewer.c:84
+#, fuzzy
+msgid "/Windows/_All docks"
+msgstr "ფანჯრები ყველა"
+
+#: ../src/theme-viewer.c:85
+#, fuzzy
+msgid "/Windows/Des_ktop"
+msgstr "ფანჯრები"
+
+#: ../src/theme-viewer.c:134
+#, fuzzy
+msgid "Open another one of these windows"
+msgstr "გახსნა ის"
+
+#: ../src/theme-viewer.c:141
+#, fuzzy
+msgid "This is a demo button with an 'open' icon"
+msgstr " არის a გახსნა ხატულა"
+
+#: ../src/theme-viewer.c:148
+#, fuzzy
+msgid "This is a demo button with a 'quit' icon"
+msgstr " არის a a დასრულება ხატულა"
+
+#: ../src/theme-viewer.c:241
+#, fuzzy
+msgid "This is a sample message in a sample dialog"
+msgstr " არის a დუ a დიალოგი"
+
+#: ../src/theme-viewer.c:324
+#, fuzzy, c-format
+msgid "Fake menu item %d\n"
+msgstr "მენიუ n"
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "მხოლოდ ფანჯარის ჩარჩო"
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr "ზოლი"
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "ჩვეულებრივი ფანჯარა"
+
+#: ../src/theme-viewer.c:381
+msgid "Dialog Box"
+msgstr "დიალოგ ფანჯარა"
+
+#: ../src/theme-viewer.c:385
+msgid "Modal Dialog Box"
+msgstr "მოდალური დიალოგ ფანჯარა"
+
+#: ../src/theme-viewer.c:389
+msgid "Utility Palette"
+msgstr "დამხმარე პალიტრა"
+
+#: ../src/theme-viewer.c:393
+msgid "Torn-off Menu"
+msgstr "გამოყოფილი მენიუ"
+
+#: ../src/theme-viewer.c:397
+msgid "Border"
+msgstr "ჩარჩო"
+
+#: ../src/theme-viewer.c:725
+#, c-format
+msgid "Button layout test %d"
+msgstr "ღილკთა განლაგების ტესტი %d"
+
+#: ../src/theme-viewer.c:754
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "ფანჯრის ჩარჩოს დახატვისთვის საჭირო %g მილიწამი"
+
+#: ../src/theme-viewer.c:797
+#, fuzzy, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "გამოყენება n"
+
+#: ../src/theme-viewer.c:804
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "გაფორმების თემის ჩატვირთვისას დაიშვა შეცდომა: %s\n"
+
+#: ../src/theme-viewer.c:810
+#, fuzzy, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "ჩატვირთულია წმ დუ g წამები n"
+
+#: ../src/theme-viewer.c:833
+#, fuzzy
+msgid "Normal Title Font"
+msgstr "ჩვეულებრივი სათაური შრიფტი"
+
+#: ../src/theme-viewer.c:839
+#, fuzzy
+msgid "Small Title Font"
+msgstr "პატარა სათაური შრიფტი"
+
+#: ../src/theme-viewer.c:845
+#, fuzzy
+msgid "Large Title Font"
+msgstr "დიდი სათაური შრიფტი"
+
+#: ../src/theme-viewer.c:850
+#, fuzzy
+msgid "Button Layouts"
+msgstr "ღილაკი"
+
+#: ../src/theme-viewer.c:855
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/theme-viewer.c:902
+#, fuzzy
+msgid "Window Title Goes Here"
+msgstr "ფანჯარა სათაური"
+
+#: ../src/theme-viewer.c:1006
+#, fuzzy, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr "კადრები დუ g წამები g მილიწამები ჩარჩო და g წამები დრო X g მილიწამები ჩარჩო n"
+
+#: ../src/theme-viewer.c:1219
+#, fuzzy
+msgid "position expression test returned TRUE but set error"
+msgstr "მინიჭება შეცდომა"
+
+#: ../src/theme-viewer.c:1221
+#, fuzzy
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "t მინიჭება შეცდომა"
+
+#: ../src/theme-viewer.c:1225
+#, fuzzy
+msgid "Error was expected but none given"
+msgstr "შეცდომა არა"
+
+#: ../src/theme-viewer.c:1227
+#, fuzzy, c-format
+msgid "Error %d was expected but %d given"
+msgstr "შეცდომა"
+
+#: ../src/theme-viewer.c:1233
+#, fuzzy, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "შეცდომა არა წმ"
+
+#: ../src/theme-viewer.c:1237
+#, fuzzy, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x"
+
+#: ../src/theme-viewer.c:1240
+#, fuzzy, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y"
+
+#: ../src/theme-viewer.c:1303
+#, fuzzy, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "დუ g წამები g წამები n"
+
+#: ../src/theme.c:206
+msgid "top"
+msgstr "ზემოთ"
+
+#: ../src/theme.c:208
+msgid "bottom"
+msgstr "ქვემოთ"
+
+#: ../src/theme.c:210
+msgid "left"
+msgstr "მარცხნივ"
+
+#: ../src/theme.c:212
+msgid "right"
+msgstr "მარჯვნივ"
+
+#: ../src/theme.c:226
+#, fuzzy, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "ჩარჩო არა წმ"
+
+#: ../src/theme.c:245
+#, fuzzy, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "ჩარჩო არა წმ წმ"
+
+#: ../src/theme.c:282
+#, fuzzy, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "ღილაკი თანხმობა g არის არა"
+
+#: ../src/theme.c:294
+#, fuzzy, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "ბლოკი არა ზომა ის"
+
+#: ../src/theme.c:925
+#, fuzzy, c-format
+msgid "Gradients should have at least two colors"
+msgstr "ეთ ფერები"
+
+#: ../src/theme.c:1051
+#, fuzzy, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr "დუ e g არის არა წმ"
+
+#: ../src/theme.c:1065
+#, fuzzy, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "a დახურვა e g არის არა წმ"
+
+#: ../src/theme.c:1076
+#, fuzzy, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "არა წმ დუ"
+
+#: ../src/theme.c:1089
+#, fuzzy, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "არა წმ დუ"
+
+#: ../src/theme.c:1119
+#, fuzzy, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "ადღვებვა არის ალფა წმ არა"
+
+#: ../src/theme.c:1130
+#, fuzzy, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "არა ალფა წმ დუ"
+
+#: ../src/theme.c:1140
+#, fuzzy, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "ალფა წმ დუ არის არა და 0"
+
+#: ../src/theme.c:1187
+#, fuzzy, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "ჩრდილი არის ფუძე ფაქტორი წმ არა"
+
+#: ../src/theme.c:1198
+#, fuzzy, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "არა ფაქტორი წმ დუ"
+
+#: ../src/theme.c:1208
+#, fuzzy, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "ჩრდილი ფაქტორი წმ დუ არის"
+
+#: ../src/theme.c:1237
+#, fuzzy, c-format
+msgid "Could not parse color \"%s\""
+msgstr "არა წმ"
+
+#: ../src/theme.c:1496
+#, fuzzy, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "კოორდინატა შეიცავს წმ არის არა"
+
+#: ../src/theme.c:1523
+#, fuzzy, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "კოორდინატა შეიცავს წერტილი რიცხვი წმ არა"
+
+#: ../src/theme.c:1537
+#, fuzzy, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "კოორდინატა შეიცავს მთელი წმ არა"
+
+#: ../src/theme.c:1604
+#, fuzzy, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "კოორდინატა უცნობი ეთ დასაწყისი ის ტექსტი წმ"
+
+#: ../src/theme.c:1661
+#, fuzzy, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "კოორდინატა ან არა"
+
+#: ../src/theme.c:1798 ../src/theme.c:1808 ../src/theme.c:1842
+#, fuzzy, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "კოორდინატა დუ"
+
+#: ../src/theme.c:1850
+#, fuzzy, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "კოორდინატა -სკენ ჩართულია a წერტილი რიცხვი"
+
+#: ../src/theme.c:1906
+#, fuzzy, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "კოორდინატა წმ"
+
+#: ../src/theme.c:1915
+#, fuzzy, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "კოორდინატა"
+
+#: ../src/theme.c:1923
+#, fuzzy, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "კოორდინატა ის"
+
+#: ../src/theme.c:1933
+#, fuzzy, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "კოორდინატა არა დუ"
+
+#: ../src/theme.c:2051
+#, fuzzy, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "კოორდინატა ან არა"
+
+#: ../src/theme.c:2080
+#, fuzzy, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "კოორდინატა a დახურვა არა გახსნა"
+
+#: ../src/theme.c:2142
+#, fuzzy, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "კოორდინატა უცნობი ცვლადი ან წმ"
+
+#: ../src/theme.c:2197
+#, fuzzy, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "კოორდინატა გახსნა არა დახურვა"
+
+#: ../src/theme.c:2208
+#, fuzzy, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "კოორდინატა t -სკენ ნებისმიერი ან"
+
+#: ../src/theme.c:2449 ../src/theme.c:2471 ../src/theme.c:2492
+#, fuzzy, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "გაფორმება წმ დუ შეცდომა წმ n"
+
+#: ../src/theme.c:3946
+#, fuzzy, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> ჩარჩო"
+
+#: ../src/theme.c:4422 ../src/theme.c:4447
+#, fuzzy, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "არ არის<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/theme.c:4493
+#, fuzzy, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "ვერ განხორციელდა -სკენ წმ წმ n"
+
+#: ../src/theme.c:4603 ../src/theme.c:4610 ../src/theme.c:4617
+#: ../src/theme.c:4624 ../src/theme.c:4631
+#, fuzzy, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "არა წმ მინიჭება წმ"
+
+#: ../src/theme.c:4639
+#, fuzzy, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"არა ჩარჩო მინიჭება ფანჯარა ტიპი წმ დუ წმ დამატება a<window type=\"%s\" "
+"style_set=\"whatever\"/> ელემენტი"
+
+#: ../src/theme.c:5006 ../src/theme.c:5068 ../src/theme.c:5131
+#, fuzzy, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "მომხმარებელი a წმ არა"
+
+#: ../src/theme.c:5014 ../src/theme.c:5076 ../src/theme.c:5139
+#, fuzzy, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "წმ"
+
+#: ../src/util.c:98
+#, fuzzy, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "ვერ განხორციელდა -სკენ გახსნა განბზიკვა წმ n"
+
+#: ../src/util.c:108
+#, fuzzy, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "ვერ განხორციელდა -სკენ ფაილი წმ წმ n"
+
+#: ../src/util.c:114
+#, fuzzy, c-format
+msgid "Opened log file %s\n"
+msgstr "ფაილი წმ n"
+
+#: ../src/util.c:231
+msgid "Window manager: "
+msgstr "ფანჯარათა მმართველი: "
+
+#: ../src/util.c:379
+msgid "Bug in window manager: "
+msgstr "შეცდომა ფანჯარათა მმართველში: "
+
+#: ../src/util.c:408
+msgid "Window manager warning: "
+msgstr "ფანჯარათა მმართველის გაფრთხილება: "
+
+#: ../src/util.c:432
+msgid "Window manager error: "
+msgstr "ფანჯარათა მმართველის შეცდომა: "
+
+#: ../src/window-props.c:192
+#, fuzzy, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "პროგრამა მინიჭება a NET PID n"
+
+#: ../src/window-props.c:324
+#, c-format
+msgid "%s (on %s)"
+msgstr ""
+
+#: ../src/window-props.c:1406
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+
+#. first time through
+#: ../src/window.c:5551
+#, fuzzy, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr "ფანჯარა წმ ID ჩართულია ის ჩართულია ფანჯარა დუ n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:6116
+#, fuzzy, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr "ფანჯარა წმ მინიშნება t წთ ზომა x და მაქსიმუმი ზომა x t n"
+
+#: ../src/xprops.c:155
+#, fuzzy, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"ფანჯარა წმ -სკენ ტიპი წმ ტიპი წმ n არის პროგრამა არა a ფანჯარა ფანჯარა "
+"სათაური წმ კლასი წმ სახელი წმ n"
+
+#: ../src/xprops.c:401
+#, fuzzy, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "მდგომარეობა წმ ჩართულია ფანჯარა არასწორი n"
+
+#: ../src/xprops.c:484
+#, fuzzy, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "მდგომარეობა წმ ჩართულია ფანჯარა არასწორი დუ სია n"
+
diff --git a/po/kn.po b/po/kn.po
new file mode 100644
index 00000000..ef5fd5f6
--- /dev/null
+++ b/po/kn.po
@@ -0,0 +1,2453 @@
+# translation of marco.master.kn.po to Kannada
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Shankar Prasad <[email protected]>, 2008, 2009, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.master.kn\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-22 15:45+0530\n"
+"PO-Revision-Date: 2010-04-22 15:54+0530\n"
+"Last-Translator: Shankar Prasad <[email protected]>\n"
+"Language-Team: kn-IN <>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Lokalize 1.0\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "ಗಣಕತೆರೆ"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "ವಿಂಡೊ ನಿರ್ವಹಣೆ"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "ಗಂಟೆ ಸನ್ನಿವೇಶ"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "ಗೊತ್ತಿರದ ವಿಂಡೊ ಮಾಹಿತಿಯ ಮನವಿ: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> ಪ್ರತಿಕ್ರಿಯಿಸುತ್ತಿಲ್ಲ."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"ಅದು ಮುಂದುವರೆಯುವರೆಗೆ ನೀವು ಸ್ವಲ್ಪ ಹೊತ್ತು ಕಾಯಬಹುದು ಅಥವ ಅನ್ವಯವನ್ನು ಒತ್ತಾಯಪೂರ್ವಕವಾಗಿ "
+"ಸಂಪೂರ್ಣವಾಗಿ ಮುಚ್ಚಬಹುದು"
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "ನಿರೀಕ್ಷಿಸು(_W)"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "ಬಲವಂತವಾಗಿ ಮುಚ್ಚು(_F)"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "ಅತಿಥೇಯದ ಹೆಸರನ್ನು ಪಡೆಯುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "ಮಿಶ್ರಗೊಳಿಕೆಗಾಗಿ ಅಗತ್ಯವಿರುವ %s ವಿಸ್ತರಣೆಯು ಕಾಣೆಯಾಗಿದೆ"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X ವಿಂಡೊ ಗಣಕ ಪ್ರದರ್ಶಕ '%s' ಅನ್ನು ತೆರೆಯುವಲ್ಲಿ ವಿಫಲತೆ\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"ಪ್ರದರ್ಶಕ '%s' ಕ್ಕಾಗಿನ ಸಂಪರ್ಕವು ಕಡಿದು ಹೋಗಿದೆ;\n"
+"ಬಹುಷಃ X ಪರಿಚಾರಕವು ಮುಚ್ಚಲ್ಪಟ್ಟಿರಬಹುದು ಅಥವ ನೀವು ವಿಂಡೋ ವ್ಯವಸ್ಥಾಪಕನನ್ನು \n"
+"ಕೊಂದಿದ್ದೀರಿ ಅಥವ ನಾಶಗೊಳಿಸಿದ್ದೀರಿ\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "ಅಪಾಯಕಾರಿ IO ದೋಷ %d (%s), ಪ್ರದರ್ಶಕ '%s' ದಲ್ಲಿ.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"ಬೇರೊಂದಿ ಪ್ರೊಗ್ರಾಂ, ಕೀಲಿ %s ಅನ್ನು ಮಾರ್ಪಡಕಗಳಾದ %x ದೊಂದಿಗೆ ಬೈಂಡಿಂಗ್ ಆಗಿ ಈಗಾಗಲೆ "
+"ಬಳಸುತ್ತಿದೆ\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"ಒಂದು ಚಲಾವಣಾ ದೋಷ <tt>%s</tt> ಎದುರಾಗಿದೆ:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "ಯಾವುದೆ %d ಆಜ್ಞೆಯು ಸೂಚಿತಗೊಂಡಿಲ್ಲ.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "ಯಾವುದೆ ಟರ್ಮಿನಲ್ ಆಜ್ಞೆಯು ಸೂಚಿತಗೊಂಡಿಲ್ಲ.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"ಮೆಟಾಸಿಟಿ %s\n"
+"ಹಕ್ಕು (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "ಅಧಿವೇಶನ ನಿರ್ವಾಹಕದೊಂದಿಗೆ ಸಂಪರ್ಕವನ್ನು ಅಶಕ್ತಗೊಳಿಸು"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "ಚಲಾಯಿತಗೊಳ್ಳುತ್ತಿರುವ ವಿಂಡೊ ವ್ಯವಸ್ಥಾಪಕವನ್ನು Marco ಯೊಂದಿಗೆ ಬದಲಾಯಿಸಿ"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "ಅಧಿವೇಶನ ವ್ಯವಸ್ಥಾಪನಾ ID ಯನ್ನು ಸೂಚಿಸಿ"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "ಬಳಕೆಗಾಗಿ X ಪ್ರದರ್ಶಕ"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "ಉಳಿಸಲಾದ ಕಡತದಿಂದ ಅಧಿವೇಶನವನ್ನು ಆರಂಭಿಸಿ"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "ಮುದ್ರಿಸಬಹುದಾದ ಆವೃತ್ತಿ"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "X ಕರೆಗಳನ್ನು ಮೇಳೈಸುವಂತೆ ಮಾಡು"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "ಮಿಶ್ರಗೊಳಿಸುವುದನ್ನು ಆನ್‌ ಮಾಡು"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "ಮಿಶ್ರಗೊಳಿಸುವುದನ್ನು ಆಫ್‌ ಮಾಡು"
+
+#: ../src/core/main.c:322
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "ಹಿಗ್ಗಿಸಲಾದ ಹಾಗು ಯಾವುದೆ ಅಲಂಕಾರ ಮಾಡದೆ ಇರುವ ವಿಂಡೊಗಳನ್ನು ಪೂರ್ಣತೆರೆಯಾಗಿಸಬೇಡ"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "ಥೀಮ್‍ಗಳನ್ನು ಶೋಧಿಸುವಲ್ಲಿ ಕೋಶವನ್ನು ವಿಫಲಗೊಂಡಿದೆ: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"ಥೀಮ್‍ಗಳನ್ನು ಪತ್ತೆ ಮಾಡಲಾಗಲಿಲ್ಲ! %s ವು ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ ಹಾಗು ರೂಢಿಯ ಥೀಮ್‍ಗಳನ್ನು ಹೊಂದಿದೆ "
+"ಎಂದು ಖಚಿತ ಪಡಿಸಿಕೊಳ್ಳಿ.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "ಪುನರ್ ಆರಂಭಿಸುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf ಕೀಲಿ \"%s\" ಯು ಒಂದು ಮಾನ್ಯವಾದ ಮೌಲ್ಯಕ್ಕೆ ಹೊಂದಿಸಲ್ಪಟ್ಟಿಲ್ಲ\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d MateConf ಕೀಲಿ %s ಯಲ್ಲಿ ಉಳಿಸಲಾಗಿದ್ದು %d ಇಂದ %d ವರೆಗಿನ ವ್ಯಾಪ್ತಿಯ ಹೊರಗಿದೆ\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf ಕೀಲಿ \"%s\" ಯು ಒಂದು ಮಾನ್ಯವಾದ ಬಗೆಗೆ ಹೊಂದಿಸಲ್ಪಟ್ಟಿಲ್ಲ\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"ಹಾಳಾದ ಅನ್ವಯಗಳಿಗಾಗಿನ ಪರ್ಯಾಯ ಮಾರ್ಗಗಳನ್ನು ಅಶಕ್ತಗೊಳಿಸಲಾಗಿದೆ. ಕೆಲವು ಅನ್ವಯಗಳು ಸಮರ್ಪಕವಾಗಿ "
+"ಕೆಲಸ ಮಾಡದೆ ಇರಬಹುದು.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "ಅಕ್ಷರಶೈಲಿ ವಿವರಣೆ \"%s\" ಅನ್ನು MateConf ಕೀಲಿ %s ಇಂದ ಪಾರ್ಸ್ ಮಾಡಲಾಗಿಲ್ಲ\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "ಸಂರಚನಾ ದತ್ತಸಂಚಯದಲ್ಲಿ ಕಂಡು ಬಂದಂತಹ \"%s\" ಮೌಸ್‌ ಗುಂಡಿಗೆ ಮಾನ್ಯವಾದ ಮಾರ್ಪಡಕವಾಗಿಲ್ಲ\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "%d ಗೆ ಕಾರ್ಯಕ್ಷೇತ್ರಗಳ ಸಂಖ್ಯೆಯನ್ನು ಹೊಂದಿಸುವಲ್ಲಿ ದೋಷ: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"ಸಂರಚನಾ ದತ್ತಸಂಚಯದಲ್ಲಿ ಕಂಡು ಬಂದಂತಹ \"%s\" ವು ಕೀಲಿ ಬೈಂಡಿಂಗ್ \"%s\" ಗೆ ಮಾನ್ಯವಾದ "
+"ಮಾರ್ಪಡಕವಾಗಿಲ್ಲ\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "%d ಕಾರ್ಯಕ್ಷೇತ್ರದ ಹೆಸರನ್ನು \"%s\" ಗೆ ಬದಲಾಯಿಸುವಲ್ಲಿ ದೋಷ: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "ಸಮ್ಮಿಶ್ರಕದ(ಕಂಪೋಸಿಟರ್) ಸ್ಥಿತಿಯನ್ನು ಸಿದ್ದಗೊಳಿಸುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "ತೆರೆ %d (ಪ್ರದರ್ಶಕ '%s' ದಲ್ಲಿನ) ಅಮಾನ್ಯವಾಗಿದೆ\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"ತೆರೆ %d ಯು (ಪ್ರದರ್ಶಕ \"%s\" ದಲ್ಲಿನ) ಈಗಾಗಲೆ ಒಂದು ವಿಂಡೋ ವ್ಯವಸ್ಥಾಪಕವನ್ನು ಹೊಂದಿದೆ; --"
+"replace ಅನ್ನು ಬಳಸಿಕೊಂಡು ಪ್ರಸಕ್ತ ವಿಂಡೋ ವ್ಯವಸ್ಥಾಪಕವನ್ನು ಬದಲಾಯಿಸಿ.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "ತೆರೆ %d ಯಲ್ಲಿನ ಪ್ರದರ್ಶಕ \"%s\" ದಲ್ಲಿನ ವಿಂಡೊ ವ್ಯವಸ್ಥಾಪಕದ ಆಯ್ಕೆಯನ್ನು ಪಡೆಯಲಾಗಲಿಲ್ಲ\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "ತೆರೆ %d ಯು (ಪ್ರದರ್ಶಕ \"%s\" ದಲ್ಲಿನ) ಈಗಾಗಲೆ ಒಂದು ವಿಂಡೋ ವ್ಯವಸ್ಥಾಪಕವನ್ನು ಹೊಂದಿದೆ\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "ತೆರೆ %d ಯನ್ನು (ಪ್ರದರ್ಶಕ \"%s\" ದಲ್ಲಿನ) ಬಿಡುಗಡೆಗೊಳಿಸಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"ಇದರ ವಿನ್ಯಾಸವು ಹೀಗೆ ಕಾಣಿಸುತ್ತದೆ\"<Control>a\" ಅಥವ <Shift><Alt>F1\".\n"
+"\n"
+"ಪಾರ್ಸರ್ ಬಹಳ ಉದಾರಿ ಹಾಗು ಕೆಳಗಿನ ಹಾಗು ಮೇಲಿನ ಕೇಸ್‍ಗಳನ್ನು ಅನುಮತಿಸುತ್ತದೆ, ಹಾಗು \"<Ctl>\" "
+"ಹಾಗು \"<Ctrl>\" ನಂತಹ ಸಂಕ್ಷಿಪ್ತ ರೂಪಗಳನ್ನೂ ಸಹ ಅನುಮತಿಸುತ್ತದೆ. ನೀವು ವಿಶೇಷ ವಾಕ್ಯದ "
+"ಆಯ್ಕೆಯನ್ನು \"disabled\"(ಅಶಕ್ತಗೊಂಡ) ಗೆ ಹೊಂದಿಸಿದಲ್ಲಿ, ಈ ಕ್ರಿಯೆಗೆ ಯಾವುದೆ ಕೀಬೈಂಡಿಂಗ್ "
+"ಇರುವುದಿಲ್ಲ."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"ಇದರ ವಿನ್ಯಾಸವು ಹೀಗೆ ಕಾಣಿಸುತ್ತದೆ\"<Control>a\" ಅಥವ <Shift><Alt>F1\".\n"
+"\n"
+"ಪಾರ್ಸರ್ ಬಹಳ ಉದಾರಿ ಹಾಗು ಕೆಳಗಿನ ಹಾಗು ಮೇಲಿನ ಕೇಸ್‍ಗಳನ್ನು ಅನುಮತಿಸುತ್ತದೆ, ಹಾಗು \"<Ctl>\" "
+"ಹಾಗು \"<Ctrl>\" ನಂತಹ ಸಂಕ್ಷಿಪ್ತ ರೂಪಗಳನ್ನೂ ಸಹ ಅನುಮತಿಸುತ್ತದೆ. ನೀವು ವಿಶೇಷ ವಾಕ್ಯದ "
+"ಆಯ್ಕೆಯನ್ನು \"disabled\"(ಅಶಕ್ತಗೊಂಡ) ಗೆ ಹೊಂದಿಸಿದಲ್ಲಿ, ಈ ಕ್ರಿಯೆಗೆ ಯಾವುದೆ ಕೀಬೈಂಡಿಂಗ್ "
+"ಇರುವುದಿಲ್ಲ.\n"
+"\n"
+"\"shift\" ಕೀಲಿಯನ್ನು ಒತ್ತಿಹಿಡಿಯುವ ಮೂಲಕ ಈ ಕೀಲಿಬೈಂಡಿಂಗ್‌ ಅನ್ನು ವಿಲೋಮಗೊಳಿಸಬಹುದು; "
+"ಆದ್ದರಿಂದ, ಇದು ಬಳಸುವ ಒಂದು ಕೀಲಿಗಳಲ್ಲಿ \"shift\" ಇರುವುದಿಲ್ಲ."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "ಕೋಶ '%s' ಅನ್ನು ಸೃಜಿಸಲಾಗಲಿಲ್ಲ: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "ಅಧಿವೇಶನ ಕಡತ '%s' ಅನ್ನು ಬರೆಯಲು ತೆಗೆಯಲಾಗಿಲ್ಲ: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "ಅಧಿವೇಶನ ಕಡತ '%s' ಅನ್ನು ಬರೆಯುವಲ್ಲಿ ದೋಷ: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "ಅಧಿವೇಶನ ಕಡತ '%s' ಅನ್ನು ಮುಚ್ಚುವಲ್ಲಿ ದೋಷ: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "ಉಳಿಸಲಾದ ಅಧಿವೇಶನ ಕಡತ %s ಅನ್ನು ಓದಲು ವಿಫಲಗೊಂಡಿದೆ: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "ಉಳಿಸಲಾದ ಅಧಿವೇಶನ ಕಡತವನ್ನು ಪಾರ್ಸ್ ಮಾಡಲು ವಿಫಲಗೊಂಡಿದೆ: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"<marco_session> ಗುಣ ವಿಶೇಷವು ಕಾಣಿಸಿಕೊಂಡಿದೆ ಆದರೆ ನಾವು ಅಧಿವೇಶನ ID ಅನ್ನು "
+"ಹೊಂದಿದ್ದೇನೆ"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "ಗೊತ್ತಿರದ ಗುಣ ವಿಶೇಷ %s <%s> ಘಟಕದಲ್ಲಿ"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "ನೆಸ್ಟ್ ಮಾಡಲಾದ <window> ಟ್ಯಾಗ್"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "ಗೊತ್ತಿರದ %s ಘಟಕ"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"ಈ ವಿಂಡೊಗಳು &quot;ಪ್ರಸಕ್ತ ಸಿದ್ಧತೆಗಳನ್ನು ಉಳಿಸು&quot;ವುದನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ ಹಾಗು "
+"ನೀವು ಮುಂದಿನ ಬಾರಿ ಪ್ರವೇಶಿಸಿದಾಗ ಕೈಯಾರೆ ಅದನ್ನು ಮರಳಿ ಆರಂಭಿಸಬೇಕಾಗುತ್ತದೆ."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "ದೋಷ ನಿವಾರಣಾ ದಾಖಲೆಯನ್ನು ತೆರೆಯಲು ವಿಫಲಗೊಂಡಿದೆ: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "ದಾಖಲೆ ಕಡತವನ್ನು %s fdopen() ಮಾಡುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "ದಾಖಲೆ ಕಡತ %s ಅನ್ನು ತೆರೆಯಲಾಗಿದೆ\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "ವರ್ಬೋಸ್ ಕ್ರಮಕ್ಕಾಗಿನ ಬೆಂಬಲವಿಲ್ಲದೆ Marco ಅನ್ನು ಕಂಪೈಲ್ ಮಾಡಲಾಗಿದೆ\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "ವಿಂಡೊ ವ್ಯವಸ್ಥಾಪಕ: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "ವಿಂಡೊ ವ್ಯವಸ್ಥಾಪಕದಲ್ಲಿ ಒಂದು ತೊಂದರೆ: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "ವಿಂಡೊ ವ್ಯವಸ್ಥಾಪಕ ಎಚ್ಚರಿಕೆ: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "ವಿಂಡೊ ವ್ಯವಸ್ಥಾಪಕ ದೋಷ: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "ಮೆಟಾಸಿಟಿ"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"ICCCM ಇಂದ ಸೂಚಿಸಲಾದ WM_CLIENT_LEADER ವಿಂಡೋದ ಬದಲಿಗೆ ವಿಂಡೊ %s ತಾನೆ ಸ್ವತಃ "
+"SM_CLIENT_ID ಅನ್ನು ಸಿದ್ಧಗೊಳಿಸುತ್ತದೆ.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"ವಿಂಡೋ %s ಗಾತ್ರವನ್ನು ಬದಲಾಯಿಸಲಾಗುವುದಿಲ್ಲ ಎಂದು ಸೂಚಿಸಲು ಒಂದು MWM ಸುಳಿವನ್ನು ನೀಡುತ್ತದೆ, "
+"ಆದರೆ ಕನಿಷ್ಟ ಗಾತ್ರ %d x %d ಹಾಗು ಗರಿಷ್ಟ ಗಾತ್ರ %d x %d ಅನ್ನು ಹೊಂದಿಸುತ್ತದೆ; ಇದಕ್ಕೆ "
+"ಯಾವುದೆ ಅರ್ಥವಿರುವುದಿಲ್ಲ.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "ಅನ್ವಯವು ಒಂದು ಬೋಗಸ್ _NET_WM_PID %lu ಅನ್ನು ಸಿದ್ಧಗೊಳಿಸಿದೆ\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s ನಲ್ಲಿ)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (ಸೂಪರ್ ಯೂಸರ್ ಆಗಿ)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s ನಲ್ಲಿ)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (ಬೇರೊಂದು ಬಳಕೆದಾರರಾಗಿ)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "ಅಮಾನ್ಯವಾದ WM_TRANSIENT_FOR ವಿಂಡೋ 0x%lx ಅನ್ನು %s ಗಾಗಿ ಸೂಚಿಸಲಾಗಿದೆ.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"ವಿಂಡೊ 0x%lx ವು %s ಗುಣವನ್ನು ಹೊಂದಿದೆ\n"
+"ಅದು ಬಗೆ %s ವಿನ್ಯಾಸ %d ಅನ್ನು ಹೊಂದಿರಬೇಕು ಎಂದು ನಿರೀಕ್ಷಿಸಲಾಗಿತ್ತು\n"
+"ಹಾಗು ಬಗೆ %s ಬಗೆ %d n_items %d ಅನ್ನು ಹೊಂದಿದೆ.\n"
+"ಇದಕ್ಕೆ ಕಾರಣ ಬಹುಷಃ ಅನ್ವಯದಲ್ಲಿನ ಒಂದು ದೋಷವಾಗಿರಬಹುದೆ ಹೊರತು ವಿಂಡೋ ವ್ಯವಸ್ಥಾಪಕದ ದೋಷವಲ್ಲ.\n"
+"ವಿಂಡೊ ಶೀರ್ಷಿಕೆ=\"%s\" ವರ್ಗ=\"%s\" ಹೆಸರು=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "ಗುಣ %s ವು (ವಿಂಡೋ 0x%lx ದಲ್ಲಿನ) ಅಮಾನ್ಯವಾದ UTF-8 ಅನ್ನು ಹೊಂದಿದೆ\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"ಗುಣ %s ವು (ವಿಂಡೋ 0x%lx ದಲ್ಲಿನ) ಪಟ್ಟಿಯಲ್ಲಿನ ಅಂಶ %d ಕ್ಕಾಗಿ ಅಮಾನ್ಯವಾದ UTF-8 ಅನ್ನು "
+"ಹೊಂದಿದೆ\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 1 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 2 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 3 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 4 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 5 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 6 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 7 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 8 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 9 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 10 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 11 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 12 ಕ್ಕೆ ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "ಪ್ರಸಕ್ತ ಕಾರ್ಯಕ್ಷೇತ್ರದ ಎಡಭಾಗದಲ್ಲಿನ ಕಾರ್ಯಕ್ಷೇತ್ರಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "ಪ್ರಸಕ್ತ ಕಾರ್ಯಕ್ಷೇತ್ರದ ಬಲಭಾಗದಲ್ಲಿನ ಕಾರ್ಯಕ್ಷೇತ್ರಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "ಪ್ರಸಕ್ತ ಕಾರ್ಯಕ್ಷೇತ್ರದ ಮೇಲ್ಭಾಗದಲ್ಲಿನ ಕಾರ್ಯಕ್ಷೇತ್ರಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "ಪ್ರಸಕ್ತ ಕಾರ್ಯಕ್ಷೇತ್ರದ ಕೆಳಭಾಗದಲ್ಲಿನ ಕಾರ್ಯಕ್ಷೇತ್ರಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "ಪುಟಿಕೆ(ಪಾಪ್ಅಪ್) ವಿಂಡೋವನ್ನು ಬಳಸಿಕೊಂಡು ಅನ್ವಯದ ವಿಂಡೋಗಳ ನಡುವೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "ಪುಟಿಕೆ(ಪಾಪ್ಅಪ್) ವಿಂಡೋವನ್ನು ಬಳಸಿಕೊಂಡು ಅನ್ವಯದ ವಿಂಡೋಗಳ ನಡುವೆ ಹಿಂದಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "ಪುಟಿಕೆ(ಪಾಪ್ಅಪ್) ವಿಂಡೋವನ್ನು ಬಳಸಿಕೊಂಡು ವಿಂಡೋಗಳ ನಡುವೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "ಪುಟಿಕೆ(ಪಾಪ್ಅಪ್) ವಿಂಡೋವನ್ನು ಬಳಸಿಕೊಂಡು ವಿಂಡೋಗಳ ನಡುವೆ ಹಿಂದಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "ಪುಟಿಕೆ(ಪಾಪ್ಅಪ್) ವಿಂಡೋವನ್ನು ಬಳಸಿಕೊಂಡು ಫಲಕಗಳು ಹಾಗು ಗಣಕತೆರೆಯ ನಡುವೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"ಪುಟಿಕೆ(ಪಾಪ್ಅಪ್) ವಿಂಡೋವನ್ನು ಬಳಸಿಕೊಂಡು ಫಲಕಗಳು ಹಾಗು ಗಣಕತೆರೆಯ ನಡುವೆ ಹಿಂದಕ್ಕೆ "
+"ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "ಒಂದು ಅನ್ವಯದ ವಿಂಡೋಗಳ ನಡುವೆ ತಕ್ಷಣ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "ಒಂದು ಅನ್ವಯದ ವಿಂಡೋಗಳ ನಡುವೆ ತಕ್ಷಣ ಹಿಂದಕ್ಕೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "ವಿಂಡೋಗಳ ನಡುವೆ ತಕ್ಷಣ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "ವಿಂಡೋಗಳ ನಡುವೆ ತಕ್ಷಣ ಹಿಂದಕ್ಕೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "ಫಲಕ ಹಾಗು ಗಣಕತೆರೆಗಳ ನಡುವೆ ತಕ್ಷಣ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "ಫಲಕ ಹಾಗು ಗಣಕತೆರೆಗಳ ನಡುವೆ ತಕ್ಷಣ ಹಿಂದಕ್ಕೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "ಎಲ್ಲಾ ಸಾಮಾನ್ಯವ ವಿಂಡೋಗಳನ್ನು ಅಡಗಿಸು ಹಾಗು ಗಮನವನ್ನು ಗಣಕತೆರೆಯ ಮೇಲೆ ಕೇಂದ್ರೀಕರಿಸು"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "ಫಲಕ ಮುಖ್ಯ ಮೆನುವನ್ನು ತೋರಿಸು"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "ಫಲಕದಲ್ಲಿನ \"ಅನ್ವಯವನ್ನು ಚಲಾಯಿಸು\" ಸಂವಾದ ಚೌಕವನ್ನು ತೋರಿಸು"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "ಒಂದು ತೆರೆಚಿತ್ರವನ್ನು ತೆಗೆ"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "ಒಂದು ವಿಂಡೊದ ತೆರೆಚಿತ್ರವನ್ನು ತೆಗೆ"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "ಟರ್ಮಿನಲ್‍ನಲ್ಲಿ ಚಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "ವಿಂಡೊ ಮೆನುವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸು"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "ಪೂರ್ಣತೆರೆ ವಿಧಾನಕ್ಕೆ ಟಾಗಲ್ ಮಾಡು"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "ಗರಿಷ್ಟಗೊಳಿಸುವ ಸ್ಥಿತಿಯನ್ನು ಟಾಗಲ್ ಮಾಡು"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "ವಿಂಡೊವು ಯಾವಾಗಲೂ ಇತರೆ ವಿಂಡೋಗಳ ಮೇಲೆ ಕಾಣಿಸಿಕೊಳ್ಳಬೇಕೆ ಎಂದು ಟಾಗಲ್ ಮಾಡು"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "ವಿಂಡೊವನು ಹಿಗ್ಗಿಸು"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "ವಿಂಡೊವನ್ನು ಮರಳಿ ಪುನಶ್ಚೇತನಗೊಳಿಸು"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "ನೆರಳಿನ ಸ್ಥಿತಿಯನ್ನು ಟಾಗಲ್‌ ಮಾಡು"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "ವಿಂಡೊವನು ಕುಗ್ಗಿಸು"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "ವಿಂಡೊವನ್ನು ಮುಚ್ಚು"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "ವಿಂಡೊವನ್ನು ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "ವಿಂಡೊದ ಗಾತ್ರವನ್ನು ಬದಲಾಯಿಸು"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"ವಿಂಡೊವು ಎಲ್ಲಾ ಕಾರ್ಯಕ್ಷೇತ್ರಗಳಲ್ಲಿರಬೇಕೆ ಅಥವ ಕೇವಲ ಒಂದರಲ್ಲಿ ಮಾತ್ರವೆ ಇರಬೇಕೆ ಎಂದು ಟಾಗಲ್ "
+"ಮಾಡು"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 1 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 2 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 3 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 4 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 5 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 6 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 7 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 8 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 9 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 10 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 11 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "ವಿಂಡೊವನ್ನು ಕಾರ್ಯಕ್ಷೇತ್ರ 12 ಕ್ಕೆ ಸ್ಥಳಾಂತರಿಸು"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "ವಿಂಡೋವನ್ನು ಒಂದು ಕಾರ್ಯಕ್ಷೇತ್ರದ ಎಡಕ್ಕೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "ವಿಂಡೋವನ್ನು ಒಂದು ಕಾರ್ಯಕ್ಷೇತ್ರದ ಬಲಕ್ಕೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "ವಿಂಡೋವನ್ನು ಒಂದು ಕಾರ್ಯಕ್ಷೇತ್ರದ ಮೇಲಕ್ಕೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "ವಿಂಡೋವನ್ನು ಒಂದು ಕಾರ್ಯಕ್ಷೇತ್ರದ ಕೆಳಗೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"ವಿಂಡೊವು ಇನ್ನೊಂದು ವಿಂಡೋದಿಂದ ಆವರಿಸಲ್ಪಟ್ಟದಲ್ಲಿ ಅದನ್ನು ಮೇಲಕ್ಕೆ ಏರಿಸು, ಇಲ್ಲದೆ ಹೋದಲ್ಲಿ "
+"ಅದನ್ನು ಕೆಳಗಿಳಿಸಿ"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "ವಿಂಡೊವನ್ನು ಇತರೆ ವಿಂಡೋಗಳಿಗಿಂತ ಎತ್ತರಿಸು"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "ವಿಂಡೊಗಳನ್ನು ಬೇರೆ ವಿಂಡೋದ ಕೆಳಗೆ ಇರಿಸು"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "ವಿಂಡೊವನ್ನು ಲಂಬವಾಗಿ ಹಿಗ್ಗಿಸು"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "ವಿಂಡೊವನ್ನು ಸಮತಲವಾಗಿ ಹಿಗ್ಗಿಸು"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "ವಿಂಡೋವನ್ನು ತೆರೆಯ ಉತ್ತರ-ಪಶ್ಚಿಮ (ಮೇಲಿನ ಎಡಭಾಗ) ಮೂಲೆಗೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "ವಿಂಡೋವನ್ನು ತೆರೆಯ ಉತ್ತರ-ಪೂರ್ವ(ಮೇಲಿನ ಬಲಭಾಗ) ಮೂಲೆಗೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "ವಿಂಡೋವನ್ನು ತೆರೆಯ ದಕ್ಷಿಣ-ಪಶ್ಚಿಮ (ಕೆಳ ಎಡಭಾಗ) ಮೂಲೆಗೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "ವಿಂಡೋವನ್ನು ತೆರೆಯ ದಕ್ಷಿಣ-ಪೂರ್ವ(ಕೆಳ ಬಲಭಾಗ) ಮೂಲೆಗೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "ವಿಂಡೋವನ್ನು ತೆರೆಯ ಉತ್ತರ (ಮೇಲೆ) ಭಾಗಕ್ಕೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "ವಿಂಡೋವನ್ನು ತೆರೆಯ ದಕ್ಷಿಣ (ಕೆಳಕ್ಕೆ) ಭಾಗಕ್ಕೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "ವಿಂಡೋವನ್ನು ತೆರೆಯ ಪೂರ್ವ (ಬಲಭಾಗ) ಭಾಗಕ್ಕೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "ವಿಂಡೋವನ್ನು ತೆರೆಯ ಪಶ್ಚಿಮ (ಎಡಭಾಗ) ಭಾಗಕ್ಕೆ ಜರುಗಿಸು"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "ವಿಂಡೋವನ್ನು ತೆರೆಯ ಮಧ್ಯ ಭಾಗಕ್ಕೆ ಜರುಗಿಸು"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(ಅನ್ವಯಿಸದೆ ಇರುವ) ನ್ಯಾವಿಗೇಶನ್ ಕೇವಲ ಅನ್ವಯಗಳಿಗೆ ಅನುಗುಣವಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತದೆಯೆ ಹೊರತು "
+"ವಿಂಡೋಗಳೊಂದಿಗಲ್ಲ"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"ವಿಂಡೊ ಶೀರ್ಷಿಕೆ ಪಟ್ಟಿಗಳಿಗೆ ತೋರಿಸಲಾಗುವ ಅಕ್ಷರಶೈಲಿಯನ್ನು ಸೂಚಿಸುವ ಒಂದು ಅಕ್ಷರಶೈಲಿ "
+"ವಿವರಣೆ. titlebar_font_size ಆಯ್ಕೆಯನ್ನು 0 ಗೆ ಹೊಂದಿಸಲಾಗಿದ್ದರೆ ವಿವರಣೆಯಿಂದ ಗಾತ್ರವನ್ನು "
+"ಬಳಸಲಾಗುತ್ತದೆ. ಅಲ್ಲದೆ, titlebar_uses_desktop_font ಆಯ್ಕೆಯನ್ನು true ಗೆ "
+"ಹೊಂದಿಸಲಾಗಿದ್ದಲ್ಲಿ ಇದನ್ನು ಅಶಕ್ತಗೊಳಿಸಲಾಗುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "ಶೀರ್ಷಿಕೆ ಪಟ್ಟಿಯ ಮೇಲೆ ಎರಡು-ಬಾರಿ ಕ್ಲಿಕ್‌ ಮಾಡಿದಾಗಿನ ಕ್ರಿಯೆ"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "ಶೀರ್ಷಿಕೆ ಪಟ್ಟಿಯ ಮೇಲೆ ಮಧ್ಯ-ಕ್ಲಿಕ್‌ ಮಾಡಿದಾಗಿನ ಕ್ರಿಯೆ"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr " "
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "ಶೀರ್ಷಿಕೆಯ ಪಟ್ಟಿಯಲ್ಲಿ ಗುಂಡಿಗಳ ವ್ಯವಸ್ಥೆಗೊಳಿಕೆ"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"ಶೀರ್ಷಿಕೆ ಪಟ್ಟಿಯಲ್ಲಿ ಗುಂಡಿಗಳ ಜೋಡಣೆ. ಮೌಲ್ಯವು \"menu:minimize,maximize,spacer,close"
+"\"ನಂತಹ ಒಂದು ವಾಕ್ಯವಾಗಿರಬೇಕು; ಇಲ್ಲಿ ವಿವರಣಾ ಚಿಹ್ನೆಯು ವಿಂಡೋದ ಎಡ ಮೂಲೆಯನ್ನು ಬಲ "
+"ಮೂಲೆಯಿಂದ ಬದಲಾಯಿಸುತ್ತದೆ ಹಾಗು ಗುಂಡಿಯ ಹೆಸರುಗಳನ್ನು ವಿರಾಮ ಚಿಹ್ನೆಯು ಪ್ರತ್ಯೇಕಿಸುತ್ತದೆ. "
+"ನಕಲಿ ಗುಂಡಿಗಳಿಗೆ ಅನುಮತಿ ಇಲ್ಲ. ಗೊತ್ತಿರದ ಗುಂಡಿಗಳ ಹೆಸರುಗಳನ್ನು ಸುಮ್ಮನೆ "
+"ಆಲಕ್ಷಿಸಲಾಗುವುದು, ಆ ಮೂಲಕ ಆ ಗುಂಡಿಗಳನ್ನು marco ಹಳೆಯ ಆವೃತ್ತಿಗಳನ್ನು ತುಂಡರಿಸದೆ ಹೊಸ "
+"ಆವೃತ್ತಿಗಳಿಗೆ ಸೇರಸಬಹುದಾಗಿದೆ. ಅಕ್ಕಪಕ್ಕದ ಗುಂಡಿಗಳ ನಡುವೆ ಒಂದಿಷ್ಟು ಜಾಗವನ್ನು ಸೇರಿಸಲು "
+"ಇಂದು ವಿಶೇಷವಾದ ಸ್ಪೇಸರ್ ಟ್ಯಾಗ್ ಅನ್ನು ಸೇರಿಸಬಹುದಾಗಿದೆ."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "ಗಮನ ಕೇಂದ್ರೀಕರಿಸಲಾದ ವಿಂಡೋವನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಮೇಲಕ್ಕೆ ಏರಿಸು"
+
+#: ../src/marco.schemas.in.in.h:9
+#, fuzzy
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"ಈ ಮಾರ್ಪಡಕ ಕೀಲಿಯನ್ನು ಒತ್ತಿಹಿಡಿದಾಗ ಒಂದು ವಿಂಡೋದ ಮೇಲೆ ಕ್ಲಿಕ್ಕಿಸಿದಲ್ಲಿ ಅದು ವಿಂಡೊವನ್ನು "
+"ಸ್ಥಳಾಂತರಿಸುತ್ತದೆ (ಎಡ ಕ್ಲಿಕ್‌), ವಿಂಡೋದ ಗಾತ್ರವನ್ನು ಬದಲಾಯಿಸುತ್ತದೆ (ಮಧ್ಯದ ಕ್ಲಿಕ್), ಅಥವ "
+"ವಿಂಡೊದ ಮೆನುವನ್ನು ತೋರಿಸುತ್ತದೆ (ಬಲ ಕ್ಲಿಕ್). \"mouse_button_resize\" ಕೀಲಿಯನ್ನು "
+"ಬಳಸಿಕೊಂಡು ಎಡ ಹಾಗು ಬಲ ಗುಂಡಿಯ ಕಾರ್ಯಗಳನ್ನು ಪರಸ್ಪರ ಬದಲಾಯಿಸಬಹುದುಆಗಿದೆ. ಉದಾಹರಣೆಗೆ "
+"ಮಾರ್ಪಡಕವನ್ನು \"&lt;Alt&gt;\" ಅಥವ \"&lt;Super&gt;\" ಆಗಿಯೂ ಸಹ ಸೂಚಿಸಬಹುದಾಗಿದೆ."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "ಕೀಬೈಂಡೀಗ್‍ಗಳಿಗೆ ಪ್ರತ್ಯುತ್ತರವಾಗಿ ಚಲಾಯಿಸಬೇಕಿರುವ ಆಜ್ಞೆಗಳು"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "ಸಮ್ಮಿಶ್ರಗೊಳಿಕೆಯ(ಕಾಂಪೋಸಿಟಿಂಗ್) ವ್ಯವಸ್ಥಾಪಕ"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "ಹೇಗೆ ಹೊಸ ವಿಂಡೋಗಳತ್ತ ಗಮನ ಕೇಂದ್ರೀಕರಿಸಬೇಕು ಎಂಬುದನ್ನು ನಿಯಂತ್ರಿಸು"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "ಈಗಿರುವ ಥೀಮ್"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "ಸ್ವಯಂ ಏರಿಕೆ ಆಯ್ಕೆಗಾಗಿನ ವಿಳಂಬ, ಮಿಲಿ ಸೆಕೆಂಡುಗಳಲ್ಲಿ"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Marco ಯು ಒಂದು ಸಮ್ಮಿಶ್ರಗೊಳಿಕೆ(ಕಾಂಪೋಸಿಟಿಂಗ್) ವ್ಯವಸ್ಥಾಪಕವೆ ಎಂದು ನಿರ್ಧರಿಸುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"ಅನ್ವಯಗಳು ಅಥವ ವ್ಯವಸ್ಥೆಯು ಕೇಳಬಹುದಾದ ಬೀಪ್‌ ಶಬ್ಧಗಳನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆಯೆ ಎಂದು "
+"ನಿರ್ಧರಿಸುತ್ತದೆ; 'visual bell' to allow silent 'beeps' ನಿಶ್ಯಬ್ಧ ಬೀಪ್‌ಗಳನ್ನು "
+"ಅನುಮತಿಸಲು 'ಗೋಚರ ಗಂಟೆ'ಯೊಂದಿಗೆ ಬಳಸಬಹುದಾಗಿದೆ."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "ಹಳೆಯ ಅಥವ ತುಂಡಾದ ಅನ್ವಯಗಳಿಗಾಗಿನ ಅಗತ್ಯವಿರುವ ತಪ್ಪು ಸವಲತ್ತುಗಳನ್ನು ಅಶಕ್ತಗೊಳಿಸುತ್ತದೆ"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "ಗೋಚರ ಗಂಟೆಯನ್ನು ಶಕ್ತಗೊಳಿಸು"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"true ಗೆ ಹೊಂದಿಸಲಾಗಿದ್ದರೆ, ಹಾಗು ಗಮನದ ಕ್ರಮವು \"sloppy\" ಅಥವ \"mouse\" ಆಗಿದ್ದಲ್ಲಿ "
+"auto_raise_delay ಕೀಲಿಯಲ್ಲಿ ಸೂಚಿಸಲಾದ ವಿಳಂಬದ ನಂತರ ಗಮನಕೇಂದ್ರೀಕರಿಸಲಾದ ವಿಂಡೋವು "
+"ತಾನಾಗಿಯೆ ಮೇಲಕ್ಕೆ ಬರುತ್ತದೆ. ಇದು ಒಂದು ವಿಂಡೊವನ್ನು ಮೇಲಕ್ಕೆ ಏರಿಸಲು ಕ್ಲಿಕ್‌ ಮಾಡವುದಾಗಲಿ, "
+"ಅಥವ ಎಳೆದು-ಸೇರಿಸುವ ಸಮಯದಲ್ಲಿ ವಿಂಡೋವನ್ನು ಪ್ರವೇಶಿಸುವುದಕ್ಕೆ ಸಂಬಂಧಿಸಿರುವುದಿಲ್ಲ."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"true ಆದಲ್ಲಿ, titlebar_font ಆಯ್ಕೆಯನ್ನು ಆಲಕ್ಷಿಸಿ, ಹಾಗು ವಿಂಡೋ ಶೀರ್ಷಿಕೆಗಳಿಗಾಗಿ ಶಿಷ್ಟ "
+"ಅನ್ವಯ ಅಕ್ಷರಶೈಲಿಯನ್ನು ಬಳಸು."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"true ಆದಲ್ಲಿ, marco ಯು ವೈರ್ಫ್ರೇಮ್‌ಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಸಜೀವನ(ಎನಿಮೇಶನ್) ಅಥವ ಇತರೆಯನ್ನು "
+"ಬಳಸದೆ ಕಡಿಮೆ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ. ಇದರಿಂದಾಗಿ ಹಲವಾರು ಬಳಕೆದಾರರು ಬಳಸುವುದನ್ನು "
+"ಕಡಿಮೆಯಾಗುತ್ತದೆ, ಆದರೆ ಸಾಂಪ್ರದಾಯಿಕ ಅನ್ವಯಗಳು ಕೆಲಸಮಾಡುವುದು ಮುಂದುವರೆಯುತ್ತದೆ, ಹಾಗು "
+"ಟರ್ಮಿನಲ್ ಪರಿಚಾರಕಗಳಿಗಾಗಿ ಉಪಯುಕ್ತ ಟ್ರೇಡ್‌ಆಫ್‌ಗಳಾಗಿರುತ್ತದೆ. ಆದರೆ ನಿಲುಕಣೆಯು ಚಾಲಿತವಾಗಿದ್ದಾಗ "
+"ವೈರ್ಫ್ರೇಮ್ ಸವಲತ್ತು ಅಶಕ್ತಗೊಂಡಿರುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"true ಆಗಿದ್ದಲ್ಲಿ, Marco ಯು ವಿಂಡೋಗಳನ್ನು ಅನುಸರಿಸದೆ ಅನ್ವಯಗಳಿಗನುಸಾರವಾಗಿ ಕೆಲಸ "
+"ಮಾಡುತ್ತದೆ. ಈ ವಿಚಾರವು ಒಂದಿಷ್ಟು ವಿಚಿತ್ರವೆನಿಸಿದರೂ ಸಹ ಸಾಮಾನ್ಯವಾಗಿ ಅನ್ವಯ-ಆಧರಿತವಾದ ಒಂದು "
+"ಸಿದ್ಧತೆಯು ಹೆಚ್ಚಿನ ಪಾಲು Mac ನಂತಹೆ ಇರುತ್ತದೆಯೆ ಹೊರತು Windows ನಂತಲ್ಲ. ಅನ್ವಯ-ಆಧರಿತವಾದ "
+"ಕ್ರಮದಲ್ಲಿ ನೀವು ಒಂದು ವಿಂಡೋದತ್ತ ಗಮನ ಕೇಂದ್ರೀಕರಿಸಿದಾಗ, ಅನ್ವಯದ ಎಲ್ಲಾ ವಿಂಡೋಗಳು ಮೇಲಕ್ಕೆ "
+"ತರಲ್ಪಡುತ್ತವೆ. ಅಲ್ಲದೆ, ಅನ್ವಯ-ಆಧರಿತವಾದ ಕ್ರಮದಲ್ಲಿ, ಗಮನ ಆಧರಿತವಾದ ಕ್ಲಿಕ್‌ಗಳು ಇತರೆ "
+"ಅನ್ವಯಗಳಲ್ಲಿ ವಿಂಡೋಗಳ ಮೂಲಕ ಕಳಿಸಲ್ಪಡುವುದಿಲ್ಲ.ಆದರೆ ಅನ್ವಯ-ಆಧರಿತವಾದ ಕ್ರಮವು ಈ ಕ್ಷಣದಲ್ಲಿ "
+"ಇನ್ನೂ ಸಹ ಸೂಕ್ತವಾಗಿ ಅನ್ವಯಿಸಲಾಗಿಲ್ಲ."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "true ಆದಲ್ಲಿ, ಕಡಿಮೆ ಸಂಪನ್ಮೂಲಗಳಿಗಾಗಿ ಟ್ರೇಡ್ ಆಫ್‌ ಬಳಕೆಯಾಗುತ್ತದೆ"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "ಮಾರ್ಪಡಿಸಲಾದ ವಿಂಡೋ ಕ್ಲಿಕ್‌ ಕ್ರಿಯೆಗಳಿಗಾಗಿ ಬಳಸಬೇಕಿರುವ ಮಾರ್ಪಡಕ"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರದ ಹೆಸರು"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರಗಳ ಸಂಖ್ಯೆ"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"ಕಾರ್ಯಕ್ಷೇತ್ರಗಳ ಸಂಖ್ಯೆ. ಇದು ಸೊನ್ನೆಗಿಂತ ಹೆಚ್ಚಾಗಿರಬೇಕು, ಹಾಗು ಆಕಸ್ಮಿಕವಾಗಿ ಬಹಳಷ್ಟು "
+"ಕಾರ್ಯಕ್ಷೇತ್ರಗಳಿಗಾಗಿ ಕೇಳುವುದರಿಂದ ಗಣಕತೆರೆಯು ಬಳಸದೆ ಇರುವಂತಾಗುವುದನ್ನು ತಪ್ಪಿಸಲು "
+"ನಿಶ್ಚಿತವಾದ ಗರಿಷ್ಟ ಸಂಖ್ಯೆಯನ್ನು ಹೊಂದಿರುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "ಸೂಚಿತವಾದ ಒಂದು ಆಜ್ಞೆಯನ್ನು ಚಲಾಯಿಸು"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"ಬಲಗುಂಡಿಯನ್ನು ಬಳಸಿಕೊಂಡು ಗಾತ್ರಬದಲಾಯಿಸಲು ಹಾಗು \"mouse_button_modifier\" ನಲ್ಲಿ "
+"ನೀಡಲಾದ ಒಂದು ಕೀಲಿಯನ್ನು ಒತ್ತಿಹಿಡಿದಾಗ ಮಧ್ಯದ ಗುಂಡಿಯನ್ನು ಒತ್ತಿದಾಗ ಒಂದು ಮೆನುವನ್ನು "
+"ತೋರಿಸಲು ಇದನ್ನು true ಗೆ ಬದಲಾಯಿಸಿ; ಇದು ವಿರುದ್ಧ ದಿಕ್ಕಿನಲ್ಲಿ ಕೆಲಸ ಮಾಡಲು ಇದನ್ನು false "
+"ಗೆ ಬದಲಾಯಿಸಿ."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"ಈ ಆಯ್ಕೆಯನ್ನು false ಗೆ ಬದಲಾಯಿಸುವುದರಿಂದ ದೋಷಪೂರ್ಣ ವರ್ತನೆಗೆ ಕಾರಣವಾಗಬಹುದು, ಆದ್ದರಿಮದ "
+"ಬಳಕೆದಾರರು ಇದಕ್ಕೆ ಪೂರ್ವನಿಯೋಜಿತವಾದಂತಹ true ಅನ್ನು ಬದಲಾಯಿಸದೆ ಇರುವಂತೆ ಬಲವಾಗಿ ಸಲಹೆ "
+"ಮಾಡಲಾಗುತ್ತದೆ. ಒಂದು ಅಡ್ಡ ಪರಿಣಾಮವಾಗಿ ಹಲವಾರು ಕ್ರಿಯೆಗಳು (ಉದಾ. ಕ್ಲೈಂಟಿನ ಜಾಗದ ಮೇಲೆ "
+"ಕ್ಲಿಕ್‌ ಮಾಡುವುದು, ವಿಂಡೋವನ್ನು ಜರುಗಿಸುವುದರಿಂದ ಅಥವ ಗಾತ್ರಬದಲಾಯಿಸುವುದು ) ಸಾಮಾನ್ಯವಾಗಿ "
+"ವಿಂಡೋವನ್ನು ಮೇಲಕ್ಕೆ ಎತ್ತರಿಸುತ್ತದೆ. ಇದನ್ನು false ಗೆ ಬದಲಾಯಿಸುವುದರಿಂದ, ಬಳಕೆದಾರರ ಇತರೆ "
+"ಕ್ರಿಯೆಗಳಿಗೆ ಜೋಡಿಸಲಾದ ಏರಿಸುವಿಕೆಯು ತಪ್ಪಿಹೋಗುತ್ತದೆ, ಹಾಗು ಅನ್ವಯದಿಂದ ಉತ್ಪಾದಿಸಲಾದ "
+"ಏರಿಸುವಿಕೆಯ ಮನವಿಯನ್ನು ಆಲಕ್ಷಿಸಲಾಗುತ್ತದೆ. http://bugzilla.gnome.org/show_bug.cgi?"
+"id=445447#c6 ಅನ್ನು ನೋಡಿ. ಈ ಆಯ್ಕೆಯು false ಆಗಿದ್ದಾಗ, alt-ವಿಂಡೋದ ಮೇಲೆ ಎಲ್ಲಿಯಾದರೂ "
+"ಎಡ ಕ್ಲಿಕ್ ಮಾಡುವುದರಿಂದ, ವಿಂಡೋ ಅಲಂಕಾರಗಳ ಮೇಲೆ ಸಾಮಾನ್ಯವಾದ ಕ್ಲಿಕ್, ಅಥವ ಪೇಜರುಗಳಿಂದ "
+"ಕಾರ್ಯಪಟ್ಟಿ ಆಪ್ಲೆಟ್‌ಗಳಿಂದ ಕಳುಹಿಸಲಾದ ಸಕ್ರಿಯಗೊಳಿಕೆಯ ಮನವಿಯಂತಹ ವಿಶೇಷ ಸಂದೇಶಗಳಿಂದಲೂ ಸಹ "
+"ವಿಂಡೋಗಳನ್ನು ಮೇಲಕ್ಕೆ ತರಬಹುದು. ಈ ಆಯ್ಕೆಯು ಪ್ರಸಕ್ತ ಗಮನಕ್ಕಾಗಿ ಕ್ಲಿಕ್‌ ಮಾಡು ಕ್ರಮದಲ್ಲಿ "
+"ಅಶಕ್ತಗೊಳಿಸಲಾಗಿದೆ. raise_on_click ಯು false ಆಗಿದ್ದು ಹಾಗು ವಿಂಡೋಗಳನ್ನು ಮೇಲಕ್ಕೆ "
+"ಏರಿಸಲು ಅನ್ವಯದಿಂದ ಬರಬೇಕಿರುವ ಕ್ರಮಬದ್ಧವಾದ ಮನವಿಯು ಇಲ್ಲದೆ ಹೋದಲ್ಲಿ ಅಂತಹ ಮನವಿಗಳಿಗೆ "
+"ಯಾವುದೆ ಕಾರಣವಿದ್ದರೂ ಸಹ ಆಲಕ್ಷಿಸಲಾಗುತ್ದತೆ. ನೀವು ಒಬ್ಬ ಅನ್ವಯ ವಿಕಸನಗಾರರಾಗಿದ್ದರೆ ಹಾಗು "
+"ನಿಮ್ಮ ಅನ್ವಯವು ಈ ಸಿದ್ಧತೆಯನ್ನು ಅಶಕ್ತಗೊಳಿಸಿದಾಗ ಸರಿಯಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತಿಲ್ಲ ಎಂದು ಬಳಕೆದಾರರು "
+"ದೂರು ನೀಡುತ್ತಿದ್ದಲ್ಲಿ ಅವರ ವಿಂಡೋ ವ್ಯವಸ್ಥಾಪಕವನ್ನು ತಾವಾಗಿಯೆ ಹಾಳು ಮಾಡಿಕೊಂಡಿದ್ದಾರೆ ಎಂದು "
+"ತಿಳಿಸಿ ಹಾಗು ಇದಕ್ಕಾಗಿ true ಬದಲಾಯಿಸಿ ಅಥವ ಅವರೆ ಸಲ್ಲಿಸಿದ \"ದೋಷ\"ವು ಮತ್ತೆ "
+"ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ ಎಂದು ತಿಳಿಸಿ."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"ಕೆಲವು ಅನ್ವಯಗಳು ವಿಂಡೋ ವ್ಯವಸ್ಥಾಪಕದ ತಪ್ಪುಸಲವಲತ್ತಿಗೆ ಕಾರಣವಾಗುವ ರೀತಿಯಲ್ಲಿ ವಿವರಗಳನ್ನು "
+"ಆಲಕ್ಷಿಸುತ್ತವೆ. ಈ ಆಯ್ಕೆಯಿಂದಾಗಿ Marco ಅತ್ಯಂತ ಕಟ್ಟುನಿಟ್ಟಿನ ಕ್ರಮದಲ್ಲಿ ಇರುತ್ತದೆ, ಹಾಗು "
+"ಬಳಕೆದಾರರು ಅನುಚಿತವಾಗಿ ವರ್ತಿಸುವ ಯಾವುದೆ ಅನ್ವಯಗಳನ್ನು ಚಲಾಯಿಸದೆ ಇದ್ದಲ್ಲಿ ಇದು ಹೆಚ್ಚು "
+"ಸ್ಥಿರವಾದ ಒಂದು ಬಳಕೆದಾರ ಸಂಪರ್ಕಸಾಧನವನ್ನು ನೀಡುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "ಗಣಕಗ ಗಂಟೆಯು ಕೇಳಿಸಬಲ್ಲದು"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"ಗಣಕದ ಗಂಟೆ ಅಥವ ಬೇರೆ ಅನ್ವಯದ 'ಗಂಟೆ' ಸೂಚಕವು ಧ್ವನಿ ಹೊರಡಿಸಿದಲ್ಲಿ ಗೋಚರ ಸೂಚನೆಯನ್ನು "
+"Marco ಯು ಹೇಗೆ ಅನ್ವಯಿಸಬೇಕು ಎನ್ನುವುದನ್ನು ಇದು ತಿಳಿಸುತ್ತದೆ. ಪ್ರಸಕ್ತ ಇದು ಎರಡು "
+"ಮಾನ್ಯವಾದ ಮೌಲ್ಯಗಳನ್ನು ಹೊಂದಿರಬಹುದು, \"fullscreen\"(ಪೂರ್ಣತೆರೆ), ಇದರಿಂದಾಗು "
+"ಸಂಪೂರ್ಣತೆರೆಯು ಕಪ್ಪು-ಬಿಳುಪಿನಲ್ಲಿ ಹೊಳೆಯುತ್ತದೆ, ಹಾಗು \"frame_flash\" (ಚೌಕಟ್ಟು "
+"ಹೊಳೆಯುವಿಕೆ), ಇದರಿಂದಾಗಿ ಗಂಟೆ ಸೂಚನೆಯನ್ನು ಕಳುಹಿಸಿದ ಅನ್ವಯದ ಶೀರ್ಷಿಕೆಪಟ್ಟಿಯು "
+"ಹೊಳೆಯುತ್ತದೆ. ಎಲ್ಲಿಯಾದರೂ ಗಂಟೆಯ ಸೂಚನೆಯನ್ನು ಕಳುಹಿಸಿದ ಅನ್ವಯ ಅಜ್ಞಾತವಾಗಿದ್ದರೆ "
+"(ಪೂರ್ವನಿಯೋಜಿತ \"ವ್ಯವಸ್ಥೆ ಬೀಪ್\"ನಲ್ಲಿದ್ದಂತೆ), ಪ್ರಸಕ್ತ ಗಮನದಲ್ಲಿರುವ ವಿಂಡೋದ ಶೀರ್ಷಿಕೆಯು "
+"ಹೊಳೆಯುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N ಕೀಲಿಗಳು ಈ ಆಜ್ಞೆಗಳಿಗೆ ಸೂಕ್ತವಾದ "
+"ಕೀಲಿಬೈಂಡಿಂಗ್‌ಗಳನ್ನು ಸೂಚಿಸುತ್ತವೆ. run_command_N ನಿಂದ ಕೀಲಿಬೈಂಡಿಂಗ್‌ ಅನ್ನು "
+"ಒತ್ತುವುದರಿಂದ command_N ಚಲಾಯಿಸಲ್ಪಡುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot ಕೀಲಿಯು ಈ ಸಿದ್ಧತೆಯಿಂದ "
+"ಸೂಚಿಸಲಾದ ಆಜ್ಞೆಯನ್ನು ಮನವಿ ಮಾಡಲು ಕಾರಣವಾಗುವ ಒಂದು ಕೀಲಿಬೈಂಡಿಂಗ್ ಅನ್ನು ಸೂಚಿಸುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot ಕೀಲಿಯು ಈ "
+"ಸಿದ್ಧತೆಯಿಂದ ಸೂಚಿಸಲಾದ ಆಜ್ಞೆಗಾಗಿ ಮನವಿ ಸಲ್ಲಿಸಲು ಕಾರಣವಾಗುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"/apps/marco/keybinding_commands ನಲ್ಲಿ ಸೂಕ್ತವಾದ ಸಂಖ್ಯೆಯನ್ನು ಹೊಂದಿರುವ ಆಜ್ಞೆಯನ್ನು "
+"ಚಲಾಯಿಸುವ ಕೀಲಿಬೈಂಡಿಂಗ್. ಇದರ ವಿನ್ಯಾಸವು \"&lt;Control&gt;a\" ಅಥವ \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\" ನಂತಿರುತ್ತದೆ. ಪಾರ್ಸರ್ ಬಹುಮಟ್ಟಿಗೆ ಉದಾರಿಯಾಗಿದುತ್ತದೆ ಹಾಗು ದೊಡ್ಡ ಹಾಗು "
+"ಸಣ್ಣಕ್ಷರಗಳನ್ನು ಅನುಮತಿಸುತ್ತದೆ, ಅಲ್ಲದೆ \"&lt;Ctl&gt;\" ಮತ್ತು \"&lt;Ctrl&gt;\" ನಂತಹ "
+"ಸಂಕ್ಷಿಪ್ತ ರೂಪಗಳನ್ನೂ ಸಹ ಒಪ್ಪಿಕೊಳ್ಳುತ್ತದೆ. ವಿಶೇಷ ವಾಕ್ಯವನ್ನು ನೀವು \"disabled"
+"\"(ಅಶಕ್ತಗೊಂಡಿದೆ) ಗೆ ಬದಲಾಯಿಸಿದಲ್ಲಿ, ಈ ಕ್ರಿಯೆಗೆ ಯಾವುದೆ ಕೀಲಿಬೈಂಡಿಂಗ್ ಇರುವುದಿಲ್ಲ."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "ಒಂದು ಕಾರ್ಯಕ್ಷೇತ್ರದ ಹೆಸರು."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "ತೆರೆಚಿತ್ರದ ಆಜ್ಞೆ"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "ಪರಿಸರವಿನ್ಯಾಸವು ವಿಂಡೋ ಅಂಚುಗಳ, ಶೀರ್ಷಿಕೆಯ ಹಾಗು ಇನ್ನಿತರೆಗಳ ಗೋಚರಿಕೆಯನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"auto_raise ಅನ್ನು true ಗೆ ಬದಲಾಯಿಸಿದ್ದಲ್ಲಿ ವಿಂಡೋವನ್ನು ಏರಿಸುವ ಮೊದಲು ನೀಡಬೇಕಿರುವ "
+"ವಿಳಂಬ. ವಿಳಂಬವನ್ನು ಒಂದು ಸೆಕೆಂಡಿನಲ್ಲಿ ಸಾವಿರದ ಒಂದು ಭಾಗದಲ್ಲಿ ಸೂಚಿಸಲಾಗುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"ವಿಂಡೋಗಳು ಹೇಗೆ ಸಕ್ರಿಯಗೊಳಿಸಲ್ಪಡುತ್ತವೆ ಎನ್ನುವುದನ್ನು ವಿಂಡೋ ಗಮನ ಕ್ರಮವು ಸೂಚಿಸುತ್ತದೆ. ಇದು "
+"ಮೂರು ಸಾಧ್ಯವಿರುವ ಮೌಲ್ಯಗಳನ್ನು ಹೊಂದಿರುತ್ತದೆ; \"ಕ್ಲಿಕ್\" ಎಂದರೆ ವಿಂಡೋಗಳತ್ತ ಗಮನ ಹರಿಸಲು "
+"ಅವುಗಳ ಮೇಲೆ ಕ್ಲಿಕ್ ಮಾಡಬೇಕಾಗುತ್ತದೆ, \"sloppy\"(ಸ್ಲಾಪಿ) ಎಂದರೆ ಮೌಸ್‌ ವಿಂಡೋವನ್ನು "
+"ಪ್ರವೇಶಿಸಿದಾಗ ಅದು ಗಮನ ಹರಿಸಲ್ಪಡುತ್ತದೆ, ಹಾಗು \"ಮೌಸ್‌\" ಎಂದರೆ ಮೌಸ್‌ ವಿಂಡೋವನ್ನು ಪ್ರವೇಶಿಸಿದಾಗ "
+"ಅದು ಗಮನ ಹರಿಸಲ್ಪಡುತ್ತದೆ ಹಾಗು ಮೌಸ್‌ ವಿಂಡೋದಿಂದ ನಿರ್ಗಮಿಸಿದಾಗ ಗಮನ ತಪ್ಪಿಹೋಗುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "ವಿಂಡೊ ತೆರೆಚಿತ್ರದ ಆಜ್ಞೆ"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ಈ ಆಯ್ಕೆಯು ಶೀರ್ಷಿಕೆ ಪಟ್ಟಿಯ ಮೇಲೆ ಎರಡು ಬಾರಿ ಕ್ಲಿಕ್‌ ಮಾಡುವದರ ಪರಿಣಾಮವನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ."
+"ಈಗಿರುವ ಮಾನ್ಯವಾದ ಆಯ್ಕೆಗಳೆಂದರೆ 'toggle_shade'(ಮಬ್ಬನ್ನು ಬದಲಾಯಿಸು), ಇದು ವಿಂಡೊವನ್ನು "
+"ಮಬ್ಬಾಗಿಸುತ್ತದೆ/ಮಬ್ಬಾಗಿಸದೆ ಇರುತ್ತದೆ, 'toggle_maximize'(ಗಾತ್ರವನ್ನು ಬದಲಾಯಿಸು), ಇದು "
+"ವಿಂಡೋವನ್ನು ಹಿಗ್ಗಿಸುತ್ತದೆ/ಕುಗ್ಗಿಸುತ್ತದೆ, 'toggle_maximize_horizontally'(ಅಡ್ಡವಾಗಿ "
+"ಗಾತ್ರವನ್ನು ಬದಲಾಯಿಸು) ಹಾಗು 'toggle_maximize_vertically' (ಲಂಬವಾಗಿ ಗಾತ್ರವನ್ನು "
+"ಬದಲಾಯಿಸು) ಇದು ಆಯಾಯ ದಿಕ್ಕಿನಲ್ಲಿ ವಿಂಡೋವನ್ನು ಹಿಗ್ಗಿಸುತ್ತದೆ/ಕುಗ್ಗಿಸುತ್ತದೆ, 'ಕುಗ್ಗಿಸು', "
+"ಇದು ವಿಂಡೋವನ್ನು ಕಿರಿದಾಗಿಸುತ್ತದೆ, 'ಮಬ್ಬಾಗಿಸು', ಇದು ವಿಂಡೊವನ್ನು ಮೇಲಕ್ಕೆ ಸುತ್ತುತ್ತದೆ, "
+"'ಮೆನು', ಇದು ವಿಂಡೋ ಮೆನುವನ್ನು ತೋರಿಸುತ್ತದೆ, 'ಕೆಳಗೆ', ಇದು ವಿಂಡೊವನ್ನು ಎಲ್ಲಾ ಇತರೆ "
+"ವಿಂಡೊಗಳ ಹಿಂದೆ ಇರಿಸುತ್ತದೆ, ಹಾಗು 'ಏನೂ ಇಲ್ಲ', ಇದು ಏನನ್ನೂ ಮಾಡುವುದಿಲ್ಲ."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ಈ ಆಯ್ಕೆಯು ಶೀರ್ಷಿಕೆ ಪಟ್ಟಿಯ ಮೇಲೆ ಮೌಸ್‌ನ ಮಧ್ಯದ-ಗುಂಡಿಯನ್ನು ಕ್ಲಿಕ್‌ ಮಾಡುವದರ ಪರಿಣಾಮವನ್ನು "
+"ನಿರ್ಧರಿಸುತ್ತದೆ.ಈಗಿರುವ ಮಾನ್ಯವಾದ ಆಯ್ಕೆಗಳೆಂದರೆ 'toggle_shade'(ಮಬ್ಬನ್ನು ಬದಲಾಯಿಸು), ಇದು "
+"ವಿಂಡೊವನ್ನು ಮಬ್ಬಾಗಿಸುತ್ತದೆ/ಮಬ್ಬಾಗಿಸದೆ ಇರುತ್ತದೆ, 'toggle_maximize'(ಗಾತ್ರವನ್ನು "
+"ಬದಲಾಯಿಸು), ಇದು ವಿಂಡೋವನ್ನು ಹಿಗ್ಗಿಸುತ್ತದೆ/ಕುಗ್ಗಿಸುತ್ತದೆ, "
+"'toggle_maximize_horizontally'(ಅಡ್ಡವಾಗಿ ಗಾತ್ರವನ್ನು ಬದಲಾಯಿಸು) ಹಾಗು "
+"'toggle_maximize_vertically' (ಲಂಬವಾಗಿ ಗಾತ್ರವನ್ನು ಬದಲಾಯಿಸು) ಇದು ಆಯಾಯ ದಿಕ್ಕಿನಲ್ಲಿ "
+"ವಿಂಡೋವನ್ನು ಹಿಗ್ಗಿಸುತ್ತದೆ/ಕುಗ್ಗಿಸುತ್ತದೆ, 'ಕುಗ್ಗಿಸು', ಇದು ವಿಂಡೋವನ್ನು ಕಿರಿದಾಗಿಸುತ್ತದೆ, "
+"'ಮಬ್ಬಾಗಿಸು', ಇದು ವಿಂಡೊವನ್ನು ಮೇಲಕ್ಕೆ ಸುತ್ತುತ್ತದೆ, 'ಮೆನು', ಇದು ವಿಂಡೋ ಮೆನುವನ್ನು "
+"ತೋರಿಸುತ್ತದೆ, 'ಕೆಳಗೆ', ಇದು ವಿಂಡೊವನ್ನು ಎಲ್ಲಾ ಇತರೆ ವಿಂಡೊಗಳ ಹಿಂದೆ ಇರಿಸುತ್ತದೆ, ಹಾಗು "
+"'ಏನೂ ಇಲ್ಲ', ಇದು ಏನನ್ನೂ ಮಾಡುವುದಿಲ್ಲ."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ಈ ಆಯ್ಕೆಯು ಶೀರ್ಷಿಕೆ ಪಟ್ಟಿಯ ಮೇಲೆ ಮೌಸ್‌ನ ಬಲ-ಗುಂಡಿಯನ್ನು ಕ್ಲಿಕ್‌ ಮಾಡುವದರ ಪರಿಣಾಮವನ್ನು "
+"ನಿರ್ಧರಿಸುತ್ತದೆ.ಈಗಿರುವ ಮಾನ್ಯವಾದ ಆಯ್ಕೆಗಳೆಂದರೆ 'toggle_shade'(ಮಬ್ಬನ್ನು ಬದಲಾಯಿಸು), ಇದು "
+"ವಿಂಡೊವನ್ನು ಮಬ್ಬಾಗಿಸುತ್ತದೆ/ಮಬ್ಬಾಗಿಸದೆ ಇರುತ್ತದೆ, 'toggle_maximize'(ಗಾತ್ರವನ್ನು "
+"ಬದಲಾಯಿಸು), ಇದು ವಿಂಡೋವನ್ನು ಹಿಗ್ಗಿಸುತ್ತದೆ/ಕುಗ್ಗಿಸುತ್ತದೆ, "
+"'toggle_maximize_horizontally'(ಅಡ್ಡವಾಗಿ ಗಾತ್ರವನ್ನು ಬದಲಾಯಿಸು) ಹಾಗು "
+"'toggle_maximize_vertically' (ಲಂಬವಾಗಿ ಗಾತ್ರವನ್ನು ಬದಲಾಯಿಸು) ಇದು ಆಯಾಯ ದಿಕ್ಕಿನಲ್ಲಿ "
+"ವಿಂಡೋವನ್ನು ಹಿಗ್ಗಿಸುತ್ತದೆ/ಕುಗ್ಗಿಸುತ್ತದೆ, 'ಕುಗ್ಗಿಸು', ಇದು ವಿಂಡೋವನ್ನು ಕಿರಿದಾಗಿಸುತ್ತದೆ, "
+"'ಮಬ್ಬಾಗಿಸು', ಇದು ವಿಂಡೊವನ್ನು ಮೇಲಕ್ಕೆ ಸುತ್ತುತ್ತದೆ, 'ಮೆನು', ಇದು ವಿಂಡೋ ಮೆನುವನ್ನು "
+"ತೋರಿಸುತ್ತದೆ, 'ಕೆಳಗೆ', ಇದು ವಿಂಡೊವನ್ನು ಎಲ್ಲಾ ಇತರೆ ವಿಂಡೊಗಳ ಹಿಂದೆ ಇರಿಸುತ್ತದೆ, ಹಾಗು "
+"'ಏನೂ ಇಲ್ಲ', ಇದು ಏನನ್ನೂ ಮಾಡುವುದಿಲ್ಲ."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"ಹೊಸದಾಗಿ ನಿರ್ಮಿಸಲಾದ ವಿಂಡೊಗಳತ್ತ ಹೇಗೆ ಗಮನ ಕೇಂದ್ರಿಕರಿಸಲ್ಪಡಬೇಕು ಎನ್ನುವುದನ್ನು ಈ ಆಯ್ಕೆಯು "
+"ನಿರ್ಧರಿಸುತ್ತದೆ. ಇದಕ್ಕೆ ಎರಡು ಮೌಲ್ಯಗಳನ್ನು ಹೊಂದಿರುವ ಸಾಧ್ಯತೆ ಇದೆ; \"smart\"(ಚತುರ) "
+"ಎನ್ನುವುದು ಬಳಕೆದಾರರ ಸಾಮಾನ್ಯ ಗಮನ ಕೇಂದ್ರೀಕರಿಸುವ ಕ್ರಮವನ್ನು ಅನ್ವಯಿಸುತ್ತದೆ, ಹಾಗು \"strict"
+"\" (ಕಟ್ಟುನಿಟ್ಟಿನ) ಎನ್ನುವುದು ಟರ್ಮಿನಲ್‌ನಿಂದ ಆರಂಭಗೊಂಡ ವಿಂಡೋಗಳತ್ತ ಗಮನ ಹರಿಸಲಾಗದೆ ಇರುವಂತೆ "
+"ನೋಡಿಕೊಳ್ಳುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"ಒಂದು ಅನ್ವಯ ಅಥವ ವ್ಯವಸ್ಥೆಯು ಒಂದು 'ಗಂಟೆ' ಅಥವ 'ಬೀಪ್‌' ಶಬ್ಧವನ್ನು ಹೊರಡಿಸಿದಾಗ ಒಂದು ಗೋಚರ "
+"ಸೂಚನೆಯನ್ನು ಚಾಲಿಸುತ್ತದೆ; ಕೇಳಲು ತೊಂದರೆ ಇರುವವರಿಗೆ ಹಾಗು ಶಬ್ಧವು ಹೆಚ್ಚಾದ ಪರಿಸರದಲ್ಲಿ "
+"ಉಪಯುಕತ್ತವಾಗುತ್ತದೆ."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "ವಿಂಡೊ ಶೀರ್ಷಿಕೆಗಳಲ್ಲಿ ಗಣಕದ ಅಕ್ಷರಶೈಲಿಯನ್ನು ಬಳಸು"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "ಗೋಚರಿಸು ಗಂಟೆಯ ಬಗೆ"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "ಏರಿಸುವಿಕೆಯು ಬೇರೆ ವ್ಯವಹಾರಗಳಿಗೆ ಅಡ್ಡ ಪರಿಣಾಮ ಬೀರಬೇಕೆ"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "ಬಲಗುಂಡಿಯಿಂದ ಗಾತ್ರವನ್ನು ಬದಲಿಸಬೇಕೆ"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "ವಿಂಡೊ ಗಮನ ಕೇಂದ್ರೀಕರಿಸುವ ಕ್ರಮ"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "ವಿಂಡೊದ ಶೀರ್ಷಿಕೆಯ ಅಕ್ಷರಶೈಲಿ"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "ಬಳಕೆ: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "ವಿಂಡೊವನ್ನು ಮುಚ್ಚು"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "ವಿಂಡೊ ಮೆನು"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "ವಿಂಡೊವನ್ನು ಕುಗ್ಗಿಸು"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "ವಿಂಡೊವನ್ನು ಹಿಗ್ಗಿಸು"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "ವಿಂಡೊವನ್ನು ಮರಳಿ ಸ್ಥಾಪಿಸು"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "ವಿಂಡೊವನ್ನು ಸುತ್ತು"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "ವಿಂಡೊವನ್ನು ಸುತ್ತದೆ ಇರು"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "ವಿಂಡೊ ಅನ್ನು ಮೇಲ್ಭಾಗದಲ್ಲಿ ಇರಿಸು"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "ವಿಂಡೊ ಅನ್ನು ಮೇಲ್ಭಾಗದಿಂದ ತೆಗೆದು ಹಾಕು"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "ಯಾವಾಗಲೂ ಕಾಣಿಸುವ ಕಾರ್ಯಕ್ಷೇತ್ರದಲ್ಲಿ"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "ವಿಂಡೊವನ್ನು ಕೇವಲ ಒಂದು ಕಾರ್ಯಕ್ಷೇತ್ರದಲ್ಲಿ ಇರಿಸು"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "ಕುಗ್ಗಿಸು(_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "ಹಿಗ್ಗಿಸು(_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "ಹಿಗ್ಗಿಸಬೇಡ(_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "ಸುತ್ತು(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "ಸುತ್ತದಿರು(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "ಜರುಗಿಸು(_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "ಗಾತ್ರ ಬದಲಾಯಿಸು(_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "ಶೀರ್ಷಿಕೆಪಟ್ಟಿಯನ್ನು ತೆರೆಯ ಮೇಲೆ ಜರುಗಿಸು(_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "ಯಾವಾಗಲೂ ಮೇಲ್ಭಾಗದಲ್ಲಿ(_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "ಯಾವಾಗಲೂ ಕಾಣಿಸುವ ಕಾರ್ಯಕ್ಷೇತ್ರದಲ್ಲಿ(_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "ಕೇವಲ ಈ ಕಾರ್ಯಕ್ಷೇತ್ರದಲ್ಲಿ (_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "ಎಡಭಾಗದ ಕಾರ್ಯಕ್ಷೇತ್ರಕ್ಕೆ ವರ್ಗಾಯಿಸು(_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "ಬಲಭಾಗದ ಕಾರ್ಯಕ್ಷೇತ್ರಕ್ಕೆ ವರ್ಗಾಯಿಸು(_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "ಮೇಲಿನ ಕಾರ್ಯಕ್ಷೇತ್ರಕ್ಕೆ ವರ್ಗಾಯಿಸು(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "ಕೆಳಗಿನ ಕಾರ್ಯಕ್ಷೇತ್ರಕ್ಕೆ ವರ್ಗಾಯಿಸು(_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "ಮುಚ್ಚು(_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "ಕಾರ್ಯಕ್ಷೇತ್ರ %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "ಇನ್ನೊಂದು ಕಾರ್ಯಕ್ಷೇತ್ರಕ್ಕೆ ವರ್ಗಾಯಿಸು(_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "ಮೆಟಾ"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "ಸೂಪರ್"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "ಹೈಪರ್"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "ಮೇಲ್ಭಾಗ"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "ಕೆಳಭಾಗ"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "ಎಡಭಾಗ"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "ಬಲಭಾಗ"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "ಚೌಕಟ್ಟಿನ ಜ್ಯಾಮಿತಿಯು \"%s\" ಆಯಾಮವನ್ನು ಸೂಚಿಸುವುದಿಲ್ಲ"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "ಚೌಕಟ್ಟಿನ ಜ್ಯಾಮಿತಿಯು \"%s\" ಆಯಾಮವನ್ನು \"%s\" ಅಂಚಿಗಾಗಿ ಸೂಚಿಸುವುದಿಲ್ಲ"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "ಗುಂಡಿಯ ಆಕಾರ ಅನುಪಾತ %g ಯು ಸೂಕ್ತವಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "ಚೌಕಟ್ಟಿನ ಜ್ಯಾಮಿತಿಯು ಗುಂಡಿಗಳ ಗಾತ್ರವನ್ನು ಸೂಚಿಸುವುದಿಲ್ಲ"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "ಗ್ರೇಡಿಯಂಟ್‌ ಕನಿಷ್ಟ ಎರಡು ಬಣ್ಣಗಳನ್ನಾದರೂ ಹೊಂದಿರಬೇಕು"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK ಬಣ್ಣವನ್ನು ಸೂಚಿಸುವಿಕೆಗಾಗಿ ಸ್ಥಿತಿಯಲ್ಲಿ ಆವರಣ ಚಿಹ್ನೆಯು ಇರಬೇಕು, ಉದಾ. gtk:fg"
+"[NORMAL] ಆಗಿರುತ್ತದೆ, ಇಲ್ಲಿ NORMAL ಸ್ಥಿತಿಯನ್ನು ಸೂಚಿಸುತ್ತದೆ; \"%s\" ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡಲು "
+"ಸಾಧ್ಯವಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK ಬಣ್ಣವನ್ನು ಸೂಚಿಸುವಿಕೆಗಾಗಿ ಸ್ಥಿತಿಯ ನಂತರ ಮುಚ್ಚಲಾದ ಒಂದು ಆವರಣ ಚಿಹ್ನೆಯನ್ನು "
+"ಸೂಚಿಸಬೇಕು, ಉದಾ. gtk:fg[NORMAL] ಆಗಿರುತ್ತದೆ, ಇಲ್ಲಿ NORMAL ಸ್ಥಿತಿಯನ್ನು ಸೂಚಿಸುತ್ತದೆ; "
+"\"%s\" ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "ಬಣ್ಣ ವಿವರಣೆಯಲ್ಲಿನ ಸ್ಥಿತಿ \"%s\" ಅನ್ನು ಅರ್ಥ ಮಾಡಿಕೊಳ್ಳಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "ಬಣ್ಣ ವಿವರಣೆಯಲ್ಲಿನ ಬಣ್ಣದ ಘಟಕ \"%s\" ಅನ್ನು ಅರ್ಥ ಮಾಡಿಕೊಳ್ಳಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"ಮಿಶ್ರಗೊಳಿಕಾ ವಿನ್ಯಾಸ \"blend/bg_color/fg_color/alpha\", \"%s\" ವಿನ್ಯಾಸಕ್ಕೆ "
+"ಹೊಂದಿಕೆಯಾಗುತ್ತಿಲ್ಲ"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "ಮಿಶ್ರಗೊಳಿಸಲಾದ ಬಣ್ಣದಲ್ಲಿ ಆಲ್ಫಾ ಮೌಲ್ಯ \"%s\" ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "ಮಿಶ್ರ ಮಾಡಲಾದ ಬಣ್ಣದ ಆಲ್ಫಾ ಮೌಲ್ಯವು \"%s\" ವು 0.0 ಹಾಗು 1.0 ಯ ನಡುವಿನಲ್ಲಿ ಇಲ್ಲ"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "ಮಬ್ಬು ವಿನ್ಯಾಸ \"shade/base_color/factor\", \"%s\" ವಿನ್ಯಾಸಕ್ಕೆ ಸರಿಹೊಂದುತ್ತಿಲ್ಲ"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "ಮಬ್ಬುಗೊಳಿಸಲಾದ ಬಣ್ಣದ ಮಬ್ಬುಗೊಳಿಕಾ ಅಂಶ \"%s\" ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡಲಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "ಮಬ್ಬುಗೊಳಿಸಲಾದ ಬಣ್ಣದಲ್ಲಿನ ಮಬ್ಬುಗೊಳಿಸುವ ಅಂಶ \"%s\" ಋಣಾತ್ಮಕವಾಗಿದೆ"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "ಬಣ್ಣ \"%s\" ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "ಅನುಮತಿ ಇರದೆ ಇರುವಂತಹ ಅಕ್ಷರವನ್ನು '%s' ಅನ್ನು ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಹೊಂದಿದೆ"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"ಪಾರ್ಸ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗದೆ ಇರುವಂತಹ ತೇಲುವ ಬಿಂದು (ಫ್ಲೋಟಿಂಗ್ ಪಾಯಿಂಟ್‌) ಸಂಖ್ಯೆ '%s' ಅನ್ನು "
+"ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಹೊಂದಿದೆ"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "ಪಾರ್ಸ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗದೆ ಇರುವಂತಹ ಪೂರ್ಣಾಂಕ '%s' ಅನ್ನು ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಹೊಂದಿದೆ"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ನಲ್ಲಿನ ಪಠ್ಯದ ಆರಂಭದಲ್ಲಿ ಗೊತ್ತಿರದ ಆಪರೇಟರ್ ಅನ್ನು ಹೊಂದಿದೆ: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಖಾಲಿ ಇದೆ ಅಥವ ಅರ್ಥ ಮಾಡಿಕೊಳ್ಳಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್ ಶೂನ್ಯದಿಂದ ಭಾಗಾಕಾರಕ್ಕೆ ಕಾರಣವಾಗಿದೆ"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಒಂದು ತೇಲುವ-ಬಿಂದು ಸಂಖ್ಯೆಯಲ್ಲಿ mod ಆಪರೇಟರ್ ಅನ್ನು ಬಳಸಲು ಪ್ರಯತ್ನಿಸಿದೆ"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ನಲ್ಲಿ ಎಲ್ಲಿ operand ಅನ್ನು ನಿರೀಕ್ಷಿಸಲಾಗಿತ್ತೊ ಅಲ್ಲಿ ಒಂದು ಆಪರೇಟರ್ \"%s"
+"\" ಇದೆ"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ನಲ್ಲಿ ಎಲ್ಲಿ ಆಪರೇಟರ್ ಅನ್ನು ನಿರೀಕ್ಷಿಸಲಾಗಿತ್ತೊ ಅಲ್ಲಿ ಒಂದು operand ಇದೆ"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್ ಒಂದು operand ಬದಲಿಗೆ ಆಪರೇಟರಿನೊಂದಿಗೆ ಅಂತ್ಯಗೊಂಡಿದೆ"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಆಪೇರೇಟರ್ \"%c\" ಹಾಗು ಅಪರೇಟರ್ \"%c\" ಅನ್ನು ಹೊಂದಿದೆ ಆದರೆ ನಡುವೆ "
+"ಯಾವುದೆ operand ಅನ್ನು ಹೊಂದಿಲ್ಲ"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್ ಯಾವುದೆ ಗೊತ್ತಿರದ ಚರ ಮೌಲ್ಯ ಅಥವ ಸ್ಥಿರ ಮೌಲ್ಯ \"%s\" ಅನ್ನು ಹೊಂದಿದೆ"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್ ಪಾರ್ಸರ್ ತನ್ನ ಬಫರಿನ ಮಿತಿಯನ್ನು ಮೀರಿದೆ."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಯಾವುದೆ ತೆರೆದ ಆವರಣ ಚಿಹ್ನೆ ಇರದೆ ಕೇವಲ ಮುಚ್ಚಲ್ಪಟ್ಟ ಆವರಣ ಚಿಹ್ನೆಯನ್ನು "
+"ಹೊಂದಿದೆ"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಯಾವುದೆ ಮುಚ್ಚಲ್ಪಟ್ಟ ಆವರಣ ಚಿಹ್ನೆ ಇರದೆ ಕೇವಲ ತೆರೆದ ಆವರಣ ಚಿಹ್ನೆಯನ್ನು "
+"ಹೊಂದಿದೆ"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಯಾವುದೆ ಬಗೆಯ ಆಪರೇಟರುಗಳನ್ನು ಅಥವ ಆಪರಾಂಡ್‌ಗಳನ್ನು (operands) "
+"ಹೊಂದಿರುವಂತೆ ತೋರುತ್ತಿಲ್ಲ"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "ಒಂದು ದೋಷಕ್ಕೆ ಕಾರಣವಾದಂತಹ ಒಂದು ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಪರಿಸರವಿನ್ಯಾಸದಲ್ಲಿ ಕಂಡುಬಂದಿದೆ: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> ವು ಈ ಚೌಕಟ್ಟಿನ "
+"ಶೈಲಿಗೆ ಸೂಚಿತಗೊಳ್ಳಬೇಕು"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> ಕಾಣುತ್ತಿಲ್ಲ"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "\"%s\" ಥೀಮನ್ನು ಲೋಡ್‍ ಮಾಡಲು ವಿಫಲಗೊಂಡಿದೆ: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "ಯಾವುದೆ <%s> ಅನ್ನು ಹೊಂದಿಸಲಾಗಿಲ್ಲ (ಪರಿಸರವಿನ್ಯಾಸ \"%s\" ಕ್ಕಾಗಿ)"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"ಬಗೆ \"%s\" ಗಾಗಿ \"%s\" ಪರಿಸರವಿನ್ಯಾಸದಲ್ಲಿ ಯಾವುದೆ ಚೌಕಟ್ಟು ಶೈಲಿ ಇಲ್ಲ, ಒಂದು <window "
+"type=\"%s\" style_set=\"whatever\"/> ಘಟಕವನ್ನು ಸೇರಿಸಿ"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"ಬಳಕೆದಾರರಿಂದ ಸೂಚಿತಗೊಂಡ ಸ್ಥಿರಾಂಕಗಳು ಕ್ಯಾಪಿಟಲ್ ಅಕ್ಷರಗಳಿಂದ ಆರಂಭಗೊಳ್ಳಬೇಕು; ಆದರೆ \"%s\" "
+"ಹೊಂದಿಲ್ಲ"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "\"%s\" ಸ್ತಿರಾಂಕವು ಈಗಾಗಲೆ ಸೂಚಿತಗೊಂಡಿದೆ"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "<%s> ಅಂಶಕ್ಕಾಗಿ ಯಾವುದೆ \"%s\" ಗುಣವಿಶೇಷವಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "ಸಾಲು %d ಅಕ್ಷರ %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "ಗುಣವಿಶೇಷ \"%s\" ಅನ್ನು ಒಂದೇ <%s> ಅಂಶದಲ್ಲಿ ಎರಡು ಬಾರಿ ಮರುಕಳಿಸಲಾಗಿದೆ"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "ಗುಣವಿಶೇಷ \"%s\" ವು ಈ ಸನ್ನಿವೇಶದಲ್ಲಿನ <%s> ಅಂಶದಲ್ಲಿ ಅಮಾನ್ಯವಾಗಿದೆ"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" ಅನ್ನು ಒಂದು ಪೂರ್ಣಾಂಕವಾಗಿ ಪಾರ್ಸ್ ಮಾಡಲಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "\"%s\" ಹಿಂದಿರುವ ಅಕ್ಷರಗಳನ್ನು (ವಾಕ್ಯ \"%s\" ದಲ್ಲಿ) ಅರ್ಥ ಮಾಡಿಕೊಳ್ಳಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "%ld ಪೂರ್ಣಾಂಕವು ಧನವಾಗಿರಬೇಕು"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "%ld ಪೂರ್ಣಾಂಕವು ಬಹಳ ದೊಡ್ಡದಾಗಿದೆ, ಈಗಿನ ಗರಿಷ್ಟವು %d ಆಗಿದೆ"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+"\"%s\" ಅನ್ನು ಒಂದು ತೇಲುವ ಬಿಂದು (ಫ್ಲೋಟಿಂಗ್ ಪಾಯಿಂಟ್‌) ಸಂಖ್ಯೆಯಾಗಿ ಪಾರ್ಸ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "ಬೂಲಿಯನ್ ಮೌಲ್ಯಗಳು \"true\" ಅಥವ \"false\" ಆಗಿರಬೇಕೆ ಹೊರತು \"%s\" ಅಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "ಕೋನವು 0.0 ಹಾಗು 360.0 ನಡುವೆ ಇರಬೇಕು, %g ಆಗಿದೆ\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "ಆಲ್ಫಾವು 0.0 (ಅಗೋಚರ) ಹಾಗು 1.0 (ಸಂಪೂರ್ಣ ಅಪಾರದರ್ಶಕ), %g ಆಗಿಲ್ಲ\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"ಅಮಾನ್ಯವಾದ ಶೀರ್ಷಿಕೆ ಅಳತೆ \"%s\" (ಇದು xx-small,x-small,small,medium,large,x-"
+"large,xx-large ಗಳಲ್ಲಿ ಒಂದನ್ನು ಹೊಂದಿರಬೇಕು)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> ಹೆಸರು \"%s\" ಎರಡನೆಯ ಬಾರಿಗೆ ಬಳಸಲಾಗಿದೆ"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> ಮೂಲ \"%s\" ಅನ್ನು ಸೂಚಿಸಲಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> ಜ್ಯಾಮಿತಿಯು \"%s\" ಸೂಚಿತಗೊಂಡಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> ಯು ಒಂದೋ ಜ್ಯಾಮಿತಿಯನ್ನು ಅಥವ ಒಂದು ಜ್ಯಾಮಿತಿಯನ್ನು ಹೊಂದಿರುವ ಮೂಲವನ್ನು ಸೂಚಿಸಬೇಕು"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "ಒಂದು ಆಲ್ಫಾ ಮೌಲ್ಯವು ಅರ್ಥಬದ್ಧವಾಗಿರಬೇಕೆಂದರೆ ನೀವು ಅದಕ್ಕಾಗಿ ಒಂದು ಹಿನ್ನಲೆಯನ್ನು ಸೂಚಿಸಬೇಕು"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "ಗೊತ್ತಿರದ ಬಗೆ \"%s\", <%s> ಘಟಕದಲ್ಲಿ"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "ಗೊತ್ತಿರದ style_set \"%s\", <%s> ಘಟಕದಲ್ಲಿ"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "ವಿಂಡೋ ಬಗೆ \"%s\" ಈಗಾಗಲೆ ಶೈಲಿ ಜೋಡಿಯನ್ನು ನಿಯೋಜಿಸಿದೆ"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "ಅಂಶ <%s> ಕ್ಕೆ <%s> ನ ಕೆಳಗೆ ಅನುಮತಿ ಇಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"ಗುಂಡಿಗಳಿಗಾಗಿ \"button_width\"/\"button_height\" ಹಾಗು \"aspect_ratio\" "
+"ಇವೆರಡನ್ನೂ ಸೂಚಿಸಲಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "ದೂರ \"%s\" ವು ತಿಳಿದಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "ಗೊತ್ತಿರದ ಆಕಾರ ಅನುಪಾತ \"%s\""
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "ಗೊತ್ತಿರದ \"%s\" ಅಂಚು"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "<%s> ಘಟಕದಲ್ಲಿ ಯಾವುದೆ \"start_angle\" ಅಥವ \"from\" ಗುಣವಿಶೇಷವು ಇಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "<%s> ಘಟಕದಲ್ಲಿ ಯಾವುದೆ \"extent_angle\" ಅಥವ \"to\" ಗುಣವಿಶೇಷವು ಇಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "ಗ್ರೇಡಿಯಂಟ್‌ನ ಬಗೆಗೆ ಮೌಲ್ಯ \"%s\" ವು ಅರ್ಥವಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "ಕಡತದ ಬಗೆ \"%s\" ಅನ್ನು <%s> ಘಟಕಕ್ಕಾಗಿ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲಾಗಲಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "\"%s\" ಸ್ಥಿತಿಯನ್ನು <%s> ಘಟಕಕ್ಕಾಗಿ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲಾಗಲಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "\"%s\" ಛಾಯೆಯನ್ನು <%s> ಘಟಕಕ್ಕಾಗಿ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲಾಗಲಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "\"%s\" ಬಾಣದ ಗುರುತನ್ನು <%s> ಘಟಕಕ್ಕಾಗಿ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲಾಗಲಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "ಯಾವುದೆ <draw_ops> ಕರೆ \"%s\" ಅನ್ನು ಸೂಚಿಸಲಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "ಇಲ್ಲಿ draw_ops \"%s\" ಅನ್ನು ಸೇರಿಸುವುದರಿಂದ ಒಂದು ವೃತ್ತಾಕಾರದ ಉಲ್ಲೇಖವನ್ನು ನಿರ್ಮಿಸುತ್ತದೆ"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "ಚೌಕಟ್ಟು ಅಂಶಕ್ಕಾಗಿ ತಿಳಿಯದ ಸ್ಥಾನ \"%s\""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "%s ಸ್ಥಾನದಲ್ಲಿ ಚೌಕಟ್ಟು ಶೈಲಿಯು ಈಗಾಗಲೆ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "\"%s\" ಹೆಸರಿನ ಯಾವುದೆ <draw_ops> ಆಯ್ಕೆಯನ್ನು ಸೂಚಿಸಲಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "ಗುಂಡಿಗಾಗಿ ಗೊತ್ತಿರದ ಕ್ರಿಯೆ \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "ಈ ಆವೃತ್ತಿಯಲ್ಲಿ ಗುಂಡಿ ಕ್ರಿಯೆ \"%s\" ಯು ಲಭ್ಯವಿಲ್ಲ (%d, %d ಅಗತ್ಯವಿದೆ)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "\"%s\" ಗುಂಡಿಗಾಗಿ ಗೊತ್ತಿರದ ಸ್ಥಿತಿ"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "ಸ್ಥಿತಿ %s ಗಮನ %s ಕ್ಕಾಗಿ ಚೌಕಟ್ಟು ಶೈಲಿಯಲ್ಲಿ ಒಂದು ಗುಂಡಿಯನ್ನು ಈಗಾಗಲೆ ಸೂಚಿಸಲಾಗಿದೆ"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" ಯು ಗಮನ ಗುಣ ವಿಶೇಷಕ್ಕೆ ಒಂದು ಮಾನ್ಯವಾ ಮೌಲ್ಯವಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" ಯು ಸ್ಥಿತಿ ಗುಣ ವಿಶೇಷಕ್ಕೆ ಒಂದು ಮಾನ್ಯವಾ ಮೌಲ್ಯವಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" ಎಂದು ಕರೆಯಲ್ಪಡುವ ಒಂದು ಶೈಲಿಯು ಸೂಚಿತಗೊಂಡಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" ಯು ಗಾತ್ರ ಬದಲಾವಣೆ ಗುಣ ವಿಶೇಷಕ್ಕೆ ಒಂದು ಮಾನ್ಯವಾ ಮೌಲ್ಯವಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"ಗರಿಷ್ಟಗೊಳಿಸಲಾದ/ಮಬ್ಬುಗೊಳಿಸಲಾದ ಸ್ಥಿತಿಗಳಿಗಾಗಿ <%s> ಅಂಶದಲ್ಲಿ \"resize\" ಗುಣವಿಶೇಷವು "
+"ಇರುವಂತಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "ಗರಿಷ್ಟಗೊಳಿಸಲಾದ ಸ್ಥಿತಿಗಳಿಗಾಗಿ <%s> ಅಂಶದಲ್ಲಿ \"resize\" ಗುಣವಿಶೇಷವು ಇರುವಂತಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "ಸ್ಥಿತಿ %s ಗಾತ್ರ ಬದಲಾವಣೆ %s ಗಮನ %s ಕ್ಕಾಗಿ ಶೈಲಿಯನ್ನು ಈಗಾಗಲೆ ಸೂಚಿಸಲಾಗಿದೆ"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "ಸ್ಥಿತಿ %s ಗಮನ %s ಕ್ಕಾಗಿ ಶೈಲಿಯನ್ನು ಈಗಾಗಲೆ ಸೂಚಿಸಲಾಗಿದೆ"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"ಒಂದು <piece> ಘಟಕದಲ್ಲಿ ಎರಡು draw_ops ಇರುವಂತಿಲ್ಲ (ಪರಿಸರವಿನ್ಯಾಸವು ಒಂದು draw_ops "
+"ಗುಣವಿಶೇಷವನ್ನು ಹಾಗು ಒಂದು <draw_ops> ಘಟಕವನ್ನೂ ಸಹ ಸೂಚಿಸಿದೆ, ಅಥವ ಎರಡು ಘಟಕಗಳನ್ನು "
+"ಸೂಚಿಸಿದೆ)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"ಒಂದು <button> ಘಟಕದಲ್ಲಿ ಎರಡು draw_ops ಇರುವಂತಿಲ್ಲ (ಪರಿಸರವಿನ್ಯಾಸವು ಒಂದು draw_ops "
+"ಗುಣವಿಶೇಷವನ್ನು ಹಾಗು ಒಂದು <draw_ops> ಘಟಕವನ್ನೂ ಸಹ ಸೂಚಿಸಿದೆ, ಅಥವ ಎರಡು ಘಟಕಗಳನ್ನು "
+"ಸೂಚಿಸಿದೆ)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"ಒಂದು <menu_icon> ಘಟಕದಲ್ಲಿ ಎರಡು draw_ops ಇರುವಂತಿಲ್ಲ (ಪರಿಸರವಿನ್ಯಾಸವು ಒಂದು "
+"draw_ops ಗುಣವಿಶೇಷವನ್ನು ಹಾಗು ಒಂದು <draw_ops> ಘಟಕವನ್ನೂ ಸಹ ಸೂಚಿಸಿದೆ, ಅಥವ ಎರಡು "
+"ಘಟಕಗಳನ್ನು ಸೂಚಿಸಿದೆ)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "ಅತ್ಯಂತ ಹೊರಗಿನ ಪರಿಸರವಿನ್ಯಾಸವು <marco_theme> ಆಗಿರಬೇಕೆ ಹೊರತು <%s> ಅಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "<%s> ಘಟಕಕ್ಕೆ ಒಂದು ಹೆಸರು/ಲೇಖಕ/ದಿನಾಂಕ/ವಿವರಣೆಯ ಒಳಗೆ ಇರಲು ಅನುಮತಿ ಇಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<%s> ಘಟಕಕ್ಕೆ ಒಂದು <constant> ಘಟಕದ ಒಳಗೆ ಇರಲು ಅನುಮತಿ ಇಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "ಒಂದು ದೂರ/ಅಂಚು/ಆಕಾರ ಅನುಪಾತ(aspect_ratio) ಘಟಕದ ಒಳಗೆ ಘಟಕ <%s> ಕ್ಕೆ ಅನುಮತಿ ಇಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "ಒಂದು ಎಳೆಯುವಿಕೆ ಕಾರ್ಯದ ಒಳಗೆ ಘಟಕ <%s> ಕ್ಕೆ ಅನುಮತಿ ಇಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%s> ಘಟಕಕ್ಕೆ ಒಂದು <%s> ಘಟಕದ ಒಳಗೆ ಇರಲು ಅನುಮತಿ ಇಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "ಚೌಕಟ್ಟಿನ ಅಂಶಕ್ಕಾಗಿ ಯಾವುದೆ draw_ops ಅನ್ನು ಒದಗಿಸಲಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "ಗುಂಡಿಗಾಗಿ ಯಾವುದೆ draw_ops ಅನ್ನು ಒದಗಿಸಲಾಗಿಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> ಘಟಕದ ಒಳಗೆ ಯಾವುದೆ ಪಠ್ಯಕ್ಕೆ ಅನುಮತಿ ಇಲ್ಲ"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> ಈ ಥೀಮ್‍ಗೆ ಎರಡು ಬಾರಿ ಸೂಚಿಸಲ್ಪಟ್ಟಿದೆ"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "%s ಥೀಮ್‍ಗೆ ಒಂದು ಮಾನ್ಯವಾದ ಕಡತವನ್ನು ಪತ್ತೆ ಮಾಡುವಲ್ಲಿ ವಿಫಲಗೊಂಡಿದೆ\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "%s ಥೀಮ್ ಕಡತವು ಒಂದು ಮೂಲ<marco_theme> ಘಟಕವನ್ನು ಹೊಂದಿಲ್ಲ"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Windows"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Windows/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Windows/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Windows/_Modal dialog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Windows/_Utility"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Splashscreen"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Windows/_Top dock"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Windows/_Bottom dock"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Windows/_Left dock"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Windows/_Right dock"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Windows/_All docks"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Windows/Des_ktop"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "ಇದು ಒಂದು ಸಂವಾದದ ನಮೂನೆಯಲ್ಲಿರುವ ಒಂದು ಸಂದೇಶದ ನಮೂನೆ"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "ನಕಲಿ ಮೆನು ಅಂಶ %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "ಅಂಚು ಮಾತ್ರ ಇರುವ ವಿಂಡೊ"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "ಪಟ್ಟಿ"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "ಸಾಮಾನ್ಯ ಅನ್ವಯ ವಿಂಡೊ"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "ಸಂವಾದ ಪೆಟ್ಟಿಗೆ"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "ಮೋಡಲ್ ಸಂವಾದ ಪೆಟ್ಟಿಗೆ"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "ಸವಲತ್ತುಗಳ ಫಲಕ"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "ಹರಿಯಲ್ಪಟ್ಟ ಮೆನು"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "ಅಂಚು"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "ಗುಂಡಿ ಲೇಔಟ್ ಪರೀಕ್ಷೆ %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "ಒಂದು ವಿಂಡೋ ಚೌಕಟ್ಟನ್ನು ಚಿತ್ರಿಸಲು ಸಮಯ %g ಮಿಲಿಸೆಕೆಂಡುಗಳು"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "ಬಳಕೆ: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "ಥೀಮ್ ಅನ್ನು ಲೋಡ್ ಮಾಡುವಲ್ಲಿ ದೋಷ: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" ಥೀಮ್ %g ಸೆಕೆಂಡ್‍ಗಳಲ್ಲಿ ಲೋಡ್ ಆಗಿದೆ\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "ಸಾಮಾನ್ಯ ಶೀರ್ಷಿಕೆ ಅಕ್ಷರಶೈಲಿ"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "ಚಿಕ್ಕದಾದ ಶೀರ್ಷಿಕೆ ಅಕ್ಷರಶೈಲಿ"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "ದೊಡ್ಡದಾದ ಶೀರ್ಷಿಕೆ ಅಕ್ಷರಶೈಲಿ"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "ಗುಂಡಿಗಳ ಲೇಔಟ್"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "ಮೈಲಿಗಲ್ಲು"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "ವಿಂಡೊ ಶೀರ್ಷಿಕೆಯು ಹೀಗೆ ಇರುತ್ತದೆ"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d ಚೌಕಟ್ಟುಗಳನ್ನು %g ಕ್ಲೈಟ್‌-ಬದಿಯ ಸೆಕೆಂಡುಗಳಲ್ಲಿ (ಪ್ರತಿ ಚೌಕಟ್ಟಿಗೂ %g ಮಿಲಿಸೆಕೆಂಡುಗಳು) "
+"ಹಾಗು X ಪರಿಚಾರಕ ಸಂಪನ್ಮೂನಗಳನ್ನೂ ಸಹ ಒಳಗೊಂಡು %g ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಗೋಡೆ ಗಡಿಯಾರದ ಸಮಯದಲ್ಲಿ "
+"(ಪ್ರತಿ ಚೌಕಟ್ಟಿಗೂ %g ಮಿಲಿಸೆಕೆಂಡುಗಳು)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "ಸ್ಥಾನದ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಪರೀಕ್ಷೆಯು TRUE ಅನ್ನು ಮರಳಿಸಿದೆ ಆದರೆ ಅದು ದೋಷವನ್ನು ಸೂಚಿಸಿಲ್ಲ"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "ಸ್ಥಾನದ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ ಪರೀಕ್ಷೆಯು FALSE ಅನ್ನು ಮರಳಿಸಿದೆ ಆದರೆ ಅದು ದೋಷವನ್ನು ಸೂಚಿಸಿಲ್ಲ"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "ದೋಷವನ್ನು ನಿರೀಕ್ಷಿಸಲಾಗಿತ್ತು ಆದರೆ ಯಾವುದೂ ಕಂಡು ಬಂದಿಲ್ಲ"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "ದೋಷ %d ಅನ್ನು ನಿರೀಕ್ಷಿಸಲಾಗಿತ್ತು ಆದರೆ %d ಅನ್ನು ನೀಡಲಾಗಿದೆ"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "ದೋಷವನ್ನು ನಿರೀಕ್ಷಿಸಿರಲಿಲ್ಲ ಆದರೆ ಒಂದು ದೋಷವು ಕಂಡು ಬಂದಿದೆ: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x ಮೌಲ್ಯವು %d ಆಗಿದೆ, %d ಅನ್ನು ನಿರೀಕ್ಷಿಸಲಾಗಿತ್ತು"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y ಮೌಲ್ಯವು %d ಆಗಿದೆ, %d ಅನ್ನು ನಿರೀಕ್ಷಿಸಲಾಗಿತ್ತು"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d ಅಕ್ಷಾಂಶ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ಗಳನ್ನು %g ಸೆಕೆಂಡುಗಳಲ್ಲಿ ಪಾರ್ಸ್ ಮಾಡಲಾಗಿದೆ (ಸರಾಸರಿ %g "
+"ಸೆಕೆಂಡುಗಳು)\n"
+
+#~ msgid "New windows that shouldn't get focus"
+#~ msgstr "ಗಮನ ಹರಿಸಬಾರದಿರುವ ಹೊಸ ವಿಂಡೊಗಳು"
+
+#~ msgid ""
+#~ "The normal behavior is that if a new window is not given the focus "
+#~ "(since, for example, the user has interacted with another window after "
+#~ "launching an application), then if the window would be stacked on top of "
+#~ "the focus window, the window is instead stacked beneath and flashed in "
+#~ "the taskbar. This behavior can be annoying on large screens and multihead "
+#~ "setups where the taskbar is hard to notice and difficult to get to, so "
+#~ "this option, if set, disables this behavior, and new windows are always "
+#~ "placed on top, whether or not they get focus. Note that if this option is "
+#~ "set, a new window may completely hide the focus window but not get focus "
+#~ "itself, which can be quite confusing to users. Also, note that setting "
+#~ "this option breaks the normal invariant in the 'click' focus mode that "
+#~ "the topmost window always has focus, so its most suitable for use with "
+#~ "the 'mouse' and 'sloppy' focus modes."
+#~ msgstr ""
+#~ "ಎಲ್ಲಿಯಾದರೂ ಒಂದು ಹೊಸ ವಿಂಡೊದತ್ತ ಗಮನ ಹರಿಸದೆ ಇದ್ದ ಪಕ್ಷದಲ್ಲಿ (ಏಕೆಂದರೆ, ಉದಾಹರಣೆಗೆ "
+#~ "ಬಳಕೆದಾರರು ಒಂದು ಅನ್ವಯವನ್ನು ಚಲಾಯಿಸಿದ ನಂತರ ಅವರು ಬೇರೊಂದು ವಿಂಡೊದೊಂದಿಗೆ "
+#~ "ವ್ಯವಹರಿಸುತ್ತಿದ್ದಂತಹ ಸಂದರ್ಭಗಳಲ್ಲಿ), ಗಮನ ಹರಿಸಲಾದ ವಿಂಡೊದ ಕೆಳಗಿರುವ ಪಟ್ಟಿಯಲ್ಲಿ ಮೇಲೆ "
+#~ "ಇರಿಸಿದಲ್ಲಿ, ಬದಲಿಗೆ ವಿಂಡೊವನ್ನು ಕೆಳಗೆ ಇರಿಸಲಾಗುವುದು ಹಾಗು ಕಾರ್ಯಪಟ್ಟಿಯಲ್ಲಿ "
+#~ "ಮಿನುಗಿಸುವುದು ಸಾಮಾನ್ಯ ವರ್ತನೆಯಾಗಿರುತ್ತದೆ. ದೊಡ್ಡ ಪರದೆಗಳಲ್ಲಿ ಹಾಗು ಮಲ್ಟಿಹೆಡ್‌ "
+#~ "ಸೆಟ್‌ಅಪ್‌ಗಳಲ್ಲಿ ಕಾರ್ಯಪಟ್ಟಿಯು ಚಿಕ್ಕದಾಗಿರುತ್ತದೆ ಹಾಗು ಅದನ್ನು ನಿಲುಕಿಸಿಕೊಳ್ಳುವುದು "
+#~ "ಕಷ್ಟಸಾಧ್ಯವಾದ್ದರಿಂದ ಈ ವರ್ತನೆಯು ಕಿರಿಕಿರಿಯುಂಟು ಮಾಡುತ್ತದೆ ಆದ್ದರಿಂದ ಈ ಆಯ್ಕೆಯನ್ನು "
+#~ "ಹೊಂದಿಸಲಾಗಿದ್ದಲ್ಲಿ, ಈ ವರ್ತನೆಯನ್ನು ಅಶಕ್ತಗೊಳಿಸುತ್ತದೆ, ಹಾಗು ಹೊಸ ವಿಂಡೊಗಳತ್ತ ಗಮನ "
+#~ "ಹರಿಸಿದರು ಅಥವ ಹರಿಸದೆ ಇದ್ದರೂ ಸಹ ಅವನ್ನು ಮೇಲೆಯೆ ಇರಿಸುತ್ತದೆ. ಈ ಆಯ್ಕೆಯನ್ನು "
+#~ "ಹೊಂದಿಸಿದಲ್ಲಿ, ಹೊಸ ವಿಂಡೋವು ಗಮನಹರಿಸಲಾದ ವಿಂಡೊವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಅಡಗಿಸುತ್ತದೆ ಹಾಗು "
+#~ "ಅವು ತಾವಾಗಿಯೆ ಗಮನ ಹರಿಸಲ್ಪಡುವುದಿಲ್ಲ ಮತ್ತು ಇದು ಬಳಕೆದಾರರಿಗೆ ಗೊಂದಲ ಉಂಟು ಮಾಡಬಹುದು "
+#~ "ಎಂಬುದನ್ನು ಎಂದು ನೆನಪಿಡಿ. ಅಲ್ಲದೆ, ಈ ಆಯ್ಕೆಯನ್ನು ಹೊಂದಿಸುವುದರಿಂದ ಮೇಲಿನ ಮಟ್ಟದಲ್ಲಿರುವ "
+#~ "ವಿಂಡೊವು ಯಾವಾಗಲು ಗಮನ ಹರಿಸಲು ಬಳಸಲಾಗುವ 'ಕ್ಲಿಕ್' ಗಮನ ಹರಿಸುವ ಕ್ರಮ ಸಾಮಾನ್ಯ "
+#~ "ಇನ್‌ವೇರಿಯಂಟ್‌ಗೆ ತೊಡಕಾಗುತ್ತದೆ, ಆದ್ದರಿಂದ, ಇದು 'ಮೌಸ್' ಹಾಗು 'ಸ್ಲಾಪಿ' ಗಮನ ಹರಿಸುವ "
+#~ "ಕ್ರಮಗಳಲ್ಲಿ ಬಳಸ ಸೂಕ್ತವಾಗಿರುತ್ತದೆ."
+
+#~ msgid ""
+#~ "This option provides a way to specify new windows that shouldn't get "
+#~ "focus. Normally an application specifies whether or not it gets focus by "
+#~ "setting the _NET_WM_USER_TIME property, but legacy applications may not "
+#~ "set this, which can cause unwanted focus stealing. The contents of this "
+#~ "property is a space-separated list of expressions to match against "
+#~ "windows. If any of the expressions match a window then the window will "
+#~ "not get focus. The syntax of expressions is: (eq [name|class] \"&lt;"
+#~ "value&gt;\"): window name (title) or the class from WM_CLASS matches &lt;"
+#~ "value&gt; exactly. (glob [name|class] \"&lt;glob&gt;\"): window name "
+#~ "(title) or the class from WM_CLASS matches the shell-style glob pattern "
+#~ "&lt;glob&gt;. (and &lt;expr&gt; &lt;expr&gt;) (or &lt;expr&gt; &lt;"
+#~ "expr&gt;) (not &lt;expr): Boolean combinations of expressions."
+#~ msgstr ""
+#~ "ಹೊಸ ವಿಂಡೊಗಳತ್ತ ಗಮನ ಹರಿಸಬೇಕೆ ಅಥವ ಬೇಡವೆ ಎನ್ನುವದನ್ನು ಸೂಚಿಸಲು ಇದು ಸೂಕ್ತವಾದ "
+#~ "ಆಯ್ಕೆಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. ಸಾಮಾನ್ಯವಾಗಿ ಒಂದು ಅನ್ವಯವು _NET_WM_USER_TIME ಗುಣವನ್ನು "
+#~ "ಹೊಂದಿಸಿದಾಗ ಅದರತ್ತ ಗಮನ ಹರಿಸಬೇಕೆ ಅಥವ ಇಲ್ಲವೆ ಎಂದು ಸೂಚಿಸುತ್ತದೆ, ಆದರೆ ಹಳೆಯ "
+#~ "ಅನ್ವಯಗಳಲ್ಲಿ ಈ ಸೌಕರ್ಯವ ಇಲ್ಲದೆ ಇರಬಹುದು, ಹಾಗು ಇದರಿಂದ ಅನಗತ್ಯವಾಗಿ ಗಮನ ಸೆಳೆಯುವಿಕೆಗೆ "
+#~ "ಕಾರಣವಾಗುತ್ತದೆ. ಈ ಗುಣದಲ್ಲಿನ ವಿಷಯವೆಂದರೆ ವಿಂಡೊಗಳಿಗೆ ಹೊಂದಿಸಬೇಕಿರುವ, ನಡುವ ಖಾಲಿ "
+#~ "ಸ್ಥಳವನ್ನು ಹೊಂದಿರುವ ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ಗಳ ಪಟ್ಟಿಯಾಗಿರುತ್ತವೆ. ಇವುಗಳಲ್ಲಿ ಯಾವುದೆ ಎಕ್ಸ್‌ಪ್ರೆಶನ್ ಒಂದು "
+#~ "ವಿಂಡೊಗೆ ತಾಳೆಯಾದಲ್ಲಿ ಆ ವಿಂಡೊದತ್ತ ಗಮನ ಕೇಂದ್ರೀಕರಿಸಲ್ಪಡುವುದಿಲ್ಲ. ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ಗಳ "
+#~ "ಸಿಂಟ್ಯಾಕ್ಸ್ ಹೀಗಿರುತ್ತದೆ: (eq [name|class] \"&lt;value&gt;\"):ನಿಖರವಾಗಿ ವಿಂಡೊ "
+#~ "ಹೆಸರು (ಶೀರ್ಷಿಕೆ) ಅಥವ WM_CLASS ತಾಳೆಯಾಗುವ ವರ್ಗಗಳ &lt;ಮೌಲ್ಯ&gt;. (glob [name|"
+#~ "class] \"&lt;glob&gt;\"): ವಿಂಡೊ ಹೆಸರು (ಶೀರ್ಷಿಕೆ) ಅಥವ WM_CLASS ತಾಳೆಯಾಗುವ "
+#~ "ಶೆಲ್-ಶೈಲಿಯ ಗ್ಲಾಬ್ ವಿನ್ಯಾಸದಲ್ಲಿನ ವರ್ಗದ &lt;glob&gt;. (and &lt;expr&gt; &lt;"
+#~ "expr&gt;) (or &lt;expr&gt; &lt;expr&gt;) (not &lt;expr): ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ಗಳ "
+#~ "ಬೂಲಿಯನ್ ಸಿದ್ಧತೆಗಳು"
+
+#~ msgid "Whether new windows should always be placed on top"
+#~ msgstr "ಹೊಸ ವಿಂಡೋಗಳನ್ನು ಯಾವಾಗಲೂ ಮೇಲೆಯೆ ಇರಿಸಬೇಕೆ"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "ಈ ವಿಂಡೋಗಳಲ್ಲಿ ಬೇರೊಂದನ್ನು ತೆರೆ"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "'ತೆರೆ' ಚಿಹ್ನೆಯನ್ನು ಹೊಂದಿರುವ ಒಂದು ಪ್ರಾಯೋಗಿಕ ಗುಂಡಿ"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "'ತ್ಯಜಿಸು' ಚಿಹ್ನೆಯನ್ನು ಹೊಂದಿರುವ ಒಂದು ಪ್ರಾಯೋಗಿಕ ಗುಂಡಿ"
diff --git a/po/ko.po b/po/ko.po
new file mode 100644
index 00000000..f9719910
--- /dev/null
+++ b/po/ko.po
@@ -0,0 +1,2345 @@
+# marco korean translation
+# This file is distributed under the same license as the marco package
+# Young-Ho, Cha <[email protected]>, 2002, 2006.
+# Changwoo Ryu <[email protected]>, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2010-03-14 02:09+0900\n"
+"PO-Revision-Date: 2010-03-14 02:12+0900\n"
+"Last-Translator: Changwoo Ryu <[email protected]>\n"
+"Language-Team: MATE Korea <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "데스크톱"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "창 관리"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "삑소리 이벤트"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "알 수 없는 창 정보 요청: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> 창이 응답하지 않습니다."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "좀 더 기다리거나, 아니면 강제로 프로그램을 끝낼 수 있습니다."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "기다리기(_W)"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "강제로 끝내기(_F)"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "호스트 이름 얻기 실패: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "콤포짓에 필요한 %s 확장 기능이 없습니다"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X 윈도 시스템 디스플레이 '%s'을(를) 여는데 실패하였습니다\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"디스플레이 '%s'에 대한 연결을 잃었습니다;\n"
+"아마도 X 서버가 종료되었거나 창 관리자가 종료/강제 종료\n"
+"되었을 것입니다.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "디스플레이 '%3$s'에서 치명적인 입출력 오류 %1$d (%2$s).\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"다른 프로그램에서 이미 단축키로 변경 키 %2$x와(과) 키 %1$s을(를) 사용하고 있"
+"습니다\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> 명령을 실행하는 중 오류가 발생했습니다:\n"
+"%s."
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "명령 %d이(가) 정의되지 않았습니다.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "터미널 명령을 정의하지 않았습니다.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "세션 관리자와 연결 하지 않습니다"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "실행되고 있는 창 관리자를 메타시티로 바꿉니다"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "세션 관리 ID를 지정합니다"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "사용할 X 디스플레이"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "저장 파일에서 세션을 초기화 합니다"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "버전을 출력합니다"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "X 호출을 동기로 합니다"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "컴포지트 켜기"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "컴포지트 끄기"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "최대화되고 창 장식이 없는 전체화면 창을 만들지 않습니다"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "테마 디렉터리를 읽는 데 실패했습니다: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"테마를 찾을 수 없습니다! %s이(가) 있고 올바른 테마가 들어 있는지 확인하십시"
+"오.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "다시 시작 실패: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf 키 '%s'이(가) 잘못된 값으로 설정되어 있습니다\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"MateConf 키 %2$s에 저장된 %1$d은(는) %3$d에서 %4$d 사이의 범위를 벗어납니다\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf 키 \"%s\"이(가) 잘못된 형식으로 설정되어 있습니다\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"응용 프로그램에 대한 임시 방편을 막았습니다. 몇몇 응용프로그램들이 제대로 동"
+"작하지 않을것입니다.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "MateConf 키 %2$s에서 글꼴 지정 \"%1$s\"을(를) 분석할 수 없습니다\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"설정 데이터베이스에서 찾은 \"%s\"이(가) 마우스 단추 설정 키의 올바른 값이 아"
+"닙니다\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "작업 공간의 수를 %d(으)로 설정하는 중 오류: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "작업 공간 %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"설정 데이터베이스에서 찾은 \"%s\"이(가) 단축키 \"%s\"에 대한 올바른 값이 아닙"
+"니다\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "작업 공간 %d의 이름을 \"%s\"(으)로 설정하는 중 오류: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "컴포짓 상태를 설정하는 중 오류: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "디스플레이 '%2$s'의 화면 %1$d은(는) 잘못되었습니다\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"디스플레이 \"%2$s\"의 화면 %1$d에 이미 창 관리자가 실행되고 있습니다; 현재 "
+"창 관리자를 무시하는 --replace 옵션을 써보십시오.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "디스플레이 \"%2$s\"의 화면 %1$d에 창 관리 선택을 가질 수 없습니다\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+"디스플레이 \"%2$s\"의 화면 %1$d은(는) 이미 창 관리자가 실행되고 있습니다\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "디스플레이 \"%2$s\"의 화면 %1$d을(를) 떼어 놓을수 없습니다\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"\"<Control>a\" 혹은 \"<Shift><Alt>F1\"과 같이 씁니다.\n"
+"\n"
+"파서는 매우 유연하므로 대소문자를 모두 쓸 수 있고, \"<Ctl>\"나 \"<Ctrl>\"처"
+"럼 줄여서 쓸 수도 있습니다. 이 옵션을 문자열 \"disabled\"로 하면, 이 동작에 "
+"대한 키바인딩은 없습니다."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"\"<Control>a\" 혹은 \"<Shift><Alt>F1\"과 같이 씁니다.\n"
+"\n"
+"파서는 매우 유연하므로 대소문자를 모두 쓸 수 있고, \"<Ctl>\"나 \"<Ctrl>\"처"
+"럼 줄여서 쓸 수도 있습니다. 이 옵션을 문자열 \"disabled\"로 하면, 이 동작에 "
+"대한 키바인딩은 없습니다.\n"
+"\n"
+"\"Shift\" 키를 누른 상태에서 이 키바인딩을 누르면 반대 동작을 실행합니다. 그"
+"러므로 이 키바인딩 안에서는 \"Shift\"를 사용할 수 없습니다."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "디렉터리 '%s'을(를) 만들 수 없습니다: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "세션 파일 '%s'을(를) 쓰기위해 열 수 없습니다: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "세션 파일 '%s'을(를) 쓰는 중 오류: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "세션 파일 '%s'을(를) 닫는 중 오류: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "저장된 세션 파일 %s을(를) 읽기 실패: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "저장된 세션파일을 분석하기 실패: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "이미 session ID를 가지고 있는데 <marco_session> 속성이 나왔습니다."
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "<%2$s> 요소에 알 수 없는 속성 %1$s"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "포함된 <window> 태그"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "알 수 없는 속성 %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"이 창은 &quot;현재 설정 저장&quot;을 지원하지 않기 때문에 다음 번에 로그인 "
+"할 때 수동으로 다시 시작해야 합니다."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "디버그 로그 열기 실패: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "로그 파일 %s을(를) fdopen()하기 실패: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "로그 파일 %s을(를) 엽니다\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "메타시티가 자세한 모드 지원 없이 컴파일 되었습니다\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "창 관리자: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "창 관리자의 벌레: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "창 관리자 주의: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "장 관리자 오류: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "메타시티"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"창 %s(이)가 자신에게 ICCCM에 저정한대로 WM_CLIENT_LEADER창 대신에 자신에게 "
+"SM_CLIENT_ID를 지정했습니다.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"%s 창에서 크기 변경이 불가능하다는 MWM 힌트를 설정했지만, 최소 크기 %d x %d "
+"및 최대 크기 %d x %d(으)로 설정했습니다; 앞뒤가 맞지 않습니다.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "응용 프로그램이 가짜 _NET_WM_PID %lu을(를) 설정하였습니다\n"
+
+# <창제목> (on <기계>)
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s에서)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (관리자 권한으로)"
+
+# <창제목> (on <기계>)
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s 사용자)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (다른 사용자로)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "%2$s에 대해 WM_TRANSIENT_FOR 0x%1$lx 창이 잘못되었습니다.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"창 0x%lx의 등록 정보 %s\n"
+"형식 %s %d이(가) 들어있어야 하는데\n"
+"실제로는 형식 %s %d n_items %d이(가) 들어있습니다\n"
+"대부분은 창 관리자 버그가 아니라 응용 프로그램 버그입니다.\n"
+"창의 정보: title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "창 0x%2$lx의 등록 정보 %1$s은(는) 잘못된 UTF-8이 들어 있습니다\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"창 0x%2$lx의 등록 정보 %1$s은(는) 목록안의 항목 %3$d에 잘못된 UTF-8을 포함하"
+"고 있습니다\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "1번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "2번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "3번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "4번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "5번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "6번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "7번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "8번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "9번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "10번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "11번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "12번째 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "현재 작업 공간의 왼쪽 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "현재 작업 공간의 오른쪽 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "현재 작업 공간의 위 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "현재 작업 공간의 아래 작업 공간으로 이동"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "한 프로그램의 창 사이에서 팝업을 통해 전환"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "한 개 프로그램의 창 사이에서 반대 방향으로 팝업을 통해 전환"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "창 사이에서 팝업을 통해 전환"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "창 사이에서 팝업을 통해 반대 방향으로 전환"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "패널과 바탕 화면 사이에서 팝업으로 전환"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "패널과 바탕 화면 사이에서 반대 방향으로 팝업을 통해 전환"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "한 개 프로그램의 창 사이에서 바로 전환"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "한 개 프로그램의 창 사이에서 바로 반대 방향으로 전환"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "창 사이에서 바로 전환"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "창 사이에서 바로 반대 방향으로 전환"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "패널과 바탕 화면 사이에서 바로 전환"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "패널과 바탕 화면 사이에서 반대 방향으로 바로 전환"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "모든 창을 숨기고 바탕 화면에 포커스"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "패널 메인 메뉴 표시"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "패널의 \"프로그램 실행\" 대화 상자 표시"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "스크린샷 찍기"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "창 스크린샷 찍기"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "터미널 실행"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "창 메뉴 활성"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "전체 화면 모드 토글"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "창 최대화 토글"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "창을 항상 다른 창 위에 보이도록 만들 지 토글"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "창 최대화"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "창 복귀"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "창 숨기기 토글"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "창 최소화"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "창 닫기"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "창을 옮기기"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "창 크기 조절"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "창을 모든 작업 공간에 둘 지 아니면 한 작업 공간에 둘 지 토글"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "창을 1번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "창을 2번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "창을 3번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "창을 4번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "창을 5번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "창을 6번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "창을 7번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "창을 8번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "창을 9번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "창을 2번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "창을 11번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "창을 12번째 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "창을 왼쪽의 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "창을 오른쪽의 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "창을 위의 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "창을 아래의 작업 공간으로 옮기기"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "다른 창에 덮여 있으면 창을 올리고, 덮여 있지 않으면 창 내리기"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "창을 다른창 위로 올리기"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "창을 다른창 아래로 내리기"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "창 세로로 최대화"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "창 가로로 최대화"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "창을 화면 왼쪽 위 구석으로 옮기기"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "창을 화면 오른쪽 위 구석으로 옮기기"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "창을 화면 왼쪽 아래 구석으로 옮기기"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "창을 화면 오른쪽 아래 구석으로 옮기기"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "창을 화면 위쪽 가장자리로 옮기기"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "창을 화면 아래쪽 가장자리로 옮기기"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "창을 화면 오른쪽 가장자리로 옮기기"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "창을 화면 왼쪽 가장자리로 옮기기"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "창을 화면 가운데로 옮기기"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(구현되지 않음) 네비게이션을 창 단위가 아니라 프로그램 단위로 합니다"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"창 제목 막대에 대한 글꼴 설명을 기술합니다. titlebar_font_size 옵션이 0으로 "
+"설정될 때만 기술된 크기가 적용됩니다. 또한 이 옵션은 "
+"titlebar_uses_desktop_font 옵션이 참으로 설정되어 있으면 쓸 수 없습니다."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "제목을 두 번 누를 때 동작"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "제목에 마우스 가운데 단추를 누를 때 동작"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "제목을 마우스 오른쪽 단추를 누를 때 동작"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "제목 위에 있는 단추의 배치"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"제목 위에 있는 단추의 배치. 이 값은 문자열로, \"menu:minimize,maximize,"
+"spacer,close\"와 같이 씁니다. 콜론으로 창의 왼쪽 끝과 오른쪽 끝을 구분하며, "
+"각 단추는 쉼표로 구분합니다. 같은 단추를 중복해서 쓸 수 없습니다. 알 수 없는 "
+"단추 이름은 그냥 무시되며 다음 버전의 메타시티에서 그 단추가 새로 생길 경우에"
+"도 문제 없이 쓸 수 있습니다. spacer 태그는 연속한 단추 사이에 공백을 넣고 싶"
+"을 때 사용합니다."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "포커스가 있는 창을 자동으로 띄웁니다"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr "이 변경 키를 누른 채로 창을 누르면 창을 옮기거나 (왼쪽 단추 누르기), 창의 크기를 바꾸거나 (가운데 단추 누르기), 혹은 창 메뉴를 보여줍니다 (오른쪽 단추 누르기). 가운데 단추와 오른쪽 단추의 동작은 \"resize_with_right_button\" 키를 사용해 뒤바꿀 수 있습니다. 변경 키는 \"&lt;Alt&gt;\" 혹은 \"&lt;Super&gt;\"와 같이 씁니다."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "단축키를 누르면 실행할 명령"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "조합 관리자"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "새 창이 포커스를 받는 방법을 조정합니다"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "현재 테마"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "자동으로 띄울 때까지 걸리는 시간(밀리초)"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "메타시티가 조합 관리자인지 여부를 결정합니다."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"프로그램 혹은 시스템에서 들을 수 있는 '삑소리'를 낼 지 여부를 결정합니다; 조"
+"용한 '삑소리'를 내려면 '비주얼 벨'과 함께 쓸 수 있습니다."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "낡거나 잘못된 응용 프로그램에 요청하는 오작동을 하지 않습니다"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "비주얼 벨 사용"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"참이면, 그리고 포커스 모드가 \"sloppy\"이거나 \"mouse\"이면 포커스가 있는 창"
+"이 auto_raise_delay 키에 지정한 지연 시간 후에 자동으로 올라옵니다. 이 사항"
+"은 창을 눌러서 위로 올리거나 끌어놓기 도중에 창에 들어가는 것과는 별개입니다."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"참이면, titlebar_font 옵션을 무시하고 표준 응용 프로그램 글꼴을 창 제목의 글"
+"꼴로 씁니다."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"참이면, 메타시티를 조정할 때 바로바로 적용하는 일이 줄어듭니다. 예를 들어 와"
+"이어프레임을 사용하고, 애니메이션을 하지 않는다든지 하는 식입니다. 이렇게 하"
+"면 많은 사용자의 사용성을 떨어뜨리지만, 과거의 프로그램이나 터미널 서버가 동"
+"작하는 데 꼭 필요할 수 있습니다. 또 터미널 서버를 사용하는 경우 괜찮은 트레이"
+"드오프입니다. 하지만 접근성 기능을 사용할 경우 와이어프레임 기능은 쓰지 않습"
+"니다."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"참이면, 메타시티가 창 단위로 동작하지 않고 프로그램 단위로 동작합니다. 개념"
+"이 좀 추상적이지만, 프로그램 단위의 설정은 윈도우보다는 맥과 비슷합니다. 프로"
+"그램 단위의 모드에서 어떤 창에 포커스를 맞췄을 때, 해당 프로그램의 모든 창이 "
+"올라옵니다. 또, 프로그램 단위의 모드에서, 포커스 은 다른 프로그램 윈도우에는 "
+"전달되지 않습니다. 하지만 프로그램 모드는 현재 많은 부분이 구현되지 않은 상태"
+"입니다."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "참이면, 리소스를 덜 쓰는 대신 사용성을 떨어뜨립니다"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "변경 창을 누를 때 쓸 변경자"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "작업 공간 이름"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "작업 공간 개수"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr "작업 공간의 개수. 0 보다 커야 하고, 실수로 너무 큰 작업 공간을 만들어서 데스크톱을 못 쓰게 되지 않도록 어떤 고정된 최대값이 있습니다."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "정의한 명령을 실행합니다"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"이 값이 참이면 마우스 오른쪽 단추로 크기를 조절하고, \"mouse_button_modifier"
+"\"에서 지정한 키를 누른 상태에서 마우스 가운데 단추를 누르면 메뉴를 표시합니"
+"다. 이 값을 거짓으로 하면 반대로 동작합니다."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"이 옵션을 거짓으로 설정하면 동작 방식이 문제가 있으므로, 기본값인 참을 바꾸"
+"지 않기를 권합니다. 여러가지 동작은 (클라이언트 영역에 마우스 단추 누르기, "
+"창 옮기기, 창 크기 조절 등) 부가적으로 창을 위로 올리게 됩니다. 이 옵션을 거"
+"짓으로 하면 창을 위로 올리는 동작을 다른 동작과 연관시키지 않게 되어, 애플리"
+"케이션에서 보낸 창을 위로 올리는 요청을 무시하게 됩니다. http://bugzilla."
+"gnome.org/show_bug.cgi?id=445447#c6 페이지를 참고하십시오. 이 옵션이 거짓인 "
+"경우에도 창에 Alt와 마우스 왼쪽 단추를 누르거나, 창의 꾸밈 부분을 누르거나, "
+"작업 목록 애플릿에서 요청하는 것처럼 특별한 메시지를 받은 경우에는 창을 올릴 "
+"수 있습니다. 이 옵션은 누르면 포커스를 옮기는 모드에서는 사용하지 않습니다. "
+"raise_on_click이 거짓인 경우에 창을 올리는 여러가지 방법 중에 프로그램에서 창"
+"을 올리라고 요청하는 프로그래밍 방법은 여기에 들어 있지 않습니다. 그러한 요청"
+"은 이유를 막론하고 모두 무시합니다. 프로그램 개발자이고 이 설정을 거짓으로 "
+"한 상태로 프로그램의 이상 동작에 대해 문제가 있다고 말하는 사용자가 있다면, "
+"그것은 그 사용자의 설정 문제이고 이 옵션을 참으로 되돌리거나 아니면 그 \"버그"
+"\"를 안고 살아가야 한다고 말하십시오."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"일부 프로그램은 규격에 맞지 않는 방식으로 동작해서 창 관리자가 이상동작할 수 "
+"있습니다. 이 옵션을 사용하면 메타시티가 엄밀하게 정확한 모드로 동작합니다. 이"
+"렇게 하면 잘못 동작하는 프로그램이 없다는 가정 하에 사용자 인터페이스가 더 일"
+"관성이 있게 됩니다."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "시스템 삑소리 들림"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"시스템 벨 혹은 그 외 프로그램의 '벨' 소리를 어떻게 비주얼하게 표현할 지 결정"
+"합니다. 두 가지 값을 쓸 수 있습니다; \"fullscreen\"은 전체 화면이 흰색-검은색"
+"으로 깜박이고, \"frame_flash\"는 벨 소리를 보낸 프로그램의 제목이 깜박입니"
+"다. 벨 소리를 보낸 프로그램을 알 수 없는 경우 (\"시스템 벨소리\"인 경우\"), "
+"현재 포커스된 창의 제목이 깜박입니다."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N 키는 해당 명령어에 해당하는 "
+"키바인딩을 정의합니다. run_command_N의 키바인딩을 누르면 command_N을 실행합니"
+"다."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot 키는 이 세팅으로 실"
+"행할 명령어를 실행하는 키바인딩을 정의합니다."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot 키는 이 세팅"
+"으로 실행할 명령어를 실행하는 키바인딩을 정의합니다."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"/apps/marco/keybinding_commands의 해당 번호의 명령어를 실행하는 키바인딩. "
+"\"&lt;Control&gt;a\" 혹은 \"&lt;Shift&gt;&lt;Alt&gt;F1\"과 같이 씁니다. 파서"
+"는 매우 유연하므로 대소문자를 모두 쓸 수 있고, \"&lt;Ctl&gt;\"나 \"&lt;"
+"Ctrl&gt;\"처럼 줄여서 쓸 수도 있습니다. 이 옵션을 문자열 \"disabled\"로 하"
+"면, 이 동작에 대한 키바인딩은 없습니다."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "작업 공간 이름."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "스크린샷 명령어"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "창의 테두리, 제목 등의 모양을 지정하는 테마."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"auto_raise가 침일 경우, 창을 올리기 전의 지연 시간. 이 시간은 천분의 일초 단"
+"위로 주어집니다."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"창 포커스 모드는 창을 활성화하는 방법을 지정합니다. 세 가지 값을 쓸 수 있습니"
+"다; \"click\"은 창에 포커스를 놓으려면 마우스 단추를 눌러야 하는 것이고, "
+"\"sloppy\"는 마우스가 창 안에 들어갈 때 포커스되는 것이고, \"mouse\"는 마우스"
+"가 창 안에 들어가면 포커스되고 마우스가 창 밖으로 나갈 때 포커스가 없어지는 "
+"것입니다."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "창 스크린샷 명령어"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"이 옵션은 제목에 마우스 단추를 두 번 눌렀을 때 어떻게 할 지를 결정합니다. 쓸 "
+"수 있는 옵션으로, 'toggle_shaded'는 창을 숨기거나/보여주고, "
+"'toggle_maximized'는 최대화/최대화 취소하고, "
+"'toggle_maximize_horizontally'와 'toggle_maximize_vertically'는 창을 한 방향"
+"으로만 최대화/최대화 취소하고, 'minimize'는 창을 최소화하고, 'shade'는 창을 "
+"말아올리고, 'menu'는 창 메뉴를 표시하고, 'lower'는 창을 다른 창보다 밑에 깔리"
+"도록 하고, 'none'은 아무것도 하지 않습니다."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"이 옵션은 제목에 마우스 가운데 단추를 눌렀을 때 어떻게 할 지를 결정합니다. "
+"쓸 수 있는 옵션으로, 'toggle_shaded'는 창을 숨기거나/보여주고, "
+"'toggle_maximized'는 최대화/최대화 취소하고, "
+"'toggle_maximize_horizontally'와 'toggle_maximize_vertically'는 창을 한 방향"
+"으로만 최대화/최대화 취소하고, 'minimize'는 창을 최소화하고, 'shade'는 창을 "
+"말아올리고, 'menu'는 창 메뉴를 표시하고, 'lower'는 창을 다른 창보다 밑에 깔리"
+"도록 하고, 'none'은 아무것도 하지 않습니다."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"이 옵션은 제목에 마우스 오른쪽 단추를 눌렀을 때 어떻게 할 지를 결정합니다. "
+"쓸 수 있는 옵션으로, 'toggle_shaded'는 창을 숨기거나/보여주고, "
+"'toggle_maximized'는 최대화/최대화 취소하고, "
+"'toggle_maximize_horizontally'와 'toggle_maximize_vertically'는 창을 한 방향"
+"으로만 최대화/최대화 취소하고, 'minimize'는 창을 최소화하고, 'shade'는 창을 "
+"말아올리고, 'menu'는 창 메뉴를 표시하고, 'lower'는 창을 다른 창보다 밑에 깔리"
+"도록 하고, 'none'은 아무것도 하지 않습니다."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"이 옵션을 사용하면 새로 만든 창이 포커스를 받는 방식을 더 자세히 조정할 수 있"
+"습니다. 두 가지 값을 사용할 수 있습니다. \"smart\"는 사용자의 일반적인 포커"
+"스 모드이고, \"strict\"는 터미널에서 시작한 창의 경우 포커스를 받지 않습니다."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"프로그램이나 시스템이 '벨' 혹은 '삑소리'를 낼 때 눈에 보이도록 표현합니다. 듣"
+"는데 어려움이 있거나, 주위가 시끄러운 경우 유용합니다."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "창 제목에 표준 시스템 글꼴을 씁니다"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "비주얼 벨 형식"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "사용자의 다른 상호작용에 의한 부작용으로 창 띄우기/말기"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "오른쪽 단추로 크기를 조정할 지 여부"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "창 포커스 모드"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "창 제목 글꼴"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "사용법: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "창 닫기"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "창 메뉴"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "창 최소화"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "창 최대화"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "창 복귀"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "창 말아올리기"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "창 펼치기"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "창을 맨 위에 두기"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "창을 맨 위에서 빼기"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "항상 현재 작업 공간에 놓기"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "창을 한 개 작업 공간에만 두기"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "최소화(_N)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "최대화(_X)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "최대화 취소(_X)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "말아올리기(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "펼치기(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "옮기기(_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "크기 조정(_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "창 제목막대 화면에 표시(_S)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "항상 위(_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "항상 현재 작업 공간에 놓기(_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "이 작업 공간에만 놓기(_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "왼쪽 작업 공간으로 옮기기(_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "오른쪽 작업 공간으로 옮기기(_I)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "위쪽 작업 공간으로 옮기기(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "아래쪽 작업 공간으로 옮기기(_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "닫기(_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "작업 공간 %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "작업 공간 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "작업 공간 %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "다른 작업 공간으로 옮기기(_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "맨 위"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "맨 아래"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "왼쪽"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "오른쪽"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "프레임 위치가 \"%s\"차원으로 지정되지 않았습니다"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"프레임 위치가 가장자리 \"%2$s\" 가장자리의 \"%1$s\"차원으로 지정되지 않았습니"
+"다."
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "단추의 가로세로 비 %g이(가) 적당하지 않습니다"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "프레임 위치가 단추의 크기로 지정되지 않았습니다"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "서서히 변하는 색으로 지정하려면 최소 2색이 필요합니다"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK 색상 지정은 중괄호안에 있어야 합니다, 예: gtk:fg[NORMAL] NORMAL은 값; \"%"
+"s\"을(를) 분석할 수 없습니다"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK 색상 지정은 값 뒤에 중괄호로 닫혀 있어야 합니다, 예: gtk:fg[NORMAL]NORMAL"
+"은 값; \"%s\"을(를) 분석할 수 없습니다"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "색상 지정의 \"%s\" 값을 이해할 수 없습니다"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "색상 지정의 색상 구성요소 \"%s\"을(를) 이해할 수 없습니다"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"섞기 형식은 \"blend/bg_color/fg_color/alpha\"입니다, \"%s\"은(는) 형식에 맞"
+"지 않습니다"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "색상 섞기에서 알파 값 \"%s\"을(를) 분석할 수 없습니다"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "색상 섞기에서 알파 값 \"%s\"은(는) 0.0 과 1.0사이의 값이 아닙니다"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"그림자 형식은 \"shade/base_color/format\"입니다, \"%s\"(은)는 형식에 맞지 않"
+"습니다"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "그림자색에서 그림자 인자 \"%s\"(을)를 해석할 수 없습니다"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "그림자색에서 그림자 인자 \"%s\"(은)는 음수입니다"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "색상 \"%s\"을(를) 해석할 수 없습니다"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "좌표식에 허용되지 않는 문자 '%s'(이)가 포함되어 있습니다"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "좌표식에 분석할 수 없는 부동소수점 숫자 '%s'이(가) 포함되어 있습니다"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "좌표식에 분석할 수 없는 정수 '%s'이(가) 포함되어 있습니다"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"좌표식에 이 글자 시작부분에 알 수 없는 연산자가 포함되어 있습니다: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "좌표식이 비어있거나 이해할 수 없습니다"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "좌표식의 결과 값이 0로 나누었습니다"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "좌표식에서 부동소수점 수에 나머지 연산을 하려 합니다"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "좌표식에서 피연산자가 들어갈 곳에 연산자 \"%s\"이(가) 있습니다"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "좌표식에서 연산자가 들어갈 곳에 피연산자가 있습니다"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "좌표식에서 피연산자 대신에 연산자로 끝나있습니다"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"좌표식에서 피연산자가 없는 연산자 \"%2$c\"다음에 연산자 \"%1$c\"이(가) 있습니"
+"다"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "좌표식에 알 수 없는 변수나 상수 \"%s\"이(가) 있습니다"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "좌표 계산 파서의 버퍼가 크기를 넘어갔습니다."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "좌표식에 닫는 괄호는 있지만 여는 괄호가 없습니다"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "좌표식에 여는 괄호는 있지만 닫는 괄호가 없습니다"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "좌표식에 어떠한 연산자나 피연산자가 없습니다"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "테마가 오류 값을 내는 표현식이 들어 있습니다: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"이 프레임 스타일에는 <button function=\"%s\" style=\"%s\" draw_ops=\"whatever"
+"\"/>가 지정되어야 합니다"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" state=\"whatever\"/> 가 없습니"
+"다"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "테마 \"%s\"을(를) 읽을 수 없습니다: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "테마 \"%2$s\"의 <%1$s>(이)가 설정되지 않았습니다"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"테마 \"%2$s\"의 창 형식 \"%1$s\"에 대한 프레임 스타일이 없습니다,<window "
+"type=\"%3$s\" style_set=\"whatever\"/> 요소를 추가하십시오"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"사용자 정의 상수는 대문자로 시작되어야 합니다; \"%s\"은(는) 그렇지 않습니다"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "상수 \"%s\"은(는) 이미 지정되어 있습니다"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "\"%s\" 속성이 <%s> 요소에 없습니다"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "%d 줄 %d 문자: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "같은 요소 <%2$s>에 \"%1$s\"속성이 두번 겹쳐져 있습니다"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "이 문맥의 <%2$s> 요소에 속성 \"%1$s\"은(는) 올바르지 않습니다"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "정수값 \"%s\"을(를) 분석할 수 없습니다"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "문자열 \"%2$s\"에서 이어진 문자 \"%1$s\"을(를) 이해할 수 없습니다"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "정수 %ld은(는) 양수여야 합니다"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "정수 %ld이(가) 너무 큽니다, 현재 최대값은 %d 입니다"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "부동소수점 수 \"%s\"(으)로 분석할 수 없습니다"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Boolean 값은 \"true\"이거나 \"false\"만 됩니다 \"%s\"은(는) 안됩니다"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "각도 값은 0.0과 360.0 사이여야 합니다, %g(으)로 되어 있습니다\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"알파 값은 0.0(보이지 않음)과 1.0(완전 불투명)사이여야 합니다, %g(으)로 되어있"
+"습니다\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"잘못된 제목 확대 \"%s\" (xx-small, x-small, small, medium, large, x-large, "
+"xx-large중에 하나여야 합니다)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> 이름 \"%s\"이(가) 두번 쓰였습니다"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> 부모 \"%s\"이(가) 아직 지정되지 않았습니다"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> 위치 \"%s\"이(가) 아직 지정되지 않았습니다"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> 는 위치나 위치를 가지는 부모를 지정하여야 합니다"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "배경의 알파값을 의미있는 값으로 지정해야 합니다"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "<%2$s> 요소에 알 수 없는 형식 \"%1$s\""
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "<%2$s> 요소에 알 수 없는 style_set \"%1$s\""
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "창 형식 \"%s\"은(는) 이미 스타일 셋으로 지정되어 있습니다"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "요소 <%s>이(가) <%s>아래에 허용되지 않습니다"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"단추의 button_width/button_height 와 \"aspect_ratio\"를 한꺼번에 지정할 수 없"
+"습니다"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "거리 \"%s\"을(를) 알 수 없습니다"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "가로세로비 \"%s\"을(를) 알 수 없습니다"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "가장자리 \"%s\"을(를) 알 수 없습니다"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "요소 <%s>에 \"start_angle\"이나 \"from\" 속성이 없습니다"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "요소 <%s>에 \"extent_angle\"이나 \"to\" 속성이 없습니다"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "서서히 변하는 색 형식 값 \"%s\"을(를) 이해할 수 없습니다"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "<%2$s>요소의 채우기 형식 \"%1$s\"을(를) 이해할 수 없습니다"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "<%2$s>요소의 state \"%1$s\"을(를) 이해할 수 없습니다"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "<%2$s>요소의 shadow \"%1$s\"을(를) 이해할 수 없습니다"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "<%2$s>요소의 arrow \"%1$s\"을(를) 이해할 수 없습니다"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "\"%s\"라 불리는 <draw_ops>는 정의되지 않았습니다"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "draw_ops를 포함하는 \"%s\"이(가) 자기 자신을 참조하고 있습니다"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "프레임 조각에 대한 알 수 없는 위치 \"%s\""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "프레임 스타일은 이미 %s 위치에 조각이 있습니다"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "이름 \"%s\"을(를) 가지는 <draw_ops>가 지정되지 않았습니다"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "단추에 알 수 없는 기능 \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "이 버전에는 \"%s\" 단추 함수가 없습니다 (버전은 %d, 버전 %d 필요)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "단추에 알 수 없는 상태 \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "프레임 스타일에 단추의 기능 %s 상태 %s이(가) 이미 있습니다"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\"은(는) focus 속성에 대한 올바른 값이 아닙니다"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\"은(는) state 속성에 대한 올바른 값이 아닙니다"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\"(이)라는 스타일은 정의되지 않았습니다"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "resize 속성에 \"%s\"은(는) 올바른 값이 아닙니다"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "최대화/그림자 상태에서 <%s> 요소는 \"resize\" 속성을 가지지 않습니다"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "최대화한 상태에서 <%s> 요소는 \"resize\" 속성을 가지지 않습니다"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "스타일에 상태 %s 크기 조절 %s 포커스 %s에 대해 이미 지정되어 있습니다"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "스타일에 상태 %s 포커스 %s에 대해 이미 지정되어 있습니다"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<piece> 요소에 두개의 draw_ops를 가질수 없습니다 (테마에 draw_ops 속성과 "
+"<draw_ops>요소를 지정했거나 두 요소를 지정했습니다"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<button> 요소에 두개의 draw_ops를 가질수 없습니다 (테마에 draw_ops 속성과 "
+"<draw_ops>요소를 지정했거나 두 요소를 지정했습니다"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<menu_icon> 요소에 두개의 draw_ops를 가질수 없습니다 (테마에 draw_ops 속성과 "
+"<draw_ops>요소를 지정했거나 두 요소를 지정했습니다"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "테마의 Outermost 요소는 <%s>이(가) 아니라 <marco_theme>여야 합니다"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"name/author/date/description 요소 안에서 요소 <%s>이(가) 허용되지 않습니다"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<constant> 요소 안에서 요소 <%s>이(가) 허용되지 않습니다"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"distance/border/aspect_ratio 요소 안에서 요소 <%s>이(가) 허용되지 않습니다"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "draw operation 요소 안에서 요소 <%s>이(가) 허용되지 않습니다"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%2$s>요소 안에서 요소 <%1$s>이(가) 허용되지 않습니다"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "프레임 조각에 draw_ops가 제공하지 않습니다"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "단추에 draw_ops가 제공되지 않습니다"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "요소 <%s>안에 텍스트가 허용되지 않습니다"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "이 테마에서 <%s> 태그가 두 번 지정되었습니다"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "%s 테마의 올바른 파일을 찾는 데 실패했습니다\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "%s 테마 파일에 root <marco_theme> 요소가 들어 있지 않습니다"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/창(_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/창/떼어내기"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/창/대화 상자(_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/창/모달 대화 상자(_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/창/도구(_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/창/스플래시 화면(_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/창/위 도크(_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/창/아래 도크(_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/창/왼쪽 도크(_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/창/오른쪽 도크(_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/창/모든 도크(_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/창/바탕 화면(_K)"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "예제 대화 상자의 예제 메시지입니다"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "가짜 메뉴 항목 %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "테두리만 있는 창"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "모음"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "보통 프로그램 창"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "대화 상자"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "모달 대화 상자"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "도구 팔레트"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "떼어내기 메뉴"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "테두리"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "단추 배치 테스트 %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "창 프레임 하나를 그리는 데 %g ms"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "쓰는 법: marco-theme-viewer [테마이름]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "테마를 읽어들이는 데 오류가 발생했습니다: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" 테마를 읽어들이는 데 %g초\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "보통 제목 글꼴"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "작은 제목 글꼴"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "큰 제목 글꼴"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "단추 배치"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "벤치마크"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "창 제목이 여기에 들어갑니다"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d개 프레임을 그리는 데 클라이언트 입장에서 %g초가 걸렸습니다 (한 프레임에 %"
+"g ms). 그리고 X 서버 리소스까지 포함해 실제 시간으로 %g 초가 걸렸습니다 (한 "
+"프레임에 %g ms).\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "위치 표현식 테스트가 참을 리턴했지만 오류가 발생했습니다"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "위치 표현식 테스트가 거짓을 리턴했지만 오류가 발생하지 않았습니다"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "오류가 발생해야 하지만 발생하지 않았습니다"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "오류 %d번이 발생해야 하지만 오류 %d번이 발생했습니다"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "오류가 발생하면 안 되지만 오류 한 개가 발생했습니다: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "가로값이 %d입니다. 와야 하는 값은 %d입니다"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "세로값이 %d입니다. 와야 하는 값은 %d입니다"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d개의 좌표 표현식을 %g초에 파싱했습니다 (평균 %g초)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "이 창을 하나 더 엽니다"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "'열기' 아이콘이 들어 있는 데모 단추입니다"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "'끝내기' 아이콘이 들어 있는 데모 단추입니다"
diff --git a/po/ku.po b/po/ku.po
new file mode 100644
index 00000000..c593366d
--- /dev/null
+++ b/po/ku.po
@@ -0,0 +1,2383 @@
+# translation of marco.HEAD.po to Kurdish
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
+# Erdal Ronahi <[email protected]>, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-01-16 00:11+0100\n"
+"PO-Revision-Date: 2010-01-16 00:08+0100\n"
+"Last-Translator: Erdal Ronahi <[email protected]>\n"
+"Language-Team: Kurdish <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10\n"
+"X-Rosetta-Export-Date: 2007-02-08 21:18+0000\n"
+"X-Poedit-Language: Kurdish\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Sermase"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Rêvebirina Paceyan"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Bûyera zingilê"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Daxwaza nenas a agahiya paceyê: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, fuzzy, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "\"%s\" bersiv nade."
+
+#: ../src/core/delete.c:101
+#, fuzzy
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"<big><b><tt>%s</tt> bersiv nade.</b></big>\n"
+"\n"
+"<i>dikarî demeke kurt li bendê bimînî ku bidome an jî dikarî sepanê bi "
+"kutekî bidî girtin.</i>"
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr ""
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "Bi _Zordariyê Derkeve"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Navê makîneyê nehate stendin: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Ji bo compozitingê pêveka wenda %s pêwist e"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Dîmendera '%s' ya Pergala Paceya Xê venebû\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Girêdana bi dîmendera '%s' winda bû;\n"
+"ya pêşkêşkera Xê hate girtin ya te gerînendeyê paceyan kuşt yan jî te winda "
+"kir.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "çewtiyeke mezin %d (%s) di xebitandinê de '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Bişkoka %s tevî bi guhêrkerên %x re ji aliyê sepaneke din wekî girêdana "
+"bişkokan tê bikaranîn\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Di meşandina vê de çewtî <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "fermana %d nehatiye danasîn.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Tu fermanên termînalê nehatiye danasîn.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Mafê jibergiritnê (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"Ev nivîsbariyeke azad e; çavkaniya şertên jibergirtinê bibîne.\n"
+"Tu garantî nayê dayîn; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Girêdana ku bi rêveberiyê hatiye kirin betal bike"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Gerînendeyê paceyan yê dixebite bi Marco biguherîne"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "IDa rêveberiyê diyar bike"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Dîmendêra X ku were bikaranîn"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Nêvengê ji pelê tomarkirî bide destpêkirin"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Guhertoyê çap bike"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Bangên X'ê senkron bike"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr ""
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr ""
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Paceyên ku bêdekorasyon in û yên hatine mezintirînkirin neke dîmender tije"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Dema li pêristên dirban dihate lêgerîn çewtî çêbû: %s\n"
+
+#: ../src/core/main.c:544
+#, fuzzy, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Tu dirb nehate dîtin! Bawer bî bê ka pelrêça %s heye û dirbên ku tu dizanî "
+"dihundirîne yan na."
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Nûdestpêkirin biserneket: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr ""
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" ya di danegira veavakirinê de ye, wekî sererastkerê bişkokên mişk ne "
+"derbasdar e.\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Dema hejmara qada xebatê dihate xwestin ku bibe %d çewtî derket: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "Kargeha %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" ya di danegira veavakirinê de ye, wekî \"%s\" ya girêdana bişkokê ne "
+"nirxeke derbasdar e.\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+"Dema dihate xwestin bila navê qada xebatê ya %d bibe \"%s\" çewtî derket: %"
+"s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Di mîhengkirina rewşa compositor de çewtî: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Ekrana %d di dîmendêra '%s' nederbasdar e\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr ""
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Afirandina peldanka '%s' bisernekeit: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Dosyeya danişînê ya '%s' ji bo nivisînê nehate vekirin: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Di nivîsandina dosyeya danişînê ya '%s' de çewtî: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Di girtina dosyeya danişînê ya '%s' de çewtî: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Dosyeya danişînê %s ya hatibû tomarkirin nehate xwendin: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr ""
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Hêmana nenas %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Rojnivîska neqandina çewtiyan nehate vekirin: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Pelê rojane ya fdopen() %s nehate vekirin: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Pelê rojane yê %s vebû\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco, bêyî ku desteka moda kîtekît hebe hatiye berhevkirin.\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Rêveberê paceyan: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Di rêveberiya oaceyan de çewtî: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Hişyariya rêveberê paceyan: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Çewtiya rêveberiya paceyan: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5630
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6195
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr ""
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (di hundirê %s de)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (weke bikarhênerê super)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (weke %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (weke bikarhênereke din)"
+
+#: ../src/core/window-props.c:1429
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Derbasa kargeha 1 bibe"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Derbasî qada xebatê ya 2yan bibe"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Derbasî qada xebatê ya 3yan bibe"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Derbasî qada xebatê ya 4an bibe"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Derbasî qada xebatê ya 5an bibe"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Derbasî qada xebatê ya 6an bibe"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Derbasa kargeha 7 bibe"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Derbasa kargeha 8 bibe"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Derbasa kargeha 9 bibe"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Derbasa kargeha 10 bibe"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Derbasa kargeha 11 bibe"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Derbasî qada xebatê ya 12yan bibe"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Veguhere qada xebatê a li çepa qada xebatê a heyî"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Veguhere qada xebatê a li aliyê rasta qada xebatê a heyî"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Veguhere qada xebatê a li jora qada xebatê a heyî"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Veguhere qada xebatê a li jêra qada xebatê a heyî"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Di navbera paceyên sepanekê de veguheze, bi paceyeke popupê"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Di navbera paceyên sepanekê de şûnde veguheze, bi paceyeke popupê"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Di navbera paceyan de veguheze, bi paceyeke popupê"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Di navbera paceyan de şûnde veguheze, bi paceyeke popupê"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Di navbera panel û sermaseyê de veguheze, bi paceyeke popupê"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Di navbera panel û sermaseyê de şûnde veguheze, bi paceyeke popupê"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Zûzûka di navbera paceyên sepanekê de şûnde veguheze"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Derbasbûna di nava paceyan de ji nişka ve bike"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Di navbera paceyan de şûnde veguheze zûzûka"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Derbasbûna ya di navbera panel û sermaseyê de zûzûka bike"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+"Derbasbûna ber bi paş ve ya di navbera panel û sermaseyê de zûzûka bike"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Hemû paceyên normal veşêre û here sermaseyê"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Meûya sereke ya panelê nîşande"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Qûtiya diyalogê ya \"Sepan Bimeşîne\" ya panelê nîşande"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Wêneya sermasê bikişîne"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Wêneya paceyekê bikişîne"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Termînalekê bimeşîne"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Menûya paceyê çalak bike"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Moda dîmender tijî veke an jî bigire"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Rewşa raxistina dîmenderê veke yan jî bigire"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+"Vezeliqîne ka wê paceyek wê herdem li seranserê paceyên din xuya bibe an na"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Paceyê mezin bike"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Paceyê bike weke berê"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Paceyê kêmtirîn bike"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Paceyê bigire"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Paceyê Bikşîne"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Mezinahiya paceyê biguherîne"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Vezeliqîne ka paceyekê wê li hemû qadên xebatê be an wê tenê li yekê be"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Paceyê bişîne kargeha 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Paceyê bişîne kargeha 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Paceyê bişîne kargeha 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Paceyê bişîne kargeha 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Paceyê bişîne kargeha 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Paceyê bibe qada xebatê ya 6an"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Paceyê bibe qada xebatê ya 7an"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Paceya bibe qada xebatê ya 8an"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Paceya bibe qada xebatê ya 9an"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Paceyê bişîne kargeha 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Paceyê bişîne kargeha 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Paceyê bişîne kargeha 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Paceyê bibe qada xebatê ya li çepê ye"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Paceyê bibe qada xebatê ya rastê"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Paceyê bibe qada xebatê ya jor"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Paceyê bibe qada xebatê ya li jêr e"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Paceyê bilind bike ger ji aliyê paceyeke din ve hatibe pêçandin, ger na "
+"nizimtir bike"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Paceyê bibe ser yên din"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Paceyan bişîne binê yên din"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Paceyê ser dirêjahiyê mezin bike"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Paceyê ser pahnayê mezin bike"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Paceyê bibe goşeya bakur-rojava (jor çep)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Paceyê bibe goşeya bakur-rojhilat (jor rast)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Paceyê bibe goşeya başûr-rojava (jêr çep)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Paceyê bibe goşeya başûr-rojhilat (jêr rast)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Paceyê bibe goşeya bakur (jor) a ekranê"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Paceyê bibe goşeya başûr (jêr) a ekranê"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Paceyê bibe goşeya rojhilat (rast) a ekranê"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Paceyê bibe goşeya rojava (çep) a ekranê"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Paceyê bibe navenda ekranê"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Hê nehatiye sepandin) Gerîn, ne gorî sepanan gorî paceyan dixebite."
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Çalakiya ku dema tu du caran li darikê sernavê bitikîne"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Çalakiya tikandina-navîn a li darika sernavê"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Çalakiya rast-tikandina darika sernavê"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Pergala bişkokên ku di darikê sernavan de ye"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Paceya hatiye lêhûrbûn jixweber bilind dike"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Hin fermanên ku wekî bersiva girêdanên bişkokan were xebitandin"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Dirbê derbasdar"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Derengmayina wekî mîlîçirke ya ji bo vebijêrka bilindkirina bixweber"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Diyar dike ku bê ka sepan yan jî pergal wê dengê zengil derxe yan na, ji bo "
+"dengên zengil yên bêdeng dikare têkildarî \"zengilê dîtbarî\" jî were "
+"bikaranîn."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Taybetiyên çewt yên sepanên kevn yan jî sepanên çewt bigire"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Zengilê Dîtbarî Çalak Bike"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Navê qada xebatê"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Hejmarên qadên xebatê"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Fermaneke ku hatiye diyarkirin bixebitîne"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Zengila Pergalê tê Bihîstin"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Navê kargehê."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Fermana kişandina wêneya sermasê"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Dirb, xuyaneka hêmanên weke kêlekên paceyan, darikê sernavan diyar dike."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Fermana kişandina wêneya paceyê"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Di sernavên paceyan de curenivîsa pergalê ya standard bikar bîne"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Cureyê Zengila Dîtbarî"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Ka bila bi bişkojka rastê mezinahî were guhertin"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Curenivîsa sernavê paceyê"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Bikaranîn: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Paceyê bigire"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menuya Paceyan"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Paceyê Kêmtirîn bike"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Paceyê Mezintirîn bike"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Paceyê bike weke berê"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Paceyê Darik Bike"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Darikî Pace Bike"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Her dem di Kargeha Xuya de"
+
+#: ../src/ui/frames.c:1148
+#, fuzzy
+msgid "Put Window On Only One Workspace"
+msgstr "Paceyê bibe qada xebatê ya jor"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Biçûk bike"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_Mezin bike"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "N_ormal bike"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Darik bike"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Pace bike"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Tevbigere"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Mezinahiyê biguherîne"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Darikê Sernav Li Ser _Dîmenderê Bikşîne"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Her dem di Kargeha _Xuya de"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Tenê di vê Kargehe de"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Bişîne Kargeha _Çep"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Bişîne Kargeha _Rast"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Bişîne Kargeha Bij_or"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Move to Workspace bi_jêr"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Bigire"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Qada xebatê %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Kargeha 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Kargeha %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "_Bişîne kargeheke din bike"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Bikşîne"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hîper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "jor"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "jêr"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "çep"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "rast"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "geometriya çarçoveyê mezinahiya \"%s\" nas nake"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"geometriya çarçoveyê mezinahiya \"%s\" bo kêleka paceya \"%s\" nas nake"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Geometriya çarçoveyê mezinahiya bişkokan nas nake"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Di derbasbûnên rengan de herî kêm divê du heb reng hebe"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Dirb vegotineke nenas dihewîne ku bû sedema çewtiyekê: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr ""
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Nirxa sabît ya \"%s\" jixwe hatiye diyarkirin"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Di elementa <%s> de tu taybetiya \"%s\" tune"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Rêzik %d karakter %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" wekî hejmara tam ji hev nehate veçirandin"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "\"%1$s\" karakterên dawiya pêrista \"%2$s\" nehatin famririn."
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Geometriya <%s> wekî \"%s\" hatiye danasîn"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Dûrbûna \"%s\" nayê zanîn"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "\"%s\" rêjeya dirêjahî-firehiyê nayê zanîn"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1784
+#, fuzzy, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Di hêmana <%s> de çawaniya \"state\" (rewş) tuneye"
+
+#: ../src/ui/theme-parser.c:1791
+#, fuzzy, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Di hêmana <%s> de çawaniya \"color\" (reng) tuneye"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Ji bo bişkokê bikêrhatina nederbasdar \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Ji bo bişkokê rewşa nederbasdar \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4040
+#, fuzzy, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Pelê rojane ya fdopen() %s nehate vekirin: %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Pace"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Pace/Li _jor bicih bike"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Pace/Li _jêr bicih bike"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Pace/Li _çepê bicih bike"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Pace/Li _rastê bicih bike"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Pace/_Hemû bicihkirin"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Pace/_Sermase"
+
+#: ../src/ui/theme-viewer.c:136
+msgid "Open another one of these windows"
+msgstr "Ji van paceyan yeka din jî veke"
+
+#: ../src/ui/theme-viewer.c:143
+msgid "This is a demo button with an 'open' icon"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:150
+msgid "This is a demo button with a 'quit' icon"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:243
+msgid "This is a sample message in a sample dialog"
+msgstr "Ev mînak ji paceya ragihandinê peyameke mînak e"
+
+#: ../src/ui/theme-viewer.c:326
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Border-only window"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:362
+msgid "Bar"
+msgstr "Darik"
+
+#: ../src/ui/theme-viewer.c:379
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:383
+msgid "Dialog Box"
+msgstr "Qutika Diyalogê"
+
+#: ../src/ui/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:391
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:395
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:399
+msgid "Border"
+msgstr "Kelek"
+
+#: ../src/ui/theme-viewer.c:727
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:756
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:799
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:806
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Dema dirb dihate barkirin çewtî: %s\n"
+
+#: ../src/ui/theme-viewer.c:812
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Dirbê \"%s\" di hundirê %g çirkeyan hate hate barkirin\n"
+
+#: ../src/ui/theme-viewer.c:853
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:859
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:865
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:870
+msgid "Button Layouts"
+msgstr "Pergalên Bişkokan"
+
+#: ../src/ui/theme-viewer.c:875
+msgid "Benchmark"
+msgstr "Danberhevkirin"
+
+#: ../src/ui/theme-viewer.c:922
+msgid "Window Title Goes Here"
+msgstr "Sernavê Paceyê Bîne Vê Derê"
+
+#: ../src/ui/theme-viewer.c:1026
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1245
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1247
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1251
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1253
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1259
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1263
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "nirxa x %d, li nirxa ku em li bendê bûn %d"
+
+#: ../src/ui/theme-viewer.c:1266
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "nirxa y %d, li nirxa ku em li bendê bûn %d"
+
+#: ../src/ui/theme-viewer.c:1331
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr ""
+#~ "Peyama \"%s\" ya ji karê qutiya ragihandinê hatiye nehate veçirandin\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Di karê ku qutiya ragihandinê nîşan dide de çewtiya xwendinê: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Dema diyaloga marco dixwest der barê kuştina sepanekê de pirsekê "
+#~ "bipirse çewtî çêbû: %s\n"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Paceyê Normal bike"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Dema diyaloga marco ya ji bo nîşandana çewtiyeke der barê fermanekê de "
+#~ "dihate kirin çewtî çêbû: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Sernivîs"
+
+#~ msgid "Class"
+#~ msgstr "Pol"
+
+#~ msgid ""
+#~ "These windows do not support \"save current setup\" and will have to be "
+#~ "restarted manually next time you log in."
+#~ msgstr ""
+#~ "Van pacena, taybetmendiya \"rewşa heyî tomar bikr\" destek nakin û di "
+#~ "têketineke din de divê tu xwe bixwe ji nû ve bide destpêkirin."
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Di meşandina \"%s\" de çewtiyek derket:\n"
+#~ "%s"
+
+#~ msgid "Activate window menu"
+#~ msgstr "Menuya Paceyê Çalak bike"
+
+#~ msgid "Hide all windows and focus desktop"
+#~ msgstr "Hemû paceyan veşêre û li sermaseyê daqûl bibe"
+
+#~ msgid "Move backwards between panels and the desktop with popup"
+#~ msgstr ""
+#~ "Derbasbûna ber bi paş ve ya di navbera panel û sermaseyê de bi paceya "
+#~ "diyar bûye re bike"
+
+#~ msgid "Move backwards between windows immediately"
+#~ msgstr "Derbasbûna ber bi paş ve ya di navbera paceyan de ye zûzûka bike"
+
+#~ msgid "Move between panels and the desktop with popup"
+#~ msgstr ""
+#~ "Derbasbûna di nava sermaseyê û panelan bi paceya ku hatiye diyarkirin bike"
+
+#~ msgid "Move between windows with popup"
+#~ msgstr "Derbasbûna di nav paceyan de bi paceya ku hatiye diyarkirin bike"
+
+#, fuzzy
+#~ msgid "Move window to east side of screen"
+#~ msgstr "Paceyê bişîne kargeha 1"
+
+#, fuzzy
+#~ msgid "Move window to north side of screen"
+#~ msgstr "Paceyê bişîne kargeha 1"
+
+#, fuzzy
+#~ msgid "Move window to north-east corner"
+#~ msgstr "Paceyê bişîne kargeha 1"
+
+#, fuzzy
+#~ msgid "Move window to north-west corner"
+#~ msgstr "Paceyê bişîne kargeha 1"
+
+#, fuzzy
+#~ msgid "Move window to south side of screen"
+#~ msgstr "Paceyê bişîne kargeha 1"
+
+#, fuzzy
+#~ msgid "Move window to south-east corner"
+#~ msgstr "Paceyê bişîne kargeha 1"
+
+#, fuzzy
+#~ msgid "Move window to south-west corner"
+#~ msgstr "Paceyê bişîne kargeha 1"
+
+#, fuzzy
+#~ msgid "Move window to west side of screen"
+#~ msgstr "Paceyê bişîne kargeha 1"
+
+#~ msgid "Raise obscured window, otherwise lower"
+#~ msgstr "Heke pace tam xuya nabe bibe herî jor, yan na jî bibe herî jêr"
+
+#~ msgid "Show the panel menu"
+#~ msgstr "Menuya panelê nîşan bide"
+
+#~ msgid "Show the panel run application dialog"
+#~ msgstr "Paceya panelê bixebitîne nîşan bide"
+
+#~ msgid "Switch to workspace above this one"
+#~ msgstr "Derbasî qada xebatê ya li jor e bibe"
+
+#~ msgid "Switch to workspace below this one"
+#~ msgstr "Biçe qada xebatê ya li jêr"
+
+#~ msgid "Switch to workspace on the left"
+#~ msgstr "Biçe qada xebatê ya li çepê ye"
+
+#~ msgid "Switch to workspace on the right"
+#~ msgstr "Biçe qada xebatê ya li rastê ye"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Paceyê normal bike"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Di hêmana <%s> de çawaniya \"color\" (reng) tuneye"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Di hêmana <%s> de çawaniya \"x1\" tuneye"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Di hêmana <%s> de çawaniya \"y1\" tuneye"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Di hêmana <%s> de çawaniya \"x2\" tuneye"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Di hêmana <%s> de çawaniya \"y2\" tuneye"
+
+#~ msgid "No \"x\" attribute on element <%s>"
+#~ msgstr "Di hêmana <%s> de çawaniya \"x\" tuneye"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Di hêmana <%s> de çawaniya \"y\" tuneye"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Di hêmana <%s> de çawaniya \"filename\" (navê dosyeyê) tuneye"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Di hêmana <%s> de çawaniya \"state\" (rewş) tuneye"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Di hêmana <%s> de çawaniya \"shadow\" (sî) tuneye"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Di hêmana <%s> de çawaniya \"arrow\" (tîr) tuneye"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Di hêmana <%s> de çawaniya \"function\" (bikêrhatin) tuneye"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Di hêmana <%s> de çawaniya \"state\" (rewş) tuneye"
+
+#~ msgid "On _Top"
+#~ msgstr "Li _Ser"
+
+#~ msgid "Desk %d"
+#~ msgstr "Sermase %d"
+
+#~ msgid "Desk 1_0"
+#~ msgstr "Sermase 1_0"
+
+#~ msgid "Desk %s%d"
+#~ msgstr "Sermase %s%d"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Heke tu vê sepanê bi dawî bînê dê guherînên ku te tomar nekiribû winda "
+#~ "bibe."
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "Di vî dirbî de divê <menu_icon function=\"%s\" state=\"%s\" draw_ops="
+#~ "\"her çi be\"/> hatibe diyarkirin"
diff --git a/po/la.po b/po/la.po
new file mode 100644
index 00000000..e4a96340
--- /dev/null
+++ b/po/la.po
@@ -0,0 +1,2182 @@
+# Marco - Latin translation
+# Copyright (C) 2008 Thomas Thurman.
+# This file is distributed under the same license as Marco itself.
+# Thomas Thurman <[email protected]>, 2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-10-13 18:14-0400\n"
+"PO-Revision-Date: 2008-10-17 22:07-0400\n"
+"Last-Translator: Thomas Thurman <[email protected]>\n"
+"Language-Team: Latin <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Mensa"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Regimine Fenestrarum"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Petitio rerum fenestrae ignoratus: %d"
+
+#: ../src/core/delete.c:70 ../src/core/delete.c:97
+#: ../src/ui/marco-dialog.c:50 ../src/ui/theme-parser.c:523
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr ""
+
+#: ../src/core/delete.c:77 ../src/core/delete.c:104
+#: ../src/ui/marco-dialog.c:57 ../src/ui/theme-parser.c:532
+#: ../src/ui/theme-parser.c:587
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+
+#: ../src/core/delete.c:135
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr ""
+
+#: ../src/core/delete.c:253
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr ""
+
+#: ../src/core/delete.c:336
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+
+#: ../src/core/delete.c:445
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr ""
+
+#: ../src/core/display.c:256
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr ""
+
+#: ../src/core/display.c:334
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr ""
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr ""
+
+#: ../src/core/keybindings.c:754
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+
+#: ../src/core/keybindings.c:2398
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+
+#: ../src/core/keybindings.c:2501
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr ""
+
+#: ../src/core/keybindings.c:3514
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr ""
+
+#: ../src/core/main.c:116
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+
+#: ../src/core/main.c:253
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/core/main.c:259
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/core/main.c:265
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/core/main.c:270
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/core/main.c:276
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/core/main.c:282
+msgid "Print version"
+msgstr ""
+
+#: ../src/core/main.c:288
+msgid "Make X calls synchronous"
+msgstr ""
+
+#: ../src/core/main.c:294
+msgid "Turn compositing on"
+msgstr ""
+
+#: ../src/core/main.c:300
+msgid "Turn compositing off"
+msgstr ""
+
+#: ../src/core/main.c:451
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr ""
+
+#: ../src/core/main.c:467
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+
+#: ../src/core/main.c:526
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr ""
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#.
+#: ../src/core/prefs.c:503 ../src/core/prefs.c:655
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "clavis MateConf \"%s\" valorem mendosum habet.\n"
+
+#: ../src/core/prefs.c:584 ../src/core/prefs.c:824
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+
+#: ../src/core/prefs.c:628 ../src/core/prefs.c:702 ../src/core/prefs.c:750
+#: ../src/core/prefs.c:814 ../src/core/prefs.c:1109 ../src/core/prefs.c:1125
+#: ../src/core/prefs.c:1144 ../src/core/prefs.c:1160 ../src/core/prefs.c:1177
+#: ../src/core/prefs.c:1193
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "clavis MateConf \"%s\" genus mendosum habet.\n"
+
+#: ../src/core/prefs.c:1263
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1333
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1393
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1810
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:2067 ../src/core/prefs.c:2579
+#, c-format
+msgid "Workspace %d"
+msgstr "area labori %d"
+
+#: ../src/core/prefs.c:2097 ../src/core/prefs.c:2270
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+
+#: ../src/core/prefs.c:2660
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:2853
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr ""
+
+#: ../src/core/screen.c:350
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "album %d in apparatu visifico %s mendosus est\n"
+
+#: ../src/core/screen.c:366
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+
+#: ../src/core/screen.c:393
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+
+#: ../src/core/screen.c:451
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#: ../src/core/screen.c:661
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr ""
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:190
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\". \n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#. These were more dissimilar at some point but have been regularised
+#. * for the translators' benefit.
+#.
+#: ../src/core/schema-bindings.c:200
+msgid ""
+"Holding the \"shift\" key while using this binding reverses the direction of "
+"movement."
+msgstr ""
+
+#: ../src/core/schema-bindings.c:203
+msgid ""
+"Holding the \"shift\" key while using this binding makes the direction go "
+"forward again."
+msgstr ""
+
+#: ../src/core/session.c:837 ../src/core/session.c:844
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr ""
+
+#: ../src/core/session.c:854
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr ""
+
+#. oh, just give up
+#: ../src/core/session.c:1093
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1132
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1181
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/core/session.c:1194 ../src/core/session.c:1269
+#: ../src/core/session.c:1301 ../src/core/session.c:1373
+#: ../src/core/session.c:1433
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr ""
+
+#: ../src/core/session.c:1211
+#, c-format
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/core/session.c:1453
+#, c-format
+msgid "Unknown element %s"
+msgstr ""
+
+#: ../src/core/session.c:1879
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr ""
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "regimen fenestrarum: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "mendum in regimine fenestrae: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "monitus regiminis fenestrae: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "error regiminis fenestrae: "
+
+#: ../src/core/window-bindings.h:74
+msgid "Activate window menu"
+msgstr ""
+
+#: ../src/core/window-bindings.h:75
+msgid "The keybinding used to activate the window menu."
+msgstr "CAESAR ADSUM IAM FORTE"
+
+#: ../src/core/window-bindings.h:81
+msgid "Toggle fullscreen mode"
+msgstr ""
+
+#: ../src/core/window-bindings.h:82
+msgid "The keybinding used to toggle fullscreen mode."
+msgstr ""
+
+#: ../src/core/window-bindings.h:85
+msgid "Toggle maximization state"
+msgstr ""
+
+#: ../src/core/window-bindings.h:86
+msgid "The keybinding used to toggle maximization."
+msgstr ""
+
+#: ../src/core/window-bindings.h:89
+msgid "Toggle always on top state"
+msgstr ""
+
+#: ../src/core/window-bindings.h:90
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows."
+msgstr ""
+
+#: ../src/core/window-bindings.h:97
+msgid "Maximize window"
+msgstr ""
+
+#: ../src/core/window-bindings.h:98
+msgid "The keybinding used to maximize a window."
+msgstr ""
+
+#: ../src/core/window-bindings.h:101
+msgid "Unmaximize window"
+msgstr ""
+
+#: ../src/core/window-bindings.h:102
+msgid "The keybinding used to unmaximize a window."
+msgstr ""
+
+#: ../src/core/window-bindings.h:108
+msgid "Toggle shaded state"
+msgstr ""
+
+#: ../src/core/window-bindings.h:109
+msgid "The keybinding used to toggle shaded/unshaded state."
+msgstr ""
+
+#: ../src/core/window-bindings.h:115
+msgid "Minimize window"
+msgstr ""
+
+#: ../src/core/window-bindings.h:116
+msgid "The keybinding used to minimize a window."
+msgstr ""
+
+#: ../src/core/window-bindings.h:119
+msgid "Close window"
+msgstr ""
+
+#: ../src/core/window-bindings.h:120
+msgid "The keybinding used to close a window."
+msgstr ""
+
+#: ../src/core/window-bindings.h:123
+msgid "Move window"
+msgstr ""
+
+#: ../src/core/window-bindings.h:124
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard."
+msgstr ""
+
+#: ../src/core/window-bindings.h:128
+msgid "Resize window"
+msgstr ""
+
+#: ../src/core/window-bindings.h:136
+msgid "Toggle window on all workspaces"
+msgstr ""
+
+#: ../src/core/window-bindings.h:137
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one."
+msgstr ""
+
+#: ../src/core/window-bindings.h:143
+msgid "Move window to workspace 1"
+msgstr ""
+
+#: ../src/core/window-bindings.h:144
+msgid "The keybinding used to move a window to workspace 1."
+msgstr ""
+
+#: ../src/core/window-bindings.h:147
+msgid "Move window to workspace 2"
+msgstr ""
+
+#: ../src/core/window-bindings.h:148
+msgid "The keybinding used to move a window to workspace 2."
+msgstr ""
+
+#: ../src/core/window-bindings.h:151
+msgid "Move window to workspace 3"
+msgstr ""
+
+#: ../src/core/window-bindings.h:152
+msgid "The keybinding used to move a window to workspace 3."
+msgstr ""
+
+#: ../src/core/window-bindings.h:155
+msgid "Move window to workspace 4"
+msgstr ""
+
+#: ../src/core/window-bindings.h:156
+msgid "The keybinding used to move a window to workspace 4."
+msgstr ""
+
+#: ../src/core/window-bindings.h:159
+msgid "Move window to workspace 5"
+msgstr ""
+
+#: ../src/core/window-bindings.h:160
+msgid "The keybinding used to move a window to workspace 5."
+msgstr ""
+
+#: ../src/core/window-bindings.h:163
+msgid "Move window to workspace 6"
+msgstr ""
+
+#: ../src/core/window-bindings.h:164
+msgid "The keybinding used to move a window to workspace 6."
+msgstr ""
+
+#: ../src/core/window-bindings.h:167
+msgid "Move window to workspace 7"
+msgstr ""
+
+#: ../src/core/window-bindings.h:168
+msgid "The keybinding used to move a window to workspace 7."
+msgstr ""
+
+#: ../src/core/window-bindings.h:171
+msgid "Move window to workspace 8"
+msgstr ""
+
+#: ../src/core/window-bindings.h:172
+msgid "The keybinding used to move a window to workspace 8."
+msgstr ""
+
+#: ../src/core/window-bindings.h:175
+msgid "Move window to workspace 9"
+msgstr ""
+
+#: ../src/core/window-bindings.h:176
+msgid "The keybinding used to move a window to workspace 9."
+msgstr ""
+
+#: ../src/core/window-bindings.h:179
+msgid "Move window to workspace 10"
+msgstr ""
+
+#: ../src/core/window-bindings.h:180
+msgid "The keybinding used to move a window to workspace 10."
+msgstr ""
+
+#: ../src/core/window-bindings.h:183
+msgid "Move window to workspace 11"
+msgstr ""
+
+#: ../src/core/window-bindings.h:184
+msgid "The keybinding used to move a window to workspace 11."
+msgstr ""
+
+#: ../src/core/window-bindings.h:187
+msgid "Move window to workspace 12"
+msgstr ""
+
+#: ../src/core/window-bindings.h:188
+msgid "The keybinding used to move a window to workspace 12."
+msgstr ""
+
+#: ../src/core/window-bindings.h:202
+msgid "Move window one workspace to the left"
+msgstr ""
+
+#: ../src/core/window-bindings.h:203
+msgid "The keybinding used to move a window one workspace to the left."
+msgstr ""
+
+#: ../src/core/window-bindings.h:206
+msgid "Move window one workspace to the right"
+msgstr ""
+
+#: ../src/core/window-bindings.h:207
+msgid "The keybinding used to move a window one workspace to the right."
+msgstr ""
+
+#: ../src/core/window-bindings.h:210
+msgid "Move window one workspace up"
+msgstr ""
+
+#: ../src/core/window-bindings.h:211
+msgid "The keybinding used to move a window one workspace up."
+msgstr ""
+
+#: ../src/core/window-bindings.h:214
+msgid "Move window one workspace down"
+msgstr ""
+
+#: ../src/core/window-bindings.h:215
+msgid "The keybinding used to move a window one workspace down."
+msgstr ""
+
+#: ../src/core/window-bindings.h:221
+msgid "Raise obscured window, otherwise lower"
+msgstr ""
+
+#: ../src/core/window-bindings.h:222
+msgid ""
+"This keybinding changes whether a window is above or below other windows. "
+"If the window is covered by another one, it raises the window above all "
+"others, and if the window is already fully visible, it lowers it below all "
+"others."
+msgstr ""
+
+#: ../src/core/window-bindings.h:228
+msgid "Raise window above other windows"
+msgstr ""
+
+#: ../src/core/window-bindings.h:229
+msgid "This keybinding raises the window above other windows."
+msgstr ""
+
+#: ../src/core/window-bindings.h:232
+msgid "Lower window below other windows"
+msgstr ""
+
+#: ../src/core/window-bindings.h:233
+msgid "This keybinding lowers a window below other windows."
+msgstr ""
+
+#: ../src/core/window-bindings.h:237
+msgid "Maximize window vertically"
+msgstr ""
+
+#: ../src/core/window-bindings.h:238
+msgid "This keybinding resizes a window to fill available vertical space."
+msgstr ""
+
+#: ../src/core/window-bindings.h:242
+msgid "Maximize window horizontally"
+msgstr ""
+
+#: ../src/core/window-bindings.h:243
+msgid "This keybinding resizes a window to fill available horizontal space."
+msgstr ""
+
+#: ../src/core/window-bindings.h:248
+msgid "Move window to north-west corner"
+msgstr ""
+
+#: ../src/core/window-bindings.h:249
+msgid ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:253
+msgid "Move window to north-east corner"
+msgstr ""
+
+#: ../src/core/window-bindings.h:254
+msgid ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:258
+msgid "Move window to south-west corner"
+msgstr ""
+
+#: ../src/core/window-bindings.h:259
+msgid ""
+"This keybinding moves a window into the north-east (bottom left) corner of "
+"the screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:263
+msgid "Move window to south-east corner"
+msgstr ""
+
+#: ../src/core/window-bindings.h:264
+msgid ""
+"This keybinding moves a window into the north-east (bottom right) corner of "
+"the screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:269
+msgid "Move window to north side of screen"
+msgstr ""
+
+#: ../src/core/window-bindings.h:270
+msgid ""
+"This keybinding moves a window against the north (top) side of the screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:274
+msgid "Move window to south side of screen"
+msgstr ""
+
+#: ../src/core/window-bindings.h:275
+msgid ""
+"This keybinding moves a window against the south (bottom) side of the screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:279
+msgid "Move window to east side of screen"
+msgstr ""
+
+#: ../src/core/window-bindings.h:280
+msgid ""
+"This keybinding moves a window against the east (right) side of the screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:284
+msgid "Move window to west side of screen"
+msgstr ""
+
+#: ../src/core/window-bindings.h:285
+msgid ""
+"This keybinding moves a window against the west (left) side of the screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:290
+msgid "Move window to center of screen"
+msgstr ""
+
+#: ../src/core/window-bindings.h:291
+msgid "This keybinding moves a window into the center of the screen."
+msgstr ""
+
+#. first time through
+#: ../src/core/window.c:5646
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6211
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/core/window-props.c:206
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr ""
+
+#: ../src/core/window-props.c:338
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (in %s)"
+
+#: ../src/core/window-props.c:1420
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+
+#: ../src/marco.desktop.in.h:1 ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:24
+msgid ""
+"Many actions (e.g. clicking in the client area, moving or resizing the "
+"window) normally raise the window as a side-effect. Setting this option to "
+"false, which is strongly discouraged, will decouple raising from other user "
+"actions, and ignore raise requests generated by applications. See http://"
+"bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Name of workspace"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:27
+msgid "Number of workspaces"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:28
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:29
+msgid "Run a defined command"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid "System Bell is Audible"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:32
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:35
+msgid "The name of a workspace."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:38
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:39
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:43
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:44
+msgid "Use standard system font in window titles"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:45
+msgid "Visual Bell Type"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:46
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:47
+msgid "Window focus mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:48
+msgid "Window title font"
+msgstr "typus tituli fenestrae"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr ""
+
+#: ../src/ui/frames.c:1077
+msgid "Close Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1080
+msgid "Window Menu"
+msgstr ""
+
+#: ../src/ui/frames.c:1083
+msgid "Minimize Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1086
+msgid "Maximize Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1089
+msgid "Unmaximize Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1092
+msgid "Roll Up Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1095
+msgid "Unroll Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1098
+msgid "Keep Window On Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1101
+msgid "Remove Window From Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1104
+msgid "Always On Visible Workspace"
+msgstr ""
+
+#: ../src/ui/frames.c:1107
+msgid "Put Window On Only One Workspace"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr ""
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr ""
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr ""
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr ""
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr ""
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr ""
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:105
+msgid "Shift"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:117
+msgid "Alt"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:123
+msgid "Meta"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:129
+msgid "Super"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:135
+msgid "Hyper"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:141
+msgid "Mod2"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:147
+msgid "Mod3"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:153
+msgid "Mod4"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:159
+msgid "Mod5"
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:116
+#, c-format
+msgid "%d x %d"
+msgstr ""
+
+#: ../src/ui/theme.c:256
+msgid "top"
+msgstr ""
+
+#: ../src/ui/theme.c:258
+msgid "bottom"
+msgstr ""
+
+#: ../src/ui/theme.c:260
+msgid "left"
+msgstr ""
+
+#: ../src/ui/theme.c:262
+msgid "right"
+msgstr ""
+
+#: ../src/ui/theme.c:289
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr ""
+
+#: ../src/ui/theme.c:308
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:345
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+
+#: ../src/ui/theme.c:357
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr ""
+
+#: ../src/ui/theme.c:1022
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr ""
+
+#: ../src/ui/theme.c:1148
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1162
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1173
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1186
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1216
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+
+#: ../src/ui/theme.c:1227
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/ui/theme.c:1237
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/ui/theme.c:1284
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/ui/theme.c:1295
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/ui/theme.c:1305
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/ui/theme.c:1334
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1584
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/ui/theme.c:1611
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1625
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1747
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1804
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/ui/theme.c:1915 ../src/ui/theme.c:1925 ../src/ui/theme.c:1959
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/ui/theme.c:1967
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/ui/theme.c:2023
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2032
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2040
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/ui/theme.c:2050
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+
+#: ../src/ui/theme.c:2197 ../src/ui/theme.c:2238
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:2292
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+
+#: ../src/ui/theme.c:2321
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2385
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2396
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/ui/theme.c:2598 ../src/ui/theme.c:2618 ../src/ui/theme.c:2638
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/ui/theme.c:4157
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+
+#: ../src/ui/theme.c:4637 ../src/ui/theme.c:4662
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+
+#: ../src/ui/theme.c:4706
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Thema \"%s\" imponi non potuit: %s\n"
+
+#: ../src/ui/theme.c:4836 ../src/ui/theme.c:4843 ../src/ui/theme.c:4850
+#: ../src/ui/theme.c:4857 ../src/ui/theme.c:4864
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "<%s> non est in thema \"%s\""
+
+#: ../src/ui/theme.c:4872
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/ui/theme.c:5239 ../src/ui/theme.c:5301 ../src/ui/theme.c:5364
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/ui/theme.c:5247 ../src/ui/theme.c:5309 ../src/ui/theme.c:5372
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:203
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Adiunctum \"%s\" non est in elementis <%s>"
+
+#: ../src/ui/theme-parser.c:232 ../src/ui/theme-parser.c:250
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:414
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:438 ../src/ui/theme-parser.c:481
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:542
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:550
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:578 ../src/ui/theme-parser.c:694
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:609 ../src/ui/theme-parser.c:637
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/ui/theme-parser.c:664
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:727
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:792
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:937 ../src/ui/theme-parser.c:1000
+#: ../src/ui/theme-parser.c:1034 ../src/ui/theme-parser.c:1137
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:949 ../src/ui/theme-parser.c:1046
+#: ../src/ui/theme-parser.c:1149
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1059
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1072
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1114
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1181
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1192
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1200
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1236
+msgid "Theme already has a fallback icon"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1248
+msgid "Theme already has a fallback mini_icon"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1261 ../src/ui/theme-parser.c:1325
+#: ../src/ui/theme-parser.c:1551 ../src/ui/theme-parser.c:2764
+#: ../src/ui/theme-parser.c:2810 ../src/ui/theme-parser.c:2958
+#: ../src/ui/theme-parser.c:3150 ../src/ui/theme-parser.c:3188
+#: ../src/ui/theme-parser.c:3226 ../src/ui/theme-parser.c:3264
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1375 ../src/ui/theme-parser.c:1389
+#: ../src/ui/theme-parser.c:1434
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1398
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1443
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1505
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1808
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1815
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2055
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2133 ../src/ui/theme-parser.c:2508
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2300 ../src/ui/theme-parser.c:2383
+#: ../src/ui/theme-parser.c:2446
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2310 ../src/ui/theme-parser.c:2393
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2320
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2620 ../src/ui/theme-parser.c:2716
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2632 ../src/ui/theme-parser.c:2728
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2843
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2851
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2868 ../src/ui/theme-parser.c:2943
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2897
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2906
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2918
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2926
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2997
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3006
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3016
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3037 ../src/ui/theme-parser.c:3060
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3071
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3085
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3099 ../src/ui/theme-parser.c:3121
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3110 ../src/ui/theme-parser.c:3132
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3171
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3209
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3247
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3295
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3315
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3320
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3332
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3354
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3364 ../src/ui/theme-parser.c:3394
+#: ../src/ui/theme-parser.c:3399 ../src/ui/theme-parser.c:3404
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3626
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3641
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3693
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3748
+msgid "<name> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3759
+msgid "<author> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3770
+msgid "<copyright> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3781
+msgid "<date> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3792
+msgid "<description> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4059
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4115
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:135
+msgid "Open another one of these windows"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:142
+msgid "This is a demo button with an 'open' icon"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:149
+msgid "This is a demo button with a 'quit' icon"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:242
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:325
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:359
+msgid "Border-only window"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Bar"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:378
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:386
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:390
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:394
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:398
+msgid "Border"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:726
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:755
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:798
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:805
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:811
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:852
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:858
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:864
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:869
+msgid "Button Layouts"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:874
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:921
+msgid "Window Title Goes Here"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1025
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1244
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1250
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1252
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1258
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1262
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1265
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1330
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
diff --git a/po/lt.po b/po/lt.po
new file mode 100644
index 00000000..147f7617
--- /dev/null
+++ b/po/lt.po
@@ -0,0 +1,3962 @@
+# translation of lt.po to Lithuanian
+# Lithuanian translation of marco.
+# Copyright (C) 2003-2006, 2007 Free Software Foundation, Inc.
+#
+#
+# Tomas Kuliavas <[email protected]>, 2003.
+# Žygimantas Beručka <[email protected]>, 2004-2007.
+# Gintautas Miliauskas <[email protected]>, 2007-2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: lt\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-05 11:31+0200\n"
+"PO-Revision-Date: 2010-03-05 11:31+0200\n"
+"Last-Translator: Gintautas Miliauskas <[email protected]>\n"
+"Language-Team: Lithuanian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%"
+"100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Darbastalis"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Langų valdymas"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Signalo įvykis"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Nežinoma langų informacijos užklausa: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> neatsiliepia į komandas."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "Galite šiek tiek palaukti arba priverstinai uždaryti programą."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Laukti"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Priverstinai išeiti"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Nepavyko gauti kompiuterio vardo: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Trūksta %s priedo, reikalingo komponavimui"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Nepavyko atverti X Window sistemos ekrano „%s“\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Prarastas ryšys su ekranu „%s“;\n"
+"greičiausiai X serveris buvo išjungtas arba jūs priverstinai\n"
+"išjungėte langų valdyklę.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Kritinė IO klaida %d (%s) ekrane „%s“.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Kažkokia kita programa jau naudoja %s klavišą su modifikatoriais %x kaip "
+"susiejimą\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Įvyko klaida bandant paleisti <tt>%s</tt>:\n"
+"\n"
+"%s."
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Komanda %d neaprašyta.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Terminalo komanda nebuvo nurodyta.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Autorinės teisės (C) priklauso 2001-%s Havoc Pennington, Red Hat, Inc.\n"
+"ir kitiems.\n"
+"Tai yra laisva programinė įranga; platinimo sąlygos yra aprašytos \n"
+"programos pradiniuose tekstuose.\n"
+"Nėra JOKIOS garantijos; net dėl PREKIAVIMO ar TAM TIKRO PANAUDOJIMO TIKSLO "
+"ATITIKIMO.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Išjungti susijungimą su sesijos valdykle"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Pakeisti veikiančią langų valdyklę su Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Nurodyti sesijos valdymo ID"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Naudotinas X ekranas"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inicializuoti sesiją iš išsaugojimo failo"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Parodyti versiją"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Sinchronizuoti X iškvietimus"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Įjungti komponavimą"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Išjungti komponavimą"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Nekurti pilno ekrano langų, kurie yra maksimizuoti ir neturi dekoracijų"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Nepavyko nuskanuoti temų aplanko: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Nepavyko rasti temos! Įsitikinkite, kad %s egzistuoja ir kad ten yra "
+"įprastos temos.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Nepavyko perleisti: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf rakte „%s“ nurodyta netinkama reikšmė\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d reikšmė, saugoma MateConf rakte %s, netelpa tarp %d ir %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf raktui „%s“ nustatytas neteisingas tipas\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Apsauga nuo sugadintų programų atjungta. Kai kurios programos gali pradėti "
+"keistai elgtis.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Nepavyko apdoroti šrifto aprašymo „%s“ saugomo MateConf rakte %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"„%s“ reikšmė rasta nustatymų duomenų bazėje yra netinkama pelės mygtuko "
+"keitiklio aprašymui\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Įvyko klaida nustatant darbalaukų skaičių į %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Darbalaukis %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"„%s“ reikšmė rasta konfiguracijos duomenų bazė yra netinkama klavišų "
+"kombinacijai „%s“\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Įvyko klaida pervadinant darbalaukį %d į „%s“: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Įvyko klaida nustatant komponavimo posistemės būseną: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Ekranas %d vaizduoklyje „%s“ netinkamas\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Ekranas %d vaizduoklyje „%s“ jau turi langų valdyklę; pabandykite "
+"pasinaudoti parinktimi --replace, jei norite pakeisti esamą langų valdyklę.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Nepavyko aptikti langų valdyklės pasirinkimo ekrano %d vaizduoklyje „%s“\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Ekranas %d vaizduoklyje „%s“ jau turi langų valdyklę\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Nepavyko pasitraukti iš ekrano %d vaizduoklyje „%s“\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Formatas maždaug toks: „<Control>a“ arba „<Shift><Alt>F1“.\n"
+"\n"
+"Sistema apdorojanti aprašymą yra gana laisva ir leidžia maišyti didžiąsias "
+"bei mažąsias raides ir naudoti tokius sutrumpinimus kaip „<Ctl>“ ir "
+"„<Ctrl>“. Nustačius specialų požymį „disabled“, su šiuo veiksmu nebus "
+"susieta jokia klavišų kombinacija."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Formatas maždaug toks: „<Control>a“ arba „<Shift><Alt>F1“.\n"
+"\n"
+"Sistema, apdorojanti aprašymą, yra gana laisva ir leidžia maišyti didžiąsias "
+"bei mažąsias raides ir naudoti tokius sutrumpinimus kaip „<Ctl>“ ir "
+"„<Ctrl>“. Nustačius specialų požymį „disabled“, su šiuo veiksmu nebus "
+"susieta jokia klavišų kombinacija.\n"
+"\n"
+"Šis klavišų susiejimas gali būti apsuktas nuspaudus „Lyg2“ (Shift) klavišą, "
+"taigi jame negalima naudoti „Shift“."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Nepavyko sukurti aplanko „%s“: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Nepavyko rašymui atverti seanso failo „%s“: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Klaida rašant į seanso failą „%s“: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Klaida uždarant seanso failą „%s“: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Nepavyko perskaityti išsaugoto seanso failo %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Nepavyko apdoroti išsaugoto seanso failo: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"Aptiktas <marco_session> požymis, bet sistema jau nustatė sesijos ID"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Nežinomas požymis %s <%s> elemente"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "įterpta <window> žyma"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Nežinomas elementas %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Šie langai nepalaiko komandos „išsaugoti esamus nustatymus“ ir turės būti "
+"paleisti rankiniu būdu, kai prisijungsite kitą kartą."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Nepavyko atverti derinimo žurnalo: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Funkcija fdopen() su žurnalo failu %s nesėkminga: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Atvertas žurnalo failas %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco buvo sukompiliuota be išsamaus veikimo veiksenos\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Langų valdyklė:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Klaida langų valdyklėje:"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Langų valdyklės perspėjimas:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Langų valdyklės klaida:"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Langas %s nustatė SM_CLIENT_ID kintamajį į save patį vietoj to, kad "
+"nustatytų jį į WM_CLIENT_LEADER langą kaip nurodo ICCCM..\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Langas %s nustatė MWM požymį teigdamas, kad jo dydis nėra kintamas, tačiau "
+"tuo pat metu nustatė ir leistinas mažiausio dydžio %d x %d bei didžiausio "
+"dydžio %d x %d reikšmes; tai yra beprasmiška.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Programa nustatė netinkamą _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (kompiuteryje %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (kaip supernaudotojas)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (kaip %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (kaip kitas naudotojas)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Nekorektiškas WM_TRANSIENT_FOR langas 0x%lx nurodytas %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Langas 0x%lx turi požymį %s\n"
+"kuris turėtų turėti type %s format %d atributus\n"
+"tačiau jis turi type %s format %d n_items %d atributus.\n"
+"Greičiausiai tai yra programos, o ne langų valdyklės klaida.\n"
+"Langas turi požymius title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Požymis %s lange 0x%lx saugo nepriimtinus UTF-8 simbolius\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Požymis %s lange 0x%lx naudoja nepriimtinus UTF-8 simbolius sąrašo punkte %"
+"d\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Perjungti į darbalaukį Nr.1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Perjungti į darbalaukį Nr.2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Perjungti į darbalaukį Nr.3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Perjungti į darbalaukį Nr.4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Perjungti į darbalaukį Nr.5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Perjungti į darbalaukį Nr.6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Perjungti į darbalaukį Nr.7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Perjungti į darbalaukį Nr.8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Perjungti į darbalaukį Nr.9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Perjungti į darbalaukį Nr.10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Perjungti į darbalaukį Nr.11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Perjungti į darbalaukį Nr.12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Perjungti į kairiau esantį darbalaukį"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Perjungti į dešiniau esantį darbalaukį"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Perjungti į aukščiau esantį darbalaukį"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Perjungti į žemiau esantį darbalaukį"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Perjungti tarp programos langų su iššokančiu langu"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Perjungti atgal tarp programos langų su iššokančiu langu"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Persijunginėti tarp langų su iššokančiu langu"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Perjungti tarp langų atgal kartu su iššokančiu langu"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Judėti tarp skydelių ir darbastalio su iššokančiu langu"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Judėti atgal tarp skydelių ir darbastalio su iššokančiu langu"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Greitai persijungti tarp programos langų"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Iškart judėti atgal tarp programos langų"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Iškart persijungti tarp langų"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Iškart judėti atgal tarp langų"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Greitai judėti tarp skydelių ir darbastalio"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Greitas judėjimas atgal tarp skydelių ir darbastalio"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Paslėpti visus langus ir suaktyvinti darbastalį"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Rodyti skydelio pagrindinį meniu"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Rodyti skydelio programų paleidimo langą"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Padaryti ekrano nuotrauką"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Padaryti lango nuotrauką"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Paleisti terminalą"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Parodyti lango meniu"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Perjungti viso ekrano veikseną"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Perjungti lango išdidinimo veikseną"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Nurodyti, ar langas visada matomas virš kitų langų"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Išdidinti langą"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Atkurti lango dydį"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Perjungti lango sutraukimo būseną"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Sumažinti langą"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Užverti langą"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Perkelti langą"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Keisti lango dydį"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Keisti lango matomumą visuose darbalaukiuose"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Perkelti langą į darbalaukį Nr.1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Perkelti langą į darbalaukį Nr.2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Perkelti langą į darbalaukį Nr.3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Perkelti langą į darbalaukį Nr.4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Perkelti langą į darbalaukį Nr.5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Perkelti langą į darbalaukį Nr.6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Perkelti langą į darbalaukį Nr.7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Perkelti langą į darbalaukį Nr.8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Perkelti langą į darbalaukį Nr.9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Perkelti langą į darbalaukį Nr.10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Perkelti langą į darbalaukį Nr.11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Perkelti langą į darbalaukį Nr.12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Perkelti langą į kairiau esantį darbalaukį"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Perkelti langą į dešiniau esantį darbalaukį"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Perkelti langą į aukščiau esantį darbalaukį"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Perkelti langą į žemiau esantį darbalaukį"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Iškelti neaktyvų langą, jei jis uždengtas kito lango, kitu atveju – paslėpti "
+"jį"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Iškelti langą virš kitų langų"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Nuleisti langą žemiau kitų langų"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Išdidinti langą vertikaliai"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Išdidinti langą horizontaliai"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Perkelti langą į ekrano viršutinį kairįjį kampą"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Perkelti langą į ekrano viršutinį dešinįjį kampą"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Perkelti langą į ekrano apatinį kairįjį kampą"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Perkelti langą į ekrano apatinį dešinįjį kampą"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Perkelti langą į viršutinę ekrano dalį"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Perkelti langą į apatinę ekrano pusę"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Perkelti langą į dešinę ekrano pusę"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Perkelti langą į kairę ekrano pusę"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Perkelti langą į ekrano vidurį"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Neįgyvendinta) Persijungimas galimas tarp programų, o ne tarp programos "
+"langų"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Šrifto aprašymo seka, nurodanti šriftą, naudojamą langų antraštėms. Šrifto "
+"dydis, esantis aprašyme, naudojamas tik tuo atveju, jei titlebar_font_size "
+"požymis yra lygus 0. Be to, šis požymis atjungiamas, jei "
+"titlebar_uses_desktop_font požymis yra teigiamas true."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Veiksmas du kartus spustelėjus antraštės juostą"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Veiksmas spustelėjus antraštės juostą viduriniuoju pelės mygtuku"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Veiksmas spustelėjus antraštės juostą dešiniuoju pelės mygtuku"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Mygtukų išdėstymas antraštėje"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Mygtukų išdėstymas antraštės juostoje. Požymio reikšmė turi būti simbolių "
+"seka, pvz., „menu:minimize,maximize,close“; dvitaškis skiria kairįjį lango "
+"kampą nuo dešiniojo, o mygtukų vardai atskiriami kableliais. Mygtukų vardai "
+"neturi pasikartoti. Nežinomi mygtukai yra ignoruojami, jei juos kada nors "
+"panaudotų būsimos marco laidos. Speciali tarpo žymė palieka šiek tiek "
+"vietos tarp gretimų mygtukų."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Automatiškai iškelia suaktyvintą langą"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Spustelėjus ant lango, kai yra paspaustas šis specialusis klavišas, langas "
+"bus perkeltas (kairysis spustelėjimas), keičiamas jo dydis (vidurinis "
+"spustelėjimas), arba rodomas lango meniu (dešinysis spustelėjimas). "
+"Viduriniojo ir dešiniojo mygtuko operacijos gali būti sukeistos "
+"„resize_with_right_button“ nustatymu. Specialus klavišas gali būti "
+"nustatytas kaip, pavyzdžiui, „&lt;Alt&gt;“ arba „&lt;Super&gt;“."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr ""
+"Komandos, kurios turi būti paleistos, suveikus nustatytoms klavišų "
+"kombinacijoms"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Kompozicijos valdyklė"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Nustatyti, kada nauji langai suaktyvinami"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Esama tema"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+"Uždelsimas milisekundėmis prieš suveikiant automatinio lango iškėlimui."
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Nurodo ar Marco yra komponuojanti valdyklė."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Nustato, ar programos arba sistema gali generuoti garsinius „pyptelėjimus“; "
+"gali būti naudojamas kartu su „vaizdiniu audio signalu“ norint generuoti "
+"tylius „pyptelėjimus“."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Atjungti savybes, kurias gali naudoti senos arba sugadintos programos"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Įjungti vaizdinį signalą"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Jei reikšmė teigiama ir aktyvinimo veiksena yra „sloppy“ arba „mouse“, tada "
+"suaktyvintas langas po rakte „auto_raise_delay“ nurodyto laiko tarpo bus "
+"automatiškai iškeltas. Tai nesusiję su lango spustelėjimu norint jį pakelti "
+"arba užvedimo ant lango objekto vilkimo metu."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Jei reikšmė teigiama, nepaisyti titlebar_font parinkties ir langų antraštėms "
+"naudoti standartinį programų šriftą."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Jei reikšmė teigiama, marco, naudodama langų rėmelius, vengdama animacijų "
+"ar kitų efektų, pateiks naudotojui mažiau reakcijų ir bus mažiau jaučiama "
+"„tiesioginė manipuliacija“. Tai smarkiai suprastina sąsajos išraiškingumą, "
+"bet leidžia normaliai veikti senesnėms programoms bei terminalų serveriams. "
+"Kai įjungtos prieinamumo funkcijos, rėmelių naudojimas išjungiamas."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Esant teigiamai reikšmei, langų valdyklės darbas yra artimesnis darbui su "
+"programomis nei su langais. Sąvoka gana neapibrėžta, bet apskritai programų "
+"veiksena yra artimesnė Macintosh operacinei sistemai nei Windows. Kai "
+"suaktyvinate langą programų veiksenoje, visi programos langai bus iškelti. "
+"Be to, programų veiksenoje langų aktyvinimo spustelėjimai neveikia langų, "
+"priklausančių kitoms programoms. Kol kas programų veiksenos realizacija dar "
+"ankstyvoje stadijoje."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Jei reikšmė teigiama, atsisakyti dalies galimybių vardan efektyvesnio "
+"resursų panaudojimo"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Klavišas, naudojamas kartu su specialiais sprangtelėjimo ant lango veiksmais"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Darbalaukio vardas"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Darbalaukų kiekis"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Darbalaukių kiekis. Turi būti didesnis už nulį. Be to, nustatyta maksimali "
+"reikšmė, kad netyčia nesunaikintumėte savo darbo aplinkos įvedę labai "
+"didelio skaičių."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Paleisti nurodytą komandą"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Nustatykite į teisingą, jei norite keisti dydį dešiniuoju mygtuku ir rodyti "
+"meniu viduriniuoju mygtuku nuspaudus klavišą, nurodytą "
+"„mouse_button_modifier“; nustatykite į klaidingą, jei norite, kad veiktų "
+"priešingai."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Nustačius šią parinktį į neigiamą reikšmę, programa gali veikti "
+"nekorektiškai, todėl labai rekomenduojama nekeisti jos numatytosios "
+"teigiamos reikšmės. Daugelio veiksmų (pvz., spustelėjimo kliento srityje, "
+"lango perkėlimo arba dydžio keitimo) pašalinis efektas paprastai bus lango "
+"iškėlimas. Nustatykite šią parinktį į neigiamą, kad atskirtumėte iškėlimą "
+"nuo kitų naudotojo veiksmų. Žr. http://bugzilla.gnome.org/show_bug.cgi?"
+"id=445447#c6. Netgi jeigu ši parinktis neigiama, langus vis tiek galima "
+"iškelti laikant Alt ir spustelėjus kairiuoju mygtuku bet kurią lango vietą, "
+"paprastai spustelėjus lango dekoracijas, arba specialiais pranešimais, pvz., "
+"aktyvavimo užklausomis iš užduočių sąrašo įtaisų. Šiuo metu ši parinktis yra "
+"išjungta aktyvinimo spustelint veiksenoje. Atminkite, kad tarp langų "
+"iškėlimo būdų, kai raise_on_click reikšmė yra neigiama, nėra programinių "
+"užklausų iškelti langą iš programų; tokių užklausų bus nepaisoma, nepaisant "
+"jų priežasties. Jeigu esate programos kūrėjas ir jūsų naudotojai skundžiasi, "
+"kad jūsų programa neveikia, kai šis parametras išjungtas, pasakykite jiems, "
+"kad tai _jų_ kaltė, kad sugadino savo langų valdyklę ir, kad jie turi "
+"atkurti šią parinktį atgal į teigiamą arba ir toliau gyventi su klaida, dėl "
+"kurios skundžiasi."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Kai kurios programos nevykdo nurodymų specifikacijose, todėl kyla smulkių "
+"nesklandumų. Ši parinktis įjungia griežtą veikseną, kuri padaro aplinką "
+"vienalytiškesnę, jei nenaudojate nekorektiškų programų."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Sisteminis signalas yra garsinis"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Nustato kaip langų valdyklė vykdo vaizdinį signalą suveikus sisteminiam "
+"pyptelėjimui arba kokios nors programos pyptelėjimo signalui. Šiuo metu "
+"galimos dvi reikšmės - „fullscreen“, kuris sukuria viso ekrano vaizdo juodai "
+"baltą blykstelėjimą, bei „frame_flash“, kuris sukuria programos, "
+"pasiuntusios signalą, antraštės mirgėjimą. Jei programa pasiuntusi signalą "
+"yra nežinoma (paprastai tai būna kai suveikia standartinis sisteminis "
+"pyptelėjimas), mirga tuo momentu naudojamo lango antraštė."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N raktai nustato specialias "
+"klavišų kombinacijas, kurios atitinka nurodytas komanda. Paspaudus klavišo "
+"kombinaciją priskirtą run_command_N bus įvykdyta komanda command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot raktas nustato "
+"klavišų kombinaciją, kuri iškviečia šiame nustatyme nurodytą komandą."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot raktas "
+"nustato klavišų kombinaciją, kuri iškviečia šiame nustatyme nurodytą komandą."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Klavišų kombinacija, kuri paleidžia atitinkamą sunumeruotą komandą iš /apps/"
+"marco/keybinding_commands raktų. Klavišų kombinacijos formatas gali būti "
+"panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema "
+"apdorojanti aprašymą yra gana laisva ir leidžia maišyti didžiąsias bei "
+"mažąsias raides ir naudoti tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir "
+"\"&lt;Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su šiuo veiksmu "
+"nebus susieta jokia klavišų kombinacija."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Darbalaukio vardas"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Ekrano fotografavimo komanda"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Tema nurodo langų rėmelių, antraščių ir kitų elementų išvaizdą."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Uždelsimo laikas prieš pakeliant langą, jei auto_raise požymis yra "
+"teigiamas. Laikas nurodomas tūkstantosiomis sekundės dalimis."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Lango aktyvinimo veiksena nustato kaip bus aktyvuojami langai. Yra trys "
+"galimos reikšmės; \"click\" reiškia, kad reikia spustelėti ant lango norint "
+"jį aktyvuoti, \"sloppy\" aktyvuoja langus kai ant jų užvedamas pelės "
+"kursorius, o \"mouse\" reiškia, kad langai bus aktyvuojami kai ant jų bus "
+"užvestas kursorius ir aktyvacija bus atšaukta kursoriui pasitraukus."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Langų fotografavimo komanda"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ši parinktis nurodo dvigubo antraštės spustelėjimo veiksmą. Galimos "
+"reikšmės: „toggle_shade“ – suvynioti / išvynioti langą, „toggle_maximize“ – "
+"išdidinti / sumažinti langą, „toggle_maximize_horizontally“ ir "
+"„toggle_maximize_vertically“ – išdidinti langą nurodyta kryptimi, „minimize“ "
+"– paslėpti langą, „shade“ – suvynioti langą, „menu“ – parodyti lango meniu, "
+"„lower“ – nukelti langą už kitų langų ir „none“ – nedaryti nieko."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ši parinktis nurodo antraštės spustelėjimo viduriniuoju mygtuku veiksmą. "
+"Galimos reikšmės: „toggle_shade“ – suvynioti / išvynioti langą, "
+"„toggle_maximize“ – išdidinti / sumažinti langą, "
+"„toggle_maximize_horizontally“ ir „toggle_maximize_vertically“ – išdidinti "
+"langą nurodyta kryptimi, „minimize“ – paslėpti langą, „shade“ – suvynioti "
+"langą, „menu“ – parodyti lango meniu, „lower“ – nukelti langą už kitų langų "
+"ir „none“ – nedaryti nieko."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ši parinktis nurodo antraštės spustelėjimo dešiniuoju mygtuku veiksmą. "
+"Galimos reikšmės: „toggle_shade“ – suvynioti / išvynioti langą, "
+"„toggle_maximize“ – išdidinti / sumažinti langą, "
+"„toggle_maximize_horizontally“ ir „toggle_maximize_vertically“ – išdidinti "
+"langą nurodyta kryptimi, „minimize“ – paslėpti langą, „shade“ – suvynioti "
+"langą, „menu“ – parodyti lango meniu, „lower“ – nukelti langą už kitų langų "
+"ir „none“ – nedaryti nieko."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Ši parinktis leidžia tiksliau valdyti naujų langų aktyvinimą. Leidžiamos dvi "
+"reikšmės: „smart“ įjungia normalią veikseną, o „strict“ neaktyvina langų, "
+"paleistų iš terminalo."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Įjungia vaizdinius indikatorius, kai programa arba sistema perduoda "
+"standartinius garsinius perspėjimo signalus; naudinga esant klausos "
+"sutrikimams, triukšmingoje aplinkoje arba kai garsinis signalas yra "
+"išjungtas."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Langų antraštėse naudoti standartinį sistemos šriftą"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Vaizdinio signalo tipas"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Ar pakėlimas turėtų būti pašalinis kitų naudotojo veiksmų efektas"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Ar keisti dydį dešiniuoju mygtuku"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Langų aktyvinimo veiksena"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Lango antraštės šriftas"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Naudojimas: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Užverti langą"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Lango meniu"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Sumažinti langą"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Išdidinti langą"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Atkurti lango dydį"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Suvynioti langą"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Išvynioti langą"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Langas visada viršuje"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Langas nebūtinai viršuje"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Visada matomame darbalaukyje"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Langas tik viename darbalaukyje"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Sumaži_nti"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Iš_didinti"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "_Grąžinti iš išdidinimo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Su_vynioti"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Išvynioti"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Pe_rkelti"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Keisti dydį"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Perkelti lango juostą ant _ekrano"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Visada _viršuje"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Visada matomame darbalaukyje"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Tik šiame darbalaukyje"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Perkelti _langą į kairįjį darbalaukį"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Pe_rkelti langą į dešinįjį darbalaukį"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Perkelti langą į a_ukštesnįjį darbalaukį"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Perkelti langą į ž_emesnįjį darbalaukį"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Užverti"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Darbalaukis %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "1_0-tas darbalaukis"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Darbalaukis %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Perkelti langą į kitą _darbalaukį"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "viršus"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "apačia"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "kairė"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "dešinė"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "rėmelio aprašyme nenurodytas „%s“ matmuo"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "rėmelio aprašyme nenurodytas paraštės „%2$s“ „%1$s“ matmuo"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Mygtuko dydžio santykis %g yra nenuosaikus"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Rėmelio aprašyme nenurodytas mygtukų dydis"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Aprašant persiliejančias spalvas reikia nurodyti bent dvi spalvas"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK spalvų aprašymas turi turėti būsenos aprašymą patalpintą tarp laužtinių "
+"skliaustų, pvz., gtk:fg[NORMAL], kur NORMAL yra būsena; nepavyko apdoroti \"%"
+"s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK spalvų aprašymas po būsenos turi turėti uždarančius laužtinius "
+"skliaustus, pvz., gtk:fg[NORMAL], kur NORMAL yra būsena; nepavyko apdoroti "
+"\"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Nesuprantama spalvų aprašymo būsena \"%s\""
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Spalvų aprašyme nurodytas nesuprantamas spalvos komponentas \"%s\""
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Išplaukimo formatas yra \"blend/bg_color/fg_color/alpha\", \"%s\" neatitinka "
+"šio formato"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+"Nepavyko aprodoti skaidrumo reikšmės \"%s\" priskirtos išplaukiančiai spalva"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+"Skaidrumo reikšmė \"%s\" tarp išplaukiančios spalvos yra ne tarp 0.0 ir 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Šešėlio formatas yra \"shade/base_color/factor\", \"%s\" neatitinka šio "
+"formato"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Nepavyko apdoroti šešėlinės spalvos šešėlių rodiklio \"%s\""
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Šešėlio rodiklis \"%s\" tarp šešėlinės spalvos yra neigiamas"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Nepavyko apdoroti spalvos \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Koordinačių išraiška turi neleistiną simbolį '%s'"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Koordinačių išraiška turi skaičių su slankiu kableliu '%s', kuris negali "
+"būti apdorotas"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Koordinačių išraiška turi sveiką skaičių '%s', kuris negali būti apdorotas"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Koordinačių išraiškoje nurodytas nežinomas operatorius šio teksto pradžioje: "
+"\"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Koordinačių išraiška tuščia arba nesuprantama"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Koordinačių išraiška sukelia dalybą iš nulio"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Koordinačių išraiška bando panaudoti liekanos operatorių (mod) slankaus "
+"kablelio skaičiui"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Koordinačių išraiškoje įvestas operatorius \"%s\" ten, kur turi būti vedamas "
+"operandas"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Koordinačių išraiškoje operandas įrašytas operatoriaus vietoje"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Koordinačių išraiška pasibaigė operatoriumi, o ne operandu"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Koordinačių išraiškoje operatorius \"%c\" eina po operatoriaus \"%c\" be "
+"tarpinio operando"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Koordinačių išraiška saugo nežinomą kintamąjį arba konstantą \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Koordinačių išraiškų skaitytuvas perpildė buferį."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Koordinačių išraiškoje įvesti uždarantys skliaustai, nors atidarančių "
+"skliaustų nerasta"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Koordinačių išraiškoje po atidarančių skliaustų neįvesti uždarantys "
+"skliaustai"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Koordinačių išraiška neturi jokių operatorių ar operandų"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Temoje esanti išraiška sukėlė klaidą: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Šiam rėmelio stiliui turi būti nurodytas <button function=\"%s\" state=\"%s"
+"\" draw_ops=\"kažkokswhatever\"/> požymis"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Trūksta <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"kažkoks\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Nepavyko paleisti temos \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Temoje \"%2$s\" trūksta <%1$s> nustatymų"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Rėmelio stilius nenurodytas lango tipui \"%s\" temoje \"%s\", pridėkite "
+"<window type=\"%s\" style_set=\"kažkoks\"/> elementą"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Naudotojo nustatytos konstantos turi prasidėti didžiąja raide; „%s“ nėra "
+"didžioji"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstanta „%s“ jau aprašyta"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Trūksta „%s“ požymio elemente <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "%d eilutės simbolis %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Požymis „%s“ pasikartoja tame pačiame <%s> elemente"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Šiame kontekste požymis „%s“ yra netinkamas elemente <%s>"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Nepavyko apdoroti „%s“ kaip sveiko skaičiaus"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Nesuprantami simbolių seką „%2$s“ užbaigiantys simboliai „%1$s“"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Sveikas skaičius %ld turi būti teigiamas"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+"Sveikas skaičius %ld yra per didelis, didžiausia galima reikšmė šiuo metu "
+"yra %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Nepavyko aprodyti „%s“ kaip skaičiaus su slankiu kableliu"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Loginės reikšmės turi būti \"true\" arba \"false\", o ne \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Kampas turi būti tarp 0.0 ir 360.0, o buvo nurodyta %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Skaidrumo reikšmė turi būti tarp 0.0 (nematomas) ir 1.0 (visiškai "
+"neskaidrus), o buvo nurodyta %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Netinkamas antraštės mastelis \"%s\" (turi būti viena iš xx-small,x-small,"
+"small,medium,large,x-large,xx-large reikšmių)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> požymis name \"%s\" panaudotas antrą kartą"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Nenurodytas <%s> požymis parent \"%s\""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Nenurodytas <%s> požymis geometry \"%s\""
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> turi nurodyti dydžio (geometrijos) nustatymus arba viršesnį elementą, "
+"jau turinti tokius nustatymus"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Turite nustatyti foną, kad alfa reikšmė būtų prasminga"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Nežinomas type \"%s\" požymis elemente <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Nežinomas style_set \"%s\" požymis elemente <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Lango type \"%s\" požymis jau turi nurodytą stiliaus aprašymą"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Elementas <%s> neleistinas žemiau <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Negalima tuo pačiu metu nurodyti „button_width“/„button_height“ ir "
+"„aspect_ratio“"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Atstumas \"%s\" yra nežinomas"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Dydžio santykis \"%s\" yra nežinomas"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Paraštė \"%s\" nežinoma"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Elemente <%s> trūksta \"start_angle\" ar \"from\" požymio"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Elemente <%s> trūksta \"extent_angle\" ar \"to\" požymio"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Nesuprantama reikšmė \"%s\" persiliejančio elemento tipo aprašyme"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Nežinoma fill type požymio reikšmė \"%s\" elemente <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Nežinoma state požymio reikšmė \"%s\" elemente <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Nežinoma shadow požymio reikšmė \"%s\" elemente <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Nežinoma arrow požymio reikšmė \"%s\" elemente <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Neaprašyti jokie <draw_ops> požymiai pavadinti \"%s\""
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Čia įvesdami draw_ops \"%s\" požymius jūs sukuriate žiedinį aprašymą"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Nežinoma rėmelio elemento padėtis \"%s\""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Rėmelio stiliaus aprašyme padėtis %s jau aprašyta"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Vardui \"%s\" nenurodyti jokie <draw_ops> požymiai"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Mygtukui priskirta nežinoma funkcija \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Mygtuko funkcija \"%s\" neegzistuoja šioje versijoje (%d, reikia %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Mygtukui priskirta nežinoma būsena \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+"Rėmelio stiliaus aprašyme jau yra nurodytas mygtukas aprašantis funkcijos %s "
+"būseną %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "Reikšmė „%s“ nepriimtina aktyvinimo požymyje"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "Reikšmė „%s“ nepriimtina būsenos požymyje"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Stilius pavadinimu „%s“ neaprašytas"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "Reikšmė „%s“ nepriimtina dydžio keitimo požymyje"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Negalima naudoti \"resize\" požymio elemente <%s>, skirtame išplėtimo/"
+"šešėlių būsenų aprašymui"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Negalima naudoti \"resize\" požymio elemente <%s>, skirtame išplėtimo būsenų "
+"aprašymui"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "state %s resize %s focus %s požymiai jau turi stiliaus aprašymą"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Aktyvinimo %2$s būsena %1$s jau turi stiliaus aprašymą"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Negalima naudoti dviejų draw_ops požymių <piece> elemente (tema nustatė "
+"draw_ops požymį ir <draw_ops> elementą, arba nurodė du elementus)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Negalima naudoti dviejų draw_ops požymių <button> elemente (tema nustatė "
+"draw_ops požymį ir <draw_ops> elementą, arba nurodė du elementus)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Negalima naudoti dviejų draw_ops požymių <menu_icon> elemente (tema nustatė "
+"draw_ops požymį ir <draw_ops> elementą, arba nurodė du elementus)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Pradinis temos elementas turi būti <marco_theme>, o ne <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Elementas <%s> nepriimtinas tarp name/author/date/description elementų"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Elementas <%s> nepriimtinas tarp <constant> elemento"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Elementas <%s> nepriimtinas tarp distance/border/aspect_ratio elementų"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Elementas <%s> piešimo operacijos elemente neleidžiamas"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Elementas <%s> elemente <%s> yra neleidžiamas"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Rėmelio elementui nepriskirta draw_ops funkcija"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Mygtukui nepriskirta draw_ops funkcija"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Elemente <%s> tekstas negalimas"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> šioje temoje nurodytas du kartus"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Nepavyko rasti tinkamo temos %s failo\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Temos faile %s trūksta pagrindinio <marco_theme> elemento"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Langai"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Langai/atkabinimas"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Langai/_Dialogas"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Langai/_Modalinis dialogas"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Langai/_Įrankis"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Langai/_Pristatymo langas"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Langai/_Viršutinis dokas"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Langai/_Apatinis dokas"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Langai/_Kairysis dokas"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Langai/_Kairysis dokas"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Langai/Visi dok_ai"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Langai/_Darbastalis"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Tai yra pavydžio pranešimas pavyzdžio dialoge"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Netikras meniu punktas %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Tik rėmelį turintis langas"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Juosta"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normalus programos langas"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialogo langas"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modalinis dialogo langas"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Įrankių paletė"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Atkabinamas meniu"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Paraštė"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Mygtukų išdėstymo testas %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "vienam lango kadrui išvesti yra skirta %g milisekundžių"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Panaudojimas: marco-theme-viewer [TEMOS PAVADINIMAS]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Klaida įkeliant temą: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tema „%s“ įkelta per %g sekundžių\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Normalus antraštės šriftas"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Smulkus antraštės šriftas"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Didelis antraštės šriftas"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Mygtukų išdėstymai"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Greičio testas"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Čia rodomo lango antraštė"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d kadrai buvo išvesti per %g klientines sekundes (%g milisekunčių kadrui) "
+"ir per %g bendrinio laiko sekundes įskaitant X serverio resursus (%g "
+"milisekundžių kadrui)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"padėties išraiškos testas grąžino teigiamą reikšmę, bet kartu nustatė "
+"klaidos pranešimą"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"padėties išraiškos testas grąžino neigiamą reikšmę, bet nenustatė klaidos "
+"pranešimo"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Tikėtasi sulaukti klaidos pranešimo, tačiau nieko nesulaukta"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Tikėtasi klaidos %d, tačiau gauta %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Klaidos nesitikėta, tačiau grąžinta klaida: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x reikšmė buvo %d, tikėtasi %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y reikšmė buvo %d, tikėtasi %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"Koordinačių %d išraiška apdorota per %g sekundžių (%g sekundžių vidurkis)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Atverti dar vieną tokį langą"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Tai yra bandomasis mygtukas su „atverti“ piktograma"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Tai yra bandomasis mygtukas su „uždaryti“ piktograma"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Nepavyko apdoroti dialogo proceso pranešimo „%s“\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Įvyko klaida skaitant duomenis iš dialogo išvedimo proceso: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Įvyko klaida paleidžiant marco-dialog, klausiantį apie programos "
+#~ "veikimo sustabdymą: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Įvyko klaida paleidžiant langų valdyklės dialogo langą, perspėjantį apie "
+#~ "programas, kurios nepalaiko sesijos valdymo: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Antraštė"
+
+#~ msgid "Class"
+#~ msgstr "Klasė"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Įvyko klaida bandant paleisti „%s“:\n"
+#~ "%s."
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> elementas temos aprašyme nurodytas du kartus"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> elementas temos aprašyme nurodytas du kartus"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> elementas temos aprašyme nurodytas du kartus"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> elementas temos aprašyme nurodytas du kartus"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Įvyko klaida paleidžiant marco-dialog, išvedantį informaciją apie "
+#~ "komandos klaidą: %s\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Nežinomas požymis %s <marco_session> elemente"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Nežinomas požymis %s <maximized> elemente"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Nežinomas požymis %s <geometry> elemente"
+
+#~ msgid "The keybinding used to activate the window menu."
+#~ msgstr "Klavišų susiejimas lango meniu aktyvuoti"
+
+#, fuzzy
+#~ msgid "The keybinding used to toggle fullscreen mode."
+#~ msgstr "Perjungti viso ekrano veikseną"
+
+#~ msgid "The keybinding used to toggle maximization."
+#~ msgstr "Klavišų susiejimas lango išdidinimo veiksenai keisti"
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Perjungti visada viršuje būseną"
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows."
+#~ msgstr ""
+#~ "Klavišų susiejimas, keičiantis „visada viršuje“ būseną. Langas, esantis "
+#~ "visada viršuje bus matomas virš kitų jį dengiančių langų."
+
+#~ msgid "The keybinding used to maximize a window."
+#~ msgstr "Klavišų susiejimas langui išdidinti."
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Atšaukti lango išdidinimą"
+
+#~ msgid "The keybinding used to unmaximize a window."
+#~ msgstr "Klavišų susiejimas lango išdidinimui atšaukti"
+
+#~ msgid "The keybinding used to toggle shaded/unshaded state."
+#~ msgstr "Klavišų susiejimas lango sutraukimo būsenai keisti"
+
+#~ msgid "The keybinding used to minimize a window."
+#~ msgstr "Klavišų susiejimas langui sumažinti"
+
+#~ msgid "The keybinding used to close a window."
+#~ msgstr "Klavišų susiejimas langui užverti"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard."
+#~ msgstr ""
+#~ "Klavišų susiejimas įėjimui į „perkėlimo veikseną“ ir pradėjimui stumdyti "
+#~ "langą naudojantis klaviatūra."
+
+#~ msgid "Toggle window on all workspaces"
+#~ msgstr "Perjungti lango buvimo visuose darbalaukiuose būseną"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 1."
+#~ msgstr "Perkelti langą į darbalaukį Nr.1"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 2."
+#~ msgstr "Perkelti langą į darbalaukį Nr.2"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 3."
+#~ msgstr "Perkelti langą į darbalaukį Nr.3"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 4."
+#~ msgstr "Perkelti langą į darbalaukį Nr.4"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 5."
+#~ msgstr "Perkelti langą į darbalaukį Nr.5"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 6."
+#~ msgstr "Perkelti langą į darbalaukį Nr.6"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 7."
+#~ msgstr "Perkelti langą į darbalaukį Nr.7"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 8."
+#~ msgstr "Perkelti langą į darbalaukį Nr.8"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 9."
+#~ msgstr "Perkelti langą į darbalaukį Nr.9"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 10."
+#~ msgstr "Perkelti langą į darbalaukį Nr.10"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 11."
+#~ msgstr "Perkelti langą į darbalaukį Nr.11"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window to workspace 12."
+#~ msgstr "Perkelti langą į darbalaukį Nr.12"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace to the left."
+#~ msgstr "Perkelti langą į kairiau esantį darbalaukį"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace to the right."
+#~ msgstr "Perkelti langą į dešiniau esantį darbalaukį"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace up."
+#~ msgstr "Perkelti langą į aukščiau esantį darbalaukį"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace down."
+#~ msgstr "Perkelti langą į žemiau esantį darbalaukį"
+
+#, fuzzy
+#~ msgid "This keybinding raises the window above other windows."
+#~ msgstr "Iškelti langą virš kitų langų"
+
+#, fuzzy
+#~ msgid "This keybinding lowers a window below other windows."
+#~ msgstr "Nuleisti langą žemiau kitų langų"
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the screen."
+#~ msgstr "Perkelti langą į viršutinę ekrano dalį"
+
+#, fuzzy
+#~ msgid "This keybinding moves a window into the center of the screen."
+#~ msgstr "Perkelti langą į kairę ekrano pusę"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Daug veiksmų (pvz., spustelėjimas kliento srityje, lango stūmimas ar "
+#~ "dydžio keitimas) paprastai langą pakelia į viršų. Jei ši parinktis "
+#~ "išjungta (nerekomenduojama), pakėlimas bus atsietas nuo kitų veiksmų ir "
+#~ "programų užklausos pakelti langą bus ignoruojamos. Žr. http://bugzilla."
+#~ "gnome.org/show_bug.cgi?id=445447#c6."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į aukščiau esantį. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į žemiau esantį. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į kairiau esantį. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į dešiniau esantį. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.1. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.10. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.11. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.12. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.2. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.3. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.4. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.5. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.6. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.7. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.8. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia darbalaukį į darbalaukį nr.9. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, aktyvuojanti lango meniu. Klavišų kombinacijos "
+#~ "formatas gali būti panašus į „&lt;Control&gt;a“ arba „&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1“. Sistema apdorojanti aprašymą yra gana laisva ir leidžia "
+#~ "maišyti didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus "
+#~ "kaip „&lt;Ctl&gt;“ ir „&lt;Ctrl&gt;“. Nustačius specialų požymį "
+#~ "„disabled“, su šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to close a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri uždaro langą. Klavišų kombinacijos formatas "
+#~ "gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Sistema apdorojanti aprašymą yra gana laisva ir leidžia maišyti "
+#~ "didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus kaip \"&lt;"
+#~ "Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su "
+#~ "šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perjungia langą į \"judėjimo veikseną\" ir "
+#~ "leidžia po to judinti langą klaviatūros pagalba. Klavišų kombinacijos "
+#~ "formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir leidžia "
+#~ "maišyti didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus "
+#~ "kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius specialų požymį "
+#~ "\"disabled\", su šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, perjungianti langą į „dydžio keitimo“ veikseną ir po "
+#~ "to leidžianti keisti lango dydį klaviatūros pagalba. Klavišų kombinacijos "
+#~ "formatas gali būti panašus į „&lt;Control&gt;a“ arba „&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1“. Sistema apdorojanti aprašymą yra gana laisva ir leidžia "
+#~ "maišyti didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus "
+#~ "kaip „&lt;Ctl&gt;“ ir „&lt;Ctrl&gt;“. Nustačius specialų požymį "
+#~ "„disabled“, su šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri paslepia visus langus ir aktyvuoja darbalaukį. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, naudojama išplėsti langui. Klavišų kombinacijos "
+#~ "formatas gali būti panašus į „&lt;Control&gt;a“ arba „&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1“. Sistema apdorojanti aprašymą yra gana laisva ir leidžia "
+#~ "maišyti didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus "
+#~ "kaip „&lt;Ctl&gt;“ ir „&lt;Ctrl&gt;“. Nustačius specialų požymį "
+#~ "„disabled“, su šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri sumažina langą. Klavišų kombinacijos formatas "
+#~ "gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Sistema apdorojanti aprašymą yra gana laisva ir leidžia maišyti "
+#~ "didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus kaip \"&lt;"
+#~ "Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su "
+#~ "šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į žemiau esantį darbalaukį. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į kairiau esantį darbalaukį. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į dešiniau esantį darbalaukį. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į aukščiau esantį darbalaukį. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.1. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.10. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.11. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.12. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.2. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.3. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.4. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.5. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.6. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.7. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.8. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri perkelia langą į darbalaukį nr.9. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius atgal tarp skydelių "
+#~ "ir darbalaukio kartu su iššokančiu langu. Klavišų kombinacijos formatas "
+#~ "gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Sistema apdorojanti aprašymą yra gana laisva ir leidžia maišyti "
+#~ "didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus kaip \"&lt;"
+#~ "Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su "
+#~ "šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius atgal tarp skydelių "
+#~ "ir darbalaukio be iššokančio lango. Klavišų kombinacijos formatas gali "
+#~ "būti panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Sistema apdorojanti aprašymą yra gana laisva ir leidžia maišyti "
+#~ "didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus kaip \"&lt;"
+#~ "Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su "
+#~ "šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius atgal tarp langų be "
+#~ "iššokančio lango. Nuspaudus „Lyg2“ bus vėl judama į priekį. Klavišų "
+#~ "kombinacijos formatas panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir leidžia "
+#~ "maišyti didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus "
+#~ "kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius specialų požymį "
+#~ "\"disabled\", su šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius atgal tarp langų "
+#~ "kartu su iššokančiu langu. Nuspaudus „Lyg2“ bus vėl judama į priekį. "
+#~ "Klavišų kombinacijos formatas panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius atgal tarp langų be "
+#~ "iššokančio lango. Klavišų kombinacijos formatas gali būti panašus į \"&lt;"
+#~ "Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti "
+#~ "aprašymą yra gana laisva ir leidžia maišyti didžiąsias bei mažąsias "
+#~ "raides ir naudoti tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;"
+#~ "Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su šiuo veiksmu nebus "
+#~ "susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius atgal tarp langų "
+#~ "kartu su iššokančiu langu. Klavišų kombinacijos formatas gali būti "
+#~ "panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema "
+#~ "apdorojanti aprašymą yra gana laisva ir leidžia maišyti didžiąsias bei "
+#~ "mažąsias raides ir naudoti tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir "
+#~ "\"&lt;Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su šiuo veiksmu "
+#~ "nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius tarp skydelių ir "
+#~ "darbalaukio kartu su iššokančiu langu. Klavišų kombinacijos formatas gali "
+#~ "būti panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Sistema apdorojanti aprašymą yra gana laisva ir leidžia maišyti "
+#~ "didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus kaip \"&lt;"
+#~ "Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su "
+#~ "šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius tarp skydelių ir "
+#~ "darbalaukio be iššokančio lango. Klavišų kombinacijos formatas gali būti "
+#~ "panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema "
+#~ "apdorojanti aprašymą yra gana laisva ir leidžia maišyti didžiąsias bei "
+#~ "mažąsias raides ir naudoti tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir "
+#~ "\"&lt;Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su šiuo veiksmu "
+#~ "nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius tarp langų be "
+#~ "iššokančio lango. \"Lyg2\" klavišas keičia judėjimo kryptį. Klavišų "
+#~ "kombinacijos formatas panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir leidžia "
+#~ "maišyti didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus "
+#~ "kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius specialų požymį "
+#~ "\"disabled\", su šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius tarp programos langų "
+#~ "su iššokančiu langu. (Paprastai &lt;Alt&gt;F6) \"lyg2\" klavišas keičia "
+#~ "judėjimo kryptį. Klavišų kombinacijos formatas gali būti panašus į \"&lt;"
+#~ "Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti "
+#~ "aprašymą yra gana laisva ir leidžia maišyti didžiąsias bei mažąsias "
+#~ "raides ir naudoti tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;"
+#~ "Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su šiuo veiksmu nebus "
+#~ "susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius tarp langų be "
+#~ "iššokančio lango. (Paprastai &lt;Alt&gt;Escape) \"lyg2\" klavišas keičia "
+#~ "judėjimo kryptį. Klavišų kombinacijos formatas gali būti panašus į \"&lt;"
+#~ "Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti "
+#~ "aprašymą yra gana laisva ir leidžia maišyti didžiąsias bei mažąsias "
+#~ "raides ir naudoti tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;"
+#~ "Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su šiuo veiksmu nebus "
+#~ "susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri judina aktyvinimo požymius tarp langų kartu su "
+#~ "iššokančiu langu. (Paprastai &lt;Alt&gt;Tab) \"lyg2\" klavišas keičia "
+#~ "judėjimo kryptį. Klavišų kombinacijos formatas gali būti panašus į \"&lt;"
+#~ "Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti "
+#~ "aprašymą yra gana laisva ir leidžia maišyti didžiąsias bei mažąsias "
+#~ "raides ir naudoti tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;"
+#~ "Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su šiuo veiksmu nebus "
+#~ "susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, įjungianti veikseną „visada viršuje. Įjungus šią "
+#~ "veikseną langas visada bus aukščiau kitų persidengiančių langų. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į „&lt;Control&gt;a“ arba „&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1“. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip „&lt;Ctl&gt;“ ir „&lt;Ctrl&gt;“. Nustačius specialų "
+#~ "požymį „disabled“, su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, perjungianti viso ekrano veikseną. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į „&lt;Control&gt;a“ arba „&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1“. Sistema apdorojanti aprašymą yra gana liberali "
+#~ "ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip „&lt;Ctl&gt;“ ir „&lt;Ctrl&gt;“. Nustačius specialų "
+#~ "požymį „disabled“, su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri įjungia arba išjungia lango išdidinimą. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri keičia lango šešėlinę/ne šešėlinę būseną. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri nustato ar langas bus tik viename darbalauke, "
+#~ "ar visuose. Klavišų kombinacijos formatas gali būti panašus į \"&lt;"
+#~ "Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti "
+#~ "aprašymą yra gana laisva ir leidžia maišyti didžiąsias bei mažąsias "
+#~ "raides ir naudoti tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;"
+#~ "Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su šiuo veiksmu nebus "
+#~ "susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri sutraukia langą. Klavišų kombinacijos formatas "
+#~ "gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Sistema apdorojanti aprašymą yra gana laisva ir leidžia maišyti "
+#~ "didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus kaip \"&lt;"
+#~ "Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius specialų požymį \"disabled\", su "
+#~ "šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri iškviečia skydelio programos paleidimo dialogo "
+#~ "langą. Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;"
+#~ "a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra "
+#~ "gana laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri iškviečia terminalą. Klavišų kombinacijos "
+#~ "formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Sistema, apdorojanti aprašymą, yra gana laisva ir leidžia "
+#~ "maišyti didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus "
+#~ "kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius specialų požymį "
+#~ "\"disabled\", su šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri paleidžia skydelio ekrano vaizdo kopijų darymo "
+#~ "programą tam, kad toji padarytų lango vaizdo kopiją. Klavišų kombinacijos "
+#~ "formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir leidžia "
+#~ "maišyti didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus "
+#~ "kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius specialų požymį "
+#~ "\"disabled\", su šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri skydelio ekrano vaizdo kopijų darymo progamą. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri iškviečia skydelio pagrindinį meniu. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri keičia lango buvimo žemiau/aukščiau kitų langų "
+#~ "būklę. Jei langas yra paslėptas po kitu langu, jis bus iškeltas aukščiau "
+#~ "kitų. Jei langas yra pilnai matomas, jis atsidurs žemiau kitų langų. "
+#~ "Klavišų kombinacijos formatas panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri paslepia langą po kitais langais. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Ši klavišų kombinacija priglaudžia langą prie viršutinio ekrano krašto. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding moves a window into the center of the screen. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Ši klavišų kombinacija priglaudžia langą prie kairiojo ekrano krašto. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Ši klavišų kombinacija priglaudžia langą prie dešiniojo ekrano krašto. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Ši klavišų kombinacija priglaudžia langą prie ekrano viršutinio kairiojo "
+#~ "kampo. Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;"
+#~ "a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra "
+#~ "gana laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Ši klavišų kombinacija priglaudžia langą prie ekrano viršutinio dešiniojo "
+#~ "kampo. Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;"
+#~ "a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra "
+#~ "gana laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Ši klavišų kombinacija priglaudžia langą prie apatinio ekrano krašto. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Ši klavišų kombinacija priglaudžia langą prie ekrano apatinio dešiniojo "
+#~ "kampo. Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;"
+#~ "a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra "
+#~ "gana laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Ši klavišų kombinacija priglaudžia langą prie ekrano apatinio kairiojo "
+#~ "kampo. Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;"
+#~ "a\" arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra "
+#~ "gana laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Ši klavišų kombinacija priglaudžia langą prie kairiojo ekrano krašto. "
+#~ "Klavišų kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" "
+#~ "arba \"&lt;Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana "
+#~ "laisva ir leidžia maišyti didžiąsias bei mažąsias raides ir naudoti "
+#~ "tokius sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri iškelia langą virš kitų langų. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, kuri išplečia langą horizontaliai. Klavišų "
+#~ "kombinacijos formatas gali būti panašus į \"&lt;Control&gt;a\" arba \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Sistema apdorojanti aprašymą yra gana laisva ir "
+#~ "leidžia maišyti didžiąsias bei mažąsias raides ir naudoti tokius "
+#~ "sutrumpinimus kaip \"&lt;Ctl&gt;\" ir \"&lt;Ctrl&gt;\". Nustačius "
+#~ "specialų požymį \"disabled\", su šiuo veiksmu nebus susieta jokia klavišų "
+#~ "kombinacija."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klavišų kombinacija, išdidinanti langą vertikaliai. Klavišų kombinacijos "
+#~ "formatas gali būti panašus į „&lt;Control&gt;a“ arba „&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1“. Sistema apdorojanti aprašymą yra gana laisva ir leidžia "
+#~ "maišyti didžiąsias bei mažąsias raides ir naudoti tokius sutrumpinimus "
+#~ "kaip „&lt;Ctl&gt;“ ir „&lt;Ctrl&gt;“. Nustačius specialų požymį "
+#~ "„disabled“, su šiuo veiksmu nebus susieta jokia klavišų kombinacija."
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Sutraukti langą"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Elemente <%2$s> trūksta požymio \"%1$s\""
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Tema jau turi atsarginę piktogramą"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Tema jau turi atsarginę mini piktogramą"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"name\" požymio"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"value\" požymio"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"top\" požymio"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"bottom\" požymio"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"left\" požymio"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"right\" požymio"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"color\" požymio"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"x1\" požymio"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"y1\" požymio"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"x2\" požymio"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"y2\" požymio"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"y\" požymio"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"width\" požymio"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"height\" požymio"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"start_angle\" požymio"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"extent_angle\" požymio"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"alpha\" požymio"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"type\" požymio"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"filename\" požymio"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"state\" požymio"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"shadow\" požymio"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Elemente <%s> trūksta \"arror\" požymio"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Elemente <%s> trūksta \"value\" požymio"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Elemente <%s> trūksta \"position\" požymio"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Elemente <%s> trūksta \"function\" požymio"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Elemente <%s> trūksta \"state\" požymio"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Elemente <%s> trūksta požymio „focus“"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Elemente <%s> trūksta požymio „style“"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Elemente <%s> trūksta požymio „resize“"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "%s tipas buvo ne sveikasis skaičius"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d saugoma MateConf rakte %s yra nenuosaikus cursor_size; turi būti nuo 1 "
+#~ "iki 128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d reikšmė saugoma MateConf rakte %s nurodo nepriimtina darbalaukų skaičių, "
+#~ "šiuo metu maksimali reikšmė yra %d\n"
diff --git a/po/lv.po b/po/lv.po
new file mode 100644
index 00000000..9937e2e1
--- /dev/null
+++ b/po/lv.po
@@ -0,0 +1,2416 @@
+# translation of lv.po to Latvian
+# metaciy for Latvian.
+# Copyright (C) 2002, 2006, 2007, 2009 Free Software Foundation, Inc.
+#
+# Peteris Krisjanis <[email protected]>, 2002.
+# Raivis Dejus <[email protected]>, 2006, 2007, 2009.
+# Rūdolfs Mazurs <[email protected]>, 2009.
+# Anita Reitere <[email protected]>, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: lv\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug."
+"cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2010-03-25 08:53+0000\n"
+"PO-Revision-Date: 2010-04-06 10:46+0300\n"
+"Last-Translator: Anita Reitere <[email protected]>\n"
+"Language-Team: Latviešu <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Lokalize 1.0\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : "
+"2);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Darbvirsma"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Logu pārvaldība"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Zvana notikums"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Nezināms logu informācijas pieprasījums: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+#| msgid "\"%s\" is not responding."
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> nereaģē."
+
+#: ../src/core/delete.c:101
+#| msgid ""
+#| "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#| "\n"
+#| "<i>You may choose to wait a short while for it to continue or force the "
+#| "application to quit entirely.</i>"
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Jūs varat uzgaidīt neilgu brīdi, līdz tā atgūstas, vai arī aizvērt to "
+"piespiedu kārtā."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Gaidīt"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "Aizvērt _piespiedu kārtā"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Neizdevās iegūt datora nosaukumu: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Trūkst %s paplašinājuma, kas nepieciešams kompozicionēšanai"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Neizdevās atvērt X logu sistēmas displeju '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Zudis savienojums ar displeju '%s';\n"
+"iespējams, X serveris tika izslēgts vai jūs apturējāt\n"
+"logu pārvaldnieku.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Fatāla IO kļūda %d (%s) displejā '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Kāda cita programma jau lieto taustiņu %s ar modificētājiem %x kā sasaisti\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Kļūda, darbinot <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Komanda %d nav definēta.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Termināla komandas nav definētas.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Autortiesības (C) 2001-%s Havoc Pennington, Red Hat, Inc., un citi\n"
+"Šī ir brīvā programmatūra; par kopēšanas nosacījumiem skatīt avotu.\n"
+"Netiek dota NEKĀDA garantija; pat ne KOMERCIĀLAS VĒRTĪBAS vai DERĪGUMA "
+"NOTEIKTAM NOLŪKAM.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Atslēgt savienojumu ar sesiju pārvaldnieku"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Aizvietot darbojošos logu pārvaldnieku ar Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Norādīt sesijas pārvaldnieka ID"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Lietojamais X displejs"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inicializēt sesiju no saglabātā faila"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Parādīt versiju"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Padarīt X izsaukumus sinhronus"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Ieslēgt kompozicionēšanu"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Izslēgt kompozicionēšanu"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "Neveidot pilnekrāna logus, kuri ir maksimizēti un bez noformējuma"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Neizdevās noskanēt tēmu direktoriju: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Neizdevās atrast tēmu! Pārliecinieties, ka %s eksistē un satur parastās "
+"tēmas.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Neizdevās pārstartēt: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf atslēga '%s' ir iestatīta uz nederīgu vērtību\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d, kas saglabāts MateConf atslēgā %s, ir ārpus %d līdz %d diapazona\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf atslēga \"%s\" ir iestatīta uz nederīgu tipu\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Apvedceļi bojātām lietotnēm atslēgti. Dažas lietotnes var neuzvesties "
+"pareizi.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Neizdevās parsēt fonta aprakstu \"%s\" no MateConf atslēgas %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\", kas atrasta konfigurācijas datubāzē, nav derīga vērtība peles pogas "
+"modifikatoram\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Kļūda, iestatot darbvietu daudzumu uz %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Darbvieta %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\", kas atrasta konfigurācijas datubāzē, nav derīga vērtība "
+"taustiņsasaistei \"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Kļūda, iestatot darbvietas %d nosaukumu uz \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Kļūda, iestatot kompozicionētāja statusu: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Ekrāna %d displejs \"%s\" ir nederīgs\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Ekrāna %d displejam \"%s\" jau ir logu pārvaldnieks; mēģiniet lietot --"
+"replace iespēju, lai aizvietotu pašreizējo logu pārvaldnieku.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Neizdevās iegūt logu pārvaldnieka izvēli ekrāna %d displejā \"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Ekrāna %d displejam \"%s\" jau ir logu pārvaldnieks\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Neizdevās atlaist ekrānu %d uz displeja \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Formāts izskatās kā \"<Control>a\" vai \"<Shift><Alt>F1\".\n"
+"\n"
+"Parsēšana ir diezgan liberāla un pieļauj lielos un mazos burtus, arī "
+"saīsinājumus, tādus kā \"<Ctl>\" un \"<Ctrl>\". Ja ierakstīsiet šeit "
+"īpašo virkni \"disabled\", šai darbībai nebūs taustiņsasaistes."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Formāts izskatās kā \"<Control>a\" vai \"<Shift><Alt>F1\".\n"
+"\n"
+"Parsēšana ir diezgan liberāla un pieļauj lielos un mazos burtus, arī "
+"saīsinājumus, tādus kā \"<Ctl>\" un \"<Ctrl>\". Ja ierakstīsiet šeit "
+"īpašo virkni \"disabled\", šai darbībai nebūs taustiņsasaistes.\n"
+"\n"
+"Šo taustiņsaiti var apvērst, turot nospiestu \"shift\" taustiņu, tāpēc "
+"\"shift\" taustiņu tajā nevar lietot."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Neizdevās izveidot mapi '%s': %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Neizdevās atvērt sesijas failu '%s' rakstīšanai: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Kļūda, ierakstot sesijas failu '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Kļūda, aizverot sesijas failu '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Neizdevās nolasīt saglabāto sesijas failu %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Kļūda, parsējot saglabāto sesijas failu: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> atribūts pamanīts, bet mums jau ir sesijas ID"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Nezināms atribūts %s <%s> elementam"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "ligzdota <window> birka"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Nezināms elements %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Šie logi neatbalsta &quot;saglabāt pašreizējos iestatījumus&quot; un būs "
+"jārestartē pašrocīgi nākamreiz, kad pieteiksieties."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Neizdevās atvērt atkļūdošanas žurnālu: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Neizdevās fdopen() žurnālfailu %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Atvērtais žurnālfails %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco tika kompilēts bez daudzvārdīgā režīma atbalsta\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Logu pārvaldnieks: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Kļūda logu pārvaldniekā: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Logu pārvaldnieka brīdinājums: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Logu pārvaldnieka kļūda: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Logs %s iestata SM_CLIENT_ID pats sev, nevis WM_CLIENT_LEADER logam kā "
+"norādīts ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Logs %s iestata MWM padomu, ka tā izmērs nav maināms, bet iestata "
+"minimālo izmēru %d x %d un maksimālo izmēru %d x %d; tas ir diezgan dīvaini."
+"\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Lietotne iestatīja neīstu _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (uz %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (kā administrators)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (kā %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (kā cits lietotājs)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Nederīgs WM_TRANSIENT_FOR logs 0x%lx norādīts %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Logam 0x%lx ir rekvizīts %s,\n"
+"kam vajadzēja būt %s tipa formātā %d,\n"
+"bet īstenībā bija %s tipa formātā %d n_items %d\n"
+"Šī visdrīzāk ir lietotnes, nevis logu pārvaldnieka kļūda.\n"
+"Logam bija virsraksts=\"%s\" klase=\"%s\" nosaukums=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Rekvizīts %s logā 0x%lx saturēja nederīgu UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Rekvizīts %slogā 0x%lx saturēja nederīgu UTF-8 priekšmetam %d no saraksta\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Pārslēgties uz 1. darbvietu"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Pārslēgties uz 2. darbvietu"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Pārslēgties uz 3. darbvietu"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Pārslēgties uz 4. darbvietu"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Pārslēgties uz 5. darbvietu"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Pārslēgties uz 6. darbvietu"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Pārslēgties uz 7. darbvietu"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Pārslēgties uz 8. darbvietu"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Pārslēgties uz 9. darbvietu"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Pārslēgties uz 10. darbvietu"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Pārslēgties uz 11. darbvietu"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Pārslēgties uz 12. darbvietu"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Pārslēgties uz darbvietu pa kreisi no pašreizējās"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Pārslēgties uz darbvietu pa labi no pašreizējās"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Pārslēgties uz darbvietu virs pašreizējās"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Pārslēgties uz darbvietu zem pašreizējās"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Pārvietoties starp lietotnes logiem, lietojot izlecošo logu"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Pārvietoties atpakaļ starp lietotnes logiem, lietojot izlecošo logu"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Pārvietoties starp logiem, lietojot izlecošo logu"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Pārvietoties atpakaļ starp logiem, lietojot izlecošo logu"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Pārvietoties starp paneļiem un darbvirsmu, lietojot izlecošo logu"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Pārvietoties atpakaļ starp paneļiem un darbvirsmu, lietojot izlecošo logu"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Nekavējoties pārvietoties starp lietotņu logiem"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Nekavējoties pārvietoties atpakaļ starp lietotņu logiem"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Pārvietoties starp logiem nekavējoties"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Nekavējoties pārvietoties atpakaļ starp logiem"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Nekavējoties pārvietoties starp paneļiem un darbvirsmu"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Nekavējoties pārvietoties atpakaļ starp paneļiem un darbvirsmu"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Paslēpt visus logus un fokusēties uz darbvirsmu"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Parāda paneļa galveno izvēlni"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Parāda paneļa \"lietotņu palaišanas\" logu"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Uzņemt ekrānattēlu"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Uzņemt loga ekrānattēlu"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Palaist termināli"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Aktivizēt loga izvēlni"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Pārslēgt pilnekrāna režīmu"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Pārslēgt maksimizācijas stāvokli"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Pārslēdz to, vai logs vienmēr redzams virs citiem logiem"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maksimizēt logu"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Atjaunot logu"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Pārslēgt ēnoto stāvokli"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimizēt logu"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Aizvērt logu"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Pārvietot logu"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Mainīt loga izmēru"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Pārslēgt, vai logs ir redzams visās darbvirsmās vai tikai vienā"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Pārvietot logu uz 1. darbvietu"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Pārvietot logu uz 2. darbvietu"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Pārvietot logu uz 3. darbvietu"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Pārvietot logu uz 4. darbvietu"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Pārvietot logu uz 5. darbvietu"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Pārvietot logu uz 6. darbvietu"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Pārvietot logu uz 7. darbvietu"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Pārvietot logu uz 8. darbvietu"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Pārvietot logu uz 9. darbvietu"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Pārvietot logu uz 10. darbvietu"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Pārvietot logu uz 11. darbvietu"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Pārvietot logu uz 12. darbvietu"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Pārvietot logu vienu darbvietu pa kreisi"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Pārvietot logu vienu darbvietu pa labi"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Pārvietot logu vienu darbvietu augšup"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Pārvietot logu vienu darbvietu lejup"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Pacelt logu, ja to aizsedz kāds cits, citādi pazemināt"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Pacelt logu virs citiem logiem"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Pazemināt logu zem citiem logiem"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maksimizēt logu vertikāli"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maksimizēt logu horizontāli"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Pārvietot logu uz ekrāna ziemeļrietumu (augšējo kreiso) stūri"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Pārvietot logu uz ekrāna ziemeļaustrumu (augšējo labo) stūri"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Pārvietot logu uz ekrāna dienvidrietumu (apakšējo kreiso) stūri"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Pārvietot logu uz ekrāna dienvidaustrumu (apakšējo labo) stūri"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Pārvietot logu uz ekrāna ziemeļu (augšējo) malu"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Pārvietot logu uz ekrāna dienvidu (apakšējo) malu"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Pārvietot logu uz ekrāna austrumu (labo) malu"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Pārvietot logu uz ekrāna rietumu (kreiso) malu"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Pārvietot logu uz ekrāna centru"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Nav iestrādāts) Navigācija darbojas vairāk pēc lietotnēm nekā logiem"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Fonta apraksta virkne, kas apraksta fontu logu virsrakstjoslās. Izmērs no "
+"apraksta tiks lietots, ja titlebar_font_size vērtība ir 0. Šī vērtība tiek "
+"atslēgta, ja ieslēgta titlebar_uses_desktop_font."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Darbība uz virsrakstjoslas dubultklikšķa"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Vidējās pogas klikšķa darbība uz virsrakstjoslas"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Labās pogas klikšķa darbība uz virsrakstjoslas"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Pogu kārtība virsrakstjoslā"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Pogu kārtība virsrakstjoslā. Vērtībai jābūt virknei, tādai kā \"menu:"
+"minimize,maximize,close\"; kols atdala kreiso loga stūri no labā stūra un "
+"pogu nosaukumi ir komatu atdalīti. Dublētas pogas netiek pieļautas. Nezināmi "
+"pogu nosaukumi tiek klusi ignorēti, tādējādi pogas var tikt pievienotas "
+"turpmākās marco versijās, nesabojājot vecākas versijas. Speciālas "
+"atstarpju birkas var izmantot, lai ievietotu atstarpes starp blakus esošām "
+"pogām."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Automātiski pacelt fokusēto logu"
+
+#: ../src/marco.schemas.in.in.h:9
+#| msgid ""
+#| "Clicking a window while holding down this modifier key will move the "
+#| "window (left click), resize the window (middle click), or show the window "
+#| "menu (right click). The left and right operations may be swapped using "
+#| "the \"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" "
+#| "or \"&lt;Super&gt;\" for example."
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Klikšķis uz loga, turot nospiestu šo taustiņu, pārvietos logu (kreisais "
+"klikšķis), mainīs loga izmēru (vidējais klikšķis) vai parādīs loga izvēlni "
+"(labais klikšķis). Kreisās un labās darbības var mainīt vietām ar "
+"\"mouse_button_resize\" atslēgu. Šo taustiņu apzīmē, piemēram, "
+"\"&lt;Alt&gt;\" vai \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Komandas, kuras palaiž taustiņsasaistes"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Kompozicionēšanas pārvaldnieks"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Kā jauni logi iegūst fokusu"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Pašreizējā tēma"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Aizture milisekundēs automātiskās pacelšanas opcijai"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Nosaka, vai Marco ir kompozicionēšanas pārvaldnieks."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Nosaka, vai lietotnes un sistēma var ģenerēt dzirdamus 'pīkstienus'; var "
+"lietot kopā ar 'vizuālo zvanu', lai atļautu klusos 'zvanus'."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Atslēgt īpatnības, kas nepieciešamas vecām vai līkām lietotnēm"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Aktivizēt vizuālo zvanu"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Ja patiess un fokusēšanas režīms ir vai nu \"paviršs\" vai \"pele\", tad "
+"fokusētais logs tiks automātiski aktivizēts pēc aiztures (aizturi nosaka "
+"auto_raise_delay). Tam nav sakara ar loga aktivizēšanu ar klikšķi vai "
+"ievilkšanu."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ja patiess, ignorēt titlebar_font iespēju un lietot standarta lietotņu "
+"fontu logu nosaukumiem."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Ja patiess, Marco sniegs lietotājam mazāk informācijas, izmantojot "
+"vadrāmjus, izvairoties no animācijām u.tml. Tas samazina lietojamību, taču "
+"var noderēt darbā ar vecākām programmām vai terminālserveru risinājumos. Ja "
+"aktivizētas pieejamības funkcijas, Marco tomēr nelietos vadrāmjus."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Ja patiess, tad Marco darbojas drīzāk ar lietotnēm nekā logiem. Varētu "
+"teikt, vairāk kā Mac nekā Windows. Kad fokusējat logu lietotņu režīmā, visi "
+"lietotnes logi tiek aktivizēti. Tāpat arī lietotņu režīmā fokusēšanas "
+"klikšķi netiek nodoti logiem citās lietotnēs. Šis režīms gan vēl nav īsti "
+"izstrādāts."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Ja šis elements ir atzīmēts, lietojamība tiks iemainīta pret mazāku resursu "
+"izmantojumu"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modifikators, kuru lietot modificētā loga klikšķu darbībām"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Darbvietas nosaukums"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Darbvietu skaits"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Darbvietu skaits. Jābūt lielākam par nulli un ir fiksēts maksimums, lai "
+"nejauši nepadarītu darbvirsmu nelietojamu."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Palaist definētu komandu"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Iestatiet to uz patiesu, lai mainītu izmēru ar labo pogu un rādītu izvēlni "
+"ar vidējo pogu, kamēr tur nospiestu taustiņu, kurš ir norādīts atslēgā "
+"\"mouse_button_modifier\"; iestatiet to uz nepatiesu, lai tas strādātu "
+"otrādi."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Šīs opcijas pārslēgšana no \"true\" uz \"false\" var izraisīt kļūdainu "
+"darbību, tāpēc lietotājiem labāk to neaiztikt. Daudzas darbības "
+"(klikšķināšana klienta laukumā, loga izmēra maiņa vai pārvietošana u.c.) "
+"parasti arī paceļ logu. Šīs vērtības iestatīšana par aplamu, kas ir ļoti "
+"nevēlams, atraus logu pacelšanu no citām lietotāju darbībām un ignorēs "
+"lietotņu pieprasījumus. Skatiet http://bugzilla.gnome.org/show_bug."
+"cgi?id=445447#c6. Logu vēl aizvien varēs pacelt ar Alt-kreiso-klikšķi uz "
+"loga, parasto klikšķi uz loga apdares vai ar speciālu ziņojumu no lapotāja, "
+"piemēram, aktivēšanas pieprasījumu no uzdevumu saraksta sīklietotnēm. Šī "
+"opcija pašreiz ir atslēgta klikšķa fokusa režīmā. Ņemiet vērā: kad "
+"raise_on_click ir \"false\", lietotņu programmatiskie pieprasījumi pacelt "
+"logu nestrādās. Tie tiks ignorēti neatkarīgi no pieprasījuma iemesla. Ja jūs "
+"esat izstrādātājs un saņemat sūdzību, ka jūsu lietotne nedarbojas, kad šī "
+"opcija ir \"false\", iesakiet lietotājam atlikt to atpakaļ uz \"true\" vai "
+"sadzīvot ar \"false\" iestatījuma paredzēto rezultātu."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Dažas programmas neievēro specifikācijas, un logu pārvaldniekiem nākas "
+"pielāgoties. Šī vērtība ieslēdz Marco strikto režīmu, kas nodrošina "
+"saskanīgāku lietotāja saskarni, ja jums nav vajadzīgas nepaklausīgās "
+"programmas."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Sistēmas zvans ir dzirdams"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Nosaka, kā Marco vajadzētu īstenot vizuālo indikāciju, ka sistēmas zvans "
+"vai citas programmas 'zvana' indikators ir iedarbojies. Šobrīd ir divas "
+"derīgas vērtības: \"fullscreen\", kas izraisa zibsni pa visu ekrānu, un "
+"\"frame_flash\", kas liek iezibsnīties izsaucošās programmas virsraksta "
+"joslai. Ja nav zināma programma, kas ir nosūtījusi zvanu, tad iezibsnīsies "
+"aktīvā loga virsraksta josla."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Atslēgas /apps/marco/global_keybindings/run_command_N definē "
+"taustiņsasaistes, kas atbilst šīm komandām. Taustiņsasaiste "
+"run_command_N palaidīs command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot atslēga definē "
+"taustiņsasaistes, kas izpilda attiecīgo komandu."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot atslēga "
+"definē taustiņsasaistes, kas izpilda attiecīgo komandu."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Taustiņsasaiste, kas palaiž atbilstoši numurēto komandu no "
+"/apps/marco/keybinding_commands. Formāts izskatās kā \"&lt;Control&gt;a\" "
+"vai \"&lt;Shift&gt;&lt;Alt&gt;F1. Parseris pieļauj lielos un mazos burtus un "
+"saīsinājumus, tādus kā \"&lt;Ctl&gt;\" vai \"&lt;Ctrl&gt;\". Ja ierakstīsiet "
+"šeit \"disabled\", šai darbībai nebūs taustiņsasaistes."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Darbvietas nosaukums."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Ekrānattēla komanda"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Tēma nosaka izskatu loga robežām, virsrakstjoslai un tamlīdzīgi."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Laika aizture pirms loga pacelšanas, ja auto_raise ir iestatīts kā patiess. "
+"Aizture tiek izteikta sekundes tūkstošdaļās."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Loga fokusēšanās režīms nosaka, kā logi tiek aktivizēti. Tam ir trīs "
+"iespējamās vērtības: \"klikšķis\" nozīmē, ka uz logiem ir jāuzklikšķina, lai "
+"tos fokusētu, \"paviršs\" nozīmē , ka logi tiek fokusēti, kad pele slīd tiem "
+"pāri, un \"pele\" nozīmē, ka logi tiek fokusēti, kad pele slīd logam pāri, "
+"un atfokusēti, kad pele pamet logu."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Loga ekrānattēla komanda"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Šī vērtība nosaka peles dubultklikšķa efektu uz virsrakstjoslas. Šobrīd "
+"derīgas vērtības ir 'toggle_shade', kas ēnos/atēnos logu, un "
+"'toggle_maximize_horizontally' un 'toggle_maximize_vertically', kas "
+"maksimizēs/atmaksimizēs logu tikai šajā virzienā, 'minimize', kas minimizēs "
+"logu, 'shade', kas uzritinās logu augšup, 'menu', kas parādīs loga izvēlni, "
+"'lower', kas novietos logu aiz visiem citiem logiem un 'none', kas nedarīs "
+"neko."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Šī vērtība nosaka peles vidējā taustiņa klikšķa efektu uz virsrakstjoslas. "
+"Šobrīd derīgas vērtības ir 'toggle_shade', kas ēnos/atēnos logu, un "
+"'toggle_maximize_horizontally' un 'toggle_maximize_vertically', kas "
+"maksimizēs/atmaksimizēs logu tikai šajā virzienā, 'minimize', kas minimizēs "
+"logu, 'shade', kas uzritinās logu augšup, 'menu', kas parādīs loga izvēlni, "
+"'lower', kas novietos logu aiz visiem citiem logiem un 'none', kas nedarīs "
+"neko."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Šī vērtība nosaka peles labā taustiņa klikšķa efektu uz virsrakstjoslas. "
+"Šobrīd derīgas vērtības ir 'toggle_shade', kas ēnos/atēnos logu, un "
+"'toggle_maximize_horizontally' un 'toggle_maximize_vertically', kas "
+"maksimizēs/atmaksimizēs logu tikai šajā virzienā, 'minimize', kas minimizēs "
+"logu, 'shade', kas uzritinās logu augšup, 'menu', kas parādīs loga izvēlni, "
+"'lower', kas novietos logu aiz visiem citiem logiem un 'none', kas nedarīs "
+"neko."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Šī vērtība nodrošina papildu kontroli pār to, kā jaunizveidotie logi tiek "
+"aktivizēti. Tai ir divas iespējamas vērtības: \"smart\" izmanto standarta "
+"aktivizēšanas iestatījumus, \"strict\" nosaka, ka no komandrindas "
+"palaistie logi netiks aktivizēti."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Ieslēdz programmu vai sistēmas 'zvanu' vai 'pīkstienu' vizuālu indikāciju; "
+"noderīga vājdzirdīgiem cilvēkiem un darbam trokšņainās vidēs."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Lietot sistēmas standarta fontu logu virsrakstos"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Vizuālā zvana tips"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Vai logu aktivizēšanai būtu jābūt citu mijiedarbību blakusrezultātam"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Vai mainīt izmēru ar labo pogu"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Logu fokusēšanas režīms"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Loga virsraksta fonts"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Lietošana: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Aizvērt logu"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Loga izvēlne"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimizēt logu"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maksimizēt logu"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Atjaunot logu"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Uzrullēt logu"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Norullēt logu"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Turēt logu virspusē"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Aizvākt logu no virspuses"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Vienmēr redzamajā darbvietā"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Turēt logu tikai vienā darbvietā"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimizēt"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ksimizēt"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "At_jaunot"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Uzrullēt"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Norullēt"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Pārvietot"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Mainīt"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Pārvietot virsrak_sta joslu uz ekrāna"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Vienmēr _virspusē"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Vienmēr uz redzamās d_arbvietas"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Tikai uz šīs darbvietas"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Pārvietot uz darbvietu pa _kreisi"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Pārvietot uz darbvietu pa lab_i"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Pārvietot _uz augstāku darbvietu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Pārvietot uz zemāku _darbvietu"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Aizvērt"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Darbvieta %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Darbvieta 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Darbvieta %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Pārvietot uz citu darb_vietu"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "augša"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "apakša"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "pa kreisi"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "pa labi"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "rāmja ģeometrija nenosaka \"%s\" dimensiju"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "rāmja ģeometrija nenosaka dimensiju \"%s\" robežai \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Pogas samērs %g nav saprātīgs"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Rāmja ģeometrija nenosaka pogu izmēru"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Krāsu pārejās ir jābūt vismaz divām krāsām"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK krāsas specifikācijā ir jābūt stāvoklim iekavās, piem., gtk:fg[NORMAL], "
+"kur NORMAL ir stāvoklis; neizdevās parsēt \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK krāsas specifikācijā ir jābūt kvadrātiekavām pēc stāvokļa, piem., gtk:fg"
+"[NORMAL], kur NORMAL ir stāvoklis; neizdevās parsēt \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Nesaprotams stāvoklis \"%s\" krāsas specifikācijā"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Nesaprotams krāsas komponents \"%s\" krāsas specifikācijā"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Saplūšanas formāts ir \"blend/bg_color/fg_color/alpha\", \"%s\" neatbilst "
+"formātam"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Neizdevās parsēt alfa vērtību \"%s\" sapludinātajā krāsā"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alfa vērtība \"%s\" sapludinātajā krāsā nav starp 0.0 un 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Ēnošanas formāts ir \"shade/base_color/factor\", \"%s\" neatbilst formātam"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Neizdevās parsēt ēnas faktoru \"%s\" ēnotajā krāsā"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Ēnošanas faktors \"%s\" ēnotajā krāsā ir negatīvs"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Neizdevās parsēt krāsu \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Koordinātu izteiksme satur rakstzīmi '%s', kas nav atļauta"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "Koordinātu izteiksme satur neparsējamu peldošā punkta skaitli '%s'"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Koordinātu izteiksme satur neparsējamu veselu skaitli '%s'"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "Koordinātu izteiksme satur nezināmu operatoru šī teksta sākumā: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Koordinātu izteiksme bija tukša vai nesaprasta"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Koordinātu izteiksme noved pie dalīšanas ar nulli"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Koordinātu izteiksme mēģina lietot mod operatoru uz peldošā punkta skaitļa"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Koordinātu izteiksmei ir operators \"%s\", kur tika gaidīts operands"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Koordinātu izteiksmei bija operands, kur tika gaidīts operators"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Koordinātu izteiksme beidzās ar operatoru, nevis ar operandu"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Koordinātu izteiksmē ir operatoram \"%c\" sekojošais operators \"%c\" bez "
+"operanda to starpā"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Koordinātu izteiksmē bija nezināms mainīgais vai konstante \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Koordinātu izteiksme pārpildīja parsera buferi."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Koordinātu izteiksmei bija aizvērtās iekavas bez nevienas atvērtās iekavas"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Koordinātu izteiksmei bija atvērtās iekavas bez nevienas aizvērtās iekavas"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Šķiet, ka koordinātu izteiksmē nav ne operatoru, ne operandu"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Tēma saturēja izteiksmi, kas noveda pie kļūdas: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"jebkas\"/> jābūt noteiktam "
+"šajā rāmja stilā"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Iztrūkst <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"jebkas\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Neizdevās ielādēt tēmu \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nav iestatīts <%s> tēmai \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Nav rāmja stila kopas loga tipam \"%s\" tēmā \"%s\"; pievienojiet <window "
+"type="
+"\"%s\" style_set=\"jebkas\"/> elementu"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Lietotāja definētajām konstantēm jāsākas ar lielo burtu; \"%s\" nesākas"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstante \"%s\" jau tikusi definēta"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Nav \"%s\" atribūta elementam <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Rinda %d rakstzīme %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atribūts \"%s\" atkārtots divreiz vienam <%s> elementam"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atribūts \"%s\" ir nederīgs <%s> elementam šajā kontekstā"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Neizdevās parsēt \"%s\" kā veselu skaitli"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Nesaprotamas sekojošās rakstzīmes \"%s\" virknē \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Skaitlim %ld jābūt pozitīvam"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Skaitlis %ld ir pārāk liels, pašreizējais maksimums ir %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Neizdevās parsēt \"%s\" kā peldošā punkta skaitli"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Vērtībai jābūt \"true\" vai \"false\", nevis \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Leņķim jābūt starp 0.0 un 360.0, bija %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa jābūt starp 0.0 (neredzams) un 1.0 (pilnībā necaurredzams), bija %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Nederīgs virsraksta mērogs \"%s\" (var būt: xx-small,x-small,small,"
+"medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> vārds \"%s\" lietots otru reizi"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> vecāks \"%s\" nav ticis definēts"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> ģeometrija \"%s\" nav tikusi definēta"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> jānosaka vai nu ģeometrija, vai vecāks, kam ir ģeometrija"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Lai alfa vērtībai būtu jēga, jānorāda fons"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Nezināms tips \"%s\" <%s> elementam"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Nezināms style_set \"%s\" <%s> elementam"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Loga tipam \"%s\" jau ir piešķirta stila kopa"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Elements <%s> netiek atļauts zem <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Nevar noteikt gan \"button_width\"/\"button_height\", gan \"aspect_ratio\" "
+"pogām"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Attālums \"%s\" ir nezināms"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Samērs \"%s\" ir nezināms"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Robeža \"%s\" ir nezināma"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Nav \"start_angle\" vai \"from\" atribūta elementam <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Nav \"extent_angle\" vai \"to\" atribūta elementam <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Nesaprotama krāsu pārejas tipa vērtība \"%s\""
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Nesaprotams aizpildījuma tips \"%s\" <%s> elementam"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Nesaprotams stāvoklis \"%s\" elementam <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Nesaprotama ēna \"%s\" elementam <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Nesaprotama bulta \"%s\" elementam <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Neviens <draw_ops> ar nosaukumu \"%s\" nav ticis definēts"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Iekļaujot šeit draw_ops \"%s\", rastos riņķveida atsauce"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Nezināma pozīcija \"%s\" rāmja daļai"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Rāmja stilam jau ir daļa %s pozīcijā"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Neviens <draw_ops> ar nosaukumu \"%s\" nav ticis definēts"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Nezināma pogas funkcija \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Pogas funkcija \"%s\" neeksistē šajā versijā (%d, nepieciešama %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Nezināms pogas stāvoklis \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Rāmja stilam jau ir poga funkcijas %s stāvoklim %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" nav derīga vērtība fokusa atribūtam"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" nav derīga vērtība stāvokļa atribūtam"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Stils \"%s\" nav ticis definēts"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" nav derīga vērtība izmēra maiņas atribūtam"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Elementam <%s> nevajadzētu būt \"resize\" atribūtam maksimizētos/ēnotos "
+"stāvokļos"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Elementam <%s> nevajadzētu būt \"resize\" atribūtam maksimizētajos stāvokļos"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Stils jau ir ticis noteikts stāvokļa %s izmēra maiņas %s fokusam %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stils jau ir ticis noteikts stāvokļa %s fokusam %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nevar būt divi draw_ops <piece> elementam (tēma noteica draw_ops atribūtu un "
+"arī <draw_ops> elementu, vai noteica divus elementus)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nevar būt divi draw_ops <button> elementam (tēma noteica draw_ops atribūtu "
+"un arī <draw_ops> elementu, vai noteica divus elementus)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nevar būt divi draw_ops <menu_icon> elementam (tēma noteica draw_ops "
+"atribūtu un arī <draw_ops> elementu, vai noteica divus elementus)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Ārējam tēmas elementam jābūt <marco_theme>, nevis <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Elements <%s> netiek atļauts elementā name/author/date/description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Elements <%s> netiek atļauts elementā <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Elements <%s> netiek atļauts distance/border/aspect_ratio elementā"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Elements <%s> netiek atļauts zīmēšanas operāciju elementā"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Elements <%s> netiek atļauts elementā <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Nav dots draw_ops rāmja daļai"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Nav dots draw_ops pogai"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Teksts nav atļauts elementā <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> šai tēmai noteikts divreiz"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Neizdevās atrast derīgu faila nosaukumu tēmai %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Tēmas fails %s nesaturēja saknes <marco_theme> elementu"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Windows"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Windows/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Windows/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Windows/_Modal dialog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Windows/_Utility"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Splashscreen"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Windows/_Top dock"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Windows/_Bottom dock"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Windows/_Left dock"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Windows/_Right dock"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Windows/_All docks"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Windows/Des_ktop"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Šis ir paraugpaziņojums parauga dialogā"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Neīsts izvēlnes elements %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Logs tikai ar apmali"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Josla"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normāls lietotnes logs"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialoglodziņš"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modālais dialoglodziņš"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Utilītpalete"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Atrauta izvēlne"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Apmale"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Pogu izkārtojuma tests %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekundes, lai uzzīmētu loga rāmi"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Pielietojums: marco-theme-viewer [TĒMASNOSAUKUMS]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Kļūda, ielādējot tēmu: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tēma \"%s\" ielādēta \"%g\"sekundēs\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Normāls virsraksta fonts"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Mazs virsraksta fonts"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Liels virsraksta fonts"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Pogu izkārtojumi"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Etalonuzdevums"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Šeit paredzēts loga virsraksts"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Uzzīmēju %d kadrus %g klienta puses sekundēs (%g milisekundes uz kadru) un %"
+"g sekundēs pēc ierastā laika, ieskaitot X servera resursus (%g milisekundes "
+"uz kadru)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "pozīcijas izteiksmes tests atgrieza TRUE, bet ziņoja par kļūdu"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "pozīcijas izteiksmes tests atgrieza FALSE, bet nenorādīja kļūdu"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Tika gaidīta kļūda, taču tā netika dota"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Tika gaidīta kļūda %d, bet saņemta kļūda %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Kļūda netika gaidīta, taču tika saņemta: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x vērtība bija %d, tika gaidīta %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y vērtība bija %d, tika gaidīta %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d koordinātas izteiksme noparsēta %g sekundēs (vidēji %g sekundēs)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Atvērt vēl vienu no šiem logiem"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Šī ir demo poga ar 'atvērt' ikonu"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Šī ir demo poga ar 'aizvērt' ikonu"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Neizdevās parsēt ziņu \"%s\" no dialoga procesa\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Kļūda lasot no dialoga displeja procesa: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Kļūda palaižot marco-dialogu, lai pavaicātu par šīs aplikācijas "
+#~ "nokaušanu: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Kļūda palaižot marco-dialogu, lai paziņotu par aplikācijām, kas "
+#~ "neatbalsta sesijas pārvaldīšanu: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Nosaukums"
+
+#~ msgid "Class"
+#~ msgstr "Klase"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Atgadījās kļūda, darbinot \"%s\":\n"
+#~ "%s."
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> šai tēmai noteikts divreiz"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> šai tēmai noteikts divreiz"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> šai tēmai noteikts divreiz"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> šai tēmai noteikts divreiz"
diff --git a/po/mai.po b/po/mai.po
new file mode 100644
index 00000000..41932ef6
--- /dev/null
+++ b/po/mai.po
@@ -0,0 +1,2240 @@
+# translation of marco.master.po to Maithili
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Sangeeta Kumari <[email protected]>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.master\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2009-09-10 19:14+0000\n"
+"PO-Revision-Date: 2009-09-11 20:51+0530\n"
+"Last-Translator: Sangeeta Kumari <[email protected]>\n"
+"Language-Team: Maithili <maithili.sf.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n!=1);\n\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "डेस्कटाप"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "विंडो प्रबंधन"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr ""
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr ""
+
+#: ../src/core/delete.c:104
+#, c-format
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+
+#: ../src/core/delete.c:115
+msgid "_Wait"
+msgstr "प्रतीक्षा करू (_W)"
+
+#: ../src/core/delete.c:115
+msgid "_Force Quit"
+msgstr "जबर्दस्ती बाहर (_F)"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "होस्टनाम पाबैमे विफल: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr ""
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X विंडो तंत्र प्रदर्शक '%s' खोलबमे विफल\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"प्रदर्शक '%s' सँ कनेक्शन छूटि गेल ;\n"
+"बहुत संभावना अछि जे अथवा तँ एक्स सर्वर बन्न कए देल गेल अथवा अहाँ विंडो प्रबंधककेँ \n"
+"खत्म/समाप्त कए देने छी.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "गंभीर आईओ त्रुटि %d (%s), प्रदर्शक '%s' मे.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "कोनो आन प्रोग्राम पहिले सँ कुँजी %s उपयोगमे लए रहल अछि परिवर्धक %x बाइंडिंग क' रूपमे \n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "कोनो कमांड %d पारिभाषित नहि अछि.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "कोनो टर्मिनल कमांड पारिभाषित नहि अछि.\n"
+
+#: ../src/core/main.c:130
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+
+#: ../src/core/main.c:268
+msgid "Disable connection to session manager"
+msgstr "सत्र प्रबंधकसँ संपर्क रद करू"
+
+#: ../src/core/main.c:274
+msgid "Replace the running window manager with Marco"
+msgstr "मेटासिटी क' सात कार्यशील विंडो प्रबंधक बदलू"
+
+#: ../src/core/main.c:280
+msgid "Specify session management ID"
+msgstr "सत्र प्रबंधन आईडी निर्दिष्ट करू"
+
+#: ../src/core/main.c:285
+msgid "X Display to use"
+msgstr "प्रयोग क'लेल X प्रदर्शन"
+
+#: ../src/core/main.c:291
+msgid "Initialize session from savefile"
+msgstr "सहेजलफाइल क'लेल सत्र आरंभीकृत करू"
+
+#: ../src/core/main.c:297
+msgid "Print version"
+msgstr "मुद्रण संस्करण"
+
+#: ../src/core/main.c:303
+msgid "Make X calls synchronous"
+msgstr "X कालकेँ समतुल्यकालिक बनाबू"
+
+#: ../src/core/main.c:309
+msgid "Turn compositing on"
+msgstr ""
+
+#: ../src/core/main.c:315
+msgid "Turn compositing off"
+msgstr ""
+
+#: ../src/core/main.c:321
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+
+#: ../src/core/main.c:543
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "प्रसंग डिरेक्ट्री स्कैन करबमे विफल: %s\n"
+
+#: ../src/core/main.c:559
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "प्रसंग नहि खोजि सकल! सुनिश्चित करू जे %s मोजुद अछि आओर एहिमे सामान्य प्रसंग अछि.\n"
+
+#: ../src/core/main.c:618
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "पुनः प्रारंभ करबमे विफल: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "जी-कॉन्फ़ कुँजी '%s' एकटा अवैध प्रकार मे नियत अछि\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "जी-कॉन्फ़ कुँजी \"%s\" एकटा अवैध प्रकारमे नियत अछि\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"टूटल अनुप्रयोगक लेल वर्कअराउन्ड अक्षम कएल भेलहुँ अछि .भ' सकैत अछि किछु अनुप्रयोग उचित प्रकार "
+"व्यवहार नहि करै.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "फ़ॉन्ट विवरण \"%s\" क' व्याख्या जी-कॉन्फ़ कुँजी %s सँ नहि कए सकल\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "कॉन्फ़िगरेशन डाटाबेसमे प्राप्त \"%s\" माउस बटन मॉडीफ़ायर वैध मूल्य नहि अछि\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "कार्यस्थान सँख्या %d पर तय करब मे त्रुटि: %s भेल.\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "कार्यस्थान %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "कॉन्फ़िगरेशन डेटाबेसमे प्राप्त \"%s\" कीबाइंडिंग \"%s\" लेल वैध मूल्य नहि अछि\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "कार्यस्थान नाम %d केँ \"%s\" सँ मे बदलबमे त्रुटि: %s भेल\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr ""
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "स्क्रीन %d जे प्रदर्शक '%s' पर अछि ओ अवैध अछि\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"स्क्रीन %d जे प्रदर्शक \"%s\" पर अछि ओतए पहिलेसँ विंडो प्रबंधक अछि --replace विकल्प क' "
+"प्रयोग कए वर्तमान विंडो प्रबंधककेँ बदलबाक कोशिश करू.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "स्क्रीन %d प्रदर्शक \"%s\" पर विंडो प्रबंधक चयन प्राप्त नहि कए सकल\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "स्क्रीन %d जे प्रदर्शक \"%s\" पर अछि ओतए पहिलेसँ विंडो प्रबंधक अछि\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "स्क्रीन %d जे प्रदर्शक \"%s\" पर अछि केँ मुक्त नहि कए सकल\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+
+#: ../src/core/session.c:845 ../src/core/session.c:852
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "डायरेक्ट्री '%s' बनाए नहि सकल: %s\n"
+
+#: ../src/core/session.c:862
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "सत्र फ़ाइल '%s' लिखब लेल नहि खोलि सकल: %s\n"
+
+#: ../src/core/session.c:1003
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "स्त्र फ़ाइल लिखबमे त्रुटि '%s': %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "सत्र फ़ाइल बन्न करबमे त्रुटि '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1101
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "सहेजल गेल सत्र फ़ाइल %s पढ़बमे विफल: %s\n"
+
+#: ../src/core/session.c:1140
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "सहेजल गेल सत्र फ़ाइल: %s क' व्याख्या करबमे विफल\n"
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<मेटासिटी_सत्र> गुण देखलहुँ मुदा हमरा सँग पहिलेसँ सत्र आईडी अछि"
+
+#: ../src/core/session.c:1202 ../src/core/session.c:1277
+#: ../src/core/session.c:1309 ../src/core/session.c:1381
+#: ../src/core/session.c:1441
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr ""
+
+#: ../src/core/session.c:1219
+#, c-format
+msgid "nested <window> tag"
+msgstr "नेस्टेड <विंडो> टैग"
+
+#: ../src/core/session.c:1461
+#, c-format
+msgid "Unknown element %s"
+msgstr "अज्ञात तत्व %s"
+
+#: ../src/core/session.c:1812
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "डिबग लॉग: %s खोलबमे विफल\n"
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "लॉग फ़ाइल %s: fdopen() मे विफल %s\n"
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "लॉग फ़ाइल %s खोललक \n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "मेटासिटीकेँ वर्बोज विधि क' बगैर कम्पाइल कएल गेल अछि\n"
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "विंडो प्रबंधक:"
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr "विंडो प्रबंधकमे बग:"
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr "विंडो प्रबंधक चेतावनी"
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr "विंडो प्रबंधक त्रुटिः"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "मेटासिटी"
+
+#. first time through
+#: ../src/core/window.c:5627
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr "विंडो %s नियत करैत अछि SM_CLIENT_ID अपनासँ, बजाए WM_CLIENT_LEADER विंडो क' जहिना जे ICCCM मे उल्लेखित कएल गेल अछि.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6192
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"विंडो %s ने एकटा एमडबल्यूएम संकेत नियत कएलक ई देखबैत हुए जे ई आकार बदलब लायक नहि अछि "
+"परंतु न्यूनतम आकार नियत कएल %d x %d आओर अधिकतम आकार %d x %d; एकर कोनो खास अर्थ "
+"नहि निकलत.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "अनुप्रयोग ने नियत कएलक एकटा bogus _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s पर)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr ""
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr ""
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr ""
+
+#: ../src/core/window-props.c:1429
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "अवैध WM_TRANSIENT_FOR window 0x%lx %s क'लेल निर्दिष्ट.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"विंडो 0x%lx मे गुण %s अछि \n"
+"जकरामे वांछित अछि प्रकार %s फ़ॉर्मेट %d \n"
+"आओर वास्तवमे अछि प्रकार %s फ़ॉर्मेट %d एन_वस्तुसभ %d.\n"
+"एहि बात क' बेसी संभावना अछि जे ई एकटा अनुप्रयोग बग अछि विंडो प्रबंधक बग नहि.\n"
+"विंडो क' शीर्षक अछि=\"%s\" क्लास=\"%s\" नाम=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "गुण %s विंडो 0x%lx मे अवैध यूटीएफ़-8 अछि \n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "गुण %s विंडो 0x%lx पर %d वस्तुसभ लेल सूचीमे अवैध यूटीएफ़-8 अछि\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "कार्यस्थान 1 पर जाउ"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "कार्यस्थान 2 पर जाउ"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "कार्यस्थान 3 पर जाउ"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "कार्यस्थान 4 पर जाउ"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "कार्यस्थान 5 पर जाउ"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "कार्यस्थान 6 पर जाउ"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "कार्यस्थान 7 पर जाउ"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "कार्यस्थान 8 पर जाउ"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "कार्यस्थान 9 पर जाउ"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "कार्यस्थान 10 पर जाउ"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "कार्यस्थान 11 पर जाउ"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "कार्यस्थान 12 पर जाउ"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "तुरंत अनुप्रयोग क' विंडो क' बीच जाउ"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "विंडोज़ क' बीच तुरंत घसकाबू"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "पटल आओर डेस्कटाप क' बीच तुरंत घसकाबू"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "पटल आओर डेस्कटाप क' बीच तुरंत पाछाँ जाउ"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "स्क्रीनशॉट लिअ'"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "विंडो क' स्क्रीनशॉट लिअ'"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "एकटा टर्मिनल चलाबू"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "सौंसे स्क्रीन मोड टॉगल करू"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "अधिकतम स्थिति टॉगल करू"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "विंडो अधिकतम करू"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "आभायुक्त स्थिति टॉगल करू"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "विंडोकेँ न्यूनतम करू"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "विंडो बन्न करू"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "विंडो घसकाबू"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "विंडो क' आकार बदलू"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "विंडोकेँ कार्यस्थान 1 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "विंडोकेँ कार्यस्थान 2 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "विंडोकेँ कार्यस्थान 3 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "विंडोकेँ कार्यस्थान 4 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "विंडोकेँ कार्यस्थान 5 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "विंडोकेँ कार्यस्थान 6 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "विंडोकेँ कार्यस्थान 7 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "विंडोकेँ कार्यस्थान 8 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "विंडोकेँ कार्यस्थान 9 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "विंडोकेँ कार्यस्थान 10 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "विंडोकेँ कार्यस्थान 11 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "विंडोकेँ कार्यस्थान 12 पर लए जाउ"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "विंडो केँ एकटा कार्यस्थान बामाँ लाउ"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "विंडो केँ एकटा कार्यस्थान दायाँ लाउ"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "विंडो केँ एकटा कार्यस्थान उप्पर लाउ"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "विंडो केँ एकटा कार्यस्थान नीच्चाँ लाउ"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "दोसर विंडो पर विंडो बढ़ाबू"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "विंडोकेँ आन विंडो क' नीच्चाँ राखू"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "विंडो खड़ा अधिकतम करू"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "विंडो आड़ा अधिकतम करू"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(कार्यान्वित नहि) सँ चलन अनुप्रयोग क' अनुसार चलैत अछि विंडोज़ सँ नहि"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"एकटा फंट विवरण स्ट्रिंग विंडो शीर्षक पट्टी क'लेल फंट क' बेरमे बताएब रहल अछि विवरण सँ आकार "
+"प्रयुक्त हएताह जँ titlebar_font_size विकल्प 0 मे सेट कएल जाएत अछि, सँगे , ई विकल्प "
+"निष्क्रिय कएल जाएत अछि जँ titlebar_uses_desktop_font विकल्पकेँ सही पर सेट कएल "
+"जाएत अछि."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "शीर्षक पट्टीमे दोहरा-क्लिक करब पर क्रिया"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "शीर्षक-पट्टीमे बटन क' बिन्यास"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "फ़ोकस कएल विंडोकेँ स्वचालित उठाबू"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "कीबाइंडिंग क' प्रत्युत्तर मे चलाओल जाय बला कमांड"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "कंपोजिटिंग प्रबंधक"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "नियंत्रित करू जे कहिना नवीन विंडो फोकस पाबैत अछि"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "वर्तमान प्रसंग"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "आटो रेस विकल्प लेल मिलीसेकण्ड्समे देरी"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "निर्धारित करू जे Marco एकटा कंपोजिटिंग प्रबंधक अछि."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"निर्धारित करैत अछि जे की अनुप्रयोग अथवा तंत्र सुनब योग्य बीप पैदा कए सकैत अछि साइत "
+"दृष्टिगोच़र घँटी क' सँग उपयोग कएल जाय कए शांतिमय बीप स्वीकारू."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "मिसफीचर्स असमर्थ करू जे पुरान अथवा टूटल अनुप्रयोग द्वारा वांछित होत अछि"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "दृष्टिगोच़र घंटी सक्षम करू"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"जँ सही पर सेट कएल जाएत अछि, आओर फोकस मोड अथवा तँ \"स्लोपी\" अथवा \"माउस\" हुए तब "
+"फोकस कएल विंडो तब auto_raise_delay कुँजी सँ निर्दिष्ट विलंब सँ फोकस कएल विंडो उठाओल "
+"जएताह. ई विंडो पर क्लिक कएल जाय सँ संबंधित नहि अछि नहि तँ घीँचू आ छोड़ू पर दाखिल भ' कए."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"जँ सही अछि शीर्षक पट्टी फ़ॉन्ट विकल्प क' अनदेखा करू आओर विंडो शीर्षक लेल मानक अनुप्रयोग "
+"फ़ॉन्ट क' प्रयोग करू"
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"जँ सही अछि मेटासिटि प्रयोक्ताकेँ कम फीडबेक आओर सीधा हस्तक्षेप क' कम सेंस देताह, "
+"वायरफ्रेम, एनीमेशन अनदेखा करैत , अथवा आन साधन. ई महत्वपूर्ण कमी अछि कइ प्रयोक्ता क' "
+"प्रयोगमे, मुदा कइ पुरातन अनुप्रयोग आ टर्मिनल सर्वर क' अनुमति देत अछि जे ओ कखन ऑन छल रूप "
+"सँ अप्रायोगिक हाएत. हालांकि, वायरफ्रेम फीचरकेँ निष्क्रिय कएल जाएत अछि जखन पहुँच वीयर्ड "
+"डेस्कटॉप खंडनकेँ अनदेखा करब क'लेल हुए."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"जँ सही अछि तँ मेटासिटी विंडो क' बजाए अनुप्रयोग जहिना कार्य करताह. परिकल्पना कनी संक्षिप्त "
+"अछि परंतु आमतौर पर अनुप्रयोग आधारित सेटअप मैक जहिना बेसी हएताह विंडोज़ क' तरहेँ कम. जँ अहाँ "
+"कोनो विंडोकेँ अनुप्रयोग आधारित मोड पर फ़ोकस करब तँ अनुप्रयोगमे क' सबहि विंडो उप्पर भ'"
+"जएताह. ई जे अनुप्रयोग आधारित मोडमे फ़ोकस क्लिक आन अनुप्रयोग क' विंडोसँ भ'कए नहि "
+"जाएत. अनुप्रयोग आधारित मोड विस्तृत रूपसँ एहि समय कार्यान्वित नहि अछि."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "जँ सही अछि उपयोगिताकेँ कम साधन उपयोग क' सँग बदलू"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "विंडो क्लिक क्रिया परिवर्तन लेल उपयोगमे परिवर्धक"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "कार्यस्थान क' नाम"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "कार्यस्थानक सँख्या "
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"कार्यस्थानक सँख्या . ई शून्य सँ बेसी होनाइ चाही आओर एकरा एकटा अधिकतम पर निर्धारित कएनाइ "
+"चाही बेसी कार्यस्थान क' माँग करब पर अहाँक डेस्कटापकेँ दुर्धटनावश नष्ट हए सँ बचाबै क' लेल."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "पारिभाषित कमांड चलाबू"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"किछु अनुप्रयोग विशेषताकेँ महत्व नहि देत अछि जे विंडो प्रबंधक मिसफीचरमे परिणाम आनैत अछि"
+"ई विकल्प Marco केँ काफी सही मोडमे राखैत अछि जे बेसी संगत प्रयोक्ता अंतरफलक "
+"देत अछि जँ कोनो गलत अनुप्रयोग नहि चलाए रहल अछि."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "सिस्टम घंटी सुनब योग्य अछि"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"मेटासिटीकेँ बतबैत अछि जे कहिना दृश्य संकेत काममे लेल जाय जे तंत्र घंटी अथवा आन अनुप्रयोग "
+"घंटी बजओनाइ अछि वर्तमानमे दुइ मान्य मूल्य अछि, \"सौंसे स्क्रीन\", जे फुलस्क्रीन करिया-उज्जर फ्लेश "
+"करैत अछि आओर \"फ्रेम-फ्लैश\" जे संबंधित अनुप्रयोग क' टाइटलबारकेँ फ्लेश करब लेल संकेत करैत "
+"अछि, जकरा घंटी संकेत भेजैत अछि जँ अनुप्रयोग जकरा घंटी संकेत भेजने अछि अज्ञात अछि तँ (जहिना जे "
+"आमतौर पर डिफ़ॉल्ट \"तंत्र बीप\" मे हाएत अछि), वर्तमान फ़ोकस विंडो क' शीर्षक पट्टी फ्लैश "
+"करताह. "
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"कुंजिसभ /apps/marco/global_keybindings/run_command_N इन कमांड क' तदनुरूप "
+"कीबाइंडिंग पारिभाषित करैत अछि. run_command_N क' कीबाइंडिंग दाबै पर ई command_N "
+"केँ चलाएत. "
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"कुँजी /apps/marco/global_keybindings/run_command_screenshot ओ कीबाइंडिंग "
+"पारिभाषित करैत अछि जे एहि बिन्यास सँ उल्लेखित कमांडकेँ प्रारंभ करैत अछि."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"कुँजी /apps/marco/global_keybindings/run_command_window_screenshot ओ "
+"कीबाइंडिंग पारिभाषित करैत अछि जे एहि बिन्यास सँ उल्लेखित कमांडकेँ प्रारंभ करैत अछि."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"कीबाइंडिंग जे /apps/marco/keybinding_commands क' तदनुरूप नम्बर बला कमांडकेँ "
+"चलबैत अछि. फ़ॉर्मेट एहि तरहेँ देखाइ पड़त \"&lt;Control&gt;a\" अथवा \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. ई पारसर पूरी तरहेँ लिबरल अछि आओर पैघ अथवा छोट अक्षर दुनू स्वीकार करैत अछि, "
+"आओर संक्षिप्ताक्षरो जहिना- \"&lt;Ctl&gt;\" आओर \"&lt;Ctrl&gt;\". जँ अहाँ विकल्प "
+"विशेष स्ट्रिंगमे तय केने छी \"disabled\", तब ओतए एहि क्रिया लेल कोनो कीबाइंडिंग नहि "
+"हाएत."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "कार्यस्थान क' नाम"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "स्क्रीन-शाट कमांड "
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "प्रसंग, विंडो किनार, शीर्षक पट्टी आदि क' रँग-रूपकेँ निर्धारित करैत अछि."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"जँ auto_raise सही पर नियत अछि तँ विंडो उप्पर उठाबै सँ पहिले विलम्ब समय. ई विलम्ब "
+"सकेण्ड क' हजारवाँ हिस्सामे देल जाएत अछि."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"विंडो फ़ोकस मोड जे संकेत करैत अछि जे विंडोज़ कहिना सक्रिय हुए. एकरा तीन संभावित मूल्य अछि, क्लिक "
+"\"क्लिक\" मतलब विंडो केँ फ़ोकस करब लेल ओकरा क्लिक कएनाइ हाएत, \"स्लॉपी\" मतलब विंडो तब "
+"फ़ोकस हाएत जखन माउस विंडोमे प्रवेश करताह, आओर \"माउस\" मतलब विंडो तब फ़ोकस हाएत जखन "
+"माउस विंडोमे प्रवेश करताह आओर फ़ोकस सँ बाहर हाएत जखन माउस विंडो सँ बाहर हाएत."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "विंडो स्क्रीन-शॉट कमांड "
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"ई विकल्प अतिरिक्त नियंत्रण देत अछि जे कहिना नवीन बनाओल विंडो फोकस पाबैत अछि एकर दुइ "
+"संभावित मान अछि; \"smart\" प्रयोक्ता क' सामान्य फोकस मोड पर लागू हाएत अछि आओर \"strict"
+"\" एहन विंडो क' रूपमे आबैत अछि जे टर्मिनल सँ फोकस नहि कएल गेल रूपमे आबैत अछि."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"दृश्य संकेत चालू कएनाइ जखन कोनो अनुप्रयोग अथवा तंत्र घंटी अथवा बीप जारी करैत छी तँ, शोरयुक्त "
+"वातावरण- जतए सुनबमे कठिनाइ हुए अथवा उंच सुनब बला क'लेल उपयोगी हाएत अछि."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "विंडो शीर्षकसभमे मानक तंत्र फ़ॉन्ट प्रयोग करू"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "दृष्टिगोच़र घंटी प्रकार"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "आन प्रयोक्ता अंतःक्रिया क' प्रभावकेँ की उठाओल जएनाइ चाही"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "विंडो फ़ोकस मोड"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "विंडो शीर्षक फ़ॉन्ट"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "उपयोग: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "विंडो बन्न करू"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "विंडो मेन्यू"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "विंडो न्यूनतम करू"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "विंडो अधिकतम करू"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "रिस्टोर विन्डो"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "विंडो रॉल अप करू"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "विंडो खोलू"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "विंडोकेँ सबसँ उप्पर राखू"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "उप्पर सँ विंडो हटाबू"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "हरदम दृश्य कार्यस्थान पर"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "सिर्फ एकटा कार्यस्थान पर विंडो राखू"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "न्यूनतम (_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "पैघ करू (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "पैघ सँ छोट करू (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "उप्पर समेटू (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "फिनु खोलू (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "घसकाबू (_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "आकार बदलू (_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "ऑनस्क्रीन शीर्षकबार घसकाबू (_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "हरदम शीर्ष पर (_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "हरदम दृश्य कार्यस्थान पर (_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "केवल एहि कार्यस्थान पर (_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "बामाँ कार्यस्थानमे लए जाउ (_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "दहिन्ना कार्यस्थानमे लए जाउ (_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "उप्परी कार्यस्थानमे लए जाउ (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "नीच्चा कार्यस्थानमे लए जाउ (_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "बन्न करू (_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr ""
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "कार्यस्थान 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "कार्यस्थान %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "दोसर कार्यस्थानमे लए जाउ (_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "मेटा"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "सुपर"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "हाइपर"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "परि.2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "परि.3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "परि.4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "परि.5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "उप्पर"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "नीच्चाँ"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "बायाँ"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "दहिन्ना"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "फ्रेम ज्यामिती \"%s\" आयाम केँ उल्लेखित नहि करत"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "फ्रेम ज्यामिती आयाम \"%s\" केँ किनार \"%s\" लेल उल्लेखित नहि करत"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "बटन आस्पेक्ट रेशो %g यथोचित नहि अछि"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "फ्रेम ज्यामिती बटनसभ क' आकारकेँ उल्लेखित नहि करत"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "अनुपातमे कम सँ कम दुइ रँग हए चाही"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"जीटीके रँग लक्षण कोष्ठकमे स्थिति (स्टेट) हए चाही जहिना- gtk:fg[NORMAL] एतय NORMAL "
+"स्थिति अछि \"%s\" क' व्याख्या नहि कए सकल"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"जीटीके रँग लक्षण स्थिति क' बाद बन्न कोष्ठकमे हए चाही. जहिना- gtk:fg[NORMAL] एतय "
+"NORMAL स्थिति अछि \"%s\" क' व्याख्या नहि कए सकल"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "स्थिति \"%s\" रँग लक्षणमे समझ नहि सकल"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "रंग अवयव \"%s\" रँग लक्षणमे समझ नहि सकल"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"ब्लेंड फ़ॉर्मेट अछि \"blend/bg_color/fg_color/alpha\", \"%s\" जे फ़ॉर्मेट क' अनुरूप नहि "
+"हाएत"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "अल्फा मूल्य \"%s\" क' ब्लेंडेड रँगमे व्याख्या नहि कए सकल"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "अल्फा मूल्य \"%s\" ब्लेंडेड रँगमे 0.0 आओर 1.0 क' बीच नहि अछि"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "शेड फॉर्मेट अछि \"shade/base_color/factor\", \"%s\" जे फॉर्मेट क' अनुरूप नहि हाएत"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "शेड फैक्टर \"%s\" क' आभायुक्त रँगमे व्याख्या नहि कए सकल"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "शेड फैक्टर \"%s\" आभायुक्त रँगमे ऋणात्मक अछि"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "\"%s\" रँगक व्याख्या नहि कए सकल"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "कोआर्डिनेट एक्सप्रेशनमे अक्षर '%s' अछि जे स्वीकार्य नहि अछि"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "कोआर्डिनेट एक्सप्रेशनमे फ्लोटिंग प्वाइंट नम्बर '%s' अछि जकर व्याख्या नहि कएल जाय सकल"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "कोआर्डिनेट एक्सप्रेशनमे पूर्णांक '%s' अछि जकर व्याख्या नहि कएल जाय सकल"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "कोआर्डिनेट एक्सप्रेशनमे एहि पाठ: \"%s\" क' आरंभमे अज्ञात आपरेटर अछि"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "कोआर्डिनेट एक्सप्रेशन अथवा खाली अछि अथवा समझल नहि जाय सकल"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "कोआर्डिनेट एक्सप्रेशन परिणाम शून्य सँ भाजक क' रूपेँ भेटल"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "कोआर्डिनेट एक्सप्रेशन, फ्लोटिंग पाइंट नम्बर पर माड आपरेटर क' उपयोगक कोशिशमे"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "कोआर्डिनेट एक्सप्रेशनमे एकटा आपरेटर \"%s\" अछि जखनकि आपरेंड वांछित अछि"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "कोआर्डिनेट एक्सप्रेशनमे एकटा आपरेंड अछि जखनकि आपरेटर वांछित अछि"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "कोआर्डिनेट एक्सप्रेशन एकटा आपरेटर सँ अंत भ' रहल अछि एकटा आपरेंड क' बदलामे"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "कोआर्डिनेट एक्सप्रेशनमे आपरेटर \"%c\" क' बाद आपरेटर \"%c\" अछि बीचमे कोनो आपरेण्ड नहि अछि"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "कोआर्डिनेट एक्सप्रेशनमे अज्ञात चर अथवा अचर \"%s\" अछि"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "कोआर्डिनेट एक्सप्रेशन विश्लेषक एकर बफरकेँ ओवरफ्लो कए गेल अछि."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "कोआर्डिनेट एक्सप्रेशनमे बन्न लघुकोष्ठक अछि जकरामे कोनो खुलल कोष्ठक नहि अछि"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "कोआर्डिनेट एक्सप्रेशनमे खुलल लघुकोष्ठक अछि जकरामे कोनो बन्न कोष्ठक नहि अछि"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "प्रतीत हाएत अछि जे कोआर्डिनेट एक्सप्रेशनमे कोनो आपरेटर अथवा आपरेंड नहि अछि"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> एहि फ्रेम शैली लेल "
+"निर्दिष्ट कएल जएनाइ अनिवार्य अछि"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "नहि अछि <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "प्रसंग \"%s\" लोड करबमे विफल: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "कोनो <%s> सेट प्रसंग \"%s\" लेल नहि अछि"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"विंडो प्रकार \"%s\" मे प्रसंग \"%s\" मे कोनो फ्रेम स्टाइल नियत नहि अछि जोड़ू <window "
+"type=\"%s\" style_set=\"whatever\"/> तत्व "
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"प्रयोक्ता द्वारा पारिभाषित स्थिरांक पैघ अक्षर सँ शुरू हए चाही, जे \"%s\" नहि भ' "
+"रहल अछि"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "स्थिरांक \"%s\" पहिलेसँ पारिभाषित अछि"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "कोनो \"%s\" गुण तत्व पर नहि अछि <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "पंक्ति %d अक्षर %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "गुण \"%s\" दुइ बेर इएह <%s> तत्व पर दोहराएल गेल"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "गुण \"%s\", <%s> तत्व ई संदर्भमे अवैध अछि "
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" केँ पूर्णांक क' तरहेँ व्याख्या नहि कए सकल"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "पुछल्ला अक्षर \"%s\" केँ स्ट्रिँग \"%s\" मे समझ नहि सकल"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "पूर्णांक %ld धनात्मक होनाइ चाही"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "पूर्णांक %ld बहुत पैघ अछि वर्तमान अधिकतम अछि %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\" क' फ्लोटिंग पाइंट सँख्याक तरहेँ व्याख्या नहि कए सकल"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "बूलियन मूल्य हए चाही - \"सही\" अथवा \"गलत\" नहि जे \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "कोण 0.0 आओर 360.0, क' बीच होनाइ चाही, जे छला %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "अल्फा 0.0 (अदृश्य) आओर 1.0 (पूर्ण अपारदर्शी), क' बीच होनाइ चाही, जे छला %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"अवैध शीर्षक स्केल \"%s\" (एकरामे सँ एकटा होनाइ चाहीः xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> नाम \"%s\" दोसर बार उपयोगमे"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> मूल \"%s\" परिभाषित नहि अछि."
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s>ज्यामिती \"%s\" परिभाषित नहि अछि."
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> केँ अथवा तँ ज्यामिती अथवा मूल जकरामे ज्यामिती हुए, केँ निर्दिष्ट करै हाएत"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "अहाँ अल्फा मान क' लेल अर्थपूर्ण हए क' लेल जरूर पृष्ठभूमि निर्दिष्ट करू"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "अज्ञात प्रकार \"%s\" तत्व <%s> पर नहि "
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "अज्ञात स्टाइल-सेट \"%s\" तत्व <%s> पर नहि "
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "विंडो प्रकार \"%s\" केँ पहिले एकटा स्टाइल सेट आबंटित अछि"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "तत्व <%s>, <%s>सँ नीच्चाँ स्वीकार्य नहि अछि"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "दूरी \"%s\" अज्ञात अछि"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "आकृति अनुपात \"%s\" अज्ञात अछि"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "किनार \"%s\" अज्ञात अछि"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "कोनो \"start_angle\" अथवा \"from\" गुण तत्व <%s> पर नहि "
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "कोनो \"extent_angle\" अथवा \"to\" गुण तत्व <%s> पर नहि "
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "ग्रेडिएंट प्रकार लेल मान \"%s\" समझ नहि पाया"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "तत्व <%s> लेल भराव प्रकार \"%s\" समझ नहि पाया"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "तत्व <%s> लेल स्थिति \"%s\" समझि नहि सकल"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "तत्व <%s> लेल छाया \"%s\" समझि नहि सकल"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "तत्व <%s> लेल एरो \"%s\" समझ नहि पाया"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "कोनो <draw_ops> \"%s\" नाम सँ परिभाषित नहि अछि"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "draw_ops एतय: \"%s\" जोड़बसँ सर्कुलर रेफरेंस बनि जएताह"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "अज्ञात स्थिति \"%s\" फ्रेम पीस लेल"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "स्थिति %s पर फ्रेम शैली क' सँग पहिले एकटा पीस अछि"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "कोनो <draw_ops> नाम \"%s\" क' सँग परिभाषित नहि अछि"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "अज्ञात फंक्शन बटन \"%s\" लेल"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "बटन फंक्शन \"%s\" एहि संस्करण (%d, need %d) मे मोजुद नहि अछि"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "अज्ञात स्थिति बटन \"%s\" लेल"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "फंक्शन %s स्थिति %s लेल फ्रेम शैलीमे पहिले एकटा बटन अछि"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" फ़ोकस गुण लेल वैध मूल्य नहि अछि"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" स्थिति गुण लेल वैध मूल्य नहि अछि"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "शैली \"%s\" परिभाषित नहि अछि"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" नवीन आकार गुण लेल वैध मूल्य नहि अछि"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "\"नवीन-आकार\" गुण <%s> तत्व पर अधिकतम/आभायुक्त स्थिति लेल नहि अछि"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "\"resize\" गुणकेँ अधिकतम स्थिति क' लेल <%s> तत्व पर नहि राखनाइ चाही"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "शैली पहिलेसँ स्थिति %s नवीन-आकार %s फ़ोकस %s लेल निर्दिष्ट अछि"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "शैली पहिलेसँ स्थिति %s फ़ोकस %s लेल निर्दिष्ट अछि"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"दुइ draw_ops नहि भ' सकत. एकटा <पीस> तत्व लेल (प्रसंग बटन कएल एकटा draw_ops एट्रिब्यूट "
+"आओर एकटा आओर <draw_ops> तत्व, अथवा बटन कएल दुइ तत्व )"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"दुइ draw_ops नहि भ' सकत एकटा <बटन> तत्व लेल (प्रसंग निर्दिष्ट कएल एकटा draw_ops "
+"एट्रिब्यूट आओर एकटा आओर <draw_ops> तत्व, अथवा निर्दिष्ट कएल दुइ तत्व)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"दुइ draw_ops नहि भ' सकत एकटा < मेनू -चिह्न> तत्व लेल (प्रसंग "
+"निर्दिष्ट कएल एकटा draw_ops "
+"एट्रिब्यूट आओर एकटा आओर <draw_ops> तत्व, अथवा निर्दिष्ट कएल दुइ तत्व)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "प्रसंग क' सबसँ बाहरी तत्व <मेटासिटी-प्रसंग> होनाइ चाही नहि जे <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "तत्व <%s>, एकटा name/author/date/description तत्व क' भीतर स्वीकार्य नहि अछि"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "तत्व <%s> <स्थिरांक> तत्व क' भीतर स्वीकार्य नहि अछि"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "तत्व <%s>, distance/border/aspect_ratio तत्व क' भीतर स्वीकार्य नहि अछि"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "तत्व <%s>, ड्रा ऑपरेशन तत्व क' भीतर स्वीकार्य नहि अछि"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "तत्व <%s>, एकटा <%s> तत्व क' अंदर स्वीकार नहि अछि"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "फ्रेम पीस लेल कोनो draw_ops नहि देल गेल अछि"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "बटन लेल कोनो draw_ops नहि देल गेल अछि"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "कोनो पाठ तत्व <%s> क' अंदर स्वीकार नहि अछि"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "%s थीम क' लेल वैध फाइल पाबैमे विफल\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "प्रसंग फ़ाइल %s मे रूट <मेटासिटी-प्रसंग> तत्व सम्मिलित नहि अछि"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/विंडोज़ (_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/विंडोज़/टीयरऑफ़"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/विंडोज़/संवाद (_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/विंडोज़/मॉडल समाद (_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/विंडोज़/यूटिलिटी (_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/विंडोज़/स्प्लैशस्क्रीन (_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/विंडोज़/शीर्ष डॉक (_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/विंडोज़/निचलका डॉक (_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/विंडोज़/बायाँ डॉक (_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/विंडोज़/दायाँ डॉक (_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/विंडोज़/सबहि डॉक्स (_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/विंडोज़/डेस्कटॉप (_k)"
+
+#: ../src/ui/theme-viewer.c:136
+msgid "Open another one of these windows"
+msgstr "एकरामेसँ एकटा आन विंडो खोलू"
+
+#: ../src/ui/theme-viewer.c:143
+msgid "This is a demo button with an 'open' icon"
+msgstr "ई 'खोलू' चिह्न युक्त एकटा डेमो बटन अछि"
+
+#: ../src/ui/theme-viewer.c:150
+msgid "This is a demo button with a 'quit' icon"
+msgstr "ई एकटा डेमो बटन अछि 'बाहर' चिह्न क' सँग"
+
+#: ../src/ui/theme-viewer.c:243
+msgid "This is a sample message in a sample dialog"
+msgstr "ई नमूना समाद मे नमूना संदेश छल"
+
+#: ../src/ui/theme-viewer.c:326
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "नकली मेनू वस्तु %d\n"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Border-only window"
+msgstr "सिर्फ-किनार विंडो"
+
+#: ../src/ui/theme-viewer.c:362
+msgid "Bar"
+msgstr "पट्टी"
+
+#: ../src/ui/theme-viewer.c:379
+msgid "Normal Application Window"
+msgstr "सामान्य अनुप्रयोग विंडो"
+
+#: ../src/ui/theme-viewer.c:383
+msgid "Dialog Box"
+msgstr "संवाद बक्सा"
+
+#: ../src/ui/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "मॉडल समाद बक्सा"
+
+#: ../src/ui/theme-viewer.c:391
+msgid "Utility Palette"
+msgstr "यूटिलिटी पट्टिका"
+
+#: ../src/ui/theme-viewer.c:395
+msgid "Torn-off Menu"
+msgstr "टॉर्न-ऑफ मेनू"
+
+#: ../src/ui/theme-viewer.c:399
+msgid "Border"
+msgstr "किनार"
+
+#: ../src/ui/theme-viewer.c:727
+#, c-format
+msgid "Button layout test %d"
+msgstr "बटन लेऑउट जाँच %d"
+
+#: ../src/ui/theme-viewer.c:756
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g मिलीसेकण्ड एकटा विंडो फ्रेम ड्रॉ करबमे"
+
+#: ../src/ui/theme-viewer.c:799
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "उपयोग: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:806
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "प्रसंग लोड करबमे त्रुटि: %s\n"
+
+#: ../src/ui/theme-viewer.c:812
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "प्रसंग \"%s\" लोड कएल %g सेकण्ड्समे\n"
+
+#: ../src/ui/theme-viewer.c:853
+msgid "Normal Title Font"
+msgstr "सामान्य शीर्षक फ़ॉन्ट"
+
+#: ../src/ui/theme-viewer.c:859
+msgid "Small Title Font"
+msgstr "छोट शीर्षक फ़ॉन्ट"
+
+#: ../src/ui/theme-viewer.c:865
+msgid "Large Title Font"
+msgstr "पैघ शीर्षक फ़ॉन्ट"
+
+#: ../src/ui/theme-viewer.c:870
+msgid "Button Layouts"
+msgstr "बटन लेऑउट"
+
+#: ../src/ui/theme-viewer.c:875
+msgid "Benchmark"
+msgstr "बेंचमार्क"
+
+#: ../src/ui/theme-viewer.c:922
+msgid "Window Title Goes Here"
+msgstr "विंडो शीर्षक एतय जएताह"
+
+#: ../src/ui/theme-viewer.c:1026
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d frames केँ %g क्लाइंट पक्ष सेकेंडमे घीँचलक (%g milliseconds per frame) आओर %g X "
+"सर्वर संसाधनकेँ समाहित करैत सेकेंड देबार घड़ी (%g विविध प्रति फ्रेम)\n"
+
+#: ../src/ui/theme-viewer.c:1245
+msgid "position expression test returned TRUE but set error"
+msgstr "स्थिति एक्सप्रेशन जाँच ने सही लौटाबलक परंतु त्रुटि नियत नहि कएल"
+
+#: ../src/ui/theme-viewer.c:1247
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "स्थिति एक्सप्रेशन जाँच ने ग़लत लौटाबलक परंतु त्रुटि नियत नहि कएल"
+
+#: ../src/ui/theme-viewer.c:1251
+msgid "Error was expected but none given"
+msgstr "त्रुटि प्रत्याशित छल. परन्तु देल नहि गेल"
+
+#: ../src/ui/theme-viewer.c:1253
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "त्रुटि %d वांछित छल परन्तु %d देल गेल "
+
+#: ../src/ui/theme-viewer.c:1259
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "त्रुटि क' प्रत्याशा नहि छल परन्तु एकटा लौटाबल गेल : %s"
+
+#: ../src/ui/theme-viewer.c:1263
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "एक्स मूल्य छल %d, %d वांछित छल"
+
+#: ../src/ui/theme-viewer.c:1266
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "वाई मूल्य छल %d, %d वांछित छल"
+
+#: ../src/ui/theme-viewer.c:1331
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d निर्देशांक एक्सप्रेशन्स पार्स कएल %g सेकण्ड्समे (औसतन %g सेकण्ड्स)\n"
+
diff --git a/po/mg.po b/po/mg.po
new file mode 100644
index 00000000..89dfa488
--- /dev/null
+++ b/po/mg.po
@@ -0,0 +1,3484 @@
+# translation of MARCO.
+# Copyright (C) 2006 THE MARCO'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the MARCO package.
+# Fano Rajaonarisoa <[email protected]>, 2006.
+# Thierry Randrianiriana <[email protected]>, 2006.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: MARCO\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2006-06-19 07:14+0200\n"
+"PO-Revision-Date: 2006-06-29 22:27+0300\n"
+"Last-Translator: Fano Rajaonarisoa <[email protected]>\n"
+"Language-Team: Malagasy <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Fampiasa: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:131
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+"Tsy navadika niaraka tamin'ny fandraisana an-tànana ny fomba be resaka ny "
+"Marco\n"
+
+#: ../src/delete.c:64 ../src/delete.c:91 ../src/marco-dialog.c:71
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Tsy afaka nizarazara ny \"%s\" amin'ny maha isa feno azy"
+
+#: ../src/delete.c:71 ../src/delete.c:98 ../src/marco-dialog.c:78
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Tsy mazava ireo marika faramparany \"%s\" ao amin'ny laha-daza \"%s\""
+
+#: ../src/delete.c:129
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Tsy afaka nizarazara ny filazana \"%s\" avy amin'ny fifanakalozana\n"
+
+#: ../src/delete.c:264
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr ""
+"Nisy olana teo am-pamakiana ny fizotran'ny sehon'ny fifanakalozana: %s\n"
+
+#: ../src/delete.c:345
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Tsy nety ny fandefasana ny marco-dialog hangatahana azy hamono rindranasa "
+"iray: %s\n"
+
+#: ../src/delete.c:453
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Tsy nahazo anaram-pampiantrano: %s\n"
+
+#: ../src/display.c:344
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Tsy afaka nanokatra ny sehon'ny ny rafitra Window X '%s'\n"
+
+#: ../src/errors.c:269
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Tapaka ny fifandraisana tamin'ny seho '%s'.\n"
+"Tena mety najanona angamba ny mpizara X na novonoinao/nosimbanao\n"
+"ny mpandrindra fikandrana;\n"
+
+#: ../src/errors.c:276
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Tsy fetezana IO miterapahavoazana %d (%s) amin'ny seho '%s'.\n"
+
+#: ../src/frames.c:1086
+msgid "Close Window"
+msgstr "Hidio ilay fikandrana"
+
+#: ../src/frames.c:1089
+msgid "Window Menu"
+msgstr "Tolotry ny fikandrana"
+
+#: ../src/frames.c:1092
+msgid "Minimize Window"
+msgstr "Akelezo ilay fikandrana"
+
+#: ../src/frames.c:1095
+msgid "Maximize Window"
+msgstr "Alehibiazo ilay fikandrana"
+
+#: ../src/frames.c:1098
+msgid "Unmaximize Window"
+msgstr "Ahenao habe ilay fikandrana"
+
+#: ../src/keybindings.c:1021
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Misy rindranasa sasany efa mampiasa ny famaha %s miaraka amin'ny mpanova %x "
+"atao binding\n"
+
+#: ../src/keybindings.c:2588
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+"Tsy nety ny fandefasana ny marco-dialog hanontana tsy fetezana amina "
+"baiko iray: %s\n"
+
+#: ../src/keybindings.c:2693
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Tsy mbola nisy baiko %d nofaritana.\n"
+
+#: ../src/keybindings.c:3559
+msgid "No terminal command has been defined.\n"
+msgstr "Tsy mbola nisy baikon'ny terminal nofaritana.\n"
+
+#: ../src/main.c:65
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., sy ireo hafa\n"
+"Rindranasa maimaimpoana izy ity. Jereo ny loharano ahitana ireo fepetra "
+"mifehy ny fandikana.\n"
+"TSY MISY fiantohana izy ity, na dia ny fiantohana ny FAHALAVORARIANY HO "
+"AN'NY VAROTRA na ny FETEZANY ANAOVANA ZAVATRA aza.\n"
+
+#: ../src/main.c:169
+msgid "Disable connection to session manager"
+msgstr "Atsaharo ny fifandraisana amin'ny mpandrindra session"
+
+#: ../src/main.c:175
+msgid "Replace the running window manager with Marco"
+msgstr "Soloy an'ny Marco ny mpandrindra fikandrana miasa"
+
+#: ../src/main.c:181
+msgid "Specify session management ID"
+msgstr "Farito ny ID'ny fandrindrana session"
+
+#: ../src/main.c:186
+msgid "X Display to use"
+msgstr "Ny seho X hampiasaina"
+
+#: ../src/main.c:192
+msgid "Initialize session from savefile"
+msgstr "Atomboy avy amin'ny savefile ny session"
+
+#: ../src/main.c:198
+msgid "Print version"
+msgstr "Karazana natonta"
+
+#: ../src/main.c:350
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Tsy afaka nizaha ny lahatahirin'ny endrika: %s\n"
+
+#: ../src/main.c:366
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr ""
+"Tsy nahita endrika! Amarino tsara hoe misy ny %s ary misy ireo endrika "
+"mahazatra."
+
+#: ../src/main.c:424
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Tsy afaka miverina mandeha: %s\n"
+
+#: ../src/menu.c:55
+msgid "Mi_nimize"
+msgstr "A_kelezo"
+
+#: ../src/menu.c:56
+msgid "Ma_ximize"
+msgstr "A_lehibiazo"
+
+#: ../src/menu.c:57
+msgid "Unma_ximize"
+msgstr "_Aza alehibiazina"
+
+#: ../src/menu.c:58
+msgid "Roll _Up"
+msgstr "sA_kombony"
+
+#: ../src/menu.c:59
+msgid "_Unroll"
+msgstr "_Velaro"
+
+#: ../src/menu.c:60 ../src/menu.c:61
+msgid "On _Top"
+msgstr "_Ambony"
+
+#: ../src/menu.c:62
+msgid "_Move"
+msgstr "_Afindra"
+
+#: ../src/menu.c:63
+msgid "_Resize"
+msgstr "_Ovay habe"
+
+#: ../src/menu.c:64
+#, fuzzy
+msgid "Move Titlebar On_screen"
+msgstr "Afindrao eo amin'ny _efijery ny anjan'ny lohateny"
+
+#. separator
+#: ../src/menu.c:66
+msgid "_Close"
+msgstr "_Hidio"
+
+#. separator
+#: ../src/menu.c:68
+msgid "_Always on Visible Workspace"
+msgstr "_Amin'ny workspace miseho foana"
+
+#: ../src/menu.c:69
+msgid "_Only on This Workspace"
+msgstr "_Amin'ity workspace ity ihany"
+
+#: ../src/menu.c:70
+msgid "Move to Workspace _Left"
+msgstr "Afindrao eo amin'ny workspace _avia"
+
+#: ../src/menu.c:71
+msgid "Move to Workspace R_ight"
+msgstr "Afindrao eo amin'ny workspace ha_vanana"
+
+#: ../src/menu.c:72
+msgid "Move to Workspace _Up"
+msgstr "Afindrao eo amin'ny workspace _mbony"
+
+#: ../src/menu.c:73
+msgid "Move to Workspace _Down"
+msgstr "Afindrao eo amin'ny workspace am_bany"
+
+#: ../src/menu.c:164 ../src/prefs.c:2142 ../src/prefs.c:2669
+#, c-format
+msgid "Workspace %d"
+msgstr "Workspace %d"
+
+#: ../src/menu.c:173
+msgid "Workspace 1_0"
+msgstr "Workspace 1_0"
+
+#: ../src/menu.c:175
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Workspace %s%d"
+
+#: ../src/menu.c:373
+msgid "Move to Another _Workspace"
+msgstr "Afindrao any amina _workspace hafa"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:103
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:109
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:115
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:121
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:127
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:133
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:139
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:145
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:151
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:157
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:111
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr "Tsy mamaly ny fikandrana \"%s\"."
+
+#: ../src/marco-dialog.c:119
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr ""
+"Mahatonga ny fahaverezan'ireo fanovana tsy voaraikitra ny fanerena ity "
+"rindranasa ity hijanona."
+
+#: ../src/marco-dialog.c:130
+msgid "_Force Quit"
+msgstr "_Tereo hijanona"
+
+#: ../src/marco-dialog.c:227
+msgid "Title"
+msgstr "Lohateny"
+
+#: ../src/marco-dialog.c:239
+msgid "Class"
+msgstr "Sokajy"
+
+#: ../src/marco-dialog.c:265
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Tsy mandray an-tànana ny \"raiketo izao kirakira izao\" ireto fikandrana "
+"ireto, ka mila alefanao indray rehefa miditra manaraka ianao."
+
+#: ../src/marco-dialog.c:331
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Nisy olana teo am-pandefasana ny \"%s\":\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Tsy mbola voapetraka) Mifototra amin'ny rindranasa fa tsy fikandrana ny "
+"fitetezana"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Laha-daza manoritsoritra endri-tsoratra ho an'ny anjan-dohatenin'ny "
+"fikandrana. Tsy hampiasaina ny habe voalaza anatin'io fanoritsoritana io "
+"raha tsy voafaritra ho 0 ny sandan'ny safidy titlebar_font_size. Tsy "
+"hampiasaina koa izany raha toa ka voafaritra ho marina ny safidy "
+"titlebar_uses_desktop_font."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Ny asa atao rehefa voakitika indroa ny anjan-dohateny"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr "Alefaso ny tolotr'ilay fikandrana"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Fandaminana ireo tsindry eo amin'ny anjan-dohateny"
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"Fandaminana ny tsindry eo amin'ny anjan-dohateny. Tokony ho laha-daza toy ny "
+"\"menu:minimize,maximize,close\" ilay sanda; ny teboka roa dia manasaka ny "
+"sisiny havian'ilay fikandrana amin'ny sisiny havanana, ary saraham-paingo ny "
+"anaran'ireo tsindry. Tsy ekena ny tsindry mitovy. Hodian-tsy fantatra "
+"mangingina izay anaran-tsindry tsy hay, amin'izay azo ampiana tsindry izay "
+"tsy manimba ireo kinova taloha ny kinovan'ny Marco mbola ho avy."
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr "Mampiakatra hoazy ilay fikandrana iasana"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Ny fikitihana sady fanindriana io kitendry mpanova io dia hamindra ilay "
+"fikandrana (tsindry havia), hanova ny habeny (tsindry afovoany), na haneho "
+"ny tolotr'ilay fikandrana (tsindry havanana). \"&lt;Alt&gt;\" na \"&lt;"
+"Super&gt;\" ohatra no fomba entina milaza ny mpanova."
+
+#: ../src/marco.schemas.in.h:9
+msgid "Close window"
+msgstr "Hidio ny fikandrana"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Ireo baiko tanterahana rehefa misy fitambaran-kitendry voatsindry"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Compositing Manager"
+msgstr "Mpandrindra fanambarana"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Mifehy ny fanasongadinana ny fikandrana vaovao"
+
+#: ../src/marco.schemas.in.h:13
+msgid "Current theme"
+msgstr "Ny endrika izao"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "elanelam-potoana (milisegaondra) iandrasan'ny safidy miakatra hoazy"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Mamaritra ny hoe mpandrindra fanambarana ny Marco na tsia."
+
+#: ../src/marco.schemas.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Mamaritra ny hoe afaka mampaneno bip ny rindranasa na ny rafitra; afaka "
+"ampiasana ny 'lakolosy hita maso' izay tsy mampisy ilay bip."
+
+#: ../src/marco.schemas.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Manatsahatra ireo fahasahaza tsy mandeha tsara izay ilain'ny rindranasa "
+"tranainy na simba"
+
+#: ../src/marco.schemas.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Alefaso ny lakolosy hita maso"
+
+#: ../src/marco.schemas.in.h:19
+msgid "Hide all windows and focus desktop"
+msgstr "Afeno ny fikandrana rehetra dia asongadino ny sehatrasa"
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Raha toa ka atao marina, ka na \"sloppy\" na \"mouse\" ilay fomba "
+"fanasongadinana, dia hiakatra hoazy ilay fikandrana misongadina afaka ny "
+"fotoana voafaritry ny famaha auto_raise_delay. Tsy misy ifandraisany amin'ny "
+"fikitihana fikandrana mba hampakarana azy na amin'ny fidirana anaty "
+"fikandrana iray mandritra ny fakana-famindrana izany."
+
+#: ../src/marco.schemas.in.h:21
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Raha toa ka marina, dia aza raharahaina ny safidy titlebar_font fa ny endri-"
+"tsora-drindranasa tsotra ho an'ny lohatenim-pikandrana ampiasaina."
+
+#: ../src/marco.schemas.in.h:22
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Raha toa ka marina, dia tsy dia hamaly firy ny mpampiasa ny Marco satria "
+"hampiasa wireframe, tsy hampiasa sary mihetsika na fomba hafa. Tena "
+"fampihenan-danja lehibe ny fiasa izany ho an'ny mpampiasa maro, nefa "
+"ahafahan'ny rindranasa tranainy mbola miasa ary mety ho fanampiana tsara ho "
+"an'ny mpizara terminal. Tsy mandeha anefa ny fahasahaza wireframe raha "
+"mandeha ny fanamorana."
+
+#: ../src/marco.schemas.in.h:23
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Raha toa ka marina, dia mifototra amin'ny rindranasa fa tsy amin'ny "
+"fikandrana ny fiasan'ny Marco. Somary saro-takarina ilay takakevitra, fa "
+"amin'ny ankapobeny dia mitovy kokoa amin'ny Mac noho ny amin'ny Windows ny "
+"kirakira mifototra amina rindranasa. Rehefa manasongadina fikandrana amin'ny "
+"fomba mifototra amina rindranasa ianao, dia hakarina daholo ireo fikandrana "
+"amin'ilay rindranasa. Fanampin'izay, dia tsy alefa mankany amin'ny "
+"fikandran'ny rindranasa hafa ireo kitika fanasongadinana. Tsy mbola tena "
+"voapetraka tsara anefa io fomba mifototra amin'ny rindranasa io."
+
+#: ../src/marco.schemas.in.h:24
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Raha toa ka marina, dia ahen-danja ny fiasa mba tsy handaniana ressource"
+
+#: ../src/marco.schemas.in.h:25
+msgid "Lower window below other windows"
+msgstr "Mametraka io fikandrana io ambanin'ny fikandrana sasany"
+
+#: ../src/marco.schemas.in.h:26
+msgid ""
+"Many actions (e.g. clicking in the client area, moving or resizing the "
+"window) normally raise the window as a side-effect. Set this option to false "
+"to decouple raising from other user actions. Even when this option is false, "
+"windows can still be raised by an alt-left-click anywhere on the window, a "
+"normal click on the window decorations, or by special messages, such as "
+"activation requests from pagers. This option is currently disabled in click-"
+"to-focus mode."
+msgstr ""
+"Misy asa maro (ohatra: ny fikitihana ny faritry ny mpivatsy, ny famindrana "
+"na fanovana ny haben'ny fikandrana) mampiakatra tsy nahy ny fikandrana. "
+"Ataovy diso io safidy io hanasarahana ny fampakarana fikandrana amin'ny asa "
+"hafa ataon'ny mpampiasa. Na dia efa atao diso aza io safidy io, dia mbola "
+"azo akarina amin'ny alalan'ny Alt+tsindry havia na aiza na aiza ao anatiny "
+"ny fikandrana, amin'ny alalana tsindry tsotra amin'ny ravak'ilay fikandrana, "
+"na amin'ny alalana filazana manokana toy ny fangatahana fandefasana avy "
+"amin'ny pager. Mbola natsahatra aloha io safidy io amin'ny fomba tsindry-"
+"manasongadina."
+
+#: ../src/marco.schemas.in.h:27
+msgid "Maximize window"
+msgstr "Alehibiazo ny fikandrana"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Maximize window horizontally"
+msgstr "Alehibiazo manaraka halava ny fikandrana"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Maximize window vertically"
+msgstr "Alehibiazo manaraka haavo ny fikandrana"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Minimize window"
+msgstr "Akelezo ny fikandrana"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Modifier to use for modified window click actions"
+msgstr "Ny mpanova ampiasaina amin'ny fikitihana fikandrana novaina"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Avy dia miverina eo anelanelan'ny tontonana sy ny sehatrasa"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move backwards between panels and the desktop with popup"
+msgstr ""
+"Miverina mankeo anelanelan'ny tontonana sy ny sehatrasa miaraka amin'ny popup"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move backwards between windows immediately"
+msgstr "Avy dia miverina eo anelanelan'ny fikandrana"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move backwards between windows of an application immediately"
+msgstr "Avy dia miverina eo anelanelan'ny fikandran-drindranasa iray"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move backwards between windows of an application with popup"
+msgstr ""
+"Miverina eo anelanelan'ny fikandran-drindranasa iray miaraka amin'ny popup"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move between panels and the desktop immediately"
+msgstr "Avy dia mankeo anelanelan'ny tontonana sy ny sehatrasa"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move between panels and the desktop with popup"
+msgstr "Mankeo anelanelan'ny tontonana sy ny sehatrasa miaraka amin'ny popup"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move between windows immediately"
+msgstr "Avy dia mankeo anelanelan'ny fikandrana"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move between windows of an application immediately"
+msgstr "Avy dia mankeo anelanelan'ny fikandran-drindranasa iray"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move between windows of an application with popup"
+msgstr "Mankeo anelanelan'ny fikandran-drindranasa iray miaraka amin'ny popup"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move between windows with popup"
+msgstr "Mankeo anelanelan'ny fikandrana miaraka amin'ny popup"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move focus backwards between windows using popup display"
+msgstr ""
+"Ahemory anelanelan'ny fikandrana amin'ny alalan'ny seho popup ny "
+"fanasongadinana"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window"
+msgstr "Afindrao ny fikandrana"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window one workspace down"
+msgstr "Ampidino ambanina sehatr'asa iray ny fikandrana"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window one workspace to the left"
+msgstr "Afindrao miankavia sehatr'asa iray ny fikandrana"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window one workspace to the right"
+msgstr "Afindrao miankavanana sehatr'asa iray ny fikandrana"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window one workspace up"
+msgstr "Akaro ambonina sehatr'asa iray ny fikandrana"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 1"
+msgstr "Afindrao anatin'ny sehatr'asa 1 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 10"
+msgstr "Afindrao anatin'ny sehatr'asa 10 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 11"
+msgstr "Afindrao anatin'ny sehatr'asa 11 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 12"
+msgstr "Afindrao anatin'ny sehatr'asa 12 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Move window to workspace 2"
+msgstr "Afindrao anatin'ny sehatr'asa 2 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Move window to workspace 3"
+msgstr "Afindrao anatin'ny sehatr'asa 3 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:55
+msgid "Move window to workspace 4"
+msgstr "Afindrao anatin'ny sehatr'asa 4 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:56
+msgid "Move window to workspace 5"
+msgstr "Afindrao anatin'ny sehatr'asa 5 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Move window to workspace 6"
+msgstr "Afindrao anatin'ny sehatr'asa 6 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Move window to workspace 7"
+msgstr "Afindrao anatin'ny sehatr'asa 7 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Move window to workspace 8"
+msgstr "Afindrao anatin'ny sehatr'asa 8 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Move window to workspace 9"
+msgstr "Afindrao anatin'ny sehatr'asa 9 ny fikandrana"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Name of workspace"
+msgstr "Anaran'ilay sehatr'asa"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Number of workspaces"
+msgstr "Isan'ireo sehatr'asa"
+
+#: ../src/marco.schemas.in.h:63
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Isan'ireo sehatr'asa. Tsy maintsy ambonin'ny aotra ary misy fetran'isa "
+"farany ambony mba tsy hahatonga ny sehatrasa tsy ho azo ampiasaina intsony "
+"noho ny fangatahana isa be loatra."
+
+#: ../src/marco.schemas.in.h:64
+msgid "Raise obscured window, otherwise lower"
+msgstr "Akaro ny fikandrana matimaty, raha tsy izay alatsao"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Raise window above other windows"
+msgstr "Akaro ambonin'ireo fikandrana hafa ilay fikandrana"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Resize window"
+msgstr "Ovay ny haben'ilay fikandrana"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Run a defined command"
+msgstr "Manatanteraha baiko voafaritra iray"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Run a terminal"
+msgstr "Mandefasa terminal iray"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Show the panel menu"
+msgstr "Asehoy ny tolotry ny tontonana"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Show the panel run application dialog"
+msgstr "Asehoy ny takilan'ny fandefasana rindranasa eo amin'ny tontonana"
+
+#: ../src/marco.schemas.in.h:71
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Ny rindranasa sasany dia tsy mandraharaha ireo fifaritra ka miteraka tsy "
+"fahalavorarian'ny fahasahazan'ny mpandrindra fikandrana. Ity safidy ity dia "
+"mametra ny Marco anaty fomba tena hentitra tsara, izay manome mpaneram-"
+"pivatsy marim-pototra kokoa raha tsy ilaina ny mandefa rindranasa tsy "
+"mandeha tsara."
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 1"
+msgstr "Ovay sehatr'asa 1"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 10"
+msgstr "Ovay sehatr'asa 10"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 11"
+msgstr "Ovay sehatr'asa 11"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 12"
+msgstr "Ovay sehatr'asa 12"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace 2"
+msgstr "Ovay sehatr'asa 2"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace 3"
+msgstr "Ovay sehatr'asa 3"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace 4"
+msgstr "Ovay sehatr'asa 4"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace 5"
+msgstr "Ovay sehatr'asa 5"
+
+#: ../src/marco.schemas.in.h:80
+msgid "Switch to workspace 6"
+msgstr "Ovay sehatr'asa 6"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Switch to workspace 7"
+msgstr "Ovay sehatr'asa 7"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Switch to workspace 8"
+msgstr "Ovay sehatr'asa 8"
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 9"
+msgstr "Ovay sehatr'asa 9"
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace above this one"
+msgstr "Ovay sehatr'asa ambonin'ity iray ity"
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace below this one"
+msgstr "Ovay sehatr'asa ambanin'ity iray ity"
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace on the left"
+msgstr "Ovay sehatr'asa eo ankavia"
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace on the right"
+msgstr "Ovay sehatr'asa eo ankavanana"
+
+#: ../src/marco.schemas.in.h:88
+msgid "System Bell is Audible"
+msgstr "Re ny feon'ny rafitra"
+
+#: ../src/marco.schemas.in.h:89
+msgid "Take a screenshot"
+msgstr "Haka sarin'efijery"
+
+#: ../src/marco.schemas.in.h:90
+msgid "Take a screenshot of a window"
+msgstr "Maka sary ny efijery iray"
+
+#: ../src/marco.schemas.in.h:91
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Milaza ny Marco ny fomba anehoana hoe naneno ny feon'ny rafitra na ny "
+"feon'ny rindranasa hafa. amin'izao aloha dia sanda roa ihany no ekena: "
+"\"fullscreen\" izay mahatonga ny efijery hitselatselatra (loko fotsy sy "
+"mainty) ary \"frame_flash\" izay mahatonga ny anjan-dohatenin'ilay "
+"rindranasa nampaneno ilay feo hitselatselatra. Raha toa ka tsy fantatra ilay "
+"rindranasa nampaneno ilay feo (izay mateti-pitranga amin'ny sanda \"system "
+"beep\", dia ny anjan-dohatenin'ny fikandrana iasana no mitselatselatra."
+
+#: ../src/marco.schemas.in.h:92
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Ny famaha /apps/marco/global_keybindings/run_command_N dia mamaritra ireo "
+"fitambaran-kitendry izay mifanaraka amin'ireo baiko ireo. Ny fanindriana "
+"ilay fitambaran-kitendry mifanaraka amin'ny run_command_N dia handefa ny "
+"command_N."
+
+#: ../src/marco.schemas.in.h:93
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Ny famaha /apps/marco/global_keybindings/run_command_screenshot dia "
+"mamaritra fitambaran-kitendry iray izay mahatonga ilay baiko voalazan'ity "
+"fandrindrana ity ho voaantso."
+
+#: ../src/marco.schemas.in.h:94
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Ny famaha /apps/marco/global_keybindings/run_command_window_screenshot "
+"dia mamaritra fitambaran-kitendry iray izay mahatonga ilay baiko "
+"voalazan'ity fadrindrana ity ho voaantso."
+
+#: ../src/marco.schemas.in.h:95
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Ilay fitambaran-kitendry mampandeha ilay baiko nomena isa mifanaraka "
+"amin'izany ao amin'ny /apps/marco/keybinding_commands. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela sora-madinika na sora-baventy, "
+"ary fanafohezan-teny tahaka ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa "
+"ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia tsy hisy "
+"fitambaran-kitendry ho an'io asa io."
+
+#: ../src/marco.schemas.in.h:96
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ny fitambaran-kitendry izay mandefa any amin'ny sehatr'asa ambonin'ny "
+"sehatr'asa iasana. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela "
+"ny fampiasana sora-madinika na sora-baventy ary fanafohezan-teny toy ny "
+"\"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza "
+"manokana \"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io asa "
+"io."
+
+#: ../src/marco.schemas.in.h:97
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ny fitambaran-kitendry izay mandefa any amin'ny sehatr'asa ambanin'ny "
+"sehatr'asa iasana. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela "
+"ny fampiasana sora-madinika na sora-baventy ary fanafohezan-teny toy ny "
+"\"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza "
+"manokana \"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io asa "
+"io."
+
+#: ../src/marco.schemas.in.h:98
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Ny fitambarann-kitendry mandefa mankany amin'ny sehatr'asa eo ankavian'ny "
+"sehatr'asa iasana. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela "
+"ny fampiasana sora-madinika na sora-baventy ary fanafohezan-teny toy ny "
+"\"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza "
+"manokana \"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io asa "
+"io."
+
+#: ../src/marco.schemas.in.h:99
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa eo ankavanan'ny "
+"sehatr'asa iasana. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela "
+"ny fampiasana sora-madinika na sora-baventy ary fanafohezan-teny toy ny "
+"\"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza "
+"manokana \"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io asa "
+"io."
+
+#: ../src/marco.schemas.in.h:100
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 1. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 10. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 11. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 12. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 2. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 3. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 4. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 5. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 6. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 7. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 8. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mandefa mankany amin'ny sehatr'asa 9. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry andefasana ny tolotry ny fikandrana. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry manidy fikandrana. Tahaka ny hoe \"&lt;Control&gt;a\" "
+"na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay "
+"mpizarazara ary mamela ny fampiasana sora-madinika na sora-baventy ary "
+"fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka "
+"ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia tsy hisy "
+"fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hidirana anatin'ny \"move mode\" sy hanombohana "
+"hamindra fikandrana amin'ny alalan'ny fafan-teny. Tahaka ny hoe \"&lt;"
+"Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny "
+"loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na sora-"
+"baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". "
+"Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia "
+"tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hidirana amin'ny \"resize mode\" sy hanombohana "
+"hanova ny haben'ny fikandrana amin'ny alalan'ny fafan-teny. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hanafenana ny fikandrana misokatra tsara sy "
+"hanasongadinana ny afaran'ny sehatrasa. Tahaka ny hoe \"&lt;Control&gt;a\" "
+"na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay "
+"mpizarazara ary mamela ny fampiasana sora-madinika na sora-baventy ary "
+"fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka "
+"ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia tsy hisy "
+"fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hanalehibiazana fikandrana. Tahaka ny hoe \"&lt;"
+"Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny "
+"loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na sora-"
+"baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". "
+"Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia "
+"tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hanakelezana fikandrana. Tahaka ny hoe \"&lt;"
+"Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny "
+"loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na sora-"
+"baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". "
+"Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia "
+"tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Ny fitambaran-kitendry hampidinana ny fikandrana ambanina sehatrasa iray. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana eo ankaviana sehatrasa iray. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana eo ankavanana sehatrasa "
+"iray. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+"ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny Fitambaran-kitendry hampakarana ny fikandrana ambonina sehatrasa iray. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatr'asa 1. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatr'asa 10. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatr'asa 11. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatr'asa 12. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatr'asa 2. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatr'asa 3; "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatr'asa 4. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatr'asa 5. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatr'asa 6. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatr'asa 7. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatr'asa 8. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fikandrana anatin'ny sehatrasa 9. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hanemorana ny fanasongadinana anelanelan'ny tontonana "
+"sy ny sehatrasa amin'ny alalan'ny takila popup. Tahaka ny hoe \"&lt;"
+"Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny "
+"loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na sora-"
+"baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". "
+"Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia "
+"tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hanemorana ny fanasongadinana anelanelan'ny tontonana "
+"sy ny sehatrasa tsy misy takila popup. Tahaka ny hoe \"&lt;Control&gt;a\" na "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay "
+"mpizarazara ary mamela ny fampiasana sora-madinika na sora-baventy ary "
+"fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka "
+"ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia tsy hisy "
+"fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application without a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hanemorana ny fanasongadinana anelanelan'ny "
+"fikandran'ny rindranasa iray tsy misy takila popup. Ny fanindriana ny \"shift"
+"\" miaraka amin'io fitambaran-kitendry io dia manova ny zotra hiroso indray. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application, using a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hanemorana ny fanasongadinana anelanelan'ny "
+"fikandran'ny rindranasa iray amin'ny alalan'ny takila popup. Ny fanindriana "
+"ny \"shift\" miaraka amin'io fitambaran-kitendry io dia manova ny zotra "
+"hiroso indray. Tahaka ny hoe \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela "
+"ny fampiasana sora-madinika na sora-baventy ary fanafohezan-teny toy ny "
+"\"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza "
+"manokana \"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io asa "
+"io."
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hanemorana ny fanasongadinana anelanelan'ny "
+"fikandrana tsy misy takila popup. Ny fanindriana ny \"shift\" miaraka "
+"amin'io fitambaran-kitendry io dia manova ny zotra hiroso indray. Tahaka ny "
+"hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy "
+"dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika "
+"na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hanemorana ny fanasongadinana anelanelan'ny "
+"fikandrana amin'ny alalan'ny takila popup. Ny fanindriana ny \"shift\" "
+"miaraka amin'io fitambaran-kitendry io dia manova ny zotra hiroso indray. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fanasongadinana anelanelan'ny tontonana "
+"sy ny sehatrasa amin'ny alalan'ny takila popup. Tahaka ny hoe\"&lt;"
+"Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny "
+"loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na sora-"
+"baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". "
+"Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia "
+"tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fanasongadinana anelanelan'ny tontonana "
+"sy ny sehatrasa tsy misy takila popup. Tahaka ny hoe \"&lt;Control&gt;a\" na "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay "
+"mpizarazara ary mamela ny fampiasana sora-madinika na sora-baventy ary "
+"fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka "
+"ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia tsy hisy "
+"fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding used to move focus between windows of an application without "
+"a popup window. Holding the \"shift\" key while using this binding reverses "
+"the direction of movement. The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fanasongadinana anelanelan'ny "
+"fikandran'ny rindranasa iray tsy misy takila popup. Ny fanindriana ny \"shift"
+"\" miaraka amin'io fitambaran-kitendry io dia manova ilay zotra indray. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding used to move focus between windows of an application, using a "
+"popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while "
+"using this binding reverses the direction of movement. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fanasongadinana anelanelan'ny "
+"fikandran'ny rindranasa iray amin'ny alalan'ny takila popup. (&lt;Alt&gt;F6 "
+"hatramin'izay) Ny fanindriana ny \"shift\" miaraka amin'io fitambaran-"
+"kitendry io dia manova ilay zotra indray. Tahaka ny hoe \"&lt;Control&gt;a\" "
+"na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay "
+"mpizarazara ary mamela ny fampiasana sora-madinika na sora-baventy ary "
+"fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka "
+"ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia tsy hisy "
+"fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fanasongadinana anelanelan'ny "
+"fikandrana tsy misy takila popup. (&lt;Alt&gt;Escape hatramin'izay) Ny "
+"fanindriana ny \"shift\" miaraka amin'io fitambaran-kitendry io dia manova "
+"ilay zotra indray. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela "
+"ny fampiasana sora-madinika na sora-baventy ary fanafohezan-teny toy ny "
+"\"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza "
+"manokana \"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io asa "
+"io."
+
+#: ../src/marco.schemas.in.h:146
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamindrana ny fanasongadinana anelanelan'ny "
+"fikandrana amin'ny alalan'ny takila popup. (&lt;Alt&gt;Tab hatramin'izay) Ny "
+"fanindriana ny \"shift\" miaraka amin'io fitambaran-kitendry io dia manova "
+"ilay zotra indray. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela "
+"ny fampiasana sora-madinika na sora-baventy ary fanafohezan-teny toy ny "
+"\"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza "
+"manokana \"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io asa "
+"io."
+
+#: ../src/marco.schemas.in.h:147
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamaritana hoe ambony foana. Ny fikandrana izay "
+"ambony foana dia hitoetra ambonin'ny fikandrana mifanindry hafa. Tahaka ny "
+"hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy "
+"dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika "
+"na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamaritana ny fomba mameno efijery. Tahaka ny hoe "
+"\"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia "
+"sarotiny loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na "
+"sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;"
+"\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, "
+"dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamaritana ny fanalehibiazana. Tahaka ny hoe \"&lt;"
+"Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny "
+"loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na sora-"
+"baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". "
+"Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia "
+"tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamaritana ny (tsy) fanalofana. Tahaka ny hoe \"&lt;"
+"Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny "
+"loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na sora-"
+"baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". "
+"Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia "
+"tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:151
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry hamaritana hoe anatin'ny sehatr'asa rehetra na iray "
+"fotsiny ilay fikandrana. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara "
+"ary mamela ny fampiasana sora-madinika na sora-baventy ary fanafohezan-teny "
+"toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-"
+"daza manokana \"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io "
+"asa io."
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry manena habe ny fikandrana. Tahaka ny hoe \"&lt;"
+"Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny "
+"loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na sora-"
+"baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". "
+"Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia "
+"tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ny fitambaran-kitendry mampiseho ny takila \"Fandefasana rindranasa\" an'ny "
+"tontonana. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny "
+"fampiasana sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;"
+"Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana "
+"\"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry miantso ny terminal. Tahaka ny hoe \"&lt;Control&gt;a"
+"\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay "
+"mpizarazara ary mamela ny fampiasana sora-madinika na sora-baventy ary "
+"fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka "
+"ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia tsy hisy "
+"fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry miantso ny rindranasa fakana sary an'ny tontonana "
+"hakana sary fikandrana iray. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara "
+"ary mamela ny fampiasana sora-madinika na sora-baventy ary fanafohezan-teny "
+"toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-"
+"daza manokana \"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io "
+"asa io."
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ny fitambaran-kitendry miantso ny rindranasa fakana sary an'ny tontonana. "
+"Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" ny "
+"laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ny fitambaran-kitendry mampiseho ny tolotra fototry ny tontonana. Tahaka ny "
+"hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\". Tsy dia sarotiny "
+"loatra ilay mpizarazara ary mamela ny fampiasana sora-madinika na sora-"
+"baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". "
+"Raha toa ka ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia "
+"tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:158
+msgid "The name of a workspace."
+msgstr "Ny anaran'ilay sehatr'asa."
+
+#: ../src/marco.schemas.in.h:159
+msgid "The screenshot command"
+msgstr "Ny baikon'ny fakana sary"
+
+#: ../src/marco.schemas.in.h:160
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Mamaritra ny endriky ny sisin'ny fikandrana, ny anjan'ny lohateny, sns ny "
+"endrika."
+
+#: ../src/marco.schemas.in.h:161
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Ny fotoana andrasana alohan'ny ampakarana fikandrana iray raha toa ka natao "
+"marina ny safidy auto_raise. Amin'ny am-paharivon-tsegaondra no ilazana io "
+"fotoana io."
+
+#: ../src/marco.schemas.in.h:162
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Ny fomba fanasongadinana fikandrana dia mampiseho ny fomba fampandehana "
+"fikandrana. Sanda telo no azo ampiasaina: ny \"click\" dia midika fa tsy "
+"maintsy kitihina ny fikandrana izay vao mandeha, ny \"sloppy\" dia midika fa "
+"hisongadina ny fikandrana rehefa tafiditra ao anatiny ny totozy, ary ny "
+"\"mouse\" dia midika fa hisongadina ny fikandrana rehefa miditra ao anatiny "
+"ny totozy ary tsy hisongadina kosa rehefa miala tao ilay izy."
+
+#: ../src/marco.schemas.in.h:163
+msgid "The window screenshot command"
+msgstr "Ny baikon'ny fakana sary ny fikandrana"
+
+#: ../src/marco.schemas.in.h:164
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another one, it raises the window above all others, "
+"and if the window is already fully visible, it lowers it below all others. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Io fitambaran-kitendry io dia mamaritra hoe ambony na ambanin'ny fikandrana "
+"hafa ny fikandrana iray. Raha toa ka voasarona ilay fikandrana, dia io "
+"fitambaran-kitendry io no mampakatra azy ambonin'ny fikandrana rehetra hafa, "
+"ary raha toa ka efa miseho tanteraka ilay izy, dia alatsany ambanin'ny "
+"rehetra ilay izy. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela "
+"ny fampiasana sora-madinika na sora-baventy ary fanafohezan-teny toy ny "
+"\"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza "
+"manokana \"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io asa "
+"io."
+
+#: ../src/marco.schemas.in.h:165
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Io fitambaran-kitendry io dia mandatsaka ny fikandrana iray ambanin'ny "
+"fikandrana hafa. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela "
+"ny fampiasana sora-madinika na sora-baventy ary fanafohezan-teny toy ny "
+"\"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza "
+"manokana \"disabled\" ilay safidy, dia tsy hisy fitambaran-kitendry io asa "
+"io."
+
+#: ../src/marco.schemas.in.h:166
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Io fitambaran-kitendry io dia mampakatra ny fikandrana ambonin'ny fikandrana "
+"hafa. Tahaka ny hoe \"&lt;Control&gt;a\" na \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+"ny laminy. Tsy dia sarotiny loatra ilay mpizarazara ary mamela ny fampiasana "
+"sora-madinika na sora-baventy ary fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy "
+"\"&lt;Ctrl&gt;\". Raha toa ka ataonao ilay laha-daza manokana \"disabled\" "
+"ilay safidy, dia tsy hisy fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:167
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Io fitambaran-kitendry io dia manova ny haben'ny fikandrana iray hamenoany "
+"izay toerana manaraka halava misy. Tahaka ny hoe \"&lt;Control&gt;a\" na "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay "
+"mpizarazara ary mamela ny fampiasana sora-madinika na sora-baventy ary "
+"fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka "
+"ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia tsy hisy "
+"fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:168
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Io fitambaran-kitendry io dia manova ny haben'ny fikandrana iray hamenoany "
+"izay toerana manaraka haavo misy. tahaka ny hoe \"&lt;Control&gt;a\" na "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\" ny laminy. Tsy dia sarotiny loatra ilay "
+"mpizarazara ary mamela ny fampiasana sora-madinika na sora-baventy ary "
+"fanafohezan-teny toy ny \"&lt;Ctl&gt;\" sy \"&lt;Ctrl&gt;\". Raha toa ka "
+"ataonao ilay laha-daza manokana \"disabled\" ilay safidy, dia tsy hisy "
+"fitambaran-kitendry io asa io."
+
+#: ../src/marco.schemas.in.h:169
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"Io safidy io dia mamaritra ny zavatra ateraky ny kiti-droa eo amin'ny "
+"anjan'ny lohateny. Ireto aloha no safidy mbola manan-kery: 'toggle_shade' "
+"izay manaloka/tsy manaloka ilay fikandrana, 'toggle_maximize' izay "
+"manalehibe/manena habe ilay fikandrana, 'minimize' izay manakely ilay "
+"fikandrana, ary 'none' izay tsy manao na inona na inona."
+
+#: ../src/marco.schemas.in.h:170
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Io safidy io dia manome toromarika fanampiny hifehezana ny fanasongadinana "
+"ireo fikandrana vao noforonina. Roa no sanda azo ampiasaina: \"smart\" izay "
+"mampihatra ny fomba fanasongadinana fanaon'ny mpampiasa, ary \"strict\" izay "
+"mahatonga ny fandefasana ny fikanrana avy amina terminal tsy voasongadina."
+
+#: ../src/marco.schemas.in.h:171
+msgid "Toggle always on top state"
+msgstr "Mamaritra ny toetra ambony foana"
+
+#: ../src/marco.schemas.in.h:172
+msgid "Toggle fullscreen mode"
+msgstr "Mamaritra ny fomba mameno efijery"
+
+#: ../src/marco.schemas.in.h:173
+msgid "Toggle maximization state"
+msgstr "Mamaritra ny fanalehibiazana"
+
+#: ../src/marco.schemas.in.h:174
+msgid "Toggle shaded state"
+msgstr "Mamaritra ny fanalofana"
+
+#: ../src/marco.schemas.in.h:175
+msgid "Toggle window on all workspaces"
+msgstr "Mamaritra ny fisian'ny fikandrana anatin'ny sehatr'asa rehetra"
+
+#: ../src/marco.schemas.in.h:176
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Mandefa famantarana hita maso rehefa mampaneno lakolosy na bip ny rindranasa "
+"iray na ny rafitra; ilain'ireo tsy dia maheno tsara ary natao ampiasaina "
+"anaty tontolo mikotaba."
+
+#: ../src/marco.schemas.in.h:177
+msgid "Unmaximize window"
+msgstr "Ahenao habe ilay fikandrana"
+
+#: ../src/marco.schemas.in.h:178
+msgid "Use standard system font in window titles"
+msgstr ""
+"Endri-tsoratry ny rafitra tsotra no ampiasao amin'ny lohatenin'ny fikandrana"
+
+#: ../src/marco.schemas.in.h:179
+msgid "Visual Bell Type"
+msgstr "Karazan'ilay lakolosy hita maso"
+
+#: ../src/marco.schemas.in.h:180
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Mamaritra ny hoe tokony ho zavatra tsy nahy ateraky ny asa ataon'ny "
+"mpampiasa ny fampakarana"
+
+#: ../src/marco.schemas.in.h:181
+msgid "Window focus mode"
+msgstr "Fomba fanasongadinana fikandrana"
+
+#: ../src/marco.schemas.in.h:182
+msgid "Window title font"
+msgstr "Endri-tsoratry ny lohatenin'ny fikandrana"
+
+#: ../src/prefs.c:574 ../src/prefs.c:590 ../src/prefs.c:606 ../src/prefs.c:622
+#: ../src/prefs.c:638 ../src/prefs.c:654 ../src/prefs.c:670 ../src/prefs.c:690
+#: ../src/prefs.c:706 ../src/prefs.c:722 ../src/prefs.c:740 ../src/prefs.c:756
+#: ../src/prefs.c:775 ../src/prefs.c:791 ../src/prefs.c:808 ../src/prefs.c:824
+#: ../src/prefs.c:840 ../src/prefs.c:857 ../src/prefs.c:873 ../src/prefs.c:889
+#: ../src/prefs.c:905 ../src/prefs.c:921 ../src/prefs.c:936 ../src/prefs.c:951
+#: ../src/prefs.c:966 ../src/prefs.c:982 ../src/prefs.c:998
+#: ../src/prefs.c:1014 ../src/prefs.c:1030
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Natao karazana tsy ekena ny famaha MateConf \"%s\"\n"
+
+#: ../src/prefs.c:1075
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Tsy mety ho an'ny mpanovan'ny tsindrin'ny totozy ny sanda \"%s\" ao "
+"anatin'ny soratra fototry ny kirakira\n"
+
+#: ../src/prefs.c:1099 ../src/prefs.c:1120 ../src/prefs.c:1616
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Natao sanda tsy ekena ny famaha MateConf '%s'\n"
+
+#: ../src/prefs.c:1249
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+"range 1..128\n"
+msgstr ""
+"cursor_size tsy manaraka ny tokony ho izy ny isa %d voatahiry ao anatin'ny "
+"famaha MateConf %s; tsy maintsy tafiditra anatin'ny 1..128\n"
+
+#: ../src/prefs.c:1329
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Tsy afaka nizarazara ny fanoritsoritana ny endri-tsoratra \"%s\" avy amin'ny "
+"famaha MateConf %s\n"
+
+#: ../src/prefs.c:1514
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+"Tsy manaraka ny tokony ho izy ny isan-tsehatr'asa %d voatahiry ao anatin'ny "
+"famaha MateConf %s; %d izao no avo indrindra\n"
+
+#: ../src/prefs.c:1574
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Natsahatra ireo vahaolana ho an'ny rindranasa simba. Mety tsy handeha tsara "
+"ny rindranasa sasantsasany.\n"
+
+#: ../src/prefs.c:1643
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr ""
+"Ny isa %d voatahiry ao anatin'ny famaha MateConf %s dia tsy tafiditra "
+"anatin'ny elanelan'isa 0 ka hatramin'ny %d\n"
+
+#: ../src/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Tsy nety ny famaritana ny isan'ny sehatr'asa ho %d: %s\n"
+
+#: ../src/prefs.c:2170 ../src/prefs.c:2335
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Ny sanda \"%s\" ao anatin'ny soratra fototra dia tsy mety ho an'ny "
+"fitambaran-kitendry \"%s\"\n"
+
+#: ../src/prefs.c:2750
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Tsy nety ny famaritana ny anaran'ny sehatr'asa %d ho \"%s\": %s\n"
+
+#: ../src/resizepopup.c:111
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:403
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Tsy manan-kery ny efijery %d amin'ny seho '%s'\n"
+
+#: ../src/screen.c:419
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Efa manana mpandrindra fikandrana ny efijery %d amin'ny seho \"%s\"; "
+"manandrama mampiasa ny safidy --replace hanoloana io mpandrindra fikandrana "
+"io.\n"
+
+#: ../src/screen.c:443
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Tsy azo ny fisafidianana mpandrindra fikandrana ho an'ny efijery %d seho \"%s"
+"\"\n"
+
+#: ../src/screen.c:501
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Efa manana mpandrindra fikandrana ny efijery %d amin'ny seho \"%s\"\n"
+
+#: ../src/screen.c:705
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Tsy afaka namela ny efijery %d teo amin'ny seho \"%s\"\n"
+
+#: ../src/session.c:835 ../src/session.c:842
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Tsy afaka namorona ny lahatahiry '%s': %s\n"
+
+#: ../src/session.c:852
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Tsy nahasokatra ny rakitry session '%s' mba hanoratana: %s\n"
+
+#: ../src/session.c:1004
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Tsy nety ny fanoratana ny rakitry ny session '%s': %s\n"
+
+#: ../src/session.c:1009
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Tsy nety ny fanidiana ny rakitry ny session '%s': %s\n"
+
+#: ../src/session.c:1084
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Tsy nahavaky ny rakitry ny session voaraikitra %s: %s\n"
+
+#: ../src/session.c:1119
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Tsy nahazarazara ilay rakitry ny session voaraikitra: %s\n"
+
+#: ../src/session.c:1168
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"Hita ny marika manokana <marco_session>, saingy efa ananana ilay ID'ny "
+"session"
+
+#: ../src/session.c:1181
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr ""
+"Marika manokana %s tsy fantatra amin'ny singantaharo <marco_session>"
+
+#: ../src/session.c:1198
+msgid "nested <window> tag"
+msgstr "Tag <window> mifampiditra"
+
+#: ../src/session.c:1256 ../src/session.c:1288
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Marika manokana %s tsy fantatra amin'ny singantaharo <window>"
+
+#: ../src/session.c:1360
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Marika manokana %s tsy fantatra amin'ny singantaharo <maximized>"
+
+#: ../src/session.c:1420
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Marika manokana %s tsy fantatra amin'ny singantaharo <geometry>"
+
+#: ../src/session.c:1440
+#, c-format
+msgid "Unknown element %s"
+msgstr "Singantaharo %s tsy fantatra"
+
+#: ../src/session.c:1906
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Tsy nety ny fandefasana ny marco-dialog hampilazana momba ireo rindranasa "
+"tsy mandray an-tànana fandrindrana session: %s\n"
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Andalana %d marika %d: %s"
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Miverina indroa anatin'ny singantaharo <%s> ny marika \"%s\" "
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+"Tsy manan-kery anatin'ny singantaharo <%s> ny marika manokana \"%s\" amin'io "
+"sehatra io"
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Tsy maintsy positif ilay isa feno %ld"
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Be loatra ilay isa feno %ld; %d izao no avo indrindra"
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Tsy nahazarazara ny \"%s\" amin'ny maha floating point number azy"
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Tsy maintsy \"true\" na \"false\" ny sanda boleanina, fa tsy \"%s\""
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Tsy maintsy anelanelan'ny 0.0 sy 360.0 ilay zoro; %g izy teo\n"
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Tsy maintsy anelanelan'ny 0.0 (tsy hita maso) sy 1.0 (hita mazava tsara) "
+"ilay alpha; %g izy teo\n"
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"ambaratongan-dohateny \"%s\" tsy mety (tsy maintsy iray amin'ny xx-small,x-"
+"small,small,medium,large,x-large,xx-large ilay izy)\n"
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2933 ../src/theme-parser.c:3022
+#: ../src/theme-parser.c:3029 ../src/theme-parser.c:3036
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "Tsy misy marika manokana \"%s\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "Miverina indroa ny anarana \"%s\" an'ny <%s>"
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Tsy mbola vaofaritra ny reny \"%s\" an'ny <%s>"
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Tsy mbola voafaritra ny rafitsary \"%s\" an'ny <%s>"
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "Tsy mamaritra rafitsary iray na reny manana rafitsary iray ny <%s>"
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Karazana \"%s\" tsy fantatra amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set \"%s\" tsy fantatra amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Efa nomena amboaran'endrika ny karazam-pikandrana \"%s\""
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr "Asa \"%s\" tsy fantatra ho an'ny kisarin'ny tolotra"
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr "Toetra \"%s\" tsy fantatra ho an'ny kisarin'ny tolotra"
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr "Efa manana kisarin-tolotra ho an'ny asa %s sy toetra %s ilay endrika"
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3241
+#: ../src/theme-parser.c:3320
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Tsy mbola misy <draw_ops> mitondra ny anarana \"%s\" voafaritra"
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3121
+#: ../src/theme-parser.c:3175 ../src/theme-parser.c:3335
+#: ../src/theme-parser.c:3512 ../src/theme-parser.c:3550
+#: ../src/theme-parser.c:3588 ../src/theme-parser.c:3626
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Ny singantaharo <%s> dia tsy azo atao eo ambanin'ny <%s>"
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"name\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"value\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"Tsy afaka milaza ny button_width/button_height sy ny fifandanjana halava/"
+"saka ho an'ny tsindry indray miaraka"
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Tsy fantatra ny elanelana \"%s\""
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Tsy fantatra ny fifandanjana halava/saka \"%s\""
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"top\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"bottom\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"left\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"right\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Tsy fantatra ny sisiny \"%s\""
+
+#: ../src/theme-parser.c:1652 ../src/theme-parser.c:1762
+#: ../src/theme-parser.c:1865 ../src/theme-parser.c:2052
+#: ../src/theme-parser.c:2866
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"color\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1659
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"x1\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1666 ../src/theme-parser.c:2711
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"y1\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1673
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"x2\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1680 ../src/theme-parser.c:2718
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"y2\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1769 ../src/theme-parser.c:1872
+#: ../src/theme-parser.c:1978 ../src/theme-parser.c:2059
+#: ../src/theme-parser.c:2165 ../src/theme-parser.c:2263
+#: ../src/theme-parser.c:2480 ../src/theme-parser.c:2606
+#: ../src/theme-parser.c:2704 ../src/theme-parser.c:2778
+#: ../src/theme-parser.c:2873
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"x\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1776 ../src/theme-parser.c:1879
+#: ../src/theme-parser.c:1985 ../src/theme-parser.c:2066
+#: ../src/theme-parser.c:2172 ../src/theme-parser.c:2270
+#: ../src/theme-parser.c:2487 ../src/theme-parser.c:2613
+#: ../src/theme-parser.c:2785 ../src/theme-parser.c:2880
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"y\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1783 ../src/theme-parser.c:1886
+#: ../src/theme-parser.c:1992 ../src/theme-parser.c:2073
+#: ../src/theme-parser.c:2179 ../src/theme-parser.c:2277
+#: ../src/theme-parser.c:2494 ../src/theme-parser.c:2620
+#: ../src/theme-parser.c:2792
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"width\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1790 ../src/theme-parser.c:1893
+#: ../src/theme-parser.c:1999 ../src/theme-parser.c:2080
+#: ../src/theme-parser.c:2186 ../src/theme-parser.c:2284
+#: ../src/theme-parser.c:2501 ../src/theme-parser.c:2627
+#: ../src/theme-parser.c:2799
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"height\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1900
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"start_angle\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:1907
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"extent_angle\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:2087
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"alpha\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:2158
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"type\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:2206
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Tsy mazava ny sanda \"%s\" ho an'ny karazan'ilay zavatra misompirana"
+
+#: ../src/theme-parser.c:2291
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"filename\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:2316 ../src/theme-parser.c:2824
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Tsy mazava ny karazam-pamenoana \"%s\" ho an'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:2459 ../src/theme-parser.c:2592
+#: ../src/theme-parser.c:2697
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"state\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:2466 ../src/theme-parser.c:2599
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"shadow\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:2473
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "Tsy misy marika manokana \"arrow\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:2526 ../src/theme-parser.c:2648
+#: ../src/theme-parser.c:2736
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Tsy mazava ny toetra \"%s\" ho an'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:2536 ../src/theme-parser.c:2658
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Tsy mazava ny aloka \"%s\" ho an'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:2546
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Tsy mazava ny tondro \"%s\" ho an'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:2959 ../src/theme-parser.c:3075
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Tsy misy <draw_ops> mitondra ny anarana \"%s\" mbola voafaritra"
+
+#: ../src/theme-parser.c:2971 ../src/theme-parser.c:3087
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Hiteraka référence mihodinkodina ny fampidirana ny draw_ops \"%s\" eto"
+
+#: ../src/theme-parser.c:3150
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "Tsy misy marika manokana \"value\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:3207
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "Tsy misy marika manokana \"position\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:3216
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Toerana \"%s\" tsy fantatra ho an'ny singan'ilay frame"
+
+#: ../src/theme-parser.c:3224
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Efa manana singa amin'ny toerana %s ilay endriky ny frame"
+
+#: ../src/theme-parser.c:3269
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "Tsy misy marika manokana \"function\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:3277 ../src/theme-parser.c:3381
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "Tsy misy marika manokana \"state\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:3286
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Asa \"%s\" tsy fantatra ho an'ny tsindry"
+
+#: ../src/theme-parser.c:3295
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Toetra \"%s\" tsy fantatra ho an'ny tsindry"
+
+#: ../src/theme-parser.c:3303
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Efa manana tsindry ho an'ny asa %s sy toetra %s ny endrik'ilay frame"
+
+#: ../src/theme-parser.c:3373
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "Tsy misy marika manokana \"focus\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:3389
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "Tsy misy marika manokana \"style\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:3398
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+"Tsy manan-kery ho an'ny marika manokan'ny fanasongadinana ny sanda \"%s\""
+
+#: ../src/theme-parser.c:3407
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "Tsy manan-kery ho an'ny marika manokan'ny toetra ny sanda \"%s\""
+
+#: ../src/theme-parser.c:3417
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Tsy mbola voafaritra ny endrika \"%s\""
+
+#: ../src/theme-parser.c:3427
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "Tsy misy marika manokana \"resize\" amin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:3437
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+"Tsy manan-kery ho an'ny marika manokan'ny fanovana habe ny sanda \"%s\""
+
+#: ../src/theme-parser.c:3447
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Tsy tokony hisy marika manokana \"resize\" amin'ny singantaharo <%s> ho "
+"an'ny fanalehibiazana/fanalofana"
+
+#: ../src/theme-parser.c:3461
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Efa voafaritra ny endrika ho an'ny toetra %s fanovana habe %s "
+"fanasongadinana %s"
+
+#: ../src/theme-parser.c:3472 ../src/theme-parser.c:3483
+#: ../src/theme-parser.c:3494
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Efa voafaritra ny endrika ho an'ny toetra %s fanasongadinana %s"
+
+#: ../src/theme-parser.c:3533
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Tsy afaka manana draw_ops roa ho an'ny singantaharo <piece> (namaritra "
+"marika manokana draw_ops iray sy singantaharo <draw_ops> iray na namaritra "
+"singantaharo roa ilay endrika)"
+
+#: ../src/theme-parser.c:3571
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Tsy afaka manana draw_ops roa ho an'ny singantaharo <button> (namaritra "
+"marika manokana draw_ops iray sy singantaharo <draw_ops> iray na namaritra "
+"singantaharo roa ilay endrika)"
+
+#: ../src/theme-parser.c:3609
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Tsy afaka manana draw_ops roa ho an'ny singantaharo <menu_icon> (namaritra "
+"marika manokana draw_ops iray sy singantaharo <draw_ops> iray na namaritra "
+"singantaharo roa ilay endrika)"
+
+#: ../src/theme-parser.c:3656
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+"Tsy maintsy <marco_theme> ny singantaharo ivelany indrindra, fa tsy <%s>"
+
+#: ../src/theme-parser.c:3676
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Tsy azo atao anaty singantaharo name/author/date/description ny singantaharo "
+"<%s>"
+
+#: ../src/theme-parser.c:3681
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Tsy azo atao anaty singantaharo <constant> ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:3693
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Tsy azo atao anaty singantaharo distance/border/aspect_ratio ny singantaharo "
+"<%s>"
+
+#: ../src/theme-parser.c:3715
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Tsy azo atao anaty singantaharo draw operation ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:3725 ../src/theme-parser.c:3755
+#: ../src/theme-parser.c:3760
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Tsy azo atao anaty singantaharo <%s> ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:3981
+msgid "No draw_ops provided for frame piece"
+msgstr "Tsy misy draw_ops ho an'ny singan'ny frame"
+
+#: ../src/theme-parser.c:3996
+msgid "No draw_ops provided for button"
+msgstr "Tsy misy draw_ops ho an'ny tsindry"
+
+#: ../src/theme-parser.c:4011
+msgid "No draw_ops provided for menu icon"
+msgstr "Tsy misy draw_ops ho an'ny kisarin'ny tolotra"
+
+#: ../src/theme-parser.c:4051
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Tsy azo asiana lahabolana anatin'ny singantaharo <%s>"
+
+#: ../src/theme-parser.c:4106
+msgid "<name> specified twice for this theme"
+msgstr "Voalaza indroa ny <name> ho an'ity endrika ity"
+
+#: ../src/theme-parser.c:4117
+msgid "<author> specified twice for this theme"
+msgstr "Voalaza indroa ny <author> ho an'ity endrika ity"
+
+#: ../src/theme-parser.c:4128
+msgid "<copyright> specified twice for this theme"
+msgstr "Voalaza indroa ny <copyright> ho an'ity endrika ity"
+
+#: ../src/theme-parser.c:4139
+msgid "<date> specified twice for this theme"
+msgstr "Voalaza indroa ny <date> ho an'ity endrika ity"
+
+#: ../src/theme-parser.c:4150
+msgid "<description> specified twice for this theme"
+msgstr "Voalaza indroa ny <description> ho an'ity endrika ity"
+
+#: ../src/theme-parser.c:4345
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr "Tsy nahavaky ilay endrika tao anatin'ny rakitra %s: %s\n"
+
+#: ../src/theme-parser.c:4400
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Tsy misy singantaharo <marco_theme> fototra ny rakitr'endrika %s"
+
+#: ../src/theme-viewer.c:72
+msgid "/_Windows"
+msgstr "/_Fikandrana"
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/tearoff"
+msgstr "/Fikandrana/fanongotana"
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Dialog"
+msgstr "/Fikandrana/_Takila"
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Modal dialog"
+msgstr "/Fikandrana/_Modal dialog"
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Utility"
+msgstr "/Fikandrana/_Rindranasa"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Splashscreen"
+msgstr "/Fikandrana/_Takila fanokafana"
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Top dock"
+msgstr "/Fikandrana/_Dock amboony"
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Bottom dock"
+msgstr "/Fikandrana/_Dock ambany"
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_Left dock"
+msgstr "/Fikandrana/_Dock havia"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/_Right dock"
+msgstr "/Fikandrana/_Dock havanana"
+
+#: ../src/theme-viewer.c:82
+msgid "/Windows/_All docks"
+msgstr "/Fikandrana/_Dock rehetra"
+
+#: ../src/theme-viewer.c:83
+msgid "/Windows/Des_ktop"
+msgstr "/Fikandrana/Sehatr_asa"
+
+#: ../src/theme-viewer.c:132
+msgid "Open another one of these windows"
+msgstr "Manokatra fikandrana iray tahakan'ireo fikandrana ireo"
+
+#: ../src/theme-viewer.c:139
+msgid "This is a demo button with an 'open' icon"
+msgstr "Tsindry fampisehoana misy kisary 'Sokafy' io"
+
+#: ../src/theme-viewer.c:146
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Tsindry fampisehoana misy kisary 'Ajanony' io"
+
+#: ../src/theme-viewer.c:239
+msgid "This is a sample message in a sample dialog"
+msgstr "Santionam-pilazana anatina santionan-takila io"
+
+#: ../src/theme-viewer.c:322
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Sarin-javatry ny tolotra %d\n"
+
+#: ../src/theme-viewer.c:356
+msgid "Border-only window"
+msgstr "Fiandrana tsy misy afa-tsy sisiny"
+
+#: ../src/theme-viewer.c:358
+msgid "Bar"
+msgstr "Anja"
+
+#: ../src/theme-viewer.c:375
+msgid "Normal Application Window"
+msgstr "Fikandran-drindranasa misokatra tsara"
+
+#: ../src/theme-viewer.c:379
+msgid "Dialog Box"
+msgstr "Takila fampahafantarana"
+
+#: ../src/theme-viewer.c:383
+msgid "Modal Dialog Box"
+msgstr "Modal Dialog Box"
+
+#: ../src/theme-viewer.c:387
+msgid "Utility Palette"
+msgstr "Takela-pisaky ny rindranasa"
+
+#: ../src/theme-viewer.c:391
+msgid "Torn-off Menu"
+msgstr "Tolotra miongotra"
+
+#: ../src/theme-viewer.c:395
+msgid "Border"
+msgstr "Sisiny"
+
+#: ../src/theme-viewer.c:723
+#, c-format
+msgid "Button layout test %d"
+msgstr "%d fitsapana ny fandaminana tsindry"
+
+#: ../src/theme-viewer.c:752
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisegaondra hanoritana frame-na fikandrana iray"
+
+#: ../src/theme-viewer.c:795
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Fampiasa:marco-theme-viewer [ANARANENDRIKA]\n"
+
+#: ../src/theme-viewer.c:802
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Tsy nety ny fakana ilay endrika: %s\n"
+
+#: ../src/theme-viewer.c:808
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Maka ilay endrika \"%s\" anatin'ny %g segaondra\n"
+
+#: ../src/theme-viewer.c:831
+msgid "Normal Title Font"
+msgstr "Endri-tsora-dohateny antonony"
+
+#: ../src/theme-viewer.c:837
+msgid "Small Title Font"
+msgstr "Endri-tsora-dohateny madinika"
+
+#: ../src/theme-viewer.c:843
+msgid "Large Title Font"
+msgstr "Endri-tsora-dohateny lehibe"
+
+#: ../src/theme-viewer.c:848
+msgid "Button Layouts"
+msgstr "Fandaminana tsindry"
+
+#: ../src/theme-viewer.c:853
+msgid "Benchmark"
+msgstr "Fitsapana fahombiazana"
+
+#: ../src/theme-viewer.c:900
+msgid "Window Title Goes Here"
+msgstr "Manketo ny lohatenin'ny fikandrana"
+
+#: ../src/theme-viewer.c:1004
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Nahasoritra frame %d tanatin'ny %g segaondra amin'ny fotoanan'ny mpivatsy (%"
+"g milisegaondra isaka frame) ary %g segaondra amin'ny fotoana amin'ny "
+"famantaranandro nampidirana ny resourcen'ny mpizara X (%g milisegaondra "
+"isaka frame)\n"
+
+#: ../src/theme-viewer.c:1217
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"TRUE no navalin'ny fitsapana filazana toerana nefa nataony tsy fetezana "
+
+#: ../src/theme-viewer.c:1219
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"FALSE no navalin'ny fitsapana filazana toerana nefa tsy nataony tsy fetezana"
+
+#: ../src/theme-viewer.c:1223
+msgid "Error was expected but none given"
+msgstr "Tsy fetezana no nampoizina nefa tsy nisy izany"
+
+#: ../src/theme-viewer.c:1225
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Tsy fetezana %d no nampoizina nefa %d no azo"
+
+#: ../src/theme-viewer.c:1231
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Tsy nisy tsy fetezana nampoizina nefa nisy iray azo: %s"
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "%d no sandan'ny x, %d no nampoizina"
+
+#: ../src/theme-viewer.c:1238
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "%d no sandan'ny y, %d no nampoizina"
+
+#: ../src/theme-viewer.c:1301
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"Ny filazan'ny coordonnée %d dia voazarazara tanatin'ny %g segaondra "
+"(salasalany: %g)\n"
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "ambony"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "ambany"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "havia"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "havanana"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "Tsy nofaritan'ny rafitsarin'ilay frame ny habe \"%s\" "
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "Tsy nofaritan'ny rafitsarin'ilay frame ny habe \"%s\" an'ny \"%s\""
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Tsy araka ny tokony ho izy ny halava/saka %g an'ilay tsindry"
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Tsy nofaritan'ny rafitsarin'ilay frame ny haben'ny tsindry"
+
+#: ../src/theme.c:813
+msgid "Gradients should have at least two colors"
+msgstr "Tokony hanana loko roa fahafahakeliny ireo zavatra misompirana"
+
+#: ../src/theme.c:939
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Tsy maintsy ao anatina fonosana ilay toetra amin'ny famaritana loko GTK. "
+"Ohatra: gtk:fg[NORMAL]; NORMAL ilay toetra eto. Tsy afaka nizarazara ny \"%s"
+"\""
+
+#: ../src/theme.c:953
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Tsy maintsy fonosana mikatona no manaraka ilay toetra amin'ny famaritana "
+"loko GTK. Ohatra: gtk:fg[NORMAL]; NORMAL no toetra eto. Tsy afaka nizarazara "
+"ny \"%s\""
+
+#: ../src/theme.c:964
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Tsy mazava ny toetra \"%s\" anatin'ilay famaritana loko"
+
+#: ../src/theme.c:977
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Tsy mazava ny singan-doko \"%s\" anatin'ilay famaritana loko"
+
+#: ../src/theme.c:1007
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"\"blend/bg_color/fg_color/alpha\" no lamin'ny fifangaroana; tsy mifanaraka "
+"amin'io lamina io ny \"%s\""
+
+#: ../src/theme.c:1018
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Tsy afaka nizarazara ny sanda alpha \"%s\" anatin'ilay loko mifangaro"
+
+#: ../src/theme.c:1028
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+"Tsy tafiditra anatin'ny 0.0 sy 1.0 ny sanda alpha \"%s\" anatin'ilay loko "
+"mifangaro"
+
+#: ../src/theme.c:1075
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"\"shade/base_color/factor\" no lamin'ny fanalofana; tsy mifanaraka amin'ilay "
+"lamina ny \"%s\""
+
+#: ../src/theme.c:1086
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Tsy afaka nizarazara anon'ny fanalofana \"%s\" amin'ilay loko voaaloka"
+
+#: ../src/theme.c:1096
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Negatif ny anon'ny fanalofana \"%s\" amin'ilay loko voaaloka"
+
+#: ../src/theme.c:1125
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Tsy afaka nizarazara ny loko \"%s\""
+
+#: ../src/theme.c:1384
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Ahitana ny marika '%s' izay tsy ekena ny filazan'ilay coordonnée"
+
+#: ../src/theme.c:1411
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Ahitana ny floating point number '%s' izay tsy mety zarazaraina ny "
+"filazan'ilay coordonnée"
+
+#: ../src/theme.c:1425
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Ahitana ny isa feno '%s' izay tsy mety zarazaraina ny filazan'ilay coordonnée"
+
+#: ../src/theme.c:1492
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Ahitana mpikirakira tsy fantatra ilay filazan'ny coordonnée eo amin'ny "
+"fiandohan'ity lahabolana ity: \"%s\""
+
+#: ../src/theme.c:1549
+msgid "Coordinate expression was empty or not understood"
+msgstr "Foana na tsy mazava ny filazan'ilay coordonnée"
+
+#: ../src/theme.c:1686 ../src/theme.c:1696 ../src/theme.c:1730
+msgid "Coordinate expression results in division by zero"
+msgstr "Mahatonga fizarana 0 ny filazan'ilay coordonnée"
+
+#: ../src/theme.c:1738
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Manandrana mampiasa mpikirakira mod amina floating-point number iray ny "
+"filazan'ilay coordonnée"
+
+#: ../src/theme.c:1794
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Ahitana mpikirakira \"%s\" amin'ny toerana nampoizina hisy operand ny "
+"filazan'ilay coordonnée"
+
+#: ../src/theme.c:1803
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"Nahitana operand amin'ny toerana nampoizina hisy mpikirakira ny filazan'ilay "
+"coordonnée"
+
+#: ../src/theme.c:1811
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Niafara tamin'ny mpikirakira fa tsy operand ny filazan'ilay coordonnée"
+
+#: ../src/theme.c:1821
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Ahitana mpikirakira \"%c\" manaraka ny mpikirakira \"%c\" tsy elanelanina "
+"operand ny filazan'ilay coordonnée"
+
+#: ../src/theme.c:1939
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Nihoatra ny buffer-ny ny mpizarazara ny filazan'ilay coordonnée."
+
+#: ../src/theme.c:1968
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Nisy fonosana mikatona saingy tsy nisy fonosana misokatra ny filazan'ilay "
+"coordonnée"
+
+#: ../src/theme.c:2030
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Manana teny miova na sanda tsy miova tsy fantatra \"%s\" ny filazan'ilay "
+"cooordonnée"
+
+#: ../src/theme.c:2085
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Nisy fonosana misokatra saingy tsy nisy fonosana mikatona ny filazan'ilay "
+"coordonnée"
+
+#: ../src/theme.c:2096
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Tahaka ny tsy manana mpikirakira ny operand ny filazan'ilay coordonnée"
+
+#: ../src/theme.c:2337 ../src/theme.c:2359 ../src/theme.c:2380
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "Nisy filazana \"%s\" izay nahatonga tsy fetezana ilay endrika: %s\n"
+
+#: ../src/theme.c:3826
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> tsy maintsy "
+"faritana ho an'ity endrika frame ity"
+
+#: ../src/theme.c:4270 ../src/theme.c:4295
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> tsy ampy"
+
+#: ../src/theme.c:4341
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Tsy nety ny fakana ny endrika \"%s\": %s\n"
+
+#: ../src/theme.c:4481 ../src/theme.c:4488 ../src/theme.c:4495
+#: ../src/theme.c:4502 ../src/theme.c:4509
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Tsy misy <%s> voafaritra ho an'ny endrika \"%s\""
+
+#: ../src/theme.c:4517
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Tsy misy endrika frame voafaritra ho an'ny karaza-pikandrana \"%s\" amin'ny "
+"endrika \"%s\". Manampia singataharo <window type=\"%s\" style_set=\"whatever"
+"\"/> iray"
+
+#: ../src/theme.c:4531
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+"Tsy maintsy faritana ny <menu_icon function=\"%s\" state=\"%s\" draw_ops="
+"\"whatever\"/> an'ity endrika ity"
+
+#: ../src/theme.c:4911 ../src/theme.c:4973
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Tsy maintsy manomboka amin'ny sora-baventy ny sanda tsy miova faritan'ny "
+"mpampiasa; tsy tahaka izany anefa ny \"%s\""
+
+#: ../src/theme.c:4919 ../src/theme.c:4981
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Efa voafaritra ny sanda tsy miova \"%s\""
+
+#: ../src/util.c:96
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Tsy afaka nanokatra ny raki-tatitry ny debugging: %s\n"
+
+#: ../src/util.c:106
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+"Tsy afaka nanokatra ny raki-tatitra %s amin'ny alalan'ny fdopen(): %s\n"
+
+#: ../src/util.c:112
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Voasokatra ny raki-tatitra %s\n"
+
+#: ../src/util.c:220
+msgid "Window manager: "
+msgstr "Mpandrindra fikandrana:"
+
+#: ../src/util.c:368
+msgid "Bug in window manager: "
+msgstr "Ny bug anatin'ny mpandrindra fikandrana:"
+
+#: ../src/util.c:397
+msgid "Window manager warning: "
+msgstr "Fampilazan'ny mpandrindra fikandrana:"
+
+#: ../src/util.c:421
+msgid "Window manager error: "
+msgstr "Tsy fetezan'ny mpandrindra fikandrana:"
+
+#: ../src/window-props.c:169
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Nametraka bogus _NET_WM_PID %lu ilay rindranasa\n"
+
+#: ../src/window-props.c:237
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (amin'ny %s)"
+
+#: ../src/window-props.c:1159
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Fikandrana 0x%lx WM_TRANSIENT_FOR tsy mety voafaritra ho an'ny %s.\n"
+
+#. first time through
+#: ../src/window.c:5240
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Nataon'ilay fikandrana %s tamin'ny tenany ny SM_CLIENT_ID raha tokony "
+"nataony tamin'ny fikandrana WM_CLIENT_LEADER araka ny voafaritra anatin'ny "
+"ICCCM izany.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5836
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Milaza hint MWM ny fikandrana %s milaza hoe tsy mety ovana habe izy, nefa "
+"mametra habe ambany indrindra %d x %d ary habe ambony indrindra %d x %d; tsy "
+"misy dikany mihitsy izany.\n"
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Ny fikandrana 0x%lx dia manana toetoetra %s\n"
+"izay nampoizina hanana ny karazana %s sy lamina %d\n"
+"nefa karazana %s sy lamina %d n_items %d no tena izy.\n"
+"Bug ana rindranasa angamba io fa tsy bug ana mpandrindra fikandrana.\n"
+"Manana title=\"%s\" class=\"%s\" name=\"%s\" ilay fikandrana\n"
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Misy UTF-8 tsy mety anatin'ny toetoetra %s amin'ny fikandrana 0x%lx\n"
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Ny toetoetra %s amin'ny fikandrana 0x%lx dia misy UTF-8 tsy mety amin'ny "
+"singan-javatra %d anatin'ilay lisitra\n"
diff --git a/po/mk.po b/po/mk.po
new file mode 100644
index 00000000..18eb6440
--- /dev/null
+++ b/po/mk.po
@@ -0,0 +1,3610 @@
+# translation of marco.HEAD.po to Macedonian
+# translation of marco.HEAD.mk.po to
+# translation of marco.HEAD.mk.po to
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) 2005 THE PACKAGE'S COPYRIGHT HOLDER.
+#
+# Ivan Stojmirov <[email protected]>, 2002.
+# Marko Ivanoski <[email protected]>, 2003.
+# Vladislav Bidikov <[email protected]>, 2003.
+# # Arangel Angov <[email protected]>, 2004, 2005, 2006, 2008.
+# Арангел Ангов <[email protected]>, 2005.
+# Jovan Naumovski <[email protected]>, 2006, 2007.
+# Arangel Angov <[email protected]>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-01-13 02:42+0000\n"
+"PO-Revision-Date: 2008-02-03 12:50+0100\n"
+"Last-Translator: Arangel Angov <[email protected]>\n"
+"Language-Team: Macedonian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural= n==1 || n%10==1 ? 0 : 1\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Работна површина"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Менаџер на прозорци"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Барање на информација за непознат прозорец: %d"
+
+#: ../src/core/delete.c:67 ../src/core/delete.c:94
+#: ../src/ui/marco-dialog.c:50 ../src/ui/theme-parser.c:481
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Не можам да го парсирам \"%s\" како целосен број"
+
+#: ../src/core/delete.c:74 ../src/core/delete.c:101
+#: ../src/ui/marco-dialog.c:57 ../src/ui/theme-parser.c:490
+#: ../src/ui/theme-parser.c:545
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Не ги разбирам трејлинг карактерите \"%s\" во стрингот \"%s\""
+
+#: ../src/core/delete.c:132
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Не успеав да ја парсирам пораката \"%s\" од дијалогот за процесот\n"
+
+#: ../src/core/delete.c:267
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Грешка во читањето од процесот на дијалогот: %s\n"
+
+#: ../src/core/delete.c:350
+#, c-format
+msgid "Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Грешка при отворањето на marco-дијалог да се праша за затварање на "
+"апликација: %s\n"
+
+#: ../src/core/delete.c:459
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Не успеав да добијам име на хост: %s\n"
+
+#: ../src/core/display.c:256
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Недостасува %s проширување потребно за композитинг"
+
+#: ../src/core/display.c:438
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Не успеав да го отворам приказот за X системот за прозорци '%s'\n"
+
+#: ../src/core/errors.c:271
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Изгубена врска со приказот '%s';\n"
+"најверојатно X серверот е исклучен или пак уништен е\n"
+"менаџерот на прозорци.\n"
+
+#: ../src/core/errors.c:278
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Фатална IO грешка %d (%s) на приказ '%s'.\n"
+
+#: ../src/core/keybindings.c:1087
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Некоја друга програма веќе го користи тоа копче %s со изменувачи %x како "
+"биндинг\n"
+
+#: ../src/core/keybindings.c:2733
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr "Грешка при отворањето на marco-дијалог да печати грешка за команда: %s\n"
+
+#: ../src/core/keybindings.c:2838
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Ниедна команда %d не е дефинирана.\n"
+
+#: ../src/core/keybindings.c:3866
+msgid "No terminal command has been defined.\n"
+msgstr "Ниедна команда %d не е дефинирана.\n"
+
+#: ../src/core/main.c:95
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"Ова е слободен софтвер; видете го изворниот код за условите за копирање.\n"
+"Нема НИКАКВА гаранција; нема ни СТОКОВНОСТ или УПОТРЕБА ЗА НЕКОЈА НАМЕНА.\n"
+
+#: ../src/core/main.c:218
+msgid "Disable connection to session manager"
+msgstr "Исклучи врска до менаџерот за сесии"
+
+#: ../src/core/main.c:224
+msgid "Replace the running window manager with Marco"
+msgstr "Замени го менаџерот за прозорци со Метасити"
+
+#: ../src/core/main.c:230
+msgid "Specify session management ID"
+msgstr "Одредете идентификација за менаџментот на сеисии"
+
+#: ../src/core/main.c:235
+msgid "X Display to use"
+msgstr "X приказ за користење"
+
+#: ../src/core/main.c:241
+msgid "Initialize session from savefile"
+msgstr "Иницијализирај сесија од зачуваната датотека"
+
+#: ../src/core/main.c:247
+msgid "Print version"
+msgstr "Верзија за печатење"
+
+#: ../src/core/main.c:253
+msgid "Make X calls synchronous"
+msgstr "Направи ги повиците за X синхрони"
+
+#: ../src/core/main.c:415
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Не успеав да го скенирам директориумот со теми: %s\n"
+
+#: ../src/core/main.c:431
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Не можам да ја пронајдам темата! Осигурајте се дека %s постои и содржи "
+"вообичаени теми.\n"
+
+#: ../src/core/main.c:503
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Не успеав да рестартирам: %s\n"
+
+#: ../src/core/prefs.c:434
+#, c-format
+msgid "Type of %s was not integer"
+msgstr "Типот на %s не е цел број"
+
+#: ../src/core/prefs.c:572 ../src/core/prefs.c:600 ../src/core/prefs.c:616
+#: ../src/core/prefs.c:632 ../src/core/prefs.c:648 ../src/core/prefs.c:664
+#: ../src/core/prefs.c:680 ../src/core/prefs.c:696 ../src/core/prefs.c:716
+#: ../src/core/prefs.c:732 ../src/core/prefs.c:748 ../src/core/prefs.c:766
+#: ../src/core/prefs.c:782 ../src/core/prefs.c:801 ../src/core/prefs.c:817
+#: ../src/core/prefs.c:852 ../src/core/prefs.c:868 ../src/core/prefs.c:885
+#: ../src/core/prefs.c:901 ../src/core/prefs.c:917 ../src/core/prefs.c:933
+#: ../src/core/prefs.c:949 ../src/core/prefs.c:964 ../src/core/prefs.c:979
+#: ../src/core/prefs.c:994 ../src/core/prefs.c:1010 ../src/core/prefs.c:1026
+#: ../src/core/prefs.c:1042 ../src/core/prefs.c:1058
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf копче \"%s\" е наместено на невалиден тип \n"
+
+#: ../src/core/prefs.c:1103
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" пронајдено во конфигурацијата на базата не е валидна вредност за "
+"спец. копчиња на глувче \n"
+
+#: ../src/core/prefs.c:1127 ../src/core/prefs.c:1148 ../src/core/prefs.c:1705
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf копче '%s' е наместено на невалидна вредност\n"
+
+#: ../src/core/prefs.c:1277
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+"range 1..128\n"
+msgstr ""
+"%d ставено во MateConf копчето %s не е разумна големина за _стрелка; мора да "
+"биде во истиот опсег 1..128 \n"
+
+#: ../src/core/prefs.c:1357
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Не може да парсува опис на фонт \"%s\" од MateConf копчето %s\n"
+
+#: ../src/core/prefs.c:1599
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+"%d ставено во MateConf копчето %s не е разумен број на работни околини, "
+"моментален максимум е %d\n"
+
+#: ../src/core/prefs.c:1659
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Работни околини за скршени апликации е оневозможено. Некои апликации можеби "
+"нема да работат добро.\n"
+
+#: ../src/core/prefs.c:1732
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "%d ставено во MateConf копче %s е надвор од дострел 0 до %d\n"
+
+#: ../src/core/prefs.c:1881
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Грешка при поставката на број на работни простори %d: %s\n"
+
+#: ../src/core/prefs.c:2246 ../src/core/prefs.c:2780 ../src/ui/menu.c:199
+#, c-format
+msgid "Workspace %d"
+msgstr "Работно место %d"
+
+#: ../src/core/prefs.c:2276 ../src/core/prefs.c:2446
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" пронајдено при конфигурирањето на базата не е валидна вредност за "
+"keybinding \"%s\"\n"
+
+#: ../src/core/prefs.c:2861
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Грешка при поставката на имиња на работните простори %d до \"%s\": %s\n"
+
+#: ../src/core/screen.c:410
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Екран %d на приказ '%s' е невалиден\n"
+
+#: ../src/core/screen.c:426
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Екран %d на приказ \"%s\" веќе има менџер на прозорци; пробај со --преклопи "
+"опција да го преклопиш моменталниот менаџер на прозорци.\n"
+
+#: ../src/core/screen.c:453
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Не можам да обезбедам менаџер на прозорци на екранот %d прикажи \"%s\"\n"
+
+#: ../src/core/screen.c:511
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Екран %d на приказ \"%s\" веќе има менаџер на прозорец\n"
+
+#: ../src/core/screen.c:721
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Не можам да отпуштам екран %d на приказ \"%s\"\n"
+
+#: ../src/core/session.c:826 ../src/core/session.c:833
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Не можам да креирам директориум '%s': %s\n"
+
+#: ../src/core/session.c:843
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Не можам да отворам сесија на датотеката '%s' за пишување: %s\n"
+
+#: ../src/core/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Грешка при пишувањето на датотека од сесијата '%s': %s\n"
+
+#: ../src/core/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Грешка при затворање на датотека од сесијата '%s': %s\n"
+
+#: ../src/core/session.c:1075
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Не успеав да ја прочитам снимената датотека од сесијата %s: %s\n"
+
+#: ../src/core/session.c:1110
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Не успеав да ја парсирам снимената датотека од сесијата: %s\n"
+
+#: ../src/core/session.c:1159
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> атрибутот е виден но веќе го имаме ID-от на сесијата"
+
+#: ../src/core/session.c:1172
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "Непознат атрибут %s на <marco_session> елемент"
+
+#: ../src/core/session.c:1189
+msgid "nested <window> tag"
+msgstr "вгнездена <window> ознака"
+
+#: ../src/core/session.c:1247 ../src/core/session.c:1279
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Непознат атрибут %s на <window> елемент."
+
+#: ../src/core/session.c:1351
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Непознат атрибут %s на <maximized> елемент"
+
+#: ../src/core/session.c:1411
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Непознат атрибут %s на <geometry> елемент"
+
+#: ../src/core/session.c:1431
+#, c-format
+msgid "Unknown element %s"
+msgstr "Непознат елемент %s"
+
+#: ../src/core/session.c:1868
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Грешка при отворањето на marco-дијалогот за да предупреди за апликации "
+"кои што не поддржуваат менаџирање на сесии : %s\n"
+
+#: ../src/core/util.c:98
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Не успеав да го отворам дневникот на дебагирање: %s\n"
+
+#: ../src/core/util.c:108
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Не успеав да fdopen() дневник датотеката %s: %s\n"
+
+#: ../src/core/util.c:114
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Отворив дневник датотека %s\n"
+
+#: ../src/core/util.c:133 ../src/tools/marco-message.c:176
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco беше компајлиран без поддршка за verbose режимот\n"
+
+#: ../src/core/util.c:231
+msgid "Window manager: "
+msgstr "Менаџер на прозорци"
+
+#: ../src/core/util.c:379
+msgid "Bug in window manager: "
+msgstr "Бубачка во менаџерот на прозорци"
+
+#: ../src/core/util.c:408
+msgid "Window manager warning: "
+msgstr "Предупредување од менаџерот на прозорци:"
+
+#: ../src/core/util.c:432
+msgid "Window manager error: "
+msgstr "Грешка од менаџерот на прозорци:"
+
+#: ../src/core/window-props.c:192
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Апликацијата намести лажно _NET_WM_PID %lu\n"
+
+#: ../src/core/window-props.c:324
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (на %s)"
+
+#: ../src/core/window-props.c:1406
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Невалиден WM_TRANSIENT_FOR прозорец 0x%lx одреден за %s.\n"
+
+#. first time through
+#: ../src/core/window.c:5650
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Прозорецот %s намести SM_CLIENT_ID на себе, наместо на WM_CLIENT_LEADER "
+"прозорецот одреден во ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6215
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Прозорец %s намести MWM совет кој што покажува дека ја менува големината но "
+"мести мин. големина %d x %d и макс. големина %d x %d; што нема смисла.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Прозорец 0x%lx има својсто %s\n"
+"кое што се очекува да има тип %s формат %d\n"
+"и всушност има тип %s формат %d n_предмети %d.\n"
+"Ова е најверојатно бубачка , не е бубачка на менаџерот на прозорци.\n"
+"Насловот на лентата од прозорецот=\"%s\" класа=\"%s\" име=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Својство %s на прозорец 0x%lx содржи невалиден UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Својствата %s на прозорецот 0x%lx содржи невалиден UTF-8 за предмет %d во "
+"листата\n"
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Не е имплементирано) Навигацијата работи во услови на апликација, не "
+"прозорец"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Променлива со опис на фонтот опишува фонт за лентата со наслов на "
+"прозорецот. Големината од описот ќе биде користена само ако "
+"titlebar_font_size option е поставено на 0. Исто така, оваа опција е "
+"оневозможена ако titlebar_uses_desktop_font опцијата е поставена на true."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Дејство на лентата со наслов двоен-клик"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Дејство на лентата со наслов среден клик"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Дејство на лентата со наслов десен-клик"
+
+#: ../src/marco.schemas.in.h:6
+msgid "Activate window menu"
+msgstr "Активно мени во прозорец"
+
+#: ../src/marco.schemas.in.h:7
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Уредување на копчиња на лентата со наслов"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"Уредување на копчиња на лентата со наслов. Вредноста треба да биде "
+"променлива, како \"мени:минимизирај,максимизирај,затвори\"; колоната го "
+"одвојува левиот ќош од прозорецот од десниот, и имињата на копчињата се "
+"одвоени со запирка. Двојни копчиња не се дозволени. Непознатите имиња на "
+"копчиња се игнорирани за да се додадат нови копчиња во идните верзии на "
+"marco без да секршат постарите."
+
+#: ../src/marco.schemas.in.h:9
+msgid "Automatically raises the focused window"
+msgstr "Автоматски го подигнува фокусираниот прозорец"
+
+#: ../src/marco.schemas.in.h:10
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Кликнување на прозорец додека е стегнато модификационото копче ќе го "
+"премести прозорецот (лев клик), смени големина на прозорец (среден клик), "
+"или прикажи во менито од прозорецот (десен клик). Менувачот е изразен како "
+"\"&lt;Alt&gt;\" или \"&lt;Супер&gt;\" на пример."
+
+#: ../src/marco.schemas.in.h:11
+msgid "Close window"
+msgstr "Затвори прозорец"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Commands to run in response to keybindings"
+msgstr "Команди да се активираат како одговор на биндозите од копчината"
+
+#: ../src/marco.schemas.in.h:13
+msgid "Compositing Manager"
+msgstr "Менаџер за комбинирање"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Control how new windows get focus"
+msgstr "Контролирај како новите прозорци добиваат фокус"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Current theme"
+msgstr "Тековна тема"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Прикажи во милисекунди за авто кревање опцијата"
+
+#: ../src/marco.schemas.in.h:17
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Одредува дали Метасити е менаџер за комбинирање."
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Одлучува дали апликацијата или системот може да генерира звуци кои ќе бидат "
+"користени заедно со други"
+
+#: ../src/marco.schemas.in.h:19
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Оневозможи можности кои се барани од стари или скршени апликации"
+
+#: ../src/marco.schemas.in.h:20
+msgid "Enable Visual Bell"
+msgstr "Овозможи визуелно ѕвонче"
+
+#: ../src/marco.schemas.in.h:21
+msgid "Hide all windows and focus desktop"
+msgstr "Сокриј ги сите прозорци и фокусирај го десктопот"
+
+#: ../src/marco.schemas.in.h:22
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Ако е поставено како точно и режимот на фокус е или \"редок\" или \"глувче\" "
+"тогаш фокусираниот прозорец автоматски ќе биде подигнат по задоцнување "
+"одредено од клучот auto_raise_delay. Ова не се однесува на кликнување на "
+"прозорецот за негово подигнување, ниту покажување на прозорецот при влечење-"
+"пуштање."
+
+#: ../src/marco.schemas.in.h:23
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ако точно, игнорирај ја линија со наслов_фонт опцијата, и користи го "
+"стандардниот апликациски фонт за насловите на прозорците."
+
+#: ../src/marco.schemas.in.h:24
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Ако е точно метасити ќе му даде на корисникот повеќе информации а помалку "
+"смисол за директна манипулација преку користење на жични рамки и со "
+"избегнување на анимации. Ова ја влошува користливоста за многу корисници но "
+"може да дозволи функционирање на постари апликации и на терминални сервери "
+"кои што не би функционирале поинаку. Како и да е, за да се избегнат "
+"проблеми, опцијата за користење на жични рамки е исклучена кога "
+"пристапливоста е вклучена."
+
+#: ../src/marco.schemas.in.h:25
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Ако е точно, Marco работи во услови на апликации отколку прозорци. "
+"Концептот е малку апстрактен, но генерално абликационо-базираното подесување "
+"е повеќе како Мас и помалку како Windows. Кога фокусирате прозорец во "
+"режимот за апликации, сите прозорци во апликацијата ќе се подигнат. Исто "
+"така во режимот за апликации, кликнувањата за фокус не се предаваат на "
+"прозорци од другите апликации. Режимот за апликации, сепак, не е целосно "
+"имплементиран во моментов."
+
+#: ../src/marco.schemas.in.h:26
+msgid "If true, trade off usability for less resource usage"
+msgstr "Ако е точно, намали ја користливоста за помалку ресурси"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Lower window below other windows"
+msgstr "намали го прозорецот под другите"
+
+#: ../src/marco.schemas.in.h:28
+msgid ""
+"Many actions (e.g. clicking in the client area, moving or resizing the "
+"window) normally raise the window as a side-effect. Setting this option to "
+"false, which is strongly discouraged, will decouple raising from other user "
+"actions, and ignore raise requests generated by applications. See http://"
+"bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+msgstr ""
+"Многу дејства (пр. кликнувањето во делот на клиентот, преместувањето или "
+"менувањето на големината на прозорецот) обично го подигнуваат прозорецот "
+"како страничен ефект. Дештиклирањето на оваа опција, кое што патем е строго "
+"непрепорачливо, ќе го одвои подигнувањето за другите кориснички дејства и "
+"ќе ги игнорира барањата за подигнување генерирани од апликацијата. Проверете "
+"ја http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+
+#: ../src/marco.schemas.in.h:29
+msgid "Maximize window"
+msgstr "Максимизирај прозорец"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Maximize window horizontally"
+msgstr "Максимизирај прозорец хоризонтално"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Maximize window vertically"
+msgstr "Максимизирај прозорец вертикално"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Minimize window"
+msgstr "Минимизирај прозорец"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Modifier to use for modified window click actions"
+msgstr "Менувач за користење за изменети дејства за кликање на прозорецот"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Премести назад меѓу панел и работната околина одма"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "Премести назад помеѓу панелите и работната околина со скокачки"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move backwards between windows immediately"
+msgstr "Премести назад меѓу прозорци веднаш"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move backwards between windows of an application immediately"
+msgstr "Премести назад меѓу прозорци од апликациа веднаш"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move backwards between windows of an application with popup"
+msgstr "Премести назад помеѓу панелите и работната околина со скокачки прозорци"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move between panels and the desktop immediately"
+msgstr "Премести помеѓу панели и работната околина веднаш"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move between panels and the desktop with popup"
+msgstr "Премести меѓу панели и работната околина со скокачки"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move between windows immediately"
+msgstr "Премести меѓу прозорци веднаш"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move between windows of an application immediately"
+msgstr "Премести меѓу прозорци од апликација веднаш"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move between windows of an application with popup"
+msgstr "Движи се меѓу прозорци од апликација со скокачки прозорци"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move between windows with popup"
+msgstr "премести меѓу прозорци со скокачки"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move focus backwards between windows using popup display"
+msgstr "Премести го фокусот назад меѓу прозорци користејќи скокачки приказ"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window"
+msgstr "Премести прозорец"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window one workspace down"
+msgstr "Премести прозорец за еден работен простор подолу"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window one workspace to the left"
+msgstr "Премести прозорец за една работна површина на лево"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window one workspace to the right"
+msgstr "Премести прозорец за една работна површина на десно"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window one workspace up"
+msgstr "Премести работна површина за едно работно место на горе"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to east side of screen"
+msgstr "Помести го прозорецот на десната страна на екранот"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to north side of screen"
+msgstr "Помести го прозорецот кон горната страна на екранот"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Move window to north-east corner"
+msgstr "Помести го прозорецот кон горниот десен ќош"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Move window to north-west corner"
+msgstr "Помести го прозорецот кон горниот лев ќош"
+
+#: ../src/marco.schemas.in.h:55
+msgid "Move window to south side of screen"
+msgstr "Помести го прозорецот кон долната страна на екранот"
+
+#: ../src/marco.schemas.in.h:56
+msgid "Move window to south-east corner"
+msgstr "Помести го прозорецот кон долниот десен ќош"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Move window to south-west corner"
+msgstr "Помести го прозорецот кон долниот лев ќош"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Move window to west side of screen"
+msgstr "Помести го прозорецот кон левата страна на екранот"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Move window to workspace 1"
+msgstr "Премести прозорец на работна површина 1"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Move window to workspace 10"
+msgstr "Премести прозорец на работна површина 10"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Move window to workspace 11"
+msgstr "Премести прозорец на работна површина 11"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Move window to workspace 12"
+msgstr "Премести прозорец на работна површина 12"
+
+#: ../src/marco.schemas.in.h:63
+msgid "Move window to workspace 2"
+msgstr "Премести прозорец на работна површина 2"
+
+#: ../src/marco.schemas.in.h:64
+msgid "Move window to workspace 3"
+msgstr "Премести прозорец на работна површина 3"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Move window to workspace 4"
+msgstr "Премести прозорец на работна површина 4"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Move window to workspace 5"
+msgstr "Премести прозорец на работна површина 5"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Move window to workspace 6"
+msgstr "Премести прозорец на работна површина 6"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Move window to workspace 7"
+msgstr "Премести прозорец на работна површина 7"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Move window to workspace 8"
+msgstr "Премести прозорец на работна површина 8"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Move window to workspace 9"
+msgstr "Премести прозорец на работна површина 9"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Name of workspace"
+msgstr "Име на работниот простор"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Number of workspaces"
+msgstr "Број на работни простори"
+
+#: ../src/marco.schemas.in.h:73
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Број на работни површини. Мора да е број поголем од нула, а постои максимум "
+"со цел да се спречи случајно уништување на десктопот барајќи премногу "
+"површини."
+
+#: ../src/marco.schemas.in.h:74
+msgid "Raise obscured window, otherwise lower"
+msgstr "Крени опскјурд прозорец, инаку спушти"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Raise window above other windows"
+msgstr "Крени прозорец над другите прозорци"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Resize window"
+msgstr "Промени големина"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Run a defined command"
+msgstr "Изврши друга команда"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Run a terminal"
+msgstr "Изврши терминал"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Show the panel menu"
+msgstr "Покажи го менито на панелот"
+
+#: ../src/marco.schemas.in.h:80
+msgid "Show the panel run application dialog"
+msgstr "Покажи го извршниот дијалог на панелот"
+
+#: ../src/marco.schemas.in.h:81
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Некои апликации ги занемаруваат спецификациите на начин кој резултира во "
+"намалени карактеристики на менаџерот на прозорци. Оваа опција го става "
+"Marco во ригорозно точен режим кој дава позацврстен кориснички интерфејс, "
+"и со него нема потреба од извршување на било какви апликации кои се "
+"однесуваат несоодветно."
+
+#: ../src/marco.schemas.in.h:82
+msgid "Switch to workspace 1"
+msgstr "Префрли на работен простор 1"
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 10"
+msgstr "Префрли на работен простор 10"
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace 11"
+msgstr "Префрли на работен простор 11"
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace 12"
+msgstr "Префрли на работен простор 12"
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace 2"
+msgstr "Префрли на работен простор 2"
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace 3"
+msgstr "Префрли на работен простор 3"
+
+#: ../src/marco.schemas.in.h:88
+msgid "Switch to workspace 4"
+msgstr "Префрли на работен простор 4"
+
+#: ../src/marco.schemas.in.h:89
+msgid "Switch to workspace 5"
+msgstr "Префрли на работен простор 5"
+
+#: ../src/marco.schemas.in.h:90
+msgid "Switch to workspace 6"
+msgstr "Префрли на работен простор 6"
+
+#: ../src/marco.schemas.in.h:91
+msgid "Switch to workspace 7"
+msgstr "Префрли на работен простор 7"
+
+#: ../src/marco.schemas.in.h:92
+msgid "Switch to workspace 8"
+msgstr "Префрли на работен простор 8"
+
+#: ../src/marco.schemas.in.h:93
+msgid "Switch to workspace 9"
+msgstr "Префрли на работен простор 9"
+
+#: ../src/marco.schemas.in.h:94
+msgid "Switch to workspace above this one"
+msgstr "Префрли на работен простор над овој"
+
+#: ../src/marco.schemas.in.h:95
+msgid "Switch to workspace below this one"
+msgstr "Префрли на работен простор под овој"
+
+#: ../src/marco.schemas.in.h:96
+msgid "Switch to workspace on the left"
+msgstr "Префрли на работниот простор на лево"
+
+#: ../src/marco.schemas.in.h:97
+msgid "Switch to workspace on the right"
+msgstr "Префрли на работен простор на десно"
+
+#: ../src/marco.schemas.in.h:98
+msgid "System Bell is Audible"
+msgstr "Системското ѕвоно е Audible"
+
+#: ../src/marco.schemas.in.h:99
+msgid "Take a screenshot"
+msgstr "Земи слика од екранот"
+
+#: ../src/marco.schemas.in.h:100
+msgid "Take a screenshot of a window"
+msgstr "Земи слика од екранот (прозорец)"
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Објаснува како Marco да го имплементира визуелното прикажување на "
+"системското ѕвонче или друг тип на ѕвонче. Моментално постојат 2 можности: "
+"fullscreen за целосно трепнување на екранот и frame_flash што предизвикува "
+"трепнување на насловот на апликацијата која го испратила сигналот."
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Датотеката /apps/marco/global_keybindings/run_command_N keys ги дефинира "
+"копчињата кои одговараат на соодветните команди. Притискањето на соодветното "
+"копче предизвикува соодветна акција."
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Датотеката /apps/marco/global_keybindings/run_command_screenshot го "
+"означува тастерот кој предизвикува командата специфицирана од ова подесување "
+"да биде повикана."
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Датотеката /apps/marco/global_keybindings/run_command_window_screenshot "
+"го означува тастерот кој предизвикува командата специфицирана од ова "
+"подесување да биде повикана."
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки што ја стартуваат соодветната означена наредба во /apps/"
+"marco/наредбите означени со кратенки, форматот изгледа како \"&It;"
+"Control&gt;a\" или \"&It;Shift&gt;&It;Alt&gt;F1. Парсерот дозволува мали и "
+"големи букви и исто така кратенки како \"&It;Ctl&gt;\" и \"&It;Ctrl&gt;\". "
+"Ако ја подесите опцијата до специјалниот стринг \"disabled\", тогаш ќе нема "
+"кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа над тековниот простор за "
+"работа. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа под тековниот простор за "
+"работа. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа на десната страна од "
+"тековниот простор за работа. Форматот изгледа како \"&lt;Control&gt;a\" или "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува мали и големи букви и исто "
+"така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите "
+"опцијата до специјалниот стринг \"disabled\", тогаш нема да има копчиња-"
+"кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа на десната страна од "
+"тековниот простор за работа. Форматот изгледа како \"&lt;Control&gt;a\" или "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува мали и големи букви и исто "
+"така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите "
+"опцијата до специјалниот стринг \"disabled\", тогаш нема да има копчиња-"
+"кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 1.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 10.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 11.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 12.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 2.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 3.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 4.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 5.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 6.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 7.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 8.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои водат до просторот за работа 9.Форматот изгледа како "
+"\"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува "
+"мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;"
+"Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled\", "
+"тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои се користат за активирање на менито на прозорецот."
+"Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+"Парсерот дозволува мали и големи букви и исто така кратенки како \"&lt;"
+"Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои се користат за затворање на прозорецот.Форматот "
+"изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот "
+"дозволува мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и "
+"\"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled"
+"\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за внесување \"mode mode\" и отпочнување на "
+"движење на прозорец користејќи ја тастатурата.Форматот изгледа како \"&lt;"
+"Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува мали и "
+"големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". "
+"Ако ја подесите опцијата до специјалниот стринг \"disabled\", тогаш нема да "
+"има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за внесување \"resize mode\" и отпочнување на "
+"промена на големината на прозорец користејќи ја тастатурата.Форматот изгледа "
+"како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот "
+"дозволува мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и "
+"\"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled"
+"\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за криење на сите нормални прозорци и "
+"подесување на фокусот на позадината на десктопот.Форматот изгледа како \"&lt;"
+"Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува мали и "
+"големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". "
+"Ако ја подесите опцијата до специјалниот стринг \"disabled\", тогаш нема да "
+"има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за зголемување на прозорец Форматот изгледа "
+"како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот "
+"дозволува мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и "
+"\"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled"
+"\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за намалување на прозорец. Форматот изгледа "
+"како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот "
+"дозволува мали и големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и "
+"\"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот стринг \"disabled"
+"\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец еден простор за "
+"работа надоле. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки "
+"како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до "
+"специјалниот стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа "
+"акција."
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец еден простор за "
+"работа налево. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки "
+"како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до "
+"специјалниот стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа "
+"акција."
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец еден простор за "
+"работа надесно. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така "
+"кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата "
+"до специјалниот стринг \"disabled\", тогаш нема да има копчиња-кратенки за "
+"оваа акција."
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец еден простор за "
+"работа нагоре. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки "
+"како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до "
+"специјалниот стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа "
+"акција."
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 1. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 10. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 11. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 12. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 2. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 3. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 4. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 5. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 6. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 7. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 8. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за поместување на прозорец на просторот за "
+"работа 9. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот дозволува мали и големи букви и исто така кратенки како "
+"\"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите опцијата до специјалниот "
+"стринг \"disabled\", тогаш нема да има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот наназад помеѓу панелите "
+"и десктопот, користејќи скокачки прозорец.Форматот изгледа како \"&lt;"
+"Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува мали и "
+"големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". "
+"Ако ја подесите опцијата до специјалниот стринг \"disabled\", тогаш нема да "
+"има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:146
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот наназад помеѓу панелите "
+"и десктопот, не користејќи скокачки прозорец.Форматот изгледа како \"&lt;"
+"Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува мали и "
+"големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". "
+"Ако ја подесите опцијата до специјалниот стринг \"disabled\", тогаш нема да "
+"има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:147
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application without a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот наназад помеѓу прозорци "
+"без скокачки прозорец. Држејќи \"shift \" заедно со ова копче го насочува "
+"правецот нанапред поврторно.Форматот изгледа како \"&lt;Control&gt;a\" или "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Парсерот дозволува мали и големи букви и "
+"исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите "
+"опцијата до специјалниот стринг \"disabled\", тогаш нема да има копчиња-"
+"кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application, using a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот наназад помеѓу прозорци "
+"користејќи скокачи прозорец. Држејќи \"shift \" заедно со ова копче го "
+"насочува правецот нанапред поврторно. Форматот изгледа како \"&lt;Control&gt;"
+"a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1\". Парсерот дозволува мали и големи "
+"букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја "
+"подесите опцијата до специјалниот стринг \"disabled\", тогаш нема да има "
+"копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот наназад помеѓу прозорци "
+"без скокачки прозорец. Држејќи \"shift \" заедно со ова копче го насочува "
+"правецот нанапред поврторно.Форматот изгледа како \"&lt;Control&gt;a\" или "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува мали и големи букви и исто "
+"така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите "
+"опцијата до специјалниот стринг \"disabled\", тогаш нема да има копчиња-"
+"кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот наназад помеѓу прозорци "
+"користејќи скокачи прозорец. Држејќи \"shift \" заедно со ова копче го "
+"насочува правецот нанапред поврторно. Форматот изгледа како \"&lt;Control&gt;"
+"a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува мали и големи букви "
+"и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја "
+"подесите опцијата до специјалниот стринг \"disabled\", тогаш нема да има "
+"копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:151
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот помеѓу панели и "
+"десктопот користејќи скокачки прозорец. Форматот изгледа како \"&lt;"
+"Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува мали и "
+"големи букви и исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". "
+"Ако ја подесите опцијата до специјалниот стринг \"disabled\", тогаш нема да "
+"има копчиња-кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот помеѓу панели и "
+"десктопот без скокачки прозорец. Форматот изгледа како \"&lt;Control&gt;a\" "
+"или \"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот дозволува мали и големи букви и "
+"исто така кратенки како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја подесите "
+"опцијата до специјалниот стринг \"disabled\", тогаш нема да има копчиња-"
+"кратенки за оваа акција."
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"The keybinding used to move focus between windows of an application without "
+"a popup window. Holding the \"shift\" key while using this binding reverses "
+"the direction of movement. The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот помеѓу прозорци и поп-"
+"ап. Држејќи го \"shift\" копчето додека го користиш binding ја менува "
+"насоката на движење. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Парсерот е либеларен и дозволува мали или големи "
+"букви, и истотака абервации како \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". Ако "
+"ја наместиш опцијата на специјална низа \"оневозможено\", тогаш ќе нема "
+"биндинг на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"The keybinding used to move focus between windows of an application, using a "
+"popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while "
+"using this binding reverses the direction of movement. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот помеѓу прозорци и "
+"користејќи скокачки. (Традиционално &lt;Alt&gt;F6) Држејќи го \"shift\" "
+"копчето додека го користиш binding ја менува насоката на движење. Форматот "
+"изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Парсерот е либеларен и дозволува мали или големи букви, и истотака абервации "
+"како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на "
+"специјална низа \"оневозможено\", тогаш ќе нема кратенки на тастатурата за "
+"таа акција."
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот помеѓу прозорци и поп-"
+"ап. (Традиционално &lt;Alt&gt;Escape) Држејќи го \"shift\" копчето додека го "
+"користиш binding ја менува насоката на движење. Форматот изгледа како \"&lt;"
+"Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот е либеларен и "
+"дозволува мали или големи букви, и истотака абервации како \"&lt;Ctl&gt;\" и "
+"\"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на специјална низа \"оневозможено"
+"\", тогаш ќе нема биндинг на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот помеѓу прозорци и "
+"користејќи скокачки. (Традиционално &lt;Alt&gt;Tab) Држејќи го \"shift\" "
+"копчето додека го користиш binding ја менува насоката на движење. Форматот "
+"изгледа како \"&lt;Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот е "
+"либеларен и дозволува мали или големи букви, и истотака абервации како \"&lt;"
+"Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на специјална низа "
+"\"оневозможено\", тогаш ќе нема кратенки на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за дали прозорецот ќе биде на сите работни "
+"простори или само на еден. Форматот изгледа како \"&lt;Ctrl&gt;a\" или\"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Парсерот е либеларен и дозволува мали или големи "
+"букви, и истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја "
+"наместиш опцијата на специјална низа \"оневозможено\", тогаш ќе нема "
+"кратенка на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:158
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за движење на фокусот помеѓу прозорци и "
+"користејќи скокачки. (Традиционално &lt;Alt&gt;Tab) Држејќи го \"shift\" "
+"копчето додека го користиш binding ја менува насоката на движење. Форматот "
+"изгледа како \"&lt;Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот е "
+"либеларен и дозволува мали или големи букви, и истотака абервации како \"&lt;"
+"Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на специјална низа "
+"\"оневозможено\", тогаш ќе нема кратенки на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:159
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за максимизација. Форматот изгледа како \"&lt;"
+"Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот е либеларен и "
+"дозволува мали или големи букви, и истотака абервации како \"&lt;Ctl&gt;\" и "
+"\"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на специјална низа \"оневозможено"
+"\", тогаш ќе нема кратенки на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:160
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за додавање/одземање сенка. Форматот изгледа "
+"како \"&lt;Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот е "
+"либеларен и дозволува мали или големи букви, и истотака абервации како \"&lt;"
+"Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на специјална низа "
+"\"оневозможено\", тогаш ќе нема кратенка на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:161
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за дали прозорецот ќе биде на сите работни "
+"простори или само на еден. Форматот изгледа како \"&lt;Ctrl&gt;a\" или\"&lt;"
+"Shift&gt;&lt;Alt&gt;F1. Парсерот е либеларен и дозволува мали или големи "
+"букви, и истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја "
+"наместиш опцијата на специјална низа \"оневозможено\", тогаш ќе нема "
+"кратенка на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:162
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за отмаксимизирање на прозорец. Форматот "
+"изгледа како \"&lt;Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот е "
+"либеларен и дозволува мали или големи букви, и истотака абервации како \"&lt;"
+"Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на специјална низа "
+"\"оневозможено\", тогаш ќе нема кратенка на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за отмаксимизирање на прозорец. Форматот "
+"изгледа како \"&lt;Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот е "
+"либеларен и дозволува мали или големи букви, и истотака абервации како \"&lt;"
+"Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на специјална низа "
+"\"оневозможено\", тогаш ќе нема кратенка на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:164
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за покажување на панелот на главното мени. "
+"Форматот изгледа како \"&lt;Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;Alt&gt;F1. "
+"Парсерот е либеларен и дозволува мали или големи букви, и истотака абервации "
+"како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на "
+"специјална низа \"оневозможено\", тогаш ќе нема кратенки на тастатурата за "
+"таа акција."
+
+#: ../src/marco.schemas.in.h:165
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат програмаот за превземање на слики да слика "
+"прозорец. Форматот изгледа како \"&lt;Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;"
+"Alt&gt;F1. Парсерот е либеларен и дозволува мали или големи букви, и "
+"истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш "
+"опцијата на специјална низа \"оневозможено\", тогаш ќе нема кратенки на "
+"тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:166
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за активирање на панелот на алатката за "
+"превземање слики. Форматот изгледа како \"&lt;Ctrl&gt;a\" или\"&lt;Shift&gt;"
+"&lt;Alt&gt;F1. Парсерот е либеларен и дозволува мали или големи букви, и "
+"истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш "
+"опцијата на специјална низа \"оневозможено\", тогаш ќе нема кратенки на "
+"тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:167
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Копчињата-кратенки кои служат за покажување на панелот на главното мени. "
+"Форматот изгледа како \"&lt;Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;Alt&gt;F1. "
+"Парсерот е либеларен и дозволува мали или големи букви, и истотака абервации "
+"како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на "
+"специјална низа \"оневозможено\", тогаш ќе нема кратенки на тастатурата за "
+"таа акција."
+
+#: ../src/marco.schemas.in.h:168
+msgid "The name of a workspace."
+msgstr "Името на работниот простор"
+
+#: ../src/marco.schemas.in.h:169
+msgid "The screenshot command"
+msgstr "Командата за слика на екранот"
+
+#: ../src/marco.schemas.in.h:170
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Темата одлучува за изгледот на границите, лентата со наслов, и.т.н."
+
+#: ../src/marco.schemas.in.h:171
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Времето се одложува пред кревање на прозорец ако авто_кревај опцијата е "
+"овозможена. Одложувањето е во илјадинки од секунда."
+
+#: ../src/marco.schemas.in.h:172
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Режимот за фокусирање на прозорци покажува колку прозорци се активни. Има "
+"три можни вредности; \"клик\" значи дека прозорецот мора да биде кликнат за "
+"да биде фокусиран , \"закос\" значи дека прозорецот е фокусиран кога "
+"глувчето ќе влезе во него, и \"глувче\" значи дека прозорецот ќе биде "
+"фокусиран кога глувчето ќе влезе во него, и излегува од фокус кога ќе го "
+"напушти прозорецот."
+
+#: ../src/marco.schemas.in.h:173
+msgid "The window screenshot command"
+msgstr "Командата за слика на екранот"
+
+#: ../src/marco.schemas.in.h:174
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another one, it raises the window above all others, "
+"and if the window is already fully visible, it lowers it below all others. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Копчињата кратенки се менуваат во зависност од тоа дали прозорецот е над или "
+"под друг прозорец. Ако прозорецот е покриен од друг, го крева прозорецот на "
+"другиот. Ако прозорецот е целосно визибилен, го враќа зад другите. Форматот "
+"изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Парсерот е либеларен и дозволува мали или големи букви, и истотака абервации "
+"како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\" . Ако ја наместите опцијата на "
+"специјална низа \"оневозможено\", тогаш ќе нема кратенки на тастатурата за "
+"таа акција. "
+
+#: ../src/marco.schemas.in.h:175
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Оваа кратенка за копче го намалува прозорецот под други. Форматот изгледа "
+"како \"&lt;Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот е "
+"либеларен и дозволува мали или големи букви, и истотака абервации како \"&lt;"
+"Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на специјална низа "
+"\"оневозможено\", тогаш ќе нема кратенки на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:176
+msgid ""
+"This keybinding moves a window against the north (top) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Оваа кратенка за копче го поместува прозорецот кон горната страна на "
+"екранот. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Парсерот е либеларен и дозволува мали или големи букви, и "
+"истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместите "
+"опцијата на специјална низа \"оневозможено\", тогаш ќе нема кратенки на "
+"тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:177
+msgid ""
+"This keybinding moves a window into the east (right) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Оваа кратенка за копче го поместува прозорецот кон десната страна на "
+"екранот. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Парсерот е либеларен и дозволува мали или големи букви, и "
+"истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместите "
+"опцијата на специјална низа \"оневозможено\", тогаш ќе нема кратенки на "
+"тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:178
+msgid ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Оваа кратенка за копче го поместува прозорецот кон горната десна страна на "
+"екранот. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Парсерот е либеларен и дозволува мали или големи букви, и "
+"истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместите "
+"опцијата на специјална низа \"оневозможено\", тогаш ќе нема кратенки на "
+"тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:179
+msgid ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Оваа кратенка за копче го поместува прозорецот кон горната лева страна на "
+"екранот. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Парсерот е либеларен и дозволува мали или големи букви, и "
+"истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместите "
+"опцијата на специјална низа \"оневозможено\", тогаш ќе нема кратенки на "
+"тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:180
+msgid ""
+"This keybinding moves a window into the south (bottom) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Оваа кратенка за копче го поместува прозорецот кон долната страна на "
+"екранот. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Парсерот е либеларен и дозволува мали или големи букви, и "
+"истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместите "
+"опцијата на специјална низа \"оневозможено\", тогаш ќе нема кратенки на "
+"тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:181
+msgid ""
+"This keybinding moves a window into the south-east (bottom right) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Оваа кратенка за копче го поместува прозорецот кон долната десна страна на "
+"екранот. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Парсерот е либеларен и дозволува мали или големи букви, и "
+"истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместите "
+"опцијата на специјална низа \"оневозможено\", тогаш ќе нема кратенки на "
+"тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:182
+msgid ""
+"This keybinding moves a window into the south-west (bottom left) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Оваа кратенка за копче го поместува прозорецот кон долната лева страна на "
+"екранот. Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Парсерот е либеларен и дозволува мали или големи букви, и "
+"истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместите "
+"опцијата на специјална низа \"оневозможено\", тогаш ќе нема кратенки на "
+"тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:183
+msgid ""
+"This keybinding moves a window into the west (left) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Оваа кратенка за копче го поместува прозорецот кон левата страна на екранот. "
+"Форматот изгледа како \"&lt;Control&gt;a\" или \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Парсерот е либеларен и дозволува мали или големи букви, и истотака "
+"абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместите опцијата "
+"на специјална низа \"оневозможено\", тогаш ќе нема кратенки на тастатурата "
+"за таа акција."
+
+#: ../src/marco.schemas.in.h:184
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Оваа кратенка за копче го подигнува прозорецот над други. Форматот изгледа "
+"како \"&lt;Ctrl&gt;a\" или\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот е "
+"либеларен и дозволува мали или големи букви, и истотака абервации како \"&lt;"
+"Ctl&gt;\" и \"&lt;Ctrl&gt;\". Ако ја наместиш опцијата на специјална низа "
+"\"оневозможено\", тогаш ќе нема кратенки на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:185
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Оваа кратенка за копче ја променува големината на прозорецот и ги пополнува "
+"хоризонталните места на екранот. Форматот изгледа како \"&lt;Ctrl&gt;a\" или"
+"\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот е либеларен и дозволува мали или "
+"големи букви, и истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". "
+"Ако ја наместиш опцијата на специјална низа \"оневозможено\", тогаш ќе нема "
+"кратенки на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:186
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Оваа кратенка за копче ја променува големината на прозорецот и ги пополнува "
+"вертикалните места на екранот. Форматот изгледа како \"&lt;Ctrl&gt;a\" или"
+"\"&lt;Shift&gt;&lt;Alt&gt;F1. Парсерот е либеларен и дозволува мали или "
+"големи букви, и истотака абервации како \"&lt;Ctl&gt;\" и \"&lt;Ctrl&gt;\". "
+"Ако ја наместиш опцијата на специјална низа \"оневозможено\", тогаш ќе нема "
+"кратенки на тастатурата за таа акција."
+
+#: ../src/marco.schemas.in.h:187
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"Оваа опција ги одредува ефектите на дупло кликање на лентата со наслов. "
+"Моментални валидни опции се 'вклучи_сенка'. која ќе вклучи/исклучи сенка на "
+"прозорецот, и 'вклучи_максимизирање' која ќе го максимизира/врати "
+"прозорецот, 'минимизирај' која што ќе го минимизира прозорецот и 'ништо' "
+"која што нема да прави ништо."
+
+#: ../src/marco.schemas.in.h:188
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"Оваа опција ги одредува ефектите на дупло кликање на лентата со наслов. "
+"Моментални валидни опции се 'вклучи_сенка'. која ќе вклучи/исклучи сенка на "
+"прозорецот, и 'вклучи_максимизирање' која ќе го максимизира/врати "
+"прозорецот, 'минимизирај' која што ќе го минимизира прозорецот и 'ништо' "
+"која што нема да прави ништо."
+
+#: ../src/marco.schemas.in.h:189
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"Оваа опција ги одредува ефектите на дупло кликање на лентата со наслов. "
+"Моментални валидни опции се 'вклучи_сенка'. која ќе вклучи/исклучи сенка на "
+"прозорецот, и 'вклучи_максимизирање' која ќе го максимизира/врати "
+"прозорецот, 'минимизирај' која што ќе го минимизира прозорецот и 'ништо' "
+"која што нема да прави ништо."
+
+#: ../src/marco.schemas.in.h:190
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Оваа опција овозможува додатна контрола врз тоа како новите прозорци "
+"добиваат фокус. Има две можни вредности: \"паметно\" го применува режимот на "
+"нормален фокус на корисникот и \"стриктно\" резултира во прозорци стартувани "
+"од терминал и без даден фокус."
+
+#: ../src/marco.schemas.in.h:191
+msgid "Toggle always on top state"
+msgstr "Секогаш менувај на највисокото"
+
+#: ../src/marco.schemas.in.h:192
+msgid "Toggle fullscreen mode"
+msgstr "Промени на цел екран"
+
+#: ../src/marco.schemas.in.h:193
+msgid "Toggle maximization state"
+msgstr "Промени ја состојбата на максимизација"
+
+#: ../src/marco.schemas.in.h:194
+msgid "Toggle shaded state"
+msgstr "Промени ја состојбата на сенка"
+
+#: ../src/marco.schemas.in.h:195
+msgid "Toggle window on all workspaces"
+msgstr "Промени прозорец на сите работни простори"
+
+#: ../src/marco.schemas.in.h:196
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Го вклучува визуелниот индикатор кога некоја апликација или системот ќе "
+"издаде 'ѕвоно' или 'бип'; корисно за луѓето со оштетен слух за користење во "
+"бучна околина."
+
+#: ../src/marco.schemas.in.h:197
+msgid "Unmaximize window"
+msgstr "Намали прозорец"
+
+#: ../src/marco.schemas.in.h:198
+msgid "Use standard system font in window titles"
+msgstr "Користи стандарсен систем на фонт во насловите на прозорците"
+
+#: ../src/marco.schemas.in.h:199
+msgid "Visual Bell Type"
+msgstr "Визуелно ѕвоно тип"
+
+#: ../src/marco.schemas.in.h:200
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Дали кревањето да биде ефект проследен од други кориснички дејствија"
+
+#: ../src/marco.schemas.in.h:201
+msgid "Window focus mode"
+msgstr "Фокус на прозорци "
+
+#: ../src/marco.schemas.in.h:202
+msgid "Window title font"
+msgstr "Фонт на лентата со наслов"
+
+#: ../src/ui/frames.c:1077
+msgid "Close Window"
+msgstr "Затвори прозорец"
+
+#: ../src/ui/frames.c:1080
+msgid "Window Menu"
+msgstr "Мени во прозорец"
+
+#: ../src/ui/frames.c:1083
+msgid "Minimize Window"
+msgstr "Спушти прозорец"
+
+#: ../src/ui/frames.c:1086
+msgid "Maximize Window"
+msgstr "Зголеми прозорец"
+
+#: ../src/ui/frames.c:1089
+msgid "Unmaximize Window"
+msgstr "Намали прозорец"
+
+#: ../src/ui/frames.c:1092
+msgid "Roll Up Window"
+msgstr "Завиткај го прозорецот"
+
+#: ../src/ui/frames.c:1095
+msgid "Unroll Window"
+msgstr "Одвиткај го прозорецот"
+
+#: ../src/ui/frames.c:1098
+msgid "Keep Window On Top"
+msgstr "Задржи го прозорецот најгоре"
+
+#: ../src/ui/frames.c:1101
+msgid "Remove Window From Top"
+msgstr "Отстрани го прозорецот од најгоре"
+
+#: ../src/ui/frames.c:1104
+msgid "Always On Visible Workspace"
+msgstr "Секогаш на видливиот работен простор"
+
+#: ../src/ui/frames.c:1107
+msgid "Put Window On Only One Workspace"
+msgstr "Стави го прозорецот на само една работна површина"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Ми_нимизирај"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ма_ксимизирај"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Нама_ли"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Завиткај"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Одвиткај"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Помести"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Промени големина"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Премести ја лентата со алатки на _екранот"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "_Најгоре"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Секогаш видлив на работниот простор"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Само на овој работен простор"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Премести на _левиот работен простор"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Премести на _десниот работен простор"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Премести на _горниот работен простор"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Премести на _долниот работен простор"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "Затвори"
+
+#: ../src/ui/menu.c:208
+msgid "Workspace 1_0"
+msgstr "Работно место 1_0"
+
+#: ../src/ui/menu.c:210
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Работно место %s%d"
+
+#: ../src/ui/menu.c:390
+msgid "Move to Another _Workspace"
+msgstr "Премести на друг _работен простор"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:129
+msgid "Super"
+msgstr "Супер"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Хипер"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Режим2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Режим3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Режим4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Режим5"
+
+#: ../src/ui/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr "Прозорецот \"%s\" не реагира."
+
+#: ../src/ui/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Можете да одберете да причекате апликацијата да продолжи или да ја присилите "
+"да се исклучи целосно."
+
+#: ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr "_Чекај"
+
+#: ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "Принуди излез"
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr "Наслов"
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr "Класа"
+
+#: ../src/ui/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Овие прозорци не поддржуваат \"сними моментални измени\" и ќе мора да бидат "
+"рестартирани рачно наредниот пат кога ќе се најавите."
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Имаше грешка при извршување на\"%s\":\n"
+"%s."
+
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme-parser.c:227 ../src/ui/theme-parser.c:245
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Линија %d карактер %d: %s"
+
+#: ../src/ui/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Атрибутот %s се повторува два пати на истиот <%s> елемент"
+
+#: ../src/ui/theme-parser.c:414 ../src/ui/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Атрибутот %s е невалиден во <%s> елемент во овој контекст"
+
+#: ../src/ui/theme-parser.c:500
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Целиот број %ld мора да биде позитивен"
+
+#: ../src/ui/theme-parser.c:508
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Целиот број %ld е преголем, максимумот изнесува %d"
+
+#: ../src/ui/theme-parser.c:536 ../src/ui/theme-parser.c:652
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Не можам да го парсирам %s како децимален број"
+
+#: ../src/ui/theme-parser.c:567 ../src/ui/theme-parser.c:595
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Логичките вредности мора бидат \"точно\" или \"неточно\" а не \"%s\""
+
+#: ../src/ui/theme-parser.c:622
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Аголот мора да е меѓу 0.0 и 360.0, а беше %g\n"
+
+#: ../src/ui/theme-parser.c:685
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Алфа каналот мора да биде меѓу 0.0 (невидлив) и 1.0 (целосно видлив), беше %"
+"g\n"
+
+#: ../src/ui/theme-parser.c:750
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Невалидна големина на насловиоте \"%s\" (мора да биди една од xx-мало,x-мало,"
+"мало,средно,големо,x-големо,xx-големо)\n"
+
+#: ../src/ui/theme-parser.c:795 ../src/ui/theme-parser.c:803
+#: ../src/ui/theme-parser.c:885 ../src/ui/theme-parser.c:982
+#: ../src/ui/theme-parser.c:1024 ../src/ui/theme-parser.c:1135
+#: ../src/ui/theme-parser.c:1185 ../src/ui/theme-parser.c:1193
+#: ../src/ui/theme-parser.c:3093 ../src/ui/theme-parser.c:3184
+#: ../src/ui/theme-parser.c:3191 ../src/ui/theme-parser.c:3198
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "Нема %s атрибут на <%s> елементот"
+
+#: ../src/ui/theme-parser.c:919 ../src/ui/theme-parser.c:990
+#: ../src/ui/theme-parser.c:1032 ../src/ui/theme-parser.c:1143
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> името %s употребено по вторпат"
+
+#: ../src/ui/theme-parser.c:931 ../src/ui/theme-parser.c:1044
+#: ../src/ui/theme-parser.c:1155
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> родителот %s не е дефиниран"
+
+#: ../src/ui/theme-parser.c:1057
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> геометријата %s не е дефинирана"
+
+#: ../src/ui/theme-parser.c:1070
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> морате да одредите геометрија или родител кој име геометрија"
+
+#: ../src/ui/theme-parser.c:1112
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Мора да одредите позадина за вредноста на алфа да има смисла"
+
+#: ../src/ui/theme-parser.c:1203
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Непознат тип %s на <%s> елемент"
+
+#: ../src/ui/theme-parser.c:1214
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Непознат каскаден стил %s на <%s> елемент"
+
+#: ../src/ui/theme-parser.c:1222
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "На прозорецот %s веќе е доделен сет од стилови"
+
+#: ../src/ui/theme-parser.c:1258
+msgid "Theme already has a fallback icon"
+msgstr "Темата има резервна икона"
+
+#: ../src/ui/theme-parser.c:1270
+msgid "Theme already has a fallback mini_icon"
+msgstr "Темата веќе има резервна мини _икона"
+
+#: ../src/ui/theme-parser.c:1283 ../src/ui/theme-parser.c:1347
+#: ../src/ui/theme-parser.c:1636 ../src/ui/theme-parser.c:3285
+#: ../src/ui/theme-parser.c:3339 ../src/ui/theme-parser.c:3511
+#: ../src/ui/theme-parser.c:3727 ../src/ui/theme-parser.c:3765
+#: ../src/ui/theme-parser.c:3803 ../src/ui/theme-parser.c:3841
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Елементот <%s> не е дозволен под <%s>"
+
+#: ../src/ui/theme-parser.c:1373 ../src/ui/theme-parser.c:1460
+#: ../src/ui/theme-parser.c:1530
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Нема име атрибутот на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1380 ../src/ui/theme-parser.c:1467
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Нема вредност атрибутот на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1411 ../src/ui/theme-parser.c:1425
+#: ../src/ui/theme-parser.c:1484
+msgid "Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"Не можам да одредам истовремено ширина на копче/висина на копче и степен на "
+"зголемување за копчињата"
+
+#: ../src/ui/theme-parser.c:1434
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Растојанието %s е непознато"
+
+#: ../src/ui/theme-parser.c:1493
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Степенот на приказ %s е непознат"
+
+#: ../src/ui/theme-parser.c:1537
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "Нема \"горен\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1544
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "Нема \"долен\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1551
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "Нема \"лев\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1558
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "Нема \"десен\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1590
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Границата %s е непозната"
+
+#: ../src/ui/theme-parser.c:1736 ../src/ui/theme-parser.c:1850
+#: ../src/ui/theme-parser.c:1961 ../src/ui/theme-parser.c:2192
+#: ../src/ui/theme-parser.c:3023
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "Нема \"боја\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1743
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "Нема \"x1\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1750 ../src/ui/theme-parser.c:2864
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "Нема \"y1\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1757
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "Нема \"x2\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1764 ../src/ui/theme-parser.c:2871
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "Нема \"y2\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1857 ../src/ui/theme-parser.c:1968
+#: ../src/ui/theme-parser.c:2117 ../src/ui/theme-parser.c:2199
+#: ../src/ui/theme-parser.c:2306 ../src/ui/theme-parser.c:2408
+#: ../src/ui/theme-parser.c:2630 ../src/ui/theme-parser.c:2758
+#: ../src/ui/theme-parser.c:2857 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3030
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "Нема \"x\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1864 ../src/ui/theme-parser.c:1975
+#: ../src/ui/theme-parser.c:2124 ../src/ui/theme-parser.c:2206
+#: ../src/ui/theme-parser.c:2313 ../src/ui/theme-parser.c:2415
+#: ../src/ui/theme-parser.c:2637 ../src/ui/theme-parser.c:2765
+#: ../src/ui/theme-parser.c:2941 ../src/ui/theme-parser.c:3037
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "Нема \"y\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1871 ../src/ui/theme-parser.c:1982
+#: ../src/ui/theme-parser.c:2131 ../src/ui/theme-parser.c:2213
+#: ../src/ui/theme-parser.c:2320 ../src/ui/theme-parser.c:2422
+#: ../src/ui/theme-parser.c:2644 ../src/ui/theme-parser.c:2772
+#: ../src/ui/theme-parser.c:2948
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "Нема \"ширина\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1878 ../src/ui/theme-parser.c:1989
+#: ../src/ui/theme-parser.c:2138 ../src/ui/theme-parser.c:2220
+#: ../src/ui/theme-parser.c:2327 ../src/ui/theme-parser.c:2429
+#: ../src/ui/theme-parser.c:2651 ../src/ui/theme-parser.c:2779
+#: ../src/ui/theme-parser.c:2955
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "Нема \"висина\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:1998
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Нема „почетен_агол“ или „од“ атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:2005
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Нема „проширен_агол“или „до“ атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:2014
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "Нема \"почетен_агол\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:2021
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "Нема \"опсег_агол\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:2227
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "Нема \"alpha\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:2299
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "Нема \"тип\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:2349
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Не ја разбирам вредноста \"%s\" како тип на градиент"
+
+#: ../src/ui/theme-parser.c:2436
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "Нема \"име на датотека\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:2461 ../src/ui/theme-parser.c:2980
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Не го разбирам типот на поплнување \"%s\" за <%s> елемент"
+
+#: ../src/ui/theme-parser.c:2609 ../src/ui/theme-parser.c:2744
+#: ../src/ui/theme-parser.c:2850
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "Нема \"состојба\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:2616 ../src/ui/theme-parser.c:2751
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "Нема \"сенка\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:2623
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "Нема \"стрелка\" атрибут на елементот <%s>"
+
+#: ../src/ui/theme-parser.c:2676 ../src/ui/theme-parser.c:2800
+#: ../src/ui/theme-parser.c:2891
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Не ја разбирам состојбата \"%s\" за <%s> елемент"
+
+#: ../src/ui/theme-parser.c:2686 ../src/ui/theme-parser.c:2810
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Не ја разбирам сенката \"%s\" за <%s> елемент"
+
+#: ../src/ui/theme-parser.c:2696
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Не го разбирам курсорот \"%s\" за <%s> елемент"
+
+#: ../src/ui/theme-parser.c:3120 ../src/ui/theme-parser.c:3237
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Ниеден <draw_ops> повикан \"%s\" е дефиниран"
+
+#: ../src/ui/theme-parser.c:3132 ../src/ui/theme-parser.c:3249
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Вклучува draw_ops \"%s\" тука ќе креира циркуларна референца"
+
+#: ../src/ui/theme-parser.c:3314
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "Нема \"вредност\" атрибут на <%s> елемент"
+
+#: ../src/ui/theme-parser.c:3371
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "Нема \"позиција\" атрибут на <%s> елемент"
+
+#: ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Непозната позиција \"%s\" за дел од рамката"
+
+#: ../src/ui/theme-parser.c:3388
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Стилот на рамката веќе има дел во позицијата %s"
+
+#: ../src/ui/theme-parser.c:3405 ../src/ui/theme-parser.c:3496
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Нема <draw_ops> со името %s дефинирано"
+
+#: ../src/ui/theme-parser.c:3433
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "Нема \"функција\" атрибут на <%s> елемент"
+
+#: ../src/ui/theme-parser.c:3441 ../src/ui/theme-parser.c:3557
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "Нема \"состојба\" атрибут на <%s> елемент"
+
+#: ../src/ui/theme-parser.c:3450
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Непозната функција \"%s\" за копче"
+
+#: ../src/ui/theme-parser.c:3459
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Функцијата на копчето \"%s\" не постои во оваа верзија (%d, треба %d)"
+
+#: ../src/ui/theme-parser.c:3471
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Непозната состојба \"%s\" за копче"
+
+#: ../src/ui/theme-parser.c:3479
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Стилот на рамката има копче за функцијата %s состојба %s"
+
+#: ../src/ui/theme-parser.c:3549
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "Нема \"фокус\" атрибут на <%s> елемент"
+
+#: ../src/ui/theme-parser.c:3565
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "Нема \"стил\" атрибут на <%s> елемент"
+
+#: ../src/ui/theme-parser.c:3574
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" не е валидна вредност за атрибутот на фокусот"
+
+#: ../src/ui/theme-parser.c:3583
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" не е валидна вредност за состојбата на атрибутот"
+
+#: ../src/ui/theme-parser.c:3593
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Стил наречен \"%s\" не е дефинирано"
+
+#: ../src/ui/theme-parser.c:3604
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "Нема \"смени големина\" атрибут на <%s> елемент"
+
+#: ../src/ui/theme-parser.c:3614 ../src/ui/theme-parser.c:3637
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" не е валидна вредност за атрибутот за менување на вредноста"
+
+#: ../src/ui/theme-parser.c:3648
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Не треба да има \"смени големина\" атрибут на <%s> елемент за максимизирано/"
+"засенето"
+
+#: ../src/ui/theme-parser.c:3662
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Не треба да има „смени големина“ атрибут на <%s> елемент за максимизирани "
+"состојби"
+
+#: ../src/ui/theme-parser.c:3676 ../src/ui/theme-parser.c:3698
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Стилот веќе беше специфициран за состојба %s промени големина %s фокус %s"
+
+#: ../src/ui/theme-parser.c:3687 ../src/ui/theme-parser.c:3709
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Стилот веќе беше специфициран за состојба %s фокус %s"
+
+#: ../src/ui/theme-parser.c:3748
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Не може да имаш две draw_ops за <piece> елемент (тема специфицирана за "
+"draw_ops и истотака за <draw_ops> елемент, или одредени два елементи)"
+
+#: ../src/ui/theme-parser.c:3786
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Не може да имаш две draw_ops за <button> елемент (тема специфицирана за "
+"draw_ops и истотака за <draw_ops> елемент, или одредени два елементи)"
+
+#: ../src/ui/theme-parser.c:3824
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Не може да имаш две draw_ops за <menu_icon> елемент (тема специфицирана за "
+"draw_ops и истотака за <draw_ops> елемент, или одредени два елементи)"
+
+#: ../src/ui/theme-parser.c:3872
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Најнадворешните елементи во темата мора да бидат <marco_theme> не <%s>"
+
+#: ../src/ui/theme-parser.c:3892
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Елемент <%s> не е дозволено внатрешно име/автор/датум/опис на елементот"
+
+#: ../src/ui/theme-parser.c:3897
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Елемент <%s> не е дозволен во <constant> елемент"
+
+#: ../src/ui/theme-parser.c:3909
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Елемент <%s> не е дозволен во дистанца/граница/однос на аспект елемент"
+
+#: ../src/ui/theme-parser.c:3931
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Елемент <%s> не е дозволен во операцијата на елементот на цртање"
+
+#: ../src/ui/theme-parser.c:3941 ../src/ui/theme-parser.c:3971
+#: ../src/ui/theme-parser.c:3976 ../src/ui/theme-parser.c:3981
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Елемент <%s> не е дозволен во <%s> елемент"
+
+#: ../src/ui/theme-parser.c:4203
+msgid "No draw_ops provided for frame piece"
+msgstr "Нема draw_ops овозможени за овој дел од рамката"
+
+#: ../src/ui/theme-parser.c:4218
+msgid "No draw_ops provided for button"
+msgstr "Нема draw_ops овозможени за копче"
+
+#: ../src/ui/theme-parser.c:4270
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Забранет е текстот во елементот <%s>"
+
+#: ../src/ui/theme-parser.c:4325
+msgid "<name> specified twice for this theme"
+msgstr "<name> специфицирано два пати за оваа тема"
+
+#: ../src/ui/theme-parser.c:4336
+msgid "<author> specified twice for this theme"
+msgstr "<author> специфицирано два пати за оваа тема"
+
+#: ../src/ui/theme-parser.c:4347
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> специфицирано два пати за оваа тема"
+
+#: ../src/ui/theme-parser.c:4358
+msgid "<date> specified twice for this theme"
+msgstr "<date> специфицирано два пати за оваа тема"
+
+#: ../src/ui/theme-parser.c:4369
+msgid "<description> specified twice for this theme"
+msgstr "<description> специфицирано два пати за оваа тема"
+
+#: ../src/ui/theme-parser.c:4636
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Не успеав да најдам валидна датотека за темата %s\n"
+
+#: ../src/ui/theme-parser.c:4692
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Датотеката на темата %s не содржи корен <marco_theme> елемент"
+
+#: ../src/ui/theme-viewer.c:74
+msgid "/_Windows"
+msgstr "/_Прозорци"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/Windows/tearoff"
+msgstr "/Прозорци/откини"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/_Dialog"
+msgstr "/Прозорци/_дијалог"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Modal dialog"
+msgstr "/Прозорци/_модален дијалог"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Utility"
+msgstr "/Прозорци/_алатки"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Splashscreen"
+msgstr "/Прозорци/_Splashscreen"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Top dock"
+msgstr "Прозорци/_Горно место за спуштање"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Bottom dock"
+msgstr "Прозорци/_Долно место за спуштање"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Left dock"
+msgstr "Прозорци/_Лево место за спуштање"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Right dock"
+msgstr "Прозорци/_Десно место за спуштање"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_All docks"
+msgstr "/Прозорци/_Сите места"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/Des_ktop"
+msgstr "/Прозорци/Работна по_вршина"
+
+#: ../src/ui/theme-viewer.c:134
+msgid "Open another one of these windows"
+msgstr "Отвори уште еден од овие прозорци"
+
+#: ../src/ui/theme-viewer.c:141
+msgid "This is a demo button with an 'open' icon"
+msgstr "Ова е демо копче со икона за 'отворање'"
+
+#: ../src/ui/theme-viewer.c:148
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Ова е демо копче со икона за 'излез'"
+
+#: ../src/ui/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr "Ова е порака пример во дијалог за пример"
+
+#: ../src/ui/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Предмет од лажното мени %d\n"
+
+#: ../src/ui/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "Прозорец само со граници"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Bar"
+msgstr "Лента"
+
+#: ../src/ui/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "Нормален прозорец за апликации"
+
+#: ../src/ui/theme-viewer.c:381
+msgid "Dialog Box"
+msgstr "Кутија за дијалог"
+
+#: ../src/ui/theme-viewer.c:385
+msgid "Modal Dialog Box"
+msgstr "Модална кутија за дијалог"
+
+#: ../src/ui/theme-viewer.c:389
+msgid "Utility Palette"
+msgstr "Палета на алатки"
+
+#: ../src/ui/theme-viewer.c:393
+msgid "Torn-off Menu"
+msgstr "Откорни го менито"
+
+#: ../src/ui/theme-viewer.c:397
+msgid "Border"
+msgstr "Граница"
+
+#: ../src/ui/theme-viewer.c:725
+#, c-format
+msgid "Button layout test %d"
+msgstr "Тест за распоред на копчето %d"
+
+#: ../src/ui/theme-viewer.c:754
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g милисекунди за цртање на една рамка за прозорецот"
+
+#: ../src/ui/theme-viewer.c:797
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Употреба: marco-theme-viewer [ИМЕ НА ТЕМА]\n"
+
+#: ../src/ui/theme-viewer.c:804
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Грешка при вчитување на темата: %s\n"
+
+#: ../src/ui/theme-viewer.c:810
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Ја вчитав темата \"%s\" за %g секунди\n"
+
+#: ../src/ui/theme-viewer.c:833
+msgid "Normal Title Font"
+msgstr "Нормален наслов за фонт"
+
+#: ../src/ui/theme-viewer.c:839
+msgid "Small Title Font"
+msgstr "Мал наслов за фонт"
+
+#: ../src/ui/theme-viewer.c:845
+msgid "Large Title Font"
+msgstr "Голем наслов за фонт"
+
+#: ../src/ui/theme-viewer.c:850
+msgid "Button Layouts"
+msgstr "Распоред на копчиња"
+
+#: ../src/ui/theme-viewer.c:855
+msgid "Benchmark"
+msgstr "Бенчмарк"
+
+#: ../src/ui/theme-viewer.c:902
+msgid "Window Title Goes Here"
+msgstr "Насловот на прозорецот доаѓа тука"
+
+#: ../src/ui/theme-viewer.c:1006
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Повлече %d рамки во %g секунди за клиентот (%g милисекунди на рамка) и %g "
+"секунди од часовникот вклучувајќи ги и ресурсите на X серверот (%g "
+"милисекунди на рамка)\n"
+
+#: ../src/ui/theme-viewer.c:1225
+msgid "position expression test returned TRUE but set error"
+msgstr "position expression test returned TRUE but set error"
+
+#: ../src/ui/theme-viewer.c:1227
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "position expression test returned FALSE but didn't set error"
+
+#: ../src/ui/theme-viewer.c:1231
+msgid "Error was expected but none given"
+msgstr "Се очекуваше грешка но не се појави"
+
+#: ../src/ui/theme-viewer.c:1233
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Се очекуваше %d грешка но %d не се појави"
+
+#: ../src/ui/theme-viewer.c:1239
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Не се очекуваше грешка но се појави една: %s"
+
+#: ../src/ui/theme-viewer.c:1243
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x вредноста беше %d, а беше очекувано %d"
+
+#: ../src/ui/theme-viewer.c:1246
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y вредноста беше %d, а беше очекувано %d"
+
+#: ../src/ui/theme-viewer.c:1311
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d координира изрази парсирани за %g секунди (%g секунди во просек)\n"
+
+#: ../src/ui/theme.c:208
+msgid "top"
+msgstr "горе"
+
+#: ../src/ui/theme.c:210
+msgid "bottom"
+msgstr "долу"
+
+#: ../src/ui/theme.c:212
+msgid "left"
+msgstr "лево"
+
+#: ../src/ui/theme.c:214
+msgid "right"
+msgstr "десно"
+
+#: ../src/ui/theme.c:228
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "геометријата на рамката не одредува \"%s\" димензија"
+
+#: ../src/ui/theme.c:247
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "геометријата на рамката не одредува димензија \"%s\" за граница \"%s\""
+
+#: ../src/ui/theme.c:284
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Аспектот на односот на копчето %g не е разумен"
+
+#: ../src/ui/theme.c:296
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Геометријата на рамката не одредува големина за копчињата"
+
+#: ../src/ui/theme.c:927
+msgid "Gradients should have at least two colors"
+msgstr "Градиентите треба да имаат најмаку две бои"
+
+#: ../src/ui/theme.c:1053
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK спецификациите на боите мора да бидат во загради, пр. gtk:fg[НОРМАЛНО] "
+"каде што НОРМАЛНО е состојбата; не може да разложува \"%s\""
+
+#: ../src/ui/theme.c:1067
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK спецификациите на боите мора да имаат блиску заграда,после состојбата, "
+"пр. gtk:fg[НОРМАЛНО] каде што НОРМАЛНО е состојбата; не може да разложува \"%"
+"s\""
+
+#: ../src/ui/theme.c:1078
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Не ја разбра состојбата \"%s\" во спецификациите на боите"
+
+#: ../src/ui/theme.c:1091
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Не ја разбра компонентата на боја \"%s\" во спецификациите за боја"
+
+#: ../src/ui/theme.c:1121
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Blend форматот е \"blend/bg_color/fg_color/alpha\", \"%s\" не го собира "
+"форматот"
+
+#: ../src/ui/theme.c:1132
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Не можам да ги разложам alpha вредностите \"%s\" во блендирани бои"
+
+#: ../src/ui/theme.c:1142
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alpha вредност \"%s\" во блендираните бои не е помеѓу 0.0 и 1.0"
+
+#: ../src/ui/theme.c:1190
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Засенет формат е \"shade/base_color/factor\", \"%s\" не го собира форматот"
+
+#: ../src/ui/theme.c:1201
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Не може да го разложи факторот на засенување \"%s\" во засенетите бои"
+
+#: ../src/ui/theme.c:1211
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Факторот на засенување \"%s\" во засенетите бои е негатив"
+
+#: ../src/ui/theme.c:1241
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Не можам да ја разложам бојата \"%s\""
+
+#: ../src/ui/theme.c:1462
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Координираниот израз содржи карактери '%s' кои не се дозволени"
+
+#: ../src/ui/theme.c:1489
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Координираниот израз содржи лебдечко поинт броеви '%s' кои не може да бидат "
+"разложени"
+
+#: ../src/ui/theme.c:1503
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Координираниот израз содржи цели броеви '%s' кои не може да бидат разложени"
+
+#: ../src/ui/theme.c:1610
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Координираниот израз содржи непознат оператор на почетокот на овој текст: \"%"
+"s\""
+
+#: ../src/ui/theme.c:1667
+msgid "Coordinate expression was empty or not understood"
+msgstr "Координираниот израз беше празен или погрешно разбран"
+
+#: ../src/ui/theme.c:1764 ../src/ui/theme.c:1774 ../src/ui/theme.c:1808
+msgid "Coordinate expression results in division by zero"
+msgstr "Координираниот израз даде резултати поделени со нула"
+
+#: ../src/ui/theme.c:1816
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Координираниот израз пробува да користи оператор на режим на лебдечките "
+"поинт броеви"
+
+#: ../src/ui/theme.c:1872
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Координираниот израз има оператор \"%s\" каде што беше очекуван операнд"
+
+#: ../src/ui/theme.c:1881
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Координираниот израз имаше операнд каде што беше очекуван оператор"
+
+#: ../src/ui/theme.c:1889
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Координираниот израз беше завршен со оператор наместо со операнд"
+
+#: ../src/ui/theme.c:1899
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Координираниот израз има оператор \"%c\" што следи оператор \"%c\" без "
+"операнд измеѓу"
+
+#: ../src/ui/theme.c:2023 ../src/ui/theme.c:2064
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Координираниот израз имаше непозната променлија или константа \"%s\""
+
+#: ../src/ui/theme.c:2108
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Координираниот анализатор на израз си го преполни својот бафер."
+
+#: ../src/ui/theme.c:2137
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Координираниот израз имаше затворена заграда, но немаше отворена"
+
+#: ../src/ui/theme.c:2201
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Координираниот израз имаше отворена заграда, но немаше затворена"
+
+#: ../src/ui/theme.c:2212
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Координираниот израз нема оператори или операнди"
+
+#: ../src/ui/theme.c:2398 ../src/ui/theme.c:2418 ../src/ui/theme.c:2438
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Темата содржи израз кој што резултираше со грешка: %s\n"
+
+#: ../src/ui/theme.c:3942
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> мора да биде "
+"одредено за овој стил на рамки"
+
+#: ../src/ui/theme.c:4418 ../src/ui/theme.c:4443
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Недостасува <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever"
+"\"/>"
+
+#: ../src/ui/theme.c:4487
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Не успеав да ја вчитам темата \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4613 ../src/ui/theme.c:4620 ../src/ui/theme.c:4627
+#: ../src/ui/theme.c:4634 ../src/ui/theme.c:4641
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Нема <%s> подесено за темата \"%s\""
+
+#: ../src/ui/theme.c:4649
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Нема стил на рамката за овој тип на прозорец \"%s\" во темата \"%s\", додаде "
+"<window type=\"%s\" style_set=\"whatever\"/> елемент"
+
+#: ../src/ui/theme.c:5016 ../src/ui/theme.c:5078 ../src/ui/theme.c:5141
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Корисничко дефинирана константа мора да започнува со прва голема буква, \"%s"
+"\" не"
+
+#: ../src/ui/theme.c:5024 ../src/ui/theme.c:5086 ../src/ui/theme.c:5149
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Константата \"%s\" веќе беше дефинирана"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Употреба: %s\n"
+
diff --git a/po/ml.po b/po/ml.po
new file mode 100644
index 00000000..1716921e
--- /dev/null
+++ b/po/ml.po
@@ -0,0 +1,2311 @@
+# translation of ml.po to
+# translation of marco.master.ml.po to
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
+#
+# FSF-India <[email protected]>, 2003.
+# Ani Peter <[email protected]>, 2006, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: ml\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2010-03-25 08:59+0000\n"
+"PO-Revision-Date: 2010-03-26 11:56+0530\n"
+"Last-Translator: \n"
+"Language-Team: <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "പണിയിടം"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "ജാലക നിരീക്ഷണം"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "ബെല്‍ ഇവന്റ്"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "ജാലകത്തിനുള്ള ആവശ്യം അപരിചിതമായ സ്ഥലത്ത് നിന്നും : %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> മറുപടി നല്‍കുന്നില്ല."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"ഒന്നെങ്കില്‍ നിങ്ങള്‍ക്കു് അല്‍പനേരം കാത്തിരിക്കുന്നതിനായി തെരഞ്ഞെടുക്കാം അല്ലെങ്കില്‍ പൂര്‍ണ്ണമായി "
+"പ്രയോഗത്തില്‍ നിന്നും പുറത്തു് കടക്കാം."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_കാത്തിരിക്കുക"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_നിര്‍ബന്ധമായും പുറത്തു് കടക്കുക"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "ആതിഥേയനാമം ലഭിക്കുന്നതില്‌ പരാജയപ്പെട്ടു: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "കംപോസിറ്റിങിനുള്ള %s എക്സ്റ്റെന്‍ഷന്‍ ആവശ്യമുണ്ടു്"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "XWindow തുറക്കുന്നതില്‌ പരാജയം : %s\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"'%s' പ്രദര്‍ശനത്തിലേക്കുള്ള കണക്ഷന്‍ നഷ്ടപ്പെട്ടു;\n"
+"മിക്കവാറും X സര്‍വര്‍ അടച്ചു പൂട്ടിയിരിക്കാം, അല്ലെങ്കില്‍ നിങ്ങള്‍ ജാലക പാലകനെ\n"
+"ഇല്ലാതാക്കിയിരിക്കാം.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "ഗുരുതരമായ IO പിശക് %d (%s) ('%s' ദൃശ്യത്തില്‍).\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "%s കീ %x മോഡിഫയറുകള്‍ക്കൊപ്പം ഒരു ബൈന്‍ഡിങായി മറ്റു ചില പ്രോഗ്രാമുകള്‍ നിലവില്‍ ഉപയോഗിക്കുന്നു.‌\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> പ്രവര്‍ത്തിപ്പിക്കുന്നതില്‍ പിശക്:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "%d എന്ന കമാന്‍ഡ് ലഭ്യമല്ല.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "ഒരു ടെര്‍മിനല്‍ കമാന്‍ഡും ലഭ്യമല്ല.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"മെറ്റാസിറ്റി %s\n"
+"പകര്‍പ്പവകാശം (C) 2001-%s ഹാവക് പെനിങ്ടണ്‍, Red Hat, Inc.-ഉം മറ്റുള്ളവരും\n"
+"ഇതൊരു സ്വതന്ത്ര സോഫ്റ്റ്‌വെയറാണു്; പകര്‍പ്പു് നിലപാടുകള്‍ക്കായി സോഴ്സ് കാണുക.\n"
+"വാറണ്ടി ലഭ്യമല്ല; വ്യാപാരയോഗ്യതയോ ഒരു പ്രത്യേക കാര്യത്തിനു് ചേരുന്നതാണെന്നോ പരോക്ഷമായി "
+"ഉള്‍‌ക്കൊള്ളുന്ന വാറണ്ടി പോലും ഇല്ല.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "സെഷന്‍ മാനേജറിലേക്കുള്ള കണക്ഷന്‍ പ്രവര്‍ത്തന രഹിതമാക്കുക"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "പ്രവര്‍ത്തനത്തിലുള്ള ജാലകത്തിന്റെ മാനേജറിനെ മെറ്റാസിറ്റി ഉപയോഗിച്ച് മാറ്റുക"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "സെഷന്‍ കൈകാര്യം ചെയ്യുന്ന ID നല്‍കുക"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "ഉപയോഗിക്കുന്നതിനുള്ള X ഡിസ്പ്ളെ"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "savefile-ല്‍ നിന്നും സെഷന്‍ ആരംഭിക്കുക"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "പ്രിന്റ് ചെയ്യുവാനുള്ള പതിപ്പു്"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "X കോളുകള്‍ സിന്‍ക്രൊണസാക്കുക"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "കംപോസിറ്റിങ് ഓണ്‍ ആക്കുക"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "കംപോസിറ്റിങ് ഓഫ് ആക്കുക"
+
+#: ../src/core/main.c:322
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "ഏറ്റവും വലിതും അലങ്കാരങ്ങളില്ലാത്തതുമായ ജാലകങ്ങള്‍ പൂര്‍ണ്ണവലിപ്പത്തിലാക്കരുതു്"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "പ്രമേയം സ്കാന്‍ ചെയ്യുവാന്‍ കഴിഞ്ഞില്ല: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "ഒരു പ്രമേയം ലഭ്യമായില്ല! %s നിലവിലുണ്ടെന്നും പതിവായ പ്രമേയങ്ങള്‍ ലഭ്യമെന്നും ഉറപ്പാക്കുക.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "പുനരാരംഭിക്കുന്നതില്‌ പരാജയപ്പെട്ടു: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf കീ '%s' തെറ്റായ മൂല്ല്യമായി സജ്ജമാക്കിയിരിക്കുന്നു\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d MateConf കീ %s-ല്‍ സൂക്ഷിച്ചിരിക്കുന്നു. %d മുതല്‍ %d വരെ പരിധിയ്ക്കു് പുറത്താണു്\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf കീ \"%s\" ശരിയായ തരമായി സജ്ജമല്ല\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"തകരാറുള്ള പ്രയോഗങ്ങളിലുള്ള പ്രവര്‍ത്തനങ്ങള്‍ നിര്‍ജ്ജീവം. ചില പ്രയോഗങ്ങള്‍ ശരിയായി "
+"പ്രവര്‍ത്തിക്കുന്നതല്ല.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "അക്ഷരസഞ്ചയ വിവരണം \"%s\" MateConf കീ %s-ല്‍ നിന്നും പാഴ്സ് ചെയ്യുവാന്‍ സാധ്യമല്ല\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "ക്രമീകരണ ഡേറ്റാബെയിസില്‍ ലഭ്യമായ \"%s\" മൌസ് ബട്ടണ്‍ മോഡിഫയറിനുള്ള ശരിയായൊരു മൂല്ല്യമല്ല\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "%d-ലേക്ക് പണിയറകളുടെ എണ്ണം സജ്ജമാക്കുന്നതില്‍ പിശക്: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "പണിയറ %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "ക്രമീകരണ ഡേറ്റാബെയിസില്‍ ലഭ്യമായ \"%s\" കീബൈന്‍ഡിങിനുള്ള \"%s\" ശരിയായൊരു മൂല്ല്യമല്ല\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "%d യില്‌നിന്ന് \"%s\"ലേക്ക് പണിയറയുടെ പേ‌ര‌് സജ്ജമാക്കുന്നതില്‌ തെറ്റ്: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "കംപോസിറ്റര്‍ അവസ്ഥ സജ്ജമാക്കുന്നതില്‍ പിശക്: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "സ്ക്രീന്‍ %d തെറ്റാണു്. ഇതു് '%s' പ്രദര്‍ശത്തിലാണു്\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"സ്ക്രീന്‍ %d, \"%s\" പ്രദര്‍ശനത്തിലുള്ളതില്‍ നിലവില്‍ ഒരു ജാലക പാലകനുണ്ടു്; നിലവിലുള്ള ജാലക "
+"പാലകനെ മാറ്റുന്നതിനായി --replace ഉപാധി ഉപയോഗിക്കുക.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "സ്ക്രീന്‍ %d, \"%s\" പ്രദര്‍ശനത്തിലുള്ള ജാലക പാലക തെരഞ്ഞെടുക്കല്‍ ലഭ്യമാകുവാന്‍ സാധിച്ചില്ല\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "സ്ക്രീന്‍ %d, \"%s\" പ്രദര്‍ശനത്തിലുള്ളതില്‍ നിലവില്‍ ഒരു ജാലക പാലകനുണ്ടു്\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "സ്ക്രീന്‍ %d \"%s\" പ്രദര്‍ശനത്തില്‍ വിടുവാന്‍ സാധ്യമല്ല\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"മാതൃക \"<Control>a\" അല്ലെങ്കില്‍ \"<Shift><Alt>F1\" പോലെയാണു്.\n"
+"\n"
+"ലോവര്‍ അല്ലെങ്കില്‍ അപ്പര്‍ കേസ്, \"<Ctl>\", \"<Ctl>\" പോലുള്ള അബ്രീവിയേഷനുകള്‍ എന്നിവ പാഴ്സര്‍ "
+"അനുവദിക്കുന്നു. ഉപാധി \"പ്രവര്‍ത്തന രഹിതം\" എന്നാക്കിയാല്‍, ഈ പ്രവര്‍ത്തിയ്ക്കു് കീബൈന്‍ഡിങ് ലഭ്യമല്ല."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"മാതൃക \"<Control>a\" അല്ലെങ്കില്‍ \"<Shift><Alt>F1\" പോലെയാണു്.\n"
+"\n"
+"ലോവര്‍ അല്ലെങ്കില്‍ അപ്പര്‍ കേസ്, \"<Ctl>\", \"<Ctl>\" പോലുള്ള അബ്രീവിയേഷനുകള്‍ എന്നിവ പാഴ്സര്‍ "
+"അനുവദിക്കുന്നു. ഉപാധി \"പ്രവര്‍ത്തന രഹിതം\" എന്നാക്കിയാല്‍, ഈ പ്രവര്‍ത്തിയ്ക്കു് കീബൈന്‍ഡിങ് "
+"ലഭ്യമല്ല.\n"
+"\n"
+"\"shift\" കീ അല്‍പനേരം അമര്‍ത്തിപിടിച്ചാല്‍, കീബൈന്‍ഡിങ് തിരിച്ചു പ്രവര്‍ത്തിക്കുന്നു; അതിനാല്‍ "
+"\"shift\" ഉപയോഗിക്കുവാന്‍ പാടില്ല."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "'%s'എന്ന കൂട് ഉണ്ടാക്കാന്‌ കഴിയുന്നില്ല: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "%s എഴുതാനായി തുറക്കുന്നതില്‌ %s പരാജയം\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "'%s' രചനാ എഴുതുന്നതില്‌ പരാജയം: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "'%s' രചന അട‌യ്‌ക്കുന്നതില്‌‌ പരാജയം: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "രചന %sലെ പ്രമേയം വായിക്കുന്നതില്‌ പരാജയപ്പെട്ടു: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "രചന വായിക്കുന്നതില്‌ പരാജയപ്പെട്ടു: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> വിശേഷത ലഭ്യമായി പക്ഷേ നമുക്ക് നിലവില്‍ സെഷന്‍ ID ഉണ്ടു്."
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "%s വിശേഷത അപരിചിതം, <%s> എലമെന്റില്‍"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "തരക്കെട്ടില്ലാത്ത ജാലകം"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "%s ന്റെ അറിയാത്ത ഘടകം"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"ഈ ജാലകങ്ങള്‍ &quot;നിലവിലുള്ള സജ്ജമീകരണം സൂക്ഷിക്കുക&quot; പിന്തുണയ്ക്കിന്നില്ല. അടുത്ത തവണ "
+"നിങ്ങള്‍ ലോഗിന്‍ ചെയ്യുമ്പോള്‍ സ്വയമായി വീണ്ടും ആരംഭിക്കേണ്ടതാണു്."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "തുറക്കുന്നതില്‌ പരാജയം: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "fdopen() log രചന %s തുറക്കുന്നതില്‌ പരാജയം : %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "തുറന്ന ഒരു ലോഗ് രചന %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "verbose-നുള്ള പിന്തുണ ഇല്ലാതെയാണ് മെറ്റാ സിറ്റി തയ്യാറാക്കിയത്\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "ജാലക പാലകന്:‌"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "ജാലക പാലകനിലെ ഛിദ്രം: ‌"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "ജാലക പാലകന്റെ മുന്നറിയിപ്പ്:‌"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "ജാലക പാലകന്റെ തെറ്റ്:‌‌"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "മെറ്റാസിറ്റി"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"ICCCM-ല്‍ വ്യക്തമാക്കിയിരിക്കുന്നതു് പോലെ WM_CLIENT_LEADER ജാലകത്തില്‍ സജ്ജമാക്കുന്നതിനു് പകരം, "
+"%s ജാലകം സ്വയം അതില്‍ SM_CLIENT_ID സജ്ജമാക്കുന്നു.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"%s ജാലകം ഒരു MWM സജ്ജമാക്കുന്നു, ഇതിന്റെ വ്യാപ്തി മാറ്റുവാന്‍ സാധ്യമല്ലെന്നിതു് സൂചിപ്പിക്കുന്നു. "
+"പക്ഷേ ഏറ്റവും ചെറിയ വ്യപ്തി %d x %d എന്നും ഏറ്റവും കൂടിയതു് %d x %d എന്നും സജ്ജമാക്കുന്നു.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "പ്രയോഗം ഒരു bogus _NET_WM_PID %lu സജ്ജമാക്കുന്നു\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s-ല്‍)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (സൂപ്പര്‍ യൂസറായി)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s ആയി)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (മറ്റൊരു ഉപയോക്താവായി)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "തെറ്റായ WM_TRANSIENT_FOR ജാലകം 0x%lx %s-നു് നല്‍കിയിരിക്കുന്നു.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"0x%lx ജാലകത്തിനു് %s വിശേഷതയുണ്ടു്.\n"
+"%s രീതിയിലുള്ള %d മാതൃക പ്രതീക്ഷിച്ചു\n"
+"പക്ഷേ, യഥാര്‍ത്ഥത്തിലുള്ളതു് %s രീതിയിലുള്ള %d n_items %d ശൈലിയാണു്.\n"
+"ഇതു് ജാലകത്തിലുള്ളൊരു ബഗാണു്.\n"
+"ജാലകത്തിനു് തലക്കെട്ട്=\"%s\" ക്ലാസ്സ്=\"%s\" പേരു്=\"%s\" ഉണ്ടു്\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "%s വിശേഷതയില്‍ തെറ്റായ UTF-8 ഉണ്ടു്, 0x%lx ജാലകത്തിലാണിതുള്ളതു്.\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"%s വിശേഷതയില്‍ തെറ്റായ UTF-8 ഉണ്ടു്, 0x%lx ജാലകത്തിലുള്ള പട്ടികയിലുള്ള %d "
+"വസ്തുവിലാണിതുള്ളതു്.\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "പപണിയറകള്‍ 1ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "പണിയറകള്‍ 2ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "പണിയറകള്‍ 3ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "പണിയറകള്‍ 4ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "പണിയറകള്‍ 5ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "പണിയറകള്‍ 6ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "പണിയറകള്‍ 7ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "പണിയറകള്‍ 8ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "പണിയറകള്‍ 9ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "പണിയറകള്‍ 10ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "പണിയറകള്‍ 11ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "പണിയറകള്‍ 12ലേക്ക് മാറ്റൂ"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "നിലവിലുള്ള പണിയറയുടെ ഇടതുവശത്തുള്ള പണിയറയിലേക്കു് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "നിലവിലുള്ള പണിയറയുടെ വലതുവശത്തുള്ള പണിയറയിലേക്കു് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "നിലവിലുള്ള പണിയറയുടെ മുകളിലുള്ള പണിയറയിലേക്കു് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "നിലവിലുള്ള പണിയറയുടെ താഴെയുള്ള പണിയറയിലേക്കു് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "ഒരു പോപ്പപ്പ് ജാലകം ഉപയോഗിച്ചു് പ്രയോഗത്തിലുള്ള ജാലകങ്ങളിലൂടെ നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "ഒരു പോപ്പപ്പ് ജാലകം ഉപയോഗിച്ചു് പ്രയോഗത്തിലുള്ള ജാലകങ്ങളിലൂടെ പുറകോട്ട് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "ഒരു പോപ്പപ്പ് ജാലകം ഉപയോഗിച്ചു് ജാലകങ്ങളിലൂടെ നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "ഒരു പോപ്പപ്പ് ജാലകം ഉപയോഗിച്ചു് ജാലകങ്ങളിലൂടെ പുറകോട്ട് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "ഒരു പോപ്പപ്പ് ജാലകം ഉപയോഗിച്ചു് പാനലുകളുടേയും പണിയിടത്തിലൂടേയും നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "ഒരു പോപ്പപ്പ് ജാലകം ഉപയോഗിച്ചു് പാനലുകളുടേയും പണിയിടത്തിലൂടേയും പുറകോട്ട് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "ഒരു പ്രയോഗത്തിനുള്ള ജാലകങ്ങളിലൂടെ പെട്ടെന്നു് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "ഒരു പ്രയോഗത്തിനുള്ള ജാലകങ്ങളിലൂടെ പെട്ടെന്നു് പുറകോട്ട് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "ജാലകങ്ങളിലൂടെ പെട്ടെന്നു് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "ജാലകങ്ങളിലൂടെ പെട്ടെന്നു് പുറകോട്ട് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "പാനലുകളുടേയും പണിയിടത്തിലൂടേയും പെട്ടെന്നു് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "പാനലുകളുടേയും പണിയിടത്തിലൂടേയും പെട്ടെന്നു് പുറകോട്ട് നീങ്ങുക"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "എല്ലാ സാധാരണ ജാലകങ്ങളും അദൃശ്യമാക്കി പണിയിടം കാണിക്കുക"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "പാനലിന്റെ പ്രധാന മെനു കാണിക്കുക"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "പാനലിലുള്ള \"പ്രയോഗം പ്രവര്‍ത്തിപ്പിക്കുക\" ഡയലോഗ് ബോക്സ് കാണിക്കുക"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "ഒരു സ്ക്രീന്‍ ഷോട്ട് എടുക്കുക"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "ജാലകത്തിന്റെ ഒരു സ്ക്രീന്‍ ഷോട്ട് എടുക്കുക"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "ഒരു ടെര്‍മിനല്‍ ലഭ്യമാക്കുക"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "ജാലക പട്ടികയെ സജ്ജമാക്കുക"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "അക്ഷര വിവര രീതിയില്‌ അളവ് ദൃശ്യമാക്കുക"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "ഏറ്റവും കൂടതലാക്കുന്ന അവസ്ഥ ടൊഗ്ഗിള്‍ ചെയ്യുക"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "മറ്റു് ജാലകങ്ങള്‍ക്കിടയില്‍ ഒരു ജാലകം ദൃശ്യമാകുമോ എന്നു് ടൊഗിള്‍ ചെയ്യുക"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "ജാലകം ഏറ്റവും വലുതാക്കുക"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "ജാലകം വീണ്ടെടുക്കുക"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "ഷേഡ് ചെയ്ത അവസ്ഥ ടൊഗ്ഗിള്‍ ചെയ്യുക"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "ജാലകം ഏറ്റവും ചെറുതാക്കുക"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "ജാലകം അടയ്‍ക്കുക"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "ജാലകം നീക്കുക"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "ജാലകത്തിന്റെ വലിപ്പം മാറ്റുക"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "എല്ലാ പണിയറകളിലെയും ജാലകമുണ്ടോ അതോ ഒന്നിലേയുള്ളോ എന്നു് ടൊഗിള്‍ ചെയ്യുക"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "പണിയറ ജാലകം ഒന്നിലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "പണിയറ ജാലകം 2ലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "പണിയറ ജാലകം 3ലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "പണിയറ ജാലകം 4ലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "പണിയറ ജാലകം 5ലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "പണിയറ ജാലകം 6ലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "പണിയറ ജാലകം 7ലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "പണിയറ ജാലകം 8ലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "പണിയറ ജാലകം 9ലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "പണിയറ ജാലകം പത്തിലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "പണിയറ ജാലകം 11ലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "പണിയറ ജാലകം 12ലേക്ക് നീക്കുക"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "ഒരു പണിയറ‌‌‌‌‌യ‌്ക്ക് ഇടതുവശത്തേക്ക് ജാലകം നീക്കുക"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "ഒരു പണിയറ‌‌‌‌‌യ‌്ക്ക് വലതുവശത്തേക്ക് ജാലകം നീക്കുക"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "പണിയറകളിലെ ജാലകം മുകളിലേക്ക് ചലിപ്പിക്കുക"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "ഒരു പണിയറ താഴെ ജാലകം നീക്കുക"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "ജാലകം മറ്റൊരു ജാലകമുപയോഗിച്ചു് മറയ്ക്കുന്നെങ്കില്‍ ഉയര്‍ത്തുക അല്ലെങ്കില്‍ താഴെയാക്കുക"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "ജാലകം മറ്റ് ജാലകങ്ങളുടെ മുകളിലേക്ക് ഉയ‌ര്‍ത്തുക"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "ജാലകം മറ്റ് ജാലകങ്ങള്‍ക്കടിയിലാക്കുക"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "ജാലകം ലംബമായ് വലുതാക്കുക"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "ജാലകം തിരശ്ചീനമായ് വലുതാക്കുക"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "സ്ക്രീനിന്റെ തെക്ക്-പടിഞ്ഞാറ് (മുകളില്‍ ഇടതു്) വശത്തേക്ക് ജാലകം മാറ്റുക"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "സ്ക്രീനിന്റെ തെക്ക്-കിഴക്ക് (മുകളില്‍ വലതു്) വശത്തേക്ക് ജാലകം മാറ്റുക"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "സ്ക്രീനിന്റെ വടക്ക്-പടിഞ്ഞാറ് (താഴെ ഇടതു്) വശത്തേക്ക് ജാലകം മാറ്റുക"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "സ്ക്രീനിന്റെ വടക്ക്-കിഴക്ക് (താഴെ വലതു്) വശത്തേക്ക് ജാലകം മാറ്റുക"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "സ്ക്രീനിന്റെ തെക്ക് (മുകളില്‍) വശത്തേക്ക് ജാലകം മാറ്റുക"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "സ്ക്രീനിന്റെ വടക്ക് (താഴെ) വശത്തേക്ക് ജാലകം മാറ്റുക"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "സ്ക്രീനിന്റെ കിഴക്ക് (വലതു്) വശത്തേക്ക് ജാലകം മാറ്റുക"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "സ്ക്രീനിന്റെ പടിഞ്ഞാറ് (ഇടതു്) വശത്തേക്ക് ജാലകം മാറ്റുക"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "സ്ക്രീനിന്റെ മദ്ധ്യത്തേക്ക് ജാലകം മാറ്റുക"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(ലഭ്യമാക്കിയിട്ടില്ല) പ്രയോഗങ്ങളിലൂടെ സഞ്ചരിക്കാം, ജാലകങ്ങളിലൂടെ സാധ്യമല്ല"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"ഒരു അക്ഷരസഞ്ചയ വിവരണ സ്ട്രിങ് ജാലകത്തിന്റെ ടൈട്ടില്‍ബാറുകള്‍ക്കുള്ള അക്ഷരസഞ്ചയിനുള്ള വിവരണം "
+"ലഭ്യമാക്കുന്നു. titlebar_font_size ഉപാധി 0 എങ്കില്‍ മാത്രം വിവരണത്തിലുള്ള വ്യാപ്തി "
+"ഉപയോഗിക്കുന്നു. കൂടാതെ, titlebar_uses_desktop_font ഉപാധി true ആയി സജ്ജമെങ്കില്‍ ഈ "
+"ഉപാധി പ്രവര്‍ത്തന രഹിതമാകുന്നു."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "തലക്കെട്ടിനുള്ള ബാര്‍ രണ്ട് തവണ ക്ലിക്ക് ചെയ്യുമ്പോള്‍ ഉണ്ടാകുന്ന പ്രവര്‍ത്തി"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "തലക്കെട്ടിനുള്ള ബാറില്‍ നടുക്ക് ക്ളിക്ക് ചെയ്യുമ്പോള്‍ ഉണ്ടാകുന്ന പ്രവര്‍ത്തി"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "തലക്കെട്ടിനുള്ള ബാറില്‍ റൈറ്റ് ക്ളിക്ക് ചെയ്യുമ്പോള്‍ ഉണ്ടാകുന്ന പ്രവര്‍ത്തി"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "തലക്കെട്ടിനുള്ള ബാറില്‍ ബട്ടണുകളുടെ ക്രമീകരണം"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"ടൈറ്റില്‍ ബാറിലുള്ള ബട്ടണുകളുടെ ക്രമം. മൂല്ല്യം ഒരു സ്ട്രിങായിരിക്കണം, അതായതു്, \"menu:"
+"minimize,maximize,spacer,close\"; ജാലകത്തിന്റെ ഇടതുള്ള മൂല വലുതുള്ള മൂലയില്‍ നിന്നും "
+"വേര്‍തിരിക്കുന്നതിനായി കോളണും ബട്ടണ്‍ നാമങ്ങള്‍ വേര്‍തിരിക്കുന്നതിനായി കോമയും ഉപയോഗിക്കുന്നു, "
+"ആവര്‍ത്തിച്ചുള്ള ബട്ടണുകള്‍ അനുവദിക്കുന്നതല്ല. അപരിചിതമായ ബട്ടണുകള്‍ അവഗണിക്കുന്നു, അങ്ങനെ പഴയ "
+"പതിപ്പുകള്‍ക്കു് തകരാറുണ്ടാകാതെ പുതിയ പതിപ്പുകളുടെ ഇനിയുള്ള പതിപ്പുകളില്‍ ബട്ടണുകള്‍ ചേര്‍ക്കുവാന്‍ "
+"സാധിക്കുന്നു. അടുത്തുള്ള രണ്ടു് ബട്ടണുകള്‍ തമ്മിലുള്ള സ്ഥലത്തു് ഒരു പ്രത്യേക സ്പെയിസര്‍ ടാഗ് ചേര്‍ക്കുവാന്‍ "
+"സാധിക്കുന്നു."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "അവസ്ഥാ മാറ്റങ്ങള്‍ സ്വയമേവ സംരക്ഷിക്കുക"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"ഈ മോഡിഫയര്‍ കീ അല്‍പനേരം അമര്‍ത്തുമ്പോള്‍ ഒരു ജാലകം ക്ലിക്ക് ചെയ്താല്‍, ജാലകം മുകളിലേക്ക് നീക്കുന്നു "
+"(ഇടതു് ക്ലിക്ക്), ജാലകത്തിന്റെ വ്യാപ്തി മാറ്റുന്നു (മിഡില്‍ ക്ലിക്ക്), അല്ലെങ്കില്‍ ജാലകത്തിനുള്ള മെനു "
+"കാണിക്കുന്നു (റൈറ്റ് ക്ലിക്ക്). \"resize_with_right_button\" കീ ഉപയോഗിച്ചു് മദ്ധ്യവും വലതുമുള്ള "
+"പ്രക്രിയകള്‍ മാറ്റുവാന്‍ സാധിക്കുന്നു. ഉദാഹരണത്തിനായി \"&lt;Alt&gt;\" അല്ലെങ്കില്‍ \"&lt;"
+"Super&gt;\" ആയി മോഡിഫയര്‍ ലഭ്യമാക്കുന്നു."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "കീബൈന്‍ഡിങിനുള്ള മറുപടിയായി പ്രവര്‍ത്തിക്കുന്ന കമാന്‍ഡുകള്‍"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "കംപോസിറ്റിങ് മാനേജര്‍"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "പുതിയ ജാലകങ്ങളിലേക്കുള്ള ശ്രദ്ധ നിയന്ത്രിക്കുന്നു"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "സജീവ തീം"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "സ്വയം ഉയര്‍ത്തുന്ന ഉപാധിയ്ക്കുള്ള താമസം മില്ലിസെക്കന്‍ഡുകളില്‍"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "മെറ്റാസിറ്റി ഒരു കംപോസിറ്റിങ് മാനേജറാണെന്നു് നിശ്ചയിക്കുന്നു."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"പ്രയോഗങ്ങള്‍ അല്ലെങ്കില്‍ സിസ്റ്റം കേള്‍ക്കാവുന്ന 'ബീപ്പുകള്‍' ഉണ്ടാക്കുന്നു എന്നു് നിശ്ചയിക്കുന്നു; 'വിശ്വല്‍ "
+"ബെല്‍' അല്ലെങ്കില്‍ നിശബ്ദ 'ബീപ്പുകള്‍' ഒന്നിച്ചുപയോഗിക്കുവാന്‍ സാധിക്കുന്നു."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "പഴയ അല്ലെങ്കില്‍ തകരാറുള്ള പ്രയോഗങ്ങള്‍ക്കാവശ്യമുള്ള വിശേഷതകള്‍ പ്രവര്‍ത്തന രഹിതമാക്കുന്നു"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "വിശ്വല്‍ ബെല്‍ സജ്ജമാക്കുക"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"true ആയി സജ്ജവും, ഫോക്കസ് മോഡ് \"സ്ലോപ്പി\" അല്ലെങ്കില്‍ \"മൌസ്\" ആണെങ്കില്‍ "
+"auto_raise_delay കീ വ്യക്തമാക്കിയിരിക്കുന്ന താമസത്തിനു് ശേഷം സ്വമായി ഫോക്കസ് ചെയ്യുന്ന "
+"ജാലകം ഉയര്‍ത്തുന്നു. ഒരു ജാലകത്തില്‍ ക്ലിക്ക് ചെയ്തു് ഉയര്‍ത്തന്നതു് പോലെയോ അല്ലെങ്കില്‍ വലിച്ചിട്ടൊരു "
+"ജാലകത്തില്‍ പ്രവേശിക്കുന്നതു് പോലെയോ അല്ലിതു്"
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"true എങ്കില്‍, titlebar_font ഉപാധി ഉപേക്ഷിക്കുക. ജാലക തലക്കെട്ടുകള്‍ക്കു് പ്രയോഗങ്ങള്‍ക്കു് "
+"സാധാരണയുള്ള അക്ഷരസഞ്ചയം ഉപയോഗിക്കുക."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"true എങ്കില്‍, വയര്‍ഫ്രെയിമുകളുപയോഗിച്ചും ആനിമേഷനുകള്‍ ഒഴിവാക്കിയും മെറ്റാസിറ്റി ഉപയോക്താവിനു് "
+"കുറഞ്ഞ അഭിപ്രായങ്ങള്‍ നല്‍കുന്നു. എന്നിരുന്നാലും, ആക്സസിബിളിറ്റി ഓണ്‍ ആകുമ്പോള്‍ വയര്‍ഫ്രെയിം വിശേഷത "
+"പ്രവര്‍ത്തന രഹിതമാക്കുന്നു."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"true ആണെങ്കില്‍, മെറ്റാസിറ്റി ജാലകങ്ങള്‍ക്കു് പകരം പ്രയോഗങ്ങള്‍ക്കായി പ്രവര്‍ത്തിക്കുന്നു. ആശയം ഒരു "
+"പക്ഷേ വ്യക്തമല്ലായിരിക്കാം, പക്ഷേ സാധാരണയായി, പ്രയോഗത്തിനടിസ്ഥാനമുള്ള സജ്ജീകരണം മാകില്‍ "
+"കൂടുതലും വിന്‍ഡോസില്‍ കുറവുമാണു്. നിങ്ങള്‍ പ്രയോഗം അടിസ്ഥാനത്തിലുള്ള മോഡില്‍, ഒരു ജാലകത്തില്‍ ഫോക്കസ് "
+"ചെയ്യുമ്പോള്‍, പ്രയോഗത്തിലുള്ള എല്ലാ ജാലകങ്ങളും ഉയര്‍ത്തുന്നു. കൂടാതെ, മറ്റ് പ്രയോഗങ്ങളില്‍ "
+"ജാലകത്തിലൂടെ ഫോക്കസ് ക്ലിക്കുകള്‍ നല്‍കുന്നതല്ല. നിലവില്‍ പ്രയോഗം അടിസ്ഥാനത്തിലുള്ള മോഡ് ലഭ്യമല്ല."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "true എങ്കില്‍, കുറഞ്ഞ റിസോഴ്സ് ഉപയോഗം മാറ്റുക"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "മാറ്റം വരുത്തിയ ജാലകങ്ങളുടെ ക്ലിക്ക് പ്രവര്‍ത്തനങ്ങള്‍ക്കുള്ള മോഡിഫയര്‍"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "പണിയറയുടെ പേര‌്"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "പണിയറകളുടെ എണ്ണം"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"പണിയറകളുടെ എണ്ണം. പൂജ്യത്തില്‍ കൂടുതലായിരിക്കണം. കൂടാതെ അബദ്ധവശാല്‍ അനവധി പണിയറകള്‍ "
+"ആവശ്യപ്പെട്ട് പണിയിടം ഉപയോഗിക്കുവാന്‍ സാധ്യമാകാതിരിക്കുന്നതു് ഒഴിവാക്കുന്നതിനായി സ്ഥിരമായ കൂടിയ "
+"മൂല്ല്യമുണ്ടു്."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "നിര്‍വചിച്ച നിര്‍ദ്ദേശം പ്രാവര്‍ത്തികമാക്കൂ"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"റൈറ്റ് ബട്ടണ്‍ ഉപയോഗിച്ചു് വ്യാപ്തി കൂട്ടുന്നതിനും \"mouse_button_modifier\"-ല്‍ ലഭ്യമായ കീ "
+"അല്‍പനേരം പിടിച്ച് മിഡില്‍ ബട്ടണ്‍ ഉപയോഗിച്ചു് മെനു കാണിക്കുന്നതിനും ഇതു് true ആയി സജ്ജമാക്കുക; "
+"തിരിച്ചു പ്രവര്‍ത്തിക്കുന്നതിനായി false ആയി സജ്ജമാക്കുക."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"false ആയി ഈ ഉപാധി സജ്ജമാക്കിയാല്‍ ഇതു് തെറ്റായി പ്രവര്‍ത്തിക്കുന്നു.അതിനാല്‍ സ്വതവേയുള്ള true "
+"മാറ്റുന്നതില്‍ നിന്നും ഉപയോക്താക്കളെ നിരുത്സാഹപ്പെടുത്തുന്നു. പല പ്രവര്‍ത്തികള്‍ (ഉദാ, ക്ലൈന്റ് സ്ഥലത്ത് "
+"ക്ലിക്ക്ചെയ്യുക അല്ലെങ്കില്‍ ജാലകം നീക്കുക അല്ലെങ്കില്‍ വ്യാപ്തി മാറ്റുക) സാധാരണ ഇതിന്റെ ഫലമായി "
+"ജാലകം ഉയര്‍ത്തുന്നു. ഈ ഉപാധി false ആക്കിയാല്‍, പ്രയോഗങ്ങള്‍ നല്‍കുന്ന ആവശ്യങ്ങള്‍ അവഗണിക്കുന്നു."
+"http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6 കാണുക. ഈ ഉപാധി false "
+"ആകുമ്പോഴും,ജാലകത്തിലെവിടെങ്കിലുമുള്ള alt-left-click, ജാലകം അലങ്കാരങ്ങളിലുള്ള സാധാരണ "
+"ക്ലിക്ക്, ടാസ്ക് ലിസ്റ്റ് ആപ്ലെറ്റുകളില്‍ നിന്നുള്ള സജീവമാക്കല്‍ ആവശ്യങ്ങള്‍ പോലുള്ള പേജറുകളില്‍ നിന്നുള്ള "
+"പ്രത്യേക സന്ദേശങ്ങള്‍എന്നിവ ജാലകം ഉയര്‍ത്തുന്നു. നിലവില്‍ ഈ ഉപാധി click-to-focusമോഡില്‍ "
+"പ്രവര്‍ത്തന രഹിതമാണു്. raise_on_click false ആകുമ്പോള്‍ജാലകം ഉയര്‍ത്തുവാനുള്ളതില്‍ പ്രയോഗങ്ങളില്‍ "
+"നിന്നുള്ള പ്രോഗ്രമാറ്റിക്ആവശ്യങ്ങള്‍ ഉള്‍പ്പെടുന്നില്ല; ആവശ്യമെന്തിനെന്നു് നോക്കാതെ അവഅവഗണിക്കുന്നു. "
+"നിങ്ങള്‍ ഒരു പ്രയോഗം ഡവലപ്പറും, ഈ സജ്ജീകരണം പ്രവര്‍ത്തന രഹിതമാകുമ്പോള്‍ പ്രയോഗം "
+"പ്രവര്‍ത്തിക്കുന്നില്ല എന്ന പരാതിയുമായിഒരു ഉപയോക്താവും ഉണ്ടെങ്കില്‍, പാലക ജാലകന്‍ തകര്‍ന്നതു് "
+"സ്വന്തംപിശകുകൊണ്ടാണെന്നും ഉപാധി true ആക്കണമെന്നും ഉപയോക്താവിനെഅറിയിക്കുക. അല്ലെങ്കില്‍ ഈ "
+"\"ബഗുമായി\" പൊരുത്തപ്പെടുക."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"ജാലക പാലകന്റെ വിശേഷകള്‍ നഷ്ടമാകും വിധം ചില പ്രയോഗങ്ങള്‍ വിവരണങ്ങള്‍ ഉപേക്ഷിക്കുന്നു. ഇതു് "
+"മെറ്റസിറ്റി ശരിയായ മോഡില്‍ പ്രവര്‍ത്തിപ്പിക്കുന്നു. ഇങ്ങനെ സ്ഥിരമായൊരു യൂസര്‍ ഇന്റര്‍ഫെയിസ് "
+"ലഭ്യമാകുന്നു. തകരാറുള്ള പ്രയോഗങ്ങള്‍ പ്രവര്‍ത്തിക്കുന്നുമില്ല"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "സിസ്റ്റം ബെല്‍ കേള്‍ക്കുവാന്‍ സാധിക്കുന്നു"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"സിസ്റ്റം ബെല്‍ അല്ലെങ്കില്‍ മറ്റൊരു പ്രയോഗത്തിനുള്ള 'ബെല്‍' പ്രവര്‍ത്തിച്ചു എന്നുള്ള വിശ്വല്‍ സൂചന എങ്ങനെ "
+"ലഭ്യമാക്കണമെന്നു് മെറ്റസിറ്റിയെ അറിയിക്കുന്നു. നിലവില്‍ ശരിയായ രണ്ടു് മൂല്ല്യങ്ങളുണ്ടു്: പൂര്‍ണ്ണ സ്ക്രീന്‍ "
+"വൈറ്റ്-ബ്ലാക്ക് ഫ്ലാഷിനായി \"fullscreen\", ഫ്ലാഷിലേക്ക് ബെല്‍ സിഗ്നല്‍ അയയ്ക്കുന്ന പ്രയോഗത്തിനുള്ള "
+"ടൈറ്റില്‍ബാറിനായി \"frame_flash\". ബെല്‍ ലഭ്യമാക്കിയ പ്രയോഗം അപരിചിതമെങ്കില്‍ "
+"(സ്വതവേയുള്ളത് \"system beep\"), നിലവില്‍ ഫോക്കസ് ചെയ്യുന്ന ജാലകത്തിന്റെ ടൈറ്റില്‍ബാര്‍ ഫ്ലാഷ് "
+"ചെയ്യുന്നു."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"ഈ കമാന്‍ഡുകള്‍ക്കുള്ള കീബൈന്‍ഡിങുകള്‍ /apps/marco/global_keybindings/ run_command_N "
+"കീകള്‍ നിഷ്കര്‍ഷിക്കുന്നു. run_command_N-നുള്ള കീബൈന്‍ഡിങ് അമര്‍ത്തുന്നതു് command_N "
+"പ്രവര്‍ത്തിപ്പിക്കുന്നു"
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"ഈ സജ്ജീകരണം നല്‍കിയ കമാന്‍ഡ് ലഭ്യമാക്കുന്നതിനായി /apps/marco/global_keybindings/"
+"run_command_screenshot കീ ഒരു കീബൈന്‍ഡിങ് നിഷ്കര്‍ഷിക്കുന്നു."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"ഈ സജ്ജീകരണം നല്‍കിയ കമാന്‍ഡ് ലഭ്യമാക്കുന്നതിനായി /apps/marco/global_keybindings/"
+"run_command_window_screenshot കീ ഒരു കീബൈന്‍ഡിങ് നിഷ്കര്‍ഷിക്കുന്നു."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"/apps/marco/keybinding_commands-ലുള്ള കമാന്‍ഡ് പ്രവര്‍ത്തിപ്പിക്കുന്ന കീബൈന്‍ഡിങ്. മാതൃക "
+"\"&lt;Control&gt;a\" അല്ലെങ്കില്‍ \"&lt;Shift&gt;&lt;Alt&gt;F1\" പോലെയാണു്. ലോവര്‍ "
+"അല്ലെങ്കില്‍ അപ്പര്‍ കേസ്, \"&lt;Control&gt;\", \"&lt;Control&gt;\" പോലുള്ള "
+"അബ്രീവിയേഷനുകള്‍ എന്നിവ പാഴ്സര്‍ അനുവദിക്കുന്നു. ഉപാധി \"പ്രവര്‍ത്തന രഹിതം\" എന്നാക്കിയാല്‍, ഈ "
+"പ്രവര്‍ത്തിയ്ക്കു് കീബൈന്‍ഡിങ് ലഭ്യമല്ല."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "പണിയറുടെ പേര‍്"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "സ്ക്രീന്‍ ഷോട്ടിനുള്ള കമാന്‍ഡ്"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "വിന്‍ഡോ അതിരുകള്‍, ടൈറ്റില്‍ബാര്‍ എന്നിങ്ങളെയുള്ളവയുടെ കാഴ്ച പ്രമേയം നിശ്ചയിക്കുന്നു."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"auto_raise true ആണെങ്കില്‍ ഒരു ജാലകം ഉയര്‍ത്തുന്നതിനു് മുമ്പുള്ള താമസം. സമയം ഒരു സെക്കന്‍ഡിന്റെ "
+"ആയിരത്തിലൊന്നായി നല്‍കുന്നു."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"എങ്ങനെ ജാലകം സജീവമാക്കുന്നു എന്നു് ജാലകം ഫോക്കസ് മോഡ് സൂചിപ്പിക്കുന്നു. ഇതിനു് മൂന്നു് മൂല്ല്യങ്ങളുണ്ടു്; "
+"\"click\" - ജാലകം ഫോക്കസ് ചെയ്യുന്നതിനു് മാത്രം അവ ക്ലിക്ക് ചെയ്യണം, \"sloppy\" - "
+"ജാലകത്തില്‍ മൌസ് പ്രവേശിക്കുമ്പോള്‍ അവ ഫോക്കസ് ചെയ്യപ്പെടുന്നു, \"mouse\" - ജാലകത്തില്‍ മൌസ് "
+"പ്രവേശിക്കുമ്പോള്‍ അവ ഫോക്കസ് ചെയ്യപ്പെടുന്നു, മൌസ് ജാലകം ഉപേക്ഷിക്കുമ്പോള്‍ ഫോക്കസ് നഷ്ടപ്പെടുന്നു."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "ജാലകത്തിന്റെ സ്ക്രീന്‍ഷോട്ടിനുള്ള കമാന്‍ഡ്"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ടൈറ്റില്‍ ബാറില്‍ ഡബിള്‍ ക്ലിക്ക് ചെയ്യുന്നതിന്റെ ഫലം ഈ ഉപാധി നല്‍കുന്നു.നിലവില്‍ സാധുതയുള്ള "
+"ഉപാധികള്‍:'toggle_shade'- ജാലകം ഷെയിഡ്/അണ്‍ഷെയിഡ് ചെയ്യുന്നു, 'toggle_maximize' - "
+"ജാലകം വലുതു്/ചെറുതാക്കുന്നു, 'toggle_maximize_horizontally' , "
+"'toggle_maximize_vertically' എന്നിവ ആ ദിശയില്‍ മാത്രം ജാലകം വലുതു്/ചെറുതാക്കുന്നു, "
+"'minimize' - ജാലകം ചെറുതാക്കുന്നു,'shade' - ജാലകം മുകളിലേക്ക് റോള്‍ ചെയ്യുന്നു, 'menu' - "
+"ജാലകത്തിനുള്ള മെനു ലഭ്യമാക്കുന്നു, 'lower' - എല്ലാത്തിനും പുറകില്‍ ജാലകം സ്ഥാപിക്കുന്നു, 'none' "
+"- ഒന്നും ചെയ്യുന്നില്ല"
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ടൈറ്റില്‍ ബാറില്‍ മിഡില്‍ ക്ലിക്ക് ചെയ്യുന്നതിന്റെ ഫലം ഈ ഉപാധി നല്‍കുന്നു.നിലവില്‍ സാധുതയുള്ള "
+"ഉപാധികള്‍:'toggle_shade'- ജാലകം ഷെയിഡ്/അണ്‍ഷെയിഡ് ചെയ്യുന്നു, 'toggle_maximize' - "
+"ജാലകം വലുതു്/ചെറുതാക്കുന്നു, 'toggle_maximize_horizontally' , "
+"'toggle_maximize_vertically' എന്നിവ ആ ദിശയില്‍ മാത്രം ജാലകം വലുതു്/ചെറുതാക്കുന്നു, "
+"'minimize' - ജാലകം ചെറുതാക്കുന്നു,'shade' - ജാലകം മുകളിലേക്ക് റോള്‍ ചെയ്യുന്നു, 'menu' - "
+"ജാലകത്തിനുള്ള മെനു ലഭ്യമാക്കുന്നു, 'lower' - എല്ലാത്തിനും പുറകില്‍ ജാലകം സ്ഥാപിക്കുന്നു, 'none' "
+"- ഒന്നും ചെയ്യുന്നില്ല"
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ടൈറ്റില്‍ ബാറില്‍ റൈറ്റ് ക്ലിക്ക് ചെയ്യുന്നതിന്റെ ഫലം ഈ ഉപാധി നല്‍കുന്നു.നിലവില്‍ സാധുതയുള്ള "
+"ഉപാധികള്‍:'toggle_shade'- ജാലകം ഷെയിഡ്/അണ്‍ഷെയിഡ് ചെയ്യുന്നു, 'toggle_maximize' - "
+"ജാലകം വലുതു്/ചെറുതാക്കുന്നു, 'toggle_maximize_horizontally' , "
+"'toggle_maximize_vertically' എന്നിവ ആ ദിശയില്‍ മാത്രം ജാലകം വലുതു്/ചെറുതാക്കുന്നു, "
+"'minimize' - ജാലകം ചെറുതാക്കുന്നു,'shade' - ജാലകം മുകളിലേക്ക് റോള്‍ ചെയ്യുന്നു, 'menu' - "
+"ജാലകത്തിനുള്ള മെനു ലഭ്യമാക്കുന്നു, 'lower' - എല്ലാത്തിനും പുറകില്‍ ജാലകം സ്ഥാപിക്കുന്നു, 'none' "
+"- ഒന്നും ചെയ്യുന്നില്ല"
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"പുതുതായി ഉണ്ടാക്കിയ ജാലകങ്ങളിലേക്ക് കൂടുതല്‍ സൂചിക നിയന്ത്രണം ഈ ഉപാധി ലഭ്യമാക്കുന്നു. രണ്ടു് "
+"മൂല്ല്യങ്ങളുണ്ടു്; \"smart\" ഉപയോക്താവിന്റെ സാധാരണ ഫോക്കസ് മോഡ് ലഭ്യമാക്കുന്നു, \"strict\" "
+"ഫലമാകുന്നതു് ഒരു ടെര്‍മിനലില്‍ ആരംഭിച്ച ജാലകങ്ങളാകുന്നു, ഇവയില്‍ ഫോക്കസ് ലഭ്യമല്ല."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"ഒരു പ്രയോഗം അല്ലെങ്കില്‍ ഒരു സിസ്റ്റം 'മണി' അല്ലെങ്കില്‍ 'ബീപ്പ്' ഉണ്ടാക്കുമ്പോള്‍ കാണുവാന്‍ "
+"സാധ്യമാകുന്ന സൂചന ഓണ്‍ ചെയ്യുന്നു; കേള്‍ക്കുവാന്‍ സാധ്യമല്ലാത്ത സാഹചര്യങ്ങളില്‍ ഉപയോഗിക്കുന്നു"
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "ജാലക തലക്കെട്ടുകള്‍ക്ക് സാധാരണയുള്ള സിസ്റ്റം അക്ഷരസഞ്ചയം ഉപയോഗിക്കുക"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "വിശ്വല്‍ ബെല്‍ രീതി"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "ഉയര്‍ത്തുന്നതു് മറ്റു് ഉപയോക്താക്കളുടെ ഇന്ററാക്ഷനുകളുടെ ഒരു ഫലമാണോ എന്നു്"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "വലതു് ബട്ടണ്‍ ഉപയോഗിച്ചു് വലിപ്പം മാറ്റണമോയെന്നു്"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "ജാലക കേന്ദ്രീകരണരീതി"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "ജാലക തലക്കെട്ട് അക്ഷരരൂപം"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "ഉപയോഗം: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "ജാലകം അടയ്‍ക്കുക"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "ജാലക പട്ടിക‌"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "ജാലകം ചെറുതാക്കുക"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "ജാലകം വലുതാക്കുക"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "ജാലകം വീണ്ടെടുക്കുക"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "ജാലകം ചുരുട്ടുക"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Unroll Window"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "ജാലകം മുകളിലാക്കുക"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "ജാലകം മുകളില്‍ നിന്നും നീക്കുക"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "എപ്പോഴും ദൃശ്യമായ പണിയറയില്‍ "
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "ഒരു പണിയറയില്‍ ജാലകം കാണിക്കുക"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "ചെ_റുതാക്കുക"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_വലുതാക്കുക"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "വലുതാക്കി_യതൊഴിവാക്കുക"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_ചുരുട്ടുക"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "ചുരു_ളഴിക്കുക"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_നീക്കുക "
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "വ_ലിപ്പം മാറ്റുക"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "_സ്ക്രീനിലേക്ക് തലക്കെട്ടിന്റെ ബാര്‍ നീക്കുക"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "എപ്പോഴും _മുകളില്‍"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_എപ്പോഴും ദൃശ്യമായ പണിയറയില്‍"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "ഈ _പണിയറയില്‍ മാത്രം"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "_ഇടത്തുളള പണിയറയിലേക്ക് നീങ്ങുക"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "_വലത്തുളള പണിയറയിലേക്ക് നീങ്ങുക"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "_മുകളിലുളള പണിയറയിലേക്ക് നീങ്ങുക"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "_താഴെയുളള പണിയറയിലേക്ക് നീങ്ങുക"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_അടയ്ക്കുക"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "പണിയറ %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "പണിയറ 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "പണിയറ %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "മറ്റൊരു _പണിയറയിലേക്ക് നീങ്ങുക"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "മാറ്റുക"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "നിയന്ത്രണം"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "മുകളില്‌"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "താഴെ"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "ഇടത്"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "വലത്"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "ഫ്രെയിം ജോമെട്രി \"%s\" അളവുകള്‍ നല്‍കുന്നില്ല"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "ഫ്രെയിം ജോമെട്രി \"%s\" അളവുകള്‍ നല്‍കുന്നില്ല. ഇവ \"%s\" അതിരിനുള്ളതാണു്"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "ബട്ടണ്‍ ആസ്പെക്ട് റേഷ്യോ %g ഉചിതമല്ല"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "ഫ്രെയിം ജോമെട്രി ബട്ടണുകള്‍ക്കുള്ള വ്യാപ്തി നല്‍കുന്നില്ല"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "ഗ്രേഡിയന്റ്സിനു് കുറഞ്ഞതു് രണ്ടു് നിറങ്ങളുണ്ടാവണം"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK നിറം വിവരണത്തില്‍ ബ്രാക്കറ്റുകളില്‍ അവസ്ഥയുണ്ടായിരിക്കണം, ഉദാ. gtk:fg[NORMAL], ഇവിടെ "
+"NORMAL ആണു് അവസ്ഥ, \"%s\" പാഴ്സ് ചെയ്യുവാനായില്ല"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"അവസ്ഥയ്ക്കു് ശേഷം GTK നിറം വിവരണത്തില്‍ ഒരു അടയ്ക്കുന്ന ബ്രാക്കറ്റുണ്ടായിരിക്കണം, ഉദാ. gtk:fg"
+"[NORMAL], ഇവിടെ NORMAL ആണു് അവസ്ഥ, \"%s\" പാഴ്സ് ചെയ്യുവാനായില്ല"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "നിറം വിവരിക്കുന്നതില്‌ \"%s\" അവസ്ഥ മനസ്സിലാക്കുവാന്‍ സാധ്യമല്ല"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "നിറത്തിന്റെ വിവരണത്തിലുള്ള നിറത്തിനുള്ള ഘടകം \"%s\" മനസ്സിലായില്ല"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "\"blend/bg_color/fg_color/alpha\" ആണു് ബ്ലെന്‍ഡ് ശൈലി, \"%s\" ശൈലിയ്ക്കു് പാകമല്ല"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "%s നെ ഒരു സംഖ്യയായി വേര്‍തിരിക്കാന്‍ കഴിയുന്നില്ല"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "ബ്ലെന്‍ഡഡ് നിറത്തിലുള്ള ആല്‍ഫാ മൂല്ല്യം \"%s\" 0.0-നും 1.0-നും ഇടയിലല്ല"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "\"shade/base_color/factor\" ആണു് ഷെയിഡ് ശൈലി, \"%s\" ശൈലിയ്ക്കു് പാകമല്ല"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "%s നെ ഒരു സംഖ്യയായി വേര്‍തിരിക്കാന്‍ കഴിയുന്നില്ല"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "ഷേയിഡഡ് നിറത്തിലുള്ള \"%s\" ഷെയിഡ് ഫാക്ടര്‍ നെഗറ്റീവാണു്"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "\"%s\" നിറം പാഴ്സ് ചെയ്യുവാന്‍ സാധ്യമല്ല"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനില്‍ അനുവാദമില്ലാത്ത ഒരു അക്ഷരം '%s' ഉണ്ടു്"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനില്‍ പാഴ്സ് ചെയ്യുവാന്‍ സാധ്യമല്ലാത്ത ഒരു ഫ്ലോട്ടിങ് പോയിന്റ് നംബര്‍ '%s' ഉണ്ടു്"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനില്‍ പാഴ്സ് ചെയ്യുവാന്‍ സാധ്യമല്ലാത്ത ഒരു ഇന്റിജര്‍ '%s' ഉണ്ടു്"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "പദാവലിയുടെ ആരംഭത്തില്‍ കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനില്‍ അപരിചിതമായ ഓപ്പറേറ്ററുണ്ടു്: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷന്‍ ശൂന്യമായിരുന്നു അല്ലെങ്കില്‍ മനസ്സിലായില്ല"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷന്റെ ഫലം പൂജ്യം കൊണ്ടുള്ള ഹരണമാകുന്നു"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "ഒരു ഫ്ലോട്ടിങ്-പോയിന്റ് നംബറില്‍ കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷന്‍ mod ഓപ്പറേറ്റര്‍ ഉപയോഗിക്കുവാന്‍ ശ്രമിക്കുന്നു"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനില്‍ ഒരു \"%s\" ഓപ്പറേറ്റുണ്ടു് പക്ഷേ പ്രതീക്ഷിച്ചതു് ഒരു ഓപ്പറണ്ട്"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനില്‍ ഒരു ഓപ്പറണ്ടുണ്ടു് പക്ഷേ പ്രതീക്ഷിച്ചതു് ഒരു ഓപ്പറേറ്റര്‍."
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷന്‍ ഒരു ഓപ്പറണ്ടിനു പകരം ഒരു ഓപ്പറേറ്റില്‍ അവസാനിച്ചു"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനില്‍ \"%c\" ഓപ്പറേറ്റര്‍, ശേഷം \"%c\" ഓപ്പറേറ്റര്‍ ഉണ്ടു്, പക്ഷേ ഇടയില്‍ "
+"ഓപ്പറണ്ടില്ല"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനില്‍ അപരിചിതമായ വേരിയബിള്‍ അല്ലെങ്കില്‍ കോണ്‍സ്റ്റന്റ് \"%s\" "
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷന്‍ പാഴ്സര്‍ അതിലുള്ള ബഫര്‍ ഓവര്‍ഫ്ലോ ചെയ്തു."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനില്‍ അടയ്ക്കുന്നൊരു പരാന്ഥസിസ് ഉണ്ടായിരുന്നു, പക്ഷേ തുറക്കുന്നതു് ലഭ്യമല്ല"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനില്‍ ഒരു ഓപ്പണ്‍ പരാന്ഥസിസ് ഉണ്ടായിരുന്നു, പക്ഷേ അടയ്ക്കുന്നതു് ലഭ്യമല്ല"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനില്‍ ഒരു ഓപ്പറേറ്ററും ഓപ്പറണ്ടും ലഭ്യമല്ല"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "ഒരു പിശകുണ്ടാക്കിയ എക്സ്പ്രെഷന്‍ പ്രമേയത്തിലുണ്ടായിരുന്നു: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"ഈ ഫ്രെയിം ശൈലിയ്ക്കു് <button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/"
+"> വ്യക്തമാക്കിയിരിക്കണം"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> ലഭ്യമല്ല"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "പ്രമേയം %s കൊണ്ട് വരാന് കഴിഞ്ഞില്ല: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "<%s> \"%s\" പ്രമേയത്തിനു് സജ്ജമല്ല"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"\"%s\" ജാലക തരത്തിലുള്ള \"%s\" പ്രമേയത്തില്‍ ഒരു ഫ്രെയിം ശൈലിയും സജ്ജമല്ല, ഒരു <window "
+"type=\"%s\" style_set=\"whatever\"/> എലമെന്റ് ചേര്‍ക്കുക"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"ഉപയോക്താവു് നിഷ്കര്‍ഷിച്ചിട്ടുള്ള കോണ്‍സ്റ്റന്റുകള്‍ കാപ്പിറ്റല്‍ അക്ഷരത്തില്‍ ആരംഭിക്കണം; \"%s\" "
+"അങ്ങനെയല്ല"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "കോണ്‍സ്റ്റന്റ് \"%s\" നിലവില്‍ നിഷ്കര്‍ഷിച്ചിട്ടുണ്ടു്"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "\"%s\" വിശേഷത <%s> എലമെന്റില്‍ ലഭ്യമല്ല"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "%d-ആം വരി %d എന്ന അക്ഷരം: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "\"%s\" രണ്ടു് തവണ <%s> എലമെന്റില്‍ ആവര്‍ത്തിച്ചു"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "ഈ ആശയത്തില്‍ \"%s\" വിശേഷത <%s> എലമെന്റില്‍ തെറ്റാണു്"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "%s നെ ഒരു സംഖ്യയായി വേര്‍തിരിക്കാന്‍ കഴിയുന്നില്ല"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "അവസാനമുള്ള \"%s\" അക്ഷരങ്ങള്‍, \"%s\" സ്ട്രിങില്‍ മനസ്സിലായില്ല"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "ഇന്റിജര്‍ %ld പോസിറ്റീവായിരിക്കണം"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "ഇന്റിജര്‍ %ld വളരെ വലുതാണു്, നിലവില്‍ ഏറ്റവും കൂടുതല്‍ %d ആണു്"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "%s നെ ഒരു സംഖ്യയായി വേര്‍തിരിക്കാന്‍ കഴിയുന്നില്ല"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "ബൂളിയന്‍ മൂല്ല്യങ്ങള്‍ \"true\" അല്ലെങ്കില്‍ \"false\" ആയിരിക്കണം, \"%s\" അല്ല"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "0.0-നും 360.0-യ്ക്കും ഇടയിലായിരിക്കണം കോണു്, %g ആയിരുന്നു\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "0.0-യ്ക്കും (അദൃശ്യം) 1.0-യ്ക്കും (കട്ടിയുള്ളതല്ല) ഇടയിലായിരിക്കണം ആല്‍ഫാ, %g ആയിരുന്നു\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"തലക്കെട്ടിനുള്ള തെറ്റായ അളവു് \"%s\" (xx-small,x-small,small,medium,large, -large,"
+"xx-large - ഇവയിലൊന്നാരിക്കണം)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> പേര് \"%s\" രണ്ടാം തവണ ഉപയോഗിച്ചിരിക്കുന്നു"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> പേരന്റ് \"%s\" വ്യക്തമാക്കിയിട്ടില്ല"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> ജോമെട്രി \"%s\" നിഷ്കര്‍ഷിച്ചിട്ടില്ല"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> ഒരു ജോമെട്രി അല്ലെങ്കില്‍ ജോമെട്രിയുള്ള പേരന്റ് നല്‍കേണ്ടതുണ്ടു്"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "ഒരു ആല്‍ഫാ മൂല്ല്യം അര്‍ത്ഥവത്താകുന്നതിനു് ഒരു പശ്ചാത്തലം നല്‍കേണ്ടതുണ്ടു്"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "<%s> എലമെന്റില്‍ അപരിചിതമായ തരത്തിലുള്ള \"%s\""
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "അപരിചിതമായ style_set \"%s\", <%s> എലമെന്റില്‍ "
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "ജാലക രീതി \"%s\"-യ്ക്കു് നിലവില്‍ ഒരു ശൈലി കൂട്ടം നല്‍കിയിട്ടുണ്ടു്"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "<%s> എലമെന്റ് <%s>-നു് താഴെ അനുവദിക്കുന്നതല്ല"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr "ബട്ടണുകള്‍ക്കു് \"button_width\"/\"button_height\", \"aspect_ratio\" നല്‍കുവാന്‍ സാധ്യമല്ല"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "\"%s\" എന്ന ദൂരം അപരിചിതമാണ്"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "\"%s\" എന്ന ആസ്പെക്റ്റ് റേഷ്യോ അപരിചിതമാണ്"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "\"%s\" എന്ന അതിര് അപരിചിതമാണ്"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "\"start_angle\" അല്ലെങ്കില്‍ \"എവിടെ നിന്നും\" <%s> എലമെന്റില്‍ വിശേഷത ലഭ്യമല്ല"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "\"extent_angle\" അല്ലെങ്കില്‍ \"എങ്ങോട്ട്\" വിശേഷത <%s> എലമെന്റില്‍ ലഭ്യമല്ല"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "മൂല്ല്യം \"%s\", ഗ്രേഡിയന്റ് രീതിയ്ക്കുള്ളതു് മനസ്സിലാകുവാന്‍ സാധ്യമല്ല"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "നിറയ്ക്കുന്ന രീതി \"%s\", <%s> എലമെന്റിനുള്ളതു് മനസ്സിലാകുവാന്‍ സാധ്യമല്ല"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "അവസ്ഥ \"%s\", <%s> എലമെന്റിനുള്ളതു് മനസ്സിലാകുവാന്‍ സാധ്യമല്ല"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "ഷാഡോ \"%s\", <%s> എലമെന്റിനുള്ളതു് മനസ്സിലാകുവാന്‍ സാധ്യമല്ല"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "ആരോ \"%s\", <%s> എലമെന്റിനുള്ളതു് മനസ്സിലാകുവാന്‍ സാധ്യമല്ല"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "ഒരു <draw_ops>-ഉം \"%s\" എന്ന പേരില്‍ ലഭ്യമല്ല"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "draw_ops \"%s\" ഇവിടെ ഉള്‍പ്പെടുത്തുന്നതു് ഒരു സെര്‍ക്കുലര്‍ റെഫറന്‍സുണ്ടാക്കുന്നു"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "ഫ്രെയിം പീസിനുള്ള അപരിചിതമായ സ്ഥാനം \"%s\""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "%s സ്ഥാനത്തു് നിലവില്‍ ഫ്രെയിം ശൈലിയ്ക്കു് ഒരു പീസുണ്ടു്"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "ഒരു <draw_ops>-ഉം \"%s\" എന്ന പേരില്‍ ലഭ്യമല്ല"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "ബട്ടണുള്ള അപരിചിതമായ ഫംഗ്ഷന്‍ \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "ബട്ടണ്‍ ഫംഗ്ഷന്‍ \"%s\" ഈ പതിപ്പില്‍ ലഭ്യമല്ല (%d, %d ആവശ്യമുണ്ടു്)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "ബട്ടണുള്ള അപരിചിതമായ അവസ്ഥ \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "ഫംഗ്ഷന്‍ %s അവസ്ഥ %s-നു് ഫ്രെയിം ശൈലിയില്‍ നിലവില്‍ ഒരു ബട്ടണുണ്ടു്"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "ഫോക്കസ് വിശേഷതയ്ക്കുള്ള ശരിയായ മൂല്ല്യമല്ല \"%s\""
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "അവസ്ഥ വിശേഷതയ്ക്കുള്ള ശരിയായ മൂല്ല്യമല്ല \"%s\""
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" എന്ന ശൈലി നിഷ്കര്‍ഷിച്ചിട്ടില്ല"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "വ്യാപ്തി മാറ്റുക വിശേഷതയ്ക്കുള്ള ശരിയായ മൂല്ല്യമല്ല \"%s\""
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"ഏറ്റവും വലുതാക്കിയ/ഷെയിഡഡ് അവസ്ഥകള്‍ക്കു് <%s> എലമെന്റില്‍ \"വ്യാപ്തി മാറ്റുക\" വിശേഷത "
+"ഉണ്ടായിരിക്കരുതു്"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "ഏറ്റവും വലുതാക്കിയ അവസ്ഥകള്‍ക്കു് <%s> എലമെന്റില്‍ \"വ്യാപ്തി മാറ്റുക\" വിശേഷത ഉണ്ടായിരിക്കരുതു്"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "%s അവസ്ഥ വ്യാപ്തി മാറ്റുക%s %s ഫോക്കസിനായി ശൈലി നിലവില്‍ വ്യക്തമാക്കിയിട്ടുണ്ടു്"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "%s അവസ്ഥ %s ഫോക്കസിനായി ശൈലി നിലവില്‍ വ്യക്തമാക്കിയിട്ടുണ്ടു്"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"ഒരു <piece> എലമെന്റിനു് രണ്ടു് draw_ops ഉണ്ടാകുവാന്‍ പാടില്ല (draw_ops വിശേഷതയ്ക്കുള്ള ഒരു "
+"വിശേഷത, ഒരു <draw_ops> എലമെന്റ് അല്ലെങ്കില്‍ രണ്ടു എലമെന്റുകള്‍ നല്‍കുക)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"ഒരു <button> എലമെന്റിനു് രണ്ടു് draw_ops ഉണ്ടാകുവാന്‍ പാടില്ല (draw_ops വിശേഷതയ്ക്കുള്ള ഒരു "
+"വിശേഷത, ഒരു <draw_ops> എലമെന്റ് അല്ലെങ്കില്‍ രണ്ടു എലമെന്റുകള്‍ നല്‍കുക)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"ഒരു <menu_icon> എലമെന്റിനു് രണ്ടു് draw_ops ഉണ്ടാകുവാന്‍ പാടില്ല (draw_ops വിശേഷതയ്ക്കുള്ള "
+"ഒരു വിശേഷത, ഒരു <draw_ops> എലമെന്റ് അല്ലെങ്കില്‍ രണ്ടു എലമെന്റുകള്‍ നല്‍കുക)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "പ്രമേയത്തില്‍ ഏറ്റവും പുറമേയുള്ള എലമെന്റ് <marco_theme> ആണു്, <%s> അല്ല"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "ഒരു name/author/date/description എലമെന്റില്‍ <%s> എലമെന്റ് അനുവദിക്കുന്നില്ല"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<constant> എലമെന്റില്‍ <%s> എലമെന്റ് അനുവദിക്കുന്നില്ല"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "distance/border/aspect_ratio എലമെന്റില്‍ <%s> എലമെന്റ് അനുവദിക്കുന്നില്ല"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "ഒരു ഡ്രോ ഓപ്പറേഷന്‍ എലമെന്റില്‍ <%s> എലമെന്റ് അനുവദിക്കുന്നില്ല"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%s> എലമെന്റ് ഒരു <%s> എലമെന്റില്‍ അനുവദിക്കുന്നില്ല"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "ഫ്രെയിം പീസില്‍ draw_ops ലഭ്യമാക്കിയില്ല"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "ബട്ടണിനു് draw_ops ലഭ്യമാക്കിയില്ല"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> എലമെന്റില്‍ പദാവലി അനുവദിക്കുന്നില്ല"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "ഈ പ്രമേയത്തിനു് <%s> രണ്ടു് തവണ പറഞ്ഞിരിക്കുന്നു"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "%s ഥീമിന് യോജിക്കുന്ന ഒരു ഫയല്‍ ലഭ്യമാക്കുവാന്‍ സാധ്യമായില്ല\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "ഥീം ഫയല്‍ %s-ല്‍ റൂട്ട് <marco_theme> എലമെന്റില്ല"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Windows"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Windows/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Windows/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Windows/_Modal dialog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Windows/_Utility"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Splashscreen"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Windows/_Top dock"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Windows/_Bottom dock"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Windows/_Left dock"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Windows/_Right dock"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Windows/_All docks"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Windows/Des_ktop"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "മാതൃക ഡയലോഗിലുള്ള മാതൃക സന്ദേശമാണിതു്"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "ഇല്ലാത്ത മെനു വസ്തു %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "അതിരു് മാത്രമുള്ള ജാലകം"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "ബാര്‍"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "പ്രയോഗത്തിനുള്ള സാധാരണ ജാലകം"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "ഡയലോഗ് ബോക്സ്"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "മോഡല്‍ ഡയലോഗ് ബോക്സ്"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "യൂട്ടിലിറ്റിയ്ക്കുള്ള നിറക്കൂട്ട്"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "ടോണ്‍-ഓഫ് മെനു"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "അതിര്"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "ബട്ടണ്‍ ശൈലി പരീക്ഷണം %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "ഒരു ജാലക ഫ്രെയിം ലഭ്യമാക്കുന്നതിനായി %g മില്ലിസെക്കന്‍ഡുകള്‍"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "ഉപയോഗിക്കേണ്ട വിധം: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "പ്രമേയം ലോഡ് ചെയ്യുന്നതില്‍ പിശക്: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" പ്രമേയം %g സെക്കന്‍ഡുകളില്‍ ലഭ്യമാക്കി\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "തലക്കെട്ടിനുള്ള സാധാരണ അക്ഷരസഞ്ചയം"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "തലക്കെട്ടിനുള്ള ചെറിയ അക്ഷരസഞ്ചയം"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "തലക്കെട്ടിനുള്ള വലിയ അക്ഷരസഞ്ചയം"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "ബട്ടണ്‍ ശൈലികള്‍"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "പരീക്ഷണ നിലവാരം"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "ജാലകത്തിനുള്ള തലക്കെട്ടിവിടെ"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d ഫ്രെയിമുകള്‍ ക്ലൈന്റ് വശത്തുള്ള %g സെക്കന്‍ഡുകളിലും (ഒരു ഫ്രെയിമില്‍ %g മില്ലിസെക്കന്‍ഡുകള്‍) X "
+"റിസോഴ്സുകള്‍ ഉള്‍പ്പെടുന്ന %g സെക്കന്‍ഡുകളും (ഒരു ഫ്രെയിമില്‍ %g മില്ലിസെക്കന്‍ഡുകള്‍) ലഭ്യമാക്കി.\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "പൊസിഷന്‍ എക്സ്പ്രെഷന്‍ പരീക്ഷണം TRUE മറുപടി നല്‍കി, പക്ഷേ പിശകായി സജ്ജമാക്കി"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "പൊസിഷന്‍ എക്സ്പ്രെഷന്‍ പരീക്ഷണം FALSE മറുപടി നല്‍കി, പക്ഷേ പിശകായി സജ്ജമാക്കിയില്ല"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "പിശക് പ്രതീക്ഷിച്ചു, പക്ഷേ ഒന്നും ലഭ്യമല്ല"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "പിശക് %d പ്രതീക്ഷിച്ചു, പക്ഷേ %d ലഭിച്ചു"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "പിശക് പ്രതീക്ഷിക്കുന്നില്ല പക്ഷേ ഒന്നു് തിരികെ ലഭിച്ചു: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x-ന്റെ മൂല്ല്യം %d ആയിരുന്നു, പക്ഷേ പ്രതീക്ഷിച്ചത് %d ആണ്"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y-യുടെ മൂല്ല്യം %d ആയിരുന്നു, പക്ഷേ പ്രതീക്ഷിച്ചതു് %d ആണ്"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d കോര്‍ഡിനേറ്റ് എക്സ്പ്രെഷനുകള്‍ %g സെക്കന്‍ഡുകളില്‍ പാഴ്സ് ചെയ്യുന്നു (%g സെക്കന്‍ഡുകള്‍ ശരാശരി)\n"
+
diff --git a/po/mn.po b/po/mn.po
new file mode 100644
index 00000000..be6858f3
--- /dev/null
+++ b/po/mn.po
@@ -0,0 +1,3312 @@
+# translation of marco.HEAD.po to Mongolian
+# translation of marco.mate-2-4.mn.po to Mongolian
+# translation of marco.HEAD.mn.po to Mongolian
+# translation of marco.HEAD.po to mongolian
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
+# Ochirbat Batzaya <[email protected]>, 2003.
+# Sanlig Badral <[email protected]>, 2003.
+# Sanlig Badral <[email protected]>, 2003.
+# Sanlig Badral <[email protected]>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-09-19 12:30+0200\n"
+"PO-Revision-Date: 2004-01-03 15:09+0100\n"
+"Last-Translator: Sanlig Badral <[email protected]>\n"
+"Language-Team: Mongolian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.0.2\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Хэрэглээ: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:128
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco нь нэмэлт үгсийн дэмжлэггүйгээр хөрвүүлэгдсэн байна\n"
+
+#: ../src/delete.c:63 ../src/delete.c:90 ../src/marco-dialog.c:70
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "»%s« бүхэл тоо мэт боловсруулагдаагүй"
+
+#: ../src/delete.c:70 ../src/delete.c:97 ../src/marco-dialog.c:77
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "»%s« мөрөн дэх цоожлогч тэмдэгт »%s« -ийг ойлгосонгүй"
+
+#: ../src/delete.c:128
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Диалог-процессийн »%s« мэдээллийг боловсруулж чадсангүй\n"
+
+#: ../src/delete.c:263
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Диалог-Үзүүлэх процессд алдаа гарлаа: %s\n"
+
+#: ../src/delete.c:344
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Х-Программыг алахад асуугддаг Marco-Диалог үйлдэлд алдаа гарлаа: %s\n"
+
+#: ../src/delete.c:452
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Хостын нэрийг олж чадсангүй: %s\n"
+
+#: ../src/display.c:319
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X-Цонхны системийн дэлгэц »%s« нээгдсэнгүй\n"
+
+#: ../src/errors.c:231
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"»%s« дэлгэцтэй холбоо тасарлаа;\n"
+"Магадгүй сервер унтарсан эсвэл та цонхны менежерийг хүчээр унтраасан байна.\n"
+
+#: ../src/errors.c:238
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "%d (%s) төрлийн алдаа »%s«.дэлгэцэн дээр гарлаа \n"
+
+#: ../src/frames.c:1125
+msgid "Close Window"
+msgstr "Цонх хаах"
+
+#: ../src/frames.c:1128
+msgid "Window Menu"
+msgstr "Цонхны цэс"
+
+#: ../src/frames.c:1131
+msgid "Minimize Window"
+msgstr "Цонх агшаах"
+
+#: ../src/frames.c:1134
+msgid "Maximize Window"
+msgstr "Цонх томсгох"
+
+#: ../src/frames.c:1137
+msgid "Unmaximize Window"
+msgstr "Цонх хаах"
+
+#: ../src/keybindings.c:994
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Өөр нэг программ %s товчийг %x modifier-ын хамтаар товчлуурын комбинац "
+"хэлбэрээр хэрэглэж бйна \n"
+
+#: ../src/keybindings.c:2620
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+"Нэгэн командад гарсан алдааг заах ёстой Marco-диалогийг эхлэхэд алдаа "
+"гарлаа: %s\n"
+
+#: ../src/keybindings.c:2725
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Ямар ч %d команд тодорхойлогдоогүй байна.\n"
+
+#: ../src/keybindings.c:3570
+#, fuzzy
+msgid "No terminal command has been defined.\n"
+msgstr "Ямар ч %d команд тодорхойлогдоогүй байна.\n"
+
+# CHECK
+#: ../src/main.c:69
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright © 2001-2002 Havoc Pennington, Red Hat, Inc., ба бусад\n"
+"Энэ бол үнэгүй программ; хуулбарлах нөхцлийг эх кодоос хар \n"
+"Ямар нэгэн ХУДАЛДААНЫ болон тодорхой зорилгод тохируулахад ямар ч баталгаа "
+"олгохгүй.\n"
+
+#: ../src/main.c:257
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:263
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:269
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:274
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:280
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:286
+msgid "Print version"
+msgstr ""
+
+#: ../src/main.c:440
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Хэлбэрүүдийн лавлахыг шалгахад алдаа: %s\n"
+
+#: ../src/main.c:456
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr ""
+"Сэдэв олдсонгүй! Энд %s оршихоос гадна энгийн сэдвийг дотроо агуулсан "
+"эсэхийг шалгана уу."
+
+#: ../src/main.c:518
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Шинэ эхлэл амжилтүй боллоо: %s\n"
+
+#: ../src/menu.c:54
+msgid "Mi_nimize"
+msgstr "_Жижигсгэх"
+
+#: ../src/menu.c:55
+msgid "Ma_ximize"
+msgstr "То_мсгох"
+
+#: ../src/menu.c:56
+msgid "Unma_ximize"
+msgstr "_Сэргээх"
+
+#: ../src/menu.c:57
+msgid "Roll _Up"
+msgstr "Хуйл_ах"
+
+#: ../src/menu.c:58
+msgid "_Unroll"
+msgstr "Дэлг_эх"
+
+#: ../src/menu.c:59 ../src/menu.c:60
+msgid "On _Top"
+msgstr "Дээд талд"
+
+#: ../src/menu.c:61
+msgid "_Move"
+msgstr "_Зөөх"
+
+#: ../src/menu.c:62
+msgid "_Resize"
+msgstr "_Хэмжээ өөрчлөх"
+
+#. separator
+#: ../src/menu.c:64
+msgid "_Close"
+msgstr "_Хаах"
+
+#. separator
+#: ../src/menu.c:66
+#, fuzzy
+msgid "_Always on Visible Workspace"
+msgstr "Зөвхөн _энэ ажлын талбар дээр "
+
+#: ../src/menu.c:67
+#, fuzzy
+msgid "_Only on This Workspace"
+msgstr "Зөвхөн _энэ ажлын талбар дээр "
+
+#: ../src/menu.c:68
+msgid "Move to Workspace _Left"
+msgstr "Ажлын талбарын зүүн тийш зөө"
+
+#: ../src/menu.c:69
+msgid "Move to Workspace R_ight"
+msgstr "Ажлын талбарын баруун тийш зөө"
+
+#: ../src/menu.c:70
+msgid "Move to Workspace _Up"
+msgstr "Ажлын талбарын дээш зөө"
+
+#: ../src/menu.c:71
+msgid "Move to Workspace _Down"
+msgstr "Ажлын талбарын доош зөө"
+
+#: ../src/menu.c:162 ../src/prefs.c:2106
+#, c-format
+msgid "Workspace %d"
+msgstr "Ажлын талбар %d"
+
+#: ../src/menu.c:171
+msgid "Workspace 1_0"
+msgstr "Ажлын талбар 1_0"
+
+#: ../src/menu.c:173
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Ажлын талбар %s%d"
+
+#: ../src/menu.c:368
+msgid "Move to Another _Workspace"
+msgstr "Өөр _ажлын талбар руу зөө"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Strg"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "Супер"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Гипер"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Горим2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Горим3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Горим4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Горим5"
+
+#: ../src/marco-dialog.c:110
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr "\"%s\" цонхноос хариу алга."
+
+#: ../src/marco-dialog.c:118
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr ""
+"Энэ х.програмаас хүчээр гарахыг хүсэж байвал хадгалаагүй өөрчилөлтүүд устана."
+
+#: ../src/marco-dialog.c:129
+msgid "_Force Quit"
+msgstr "_Хүчээр гарах"
+
+#: ../src/marco-dialog.c:226
+msgid "Title"
+msgstr "Гарчиг"
+
+#: ../src/marco-dialog.c:238
+msgid "Class"
+msgstr "Анги"
+
+#: ../src/marco-dialog.c:264
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Эдгээр цонхнууд одоогийн тохиргоонуудыг хадгалахад оролцохгүй бөгөөд "
+"дараагийн асаалтаар гараар шинээр эхлэх хэрэгтэй."
+
+#: ../src/marco-dialog.c:330
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"»%s« -ийг ажиллуулахад алдаа гарлаа:\n"
+"%s"
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Гүйцэлдүүлээгүй) Навигаци цонхны бус хэрэглээний нөхцөлдүүлэгтэй ажиллаж "
+"байна"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr ""
+"Цонхны нэрийг бичихэд хэрэглэгддэг бичлэгийн тайлбар мөр. Энэ тайлбарын "
+"хэмжээ нь зөвхөн »titlebar_font_size« 0 дээр тохируулсан үед хэрэглэгдэнэ. "
+"Үүнээс гадна энэ функц нь »titlebar_uses_desktop_font« »ҮНЭН« үед "
+"ажиллахгүй. Стандарт тохиргоонд бол нэрийн шрифтийг тохируулагүй байдаг тул "
+"titlebar_uses_desktop_font »ХУДАЛ« байсан ч Marco өөрийн эрхгүй "
+"desktop_font-ыг ашиглахад хүргэдэг."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Нэрийн мөрөн дээр давхар товших үйлдэл"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr "Цонхны цэс идэвхжүүлэх"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Товчлууруудыг нэрийн мөрөн дээр байрлуулах"
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"Товчлууруудыг нэрийн мөрөн дээр байрлуулах. Утга нь мөр байх ёстой. Ж-нь: "
+"\"цэс:агшаах,томсгох,хаах\";хоёр цэг зүүн буланг баруун булангаас ялгаж өгөх "
+"ба товчлууруудын нэрс таслалаар тусгаарлагдсан. Товчлуур давтагдаж болохгүй."
+"Цаашид шинээр зохиогдох marco-ийн хувилбарууд өмнөхтэйгөө зөрчилдөхөөс "
+"сэргийлж үл таних товчлуурын нэр ямар нэгэн мэдэгдэлгүйгээр үгүйсгэгдэнэ "
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr "Заагдсан цонхыг автоматаар бусад цонхнуудын өмнө гаргаж ирнэ"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Энэ товчлуур дараастай байх хооронд цонх зөөгдөнө (зүүн товчлуур), цонхны "
+"хэмжээг тохируулна (голын товчлуур), эсвэл цонхны цэсийг харуулах (баруун "
+"товчлуур)Modifier нь дараахи хэлбэрээр илэрхийлэгдэнэ »&lt;Alt&gt;«."
+
+#: ../src/marco.schemas.in.h:9
+#, fuzzy
+msgid "Close window"
+msgstr "Цонх хаах"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Товчлуурнуудын хослолоор гүйцэтгэгдэх командууд"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr "Өнөөдрийн сэдэв"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Программ өөрөө эхлэхэд үүсэх миллисекундын хоцролт"
+
+#: ../src/marco.schemas.in.h:13
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Хэрэглээний програмууд эсвэл систем дуут 'дохио' үүсгэж чадах эсэхийг "
+"нягтлахр; магадгүй 'оптик дохио' той холбоотой чимээгүй 'дохио' байж болох."
+
+# CHECK - Miss-Features?
+#: ../src/marco.schemas.in.h:14
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Эвдрэлтэй болоод хуучин программуудад хэрэглэгддэг »Misfeatures« -иийг "
+"идэвхгүйжүүлэх"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr "Оптик сигнал нээх"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Hide all windows and focus desktop"
+msgstr "Бүх цонхнуудыг далдалж ажлын дэлгэцийг хараалах"
+
+#: ../src/marco.schemas.in.h:17
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key)."
+msgstr ""
+"Хэрэв үнэн болоод фокус-горим \"sloppy\" эсвэл \"mouse\"бол хараалагдсан "
+"цонх нь хойшлогдсон хугацааны дараа өөрөө ажиллана(хойшлогдох хугацаа нь "
+"автоматаар эхлэхэд зориулсан үйлдлийн товчлуураар тодорхойлогдоно)"
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Хэрэв үнэн бол гарчгийн_шрифт сонголтыг үгүйсгэн цонхны нэрийн үсгэнд "
+"стандарт программын шрифтийг ашигла."
+
+#: ../src/marco.schemas.in.h:19
+#, fuzzy
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+"Хэрэв үнэн бол метасити бага сонордуулга өгөх ба утсан хүрээ хэрэглэх "
+"хөдөлгөөн оруулах зэрэг »шууд зохицуулалтад« бага боломж олгоно. Энэ нь "
+"хэрэглэгчид найрсаг байх зэргийг муутгах ба гуравдагч санал болгогчийн "
+"терминал серверүүд болон хэрэглээний програмуудыг үнэхээр боломжгүй биш бол "
+"ажиллуулахын зөвшөөрнө."
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr ""
+"Хэрэв үнэн бол Marco нь цонхоор биш х.программ дээр тулгуурлаж "
+"ажилланаЭнэ зарчим нь бага зэрэг хийсвэр ч ерөнхийд нь үзэхэд хэрэглээнд "
+"чиглэсэн тохируулга нь Windows-ийг бодвол Mac-тай ихэд төстэй. Хэрэв та "
+"хэрэглээний зориулалттай горимд цонхыг хараалах(focus) бол ашиглалтанд "
+"байгаа бүх цонхууд дэлгэгдэнэ. Үүнээс гадна хэрэглээний горимд хараалах"
+"(focus) товчлуурын даралтууд (click) өөр application-ий цонхнуудад "
+"нөлөөлөхгүй. Энэ тохируулга нь бага зэрэг эргэлзээтэй ч давуу тал нь бүх "
+"хэрэглээний зориулалттай мөн цонхоор төлөөлсөн ж-нь. click-ийг цааш нь "
+"нөлөөлөх эсэхийг нэг бүрчлэн хийж өгдөггүйд оршино. Иймд хэрэглээнд чиглэсэн "
+"горимыг одоогийн байдлаар бараг хэрэглэдээгүй гэж болно."
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Хэрэв үнэн бол бага нөөцөөр тохиромжтой хэрэглэгчид найрсаг байдлыг үүсгэнэ"
+
+#: ../src/marco.schemas.in.h:22
+msgid "Lower window below other windows"
+msgstr "Цонхыг бусад цонхуудын цагуур шургуулах"
+
+#: ../src/marco.schemas.in.h:23
+#, fuzzy
+msgid "Maximize window"
+msgstr "Цонхыг томсгох "
+
+#: ../src/marco.schemas.in.h:24
+msgid "Maximize window horizontally"
+msgstr "Цонхыг хэвтээ чигт томсгох "
+
+#: ../src/marco.schemas.in.h:25
+msgid "Maximize window vertically"
+msgstr "Цонхыг босоо чигт томсгох "
+
+#: ../src/marco.schemas.in.h:26
+#, fuzzy
+msgid "Minimize window"
+msgstr "Цонхыг агшаах"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Modifier to use for modified window click actions"
+msgstr "Сайжруулсан цонхон дээр товшиход хэрэглэгдэх туслах товчлуур"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Самбар ажлын талбар хоёрын хооронд ухрах"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "Самбар ажлын талбар хоёрын хооронд ухрахдаа цонхны цэсийг үзүүлэх"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Move backwards between windows immediately"
+msgstr "Цонхнуудын хооронд шууд ухарч очих"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Move between panels and the desktop immediately"
+msgstr "Шууд самбар ажлын талбарын хооронд очих"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move between panels and the desktop with popup"
+msgstr "Самбар ажлын талбарын хооронд ухраахдаа цонхны цэсийг үзүүлэх"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move between windows immediately"
+msgstr "Цонхнуудын хооронд шууд ухарч очих"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move between windows with popup"
+msgstr "Цэсийг дэлгэж харуулсан байдлаар цонхнуудын хооронд очих"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move focus backwards between windows using popup display"
+msgstr "Цэсний туслалцаатайгаар цонхнуудын хооронд ухарч очих"
+
+#: ../src/marco.schemas.in.h:36
+#, fuzzy
+msgid "Move window"
+msgstr "Цонхыг зөөх"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move window one workspace down"
+msgstr "Цонхыг нэг ажлын талбараар ухраах"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move window one workspace to the left"
+msgstr "Цонхыг нэг ажлын талбараар зүүн гар тийш шилжүүлэх"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move window one workspace to the right"
+msgstr "Цонхыг нэг ажлын талбараар баруун гар тийш шилжүүлэх"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move window one workspace up"
+msgstr "Цонхыг ажлын талбараар дээш нь шилжүүлэх"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move window to workspace 1"
+msgstr "Цонхыг нэг ажлын талбар 1 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move window to workspace 10"
+msgstr "Цонхыг нэг ажлын талбар 10 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move window to workspace 11"
+msgstr "Цонхыг нэг ажлын талбар 11 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window to workspace 12"
+msgstr "Цонхыг нэг ажлын талбар 12 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window to workspace 2"
+msgstr "Цонхыг нэг ажлын талбар 2 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window to workspace 3"
+msgstr "Цонхыг нэг ажлын талбар 3 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window to workspace 4"
+msgstr "Цонхыг нэг ажлын талбар 4 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window to workspace 5"
+msgstr "Цонхыг нэг ажлын талбар 5 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 6"
+msgstr "Цонхыг нэг ажлын талбар 6 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 7"
+msgstr "Цонхыг нэг ажлын талбар 7 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 8"
+msgstr "Цонхыг нэг ажлын талбар 8 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 9"
+msgstr "Цонхыг нэг ажлын талбар 9 дээр гаргах"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Name of workspace"
+msgstr "Ажлын талбарын нэр"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Number of workspaces"
+msgstr "Ажлын талбарын тоо"
+
+#: ../src/marco.schemas.in.h:55
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr ""
+"Ажлын талбарын тоо. Энэ тоо тэгээс их болоод тодорхой нэг максимум утгатай "
+"байх (ажлын талбарын тоо санаандгүй хэдэн арван сая болж дэлгэцийн талбарыг "
+"гэмтээхээс сэргийлэх зорилгоор) ёстой."
+
+#: ../src/marco.schemas.in.h:56
+msgid "Raise obscured window, otherwise lower"
+msgstr ""
+"Цонх хэт доор шигдсэн бол нааш нь товойлгож эсрэг тохиолдолд цонхыг шигтгэх"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Raise window above other windows"
+msgstr "Цонхыг бусад цонхны өмнө гаргах"
+
+#: ../src/marco.schemas.in.h:58
+#, fuzzy
+msgid "Resize window"
+msgstr "Цонхны хэмжээг өөрчлөх"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Run a defined command"
+msgstr "Тодорхой команд гүйцэтгэх"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Run a terminal"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:61
+msgid "Show the panel menu"
+msgstr "Удирдах самбар харуулах"
+
+#: ../src/marco.schemas.in.h:62
+#, fuzzy
+msgid "Show the panel run application dialog"
+msgstr "Самбарт ажиллуулах диалогийг харуулах"
+
+#: ../src/marco.schemas.in.h:63
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+"Зарим нэгэн х. программууд зориулалтаа зөрчсөнөөс цонхны менежерт алдаа "
+"гарах тохиолдол байдаг. Ж-нь: Marco-ийн тохируулгаар бол бүх диалогийн "
+"байршил нь өөрийн харьяалагдах (эх) цонхтой зохицсон байршилтай гарч ирэх "
+"учиртай. Энэ нь цаанаа х.программаасаа өгөгдсөн диалогийн байршлыг үгүйсгэж "
+"байна гэсэн үг. Гэвч үүний хажуугаар Java/Swing-ийн зарим хувилбарууд цонхны "
+"цэсээ диалог хэлбэрээр илэрхийлж Metaciy-ийг диалог байршуулах зарчмаа "
+"өөрчилж цэсийг Java-ийн алдаатай х. программуудын орчинд ажиллахад хүргэдэг. "
+"Үүний адил бас бс жишээнүүд тохиолдоно. Энэ хэлбэр нь Marco-ийг ямар ч "
+"алдагүй ажиллагааны горимд шилжүүлж магадгүй та согоггүй х. программ "
+"ажиллуулахгүй тохиолдолд танд харинилүү таатай UI олгож болох. Харамсалтай "
+"нь дутагдлыг ямар ч гэсэн зайлшгүй засварах болдог. Амьдралын үнэн гашуун "
+"үү. Зарим дутагдлууд нь хэрэглээний зорилгоос хамаарсан байдаг учраас "
+"программын өөрийн төрөлд гөр хүрэлгүйгээр алдааг засварлах боломж байдаггүй."
+
+#: ../src/marco.schemas.in.h:64
+msgid "Switch to workspace 1"
+msgstr "Ажлын талбар 1 дээр очих"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Switch to workspace 10"
+msgstr "Ажлын талбар 10 дээр очих"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Switch to workspace 11"
+msgstr "Ажлын талбар 11 дээр очих"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Switch to workspace 12"
+msgstr "Ажлын талбар 12 дээр очих"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Switch to workspace 2"
+msgstr "Ажлын талбар 2 дээр очих"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Switch to workspace 3"
+msgstr "Ажлын талбар 3 дээр очих"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Switch to workspace 4"
+msgstr "Ажлын талбар 4 дээр очих"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Switch to workspace 5"
+msgstr "Ажлын талбар 5 дээр очих"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 6"
+msgstr "Ажлын талбар 6 дээр очих"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 7"
+msgstr "Ажлын талбар 7 дээр очих"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 8"
+msgstr "Ажлын талбар 8 дээр очих"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 9"
+msgstr "Ажлын талбар 9 дээр очих"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace above this one"
+msgstr "Идэвхтэй байгаа ажлын талбарын дээд талын талбар дээр очих"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace below this one"
+msgstr "Идэвхтэй байгаа ажлын талбарын доод талын талбар дээр очих"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace on the left"
+msgstr "Идэвхтэй байгаа ажлын талбарын зүүн гар талын талбар дээр очих"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace on the right"
+msgstr "Идэвхтэй байгаа ажлын талбарын баруун гар талын талбар дээр очих"
+
+#: ../src/marco.schemas.in.h:80
+msgid "System Bell is Audible"
+msgstr "Системийн сигнал дуут байна"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Take a screenshot"
+msgstr "Агшин дэлгэц авах"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Take a screenshot of a window"
+msgstr "Цонхны агшин дэлгэц авах"
+
+#: ../src/marco.schemas.in.h:83
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Marco яаж системийн дохио эсвэл өөр хэрэглээний програмын 'чимээ' өгөхийг "
+"заах оптик шинж тэмдэг хэрэгжүүлэхийг хэлнэ. Одоогоор хар цагаан бүтэн "
+"дэлгэц заах \"Дэлгэц дүүрэн\", хэрэглээний програмын толгой самбарыг заах "
+"\"жааз_нүүр\" хоёр хүчинтэй утга байна. Хэрэв програм мэдэгдэхгүй чимээ "
+"өгвөл (ихэнхдээ стандарт \"системийн чимээ\"), одоо идэвхитэй байгаа цонхны "
+"толгой самбар идэвхижинэ."
+
+#: ../src/marco.schemas.in.h:84
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"»/apps/marco/global_keybindings/run_command_N«-код нь энэ командыг "
+"гүйцэтгэх товчлуурын хослолыг тодорхойлно. run_command_N товчлуурын "
+"хувилбарыг оруулснаар command_N гүйцэтгэгдэнэ."
+
+#: ../src/marco.schemas.in.h:85
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"»/apps/marco/global_keybindings/run_command_screenshot«-түлхүүр энэ "
+"командыг гүйцэтгэх товчлуурын хослолыг тодорхойлно. Товчлуурын хувилбарыг "
+"оруулснаар command_screenshot гүйцэтгэгдэнэ."
+
+#: ../src/marco.schemas.in.h:86
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"»/apps/marco/global_keybindings/run_command_window_screenshot«-код нь энэ "
+"командыг гүйцэтгэх товчлуурын хослолыг тодорхойлно. Товчлуурын хувилбарыг "
+"оруулснаар command_window_screenshot гүйцэтгэгдэнэ."
+
+#: ../src/marco.schemas.in.h:87
+#, fuzzy
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Харгалзсан дугаартай /apps/marco/keybinding_commands командыг гүйцэтгэх "
+"товчлуурын комбинаци. Бичих хэлбэр нь »&lt;Control&gt;« эсвэл »&lt;Shift&gt;"
+"&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр "
+"бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;"
+"Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч "
+"товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:88
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Өгөгдсөн ажлын талбарыг одоо идэвхтэй байгаа ажлын талбарын өмнүүр (дээгүүр) "
+"оруулж идэвхжүүлэх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt;"
+"Control&gt;« (Ctrl-ийн хувьд ) эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+"Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон товчлол "
+"хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг "
+"»disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци "
+"тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:89
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Өгөгдсөн ажлын талбарыг одоо идэвхтэй байгаа ажлын талбарын доогуур(араар) "
+"оруулж идэвхжүүлэх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt;"
+"Control&gt;« эсвэл »&lt; Shift&gt;&lt;Alt&gt;F1«. (Ctrl-ийн хувьд ). "
+"Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон товчлол "
+"хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt; Ctrl&gt;«. Харин мөрийг "
+"»disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци "
+"тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:90
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Өгөгдсөн ажлын талбарыг одоо идэвхтэй байгаа ажлын талбарын зүүн талд нь "
+"оруулж идэвхжүүлэх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt;"
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:91
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Өгөгдсөн ажлын талбарыг одоо идэвхтэй байгаа ажлын талбарын баруун талд нь "
+"оруулж идэвхжүүлэх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt;"
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:92
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 1-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:93
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 10-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь "
+"»&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун "
+"чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. "
+"Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:94
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 11-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь "
+"»&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун "
+"чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. "
+"Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:95
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 12-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь "
+"»&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун "
+"чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. "
+"Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:96
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 2-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:97
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 3-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:98
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 4-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:99
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 5-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:100
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 6-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:101
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 7-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:102
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 8-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:103
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ажлын талбар 9-т хүргэж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:104
+#, fuzzy
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхны цэсийг идэвхжүүлж өгөх үүрэгтэй товчлуурын комбинаци. Хэлбэр нь "
+"»&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун "
+"чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. "
+"Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:105
+#, fuzzy
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг хаах үүрэгтэй товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;« "
+"эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон "
+"бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« "
+"эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд "
+"ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:106
+#, fuzzy
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"»Зөөх«-горимд шилжүүлэн цонхыг гарын (keyboard) тусламжтайгаар зөөж "
+"боломжтой болгодог товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл "
+"»&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд "
+"том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл "
+"»&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч "
+"товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:107
+#, fuzzy
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"»Хэмжээ өөрчлөх«-горимд шилжүүлэн цонхны үзэгдэх хэмжээг гарын (keyboard) "
+"тусламжтайгаар өөрчлөх боломжтой болгодог товчлуурын комбинаци. Хэлбэр нь "
+"»&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун "
+"чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. "
+"Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:108
+#, fuzzy
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Бүх энгийн цонхыг далдалж дэлгэцийн арыг идэвхжүүлэх товчлуурын комбинаци. "
+"Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт "
+"нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх "
+"боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« "
+"дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:109
+#, fuzzy
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхны хэмжээг томсгох товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;« "
+"эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон "
+"бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« "
+"эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд "
+"ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:110
+#, fuzzy
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхны хэмжээг багасгах товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;« "
+"эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон "
+"бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« "
+"эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд "
+"ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:111
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Цонхны байршлыг нэг ажлын талбараар доошлуулах (ухраах ) товчлуурын "
+"комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+"Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон "
+"товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин "
+"мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци "
+"тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:112
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Цонхны байршлыг нэг ажлын талбараар зүүн гар тийш зөөж шилжүүлэх товчлуурын "
+"комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+"Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон "
+"товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин "
+"мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци "
+"тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:113
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Цонхны байршлыг нэг ажлын талбараар баруун тийш зөөж шилжүүлэх товчлуурын "
+"комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+"Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон "
+"товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин "
+"мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци "
+"тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:114
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхны байршлыг нэг ажлын талбараар өөд нь зөөж шилжүүлэх товчлуурын "
+"комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+"Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон "
+"товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин "
+"мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци "
+"тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:115
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 1 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:116
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 10 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:117
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 11 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:118
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 12 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:119
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 2 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:120
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 3 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:121
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 4 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:122
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 5 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:123
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 6 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:124
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 7 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:125
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 8 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:126
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг ажлын байр 9 дээр аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:127
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Popup цонхны хамт фокусыг ухраан ажлын самбар ажлын desktop хоёрын хооронд "
+"аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;"
+"Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том "
+"жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;"
+"Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч "
+"товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:128
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Popup цонхгүйгээр фокусыг ухраан ажлын самбар ажлын desktop хоёрын хооронд "
+"аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;"
+"Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том "
+"жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;"
+"Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч "
+"товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:129
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Popup цонхгүйгээр фокусыг ухраан ажлын цонхнуудын хооронд аваачих товчлуурын "
+"комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;"
+"F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон "
+"товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин "
+"мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци "
+"тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:130
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Popup цонх ашиглан фокусыг ухраан ажлын цонхнуудын хооронд аваачих "
+"товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;"
+"Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр "
+"бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;"
+"Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч "
+"товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:131
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Popup цонхны тусламжтайгаар фокусыг самбар-ажлын талбар хоёрын хооронд "
+"аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;"
+"Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том "
+"жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;"
+"Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч "
+"товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:132
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Popup цонхны тусламжгүйгээр фокусыг самбар-ажлын талбар хоёрын хооронд "
+"аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;"
+"Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том "
+"жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;"
+"Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч "
+"товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:133
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Popup цонхны тусламжгүйгээр фокусыг самбар-ажлын талбар хоёрын хооронд "
+"аваачих товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;"
+"Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том "
+"жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;"
+"Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч "
+"товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:134
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Popup цонхны тусламжтайгаар фокусыг цонхны хооронд аваачих товчлуурын "
+"комбинаци. (Уламжлалт хэлбэр нь &lt;Alt&gt;Escape) хөдөлгөөнийг эсрэг "
+"чиглэлд хийхийн тулд shift товчлуурыг дараастай дээрх үйлдлийг хийнэ. Хэлбэр "
+"нь »&lt; Control&gt;а« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«.Хөрвүүлэлт нь тун "
+"чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. "
+"Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:135
+#, fuzzy
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Үргэлж наана харагдуулах эсвэл үгүй эсэхийг тогтоох товчилуурын хослол. "
+"Цонхыг бүх давхарласан цонхны наана харагдуулахад ашиглах товчлуурын "
+"комбинаци. Хэлбэр нь »&lt; Control&gt;а« эсвэл »&lt;Shift&gt;&lt;Alt&gt;"
+"F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон "
+"товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин "
+"мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци "
+"тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:136
+#, fuzzy
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Бүтэн дэлгэцийн горимд оруулж гаргах товчлуурын комбинаци. Хэлбэр нь »&lt; "
+"Control&gt;а« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун "
+"чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. "
+"Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:137
+#, fuzzy
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг томсгох товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;а« эсвэл "
+"»&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд "
+"том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл "
+"»&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч "
+"товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:138
+#, fuzzy
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг хуйлж буцаан дэлгэхэд хэрэглэдэг товчлуурын комбинаци. Хэлбэр нь "
+"»&lt; Control&gt;а« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун "
+"чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. "
+"Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:139
+#, fuzzy
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Цонхыг бүх ажлын хавтгай дээр эсвэл бүгд дээр байршуулахад ашиглах "
+"товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;а« эсвэл »&lt;Shift&gt;&lt;"
+"Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих "
+"болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. "
+"Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын "
+"комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:140
+#, fuzzy
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг хэмжээг багасгах товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;а« "
+"эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон "
+"бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« "
+"эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд "
+"ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:141
+#, fuzzy
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Програм ажиллуулах диалог харуулах товчины хослол. Цонхыг хаах үүрэгтэй "
+"товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt; "
+"Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих "
+"болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. "
+"Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын "
+"комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:142
+#, fuzzy
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Удирдах самбарын үндсэн цэс харуулах товчилуурын хослол. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:143
+#, fuzzy
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Цонхны агшин дэлгэц авахад хэрэглэдэг удирдах самбарын агшин дэлгэцийн "
+"хэрэгсэл дуудахад хэрэглэх товчилуурын хослол. Хэлбэр нь »&lt; Control&gt;« "
+"эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон "
+"бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« "
+"эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд "
+"ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:144
+#, fuzzy
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Удирдах самбарын агшин дэлгэцийн хэрэгсэл дуудахад хэрэглэх товчилуурын "
+"хослол. Хэлбэр нь »&lt; Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+"Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон "
+"товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин "
+"мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци "
+"тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:145
+#, fuzzy
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Удирдах самбарын үндсэн цэс харуулах товчилуурын хослол. Хэлбэр нь »&lt; "
+"Control&gt;« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй "
+"зохиогдсон бөгөөд том жижгээр бичих болон товчлол хийх боломжтой. Ж-нь: "
+"»&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин мөрийг »disabled« дээр "
+"тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:146
+msgid "The name of a workspace."
+msgstr "Ажлын талбарын нэр."
+
+#: ../src/marco.schemas.in.h:147
+msgid "The screenshot command"
+msgstr "Агшин дэлгэц тушаал"
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Энд цонхны жааз, хүрээ(хөвөө), нэрийн хэсгийн үзэмжийг тохируулах зэргийн "
+"сэдвүүд агуулагдана."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"auto_raise нь true дээр тохируулагдсан тохиолдолд өгөгдсөн цонх идэвхжихэд "
+"гарах цагийн хоцролт. Энэхүү хоцролт мянганы нэг секундын нэгжээр өгөгдөнө."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Цонхыг хараалах (фокуслах) горим нь цонх өөрөө хэрхэн идэвхжихийг тодорхойлж "
+"өгнө. Энд 3 боломжит хувилбарууд байна: »click« нь цонхыг фокуслахын "
+"(хараалахын)тулд нэг click хийх, »sloppy« нь заагуур цонхон дээр очингуут "
+"идэвхжих, »mouse« заагуур цонхон дээр очингуут идэвхжиж цонхны талбараас "
+"гарангуут эргэж идэвхгүй байдалд орох үйлдлүүдийг заана."
+
+#: ../src/marco.schemas.in.h:151
+msgid "The window screenshot command"
+msgstr "Цонхны агшин дэлгэц тушаал"
+
+#: ../src/marco.schemas.in.h:152
+#, fuzzy
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Цонхыг бусад цонхнуудын өмнүүр эсвэл араар нь байршуулахад ашиглах "
+"товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;а« эсвэл »&lt;Shift&gt;&lt;"
+"Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих "
+"болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. "
+"Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын "
+"комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:153
+#, fuzzy
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг бусад цонхнуудын араар байршуулахад ашиглах товчлуурын комбинаци. "
+"Хэлбэр нь »&lt; Control&gt;а« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+"Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон "
+"товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин "
+"мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци "
+"тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:154
+#, fuzzy
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Цонхыг бусад цонхнуудын өмнүүр байршуулахад ашиглах товчлуурын комбинаци. "
+"Хэлбэр нь »&lt; Control&gt;а« эсвэл »&lt;Shift&gt;&lt;Alt&gt;F1«. "
+"Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих болон "
+"товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. Харин "
+"мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын комбинаци "
+"тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:155
+#, fuzzy
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Цонхыг хэвтээ чиглэлд байгаа боломжит бүх зайг эзлэн байрлуулахад ашиглах "
+"товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;а« эсвэл »&lt;Shift&gt;&lt;"
+"Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих "
+"болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. "
+"Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын "
+"комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:156
+#, fuzzy
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Цонхыг босоо чиглэлд байгаа боломжит бүх зайг эзлэн байрлуулахад ашиглах "
+"товчлуурын комбинаци. Хэлбэр нь »&lt; Control&gt;а« эсвэл »&lt;Shift&gt;&lt;"
+"Alt&gt;F1«. Хөрвүүлэлт нь тун чөлөөтэй зохиогдсон бөгөөд том жижгээр бичих "
+"болон товчлол хийх боломжтой. Ж-нь: »&lt;Ctl&gt;« эсвэл »&lt;Ctrl&gt;«. "
+"Харин мөрийг »disabled« дээр тохируулахад энэ үйлдэлд ямар ч товчлуурын "
+"комбинаци тавигдахгүй."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, and 'toggle_maximize' which will maximize/unmaximize the window."
+msgstr ""
+"Цонхны нэрийн талбар дээр давхар товшиход (double click) ямар үйлдэл "
+"хийгдэхийг тодорхойлно. Үүнд дараахи үйлдлүүд орно: »toggle_shade« гэвэл "
+"цонх хуйлагдан эсвэл эсрэгээр дэлгэгдэж харин »toggle_maximize« гэвэл цонхыг "
+"томсгож багасгах болно."
+
+#: ../src/marco.schemas.in.h:158
+msgid "Toggle always on top state"
+msgstr "Үргэлж наана хадах эсвэл үгүй эсэх"
+
+#: ../src/marco.schemas.in.h:159
+msgid "Toggle fullscreen mode"
+msgstr "Бүтэн дэлгэц гаргах горимыг асааж унтраах"
+
+#: ../src/marco.schemas.in.h:160
+msgid "Toggle maximization state"
+msgstr "Томсгосон хэлбэрийг асааж унтраахMaximierungszustand ein-/ausschalten"
+
+#: ../src/marco.schemas.in.h:161
+msgid "Toggle shaded state"
+msgstr "Цонхыг дэлгэн буцааж хуйлах "
+
+#: ../src/marco.schemas.in.h:162
+msgid "Toggle window on all workspaces"
+msgstr "Цонхуудыг бүх ажлын талбар дээр харагдхаар тохируулах"
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+"Програм эсвэл систем 'дохио' эсвэл 'чимээ' өгөх оптик шинж; Сонсгол муутай "
+"эсвэл маш чимээгүй орчинд ажилладаг эсвэл дүлий хүмүүст их тустай."
+
+#: ../src/marco.schemas.in.h:164
+#, fuzzy
+msgid "Unmaximize window"
+msgstr "Цонхыг багасгах"
+
+#: ../src/marco.schemas.in.h:165
+msgid "Use standard system font in window titles"
+msgstr "Цонхны нэрэнд стандарт үсгийн хэв ашигла"
+
+#: ../src/marco.schemas.in.h:166
+msgid "Visual Bell Type"
+msgstr "Оптик сигналын төрөл"
+
+#: ../src/marco.schemas.in.h:167
+msgid "Window focus mode"
+msgstr "Цонхны фокусын горим"
+
+#: ../src/marco.schemas.in.h:168
+msgid "Window title font"
+msgstr "Цонхны нэрийн үсгийн хэв"
+
+#: ../src/prefs.c:528 ../src/prefs.c:544 ../src/prefs.c:560 ../src/prefs.c:576
+#: ../src/prefs.c:592 ../src/prefs.c:612 ../src/prefs.c:628 ../src/prefs.c:644
+#: ../src/prefs.c:660 ../src/prefs.c:676 ../src/prefs.c:692 ../src/prefs.c:708
+#: ../src/prefs.c:724 ../src/prefs.c:741 ../src/prefs.c:757 ../src/prefs.c:773
+#: ../src/prefs.c:789 ../src/prefs.c:805 ../src/prefs.c:820 ../src/prefs.c:835
+#: ../src/prefs.c:850 ../src/prefs.c:866 ../src/prefs.c:882 ../src/prefs.c:898
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf-key »%s«-д хүчингүй төрөл өгөгдсөн байна\n"
+
+#: ../src/prefs.c:943
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Конфигурацийн сангаас олдсон »%s« утга нь хулганын товчлуурын сэлгүүрт "
+"тохирох утга биш\n"
+
+#: ../src/prefs.c:967 ../src/prefs.c:1428
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf-key »%s«-д хүчингүй утга өгөгдсөн байна\n"
+
+#: ../src/prefs.c:1145
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Фонтын тайлбар »%s«-ыг MateConf-key %s-с ялгаж чадсангүй\n"
+
+#: ../src/prefs.c:1330
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+"%d нь MateConf-key %s дотор хадгалагдсан ба ажлын талбарын тоог үнэмшилтэйгээр "
+"төлөөлж чадахгүй; одоогоор максимум утга %d байна\n"
+
+#: ../src/prefs.c:1390
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Эвдрэлтэй х.программын Workarounds-ийг идэвхгүйжүүллээ. Магадгүй зарим х."
+"программууд буруу ажиллаж магадгүй.\n"
+
+#: ../src/prefs.c:1455
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr ""
+"%d нь MateConf-key %s-д хадгалагдсан ба утга нь 0-%d интервалаас гадуур байна\n"
+
+#: ../src/prefs.c:1589
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "%d дээрхи ажлын талбарын тоог оруулахад алдаа гарлаа: %s\n"
+
+#: ../src/prefs.c:1833
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Тохируулгын сангаас олдсон »%s« нь »%s«-товчлуурын комбинацид үл тохирно\n"
+
+#: ../src/prefs.c:2187
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Ажлын талбар %d-ийн нэрийг »%s« болгож өөрчлөхөд алдаа гарлаа: %s\n"
+
+#: ../src/resizepopup.c:126
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:408
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "%d дэлгэц Display »%s« дээрх байгаа ба хүчингүй байна\n"
+
+#: ../src/screen.c:424
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"%d дэлгэц нь Display »%s« дээр байгаа ба хэдийн цонхны менежер олгогдсон "
+"байна; »--replace«-ийг сонгож одоо актуаль байгаа цонхны менежерийг сольж "
+"туршина уу\n"
+
+#: ../src/screen.c:448
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"дэлгэц %d-ийн (Display »%s« дээрх ) цонхны менежерийн тэмдэглэл хүлээж "
+"авахад алдаа гарлаа\n"
+
+#: ../src/screen.c:506
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "%d » (%s« джжрхи) цонхны менежертэй байна\n"
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "%d нь »%s« дэлгэцэн дээр гаргагдаж чадсангүй\n"
+
+#: ../src/session.c:884 ../src/session.c:891
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "»%s« каталог зохиож чадсангүй: %s\n"
+
+#: ../src/session.c:901
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Session файл »%s«-ийг шинэчилж бичихийн тулд нээж чадсангүй: %s\n"
+
+#: ../src/session.c:1053
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Session файл »%s«-ийг зохиоход алдаа гарлаа: %s\n"
+
+#: ../src/session.c:1058
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Session »%s« файлыг хаахад алдаа гарлаа : %s\n"
+
+#: ../src/session.c:1133
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Session %s файлыг боловсруулж уншиж болсонгүй: %s\n"
+
+#: ../src/session.c:1168
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Session файлыг боловсруулж хөрвүүлж болсонгүй: %s\n"
+
+#: ../src/session.c:1217
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "Session ID идэвхтэй байгаа ч <marco_session> аттрибут гарч ирлээ"
+
+#: ../src/session.c:1230
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "<marco_session> элементэд үл таних аттрибут %s байна"
+
+#: ../src/session.c:1247
+msgid "nested <window> tag"
+msgstr "үүрэн <window> элемент"
+
+#: ../src/session.c:1305 ../src/session.c:1337
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "<window> элементэд үл таних аттрибут %s байна"
+
+#: ../src/session.c:1409
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "<maximized> элементэд үл таних аттрибут %s байна"
+
+#: ../src/session.c:1469
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "<geometry> элементэд үл таних аттрибут %s байна"
+
+#: ../src/session.c:1489
+#, c-format
+msgid "Unknown element %s"
+msgstr "Үл таних элемент %s"
+
+#: ../src/session.c:1961
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Session management-тэй ажилладаггүй программыг таньж анхааруулах Marco "
+"диалог эхлэхэд алдаа гарлаа: %s\n"
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Мөр %d тэмдэгт %d: %s"
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Нэг элемент <%s>-д аттрибут »%s« давтагдаж байна"
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Энэ утгаар орсон бол энэ <%s> элементийн »%s« аттрибут утгагүй"
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Бүхэл тооны утга %ld эерэг тоо байх ёстой"
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Бүхэл тооны утга %ld хэт их байна, одоогоор максимум утга нь %d байна"
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "»%s«-ийг хөвөгч таслалтай тоо мэт боловсруулж чадсангүй"
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Boolean утгууд »%s« биш »true« эсвэл »false« ёстой"
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Өнцгийн утга 0.0 ба 360.0 хоёрын хооронд байх ёстой, %g байсан\n"
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Альфа-гйин утга 0.0 (үл үзэгдэх) ба 1.0 (бүтэн дүүргэсэн) хоёрын хооронд "
+"байх ёстой, %g байсан\n"
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Хаягийн хүчингүй хэмжээ »%s« (xx-small, x-small, small, medium, large, x-"
+"large oder xx-large эдгээрийн аль нэг нь байх ёстой)\n"
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "<%s> элементэд ямар ч »%s« аттрибут алга"
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s>-ийн нэр »%s« хоёр дахь удаа хэрэглэгдлээ"
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Элемент <%s>-ийн эх »%s« өгөгдөөгүй байна"
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Элемент <%s>-ийн геометр харьцаа »%s« өгөгдөөгүй байна"
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> ямар нэгэн геометрийн харьцаа эсвэл түүнийг агуулсан эхийг оруулна уу"
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "<%s> элементийн үл танигдах төрөл »%s«"
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "<%s> элементийн үл танигдах style_set »%s«"
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Цонхны төрөл »%s« өөрийн стилийг олжээ"
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr "»%s«-цэсийн эмблемийн үл мэдэгдэх үйлдэл"
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr "»%s«-цэсийн эмблемийн үл мэдэгдэх нөхцөл"
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr ""
+"Энэ сэдэв хэдийнэ үйлдэл %s, нөхцөл байдал %s-д тохирох цэсийн эмблемтэй "
+"байна"
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "»%s« нэр бүхий <draw_ops>-г тодорхойлж чадсангүй"
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "элемент <%s>-ийн дор <%s> байж болохгүй"
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »name« аттрибут алга"
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »value« аттрибут алга"
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"button_width/button_height болон товчлууруудын талуудын харьцааг тодорхойлж "
+"чадахгүй байна"
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Хоорондын зай »%s« үл мэдэгдэнэ"
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Талуудын харьцаа »%s« үл мэдэгдэнэ"
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »top« аттрибут алга"
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »bottom« аттрибут алга"
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »left« аттрибут алга"
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »right« аттрибут алга"
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Үл мэдэгдэх <%s> хүрээ"
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »color« аттрибут алга"
+
+#: ../src/theme-parser.c:1662
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »x1« аттрибут алга"
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »y1« аттрибут алга"
+
+#: ../src/theme-parser.c:1676
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »x2« аттрибут алга"
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »y2« аттрибут алга"
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »x« аттрибут алга"
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »y« аттрибут алга"
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »width« аттрибут алга"
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »height« аттрибут алга"
+
+#: ../src/theme-parser.c:1903
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »start_angle« аттрибут алга"
+
+#: ../src/theme-parser.c:1910
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »extent_angle« аттрибут алга"
+
+#: ../src/theme-parser.c:2090
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »alpha« аттрибут алга"
+
+#: ../src/theme-parser.c:2161
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »type« аттрибут алга"
+
+#: ../src/theme-parser.c:2209
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "өнгөний шилжилтийн төрлийн »%s« утга ойлгомжгүй байна"
+
+#: ../src/theme-parser.c:2294
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »filename« аттрибут алга"
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "<%s> элементийг будах өнгөний төрөл »%s« ойлгомжгүй байна"
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »state« аттрибут алга"
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »shadow« аттрибут алга"
+
+#: ../src/theme-parser.c:2476
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "<%s> элементэд ямар ч »arrow« аттрибут алга"
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "<%s> элементийн байдал »%s« ойлгомжгүй байна"
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "<%s> элементийн сүүдэр »%s« ойлгомжгүй байна"
+
+#: ../src/theme-parser.c:2549
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "<%s> элементийн сум »%s« ойлгомжгүй байна"
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Ямар ч »%s« нэр бүхий <draw_ops> өгөгдөөгүй байна"
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Энд draw_ops »%s«-ийг оруулснаар тасралтгүй эргэлдэх үйлдлийг үүсгэнэ"
+
+#: ../src/theme-parser.c:3153
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "<%s> элементэд ямар ч »value« аттрибут алга"
+
+#: ../src/theme-parser.c:3210
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "<%s> элементэд ямар ч »position« аттрибут алга"
+
+#: ../src/theme-parser.c:3219
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Жаазны хэсгийн үл мэдэгдэх »%s« байршил"
+
+#: ../src/theme-parser.c:3227
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Жаазны стиль %s-байршилд өөрийн хэсгийг авчээ"
+
+#: ../src/theme-parser.c:3272
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "<%s> элементэд ямар ч »function« аттрибут алга"
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "<%s> элементэд ямар ч »state« аттрибут алга"
+
+#: ../src/theme-parser.c:3289
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Товчлуурын үл танигдах функцтэй »%s« байна"
+
+#: ../src/theme-parser.c:3298
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Товчлуурын үл танигдах нөхцөлд »%s« байна"
+
+#: ../src/theme-parser.c:3306
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Жаазны стиль хэдийнэ %s функцийн товчлууртай байна, нөхөл %s"
+
+#: ../src/theme-parser.c:3376
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "<%s>элементэд ямар ч »focus« аттрибут алга"
+
+#: ../src/theme-parser.c:3392
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "<%s>элементэд ямар ч »style« аттрибут алга"
+
+#: ../src/theme-parser.c:3401
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "»%s« бол үнэн фокус-аттрибут утга биш"
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "»%s« бол үнэн аттрибут утга биш"
+
+#: ../src/theme-parser.c:3420
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "ямар ч »%s« нэр бүхий стиль тодорхойлогдоогүй байна"
+
+#: ../src/theme-parser.c:3430
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "<%s> элементэд ямар ч »resize« аттрибут алга"
+
+#: ../src/theme-parser.c:3440
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "»%s« бол »resize« аттрибутад тохирох утга биш"
+
+#: ../src/theme-parser.c:3450
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Томсгох/хуйлсан хэлбэрүүдэд тохирох <%s> элемент »resize« аттрибуттай байх "
+"учиргүй"
+
+#: ../src/theme-parser.c:3464
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Нөхцөл %s, фокус, хэмжээ %s, %s-д зориулсан стиль хэдийнэ өгөгдсөн байна"
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Нөхцөл %s, фокус %s-д зориулсан стиль хэдийнэ өгөгдсөн байна"
+
+#: ../src/theme-parser.c:3536
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<piece> элементэд хоёр draw_ops утга авч чадахгүй байна (сэдэвт нэг draw_ops-"
+"attribute мөн нэг <draw_ops>-элемент эсвэл хоёр Elemente an оржээ)"
+
+#: ../src/theme-parser.c:3574
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<button> элементэд хоёр draw_ops утга авч чадахгүй байна (сэдэвт нэг "
+"draw_ops-attribute мөн нэг <draw_ops>-элемент эсвэл хоёр Elemente an оржээ)"
+
+#: ../src/theme-parser.c:3612
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<menu_icon> элементэд хоёр draw_ops утга авч чадахгүй байна (сэдэвт нэг "
+"draw_ops-attribute мөн нэг <draw_ops>-элемент эсвэл хоёр Elemente an оржээ)"
+
+#: ../src/theme-parser.c:3659
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+"Элементийн хамгийн гадна хүрээний сэдэв нь <%s> дотор бус харин "
+"<marco_theme> дотор л орших ёстой"
+
+#: ../src/theme-parser.c:3679
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Элемент <%s> нь name/author/date/description элемент дотор орших ёсгүй"
+
+#: ../src/theme-parser.c:3684
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Элемент <%s> нь <constant> элемент дотор орших ёсгүй"
+
+#: ../src/theme-parser.c:3696
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Элемент <%s> нь distance/border/aspect_ratio-element дотор орших ёсгүй"
+
+#: ../src/theme-parser.c:3718
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Элемент <%s> нь draw_ops-Element дотор орших ёсгүй"
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Элемент <%s> нь <%s> дотор байх ёсгүй"
+
+#: ../src/theme-parser.c:3984
+msgid "No draw_ops provided for frame piece"
+msgstr "Жаазны хэсэгт зориулсан ямар ч draw_ops байхгүй"
+
+#: ../src/theme-parser.c:3999
+msgid "No draw_ops provided for button"
+msgstr "Товчлууранд зориулсан ямар ч draw_ops байхгүй"
+
+#: ../src/theme-parser.c:4014
+msgid "No draw_ops provided for menu icon"
+msgstr "Цэсний эмблемд зориулсан ямар ч draw_ops байхгүй"
+
+#: ../src/theme-parser.c:4054
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Элемент <%s> дотор ямарч техт зөвшөөрөгдөөгүй"
+
+#: ../src/theme-parser.c:4109
+msgid "<name> specified twice for this theme"
+msgstr "<name> энэ сэдвээр давхар өгөгдсөн байна"
+
+#: ../src/theme-parser.c:4120
+msgid "<author> specified twice for this theme"
+msgstr "<author> энэ сэдвээр давхар өгөгдсөн байна"
+
+#: ../src/theme-parser.c:4131
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> энэ сэдвээр давхар өгөгдсөн байна"
+
+#: ../src/theme-parser.c:4142
+msgid "<date> specified twice for this theme"
+msgstr "<date> энэ сэдвээр давхар өгөгдсөн байна"
+
+#: ../src/theme-parser.c:4153
+msgid "<description> specified twice for this theme"
+msgstr "<description> энэ сэдвээр давхар өгөгдсөн байна"
+
+#: ../src/theme-parser.c:4348
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr "Сэдвийг %s файлаас уншиж чадсангүй: %s\n"
+
+#: ../src/theme-parser.c:4403
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Сэдэв файл %s ямар ч үндсэн <marco_theme> элемент агуулаагүй байна"
+
+#: ../src/theme-viewer.c:70
+msgid "/_Windows"
+msgstr "/_Цонхнууд"
+
+#: ../src/theme-viewer.c:71
+msgid "/Windows/tearoff"
+msgstr "/Цонхнууд/тасдалт"
+
+#: ../src/theme-viewer.c:72
+msgid "/Windows/_Dialog"
+msgstr "/Цонхнууд/_Харилцах"
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/_Modal dialog"
+msgstr "/Windows/_Туслах"
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Utility"
+msgstr "/Цонхнууд/_Утилити"
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Splashscreen"
+msgstr "/Цонхнууд/_Агшин-дэлгэц"
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Top dock"
+msgstr "/Цонхнууд/_Дээд-түгжээ"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Bottom dock"
+msgstr "/Цонхнууд/_Доод-түгжээ"
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Left dock"
+msgstr "/Цонхнууд/_Зүүн-түгжээ"
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Right dock"
+msgstr "/Цонхнууд/_Баруун-түгжээ"
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_All docks"
+msgstr "/Цонхнууд/_Түгжээ"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/Des_ktop"
+msgstr "/Цонхнууд/_Дэлгэц"
+
+#: ../src/theme-viewer.c:131
+msgid "Open another one of these windows"
+msgstr "Эдгээр цонхнуудын өөр нэгийг нээ"
+
+#: ../src/theme-viewer.c:138
+msgid "This is a demo button with an 'open' icon"
+msgstr "Энэ бол 'нээх' дарцагтай үзүүлэн товч"
+
+#: ../src/theme-viewer.c:145
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Энэ бол 'унтраах' дарцагтай үзүүлэн товч"
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr "Энэ бол жишээ харилцах дээрхи жишээ зурвас"
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Псевдо цэсийн элемент %d\n"
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "Зөвхөн хүрээтэй цонх"
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr "Багц"
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "Програмын хэвийн цонх"
+
+#: ../src/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Харилцах хайрцаг"
+
+#: ../src/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "Туслах Диалог"
+
+#: ../src/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Утилит хавтан"
+
+#: ../src/theme-viewer.c:397
+msgid "Torn-off Menu"
+msgstr "Torn-off цэс"
+
+#: ../src/theme-viewer.c:402
+msgid "Border"
+msgstr "Хүрээ"
+
+#: ../src/theme-viewer.c:731
+#, c-format
+msgid "Button layout test %d"
+msgstr "Товчны загвар шалгалт %d"
+
+#: ../src/theme-viewer.c:760
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "Нэг цонхны хүрээ зурах %g миллисекунт"
+
+#: ../src/theme-viewer.c:803
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Хэрэглээ: метасити-хэлбэр-харагч [ХЭЛБЭРИЙННЭР]\n"
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Загварыг ачааллахад алдаа гардаа: %s\n"
+
+#: ../src/theme-viewer.c:816
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" хэлбэр %g секунтэд ачаалагдав\n"
+
+#: ../src/theme-viewer.c:839
+msgid "Normal Title Font"
+msgstr "Гарчигийн хэвийн шрифт"
+
+#: ../src/theme-viewer.c:845
+msgid "Small Title Font"
+msgstr "Гарчигийн жижиг шрифт"
+
+#: ../src/theme-viewer.c:851
+msgid "Large Title Font"
+msgstr "Гарчигийн том шрифт"
+
+#: ../src/theme-viewer.c:856
+msgid "Button Layouts"
+msgstr "Товчны загвар"
+
+#: ../src/theme-viewer.c:861
+msgid "Benchmark"
+msgstr "Хурдыг шалгах"
+
+#: ../src/theme-viewer.c:908
+msgid "Window Title Goes Here"
+msgstr "Цонхны гарчиг энд ирнэ"
+
+#: ../src/theme-viewer.c:1012
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d хүрээ %g клиент талын тооцоогоор секунтэд (хүрээ тус бүр %g миллсекунтэд) "
+"зурагдсан ба Х-серверийн нөөцүүдийн хамт нийт %g секунтэнд зурагдав. (хүрээ "
+"тус бүр %g миллсекунтэд)\n"
+
+#: ../src/theme-viewer.c:1227
+msgid "position expression test returned TRUE but set error"
+msgstr "Барлалын илэрхийлэл шалгалт ЗӨВ утга буцаасан боловч алдаа гарлаа"
+
+#: ../src/theme-viewer.c:1229
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "Барлалын илэрхийлэл шалгалт БУРУУ утга буцаасан боловч алдаа өгсөнгүй"
+
+#: ../src/theme-viewer.c:1233
+msgid "Error was expected but none given"
+msgstr "Алдаа гарсан ч юу ч буцаасангүй"
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "%d алдаа гарсан ба %d -г буцаав"
+
+#: ../src/theme-viewer.c:1241
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Алдаа гараагүй ба нэг буцаагдлаа: %s"
+
+#: ../src/theme-viewer.c:1245
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "х-н утга %d, %d хүлээгдсэн"
+
+#: ../src/theme-viewer.c:1248
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "у-н утга %d, %d хүлээгдсэн"
+
+#: ../src/theme-viewer.c:1310
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d координат илэрхийлэл %g секунтэд шинжлэгдэв (%g дундаж секунт)\n"
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "дээр"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "дор"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "зүүн"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "баруун"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "Жаазны хэлбэр »%s«-нийт хжмээг тодорхойлохгүй"
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "Жаазны хэлбэр хэмжээ »%s« нь хүрээний хэмжээ »%s«-г тодорхойлохгүй"
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Товчлуурны талуудын харьцаа %g утгагүй байна"
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Жаазны хэлбэр хэмжээ товчлуурны хэмжээг тодорхойлохгүй"
+
+#: ../src/theme.c:843
+msgid "Gradients should have at least two colors"
+msgstr "Өнгөний тунаралт дор хаяж хоёр өнгөтэй байх ёстой"
+
+#: ../src/theme.c:969
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Өнгөний GTK-өгөгдөл нь дөрвөлжин хаалтанд байх ёстой. Ж-нЬ: gtk:fg[NORMAL], "
+"энд NORMAL гэдэг нь байгаа нөхцөл; »%s« боловсруулагдсангүй"
+
+#: ../src/theme.c:983
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Өнгөний GTK-өгөгдөл нь дөрвөлжин хаалтанд байх ёстой. Ж-нЬ: gtk:fg[NORMAL], "
+"энд NORMAL гэдэг нь байгаа байдал; »%s«-г боловсруулж чадсангүй"
+
+#: ../src/theme.c:994
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Өнгөний »%s« нөхцлийг ойлгосонгүй"
+
+#: ../src/theme.c:1007
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Өнгөний өгөгдөл дэх бүрэлдэхүүн хэсгүүд »%s« ойлгосонгүй"
+
+#: ../src/theme.c:1037
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Холих формат : »холих/суурь өнгө/нүүрэн өнгө/alpha«; »%s« энэ форматанд "
+"тохирохгүй байна"
+
+#: ../src/theme.c:1048
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Хосолсон өнгөний альфа тоо »%s« боловсруулагдсангүй"
+
+#: ../src/theme.c:1058
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Хосолсон өнгөний альфа тоо »%s« 0.0-1.0 тооны хооронд оршихгүй байна"
+
+#: ../src/theme.c:1105
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Өнгө холих формат нь »холих/үндсэн өнгө/фактор«; »%s« энэ форматанд "
+"тохирохгүй"
+
+#: ../src/theme.c:1116
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+"Өнгө хослуулах фактор »%s« нь хосолсон өнгө дотор боловсруулагдаж чадсангүй"
+
+#: ../src/theme.c:1126
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Өнгө хослуулах фактор »%s« нь хосолсон өнгө дотор негатив байна"
+
+#: ../src/theme.c:1155
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "»%s« өнгө боловсруулж чадсангүй"
+
+#: ../src/theme.c:1417
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Координатын илэрхийлэлд хориотой тэмдэг »%s« байна "
+
+#: ../src/theme.c:1444
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Координатын илэрхийлэлд болоьсруулах бололцоогүй хөвөгч таслалтай »%s« тоо "
+"байна"
+
+#: ../src/theme.c:1458
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Координатын илэрхийлэл боловсруулах бололцоогүй »%s« бүхэл тоо агуулж байна"
+
+#: ../src/theme.c:1525
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Координатын илэрхийлэл дараахи текстийн эхэнд үл мэдэгдэх оператор агуулж "
+"байна: »%s«"
+
+#: ../src/theme.c:1582
+msgid "Coordinate expression was empty or not understood"
+msgstr "Координатын илэрхийлэл хоосон эсвэл ойлгомжгүй байна"
+
+#: ../src/theme.c:1725 ../src/theme.c:1735 ../src/theme.c:1769
+msgid "Coordinate expression results in division by zero"
+msgstr "Координатын илэрхийллийн хариуны хуваарь нь \"тэг\" тоо байна"
+
+#: ../src/theme.c:1777
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Координатын илэрхийлэл хөвөгч таслалтай тоонд модулийн операторыг хэрэглэж "
+"үзэж байна."
+
+#: ../src/theme.c:1834
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Координатын илэрхийлэл дотор операнд байх ёстой байранд опеоатор »%s« байна"
+
+#: ../src/theme.c:1843
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Координатын илэрхийлэл дотор операторын оронд операнд байна"
+
+#: ../src/theme.c:1851
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"Координатын илэрхийллийн төгсгөлд операнд байх ёстой атал Оператор байна"
+
+#: ../src/theme.c:1861
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Координатын илэрхийлэл дотор »%c« ба »%c« операторууд байна, гэхдээ ямар ч "
+"операнд энэ дунд алга"
+
+#: ../src/theme.c:1980
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr ""
+"Координатын илэрхийллийн хөрвүүлэгчийн buffer хязгаартаа тулсан байна., Энэ "
+"бол Marco-ийн алдаа байна; Танд үнэхээр ийм том хэмжээний илэрхийлэл "
+"хэрэгтэй гэж үү?"
+
+#: ../src/theme.c:2009
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Координатын илэрхийлэлд зөвхөн хаасан хаалтын тэмдэг л байна"
+
+#: ../src/theme.c:2072
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Координатын илэрхийлэл нь үл мэдэгдэх хувьсагч эсвэл тогтмол агуулсан байна "
+"»%s«"
+
+#: ../src/theme.c:2129
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Координатын илэрхийлэл дотор зөвхөн нээсэн хаалтын тэмдэг байна"
+
+#: ../src/theme.c:2140
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"Координатын илэрхийлэл нь оператор болон операндын аль алийг нь агуулаагүй "
+"байна"
+
+#: ../src/theme.c:2384 ../src/theme.c:2406 ../src/theme.c:2427
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "Сэдэв »%s« мэдээлэл агуулснаас дараахи алдаанд хүргэлээ: %s\n"
+
+#: ../src/theme.c:3913
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Энэ төрлийн хүрээнд зориулж <button function=\"%s\" state=\"%s\" draw_ops="
+"\"юу ч хамаагүй\"/> өгөгдсөн байх ёстой"
+
+#: ../src/theme.c:4363 ../src/theme.c:4395
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"юу ч хамаагүй\"/> "
+"дутаж байна"
+
+#: ../src/theme.c:4446
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "»%s« сэдвийг ачаалж болсонгүй: %s\n"
+
+#: ../src/theme.c:4592 ../src/theme.c:4599 ../src/theme.c:4606
+#: ../src/theme.c:4613 ../src/theme.c:4620
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "»%s« -сэдвээр ямар ч <%s> өгөгдөөгүй байна"
+
+#: ../src/theme.c:4630
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Цонхны төрөлд хүрээнийх нь стиль »%s«-сэдвийн дотор өгөгдөөгүй байна »%s«; "
+"<window type=\"%s\" style_set=\"юу ч хамаагүй\"/> элементийг оруулна уу"
+
+#: ../src/theme.c:4652
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+"Энэ сэдэвт <menu_icon function=\"%s\" state=\"%s\" draw_ops=\"юу ч хамаагүй"
+"\"/> өгөгдсөн байх ёстой"
+
+#: ../src/theme.c:5041 ../src/theme.c:5103
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "Хэрэглэгчийн оруулсан тогтмол нь том үсгээр эхлэх ёстой; »%s« хийхгүй"
+
+#: ../src/theme.c:5049 ../src/theme.c:5111
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Тогтмол »%s« хэдийнэ сонгогдсон байна"
+
+#: ../src/util.c:93
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Оношилгооны протокол нээгдсэнгй: %s\n"
+
+#: ../src/util.c:103
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Log файл %s fdopen()-аар нээгдэж чадсангүй: %s\n"
+
+#: ../src/util.c:109
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Log файл %s нээгдсэн\n"
+
+#: ../src/util.c:203
+msgid "Window manager: "
+msgstr "Цонхны менежер:"
+
+#: ../src/util.c:349
+msgid "Bug in window manager: "
+msgstr "Цонхны менежерт алдаа байна:"
+
+#: ../src/util.c:378
+msgid "Window manager warning: "
+msgstr "Цонхны менежерийн анхааруулга:"
+
+#: ../src/util.c:402
+msgid "Window manager error: "
+msgstr "Цонхны менежерийн алдаа:"
+
+#: ../src/window-props.c:162
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %ld\n"
+msgstr "Программ дараахи утгагүй _NET_WM_PID %ld үзүүлж байна\n"
+
+#. first time through
+#: ../src/window.c:5205
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Цонх %s ICCCM-д заасанчлан WM_CLIENT_LEADER цонхон дээр тохируулахын оронд "
+"өөрөө SM_CLIENT_ID дээр тохируулсан байна.\n"
+
+# We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+# * authoritative source for that info. Some apps such as mplayer or
+# * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+# * leads to e.g. us not fullscreening their windows. Apps that set
+# * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+# * about these apps but make them work.
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5876
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Цонх %s MWM дохиогоор хэмжээг нь өөрчилж болохгүй гэдгийг анхааруулсан "
+"боловч хамгийн бага хэмжээ %d x %d-дээр эсвэл максимум %d x %d -дээр "
+"тавьсан; энэ үйлдэл утга учиргүй.\n"
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Цонх 0x%lx дараахи %s онцлогтой\n"
+"%s төрлийн, %d форматтай байх ёстой,\n"
+"Гэвч %s төрөлтэй, %d форматтай %d n_нэгжтэй\n"
+"Энэ цонхны менежерийн бус ашиглалтын алдаа байх магадлалтай\n"
+"Цонхны гарчиг »%s«, ангилал нь »%s«, нэр нь »%s«\n"
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Онцлог %s. 0x%lx цонхон дээр буруу UTF-8 агуулагдаж байна\n"
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Онцлог %s. 0x%lx цонхон дээр объект %d -ийн буруу UTF-8 агуулагдаж байна\n"
diff --git a/po/mr.po b/po/mr.po
new file mode 100644
index 00000000..a36d25af
--- /dev/null
+++ b/po/mr.po
@@ -0,0 +1,2311 @@
+# translation of mr.po to Marathi
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Rahul Bhalerao <[email protected]>, 2006.
+# sandeep shedmake <[email protected]>, 2008.
+# Sandeep Shedmake <[email protected]>, 2009, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: mr\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2010-04-14 06:19+0000\n"
+"PO-Revision-Date: 2010-04-14 11:53+0530\n"
+"Last-Translator: Sandeep Shedmake <[email protected]>\n"
+"Language-Team: Marathi <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n!=1);\n"
+"\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "डेस्कटॉप"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "पटल व्यवस्थापन"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "घंटा घटना"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "अपरिचीत पटल माहिती विनंती: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> प्रतिसाद देत नाही."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"तुम्ही जरावेळ थांबण्याचा पर्याय नीवडू शकता किंवा ऍप्लिकेशनला बाहेर पडण्यासाठी "
+"जबरनरित्या आग्रह करू शकता."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "प्रतीक्षा करा (_W)"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "जबरन बाहेर पडा (_F)"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "यजमाननाव प्राप्त करण्यास अपयशी: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "एकत्रीकरण करीता आवश्यक %s विस्तार आढळले नाही"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X पटल प्रणाली दृश्य '%s' उघडण्यास अपयशी\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"दृश्य'%s' शी जुळवणी तुटली;\n"
+"संभाव्य X सर्वर बंद केले गेले किंवा\n"
+"तुम्ही पटल व्यवस्थापक रद्द/नष्ट केले असावे.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "दृश्य '%3$s' वरील धोकादायक IO त्रुटी %1$d (%2$s) आढळले.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "कुठलेतरी इतर कार्यक्रम आधिपासूनच किल्ली %s ला संपादक %x सह बांधणी म्हणून वापरत आहे\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> कार्यरत करतेवेळी त्रुटी आढळली:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "आदेश %d परिभाषीत नाही.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "टर्मिनल आदेश परिभाषीत नाही.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "सत्र व्यवस्थपानशी जुळवणी अकार्यान्वती करा"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "सध्याचे कार्यरत पटल व्यवस्थापक Marco शी बदलवा"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "सत्र व्यवस्थापन ID निश्चित करा"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "वापरणीकरीता X डिस्प्ले"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "संचयन फाइल पासून सत्र प्रारंभीत करा"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "मुद्रण आवृत्ती"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "X कॉल समजुळवणी करा"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "कंपोजीटींग सुरू करा"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "कंपोजीटींग बंद करा"
+
+#: ../src/core/main.c:322
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "मोठे केलेले व सजावट विना पटल, पडदाभर करू नका"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "सुत्रयोजना संचयीका स्कॅन करण्यास अपयशी: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"सुत्रयोजना शोधू शकले नाही! %s अस्तित्वात आहे व त्यात नेहमीचे सुत्रयोजना समाविष्टीत आहे "
+"याची खात्री घ्या.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "पुनःआरंभ करण्यास अपयशी: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "अयोग्य मुल्यसाठी '%s' MateConf किल्ली जोडली आहे\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "MateConf कि %2$s मधील साठवलेले %1$d, %3$d ते %4$d व्याप्तीच्या बाहेर आहे\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "अयोग्य प्रकारच्या \"%s\" MateConf किल्ली जोडली आहे\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"अनिश्चित अनुप्रोयगांकरीता कार्य अकार्यान्वीत केले गेले. काहीक अनुप्रयोगांची वागणून "
+"योग्यरित्या आढळणार नाही\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "MateConf किल्ली \"%s\" पासून फॉन्टची माहिती पार्स करू शकली नाही %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "माउस बटन संपादक करीता संयोजना माहितीकोश मध्ये आढळलेले \"%s\" वैध मुल्य नाही\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "%d करीता कार्यक्षेत्राची एकूण संख्या स्थापित करतेवेळी त्रुटी: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "कार्यक्षेत्र %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "keybinding \"%2$s\" करीता संयोजना माहितीकोश मध्ये आढळलेले \"%1$s\" वैध मुल्य नाही\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "कार्यक्षेत्र %d करीता \"%s\" असे नाव स्थापीत करतेवेळी त्रुटी: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "कंपोसीटर स्थिती सेट करतेवेळी त्रुटी: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "दृश्य '%2$s' वरील पडदा %1$d अवैध आहे\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"दृश्य \"%2$s\" वरील पडदा %1$d कडे आधिपासूनच पटल व्यवस्थापक आहे; --replace पर्याय चा "
+"वापर सद्याचे पटल व्यवस्थापक बदलविण्याकरीता केले जाऊ शकतो.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "दृश्य \"%2$s\" वरील पडदा %1$d करीता पटल व्यवस्थापक निवड प्राप्त करू शकले नाही\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "दृश्य \"%2$s\" वरील पडदा %1$d कडे आधिपासूनच पटल व्यवस्थापक आहे\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "दृश्य \"%2$s\" वरील पडदा %1$d मोकळे करू शकला नाही\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"रूपण \"<Control>a\" किंवा \"<Shift><Alt>F1\" प्रमाणे आढळतो.\n"
+"\n"
+"पार्सर लोवर किंवा अप्पर केस, \"<Ctl>\" व \"<Ctrl>\" प्रमाणे संक्षिप्त रूप स्वीकारतो. "
+"पर्याय विशेष अक्षरसंच \"disabled\" करीता सेट केल्यास, या कृतीसाठी किबाइंडींग आढळणार "
+"नाही."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"रूपण \"<Control>a\" किंवा \"<Shift><Alt>F1\" प्रमाणे आढळतो.\n"
+"\n"
+"पार्सर लोवर किंवा अप्पर केस, \"<Ctl>\" व \"<Ctrl>\" प्रमाणे संक्षिप्त रूप स्वीकारतो. "
+"पर्याय विशेष अक्षरसंच \"disabled\" करीता सेट केल्यास, या कृतीसाठी किबाइंडींग आढळणार "
+"नाही.\n"
+"\n"
+"\"shift\" कि दाबून ही कीबाइंडींग रिवर्स केले जाऊ शकते; तरी, \"shift\" कि एकमात्र किज् "
+"असू शकत नाही."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "संचयीका '%s' बनवू शकले नाही: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "लिहीण्यासाठी सत्र फाइल '%s' उघडू शकले नाही: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "सत्र फाइल '%s' लिहीतेवेळी त्रुटी: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "सत्र फाइल '%s' लिहीतेवेळी त्रुटी: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "साठवलेली सत्र फाइल %s वाचण्यास अपयशी: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "संचयीत सत्र फाइल वाचण्यास अपयशी: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> हा गुणधर्म आढळले पण आमच्याकडे आधिपासूनच सत्र ओळखक्रमांक आहे"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "<%2$s> घटकावरील अपरिचीत गुणधर्म %1$s"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "नेस्टेड <window> टॅग"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "अपरिचीत घटक %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"हे पटल &quot;सद्याचे सेटअप साठवा&quot; करीता समर्थन पुरवत नाही व पुढच्यावेळी प्रवेश "
+"करतेवेळी तुम्हाला स्वतः पुन्हा सुरू करावे लागेल."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "डिबग लॉग उघडण्यास अपयश आले: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "एफडीउघड() लॉग फाइल उघडण्यास अपयशी%s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "लॉग फाइल %s उघडली\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco शब्दबंबाळ रितीव्यतिरिक्त कम्पाइल केला होता\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "पटल व्यवस्थापक: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "पटल व्यवस्थापकात त्रुटी: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "पटल व्यवस्थापक सुचना: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "पटल व्यवस्थापक त्रुटी: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"ICCCM मधिल निश्चित केलेल्या WM_CLIENT_LEADER पटल ऐवजी पटल %s, स्वतःवरच "
+"SM_CLIENT_ID निश्चित करते.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"पटल %s MWM निश्चित करतो ज्याचा अर्थ ते पुन्हआकार देण्याजोगी नाही, परंतु किमान आकार %d "
+"x %d व कमाल आकार %d x %d; निश्चित करते ज्याचा जास्त अर्थ दिसून येत नाही.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "अनुप्रयोग फरजी _NET_WM_PID %lu निश्चित करा\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s वर)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (superuser नुरूप)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s नुरूप)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (इतर वापकर्ता नुरूप)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "%2$s करीता अवैध WM_TRANSIENT_FOR window 0x%1$lx निश्चित केले गेले.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Window 0x%lx चे गुणधर्म %s\n"
+"ज्याला प्रकार %s स्वरूप %d असणे अपेक्षीत होते\n"
+"व वास्तवीकरित्या त्याचा प्रकार %s स्वरूप %d n_items %d आहे.\n"
+"ये संभाव्यरित्या अनुप्रयोग दोष आहे, व पटल व्यवस्थापक दोष नाही.\n"
+"पटलचे शिर्षक=\"%s\" वर्ग=\"%s\" नाव=\"%s\" या प्रमाणे आहे\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "पटल %s वरील गुणधर्म 0x%lx चुकीचे UTF-8 साठविले\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"पटल 0x%2$lx वरील गुणधर्म %1$s मध्ये यादी मधिल %3$d करीता अवैध UTF-8 घटक "
+"समाविष्टीत\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "कार्यक्षेत्र १ वर जा"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "कार्यक्षेत्र २ वर जा"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "कार्यक्षेत्र ३ वर जा"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "कार्यक्षेत्र ४ वर जा"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "कार्यक्षेत्र ५ वर जा"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "कार्यक्षेत्र ६ वर जा"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "कार्यक्षेत्र ७ वर जा"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "कार्यक्षेत्र ८ वर जा"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "कार्यक्षेत्र ९ वर जा"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "कार्यक्षेत्र १० वर जा"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "कार्यक्षेत्र ११ वर जा"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "कार्यक्षेत्र १२ वर जा"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "सध्याच्या कार्यक्षेत्राच्या डाव्या बाजूचे कार्यक्षेत्राचे वापर करा"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "सध्याच्या कार्यक्षेत्राच्या उजव्या बाजूचे कार्यक्षेत्राचे वापर करा"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "सध्याच्या कार्यक्षेत्राच्या वरीलचे कार्यक्षेत्राचे वापर करा"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "सध्याच्या कार्यक्षेत्राच्या खालील बाजूचे कार्यक्षेत्राचे वापर करा"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "पॉपअप पटलचा वापर करून, ऍप्लिकेशनच्या पटल अंतर्गत हलवा"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "पॉपअप पटलचा वापर करून, ऍप्लिकेशनच्या पटल अंतर्गत पाठीमागे हलवा"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "पॉपअप पटलचा वापर करून, पटल अंतर्गत हलवा"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "पॉपअप पटलचा वापर करून, ऍप्लिकेशनच्या पटल अंतर्गत हलवा"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "पॉपअप पटलचा वापर करून, पटल व डेस्कटॉप अंतर्गत हलवा"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "पॉपअप पटलचा वापर करून, पटल व डेस्कटॉप अंतर्गत पाठीमागे हलवा"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "लगेच ऍप्लिकेशनच्या पटल अंतर्गत हलवा"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "लगेच ऍप्लिकेशनच्या पटल अंतर्गत पाठीमागे हलवा"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "लगेच पटल अंतर्गत हलवा"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "लगेच पटल अंतर्गत पाठीमागे हलवा"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "पटल व डेस्कटॉप अंतर्गत लगेच हलवा"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "डेस्कटॉप व पॅनल यामधून लगेचच मागे व्हा"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "सर्व साधारण पटल लपवा डेस्कटॉप करीता फोकस सेट करा"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "पटलचे मुख्य मेन्यू दाखवा"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "पटलचे \"Run Application\" संवाद पटल दाखवा"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "स्क्रीनशॉट घ्या"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "पटलचे स्क्रीनशॉट घ्या"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "टर्मिनल चालवा"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "पटल मेन्यू सक्रीय करा"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "पूर्ण पडदा पध्दती टॉगल करा"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "जास्तीत जास्त स्थितीत टॉगल करा"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "पटल नेहमी इतर पटलांवर दृष्यास्पद करायचे ते ठरवा"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "पटल मोठी करा"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "पटल पूर्वस्थितीत आणा"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "सावलीतील स्थितीत टॉगल करा"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "पटल लहान करा"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "पटल बंद करा"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "पटल हलवा"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "पटल पुनःआकार करा"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "पटल सर्व कार्यक्षेत्र किंवा फक्त एकाच पटलावर दृष्यास्पद करायचे ते ठरवा"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "पटल कार्यक्षेत्र १ वर हलवा"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "पटल कार्यक्षेत्र २ वर हलवा"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "पटल कार्यक्षेत्र ३ वर हलवा"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "पटल कार्यक्षेत्र ४ वर हलवा"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "पटल कार्यक्षेत्र ५ वर हलवा"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "पटल कार्यक्षेत्र ६ वर हलवा"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "पटल कार्यक्षेत्र ७ वर हलवा"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "पटल कार्यक्षेत्र ८ वर हलवा"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "पटल कार्यक्षेत्र ९ वर हलवा"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "पटल कार्यक्षेत्र १० वर हलवा"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "पटल कार्यक्षेत्र ११ वर हलवा"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "पटल कार्यक्षेत्र १२ वर हलवा"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "पटल एक कार्यक्षेत्र डावीकडे हलवा"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "पटल एक कार्यक्षेत्र उजवीकडे हलवा"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "पटल एक कार्यक्षेत्र वर हलवा"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "पटल एक कार्यक्षेत्र खाली हलवा"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "पटल इतर पटल द्वारे कवर केले असल्यास पटल वर सरकवा, नाहीतर खाली सरकवा"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "इतर पटलवर पटल प्राधान्यकृत करा"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "इतर खिडक्यांच्या खाली तळाची पटल"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "पटल उभी मोठी करा"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "पटल आडवी मोठी करा"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "पटल उत्तर-पश्चिम (वरून डावीकडे) कोपऱ्याला हलवा"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "पटल उत्तर-पूर्व (वरून उजवीकडे) कोपऱ्याला हलवा"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "पटल दक्षीण-पश्चिम (खालून डावीकडे) कोपऱ्याला हलवा"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "पटल उत्तर-पश्चिम (खालून उजवीकडे) कोपऱ्याला हलवा"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "पटल पडद्याच्या उत्तर (वरच्या) बाजूस हलवा"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "पटल पडद्याच्या दक्षीण (वरच्या) बाजूस हलवा"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "पटल पडद्याच्या पूर्व (ऊजव्या) बाजूस हलवा"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "पटल पडद्याच्या पश्चिम (डाव्या) बाजूस हलवा"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "पटल पद्याच्या मध्यभागी हलवा"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(कार्यान्वीत नाही) संचार अनुप्रयोगच्या स्वरूपात कार्य करते पटलच्या स्वरूपात नाही"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"पटल शिर्षकपट्टी करीता फॉन्ट वर्णन अक्षरमाळा परिभाषीत करा. परिभाषातील आकार तेव्हाच "
+"वापरले जाईल जेव्हा शिर्षकपट्टी_फॉन्ट_आकार पर्याय 0 करीता निश्चित केले जाईल. आणखी, जर "
+"हा पर्याय अकार्यान्वीत केला जाईल जर शिर्षकपट्टी_डेस्कटॉप_फॉन्ट_वापर पर्याय खरे आहे असे "
+"निश्चितही केले जाऊ शकते."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "शिर्षक पट्टीवरील दोनवेळा क्लिक केल्यावरची कृती"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "शिर्षक पट्टीवरील मध्य क्लिक केल्यावरची कृती"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "शिर्षक पट्टीवरील उजवी क्लिक केल्यावरची कृती"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "शिर्षक पट्टीवरील बटणांची मांडणी"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"शिर्षकपट्टीवरील बटनांची सुस्थीती. मूल्य अक्षरसंच, जसे कि \"menu:minimize,maximize,"
+"spacer,close\"; कोलन पटलचा डावा कोपरा ऊजव्या कोपऱ्यापासून वेगळे करते, व बटन नाव "
+"स्वल्पविराम-विभाजीत असतात. ड्युप्लिकेट बटन स्वीकारले जात नाही. अपरिचीत बटन नाव शांतपणे "
+"दुर्लक्ष केले जातात ज्यामुळे बटन भविष्ट marco आवृत्तीत जुणी आवृत्ती खंडीत न करता समाविष्ट "
+"केले जातील. दोन बटन अंतर्गत स्पेस् अंतर्भूत करण्यासाठी विशेष स्पेसर टॅगचा वापर केला जाऊ शकतो."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "फोकस केलेली पटल आपोआप उघडते"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"ही मॉडीफायर कि दाबून ठेवल्यास पटलवर क्लिक केल्यास, हे पटल हलवले जाते(डावी क्लिक), पटलचे "
+"आकार बदलते (मध्य क्लिक), किंवा पटल मेन्यू दृष्यास्पद होते (उजवी क्लिक). "
+"\"resize_with_right_button\" किचा वापर करून डावे व उजवे कार्य स्वॅप करणे शक्य आहे. "
+"मॉडीफायर \"&lt;Alt&gt;\" किंवा \"&lt;Super&gt;\" प्रमाणे वापरले जाते."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "कळीच्या बंधाना प्रतिसाद म्हणून आदेश काम करतात"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "व्यवस्थापक संयोजीत करीत आहे"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "नविन पटल लक्ष्यकेंद्रीत कसे करायचे ते नियंत्रीत करते"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "सद्याची सुत्रयोजना"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "स्व वाढ पर्यायकरीता मिलीसेकंदामधिल उशीर"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Marco संयोजना व्यस्थापक आहे का ते निश्चित करते."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"अनुप्रयोग किंवा प्रणाली एकण्याजोगी 'बीप' निर्माण करू शकते की नाही ते निश्चित करते; शांत "
+"'बीप' करीता परवानगी देण्यास दृश्यात्मक घंटाशी संयुक्तपणे वापरले जाऊ शकते."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "जुन्या व टाकाऊ कार्यक्रम आवश्यक अयोग्य गुणधर्म अकार्यक्षम करा"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "दृश्य घंटा सक्षम करा"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"खरे निश्चित केल्यास, व लक्ष्यकेंद्र पध्दती एकतर \"गचाळ\" किंवा \"माउस\" असल्यास "
+"लक्ष्यकेंद्रीय पटल आपोआप स्व_वाढ_उशीर किल्ली द्वारे निश्चित उशीर नंतर दृश्यीस केले जाईल. हे "
+"पटलवर क्लिक केल्यास पटल दर्शविण्याकरीता समान नाही, व ओढा-व-टाकावेळी पटल दाखलन समान "
+"देखिल नाही."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"खरे असल्यास, शिर्षकपट्टी_फॉन्ट पर्याय दुर्लक्ष करा, व पटल शिर्षक करीता मानक अनुप्रयोग "
+"फॉन्ट वापरा."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"खरे असल्यास, मेटासिटी वापरकर्त्यास वायरफ्रेम, चित्रचेतनीकरण दुर्लक्ष करून, किंवा अन्य "
+"कुठल्याही तऱ्हेचा वापर करून कमी प्रतिसाद देते. हे बहुदा वापरकर्त्यास वापरणीच्या "
+"दृष्टीकोणातून महत्वाचे नाही, पण कार्यरत राहण्याकरीता लेगसी अनुप्रोयागला परवानगी देऊ "
+"शकते, व टर्मिनल सर्वर करीता उपयोगी ठरू शकते. तरी, प्रवेश सुरू असल्यास वायरफ्रेम वैशिष्ट्ये "
+"अकार्यान्वीत केले जाते."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"खरे असल्यास, मेटासिटी अनुप्रयोग एवजी पटल स्वरूपात कार्य करतो. ही पध्दत वेगळी आहे, पण "
+"अनुप्रयोग-आधारीत संयोजना Mac सारखे जास्त व Windows सारखे कमी आहे. अनुप्रयोग-आधारीत "
+"पध्दती मध्ये पटल केंद्रीत करत असल्यास, अनुप्रयोगातील सर्व पटल वाढविले जातील. तरी, "
+"अनुप्रयोग-आधारीत पध्दतीमध्ये, इतर अनुप्रयोग मध्ये लक्ष्यकेंद्र किल्क स्थानांतरीत केले जात नाही. "
+"अनुप्रयोग-आधारीत पध्दती, याक्षणी तरी कार्यरत केले गेले नाही."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "ट्रेड ऑफ वापरला कमी साधन वापरली, जर बरोबर"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "टिचकी मारण्याची कृतीसाठी सुधारकर्ता सुधारीत पटल वापरतो"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "कार्यक्षेत्राचे नाव"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "कार्यक्षेत्रांची संख्या"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"कार्यक्षेत्रांची संख्या. शून्यपेक्षा जास्त असायला हवे, व डेस्कटॉपला पुष्कळ कार्यक्षेत्र "
+"वापरण्यापासून प्रतिबंधित करण्याकरीता कमाल संख्या देखिल स्थापित केली जाते."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "परिभाषीत आदेश चालवा"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"उजव्या बटनसह पुनःआकार व \"mouse_button_modifier\" मधील कि दाबून ठेवतेवेळी मध्य "
+"बटनसह मेन्यू दाखवण्यासाठी, यांस true सेट करा; या उलट कार्यान्वीत करायचे असल्यास यांस "
+"false सेट करा."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"या पर्यायला false सेट केल्यास अडचण निर्माण होऊ शकते, म्हणून वापरकर्त्यांना पूर्वनिर्धारीत "
+"मूल्य true बदलवण्यापासून रोखले जाते. बरेच कृती (उ.दा. क्लाएंट क्षेत्रात क्लिक करणे, पटल "
+"हलवणे किंवा पुनःआकार देणे) पटल वाढ दोष म्हणून करतात. यांस false ठरवल्यास, जे सूचवले जात "
+"नाही, इतर वापरकर्ता कृती डीकपल करेल, व ऍप्लिकेशन्स् द्वारे निर्मीत विनंतीकडे दुर्लक्ष केले "
+"जाते. http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6 पहा. या पर्याय false "
+"असल्यावरही, पटल अंतर्गत कुठेही alt-डावी-क्लिक दाबल्यास, पटल सजावट करीता साधारण "
+"क्लिक, किंवा पेजर्स् पासून विशेष संदेश द्वारे, जसे कि कार्यसूची ऍप्लेटस् पासून सक्रीयता विनंती "
+"आढळल्यास, पटल वर सरकवले जाऊ शकते. हा पर्याय सध्या click-to-focus मोड मध्ये अकार्यक्ष "
+"केले आहे. raise_on_click false असल्यावर ऍप्लिकेशनस् पासून पटल वर सरकवण्यासाठी सूचीमध्ये "
+"प्रोग्रामॅटीक विनंती समाविष्ट केले जात नाही; ही विनंती कुठल्याही कारणास्तव दुर्लक्षीत केली "
+"जाते. तुम्ही ऍप्लिकेशन डेव्हलपर असल्यास व ही संयोजना अकार्यक्षम केल्यास वापरकर्ता द्वारे "
+"ऍप्लिकेशन चालत नाही अशी तक्रार आढळल्यास, पटल व्यवस्थापक खंडीत करण्यास _वापरकत्याचीच_ "
+"चूक आहे व पर्यायचे मूल्य पूर्वनिर्धारीत true करीताच निर्धेशीत पाहिजे किंवा \"bug\" चे "
+"निवारण होईपर्यंत वाट पहा, असे सूचवा."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"काहीक अनुप्रयोग संयोजनाचे उल्लंगन करते ज्यामुळे पटल व्यवस्थापकचे वैशिष्ट्ये सदोषीत होते. या "
+"पर्याय Marco ला योग्य पध्तीत कार्यरत करतो, ज्यामुळे सुस्थित वापरकर्ता संवाद प्राप्त "
+"होते, व त्याकरीता एवढीच अट अशी आहे की त्याक्षणी असुसंगती अनुप्रयोग चालवायचे नाही."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "प्रणाली घंटा एकू येण्याजोगी आहे"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"प्रणाली घंटा किंवा अन्य अनुप्रयोगाची 'घंटा' वाजविली अल्यास दृश्नीय सूचक कसे कार्यरत करायचे "
+"ते Marco ला कळविते. सद्या दोन वैध मुल्य, \"पूर्णपडदा\", ज्यामुळे पूर्णपडदा पांढरे-काळे असे "
+"दिसून पडते, व \"फेम_फ्लॅश\" ज्यामुळे अनुप्रयोगची शिर्षकपट्टी दिसण्यास सुरू होते. ज्या "
+"अनुप्रयोगने संकेत पाठविले ते अपरिचीत असल्यास (जे मुलभूत \"प्रणाली बीप\" करीता स्वरूप आहे), "
+"सद्याचे केंद्रीत पटलाचे शिर्षकपट्टी दिसते."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N किल्ली keybinding निश्चित करते "
+"जे या आदेशशी परस्पर आहे. कळबांधणी run_command_N करीता दाबल्यास command_N कार्यान्वीत "
+"होईल."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot किल्ली keybinding "
+"निश्चित करते जे या संयोजना द्वारे निश्चित आदेशला सुरू करते."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot किल्ली "
+"keybinding निश्चित करते जे या संयोजना द्वारे निश्चित आदेशला सुरू करते."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"keybinding जे /apps/marco/keybinding_commands मधिल परस्पर-क्रमांकीत आदेश "
+"चालवितो. स्वरूप खालिल प्रमाणे दिसते \"&lt;Control&gt;a\" किंवा \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". पार्सर सुलभ आहे व लहान किंवा मोठ्या आकाराचे अक्षरास, व \"&lt;Ctl&gt;\" "
+"किंवा \"&lt;Ctrl&gt;\" सारखे संक्षिप्त रूप करीता परवानगी देते. विशेष अक्षरमाळा करीता "
+"पर्याय \"अकार्यान्वीत\" असे निश्चित केल्यास, या कृती करीता keybinding स्थापीत केले जाऊ "
+"शकणार नाही."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "कार्यक्षेत्राचे नाव."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "पडद्यांच्या फोटोंची आदेश"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "पटलची सीमा, शिर्षकपट्टी, व याच तऱ्हने पुढे सुत्रयोजना निश्चित करतो."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"स्वः_वाढ खरे निश्चित केल्यास होणारा वेळेतील उशीर . या उशीर सेकंदाच्या हजाराव्या अंशात "
+"प्रविष्ट केले जाते."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"पध्दती पटल कसे सक्रीय करायचे याचे सूचक पटल लक्ष्यकेंद्र पध्दती आहे. याचे तीन संभाव्य मुल्य आहे; "
+"\"क्लिक\" म्हणजे लक्षकेंद्र करण्याकरीता पटलवर क्लिक केले पाहिजे, \"गचाळ\" म्हणजे जेव्हा माउस "
+"पटल मध्ये प्रवेश करतो तेव्हा पटल लक्ष्यकेंद्रीत केले जाते व \"माउस\" म्हणजे जेव्हा माउस पटलीत "
+"प्रवेश करतो तेव्हा पटल लक्ष्यकेंद्रीत केले जाते व जेव्हा माउस पटलीत प्रवेश करत नाही तेव्हा पटल "
+"लक्ष्यकेंद्रीत केले जात नाही."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "पटलच्या पडदा फोटोंची आदेश"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"हा पर्याय शिर्षक पट्टीवर दोनवेळा-क्लिक केल्यानंतरचे प्रभाव ओळखतो. सध्याचे वैध पर्याय "
+"याप्रमाणे आहे 'toggle_shade' आहे, ज्यामुळे पटलाचे रंगछटा शक्य/अशक्य होते, "
+"'toggle_maximize' ज्यामुळे पटलचे आकार मोठे शक्य/अशक्य होते, "
+"'toggle_maximize_horizontally' व 'toggle_maximize_vertically' ज्यामुळे पटल "
+"ठराविक दिशामध्येच मोठे शक्य/अशक्य होते, 'minimize' ज्यामुळे पटल लहान होते, 'shade' "
+"ज्यामुळे पटल वर सरकते, 'menu' ज्यामुळे पटलचे मेन्यू दाखवले जाते, 'lower' ज्यामुळे पटल "
+"इतरांच्या पाठीमागे स्थीत केले जाते, व 'none' ज्यामुळे काहीच होत नाही."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"हा पर्याय शिर्षक पट्टीवर मध्य-क्लिक केल्यानंतरचे प्रभाव ओळखतो. सध्याचे वैध पर्याय याप्रमाणे "
+"आहे 'toggle_shade' आहे, ज्यामुळे पटलाचे रंगछटा शक्य/अशक्य होते, 'toggle_maximize' "
+"ज्यामुळे पटलचे आकार मोठे शक्य/अशक्य होते, 'toggle_maximize_horizontally' व "
+"'toggle_maximize_vertically' ज्यामुळे पटल ठराविक दिशामध्येच मोठे शक्य/अशक्य होते, "
+"'minimize' ज्यामुळे पटल लहान होते, 'shade' ज्यामुळे पटल वर सरकते, 'menu' ज्यामुळे पटलचे "
+"मेन्यू दाखवले जाते, 'lower' ज्यामुळे पटल इतरांच्या पाठीमागे स्थीत केले जाते, व 'none' ज्यामुळे "
+"काहीच होत नाही."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"हा पर्याय शिर्षक पट्टीवर उजवी-क्लिक केल्यानंतरचे प्रभाव ओळखतो. सध्याचे वैध पर्याय याप्रमाणे "
+"आहे 'toggle_shade' आहे, ज्यामुळे पटलाचे रंगछटा शक्य/अशक्य होते, 'toggle_maximize' "
+"ज्यामुळे पटलचे आकार मोठे शक्य/अशक्य होते, 'toggle_maximize_horizontally' व "
+"'toggle_maximize_vertically' ज्यामुळे पटल ठराविक दिशामध्येच मोठे शक्य/अशक्य होते, "
+"'minimize' ज्यामुळे पटल लहान होते, 'shade' ज्यामुळे पटल वर सरकते, 'menu' ज्यामुळे पटलचे "
+"मेन्यू दाखवले जाते, 'lower' ज्यामुळे पटल इतरांच्या पाठीमागे स्थीत केले जाते, व 'none' ज्यामुळे "
+"काहीच होत नाही."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"या पर्याय नविन नर्मित पटली करीता लक्ष्यकेंद्र कसे प्राप्त होते या करीता अगाऊ नियंत्रण "
+"पुरवितो. दोन संभाव्य मुल्य आहेत; \"smart\" म्हणजे वापरकर्त्याचे साधारण लक्ष्यकेंद्र पध्दती, व "
+"\"strict\" म्हणजे टर्मिनल पासून सुरू होणारे पटली ज्यास लक्ष्यकेंद्र देऊ शकत नाही."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"प्रणाली घंटा किंवा अन्य अनुप्रयोगाची 'घंटा' किंवा 'बीप' वाजविली अल्यास दृश्नीय सूचक चालू "
+"करा; जे एकण्यास कठिण जाणाऱ्यांना व जास्त आवाज वातवरणात फारच उपयोगी ठरू शकते."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "पटल शिर्षकाकरिता नेहमीची प्रणाली फॉन्ट वापरा"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "दृश्य बेल प्रकार"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "अन्य वापरकर्त्याशी परस्पर संवाद अप्रत्यक्ष परिणाम असायला हवे का"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "उजव्या बटनसह पुनःआकार द्यायाचे"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "पटल फोकस मोड"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "पटल शिर्षक लिपी"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "वापर: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "पटल बंद करा"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "पटल मेनू"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "पटल लहान करा"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "पटल मोठ्यात मोठी करा"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "पटल पूर्वस्थितीत आणा"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "पटल गुंडाळा"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "पटल गुंडाळा"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "पटल वर दर्शवा"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "शिर्ष पासून पटल काढूण टाका"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "नेहमी दिसण्याजोगी कार्यक्षेत्रावर दर्शवा"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "पटल फक्त एका कार्यक्षेत्रावर दर्शवा"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "लहान करा(_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "मोठ्यात मोठे करा(_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "लहान करा(_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "वर गुंडाळा(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "गुंडाळी उघडा(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "हलवा(_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "पुनःआकारित करा(_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "शिर्षकपट्टी स्क्रीनवर हलवा(_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "नेहमी वर (_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "नेहमी दृश्य कार्यक्षेत्रावर(_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "फक्त या कार्यक्षेत्रावर(_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "डाव्या कार्यक्षेत्रावर हलवा(_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "उजव्या कार्यक्षेत्रावर हलवा(_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "वरील कार्यक्षेत्रावर हलवा(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "खालील कार्यक्षेत्रावर हलवा(_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "बंद करा(_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "कार्यक्षेत्र %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "कार्यक्षेत्र १०(_0)"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "कार्यक्षेत्र %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "वेगळ्या कार्यक्षेत्रावर हलवा(_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "मेटा"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "सुपर"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "हायपर"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "उच्च"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "तळ"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "डावे"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "उजवे"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "हे आकारमान चौकट भूमिती \"%s\" ठरवत नाही"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "हे आकारमान सीमारेषेसाठी \"%s\" चौकट भूमिती \"%s\" ठरवत नाही"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "बटन aspect प्रमाण %g योग्य नाही"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "हे आकारमान चौकट भूमिती बटणाचा आकार ठरवत नाही"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "चढानी कमीत कमी दोन रंग हवेत"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK रंग संयोजना कंसा मध्ये असायला हवे, उ.दा. gtk:fg[साधारण] जेथे साधारण असे स्थर आहे; जे "
+"\"%s\" ला वाचू शकले नाही"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK रंग संयोजनास बंद कंस असायला हवे, उ.दा. gtk:fg[साधारण] जेथे साधारण असे स्थर आहे; जे "
+"\"%s\" ला वाचू शकले नाही"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "रंग ठरावात \"%s\" हा भाग समजला गेला नाही"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "रंग ठरावात \"%s\" रंगाचे घटक समजले गेले नाही"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "ब्लेंड पध्दती \"blend/bg_color/fg_color/alpha\" आहे, \"%s\" ह्या पध्दतीत बसत नाही"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "मिसळलेल्या रंगात अल्फा किंमत \"%s\" पार्स होऊ शकत नाही"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "मिसळलेल्या रंगात अल्फा किंमत \"%s\" ही 0.0 आणि 1.0 मध्ये नाही"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "रंगछटा रूपण \"shade/base_color/factor\" असे आहे, \"%s\" या पध्दतीत बसत नाही"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "सावली पध्दत सावलीतील रंगात \"%s\" पार्स होऊ शकत नाही"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "सावली रंगात सावली भाग \"%s\" नकारात्मक आहे"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "रंग \"%s\" विश्लेषित करता आला नाही"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "निबंधक वाक्यरचनातील '%s' अक्षराला परवानगी नाही"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "निबंधक वाक्यरचना मध्ये फ्लोटींग पॉईंट क्रमांक '%s' समाविष्टीत आहे जे वाचले जाऊ शकत नाही"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "निबंधक वाक्यरचनात '%s' हा इंटिजर पार्स होऊ शकत नाही"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "निबंधक वाक्यरचनात पाठ्यच्या सुरवातीस अपरिचीत operator समाविष्टीत आहे: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "निबंध वाक्यरचना रिकामे होते किंवा समझण्याजोगी नाही"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "निबंधक वाक्यरचना division by zero चा परिणाम देते"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "निबंधक वाक्यरचना फ्लोटींग पॉईंट क्रमांकवर mod नियंत्रक वापरण्याचा प्रयत्न करीत आहे"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "निबंधक वाक्यरचनातील operator \"%s\" च्या जागी operand अपेक्षीत"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "निबंधक वाक्यरचनातील operand च्या जागी operator अपेक्षीत"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "निबंधक वाक्यरचना operand च्या एवजी operator मध्ये समाप्त होते"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"निबंधक वाक्यरचनाकडे operator \"%c\" खालिल operator \"%c\" आहे व तेही कुठलेही "
+"operand विना"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "निबंधक वाक्यरचना मध्ये अपरिचीत variable किंवा constant \"%s\" आढळले"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "निबंधक वाक्यरचना पार्सर मधिल बफर मध्ये जागा नाही."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "निबंधक वाक्यरचना कडे बंद पॅरंथसीस आहे व तेही उघडे पॅरंथसीस विनाआहे"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "निबंधक वाक्यरचना कडे उघडे पॅरंथसीस आहे व तेही बंद पॅरंथसीस विना"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "निबंधक वाक्यरचना कडे ऑपरेटर किंवा ऑपरंड नाही असे दिसून येत"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "सुत्रयोजना मध्ये वाक्यरचना समाविष्टीत आहे ज्यामुळे त्रुटी परिणामस्वरूपी उधभवली: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> ह्या "
+"भिंतफितीसाठी ठरविलेले आहे"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "हरवले आहे <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "थीम \"%s\" भारित करण्यास अपयशी: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "कोणतेही <%s> थीम \"%s\" साठी निर्धारित नाही"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"संकल्पनेमध्ये पटल प्रकारासाठी फिती \"%s\" शैलीची मांडणी नाही \"%s\", गुणधर्म <window "
+"type=\"%s\" style_set=\"whatever\"/> जोडा"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "वापरणाऱ्याने सुचविलेला स्थिरांक मोठ्या अक्षरांचे सुरू व्हायला हवा; \"%s\" नाही "
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "स्थिरांक \"%s\" हा अगोदर पासूनच ठरवण्यात आलेला आहे"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "घटक <%2$s> वरील \"%1$s\" गुणधर्म आढळले नाही"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "रेषा %d अक्षर %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "त्याच \"%s\" गुणधर्मावर हे गुणधर्म दोनदा <%s> लिहीले आहेत"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "ह्या स्थितीत \"%s\" गुणधर्मावर ही वाक्यरचना <%s> अवैध आहे"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" चे पुर्णांक म्हणून विश्लेषण करता आले नाही"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "अक्षरमाळा \"%2$s\" मधिल शेवटचे अक्षरं \"%1$s\" कळले नाही"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "%ld हा अंक धन हवा"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "सध्याचा सर्वात %ld जास्त इंटीजर आहे, हा खूप मोठा आहे %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "वाहता बिंदू क्रमांक म्हणून \"%s\" हा पार्स करता आला नाही"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "बुलीयन मुल्य \"खरे\" किंवा \"खोटे\" असावे पण \"%s\" नाही"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "अल्फाची किंमत 0.0 आणि 360.0, असायला हवी %g होती\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "अल्फाची किंमत 0.0 आणि 1.0, असायला हवी %g होती\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"अवैध शिर्षक प्रमाण \"%s\" (यापैकी एक असायले हवे xx-लहान,x-लहान,लहान,मध्यम,मोठे,x-मोठे,"
+"xx-मोठे)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> हे नाव \"%s\" दुसऱ्यांदा वापरले"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> मुख्य \"%s\" चे वर्णन नाही"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> भूमिती \"%s\" संज्ञा झाली नाही"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> ने भूमिती किंवा मूळ ज्याला भूमिती आहे ते ठरवून घ्या"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "अल्फा मुल्य अर्थयुक्त करीता तुम्ही पार्श्वभूमी निश्चित केले पाहिजे"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "गुणधर्मावर \"%s\" अपरिचीत <%s> प्रकार"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "अपरिचीत style_set \"%s\", <%s> घटकावरील"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "पटल प्रकार \"%s\" आधीच शैलीसंचात ठरवून ठेवलेला आहे"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "च्याखाली <%s> गुमधर्माना परवानगी नाही <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"या बटनकरीता दोन्ही \"button_width\"/\"button_height\" व \"aspect_ratio\" "
+"निर्देशीत केले गेले नाही"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "\"%s\" अंतर अजञात"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Aspect प्रमाण \"%s\" अपरिचीत आहे"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "कडा \"%s\" अपरिचीत आहे"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "घटक <%s> वरील \"start_angle\" किंवा \"पासून\" गुणधर्म नाही"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "घटक <%s> वरील \"extent_angle\" किंवा \"प्रति\" गुणधर्म नाही"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "ही किंमत \"%s\" प्रकारच्या चढाकरिता समजू शकली नाही"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "गुणधर्मासाठी रिकाम्या प्रकारचे \"%s\" for <%s> समजू शकली नाही"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "गुणधर्मासाठी स्थिती \"%s\" for <%s> समजू शकली नाही"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "गुणधर्मासाठी सावली \"%s\" for <%s> समजू शकली नाही"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "गुणधर्मासाठी बाण \"%s\" for <%s> समजू शकला नाही"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "म्हणून <draw_ops> तो \"%s\" ठरवले आहे"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "draw_ops \"%s\" समाविष्ट केल्यास येथे वर्तुळाकार संदर्भ निर्माण होईल"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "फितीवरील चित्रासाठी \"%s\" स्थिती अवैध आहे"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "%s ह्या स्थितीतील फितचित्राकरिता शैली आधीच आहे"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "नावाबरोबर <draw_ops> विश्लेषण \"%s\" केले नाही"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "बटणासाठी \"%s\" अयोग्य कार्य"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "बटन कार्यपध्दती \"%1$s\" या आवृत्ती मध्ये अस्तीत्वात नाही (%2$d, आवश्यक %3$d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "बटणाकरिता \"%s\" अयोग्य स्थिती"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "कार्य %s स्थिती %s करिता फितीची शैली आधीच आहे"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" फोकस गुणविशेषासाठी हि योग्य किंमत नाही"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" स्थिती गुणविशेषासाठी हि योग्य किंमत नाही"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" ह्या नावाची शैली अस्तित्वात नाही"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" पुर्नआकार या गुणविशेषासाठी हि योग्य किंमत नाही"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "मोठे करा/छटा स्थिती करीता <%s> घटकावरील \"पुन्हआकार\" गुणधर्म नसायला हवे"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "मोठे करा स्थिती करीता <%s> घटकावरील \"पुन्हआकार\" गुणधर्म नसायला हवे"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "%s पुर्नआकार %s फोकस %s स्थितीसाठी शैली ही अगोदरच ठरवलेली आहे"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "%s फोकस %s स्थितीसाठी शैली ही अगोदरच ठरवलेली आहे"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<piece> घटक करीता दोन draw_ops असू शकत नाही (सुत्रयोजनाने draw_ops गुणधर्म व "
+"<draw_ops> घटक निश्चित केले, किंवा दोन घटक निश्चित केले)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<button> घटक करीता दोन draw_ops असू शकत नाही (सुत्रयोजनाने draw_ops गुणधर्म व "
+"<draw_ops> घटक निश्चित केले, किंवा दोन घटक निश्चित केले)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<menu_icon> घटक करीता दोन draw_ops असू शकत नाही (सुत्रयोजनाने draw_ops गुणधर्म व "
+"<draw_ops> घटक निश्चित केले, किंवा दोन घटक निश्चित केले)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "योजना अंतर्गत बाहेरील घटक <marco_theme> असायला हवे, <%s> नाही"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "गुणधर्माच्या <%s> नाव/लेखक/दिनांक/वर्णन गुणधर्मासाठी परवानगी नाही"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<स्थिरांक> गुणधर्मामध्ये <%s> गुणधर्माला परवानगी नाही"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "घटक <%s> distance/border/aspect_ratio घटकाअंतर्गत स्वीकारले जात नाही"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "गुणधर्मामध्ये <%s> ड्रॉ प्रक्रिया गुणधर्माना परवानगी नाही"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "गुणधर्मामध्ये <%s> गुणधर्माना परवानगी <%s> नाही"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "चौकट करीता draw_ops पुरवले नाही"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "बटणासाठी draw_ops पुरवले नाही"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "गुमधर्मामध्ये वाक्यरचना असण्याची परवानगी नाही <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "या योजना करीता <%s> दोनवेळा निर्देशीत केले गेले"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "सुत्रयोजना %s करीता वैध फाइल शोधण्यास अपयशी\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "सुत्रयोजना फाइलमध्ये %s मूळ गुणधर्म <मेटॅसिटी_सुत्रयोजना> अस्तित्वात नाही"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/खिडक्या(_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/खिडक्या/टिअरऑफ"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/खिडक्या/संवाद(_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/खिडक्या/मोडल संवाद(_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/खिडक्या/उपयुक्तता(_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/खिडक्या/स्प्लॅशस्क्रीन(_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/खिडक्या/उच्च डॉक(_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/खिडक्या/तळाचा डॉक(_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/खिडक्या/डावा डॉक(_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/खिडक्या/उजवा डॉक(_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/खिडक्या/सर्व डॉक(_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/खिडक्या/कार्यक्षेत्र(_k)"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "उदाहरणाकरिता दिलेल्या संभाषणात ह्या नमुन्याचा संदेश आहे"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "खोटी मेनू वस्तू %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "फक्त-किनार पटल"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "पट्टी"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "सामान्य अनुप्रयोग पटल"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "संवाद खोका"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "मोडल संवाद खोका"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "उपयुक्तता पॅलेट"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "टिअर-ऑफ मेनू"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "किनार"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "बटन लेआउट कसोटी %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "एक पटलची पटल काढण्यासाठी %g मिलीसेकंद"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "वापर: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "थीम भारित करण्यात त्रुटी: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" थीम %g सेकंदांत भारित करत आहे\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "सामान्य शिर्षक फॉन्ट"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "लहान शिर्षक फॉन्ट"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "मोठा शिर्षक फॉन्ट"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "बटन लेआउट"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "बेंचमार्क"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "पटलचे शिर्षक येथे जाते"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%2$g client-side सेकंद मध्ये %1$d पटल रेखाटले (%3$g मिलीसेकंद दर पटल) व %4$g सेकंद "
+"घड्याळ वेळ व X सर्वर स्त्रोत अंतर्भुतीत (%5$g मिलीसेकंद दर पटल)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "स्थिती संबोधन परिक्षा बरोबर परत आली पण तिने त्रुटी दर्शविली"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "स्थिती संबोधन परिक्षाने FALSE पुरवले परंतु त्रुटी आढळली नाही"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "त्रुटी अपेक्षित होती पम कोणतीच दिली गेली नाही"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "त्रुटी %d अपेक्षित होती पण %d दिली गेली"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "त्रुटी अपेक्षित नव्हती पण एक परत पाठवली गेली: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "X किंमत होती %d, %d ही हवी होती"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "वाय किंमत होती %d, %d ही हवी होती"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d सेकंदात निबंधक वाक्यरचना वर्णन पार्स %g झाले (%g सेकंदाची सरासरी)\n"
+
diff --git a/po/ms.po b/po/ms.po
new file mode 100644
index 00000000..f94ae926
--- /dev/null
+++ b/po/ms.po
@@ -0,0 +1,2754 @@
+# terjemahan Marco untuk Bahasa Melayu.
+# Copyright (C) 2001 Free Software Foundation, Inc.
+# 1. Hasbullah Bin Pit <[email protected]>, 2002i-2003.
+# 2. ??
+msgid ""
+msgstr ""
+"Project-Id-Version: Marco 2.3.x\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-09-19 12:30+0200\n"
+"PO-Revision-Date: 2004-01-16 23:12+0730\n"
+"Last-Translator: Hasbullah Bin Pit <[email protected]>\n"
+"Language-Team: Projek Gabai (Bahasa Melayu) <gabai-penyumbang@lists."
+"sourceforge.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Penggunaan: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:128
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco telah dikompil tanpa sokongan mod verbose\n"
+
+#: ../src/delete.c:63 ../src/delete.c:90 ../src/marco-dialog.c:70
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Tak dapat menghantar \"%s\" sebagai integer"
+
+#: ../src/delete.c:70 ../src/delete.c:97 ../src/marco-dialog.c:77
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Tidak memahami aksara berikut \"%s\" pada rentetan \"%s\""
+
+#: ../src/delete.c:128
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Gagal menghantar mesej \"%s\" dari proses dialog\n"
+
+#: ../src/delete.c:263
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Ralat membaca dari proses paparan dialog: %s\n"
+
+#: ../src/delete.c:344
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Ralat melancarkan dialog-marco untuk tanya tentang pembunuhan satu "
+"aplikasi: %s\n"
+
+#: ../src/delete.c:452
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Gagal mendapatkan namahos:: %s\n"
+
+#: ../src/display.c:319
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Gagal membuka paparan %s Sistem X Window\n"
+
+#: ../src/errors.c:231
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Hilang sambungan ke paparan '%s';\n"
+"agaknya pelayan X telah dimatikan atau anda telah membunuh\n"
+"pengurus tetingkap.\n"
+
+#: ../src/errors.c:238
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Ralat IO fatal %d (%s) pada paparan '%s'.\n"
+
+#: ../src/frames.c:1125
+msgid "Close Window"
+msgstr "Tutup Tetingkap"
+
+#: ../src/frames.c:1128
+msgid "Window Menu"
+msgstr "Menu Tetingkap"
+
+#: ../src/frames.c:1131
+msgid "Minimize Window"
+msgstr "Miniatur Tetingkap"
+
+#: ../src/frames.c:1134
+msgid "Maximize Window"
+msgstr "Maksimum tetingkap"
+
+#: ../src/frames.c:1137
+msgid "Unmaximize Window"
+msgstr "Nyah Maksimum Tetingkap"
+
+# modifier=? binding=?
+#: ../src/keybindings.c:994
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Terdapat program lain yang sudah menggunakan kekukci %s dengan modifier %x "
+"sebagai binding\n"
+
+#: ../src/keybindings.c:2620
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+"Ralat melancarkan dialog-marco untuk mencetak ralat tentang arahan: %s\n"
+
+#: ../src/keybindings.c:2725
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Tiada arahan %d ditakrifkan.\n"
+
+#: ../src/keybindings.c:3570
+#, fuzzy
+msgid "No terminal command has been defined.\n"
+msgstr "Tiada arahan %d ditakrifkan.\n"
+
+#: ../src/main.c:69
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+
+#: ../src/main.c:257
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:263
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:269
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:274
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:280
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:286
+msgid "Print version"
+msgstr ""
+
+#: ../src/main.c:440
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Gagal mengimbas direktori tema: %s\n"
+
+#: ../src/main.c:456
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr ""
+"Tak dapat menjumpai tema! pastikan %s wujud dan mengandungi tema biasa."
+
+#: ../src/main.c:518
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Gagal mengulanghidupkan: %s\n"
+
+#: ../src/menu.c:54
+msgid "Mi_nimize"
+msgstr "Mi_nimum"
+
+#: ../src/menu.c:55
+msgid "Ma_ximize"
+msgstr "Ma_ksimum"
+
+#: ../src/menu.c:56
+msgid "Unma_ximize"
+msgstr "_Nyah maksimum"
+
+#: ../src/menu.c:57
+msgid "Roll _Up"
+msgstr "_Gulung"
+
+#: ../src/menu.c:58
+msgid "_Unroll"
+msgstr "_Bentang"
+
+#: ../src/menu.c:59 ../src/menu.c:60
+msgid "On _Top"
+msgstr "Di _Atas"
+
+#: ../src/menu.c:61
+msgid "_Move"
+msgstr "_Alih"
+
+#: ../src/menu.c:62
+msgid "_Resize"
+msgstr "_Ubahsaiz"
+
+#. separator
+#: ../src/menu.c:64
+msgid "_Close"
+msgstr "_Tutup"
+
+#. separator
+#: ../src/menu.c:66
+#, fuzzy
+msgid "_Always on Visible Workspace"
+msgstr "_Ikon pada Ruangkerja ini"
+
+#: ../src/menu.c:67
+#, fuzzy
+msgid "_Only on This Workspace"
+msgstr "_Ikon pada Ruangkerja ini"
+
+#: ../src/menu.c:68
+msgid "Move to Workspace _Left"
+msgstr "Pindah ke Ruangkerja Ki_ri"
+
+#: ../src/menu.c:69
+msgid "Move to Workspace R_ight"
+msgstr "Pindah ke Ruangkerja Ka_nan"
+
+#: ../src/menu.c:70
+msgid "Move to Workspace _Up"
+msgstr "Pindah ke Ruangkerja _Atas"
+
+#: ../src/menu.c:71
+msgid "Move to Workspace _Down"
+msgstr "Pindah ke Ruangkerja Bawah"
+
+#: ../src/menu.c:162 ../src/prefs.c:2106
+#, c-format
+msgid "Workspace %d"
+msgstr "Ruangkerja %d"
+
+#: ../src/menu.c:171
+msgid "Workspace 1_0"
+msgstr "Ruangkerja 1_0"
+
+#: ../src/menu.c:173
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Ruangkerja %s%d"
+
+#: ../src/menu.c:368
+msgid "Move to Another _Workspace"
+msgstr "Pindah ke Ruangkerja lain"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shif"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hiper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:110
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr "Tetingkap \"%s\" tak bertindakbalas."
+
+#: ../src/marco-dialog.c:118
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr ""
+"Memaksa aplikasi ini keluar akan menyebabkan anda kehilangan sebarang "
+"perubahan yg betul disimpan."
+
+#: ../src/marco-dialog.c:129
+msgid "_Force Quit"
+msgstr "_Paksa keluar"
+
+#: ../src/marco-dialog.c:226
+msgid "Title"
+msgstr "Tajuk"
+
+#: ../src/marco-dialog.c:238
+msgid "Class"
+msgstr "Kelas"
+
+#: ../src/marco-dialog.c:264
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"tetingkap ini tidak menyokong \"Simpan tetapan semasa\" dan akan "
+"diulanghidupkan secara manual bila anda log masuk kelak."
+
+#: ../src/marco-dialog.c:330
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Terdapat ralat melaksanakan \"%s\":\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "Navigasi berkerja dari segi aplikasi bukannya tetingkap"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Aksi pada dwi-klik bar tajuk"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr "Aktifkan menu tetingkap"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Penyusunan butang pada bar tajuk"
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr "Automatik angkat bila tetingkap difokus"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:9
+#, fuzzy
+msgid "Close window"
+msgstr "Tutup Tetingkap"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Arahan untuk dilaksana tindakbalas pengikatan kekunci"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr "Tema semasa"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Selangmasa dalam milisaat bagi opsyen auto angkat"
+
+#: ../src/marco.schemas.in.h:13
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:14
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr "Hidupkan Loceng Visual"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Hide all windows and focus desktop"
+msgstr "Sembunyi semua tetingkap dan fokus desktop"
+
+#: ../src/marco.schemas.in.h:17
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key)."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:19
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:22
+msgid "Lower window below other windows"
+msgstr "Rendahkan tetingkap di bawah tetingkap lain"
+
+#: ../src/marco.schemas.in.h:23
+#, fuzzy
+msgid "Maximize window"
+msgstr "Maksimum tetingkap"
+
+#: ../src/marco.schemas.in.h:24
+msgid "Maximize window horizontally"
+msgstr "Maksimumkan tetingkap mengufuk"
+
+#: ../src/marco.schemas.in.h:25
+msgid "Maximize window vertically"
+msgstr "Maksimumkan tetingkap menegak"
+
+#: ../src/marco.schemas.in.h:26
+#, fuzzy
+msgid "Minimize window"
+msgstr "Miniatur tetingkap"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:28
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Beralih ke belakang antara panel dan desktop serta merta"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "Beralih ke belakang antara panel dan desktop menggunakan popup"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Move backwards between windows immediately"
+msgstr "Beralih kebelakang antara tetingkap serta merta"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Move between panels and the desktop immediately"
+msgstr "Beralih antara panel dan desktop serta merta"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move between panels and the desktop with popup"
+msgstr "Beralih antara panel dan desktop menggunakan paparan popup"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move between windows immediately"
+msgstr "Beralih antara tetingkap serta merta"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move between windows with popup"
+msgstr "Beralih antara tetingkap menggunakan popup"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move focus backwards between windows using popup display"
+msgstr "Alih fokus ke belakang antara tetingkap menggunakan paparan popup"
+
+#: ../src/marco.schemas.in.h:36
+#, fuzzy
+msgid "Move window"
+msgstr "Gerak tetingkap"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move window one workspace down"
+msgstr "Pindah tetingkap satu ruangkerja ke bawah"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move window one workspace to the left"
+msgstr "Pindah tetingkap satu ruangkerja ke kiri"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move window one workspace to the right"
+msgstr "Pindah tetingkap satu ruangkerja ke kanan"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move window one workspace up"
+msgstr "Pindah tetingkap satu ruangkerja ke atas"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move window to workspace 1"
+msgstr "Pindah tetingkap ke ruangkerja 1"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move window to workspace 10"
+msgstr "Pindah tetingkap ke ruangkerja 10"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move window to workspace 11"
+msgstr "Pindah tetingkap ke ruangkerja 11"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window to workspace 12"
+msgstr "Pindah tetingkap ke ruangkerja 12"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window to workspace 2"
+msgstr "Pindah tetingkap ke ruangkerja 2"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window to workspace 3"
+msgstr "Pindah tetingkap ke ruangkerja 3"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window to workspace 4"
+msgstr "Pindah tetingkap ke ruangkerja 4"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window to workspace 5"
+msgstr "Pindah tetingkap ke ruangkerja %s%d"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 6"
+msgstr "Pindah tetingkap ke ruangkerja 6"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 7"
+msgstr "Pindah tetingkap ke ruangkerja 7"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 8"
+msgstr "Pindah tetingkap ke ruangkerja 8"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 9"
+msgstr "Pindah tetingkap ke ruangkerja 9"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Name of workspace"
+msgstr "Nama ruangkerja"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Number of workspaces"
+msgstr "Bilangan ruangkerja"
+
+#: ../src/marco.schemas.in.h:55
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr ""
+"Bilangan ruangkerja. Mesti lebih daripada sifar, dan mempunyai bilangan "
+"maksimum tetap (untuk mencegah pemusnahan desktop akibat daripada meminta 34 "
+"juta ruangkerja)."
+
+#: ../src/marco.schemas.in.h:56
+msgid "Raise obscured window, otherwise lower"
+msgstr "Angkat tetingkap tersembunyi, yang lain diturunkan "
+
+#: ../src/marco.schemas.in.h:57
+msgid "Raise window above other windows"
+msgstr "Angkat tetingkap di atas tetingkap lain"
+
+#: ../src/marco.schemas.in.h:58
+#, fuzzy
+msgid "Resize window"
+msgstr "Ubahsaiz tetingkap"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Run a defined command"
+msgstr "Laksana arahan tertakrif"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Run a terminal"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:61
+msgid "Show the panel menu"
+msgstr "Papar menu panel"
+
+#: ../src/marco.schemas.in.h:62
+#, fuzzy
+msgid "Show the panel run application dialog"
+msgstr "Papar dialog perlaksanaan panel"
+
+#: ../src/marco.schemas.in.h:63
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:64
+msgid "Switch to workspace 1"
+msgstr "Bertukar ke ruangkerja 1"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Switch to workspace 10"
+msgstr "Bertukar ke ruangkerja 10"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Switch to workspace 11"
+msgstr "Bertukar ke ruangkerja 11"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Switch to workspace 12"
+msgstr "Bertukar ke ruangkerja 12"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Switch to workspace 2"
+msgstr "Bertukar ke ruangkerja 2"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Switch to workspace 3"
+msgstr "Bertukar ke ruangkerja 3"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Switch to workspace 4"
+msgstr "Bertukar ke ruangkerja 4"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Switch to workspace 5"
+msgstr "Bertukar ke ruangkerja 5"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 6"
+msgstr "Bertukar ke ruangkerja 6"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 7"
+msgstr "Bertukar ke ruangkerja 7"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 8"
+msgstr "Bertukar ke ruangkerja 8"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 9"
+msgstr "Bertukar ke ruangkerja 9"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace above this one"
+msgstr "Bertukar ke ruangkerja di atas yang ini"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace below this one"
+msgstr "Bertukar ke ruangkerja di bawah yang ini"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace on the left"
+msgstr "Bertukar ke ruangkerja di sebelah kiri"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace on the right"
+msgstr "Bertukar ke ruangkerja di sebelah kanan"
+
+#: ../src/marco.schemas.in.h:80
+msgid "System Bell is Audible"
+msgstr "Loceng Sistem boleh didengar"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Take a screenshot"
+msgstr "Tangkap cekupanskrin"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Take a screenshot of a window"
+msgstr "Ambil cekupan skrin tetingkap"
+
+#: ../src/marco.schemas.in.h:83
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:84
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Kekunci /apps/marco/global_keybindings/run_command_N keys mentakrifkan "
+"pengikatan kekunci yang merujuk kepada arahan ini. Menekan pengikatan "
+"kekunci lanksana_arahan_N akan melaksanakan arahan_N will execute command_N."
+
+#: ../src/marco.schemas.in.h:85
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Kekunci /apps/marco/global_keybindings/run_command_screenshot "
+"mentakrifkan pengikatan kekunci yang menyebabkan arahan di nyatakan oleh "
+"tetapan ini akan dipanggil"
+
+#: ../src/marco.schemas.in.h:86
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Kekunci /apps/marco/global_keybindings/run_command_window mentakrifkan "
+"pengikatan kekunci yang menyebabkan arahan dinyatakan oleh tetapan ini akan "
+"dilaksanakan."
+
+#: ../src/marco.schemas.in.h:87
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:88
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:89
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:90
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:91
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:92
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:93
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:94
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:95
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:96
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:97
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:98
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:99
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:100
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:146
+msgid "The name of a workspace."
+msgstr "nama ruangkerja."
+
+#: ../src/marco.schemas.in.h:147
+msgid "The screenshot command"
+msgstr "Arahan cekupan skrin"
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Tema menentukan penampilan bagi sempadan, bar tajuk dan lain2 bagi tetingkap."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Masa dilengahkan sebelum mengangkat tetingkap jika auto_raise ditetapkan "
+"sebagai benar. Lengahan dikira dalam 1/1000 saat."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:151
+msgid "The window screenshot command"
+msgstr "Arahan mencekup skrin tetingkap"
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, and 'toggle_maximize' which will maximize/unmaximize the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:158
+msgid "Toggle always on top state"
+msgstr "Togol keadaan sentiasa di atas"
+
+#: ../src/marco.schemas.in.h:159
+msgid "Toggle fullscreen mode"
+msgstr "Togol mod skrinpenuh"
+
+#: ../src/marco.schemas.in.h:160
+msgid "Toggle maximization state"
+msgstr "togol keadaan maksimum"
+
+#: ../src/marco.schemas.in.h:161
+msgid "Toggle shaded state"
+msgstr "Togol keadaan tersuram"
+
+#: ../src/marco.schemas.in.h:162
+msgid "Toggle window on all workspaces"
+msgstr "Togol tetingkap pada semua ruangkerja"
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:164
+#, fuzzy
+msgid "Unmaximize window"
+msgstr "Nyahmaksimum tetingkap"
+
+#: ../src/marco.schemas.in.h:165
+msgid "Use standard system font in window titles"
+msgstr "Guna font sistem piawai pada tajuk tetingkap"
+
+#: ../src/marco.schemas.in.h:166
+msgid "Visual Bell Type"
+msgstr "Jenis Loceng Visual"
+
+#: ../src/marco.schemas.in.h:167
+msgid "Window focus mode"
+msgstr "Mod fokus tetingkap"
+
+#: ../src/marco.schemas.in.h:168
+msgid "Window title font"
+msgstr "Font tajuk tetingkap"
+
+#: ../src/prefs.c:528 ../src/prefs.c:544 ../src/prefs.c:560 ../src/prefs.c:576
+#: ../src/prefs.c:592 ../src/prefs.c:612 ../src/prefs.c:628 ../src/prefs.c:644
+#: ../src/prefs.c:660 ../src/prefs.c:676 ../src/prefs.c:692 ../src/prefs.c:708
+#: ../src/prefs.c:724 ../src/prefs.c:741 ../src/prefs.c:757 ../src/prefs.c:773
+#: ../src/prefs.c:789 ../src/prefs.c:805 ../src/prefs.c:820 ../src/prefs.c:835
+#: ../src/prefs.c:850 ../src/prefs.c:866 ../src/prefs.c:882 ../src/prefs.c:898
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Kekunci MateConf \"%s\" ditetapkan kepada jenis yang tidak sah\n"
+
+#: ../src/prefs.c:943
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" dijumpai pada pangkalan data konfigurasi adalah bukan pengubahsuai "
+"butang tetikus yang sah\n"
+
+#: ../src/prefs.c:967 ../src/prefs.c:1428
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Kekunci MateConf '%s' ditetapkan kepada nilai yang tidak sah\n"
+
+#: ../src/prefs.c:1145
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Tak dapat menghantar huraian font \"%s\" daripada kekunci MateConf %s\n"
+
+#: ../src/prefs.c:1330
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+"%d yang disimpan pada kekunci MateConf %s adalah bilangan ruangkerja yang tak "
+"munasabah, maksimum semasa ialah %d\n"
+
+#: ../src/prefs.c:1390
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+
+#: ../src/prefs.c:1455
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr ""
+"%d yang disimpan pada kekunci MateConf %s adalah diluar julat 0 hingga %d\n"
+
+#: ../src/prefs.c:1589
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Ralat menetapkan bilangan ruangkerja ke %d: %s\n"
+
+#: ../src/prefs.c:1833
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+
+#: ../src/prefs.c:2187
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Ralat menetapkan nama bagi ruangkerja %d ke \"%s\": %s\n"
+
+#: ../src/resizepopup.c:126
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:408
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Skrin %d pada paparan '%s' adalah tidak sah\n"
+
+#: ../src/screen.c:424
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Skrin %d pada paparan \"%s\" sudah mempunyai pengurus tetingkap; cuba guna "
+"opsyen --replacei untuk menggantikan pengurus tetingkap semasa.\n"
+
+#: ../src/screen.c:448
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Tak dapat pemilihan pengurus tetingkap pada skrin %d di paparan \"%s\"\n"
+
+#: ../src/screen.c:506
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Skrin %d pada paparan \"%s\" sudah mempunyai pengurus tetingkap\n"
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Tak dapat melepaskan skrin %d pada paparan \"%s\"\n"
+
+#: ../src/session.c:884 ../src/session.c:891
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Tak dapat mencipta direktori %s: %s\n"
+
+#: ../src/session.c:901
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "tak dapat membuka fail sessi '%s' untuk ditulis: %s\n"
+
+#: ../src/session.c:1053
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Ralat ketika menulis fail sessi '%s': %s\n"
+
+#: ../src/session.c:1058
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Ralat menutup fail sessi '%s': %s\n"
+
+#: ../src/session.c:1133
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Gagal dapat baca fail sessi yang disimpan %s: %s\n"
+
+#: ../src/session.c:1168
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Gagal menghantar fail sessi yang disimpan: %s\n"
+
+#: ../src/session.c:1217
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "atribut <marco_session> dilihat tetapi kami sudah mempunya IS sessi"
+
+#: ../src/session.c:1230
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "Atirbut tidak dikenali %s pada unsur <marco_session>"
+
+#: ../src/session.c:1247
+msgid "nested <window> tag"
+msgstr "tag <window> bersarang"
+
+#: ../src/session.c:1305 ../src/session.c:1337
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Atribut tidak dikenali %s pada unsur <window>"
+
+#: ../src/session.c:1409
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Atribut tidak dikenali %s pada unsur <maximized>"
+
+#: ../src/session.c:1469
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Atirbut tidak dikenali %s pada unsur <geometry>"
+
+#: ../src/session.c:1489
+#, c-format
+msgid "Unknown element %s"
+msgstr "Unsur yang tidak dikenali %s"
+
+#: ../src/session.c:1961
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Ralat melancarkan marco-dialog untuk memberitahu mengenai apps yang tidak "
+"menyokong pengurusan sessi: %s\n"
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Baris %d aksara %d: %s"
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atribut \"%s\" berulang dua kali pada unsur <%s> yang sama"
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atribut \"%s\" adalah tidak sah pada unsur <%s> dalam konteks ini"
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Integer %ld mestilah positif"
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Integer %ld adalah terlalu besar, maksimum semasa ialah %d"
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr " Tak dapat hantar \"%s\" sebagai nombor titik apungan"
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Nilai Boolean mestikan \"benar\" atau \"palsu\" bukan \"%s\""
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Sudut mestilah diantara 0.0 dan 360.0, adalah %g\n"
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "Tiada atribut \"%s\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> nama \"%s\" digunakan kali kedua"
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> parent \"%s\" tidak ditakrifkan"
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometry \"%s\" tidak ditakrifkan"
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> mesti menyatakan geometri atau induk yang mempunyai geometri"
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Jenis tidak dikenali \"%s\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set tidak dikenali \"%s\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr "Fungsi \"%s\" tidak diketahui bagi ikon menu"
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr "Keadaan \"%s\" tidak diketahui bagi ikon menu"
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr "Tema sudah mempunyai ikon menu bagi fungsi %s keadaan %s"
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Tiada <draw_ops> dengan nama \"%s\" telah ditakrifkan"
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Unsur <%s> adalah tidak diizinkan dibawah <%s>"
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Tiada atribut \"name\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Tiada atribut \"value\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"Tak dapat menyatakan kedua-dua button_width/button_height dan nisbah aspek "
+"bagi butang"
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Jarak \"%s\" tidak diketahui"
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Nisbah aspek butang \"%s\" tidak diketahui"
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "Tiada atribut \"top\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "Tiada atribut \"bottom\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "Tiada atribut \"left\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "Tiada atribut \"right\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Sempadan \"%s\" tidak diketahui"
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "Tiada atribut \"color\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1662
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "Tiada atribut \"x1\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "Tiada atribut \"y1\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1676
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "Tiada atribut \"x2\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "Tiada atribut \"y2\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "Tiada atribut \"x\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "Tiada atribut \"y\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "Tiada atribut \"width\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "Tiada atribut \"height\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1903
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "Tiada atribut \"start_angle\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:1910
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "Tiada atribut \"extent_angle\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:2090
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "Tiada atribut \"alpha\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:2161
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "Tiada atribut \"type\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:2209
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Tak memahami nilai \"%s\" bagi jenis gradien"
+
+#: ../src/theme-parser.c:2294
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "Tiada atribut \"filename\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Tidak memahami jenis isi \"%s\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "Tiada atribut \"state\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "Tiada atribut \"shadow\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:2476
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "Tiada atribut \"arrow\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Tak memahami keadaan \"%s\" bagi unsur <%s>"
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Tak memahami bebayang \"%s\" bagi unsur <%s>"
+
+#: ../src/theme-parser.c:2549
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Tak memahami panah \"%s\" bagi unsur <%s>"
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Tiada <draw_ops> yg dipanggil \"%s\" telah ditakrifkan"
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Penyertaan draw_ops \"%s\" di sini akan mencipta rujukan bergelung"
+
+#: ../src/theme-parser.c:3153
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "Tiada atribut \"value\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:3210
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "Tiada atribut \"position\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:3219
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Posisi tidak diketahui \"%s\" bagi serpihan kerangka"
+
+#: ../src/theme-parser.c:3227
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3272
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "Tiada atribut \"function\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "Tiada atribut \"focus\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:3289
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Fungsi \"%s\" tidak diketahui bagi butang"
+
+#: ../src/theme-parser.c:3298
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Keadaan \"%s\" tidak diketahui bagi butang"
+
+#: ../src/theme-parser.c:3306
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3376
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "Tiada atribut \"focus\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:3392
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "Tiada atribut \"style\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:3401
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" adalah bukan nilai atribut fokus yang sah"
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" adalah bukan nilai sah bagi atribut keadaan"
+
+#: ../src/theme-parser.c:3420
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Gaya yang dipanggil \"%s\" tidak ditakrifkan"
+
+#: ../src/theme-parser.c:3430
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "Tiada atribut \"resize\" pada unsur <%s>"
+
+#: ../src/theme-parser.c:3440
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" adalah bukan nilai atribut ubahsaiz yang sah"
+
+#: ../src/theme-parser.c:3450
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Tak sepatutnya mempunyai atribut \"resize\" pada unsur <%s> untuk keadaan "
+"maksimum/gulung"
+
+#: ../src/theme-parser.c:3464
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Gaya telah dinyatakan bagi keadaan %s ubahsaiz %s fokus %s"
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Gaya telah dinyatakan bagi keadaan %s fokus %s"
+
+#: ../src/theme-parser.c:3536
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3574
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3612
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3659
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:3679
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Unsur <%s> tidak diizinkan di dalam unsur name/author/date/description"
+
+#: ../src/theme-parser.c:3684
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Unsur <%s> tidak diizinkan di dalam unsur <constant>"
+
+#: ../src/theme-parser.c:3696
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Unsur <%s> tak diizinkan di dalan unsur distance/border/aspect_ratio"
+
+#: ../src/theme-parser.c:3718
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Unsur <%s> tidak diizinkan di dalam unsur operasi lukisan"
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Unsur <%s> tidak diizinkan di dalam unsur <%s>"
+
+#: ../src/theme-parser.c:3984
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3999
+msgid "No draw_ops provided for button"
+msgstr "Tiada draw_ops dibekalkan untuk butang"
+
+#: ../src/theme-parser.c:4014
+msgid "No draw_ops provided for menu icon"
+msgstr "Tiada draw_ops dibekalkan bagi ikon menu"
+
+#: ../src/theme-parser.c:4054
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Teks tidak diizinkan di dalam unsur <%s>"
+
+#: ../src/theme-parser.c:4109
+msgid "<name> specified twice for this theme"
+msgstr "<nama> dinyatakan dua kali pada tema ini"
+
+#: ../src/theme-parser.c:4120
+msgid "<author> specified twice for this theme"
+msgstr "<author> dinyatakan dua kali pada tema ini"
+
+#: ../src/theme-parser.c:4131
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> dinyatakan dua kali pada tema ini"
+
+#: ../src/theme-parser.c:4142
+msgid "<date> specified twice for this theme"
+msgstr "<date> dinyatakan dua kali pada tema ini"
+
+#: ../src/theme-parser.c:4153
+msgid "<description> specified twice for this theme"
+msgstr "<description> dinyatakan dua kali pada tema ini"
+
+#: ../src/theme-parser.c:4348
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr "Gagal dapat baca tema dari fail %s: %s\n"
+
+#: ../src/theme-parser.c:4403
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Fail tema %s tak mengandungi unsur root <marco_theme>"
+
+#: ../src/theme-viewer.c:70
+msgid "/_Windows"
+msgstr "/_Tetingkap"
+
+#: ../src/theme-viewer.c:71
+msgid "/Windows/tearoff"
+msgstr "/Tetingkap/koyak"
+
+#: ../src/theme-viewer.c:72
+msgid "/Windows/_Dialog"
+msgstr "/Tetingkap/_Dialog"
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/_Modal dialog"
+msgstr "/Tetingkap/Dialog _modal"
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Utility"
+msgstr "/Tetingkap/_Utiliti"
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Top dock"
+msgstr "/Tetingkap/Dok _atas"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_All docks"
+msgstr "/Tetingkap/_Semua dok"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/Des_ktop"
+msgstr "/Tetingkap/Des_ktop"
+
+#: ../src/theme-viewer.c:131
+msgid "Open another one of these windows"
+msgstr "Buka lagi satu tetingkap ini"
+
+#: ../src/theme-viewer.c:138
+msgid "This is a demo button with an 'open' icon"
+msgstr "Ini adalah demo dengan butang 'buka'"
+
+#: ../src/theme-viewer.c:145
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Ini adalah demo dengan butang 'keluar'"
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Item menu palsu %d\n"
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "Tetingkap sempadan-sahaja"
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr "Bar"
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "Tetingkap Aplikasi Normal"
+
+#: ../src/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Kekotak Dialog"
+
+#: ../src/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "Kekotak Dialog Modal"
+
+#: ../src/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Palet Utiliti"
+
+#: ../src/theme-viewer.c:397
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/theme-viewer.c:402
+msgid "Border"
+msgstr "Sempadan"
+
+#: ../src/theme-viewer.c:731
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/theme-viewer.c:760
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/theme-viewer.c:803
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Penggunaan: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Ralat memuatkan tema: %s\n"
+
+#: ../src/theme-viewer.c:816
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tema \"%s\" dimuatkan dalam %g saat\n"
+
+#: ../src/theme-viewer.c:839
+msgid "Normal Title Font"
+msgstr "Font Tajuk Normal"
+
+#: ../src/theme-viewer.c:845
+msgid "Small Title Font"
+msgstr "Font Tajuk Kecil"
+
+#: ../src/theme-viewer.c:851
+msgid "Large Title Font"
+msgstr "Font Tajuk Besar"
+
+#: ../src/theme-viewer.c:856
+msgid "Button Layouts"
+msgstr "Susunatur Butang"
+
+#: ../src/theme-viewer.c:861
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/theme-viewer.c:908
+msgid "Window Title Goes Here"
+msgstr "Tajuk Tetingkap di sini"
+
+#: ../src/theme-viewer.c:1012
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:1227
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1229
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1233
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1241
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/theme-viewer.c:1245
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "nilai x adalah %d, %d dijangka"
+
+#: ../src/theme-viewer.c:1248
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1310
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "atas"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "bawah"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "kiri"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "kanan"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "geometri kerangka tidak menyatakan dimensi \"%s\" "
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Nisbah aspek butang %g adalah tidak masuk akal"
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Geometri kerangka tidak menyatakan saiz butang"
+
+#: ../src/theme.c:843
+msgid "Gradients should have at least two colors"
+msgstr "Gradien sepatutnya mempunyai sekurang-kurang dua warna"
+
+#: ../src/theme.c:969
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:983
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:994
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1007
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Tak memahami komponen warna \"%s\" pada spesifikasi warna"
+
+#: ../src/theme.c:1037
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+
+#: ../src/theme.c:1048
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/theme.c:1058
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/theme.c:1105
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/theme.c:1116
+#, fuzzy, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Tak dapat mencipta direktori %s: %s\n"
+
+#: ../src/theme.c:1126
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/theme.c:1155
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Tak dapat menghantar warna \"%s\""
+
+#: ../src/theme.c:1417
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Penyataan kordinat mengandungi aksara '%s' yang tidak diizinkan"
+
+#: ../src/theme.c:1444
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Penyataan koordinat mengandungi nombor titik apungan '%s' yang tak dpaat "
+"dihantar"
+
+#: ../src/theme.c:1458
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Penyataan kordinat mengandungi integer '%s' yang tak boleh dihantar"
+
+#: ../src/theme.c:1525
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "Ungkapan kordinat mengandungi operator pada permulaan teks ini: \"%s\""
+
+#: ../src/theme.c:1582
+msgid "Coordinate expression was empty or not understood"
+msgstr "Penyataan kordinat kosong dan tidak difahami"
+
+#: ../src/theme.c:1725 ../src/theme.c:1735 ../src/theme.c:1769
+msgid "Coordinate expression results in division by zero"
+msgstr "Penyataan kordinat dibahagi sifar"
+
+#: ../src/theme.c:1777
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Penyatana kordinat cuba menggunakan operator mod pada nombor titik apungan"
+
+#: ../src/theme.c:1834
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Ungkapan kordinat mempunyai operator \"%s\" dimana operand dijangka"
+
+#: ../src/theme.c:1843
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Penyataan kordinat mempunyai operand dimana operator diperlukan"
+
+#: ../src/theme.c:1851
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Penyataan kordinat ditamatkan dengan operator selain daripada operand"
+
+#: ../src/theme.c:1861
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Penyataan kordinat mempunyai operator \"%c\" selepas operator \"%c\" tanpa "
+"operand diantaranya"
+
+#: ../src/theme.c:1980
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr ""
+"Penghantar penyataan kordinat telah overflow buffernya, ini memang pepijat "
+"marco, tetapi anda pasti memerlukan penyataan yang besar sebegitu?"
+
+#: ../src/theme.c:2009
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Penyataan kordinat mempunyai penutup kurungan tanpa pembuka kurungan"
+
+#: ../src/theme.c:2072
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Ungkapan kordinat mempunyai pembolehubah atau pemalar tidak diketahui \"%s\""
+
+#: ../src/theme.c:2129
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "\"Penyataan kordinat mempunyai membuka kurungan tanpa penutup kurungan"
+
+#: ../src/theme.c:2140
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Penyataan kordinat tidak mempunyai operator atau operand"
+
+#: ../src/theme.c:2384 ../src/theme.c:2406 ../src/theme.c:2427
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "Tema mengandungi penyataan \"%s\" yang menyebabkan ralat: %s\n"
+
+#: ../src/theme.c:3913
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> mesti "
+"dinyatakan bagi gaya kerangka ini"
+
+#: ../src/theme.c:4363 ../src/theme.c:4395
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Kehilangan <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/"
+">"
+
+#: ../src/theme.c:4446
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Gagal memuatkan tema \"%s\": %s\n"
+
+#: ../src/theme.c:4592 ../src/theme.c:4599 ../src/theme.c:4606
+#: ../src/theme.c:4613 ../src/theme.c:4620
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Tiada <%s> ditetapkan untuk tema \"%s\""
+
+#: ../src/theme.c:4630
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/theme.c:4652
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> mesti "
+"dinyatakan bagi tema ini"
+
+#: ../src/theme.c:5041 ../src/theme.c:5103
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/theme.c:5049 ../src/theme.c:5111
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstans \"%s\" sudah ditakrifkan"
+
+#: ../src/util.c:93
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Gagal untuk membuka log nyahpepijat: %s\n"
+
+#: ../src/util.c:103
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Gagal untuk fdopen() fail log %sl: %s\n"
+
+#: ../src/util.c:109
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Fail log %s dibuka\n"
+
+#: ../src/util.c:203
+msgid "Window manager: "
+msgstr "pengurus tetingkap:"
+
+#: ../src/util.c:349
+msgid "Bug in window manager: "
+msgstr "Pepijat pada pengurus tetingkap: "
+
+#: ../src/util.c:378
+msgid "Window manager warning: "
+msgstr "Amaran pengurus tetingkap:"
+
+#: ../src/util.c:402
+msgid "Window manager error: "
+msgstr "Ralat pengurus tetingkap:"
+
+#: ../src/window-props.c:162
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %ld\n"
+msgstr ""
+
+#. first time through
+#: ../src/window.c:5205
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5876
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Tetingkap 0x%lx mempunyai ciri-ciri %s \n"
+"yang dijangka mempunyai jenis %s format %d\n"
+" dan sebenarnya mempunyai jenis %s format %d n_items %d\n"
+"Ianya mungkin pepijat aplikasi, bukan pengurus tetingkap.\n"
+"Tetingkap membunyai title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Ciri-ciri %s pada tetingkap 0x%lx mengandungi UTF-8 yang tidak sah\n"
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Ciri-ciri %s pada tetingkap 0x%lx mengandungi UTF-8 yang tidak sah bagi "
+"item %d pada senarai\n"
diff --git a/po/nb.po b/po/nb.po
new file mode 100644
index 00000000..b52d5dfe
--- /dev/null
+++ b/po/nb.po
@@ -0,0 +1,2325 @@
+# Norwegian (bokmål) translation of marco.
+# Copyright © 2002-2004 Free Software Foundation, Inc.
+# Kjartan Maraas <[email protected]>, 2002-2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco 2.31.x\n"
+"Report-Msgid-Bugs-To:\n"
+"POT-Creation-Date: 2010-06-20 11:42+0200\n"
+"PO-Revision-Date: 2010-06-20 11:45+0200\n"
+"Last-Translator: Kjartan Maraas <[email protected]>\n"
+"Language-Team: Norwegian bokmål <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Skrivebord"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Håndtering av vinduer"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Klokkehendelse"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Ukjent forespørsel om vindusinformasjon: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> svarer ikke."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Du kan velge å vente en kort stund for å se om det fortsetter eller tvinge "
+"programmet til å avslutte helt."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Vent"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Tvungen nedstenging"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Feil under henting av vertsnavn: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Mangler utvidelsen %s som kreves for komposittfunksjon"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Feil under åpning av X Window System skjerm «%s»\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Mistet forbindelsen til skjerm «%s»;\n"
+"sannsynligvis ble X-tjeneren stengt ned eller kanskje du drepte/ødela\n"
+"vinduhåndtereren.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Fatal IU-feil %d (%s) på skjerm «%s».\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Et annet program bruker allerede nøkkelen %s med modifikatorer %x som "
+"binding\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Det oppsto en feil under kjøring av <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Ingen kommando %d er definert\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Ingen terminalkommando er definert\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Opphavsrett © 2001-%s Havoc Pennington, Red Hat., Inc, og andre.\n"
+"Dette er fri programvare; se i kildekoden for kopibetingelser.\n"
+"Det gis INGEN garanti ikke engang for SALGBARHET eller EGNETHET FOR ET "
+"SPESIFIKT FORMÅL.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Deaktiver tilkobling til sesjonshåndtereren"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Erstatt kjørende vindushåndterer med Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Oppgi sesjonshåndterings-ID"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X-skjerm som skal brukes"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Initier sesjonen fra en lagret fil"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Skriv versjonsnummer"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Gjør X-kall synkrone"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Slå på «compositing»"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Slå av «compositing»"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Ikke vis vinduer som er maksimert og ikke har dekorasjoner i fullskjermmodus"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Feil under søk i temakatalog: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Kunne ikke finne et tema! Sjekk at %s eksisterer og inneholder de vanlige "
+"temaene.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Feil under omstart: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf-nøkkel «%s» er satt til en ugyldig verdi\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d lagret i MateConf-nøkkel %s er utenfor område %d til %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf-nøkkel «%s» er satt til en ugyldig type\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Funksjonalitet for å gå rundt ødelagte programmer er deaktivert. Noen "
+"programmer vil kanskje ikke oppføre seg korrekt.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Kunne ikke tolke skriftbeskrivelsen «%s» fra MateConf-nøkkel %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"«%s» funnet i konfigurasjonsdatabasen er ikke en gyldig verdi for endring av "
+"musknapp\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Feil under spesifisering av antall arbeidsområder til %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Arbeidsområde %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"«%s» funnet i konfigurasjonsdatabasen er ikke en gyldig verdi for "
+"tastaturbinding «%s»\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Feil under setting av navn på arbeidsområde %d til «%s»: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Feil under setting av status for compositor: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Skjerm %d på display «%s» er ugyldig\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Skjerm %d på display «%s» har allerede en vindushåndterer; prøv å bruke "
+"flagget --replace for å erstatte aktiv vindushåndterer.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Kunne ikke hente utvalg fra vinduhåndterer på skjerm %d, display «%s»\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Skjerm %d på display «%s» har allerede en vinduhåndterer\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Kunne ikke slippe skjerm %d på display «%s»\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Formatet ser slik ut: «<Control>a» eller «<Shift><Alt>F1». Tolkeren er ganske "
+"liberal og tillater små og store bokstaver, i tillegg til forkortelser som "
+"«<Ctl>» og «<Ctrl>». Hvis du setter alternativet til den spesielle strengen "
+"«disabled», vil det ikke være en tastebinding for denne handlingen."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Formatet ser slik ut: «<Control>a» eller «<Shift><Alt>F1». Tolkeren er ganske "
+"liberal og tillater små og store bokstaver, i tillegg til forkortelser som "
+"«<Ctl>» og «<Ctrl>». Hvis du setter alternativet til den spesielle strengen "
+"«disabled», vil det ikke være en tastebinding for denne handlingen.\n"
+"\n"
+"Denne tastaturbindingen kan reverseres ved å holde nede «shift»-tasten; "
+"derfor kan ikke «shift» være en av tastene som brukes."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Kunne ikke opprette katalog «%s»: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Kunne ikke åpne sesjonsfil «%s» for skriving: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Feil under skriving av sesjonsfil «%s»: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Feil under lukking av sesjonsfil «%s»: %s\n"
+
+#: ../src/core/session.c:1143
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Feil under tolking av lagret sesjonsfil: %s\n"
+
+#: ../src/core/session.c:1192
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session>-attributt sett men vi har allerede sesjons-ID"
+
+#: ../src/core/session.c:1205 ../src/core/session.c:1280
+#: ../src/core/session.c:1312 ../src/core/session.c:1384
+#: ../src/core/session.c:1444
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Ukjent attributt %s på <%s>-element"
+
+#: ../src/core/session.c:1222
+#, c-format
+msgid "nested <window> tag"
+msgstr "<window> tag med flere nivåer"
+
+#: ../src/core/session.c:1464
+#, c-format
+msgid "Unknown element %s"
+msgstr "Ukjent element %s"
+
+#: ../src/core/session.c:1816
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Disse vinduene støtter ikke &quot;lagre aktiv konfigurasjon&quot; og vil "
+"måtte startes på nytt manuelt neste gang du logger inn."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Feil under åpning av feilsøkingslogg: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Feil under fdopen() av loggfil %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Åpnet loggfil %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco er kompilert uten støtte for «verbose» modus\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Vindushåndterer: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Feil i vindushåndterer: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Advarsel fra vindushåndterer: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Feil i vindushåndterer: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5660
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Vindu %s setter SM_CLIENT_ID på seg selv i steden for på WM_CLIENT_LEADER-"
+"vinduet som spesifisert i ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6225
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Vindu %s setter et MWM-hint som indikerer at det ikke kan endre størrelse, "
+"men setter minste størrelse %d x %d og maks størrelse %d x %d; dette virker "
+"ikke fornuftig.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Programmet satte en feil _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (på %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (som superbruker)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (som %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (som en annen bruker)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Ugyldig WM_TRANSIENT_FOR vindu 0x%lx oppgitt for %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Vindu 0x%lx har egenskap %s\n"
+"som var forventet å ha type %s format %d\n"
+"og faktisk har type %s format %d n_items %d.\n"
+"Dette er mest sannsynlig en feil i programmet, ikke vindushåndtereren.\n"
+"Vinduet har title=«%s» class=«%s» name=«%s»\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Egenskap %s på vindu 0x%lx inneholdt ugyldig UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Egenskap %s på vindu 0x%lx inneholdt ugyldig UTF-8 for oppføring %d i "
+"listen\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Bytt til arbeidsområde 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Bytt til arbeidsområde 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Bytt til arbeidsområde 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Bytt til arbeidsområde 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Bytt til arbeidsområde 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Bytt til arbeidsområde 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Bytt til arbeidsområde 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Bytt til arbeidsområde 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Bytt til arbeidsområde 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Bytt til arbeidsområde 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Bytt til arbeidsområde 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Bytt til arbeidsområde 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Bytt til arbeidsområdet til venstre for aktivt arbeidsområde"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Bytt til arbeidsområdet til høyre for aktivt arbeidsområde"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Bytt til arbeidsområdet over aktivt arbeidsområde"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Bytt til arbeidsområdet under aktivt arbeidsområde"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Bla gjennom vinduene i et program med et oppsprettvindu"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Bla gjennom vinduer fra et program bakover med oppsprettvindu"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Bytt mellom vinduer med en dialog"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Bytt fokus baklengs mellom vinduer med dialog"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Bla gjennom paneler og skrivebordet med dialog"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Bla bakover gjennom paneler og skrivebordet med bruk av dialog"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Bla gjennom et programs vinduer med en gang"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Bla bakover gjennom et programs vinduer med en gang"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Flytt fokus mellom vinduer med en gang"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Bla bakover gjennom vinduer med en gang"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Bla gjennom paneler og skrivebordet med en gang"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Bla bakover gjennom paneler og skrivebordet med en gang"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Skjul alle vinduer og sett fokus til skrivebordet"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Vis hovedmenyen for panelet"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Vis panelets «Kjør program»-dialog"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Ta et skjermdump"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Ta et skjermdump av et vindu"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Kjør en terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Aktiver vindumenyen"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Slå av/på fullskjermmodus"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Endre tilstand for maksimering"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Slå av/på om vinduet skal vises over alle andre vinduer"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maksimer vindu"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Gjenopprett vindu"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Endre tilstand for skyggelegging"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimer vindu"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Lukk vindu"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Flytt vindu"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Endre størrelse på vindu"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Slå av/på om vinduet skal vises på alle arbeidsområder eller bare ett"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Flytt vindu til arbeidsområde 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Flytt vindu til arbeidsområde 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Flytt vindu til arbeidsområde 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Flytt vindu til arbeidsområde 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Flytt vindu til arbeidsområde 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Flytt vindu til arbeidsområde 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Flytt vindu til arbeidsområde 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Flytt vindu til arbeidsområde 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Flytt vindu til arbeidsområde 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Flytt vindu til arbeidsområde 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Flytt vindu til arbeidsområde 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Flytt vindu til arbeidsområde 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Flytt vindu et arbeidsområde til venstre"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Flytt vindu ett arbeidsområde til høyre"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Flytt vindu ett arbeidsområde opp"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Flytt vindu ett arbeidsområde ned"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Hev vindu hvis skjult av et annet vindu, senk det ellers"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Hev vinduet over andre vinduer"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Senk vinduet under andre vinduer"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maksimer vinduet vertikalt"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maksimer vinduet horisontalt"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Flytt vindu til nord-vestlig hjørne (øverst til venstre)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Flytt vindu til nord-østlig hjørne (øverst til høyre)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Flytt vindu til syd-østlig hjørne (nederst til venstre)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Flytt vindu til syd-østlig hjørne (nederst til høyre)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Flytt vindu til nordsiden av skjermen (øverst)"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Flytt vindu til sydsiden av skjermen (nederst)"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Flytt vindu til østsiden av skjermen (høyre)"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Flytt vindu til vestsiden av skjermen (venstre)"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Flytt vindu til midten av skjermen"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Ikke implementert) Navigering fungerer med hensyn på programmer, ikke "
+"vinduer"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"En streng som beskriver en skrift for vinduers tittellinje. Størrelsen fra "
+"beskrivelsen vil kun brukes hvis alternativet titlebar_font_size settes til "
+"0. I tillegg vil dette alternativet deaktiveres hvis alternativet "
+"titlebar_uses_desktop_font settes til «true»."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Handling ved dobbeltklikk på tittellinjen"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Handling ved klikk med midtre musknapp på tittellinjen"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Handling ved høyreklikk på tittellinjen"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Plassering av knappene på tittellinjen"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Plassering av knapper på tittellinjen. Verdien skal være en streng av type "
+"«menu:minimize,maximize,spacer,close»; kolon skiller venstre hjørne av "
+"vinduet fra høyre hjørne, og knappenavnene skilles av komma. Duplisering av "
+"knapper er ikke lovlig. Ukjente knapper ignoreres uten tilbakemelding slik "
+"at knapper kan legges til i fremtidige versjoner uten å ødelegge for eldre "
+"versjoner. En tagg for mellomrom kan brukes for å sette inn mellomrom mellom "
+"to knapper."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Hever fokuser vindu automatisk"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr "Klikk på et vindu mens denne endringstasten holdes nede vil flytte vinduet (venstreklikk), endre størrelse på vinduet (klikk med midterste knapp) eller vise vindusmenyen (høyreklikk). Klikk med midtre og høyre knapp kan byttes om ved å bruke nøkkelen «resize_with_right_button\". Endringstasten uttrykkes som for eksempel «&lt;Alt&gt;» eller «&lt;Super&gt;»."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Kommandoer som skal kjøres som svar på tastaturbindinger"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Håntering av «compositing»"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Kontroller hvordan nye vinduer får fokus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Aktivt tema"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Pause i millisekunder for alternativet autoheving"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Bestemmer om Marco skal håndtere «compositing»"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Bestemmer om systemet og programmer kan generere hørbare «pip». Kan brukes "
+"sammen med «synlig klokke» for å tillate still «pip»."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Slår av funksjoner som kreves av gamle eller ødelagte programmer"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Aktiver synlig klokke"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Hvis denne settes til «true» og fokusmodus er enten «sloppy» eller «mouse» så "
+"vil vindu med fokus automatisk heves etter et pause oppgitt i nøkkelen "
+"auto_raise_delay. Dette er ikke relatert til heving av vinduet ved å klikke "
+"på det og heller ikke til å gå inn i et vindu ved en dra-og-slipp operasjon."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Hvis denne settes vil «titlebar_font» ignoreres og forvalgt skrift vil brukes "
+"for vindustitler."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Hvis denne er sann vil marco gi bruker mindre informasjon og inntrykk av "
+"«direkte manipulasjon», ved å vise kun ramme ved flytting og å unngå "
+"animasjoner. Dette er en betydelig reduksjon i brukervennlighet for mange "
+"brukere, men kan la eldre programmer og termialtjenere fungere på en bedre "
+"måte.Denne funksjonen vil deaktiveres hvis hjelpefunksjoner for "
+"tilgjengelighet aktiveres."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Hvis denne settes til sann vil Marco forholde seg til programmer i stedet "
+"for vinduer. Konseptet er litt abstrakt, men i praksis er programbasert "
+"oppsett mer likt Mac, og mindre likt Windows. Når du fokuserer et vindu i "
+"programbasert modus vil alle vinduer i programmet heves. I tillegg vil ikke "
+"fokusklikk sendes gjennom til vinduer i andre programmer i programbasert "
+"modus. Programbasert modus er i stor grad ikke implementert ennå."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Hvis sann, prioriter ressursbruk fremfor brukervennlighet"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Endringstast som skal brukes for modifiserte handlinger ved klikk i vinduet"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Navn på arbeidsområde"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Antall arbeidsområder"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Antall arbeidsområder. Må være større enn null og har et fast maksimum for å "
+"hindre at noen ødelegger skrivebordet ved å be om for mange arbeidsområder "
+"ved en feiltagelse."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Kjør en definert kommando"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Noen programmer overser spesifikasjoner på måter som resulterer i problemer "
+"i vindushåndtereren. Dette alternativet setter Marco i strengt korrekt "
+"modus som vil gi et mer konsist brukergrensesnitt gitt at man ikke må kjøre "
+"programmer som oppfører seg på feil måte."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Systembjellen er hørbar"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Forteller Marco hvordan synlig tilbakemelding på at systempip eller andre "
+"programspesifikke pip har vært aktivert. Det er to gyldige verdier; "
+"«fullscreen» som forårsaker et sort/hvitt blink over hele skjermen, og "
+"«frame_flash», som forårsaker at tittellinjen i programmet som sendte pipet "
+"blinker. Hvis programmet som sendte pipet er ukjent (hvilket er tilfelle for "
+"forvalgt «systempip») vil tittellinjen i fokusert vindu blinke."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Nøklene /apps/marco/global_keybindings/run_command_N definerer "
+"tastaturbindinger som korresponderer til disse kommandoene. Aktivering av "
+"tastaturbinding for run_command_N vil utføre kommando_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Nøkkelen /apps/marco/global_keybindings/run_command_screenshot definerer "
+"en tataturbinding som medfører at kommandoen som oppgis av denne "
+"innstillingen kjøres."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Nøkkelen /apps/marco/global_keybindings/run_command_window_screenshot "
+"definerer en tastaturbinding som medfører at kommandoen som oppgis av denne "
+"innstillingen kjøres."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Tastebindingen for kjøring av en korresponderende kommando i /apps/marco/"
+"keybinding_commands. Formatet ser slik ut: «&lt;Control&gt;a» eller «&lt;"
+"Shift&gt;&lt;Alt&gt;F1.». Tolkeren er ganske liberal og tillater små og "
+"store bokstaver, i tillegg til forkortelser som «&lt;Ctl&gt;» og «&lt;"
+"Ctrl&gt;». Hvis du setter alternativet til den spesielle strengen «disabled», "
+"vil det ikke være en tastebinding for denne handlingen."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Navnet på et arbeidsområde."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Skjermdumpkommando"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Tema bestemmer utseende for vinduskanter, tittellinje osv."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Pause før et vindu heves hvis auto_raise er satt. Pausen er gitt i "
+"tusendelsekunder."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Fokusmodus for vindu indikerer hvordan vinduer aktiveres. Denne har tre "
+"mulige verdier; «click» betyr at vinduer må klikkes for å fokusere dem, "
+"«sloppy» betyr at vinduer fokuseres når muspekeren er over vinduet, og «mus» "
+"betyr at vinduer fokuseres når muspekeren er over vinduet og at fokus "
+"fjernes når muspekeren forlater vinduet."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Kommando for skjermdump av vindu"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Dette alternativet bestemmer effekten av dobbeltklikk på tittellinjen. "
+"Gyldige alternativer er «toggle_shade», hvilket vil rulle ned/opp vinduet, "
+"«toggle_maximizes» som vil maksimere/gjenopprette vinduet, "
+"«toggle_maximize_horisontally» som vil maksimere vinduet i horisontal "
+"retning, «toggle_maximize_vertically» som vil maksimere/gjenopprette vinduet "
+"i vertikal retning, «toggle_minimize», som vil minimere vinduet, «shade» som "
+"vil rulle vinduet opp, «menu» som vil vise vindusmenyen, «lower» som vil "
+"plassere vinduet bak alle andre og «none» som ikke gjør noen ting."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Dette alternativet bestemmer effekten av klikk med midterste musknapp på "
+"tittellinjen. Gyldige alternativer er «toggle_shade», hvilket vil rulle ned/"
+"opp vinduet, «toggle_maximizes» som vil maksimere/gjenopprette vinduet, "
+"«toggle_maximize_horisontally» som vil maksimere vinduet i horisontal "
+"retning, «toggle_maximize_vertically» som vil maksimere/gjenopprette vinduet "
+"i vertikal retning, «toggle_minimize», som vil minimere vinduet, «shade» som "
+"vil rulle vinduet opp, «menu» som vil vise vindusmenyen, «lower» som vil "
+"plassere vinduet bak alle andre og «none» som ikke gjør noen ting."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Dette alternativet bestemmer effekten av høyreklikk på tittellinjen. Gyldige "
+"alternativer er «toggle_shade», hvilket vil rulle ned/opp vinduet, "
+"«toggle_maximizes» som vil maksimere/gjenopprette vinduet, "
+"«toggle_maximize_horisontally» som vil maksimere vinduet i horisontal "
+"retning, «toggle_maximize_vertically» som vil maksimere/gjenopprette vinduet "
+"i vertikal retning, «minimize», som vil minimere vinduet, «shade» som vil "
+"rulle vinduet opp, «menu» som vil vise vindusmenyen, «lower» som vil plassere "
+"vinduet bak alle andre og «none» som ikke gjør noen ting."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Dette alternativet gir ekstra kontroll over hvordan nylig opprettede vinduer "
+"får fokus. Det har to mulige verdier; «smart» benytter brukers normale "
+"fokusmodus, og «strict» som fører til at vinduer som startes fra en terminal "
+"ikke får fokus."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Aktiverer en synlig indikator når et program eller systemet lager et pip; "
+"nyttig for hørselsskadde og for bruk i støyende miljøer."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Bruk forvalgt systemskrift i vinsutitler"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Type synlig klokke"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Om heving skal være en sideeffekt av andre handlinger brukeren utfører"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Om man kan endre størrelse med høyre knapp"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Fokuseringsmodus for vindu"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Skrift for vindutittel"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr " Bruk: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Lukk vindu"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Vindumeny"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimer vindu"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maksimer vindu"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Gjenopprett vindu"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Rull opp vindu"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Rull ned vindu"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Plasser vindu i forgrunnen"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Fjern vindu fra forgrunnen"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Alltid på synlig arbeidsområde"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Plasser vindu kun på ett arbeidsområde"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimer"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ksimer"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "G_jenopprett"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Rull _opp"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "R_ull ned"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Flytt"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "End_re størrelse"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Flytt tittellinje på _skjermen"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "All_tid øverst"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Alltid på synlig arbeidsområde"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "K_un på dette arbeidsområdet"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Flytt til arbeidsområdet ti_l venstre"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Flytt til a_rbeidsområdet til høyre"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Flytt til arbeidsområdet _over"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Flytt til arbeidsområdet ne_denfor"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Lukk"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Arbeidsområde %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Arbeidsområde 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Arbeidsområde %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Flytt til et annet ar_beidsområde"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "topp"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "bunn"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "venstre"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "høyre"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "rammegeometrien spesifiserer ikke «%s»-dimensjon"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "rammegeometri spesifiserer ikke dimensjon «%s» for kant «%s»"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Aspektrate %g for knapp er ikke fornuftig"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Rammegeometrien spesifiserer ikke størrelse på knapper"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Gradienter må ha minst to farger"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-fargespesifikasjon må ha tilstand i klammer, f.eks. gtk:fg[NORMAL], hvor "
+"NORMAL er tilstanden; kunne ikke lese «%s»"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-fargespesifikasjon må ha en avsluttende klamme etter tilstanden, f.eks. "
+"gtk:fg[NORMAL], hvor NORMAL er tilstanden; kunne ikke lese «%s»"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Forsto ikke tilstand «%s» i fargespesifikasjonen"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Forsto ikke fargekomponent «%s» i fargespesifikasjonen"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Blandingsformat er «blend/bg_color/fg_color/alpha», «%s» passer ikke i formatet"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Kunne ikke lese alpha-verdi «%s» i blandet farge"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alpha-verdi «%s» i blandet farge er ikke mellom 0.0 og 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Skyggeformatet er «shade/base_color/factor», «%s» passer ikke i formatet"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Kunne ikke lese skyggefaktor «%s» i skyggelagt farge"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Skyggefaktor «%s» i skyggelagt farge er negativ"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Kunne ikke lese farge «%s»"
+
+#: ../src/ui/theme.c:1586
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Koordinatuttrykk inneholder tegn «%s» som ikke er tillatt"
+
+#: ../src/ui/theme.c:1613
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "Koordinatuttrykk inneholder flyttall «%s» som ikke kunne tolkes"
+
+#: ../src/ui/theme.c:1627
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Koordinatuttrykk inneholder heltall «%s» som ikke kunne tolkes"
+
+#: ../src/ui/theme.c:1749
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Koordinatuttrykket inneholdt en ukjent operator ved begynnelsen av denne "
+"teksten: «%s»"
+
+#: ../src/ui/theme.c:1806
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Koordinatuttrykket var tomt eller ble ikke forstått"
+
+#: ../src/ui/theme.c:1917 ../src/ui/theme.c:1927 ../src/ui/theme.c:1961
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Koordinatuttrykket resulterer i divisjon med null"
+
+#: ../src/ui/theme.c:1969
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "Koordinatuttrykket prøver å bruke mod-operator på et flyttall"
+
+#: ../src/ui/theme.c:2025
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Koordinatuttrykket har en operator «%s» hvor en operand var ventet"
+
+#: ../src/ui/theme.c:2034
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Koordinatuttrykket hadde en operand hvor en operator var ventet"
+
+#: ../src/ui/theme.c:2042
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Koordinatuttrykket sluttet med en operator i stedet for en operand"
+
+#: ../src/ui/theme.c:2052
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Koordinatuttrykket har en operator «%c» etter en operator «%c» og ingen "
+"operand mellom dem."
+
+#: ../src/ui/theme.c:2199 ../src/ui/theme.c:2240
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Koordinatuttrykket haddeen ukjent variabel eller konstant «%s»"
+
+#: ../src/ui/theme.c:2294
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Tolkeren for koordinatuttrykk oversteg buffergrensen."
+
+#: ../src/ui/theme.c:2323
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Koordinatuttrykket hadde en parantes slutt uten parantes start"
+
+#: ../src/ui/theme.c:2387
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Koordinatuttrykket hadde en åpen parantes uten en avsluttende parantes"
+
+#: ../src/ui/theme.c:2398
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"Koordinatuttrykket ser ikke ut til å ha noen operatorer eller operander"
+
+#: ../src/ui/theme.c:2602 ../src/ui/theme.c:2622 ../src/ui/theme.c:2642
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Tema inneholdt et uttrykk som resulterte i en feil: %s\n"
+
+#: ../src/ui/theme.c:4209
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=«%s» state=«%s» draw_ops=«ett-eller-annet»/> må spesifiseres "
+"for denne rammestilen"
+
+#: ../src/ui/theme.c:4717 ../src/ui/theme.c:4742
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "Mangler <frame state=«%s» resize=«%s» focus=«%s» stil=«ett-eller-annet»/>"
+
+#: ../src/ui/theme.c:4786
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Klarte ikke å laste tema «%s»: %s\n"
+
+#: ../src/ui/theme.c:4916 ../src/ui/theme.c:4923 ../src/ui/theme.c:4930
+#: ../src/ui/theme.c:4937 ../src/ui/theme.c:4944
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "<%s> er ikke satt for tema «%s»"
+
+#: ../src/ui/theme.c:4952
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Ingen rammestil satt for vindutype «%s» i tema «%s», legg til et <window type=«%"
+"s» style_set=«ett-eller-annet»/>-element"
+
+#: ../src/ui/theme.c:5395 ../src/ui/theme.c:5457 ../src/ui/theme.c:5520
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Brukerdefinerte konstanter må begynne med stor bokstav; «%s» gjør ikke det"
+
+#: ../src/ui/theme.c:5403 ../src/ui/theme.c:5465 ../src/ui/theme.c:5528
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstant «%s» er allerede definert"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Ingen «%s»-attributt på element <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Linje %d tegn %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Attributt «%s» gjentatt to ganger på samme <%s>-element"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Attributt «%s» er ugyldig på <%s>-element i denne konteksten"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Kunne ikke lese «%s» som et heltall"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Forsto ikke etterslepende tegn «%s» i streng «%s»"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Heltall %ld må være positivt"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Heltall %ld er for stort, maksimalverdien er %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Kunne ikke lese «%s» som et flyttall"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Bolske verdier må være «sann» eller «usann» ikke «%s»"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Vinkelen må være mellom 0.0 og 360.0, var %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alpha må være mellom 0.0 (usynlig) og 1.0 (helt ugjennomsiktig), var %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Ugyldig skalering av tittel «%s» (må være en av xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> navn «%s» brukt på nytt"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> opphav «%s» er ikke definert"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometri «%s» er ikke definert"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> må spesifisere enten en geometri eller et opphav som har geometri"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Du må oppgi en bakgrunn for at en alpha-verdi skal ha mening"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Ukjent type «%s» på <%s>-element"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Ukjent style_set «%s» på <%s>-element"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Vindutype «%s» er allerede tildelt et stilsett"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> er ikke tillatt under <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Kan ikke oppgi både «button_width»/«button_height» og «aspect_ratio» for knapper"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Avstand «%s» er ukjent"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Aspektrate «%s» er ukjent"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Grense «%s» er ukjent"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Ingen «start_angle» eller «from»-attributt på element <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Ingen «extent_angle» eller «to»-attributt <%s>-element"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Forsto ikke verdi «%s» for gradienttype"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Forsto ikke fyll-type «%s» for <%s>-element"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Forsto ikke tilstand «%s» for element <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Forsto ikke skygge «%s» for element <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Forsto ikke pil «%s» for element <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Ingen <draw_ops> kalt «%s» er definert"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Hvis du tar med draw_ops «%s» her vil dette lage en sirkulær referanse"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Ukjent posisjon «%s» for rammesdel"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Rammestil har allerede en del i posisjon %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Ingen <draw_ops> med navn «%s» er definert"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Ukjent funksjon «%s» for knapp"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Knappefunksjon «%s» eksisterer ikke i denne versjonen (%d, trenger %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Ukjent tilstand «%s» for knapp"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Rammestil har allerede en knapp for funksjon %s tilstand %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "«%s» er ikke en gyldig verdi for fokusattributt"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "«%s» er ikke en gyldig verdi for tilstandsattributt"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "En stil med navn «%s» er ikke definert"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "«%s» er ikke en gyldig verdi for attributt for endring av størrelse"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Skal ikke være noen «resize»-attributt på <%s>-element for maksimert/"
+"skyggelagt tilstand"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Skal ikke være noen «resize»-attributt på <%s>-element for maksimert tilstand"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Stil er allerede spesifisert for tilstand %s størrelsesendring %s fokus %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stil er allerede spesifisert for tilstand %s fokus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan ikke ha to draw_ops for et <piece>-element (tema spesifiserte en "
+"draw_ops-attributt i tillegg til et <draw_ops>-element, eller så "
+"spesifiserte det to elementer)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan ikke ha to draw_ops for et <button>-element (tema spesifiserte en "
+"draw_ops-attributt i tillegg til et <draw_ops>-element, eller det "
+"spesifiserte to elementer)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan ikke ha to draw_ops for et <menu_icon>-element (tema spesifiserte en "
+"draw_ops-attributt i tillegg til et <draw_ops>-element, eller det "
+"spesifiserte to elementer)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Ytterste element i temaet må være <marco_theme> ikke <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Element <%s> er ikke tillatt inne i et name/author/date/description element"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> er ikke tillatt inne i et <constand> element"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Element <%s> er ikke tillatt inne i et avstand/kant/aspektrate-element"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Element <%s> er ikke tillatt inne i et element for tegneoperasjon"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> er ikke tillatt inne i et <%s>-element"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Ingen draw_ops tilbys for rammedelen"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Ingen draw_ops tilbys for knappen"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Ingen tekst er tillatt inne i element <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> oppgitt to ganger for dette temaet"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Fant ikke en gyldig fil for tema %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Temafil %s inneholdt ikke et rotelement <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Vinduer"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Vinduer/avriving"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Vinduer/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Vinduer/_Modal dialog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Vinduer/_Verktøy"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Vinduer/Opp_startskjerm"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Vinduer/_Toppdokk"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Vinduer/_Bunndokk"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Vinduer/_Venstre dokk"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Vinduer/Høy_re dokk"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Vinduer/_Alle dokker"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Vinduer/S_krivebord"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Dette er en eksempelbeskjed i en eksempeldialog"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Falsk menyoppføring %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Vindu uten innhold"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Linje"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normalt programvindu"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialogboks"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modal dialogboks"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Verktøypalett"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Avrevet meny"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Kant"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test av knappeplassering %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g millisekunder for å tegne en vindusramme"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Bruk: marco-theme-viewer [TEMANAVN]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Feil under lasting av tema: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Lastet tema «%s» på %g sekunder\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Normal tittelskrift"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Liten tittelskrift"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Stor tittelskrift"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Knappeplasseringer"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Ytelsestest"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Vindutittel skal her"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Tegnet %d rammer på %g sekunder hos klienten (%g millisekunder per ramme) og "
+"%g sekunder på klokken inklusive ressurser på X-tjener (%g millisekunder per "
+"ramme)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "test av posisjonsuttrykk returnerte TRUE, men satte en feilkode"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "test av posisjonsuttrykk returnerte FALSE, men satte ikke en feilkode"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Feil var ventet men ingen ble gitt"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Feil %d var ventet men %d ble gitt"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Feil ikke ventet men en ble returnert: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x-verdi var %d, %d var ventet"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y-verdi var %d, %d var ventet"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d koordinatuttrykk lest på %g sekunder (%g sekunder i snitt)\n"
diff --git a/po/nds.po b/po/nds.po
new file mode 100644
index 00000000..d3401df8
--- /dev/null
+++ b/po/nds.po
@@ -0,0 +1,2002 @@
+# Low German translation for marco.
+# Copyright (C) 2010 marco's COPYRIGHT HOLDER
+# This file is distributed under the same license as the marco package.
+# Nils-Christoph Fiedler <[email protected]>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco master\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2010-05-08 21:39+0000\n"
+"PO-Revision-Date: 2010-05-09 17:17+0100\n"
+"Last-Translator: Nils-Christoph Fiedler <[email protected]>\n"
+"Language-Team: Low German <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Schrievdisk"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Finsteroppassen"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Glockenereegnis"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr ""
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> antert nich"
+
+#: ../src/core/delete.c:101
+msgid "You may choose to wait a short while for it to continue or force the application to quit entirely."
+msgstr ""
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Töven"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Sluten ertwingen"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr ""
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr ""
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr ""
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr ""
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid "Some other program is already using the key %s with modifiers %x as a binding\n"
+msgstr ""
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr ""
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr ""
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
+msgstr ""
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X Billschirm bruken"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Druckverschoon"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr ""
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr ""
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr ""
+
+#: ../src/core/main.c:322
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr ""
+
+#: ../src/core/main.c:544
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr ""
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508
+#: ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr ""
+
+#: ../src/core/prefs.c:589
+#: ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+
+#: ../src/core/prefs.c:633
+#: ../src/core/prefs.c:710
+#: ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822
+#: ../src/core/prefs.c:1115
+#: ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148
+#: ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1234
+msgid "Workarounds for broken applications disabled. Some applications may not behave properly.\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for mouse button modifier\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:1953
+#: ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Schrievdisk %d"
+
+#: ../src/core/prefs.c:1983
+#: ../src/core/prefs.c:2161
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for keybinding \"%s\"\n"
+msgstr ""
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr ""
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr ""
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager; try using the --replace option to replace the current window manager.\n"
+msgstr ""
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr ""
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+
+#: ../src/core/session.c:850
+#: ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr ""
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1143
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr ""
+
+#: ../src/core/session.c:1192
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/core/session.c:1205
+#: ../src/core/session.c:1280
+#: ../src/core/session.c:1312
+#: ../src/core/session.c:1384
+#: ../src/core/session.c:1444
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr ""
+
+#: ../src/core/session.c:1222
+#, c-format
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/core/session.c:1464
+#, c-format
+msgid "Unknown element %s"
+msgstr "Unbekanntes Element %s"
+
+#: ../src/core/session.c:1816
+msgid "These windows do not support &quot;save current setup&quot; and will have to be restarted manually next time you log in."
+msgstr ""
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr ""
+
+#: ../src/core/util.c:136
+#: ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Finsteroppasser:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr ""
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr ""
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr ""
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570
+#: ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5660
+#, c-format
+msgid "Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6225
+#, c-format
+msgid "Window %s sets an MWM hint indicating it isn't resizable, but sets min size %d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr ""
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (op %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (as Superbruker)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (as %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (as annerer Bruker)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Nah Schrievdisk 1 wesseln"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Nah Schrievdisk 2 wesseln"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Nah Schrievdisk 3 wesseln"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Nah Schrievdisk 4 wesseln"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Nah Schrievdisk 5 wesseln"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Nah Schrievdisk 6 wesseln"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Nah Schrievdisk 7 wesseln"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Nah Schrievdisk 8 wesseln"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Nah Schrievdisk 9 wesseln"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Nah Schrievdisk 10 wesseln"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Nah Schrievdisk 11 wesseln"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Nah Schrievdisk 12 wesseln"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Balkenhööftmenü opwiesen"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Billschirmbill scheten"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Billschirmbill vun ee'm Finster scheten"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Orderreeg lööpen laten"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Finstermenü aktiveren"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Finster gröter maken"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Finster wedderherstellen"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Finster lütter maken"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Finster sluten"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Finster verschuven"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Finstergröte ännern"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Finster nah Schrievdisk 1 verschuven"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Finster nah Schrievdisk 2 verschuven"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Finster nah Schrievdisk 3 verschuven"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Finster nah Schrievdisk 4 verschuven"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Finster nah Schrievdisk 5 verschuven"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Finster nah Schrievdisk 6 verschuven"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Finster nah Schrievdisk 7 verschuven"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Finster nah Schrievdisk 8 verschuven"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Finster nah Schrievdisk 9 verschuven"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Finster nah Schrievdisk 10 verschuven"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Finster nah Schrievdisk 11 verschuven"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Finster nah Schrievdisk 12 verschuven"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Finster vertikal gröter maken"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Finster horizontal gröter maken"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:2
+msgid "A font description string describing a font for window titlebars. The size from the description will only be used if the titlebar_font_size option is set to 0. Also, this option is disabled if the titlebar_uses_desktop_font option is set to true."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:7
+msgid "Arrangement of buttons on the titlebar. The value should be a string, such as \"menu:minimize,maximize,spacer,close\"; the colon separates the left corner of the window from the right corner, and the button names are comma-separated. Duplicate buttons are not allowed. Unknown button names are silently ignored so that buttons can be added in future marco versions without breaking older versions. A special spacer tag can be used to insert some space between two adjacent buttons."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:9
+msgid "Clicking a window while holding down this modifier key will move the window (left click), resize the window (middle click), or show the window menu (right click). The middle and right click operations may be swapped using the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:16
+msgid "Determines whether applications or the system can generate audible 'beeps'; may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:19
+msgid "If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then the focused window will be automatically raised after a delay specified by the auto_raise_delay key. This is not related to clicking on a window to raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:20
+msgid "If true, ignore the titlebar_font option, and use the standard application font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:21
+msgid "If true, marco will give the user less feedback by using wireframes, avoiding animations, or other means. This is a significant reduction in usability for many users, but may allow legacy applications to continue working, and may also be a useful tradeoff for terminal servers. However, the wireframe feature is disabled when accessibility is on."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:22
+msgid "If true, then Marco works in terms of applications rather than windows. The concept is a bit abstract, but in general an application-based setup is more like the Mac and less like Windows. When you focus a window in application-based mode, all the windows in the application will be raised. Also, in application-based mode, focus clicks are not passed through to windows in other applications. Application-based mode is, however, largely unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Schrievdisknaam"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Schrievdiskantaal"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid "Number of workspaces. Must be more than zero, and has a fixed maximum to prevent making the desktop unusable by accidentally asking for too many workspaces."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:29
+msgid "Set this to true to resize with the right button and show a menu with the middle button while holding down the key given in \"mouse_button_modifier\"; set it to false to make it work the opposite way around."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid "Setting this option to false can lead to buggy behavior, so users are strongly discouraged from changing it from the default of true. Many actions (e.g. clicking in the client area, moving or resizing the window) normally raise the window as a side-effect. Setting this option to false, which is strongly discouraged, will decouple raising from other user actions, and ignore raise requests generated by applications. See http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can still be raised by an alt-left-click anywhere on the window, a normal click on the window decorations, or by special messages from pagers, such as activation requests from tasklist applets. This option is currently disabled in click-to-focus mode. Note that the list of ways to raise windows when raise_on_click is false does not include programmatic requests from applications to raise windows; such requests will be ignored regardless of the reason for the request. If you are an application developer and have a user complaining that your application does not work with this setting disabled, tell them it is _their_ fault for breaking their window manager and that they need to change this option back to true or live with the \"bug\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid "Some applications disregard specifications in ways that result in window manager misfeatures. This option puts Marco in a rigorously correct mode, which gives a more consistent user interface, provided one does not need to run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:33
+msgid "Tells Marco how to implement the visual indication that the system bell or another application 'bell' indicator has been rung. Currently there are two valid values, \"fullscreen\", which causes a fullscreen white-black flash, and \"frame_flash\" which causes the titlebar of the application which sent the bell signal to flash. If the application which sent the bell is unknown (as is usually the case for the default \"system beep\"), the currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:34
+msgid "The /apps/marco/global_keybindings/run_command_N keys define keybindings that correspond to these commands. Pressing the keybinding for run_command_N will execute command_N."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:35
+msgid "The /apps/marco/global_keybindings/run_command_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:36
+msgid "The /apps/marco/global_keybindings/run_command_window_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:37
+msgid "The keybinding that runs the correspondingly-numbered command in /apps/marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "De Naam vun ee'm Schrievdisk."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "De Billschirmbillorder"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid "The theme determines the appearance of window borders, titlebar, and so forth."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:41
+msgid "The time delay before raising a window if auto_raise is set to true. The delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:42
+msgid "The window focus mode indicates how windows are activated. It has three possible values; \"click\" means windows must be clicked in order to focus them, \"sloppy\" means windows are focused when the mouse enters the window, and \"mouse\" means windows are focused when the mouse enters the window and unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:44
+msgid "This option determines the effects of double-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:45
+msgid "This option determines the effects of middle-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:46
+msgid "This option determines the effects of right-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:47
+msgid "This option provides additional control over how newly created windows get focus. It has two possible values; \"smart\" applies the user's normal focus mode, and \"strict\" results in windows started from a terminal not being given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:48
+msgid "Turns on a visual indication when an application or the system issues a 'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy environments."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr ""
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr ""
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Finster sluten"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Finstermenü"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Finster lütter maken"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Finster gröter maken"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Finster wedderherstellen"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr ""
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr ""
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Lütter maken"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_Gröter maken"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Verschuven"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Gröte ännern"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr ""
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87
+#: ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr ""
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Sluten"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr ""
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr ""
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr ""
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Strg"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr ""
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "boven"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "unnen"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "links"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "rechts"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr ""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr ""
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr ""
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid "GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid "GTK color specification must have a close bracket after the state, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid "Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid "Coordinate expression contains floating point number '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid "Coordinate expression contained unknown operator at the start of this text: \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/ui/theme.c:1913
+#: ../src/ui/theme.c:1923
+#: ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid "Coordinate expression has operator \"%c\" following operator \"%c\" with no operand in between"
+msgstr ""
+
+#: ../src/ui/theme.c:2195
+#: ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/ui/theme.c:2598
+#: ../src/ui/theme.c:2618
+#: ../src/ui/theme.c:2638
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/ui/theme.c:4205
+#, c-format
+msgid "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be specified for this frame style"
+msgstr ""
+
+#: ../src/ui/theme.c:4713
+#: ../src/ui/theme.c:4738
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+
+#: ../src/ui/theme.c:4782
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr ""
+
+#: ../src/ui/theme.c:4912
+#: ../src/ui/theme.c:4919
+#: ../src/ui/theme.c:4926
+#: ../src/ui/theme.c:4933
+#: ../src/ui/theme.c:4940
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr ""
+
+#: ../src/ui/theme.c:4948
+#, c-format
+msgid "No frame style set for window type \"%s\" in theme \"%s\", add a <window type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/ui/theme.c:5391
+#: ../src/ui/theme.c:5453
+#: ../src/ui/theme.c:5516
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/ui/theme.c:5399
+#: ../src/ui/theme.c:5461
+#: ../src/ui/theme.c:5524
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:231
+#: ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:437
+#: ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:531
+#: ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:577
+#: ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:608
+#: ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid "Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:936
+#: ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033
+#: ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:948
+#: ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1229
+#: ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519
+#: ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786
+#: ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126
+#: ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202
+#: ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1343
+#: ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid "Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" for buttons"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2109
+#: ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2276
+#: ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2286
+#: ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2596
+#: ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2608
+#: ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2844
+#: ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3013
+#: ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized/shaded states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3075
+#: ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3086
+#: ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3147
+msgid "Can't have a two draw_ops for a <piece> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3185
+msgid "Can't have a two draw_ops for a <button> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3223
+msgid "Can't have a two draw_ops for a <menu_icon> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3340
+#: ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375
+#: ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:3724
+#: ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748
+#: ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Balken"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialogkiste"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Kant"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Knopputsehn"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid "Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g seconds wall clock time including X server resources (%g milliseconds per frame)\n"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+
diff --git a/po/ne.po b/po/ne.po
new file mode 100644
index 00000000..4ceecdb5
--- /dev/null
+++ b/po/ne.po
@@ -0,0 +1,3338 @@
+# translation of marco.mate-2-20.ne.po to Nepali
+# This file is distributed under the same license as the PACKAGE package.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER.
+#
+# Jyotsna Shrestha <[email protected]>, 2005.
+# Nabin Gautam <[email protected]>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.mate-2-20.ne\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-10-03 03:39+0100\n"
+"PO-Revision-Date: 2007-12-26 15:17+0545\n"
+"Last-Translator: Nabin Gautam <[email protected]>\n"
+"Language-Team: Nepali <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=n !=1\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "डेस्कटप"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "सञ्झ्याल प्रबन्ध"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "प्रयोग: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:133
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "भर्बोज मोडलाई सहयोग बिनानै मेटासिटि सङ्ग्रह गरियो\n"
+
+#: ../src/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "अज्ञात सञ्झ्याल सूचना अनुरोध: %d"
+
+#: ../src/delete.c:67 ../src/delete.c:94 ../src/marco-dialog.c:50
+#: ../src/theme-parser.c:484
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" लाई इन्टिजरको रूपमा व्याख्या गर्न सकेन"
+
+#: ../src/delete.c:74 ../src/delete.c:101 ../src/marco-dialog.c:57
+#: ../src/theme-parser.c:493 ../src/theme-parser.c:548
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "स्ट्रिङ \"%s\" मा पछि रहेका क्यारेक्टर \"%s\" बुझेन"
+
+#: ../src/delete.c:132
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "संवाद प्रक्रियाबाट सन्देश \"%s\" व्याख्या गर्न असफल\n"
+
+#: ../src/delete.c:267
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "संवाद प्रदर्शन प्रक्रियाबाट पढ्नमा त्रुटि: %s\n"
+
+#: ../src/delete.c:350
+#, c-format
+msgid "Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr "एउटा अनुप्रयोग नष्ट गर्ने बारेमा सोध्ने मेटासिटी संवाद सुरुआत गर्दा त्रुटि: %s\n"
+
+#: ../src/delete.c:459
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "होस्टनाम प्राप्त गर्न असफल: %s\n"
+
+#: ../src/display.c:349
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X सञ्झ्याल प्रणाली प्रदर्शन '%s' खोल्न असफल\n"
+
+#: ../src/errors.c:271
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"प्रदर्शन '%s' मा जडान छुट्यो;\n"
+"X सर्भर बन्द गरिएको वा तपाईँले सञ्झ्याल प्रबन्धक नष्ट/बिगारेको कारणले\n"
+"गर्दा प्राय: यस्तो हुन्छ\n"
+
+#: ../src/errors.c:278
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "घातक IO त्रुटि %d (%s) प्रदर्शन '%s' मा ।\n"
+
+#: ../src/frames.c:1078
+msgid "Close Window"
+msgstr "सञ्झ्याल बन्द गर्नुहोस्"
+
+#: ../src/frames.c:1081
+msgid "Window Menu"
+msgstr "सञ्झ्याल मेनु"
+
+#: ../src/frames.c:1084
+msgid "Minimize Window"
+msgstr "सञ्झ्याल घटाउनुहोस्"
+
+#: ../src/frames.c:1087
+msgid "Maximize Window"
+msgstr "सञ्झ्याल बढाउनुहोस्"
+
+#: ../src/frames.c:1090
+msgid "Unmaximize Window"
+msgstr "सञ्झ्याल पूर्वस्थितिमा फर्काउनुहोस्"
+
+#: ../src/frames.c:1093
+msgid "Roll Up Window"
+msgstr "सञ्झ्याल माथि रोल गर्नुहोस्"
+
+#: ../src/frames.c:1096
+msgid "Unroll Window"
+msgstr "सञ्झ्याल रोल नगर्नुहोस्"
+
+#: ../src/frames.c:1099
+msgid "Keep Window On Top"
+msgstr "सञ्झ्याललाई माथि राख्नुहोस्"
+
+#: ../src/frames.c:1102
+msgid "Remove Window From Top"
+msgstr "सञ्झ्याललाई माथिबाट हटाउनुहोस्"
+
+#: ../src/frames.c:1105
+msgid "Always On Visible Workspace"
+msgstr "जहिलेपनि दृश्यात्मक कार्यक्षेत्रमा"
+
+#: ../src/frames.c:1108
+msgid "Put Window On Only One Workspace"
+msgstr "सञ्झ्याललाई एउटा कार्यक्षेत्रमा मात्र राख्नुहोस्"
+
+#: ../src/keybindings.c:1087
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "केही अन्य कार्यक्रमले पहिले नै कुञ्जी %s प्रयोग गरिरहेका छन् जसमा परिमार्जक %x बाइन्डिङका रूपमा छन्\n"
+
+#: ../src/keybindings.c:2716
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr "आदेश बारेको त्रुटि मुद्रण गर्ने मेटासिटि संवाद सुरुआत गर्दा त्रुटि: %s\n"
+
+#: ../src/keybindings.c:2821
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "आदेश %d परिभाषित गरिएको छैन ।\n"
+
+#: ../src/keybindings.c:3849
+msgid "No terminal command has been defined.\n"
+msgstr "टर्मिनल आदेश परिभाषित गरिएको छैन ।\n"
+
+#: ../src/main.c:67
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2007 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"मेटासिटि %s\n"
+"प्रतिलिपि अधिकार (C) २००१-२००७ हावोक पेनिङटोन, रेड ह्याट, संस्था., र अन्य\n"
+"यो नि:शुल्क सफ्टवेयर हो; प्रतिलिपि सर्तका लागि स्रोत हेर्नुहोस् ।\n"
+"वारेन्टी छैन; ब्यापारीकरण गरिएको छैन वा निश्चित उद्देश्यको लागि मिलाइएको पनि छैन ।\n"
+
+#: ../src/main.c:171
+msgid "Disable connection to session manager"
+msgstr "सत्र प्रबन्धकमा जडान गर्न अक्षम"
+
+#: ../src/main.c:177
+msgid "Replace the running window manager with Marco"
+msgstr "चलिरहेको सञ्झ्याल प्रबन्धकलाई मेटासिटिसँग बदल्नुहोस्"
+
+#: ../src/main.c:183
+msgid "Specify session management ID"
+msgstr "सत्र प्रबन्धक आईडी (ID) निर्दिष्ट गर्नुहोस्"
+
+#: ../src/main.c:188
+msgid "X Display to use"
+msgstr "प्रयोग गरिने X प्रदर्शन"
+
+#: ../src/main.c:194
+msgid "Initialize session from savefile"
+msgstr "बचत फाइलबाट सत्र सुरुआत गर्नुहोस्"
+
+#: ../src/main.c:200
+msgid "Print version"
+msgstr "मुद्रण संस्करण"
+
+#: ../src/main.c:353
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "विषयवस्तु डाइरेक्टरी स्क्यान गर्न असफल: %s\n"
+
+#: ../src/main.c:369
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "विषयवस्तु फेला पार्न सकेन ! %s अवस्थित भएको र उपयोगी विषयवस्तु समाविष्ट भएको जाँच गर्नुहोस् ।\n"
+
+#: ../src/main.c:429
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "फेरि सुरु गर्न असफल: %s\n"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:70
+msgid "Mi_nimize"
+msgstr "घटाउनुहोस्"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:72
+msgid "Ma_ximize"
+msgstr "बढाउनुहोस्"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:74
+msgid "Unma_ximize"
+msgstr "पूर्वावस्थामा ल्याउनुहोस्"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:76
+msgid "Roll _Up"
+msgstr "माथि रोल गर्नुहोस्"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:78
+msgid "_Unroll"
+msgstr "रोल नगर्नुहोस्"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:80
+msgid "_Move"
+msgstr "सार्नुहोस्"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:82
+msgid "_Resize"
+msgstr "पूर्वावस्थामा फर्काउनुहोस्"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "शीर्षकपट्टीलाई पर्दामा सार्नुहोस्"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:87 ../src/menu.c:89
+msgid "Always on _Top"
+msgstr "सधैँ माथि"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "सधैँ दृश्यात्मक कार्यक्षेत्रमा"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "यस कार्यक्षेत्रमा मात्र"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "कार्यक्षेत्र बायाँ सार्नुहोस्"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "कार्यक्षेत्र दायाँ सार्नुहोस्"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "कार्यक्षेत्र माथि सार्नुहोस्"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "कार्यक्षेत्र तल सार्नुहोस्"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:105
+msgid "_Close"
+msgstr "बन्द गर्नुहोस्"
+
+#: ../src/menu.c:199 ../src/prefs.c:2246 ../src/prefs.c:2780
+#, c-format
+msgid "Workspace %d"
+msgstr "कार्यक्षेत्र %d"
+
+#: ../src/menu.c:208
+msgid "Workspace 1_0"
+msgstr "कार्यक्षेत्र १_०"
+
+#: ../src/menu.c:210
+#, c-format
+msgid "Workspace %s%d"
+msgstr "कार्यक्षेत्र %s%d"
+
+#: ../src/menu.c:390
+msgid "Move to Another _Workspace"
+msgstr "अन्य कार्यक्षेत्रमा सार्नुहोस्"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr "\"%s\" ले प्रतिक्रिया दिएको छैन ।"
+
+#: ../src/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "तपाईँले अनुप्रयोगलाई जारी राख्न केही समय प्रतिक्षा गर्नुहोस् रोज्न वा यसलाई पूर्ण रूपमा अन्त्य गर्न दवाब दिन सक्नुहुन्छ ।"
+
+#: ../src/marco-dialog.c:107
+msgid "_Wait"
+msgstr "प्रतिक्षा गर्नुहोस्"
+
+#: ../src/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "अन्त्य गर्न दवाब दिनुहोस्"
+
+#: ../src/marco-dialog.c:206
+msgid "Title"
+msgstr "शीर्षक"
+
+#: ../src/marco-dialog.c:218
+msgid "Class"
+msgstr "वर्ग"
+
+#: ../src/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr "यस प्रकारका सञ्झ्यालले \"हालको सेटअप बचत गर्नुहोस्\" समर्थन गर्दैन र तपाईँले पछिल्लो पटक लगइन गर्दा म्यानुअली फेरि सुरु गर्नु पर्दछ ।"
+
+#: ../src/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+" \"%s\" चलाउदा एउटा त्रुटि भयो:\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "मेटासिटि"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(कार्यान्वयन नगरिएका) नेभिगेसनले अनुप्रयोगका रूपमा कार्य गर्दछन् सञ्झ्यालमा कार्य गर्दैनन्"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr "सञ्झ्याल शीर्षकपट्टीका लागि फन्ट वर्णन गर्ने फन्ट वर्णन स्ट्रिङ । यदि शीर्षकपट्टी_फन्ट_साइज विकल्प ० मा सेट गरिएमा मात्र वर्णन अनुसारको साइज प्रयोग गरिन्छ । त्यस्तै, यदि शीर्षकपट्टी_प्रयोग_डेस्कटप_फन्ट ठीकमा सेट गरिएमा यस विकल्पलाई अक्षम पारिन्छ ।"
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "शीर्षकपट्टी डबल क्लिक गर्दा हुने कार्य"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "शीर्षकपट्टीको बीचमा क्लिक गर्दा हुने कार्य"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Action on title bar right-click"
+msgstr "शीर्षकपट्टीमा दायाँ क्लिक गर्दा हुने कार्य"
+
+#: ../src/marco.schemas.in.h:6
+msgid "Activate window menu"
+msgstr "सञ्झ्याल मेनु सक्रिय पार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:7
+msgid "Arrangement of buttons on the titlebar"
+msgstr "शीर्षकपट्टीमा बटनको प्रबन्ध"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"शिर्षकपट्टीमा बटनको प्रबन्ध । मान स्ट्रिङ हुनुपर्छ, जस्तै \"मेनु: घटाउनुहोस्, बढाउनुहोस्, बन्द गर्नुहोस्\"; विराम चिन्हले "
+"दाँया कुनाबाट सञ्झ्यालको बाँया कुना छुट्याउछ र बटन नाम अल्पविरामद्वारा छुट्याइएका हुन्छन् । नक्कली बटनलाई "
+"अनुमती छैन । अज्ञात बटनको नामलाई उपेक्षा गरिन्छ, त्यसैले बटनलाई पूरानो "
+"संस्करणलाई विच्छेद नगरी भविष्यका मेटासिटि संस्करणमा जोड्न सकिन्छ ।"
+
+#: ../src/marco.schemas.in.h:9
+msgid "Automatically raises the focused window"
+msgstr "केन्द्रित सञ्झ्याल स्वचालित रूपमा बढाउदछ"
+
+#: ../src/marco.schemas.in.h:10
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"यो परिमार्जक कुञ्जीलाई होल्ड गरेर सञ्झ्यालमा क्लिक गर्दा "
+"(बायाँ क्लिक गर्दा) सञ्झ्याललाई सार्दछ, (बीचमा क्लिक गर्दा) सञ्झ्याल रिसाइज गर्दछ, वा "
+"(दायाँ क्लिक गर्दा) सञ्झ्याल मेनु देखाउदछ । उदाहरणका लागि परिमार्जकलाई \"&lt;Alt&gt;\" वा \"&lt;Super&gt;\" "
+"का रूपमा प्रस्तुत गरिन्छ ।"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Close window"
+msgstr "सञ्झ्याल बन्द गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Commands to run in response to keybindings"
+msgstr "कुञ्जी बाइन्डिङको प्रतिक्रियामा चलाइने आदेश"
+
+#: ../src/marco.schemas.in.h:13
+msgid "Compositing Manager"
+msgstr "प्रबन्धक रचना गर्दैछ"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Control how new windows get focus"
+msgstr "कति नयाँ सञ्झ्यालले फोकस प्राप्त गर्दछन् नियन्त्रण गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Current theme"
+msgstr "हालको विषयवस्तु"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "स्वत बढाउने विकल्पका लागि मिलिसेकेन्ड विलम्ब"
+
+#: ../src/marco.schemas.in.h:17
+msgid "Determines whether Marco is a compositing manager."
+msgstr "मेटासिटि रचना प्रबन्धक हो या होइन निर्धारण गर्दछ ।"
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"अनुप्रयोग वा प्रणालीले श्रव्य 'बीप' उत्पन्न गर्न सक्दछ या सक्दैन निर्धारण गर्दछ; "
+"मौन 'बीप' लाई अनुमति दिन 'दृश्यात्मक घन्टी' को संयोजकसँग प्रयोग गर्न सकिन्छ ।"
+
+#: ../src/marco.schemas.in.h:19
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "पूरानो वा विच्छेद गरिएको अनुप्रयोगलाई आवश्यक हुने विकृत गुण अक्षम पार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:20
+msgid "Enable Visual Bell"
+msgstr "दृश्यात्मक घन्टी सक्षम पार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:21
+msgid "Hide all windows and focus desktop"
+msgstr "सबै सञ्झ्याल लुकाउनुहोस् र डेक्सटपमा फोकस गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:22
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr "यदि ठीकमा सेट भएमा, र फोकस मोड यात \"स्लोपी\" वा \"माउस\" भएमा फोकस गरिएको सञ्झ्याल स्वत वृद्धि विलम्ब कुञ्जीद्वारा निर्दिष्ट गरिएको विलम्ब पछि स्वचालित रूपमा बढ्दछ । यसलाई बढाउनु न सञ्झ्यालमा क्लिक गर्नुसँग सम्बन्धित छैन, त्यस्तै तान्ने र छोड्ने गर्दा सञ्झ्यालमा प्रविष्टि गर्नुसँग पनि सम्बन्धित छैन ।"
+
+#: ../src/marco.schemas.in.h:23
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"यदि ठीक भएमा, शीर्षकपट्टी फन्ट विकल्पलाई उपेक्षा गर्नुहोस्, र सञ्झ्याल शीर्षकका लागि "
+"मानक अनुप्रयोग फन्ट प्रयोग गर्नुहोस् ।"
+
+#: ../src/marco.schemas.in.h:24
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr "यदि ठीक भएमा, मेटासिटिले प्रयोगकर्तालाई वायरफ्रेम प्रयोग गरेर, एनिमेसन हटाएर, वा अन्य उद्देश्यले कम पृष्ठपोषण प्रदान गर्दछ । यो धेरै प्रयोगकर्ताको महत्वपूर्ण उपयोगिता न्यूनिकरण हुन सक्छ, तर लेगेसी अनुप्रयोगलाई जारी राख्न अनुमति दिन् सक्दछ, र टर्मिनल सर्भरका लागि व्यापारीकरण गर्न उपयोगी पनि हुनसक्दछ । तापनि, पहुँचता खुला हुदा वायरफ्रेम गुण अक्षम पारिएको हुन्छ ।"
+
+#: ../src/marco.schemas.in.h:25
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"यदि ठीक भएमा, मेटासिटिले विन्डोजको साटोमा अनुप्रयोगको सर्तमा कार्य गर्दछ ।"
+"यो धारणा केही अव्यावहारिक हुन्छ, तर सामान्यतया अनुप्रयोगमा आधारित सेटअप धेरै म्याकसँग मिल्ने र सञ्झ्यालसँग नमिल्ने हुन्छ । तपाईँले सञ्झ्याललाई नुप्रयोगमा आधारित मोडमा फोकस गरेमा, अनुप्रयोगका सबै सञ्झ्याल बढ्नेछन् । "
+"त्यस्तै, अनुप्रयोग आधारित मोडमा, फोकस क्लिक अन्य अनुप्रयोगमा सञ्झ्यालबाट पास हुदैनन् । तापनि अनुप्रयोग आधारित मोड, हालको अवस्थामा ठूलो, कार्यान्वयन गर्न नसकिने हुन्छ ।"
+
+#: ../src/marco.schemas.in.h:26
+msgid "If true, trade off usability for less resource usage"
+msgstr "यदि ठीक भएमा, कम स्रोत प्रयोगका लागि व्यापारिकरण उपयोगिता हुन्छ"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Lower window below other windows"
+msgstr "अन्य सञ्झ्याल तल सञ्झ्याल झार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Maximize window"
+msgstr "सञ्झ्याल बढाउनुहोस्"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Maximize window horizontally"
+msgstr "तेर्सो रूपमा सञ्झ्याल बढाउनुहोस्"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Maximize window vertically"
+msgstr "ठाडो रूपमा सञ्झ्याल बढाउनुहोस्"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Minimize window"
+msgstr "सञ्झ्याल घटाउनुहोस्"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Modifier to use for modified window click actions"
+msgstr "परिमार्जित सञ्झ्याल क्लिक कार्य परिमार्जन गर्नका लागि प्रयोग गरिने परिमार्जक"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move backward between panels and the desktop immediately"
+msgstr "प्यानल र डेक्सटपको बीचमा तुरुन्त पछाडिपट्टि सार्नुहोस् ।"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "पपअप भएको प्यानल र डेक्सटप बीचमा पछाडिपट्टि सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move backwards between windows immediately"
+msgstr "सञ्झ्यालको बिचमा पछाडिपट्टि तुरुन्त सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move backwards between windows of an application immediately"
+msgstr "अनुप्रयोगको सञ्झ्याल बीचमा तुरुन्त पछाडिपट्टि सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move backwards between windows of an application with popup"
+msgstr "पपअप भएको अनुप्रयोगको सञ्झ्याल बीचमा पछाडिपट्टि सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move between panels and the desktop immediately"
+msgstr "प्यानल र डेस्कटप बीचमा तुरुन्त सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move between panels and the desktop with popup"
+msgstr "पपअप भएको प्यानल र डेक्सटप बिचमा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move between windows immediately"
+msgstr "सञ्झ्याल बीचमा तुरुन्त सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move between windows of an application immediately"
+msgstr "अनुप्रयोगको सञ्झ्याल बीचमा तुरुन्त सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move between windows of an application with popup"
+msgstr "पपअप भएको अनुप्रयोगको सञ्झ्याल बीचमा तुरुन्त सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move between windows with popup"
+msgstr "पपअप भएको सञ्झ्याल बीचमा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move focus backwards between windows using popup display"
+msgstr "पपअप प्रदर्शन प्रयोग गर्ने सञ्झ्याल बीचमा फोकस पछाडिपट्टि सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window"
+msgstr "सञ्झ्याल सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window one workspace down"
+msgstr "सञ्झ्याललाई एक कार्यक्षेत्र तल सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window one workspace to the left"
+msgstr "सञ्झ्याललाई एक कार्यक्षेत्र बायाँ सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window one workspace to the right"
+msgstr "सञ्झ्याललाई एक कार्यक्षेत्र दायाँ सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window one workspace up"
+msgstr "सञ्झ्याललाई एक कार्यक्षेत्र माथि सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to east side of screen"
+msgstr "सञ्झ्याललाई पर्दाको पुर्व छेउमा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to north side of screen"
+msgstr "सञ्झ्याललाई पर्दाको उत्तर छेउमा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to north-east corner"
+msgstr "सञ्झ्याललाई उत्तर पुर्व कुनामा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Move window to north-west corner"
+msgstr "सञ्झ्याललाई उत्तर पश्चिम कुनामा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Move window to south side of screen"
+msgstr "सञ्झ्याललाई पर्दाको दक्षिण कुनामा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:55
+msgid "Move window to south-east corner"
+msgstr "सञ्झ्याललाई पर्दाको दक्षिण पर्व कुनामा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:56
+msgid "Move window to south-west corner"
+msgstr "सञ्झ्याललाई पर्दाको दक्षिण पश्चिम कुनामा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Move window to west side of screen"
+msgstr "सञ्झ्याललाई पर्दाको पश्चिम कुनामा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Move window to workspace 1"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र १ मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Move window to workspace 10"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र १० मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Move window to workspace 11"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र ११ मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Move window to workspace 12"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र १२ मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Move window to workspace 2"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र २ मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:63
+msgid "Move window to workspace 3"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र ३ मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:64
+msgid "Move window to workspace 4"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र ४ मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Move window to workspace 5"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र ५ मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Move window to workspace 6"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र ६ मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Move window to workspace 7"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र ७ मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Move window to workspace 8"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र ८ मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Move window to workspace 9"
+msgstr "सञ्झ्याललाई कार्यक्षेत्र ९ मा सार्नुहोस्"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Name of workspace"
+msgstr "कार्यक्षेत्रको नाम"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Number of workspaces"
+msgstr "कार्यक्षेत्रका सङ्ख्या"
+
+#: ../src/marco.schemas.in.h:72
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr "कार्यक्षेत्रका सङ्ख्या । शून्यभन्दा धेरै हुनुपर्दछ, आकस्मिक रूपमा धेरै कार्यक्षेत्रका लागि सोधिने डेस्कटपलाई अनुपयोगी बनाउन अधिकतमलाई निषेधमा निश्चित गरिएको छ ।"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Raise obscured window, otherwise lower"
+msgstr "अदृश्य सञ्झ्याल बढाउनुहोस्, अन्यथा घटाउनुहोस्"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Raise window above other windows"
+msgstr "सञ्झ्याललाई अन्य सञ्झ्याल माथि बढाउनुहोस्"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Resize window"
+msgstr "सञ्झ्याललाई रिसाइज गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Run a defined command"
+msgstr "परिभाषित आदेश चलाउनुहोस्"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Run a terminal"
+msgstr "टर्मिनल चलाउनुहोस्"
+
+#: ../src/marco.schemas.in.h:78
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Set this option to false to decouple "
+"raising from other user actions. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the bug "
+"they requested. See also http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+msgstr ""
+"यस विकल्पलाई गलतमा सेटिङ गर्दा बग व्यवहार अगुवा हुनसक्दछ, त्यसैले प्रयोगकर्तालाई पूर्वनिर्धारित ठीकबाट परिवर्तन गर्न कडाइका साथ निरुत्साहहित गरिन्छ । धेरै कार्यहरू "
+"(जस्तै; क्लाइन्ट क्षेत्र भित्र क्लिक गर्दा, सञ्झ्याल सार्दा वा रिसाइज गर्दा) सामान्यतया "
+"नकाराम्मक प्रभावले सञ्झ्याललाई बढाउदछ । अन्य प्रयोगकर्ता कार्य बढ्नबाट अलग गर्न यस विकल्पलाई गलतमा सेट गर्नुहोस् । यो विकल्प गलत भएता पनि, सञ्झ्याललाई अझै पनि सञ्झ्यालको कुनै पनि ठाउमा alt-left क्लिक गरेर, सञ्झ्याल सजावटमा सामान्य क्लिक गरेर, वा कार्यसूची एप्लेटका सक्रियता अनुरोध जस्ता पेजरका विशेष सन्देशद्वारा बढाउन सकिन्छ । यस विकल्पलाई click-to-focus मोडमा अक्षम पारिएको छ । याद गर्नुहोस् "
+"raise_on_click हुदा सञ्झ्याल बढाउने तरिकाको सूची गलत हो जसले अनुप्रयोगका सञ्झ्याल बढाउने कार्यक्रमिक अनुरोध सम्मिलित गर्दैन; अनुरोधको कारणले पनि त्यस्ता अनुरोध उपेक्षा गरिन्छन् । यदि तपाईँ अनुप्रयोग विकासकर्ता हो र तपाईँको अनुप्रयोगले यस सेटिङसँग कार्य गर्दैन अक्षम पारिएको छ भन्ने प्रयोगकर्ता सिकायत भएमा, प्रयोगकर्तालाई उनीहरूको सञ्झ्याल प्रबन्धक विच्छेद गर्दाको दोसको कारणले भएको र प्रयोगकर्ताले यस विकल्पलाई फेरि ठीकमा सेट गर्नु वा अनुरोध गरिएको त्रुटिसँग चलाउनु पर्ने अवगत गराउनुहोस् । http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6 पनि हेर्नुहोस् ।"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Show the panel menu"
+msgstr "प्यानल मेनु देखाउनुहोस्"
+
+#: ../src/marco.schemas.in.h:80
+msgid "Show the panel run application dialog"
+msgstr "प्यानल चल्ने अनुप्रयोग संवाद देखाउनुहोस्"
+
+#: ../src/marco.schemas.in.h:81
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr "केही अनुप्रयोगले सञ्झ्याल प्रबन्धकमा नतिजा विकृत हुने तरिकाले विशेष वर्णन अस्वीकार गर्दछन् । यस विकल्पले मेटासिटिलाई कठीन सुधार मोडमा राख्दछ, जसले धेरै अनुकूल प्रयोगकर्ता इन्टरफेस प्रदान गर्दछ, उपलब्ध कुनै एकले अन्य खराब ब्यवहार गर्ने कुनै पनि अनुप्रयोग चलाउनु पर्दैन ।"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Switch to workspace 1"
+msgstr "कार्यक्षेत्र १ मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 10"
+msgstr "कार्यक्षेत्र १० मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace 11"
+msgstr "कार्यक्षेत्र ११ मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace 12"
+msgstr "कार्यक्षेत्र १२ मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace 2"
+msgstr "कार्यक्षेत्र २ मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace 3"
+msgstr "कार्यक्षेत्र ३ मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:88
+msgid "Switch to workspace 4"
+msgstr "कार्यक्षेत्र ४ मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:89
+msgid "Switch to workspace 5"
+msgstr "कार्यक्षेत्र ५ मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:90
+msgid "Switch to workspace 6"
+msgstr "कार्यक्षेत्र ६ मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:91
+msgid "Switch to workspace 7"
+msgstr "कार्यक्षेत्र ७ मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:92
+msgid "Switch to workspace 8"
+msgstr "कार्यक्षेत्र ८ मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:93
+msgid "Switch to workspace 9"
+msgstr "कार्यक्षेत्र ९ मा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:94
+msgid "Switch to workspace above this one"
+msgstr "यस भन्दा माथिको कार्यक्षेत्रमा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:95
+msgid "Switch to workspace below this one"
+msgstr "यस भन्दा मुनिको कार्यक्षेत्रमा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:96
+msgid "Switch to workspace on the left"
+msgstr "बायाँको कार्यक्षेत्रमा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:97
+msgid "Switch to workspace on the right"
+msgstr "दायाँको कार्यक्षेत्रमा स्विच गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:98
+msgid "System Bell is Audible"
+msgstr "प्रणाली घन्टी सुन्न सकिन्छ"
+
+#: ../src/marco.schemas.in.h:99
+msgid "Take a screenshot"
+msgstr "स्क्रिनसट लिनुहोस्"
+
+#: ../src/marco.schemas.in.h:100
+msgid "Take a screenshot of a window"
+msgstr "सञ्झ्यालको स्क्रिनसट लिनुहोस्"
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"प्रणाली घन्टी वा अन्य अनुप्रयोग 'घन्टी' सूचकले बजाएको घन्टीलाई कसरी दृश्यात्मक सूचकमा प्रयोग गर्ने मेटासिटिले दर्शाउदछ । हाल यहाँ दुईवटा मान्य मानहरू छन्, \"पूरा पर्दा\", जसको "
+"कारणले सेतो-कालो पूरा पर्दा फ्ल्यास हुन्छ, र \"फ्रेम फ्ल्यास\", जसको कारणले घन्टी सङ्केत पठाउने अनुप्रयोगको शीर्षकपट्टी फ्ल्यास हुन्छ । यदि अनुरोधपत्र, जसले घन्टी पठाउछ, अज्ञात भएमा (सधैँको जस्तै "
+"पूर्वनिर्धारित \"प्रणाली बिप\" का लागि), हाल फोकस गरिएको सञ्झ्याल शिर्षकपट्टी फ्ल्यास हुन्छ ।"
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+" /apps/marco/global_keybindings/run_command_N कुञ्जीले यी आदेशमा सम्बन्धित कुञ्जी बाइन्डिङलाई परिभाषित गर्दछ । run_command_N "
+"का लागि कुञ्जी बाइन्डिङ थिच्दा command_N कार्यान्वयन गर्नेछ ।"
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr " /apps/marco/global_keybindings/run_command_screenshot कुञ्जीले कुञ्जी बाइन्डिङ परिभाषित गर्दछ जसको कारणले यस सेटिङद्वारा निर्दिष्ट गरिएका आदेश आह्वान गरिन्छन् ।"
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+" /apps/marco/global_keybindings/run_command_window_screenshot कुञ्जीले "
+"कुञ्जी बाइन्डिङ परिभाषित गर्दछ जसको कारणले यस सेटिङद्वारा निर्दिष्ट गरिएका आदेश आह्वान गर्दछ ।"
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"/apps/"
+"marco/keybinding_commands मा सङ्गत क्रमाङ्कन गरिएका आदेश चलाउने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ ।"
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, \"&lt;Ctl&gt;\" र "
+"\"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"हालको कार्यक्षेत्रको माथिको कार्यक्षेत्रलाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"हालको कार्यक्षेत्रको तलको कार्यक्षेत्रलाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"हालको कार्यक्षेत्रको बायाँको कार्यक्षेत्रलाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"हालको कार्यक्षेत्रको दायाँको कार्यक्षेत्रलाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र १ लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र १० लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ११ लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र १२ लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र २ लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ३ लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ४ लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ५ लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ६ लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ७ लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ८ लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ९ लाई स्विच गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"सञ्झ्याल मेनु सक्रिय पार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"सञ्झ्याल बन्द गर्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो "
+"देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"कुञ्जीपाटी प्रयोग गरेर \"सार्ने मोड\" प्रविष्टि गर्न र सञ्झ्याल सार्न सुरु गर्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"कुञ्जीपाटी प्रयोग गरेर \"रिसाइज मोड\" प्रविष्टि गर्न र सञ्झ्याल रिसाइज सुरु गर्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;"
+"\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"सबै सामान्य सञ्झ्याललाई लुकाउन र डेस्कटप पृष्ठभूमिमा फोकस सेट गर्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;"
+"\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"सञ्झ्याललाई बढाउन प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"सञ्झ्याललाई घटाउन प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"एक कार्यक्षेत्र तल सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"एक कार्यक्षेत्र बायाँ सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"एक कार्यक्षेत्र दायाँ सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"एक कार्यक्षेत्र माथि सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र १० मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र १० मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ११ मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र १२ मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र २ मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ३ मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ४ मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ५ मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ६ मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ७ मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ८ मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"कार्यक्षेत्र ९ मा सञ्झ्याल सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल प्रयोग गरेर, प्यानल र डेस्कटप बिचमा फोकस पछाडिपट्टी सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;"
+"\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:146
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल बिना, प्यानल र डेस्कटप बिचमा फोकस पछाडिपट्टी सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;"
+"\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:147
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application without a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल बिना अनुप्रयोगको सञ्झ्याल बीचमा फोकस पछाडिपट्टी सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । \"shift\" कुञ्जीलाई बाइन्डिङ सँगसँगै होल्ड गर्दा दिशा फेरि अगाडि बढ्ने बनाउदछ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application, using a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल प्रयोग गरेर, अनुप्रयोगको सञ्झ्याल बीचमा फोकस पछाडिपट्टी सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । \"shift\" कुञ्जीलाई बाइन्डिङ सँगसँगै होल्ड गर्दा दिशा फेरि अगाडि बढ्ने बनाउदछ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल प्रयोग नगरी सञ्झ्याल बीचमा फोकस पछाडिपट्टी सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । \"shift\" कुञ्जीलाई बाइन्डिङ सँगसँगै होल्ड गर्दा दिशा फेरि अगाडि बढ्ने बनाउदछ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल प्रयोग गरेर, सञ्झ्याल बीचमा फोकस पछाडिपट्टी सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । \"shift\" कुञ्जीलाई बाइन्डिङ सँगसँगै होल्ड गर्दा दिशा फेरि अगाडि बढ्ने बनाउदछ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:151
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल प्रयोग गरेर, प्यानल र डेस्कटप बीचमा फोकस सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल बिना, प्यानल र डेस्कटप बीचमा फोकस सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"The keybinding used to move focus between windows of an application without "
+"a popup window. Holding the \"shift\" key while using this binding reverses "
+"the direction of movement. The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल बिना, अनुप्रयोगको सञ्झ्याल बीचमा फोकस सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । यो बाइन्डिङ प्रयोग गर्दा \"shift\" कुञ्जी होल्ड गरेमा चालको दिशा उल्टो बनाउदछ । ढाँचा \"&lt;Control&gt;a\" वा "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र "
+"\"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"The keybinding used to move focus between windows of an application, using a "
+"popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while "
+"using this binding reverses the direction of movement. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल प्रयोग गरेर, अनुप्रयोगको सञ्झ्याल बीचमा फोकस सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । (परम्परागत रूपमा &lt;Alt&gt;F6) यो बाइन्डिङ प्रयोग गर्दा \"shift\" कुञ्जी होल्ड गरेमा चालको दिशा उल्टो बनाउदछ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल बिना, सञ्झ्याल बीचमा फोकस सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । "
+"(परम्परागत रूपमा &lt;Alt&gt;Escape) यो बाइन्डिङ प्रयोग गर्दा \"shift\" कुञ्जी होल्ड गरेमा चालको दिशा उल्टो बनाउदछ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"पपअप सञ्झ्याल प्रयोग गरेर, सञ्झ्याल बीचमा फोकस सार्न प्रयोग गरिने कुञ्जी बाइन्डिङ । "
+"(परम्परागत रूपमा &lt;Alt&gt;Tab) बाइन्डिङ प्रयोग गर्दा \"shift\" कुञ्जी होल्ड गरेमा चालको दिशा उल्टो बनाउदछ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"सधैँ माथि टगल गर्न प्रयोग गरिने कुञ्जी बाइन्डिङ । सधैँ माथि रहने सञ्झ्याल अन्य खप्टिएका सञ्झ्याल माथि देखिन्छ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:158
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"पूरा पर्दा मोड टगल गर्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:159
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"बढाइएकोलाई टगल गर्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:160
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"छाया पारिएको/हटाइएको वस्तुस्थिति टगल गर्न प्रयोग गर्न प्रयोग गरिने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:161
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"सञ्झ्याल सबै कार्यक्षेत्र वा केवल एकमा मात्र हुदा टगल गर्न प्रयोग गरिने कुञ्जीबाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:162
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"सञ्झ्याललाई घटाउनका लागि प्रयोग गरिने कुञ्जी बाइन्डिङ । "
+"ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"प्यानलको \"अनुप्रयोग चलाउनुहोस्\" संवाद बाकस प्रदर्शन गर्ने कुञ्जी बाइन्डिङ । "
+"ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:164
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"टर्मिनललाई आह्वान गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;"
+"Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:165
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"सञ्झ्यालको स्क्रिनसट लिनका लागि प्यानलको स्क्रिनसट उपयोगिता आह्वान गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;"
+"\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:166
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"प्यानलको स्क्रिनसट उपयोगिता आह्वान गर्ने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:167
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"प्यानलको मुख्य मेनु देखाउने कुञ्जी बाइन्डिङ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:168
+msgid "The name of a workspace."
+msgstr "कार्यक्षेत्रको नाम ।"
+
+#: ../src/marco.schemas.in.h:169
+msgid "The screenshot command"
+msgstr "स्क्रिनसट आदेश"
+
+#: ../src/marco.schemas.in.h:170
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "विषयवस्तुले सञ्झ्याल, किनारा, शीर्षकपट्टी, र त्यस्तै चौथोको देखावट निर्धारण गर्दछ ।"
+
+#: ../src/marco.schemas.in.h:171
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr "यदि स्वत: वृद्धीलाई ठीकमा सेट भएमा सञ्झ्याल वृद्धी हुनु पहिलेको विलम्ब समय । विलम्ब हजारौ सेकेन्डमा दिइएको हुन्छ ।"
+
+#: ../src/marco.schemas.in.h:172
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"सञ्झ्याल फोकस बिधिले सञ्झ्याल कसरी सक्रिय हुन्छन् सङ्केत गर्दछ । यससँग तीनवटा सम्भावित मान हुन्छन्, "
+"\"क्लिक\" को अर्थ फोकस गर्नका लागि सञ्झ्यालमा क्लिक गर्नुपर्दछ, \"स्लोपि\" को अर्थ माउस सञ्झ्यालमा प्रविष्टि गर्दा यो फोकस हुन्छ र \"माउस\" को अर्थ माउस सञ्झ्यालमा प्रविष्टि हुदा फोकस हुन्छ र माउसले सञ्झ्याल छोड्दा फोकस हराउदछ ।"
+
+#: ../src/marco.schemas.in.h:173
+msgid "The window screenshot command"
+msgstr "सञ्झ्याल स्क्रिनसट आदेश"
+
+#: ../src/marco.schemas.in.h:174
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another one, it raises the window above all others, "
+"and if the window is already fully visible, it lowers it below all others. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले सञ्झ्याल अन्य सञ्झ्याल तल वा माथि भएमा परिवर्तन गर्दछ । यदि सञ्झ्याल अन्य एकद्वारा ढाकिएको भएमा, यसले सञ्झ्याललाई अन्य सबैको माथि ल्याउछ, र यदि सञ्झ्याल पहिला नै पूर्ण दृश्यात्मक भएमा, यसले सञ्झ्याललाई अन्य सबै तल झार्दछ । "
+"ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:175
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले सञ्झ्याललाई अन्य सञ्झ्यालको तल झार्दछ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:176
+msgid ""
+"This keybinding moves a window against the north (top) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले सञ्झ्याललाई पर्दाको उत्तर (माथि) छेउमा सार्दछ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:177
+msgid ""
+"This keybinding moves a window into the east (right) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले सञ्झ्याललाई पर्दाको पुर्व (दायाँ) छेउमा सार्दछ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:178
+msgid ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले सञ्झ्याललाई पर्दाको उत्तर-पुर्व (माथि दायाँ) कुनामा सार्दछ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:179
+msgid ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले सञ्झ्याललाई पर्दाको उत्तर-पश्चिम (माथि बायाँ) कुनामा सार्दछ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:180
+msgid ""
+"This keybinding moves a window into the south (bottom) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले सञ्झ्याललाई पर्दाको दक्षिण (तल) सार्दछ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:181
+msgid ""
+"This keybinding moves a window into the south-east (bottom right) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले सञ्झ्याललाई पर्दाको दक्षिण-पुर्व (तल दायाँ) कुनामा सार्दछ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:182
+msgid ""
+"This keybinding moves a window into the south-west (bottom left) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले सञ्झ्याललाई पर्दाको दक्षिण-पश्चिम (तल बायाँ) कुनामा सार्दछ । ढाँचा \"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:183
+msgid ""
+"This keybinding moves a window into the west (left) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले सञ्झ्याललाई पर्दाको पश्चिम (बायाँ) छेउमा सार्दछ । ढाँचा "
+"\"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:184
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले अन्य सञ्झ्याल माथि सञ्झ्याललाई बढाउदछ । ढाँचा "
+"\"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:185
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले उपलब्ध ठाडो खालीस्थान भर्न सञ्झ्याल रिसाइज गर्दछ । ढाँचा "
+"\"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:186
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"यस कुञ्जी बाइन्डिङले उपलब्ध ठाडो खालीस्थान भर्न सञ्झ्याल रिसाइज गर्दछ । ढाँचा "
+"\"&lt;Control&gt;a\" वा \"&lt;Shift&gt;&lt;Alt&gt;F1\" जस्तो देखिन्छ । "
+"पद वर्णनकर्ता पर्याप्त उदार हुन्छ र सानोवर्ण र ठूलोवर्णलाई, र \"&lt;Ctl&gt;\" र \"&lt;Ctrl&gt;\" जस्ता संक्षिप्त रूपलाई पनि अनुमति दिन्छ । यदि तपाईँले विकल्पलाई विशेष स्ट्रिङ \"अक्षम पारिएको\" सेट गरेमा, त्यहाँ यस कार्यका लागि कुञ्जी बाइन्डिङ हुदैन ।"
+
+#: ../src/marco.schemas.in.h:187
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"यस विकल्पले शीर्षकपट्टीमा डबल क्लिकको प्रभाव निर्धारण गर्दछ । "
+"हालका मान्य विकल्पहरू 'छाया टगल गर्नुहोस्', जसले सञ्झ्यालमा छाया पार्ने/हटाउने गर्दछ, 'बढाइएको टगल गर्नुहोस्' जसले सञ्झ्याल बढाउने/घटाउने गर्दछ, "
+"'घटाउनुहोस्' जसले सञ्झ्याल घटाउदछ, र 'कुनै पनि होइन' जसले केही पनि गर्दैन हुन् ।"
+
+#: ../src/marco.schemas.in.h:188
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"यस विकल्पले शीर्षकपट्टीमा बीचमा गरेको क्लिकको प्रभाव निर्धारण गर्दछ । "
+"हालका मान्य विकल्पहरू 'छाया टगल गर्नुहोस्', जसले सञ्झ्यालमा छाया पार्ने/हटाउने गर्दछ, 'बढाइएको टगल गर्नुहोस्' जसले सञ्झ्याल बढाउने/घटाउने गर्दछ, "
+"'घटाउनुहोस्' जसले सञ्झ्याल घटाउदछ, र 'कुनै पनि होइन' जसले केही पनि गर्दैन हुन् ।"
+
+#: ../src/marco.schemas.in.h:189
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+"यस विकल्पले शीर्षकपट्टीमा दायाँ क्लिकको प्रभाव निर्धारण गर्दछ । "
+"हालका मान्य विकल्पहरू 'छाया टगल गर्नुहोस्', जसले सञ्झ्यालमा छाया पार्ने/हटाउने गर्दछ, 'बढाइएको टगल गर्नुहोस्' जसले सञ्झ्याल बढाउने/घटाउने गर्दछ, "
+"'घटाउनुहोस्' जसले सञ्झ्याल घटाउदछ, र 'कुनै पनि होइन' जसले केही पनि गर्दैन हुन् ।"
+
+#: ../src/marco.schemas.in.h:190
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr "यस विकल्पले नयाँ सिर्जना गरिएका सञ्झ्यालले कसरी फोकस प्राप्त गर्दछन् अतिरिक्त नियन्त्रण उपलब्ध गर्दछ । यसका दुई सम्भावित मानहरू छन्; \"छरितो\" ले प्रयोगकर्ताको सामान्य फोकस मोड लागू गर्दछ, र सञ्झ्यालमा \"कठीन\" नतिजा फोकस नदिइएको टर्मिनलबाट सुरु हुन्छ ।"
+
+#: ../src/marco.schemas.in.h:191
+msgid "Toggle always on top state"
+msgstr "सधैँ माथि वस्तुस्थितिमा टगल गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:192
+msgid "Toggle fullscreen mode"
+msgstr "पूरा पर्दा मोड टगल गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:193
+msgid "Toggle maximization state"
+msgstr "बढाइएको स्थितिलाई टगल गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:194
+msgid "Toggle shaded state"
+msgstr "छायाँ पारिएको वस्तुस्थिति टगल गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:195
+msgid "Toggle window on all workspaces"
+msgstr "सबै कार्यक्षेत्रमा सञ्झ्याल टगल गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:196
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr "अनुप्रयोग वा प्रणालीले 'घन्टी' वा 'बीप' जारी गर्दा दृश्यात्मक सङ्केत खोल्दछ; सुन्न नसक्नेलाई र हल्ला हुने परिवेशमा प्रयोग गर्न उपयोगी हुन्छ ।"
+
+#: ../src/marco.schemas.in.h:197
+msgid "Unmaximize window"
+msgstr "ठुलो नबनाइएको सञ्झ्याल"
+
+#: ../src/marco.schemas.in.h:198
+msgid "Use standard system font in window titles"
+msgstr "सञ्झ्याल शीर्षकमा मानक प्रणाली फन्ट प्रयोग गर्नुहोस्"
+
+#: ../src/marco.schemas.in.h:199
+msgid "Visual Bell Type"
+msgstr "दृश्यात्मक घन्टी प्रकार"
+
+#: ../src/marco.schemas.in.h:200
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "अन्य प्रयोगकर्ताको अन्तर्क्रिया बढाउदा अप्रत्यक्ष प्रभाव हुनुपर्दछ या पर्दैन"
+
+#: ../src/marco.schemas.in.h:201
+msgid "Window focus mode"
+msgstr "सञ्झ्याल फोकस मोड"
+
+#: ../src/marco.schemas.in.h:202
+msgid "Window title font"
+msgstr "सञ्झ्याल शीर्षक फन्ट"
+
+#: ../src/prefs.c:434
+#, c-format
+msgid "Type of %s was not integer"
+msgstr " %s को प्रकार इन्टिजर थिएन"
+
+#: ../src/prefs.c:572 ../src/prefs.c:600 ../src/prefs.c:616 ../src/prefs.c:632
+#: ../src/prefs.c:648 ../src/prefs.c:664 ../src/prefs.c:680 ../src/prefs.c:696
+#: ../src/prefs.c:716 ../src/prefs.c:732 ../src/prefs.c:748 ../src/prefs.c:766
+#: ../src/prefs.c:782 ../src/prefs.c:801 ../src/prefs.c:817 ../src/prefs.c:852
+#: ../src/prefs.c:868 ../src/prefs.c:885 ../src/prefs.c:901 ../src/prefs.c:917
+#: ../src/prefs.c:933 ../src/prefs.c:949 ../src/prefs.c:964 ../src/prefs.c:979
+#: ../src/prefs.c:994 ../src/prefs.c:1010 ../src/prefs.c:1026
+#: ../src/prefs.c:1042 ../src/prefs.c:1058
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "जीकन्फ कुञ्जी \"%s\" लाई अमान्य प्रकारमा सेट गरिएको छ\n"
+
+#: ../src/prefs.c:1103
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "माउस बटन परिमार्जकका लागि कन्फिगरेसन डाटाबेसमा फेला परेको \"%s\" मान्य मान होइन\n"
+
+#: ../src/prefs.c:1127 ../src/prefs.c:1148 ../src/prefs.c:1705
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "जीकन्फ कुञ्जी \"%s\" लाई अमान्य मानमा सेट गरिएको छ\n"
+
+#: ../src/prefs.c:1277
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+"range 1..128\n"
+msgstr "%d लाई जीकन्फ कुञ्जी %s मा मौज्दात गरियो जुन उचित साइजमा छैन; दायरा १..१२८ भित्र हुनुपर्दछ\n"
+
+#: ../src/prefs.c:1357
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "जीकन्फ कुन्जी %s बाट फन्ट वर्णन \"%s\" पद वर्णन गर्न सकेन\n"
+
+#: ../src/prefs.c:1599
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr "%d लाई जीकन्फ कुञ्जी %s मा मौज्दात गरियो जुन कार्यक्षेत्रको उचित नम्बर होइन, हालको अधिकतम %d हो\n"
+
+#: ../src/prefs.c:1659
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr "विच्छेद अनुप्रयोगका लागि वर्कअराउन्ड अक्षम पारियो । केही अनुप्रयोगले उचित रूपमा कार्य नगर्न सक्दछन् ।\n"
+
+# fuzzy, c-format
+#: ../src/prefs.c:1732
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "%d लाई जीकन्फ कुञ्जी %s मा मौज्दात गरियो जुन ० देखि %d सम्मको दायरा बाहिर छ\n"
+
+#: ../src/prefs.c:1881
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "कार्यक्षेत्रको नम्बर %d: %s मा सेटिङ गर्दा त्रुटि\n"
+
+#: ../src/prefs.c:2276 ../src/prefs.c:2446
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "कन्फिगरेसन डाटाबेसमा भेटिएको \"%s\" कुञ्जी बाइन्डिङ \"%s\" का लागि मान्य मान होइन\n"
+
+#: ../src/prefs.c:2861
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "कार्यक्षेत्र %d देखि \"%s\" का लागि नाम सेटिङ गर्दा त्रुटि: %s\n"
+
+#: ../src/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:410
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "पर्दा %d को प्रदर्शन '%s' अमान्य छ\n"
+
+#: ../src/screen.c:426
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"पर्दा %d को प्रदर्शन \"%s\" मा पहिले नै सञ्झ्याल प्रबन्धक छ; हालको सञ्झ्याल प्रबन्धकलाई बदल्न --"
+"बदल्ने विकल्प प्रयोग गर्ने प्रयास गर्नुहोस् ।\n"
+
+#: ../src/screen.c:453
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "पर्दा %d को \"%s\" मा प्रदर्शन गर्दा विन्डो प्रबन्धक छनौट पाउन सक्नु भएन\n"
+
+#: ../src/screen.c:511
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "पर्दा %d को प्रदर्शन \"%s\" सँग पहिले नै सञ्झ्याल प्रबन्धक छ\n"
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "पर्दा %d लाई प्रदर्शन \"%s\" मा निस्कासन गर्न सकेन\n"
+
+#: ../src/session.c:826 ../src/session.c:833
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "डाइरेक्टरी '%s' सिर्जना गर्न सकेन: %s\n"
+
+#: ../src/session.c:843
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "लेखनका लागि सत्र फाइल '%s' खोल्न सकेन: %s\n"
+
+#: ../src/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "सत्र फाइल '%s' लेखनमा त्रुटि: %s\n"
+
+#: ../src/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "सत्र फाइल '%s' बन्द गर्दा त्रुटि: %s\n"
+
+#: ../src/session.c:1075
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "बचत गरिएका सत्र फाइल %s पढ्न असफल: %s\n"
+
+#: ../src/session.c:1110
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "बचत गरिएका सत्र फाइलको पद वर्णन गर्न असफल: %s\n"
+
+#: ../src/session.c:1159
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> गुण देखियो तर हामीले पहिले नै सत्र आइडी लिइसकेका छौ"
+
+#: ../src/session.c:1172
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "<marco_session> तत्वमा अज्ञात गुण %s"
+
+#: ../src/session.c:1189
+msgid "nested <window> tag"
+msgstr "नेस्टेड <window> ट्याग"
+
+#: ../src/session.c:1247 ../src/session.c:1279
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "<window> तत्वमा अज्ञात गुण %s"
+
+#: ../src/session.c:1351
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "<maximized> तत्वमा अज्ञात गुण %s"
+
+#: ../src/session.c:1411
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "<geometry> तत्वमा अज्ञात गुण %s"
+
+#: ../src/session.c:1431
+#, c-format
+msgid "Unknown element %s"
+msgstr "अज्ञात तत्व %s"
+
+#: ../src/session.c:1868
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr "सत्र प्रबन्धलाई समर्थन नगर्ने अनुप्रयोगलाई चेतावनी दिने मेटासिटि संवाद सुरुआत गर्दा त्रुटि: %s\n"
+
+#: ../src/theme-parser.c:227 ../src/theme-parser.c:245
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "लाइन %d क्यारेक्टर %d: %s"
+
+#: ../src/theme-parser.c:399
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "गुण \"%s\" उस्तै <%s> तत्वमा दुई पटक दोहोरियो"
+
+#: ../src/theme-parser.c:417 ../src/theme-parser.c:442
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "यो स्थितिमा <%s> तत्वमा \"%s\"गुण अमान्य छ"
+
+#: ../src/theme-parser.c:503
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "इन्टिजर %ld धनात्मक हुनुपर्दछ"
+
+#: ../src/theme-parser.c:511
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "इनटिजर %ld धेरै ठूलो छ, हालको %d हो"
+
+#: ../src/theme-parser.c:539 ../src/theme-parser.c:655
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "उत्प्लावन बिन्दु नम्बरका रूपमा \"%s\" लाई पद वर्णन गर्न सकेन"
+
+#: ../src/theme-parser.c:570 ../src/theme-parser.c:598
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "बूलियन मान \"ठिक\" वा \"बेठिक\" हुनुपर्छ \"%s\" होइन"
+
+#: ../src/theme-parser.c:625
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "कोण०.० र ३६०.० बीचमा हुनुपर्दछ, %g थियो\n"
+
+#: ../src/theme-parser.c:688
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "अल्फा ०.० (अदृश्य) र १.० (पूरै अस्पष्ट) बीचमा हुनुपर्दछ, %g थियो\n"
+
+#: ../src/theme-parser.c:753
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"अमान्य शीर्षक मापन \"%s\" (xx-सानो, x-सानो, सानो, मध्यम, "
+"ठूलो, x-ठूलो, xx-ठूलो मध्ये एक हुनुपर्दछ)\n"
+
+#: ../src/theme-parser.c:798 ../src/theme-parser.c:806
+#: ../src/theme-parser.c:888 ../src/theme-parser.c:985
+#: ../src/theme-parser.c:1027 ../src/theme-parser.c:1138
+#: ../src/theme-parser.c:1188 ../src/theme-parser.c:1196
+#: ../src/theme-parser.c:3074 ../src/theme-parser.c:3163
+#: ../src/theme-parser.c:3170 ../src/theme-parser.c:3177
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr " <%s> तत्वमा \"%s\" गुण छैन"
+
+#: ../src/theme-parser.c:922 ../src/theme-parser.c:993
+#: ../src/theme-parser.c:1035 ../src/theme-parser.c:1146
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> नाम \"%s\" दोस्रो पटक प्रयोग गरियो"
+
+#: ../src/theme-parser.c:934 ../src/theme-parser.c:1047
+#: ../src/theme-parser.c:1158
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> प्रमूल \"%s\" परिभाषित गरिएको छैन"
+
+#: ../src/theme-parser.c:1060
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> जमेट्री \"%s\" परिभाषित गरिएको छैन"
+
+#: ../src/theme-parser.c:1073
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> ले जमेट्री भएको यात जमेट्री वा प्रमूल निर्दिष्ट गर्नुपर्दछ"
+
+#: ../src/theme-parser.c:1115
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "अल्फा मान सार्थक हुनका लागि तपाईँले पृष्ठभूमि निर्दिष्ट गर्नुपर्दछ"
+
+#: ../src/theme-parser.c:1206
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "<%s> तत्वमा अज्ञात प्रकार \"%s\""
+
+#: ../src/theme-parser.c:1217
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "<%s> तत्वमा अज्ञात शैली सेट \"%s\""
+
+#: ../src/theme-parser.c:1225
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "सञ्झ्याल प्रकार \"%s\" सँग शैली सेट पहिले नै मानाङ्कन गरिएको छ"
+
+#: ../src/theme-parser.c:1261
+msgid "Theme already has a fallback icon"
+msgstr "विषयवस्तुमा पहिले नै फलब्याक प्रतिमा छ"
+
+#: ../src/theme-parser.c:1273
+msgid "Theme already has a fallback mini_icon"
+msgstr "विषयवस्तुमा पहिला नै फलब्याक सानो प्रतिमा छ"
+
+#: ../src/theme-parser.c:1286 ../src/theme-parser.c:1350
+#: ../src/theme-parser.c:1639 ../src/theme-parser.c:3262
+#: ../src/theme-parser.c:3316 ../src/theme-parser.c:3488
+#: ../src/theme-parser.c:3704 ../src/theme-parser.c:3742
+#: ../src/theme-parser.c:3780 ../src/theme-parser.c:3818
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "<%s> को तल <%s> तत्वलाई अनुमति छैन"
+
+#: ../src/theme-parser.c:1376 ../src/theme-parser.c:1463
+#: ../src/theme-parser.c:1533
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "<%s> तत्वमा तत्व \"नाम\" छैन"
+
+#: ../src/theme-parser.c:1383 ../src/theme-parser.c:1470
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"मान\" गुण छैन"
+
+#: ../src/theme-parser.c:1414 ../src/theme-parser.c:1428
+#: ../src/theme-parser.c:1487
+msgid "Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr "वटनका लागि वटनको चौडाइ/वटनको उचाइ र आकार अनुपात दुबै निर्दिष्ट गर्न सकिँदैन"
+
+#: ../src/theme-parser.c:1437
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "दुरी \"%s\" अज्ञात छ"
+
+#: ../src/theme-parser.c:1496
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "आकार अनुपात \"%s\" अज्ञात छ ।"
+
+#: ../src/theme-parser.c:1540
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"माथि\" गुण छैन"
+
+#: ../src/theme-parser.c:1547
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"तल\" गुण छैन"
+
+#: ../src/theme-parser.c:1554
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"बायाँ\" गुण छैन"
+
+#: ../src/theme-parser.c:1561
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"दायाँ\" गुण छैन"
+
+#: ../src/theme-parser.c:1593
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "किनारा \"%s\" अज्ञात छ"
+
+#: ../src/theme-parser.c:1746 ../src/theme-parser.c:1856
+#: ../src/theme-parser.c:1963 ../src/theme-parser.c:2190
+#: ../src/theme-parser.c:3007
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"रङ\" गुण छैन"
+
+#: ../src/theme-parser.c:1753
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"x1\" गुण छैन"
+
+#: ../src/theme-parser.c:1760 ../src/theme-parser.c:2852
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"y1\" गुण छैन"
+
+#: ../src/theme-parser.c:1767
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"x2\" गुण छैन"
+
+#: ../src/theme-parser.c:1774 ../src/theme-parser.c:2859
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"y2\" गुण छैन"
+
+#: ../src/theme-parser.c:1863 ../src/theme-parser.c:1970
+#: ../src/theme-parser.c:2116 ../src/theme-parser.c:2197
+#: ../src/theme-parser.c:2303 ../src/theme-parser.c:2401
+#: ../src/theme-parser.c:2621 ../src/theme-parser.c:2747
+#: ../src/theme-parser.c:2845 ../src/theme-parser.c:2919
+#: ../src/theme-parser.c:3014
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"x\" गुण छैन"
+
+#: ../src/theme-parser.c:1870 ../src/theme-parser.c:1977
+#: ../src/theme-parser.c:2123 ../src/theme-parser.c:2204
+#: ../src/theme-parser.c:2310 ../src/theme-parser.c:2408
+#: ../src/theme-parser.c:2628 ../src/theme-parser.c:2754
+#: ../src/theme-parser.c:2926 ../src/theme-parser.c:3021
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"y\" गुण छैन"
+
+#: ../src/theme-parser.c:1877 ../src/theme-parser.c:1984
+#: ../src/theme-parser.c:2130 ../src/theme-parser.c:2211
+#: ../src/theme-parser.c:2317 ../src/theme-parser.c:2415
+#: ../src/theme-parser.c:2635 ../src/theme-parser.c:2761
+#: ../src/theme-parser.c:2933
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"चौडाई\" गुण छैन"
+
+#: ../src/theme-parser.c:1884 ../src/theme-parser.c:1991
+#: ../src/theme-parser.c:2137 ../src/theme-parser.c:2218
+#: ../src/theme-parser.c:2324 ../src/theme-parser.c:2422
+#: ../src/theme-parser.c:2642 ../src/theme-parser.c:2768
+#: ../src/theme-parser.c:2940
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "तत्व <%s> मा \"उचाइ\" गुण छैन"
+
+#: ../src/theme-parser.c:2000
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "तत्व <%s> मा \"सुरु कोण\" वा \"बाट\" गुण छैन"
+
+#: ../src/theme-parser.c:2007
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "तत्व <%s> मा \"विस्तार कोण\" वा \"लाई\" गुण छैन"
+
+#: ../src/theme-parser.c:2016
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"सुरुको कोण\" गुण छैन"
+
+#: ../src/theme-parser.c:2023
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"विस्तार कोण\" गुण छैन"
+
+#: ../src/theme-parser.c:2225
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"अल्फा\" गुण छैन"
+
+#: ../src/theme-parser.c:2296
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"प्रकार\" गुण छैन"
+
+#: ../src/theme-parser.c:2344
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "ग्रेडियन्टको प्रकारका लागि मान \"%s\" पहिचान गरेन"
+
+#: ../src/theme-parser.c:2429
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"फाइलनाम\" गुण छैन"
+
+#: ../src/theme-parser.c:2454 ../src/theme-parser.c:2965
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "तत्व <%s> का लागि भर्ने प्रकार \"%s\" पहिचान गर्न सकेन"
+
+#: ../src/theme-parser.c:2600 ../src/theme-parser.c:2733
+#: ../src/theme-parser.c:2838
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"वस्तुस्थिति\" गुण छैन"
+
+#: ../src/theme-parser.c:2607 ../src/theme-parser.c:2740
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "<%s> तत्वमा \"छाँया\" गुण छैन"
+
+#: ../src/theme-parser.c:2614
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "तत्व <%s> मा \"बाण\" गुण छैन"
+
+#: ../src/theme-parser.c:2667 ../src/theme-parser.c:2789
+#: ../src/theme-parser.c:2877
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "तत्व <%s> का लागि वस्तुस्थिति \"%s\" पहिचान गरेन"
+
+#: ../src/theme-parser.c:2677 ../src/theme-parser.c:2799
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "तत्व <%s> का लागि छाया \"%s\" पहिचान गरेन"
+
+#: ../src/theme-parser.c:2687
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "तत्व <%s> का लागि बाण \"%s\" पहिचान गरेन"
+
+#: ../src/theme-parser.c:3100 ../src/theme-parser.c:3216
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "\"%s\" भनिने <draw_ops> वर्णन गरिएको छैन"
+
+#: ../src/theme-parser.c:3112 ../src/theme-parser.c:3228
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "यहाँ रेखाङ्कन विकल्प \"%s\" सम्मिलित चक्रिय सन्दर्भ सिर्जना गरिन्छ"
+
+#: ../src/theme-parser.c:3291
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "तत्व <%s> मा \"मान\" गुण छैन"
+
+#: ../src/theme-parser.c:3348
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "तत्व <%s> मा \"स्थिति\" गुण छैन"
+
+#: ../src/theme-parser.c:3357
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "फ्रेम टुक्राका लागि अज्ञात स्थिति \"%s\""
+
+#: ../src/theme-parser.c:3365
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "फ्रेम शैलीको स्थिति %s मा पहिले नै टुक्रा छ"
+
+#: ../src/theme-parser.c:3382 ../src/theme-parser.c:3473
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr " \"%s\" नाम भएको <draw_ops> परिभाषित गरिएको छैन"
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "तत्व <%s> मा \"प्रकार्य\" गुण छैन"
+
+#: ../src/theme-parser.c:3418 ../src/theme-parser.c:3534
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "तत्व <%s> मा \"वस्तुस्थिति\" गुण छैन"
+
+#: ../src/theme-parser.c:3427
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "बटन \"%s\" का लागि अज्ञात प्रकार्य"
+
+#: ../src/theme-parser.c:3436
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "बटन प्रकार्य \"%s\" यो संस्करणमा अवस्थित छैन (%d, आवश्यक %d)"
+
+#: ../src/theme-parser.c:3448
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "वटनका लागि अज्ञात स्थिति \"%s\""
+
+#: ../src/theme-parser.c:3456
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "प्रकार्य %s वस्तुस्थिति %s का लागि फ्रेम शैलीमा पहिले नै एउटा बटन छ"
+
+#: ../src/theme-parser.c:3526
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "तत्व <%s> मा \"फोकस\" गुण छैन"
+
+#: ../src/theme-parser.c:3542
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "तत्व <%s> मा \"शैली\" गुण छैन"
+
+#: ../src/theme-parser.c:3551
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "फोकस गुणका लागि \"%s\" मान्य मान होइन"
+
+#: ../src/theme-parser.c:3560
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "वस्तुस्थिति गुणका लागि \"%s\" मान्य मान होइन"
+
+#: ../src/theme-parser.c:3570
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" भनिने शैली परिभाषित गरिएको छैन"
+
+#: ../src/theme-parser.c:3581
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "तत्व <%s> मा \"रिसाइज\" गुण छैन"
+
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3614
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "रिसाइज गुणका लागि \"%s\" मान्य मान होइन"
+
+#: ../src/theme-parser.c:3625
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "बढाइएका/छाया पारिएका वस्तुस्थितिका लागि <%s> तत्वमा \"रिसाइज\" गुण हुनुहुदैन"
+
+#: ../src/theme-parser.c:3639
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "बढाइएका वस्तुस्थितिका लागि <%s> तत्वमा \"रिसाइज\" गुण हुनुहुदैन"
+
+#: ../src/theme-parser.c:3653 ../src/theme-parser.c:3675
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "वस्तुस्थिति %s रिसाइज %s फोकस %s का लागि शैली पहिले नै निर्दिष्ट गरिएको छ"
+
+#: ../src/theme-parser.c:3664 ../src/theme-parser.c:3686
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "वस्तुस्थिति %s फोकस %s का लागि शैली पहिले नै निर्दिष्ट गरिएको छ"
+
+#: ../src/theme-parser.c:3725
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "<piece> तत्वको लागी दुई रेखाङ्कन विकल्प राख्न सकिँदैन (विषयवस्तु निर्दिष्ट गरिएका रेखाङ्कन विकल्प गुण र एउटा <draw_ops> तत्व, वा निर्दिष्ट गरिएका दुई तत्व पनि)"
+
+#: ../src/theme-parser.c:3763
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "<button> बटनका लागि दुई रेखाङ्कन विकल्प राख्न सकिँदैन (विषयवस्तु निर्दिष्ट गरिएका रेखाङ्कन विकल्प गुण र एउटा <draw_ops> तत्व, वा निर्दिष्ट गरिएका दुई तत्व पनि)"
+
+#: ../src/theme-parser.c:3801
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "तत्व <menu_icon> का लागि दुई रेखाङ्कन विकल्प राख्न सकिँदैन (विषयवस्तु निर्दिष्ट गरिएका रेखाङ्कन विकल्प गुण र एउटा <draw_ops> तत्व, वा निर्दिष्ट गरिएका दुई तत्व पनि)"
+
+#: ../src/theme-parser.c:3849
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "विषयवस्तुको सबैभन्दा बाहिरको तत्व <marco_theme> नहुनुपर्दछ <%s>"
+
+#: ../src/theme-parser.c:3869
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "तत्व <%s> लाई name/author/date/description तत्व भित्र अनुमति छैन"
+
+#: ../src/theme-parser.c:3874
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "तत्व <%s> लाई <constant> तत्व भित्र अनुमति छैन"
+
+#: ../src/theme-parser.c:3886
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "तत्व <%s> लाई distance/border/aspect_ratio तत्व भित्र अनुमति छैन"
+
+#: ../src/theme-parser.c:3908
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "तत्व <%s> लाई रेखाङ्कन कार्य तत्व भित्र अनुमती छैन"
+
+#: ../src/theme-parser.c:3918 ../src/theme-parser.c:3948
+#: ../src/theme-parser.c:3953 ../src/theme-parser.c:3958
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%s>तत्व भित्र <%s>तत्वलाई अनुमति छैन"
+
+#: ../src/theme-parser.c:4180
+msgid "No draw_ops provided for frame piece"
+msgstr "फ्रेम टुक्राका लागि रेखाङ्कन विकल्प उपलब्ध छैन"
+
+#: ../src/theme-parser.c:4195
+msgid "No draw_ops provided for button"
+msgstr "बटनका लागि कुनै रेखाङ्कन विकल्प उपलब्ध छैन"
+
+#: ../src/theme-parser.c:4247
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> तत्वभित्र कुनै पाठलाइ अनुमति छैन"
+
+#: ../src/theme-parser.c:4302
+msgid "<name> specified twice for this theme"
+msgstr "<name> यस विषयका लागि दुई पटक निर्दिष्ट गरियो"
+
+#: ../src/theme-parser.c:4313
+msgid "<author> specified twice for this theme"
+msgstr "<author> यस विषयवस्तुका लागि दुई पटक निर्दिष्ट गरियो"
+
+#: ../src/theme-parser.c:4324
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> यस विषयवस्तुका लागि दुई पटक निर्दिष्ट गरियो"
+
+#: ../src/theme-parser.c:4335
+msgid "<date> specified twice for this theme"
+msgstr "<date> यस विषयवस्तुका लागि दुई पटक निर्दिष्ट गरियो"
+
+#: ../src/theme-parser.c:4346
+msgid "<description> specified twice for this theme"
+msgstr "<description> यस विषयवस्तुका लागि दुई पटक निर्दिष्ट गरियो"
+
+#: ../src/theme-parser.c:4573
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "विषयवस्तु %s का लागि मान्य फाइल फेला पार्न असफल\n"
+
+#: ../src/theme-parser.c:4629
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "विषयवस्तु फाइल %s ले मूल <marco_theme> तत्व समावेश गरेन"
+
+#: ../src/theme-viewer.c:74
+msgid "/_Windows"
+msgstr "/सञ्झ्याल"
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/tearoff"
+msgstr "/सञ्झ्याल/टियरअफ"
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Dialog"
+msgstr "/सञ्झ्याल/संवाद"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Modal dialog"
+msgstr "/सञ्झ्याल/मोडल संवाद"
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Utility"
+msgstr "/सञ्झ्याल/उपयोगिता"
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Splashscreen"
+msgstr "/सञ्झ्याल/स्प्लासस्क्रिन"
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_Top dock"
+msgstr "/सञ्झ्याल/माथिको डक"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/_Bottom dock"
+msgstr "/सञ्झ्याल/तलको डक"
+
+#: ../src/theme-viewer.c:82
+msgid "/Windows/_Left dock"
+msgstr "/सञ्झ्याल/बायाँ डक"
+
+#: ../src/theme-viewer.c:83
+msgid "/Windows/_Right dock"
+msgstr "/सञ्झ्याल/दायाँ डक"
+
+#: ../src/theme-viewer.c:84
+msgid "/Windows/_All docks"
+msgstr "/सञ्झ्याल/सबै डक"
+
+#: ../src/theme-viewer.c:85
+msgid "/Windows/Des_ktop"
+msgstr "/सञ्झ्याल/डेस्कटप"
+
+#: ../src/theme-viewer.c:134
+msgid "Open another one of these windows"
+msgstr "यी सञ्झ्याल बाहेकको सञ्झ्याल खोल्नुहोस्"
+
+#: ../src/theme-viewer.c:141
+msgid "This is a demo button with an 'open' icon"
+msgstr "यो 'खोल्नुहोस्' प्रतिमा भएको प्रदर्शन बटन हो"
+
+#: ../src/theme-viewer.c:148
+msgid "This is a demo button with a 'quit' icon"
+msgstr "यो 'अन्त्य' प्रतिमा भएको प्रदर्शन बटन हो"
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr "यो नमुना संवादको नमुना सन्देश हो"
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "नक्कली मेनु सामाग्री %d\n"
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "किनारा मात्रको सञ्झ्याल"
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr "पट्टी"
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "सामान्य अनुप्रयोग सञ्झ्याल"
+
+#: ../src/theme-viewer.c:381
+msgid "Dialog Box"
+msgstr "संवाद बाकस"
+
+#: ../src/theme-viewer.c:385
+msgid "Modal Dialog Box"
+msgstr "नमूना संवाद बाकस"
+
+#: ../src/theme-viewer.c:389
+msgid "Utility Palette"
+msgstr "रङदानी उपयोगिता"
+
+#: ../src/theme-viewer.c:393
+msgid "Torn-off Menu"
+msgstr "टर्न अफ मेनु"
+
+#: ../src/theme-viewer.c:397
+msgid "Border"
+msgstr "किनारा"
+
+#: ../src/theme-viewer.c:725
+#, c-format
+msgid "Button layout test %d"
+msgstr "बटन सजावट परीक्षण %d"
+
+#: ../src/theme-viewer.c:754
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "एउटा सञ्झ्याल फ्रेम कोर्न %g मिलिसेकेन्ड"
+
+#: ../src/theme-viewer.c:797
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "प्रयोग: मेटासिटि विषयवस्तु दर्शक [THEMENAME]\n"
+
+#: ../src/theme-viewer.c:804
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "विषयवस्तु लोड गर्दा त्रुटि: %s\n"
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "विषयवस्तु \"%s\" लाई %g सेकेन्डमा लोड गरियो\n"
+
+#: ../src/theme-viewer.c:833
+msgid "Normal Title Font"
+msgstr "सामान्य शीर्षक फन्ट"
+
+#: ../src/theme-viewer.c:839
+msgid "Small Title Font"
+msgstr "सानो शीर्षक फन्ट"
+
+#: ../src/theme-viewer.c:845
+msgid "Large Title Font"
+msgstr "ठूलो शीर्षक फन्ट"
+
+#: ../src/theme-viewer.c:850
+msgid "Button Layouts"
+msgstr "बटन सजावट"
+
+#: ../src/theme-viewer.c:855
+msgid "Benchmark"
+msgstr "बेन्चमार्क"
+
+#: ../src/theme-viewer.c:902
+msgid "Window Title Goes Here"
+msgstr "सञ्झ्याल शीर्षक यहाँ देखिन्छ"
+
+#: ../src/theme-viewer.c:1006
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+" %d फ्रेमलाई %g क्लाइन्ट तिरको सेकेन्डमा (%g मिलिसेकेन्ड प्रति फ्रेम) र %g सेकेन्ड वाल घडी समय जहाँ "
+"X सर्भर संसाधन सम्मिलित (%g मिलिसेकेन्ड प्रति फ्रेम) हुन्छ रेखाङ्कन गर्नुहोस्\n"
+
+#: ../src/theme-viewer.c:1219
+msgid "position expression test returned TRUE but set error"
+msgstr "स्थिति अभिव्यक्ति परीक्षणले TRUE फिर्ता गर्यो तर त्रुटि सेट गर्यो"
+
+#: ../src/theme-viewer.c:1221
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "स्थिति अभिव्यक्ति परीक्षणले FALSE फिर्ता गर्यो तर त्रुटि सेट गरेन"
+
+#: ../src/theme-viewer.c:1225
+msgid "Error was expected but none given"
+msgstr "त्रुटि अपेक्षा गरिएको थियो तर केही दिएन"
+
+#: ../src/theme-viewer.c:1227
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "त्रुटि %d अपेक्षा गरिएको थियो तर %d प्राप्त भएको छ"
+
+#: ../src/theme-viewer.c:1233
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "त्रुटि अपेक्षा गरिएको थिएन तर एउटा फिर्ता भयो: %s"
+
+#: ../src/theme-viewer.c:1237
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x मान %d थियो, %d अपेक्षा गरिएको थियो"
+
+#: ../src/theme-viewer.c:1240
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y मान %d थियो, %d अपेक्षा गरिएको थियो"
+
+#: ../src/theme-viewer.c:1303
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d संयोजन अभिव्यक्ति %g सेकेन्डमा पद वर्णन गरियो ( औसत %g सेकेन्ड)\n"
+
+#: ../src/theme.c:206
+msgid "top"
+msgstr "माथि"
+
+#: ../src/theme.c:208
+msgid "bottom"
+msgstr "तल"
+
+#: ../src/theme.c:210
+msgid "left"
+msgstr "बायाँ"
+
+#: ../src/theme.c:212
+msgid "right"
+msgstr "दायाँ"
+
+#: ../src/theme.c:226
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "फ्रेम जमेट्रीले \"%s\" आयाम निर्दिष्ट गर्दैन"
+
+#: ../src/theme.c:245
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "फ्रेम जमेट्रीले किनारा \"%s\" का लागि आयाम \"%s\" निर्दिष्ट गर्दैन"
+
+#: ../src/theme.c:282
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "बटन आकार अनुपात %g उचित छैन"
+
+#: ../src/theme.c:294
+msgid "Frame geometry does not specify size of buttons"
+msgstr "फ्रेम जमेट्रीले बटनको साइज निर्दिष्ट गर्दैन"
+
+#: ../src/theme.c:925
+msgid "Gradients should have at least two colors"
+msgstr "ग्रेडियन्टमा कम्तिमा पनि दुई रङ हुनुपर्दछ"
+
+#: ../src/theme.c:1051
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"जीटीके (GTK) रङ विशिष्टिकरणमा कोष्ठक स्थिति हुनुपर्दछ, जस्तै; gtk:fg[NORMAL] "
+"जहाँ NORMAL स्थिति हो; पद वर्णन गर्न सकेन \"%s\""
+
+#: ../src/theme.c:1065
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"जीटीके (GTK) रङ विशिष्टिकरणमा अवस्थिति पछाडी बन्द कोष्ठक हुनुपर्दछ, जस्तै gtk:"
+"fg[NORMAL] जहाँ NORMAL स्थिति हो; पद वर्णन गर् सकेन \"%s\""
+
+#: ../src/theme.c:1076
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "रङ विशिष्टिकरणमा स्थिति \"%s\" पहिचान गरेन"
+
+#: ../src/theme.c:1089
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "रङ विशिष्टिकरणमा रङ अवयव \"%s\" पहिचान गरने"
+
+#: ../src/theme.c:1119
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "मिश्रण ढाँचा \"blend/bg_color/fg_color/alpha\" हो, \"%s\" ढाँचामा मिल्दैन"
+
+#: ../src/theme.c:1130
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "मिश्रण गरिएको रङमा अल्फा मान \"%s\" पद वर्णन गर्न सकेन"
+
+#: ../src/theme.c:1140
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "मिश्रण गरिएको रङमा अल्फा मान \"%s\" ०.० र १.० को बीचमा छैन"
+
+#: ../src/theme.c:1187
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "छाया ढाँचा \"shade/base_color/factor\" हो, \"%s\" ढाँचामा मिल्दैन"
+
+#: ../src/theme.c:1198
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "छाया पारिएको रङमा छाया तत्व \"%s\" पद वर्णन गर्न सकेन"
+
+#: ../src/theme.c:1208
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "छाया पारिएको रङको छाया तत्व \"%s\" ऋणात्मक छ"
+
+#: ../src/theme.c:1237
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "रङ \"%s\" पद वर्णन गर्न सकेन"
+
+#: ../src/theme.c:1496
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "संयोजन अभिव्यक्तिले अनुमति नभएको क्यारेक्टर '%s' समाविष्ट गर्दछ"
+
+#: ../src/theme.c:1523
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "संयोजन अभिव्यक्तिले पद वर्णन गर्न नसकिने उत्प्लावन बिन्दु नम्बर '%s' समाविष्ट गर्दछ"
+
+#: ../src/theme.c:1537
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "संयोजन अभिव्यक्तिले पद वर्णन गर्न नसकिने इन्टिजर '%s' समाविष्ट गर्दछ"
+
+#: ../src/theme.c:1604
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"संयोजन अभिव्यक्तिले यसो पाठकोसुुरूमा अज्ञातञ्चालक राखेको छ: "
+"\"%s\""
+
+#: ../src/theme.c:1661
+msgid "Coordinate expression was empty or not understood"
+msgstr "संयोजन अभिव्यक्ति खाली वा नबुझिने थियो"
+
+#: ../src/theme.c:1798 ../src/theme.c:1808 ../src/theme.c:1842
+msgid "Coordinate expression results in division by zero"
+msgstr "संयोजन अभिव्यक्ति परिणाम शून्यद्वारा भाग जाने हुन्छ"
+
+#: ../src/theme.c:1850
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "संयोजन अभिव्यक्तिले उत्प्लाव बिन्दु नम्बरमा मोड सञ्चालनकर्ता प्रयोग गर्ने प्रयास गर्दछ"
+
+#: ../src/theme.c:1906
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "संयोजन अभिव्यक्तिमा अपेक्षित अपरेन्डको साटोमा सञ्चालनकर्ता \"%s\" छ"
+
+#: ../src/theme.c:1915
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "संयोजन अभिव्यक्तिमा अपेक्षित सञ्चालनकर्ताको साटोमा अपरेन्ड थियो"
+
+#: ../src/theme.c:1923
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "संयोजन अभिव्यक्ति ओपरन्डको साटोमा सञ्चालनकर्तासँग समाप्त भयो"
+
+#: ../src/theme.c:1933
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "संयोजन अभिव्यक्तिसँग सञ्चालनकर्ता \"%c\" पछ्याउने सञ्चालनकर्ता \"%c\" छ जसको बीचमा अपरेन्ड छैन"
+
+#: ../src/theme.c:2051
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "संयोजन अभिव्यक्ति पद वर्णकले यसको बफरलाई अतिप्रवाह गर्यो ।"
+
+#: ../src/theme.c:2080
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "संयोजन अभिव्यक्तिमा खुला कोष्ठक नभएको खुला कोष्ठक थियो"
+
+#: ../src/theme.c:2142
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "संयोजन अभिव्यक्तिमा अज्ञात चल वा अचल \"%s\" थियो ।"
+
+#: ../src/theme.c:2197
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "संयोजन अभिव्यक्तिमा बन्द गर्ने कोष्ठक नभएको खुला कोष्ठक थियो"
+
+#: ../src/theme.c:2208
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "संयोजन अभिव्यक्तिमा कुनै सञ्चालक वा अपरेन्ड नभएको देखिन्छ"
+
+#: ../src/theme.c:2449 ../src/theme.c:2471 ../src/theme.c:2492
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "विषयवस्तुले अभिव्यक्ति \"%s\" समाविष्ट गर्यो जसको कारणले एउटा त्रुटि भयो: %s\n"
+
+#: ../src/theme.c:3946
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> यो फ्रेम शैलीका लागि निर्दिष्ट गरिएको हुनुपर्दछ"
+
+#: ../src/theme.c:4422 ../src/theme.c:4447
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "हराइराखेको <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/theme.c:4493
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "\"%s\": %s विषयवस्तु लोड गर्न असफल\n"
+
+#: ../src/theme.c:4603 ../src/theme.c:4610 ../src/theme.c:4617
+#: ../src/theme.c:4624 ../src/theme.c:4631
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "\"%s\" विषयको लागी <%s> सेट भएन"
+
+#: ../src/theme.c:4639
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"विन्डो प्रकार \"%s\" को लागी विषय \"%s\" मा खाका शैली सेट भएको छैन, <windowtype="
+"\"%s\"style_set=\"whatever\"/> तत्व थप्नुहोस्"
+
+#: ../src/theme.c:5006 ../src/theme.c:5068 ../src/theme.c:5131
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "प्रयोगकर्ताको वर्णन ठूलो अक्षरबाट सुरू हुनुपर्छ, \"%s\" होइन"
+
+#: ../src/theme.c:5014 ../src/theme.c:5076 ../src/theme.c:5139
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "अचर \"%s\" पहिले नै परिभाषित गरिएको छ"
+
+#: ../src/util.c:98
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "त्रुटिमोचक कार्य खोल्न असफल: %s\n"
+
+#: ../src/util.c:108
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "कार्य फाइल %s: %s fdopen() गर्न असफल\n"
+
+#: ../src/util.c:114
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "कार्य फाइल %s खोलियो\n"
+
+#: ../src/util.c:231
+msgid "Window manager: "
+msgstr "सञ्झ्याल प्रबन्धक: "
+
+#: ../src/util.c:379
+msgid "Bug in window manager: "
+msgstr "सञ्झ्याल प्रबन्धकमा त्रुटि: "
+
+#: ../src/util.c:408
+msgid "Window manager warning: "
+msgstr "सञ्झ्याल प्रबन्धक चेतावनी: "
+
+#: ../src/util.c:432
+msgid "Window manager error: "
+msgstr "सञ्झ्याल प्रबन्धक त्रुटि: "
+
+#: ../src/window-props.c:192
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "एउटा bogus _NET_WM_PID %lu अनुप्रयोग सेट\n"
+
+#: ../src/window-props.c:324
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (मा %s)"
+
+#: ../src/window-props.c:1406
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "अमान्य WM_TRANSIENT_FOR सञ्झ्याल 0x%lx जसलाई %s का लागि निर्दिष्ट गरिएको छ ।\n"
+
+#. first time through
+#: ../src/window.c:5551
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"सञ्झ्याल %s ले ICCCM मा निर्दिष्ट गरे अनुरूपको "
+"सञ्झ्याल WM_CLIENT_LEADER "
+"को साटोमा आफ्नैमा SM_CLIENT_ID सेट गर्दछ ।\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:6116
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"सञ्झ्याल %s ले MWM सङ्केतलाई साइज परिवर्तन गर्न नमिल्ने देखाएर सेट गर्दछ, तर न्यूनतम साइज %"
+"d x %d र अधिकतम साइज %d x %d सेट गर्दछ; यसले धेरै अर्थ दिदैन ।\n"
+
+#: ../src/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"सञ्झ्याल 0x%lx मा %s गुण छ\n"
+"त्यसमा प्रकार %s ढाँचा %d हुने अपेक्षा गरिएको थियो\n"
+"र वास्तवमा प्रकार %s ढाँचा %d n_items %d छ ।\n"
+"यो धेरैजसो सञ्झ्याल प्रबन्धक बगका कारणले नभई अनुप्रयोग बगका कारणले हुनसक्छ ।\n"
+"सञ्झ्यालमा title=\"%s\" class=\"%s\" name=\"%s\" छ\n"
+
+#: ../src/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "गुण %s जुन सञ्झ्याल 0x%lx छ र अमान्य UTF-8 समावेश छ\n"
+
+#: ../src/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "गुण %s जुन सञ्झ्याल 0x%lx मा छ, सूचीमा वस्तु %d का लागि अमान्य UTF-8 समावेश गरेको छ\n"
+
diff --git a/po/nl.po b/po/nl.po
new file mode 100644
index 00000000..a5d84d72
--- /dev/null
+++ b/po/nl.po
@@ -0,0 +1,2481 @@
+# Dutch translation for marco
+#
+# This file is distributed under the same license as the marco package.
+#
+# Tino Meinen <[email protected]>, 2003–2004, 2006, 2008.
+# Reinout van Schouwen <[email protected]>, 2003–2007.
+# Michiel Sikkes <[email protected]>, 2005.
+# Wouter Bolsterlee <[email protected]>, 2006–2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-20 17:32+0100\n"
+"PO-Revision-Date: 2010-03-20 17:32+0100\n"
+"Last-Translator: Wouter Bolsterlee <[email protected]>\n"
+"Language-Team: Dutch <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Werkblad"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Vensterbeheer"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Bel-evenement"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Onbekende vensterinformatieaanvraag: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> reageert niet."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"U kunt ervoor kiezen even te wachten totdat het doorgaat of de toepassing "
+"dwingen om helemaal af te sluiten."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Wachten"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "Ge_forceerd afsluiten"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Ophalen hostnaam mislukt: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Benodige extensie ‘%s’ voor ‘compositing’ ontbreekt"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Openen van X Window System display ‘%s’ mislukt\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Verbinding is verbroken met display '%s';\n"
+"waarschijnlijk is de X-server uitgezet of heeft u de window-manager "
+"vernietigd.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Fatale IO-fout %d (%s) op display ‘%s’.\n"
+
+# Gebruik controletoets als vertaling van modifier (Ctrl/Shift/Alt/Esc)
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Een ander programma gebruikt reeds de %s-toets met controletoets %x als "
+"toetsbinding\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Er trad een fout op bij het uitvoeren van <tt>%s</tt>:\n"
+"\n"
+"%s."
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Er is geen opdracht %d gedefinieerd.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Er is geen opdracht voor de terminal gedefinieerd.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright © 2001-%s Havoc Pennington, Red Hat, Inc., en anderen\n"
+"Dit is vrije software; zie de broncode voor de kopieervoorwaarden.\n"
+"Er is GEEN garantie; zelfs niet voor VERKOOPBAARHEID of GESCHIKTHEID VOOR "
+"EEN BEPAALD DOEL.\n"
+
+# te zien via: marco --help
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Schakel de verbinding met het sessiebeheer uit"
+
+# met:"'t" ipv "het" past het net op 1 regel in mate-terminal
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Vervang 't huidige schermbeheerprogramma door Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Specificeer de ID van het sessiebeheer"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "De te gebruiken X-weergave"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Initialiseer de sessie middels een opslagbestand"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Toon versie-informatie"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Zorg dat X-aanroepen synchroon zijn"
+
+# technotalk
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "‘Compositing’ inschakelen"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "‘Compositing’ uitschakelen"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Geen gemaximaliseerde vensters op het volledige scherm maken zonder "
+"vensterdecoratie"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Kon themamap niet scannen: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Kon geen thema vinden! Zorg ervoor dat %s bestaat en de gebruikelijke "
+"thema's bevat.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Herstarten mislukt: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf-sleutel '%s' is ingesteld op een ongeldige waarde\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d opgeslagen in MateConf-sleutel %s valt buiten het bereik %d tot %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf-sleutel ‘%s’ is op een ongeldig type ingesteld\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Werkoplossing voor gebroken toepassingen uitgezet. Bepaalde toepassingen "
+"zullen niet naar behoren functioneren.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Kon lettertypebeschrijving ‘%s’ niet verwerken van Gconf-sleutel %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"‘%s’, gevonden in de configuratiedatabase, is geen geldige waarde voor de "
+"muisknop-optietoets\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Fout bij het instellen van het aantal werkbladen op %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Werkblad %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"‘%s’ in de configuratiedatabase is geen geldige waarde voor toetsbinding ‘%"
+"s’\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Fout bij het instellen van de naam voor werkblad %d op ‘%s’: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Fout bij het instellen van ‘compositor’-status: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Scherm %d op display '%s' is ongeldig\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Scherm %d op display ‘%s’ heeft al een windowmanager; probeer de optie: --"
+"replace te gebruiken om de huidige windowmanager te vervangen.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Kon windowmanager-selectie niet verkrijgen op scherm %d display ‘%s’\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Scherm %d op display ‘%s’ heeft al een windowmanager\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Kon scherm %d op display ‘%s’ niet vrijmaken\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Het formaat ziet eruit als ‘<Control>a’ of ‘<Shift><Alt>F1’.\n"
+"\n"
+"Hierbij zijn zowel kleine als hoofdletters toegestaan, evenals afkortingen "
+"zoals ‘<Ctl>’ en ‘<Ctrl>’. Indien u de optie instelt op de speciale waarde "
+"‘disabled’, dan zal deze actie geen toetskoppeling hebben."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Het formaat ziet eruit als ‘<Control>a’ of ‘<Shift><Alt>F1’.\n"
+"\n"
+"Hierbij zijn zowel kleine als hoofdletters toegestaan, evenals afkortingen "
+"zoals ‘<Ctl>’ en ‘<Ctrl>’. Indien u de optie instelt op de speciale waarde "
+"‘disabled’, dan zal deze actie geen toetskoppeling hebben.\n"
+"Deze sneltoets kan omgekeerd worden door de Shift-toets ingedrukt te houden. "
+"Om die reden mag Shift geen onderdeel uitmaken van de toetscombinatie."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Kon map '%s' niet aanmaken: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Kon sessiebestand '%s' niet openen voor schrijven: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Fout bij schrijven sessiebestand '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Fout bij sluiten sessiebestand '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Lezen van opgeslagen sessiebestand %s mislukt: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Verwerken van opgeslagen sessiebestand mislukt: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"<marco_session>-attribuut opgemerkt maar we hebben reeds de sessie-ID"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Onbekend attribuut ‘%s’ op <%s>-element"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "ingebedde <window>-markering"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Onbekend element %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Deze vensters ondersteunen het opslaan van de huidige instellingen niet en "
+"zullen bij een volgende sessie opnieuw moeten worden opgestart."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Debug-logboek openen mislukt: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Logboek %s openen via fdopen() mislukt: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Logboek %s geopend\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco is gecompileerd zonder ondersteuning voor verbose-mode\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Windowmanager:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Fout in windowmanager:"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Windowmanager waarschuwing:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Windowmanager fout:"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Venster %s stelt zelf SM_CLIENT_ID in, in plaats van bij het "
+"WM_CLIENT_LEADER-venster zoals gespecificeerd wordt in de ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Venster %s geeft een MWM-hint dat de grootte niet kan worden aangepast, maar "
+"stelt wel min-grootte %d x %d en max-grootte %d x %d in; dit is niet "
+"logisch.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Toepassing heeft een overbodige _NET_WM_PID %lu ingesteld\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (op %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (als beheerder)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (als %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (als een andere gebruiker)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Ongeldig WM_TRANSIENT_FOR venster 0x%lx opgegeven voor %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Venster 0x%lx heeft eigenschap %s\n"
+"welke zou moeten hebben: type %s en formaat %d\n"
+"maar in feite heeft: type %s formaat %d n_items %d.\n"
+"Dit is waarschijnlijk een fout van de toepassing, niet van de "
+"windowmanager.\n"
+"Het venster heeft title=‘%s’ class=‘%s’ naam=‘%s’\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Eigenschap %s bij venster 0x%lx bevat ongeldige UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Eigenschap %s bij venster 0x%lx bevat ongeldige UTF-8 voor item %d van de "
+"lijst\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Schakelen naar werkblad 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Schakelen naar werkblad 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Schakelen naar werkblad 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Schakelen naar werkblad 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Schakelen naar werkblad 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Schakelen naar werkblad 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Schakelen naar werkblad 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Schakelen naar werkblad 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Schakelen naar werkblad 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Schakelen naar werkblad 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Schakelen naar werkblad 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Schakelen naar werkblad 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Schakelen naar werkblad links van het huidige werkblad"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Schakelen naar werkblad rechts van het huidige werkblad"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Schakelen naar werkblad boven van het huidige werkblad"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Schakelen naar werkblad onder van het huidige werkblad"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Wisselen van venster binnen een toepassing met een opduikvenster"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Achterwaarts wisselen van venster binnen een toepassing met een opduikvenster"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Wisselen van venster met een opduikvenster"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Achterwaarts wisselen van venster met een opduikvenster"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Wisselen tussen panelen en het bureaublad met een opduikvenster"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Achterwaarts wisselen tussen panelen en het bureaublad met een opduikvenster"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Direct wisselen van venster binnen een toepassing"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Direct achterwaarts wisselen van venster binnen een toepassing"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Direct wisselen van venster"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Direct achterwaarts wisselen van venster"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Direct wisselen tussen panelen en het bureaublad"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Direct achterwaards wisselen tussen panelen en het bureaublad"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Alle normale vensters verbergen en het bureaublad de aandacht geven"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Het paneelmenu tonen"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Het paneeldialoogvenster ‘Toepassing uitvoeren’ tonen"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Een schermafdruk maken"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Een schermafdruk van een venster maken"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Een terminal opstarten"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Venstermenu activeren"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Volledig scherm-modus omschakelen"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Maximalisatiestaat omschakelen"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "‘Altijd bovenop’-instelling omschakelen"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Venster maximaliseren"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Venster herstellen"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Opgerold-staat omschakelen"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Venster minimaliseren"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Venster sluiten"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Venster verplaatsen"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Venstergrootte veranderen"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "‘Venster is op alle werkbladen zichtbaar’ omschakelen"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Venster verplaatsen naar werkblad 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Venster verplaatsen naar werkblad 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Venster verplaatsen naar werkblad 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Venster verplaatsen naar werkblad 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Venster verplaatsen naar werkblad 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Venster verplaatsen naar werkblad 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Venster verplaatsen naar werkblad 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Venster verplaatsen naar werkblad 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Venster verplaatsen naar werkblad 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Venster verplaatsen naar werkblad 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Venster verplaatsen naar werkblad 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Venster verplaatsen naar werkblad 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Venster één werkblad naar links verplaatsen"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Venster één werkblad naar rechts verplaatsen"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Venster één werkblad naar boven verplaatsen"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Venster één werkblad naar beneden verplaatsen"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Venster naar boven halen indien overlapt door een ander venster, anders naar "
+"beneden halen"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Venster naar boven brengen boven andere vensters"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Venster naar beneden halen onder andere vensters"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Een venster verticaal maximaliseren"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Een venster horizontaal maximaliseren"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Venster verplaatsen naar de noordwest-hoek (linksboven)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Venster verplaatsen naar de noordoost-hoek (rechtsboven)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Venster verplaatsen naar de zuidwest-hoek (linksonder)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Venster verplaatsen naar de zuidoost-hoek (rechtsonder)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Venster verplaatsen naar de noordkant van het scherm (bovenzijde)"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Venster verplaatsen naar de zuidkant van het scherm (onderzijde)"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Venster verplaatsen naar de oostkant van het scherm (rechterzijde)"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Venster verplaatsen naar de westkant van het scherm (linkerzijde)"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Venster verplaatsen naar het midden van het scherm"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Niet geïmplementeerd) Navigatie werkt in termen van toepassingen, niet "
+"vensters"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Een lettertypebeschrijving voor het lettertype van de venstertitels. De "
+"grootte uit de beschrijving zal echter alleen worden gebruikt als "
+"‘titlebar_font_size’ op 0 is gezet. Tevens is deze optie uitgezet als "
+"‘titlebar_uses_desktop_font’ is ingeschakeld."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Actie bij titelbalk-dubbelklik"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Actie bij titelbalk-klik met middelste muisknop"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Actie bij titelbalk-klik met rechter muisknop"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Schikking van de knoppen op de titelbalk"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Schikking van de knoppen op de titelbalk. De waarde moet een tekenreeks zijn "
+"zoals: ‘menu:minimize,maximize,spacer,close’; de punt-komma scheidt de "
+"linkerhoek van het venster met de rechterhoek, de knop-namen zijn gescheiden "
+"door komma's. Dubbele knoppen zijn niet toegestaan. Onbekende knop-namen "
+"worden genegeerd zodat in toekomstige versies van marco, knoppen kunnen "
+"worden toegevoegd zonder oudere versies te breken. De waarde ‘spacer’ kan "
+"gebruikt worden om ruimte tussen twee naastgelegen knoppen te creëren."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Verhoogt automatisch het aandachtsvenster"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Klikken op een venster tijdens het inhouden van deze toets zal dit venster "
+"verplaatsen (linker muisknop), de grootte van het venster aanpassen "
+"(middelste muisknop), of het venstermenu tonen (rechter muisknop). De acties "
+"van de middelste en rechtermuisknop kunnen omgewisseld worden met de sleutel "
+"‘resize_with_right_button’. De Modifier-toets kan opgegeven worden met "
+"bijvoorbeeld ‘&lt;Alt&gt;’ of ‘&lt;Super&gt;’."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Opdrachten die worden uitgevoerd bij toetsbindingen"
+
+# technotalk
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "'Compositing manager'"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Beheren hoe nieuwe vensters aandacht krijgen"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Huidig thema"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Vertraging in milliseconden alvorens automatisch naar boven te halen"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Bepaalt of Marco een 'compositing manager' is"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Bepaalt of toepassingen of het systeem hoorbare 'piepjes' kan genereren; kan "
+"samen met 'visuele bel' gebruikt worden om geluidloze 'piepjes' mogelijk te "
+"maken."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Misfeatures uitzetten die vereist zijn voor oude of gebroken toepassingen"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Visuele bel gebruiken"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Indien waar, en de aandachtsmodus is ofwel ‘sloppy’ of ‘mouse’, dan zal het "
+"venster met aandacht na een bepaalde tijd, die ingesteld kan worden met de "
+"‘auto_raise_delay’-sleutel. Dit heeft geen invloed bij het aanklikken van "
+"een venster om het naar boven te halen en heeft ook geen invloed bij het "
+"slepen en loslaten van items op het venster."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Indien waar, de ‘titlebar_font’-optie negeren, en het standaard toepassings-"
+"font gebruiken voor venstertitels."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Indien waar, geeft marco de gebruiker minder directe terugkoppeling door "
+"raamwerken te gebruiken en animaties te minimaliseren. Dit is een "
+"behoorlijke vermindering van bruikbaarheid, maar kan ervoor zorgen dat "
+"oudere toepassingen blijven werken. Ook kan dit een voordeel zijn als er met "
+"terminal servers gewerkt wordt. Echter, de raamwerk functie is gedeactiveerd "
+"indien toegankelijkheid geactiveerd is."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Indien waar, werkt Marco in termen van toepassingen in plaats van "
+"vensters. Het concept is ietwat abstract, maar een toepassing-gebaseerde "
+"opstelling lijkt meer op een Macintosch dan op Windows. Als u een venster "
+"aandacht geeft in toepassing-gebaseerde modus, zullen alle vensters van de "
+"toepassing verhoogd worden. Tevens geldt dat aandachts-klikken niet worden "
+"doorgegeven naar vensters in andere toepassingen. De toepassing-gebaseerde "
+"modus is echter voor een groot deel nog niet geïmplementeerd."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Indien waar, bruikbaarheid inwisselen voor efficiënt bronnengebruik"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Controletoets voor aangepaste venster-klik acties"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Werkbladnaam"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Aantal werkbladen"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Aantal werkbladen. Moet groter zijn dan nul, en heeft een vast maximum om te "
+"voorkomen dat u per ongeluk uw werkomgeving vernietigt, door te vragen om te "
+"veel werkbladen."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Voorgedefineerde opdracht uitvoeren"
+
+# Zeer vrij vertaald (Wouter Bolsterlee)
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Indien ingeschakeld vensters met de rechtermuisknop van grootte veranderd "
+"worden en verschijnt met de middelste muisknop het venstermenu (deze "
+"functies werken alleen als de toets opgegeven in ‘mouse_button_modifier’ "
+"ingehouden wordt). Indien uitgeschakeld werkt het andersom: rechtermuisknop "
+"geeft een menu, middelste muisknop voor afmetingen wijzigen."
+
+# Pfff… http://bugzilla.gnome.org/show_bug.cgi?id=572051 (Wouter Bolsterlee)
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Uitschakelen van deze optie kan tot vreemd gedrag leiden, dus het wordt "
+"sterk afgeraden de standaardwaarde (ingeschakeld) te veranderen. Vele "
+"acties, zoals het klikken in een venster of het verplaatsen en van grootte "
+"veranderen van een venster, halen normaal gesproken het venster naar boven. "
+"Als deze optie uitgeschakeld wordt, hetgeen sterk afgeraden wordt, zal het "
+"naar boven en naar beneden halen van vensters loskoppelen van andere "
+"gebruikersinteracties en ook verzoeken tot naar boven halen door "
+"toepassingen negeren. Zie ook http://bugzilla.gnome.org/show_bug.cgi?"
+"id=445447#c6. Ook als deze optie uitgeschakeld is kunnen vensters omhoog "
+"gehaald worden met een Alt-linkerklik waar dan ook op het venster, een "
+"normale klik op de vensterrand, of door speciale verzoeken zoals "
+"bijvoorbeeld door een vensterlijst op het paneel. Deze optie is momenteel "
+"uitgeschakeld indien ‘klikken voor vensteraandacht’ is ingeschakeld. Bla bla "
+"bla… http://bugzilla.gnome.org/show_bug.cgi?id=572051"
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Sommige toepassingen houden geen rekening met specificaties die als "
+"resultaat hebben dat de vensterbeheerder niet met deze toepassingen om kan "
+"gaan. Deze optie zorgt ervoor dat Marco in een streng correctie modus "
+"werkt, die ervoor zorgt dat er een consistentere gebruiksomgeving ontstaat. "
+"Deze optie heeft echter alleen resultaat als er geen applicaties worden "
+"gedraaid die zich niet aan de specificaties houden."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Systeembel is hoorbaar"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Vertelt Marco hoe de de visuele indicatie dat de systeembel of een andere "
+"toepassings-bel is afgegaan, moet worden geimplementeerd. Momenteel zijn er "
+"twee geldige waardes, ‘fullscreen’, wat een zwart-witte flits over hele "
+"beelscherm geeft, of ‘frame_flash’ waarbij de titelbalk opflitst van de "
+"toepassing die het belsignaal gaf. Als de toepassing die het belletje gaf "
+"onbekend is (wat meestal het geval is bij de standaard ‘systeem-piep’), zal "
+"de titelbalk van het huidige scherm dat de focus heeft opflitsen."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"De sleutels: /apps/marco/global_keybindings/run_command_N definiëren "
+"toetskoppelingen die corresponderen met deze opdrachten. Het intoetsen van "
+"de toetskoppeling voor ‘run_command_N’ zal de opdracht ‘command_N’ uitvoeren."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"De sleutel ‘/apps/marco/global_keybindings/run_command_screenshot’ "
+"definieert een toetskoppeling waardoor de opdracht in deze instelling wordt "
+"uitgevoerd."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"De sleutel ‘/apps/marco/global_keybindings/run_command_window_screenshot’ "
+"definieert een toetskoppeling waardoor de opdracht in deze instelling wordt "
+"uitgevoerd."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"De toetskoppeling die de overeenkomstig genummerde opdracht in ‘/apps/"
+"marco/keybinding_commands’ uitvoert. Het formaat ziet eruit als ‘&lt;"
+"Control&gt;a’ of ‘&lt;Shift&gt;&lt;Alt&gt;F1’. Hierbij zijn kleine- en "
+"hoofdletters toegestaan, evenals afkortingen zoals ‘&lt;Ctl&gt;’ en ‘&lt;"
+"Ctrl&gt;’. Indien u de optie instelt op de speciale waarde ‘disabled’, dan "
+"zal deze actie geen toetskoppeling kennen."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "De naam van een werkblad."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "De opdracht voor schermafdruk"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Het thema bepaalt het uiterlijk van vensterranden, titelbalk, enzovoort."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"De wachttijd alvorens een venster naar boven te halen als ‘auto_raise’ op "
+"'true' staat. De wachttijd is gegeven in duizendsten van seconden."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"De vesteraandachtmodus geeft de wijze van vensteractivatie aan. Er zijn drie "
+"mogelijke waarden; ‘click’ betekent dat vensters moeten worden aangeklikt om "
+"ze aandacht te geven, ‘sloppy’ betekent dat vensters aandacht krijgen "
+"wanneer de muisaanwijzer het venster binnenkomt, en ‘mouse’ betekent dat "
+"vensters aandacht krijgen wanneer de muisaanwijzer het venster binnenkomt en "
+"aandacht verliezen wanneer de muisaanwijzer het venster verlaat."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "De opdracht voor venster-schermafdruk"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Deze optie bepaalt het effect van dubbelklikken op de titelbalk. Geldige "
+"waardes zijn ‘toggle_shade’, die het venster laat oprollen/afrollen, "
+"‘toggle_maximize’ die het venster maximaliseert/herstelt, "
+"‘toggle_maximize_horizontally' en ‘toggle_maximize_vertically’ die het "
+"venster alleen horizontaal of verticaal maximaliseren/herstellen, ‘minimize’ "
+"die het venster minimaliseert, ‘shade’ die het venster oprolt, ‘menu’ die "
+"het venstermenu toont, ‘lower’ die het venster achter alle andere vensters "
+"zet, en ‘none’ om niets te doen."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Deze optie bepaalt het effect van klikken op de titelbalk met de middelste "
+"muisknop. Geldige waardes zijn ‘toggle_shade’, die het venster laat oprollen/"
+"afrollen, ‘toggle_maximize’ die het venster maximaliseert/herstelt, "
+"‘toggle_maximize_horizontally' en ‘toggle_maximize_vertically’ die het "
+"venster alleen horizontaal of verticaal maximaliseren/herstellen, ‘minimize’ "
+"die het venster minimaliseert, ‘shade’ die het venster oprolt, ‘menu’ die "
+"het venstermenu toont, ‘lower’ die het venster achter alle andere vensters "
+"zet, en ‘none’ om niets te doen."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Deze optie bepaalt het effect van klikken op de titelbalk met de rechter "
+"muisknop. Geldige waardes zijn ‘toggle_shade’, die het venster laat oprollen/"
+"afrollen, ‘toggle_maximize’ die het venster maximaliseert/herstelt, "
+"‘toggle_maximize_horizontally' en ‘toggle_maximize_vertically’ die het "
+"venster alleen horizontaal of verticaal maximaliseren/herstellen, ‘minimize’ "
+"die het venster minimaliseert, ‘shade’ die het venster oprolt, ‘menu’ die "
+"het venstermenu toont, ‘lower’ die het venster achter alle andere vensters "
+"zet, en ‘none’ om niets te doen."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Deze optie geeft aanvullende beheermogelijkheden over de methode waarmee "
+"nieuwe vensters aandacht krijgen. Er zijn twee mogelijke waarden: ‘smart’ "
+"zorgt ervoor dat de normale methode wordt gebruikt; ‘strict’ zorgt ervoor "
+"dat vensters die vanuit een terminalvenster gestart worden geen aandacht "
+"krijgen."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Geeft een zichtbare indicatie wanneer een toepassing of het systeem een "
+"'bel' of 'piep' geeft; handig voor slechthorenden of voor gebruik in "
+"omgevingen met veel lawaai."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Standaard systeemlettertype gebruiken in venstertitels"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Visuele bel type"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Of het naar voren brengen een bijeffect is van andere gebruikersinteracties"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr ""
+"Of de rechtermuisknop gebruikt wordt het wijzigen van vensterafmetingen"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Vensteraandacht-modus"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Venstertitellettertype"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Gebruik: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Venster sluiten"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Venstermenu"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Venster minimaliseren"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Venster maximaliseren"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Venster herstellen"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Venster oprollen"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Venster afrollen"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Venster bovenop houden"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Venster van boven weghalen"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Altijd op zichtbaar werkblad"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Venster op slechts één werkblad zetten"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Minimaliseren"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximaliseren"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "_Herstellen"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Oprollen"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Uitrollen"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Verplaatsen"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Afmetingen _wijzigen"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "_Titelbalk op scherm plaatsen"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Altijd _bovenop"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Op _alle werkbladen zichtbaar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Alleen op _dit werkblad"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Verplaatsen naar werkblad lin_ks"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Verplaatsen naar werkblad _rechts"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Verplaatsen naar werkblad hierbov_en"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Verplaatsen naar werkblad hier_onder"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "Sl_uiten"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Werkblad %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Werkblad 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Werkblad %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Naar ander werkblad ver_plaatsen"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "boven"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "onder"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "links"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "rechts"
+
+# betere vertaling voor frame geometry?
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "kader-afmetingen geeft geen ‘%s’ dimensie"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "kader-afmetingen geeft geen dimensie ‘%s’ voor rand ‘%s’"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Knopverhouding %g is onredelijk"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Kader-afmetingen geeft geen afmeting van knoppen"
+
+# Gradiënt hier beter?
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Kleurverloop moet tenminste twee kleuren hebben"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-kleurspecificatie moet de toestand in rechte haken hebben, bijv. gtk:fg"
+"[NORMAL] waarbij NORMAL de toestand is; kon ‘%s’ niet verwerken"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-kleurspecificatie moet een sluithaakje hebben na de status, dus: gtk: fg"
+"[NORMAL] waarbij NORMAL de stutus is; kon ‘%s’ niet verwerken"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Niet begrepen: status ‘%s’ in kleurspecificatie"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Niet begrepen: kleurcomponent ‘%s’ in kleurspecificatie"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Mengformaat is ‘meng/vg_kleur/ag_kleur/alpha’, ‘%s’ voldoet niet aan dit "
+"formaat"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Kon alpha-waarde ‘%s’ niet verwerken in gemengde kleur"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alpha-waarde ‘%s’ in gemengde kleur zit niet tussen 0.0 en 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Schaduwformaat is ‘schaduw/basiskleur/factor’, ‘%s’ voldoet niet aan dit "
+"formaat"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Kon schaduwfactor ‘%s’ in schaduwkleur niet verwerken"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Schaduwfactor ‘%s’ in schaduwkleur is negatief"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Kon kleur ‘%s’ niet verwerken"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Coördinaatuitdrukking bevat letterteken '%s' wat niet is toegestaan"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Coördinaatuitdrukking bevat floating-point getal '%s' wat niet kon worden "
+"verwerkt"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Coördinaatuitdrukking bevat geheel getal '%s' wat niet kon worden verwerkt"
+
+# hoe vertalen we operator en operand?
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Coördinaatuitdrukking bevat een onbekende functie aan het begin van deze "
+"tekst: ‘%s’"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Coördinaatuitdrukking was leeg of was niet begrepen"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Coördinaatuitdrukking resulteert in een deling door nul"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Coördinaatuitdrukking probeert een mod-functie te gebruiken op een floating-"
+"point getal"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Coördinaatuitdrukking bevat een functie ‘%s’ waar een argument werd verwacht"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"Coördinaatuitdrukking bevat een argument waar een functie werd verwacht"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"Coördinaatuitdrukking eindigde met een functie in plaats van een argument"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Coördinaatuitdrukking bevat functie ‘%c’ volgend op functie ‘%c’ zonder "
+"argument in het midden"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Coördinaatuitdrukking bevat een onbekende variabele of constante ‘%s’"
+
+# Dit is zo'n dergelijk moeilijke vertaling als in het Nederlands, dat het
+# Engelse origineel een beter restultaat oplevert.
+# -- Michiel Sikkes, zo 9 apr 2006
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Coordinate experssion parser overflowed its buffer."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Coördinaatuitdrukking bevat een sluithaakje zonder openingshaakje"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Coördinaatuitdrukking bevat een openingshaakje zonder sluithaakje"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Coördinaatuitdrukking bevat schijnbaar geen functies of argumenten"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Expressie in thema resulteerde in een foutmelding: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"iets\"/> moet voor deze "
+"kader-stijl gespecificeerd worden"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Ontbrekende <frame state=\"%s\" resize=\"%s\" docus=\"%s\" style=\"iets\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Laden thema ‘%s’ mislukt: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Geen <%s> ingesteld voor thema ‘%s’ "
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Geen kader-stijl ingesteld voor venstertype ‘%s’ in thema ‘%s’, voeg een "
+"<window type=\"%s\" style_set=\"iets\"/> element toe"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Door de gebruiker gedefinieerde constanten moeten met een hoofdletter "
+"beginnen; ‘%s’ doet dat niet"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Constante ‘%s’ is reeds gedefinieerd"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Geen ‘%s’-attribuut op element <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Regel %d teken %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Attribuut ‘%s’ twee keer herhaald op hetzelfde <%s>-element"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Attribuut ‘%s’ is ongeldig op een <%s>-element in deze context"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Kon ‘%s’ niet verwerken als geheel getal"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Niet begrepen: de laatste tekens ‘%s’ in ‘%s’"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Geheel getal %ld moet positief zijn"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Geheel getal %ld is te groot, huidige maximum is %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Kon ‘%s’ niet als 'floating-point'-getal verwerken"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Boolese waarde moet ‘true’ of ‘false’ zijn, niet ‘%s’"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Hoek moet liggen tussen 0.0 en 360.0, maar was %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alpha moet liggen tussen 0.0 (onzichtbaar) en 1.0 (volledig ondoorzichtig), "
+"maar was %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Ongeldige titel-schaal ‘%s’ (u kunt kiezen uit: xx-small, x-small, small, "
+"medium, large, x-large, xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s>-naam ‘%s’ een tweede keer gebruikt"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s>-ouder ‘%s’ is niet gedefinieerd"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s>-afmetingen ‘%s’ is niet gedefinieerd"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> moet ofwel afmetingen specificeren, of een ouder met afmetingen"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+"U dient een achtergrond te specificeren voordat een alpha-waarde betekenis "
+"heeft"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Onbekend type ‘%s’ op <%s>-element"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Onbekende style_set ‘%s’ op <%s>-element"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Venstertype ‘%s’ heeft reeds een stijlset toegewezen gekregen"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> is niet toegestaan onder <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Kan niet tegelijk ‘button_width’/‘button_height’ en ‘aspect_ratio’ voor "
+"knoppen opgeven."
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Afstand ‘%s’ is onbekend"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Verhouding ‘%s’ is onbekend"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Rand ‘%s’ is onbekend"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Geen ‘start_angle’- of ‘from’-attribuut op element <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Geen ‘extent_angle’- of ‘to’-attribuut op element <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Niet begrepen: de waarde ‘%s’ voor type kleurverloop"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Niet begrepen: vul-type ‘%s’ voor <%s>-element"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Niet begrepen: status ‘%s’ voor <%s>-element"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Niet begrepen: schaduw ‘%s’ voor <%s>-element"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Niet begrepen: pijl ‘%s’ voor <%s>-element"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Er zijn geen <draw_ops> genaamd ‘%s’ gedefinieerd"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Hier ‘draw_ops’ ‘%s’ meenemen zou een circulaire verwijzing creëren"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Onbekende positie ‘%s’ voor kader-onderdeel"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Kader-stijl heeft al een onderdeel op positie %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Er zijn geen <draw_ops> met naam ‘%s’ gedefinieerd"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Onbekende functie ‘%s’ voor knop"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Knopfunctie ‘%s’ bestaat niet in deze versie (%d, %d benodigd)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Onbekende status ‘%s’ voor knop"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Kader-stijl heeft reeds een knop voor functie %s status %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "‘%s’ is geen geldige waarde voor ‘focus’-attribuut"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "‘%s’ is geen geldige waarde voor ‘state’-attribuut"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Een stijl genaamd ‘%s’ is niet gedefinieerd"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "‘%s’ is geen geldige waarde voor ‘resize’-attribuut"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Behoort geen ‘resize’-attribuut te hebben op <%s>-element voor "
+"gemaximaliseerde/opgerolde toestanden"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Behoort geen ‘resize’-attribuut te hebben op <%s>-element voor "
+"gemaximaliseerde toestand"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Stijl is reeds gespecificeerd voor status %s grootte aanpassen %s aandacht %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stijl is reeds gespecificeerd voor status %s aandacht %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan niet twee ‘draw_ops’ voor een <piece>-element hebben (thema "
+"specificeerde een ‘draw_ops’-attribuut en tevens een <draw_ops>-element, of "
+"specificeerde twee elementen)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan niet twee ‘draw_ops’ voor een <button>-element hebben (thema "
+"specificeerde een ‘draw_ops’-attribuut en tevens een <draw_ops>-element, of "
+"specificeerde twee elementen)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan niet twee ‘draw_ops’ voor een <menu_icon>-element hebben (thema "
+"specificeerde een ‘draw_ops’-attribuut en tevens een <draw_ops>-element, of "
+"specificeerde twee elementen)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Buitenste element in thema moet zijn: <marco_theme>, niet <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Element <%s> is niet toegestaan binnen een naam/auteur/datum/beschrijving "
+"element"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> is niet toegestaan binnen een <constant>-element"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Element <%s> is niet toegestaan binnen de elementen distance/border/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Element <%s> is niet toegestaan binnen een ‘draw operation’-element"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> is niet toegestaan binnen een <%s>-element"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Geen ‘draw_ops’ gegeven voor kader-onderdeel"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Geen ‘draw_ops’ gegeven voor knop"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Geen tekst toegestaan binnen element <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> twee keer gegeven voor dit thema"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Geen geldig bestand gevonden voor thema %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Themabestand %s bevatte geen root <marco_theme>-element"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Vensters"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Vensters/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Vensters/_Dialoogvenster"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Vensters/_Modaal dialoogvenster"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Vensters/_Gereedschap"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Vensters/_Introvenster"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Vensters/_Bovenpaneel"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Vensters/_Onderpaneel"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Vensters/_Linker paneel"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Vensters/_Rechter paneel"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Vensters/Alle panelen"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Vensters/_Bureaublad"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Dit is een voorbeeldbericht in een voorbeelddialoogvenster"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Nepmenu-item %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Venster met alleen randen"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Balk"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normaal programmavenster"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialoogvenster"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Blokkerend dialoogvenster"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Gereedschapskist"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Losgescheurd menu"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Rand"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Knoppenopmaaktest %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milliseconden om een vensterraamwerk te tekenen"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Gebruik: marco-theme-viewer [THEMANAAM]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Fout bij laden van thema: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Thema ‘%s’ in %g seconden geladen\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Lettertype voor normale titel"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Lettertype voor kleine titel"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Lettertype voor grote titel"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Knoppenopmaak"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Benchmark"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Hier komt de titel"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d frames getekend in %g seconden voor client (%g milliseconden per frame) "
+"en %g seconden op wandklok inclusief X serverbronnen (%g milliseconden per "
+"frame)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "positie-expressietest gaf WAAR terug, maar gaf wel een fout"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "positie-expressietest gaf ONWAAR terug, maar gaf geen fout"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Fout verwacht maar niet ontvangen"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Fout %d verwacht maar %d gekregen"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Geen fout verwacht maar kreeg wel een fout: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x-waarde is %d, %d verwacht"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y-waarde is %d, %d verwacht"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d coördinatenexpressies verwerkt in %g seconden (gemiddelde van %g "
+"seconden)\n"
+
+#~ msgid ""
+#~ "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#~ "\n"
+#~ "<i>You may choose to wait a short while for it to continue or force the "
+#~ "application to quit entirely.</i>"
+#~ msgstr ""
+#~ "<big><b><tt>%s</tt> reageert niet.</b></big>\n"
+#~ "\n"
+#~ "<i>U kunt ervoor kiezen even te wachten totdat het doorgaat of de "
+#~ "toepassing dwingen om helemaal af te sluiten.</i>"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Fout bij opstarten marco-dialoogvenster waarin wordt gewaarschuwd voor "
+#~ "toepassingen die sessie-management niet ondersteunen: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Titel"
+
+#~ msgid "Class"
+#~ msgstr "Klasse"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Er trad een fout op bij het uitvoeren van ‘%s’:\n"
+#~ "%s."
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Nog zo'n venster openen"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Dit is een demoknop met een 'openen'-pictogram"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Dit is een demoknop met een 'afsluiten'-pictogram"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Verwerken bericht ‘%s’ van dialoogvenster-proces mislukt\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Fout bij lezen van dialoogvenster-proces: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Fout bij het opstarten van het marco-dialoogvenster waarbij gevraagd "
+#~ "wordt naar het vernietigen van een toepassing: %s\n"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> twee keer gegeven voor dit thema"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> twee keer gegeven voor dit thema"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> twee keer gegeven voor dit thema"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> twee keer gegeven voor dit thema"
diff --git a/po/nn.po b/po/nn.po
new file mode 100644
index 00000000..ee571927
--- /dev/null
+++ b/po/nn.po
@@ -0,0 +1,3809 @@
+# translation of marco to Norwegian Nynorsk
+# This file is distributed under the same license as the Marco package.
+# Copyright (C) 2003 Åsmund Skjæveland.
+# Åsmund Skjæveland <[email protected]>, 2003, 2004, 2006.
+# Eskild Hustvedt <[email protected]>, 2008.
+# Åsmund Skjæveland <[email protected]>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: nn\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug."
+"cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2009-04-17 21:02+0000\n"
+"PO-Revision-Date: 2009-10-17 18:22+0200\n"
+"Last-Translator: Åsmund Skjæveland <[email protected]>\n"
+"Language-Team: Norsk (nynorsk) <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Lokalize 1.0\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Skrivebord"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Handtering av vindauge"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr ""
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Ukjend førespurnad om vindaugeinformasjon: %d"
+
+#: ../src/core/delete.c:104
+#, fuzzy, c-format
+#| msgid ""
+#| "You may choose to wait a short while for it to continue or force the "
+#| "application to quit entirely."
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+"Du kan velja å vente ein kort stund for å sjå om det fortsetter eller tvinge "
+"programmet til å avslutte helt."
+
+#: ../src/core/delete.c:115
+msgid "_Wait"
+msgstr "_Vent"
+
+#: ../src/core/delete.c:115
+msgid "_Force Quit"
+msgstr "_Tvungen avslutting"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Klarte ikkje å finna vertsnamn: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Manglar utvidelsen %s som er krevd for komposittfunksjon"
+
+# TRN: "X Window System"?
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Kunne ikkje opna X Window System-display «%s»\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Mista tilkoplinga til display «%s».\n"
+"Truleg vart X-tenaren stengt ned, eller vindaugehandsamaren avslutta.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Fatal IU-feil %d (%s) på display «%s».\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Eit anna program brukar allereie tasten %s med modifikator %x som ein "
+"snøggtast\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, fuzzy, c-format
+#| msgid ""
+#| "There was an error running \"%s\":\n"
+#| "%s."
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Ein fei oppstod under køyring av «%s»:\n"
+"%s."
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Kommandoen %d er ikkje definert.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Ingen terminalkommando er definert.\n"
+
+#: ../src/core/main.c:130
+#, fuzzy, c-format
+#| msgid ""
+#| "marco %s\n"
+#| "Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+#| "This is free software; see the source for copying conditions.\n"
+#| "There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+#| "PARTICULAR PURPOSE.\n"
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Opphavsrett © 2001-2008 Havoc Pennington, Red Hat, Inc, og andre\n"
+"Dette er fri programvare; sjå i kjeldekoden for kopibetingelser.\n"
+"Det givast INGEN garanti.\n"
+
+#: ../src/core/main.c:267
+msgid "Disable connection to session manager"
+msgstr "Ikkje bruk tilkopling til økthandsamar"
+
+#: ../src/core/main.c:273
+msgid "Replace the running window manager with Marco"
+msgstr "Byt ut køyrande vindaugehandsamar med Metatcity"
+
+#: ../src/core/main.c:279
+msgid "Specify session management ID"
+msgstr "Oppgje økthandsamar-ID"
+
+#: ../src/core/main.c:284
+msgid "X Display to use"
+msgstr "X-display å bruka"
+
+#: ../src/core/main.c:290
+msgid "Initialize session from savefile"
+msgstr "Start økt frå fil"
+
+#: ../src/core/main.c:296
+msgid "Print version"
+msgstr "Skriv versjon"
+
+#: ../src/core/main.c:302
+msgid "Make X calls synchronous"
+msgstr "Gjer X-kall synkrone"
+
+#: ../src/core/main.c:308
+#, fuzzy
+#| msgid "Compositing Manager"
+msgid "Turn compositing on"
+msgstr "Håntering av «compositing»"
+
+#: ../src/core/main.c:314
+msgid "Turn compositing off"
+msgstr ""
+
+#: ../src/core/main.c:536
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Klarte ikkje å søka gjennom draktmappa: %s\n"
+
+#: ../src/core/main.c:552
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Kunne ikkje finna eit drakt! Sjekk at %s finst og inneheld dei vanlege "
+"temaene.\n"
+
+#: ../src/core/main.c:608
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Kunne ikkje starta på nytt: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:505 ../src/core/prefs.c:660
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf-nøkkel «%s» er satt til ein ugyldig verdi\n"
+
+#: ../src/core/prefs.c:586 ../src/core/prefs.c:829
+#, fuzzy, c-format
+#| msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d lagra i MateConf-nøkkel %s er utanfor området 0 til %d\n"
+
+#: ../src/core/prefs.c:630 ../src/core/prefs.c:707 ../src/core/prefs.c:755
+#: ../src/core/prefs.c:819 ../src/core/prefs.c:1112 ../src/core/prefs.c:1128
+#: ../src/core/prefs.c:1145 ../src/core/prefs.c:1161
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf-nøkkel «%s» er satt til ein ugyldig type\n"
+
+#: ../src/core/prefs.c:1231
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Triks for å unngå problem med defekte program er slått av. Somme program vil "
+"kanskje ikkje oppføra seg som venta.\n"
+
+#: ../src/core/prefs.c:1302
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Kunne ikkje tolka fontskildringa «%s» frå MateConf-nøkkelen %s\n"
+
+#: ../src/core/prefs.c:1364
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"«%s» funne i oppsettdatabasen er ikkje ein gyldig verdi for modifikator for "
+"musknapp\n"
+
+#: ../src/core/prefs.c:1782
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Ein feil oppstod: Kan ikkje setja talet på arbeidsflater til %d: %s\n"
+
+#: ../src/core/prefs.c:1971 ../src/core/prefs.c:2474
+#, c-format
+msgid "Workspace %d"
+msgstr "Arbeidsflate %d"
+
+#: ../src/core/prefs.c:2001 ../src/core/prefs.c:2179
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"«%s» funnen i oppsettdatabasen er ikkje ein gyldig verdi for snøggtasten «%s»\n"
+
+#: ../src/core/prefs.c:2555
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Ein feil oppstod: Kunne ikkje gje arbeidsflate %d namnet «%s»: %s\n"
+
+#: ../src/core/prefs.c:2753
+#, fuzzy, c-format
+#| msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgid "Error setting compositor status: %s\n"
+msgstr "Ein feil oppstod: Kunne ikkje gje arbeidsflate %d namnet «%s»: %s\n"
+
+# TRN: "skjerm", "display"?
+#: ../src/core/screen.c:350
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Skjerm %d på display «%s» er ugyldig\n"
+
+#: ../src/core/screen.c:366
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Skjerm %d på display «%s» har allereie ein vindaugehandsamar. Prøv å bruka "
+"flagget --replace for å erstatta den aktive vindaugehandsamaren.\n"
+
+#: ../src/core/screen.c:393
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Kunne ikkje henta utvalet frå vindaugehandsamaren på skjerm %d display «%s»\n"
+
+#: ../src/core/screen.c:451
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Skjerm %d på display «%s» har allereie ein vindaugehandsamar\n"
+
+#: ../src/core/screen.c:661
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Kunne ikkje frigjera skjerm %d på display «%s»\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+#, fuzzy
+#| msgid ""
+#| "The keybinding used to close a window. The format looks like \"&lt;"
+#| "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#| "liberal and allows lower or upper case, and also abbreviations such as "
+#| "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#| "special string \"disabled\", then there will be no keybinding for this "
+#| "action."
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Snøggtasten som lukkar eit vindauge. Formatet er på forma «&lt;Control&gt;a» "
+"og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og "
+"store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». "
+"Dersom du set dette valet til den spesielle verdien «disabled», vil ikkje "
+"denne handlinga ha nokon snøggtast."
+
+#: ../src/core/schema-bindings.c:177
+#, fuzzy
+#| msgid ""
+#| "The keybinding used to close a window. The format looks like \"&lt;"
+#| "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#| "liberal and allows lower or upper case, and also abbreviations such as "
+#| "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#| "special string \"disabled\", then there will be no keybinding for this "
+#| "action."
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Snøggtasten som lukkar eit vindauge. Formatet er på forma «&lt;Control&gt;a» "
+"og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og "
+"store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». "
+"Dersom du set dette valet til den spesielle verdien «disabled», vil ikkje "
+"denne handlinga ha nokon snøggtast."
+
+#: ../src/core/session.c:845 ../src/core/session.c:852
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Kunne ikkje laga katalogen «%s»: %s\n"
+
+# TRN: Ikkje bra, men det får vel duga.
+#: ../src/core/session.c:862
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Kunne ikkje opna øktfila «%s» for skriving: %s\n"
+
+#: ../src/core/session.c:1003
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Kunne ikkje skriva til øktfila «%s»: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Feil under lukking av øktfil «%s»: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1101
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Feil under lesing av lagra øktfil %s: %s\n"
+
+#: ../src/core/session.c:1140
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Kunne ikkje tolka lagra øktfil: %s\n"
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> attributt sett, men me har allereie funne økt-ID"
+
+#: ../src/core/session.c:1202 ../src/core/session.c:1277
+#: ../src/core/session.c:1309 ../src/core/session.c:1381
+#: ../src/core/session.c:1441
+#, fuzzy, c-format
+#| msgid "Unknown attribute %s on <window> element"
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Ukjend attributt %s på <window>-element"
+
+#: ../src/core/session.c:1219
+#, c-format
+msgid "nested <window> tag"
+msgstr "<window> tag med fleire nivå"
+
+#: ../src/core/session.c:1461
+#, c-format
+msgid "Unknown element %s"
+msgstr "Ukjent element %s"
+
+#: ../src/core/session.c:1812
+#, fuzzy
+#| msgid ""
+#| "These windows do not support \"save current setup\" and will have to be "
+#| "restarted manually next time you log in."
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Desse vindauga støttar ikkje lagring av gjeldande oppsett, og må startast "
+"manuelt neste gong du loggar inn."
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Kunne ikkje opna feilsøkingslogg: %s\n"
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Kunne ikkje fdopen() loggfila %s: %s\n"
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Opna loggfila %s\n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco vart kompilert utan støtte for ordrik modus\n"
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "Vindaugehandsamar: "
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr "Feil i vindaugehandsamar: "
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr "Åtvaring frå vindaugehandsamar: "
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr "Feil i vindaugehandsamar: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5627
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Vindauget %s set SM_CLIENT_ID på seg sjølv, i staden for på WM_CLIENT_LEADER-"
+"vindauget slik som ICCCM spesifiserer.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6192
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Vindauge %s set eit MWM-hint som indikerer at det ikkje kan endra storleik, "
+"men set minste storleik %d x %d og største storleik %d x %d: Dette gir ikkje "
+"meining.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Programmet satte ein ugyldig _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (på %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr ""
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, fuzzy, c-format
+#| msgid "%s (on %s)"
+msgid "%s (as %s)"
+msgstr "%s (på %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr ""
+
+#: ../src/core/window-props.c:1429
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Ugyldig WM_TRANSIENT_FOR vindauge 0x%lx oppgjeven for %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Vindauge 0x%lx har eigenskap %s\n"
+"som var venta å ha type %s format %d\n"
+"og faktisk har type %s format %d n_items %d\n"
+". Dette er truleg ein feil i programmet, ikkje i vindaugehandamaren.\n"
+"Vindauget har title=«%s» class=«%s» name=«%s»\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Eigenskap %s på vindauge 0x%lx inneheldt ugyldig UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Egenskap %s på vindauge 0x%lx inneheldt ugyldig UTF-8 for oppføring %d i "
+"lista\n"
+
+# TRN: «Gå til» betre enn «byt til»?
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Byt til arbeidsflate 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Byt til arbeidsflate 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Byt til arbeidsflate 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Byt til arbeidsflate 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Byt til arbeidsflate 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Byt til arbeidsflate 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Byt til arbeidsflate 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Byt til arbeidsflate 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Byt til arbeidsflate 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Byt til arbeidsflate 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Byt til arbeidsflate 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Byt til arbeidsflate 12"
+
+#: ../src/include/all-keybindings.h:122
+#, fuzzy
+#| msgid "Switch to workspace on the left"
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Byt til arbeidsflata til venstre"
+
+#: ../src/include/all-keybindings.h:126
+#, fuzzy
+#| msgid "Switch to workspace on the right"
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Byt til arbeidsflata til høgre"
+
+#: ../src/include/all-keybindings.h:130
+#, fuzzy
+#| msgid "Switch to workspace above this one"
+msgid "Switch to workspace above the current workspace"
+msgstr "Byt til arbeidsflata over denne"
+
+#: ../src/include/all-keybindings.h:134
+#, fuzzy
+#| msgid "Switch to workspace below this one"
+msgid "Switch to workspace below the current workspace"
+msgstr "Byt til arbeidsflata under denne"
+
+#: ../src/include/all-keybindings.h:150
+#, fuzzy
+#| msgid "Move between windows of an application with popup"
+msgid "Move between windows of an application, using a popup window"
+msgstr "Bla gjennom eit programs vindauge med oppsprettvindauge"
+
+#: ../src/include/all-keybindings.h:153
+#, fuzzy
+#| msgid "Move backwards between windows of an application with popup"
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Bla bakover gjennom vindauge frå eit program med oppsprettvindauge"
+
+#: ../src/include/all-keybindings.h:157
+#, fuzzy
+#| msgid "Move between windows with popup"
+msgid "Move between windows, using a popup window"
+msgstr "Flytt mellom vindauge med dialog på skjermen"
+
+#: ../src/include/all-keybindings.h:160
+#, fuzzy
+#| msgid "Move focus backwards between windows using popup display"
+msgid "Move backward between windows, using a popup window"
+msgstr "Flytt fokus baklengs mellom vindauge med dialog på skjermen"
+
+#: ../src/include/all-keybindings.h:163
+#, fuzzy
+#| msgid "Move between panels and the desktop with popup"
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Flytt mellom panela og skrivebordet med dialog på skjermen"
+
+#: ../src/include/all-keybindings.h:166
+#, fuzzy
+#| msgid "Move backwards between panels and the desktop with popup"
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Flytt bakover mellom panela og skrivebordet med dialog på skjermen"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Bla gjennom eit programs vindauge med ein gong"
+
+#: ../src/include/all-keybindings.h:174
+#, fuzzy
+#| msgid "Move backwards between windows of an application immediately"
+msgid "Move backward between windows of an application immediately"
+msgstr "Bla bakover gjennom eit programs vindauge med ein gong"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Flytt mellom vindauge med ein gong"
+
+#: ../src/include/all-keybindings.h:180
+#, fuzzy
+#| msgid "Move backwards between windows immediately"
+msgid "Move backward between windows immediately"
+msgstr "Flytt bakover mellom vindauge med ein gong"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Flytt mellom panela og skrivebordet med ein gong"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Flytt bakover mellom panela og skrivebordet med ein gong"
+
+#: ../src/include/all-keybindings.h:191
+#, fuzzy
+#| msgid "Hide all windows and focus desktop"
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Gøym alle vindauga og fokuser på skrivebordet"
+
+#: ../src/include/all-keybindings.h:194
+#, fuzzy
+#| msgid "Show the panel menu"
+msgid "Show the panel's main menu"
+msgstr "Vis panelmenyen"
+
+#: ../src/include/all-keybindings.h:197
+#, fuzzy
+#| msgid "Show the panel run application dialog"
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Vis «køyr»-dialogen til panelet"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Ta eit skjermbilete"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Ta eit bilete av eit vindauge"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Køyr ein terminal"
+
+#: ../src/include/all-keybindings.h:257
+#, fuzzy
+#| msgid "Activate window menu"
+msgid "Activate the window menu"
+msgstr "Aktiver vindaugemenyen"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Slå av/på fullskjermmodus"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Endra tilstand for maksimering"
+
+#: ../src/include/all-keybindings.h:264
+#, fuzzy
+#| msgid "Lower window below other windows"
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Senk vindauget under andre vindauge"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maksimer vindauget"
+
+#: ../src/include/all-keybindings.h:268
+#, fuzzy
+#| msgid "Resize window"
+msgid "Restore window"
+msgstr "Endra storleik på vindauget"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Endra tilstand for skuggeleggjing"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimer vindauget"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Lukk vindauget"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Flytt vindauget"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Endra storleik på vindauget"
+
+#: ../src/include/all-keybindings.h:281
+#, fuzzy
+#| msgid "Toggle window on all workspaces"
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Slå av/på at vindauget ligg på alle arbeidsområda samstundes"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Flytt vindauget til arbeidsflate 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Flytt vindauget til arbeidsflate 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Flytt vindauget til arbeidsflate 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Flytt vindauget til arbeidsflate 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Flytt vindauget til arbeidsflate 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Flytt vindauget til arbeidsflate 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Flytt vindauget til arbeidsflate 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Flytt vindauget til arbeidsflate 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Flytt vindauget til arbeidsflate 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Flytt vindauget til arbeidsflate 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Flytt vindauget til arbeidsflate 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Flytt vindauget til arbeidsflate 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Flytt vindauget ei arbeidsflate til venstre"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Flytt vindauget ei arbeidsflate til høgre"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Flytt vindauget ei arbeidsflate opp"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Flytt vindauget ei arbeidsflate ned"
+
+#: ../src/include/all-keybindings.h:342
+#, fuzzy
+#| msgid "Raise obscured window, otherwise lower"
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Løft vindauget dersom skjult, ellers senk det"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Løft vindauge over andre vindauge"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Senk vindauget under andre vindauge"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maksimer vindauget loddrett"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maksimer vindauget vassrett"
+
+#: ../src/include/all-keybindings.h:358
+#, fuzzy
+#| msgid "Move window to north-west corner"
+msgid "Move window to north-west (top left) corner"
+msgstr "Flytt vindauge til nord-vestlig hjørne"
+
+#: ../src/include/all-keybindings.h:361
+#, fuzzy
+#| msgid "Move window to north-east corner"
+msgid "Move window to north-east (top right) corner"
+msgstr "Flytt vindauge til nord-østlig hjørne"
+
+#: ../src/include/all-keybindings.h:364
+#, fuzzy
+#| msgid "Move window to south-west corner"
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Flytt vindauge til syd-østlig hjørne"
+
+#: ../src/include/all-keybindings.h:367
+#, fuzzy
+#| msgid "Move window to south-east corner"
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Flytt vindauge til syd-østlig hjørne"
+
+#: ../src/include/all-keybindings.h:371
+#, fuzzy
+#| msgid "Move window to north side of screen"
+msgid "Move window to north (top) side of screen"
+msgstr "Flytt vindauge til nordsida av skjermen"
+
+#: ../src/include/all-keybindings.h:374
+#, fuzzy
+#| msgid "Move window to south side of screen"
+msgid "Move window to south (bottom) side of screen"
+msgstr "Flytt vindauge til sydsida av skjermen"
+
+#: ../src/include/all-keybindings.h:377
+#, fuzzy
+#| msgid "Move window to east side of screen"
+msgid "Move window to east (right) side of screen"
+msgstr "Flytt vindauge til østsida av skjermen"
+
+#: ../src/include/all-keybindings.h:380
+#, fuzzy
+#| msgid "Move window to west side of screen"
+msgid "Move window to west (left) side of screen"
+msgstr "Flytt vindauge til vestsida av skjermen"
+
+#: ../src/include/all-keybindings.h:383
+#, fuzzy
+#| msgid "Move window to east side of screen"
+msgid "Move window to center of screen"
+msgstr "Flytt vindauge til østsida av skjermen"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Ikkje implementert) Navigering virkar med omsyn på program, ikkje vindauge"
+
+# TRN: Noko betre for "font description".
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Ein streng som skildrar skrifttype som skal brukast i tittellinjene på "
+"vindauga. Storleiken frå fontskildringa vil berre verta brukt dersom valet "
+"«titlebar_font_size» er satt til 0. Dessutan vil dette valet verta ignorert "
+"dersom valet «titlebar_uses_desktop_font» er satt til «true»."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Handling ved dobbeltklikk på tittellinja"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Handling ved trykk med midtre musknapp på tittellinja"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Handling ved høgreklikk på tittellinja"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Plassering av knappane på tittellinja"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Korleis knappane vert plasserte på tittellinja. Verdien er ein streng, slik "
+"som «menu:minimize,maxmize,close». Kolonet skil det venstre hjørnet av "
+"vindauget frå det høgre, og namna på knappane er skilde med komma. Ein knapp "
+"kan ikkje stå fleire gonger. Ukjende knappenamn vert ignorerte utan "
+"feilmelding, slik at knappar kan leggjast til i framtidige versjonar av "
+"marco utan at det øydelegg for gamle versjonar. Ein spesiell «spacer» tagg "
+"kan brukast til å sette inn mellomrom mellom knappar."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Løftar opp det fokuserte vindauget automatisk"
+
+#: ../src/marco.schemas.in.in.h:9
+#, fuzzy
+#| msgid ""
+#| "Clicking a window while holding down this modifier key will move the "
+#| "window (left click), resize the window (middle click), or show the window "
+#| "menu (right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;"
+#| "Super&gt;\" for example."
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+"Å klikka på eit vindauge medan du held nede denne modifikatortasten vil "
+"flytta vindauget (venstreklikk), endra storleiken på det (midtklikk) eller "
+"visa vindaugemenyen (høgreklikk). Modifikatoren er til dømes «&lt;Alt&gt;» "
+"eller «&lt;Super&gt;»."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Kommandoar som skal køyrast som svar på tastarurbindingar"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Håntering av «compositing»"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Styrer korleis nye vindauge får fokus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Noverande drakt"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Pause i millisekund ved automatisk løfting"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Bestemmer om Marco skal handtere «compositing»"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Avgjer om program eller systemet kan laga høyrlege «pip». Kan brukast i "
+"samband med «visuell bjølle» til å tillate stille «pip»."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Slå av uønskte funksjonar som krevst av gamle eller øydelagte program"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Slå på visuell bjelle"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Dersom denne er slått på, og fokusmetode er anten «sloppy» eller «mouse», så "
+"vil det fokuserte vindauget verta løfta etter ei kort tid (tida vert bestemt "
+"av auto_raise_delay-nøkkelen). Dette er ikkje knytta til å klikka på eit "
+"vindauge for å løfta det, eller til å gå inn i eit vindauge under dra-og-"
+"slepp."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Dersom sann, sjå vekk ifrå «titlebar_font»-valet, og bruk standard-"
+"programskrifttypen for vindaugetitlane."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Dersom sann, vil Marco gje brukaren mindre tilbakemelding og mindre "
+"kjensle av «direkte manipulering», ved å bruka trådrammer, unngå animasjonar, "
+"og andre teknikkar. Dette gjer Marco mindre brukarvennleg for mange, men "
+"vil også la gamle program og terminaltenarar fungera når dei elles ville "
+"vore for upraktiske. Trådrammer er kopla ut når tilgjengefunksjonar er på."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Dersom sann, så arbeider Marco med program i staden for med vindauge. "
+"Ideen er litt abstrakt, men eit programtufta oppsett er meir likt Mac og "
+"mindre likt Windows. Når du fokuserer eit vindauge i programtufta modus, "
+"vert alle vindauga i det programmet løfta. I tillegg vert ikkje fokusklikk "
+"sendt gjennom til vindauge i andre program. Programtufta modus er dessutan "
+"stort sett ikkje implementert nett no."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Dersom sann, bruk mindre ressursar mot mindre brukarvennleg åtferd"
+
+# TRN: Kva går den andre "modified" på her? Klikket eller handlinga det fører til?
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modifikatortast som skal brukast ved modifiserte klikk i vindauget"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Namn på arbeidsflate"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Tal på arbeidsflater"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Tal på arbeidsflater. Må vera flere enn null, og har ei fast øvre grense for "
+"å hindra at du ved eit uhell gjer skrive skrivebordet ditt ubrukeleg ved å "
+"spørja etter for mange arbeidsflater."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Køyr ein definert kommando"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Somme program ser vekk frå spesifikasjonar på måtar som gjer at "
+"vindaugehandsamaren ikkje fungerer som ventar. Dette valet set Marco i "
+"paragrafryttar-modus, som vil gje eit meir konsistent brukargrensesnitt viss "
+"du ikkje treng å køyra rampete program."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Systembjølla lagar lyd"
+
+# TRN: Skal "fullscreen", "frame_flash" omsetjast?
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Fortel Marco korleis han skal visa visuelt at systembjølla eller ei "
+"programbjølle har blitt ringt med. No er det to moglege val: «Fullskjerm» "
+"gjer at heile skjermen blinkar i svart og kvitt, og «rammeblink», som gjer at "
+"tittellinja til programmet som ringte med bjølla blinkar. Dersom det ikkje "
+"er råd å finna ut kva for eit program som ringte med bjølla (som oftast "
+"tilfelle for systembjølla), så blinkar tittellinja på det fokuserte "
+"vindauget."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Nøklane /apps/marco/global_keybindings/run_command_N definerer "
+"snøggtastar som svarar til desse kommandoane. Dår du trykker snøggtasten for "
+"command_N, vil command_N bli køyrt."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Nøkkelen /apps/marco/global_keybindings/run_command_screenshot definerer "
+"ein snøggtast som køyrer kommandoen som svarer til denne innstillinga."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Nøkkelen /apps/marco/global_keybindings/run_command_window_screenshot "
+"definerer ein snøggtast som køyrer kommandoen definert av denne innstillinga."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Snøggtasten som køyrer kommandoen med det tilsvarande nummeret i /apps/"
+"marco/keybinding_commands. Formatet er på forma «&lt;Control&gt;a» og «&lt;"
+"Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og store "
+"bokstavar, og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du "
+"set dette valet til den spesielle verdien «disabled», vil ikkje denne "
+"handlinga ha nokon snøggtast."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Namnet på ei arbeidsflate."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Skjermbiletekommandoen"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Drakta avgjer korleis vindaugekantar, tittellinjer og så vidare ser ut."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Tidsforseinking før eit vindauge vert løfta dersom «auto_raise» er satt. "
+"Forseinkinga er gitt i millisekund."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Fokuseringsmåte avgjer korleis vindauga får fokus. Det er tre moglege "
+"verdiar: «click» tyder at det må klikkast i vindauget for at dei skal "
+"fokuserast på, «sloppy» tyder at vindauga får fokus når muspeikaren går inn i "
+"dei, og «mouse» tyder at vindauga får fokus når muspeikaren går inn i "
+"vindauget, og mistar fokus når muspeikaren går ut av det."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Kommandoen for å ta eit skjermbilete"
+
+# TRN: "toggle_shade", "toggle_maximize"
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Dette valet styrer effekten av å dobbeltklikka på tittelinja. Gyldige val "
+"er: «toggle_shade» som vil rulla vindauget opp og ned, «toggle_maximize» som "
+"vil maksimera og gjenoppretta vindauget, «toggle_maximize_horizontally» og "
+"«toggle_maximize_vertically» som vil maksimera/gjenopretta vindauget i kun "
+"den retninga, «minimize» som vil minimera vindauget, «shade» som vil rulla "
+"vindauget opp, «menu» som vil visa vindaugemenyen, «lower» som vil leggje "
+"vindauget bak alle andre vindauge, og «none» som ikkje gjer noko."
+
+# TRN: "toggle_shade", "toggle_maximize"
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Dette valet styrer effekten av å mellomklikka på tittelinja. Gyldige val er: "
+"«toggle_shade» som vil rulla vindauget opp og ned, «toggle_maximize» som vil "
+"maksimera og gjenoppretta vindauget, «toggle_maximize_horizontally» og "
+"«toggle_maximize_vertically» som vil maksimera/gjenopretta vindauget i kun "
+"den retninga, «minimize» som vil minimera vindauget, «shade» som vil rulla "
+"vindauget opp, «menu» som vil visa vindaugemenyen, «lower» som vil leggje "
+"vindauget bak alle andre vindauge, og «none» som ikkje gjer noko."
+
+# TRN: "toggle_shade", "toggle_maximize"
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Dette valet styrer effekten av å høgreklikka på tittelinja. Gyldige val er: "
+"«toggle_shade» som vil rulla vindauget opp og ned, «toggle_maximize» som vil "
+"maksimera og gjenoppretta vindauget, «toggle_maximize_horizontally» og "
+"«toggle_maximize_vertically» som vil maksimera/gjenopretta vindauget i kun "
+"den retninga, «minimize» som vil minimera vindauget, «shade» som vil rulla "
+"vindauget opp, «menu» som vil visa vindaugemenyen, «lower» som vil leggje "
+"vindauget bak alle andre vindauge, og «none» som ikkje gjer noko."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Dette valet gjev ytterlegare kontroll over korleis nylaga vindauge får "
+"fokus. Det har to moglege verdiar. «smart» brukar vanleg fokusmodus, og "
+"«strict» gjer at vindauge starta frå ein terminal ikkje får fokus."
+
+# TRN: "bell", "beep"
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Slår på ein visuell indikator for når eit program eller systemet sender "
+"«bell» eller «beep». Dette er nyttig for tunghøyrte og i støyande omgjevnader, "
+"eller når den høyrlege bjølla er slått av."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Bruk standard systemskrifttype i vindaugetitlar"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Type synleg bjølle"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Om løfting skal vera ein bieffekt av andre brukarhandlingar"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Fokuseringsmodus for vindauge"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Skrifttype for vindaugetitlar"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Bruk: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Steng vindauge"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Vindaugemeny"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimer vindauge"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maksimer vindauge"
+
+#: ../src/ui/frames.c:1130
+#, fuzzy
+#| msgid "Resize window"
+msgid "Restore Window"
+msgstr "Endra storleik på vindauget"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Rull opp vindauge"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Rull ned vindauge"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Plasser vindauge i forgrunnen"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Fjern vindauge frå forgrunnen"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Alltid på synleg arbeidsområde"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Plasser vindauge berre på eitt arbeidsområde"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Min_imer"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ksimer"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "G_jenopprett"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Rull _opp"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Rull _ut"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Flytt"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "End_ra storleik"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Flytt tittellinja på _skjermen"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "All_tid øvst"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Alltid på synleg arbeidsflate"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Berre på de_nne arbeidsflata"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "F_lytt ei arbeidsflate til venstre"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Flytt ei arbeidsflate til høg_re"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Flytt ei arbeidsflate _opp"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Flytt ei arbeidsflate ne_d"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Lukk"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Arbeidsflate %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Arbeidsflate 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Arbeidsflate %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Flytt til ei anna _arbeidsflate"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "topp"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "botn"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "venstre"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "høgre"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "rammegeometrien spesifiserer ikkje «%s»-dimensjonen"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "rammegeometri spesifiserer ikkje dimensjonen «%s» for kanten «%s»"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Aspektrate %g for knapp gir ikkje meining"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Rammegeometrien spesifiserer ikkje storleik på knappar"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Gradientar må ha minst to fargar"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-fargespesifikasjon må ha tilstand i klammer, t.d. gtk:fs[NORMAL], der "
+"NORMAL er tilstanden: Kunne ikkje tolka «%s»"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK-fargespesifikasjon må ha ei avsluttande klamme etter tilstanden, t.d. "
+"gtk:fs[NORMAL], der NORMAL er tilstanden: Kunne ikkje tolka «%s»"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Forstod ikkje tilstanden «%s» i fargespesifikasjonen"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Forstord ikkje fargekomponenten «%s» i fargespesifikasjonen"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Blandingsformatet er «blend/bg_color/fg_color/alpha», «%s» passar ikkje i "
+"formatet"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Kunne ikkje lesa alfa-verdien «%s» i blanda farge"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alfaverdien «%s» i blanda farge er ikkje mellom 0.0 og 1.0."
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Skuggeformatet er «shade/base_color/factor», «%s» passar ikkje inn i formatet"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Kunne ikkje tolka skuggefaktor «%s» i skuggelagt farge"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Skuggefaktor «%s» i skuggelagt farge er negativ"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Kunne ikkje tolka fargen «%s»"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Koordinatuttrykk inneheld teiknet «%s», som ikkje er tillate"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "Koordinatuttrykket inneheld flyttalet «%s» som ikkje kunne tolkast"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Koordinatuttrykket inneheld heiltalet «%s» som ikkje kunne tolkast"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Koordinatuttrykket inneheld ein ukjent operator i byrjinga av denne teksten: "
+"«%s»"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Koordinatuttrykket var tomt eller vart ikkje forstått"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Koordinatuttrykket fører til deling på null"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "Koordinatuttrykket prøver å bruka mod-operatoren på eit flyttal"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Koordinatuttrykket har ein operator «%s» der ein operand var venta"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Koodinatuttrykk hadde ein operand der ein operator var venta"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Koordinatuttrykk slutta med ein operator i staden for ein operand"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Koordinatuttrykk har operantoren «%c» etter operatoren «%c», utan å ha ein "
+"operand mellom."
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Koordinatuttrykk hadde ukjent variabel eller konstant «%s»"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Koordinatuttrykkstolkaren gjekk utanfor bufferet sitt."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Koordinatuttrykket hadde ein lukkeparentes men ingen opneparantes."
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Koordinatuttrykket hadde ein opneparentes men ingen sluttparantes"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"Koordinatuttrykket ser ikkje ut til å ha nokon operatorar eller operandar"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Drakt inneholdt eit uttrykk som resulterte i ein feil: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/>må vera "
+"spesifisert for denne rammestilen"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Manglande <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Kunne ikkje lasta drakta «%s»: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Det er ikkje satt nokon <%s> for drakta «%s»"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Det er ikkje satt nokon rammestil for vindaugetypen «%s» i drakta «%s», legg "
+"til eit <window type=\"%s\" style_set=\"whatever\"/>-element"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Brukardefinerte konstantar må byrja med stor bokstav; «%s» gjer det ikkje"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstanten «%s» er alt definert"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, fuzzy, c-format
+#| msgid "No \"x\" attribute on element <%s>"
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Ingen «x»-attributt på element <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Linje %d teikn %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Attributt «%s» gjentatt to gongar på same <%s>-element"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Attributt «%s» er ugyldig på <%s>-element i denne konteksten"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Kunne ikkje lesa «%s» som eit heiltal"
+
+# TRN: "trailing"?
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Forstod ikkje dei avsluttande teikna «%s» i strengen «%s»"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Heiltal %ld må vera positivt"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Heiltal %ld er for stort, største moglege verdi er %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Kunne ikkje tolka «%s» som eit flyttal"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Boolske verdiar må vera «true» eller «false», ikkje «%s»"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Vinkelen må vera mellom 0.0 og 360.0, var %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Alfa må vera mellom 0.0 (usynleg) 1.0 (heilt ugjennomsiktig), var %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Ugyldig tittelskalering «%s» (må vera ein av «xx-small», «x-small», «small», "
+"«medium», «large», «x-large», «xx-large»)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> namnet «%s» brukt for andre gong"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> opphav «%s» er ikkje definert"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometri «%s» er ikkje definert"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> må spesifisere anten ein geometri eller eit opphav som har geometri"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Du må oppgje ein bakgrunn for at ein alpha-verdi skal ha mening"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Ukjend type «%s» på <%s>-element"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Ukjend style_set «%s» på <%s>-element"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Vindaugetype «%s» er allereie tildelt eit stilsett"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> er ikkje tillate under <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+#, fuzzy
+#| msgid ""
+#| "Cannot specify both button_width/button_height and aspect ratio for "
+#| "buttons"
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Kan ikkje oppgje både button_width/button_height og forholdstal for knappar"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Avstanden «%s» er ukjent"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Forholdstalet «%s» er ukjent"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Bord «%s» er ukjent"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Inga «start_angle» eller «from»-attributt på element <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Inga «extent_angle» eller «to»-attributt <%s>-element"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Forsto ikkje verdien «%s» for gradienttype"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Forstod ikkje fyll-type «%s» for <%s>-element"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Forstod ikkje tilstand «%s» for element <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Forstod ikkje skugge «%s» for element <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Forstod ikkje pil «%s» for element <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Det er ikkje definert nokon <draw_ops> kalla «%s» "
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Å ta med draw_ops «%s» her vil laga ein sirkulær referanse"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Ukjend posisjon «%s» for rammedel"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Rammestilen har allereie ein del i posisjon %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Det er ikkje definert nokon <draw_ops> med namn «%s» "
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Ukjent funksjon «%s» for knapp"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Knappefunksjon «%s» finst ikkje i denne versjonen (%d, treng %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Ukjent tilstand «%s» for knapp"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Rammestilen har allereie en knapp for funksjon %s tilstand %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "«%s» er ikke en gyldig verdi for fokusattributt"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "«%s» er ikkje en gyldig verdi for tilstandsattributt"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "En stil med namn «%s» er ikkje definert"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "«%s» er ikkje ein gyldig verdi for attributt for endring av storleik"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Det skal ikkje vera nokon «resize»-attributt på elemetet <%s> for maksimerte/"
+"skuggelagte tilstandar"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Skal ikkje vera nokon «resize»-attributt på <%s>-element for maksimert "
+"tilstand"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Stilen er alt spesifisert for tilstand %s, storleiksendring %s, fokus %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stilen er alt spesifisert for tilstand %s, fokus %s"
+
+# TRN: Tema?
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan ikkje ha to draw_ops for eit <piece>-element (drakta spesifiserte ein "
+"draw_ops-attributt og også eit <draw_ops>-element, eller to element)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan ikkje ha to draw_ops for eit <button>-element (drakta spesifiserte ein "
+"draw_ops-attributt og også eit <draw_ops>-element, eller to element)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kan ikkje ha to draw_ops for eit <menu_icon>-element (drakta spesifiserte "
+"ein draw_ops-attributt og også eit <draw_ops>-element, eller to element)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Det ytste elementet i drakta må vera <marco_theme>, ikkje <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Elementet <%s> er ikkje tillate inni eit name/author/date/description-element"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Elementet <%s> er ikkje tillate inne i eit <constant>-element"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Elementet <%s> er ikkje tillate inni eit distance/border/aspect_ratio-element"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Elementet <%s> er ikkje tillate inni eit draw operation-element"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Elementet %s er ikkje tillate inni eit <%s>-element"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Ingen draw_ops tilgjengelege for rammedelen"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Ingen draw_ops tilgjengelege for knappen"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Tekst er ikkje tillate inni elementet <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, fuzzy, c-format
+#| msgid "<name> specified twice for this theme"
+msgid "<%s> specified twice for this theme"
+msgstr "<name> spesifisert to gongar i denne drakta"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Fann ikkje ei gyldig fil for drakt %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Draktfila %s inneheldt ikkje rotelementet <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Vindauge"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Vindauge/Riv av"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Vindauge/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Vindauge/_Modal dialog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Vindauge/_Verktøy"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Vindauge/_Oppstartsskjerm"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Vindauge/_Toppdokk"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Vindauge/_Botndokk"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Vindauge/V_enstre dokk"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Vindauge/_Høgre dokk"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Vindauge/_Alle dokkane"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Vindauge/S_krivebord"
+
+#: ../src/ui/theme-viewer.c:136
+msgid "Open another one of these windows"
+msgstr "Opna eit slikt vindauge til"
+
+#: ../src/ui/theme-viewer.c:143
+msgid "This is a demo button with an 'open' icon"
+msgstr "Dette er ein demoknapp med et «opna»-ikon"
+
+#: ../src/ui/theme-viewer.c:150
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Dette er ein demoknapp med ein «Avslutt»-knapp"
+
+#: ../src/ui/theme-viewer.c:243
+msgid "This is a sample message in a sample dialog"
+msgstr "Dette er eit meldingsdøme i eit dialogdøme"
+
+#: ../src/ui/theme-viewer.c:326
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Menyoppføring %d\n"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Border-only window"
+msgstr "Vindauge med berre kant"
+
+#: ../src/ui/theme-viewer.c:362
+msgid "Bar"
+msgstr "Stolpe"
+
+#: ../src/ui/theme-viewer.c:379
+msgid "Normal Application Window"
+msgstr "Normalt programvindauge"
+
+#: ../src/ui/theme-viewer.c:383
+msgid "Dialog Box"
+msgstr "Dialogboks"
+
+#: ../src/ui/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "Modal dialogboks"
+
+#: ../src/ui/theme-viewer.c:391
+msgid "Utility Palette"
+msgstr "Verktøypalett"
+
+#: ../src/ui/theme-viewer.c:395
+msgid "Torn-off Menu"
+msgstr "Avriven meny"
+
+#: ../src/ui/theme-viewer.c:399
+msgid "Border"
+msgstr "Kant"
+
+#: ../src/ui/theme-viewer.c:727
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test %d av knappeplassering"
+
+#: ../src/ui/theme-viewer.c:756
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g millisekund å teikna ei vindaugsramme"
+
+#: ../src/ui/theme-viewer.c:799
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Bruk: marco-theme-viewer [DRAKTNAMN]\n"
+
+#: ../src/ui/theme-viewer.c:806
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Klarte ikkje å lasta drakta: %s\n"
+
+#: ../src/ui/theme-viewer.c:812
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Lasta drakta «%s» på %g sekund\n"
+
+#: ../src/ui/theme-viewer.c:853
+msgid "Normal Title Font"
+msgstr "Normal tittelskrift"
+
+#: ../src/ui/theme-viewer.c:859
+msgid "Small Title Font"
+msgstr "Lita tittelskrift"
+
+#: ../src/ui/theme-viewer.c:865
+msgid "Large Title Font"
+msgstr "Stor tittelskrift"
+
+#: ../src/ui/theme-viewer.c:870
+msgid "Button Layouts"
+msgstr "Knappeutforming"
+
+#: ../src/ui/theme-viewer.c:875
+msgid "Benchmark"
+msgstr "Test"
+
+#: ../src/ui/theme-viewer.c:922
+msgid "Window Title Goes Here"
+msgstr "Vindaugstittelen står her"
+
+#: ../src/ui/theme-viewer.c:1026
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Teikna %d rammer på %g sekund hjå klienten (%g millisekund per ramme), og %g "
+"sekund etter vegguret inkludert X-tenar-ressursar (%g millisekund per "
+"ramme)\n"
+
+#: ../src/ui/theme-viewer.c:1245
+msgid "position expression test returned TRUE but set error"
+msgstr "plasseringsuttrykktesten svarte «SANN» men stilte feilkode"
+
+#: ../src/ui/theme-viewer.c:1247
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "plasseringsuttrykktesten svarte «USANN» men stilte ikkje feilkode"
+
+#: ../src/ui/theme-viewer.c:1251
+msgid "Error was expected but none given"
+msgstr "Venta feilkode, men fekk ingen"
+
+#: ../src/ui/theme-viewer.c:1253
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Venta feilkode %d, fekk %d"
+
+#: ../src/ui/theme-viewer.c:1259
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Venta ikkje feilkode, men fekk: %s"
+
+#: ../src/ui/theme-viewer.c:1263
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x-verdien var %d, venta %d"
+
+#: ../src/ui/theme-viewer.c:1266
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y-verdien var %d, venta %d"
+
+#: ../src/ui/theme-viewer.c:1331
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d koordinatuttrykk tolka på %g sekund (%g sekund per uttrykk i snitt)\n"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Kunne ikkje tolka meldinga «%s» frå dialogprosessen\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Feil under lesing frå dialogvisingsprosess: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Kunne ikkje starta marco-dialogen som spør om å drepa eit program: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Kunne ikkje opna marco-dialog for å visa ein feil ved ein kommando: %"
+#~ "s\n"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "Typen for «%s» var ikkje heiltal"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d lagra i MateConf-nøkkelen %s er ikkje ein rimeleg cursor_size,må vera i "
+#~ "området 1--128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d lagra i MateConf-nøkkelen %s er ikkje eit rimeleg tal på arbeidsflater, "
+#~ "noverande maksimum er %d\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Ukjend attributt %s på <marco_session>-element"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Ukjend attributt %s på <maximized>-element"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Ukjend attributt %s på <geometry>-element"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Feil under oppstart av marco-dialog for å åtvara om program som ikkje "
+#~ "støttar økthandsaming: %s\n"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Mange handlingar (t.d. trykk i klientområdet, flytting av eller endring "
+#~ "av storleik på vindauge) hever normalt set vindauget som ein bi-effekt. "
+#~ "Det frarådes på det sterkeste å setja denne til «false» då dette fjernar "
+#~ "koplinga mellom heving av vindauget og andre brukarhandlingar og fører "
+#~ "til at førespurnadar om heving av vindauget frå program ignorerast. Sjå "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflata over den noverande arbeidsflata. "
+#~ "Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "Tolkaren er ganske romsleg og tillet små og store bokstavar, og "
+#~ "forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette "
+#~ "valet til den spesielle verdien «disabled», vil ikkje denne handlinga ha "
+#~ "nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflata under den noverande arbeidsflata. "
+#~ "Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "Tolkaren er ganske romsleg og tillet små og store bokstavar, og "
+#~ "forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette "
+#~ "valet til den spesielle verdien «disabled», vil ikkje denne handlinga ha "
+#~ "nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflata til venstre for den noverande "
+#~ "arbeidsflata. Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og store bokstavar, "
+#~ "og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set "
+#~ "dette valet til den spesielle verdien «disabled», vil ikkje denne "
+#~ "handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflata til høgre for den noverande "
+#~ "arbeidsflata. Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og store bokstavar, "
+#~ "og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set "
+#~ "dette valet til den spesielle verdien «disabled», vil ikkje denne "
+#~ "handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 1. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 10. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 11. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 12. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 2. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 3. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 4. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 5. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 6. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 7. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 8. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som byter til arbeidsflate 9. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som aktiverer vindaugemenyen. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som går inn i «flyttemodus», som let deg flytta eit vindauge "
+#~ "med tastaturet. Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og store "
+#~ "bokstavar, og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom "
+#~ "du set dette valet til den spesielle verdien «disabled», vil ikkje denne "
+#~ "handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som går inn i «modus for å endra storleik» og let deg endra "
+#~ "storleiken på vindauget med tastaturet. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som gøymer alle dei normale vindauga og set fokus på "
+#~ "skrivebordet. Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og store bokstavar, "
+#~ "og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set "
+#~ "dette valet til den spesielle verdien «disabled», vil ikkje denne "
+#~ "handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som maksimerer eit vindauge. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som minimerer eit vindauge. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge ei arbeidsflate ned. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge ei arbeidsflate til venstre. "
+#~ "Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "Tolkaren er ganske romsleg og tillet små og store bokstavar, og "
+#~ "forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette "
+#~ "valet til den spesielle verdien «disabled», vil ikkje denne handlinga ha "
+#~ "nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge ei arbeidsflate til høgre. Formatet "
+#~ "er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge ei arbeidsflate opp. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 1. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 10. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 11. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 12. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 2. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 3. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 4. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 5. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 6. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 7. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 8. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar eit vindauge til arbeidsflate 9. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar fokus baklengs mellom panela og skrivebordet, med "
+#~ "ein dialogboks. Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og store "
+#~ "bokstavar, og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom "
+#~ "du set dette valet til den spesielle verdien «disabled», vil ikkje denne "
+#~ "handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar fokus baklengs mellom panela og skrivebordet, "
+#~ "utan dialogboks. Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og store "
+#~ "bokstavar, og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom "
+#~ "du set dette valet til den spesielle verdien «disabled», vil ikkje denne "
+#~ "handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Tastaturbindinga som byter fokus mellom vindauge baklengs utan ein "
+#~ "dialog. Viss ein held nede «Shift» blar ein framover att. Formatet ser "
+#~ "slik ut: «&lt;Control&gt;a» eller «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkeren er "
+#~ "ganske liberal og tillater små og store bokstavar, i tillegg til "
+#~ "forkortingar som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Viss du set alternativet "
+#~ "til den spesielle strengen «disabled», vil det ikkje vera ein "
+#~ "tastaturbinding for denne handlinga."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Tastaturbindinga som byter fokus mellom vindauge, med ein dialog. Viss "
+#~ "ein held nede «Shift» vil ein bla framover att. Formatet ser slik ut: «&lt;"
+#~ "Control&gt;a» eller «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkeren er ganske "
+#~ "liberal og tillater små og store bokstavar, i tillegg til forkortingar "
+#~ "som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Viss du set alternativet til den "
+#~ "spesielle strengen «disabled», vil det ikkje vera ein tastaturbinding for "
+#~ "denne handlinga."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar fokus baklengs mellom vindauga, utan dialogboks. "
+#~ "Å halda «Shift» nede i lag med denne bindinga endrar retninga til framover "
+#~ "i lista. Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og store bokstavar, "
+#~ "og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set "
+#~ "dette valet til den spesielle verdien «disabled», vil ikkje denne "
+#~ "handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar fokus bakover mellom vindauga, med ein "
+#~ "dialogboks. Å halda «Shift» nede i lag med denne bindinga endrar retninga "
+#~ "til framover i lista. Formatet er på forma «&lt;Control&gt;a» og «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og "
+#~ "store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». "
+#~ "Dersom du set dette valet til den spesielle verdien «disabled», vil ikkje "
+#~ "denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar fokus mellom panela og skrivebordet, med ein "
+#~ "dialogboks. Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og store bokstavar, "
+#~ "og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set "
+#~ "dette valet til den spesielle verdien «disabled», vil ikkje denne "
+#~ "handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar fokus mellom panela og skrivebordet, utan "
+#~ "dialogboks. Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og store bokstavar, "
+#~ "og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set "
+#~ "dette valet til den spesielle verdien «disabled», vil ikkje denne "
+#~ "handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Tastaturbindinga som byter fokus mellom vindauge i eit program utan ein "
+#~ "dialog. Viss du held nede «shift»-tasten medan du brukar denne bindinga "
+#~ "byttes retninga. Formatet ser slik ut: «&lt;Control&gt;a» eller «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». Tolkeren er ganske liberal og tillater små og "
+#~ "store bokstavar, i tillegg til forkortingar som «&lt;Ctl&gt;» og «&lt;"
+#~ "Ctrl&gt;». Viss du set alternativet til den spesielle strengen «disabled», "
+#~ "vil det ikkje vera ein tastaturbinding for denne handlinga."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Tastaturbindinga som byter fokus mellom vindauge i eit program med ein "
+#~ "dialog. Viss du held «shift»-tasten nede snur du om på retninga. Formatet "
+#~ "ser slik ut: «&lt;Control&gt;a» eller «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "Tolkeren er ganske liberal og tillater små og store bokstavar, i tillegg "
+#~ "til forkortingar som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Viss du set "
+#~ "alternativet til den spesielle strengen «disabled», vil det ikkje vera ein "
+#~ "tastaturbinding for denne handlinga."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar fokus mellom vindauga, utan dialogboks. "
+#~ "(Tradisjonelt &lt;Alt&gt;Escape.)Å halda «Shift» nede i lag med denne "
+#~ "bindinga byter retning på rørsla i vindaugelista. Formatet er på forma "
+#~ "«&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske "
+#~ "romsleg og tillet små og store bokstavar, og forkortingar slik som «&lt;"
+#~ "Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle "
+#~ "verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som flyttar fokus mellom vindauga, med ein dialogboks. "
+#~ "(Tradisjonelt &lt;Alt&gt;Tab.)Å halda «Shift» nede i lag med denne "
+#~ "bindinga byter retning på rørsla i vindaugelista. Formatet er på forma "
+#~ "«&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske "
+#~ "romsleg og tillet små og store bokstavar, og forkortingar slik som «&lt;"
+#~ "Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle "
+#~ "verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som slår av og på «alltid øvst». Eit vindauge som alltid er "
+#~ "øvst, vil alltid vera synleg over andre overlappande vindauge. Formatet "
+#~ "er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som slår av og på fullskjermmodus. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som maksimerer og gjenoppretter vindauget. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som slår av og på skuggelagt tilstand for vindauget. Formatet "
+#~ "er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som styrer om vindauget er synleg på alle arbeidsområda eller "
+#~ "berre eitt. Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og store bokstavar, "
+#~ "og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set "
+#~ "dette valet til den spesielle verdien «disabled», vil ikkje denne "
+#~ "handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som gjenoppretter eit vindauge. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som viser panelet sin «Køyr program»-dialogboks. Formatet er "
+#~ "på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Snøggtasten som køyrer ein terminal. Formatet er på forma «&lt;Control&gt;"
+#~ "a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg og tillet "
+#~ "små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» og «&lt;"
+#~ "Ctrl&gt;». Dersom du set dette valet til den spesielle verdien «disabled», "
+#~ "vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som køyrer panelet sitt skjermbileteverktøy for å ta eit "
+#~ "bilete av eit vindauge. Formatet er på forma «&lt;Control&gt;a» og «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og "
+#~ "store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». "
+#~ "Dersom du set dette valet til den spesielle verdien «disabled», vil ikkje "
+#~ "denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Snøggtasten som køyrer panelet sitt skjermbileteverktøy. Formatet er på "
+#~ "forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Snøggtasten som køyrer panelet sitt skjermbileteverktøy for å ta eit "
+#~ "bilete av eit vindauge. Formatet er på forma «&lt;Control&gt;a» og «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og "
+#~ "store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». "
+#~ "Dersom du set dette valet til den spesielle verdien «disabled», vil ikkje "
+#~ "denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Denne tastebindinga styrer om eit vindauge er over eller under andre "
+#~ "vindauge. Dersom vindauget er dekka av eit anna, vil det løfta vindauget "
+#~ "over alle dei andre. Viss vindauget alt er fullt synleg, vert det senka "
+#~ "under alle dei andre. Formatet er på forma «&lt;Control&gt;a» og «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg og tillet små og "
+#~ "store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». "
+#~ "Dersom du set dette valet til den spesielle verdien «disabled», vil ikkje "
+#~ "denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Denne snøggtasten senkar eit vindauge under andre vindauge. Formatet er "
+#~ "på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er "
+#~ "ganske romsleg og tillet små og store bokstavar, og forkortingar slik som "
+#~ "«&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette valet til den "
+#~ "spesielle verdien «disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Denne tastaturbindinga flytter eit vindauge mot nord (toppen) på "
+#~ "skjermen. Formatet ser slik ut: «&lt;Control&gt;a» eller «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». Tolkeren er ganske liberal og tillater små og store "
+#~ "bokstavar, i tillegg til forkortingar som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». "
+#~ "Viss du set alternativet til den spesielle strengen «disabled», vil det "
+#~ "ikkje vera ein tastaturbinding for denne handlinga."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Denne tastaturbindinga flytter eit vindauge mot øst (høgre) på skjermen. "
+#~ "Formatet ser slik ut: «&lt;Control&gt;a» eller «&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1». Tolkeren er ganske liberal og tillater små og store bokstavar, i "
+#~ "tillegg til forkortingar som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Viss du set "
+#~ "alternativet til den spesielle strengen «disabled», vil det ikkje vera ein "
+#~ "tastaturbinding for denne handlinga."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Denne tastaturbindinga flytter eit vindauge mot nord-øst (øvst til høgre) "
+#~ "på skjermen. Formatet ser slik ut: «&lt;Control&gt;a» eller «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». Tolkeren er ganske liberal og tillater små og store "
+#~ "bokstavar, i tillegg til forkortingar som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». "
+#~ "Viss du set alternativet til den spesielle strengen «disabled», vil det "
+#~ "ikkje vera ein tastaturbinding for denne handlinga."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Denne tastaturbindinga flytter eit vindauge mot nord-vest (øvst til "
+#~ "venstre) på skjermen. Formatet ser slik ut: «&lt;Control&gt;a» eller «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». Tolkeren er ganske liberal og tillater små og "
+#~ "store bokstavar, i tillegg til forkortingar som «&lt;Ctl&gt;» og «&lt;"
+#~ "Ctrl&gt;». Viss du set alternativet til den spesielle strengen «disabled», "
+#~ "vil det ikkje vera ein tastaturbinding for denne handlinga."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Denne tastaturbindinga flytter eit vindauge mot sør (botnen) på skjermen. "
+#~ "Formatet ser slik ut: «&lt;Control&gt;a» eller «&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1». Tolkeren er ganske liberal og tillater små og store bokstavar, i "
+#~ "tillegg til forkortingar som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Viss du set "
+#~ "alternativet til den spesielle strengen «disabled», vil det ikkje vera ein "
+#~ "tastaturbinding for denne handlinga."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Denne tastaturbindinga flytter eit vindauge mot sør-øst (nedst til høgre) "
+#~ "på skjermen. Formatet ser slik ut: «&lt;Control&gt;a» eller «&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1». Tolkeren er ganske liberal og tillater små og store "
+#~ "bokstavar, i tillegg til forkortingar som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». "
+#~ "Viss du set alternativet til den spesielle strengen «disabled», vil det "
+#~ "ikkje vera ein tastaturbinding for denne handlinga."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Denne tastaturbindinga flytter eit vindauge mot sør-vest (nedst til "
+#~ "venstre) på skjermen. Formatet ser slik ut: «&lt;Control&gt;a» eller «&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1». Tolkeren er ganske liberal og tillater små og "
+#~ "store bokstavar, i tillegg til forkortingar som «&lt;Ctl&gt;» og «&lt;"
+#~ "Ctrl&gt;». Viss du set alternativet til den spesielle strengen «disabled», "
+#~ "vil det ikkje vera ein tastaturbinding for denne handlinga."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Denne tastaturbindinga flytter eit vindauge mot vest (venstre) på "
+#~ "skjermen. Formatet ser slik ut: «&lt;Control&gt;a» eller «&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1». Tolkeren er ganske liberal og tillater små og store "
+#~ "bokstavar, i tillegg til forkortingar som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». "
+#~ "Viss du set alternativet til den spesielle strengen «disabled», vil det "
+#~ "ikkje vera ein tastaturbinding for denne handlinga."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Denne snøggtastbindinga løftar eit vindauge over dei andre vindauga. "
+#~ "Formatet er på forma «&lt;Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». "
+#~ "Tolkaren er ganske romsleg og tillet små og store bokstavar, og "
+#~ "forkortingar slik som «&lt;Ctl&gt;» og «&lt;Ctrl&gt;». Dersom du set dette "
+#~ "valet til den spesielle verdien «disabled», vil ikkje denne handlinga ha "
+#~ "nokon snøggtast."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Denne snøggtasten endrar storleiken på eit vindauge slik at det brukar "
+#~ "all den tilgjengelege vassrette plassen. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Denne snøggtasten endrar storleiken på eit vindauge slik at det brukar "
+#~ "all den tilgjengelege loddrette plassen. Formatet er på forma «&lt;"
+#~ "Control&gt;a» og «&lt;Shift&gt;&lt;Alt&gt;F1». Tolkaren er ganske romsleg "
+#~ "og tillet små og store bokstavar, og forkortingar slik som «&lt;Ctl&gt;» "
+#~ "og «&lt;Ctrl&gt;». Dersom du set dette valet til den spesielle verdien "
+#~ "«disabled», vil ikkje denne handlinga ha nokon snøggtast."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Slå av/på at vindauget alltid ligg øvst"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "De-maksimer vindauget"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Av-maksimer vindauge"
+
+#~ msgid "\"%s\" is not responding."
+#~ msgstr "«%s» svarar ikkje."
+
+#~ msgid "Title"
+#~ msgstr "Tittel"
+
+#~ msgid "Class"
+#~ msgstr "Klasse"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Ingen atributt «%s» på <%s>-element"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Drakt har allereie eit reserveikon"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Drakt har allereie eit miniikon i reserve"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Ingen «name»-attributt <%s>-element"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Ingen «value»-attributt på elementet <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Ingen «top»-attributt på element <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Ingen «bottom»-attributt på element <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Ingen «left»-attributt på element <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Ingen «right»-attributt på element <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Ingen «color»-attributt på element <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Ingen «x1»-attributt på <%s>-element"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Ingen «y1»-attributt på element <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Ingen «x2»-attributt på element <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Ingen «y2»-attributt på element <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Ingen «y»-attributt på element <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Ingen «width»-attributt på element <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Ingen «height»-attributt på element <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "Ingen «start_angle»-attributt på element <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "Ingen «extent_angle»-attributt <%s>-element"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Ingen «alpha»-attributt på element <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Ingen «type»-attributt på element <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Ingen «filename»-attributt på element <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Ingen «state»-attributt på element <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Ingen «shadow»-attributt på element <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Ingen «arrow»-attributt på element <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Ingen «value»-attributt på <%s>-element"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Ingen «position»-attributt på <%s>-element"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Ingen «function»-attributt på <%s>-element"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Ingen «state»-attributt på <%s>-element"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Ingen «focus»-attributt på <%s>-element"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Ingen «style»-attributt på <%s>-element"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Ingen «resize»-attributt på <%s>-element"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> spesifisert to gongar i denne drakta"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> spesifisert to gongar i denne drakta"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> spesifisert to gongar i denne drakta"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> spesifisert to gongar i denne drakta"
+
+#~ msgid "On _Top"
+#~ msgstr "_Øvst"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Dersom du tvingar dette programmet til å avslutta, vil alle ulagra "
+#~ "endringar gå tapt."
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Ukjend funksjon for «%s» for menyikon"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Ukjend tilstand «%s» for menyikon"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "Drakta har allereie eit menyikon for funksjon %s tilstand %s"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "Ingen draw_ops tilgjengelege for menyikonet"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "Kunne ikkje lesa drakt frå fila %s: %s\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> må vera "
+#~ "spesifisert for denne drakta"
+
+# TRN: Workaround?
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Somme program bryt spesifikasjonar på måtar som fører til at "
+#~ "vindaugehandsamaren ikkje oppfører seg ordentleg. Til dømes vil Marco "
+#~ "gjerne plassera alle dialogane på ein konsistent måte i høve til "
+#~ "foreldervindauget. Det vil seia å oversjå den plasseringa programmet ber "
+#~ "om for dialogen. Men somme versjonar av Java/Swing merkar sprettopp-"
+#~ "menyane sine som dialogar, så Marco må slå av dialogplassering for at "
+#~ "menyar skal virka i defekte Java-program. Det finst fleire slike døme. "
+#~ "Dette valet set Marco til å vera heilt korrekt, som kanskje vil gje "
+#~ "eit litt finare grensesnitt dersom du ikkje treng å køyra defekte "
+#~ "program. Diverre må slike «omvegar» vera på som standard, for røynda er "
+#~ "ikkje perfekt. Nokon av omvegane er for å koma utanom manglar i "
+#~ "spesifikasjonen for vindaugehandsamarar, så stundom vil ikkje feil i "
+#~ "«omvegsfri» modus vera råd å retta utan å fyrst retta spesifikasjonen."
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Koordinatuttrykktolkaren flaut over bufferet sitt. Dette er eigentleg ein "
+#~ "feil i Marco, men er du sikker på at du treng så store uttrykk?"
diff --git a/po/oc.po b/po/oc.po
new file mode 100644
index 00000000..6e37f41b
--- /dev/null
+++ b/po/oc.po
@@ -0,0 +1,2462 @@
+# Translation of oc.po to Occitan
+# Occitan translation of marco.
+# Copyright (C) 2002-2006, 2007 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+#
+# Yannig Marchegay (Kokoyaya) <[email protected]>, 2006-2008, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: oc\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-14 19:50+0200\n"
+"PO-Revision-Date: 2010-04-14 20:32+0200\n"
+"Last-Translator: Yannig Marchegay (Kokoyaya) <[email protected]>\n"
+"Language-Team: Occitan <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Burèu"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Gestion de las fenèstras"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Eveniment sonariá"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Requèsta d'informacion de fenèstra desconeguda : %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> respond pas."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Podètz esperar un moment per contunhar o insistir per quitar l'aplicacion."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Esperar"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Forçar a tampar"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Impossible d'obténer lo nom d'òste : %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Extension %s mancanta, mas necessària per la composicion"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Impossible de dobrir lo visual « %s » del sistèma X Window\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Pèrda de la connexion amb lo visual « %s » ;\n"
+"probable que lo servidor X es estat arrestat o qu'avètz tuat/destruch\n"
+"lo gestionari de fenèstras.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Error fatala d'E/S %d (%s) sul visual « %s ».\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Un autre programa utiliza ja la clau %s amb los modificators %x coma "
+"ligason\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"I a agut una error al moment de l'execucion de <tt>%s</tt> :\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Pas cap de comanda %d definida.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Pas cap de comanda de terminal definida.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright © 2001-%s Havoc Pennington, Red Hat, Inc., e autres.\n"
+"Aquò es un logicial liure ; consultatz lo còde font per las\n"
+"condicions de còpia.\n"
+"I a PAS CAP de garantia ; quitament pas de VALOR MERCANDA o\n"
+"d'ADEQÜACION A UN USATGE PARTICULAR.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Desactiva la connexion amb lo gestionari de sessions"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Remplaçar lo gestionari de fenèstras actiu per Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Especifica l'ID de gestion de session"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Visual X d'utilizar"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inicializar la sesilha dempuèi lo fichièr de salvament"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Visualizar la version"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Rendre los apèls X sincròns"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Activar la composicion"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Desactivar la composicion"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Metre pas en ecran complet de fenèstras que son maximizadas e qu'an pas de "
+"decoracions"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Lo percors del repertòri de tèmas a pas capitat : %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Impossible de trobar un tèma ! Asseguratz-vos que %s existís e conten los "
+"tèmas costumièrs.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Impossible de tornar aviar : %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "La valor de la clau MateConf « %s » es pas valida\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d enregistrat dins la clau MateConf %s es pas comprés entre %d e %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Lo tipe de la clau MateConf « %s » es pas valid\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Solucions de cambi desactivadas per las aplicacions damatjadas. Es possible "
+"que d'unas aplicacions se compòrten pas corrèctament.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Impossible d'analisar la descripcion de poliça « %s » dempuèi la clau MateConf %"
+"s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"« %s » trobada dins la banca de donadas de configuracion es pas una valor "
+"corrècta pel boton de mirga\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Error de definicion del nombre d'espacis de trabalh sus %d : %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Espaci de trabalh %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"« %s » trobat dins la banca de donadas de configuracion es pas una valor "
+"corrècta per la combinason de tòcas « %s »\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+"Error al moment de definir lo nom de l'espaci de trabalh %d en « %s » : %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Error dins la definicion de l'estat de la composicion : %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "L'ecran %d sul visual « %s » es pas valid\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"L'ecran %d sul visual « %s » a ja un gestionari de fenèstras ; ensajatz "
+"d'utilizar l'opcion --replace per remplaçar lo gestionari de fenèstras "
+"actual.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Impossible d'aver la seleccion del gestionari de fenèstras sus l'ecran %d "
+"del visual « %s »\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "L'ecran %d sul visual « %s » a ja un gestionari de fenèstras\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Impossible de liberar l'ecran %d sul visual « %s »\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Lo format se sembla a « <Control>a » o « <Shift><Alt>F1 ».\n"
+"\n"
+"L'analisador es pro sople e permet d'utilizar de majusculas o de minusculas "
+"e d'abreviacions coma « <Ctl> » e « <Ctrl> ». Se definissètz l'opcion sus la "
+"cadena especiala « disabled » (desactivat), i aurà pas de combinason de tòcas "
+"per aquesta accion."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Lo format se sembla a « <Control>a » o « <Shift><Alt>F1 ».\n"
+"\n"
+"L'analisador es pro sople e permet d'utilizar de majusculas o de minusculas "
+"e d'abreviacions coma « <Ctl> » e « <Ctrl> ». Se definissètz l'opcion sus la "
+"cadena especiala « disabled » (desactivat), i aurà pas de combinason de tòcas "
+"per aquesta accion.\n"
+"Aquesta combinason de tòcas pòt èsser inversada en mantenent quichada la "
+"tòca « Maj ». Per consequent, « Maj » pòt pas far partida d'aquesta combinason."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Impossible de crear lo repertòri '%s' : %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Impossible de dobrir lo fichièr de sesilha « %s » en escritura : %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Error al moment d'escriure lo fichièr de session '%s' : %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Error al moment de la tampadura del fichièr de sesilha « %s » : %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "La lectura del fichièr de sesilha enregistrat %s a fracassat : %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "L'analsi del fichièr de sesilha enregistrat a fracassat : %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"L'atribut <marco_session> es estat trobat, mas avèm ja l'ID de sesilha"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Atribut %s desconegut sus l'element <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "balisa <window> imbricada"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Element %s desconegut"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Aquestas fenèstras prenon pas en carga « l'enregistrament de la configuracion "
+"actuala » e deuràn èsser reaviadas manualament a la connexion venenta."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "La dobertura del jornal de debogatge a fracassat : %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+"L'execucion de la comanda fdopen() sul fichièr jornal %s a fracassat : %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Dobertura del fichièr jornal %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco es estat compilat sens la presa en carga del mòde charraire\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Gestionari de fenèstras : "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Anomalia dins lo gestionari de fenèstras : "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Alèrta del gestionari de fenèstras : "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Error de gestionari de fenèstras : "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"La fenèstra %s posiciona SM_CLIENT_ID sus ela meteissa, al luòc de la "
+"posicionar sus la fenèstra WM_CLIENT_LEADER coma indicat dins l'ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"La fenèstra %s posiciona un indici MWM qu'indica qu'es pas redimensionabla, "
+"mas posiciona una talha minimala de %d x %d e una talha maximala de %d x %"
+"d ; aquò a pas gaire de sens.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "L'aplicacion a definit un _NET_WM_PID %lu erronèu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (sus %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (al nom del superutilizaire)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (al nom de %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (al nom d'un autre utilizaire)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Fenèstra WM_TRANSIENT_FOR 0x%lx invalida indicada per %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"La fenèstra 0x%lx a la proprietat %s\n"
+"que deuriá aver lo tipe %s e lo format %d\n"
+"e a, en fach lo tipe %s e lo format %d n_items %d\n"
+"Es probablament un bug de l'aplicacion, e non pas del gestionari\n"
+"de fenèstras.\n"
+"Lo títol de la fenèstra es=\"%s\" sa classa=\"%s\" e son nom=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "La proprietat %s de la fenèstra 0x%lx conten un còde UTF-8 invalid\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"La proprietat %s de la fenèstra 0x%lx conten un còde UTF-8 invalid per "
+"l'element %d dins la lista\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Anar al espaci de trabalh 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Anar al espaci de trabalh 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Anar al espaci de trabalh 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Anar al espaci de trabalh 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Anar al espaci de trabalh 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Anar al espaci de trabalh 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Anar al espaci de trabalh 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Anar al espaci de trabalh 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Anar al espaci de trabalh 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Anar al espaci de trabalh 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Anar al espaci de trabalh 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Anar al espaci de trabalh 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Anar a l'espaci de trabalh a esquèrra de l'espaci de trabalh actual"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Anar a l'espaci de trabalh a drecha de l'espaci de trabalh actual"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Anar a l'espaci de trabalh endessús de l'espaci de trabalh actual"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Anar a l'espaci de trabalh endessós de l'espaci de trabalh actual"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr ""
+"Se desplaçar entre las fenèstras d'una aplicacion via una fenèstra de "
+"primièr plan"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Se desplaçar en arrièr entre las fenèstras d'una aplicacion via una fenèstra "
+"de primièr plan"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Se desplaçar entre las fenèstras via una fenèstra de primièr plan"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr ""
+"Se desplaçar en arrièr entre las fenèstras via una fenèstra de primièr plan"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr ""
+"Se desplaçar entre los tablèus de bòrd e lo burèu via una fenèstra de "
+"primièr plan"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Se desplaçar en arrièr entre los tablèus de bòrd e lo burèu via una fenèstra "
+"de primièr plan"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Se desplaçar immediatament entre las fenèstras d'una aplicacion"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr ""
+"Se desplaçar immediatament en arrièr entre las fenèstras d'una aplicacion"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Se desplaçar entre las fenèstras dirèctament"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Se desplaçar en arrièr entre las fenèstras immediatament"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Se desplaçar entre los tablèus de bòrd e lo burèu immediatament"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+"Se desplaçar en arrièr entre los tablèus de bòrd e lo burèu immediatament"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Amagar totas las fenèstras normalas e balhar lo focus al burèu"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Visualizar lo menut principal del panèl"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Afichar la bóstia de dialòg « Aviar una aplicacion » del tablèu de bòrd"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Far una captura d'ecran"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Far una captura d'ecran d'una fenèstra"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Executar un terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Activar lo menut fenèstra"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "(Des)activar lo mòde ecran complet"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Bascuolar l'estat d'agrandiment"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+"Activa o desactiva la proprietat d'una fenèstra d'èsser totjorn al primièr "
+"plan"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximizar la fenèstra"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restablir la fenèstra"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Basculer l'estat de replec"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Reduire la fenèstra"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Tampar la fenèstra"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Desplaçar la fenèstra"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Redimensionar la fenèstra"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Plaçar la fenèstra sus totes los espacis de trabalh, o sus un sol"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Desplaçar la fenèstra al espaci de trabalh 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Desplaçar la fenèstra cap al espaci de trabalh 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Desplaçar la fenèstra cap al espaci de trabalh 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Desplaçar la fenèstra al espaci de trabalh 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Desplaçar la fenèstra al espaci de trabalh 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Desplaçar la fenèstra al espaci de trabalh 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Desplaçar la fenèstra al espaci de trabalh 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Desplaçar la fenèstra al espaci de trabalh 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Desplaçar la fenèstra al espaci de trabalh 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Desplaçar la fenèstra al espaci de trabalh 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Desplaçar la fenèstra al espaci de trabalh 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Desplaçar la fenèstra cap al espaci de trabalh 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Desplacar la fenèstra cap a l'espaci de trabalha a drecha"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Desplacar la fenèstra cap a l'espaci de trabalha a esquèrra"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Desplacar la fenèstra cap a l'espaci de trabalha amont"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Desplacar la fenèstra cap a l'espaci de trabalha aval"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Metre la fenèstra al primièr plan s'es amagada per una autra fenèstra, "
+"siquenon en rière plan"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Metre la fenèstra al primièr plan"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Metre la fenèstra jos las autras fenèstras"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximizar la fenèstra verticalament"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximizar la fenèstra orizontalament"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Deplaçar la fenèstra cap al canton nòrd-oèst (en naut a esquèrra)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Desplaçar la fenèstra cap al canton nòrd-èst (en naut a drecha)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Desplaçar la fenèstra cap al canton sud-oèst (en bas a esquèrra)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Desplaçar la fenèstra cap al canton sud-èst (en bas a drecha)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Desplaçar la fenèstra cap al costat nòrd de l'ecran (en naut)"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Desplaçar la fenèstra cap al costat sud de l'ecran (en bas)"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Desplaçar la fenèstra cap al costat èst de l'ecran (a drecha)"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Desplaçar la fenèstra cap al costat oèst de l'ecran (a esquèrra)"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Desplaçar la fenèstra al centre de l'ecran"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(pas implementat) La navigacion fonciona en tèrmes d'aplicacions e non pas "
+"de fenèstras"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Una cadena de descripcion de poliça descrivent una poliça per las barras de "
+"títol de fenèstras. La talha de la descripcion serà utilizada, çaquelà, pas "
+"que se l'opcion titlebar_font_size es reglada sus 0. Aquesta opcion es en "
+"otra desactivada se l'opcion titlebar_uses_desktop_font es reglada sus VERAI."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Accion quand doble-clicatz sus la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Accion d'un clic del mitan sus la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Accion d'un clic drech sus la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Agençament dels botons sus la barra de títol"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Agençament dels botons sus la barra de títol. La valor deu èsser una cadena, "
+"per exemple « menu:minimize,maximize,spacer,close » ; los dos punts separan "
+"lo canton esquèrre de la fenèstra del canton drech, e los noms dels botons "
+"an d'èsser separats per de virgulas. Los botons duplicats son pas "
+"autorizats. Los noms de boton desconeguts son silenciosament ignorats, e mai "
+"de botons poiràn èsser aponduts dins de versions futuras de marco sens "
+"copar las versions ancianas. Una balisa especiala « spacer » permet d'inserir "
+"un pauc d'espaci entre dos botons adjacents."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Plaça automaticament la fenèstra activa al primièr plan"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Clicar sus una fenèstra en mantenent quichada aquela tòca de modificacion "
+"deplaçarà la fenèstra (clic esquèrre), redimensionarà la fenèstra (clic del "
+"mitan), o aficharà lo menut de la fenèstra (clic drech). Las operacions "
+"mitan e drecha pòdon èsser inversadas en utilizant la clau "
+"« resize_with_right_button ». Lo modificador es definit coma « &lt;Alt&gt; » o "
+"« &lt;Super&gt; » per exemple."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Comanda d'executar en responsa a las combinasons de tòcas"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Gestionari de composicion"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Contraròtla lo biais que las fenèstras novèlas venon activas"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Tèma actiu"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+"Relambi en millisegondas per l'opcion de mesa automatica al primièr plan"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determina se Marco es utilizat coma gestionari de composicion."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determina se las aplicacions o lo sistèma pòdon generir de bips ausibles ; "
+"pòt èsser utilizat en conjonccion amb « sonariá visuala » per permetre de "
+"bips silencioses."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Desactiva los ajustaments requerits per las aplicaicons ancianas o mal "
+"concebudas"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Activar la lo sonadís visual"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Se VERAI e que lo mòde de focus es siá « sloppy » siá « mouse » alara la "
+"fenèstra qu'a lo focus es automaticament mes al primièr plan aprèp un "
+"relambi indicat per la clau auto_raise_delay. Aquò es pas similar a clicar "
+"sus una fenèstra per la metre al primièr plan, ni a desplaçar una fenèstra "
+"pendent un lisar-depausar."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Se VERAI, ignora l'opcion titlebar_font e utiliza la poliça estandarde de "
+"l'aplicacion pels títols de fenèstras."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Se VERAI, Marco donarà a l'utilizaire mens de retorn d'informacions en "
+"utilizant de contorns en fial de fèrre, evitant d'animacions o autras "
+"floriduras. Aquò significa una baissa d'ergonomia per fòrça utilisatzaires "
+"mas pòt permetre a las vièlhas aplicacions de contunhar de foncionar, e pòt "
+"tanben èsser util als servidors de terminals X per melhorar las "
+"performàncias. Çaquelà, la foncion fial de fèrre es desactivat quand "
+"l'accessibilitat es activada."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Se VERAI, Marco fonciona en tèrmes d'aplicacions puslèu que de fenèstras. "
+"Lo concèpte es pro abstrach, mas, en general, una configuracion basada sus "
+"las aplicacions es mai pròcha de Mac OS que de Windows. Quand activatz una "
+"fenèstra en mòde basat sus las aplicacions, totas las fenèstras de "
+"l'aplicacion seràn mesas al primièr plan. En otra, en mòde basat sus las "
+"aplicacions, los clics de focus son pas transmeses a las fenèstras d'autras "
+"aplicacions. Pel moment, lo mòde basat sus d'aplicacions es generalament pas "
+"mes en òbra."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Se VERAI, afavorís una febla utilizacion de las ressorsas al detriment de la "
+"convivialitat"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Tòca d'utilizar per modificar las accions del clic"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nom del espaci de trabalh"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Nombre d'espacis de trabalh"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Nombre d'espacis de trabalh. Deu èsser superior a zèro e presenta un limit "
+"maximal fixar per evitar de rendre vòstre burèu inutilizable en demandant "
+"tròp d'espacis de trabalh."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Executar la comanda definida"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Definir a « true » per redimensionar amb lo boton drech e afichar un menut "
+"amb lo boton del mitan en mantenent quichada la tòca balhada dins "
+"« mouse_button_modifier » ; definir a « false » per aver lo foncionament "
+"invèerse."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Metre aquesta opcion a « false » pòt provocar d'errors de comportament, es "
+"vertadièrament desaconselhat de modificar sa valor per defaut, « true ». "
+"Fòrça accions (per ex. los clics dins la zòna client, lo desplaçament o lo "
+"redimensionament de las fenèstras) an per efièch de bòrd de plaçar la "
+"fenèstra al primièr plan. En metent aquesta opcion a « false », çò qu'es "
+"fòrtament desaconselhat, las accions dels utilizaires e la mesa al primièr "
+"plan de las fenèstras son descoplats. Las demandas de mesa al primièr plan "
+"que provenon de las aplicacions seràn ignoradas tanben. Vejatz http://"
+"bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Quitament quand aquesta opcion "
+"es « false », las fenèstras pòdon encara èsser plaçadas al primièr plan per "
+"un clic amb Alt quichada ont que siá dins la fenèstra, per un clic sus la "
+"decoracion de la fenèstra, o per de messatges particulars mandats dels "
+"selectors d'espacis de trabalh, coma las demandas d'activacion mandadas per "
+"l'applet « Lista de las fenèstras ». Aquesta opcion es actualament "
+"desactivada dins lo mòde « focus al clic ». Notatz que la lista dels metòdes "
+"per menar una fenèstra al primièr plan quand « raise_on_click » es a « false » "
+"compòrta pas las demandas programadas per d'aplicacions per menar una "
+"fenèstra al primièr plan ; aquelas demandas seràn ignoradas, quina que siá "
+"lor rason. Se desvolopatz una aplicacion e que d'utilizaires se planhon que "
+"vòstra aplicacion fonciona pas amb aqueste paramètre desactivat, digatz-los "
+"qu'es de *lor* fauta e qu'an copat lor gestionari de fenèstras, que devon "
+"tornar metre aquesta opcion a « true » o viure amb lo « bug » qu'an demandat."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"D'unas aplicacions negligisson las especificacions ; ne resulta un "
+"disfoncionament del gestionari de fenèstras. Aquesta opcion obliga Marco "
+"a adoptar un mòde rigorós qu'ofrís una interfàcia mai coerenta a "
+"l'utilizaire a condicion qu'aqueste aja pas besonh d'aviar d'aplicacions que "
+"respèctan pas las especificacions."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Podètz ausir lo bip sistèma"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Indica a Marco quin metòde d'indicacion visuala cal utilizar aprèp una "
+"sonariá del sistèma o d'una aplicacion. I a actualament doas valors "
+"possiblas, « fullscreen », que provòca lo cluquejament de tot l'ecran, e "
+"« frame_flash » que provòca lo cluquejament de la barra de títol de "
+"l'aplicacion qu'a mandat lo senhal de sonariá. Se l'aplicacion que manda la "
+"sonariá es desconeguda (es lo cas de la sonariá del sistèma per defaut), la "
+"barra de títol de la fenèstra qu'a actualament lo focus cluqueja."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Las claus /apps/marco/global_keybindings/run_command_N definisson las "
+"combinasons de tòcas que correspòndon a aquestas comandas. Quichatz la "
+"combinason per run_command_N executarà la command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"La clau /apps/marco/global_keybindings/run_command_screenshot definís una "
+"combinason de tòcas qu'invòca la comanda indicada per aqueste reglatge."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"La clau /apps/marco/global_keybindings/run_command_window_screenshot "
+"definís una combinason de tòcas qu'invòca la comanda indicada per aqueste "
+"reglatge."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Las combinasons de tòcas qu'executan las comandas numerotadas "
+"correspondentas dins /apps/marco/keybinding_commands. Lo format se sembla "
+"a aquòi : « &lt;Control&gt;a » o « &lt;Shift&gt;&lt;Alt&gt;F1 ». L'analisador "
+"es pro sople e permet d'utilizar de majusculas o de minusculas e "
+"d'abreviacions coma « &lt;Ctl&gt; » e « &lt;Ctrl&gt; ». Se definissètz "
+"l'opcion sus la cadena especiala « disabled » (desactivat), i aurà pas pas de "
+"combinason de tòcas per aquesta accion."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Lo nom d'un espaci de trabalh."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "La comanda de captura d'ecran"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Lo tèma determina l'aparéncia de las bordaduras, de la barra de títol, etc. "
+"de la fenèstra."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Lo relambi abans la mesa al primièr plan de la fenèstra se l'opcion "
+"auto_raise a la valor VERAI. Es indicat en milens de segondas."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Lo mòde de focus de la fenèstra indica lo biais que las fenèstras son "
+"activadas. Presenta tres valors possiblas ; « click » significa que vos cal "
+"clicar sus las fenèstras per las activar, « sloppy » (« rajat ») significa "
+"que las fenèstras son activadas quand la mirga s'i plaça e "
+"« mouse » (« mirga »), significa que las fenèstras son activadas quand la "
+"mirga s'i plaça e desactivadas quand las quita."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "La comanda de captura d'ecran de fenèstra"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Aquesta opcion determina los efièches d'un clic doble sus la barra de títol "
+"d'una fenèstra. Las valors possiblas son « toggle_shade » que replega la "
+"fenèstra o la desplega, « toggle_maximize » que maximiza la fenèstra o la "
+"remet a sa talha iniciala abans maximizacion, "
+"« toggle_maximize_horizontally » e « toggle_maximize_vertically » que limitan "
+"la maximizacion dins la direccion indicada, « minimize » que redusís la "
+"fenèstra, « shade » que replega la fenèstra, « menut » qu'aficha lo menut de "
+"la fenèstra, « lower » que plaça la fenèstra darrièr totas las autras e "
+"« none » que fa pas res."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Cette option détermine les effets d'un clic du milieu sur la barre de titre "
+"d'une fenêtre. Les valeurs possibles sont « toggle_shade » qui replie la "
+"fenêtre ou la déplie, « toggle_maximize » qui maximise la fenêtre ou la remet "
+"à sa taille initiale avant maximisation, « toggle_maximize_horizontally » et "
+"« toggle_maximize_vertically » qui limitent la maximisation dans la direction "
+"indiquée, « minimize » qui réduit la fenêtre, « shade » qui replie la fenêtre, "
+"« menu » qui affiche le menu de la fenêtre, « lower » qui place la fenêtre "
+"derrière toutes les autres et « none » qui ne fait rien."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Aquesta opcion determina los efièches d'un clic drech sus la barra de títol "
+"d'una fenèstra. Las valors possiblas son « toggle_shade » que replega la "
+"fenèstra o la desplega, « toggle_maximize » que maximiza la fenèstra o la "
+"remet a sa talha iniciala abans maximizacion, "
+"« toggle_maximize_horizontally » e « toggle_maximize_vertically » que limitan "
+"la maximizacion dins la direccion indicada, « minimize » que reduís la "
+"fenèstra, « shade » que replega la fenèstra, « menu » qu'aficha lo menut de la "
+"fenèstra, « lower » que plaça la fenèstra darrièr totas las autras e « none » "
+"que fa pas res."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Aquesta opcion provesís un contraròtle suplementari sul biais que las "
+"fenèstras novèlas venon activas. A doas valors possiblas: « smart » que "
+"correspond al mòde d'activacion utilizaire normal e « strict » qu'activa pas "
+"las fenèstra aviadas dempuèi un terminal."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Activa una indicacion visuala quand una aplicacion o lo sistèma emet un "
+"bip ; util pels malentendents e per una utilizacion dins d'environaments "
+"bruchoses."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr ""
+"Utilizar la poliça estandarda del sistèma dins los títols de las fenèstras"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Tipe de sonadís visual"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Indica se la mesa al primièr plan deu èsser un efièch de bòrd d'autras "
+"interaccions amb l'utilizaire"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Indica se lo boton drech pòt servir a redimensionar"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Mòde de focus de las fenèstras"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Poliça de títol de las fenèstras"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Sintaxi : %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Tampar la fenèstra"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menut Fenèstra"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Redusir la fenèstra"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximizar la fenèstra"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restablir la fenèstra"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Repligar la fenèstra"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Desplegar la fenèstra"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Gardar la fenèstra al primièr plan"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Levar la fenèstra del primièr plan"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Totjorn sul espaci de trabalh visible"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Metre la fenèstra sus un sol espaci de trabalh"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Red_uire"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "R_establir"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Repl_egar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Desplegar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Desplaçar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Redimensionar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Desplaçar la barra de títol sus l'e_cran"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Totjorn al _primièr plan"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Totjorn sul espaci de trabalh visible"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Sonque sus aqueste espaci de trabalh"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Desplaçar cap a l'espaci de trabalh d'_esquèrra"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Desplaçar cap a l'espaci de trabalh de _drecha"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Desplaçar dins l'espaci de trabalh _superior"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Desplaçar dins l'espaci de trabalh _inferior"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Tampar"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Espaci de trabalh %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Espaci de trabalh 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Espaci de trabalh %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Desplaçar cap a un autre _espaci de trabalh"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Iper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "naut"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "bas"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "esquèrra"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "drecha"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "la geometria del quadre indica pas la dimension « %s »"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"la geometria del quadre indica pas la dimension « %s » per la bordadura « %s »"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "La proporcion del boton %g es pas rasonabla"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "La geometria del quadre indica pas la talha dels botons"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Los degradats devon comportar al mens doas colors"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"L'especificacion de color GTK deu presentar l'estat entre croquets, p. ex. "
+"gtk:fg[NORMAL] ont NORMAL es l'estat ; impossible d'analisar « %s »"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"L'especificacion de color GTK deu comportar un croquet de tampadura aprèp "
+"l'estat, p. ex. gtk:fg[NORMAL] ont NORMAL es l'estat ; impossible d'analisar "
+"« %s »"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Impossible de comprene l'estat « %s » dins l'especificacion de color"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+"Impossible de comprene lo compausant de color « %s » dins l'especificacion de "
+"color"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Lo format de mescla es « blend/bg_color/fg_color/alpha », « %s » correspond "
+"pas a aqueste format ."
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Impossible d'analisar la valor alfa « %s » en color mesclada"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "La valor alfa « %s » en color mesclada es pas compresa entre 0,0 e 1,0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Lo format d'ombra es « shade/base_color/factor », « %s » correspond pas al "
+"format"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Impossible d'analisar lo factor d'ombra « %s » en color ombrada"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Lo factor d'ombra « %s » en color ombrada es negatiu"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Impossible d'analisar la color « %s »"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+"L'expression de la coordenada conten lo caractèr « %s » qu'es pas autorizat"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"L'expression de la coordenada conten la valor en virgula flotanta « %s » que "
+"pòt pas èsser analisada"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"L'expression de la coordenada conten l'entièr « %s » qu'a pas pogut èsser "
+"analisat"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"L'expression de la coordenada conteniá un operador desconegut al començament "
+"d'aqueste tèxte : « %s »"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "L'expression de la coordenada èra voida o incompresa"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "L'expression de la coordenada provòca una division per zèro"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"L'expression de la coordenada tempta d'utilizar l'operadour mod sus una "
+"valor en virgula flotanta"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"L'expression de la coordenada a un operador « %s » lai ont un operand èra "
+"esperat"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"L'expression de la coordenada a un operand lai ont un operador èra esperat"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"L'expression de la coordenada èra acabada per un operador al luòc d'un "
+"operand"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"L'expression de la coordenada a un operador « %c » segon l'operador « %c » "
+"sens operand entre eles"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"L'expression de la coordenada possedís una variabla o constanta desconeguda "
+"« %s »"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+"L'analisador d'expression de coordenadas a despassat la capacitat de son "
+"tampon."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"L'expression de la coordenada compòrta una parentèsi de tampadura, mas pas "
+"de parentèsi de dobertura"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"L'expression de la coordenada compòrta una parentèsi de dobertura, mas pas "
+"de parentèsi de tampadura"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"L'expression de la coordenada sembla pas comprene d'operador ni d'operand"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Lo tèma conten una expression qu'a provocat una error : %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> deu èsser "
+"indicat per aqueste estil de quadre"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> mancant"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Impossible de cargar lo tèma \"%s\" : %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Pas cap de <%s> definit pel tèma « %s »"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Cap d'estil de quadre pas definit pel tipe de fenèstra « %s » dins lo tèma « %"
+"s », apondètz un element <window type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Las constantas definidas per l'utilizaire devon començar per una majuscula ; "
+"« %s » comença per una minuscula"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "La constanta « %s » es ja estada definida"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Pas cap d'atribut « %s » sus l'element <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Linha %d caractèr %d : %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "L'atribut « %s » es repetit dos còps dins lo meteis element <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "L'atribut « %s » es invalid dins l'element <%s> dins aqueste contèxte"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Impossible d'analizar '%s' coma entièr"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Caractèrs de fin « %s » pas compreses dins la cadena « %s »"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "L'entièr %ld deu èsser positiu"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "L'entièr %ld es tròp elevat, lo max. actual es %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Impossible d'analisar « %s » en tant que valor en virgula flotanta"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Las valors booleanas devon èsser « true » o « false » e non pas « %s »"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "L'angle deu èsser entre 0,0 e 360,0. Èra de %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"La valor alfa deu èsser compresa entre 0,0 (invisible) e 1,0 (entièrament "
+"opaca). Èra de %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Escala de títol invalida « %s » (deu aver una de las valors seguentas : xx-"
+"small, x-small, small, medium,large, x-large, xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> - nom « %s » utilizat un segond còp"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> - parent « %s » pas definit"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> - geometria « %s » pas definida"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> deu indicar una geometria o un parent que ne possedís una"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Vos cal indicar una valor pel paramètre alfa."
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Tipe desconegut \"%s\" sul element <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set desconegut « %s » sus l'element <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Lo tipe de fenèstra « %s » ja a agut un jòc d'estils atribuit"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "L'element <%s> es pas autorizat en dejós de <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Impossible d'indicar a l'encòp « button_width » / « button_height » (largor/"
+"nautor) e « aspect_ratio » (proporcion) pels botons"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Distància \"%s\" desconeguda"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Proporcion « %s » desconeguda"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "La bordadura \"%s\" es desconeguda"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+"Pas cap d'atribut « start_angle » (« començament d'angle ») o "
+"« from » (« dempuèi ») sus l'element <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+"Pas cap d'atribut « extent_angle » (« extension d'angle ») o « to » (« vers ») "
+"sus l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Impossible de comprene la valor « %s » pel tipe de degradat"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Impossible de comprene lo tipe d'emplenatge « %s » per l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Impossible de comprene l'estat « %s » per l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Impossible de comprene l'ombra « %s » per l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Impossible de comprene la sageta « %s » per l'element <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Cap de <draw_ops> apelat « %s » es pas estat definit"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "L'inclusion del draw_ops « %s » aicí creariá una referéncia circulara"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Posicion desconeguda « %s » de la pèça del quadre"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "L'estil de quadre a ja una pèça a la posicion %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Cap de <draw_ops> amb lo nom « %s » es pas estat definit"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Foncion \"%s\" desconeguda pel boton"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"La foncion « %s » del boton existís pas dins la version (%d, a besonh de %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Estat \"%s\" desconegut pel boton"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "L'estil de quadre a ja un boton per la foncion %s, estat %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "« %s » es pas una valor valida per l'atribut de focus"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "« %s » es pas una valor valida per l'atribut d'estat"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Cap d'estil apelat « %s » es pas estat definit"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "« %s » es pas una valor valida per l'atribut de redimensionament"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"L'atribut « resize » (« redimensionament ») deuriá pas figurar sus l'element <%"
+"s> pels estats maximizat/reduch dins la barra de títol"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"L'atribut « resize » (« redimensionament ») deuriá pas figurar sus l'element <%"
+"s> per l'estat maximizat"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"L'estil es ja estat indicat per l'estat %s, redimensionament %s, focus %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "L'estil es ja estat indicat per l'estat %s, focus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossible d'aver dos atributs draw_ops per un element <piece> (lo tèma "
+"indicava un atribut draw_ops e un element <draw_ops> o dos elements)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossible d'aver dos atributs draw_ops per un element <button> (lo tèma "
+"indicava un atribut draw_ops e un element <draw_ops> o dos elements)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossible d'aver dos atributs draw_ops per un element <menu_icon> (lo tèma "
+"indicava un atribut draw_ops e un element <draw_ops> o dos elements)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+"L'element lo mai exterior dins lo tèma deu èsser <marco_theme> e non pas <"
+"%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"L'element <%s> es pas autorizat dins un element name/author/date/description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "L'element <%s> es pas autorizat dins un element <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"L'element <%s> es pas autorizat dins un element distance/border/aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "L'element <%s> es pas autorizat dins un element d'operacion de dessenh"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "L'element <%s> es pas autorizat dins un element <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Cap d'atribut draw_ops pas provesit per la pèça del quadre"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Cap d'atribut draw_ops pas provesit pel boton"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Pas cap de tèxte autorizat dins l'element <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> indicat dos còps per aqueste tèma"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Impossible de trobar un fichièr valid pel tèma %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Lo fichièr de tèma %s conteniá pas d'element raiç <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Fenèstras"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Fenèstras/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Fenèstras/_Dialòg"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Fenèstras/Dialòg _modala"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/_Fenèstras/Utilitari"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Fenèstras/Ecr_an d'aviada"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Fenèstras/Panèl de _naut"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Fenèstras/Panèl de _bas"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Fenèstras/Panèl d'es_quèrra"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Fenèstras/Panèl de _drecha"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Fenèstras/_Totes los panèls"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/_Fenèstras/Burèu"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Es un messatge d'exemple dins una bóstia de dialòg d'exemple"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Element de menut factici %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Fenèstra amb solament de bordaduras"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Barra"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Fenèstra d'aplicacion normala"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Bóstia de dialòg"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Bóstia de dialòg modala"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta utilitari"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menut destacat"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Bordadura"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Tèst d'agençament de botons %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g millisegondas per dessenhar un quadre de fenèstra"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Usatge : marco-theme-viewer [NOMDELTÈMA]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Error al moment de cargar lo tèma : %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tèma « %s » cargat en %g segondas\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Poliça de títol normal"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Pichona poliça de títol"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Granda poliça de títol"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Agençaments dels botons"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Performància"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Lo títol de las fenèstras se tròba aicí"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d quadres foguèron dessenhats en %g segondas del costat client (%g "
+"millisegondas per quadre) e %g segondas passadas dins las ressorsas del "
+"servidor X (%g millisegondas per quadre)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"lo tèst d'expression de posicion a retornat TRUE mas a senhalat una error"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"lo tèst d'expression de posicion a retornat FALSE mas a pas senhalat d'error"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Una error èra esperada mas cap d'elas es pas estada retornada"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "L'error %d èra esperada mas %d es arribada"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Cap d'error èra pas esperada mas una es estada retornada : %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "la valor x èra %d, %d èra esperat"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "la valor i èra %d, %d èra esperada"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d expressions de coordenadas analisadas en %g segondas (%g segondas en "
+"mejana)\n"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Desmaximizar la fenèstra"
+
+#~ msgid "Title"
+#~ msgstr "Títol"
diff --git a/po/or.po b/po/or.po
new file mode 100644
index 00000000..12d4f1dc
--- /dev/null
+++ b/po/or.po
@@ -0,0 +1,2475 @@
+# translation of marco.master.or.po to Oriya
+# Oriya translation of marco.HEAD.pot.
+# Copyright (C) 2004, 2006, 2009, Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+# $Id$
+#
+# Gora Mohanty <[email protected]>, 2004, 2006.
+# Manoj Kumar Giri <[email protected]>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.master.or\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2009-08-24 17:51+0000\n"
+"PO-Revision-Date: 2009-09-17 18:14+0530\n"
+"Last-Translator: Manoj Kumar Giri <[email protected]>\n"
+"Language-Team: Oriya <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n!=1);\n\n"
+"\n"
+"\n"
+"\n"
+"\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+#| msgid "top"
+msgid "Desktop"
+msgstr "ଡେସ୍କଟପ"
+
+#: ../src/50-marco-key.xml.in.h:1
+#| msgid "Window manager: "
+msgid "Window Management"
+msgstr "ୱିଣ୍ଡୋ ପରିଚାଳକ"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "ବେଲ ଘଟଣା"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "ଅଜଣା ୱିଣ୍ଡୋ ସୂଚନା ଅନୁରୋଧ କରାଯାଇଛି: %d"
+
+#: ../src/core/delete.c:104
+#, c-format
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+"<big><b><tt>%s</tt> ଉତ୍ତର ଦେଉନାହିଁ।</b></big>\n"
+"\n"
+"<i>ଏହାକୁ ଅଗ୍ରସର କରିବା ପାଇଁ ଆପଣ କିଛି କ୍ଷଣ ଅପେକ୍ଷା କରିପାରିବେ ଅଥବା ପ୍ରୟୋଗରୁ "
+"ବିଦାୟ ନେବା ପାଇଁ ବାଧ୍ଯକରିପାରିବେ।</i>"
+
+#: ../src/core/delete.c:115
+msgid "_Wait"
+msgstr "_ଅପେକ୍ଷା କର"
+
+#: ../src/core/delete.c:115
+msgid "_Force Quit"
+msgstr "ବିଦାୟ ନେବାକୁ ବାଧ୍ଯ କରନ୍ତୁ (_F)"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "ହୋଷ୍ଟ ନାମ ପାଇବାରେ ଅସମର୍ଥ: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "ମିଶ୍ରଣ ପାଇଁ ଅନୁପସ୍ଥିତ %s ଅନୁଲଗ୍ନ ଆବଶ୍ୟକ"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "ଏକ୍ସ ୱିଣ୍ଡୋ ତନ୍ତ୍ରର ପ୍ରଦର୍ଶିକା '%s' ଖୋଲିବାରେ ଅସମର୍ଥ\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"ପ୍ରଦର୍ଶିକା '%s'; ସହିତ ସଂୟୋଗ କଟି ଗଲା\n"
+"ସମ୍ଭବତଃ କି ଏକ୍ସ ସେବକ ବନ୍ଦ କରା ଦିଆ ଯାଇଛି ବା ଆପଣ ୱିଣ୍ଡୋ ପରିଚାଳକକୁ ସମାପ୍ତ/ନଷ୍ଟ କରିଦେଇଛନ୍ତି.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "ପ୍ରଦର୍ଶିକା '%3$s'ରେ ସାଂଘାତିକ ଆଇ.ଓ. (ନିବେଶ/ନିର୍ଗମ) ତ୍ରୁଟି %1$d (%2$s).\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "ଏକ ଅଲଗା କାରିକା ପୂର୍ବରୁ ଚାବି %sକୁ ରୂପାନ୍ତରକ %x ସହିତ ବନ୍ଧନ ରୂପେ ବ୍ଯବହାର କରୁଛି\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+#| msgid ""
+#| "There was an error running \"%s\":\n"
+#| "%s."
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> କୁ ଚଲାଇବାରେ ତ୍ରୁଟି ଘଟିଥିଲା:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "%d ନିର୍ଦ୍ଦେଶ ବ୍ଯାଖ୍ଯା କରାଯାଇ ନାହିଁ.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "କୌଣସି ଟର୍ମିନାଲ ନିର୍ଦ୍ଦେଶ ବ୍ଯାଖ୍ଯା କରାଯାଇ ନାହିଁ.\n"
+
+#: ../src/core/main.c:130
+#, c-format
+#| msgid ""
+#| "marco %s\n"
+#| "Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+#| "This is free software; see the source for copying conditions.\n"
+#| "There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+#| "PARTICULAR PURPOSE.\n"
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+
+#: ../src/core/main.c:268
+msgid "Disable connection to session manager"
+msgstr "ଅଧିବେଶନ ପରିଚାଳକ ସଙ୍ଗେ ସଂଯୋଗ ନିଷ୍କ୍ରିୟ କରନ୍ତୁ"
+
+#: ../src/core/main.c:274
+msgid "Replace the running window manager with Marco"
+msgstr "ଚଳନ୍ତା ୱିଣ୍ଡୋ ପରିଚାଳକକୁ ମେଟାସିଟି ସହିତ ବଦଳାନ୍ତୁ"
+
+#: ../src/core/main.c:280
+msgid "Specify session management ID"
+msgstr "ଅଧିବେଶନ ପରିଚାଳନ ପରିଚୟ ନିର୍ଦ୍ଦିଷ୍ଟ କରନ୍ତୁ"
+
+#: ../src/core/main.c:285
+msgid "X Display to use"
+msgstr "ବ୍ଯବହାର ପାଇଁ ଏକ୍ସ ପ୍ରଦର୍ଶକ"
+
+#: ../src/core/main.c:291
+msgid "Initialize session from savefile"
+msgstr "ଅଧିବେଶନକୁ ସଞ୍ଚିତ ଫାଇଲଠାରୁ ପ୍ରାରମ୍ଭ କରନ୍ତୁ"
+
+#: ../src/core/main.c:297
+msgid "Print version"
+msgstr "ସଂସ୍କରଣ ମୁଦ୍ରଣ କରନ୍ତୁ"
+
+#: ../src/core/main.c:303
+msgid "Make X calls synchronous"
+msgstr "ଏକ୍ସ ଡାକରା ସମକାଳିତ କରନ୍ତୁ"
+
+#: ../src/core/main.c:309
+#| msgid "Compositing Manager"
+msgid "Turn compositing on"
+msgstr "ମିଶ୍ରଣ ପ୍ରକ୍ରିୟାକୁ ଅନ କରନ୍ତୁ"
+
+#: ../src/core/main.c:315
+msgid "Turn compositing off"
+msgstr "ମିଶ୍ରଣ ପ୍ରକ୍ରିୟାକୁ ଅଫକରନ୍ତୁ"
+
+#: ../src/core/main.c:321
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "ୱିଣ୍ଡୋଗୁଡ଼ିକୁ ସମ୍ପୂର୍ଣ୍ଣ ପରଦା କରନ୍ତୁ ନାହିଁ ଯାହାକି ବର୍ଦ୍ଧିତ ହୋଇଥାଏ ଏବଂ କୌଣସି ବିଭୁଷଣ ନଥାଏ"
+
+#: ../src/core/main.c:543
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "ପ୍ରସଙ୍ଗ ଡିରେକ୍ଟୋରି: %sକୁ କ୍ରମବୀକ୍ଷଣ କରିବାରେ ଅସମର୍ଥ\n"
+
+#: ../src/core/main.c:559
+#, c-format
+#| msgid ""
+#| "Could not find a theme! Be sure %s exists and contains the usual themes."
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "ଏକ ପ୍ରସଙ୍ଗ ମିଳିଲା ନାହିଁ! ନିଶ୍ଚିତ କରନ୍ତୁ କି %s ବାସ୍ତବରେ ଅଛି ଓ ତାହା ଭିତରେ ସାଧାରଣ ପ୍ରସଙ୍ଗଗୁଡ଼ିକ ରହିଛି।\n"
+
+#: ../src/core/main.c:618
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "ପୁନଃ ପ୍ରାରମ୍ଭ କରିବାରେ ଅସମର୍ଥ: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "ଜିକନ୍ଫ ଚାବି '%s' ଅବୈଧ ମୂଲ୍ଯକୁ ବିନ୍ଯାସ କରାଯାଇଛି\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+#| msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d ଯାହାକି MateConf କି %s ରେ ସଂରକ୍ଷିତ ତାହା ପରିସର %d ରୁ ବାହାର %d ରେ ଅଛି\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "ଜିକନ୍ଫ ଚାବି \"%s\" ଅବୈଧ ପ୍ରକାରକୁ ବିନ୍ଯାସ କରାଯାଇଛି\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr "ଅବୈଧ ପ୍ରୟୋଗ ପାଇଁ ଅନ୍ଯତର ଉପାୟଗୁଡ଼ିକ ଅସମର୍ଥ କରାଯାଇଛି. କିଛି ପ୍ରୟୋଗ ଠିକ ଭାବେ ନ ଚଳିପାରନ୍ତି.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "ଜିକନ୍ଫ ଚାବି %2$sରୁ \"%1$s\" ଅକ୍ଷରରୂପ ବିବରଣୀ ବିଶ୍ଳେଷଣ କରିହେଲା ନାହିଁ\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "ବିନ୍ଯାସ ତଥ୍ଯାଧାରରେ ପାୟାଯାଇଥିବା \"%s\" ମାଉସ ଚାବି ରୂପାନ୍ତରକ ପାଇଁ ଗୋଟିଏ ବୈଧ ମୂଲ୍ଯ ନୁହେଁ\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ସଂଖ୍ଯାକୁ %d ଭଳି ବିନ୍ଯାସ କରିବାରେ ତ୍ରୁଟି: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "ବିନ୍ଯାସ ତଥ୍ଯାଧାରରେ ପାୟାଯାଇଥିବା \"%s\" ଚାବିବନ୍ଧନୀ \"%s\" ପାଇଁ ଗୋଟିଏ ବୈଧ ମୂଲ୍ଯ ନୁହେଁ\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର %dର ନାମ \"%s\" ବିନ୍ଯାସ କରିବାରେ ତ୍ରୁଟି: %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+#| msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgid "Error setting compositor status: %s\n"
+msgstr "ଅକ୍ଷର ଯୋଜକ ସ୍ଥିତିକୁ ସେଟ କରିବା ସମୟରେ ତ୍ରୁଟି: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "ପ୍ରଦର୍ଶକ '%2$s'ରେ ପରଦା %1$d ଅବୈଧ\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"ପ୍ରଦର୍ଶକ \"%2$s\"ରେ ପରଦା %1$dର ପୂର୍ବରୁ ଗୋଟିଏ ୱିଣ୍ଢୋ ପରିଚାଳକ ଅଛି; ସାମ୍ପ୍ରତିକ ୱିଣ୍ଢୋ ପରିଚାଳକକୁ "
+"ବଦଳାଇବା ପାଇଁ, ବଦଳ ଚୟନ ବ୍ଯବହାର କରିବାକୁ ଚେଷ୍ଟା କରନ୍ତୁ.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "ପ୍ରଦର୍ଶକ \"%2$s\"ରେ ପରଦା %1$dର ୱିଣ୍ଢୋ ପରିଚାଳକ ଚୟନ ବୁଝିହେଲା ନାହିଁ\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "ପ୍ରଦର୍ଶକ \"%2$s\"ରେ ପରଦା %1$dର ପୂର୍ବରୁ ଗୋଟିଏ ୱିଣ୍ଢୋ ପରିଚାଳକ ଅଛି\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "ପ୍ରଦର୍ଶକ \"%2$s\"ରେ ପରଦା %1$dକୁ ନୁକ୍ତ କରିହେଲା ନାହିଁ\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+#| msgid ""
+#| "The keybinding used to close a window. The format looks like \"&lt;"
+#| "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#| "liberal and allows lower or upper case, and also abbreviations such as "
+#| "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#| "special string \"disabled\", then there will be no keybinding for this "
+#| "action."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"ସଜ୍ଜିକରଣ ଶୈଳୀ \"<Control>a\" ଅଥବା \"<Shift><Alt>F1\" ପରି ଦୃଶ୍ୟମାନ ହୋଇଥାଏ।\n"
+"\n"
+"ବିଶ୍ଳେଷକଟି ବେଶ ଉଦାରମନା ଏବଂ ଛୋଟ ବା ବଡ଼ ଅକ୍ଷରକୁ ଅନୁମତି ଦେଇଥାଏ, ଏବଂ ମଧ୍ଯ"
+"\"<Ctl>\" ଏବଂ \"<Ctrl>\" ଭଳି ସଂକ୍ଷେପ ମଧ୍ଯ ଗ୍ରହଣ କରେ। ଯଦି ଆପଣ ଏହି ଚୟନକୁ ବିଶେଷ "
+"ବାକ୍ଯଖଣ୍ଡ \"disabled\" ରୂପେ ବିନ୍ଯାସ କରନ୍ତି, ତେବେ ଏହି କାର୍ଯ୍ଯ ପାଇଁ ଚାବିବନ୍ଧନୀ ରହିବ ନାହିଁ।"
+
+#: ../src/core/schema-bindings.c:177
+#| msgid ""
+#| "The keybinding used to close a window. The format looks like \"&lt;"
+#| "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#| "liberal and allows lower or upper case, and also abbreviations such as "
+#| "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#| "special string \"disabled\", then there will be no keybinding for this "
+#| "action."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"ସଜ୍ଜିକରଣ ଶୈଳୀ \"<Control>a\" ଅଥବା \"<Shift><Alt>F1\" ପରି ଦୃଶ୍ୟମାନ ହୋଇଥାଏ।\n"
+"\n"
+"ବିଶ୍ଳେଷକଟି ବେଶ ଉଦାରମନା ଏବଂ ଛୋଟ ବା ବଡ଼ ଅକ୍ଷରକୁ ଅନୁମତି ଦେଇଥାଏ, ଏବଂ ମଧ୍ଯ"
+"\"<Ctl>\" ଏବଂ \"<Ctrl>\" ଭଳି ସଂକ୍ଷେପ ମଧ୍ଯ ଗ୍ରହଣ କରେ। ଯଦି ଆପଣ ଏହି ଚୟନକୁ ବିଶେଷ "
+"ବାକ୍ଯଖଣ୍ଡ \"disabled\" ରୂପେ ବିନ୍ଯାସ କରନ୍ତି, ତେବେ ଏହି କାର୍ଯ୍ଯ ପାଇଁ ଚାବିବନ୍ଧନୀ ରହିବ ନାହିଁ।\n"
+"\n"
+"ଏହି କି ବନ୍ଧନ ହୁଏତଃ \"shift\" କି ଧାରଣ କରି ପ୍ରତ୍ୟାଗମନ କରିଥାଏ; "
+"ତେଣୁ, \"shift\" ବ୍ୟବହାର କରିବାକୁ ଥିବା କି ନୁହଁ।"
+
+#: ../src/core/session.c:845 ../src/core/session.c:852
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "'%s' ଡିରେକ୍ଟୋରି ସୃଷ୍ଟି କରିହେଲା ନାହିଁ: %s\n"
+
+#: ../src/core/session.c:862
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "ଅଧିବେଶନ ଫାଇଲ '%s' ଲିଖନ ପାଇଁ ଖୋଲିହେଲା ନାହିଁ: %s\n"
+
+#: ../src/core/session.c:1003
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "ଅଧିବେଶନ ଫାଇଲ '%s' ଲେଖିବାରେ ତ୍ରୁଟି: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "ଅଧିବେଶନ ଫାଇଲ '%s' ବନ୍ଦ କରିବାରେ ତ୍ରୁଟି: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1101
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "ସଞ୍ଚିତ ଅଧିବେଶନ ଫାଇଲ '%s' ପଢ଼ିବାରେ ଅସଫଳ: %s\n"
+
+#: ../src/core/session.c:1140
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "ସଞ୍ଚିତ ଅଧିବେଶନ ଫାଇଲ ବିଶ୍ଳେଷଣ କରିବାରେ ଅସଫଳ: %s\n"
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> ଗୁଣ ଦେଖାଗଲା, କିନ୍ତୁ ଆମ ପାଖରେ ଅଧିବେଶନ ପରିଚୟ ପୂର୍ବରୁ ଅଛି"
+
+#: ../src/core/session.c:1202 ../src/core/session.c:1277
+#: ../src/core/session.c:1309 ../src/core/session.c:1381
+#: ../src/core/session.c:1441
+#, c-format
+#| msgid "Unknown attribute %s on <window> element"
+msgid "Unknown attribute %s on <%s> element"
+msgstr "ଅଜଣା ଗୁଣ %s <%s> ଉପାଦାନ ଉପରେ"
+
+#: ../src/core/session.c:1219
+#, c-format
+msgid "nested <window> tag"
+msgstr "ଘେରାଯାଇଥିବା <window> ସୂଚକ"
+
+#: ../src/core/session.c:1461
+#, c-format
+msgid "Unknown element %s"
+msgstr "ଅଜଣା ଉପାଦାନ %s"
+
+#: ../src/core/session.c:1812
+#| msgid ""
+#| "These windows do not support \"save current setup\" and will have to be "
+#| "restarted manually next time you log in."
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"ଏହି ୱିଣ୍ଡୋଗୁଡ଼ିକ &quot; ସାମ୍ପ୍ରତିକ ବ୍ଯବସ୍ଥା ସଂରକ୍ଷଣ &quot; କୁ ସହାୟତା କରିନଥାଏ, ଏବଂ "
+"ପୁଣିଥରେ ଲଗଇନ ହେବା ସମୟରେ ହସ୍ତକୃତ ଭାବରେ ପୁନଃ ପ୍ରାରମ୍ଭ କରିବାକୁ ହେବ।"
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "ତ୍ରୁଟିମୁକ୍ତ ବିବରଣୀ ଖୋଲିବାରେ ଅସଫଳ: %s\n"
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "%s ବିବରଣୀ ଫାଇଲକୁ fdopen() କରିବୋରେ ଅସଫଳ: %s\n"
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "%s ବିବରଣୀ ଫାଇଲ ଖୋଲାହେଲା\n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "ମେଟାସିଟି ଦୃଷ୍ଟ ସୂଚନା ଧାରାର ସହାୟକ ବିନା ସଂକଳିତ ହୋଇଥିଲା.\n"
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "ୱିଣ୍ଡୋ ପରିଚାଳକ"
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr "ୱିଣ୍ଡୋ ପରିଚାଳକରେ ତ୍ରୁଟି"
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr "ୱିଣ୍ଡୋ ପରିଚାଳକ ଚେତାବନୀ"
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr "ୱିଣ୍ଡୋ ପରିଚାଳକ ତ୍ରୁଟି"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "ମେଟାସିଟି"
+
+#. first time through
+#: ../src/core/window.c:5627
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"%s ୱିଣ୍ଡୋ WM_CLIENT_LEADERରେ (ଯେପରି ICCCM ନିର୍ଦ୍ଦିଷ୍ଟ ହୋଇଛି) ଅପେକ୍ଷା ନିଜ ଉପରେ "
+"SM_CLIENT_ID ବିନ୍ଯାସ କରେ.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6192
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"%s ୱିଣ୍ଡୋ ଗୋଟିଏ MWM ଆଭାସ ଦ୍ବାରା ସୂଚିତ କରେ କି ତାହାର ଆକେର ବଦଳେଇ ହେବ ନାହିଁ, କିନ୍ତୁ ସର୍ବନିମ୍ନ "
+"ଆକାର %d x %d ଓ ସର୍ବାଧିକ ଆକାର %d x %d ବିନ୍ଯାସ କରେ; ଏହାର ବିଶେଷ ମାନେ ନାହିଁ.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "ପ୍ରୟୋଗ ଗୋଟିଏ ନକଲି _NET_WM_PID %lu ବିନ୍ଯାସ କଲା\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s ଉପରେ)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (ମୂଖ୍ୟ ଚାଳକ ଭାବରେ)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+#| msgid "%s (on %s)"
+msgid "%s (as %s)"
+msgstr "%s (%s ଉପରେ)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (ଅନ୍ୟ ଏକ ଚାଳକ ଭାବରେ)"
+
+#: ../src/core/window-props.c:1429
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "ଅବୈଧ WM_TRANSIENT_FOR ୱିଣ୍ଡୋ 0x%lx। ଯାହାକି %s ପାଇଁ ଉଲ୍ଲିଖିତ ।\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"ୱିଣ୍ଡୋ 0x%lxର ଗୁଣଧର୍ମ %s ଅଛି\n"
+"ଯାହାର %s ପ୍ରକାରର %d ସଜ୍ଜିକରଣ ଶୈଳୀ ଥିବା ପ୍ରତ୍ଯାଶିତ ଥିଲା\n"
+"ଓ ବାସ୍ତବରେ %s ପ୍ରକାରର %d ସଜ୍ଜିକରଣ ଶୈଳୀ n_items %d ଅଛି.\n"
+"ସବୁଠାରୁ ସମ୍ଭବତଃ କି ଏହା ପ୍ରୟୋଗର ତ୍ରୁଟି, ୱିଣ୍ଡୋ ପରିଚାଳକର ନୁହେଁ.\n"
+"ୱିଣ୍ଡୋର ଶୀର୍ଷକ ହେଲା \"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "ୱିଣ୍ଡୋ 0x%2$lxର %1$s ଗୁଣଧର୍ମରେ ଅବୈଧ ୟି.ଟି.ଏଫ.-୮ ଅଛି\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "ୱିଣ୍ଡୋ 0x%2$lxର %1$s ଗୁଣଧର୍ମର ତାଲିକାରେ %3$d ବସ୍ତୁରେ ଅବୈଧ ୟି.ଟି.ଏଫ.-୮ ଅଛି\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୧କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୨କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୩କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୪କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୫କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୬କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୭କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୮କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୯କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୧୦କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୧୧କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୧୨କୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:122
+#| msgid "Switch to workspace on the left"
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "ପ୍ରଚଳିତ କାର୍ଯ୍ୟକ୍ଷେତ୍ରର ବାମରେ ସ୍ଥିତ କାର୍ଯ୍ଯକ୍ଷେତ୍ରକୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:126
+#| msgid "Switch to workspace on the right"
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "ପ୍ରଚଳିତ କାର୍ଯ୍ୟକ୍ଷେତ୍ରର ଡାହାଣରେ ସ୍ଥିତ କାର୍ଯ୍ଯକ୍ଷେତ୍ରକୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:130
+#| msgid "Switch to workspace above this one"
+msgid "Switch to workspace above the current workspace"
+msgstr "ପ୍ରଚଳିତ କାର୍ଯ୍ୟକ୍ଷେତ୍ରର ଉପରେ ସ୍ଥିତ କାର୍ଯ୍ଯକ୍ଷେତ୍ରକୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:134
+#| msgid "Switch to workspace below this one"
+msgid "Switch to workspace below the current workspace"
+msgstr "ପ୍ରଚଳିତ କାର୍ଯ୍ୟକ୍ଷେତ୍ରର ତଳେ ସ୍ଥିତ କାର୍ଯ୍ଯକ୍ଷେତ୍ରକୁ ଯାଆନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:150
+#| msgid "Move between windows with popup"
+msgid "Move between windows of an application, using a popup window"
+msgstr "ପପଅପ ୱିଣ୍ଡୋ ବ୍ୟବହାର କରି, ଗୋଟିଏ ପ୍ରୟୋଗର ଥିବା ୱିଣ୍ଡୋଗୁଡ଼ିକ ମଧ୍ଯରେ ଚାଲନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:153
+#| msgid "Move focus backwards between windows using popup display"
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "ପପଅପ ୱିଣ୍ଡୋ ବ୍ୟବହାର କରି, ଗୋଟିଏ ପ୍ରୟୋଗର ଥିବା ୱିଣ୍ଡୋଗୁଡ଼ିକ ମଧ୍ଯରେ ପଛକୁ ଚାଲନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:157
+#| msgid "Move between windows with popup"
+msgid "Move between windows, using a popup window"
+msgstr "ପପଅପ ୱିଣ୍ଡୋ ବ୍ୟବହାର କରି, ୱିଣ୍ଡୋଗୁଡ଼ିକ ମଧ୍ଯରେ ଚାଲନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:160
+#| msgid "Move focus backwards between windows using popup display"
+msgid "Move backward between windows, using a popup window"
+msgstr "ପପଅପ ୱିଣ୍ଡୋ ବ୍ୟବହାର କରି, ୱିଣ୍ଡୋଗୁଡ଼ିକ ମଧ୍ଯରେ ପଛକୁ ଚାଲନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:163
+#| msgid "Move between panels and the desktop with popup"
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "ପପଅପ ୱିଣ୍ଡୋ ବ୍ୟବହାର କରି, ପଟ୍ଟିକା ଏବଂ ଡେସ୍କଟପ ମଧ୍ଯରେ ଚାଲନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:166
+#| msgid "Move backwards between panels and the desktop with popup"
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "ପପଅପ ୱିଣ୍ଡୋ ବ୍ୟବହାର କରି, ପଟ୍ଟିକା ଏବଂ ଡେସ୍କଟପ ମଧ୍ଯରେ ପଛକୁ ଚାଲନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:171
+#| msgid "Move between windows immediately"
+msgid "Move between windows of an application immediately"
+msgstr "ସଙ୍ଗେ ସଙ୍ଗେ ଗୋଟିଏ ପ୍ରୟୋଗର ୱିଣ୍ଡୋଗୁଡ଼ିକ ମଧ୍ଯରେ ଚାଲନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:174
+#| msgid "Move backwards between windows immediately"
+msgid "Move backward between windows of an application immediately"
+msgstr "ସଙ୍ଗେ ସଙ୍ଗେ ଗୋଟିଏ ପ୍ରୟୋଗର ୱିଣ୍ଡୋଗୁଡ଼ିକ ମଧ୍ଯରେ ପଛକୁ ଚାଲନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "ୱିଣ୍ଡୋଗୁଡ଼ିକ ମଧ୍ଯରେ ସଙ୍ଗେ ସଙ୍ଗେ ଘୁଞ୍ଚନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:180
+#| msgid "Move backwards between windows immediately"
+msgid "Move backward between windows immediately"
+msgstr "ୱିଣ୍ଡୋଗୁଡ଼ିକ ମଧ୍ଯରେ ସଙ୍ଗେ ସଙ୍ଗେ ପଛୁଆ ଘୁଞ୍ଚନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "ଫଳକ ଓ ଡେସ୍କଟପ୍ ମଧ୍ଯରେ ସଙ୍ଗେ ସଙ୍ଗେ ଘୁଞ୍ଚନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "ଫଳକ ଓ ଡେସ୍କଟପ୍ ମଧ୍ଯରେ ସଙ୍ଗେ ସଙ୍ଗେ ପଛୁଆ ଘୁଞ୍ଚନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:191
+#| msgid "Hide all windows and focus desktop"
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "ସମସ୍ତ ସାଧାରଣ ୱିଣ୍ଡୋଗୁଡ଼ିକୁ ଲୁଚାନ୍ତୁ ଏବଂ ଡେସ୍କଟପକୁ କେନ୍ଦ୍ରିତ କରନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:194
+#| msgid "Show the panel menu"
+msgid "Show the panel's main menu"
+msgstr "ଫଳକର ମୂଖ୍ୟ ମେନୁକୁ ଦେଖାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:197
+#| msgid "Show the panel run application dialog"
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "ଫଳକର \"ପ୍ରୟୋଗ ଚାଳନ\" ସଂଳାପକୁ ଦେଖାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "ପରଦା ପ୍ରତିଛବି ନିଅନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "ଗୋଟିଏ ୱିଣ୍ଡୋର ପରଦା ପ୍ରତିଛବି ନିଅନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "ଟର୍ମିନାଲ ଚଳାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:257
+#| msgid "Activate window menu"
+msgid "Activate the window menu"
+msgstr "ୱିଣ୍ଡୋ ତାଲିକାକୁ ସକ୍ରିୟ କରନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "ପୂର୍ଣ୍ମପରଦା ଧାରା ଅଦଳବଦଳ କରନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "ବୃହତ୍ତମ ଅବସ୍ଥା ଅଦଳବଦଳ କରନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:264
+#| msgid "Lower window below other windows"
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "ଗୋଟିଏ ୱିଣ୍ଡୋ ଅନ୍ୟାନ୍ୟ ୱିଣ୍ଡୋଗୁଡ଼ିକ ଉପରେ ଦୃଶ୍ୟମାନ ହେବା ପାଇଁ ଆଗପଛ କରନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "ୱିଣ୍ଡୋକୁ ଯଥାସମ୍ଭବ ବଢ଼ାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:268
+#| msgid "Resize window"
+msgid "Restore window"
+msgstr "ୱିଣ୍ଡୋକୁ ପୁନଃସ୍ଥାପନ କରନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "ଘୋଡାହୋଇଥିବା ଅବସ୍ଥା ଅଦଳବଦଳ କରନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "ୱିଣ୍ଡୋକୁ ଯଥାସମ୍ଭବ ଛୋଟ କରନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "ୱିଣ୍ଡୋ ବନ୍ଦ କରନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "ୱିଣ୍ଡୋକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "ୱିଣ୍ଡୋର ଆକାର ବଦଳାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:281
+#| msgid "Toggle window on all workspaces"
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "ୱିଣ୍ଡୋ ସବୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ରରେ ଅଛି ଅଥବା କେବଳ ଗୋଟିକରେ ଅଛି ତାହାକୁ ଅଦଳବଦଳ କରନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୧କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୨କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୩କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୪କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୫କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୬କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୭କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୮କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୯କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୧୦କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୧୧କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "ୱିଣ୍ଡୋକୁ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ୧୨କୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "ୱିଣ୍ଡୋକୁ ଗୋଟିଏ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ବାମକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "ୱିଣ୍ଡୋକୁ ଗୋଟିଏ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ଡାହାଣକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "ୱିଣ୍ଡୋକୁ ଗୋଟିଏ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ଉପରକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "ୱିଣ୍ଡୋକୁ ଗୋଟିଏ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ତଳକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:342
+#| msgid "Raise obscured window, otherwise lower"
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "ୱିଣ୍ଡୋ ଲୁଚାହୋଇଥିଲେ ତାହାକୁ ସାମନାକୁ ଆଣନ୍ତୁ, ନଚେତ ତାହାକୁ ତଳକୁ କରନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "ୱିଣ୍ଡୋକୁ ଅଲଗା ୱିଣ୍ଡୋଗୁଡ଼ିକର ସାମନାକୁ ଆଣନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "ୱିଣ୍ଡୋକୁ ଅଲଗା ୱିଣ୍ଡୋ ପଛକୁ ନିଅନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "ୱିଣ୍ଡୋକୁ ଭୂଲମ୍ବ ଭାବରେ ଯଥାସମ୍ଭବ ବଢ଼ାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "ୱିଣ୍ଡୋକୁ ଭୂସମାନ୍ତର ଭାବରେ ଯଥାସମ୍ଭବ ବଢ଼ାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:358
+#| msgid "Move window one workspace to the left"
+msgid "Move window to north-west (top left) corner"
+msgstr "ୱିଣ୍ଡୋକୁ ଉତ୍ତର-ପଶ୍ଚିମ (ଉପରପଟ ବାମ) କୋଣକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:361
+#| msgid "Move window one workspace to the right"
+msgid "Move window to north-east (top right) corner"
+msgstr "ୱିଣ୍ଡୋକୁ ଉତ୍ତର-ପୂର୍ବ (ଉପରପଟ ଡାହାଣ) କୋଣକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "ୱିଣ୍ଡୋକୁ ଦକ୍ଷିଣ-ପଶ୍ଚିମ (ବାମପଟ ତଳ) କୋଣକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "ୱିଣ୍ଡୋକୁ ଦକ୍ଷିଣ-ପୂର୍ବ (ଡାହାଣ ପଟ ତଳ) କୋଣକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "ୱିଣ୍ଡୋକୁ ପରଦାର ପଶ୍ଚିମ (ଉପର) କୋଣକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "ୱିଣ୍ଡୋକୁ ପରଦାର ଦକ୍ଷିଣ (ତଳ) କୋଣକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "ୱିଣ୍ଡୋକୁ ପରଦାର ପୂର୍ବ (ଡାହାଣ) ପାର୍ଶ୍ୱକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "ୱିଣ୍ଡୋକୁ ପରଦାର ପଶ୍ଚିମ (ବାମ) କୋଣକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/include/all-keybindings.h:383
+#| msgid "Move window one workspace down"
+msgid "Move window to center of screen"
+msgstr "ୱିଣ୍ଡୋକୁ ପରଦାର କେନ୍ଦ୍ରକୁ ଘୁଞ୍ଚାନ୍ତୁ"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(କାର୍ଯ୍ଯକାରୀ ନୁହେଁ) ପଥପ୍ରଦର୍ଶନ ପ୍ରୟୋଗ ହିସାବରେ କାମ କରେ, ୱିଣ୍ଡୋ ହିସାବରେ ନୁହେଁ"
+
+#: ../src/marco.schemas.in.in.h:2
+#| msgid ""
+#| "A font description string describing a font for window titlebars. The "
+#| "size from the description will only be used if the titlebar_font_size "
+#| "option is set to 0, however. Also, this option is disabled if the "
+#| "titlebar_uses_desktop_font option is set to true. By default, "
+#| "titlebar_font is unset, causing Marco to fall back to the desktop font "
+#| "even if titlebar_uses_desktop_font is false."
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"ୱିଣ୍ଡୋ ଶୀର୍ଷକ ପଟିର ଅକ୍ଷରରୂପ ବର୍ଣ୍ଣନା କରୁଥିବା ଗୋଟିଏ ଅକ୍ଷରରୂପ ବର୍ଣ୍ଣନା ବାକ୍ଯଖଣ୍ଡ।"
+"titlebar_font_size ବିକଳ୍ପକୁ 0 ସେଟ କରାଯାଇଥିଲେହିଁ ବର୍ଣ୍ଣନାରୁ ଆକାରଟି ବ୍ଯବହାର ହେବ। "
+"ଏହା ସହିତ, ଯଦି titlebar_uses_desktop_font ବିକଳ୍ପକୁ true ସେଟ କରାଯାଇଥାଏ "
+"ତେବେ ଏହି ବିକଳ୍ପଟି ନିଷ୍କ୍ରିୟ ରହିବ।"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "ଶୀର୍ଷକ ପଟିରେ ମାଉସ୍ କୁ ଯୁଗ୍ନ ଭାବରେ ଦବାଇଲେ କି କାମ ଚାଳନ ହେବ"
+
+#: ../src/marco.schemas.in.in.h:4
+#| msgid "Action on title bar double-click"
+msgid "Action on title bar middle-click"
+msgstr "ଶୀର୍ଷକ ପଟିରେ ମାଉସକୁ ମଝି-କ୍ଲିକ କରିବା ଦ୍ୱାରା ହେଉଥିବା କାର୍ଯ୍ୟ"
+
+#: ../src/marco.schemas.in.in.h:5
+#| msgid "Action on title bar double-click"
+msgid "Action on title bar right-click"
+msgstr "ଶୀର୍ଷକ ପଟିରେ ମାଉସକୁ ଡାହାଣ-କ୍ଲିକ କରିବା ଦ୍ୱାରା ହେଉଥିବା କାର୍ଯ୍ୟ"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "ଶୀର୍ଷକ ପଟିରେ ଚାବିର ସଜ୍ଜା"
+
+#: ../src/marco.schemas.in.in.h:7
+#| msgid ""
+#| "Arrangement of buttons on the titlebar. The value should be a string, "
+#| "such as \"menu:minimize,maximize,close\"; the colon separates the left "
+#| "corner of the window from the right corner, and the button names are "
+#| "comma-separated. Duplicate buttons are not allowed. Unknown button names "
+#| "are silently ignored so that buttons can be added in future marco "
+#| "versions without breaking older versions."
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"ଶୀର୍ଷକ ପଟିରେ ଚାବିଗୁଡ଼ିକର ସଜ୍ଜିକରଣ। ଏହି ମୂଲ୍ଯ ଗୌଟିଏ ବାକ୍ଯକଣ୍ଡ ହେବା ଉଚିତ, ଉଦାହରଣ ସ୍ବରୂପ, \"ତାଲିକା:"
+"କ୍ଷୁଦ୍ରତମ କରନ୍ତୁ,ବୃହତ୍ତମ କରନ୍ତୁ,ବନ୍ଦ କରନ୍ତୁ\"; ବିରାମ ଚିହ୍ନଟି ୱିଣ୍ଡୋର ବାମ ଓ ଡାହାଣ କଣକୁ ବିଭାଜନ "
+"କରେ, ଏବଂ ଚାବି ନାମଗୁଡ଼ିକ କମା ଦ୍ବାରା ବିଭାଜିତ। ଦ୍ବିଗୁଣିତ ଚାବି ନିଷେଧ। ଅଜଣା ଚାବି ନାମଗୁଡ଼ିକ ଚୁପଚାପ "
+"ଅଗ୍ରାହ୍ଯ କରାଯିବ, ଯାହା ଫଳରେ marco ଆଗାମୀ ସଂସ୍କରଣଗୁଡ଼ିକୁ ପ୍ରଭାବିତ ନ କରି, ନୂଆ ସଂସ୍କରଣଗୁଡ଼ିକରେ "
+"ଚାବି ଯୋଡ଼ି ହୋଇପାରିବ।"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "କେନ୍ଦ୍ରିତ ୱିଣ୍ଡୋକୁ ଆପେଆପେ ସାମନାକୁ ଆଣେ"
+
+#: ../src/marco.schemas.in.in.h:9
+#| msgid ""
+#| "Clicking a window while holding down this modifier key will move the "
+#| "window (left click), resize the window (middle click), or show the window "
+#| "menu (right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;"
+#| "Super&gt;\" for example."
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+"ଏହି ରୂପାନ୍ତରକ ଚାବିକୁ ଚାପି ୱିଣ୍ଡୋରେ ମାଉସ ଚାବି ଦବାଇଲେ ୱିଣ୍ଡୋ ଘୁଞ୍ଚା ଯାଇପାରିବ (ବାମ ମାଉସ ଚାବି), "
+"ୱିଣ୍ଡୋ ଆକାର ବଦଳା ଯାଇପାରିବ (ମଝି ମାଉସ ଚାବି), ଅଥବା ୱିଣ୍ଡୋ ତାଲିକା ପ୍ରଦର୍ଶନ କରା ଯାଇପାରିବ (ଡାହାଣ "
+"ମାଉସ ଚାବି)। ବାମ ଏବଂ ଡାହାଣ ପ୍ରୟୋଗଗୁଡ଼ିକୁ \"mouse_button_resize\" କି ବ୍ୟବହାର କରି ଅଦଳ "
+"ବଦଳ କରିହେବ। ଉଦାହରଣ ସ୍ୱରୂପ ପରିବର୍ତ୍ତକକୁ \"&lt;Alt&gt;\" ଅଥବା \"&lt;Super&gt;\" ଭାବରେ "
+"ପ୍ରକାଶ କରିହେବ।"
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "ଚାବି ବନ୍ଧନ ସ୍ବରୂପେ ଚଳାଇବା ପାଇଁ ନିର୍ଦ୍ଦେଶ"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "ମିଶ୍ରଣ ପରିଚାଳକ"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "ନୂତନ ୱିଣ୍ଡୋଗୁଡ଼ିକ କିପରି ଲକ୍ଷ୍ୟ ସାଧନ କରିଥାନ୍ତି ତାହାକୁ ନିୟନ୍ତ୍ରଣ କରନ୍ତୁ"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "ସାମ୍ପ୍ରତିକ ପ୍ରସଙ୍ଗ"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "ସ୍ବଂୟ ସାମନାକୁ ଆଣିବା ପାଇଁ ମିଲିସେକଣ୍ଡରେ ବିଳମ୍ବ"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "ନିର୍ଦ୍ଧାରିତ କରେ ମେଟାସିଟି ଗୋଟିଏ ମିଶ୍ରଣ ପରିଚାଳକ ବା ନୁହେଁ."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"ନିର୍ଦ୍ଧାରିତ କରେ ପ୍ରୟୋଗ ବା ତନ୍ତ୍ର ଶ୍ରାବ୍ଯ 'ବିପ' ସୃଷ୍ଟି କରିପାରିବ କି; ଏହା ସହିତ 'ଚାକ୍ଷୁଷ ଘଣ୍ଟି' ଚୟନକୁ "
+"ଯୋଡ଼ି ନିଃଶବ୍ଦ 'ବିପ' ହ୍ଯବହାର କରା ଯାଇରାରିବ."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "ପୁରୁଣା ବା ଅବୈଧ ପ୍ରୟୋଗ ପାଇଁ ଆବଶ୍ଯକ ଦୁର୍ଗୁଣଗୁଡ଼ିକୁ ଅସମର୍ଥ କରନ୍ତୁ"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "ଚାକ୍ଷୁଷ ଘଣ୍ଟିକୁ ସମର୍ଥ କରନ୍ତୁ"
+
+#: ../src/marco.schemas.in.in.h:19
+#| msgid ""
+#| "If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+#| "focused window will be automatically raised after a delay (the delay is "
+#| "specified by the auto_raise_delay key)."
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"ଏହା true ହେଲେ, ଓ କେନ୍ଦ୍ରୀଭୂତ ଧାରା \"ଅଯତ୍ନକୃତ\" ବା \"ମାଉସ\" ଥିଲେ, କେନ୍ଦ୍ରିତ ୱିଣ୍ଡୋକୁ କିଛି ସମୟ "
+"ପରେ ଆପେଆପେ auto_raise_delay କି କୁ ବ୍ୟବହାର କରି ସାମନାକୁ ଅଣାଯିବ। "
+"ଏହା ବୃଦ୍ଧିକରା ପାଇଁ ୱିଣ୍ଡୋ ଉପରେ କ୍ଲିକ କରିବା ସହିତ ସମ୍ପୃକ୍ତ ନୁହଁ, ଅଥବା ଟାଣିବା-ଏବଂ ପକାଇବା "
+"ସମୟରେ ୱିଣ୍ଡୋରେ ପ୍ରବେଶ କରି।"
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"ଏହା ସତ ହେଲେ, ଶୀର୍ଷକପଟି_ଅକ୍ଷରରୂପ ପସନ୍ଦକୁ ଏଡ଼ାଇ, ୱିଣ୍ଡୋ ଶୀର୍ଷକ ପାଇଁ ସାଧାରଣ ପ୍ରୟୋଗ ଅକ୍ଷରରୂପ "
+"ବ୍ଯବହାର କରନ୍ତୁ."
+
+#: ../src/marco.schemas.in.in.h:21
+#| msgid ""
+#| "If true, marco will give the user less feedback and less sense of "
+#| "\"direct manipulation\", by using wireframes, avoiding animations, or "
+#| "other means. This is a significant reduction in usability for many users, "
+#| "but may allow legacy applications and terminal servers to function when "
+#| "they would otherwise be impractical. However, the wireframe feature is "
+#| "disabled when accessibility is on to avoid weird desktop breakages."
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"ଏହା true ହେଲେ, marco ତାର ଆକୃତି ବ୍ଯବହାର କରି, ଜୀବନାୟନଗୁଡ଼ିକୁ ଏଡ଼ାଇ, ବା ଅନ୍ଯ ଉପାୟ ଦ୍ବାରା "
+"ବ୍ଯବହାରକାରୀକୁ କମ ପ୍ରତିକ୍ରିୟା, ଓ ପ୍ରତ୍ଯକ୍ଷ ପ୍ରକଳନର କମ ଭାବ ଦେବ. ଅନେକ ବ୍ଯବହାରକାରୀଙ୍କ "
+"ଏହା ବ୍ଯବହାରଯୋଗ୍ଯତାକୁ ଢେର କମେଇ ଦିଏ, କିନ୍ତୁ ଏହା ଦ୍ବାରା ପୁରୁଣା ପ୍ରୟୋଗ ଓ ଟର୍ମିନାଲ ସେବକ ଚଲାଯାଇ "
+"ପାରିବ, ନଚେତ୍ ଜେଉଁଟାକି ଅବ୍ଯବହାରିକ ରୁହନ୍ତା. ତଥାପି, ବ୍ଯବହାରସରଳତା ସକ୍ରିୟ କରାଯାଇଥିଲେ, ଅଦ୍ଭୁତ "
+"ଡେସ୍କଟପ ସମସ୍ଯା ଏଡ଼ାଇବା ପାଇଁ, ତାର ଆକୃତି ନିଷ୍କ୍ରିୟ କରାଯିବ."
+
+# Gora: not exactly translated. Bug report filed re: syntax/length
+#: ../src/marco.schemas.in.in.h:22
+#| msgid ""
+#| "If true, then Marco works in terms of applications rather than "
+#| "windows. The concept is a bit abstract, but in general an application-"
+#| "based setup is more like the Mac and less like Windows. When you focus a "
+#| "window in application-based mode, all the windows in the application will "
+#| "be raised. Also, in application-based mode, focus clicks are not passed "
+#| "through to windows in other applications. The existence of this setting "
+#| "is somewhat questionable. But it's better than having settings for all "
+#| "the specific details of application-based vs. window-based, e.g. whether "
+#| "to pass through clicks. Also, application-based mode is largely "
+#| "unimplemented at the moment."
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"ଯଦି ଏହା true, ତେବେ marco ୱିଣ୍ଡୋ ବଦଳରେ ପ୍ରୟୋଗ ଭାବରେ କାମ କରେ। ଏହି ଧାରଣାଟି ଟିକେ ଅମୂର୍ତ୍ତ, "
+"କିନ୍ତୁ ସାଧାରଣରେ ପ୍ରୟୋଗ-ଆଧାରିତ ବ୍ଯବସ୍ଥାଟି ଅଧିକ ମାକ୍ ଭଳି ଓ କମ ମାଇକ୍ରୋସଫ୍ଟ ୱିଣ୍ଡୋଜ ଭଳି. ପ୍ରୟୋଗ-"
+"ଆଧାରିତ ବ୍ଯବସ୍ଥାରେ ଆପଣ ଗୋଟିଏ ୱିଣ୍ଡୋକୁ କେନ୍ଦ୍ରିତ କଲେ, ପ୍ରୟୋଗର ସବୁ ୱିଣ୍ଡୋଗୁଡ଼ିକ ସାମନାକୁ ଅଣାଯିବ. "
+"ପ୍ରୟୋଗ-ଆଧାରିତ ବ୍ଯବସ୍ଥାରେ ମଧ୍ଯ କେନ୍ଦ୍ରୀଭୂତ ମାଉସ୍ ଚାପ ଅଲଗା ପ୍ରୟୋଗର ୱିଣ୍ଡୋଗୁଡ଼ିକ ବଢ଼ାଇ ଦିଆଯାଏ "
+"ନାହିଁ. ଏହି ବିନ୍ଯାସର ଅସ୍ତିତ୍ବ କିଛିଟି ସନ୍ଦେହଜନକ. କିନ୍ତୁ, ପ୍ରୟୋଗ-ଆଧାରିତ ଓ ୱିଣ୍ଡୋ-ଆଧାରିତ ଧାରାର ସବୁ "
+"ବିସ୍ତୃତ ବିବରଣୀ ପାଇଁ ଅଲଗା ବିନ୍ଯାସ ରଖିବା ଅପେକ୍ଷା, ଏହା ଅଧିକ ଭଲ. ଏହି ସମୟରେ, ପ୍ରୟୋଗ-ଆଧାରିତ "
+"ଧାରା ମୁଖ୍ଯତଃ ଅକାର୍ଯ୍ଯକାରୀ ରହିଛି."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "ଏହା ସତ ହେଲେ, ବ୍ଯବହାରଯୋଗ୍ଯତା କମାଇ ମଧ୍ଯ, କମ ସମ୍ବଳ ବ୍ଯବହାର କରନ୍ତୁ"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "ରୂପାନ୍ତରିତ ୱିଣ୍ଡୋର ମାଉସ୍ ଚାପ କାର୍ଯ୍ଯଗୁଡ଼ିକ ପାଇଁ ରୂପାନ୍ତରକ"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ରର ନାମ"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ରର ସଂଖ୍ଯା"
+
+#: ../src/marco.schemas.in.in.h:27
+#| msgid ""
+#| "Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+#| "prevent accidentally destroying your desktop by asking for 34 million "
+#| "workspaces)."
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"କାର୍ଯ୍ଯକ୍ଷେତ୍ରର ସଂଖ୍ଯା। ଏହା ଶୂନ୍ଯଠାରୁ ଅଧିକ ହେବା ବାଧ୍ଯ, ଓ ଏହାର ଗୋଟିଏ ସ୍ଥିର ସର୍ବାଧିକ ମୂଲ୍ଯ ଅଛି "
+"ଭୁଲ ବଶତଃ ଅତ୍ୟଧିକ କାର୍ଯ୍ଯକ୍ଷେତ୍ର ନିର୍ଦ୍ଦଷ୍ଟ କରି ନିଜ ଡେସ୍କଟପକୁ ନଷ୍ଟ କରିବାରୁ ରୋକିବା ପାଇଁ।"
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "ଗୋଟିଏ ନିର୍ଦ୍ଦଷ୍ଟ ନିର୍ଦ୍ଦେଶ ଚଳାନ୍ତୁ"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"ଆକାର ପରିବର୍ତ୍ତନ କରିବା ପାଇଁ ଡାହାଣ ବଟନ ସହିତ ଏହାକୁ true ସେଟ କରନ୍ତୁ ଏବଂ "
+"ମଝି ବଟନ ସହିତ \"mouse_button_modifier\" ରେ ପ୍ରଦତ୍ତ କି ଧାରଣ କରି "
+"ଗୋଟିଏ ତାଲିକା ଦର୍ଶାନ୍ତୁ; ଏହାକୁ ବିପରିତ ଦିଗରେ କାର୍ଯ୍ୟ କରିବା ପାଇଁ false ସେଟ କରନ୍ତୁ"
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"ଏହି ବିକଳ୍ପକୁ false ସେଟ କରିବା ଫଳରେ ଏହା ତ୍ରୁଟିଯୁକ୍ତ ଆଚରଣ କରିଥାଏ, ତେଣୁ ଚାଳକମାନେ "
+"ଏହାକୁ ପୂର୍ବନିର୍ଦ୍ଧାରିତ ମୂଲ୍ୟ true ରୁ ପରିବର୍ତ୍ତନ କରିବା ପାଇଁ ବିରୋଧ କରିଥାନ୍ତି। ଅନେକ କାର୍ଯ୍ୟ"
+"(ଯେପରିକି, କ୍ଲାଏଣ୍ଟ କ୍ଷେତ୍ରରେ କ୍ଲିକ କରିବା, ୱିଣ୍ଡୋକୁ ଗତିକରାଇବା ଅଥବା ଆକାର ବଦଳାଇବା) ସାଧାରଣତଃ "
+"ପାର୍ଶ୍ୱ ପ୍ରଭାବକୁ ବୃଦ୍ଧି କରିଥାଏ। ଏହି ବିକଳ୍ପକୁ false ସେଟ କରିବା ଫଳରେ, ଯାହାକୁକି ଅତିରିକ୍ତ ବିରୋଧ "
+"କରାଯାଇଥାଏ, ତାହା ଅନ୍ୟ ଚାଳକ କାର୍ଯ୍ୟ ଅପେକ୍ଷା ବୃଦ୍ଧି ହୋଇଥାଏ, ଏବଂ ପ୍ରୟୋଗ ଅନୁରୋଧ ଦ୍ୱାରା ସୃଷ୍ଟି "
+"ବୃଦ୍ଧିକୁ ଅଗ୍ରାହ୍ୟ କରିଥାଏ। http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6 କୁ ଦେଖନ୍ତୁ। "
+"ଯଦିଚ ଯେତେବେଳେ ଏହି ବିକଳ୍ପଟି false ହୋଇଥାଏ, ୱିଣ୍ଡୋଗୁଡ଼ିକ ମଧ୍ଯ alt-left-click ଦ୍ୱାରା "
+"ଯେକୌଣସି ଉପାୟରେ ବୃଦ୍ଧି କରିଥାଏ, ୱିଣ୍ଡୋ ସଜ୍ଜିକରଣରେ ଗୋଟିଏ ସାଧାରଣ କ୍ଲିକ, ଅଥବା ପେଜରରୁ"
+"ଗୋଟିଏ ବିଶେଷ ସନ୍ଦେଶ ଦ୍ୱାରା, ଯେପରିକି କାର୍ଯ୍ୟତାଲିକା ଆପଲେଟରୁ ସକ୍ରିୟଣ ଅନୁରୋଧ। ଏହି ବିକଳ୍ପକୁ "
+"click-to-focus ଧାରାରେ ବର୍ତ୍ତମାନ ନିଷ୍କ୍ରିୟ କରାହୋଇଛି। ମନେରଖନ୍ତୁ ଯେ ୱିଣ୍ଡୋଗୁଡ଼ିକୁ ବୃଦ୍ଧିକରିବା ପାଇଁ "
+"ପଥଗୁଡ଼ିକର ତାଲିକା ଯେତେବେଳେ raise_on_click false ହୋଇଥାଏ ସେତେବେଳେ ଏହା ପ୍ରଗ୍ରାମ "
+"ହୋଇଥିବା ଅନୁରୋଧକୁ ଅନ୍ତର୍ଭୁକ୍ତ କରିନଥାଏ; ସେହିପରି ଅନୁରୋଧଗୁଡ଼ିକୁ କାରଣ ଯାହା ହୋଇଥିଲେ ମଧ୍ଯ "
+"ଅଗ୍ରାହ୍ୟ କରାଯାଇଥାଏ। ଯଦି ଆପଣ ଜଣେ ପ୍ରୟୋଗ ବିକାଶକାରୀ ଏବଂ ଜଣେ ଚାଳକ ଅଭିଯୋଗ କରିଛି ଯେ "
+"ଏହି ସଂରଚନାକୁ ନିଷ୍କ୍ରିୟ କରିବା ଫଳରେ ସେହି ପ୍ରୟୋଗଟି କାର୍ଯ୍ୟ କରିନଥାଏ, ତେବେ ସେମାନଙ୍କୁ କୁହନ୍ତୁ ଯେ "
+"ୱିଣ୍ଡୋ ପରିଚାଳକକୁ ଭାଙ୍ଗିବା ସେମାନଙ୍କର ତ୍ରୁଟି ଏବଂ ସେମାନଙ୍କୁ ଏହି ବିକଳ୍ପକୁ ପୁଣି ପଛକୁ କରି true ଭାବରେ "
+"ପରିବର୍ତ୍ତନ କରିବା ଉଚିତ ଅଥବା ଅନୁରୋଧ କରିଥିବା ସେହି \"bug\" ସହିତ ରୁହନ୍ତୁ।"
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"କିଛି ପ୍ରୟୋଗଗୁଡ଼ିକ ନିର୍ଦ୍ଦେଶଗୁଡ଼ିକୁ ଅନାଦର କରିଥାଏ, ଫଳସ୍ୱରୂପ ୱିଣ୍ଡୋ ପରିଚାଳକ ଭୁଲ ପ୍ରଦର୍ଶନ କରିଥାଏ। "
+"ଏହି ବିକଳ୍ପ Marcoକୁ ସଠିକ ଅବସ୍ଥାରେ ରଖିଥାଏ, ଯାହାକି ଅଧିକ ସ୍ଥାୟୀ ଚାଳକ ଅନ୍ତରାପୃଷ୍ଠ ପ୍ରଦାନ କରିଥାଏ, "
+"ଏହା ବ୍ୟତୀତ ଜଣେ ଖରାପ ଆଚରଣ କରୁଥିବା ପ୍ରୟୋଗଗୁଡ଼ିକୁ ଚଲାଇନଥାଏ।"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "ତନ୍ତ୍ର ଘଣ୍ଟିଟି ଶ୍ରାବ୍ଯ"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"ମେଟାସିଟି ପାଇଁ ନିର୍ଦ୍ଦିଷ୍ଟ କରେ ତନ୍ତ୍ରର ଘଣ୍ଟି ବା ଅନ୍ଯ ପ୍ରୟୋଗର ଘଣ୍ଟି ବାଜିବା କିପରି ଚାକ୍ଷୁଷ ଭାବରେ ସୂଚିତ "
+"କରାଯିବ. ବର୍ତ୍ରମାନ ଦୁଇଟି ବୈଧ ମୂଲ୍ଯ ଅଛି, \"ପୂର୍ଣ୍ଣପରଦା\" ଯେଉଁଟାକି ପୂର୍ଣ୍ଣ ପରଦାଟିକୁ ଧଳାରୁ କଳା ଝଲସି "
+"ଦିଏ, ଓ \"ବନ୍ଧେଇ_ଝଲସା\" ଯେଉଁଟାକି ଘଣ୍ଟି ସଙ୍କେତ ପଠାଇ ଥିବା ପ୍ରୟୋଗର ଶୀର୍ଷକ ପଟିକୁ ଝଲସି ଦିଏ. ଘଣ୍ଟି "
+"ପଠାଇ ଥିବା ପ୍ରୟୋଗ ଅଜଣା ଥିଲେ (ଯେଉଁଟାକି ପୂର୍ବନିର୍ଦ୍ଧାରିତ \"ତନ୍ତ୍ର ବିପ୍\" ପାଇଁ ସାଧାରଣରେ ଘଟଣା), "
+"ସାମ୍ପ୍ରତିକ କେନ୍ଦ୍ରିତ ୱିଣ୍ଡୋର ଶୀର୍ଷକ ପଟିକୁ ଝଲସି ଦିଆଯାଏ."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/ପ୍ରୟୋଗ/ମେଟାସିଟି/ସାମଗ୍ରି_ଚାବିବନ୍ଧନୀ/ନିର୍ଦ୍ଦେଶ_N_ଚଳାନ୍ତୁ ଚାବିଗୁଡ଼ିକ ଏହି ନିର୍ଦ୍ଦେଶଗୁଡ଼ିକ ଚାବିବନ୍ଧନୀ "
+"ନିର୍ଦ୍ଦିଷ୍ଟ କରନ୍ତି. ନିର୍ଦ୍ଦେଶ_N_ଚଳାନ୍ତୁ ଚାବିବନ୍ଧନୀ ଦବାଇଲେ ନିର୍ଦ୍ଦେଶ_N ଚଳାଯିବ."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/ପ୍ରୟୋଗ/ମେଟାସିଟି/ସାମଗ୍ରି_ଚାବିବନ୍ଧନୀ/ପରଦାପ୍ରତିଛବି_ନିର୍ଦ୍ଦେଶ_ଚଳାନ୍ତୁ ଚାବି ଗୋଟିଏ ଚାବିବନ୍ଧନୀ ନିର୍ଦ୍ଦିଷ୍ଟ "
+"କରେ ଯେଉଁଟାକି ଏହି ବିନ୍ଯାସ ଦ୍ବାରା ଉଲ୍ଲେଖିତ ନିର୍ଦ୍ଦେଶକୁ ଆବାହନ କରେ,"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/ପ୍ରୟୋଗ/ମେଟାସିଟି/ସାମଗ୍ରି_ଚାବିବନ୍ଧନୀ/ୱିଣ୍ଡୋ_ପରଦାପ୍ରତିଛବି_ନିର୍ଦ୍ଦେଶ_ଚଳାନ୍ତୁ ଚାବି ଗୋଟିଏ ଚାବିବନ୍ଧନୀ "
+"ନିର୍ଦ୍ଦିଷ୍ଟ କରେ ଯେଉଁଟାକି ଏହି ବିନ୍ଯାସ ଦ୍ବାରା ଉଲ୍ଲେଖିତ ନିର୍ଦ୍ଦେଶକୁ ଆବାହନ କରେ,"
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"ଚାବିବନ୍ଧନୀ ଯେଉଁଟାକି /ପ୍ରୟୋଗ/ମେଟାସିଟି/ଚାବିବନ୍ଧନୀ_ନିର୍ଦ୍ଦେଶ ର ସଙ୍ଗତ ନିର୍ଦ୍ଦେଶକୁ ଚଳାଏ. ସଜ୍ଜିକରଣ "
+"ଶୈଳୀ ହେଲା \"&lt;Control&gt;a\" ବା \"&lt;Shift&gt;&lt;Alt&gt;F1\". ବିଶ୍ଳେଷକଟି "
+"ବେଶ୍ ଉଦାରମନା, ଓ ଛୋଟ ବା ବଡ଼ ଅକ୍ଷର, ଏବଂ \"&lt;Ctl&gt;\", \"&lt;Ctrl&gt;\" ଭଳି "
+"ସଂକ୍ଷେପ ମଧ୍ଯ ଗ୍ରହଣ କରେ. ଆପଣ ଏହି ଚୟନକୁ ବିଶେଷ ବାକ୍ଯଖଣ୍ଡ \"disabled\" ରୂପେ ବିନ୍ଯାସ କଲେ, ଏହି "
+"କାର୍ଯ୍ଯ ପାଇଁ ଚାବିବନ୍ଧନୀ ରହିବ ନାହିଁ."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "ଗୋଟିଏ କାର୍ଯ୍ଯକ୍ଷେତ୍ରର ନାମ."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "ପରଦା ପ୍ରତିଛବି ନିର୍ଦ୍ଦେଶ"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "ପ୍ରସଙ୍ଗଟି ୱିଣ୍ଡୋ ଧାର, ଶୀର୍ଷକପଟି, ଇତ୍ଯାଦିର ଚେହେରା ସ୍ଥିର କରେ."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"ଯଦି ସ୍ବଂୟ_ସାମନାକୁ_ଆଣିବା ସତ ହୋଇଥାଏ, ୱିଣ୍ଡୋକୁ ସାମନାକୁ ଆଣିବା ପୂର୍ବରୁ ମଧ୍ଯବର୍ତ୍ତୀ ସମୟ. ବିଳମ୍ବଟି "
+"ମିଲିସେକଣ୍ଡରେ ନିର୍ଦ୍ଧିଷ୍ଟ ହୋଇଥାଏ.."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"ୱିଣ୍ଡୋ କେନ୍ଦ୍ରୀଭୂତ ଧାରା ନିର୍ଦ୍ଧିଷ୍ଟ କରେ ୱିଣ୍ଡୋଗୁଡ଼ିକ କିପରି ସକ୍ରିୟ କରାଯିବ. ଏହାର ତିନୋଟି ମୂଲ୍ଯ ସମ୍ଭବ; "
+"\"ଚାପ\" ମାନେ ୱିଣ୍ଡୋଗୁଡ଼ିକ କେନ୍ଦ୍ରିତ କରିବା ପାଇଁ ତାଙ୍କ ଦେହରେ ମାଉସ୍ ଦବାଇବାକୁ ପଡ଼ିବ, \"ଅଯତ୍ନକୃତ\" "
+"ମାନେ ମାଉସ୍ ୱିଣ୍ଡୋରେ ପ୍ରବେଶ କଲେ ୱିଣ୍ଡୋଟି କେନ୍ଦ୍ରିତ ହେବ, ଓ \"ମାଉସ\" ମାନେ ମାଉସ୍ ୱିଣ୍ଡୋରେ "
+"ପ୍ରବେଶ କଲେ ୱିଣ୍ଡୋଟି କେନ୍ଦ୍ରିତ ହେବ ଏବଂ ୱିଣ୍ଡୋରୁ ବାହାରିଲେ ୱିଣ୍ଡୋଟି ଅକେନ୍ଦ୍ରିତ ହେବ."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "ୱିଣ୍ଡୋ ପରଦା ପ୍ରତିଛବି ନିର୍ଦ୍ଦେଶ"
+
+#: ../src/marco.schemas.in.in.h:44
+#| msgid ""
+#| "This option determines the effects of double-clicking on the title bar. "
+#| "Current valid options are 'toggle_shade', which will shade/unshade the "
+#| "window, 'toggle_maximize' which will maximize/unmaximize the window, "
+#| "'minimize' which will minimize the window, and 'none' which will not do "
+#| "anything."
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ଏହି ଚୟନ ଶୀର୍ଷକପଟି ଉପରେ ଦୁଇଥର ଦବାଇବାର ପ୍ରଭାବ ନିର୍ଦ୍ଧାରଣ କରିଥାଏ। ସାମ୍ପ୍ରତିକ ବୈଧ "
+"ବିକଳ୍ପଗୁଡ଼ିକ ହେଲା 'toggle_shade', ଯାହାକି ୱିଣ୍ଡୋକୁ ଘୋଢାଇବ ବା ପ୍ରକାଶିତ କରିବ, "
+"'toggle_maximize' ଯାହାକି ୱିଣ୍ଡୋକୁ ବୃହତ୍ତମନ କରିବ ବା ବୃହତ୍ତମରୁ ଛୋଟ କରିବ, "
+"'toggle_maximize_horizontally' ଏବଂ 'toggle_maximize_vertically' "
+"ଯାହାକି କେବଳ ସେହି ଦିଗରେ ୱିଣ୍ଡୋକୁ ବୃହତ୍ତମନ କରିବ ବା ବୃହତ୍ତମରୁ ଛୋଟ କରିବ, "
+"'minimize' ଯାହାକି ୱିଣ୍ଡୋକୁ କ୍ଷୁଦ୍ରତମ କରିବ, 'shade' ଯାହାକି ୱିଣ୍ଡୋକୁ ଉପରକୁ ଗଡ଼ାଇବ, "
+"'menu' ଯାହାକି ୱିଣ୍ଡୋ ତାଲିକାକୁ ଦର୍ଶାଇଥାଏ, 'lower' ଯାହାକି ୱିଣ୍ଡୋକୁ ଅନ୍ୟ ସମସ୍ତଙ୍କ ପଛରେ "
+"ରଖିଥାଏ, ଏବଂ 'none' ଯାହାକି କିଛି କରିନଥାଏ।"
+
+#: ../src/marco.schemas.in.in.h:45
+#| msgid ""
+#| "This option determines the effects of double-clicking on the title bar. "
+#| "Current valid options are 'toggle_shade', which will shade/unshade the "
+#| "window, 'toggle_maximize' which will maximize/unmaximize the window, "
+#| "'minimize' which will minimize the window, and 'none' which will not do "
+#| "anything."
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ଏହି ବିକଳ୍ପ ଶୀର୍ଷକପଟି ଉପରେ ମଝି କ୍ଲିକ କରିବା ଦ୍ୱାରା ହେଉଥିବା ପ୍ରଭାବ ନିର୍ଦ୍ଧାରଣ କରିଥାଏ। "
+"ସାମ୍ପ୍ରତିକ ବୈଧ ବିକଳ୍ପଗୁଡ଼ିକ ହେଲା 'toggle_shade', ଯାହାକି ୱିଣ୍ଡୋକୁ ଘୋଢାଇବ ବା ପ୍ରକାଶିତ କରିବ, "
+"'toggle_maximize' ଯାହାକି ୱିଣ୍ଡୋକୁ ବୃହତ୍ତମନ କରିବ ବା ବୃହତ୍ତମରୁ ଛୋଟ କରିବ, "
+"'toggle_maximize_horizontally' ଏବଂ 'toggle_maximize_vertically' "
+"ଯାହାକି କେବଳ ସେହି ଦିଗରେ ୱିଣ୍ଡୋକୁ ବୃହତ୍ତମନ କରିବ ବା ବୃହତ୍ତମରୁ ଛୋଟ କରିବ, "
+"'minimize' ଯାହାକି ୱିଣ୍ଡୋକୁ କ୍ଷୁଦ୍ରତମ କରିବ, 'shade' ଯାହାକି ୱିଣ୍ଡୋକୁ ଉପରକୁ ଗଡ଼ାଇବ, "
+"'menu' ଯାହାକି ୱିଣ୍ଡୋ ତାଲିକାକୁ ଦର୍ଶାଇଥାଏ, 'lower' ଯାହାକି ୱିଣ୍ଡୋକୁ ଅନ୍ୟ ସମସ୍ତଙ୍କ ପଛରେ "
+"ରଖିଥାଏ, ଏବଂ 'none' ଯାହାକି କିଛି କରିନଥାଏ।"
+
+#: ../src/marco.schemas.in.in.h:46
+#| msgid ""
+#| "This option determines the effects of double-clicking on the title bar. "
+#| "Current valid options are 'toggle_shade', which will shade/unshade the "
+#| "window, 'toggle_maximize' which will maximize/unmaximize the window, "
+#| "'minimize' which will minimize the window, and 'none' which will not do "
+#| "anything."
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ଏହି ବିକଳ୍ପ ଶୀର୍ଷକପଟି ଉପରେ ଡାହାଣ କ୍ଲିକ କରିବା ଦ୍ୱାରା ହେଉଥିବା ପ୍ରଭାବ ନିର୍ଦ୍ଧାରଣ କରିଥାଏ। "
+"ସାମ୍ପ୍ରତିକ ବୈଧ ବିକଳ୍ପଗୁଡ଼ିକ ହେଲା 'toggle_shade', ଯାହାକି ୱିଣ୍ଡୋକୁ ଘୋଢାଇବ ବା ପ୍ରକାଶିତ କରିବ, "
+"'toggle_maximize' ଯାହାକି ୱିଣ୍ଡୋକୁ ବୃହତ୍ତମନ କରିବ ବା ବୃହତ୍ତମରୁ ଛୋଟ କରିବ, "
+"'toggle_maximize_horizontally' ଏବଂ 'toggle_maximize_vertically' "
+"ଯାହାକି କେବଳ ସେହି ଦିଗରେ ୱିଣ୍ଡୋକୁ ବୃହତ୍ତମନ କରିବ ବା ବୃହତ୍ତମରୁ ଛୋଟ କରିବ, "
+"'minimize' ଯାହାକି ୱିଣ୍ଡୋକୁ କ୍ଷୁଦ୍ରତମ କରିବ, 'shade' ଯାହାକି ୱିଣ୍ଡୋକୁ ଉପରକୁ ଗଡ଼ାଇବ, "
+"'menu' ଯାହାକି ୱିଣ୍ଡୋ ତାଲିକାକୁ ଦର୍ଶାଇଥାଏ, 'lower' ଯାହାକି ୱିଣ୍ଡୋକୁ ଅନ୍ୟ ସମସ୍ତଙ୍କ ପଛରେ "
+"ରଖିଥାଏ, ଏବଂ 'none' ଯାହାକି କିଛି କରିନଥାଏ।"
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"ଏହି ବିକଳ୍ପଟି ନୂତନ ଭାବରେ ନିର୍ମିତ ୱିଣ୍ଡୋଗୁଡ଼ିକରେ କେନ୍ଦ୍ରିଭୁତ କରିବା ପାଇଁ ଅତିରିକ୍ତ ନିୟନ୍ତ୍ରଣ "
+"ପ୍ରଦାନ କରିଥାଏ। ଏହାର ଦୁଇଟି ସମ୍ଭାବ୍ୟ ମୂଲ୍ୟ ଅଛି; \"smart\" ଚାଳକର ସାଧାରଣ ଲକ୍ଷ୍ୟ ଅବସ୍ଥାକୁ "
+"ପ୍ରୟୋଗ କରିଥାଏ, ଏବଂ \"strict\" ଦ୍ୱାରା ଫଳସ୍ୱରୂପ ୱିଣ୍ଡୋଗୁଡ଼ିକୁ ଟର୍ମିନାଲରେ ଲକ୍ଷ୍ୟ କରାଯାଏନାହିଁ।"
+
+#: ../src/marco.schemas.in.in.h:48
+#| msgid ""
+#| "Turns on a visual indication when an application or the system issues a "
+#| "'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+#| "environments, or when 'audible bell' is off."
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"ଗୋଟିଏ ପ୍ରୟୋଗ ବା ତନ୍ତ୍ର 'ଘଣ୍ଟି' ବା 'ବିପ' କଲେ, ଏକ ଚାକ୍ଷୁଷ ସୂଚକ ବ୍ଯବହାର କରେ; ଏହା କାଲ ଲୋକଙ୍କ "
+"ପାଇଁ ବା କୋଲାହଳପୂର୍ଣ୍ଣ ପରିବେଶରେ ବା 'ଶ୍ରାବ୍ଯ ଘଣ୍ଟି' ଚାଲୁ ନ ଥିଲେ ଉପକାରୀ ହୋଇଥାଏ।"
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "ୱିଣ୍ଡୋ ଶୀର୍ଷକରେ ତନ୍ତ୍ରର ସାଧାରଣ ଅକ୍ଷରରୂପ ବ୍ଯବହାର କରନ୍ତୁ"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "ଚାକ୍ଷୁଷ ଘଣ୍ଟି ପ୍ରକାର"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "ସାମନାକୁ ଆଣିବା ଅନ୍ଯ ବ୍ଯବହାରକାରୀ ପାରସ୍ପରିକ କ୍ରିୟାର ଅବାଂଛିତ ପ୍ରତିକ୍ରିୟା ହେବା ଉଚିତ କି"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "ଡ଼ାହାଣ ବଟନ ଦ୍ୱାରା ଆକାର ପରିବର୍ତ୍ତନ କରାଯିବ କି"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "ୱିଣ୍ଡୋ କେନ୍ଦ୍ରୀଭୂତ ଧାରା"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "ୱିଣ୍ଡୋ ଶୀର୍ଷକ ଅକ୍ଷରରୂପ"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "ବ୍ଯବହାର: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "ୱିଣ୍ଡୋ ବନ୍ଦ କରନ୍ତୁ"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "ୱିଣ୍ଡୋ ମେନୁ"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "ୱିଣ୍ଡୋକୁ କ୍ଷୁଦ୍ରତମ କରନ୍ତୁ"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "ୱିଣ୍ଡୋକୁ ବୃହତ୍ତମ କରନ୍ତୁ"
+
+#: ../src/ui/frames.c:1130
+#| msgid "Resize window"
+msgid "Restore Window"
+msgstr "ୱିଣ୍ଡୋକୁ ପୁନଃ ସ୍ଥାପନ କରନ୍ତୁ"
+
+#: ../src/ui/frames.c:1133
+#| msgid "Roll _Up"
+msgid "Roll Up Window"
+msgstr "ୱିଣ୍ଡୋକୁ ଉପରକୁ ଗୁଡ଼ାନ୍ତୁ"
+
+#: ../src/ui/frames.c:1136
+#| msgid "Close Window"
+msgid "Unroll Window"
+msgstr "ୱିଣ୍ଡୋକୁ ଗୁଡ଼ାନ୍ତୁ ନାହିଁ"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "ୱିଣ୍ଡୋକୁ ଉପରେ ରଖନ୍ତୁ"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "ୱିଣ୍ଡୋକୁ ଉପରୁ କାଢ଼ନ୍ତୁ"
+
+#: ../src/ui/frames.c:1145
+#| msgid "_Always on Visible Workspace"
+msgid "Always On Visible Workspace"
+msgstr "ସଦାବେଳେ ଦୃଶ୍ଯମାନ କାର୍ଯ୍ଯକ୍ଷେତ୍ରରେ ଥାଏ"
+
+#: ../src/ui/frames.c:1148
+#| msgid "Toggle window on all workspaces"
+msgid "Put Window On Only One Workspace"
+msgstr "ୱିଣ୍ଡୋକୁ ସର୍ବଦା କେବଳ ଗୋଟିଏ କାର୍ଯ୍ଯକ୍ଷେତ୍ରରେ ରଖନ୍ତୁ"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "କ୍ଷୁଦ୍ରତମ କରନ୍ତୁ (_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "ବୃହତ୍ତମ କରନ୍ତୁ (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "ସାଧାରଣ ଆକାର ଦିଅନ୍ତୁ (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "ଉପରକୁ ଗୁଡ଼ାନ୍ତୁ (_U)"
+
+# Should have been "ଗୁଡ଼ା ହୋଇଥିବାକୁ ଖୋଲନ୍ତୁ". Shortened for menu
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "ଖୋଲନ୍ତୁ (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "ଘୁଞ୍ଚାନ୍ତୁ (_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "ଆକାର ବଦଳାନ୍ତୁ (_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "ଶୀର୍ଷକ ପରଦାକୁ ପଟି ଘୁଞ୍ଚାନ୍ତୁ (_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "ସର୍ବଦା ଉପରେ (_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "ସଦାବେଳେ ଦୃଶ୍ଯମାନ କାର୍ଯ୍ଯକ୍ଷେତ୍ରରେ (_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "କେବଳ ଏହି କାର୍ଯ୍ଯକ୍ଷେତ୍ରରେ (_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "ବାମ କାର୍ଯ୍ଯକ୍ଷେତ୍ରକୁ ପଠାନ୍ତୁ (_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "ଡାହାଣ କାର୍ଯ୍ଯକ୍ଷେତ୍ରକୁ ପଠାନ୍ତୁ (_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "ଉପର କାର୍ଯ୍ଯକ୍ଷେତ୍ରକୁ ପଠାନ୍ତୁ (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "ତଳ କାର୍ଯ୍ଯକ୍ଷେତ୍ରକୁ ପଠାନ୍ତୁ (_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "ବନ୍ଦ କରନ୍ତୁ (_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+#| msgid "Workspace %d"
+msgid "Workspace %d%n"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "କାର୍ଯ୍ଯକ୍ଷେତ୍ର %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "ଅଲଗା କାର୍ଯ୍ଯକ୍ଷେତ୍ରକୁ ପଠାନ୍ତୁ (_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "ଉପର"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "ତଳ"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "ବାମ"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "ଡାହାଣ"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "ବନ୍ଧେଇ ଜ୍ଯାମିତି \"%s\" ପରିସର ନିର୍ଦ୍ଦିଷ୍ଟ କରି ନାହିଁ"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "ବନ୍ଧେଇ ଜ୍ଯାମିତି \"%2$s\" ଧାର ଫାଇଁ \"%1$s\" ପରିସର ନିର୍ଦ୍ଦିଷ୍ଟ କରି ନାହିଁ"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "ଚାବି ପରିମାପ ଅନୁପାଦ %g ଯୁକ୍ତିଯୁକ୍ତ ନୁହେଁ"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "ବନ୍ଧେଇ ଜ୍ଯାମିତି ତାବିଗୁଡ଼ିକର ଆକାର ନିର୍ଦ୍ଦିଷ୍ଟ କରି ନାହିଁ"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "ଗଡ଼ାଣିଗୁଡ଼ିକର କମସେକମ ଦୁଇଟି ରଙ୍ଗ ଥିବା ଉଚିତ"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"ଜି.ଟି.କେ.ର ରଙ୍ଗ ନିର୍ଦ୍ଦିଷ୍ଟକରଣରେ ଅବସ୍ଥା ବନ୍ଧନୀରେ ଥିବା ବାଧ୍ଯ, ଉଦାହରଣ ସ୍ବରୂପ gtk:fg[NORMAL] "
+"ଯେଉଁଠାରେ NORMAL ହେଲା ଅବସ୍ଥା; \"%s\" ବିଶ୍ଳେଷଣ କରିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"ଜି.ଟି.କେ.ର ରଙ୍ଗ ନିର୍ଦ୍ଦିଷ୍ଟକରଣରେ ଅବସ୍ଥା ପରେ ଡାହାଣ ବନ୍ଧନୀ ଥିବା ବାଧ୍ଯ, ଉଦାହରଣ ସ୍ବରୂପ gtk:fg"
+"[NORMAL] ଯେଉଁଠାରେ NORMAL ହେଲା ଅବସ୍ଥା; \"%s\" ବିଶ୍ଳେଷଣ କରିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "ରଙ୍ଗ ନିର୍ଦ୍ଦିଷ୍ଟକରଣରେ \"%s\" ଅବସ୍ଥା ବୁଝିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "ରଙ୍ଗ ନିର୍ଦ୍ଦିଷ୍ଟକରଣରେ ରଙ୍ଗ ଯନ୍ତ୍ରାଂଶ \"%s\" ବୁଝିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"ମିଶ୍ରଣ ସଜ୍ଜିକରଣ ଶୈଳୀ ହେଲା \"blend/bg_color/fg_color/alpha\", \"%s\" ଏହି ଶୈଳୀ ଭାବେ "
+"ନାହିଁ"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "ମିଶ୍ରିତ ରଙ୍ଗରେ ଆଲ୍ଫା ମୂଲ୍ଯ \"%s\"କୁ ବିଶ୍ଳେଷଣ କରିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "ମିଶ୍ରିତ ରଙ୍ଗରେ ଆଲ୍ଫା ମୂଲ୍ଯ \"%s\" ୦.୦ ଓ ୧.୦ ମଧ୍ଯରେ ନାହିଁ"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "ଛାଇ ସଜ୍ଜିକରଣ ଶୈଳୀ ହେଲା \"shade/base_color/factor\", \"%s\" ଏହି ଶୈଳୀ ଭାବେ ନାହିଁ"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "ଛାଇ ରଙ୍ଗରେ ଛାଇ ଗୁଣନୀୟକ \"%s\"କୁ ବିଶ୍ଳେଷଣ କରିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "ଛାଇ ରଙ୍ଗରେ ଛାଇ ଗୁଣନୀୟକ \"%s\" ଶୂନ୍ଯଠାରୁ କମ ଅଛି"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "\"%s\" ରଙ୍ଗକୁ ବିଶ୍ଳେଷଣ କରିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ '%s' ଅକ୍ଷର ଅଛି, ଯାହାର ଅନୁମତି ନାହିଁ"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ '%s' ଅସ୍ଥାୟୀ ବିନ୍ଦୁ ସଂଖ୍ଯା ଅଛି, ଯେଉଁଟାକି ବିଶ୍ଳେଷଣ କରିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ '%s' ପୂର୍ଣ୍ଣ ସଂଖ୍ଯା ଅଛି, ଯେଉଁଟାକି ବିଶ୍ଳେଷଣ କରିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ ଅଜଣା ଚାଳକ ଅଛି, ଏହି ପାଠ୍ଯର ଆରମ୍ଭରେ: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ ଖାଲି ଅଛି ବା ବୁଝିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିର ପରିଣାମ ସୂନ୍ଯ ଦ୍ବାରା ବିଭାଜନ"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତି mod ଚାଳକକୁ ଗୋଟିଏ ଅସ୍ଥାୟୀ ବିନ୍ଦୁ ସଂଖ୍ଯା ପ୍ରତି ବ୍ଯବହାର କରିବାକୁ ଚେଷ୍ଟା କରେ"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ ଚାଳକ \"%s\" ଅଛି, ଯେଉଁଠାରେ ସଂକାର୍ଯ୍ଯ ପ୍ରତ୍ଯାଶିତ ଥିଲା"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ ଚାଳକ ଥିଲା, ଯେଉଁଠାରେ ସଂକାର୍ଯ୍ଯ ପ୍ରତ୍ଯାଶିତ ଥିଲା"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତି ସଂକାର୍ଯ୍ଯ ଅପେକ୍ଷା ଚାଳକରା ଶେଷହେଲା"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ \"%2$c\" ଚାଳକ ପରେ \"%1$c\" ଚାଳକ ଅଛି, ମଝିରେ ସଂକାର୍ଯ୍ଯ ନ ଥାଇ"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ ଅଜଣା ଚଳ ବା ସ୍ଥାୟୀ ମୂଲ୍ଯ \"%s\" ଥିଲା"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+#| msgid "Coordinate expression was empty or not understood"
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତି ବିଶ୍ଳେଷକ ଏହାର ବଫରରେ ଅତିପ୍ରବାହ ହୋଇଥାଏ।"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ ବାମ ବନ୍ଧନୀ ଚିହ୍ନ ବିନା ଗୋଟିଏ ଡାହାଣ ବନ୍ଧନୀ ଚିହ୍ନ ଥିଲା"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ ଡାହାଣ ବନ୍ଧନୀ ଚିହ୍ନ ବିନା ଗୋଟିଏ ବାମ ବନ୍ଧନୀ ଚିହ୍ନ ଥିଲା"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତିରେ କୌଣସି ଚାଳକ ବା ସଂକାର୍ଯ୍ଯ ଥାଲା ଭଳିଆ ବୋଧହେଉ ନାହିଁ"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+#| msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "ପ୍ରସଙ୍ଗରେ ଗୋଟିଏ ଅଭିବ୍ଯକ୍ତି ଥିଲା ଯାହା ଯୋଗୁ ତ୍ରୁଟି ହେଲା: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"ଏହି ବନ୍ଧେଇ ସଜ୍ଜିକରଣ ଶୈଳୀ ପାଇଁ <button function=\"%s\" state=\"%s\" draw_ops="
+"\"whatever\"/> ନିର୍ଦ୍ଦିଷ୍ଟ କରିବା ବାଧ୍ଯ"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "ନିଖୋଜ <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "\"%s\" ପ୍ରସଙ୍ଗ ଧାରଣ କରିବାରେ ଅସଫଳ: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "\"%2$s\" ପ୍ରସଙ୍ଗ ପାଇଁ କୌଣସି <%1$s> ବିନ୍ଯାସ କରାଯାଇ ନାହିଁ"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"\"%2$s\" ପ୍ରସଙ୍ଗରେ ୱିଣ୍ଡୋ ପ୍ରକାର \"%1$s\" ପାଇଁ କୌଣସି ବନ୍ଧେଇ ଶୈଳୀ ବିନ୍ଯାସ କରାଯାଇ ନାହିଁ, "
+"ଗୋଟିଏ <windowtype=\"%3$s\" style_set=\"whatever\"/> ଉପାଦାନ ଯୋଗ କରନ୍ତୁ"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"ଚାଳକ ଦ୍ବାରା ବ୍ଯାଖ୍ଯା କରାଯାଇଥାବା ସ୍ଥାୟୀ ମୂଲ୍ଯଗୁଡ଼ିକ ବଡ଼ ଅକ୍ଷରରେ ଆରମ୍ଭ ହେବା ବାଧ୍ଯ; \"%s\" "
+"କରୁ ନାହିଁ"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "\"%s\" ସ୍ଥାୟୀ ମୂଲ୍ଯ ପୂର୍ବରୁ ବ୍ଯାଖ୍ଯା କରାଯାଇଛି"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+#| msgid "No \"x\" attribute on element <%s>"
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "ଉପାଦାନ <%s> ରେ କୌଣସି \"%s\" ଗୁଣ ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "ଧାଡ଼ି %d ଅକ୍ଷର %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "\"%s\" ଗୁଣ ଏକା ଉପାଦାନ <%s>ରେ ଦୁଇଥର ଅଛି"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "\"%s\" ଗୁଣ <%s> ଉପାଦାନ ଫାଇଁ ଏହି ପ୍ରସଙ୍ଗରେ ଅବୈଧ"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\"କୁ ପୁର୍ଣ ସଂଖ୍ଯା ଭାବରେ ବିଶ୍ଳେଷଣ କରିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "\"%s\" ବାକ୍ଯଖଣ୍ଡର ପଛପାଖରେ ଥିବା ଅକ୍ଷର \"%s\" ବୁଝିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "%ld ପୂର୍ଣ୍ମ ସମଖ୍ଯା ଶୂନ୍ଯଠାରୁ ଅଧିକ ହେବା ବାଧ୍ଯ"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "%ld ପୂର୍ଣ୍ମ ସମଖ୍ଯାଟି ଅତି ବଡ଼, ସାମ୍ପ୍ରତିକ ସର୍ବାଧିକ ମୂଲ୍ଯ ହେଲା %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\"କୁ ଅସ୍ଥାୟୀ ବିନ୍ଦୁ ରୂପେ ବିଶ୍ଳେଷଣ କରିବାରେ ଅସଫଳ"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "ବୁଲିଆନ ମୂଲ୍ଯଗୁଡ଼ିକ \"true\" ବା \"false\" ହୋଇଥିବା ବାଧ୍ଯ, \"%s\" ନୁହେଁ"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "କୋଣ ୦.୦ ଓ ୩୬୦.୦ ମଧ୍ଯରେ ଥିବା ବାଧ୍ଯ, %g ଥିଲା\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "ଆଲ୍ଫା ୦.୦ (ଅଦୃଶ୍ଯ) ଓ ୧.୦ (ସମ୍ପୂର୍ଣ୍ମ ଭାବେ ଅସ୍ବଚ୍ଛ) ମଧ୍ଯରେ ଥିବା ବାଧ୍ଯ, %g ଥିଲା\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"ଅବୈଧ ଶୀର୍ଷକ ମାପ \"%s\" (xx-small,x-small,small,medium,large,x-large,xx-large "
+"ମଧ୍ଯରୁ ଗୋଟିଏ ହୋଇଥିବା ବାଧ୍ଯ)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> ନାମ \"%s\" ଦୁଇଥର ବ୍ଯବହୃତ"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> ମୂଳ \"%s\" ବ୍ଯାଖ୍ଯା ହୋଇ ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> ଜ୍ଯାମିତି \"%s\" ବ୍ଯାଖ୍ଯା ହୋଇ ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> ଗୋଟିଏ ଜ୍ଯାମିତି ବା ଜ୍ଯାମିତି ଥିବା ମୂଳ ନିର୍ଦ୍ଦିଷ୍ଟ କରିବା ବାଧ୍ଯ"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "ଆପଣଙ୍କୁ ଆଲଫା ମୂଲ୍ୟ ପାଇଁ ଗୋଟିଏ ଅର୍ଥପୂର୍ଣ୍ଣ ପୃଷ୍ଠଭୂମି ଉଲ୍ଲେଖ କରିବା ଉଚିତ"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "ଉପାଦାନ <%s>ରେ ଅଜଣା ପ୍ରକାର \"%s\""
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "ଉପାଦାନ <%s>ରେ ଅଜଣା ଶୈଳୀ_ସେଟ୍ \"%s\""
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "\"%s\" ୱିଣ୍ଡୋ ପ୍ରକାର ପାଇଁ ପୂର୍ବରୁ ଗୋଟିଏ ଶୈଳୀ ସେଟ୍ ନିର୍ଦ୍ଧାରିତ କରାଯାଇଛି"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "<%2$s> ତଳେ <%1$s> ଉପାଦାନର ଅନୁମତି ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+#| msgid ""
+#| "Cannot specify both button_width/button_height and aspect ratio for "
+#| "buttons"
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"ବଟନଗୁଡ଼ିକ ପାଇଁ ଉଭୟ \"button_width\"/\"button_height\" ଏବଂ \"aspect_ratio\"କୁ "
+"ଉଲ୍ଲେଖ କରିପାରିବେ ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "\"%s\" ଦୂରତା ଅଜଣା"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "\"%s\" ପରିମାପ ଅନୁପାଦ ଅଜଣା"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "\"%s\" ଧାର ଅଜଣା"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+#| msgid "No \"start_angle\" attribute on element <%s>"
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "ଉପାଦାନ <%s> ରେ କୌଣସି \"start_angle\" ଅଥବା \"from\" ଗୁଣ ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+#| msgid "No \"extent_angle\" attribute on element <%s>"
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "ଉପାଦାନ <%s> ରେ କୌଣସି \"extent_angle\" ଅଥବା \"to\" ଗୁଣ ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "ଗଡ଼ାଣି ପ୍ରକାର ପାଇଁ \"%s\" ମୂଲ୍ଯ ବୁଝିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "<%2$s> ଉପାଦାନ ପାଇଁ \"%1$s\" ଭରଣ ଶୈଳୀ ବୁଝିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "<%2$s> ଉପାଦାନ ପାଇଁ \"%1$s\" ଅବସ୍ଥା ବୁଝିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "<%2$s> ଉପାଦାନ ପାଇଁ \"%1$s\" ଛାଇ ବୁଝିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "<%2$s> ଉପାଦାନ ପାଇଁ \"%1$s\" ତୀର ବୁଝିହେଲା ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "\"%s\" ନାମକ <draw_ops> ବ୍ଯାଖ୍ଯା ହୋଇ ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "ଏଠାରେ \"%s\" draw_ops ଭର୍ତ୍ତି କଲେ, ଗୋଟିଏ ବୃତ୍ତାକାର ରେଫରେନ୍ସ ସୃଷ୍ଟି ହେବ"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "ବନ୍ଧେଇ ଖଣ୍ଡ ପାଇଁ ଅଜଣା ଅବସ୍ଥାନ \"%s\""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "ବନ୍ଧେଇ ଶୈଳୀର ପୂର୍ବରୁ %s ଅବସ୍ଥାନରେ ଗୋଟିଏ ଖଣ୍ଡ ଅଛି"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "\"%s\" ନାମକ <draw_ops> ବ୍ଯାଖ୍ଯା ହୋଇ ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "ଚାବି ପାଇଁ ଅଜଣା ଫଳନ \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "ବଟନ ଫଳନ \"%s\" ଏହି ସଂସ୍କରଣରେ ଅବସ୍ଥିତ ନାହିଁ (%d, %d ଆବଶ୍ୟକ)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "ଚାବି ପାଇଁ ଅଜଣା ଅବସ୍ଥା\"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "ଫଳନ %s, ସ୍ଥିତି %s ପାଇଁ ପୂର୍ବରୁ ବନ୍ଧେଇ ଶୈଳୀର ଗୋଟିଏ ଚାବି ଅଛି"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "କେନ୍ଦ୍ର ଗୁଣ ପାଇଁ \"%s\" ବୈଧ ମୂଲ୍ଯ ନୁହେଁ"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "ଅବସ୍ଥା ଗୁଣ ପାଇଁ \"%s\" ବୈଧ ମୂଲ୍ଯ ନୁହେଁ"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" ନାମକ ଶୈଳୀ ବ୍ଯାଖ୍ଯା ହୋଇ ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "ଆକାର ବଦଳାଇବା ଗୁଣ ପାଇଁ \"%s\" ବୈଧ ମୂଲ୍ଯ ନୁହେଁ"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "ବୃହତ୍ତମ/ଘୋଡାହୋଇଥିବା ଅବସ୍ଥା ପାଇଁ <%s> ଉପାଦାନର \"resize\" ଗୁଣ ଥିବା ଉଚିତ ନୁହେଁ"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+#| msgid ""
+#| "Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+#| "states"
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "ବୃହତ୍ତମ ଅବସ୍ଥା ପାଇଁ <%s> ଉପାଦାନରେ \"ଆକାର ପରିବର୍ତ୍ତନ\" ଗୁଣ ଥିବା ଉଚିତ ନୁହେଁ"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "ଅବସ୍ଥା %s ଆକାର ବଦଳାଇବା %s କେନ୍ଦ୍ର %s ପାଇଁ ଶୈଳୀ ପୂର୍ବରୁ ବିନ୍ଯାସ କରାଯାଇଛି"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "ଅବସ୍ଥା %s କେନ୍ଦ୍ର %s ପାଇଁ ଶୈଳୀ ପୂର୍ବରୁ ବିନ୍ଯାସ କରାଯାଇଛି"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<piece> ଉପାଦାନ ପାଇଁ ଦୁଇଟି draw_ops ରହିପାରିବ ନାହିଁ (ପ୍ରସଙ୍ଗ ଗୋଟିଏ draw_ops ଗୁଣ ଏବଂ ଗୋଟିଏ "
+"<draw_ops> ଉପାଦାନ, ବା ଦୁଇଟି ଉପାଦାନ ନିର୍ଦ୍ଦିଷ୍ଟ କରିଥିଲା)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<button> ଉପାଦାନ ପାଇଁ ଦୁଇଟି draw_ops ରହିପାରିବ ନାହିଁ (ପ୍ରସଙ୍ଗ ଗୋଟିଏ draw_ops ଗୁଣ ଏବଂ ଗୋଟିଏ "
+"<draw_ops> ଉପାଦାନ, ବା ଦୁଇଟି ଉପାଦାନ ନିର୍ଦ୍ଦିଷ୍ଟ କରିଥିଲା)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<menu_icon> ଉପାଦାନ ପାଇଁ ଦୁଇଟି draw_ops ରହିପାରିବ ନାହିଁ (ପ୍ରସଙ୍ଗ ଗୋଟିଏ draw_ops ଗୁଣ ଏବଂ "
+"ଗୋଟିଏ <draw_ops> ଉପାଦାନ, ବା ଦୁଇଟି ଉପାଦାନ ନିର୍ଦ୍ଦିଷ୍ଟ କରିଥିଲା)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "ପ୍ରସଙ୍ଗର ବାହ୍ଯତ୍ତମ ଉପାଦାନ <marco_theme> ହେବା ବାଧ୍ଯ, <%s> ନୁହେଁ"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "ନାମ/ଲେଖକ/ତାରିଖ/ବର୍ଣ୍ଣନା ଉପାଦାନ ଭିତରେ <%s> ଉପାଦାନର ଅନୁମତି ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<constant> ଉପାଦାନ ଭିତରେ <%s> ଉପାଦାନର ଅନୁମତି ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "ଦୂରତା/ଧାର/ପରିମାପ_ଅନୁପାଦ ଉପାଦାନ ଭିତରେ <%s> ଉପାଦାନର ଅନୁମତି ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "ଅଙ୍କନ ଚାଳନା ଉପାଦାନ ଭିତରେ <%s> ଉପାଦାନର ଅନୁମତି ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%2$s> ଉପାଦାନ ଭିତରେ <%1$s> ଉପାଦାନର ଅନୁମତି ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "ବନ୍ଧେଇ ଖଣ୍ଡ ପାଇଁ draw_ops ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "ଚାବି ପାଇଁ draw_ops ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> ଉପାଦାନ ଭିତରେ ପାଠ୍ଯର ଅନୁମତି ନାହିଁ"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+#| msgid "<name> specified twice for this theme"
+msgid "<%s> specified twice for this theme"
+msgstr "ଏହି ପ୍ରସଙ୍ଗ ପାଇଁ <%s> ଦୁଇଥର ଉଲ୍ଲେଖ କରାଯାଇଛି"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+#| msgid "Failed to fdopen() log file %s: %s\n"
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "ପ୍ରସଙ୍ଗ %s ପାଇଁ ଗୋଟିଏ ବୈଧ ଫାଇଲ ପାଇବାରେ ଅସଫଳ\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "ପ୍ରସଙ୍ଗ ଫାଇଲ %sରେ ମୂଳ <marco_theme> ଉପାଦାନ ନ ଥିଲା"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/ୱିଣ୍ଡୋ (_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/ୱିଣ୍ଡୋ/ଛିଣ୍ଡାନ୍ତୁ"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/ୱିଣ୍ଡୋ/ସଂଳାପ (_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/ୱିଣ୍ଡୋ/ଅବସ୍ଥା ସଂଳାପ (_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/ୱିଣ୍ଡୋ/ସାଧନ (_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/ୱିଣ୍ଡୋ/ଛିଟା ପରଦା (_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/ୱିଣ୍ଡୋ/ଉପର ପୋତାଶ୍ରୟ (_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/ୱିଣ୍ଡୋ/ତଳ ପୋତାଶ୍ରୟ (_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/ୱିଣ୍ଡୋ/ବାମ ପୋତାଶ୍ରୟ (_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/ୱିଣ୍ଡୋ/ଡାହାଣ ପୋତାଶ୍ରୟ (_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/ୱିଣ୍ଡୋ/ସବୁ ପୋତାଶ୍ରୟ (_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/ୱିଣ୍ଡୋ/ଡେସ୍କଟପ୍ (_k)"
+
+#: ../src/ui/theme-viewer.c:136
+msgid "Open another one of these windows"
+msgstr "ଏହି ୱିଣ୍ଡୋରୁ ଆହୁରି ଗୋଟିଏ ଖୋଲନ୍ତୁ"
+
+#: ../src/ui/theme-viewer.c:143
+msgid "This is a demo button with an 'open' icon"
+msgstr "ଏହା ଗୋଟିଏ ପ୍ରଦର୍ଶନ ଚାବି, 'ଖୋଲନ୍ତୁ' ଚିତ୍ରସଙ୍କେତ ସହିତ"
+
+#: ../src/ui/theme-viewer.c:150
+msgid "This is a demo button with a 'quit' icon"
+msgstr "ଏହା ଗୋଟିଏ ପ୍ରଦର୍ଶନ ଚାବି, 'ବିଦାୟ' ଚିତ୍ରସଙ୍କେତ ସହିତ"
+
+#: ../src/ui/theme-viewer.c:243
+msgid "This is a sample message in a sample dialog"
+msgstr "ଏହା ଗୋଟିଏ ନମୁନା ସଂଳାପରେ ଗୋଟିଏ ନମୁନା ସନ୍ଦେଶ"
+
+#: ../src/ui/theme-viewer.c:326
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "ନକଲି ମେନୁ ବସ୍ତୁ %d\n"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Border-only window"
+msgstr "କେବଳ ଧାରବାଲା ୱିଣ୍ଡୋ"
+
+#: ../src/ui/theme-viewer.c:362
+msgid "Bar"
+msgstr "ପିଣ୍ଡ"
+
+#: ../src/ui/theme-viewer.c:379
+msgid "Normal Application Window"
+msgstr "ସାଧାରଣ ପ୍ରୟୋଗ ୱିଣ୍ଡୋ"
+
+#: ../src/ui/theme-viewer.c:383
+msgid "Dialog Box"
+msgstr "ସଂଳାପ ବାକ୍ସ"
+
+#: ../src/ui/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "ଧାରା ସଂଳାପ ବାକ୍ସ"
+
+#: ../src/ui/theme-viewer.c:391
+msgid "Utility Palette"
+msgstr "ସାଧନ ଥାଳି"
+
+#: ../src/ui/theme-viewer.c:395
+msgid "Torn-off Menu"
+msgstr "ଛିଣ୍ଡା ମେନୁ"
+
+#: ../src/ui/theme-viewer.c:399
+msgid "Border"
+msgstr "ଧାର"
+
+#: ../src/ui/theme-viewer.c:727
+#, c-format
+msgid "Button layout test %d"
+msgstr "ଚାବି ବିନ୍ଯାସ ପରିକ୍ଷଣ %d"
+
+#: ../src/ui/theme-viewer.c:756
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "ଗୋଟିଏ ୱିଣ୍ଡୋ ବନ୍ଧେଇ ଆଙ୍କିବାକୁ %g ମିଲିସେକଣ୍ଡ"
+
+#: ../src/ui/theme-viewer.c:799
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "ବ୍ଯବହାର: marco-theme-viewer [ପ୍ରସଙ୍ଗ ନାମ]\n"
+
+#: ../src/ui/theme-viewer.c:806
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "ପ୍ରସଙ୍ଗ ଧାରଣ କରିବାରେ ତ୍ରୁଟି: %s\n"
+
+#: ../src/ui/theme-viewer.c:812
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" ପ୍ରସଙ୍ଗ %g ସେକଣ୍ଡରେ ଧାରଣ ହେଲା\n"
+
+#: ../src/ui/theme-viewer.c:853
+msgid "Normal Title Font"
+msgstr "ସାଧାରଣ ଶୀର୍ଷକ ଅକ୍ଷରରୂପ"
+
+#: ../src/ui/theme-viewer.c:859
+msgid "Small Title Font"
+msgstr "ଛୋଟ ଶୀର୍ଷକ ଅକ୍ଷରରୂପ"
+
+#: ../src/ui/theme-viewer.c:865
+msgid "Large Title Font"
+msgstr "ବଡ଼ ଶୀର୍ଷକ ଅକ୍ଷରରୂପ"
+
+#: ../src/ui/theme-viewer.c:870
+msgid "Button Layouts"
+msgstr "ଚାବି ବିନ୍ଯାସଗୁଡ଼ିକ"
+
+#: ../src/ui/theme-viewer.c:875
+msgid "Benchmark"
+msgstr "ମାନଦଣ୍ଡ"
+
+#: ../src/ui/theme-viewer.c:922
+msgid "Window Title Goes Here"
+msgstr "ୱିଣ୍ଡୋ ଶୀର୍ଷକ ଏଇଠି"
+
+#: ../src/ui/theme-viewer.c:1026
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d ବନ୍ଧେଇ ଆଙ୍କିବାକୁ %g ଗ୍ରାହକ-ପକ୍ଷ ସେକଣ୍ଡ (ପ୍ରତି ବନ୍ଧେଇକୁ %g ମିଲିସେକଣ୍ଡ) ଓ ଙଡ଼ି ଅନୁସାରେ %g "
+"ସେକଣ୍ଡ, ଏକ୍ସ ସେବକ ସମ୍ବଳଗୁଡ଼ିକୁ ମିଶାଇ (ପ୍ରତି ବନ୍ଧେଇକୁ %g ମିଲିସେକଣ୍ଡ)\n"
+
+#: ../src/ui/theme-viewer.c:1245
+msgid "position expression test returned TRUE but set error"
+msgstr "ଅବସ୍ଥାନ ଅଭିବ୍ଯକ୍ତି ପରୀକ୍ଷଣ ସତ ଫେରାଇ ତ୍ରୁଟି ବିନ୍ଯାସ କରିଛି"
+
+#: ../src/ui/theme-viewer.c:1247
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "ଅବସ୍ଥାନ ଅଭିବ୍ଯକ୍ତି ପରୀକ୍ଷଣ ମିଛ ଫେରାଇ ତ୍ରୁଟି ବିନ୍ଯାସ କରି ନାବିଁ"
+
+#: ../src/ui/theme-viewer.c:1251
+msgid "Error was expected but none given"
+msgstr "ତ୍ରୁଟି ପ୍ରତ୍ଯାଶିତ ଥିଲା କିନ୍ତୁ ଦିଆଯାଇ ନାହିଁ"
+
+#: ../src/ui/theme-viewer.c:1253
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "%d ତ୍ରୁଟି ପ୍ରତ୍ଯାଶିତ ଥିଲା କିନ୍ତୁ %d ଦିଆଯାଇଛି"
+
+#: ../src/ui/theme-viewer.c:1259
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "ତ୍ରୁଟି ପ୍ରତ୍ଯାଶିତ ନ ଥିଲା କିନ୍ତୁ ଦିଆଯାଇଛି: %s"
+
+#: ../src/ui/theme-viewer.c:1263
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x ମୂଲ୍ଯ %d ଥିଲା, %d ପ୍ରତ୍ଯାଶିତ ଥିଲା"
+
+#: ../src/ui/theme-viewer.c:1266
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y ମୂଲ୍ଯ %d ଥିଲା, %d ପ୍ରତ୍ଯାଶିତ ଥିଲା"
+
+#: ../src/ui/theme-viewer.c:1331
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%2$g ସେକଣ୍ଡରେ %1$d ସ୍ଥାନ ନିର୍ଣ୍ଣୟ ଅଭିବ୍ଯକ୍ତି ବିଶ୍ଳେଷିତ (%3$g ସେକଣ୍ଡ ମାଧ୍ଯମାନ)\n"
+
diff --git a/po/pa.po b/po/pa.po
new file mode 100644
index 00000000..03434b5c
--- /dev/null
+++ b/po/pa.po
@@ -0,0 +1,3537 @@
+# translation of marco.HEAD.po to Punjabi
+# Punjabi translation of marco.HEAD.
+# Copyright (C) 2004 THE marco.HEAD'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the marco.HEAD package.
+#
+# Amanpreet_Singh <[email protected]>, 2004.
+# A S Alam <[email protected]>, 2004, 2005,2006,2007, 2009, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2010-01-21 21:34+0000\n"
+"PO-Revision-Date: 2010-03-21 19:14+0530\n"
+"Last-Translator: A S Alam <[email protected]>\n"
+"Language-Team: Punjabi/Panjabi <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Lokalize 1.0\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "ਡੈਸਕਟਾਪ"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "ਵਿੰਡੋ ਮੈਨੇਜ਼ਮੈਂਟ"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "ਘੰਟੀ ਈਵੈਂਟ"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "ਅਣਜਾਣ ਵਿੰਡੋ ਜਾਣਕਾਰੀ ਮੰਗ: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+#| msgid "\"%s\" is not responding."
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> ਜਵਾਬ ਨਹੀ ਦਿੰਦਾ।"
+
+#: ../src/core/delete.c:101
+#| msgid ""
+#| "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#| "\n"
+#| "<i>You may choose to wait a short while for it to continue or force the "
+#| "application to quit entirely.</i>"
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "ਤੁਸੀਂ ਇਸ ਲਈ ਕੁਝ ਸਮੇਂ ਵਾਸਤੇ ਉਡੀਕ ਕਰ ਸਕਦੇ ਹੋ ਜਾਂ ਕਾਰਜ ਨੂੰ ਧੱਕੇ ਨਾਲ ਬੰਦ ਕਰ ਸਕਦੇ ਹੋ।"
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "ਉਡੀਕੋ(_W)"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "ਧੱਕੇ ਨਾਲ ਬੰਦ(_F)"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "ਹੋਸਟ ਨਾਂ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਫੇਲ੍ਹ: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "ਕੰਪੋਜ਼ੀਸ਼ਨ ਲਈ ਗੁੰਮ %s ਇਕਸਟੈਨਸ਼ਨ ਦੀ ਲੋੜ ਹੈ"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X ਵਿੰਡੋ ਸਿਸਟਮ ਡਿਸਪਲੇਅ '%s' ਨੂੰ ਖੋਲਣ ਵਿੱਚ ਅਸਮਰਥ\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"'%s' ਡਿਸਪਲੇਅ ਕੁਨੈਕਸ਼ਨ ਖਤਮ;\n"
+"ਜਿਵੇਂ ਕਿ X ਸਰਵਰ ਬੰਦ ਹੋ ਗਿਆ ਹੈ ਜਾਂ ਤੁਸੀਂ ਵਿੰਡੋ ਮੈਨੇਜਰ\n"
+"ਖਤਮ ਕੀਤਾ ਹੈ।\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "ਘਾਤਕ IO ਗਲਤੀ %d (%s) ਡਿਸਪਲੇਅ '%s' ਉੱਤੇ ਹੈ।\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "ਕੋਈ ਹੋਰ ਕਾਰਜ %s ਸਵਿੱਚ ਨੂੰ %x ਸੋਧਕ ਨਾਲ ਪਹਿਲਾਂ ਹੀ ਜੋੜ ਵਾਂਗ ਵਰਤ ਰਿਹਾ ਹੈ\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> ਨੂੰ ਚਲਾਉਣ ਉਪਰੰਤ ਇੱਕ ਗਲਤੀ ਹੈ:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "ਕੋਈ ਕਮਾਂਡ %d ਪਰਭਾਸ਼ਿਤ ਨਹੀ ਕੀਤੀ।\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "ਕੋਈ ਟਰਮੀਨਲ ਕਮਾਂਡ ਪ੍ਰਭਾਸ਼ਿਤ ਨਹੀ ਕੀਤੀ।\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"ਮੈਟਾਸਿਟੀ %s\n"
+"ਹੱਕ ਰਾਖਵੇ ਹਨ(C) ੨੦੦੧-%s ਹਾਵੇਨ ਪੈਨਿੰਗਟੋਨ, ਰੈੱਡ ਹੈੱਟ, ਅਤੇ ਹੋਰ\n"
+"ਇਹ ਮੁਫਤ ਸਾਫਟਵੇਅਰ ਹੈ; ਉਤਾਰਾ ਹਾਲਤਾਂ ਲਈ ਸਰੋਤ ਵੇਖੋ।\n"
+"ਇਸ ਦੀ ਕੋਈ ਗਰੰਟੀ ਨਹੀ; ਇਥੋਂ ਤੱਕ ਕਿ ਖਰੀਦਦਾਰੀ ਜਾਂ ਖਾਸ ਮਕਸਦ ਦੀ ਪੂਰਤੀ ਲਈ ਵੀ।\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "ਸ਼ੈਸ਼ਨ ਪਰਬੰਧਕ ਨਾਲ ਕੁਨੈਕਸ਼ਨ ਅਯੋਗ"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "ਚੱਲ ਰਹੇ ਵਿੰਡੋ ਮੈਨੇਜਰ ਨੂੰ ਮੈਟਾਸਿਟੀ ਨਾਲ ਤਬਦੀਲ"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "ਸ਼ੈਸ਼ਨ ਪਰਬੰਧਨ ID ਦਿਓ"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "ਵਰਤਣ ਲਈ X ਦਰਿਸ਼"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "ਸੰਭਾਲੀ ਫਾਇਲ ਤੋਂ ਸ਼ੈਸ਼ਨ ਸ਼ੁਰੂ"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "ਵਰਜਨ ਛਾਪੋ"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "X ਕਾਲ ਸੈਕਰੋਨਸ ਬਣਾਓ"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "ਕੰਪੋਜਿੰਗ ਚਾਲੂ ਕਰੋ"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "ਕੰਪੋਜ਼ੀਸ਼ਨ ਬੰਦ ਕਰੋ"
+
+#: ../src/core/main.c:322
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "ਪੂਰੀ ਸਕਰੀਨ ਵਿੰਡੋ ਨਾ ਬਣਾਓ, ਜਿਸ ਲਈ ਵੱਧ ਤੋਂ ਵੱਧ ਹੋਵੇ, ਪਰ ਕੋਈ ਸਜਾਵਟ ਨਾ ਹੋਵੇ"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "ਥੀਮ ਡਾਇਰੈਕਟਰੀ ਦੀ ਜਾਂਚ ਅਸਫਲ: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "ਥੀਮ ਨਹੀ ਲੱਭ ਸਕਿਆ! ਯਕੀਨੀ ਬਣਾਓ ਕਿ %s ਮੌਜੂਦ ਹੈ ਅਤੇ ਇਸ ਵਿਚ ਵਰਤਣ ਵਾਲੇ ਥੀਮ ਹਨ।\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "ਮੁੜ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਅਸਫਲ: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "ਜੀ-ਕਾਨਫ ਸਵਿੱਚ \"%s\" ਨੂੰ ਇੱਕ ਅਯੋਗ ਕੀਮਤ ਦਿੱਤੀ ਗਈ ਹੈ\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "ਜੀ-ਕਾਨਫ ਸੰਭਾਲੀ %d ਸਵਿੱਚ %s ਵਿੱਚ ਨਿਸਚਿਤ ਸੀਮਾਂਵਾਂ %d ਤੋਂ %d ਬਾਹਰ ਹੈ\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "ਜੀ-ਕਾਨਫ ਸਵਿੱਚ \"%s\" ਨੂੰ ਇੱਕ ਅਯੋਗ ਕਿਸਮ ਦਿੱਤੀ ਗਈ ਹੈ\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr "ਭੰਗ ਕਾਰਜ ਵਾਸਤੇ ਕੰਮ ਘੇਰਾ ਅਯੋਗ ਕੀਤਾ ਹੈ। ਕੁਝ ਕਾਰਜ ਚੰਗੀ ਤਰਾਂ ਕੰਮ ਨਹੀਂ ਕਰਦੇ।\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "ਜੀ-ਕਾਨਫ ਸਵਿੱਚ \"%s\" ਤੋਂ ਅੱਖਰ ਵੇਰਵਾ \"%s\" ਨੂੰ ਪਾਰਸ ਨਹੀਂ ਕਰ ਸਕਿਆ\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "ਸੰਰਚਨਾ ਡਾਟਾਬੇਸ ਵਿੱਚ ਲੱਭੀ ਹੋਈ \"%s\" ਮਾਊਸ ਬਟਨ ਸੋਧਕ ਲਈ ਯੋਗ ਕੀਮਤ ਨਹੀਂ ਹੈ\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "ਵਰਕਸਪੇਸਾਂ ਦੀ ਗਿਣਤੀ %d ਸੈੱਟ ਕਰਨ ਨਾਲ ਗਲਤੀ: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "ਵਰਕਸਪੇਸ %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "ਸੰਰਚਨਾ ਡਾਟਾਬੇਸ ਵਿੱਚ ਲੱਭੀ ਹੋਈ \"%s\" ਸਵਿੱਚ-ਬਾਈਡਿੰਗ \"%s\" ਲਈ ਯੋਗ ਕੀਮਤ ਨਹੀਂ ਹੈ\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "ਵਰਕਸਪੇਸ %d ਦਾ ਨਾਂ \"%s\" ਸੈੱਟ ਕਰਨ ਵਿੱਚ ਗਲਤੀ:%s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "ਕੰਪੋਜ਼ਟਰ ਹਾਲਤ ਸੈੱਟ ਕਰਨ ਵਿੱਚ ਗਲਤੀ:%s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "ਸਕਰੀਨ %d ਲਈ ਡਿਸਪਲੇਅ '%s' ਅਯੋਗ ਹੈ\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"ਸਕਰੀਨ %d ਉੱਤੇ ਡਿਸਪਲੇਅ \"%s\" ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੈ, ਇਸ ਨੂੰ ਤਬਦੀਲ ਕਰਨ ਦੀ ਚੋਣ --replace "
+"ਮੌਜੂਦਾ ਵਿੰਡੋ ਮੈਨੇਜਰ ਵਰਤੋਂ।\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "%d ਸਕਰੀਨ ਉੱਤੇ ਡਿਸਪਲੇਅ \"%s\" ਉੱਤੇ ਵਿੰਡੋ ਮੈਨੇਜਰ ਚੋਣ ਉਪਲੱਬਧ ਨਹੀਂ ਹੋ ਸਕੀ\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "ਸਕਰੀਨ %d ਉੱਤੇ ਡਿਸਪਲੇਅ \"%s\" ਉੱਤੇ ਕੋਲ ਪਹਿਲਾਂ ਹੀ ਵਿੰਡੋ ਮੈਨੇਜਰ ਹੈ\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "ਸਕਰੀਨ %d ਉੱਤੇ ਡਿਸਪਲੇਅ \"%s\" ਰੀਲਿਜ਼ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"ਫਾਰਮੈਟ \"<Control>a\" ਜਾਂ \"<Shift><Alt>F1\" ਵਾਂਗ ਜਾਪਦਾ ਹੈ।\n"
+"\n"
+"ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ "
+"ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ "
+"ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"ਫਾਰਮੈਟ \"<Control>a\" ਜਾਂ \"<Shift><Alt>F1\" ਵਾਂਗ ਜਾਪਦਾ ਹੈ।\n"
+"\n"
+"ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ "
+"ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ "
+"ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "'%s' ਡਾਇਰੈਕਟਰੀ ਬਣਾਈ ਨਹੀਂ ਜਾ ਸਕੀ:%s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "ਲਿਖਣ ਲਈ ਸ਼ੈਸ਼ਨ ਫਾਇਲ '%s' ਖੋਲ੍ਹੀ ਨਹੀਂ ਜਾ ਸਕੀ: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "ਸ਼ੈਸ਼ਨ ਫਾਇਲ '%s' ਲਿਖਣ ਦੀ ਗਲਤੀ:%s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "ਸ਼ੈਸ਼ਨ ਫਾਇਲ '%s' ਖੋਲ੍ਹਣ ਦੀ ਗਲਤੀ: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "ਸੰਭਾਲੀ ਸ਼ੈਸ਼ਨ ਫਾਇਲ %s ਨੂੰ ਪੜ੍ਹਨ ਲਈ ਫੇਲ੍ਹ:%s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "ਸੰਭਾਲੀ ਸ਼ੈਸ਼ਨ ਫਾਇਲ ਨੂੰ ਪਾਰਸ ਕਰਨ ਲਈ ਅਸਫਲ: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> ਗੁਣ ਦਿਖਿਆ, ਪਰ ਸਾਡੇ ਕੋਲ ਸ਼ੈਸ਼ਨ ID ਪਹਿਲਾਂ ਹੀ ਹੈ"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "<%2$s> ਐਲੀਮੈਂਟ ਉੱਤੇ ਅਣਜਾਣ %1$s ਗੁਣ"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "ਨੈਸਟਡ <window> ਟੈਗ"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "ਅਣਜਾਣ ਐਲੀਮੈਂਟ %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"ਇਹ ਵਿੰਡੋ &quot;ਮੌਜੂਦਾ ਸਥਿਤੀ ਸੰਭਾਲੋ&quot; ਵਾਸਤੇ ਸਹਾਇਕ ਨਹੀਂ ਅਤੇ ਅਗਲੀ ਵਾਰ ਜਦੋਂ ਤੁਸੀਂ ਲਾਗਇਨ "
+"ਕਰੋਗੇ ਤਾਂ ਮੁੜ ਸ਼ੁਰੂ ਕਰਨਾ ਪਵੇਗਾ।"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "ਡੀਬੱਗ ਲਾਗ ਖੋਲ੍ਹਣ ਵਿੱਚ ਅਸਫਲ: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "ਲਾਗ ਫਾਇਲ %s ਨੂੰ fdopen() ਲਈ ਅਸਫਲ: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "ਖੁੱਲ੍ਹੀ ਲਾਗ ਫਾਇਲ %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "ਮੈਟਾਸਿਟੀ, ਵਰਬੋਜ਼ ਮੋਡ ਲਈ ਸਹਾਰੇ ਤੋਂ ਬਿਨਾਂ ਕੰਪਾਇਲ ਹੋਇਆ\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "ਵਿੰਡੋ ਮੈਨੇਜਰ: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "ਵਿੰਡੋ ਮੈਨੇਜਰ ਵਿੱਚ ਬੱਗ: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "ਵਿੰਡੋ ਮੈਨੇਜਰ ਚੇਤਾਵਨੀ: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "ਵਿੰਡੋ ਮੈਨੇਜਰ ਗਲਤੀ: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "ਮੈਟਾਸਿਟੀ"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"ਵਿੰਡੋ %s ਨੇ ਆਪਣੇ ਉੱਤੇ ICCCM ਰਾਹੀਂ ਦੱਸੇ ਅਨੁਸਾਰ WM_CLIENT_LEADER ਵਿੰਡੋ ਦੀ ਬਜਾਏ "
+"SM_CLIENT_ID ਨਿਰਧਾਰਿਤ ਕੀਤਾ ਹੈ।\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"ਵਿੰਡੋ %s ਨੇ MWM ਸੰਕੇਤ ਸੈੱਟ ਵੇਖਾਇਆ ਕਿ ਇਹ ਮੁੜ-ਆਕਾਰ-ਯੋਗ ਨਹੀਂ ਹੈ, ਪਰ ਘੱਟੋ-ਘੱਟ ਆਕਾਰ %d x %d ਅਤੇ "
+"ਵੱਧ ਤੋਂ ਵੱਧ ਆਕਾਰ %d x %d ਸੈੱਟ ਕਰਦਾ ਹੈ, ਪਰ ਇਹ ਦਾ ਜ਼ਿਆਦਾ ਮਤਲਬ ਨਹੀਂ ਹੈ।\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "ਐਪਲੀਕੇਸ਼ਨ ਨੇ ਇੱਕ ਨਕਲੀ _NET_WM_PID %lu ਦਿੱਤਾ ਹੈ\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s ਉੱਤੇ)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (ਸੁਪਰਯੂਜ਼ਰ ਵਾਂਗ)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s ਵਾਂਗ)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (ਹੋਰ ਯੂਜ਼ਰ ਵਜੋਂ)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "ਗਲਤ WM_TRANSIENT_FOR ਵਿੰਡੋ 0x%lx %s ਲਈ ਦਿੱਤਾ ਗਿਆ ਹੈ।\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"0x%lx ਵਿੰਡੋ ਵਿੱਚ %s ਵਿਸ਼ੇਸ਼ਤਾ ਹੈ\n"
+"ਜੋ ਕਿ ਕਿਸਮ %s ਫਾਰਮੈਟ %d ਹੋਣ ਦੀ ਉਮੀਦ ਹੈ\n"
+"ਅਤੇ ਅਸਲ ਵਿੱਚ ਕਿਸਮ %s ਵਿਸ਼ੇਸ਼ਤਾ %d n_ਅੰਗ %d ਹੈ।\n"
+"ਇਹ ਜਿਆਦਾਤਰ ਇੱਕ ਐਪਲੀਕੇਸ਼ਨ ਬੱਗ ਵਰਗਾ ਹੈ ਵਿੰਡੋ ਬੱਗ ਵਰਗਾ ਨਹੀਂ।\n"
+"ਵਿੰਡੋ ਦਾ ਟਾਇਟਲ=\"%s\" ਕਿਸਮ=\"%s\" ਨਾਂ=\"%s\" ਹੈ\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "ਵਿਸ਼ੇਸ਼ਤਾ %s ਵਿੰਡੋ 0x%lx ਵਿੱਚ ਅਯੋਗ UTF-8 ਸ਼ਾਮਿਲ ਹੈ\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "%s ਵਿਸ਼ੇਸ਼ਤਾ 0x%lx ਵਿੰਡੋ ਉੱਤੇ ਵਿੱਚ ਲੜੀ ਵਿਚਲੇ ਮੈਂਬਰ %d ਲਈ ਅਯੋਗ UTF-8 ਸ਼ਾਮਿਲ ਹੈ\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "ਵਰਕਸਪੇਸ 1 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "ਵਰਕਸਪੇਸ 2 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "ਵਰਕਸਪੇਸ 3 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "ਵਰਕਸਪੇਸ 4 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "ਵਰਕਸਪੇਸ 5 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "ਵਰਕਸਪੇਸ 6 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "ਵਰਕਸਪੇਸ 7 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "ਵਰਕਸਪੇਸ 8 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "ਵਰਕਸਪੇਸ 9 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "ਵਰਕਸਪੇਸ 10 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "ਵਰਕਸਪੇਸ 11 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "ਵਰਕਸਪੇਸ 12 ਵਿੱਚ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "ਵਰਕਸਪੇਸ ਨੂੰ ਮੌਜੂਦਾ ਵਰਕਸਪੇਸ ਦੇ ਖੱਬੇ ਵਰਕਸਪੇਸ ਵਿੱਚ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "ਵਰਕਸਪੇਸ ਨੂੰ ਮੌਜੂਦਾ ਵਰਕਸਪੇਸ ਦੇ ਸੱਜੇ ਵਰਕਸਪੇਸ ਵਿੱਚ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "ਵਰਕਸਪੇਸ ਨੂੰ ਮੌਜੂਦਾ ਵਰਕਸਪੇਸ ਦੇ ਇਸ ਤੋਂ ਉੱਪਰਲੇ ਵਰਕਸਪੇਸ ਵਿੱਚ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "ਵਰਕਸਪੇਸ ਨੂੰ ਮੌਜੂਦਾ ਵਰਕਸਪੇਸ ਦੇ ਇਸ ਤੋਂ ਹੇਠਲੇ ਵਰਕਸਪੇਸ ਵਿੱਚ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "ਇੱਕ ਕਾਰਜ ਦੀ ਵਿੰਡੋ ਵਿੱਚ ਜਾਣ ਸਮੇਂ ਪੋਪਅੱਪ ਵਿੰਡੋ ਦੀ ਵਰਤੋਂ ਕਰੋ"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "ਇੱਕ ਕਾਰਜ ਦੀਆਂ ਵਿੰਡੋ ਵਿੱਚ ਪਿੱਛੇ ਵੱਲ ਭੇਜਣ ਸਮੇਂ ਪੋਪਅੱਪ ਨਾਲ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "ਵਿੰਡੋ ਵਿੱਚ ਭੇਜਣ ਸਮੇਂ ਪੋਪਅੱਪ ਨਾਲ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "ਵਿੰਡੋ ਵਿਚ ਪਿੱਛੇ ਭੇਜਣ ਦੌਰਾਨ ਪੋਪਅੱਪ ਵਿੰਡੋ ਦੀ ਵਰਤੋਂ ਕਰੋ"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "ਪੈਨਲ ਅਤੇ ਡੈਸਕਟਾਪ ਵਿੱਚ ਭੇਜਣ ਲਈ ਪੋਪਅੱਪ ਵਿੰਡੋ ਦੀ ਵਰਤੋਂ ਕਰੋ"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "ਪੈਨਲ ਅਤੇ ਡੈਸਕਟਾਪ ਵਿੱਚੋਂ ਪਿੱਛੇ ਜਾਣ ਲਈ ਪੋਪਅੱਪ ਵਿੰਡੋ ਦੀ ਵਰਤੋਂ ਕਰੋ"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "ਇੱਕ ਐਪਲੀਕੇਸ਼ਨ ਦੀਆਂ ਵਿੰਡੋ ਵਿੱਚ ਤੁਰੰਤ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "ਇੱਕ ਐਪਲੀਕੇਸ਼ਨ ਦੇ ਵਿੰਡੋ ਵਿੱਚ ਤੁਰੰਤ ਪਿੱਛੇ ਵੱਲ ਨੂੰ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "ਵਿੰਡੋ ਵਿਚ ਫੁਰਤੀ ਨਾਲ ਲੈ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "ਵਿੰਡੋ ਵਿਚਕਾਰ ਫੁਰਤੀ ਨਾਲ ਪਿੱਛੇ ਵੱਲ ਨੂੰ ਲੈ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "ਪੈਨਲ ਅਤੇ ਡੈਸਕਟਾਪ 'ਚ ਤੁਰੰਤ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "ਪੈਨਲ ਅਤੇ ਵਿੰਡੋ ਵਿਚਕਾਰ ਤੁਰੰਤ ਪਿੱਛੇ ਵੱਲ ਨੂੰ ਜਾਓ"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "ਸਭ ਸਧਾਰਨ ਵਿੰਡੋ ਓਹਲੇ ਅਤੇ ਡੈਸਕਟਾਪ ਫੋਕਸ ਕਰੋ"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "ਪੈਨਲ ਦਾ ਮੁੱਖ ਮੇਨੂ ਵਿਖੋ"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "ਪੈਨਲ ਵਿਚ \"ਐਪਲੀਕੇਸ਼ਨ ਚਲਾਓ\" ਡਾਈਲਾਗ ਵੇਖੋ"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "ਇੱਕ ਸਕਰੀਨ-ਸ਼ਾਂਟ ਲਵੋ"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "ਵਿੰਡੋ ਦਾ ਸਕਰੀਨ-ਸ਼ਾਟ ਲਵੋ"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "ਟਰਮੀਨਲ ਚਲਾਓ"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "ਐਕਟਿਵ ਵਿੰਡੋ ਮੇਨੂ"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "ਪੂਰੀ ਸਕਰੀਨ ਕਰੋ"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "ਅਧਿਕਤਮ ਸਥਿਤੀ ਕਰੋ"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "ਬਦਲੋ ਕਿ ਕੀ ਵਿੰਡੋ ਹਮੇਸ਼ਾ ਦੂਜਿਆਂ ਵਿੰਡੋਜ਼ ਉੱਤੇ ਵੇਖਾਈ ਦੇਵੇ"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "ਵਿੰਡੋ ਅਧਿਕਤਮ"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "ਵਿੰਡੋ ਮੁੜ-ਸਟੋਰ"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "ਰੰਗਤ ਸਥਿਤੀ ਕਰੋ"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "ਵਿੰਡੋ ਅਲਪੀਕਰਨ"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "ਵਿੰਡੋ ਬੰਦ ਕਰੋ"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "ਵਿੰਡੋ ਹਿਲਾਓ"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "ਵਿੰਡੋ ਮੁੜ-ਅਕਾਰ"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "ਬਦਲੋ ਕਿ ਕੀ ਵਿੰਡੋ ਸਭ ਵਰਕਸਪੇਸਾਂ ਵਿੱਚ ਹੋਵੇ ਜਾਂ ਇੱਕ ਵਿੱਚ"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 1 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 2 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 3 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 4 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 5 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 6 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 7 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 8 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 9 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 10 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 11 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 12 ਵਿੱਚ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਇੱਕ ਵਰਕਸਪੇਸ ਖੱਬੇ ਵੱਲ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਇੱਕ ਵਰਕਸਪੇਸ ਸੱਜੇ ਵੱਲ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਇੱਕ ਵਰਕਸਪੇਸ ਉੱਤੇ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਇੱਕ ਵਰਕਸਪੇਸ ਹੇਠਾਂ ਲਿਜਾਓ"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "ਵਿੰਡੋ ਉਭਾਰੋ, ਜੇ ਹੋਰ ਵਿੰਡੋ ਨਾਲ ਢੱਕੀ ਹੈ, ਨਹੀਂ ਤਾਂ ਹੇਠਾਂ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "ਹੋਰ ਵਿੰਡੋ ਤੋਂ ਉੱਪਰਲੀ ਵਿੰਡੋ ਉਠਾਓ"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "ਹੋਰ ਵਿੰਡੋ ਹੇਠਾਂ ਥੱਲੇ ਵਾਲੀ ਵਿੰਡੋ"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "ਵਿੰਡੋ ਲੰਬਕਾਰੀ ਅਧਿਕਤਮ"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "ਵਿੰਡੋ ਖਿਤਿਜੀ ਅਧਿਕਤਮ"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "ਵਿੰਡੋ ਉੱਤਰੀ-ਪੱਛਮੀ (ਉੱਤੇ-ਖੱਬੇ) ਕੋਨੇ 'ਚ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "ਵਿੰਡੋ ਉੱਤਰੀ-ਪੂਰਬੀ (ਉੱਤੇ ਸੱਜੇ) ਕੋਨੇ 'ਚ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "ਵਿੰਡੋ ਦੱਖਣੀ-ਪੱਛਮੀ (ਹੇਠਾਂ ਖੱਬੇ) ਕੋਨੇ 'ਚ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "ਵਿੰਡੋ ਦੱਖਣੀ-ਪੂਰਬੀ (ਹੇਠਾਂ ਸੱਜੇ) ਕੋਨੇ 'ਚ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਸਕਰੀਨ ਦੇ ਉੱਤਰੀ ਪਾਸੇ (ਉੱਤੇ) ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਸਕਰੀਨ ਦੇ ਦੱਖਣੀ (ਹੇਠਾਂ) ਪਾਸੇ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਸਕਰੀਨ ਦੇ ਪੂਰਬੀ (ਸੱਜੇ) ਪਾਸੇ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਸਕਰੀਨ ਦੇ ਪੱਛਮੀ (ਖੱਬੇ) ਪਾਸੇ ਭੇਜੋ"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਸਕਰੀਨ ਦੇ ਸੈਂਟਰ ਵਿੱਚ ਭੇਜੋ"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(ਲਾਗੂ ਨਹੀ ਕੀਤਾ) ਸੰਚਾਲਨ ਕਾਰਜ ਦੇ ਵਿਹਾਰ ਨਾਲ ਕੰਮ ਕਰਦਾ ਹੈ ਨਾ ਕਿ ਵਿੰਡੋ ਦੇ"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"ਫੋਂਟ ਵੇਰਵਾ ਸਤਰ ਵਿੰਡੋ ਦੀ ਟਾਇਟਲ-ਬਾਰ ਵਾਸਤੇ ਫੋਂਟ ਦਰਸਾਉਂਦੀ ਹੈ। ਵੇਰਵੇ ਵਿਚਲਾ ਆਕਾਰ ਤਾਂ ਹੀ ਅਸਰ "
+"ਕਰੇਗਾ ਜੇ ਕਿਸੇ ਵੀ ਤਰਾਂ titlebar_font_size ਚੋਣ 0 ਕੀਤੀ ਹੈ। ਇਹ ਚੋਣ ਅਯੋਗ ਵੀ ਹੈ ਜੇ "
+"titlebar_uses_desktop_font ਚੋਣ ਨੂੰ ਯੋਗ ਹੋਈ ਵਰਤਦਾ ਹੈ।"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "ਟਾਇਟਲ-ਬਾਰ ਉੱਤੇ ਕਿਰਿਆ ਦੋ-ਵਾਰ ਦਬਾਉ"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "ਟਾਇਟਲ ਬਾਰ ਉੱਤੇ ਮੱਧ-ਕਲਿੱਕ ਨਾਲ ਐਕਸ਼ਨ"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "ਟਾਇਟਲ ਬਾਰ ਉੱਤੇ ਸੱਜਾ-ਕਲਿੱਕ ਨਾਲ ਐਕਸ਼ਨ"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "ਟਾਇਟਲ-ਬਾਰ ਉੱਤੇ ਬਟਨਾਂ ਦੀ ਤਰਤੀਬ"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"ਟਾਇਟਲ-ਬਾਰ ਉੱਤੇ ਬਟਨਾਂ ਦਾ ਪਰਬੰਧ। ਕੀਮਤ, ਸਤਰ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ \"menu:minimize,"
+"maximize,spacer,close(ਮੇਨੂ:ਛੋਟਾ,ਵੱਡਾ ਬੰਦ)\"; ਕੌਲਨ ਵਿੰਡੋ ਦੇ ਖੱਬੇ ਖੂੰਜੇ ਨੂੰ ਸੱਜੇ ਤੋਂ ਵੱਖ ਕਰਦਾ ਹੈ,ਅਤੇ "
+"ਬਟਨ ਨਾਂ ਕਾਮੇ ਨਾਲ ਵੱਖ ਹਨ। ਨਕਲੀ ਬਟਨਾਂ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ। ਅਣਜਾਣ ਬਟਨ ਅਣਡਿੱਠ ਕੀਤੇ ਜਾਣਗੇ ਤਾਂ ਕਿ "
+"ਬਟਨ, ਮੈਟਾਸਿਟੀ ਦੇ ਪੁਰਾਣੇਵਰਜਨ ਨੂੰ ਤੋੜੇ ਬਿਨਾਂ ਨਵੇਂ ਵਰਜਨ ਵਿੱਚ ਜੋੜੇ ਜਾ ਸਕਣ।"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "ਫੋਕਸ ਹੋਈ ਵਿੰਡੋ ਆਟਮੈਟਿਕ ਉਭਾਰੋ"
+
+#: ../src/marco.schemas.in.in.h:9
+#| msgid ""
+#| "Clicking a window while holding down this modifier key will move the "
+#| "window (left click), resize the window (middle click), or show the window "
+#| "menu (right click). The left and right operations may be swapped using "
+#| "the \"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" "
+#| "or \"&lt;Super&gt;\" for example."
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"ਇਸ ਸੋਧਕ ਸਵਿੱਚ ਨੂੰ ਦਬਾ ਕੇ ਵਿੰਡੋ ਉੱਤੇ ਦਬਾਉ ਨਾਲ ਵਿੰਡੋ ਹਿੱਲੇਗੀ (ਖੱਬਾ ਦਬਾਉਣ ਨਾਲ), ਵਿੰਡੋ ਨੂੰ ਮੁੜ ਆਕਾਰ "
+"ਦਿਓ (ਵਿਚਕਾਰਲਾ ਦਬਾਉਣ ਨਾਲ), ਜਾਂ ਵਿੰਡੋ ਮੇਨੂ ਵਿਖਾਓ (ਸੱਜਾ ਦਬਾਉਣ ਨਾਲ)। ਮੱਧ ਅਤੇ ਸੱਜਾ ਕਲਿੱਕ "
+"ਓਪਰੇਸ਼ਨ \"resize_with_right_button\" ਨਾਲ ਆਪਸ ਵਿੱਚ ਬਦਲੇ ਜਾ ਸਕਦੇ ਹਨ। ਮੋਡੀਫਾਇਰ "
+"ਉਦਾਹਰਨ ਵਜੋਂ ਇਸ ਤਰਾਂ ਦਰਸਾਇਆ ਗਿਆ \"&lt;Alt&gt;\" ਜਾਂ \"&lt;Super&gt;\""
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "ਸਵਿੱਚ ਸੰਬੰਧਾਂ ਦੇ ਉੱਤਰ ਵਿਚ ਚੱਲਣ ਵਾਲੀ ਕਮਾਂਡ"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "ਕੰਪੋਜਿੰਗ ਮੈਨੇਜਰ"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "ਕੰਟਰੋਲ ਕਿ ਕਿਵੇਂ ਨਵੀਂ ਵਿੰਡੋ ਫੋਕਸ ਹੋਣ"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "ਮੌਜੂਦਾ ਥੀਮ"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "ਸਵੈ ਉਠਾਊ ਚੋਣ ਲਈ ਮਿਲੀ ਸਕਿੰਟਾਂ ਵਿੱਚ ਵਕਫਾ"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "ਜਾਂਚ ਕਰੋ ਕਿ ਕੀ ਮੈਟਾਸਿਟੀ ਇੱਕ ਕੰਪੋਜਟਿੰਗ ਮੈਨੇਜਰ ਹੈ।"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"ਵੇਖੋ ਕਿ ਕੀ ਕਾਰਜ ਜਾਂ ਸਿਸਟਮ ਆਵਾਜ਼ ਵਾਲੀਆਂ 'ਬੀਪਸ' ਪੈਦਾ ਕਰਦਾ ਹੈ; ਜੋ 'ਦਿੱਖ ਘੰਟੀ' ਦੇ ਸੰਗ ਸ਼ਾਂਤ "
+"'ਬੀਪਸ' ਨੂੰ ਚਲਾਏ।"
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "ਨਾ ਮੌਜੂਦ ਗੁਣਾਂ ਨੂੰ ਅਯੋਗ ਕਰੋ ਜਿਹੜੇ ਪੁਰਾਣੇ ਜਾਂ ਤੋੜੇ ਕਾਰਜਾਂ ਰਾਹੀਂ ਲੋੜੀਂਦੇ ਹਨ"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "ਦਿੱਖ ਘੰਟੀ ਯੋਗ ਕਰੋ"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"ਜੇ ਇਹ ਸਹੀਂ ਹੋਵੇ ਤਾਂ ਫੋਕਸ ਢੰਗ ਜਾਂ ਤਾਂ \"ਸਲੋਪੀ\" ਜਾਂ \"ਮਾਊਂਸ\" ਹੁੰਦਾ ਹੈ ਤਾਂ ਫੋਕਸ ਹੋਇਆ ਵਿੰਡੋ "
+"auto_raise_delay ਕੁੰਜੀ ਵਲੋਂ ਦਿੱਤੇ ਇੱਕ ਅੰਤਰਾਲ ਬਾਅਦ ਆਟੋਮੈਟਿਕ ਹੀ ਉਭਾਰਿਆ ਜਾਵੇਗਾ। ਇਹ ਉਭਾਰਨ "
+"ਲਈ ਵਿੰਡੋ ਉੱਤੇ ਨਿਰਭਰ ਨਹੀਂ ਹੈ ਅਤੇ ਨਾ ਹੀ ਚੁੱਕਣ ਅਤੇ ਸੁੱਟਣ ਸਮੇਂ ਇੱਕ ਵਿੰਡੋ ਉੱਤੇ ਵੀ ਨਹੀਂ।"
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr "ਜੇ ਯੋਗ ਹੈ, ਟਾਇਟਲ-ਬਾਰ ਫੋਟ ਚੋਣ ਨੂੰ ਅਣਡਿੱਠ ਕਰੋ, ਅਤੇ ਵਿੰਡੋ ਟਾਇਟਲ ਵਾਸਤੇ ਸਟੈਂਡਰਡ ਕਾਰਜ ਅੱਖਰ ਵਰਤੋਂ।"
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"ਜੇ ਯੋਗ ਹੈ, ਮੈਟਾਸਿਟੀ ਯੂਜ਼ਰ ਨੂੰ, ਵਾਇਰ ਫਰੇਮ ਵਰਤ ਕੇ, ਐਨੀਮੇਸ਼ਨ ਤੋਂ ਹਟ ਕੇ, ਜਾਂ ਹੋਰ ਤਰਾਂ ਘੱਟ ਫੀਡਬੈਕ "
+"ਦੇਵੇਗੀ। ਇਹ ਬਹੁਤੇ ਯੂਜ਼ਰਾਂ ਦੀ ਵਰਤੋਂ ਵਿੱਚ ਮਹੱਤਵਪੂਰਨ ਕਮੀ ਹੈ, ਪਰ ਮੂਲ ਕਾਰਜਾਂ ਜਾਂ ਟਰਮੀਨਲ ਸਰਵਰਾਂ ਨੂੰ ਕੰਮ "
+"ਕਰਨ ਦੇਵੇਗੀ। ਪਰ ਵਾਇਰਫਰੇਮ ਫੀਚਰ ਆਯੋਗ ਹੋਵੇਗਾ, ਜਦੋਂ ਸਹੂਲਤਾਂ ਨੂੰ ਚਾਲੂ ਕੀਤਾ ਜਾਵੇਗਾ।"
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"ਜੇ ਯੋਗ ਹੈ, ਮੈਟਾਸਿਟੀ ਕਾਰਜਾਂ ਦੇ ਰੂਪ 'ਚ ਕੰਮ ਕਰੇਗਾ ਨਾ ਕਿ ਵਿੰਡੋ ਦੇ। ਵਿਚਾਰ ਕੁਝ ਵੱਖਰਾ ਹੈ, ਪਰ "
+"ਸਾਧਾਰਨ ਤੌਰ ਤੇ ਕਾਰਜ ਤੇ ਆਧਾਰਿਤ ਬਣਾਵਟ ਮੈਕ(Mac) ਦੀ ਤਰਾਂ ਜਿਆਦਾ ਹੈ ਅਤੇ ਵਿੰਡੋ (Windows) ਵਾਂਗ "
+"ਘੱਟ। ਜਦੋਂ ਤੁਸੀਂ ਵਿੰਡੋ ਨੂੰ ਕਾਰਜ ਆਧਾਰਿਤ ਰੂਪ ਵਿੱਚ ਫੋਕਸ ਕਰਦੇ ਹੋ, ਕਾਰਜ ਵਿਚਲੇ ਸਭ ਵਿੰਡੋ ਕਾਰਜ ਆਧਾਰਿਤ "
+"ਰੂਪ ਵਿੱਚ ਖੁੱਲਣਗੀਆਂ। ਨਾਲ ਹੀ ਫੋਕਸ ਕਲਿੱਕ ਦੂਜੇ ਕਾਰਜਾਂ ਵਿਚਲੇ ਝਰੋਖਿਆਂ ਵਿੱਚ ਨਹੀਂ ਜਾਂਦੇ। ਕਾਰਜ ਆਧਾਰਿਤ "
+"ਢੰਗ ਇਸ ਸਮੇਂ ਵੀ ਲਾਗੂ ਨਹੀਂ ਹੈ।"
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "ਜੇ ਯੋਗ ਹੈ, ਘੱਟ ਸਰੋਤ ਉਪਯੋਗ ਲਈ ਸਹੂਲਤ ਪੇਸ਼ਾ ਖਤਮ ਕਰੋ"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "ਸੋਧੀਆਂ ਵਿੰਡੋ ਦੀਆਂ ਕਲਿੱਕ ਕਾਰਵਾਈਆਂ ਲਈ ਵਰਤਣ ਲਈ ਮੋਡੀਫਾਇਰ"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "ਵਰਕਸਪੇਸ ਦਾ ਨਾਂ"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "ਵਰਕਸਪੇਸ ਦੀ ਗਿਣਤੀ"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"ਵਰਕਸਪੇਸ ਦੀ ਗਿਣਤੀ। ਜ਼ੀਰੋ ਤੋਂ ਵੱਧ ਹੋਣੀ ਜਰੂਰੀ ਹੈ,ਅਤੇ ਵੱਧ ਤੋਂ ਵੱਧ ਨਿਯਮਤ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ ਤਾਂ ਅਸਧਾਰਨ "
+"ਵਰਕਸਪੇਸ ਪੁੱਛ ਕੇ ਤੁਹਾਡੇ ਡੈਸਕਟਾਪ ਨੂੰ ਖਤਮ ਹੋਣ ਦੀ ਘਟਨਾ ਤੋਂ ਬਚਾਇਆ ਜਾ ਸਕੇ।"
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "ਇੱਕ ਪ੍ਰਭਾਸ਼ਿਤ ਕਮਾਂਡ ਚਲਾਓ"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"ਜੇ ਸਹੀਂ ਕੀਤਾ ਤਾਂ ਸੱਜੇ ਬਟਨ ਨਾਲ ਮੁੜ-ਸਾਈਜ਼ ਕੀਤਾ ਜਾਵੇਗਾ ਅਤੇ ਮੱਧ ਕਲਿੱਕ ਨਾਲ ਮੇਨੂ ਵੇਖਾਇਆ ਜਾਵੇਗਾ, "
+"ਜਦੋਂ ਕੀ \"mouse_button_modifier\" ਵਿੱਚ ਦਿੱਤੀ ਕੁੰਜੀ ਹੋਲਡ ਕੀਤੀ ਜਾਵੇਗੀ; ਇਸ ਨੂੰ ਗਲਤ ਰੱਖਣ ਦਾ "
+"ਅਰਥ ਹੈ ਕਿ ਇਸ ਦੇ ਉਲਟ ਕੰਮ ਕਰਨਾ"
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"ਇਹ ਚੋਣ ਗਲਤ ਕਰਨ ਨਾਲ, ਬੱਡੀ ਰਵੱਈਆ ਆ ਸਕਦਾ ਹੈ ਤਾਂ ਯੂਜ਼ਰਾਂ ਨੂੰ ਇਹ ਠੀਕ ਰੱਖਣ ਦਾ ਸੁਝਾਅ ਹੀ ਦਿੱਤਾ "
+"ਗਿਆ ਹੈ। ਕੋਈ ਫੰਕਸ਼ਨ (ਜਿਵੇਂ ਕਿ ਕਲਾਈਟ ਖੇਤਰ ਵਿੱਚ ਕਲਿੱਕ ਕਰਨਾ, ਵਿੰਡੋ ਹਿਲਾਉਣੀ ਜਾਂ ਮੁੜ-ਆਕਾਰ ਕਰਨਾ) "
+"ਸਾਇਡ-ਪਰਭਾਵ ਦੇ ਅਧੀਨ ਵਿੰਡੋ ਉਭਾਰ ਦਿੰਦੇ ਹਨ। ਇਹ ਚੋਣ ਗਲਤ ਕਰਨ ਨਾਲ, ਹੋਰ ਯੂਜ਼ਰ ਐਕਸ਼ਨ ਤੋਂ ਉਭਾਰਨ ਨੂੰ "
+"ਡਿ-ਕਪਲ ਕਰ ਦਿੰਦੀ ਹੈ। http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6 ਵੇਖੋ। "
+"ਭਾਵੇਂ ਇਹ ਚੋਣ ਗਲਤ ਹੈ, ਵਿੰਡੋ ਨੂੰ ਵਿੰਡੋ ਉੱਤੇ ਕਿਤੇ ਵੀ alt-left-click ਕਰਨ, ਇੱਕ ਆਮ ਵਿੰਡੋ ਸਜਾਵਟ, ਜਾਂ "
+"ਪੇਜ਼ਰ ਤੋਂ ਖਾਸ ਸੁਨੇਹਿਆਂ ਨਾਲ ਨਾਲ ਉਭਾਰਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ ਟਾਸਕ-ਲਿਸਟ ਐਪਲਿਟ ਤੋਂ ਐਕਟੀਵੇਸ਼ਨ "
+"ਮੰਗ। ਇਹ ਚੋਣ ਇਸ ਸਮੇਂ ਕਲਿੱਕ-ਅਤੇ-ਫੋਕਸ ਮੋਡ ਰਾਹੀਂ ਆਯੋਗ ਹੈ। ਯਾਦ ਰੱਖੋ ਕਿ ਵਿੰਡੋ ਨੂੰ ਉਭਾਰਨ ਦੇ ਢੰਗ ਦੀ "
+"ਲਿਸਟ, ਜਦੋਂ ਕਿ raise_on_click ਗਲਤ ਹੋਵੇ, ਐਪਲੀਕੇਸ਼ਨ ਤੋਂ ਵਿੰਡੋ ਉਭਾਰਨ ਦੀ ਮੰਗ ਵਿੱਚ ਸ਼ਾਮਲ ਨਹੀਂ ਹੈ, "
+"ਜਿਵੇਂ ਕਿ ਉਸ ਕਿਸਮ ਦੀਆਂ ਮੰਗ ਨੂੰ ਕਾਰਨ ਬਿਨਾਂ ਹੀ ਅਣਡਿੱਠਾ ਕਰ ਦਿੱਤਾ ਜਾਵੇਗਾ। ਜੇ ਤੁਸੀਂ ਕਾਰਜ ਖੋਜੀ ਹੋ "
+"ਅਤੇ ਯੂਜ਼ਰ ਸ਼ਿਕਾਇਤ ਹੈ ਕਿ ਇਹ ਸੈਟਿੰਗ ਆਯੋਗ ਕਰਨ ਨਾਲ ਤੁਹਾਡੀ ਐਪਲੀਕੇਸ਼ਨ ਕੰਮ ਨਹੀਂ ਕਰਦੀ ਹੈ ਤਾਂ ਇਹ "
+"ਉਨ੍ਹਾਂ ਦੀ ਗਲਤੀ ਹੈ, ਕਿਉਂਕਿ ਉਨ੍ਹਾਂ ਦਾ ਵਿੰਡੋ ਮੈਨੇਜਰ ਖਰਾਬ ਹੈ ਅਤੇ ਉਨ੍ਹਾਂ ਨੂੰ ਇਹ ਚੋਣ ਬਦਲ ਕੇ ਠੀਕ ਕਰਨੀ "
+"ਹੋਵੇਗੀ ਜਾਂ ਉਨ੍ਹਾਂ ਨੂੰ ਬੱਗ ਦੇ ਦਿਓ।"
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"ਕੁਝ ਕਾਰਜਾਂ ਕੁਝ ਕਾਰਨਾਂ ਕਰਕੇ ਹਦਾਇਤਾਂ ਨੂੰ ਅਣਡਿੱਠਾ ਕਰ ਦਿੰਦੀਆਂ ਹਨ, ਜਿੰਨਾਂ 'ਚ ਵਿੰਡੋ ਮੈਨੇਜਰ ਗਲਤ "
+"ਫੀਚਰਾਂ ਹੁੰਦੇ ਹਨ। ਇਹ ਚੋਣ ਮੇਟਾਸਿਟੀ ਨੂੰ ਗਲਤ ਢੰਗ ਨੂੰ ਸਹੀਂ ਕਰਨ ਲਿਆ ਹੈ, ਜਿਸ ਨਾਲ ਯੂਜ਼ਰ ਇੰਟਰਫੇਸ ਲਈ "
+"ਇਕਸਾਰ ਕੰਟਰੋਲ ਰਹਿੰਦਾ ਹੈ, ਜੋ ਕਿ ਗਲਤ ਰਵੱਈਆ ਰੱਖਣ ਵਾਲੇ ਕਾਰਜ ਨੂੰ ਚੱਲਣ ਨਹੀਂ ਦਿੰਦੀ।"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "ਸਿਸਟਮ ਘੰਟੀ ਸੁਣਨਯੋਗ ਹੈ"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"ਮੈਟਾਸਿਟੀ ਨੂੰ ਦੱਸੋ ਕਿ ਦਰਿਸ਼ੀ ਸੰਕੇਤ ਨੂੰ ਕਿਸ ਤਰਾਂ ਲਾਗੂ ਕਰਨਾ ਹੈ ਤਾਂ ਕਿ ਸਿਸਟਮ ਘੰਟੀ ਜਾਂ ਹੋਰ ਕਾਰਜ "
+"'ਘੰਟੀ' ਸੰਕੇਤਕ ਵੱਜੇ। ਹੁਣ ਇੱਥੇ ਦੋ ਯੋਗ ਕੀਮਤਾਂ ਹਨ, \"ਸਾਰੀ ਸਕਰੀਨ\", ਜੋ ਸਕਰੀਨ ਨੂੰ ਸਫੈਦ-ਕਾਲਾ "
+"ਲਿਸ਼ਕਾਰਾ ਬਣਾਉਂਦਾ ਹੈ, ਅਤੇ \"ਫਰੇਮ_ਲਿਸ਼ਕਾਰਾ\" ਜੋ ਕਾਰਜ ਦੀ ਟਾਇਟਲ-ਬਾਰ ਜਿਹੜੀ ਘੰਟੀ ਸੰਕੇਤ ਭੇਜਦੀ "
+"ਹੈ ਨੂੰ ਲਿਸ਼ਕਣ ਦਿੰਦਾ ਹੈ। ਜੇ ਘੰਟੀ ਭੇਜਣ ਵਾਲਾ ਕਾਰਜ ਅਣਪਛਾਤਾ ਹੋਵੇ (ਜਿਵੇਂ ਕਿ ਮੂਲ \"ਸਿਸਟਮ ਬੀਪ\" "
+"ਹੈ), ਮੌਜੂਦਾ ਫੋਕਸ ਰੱਖੇ ਦੀ ਟਾਇਟਲ-ਬਾਰ ਲਿਸ਼ਕੇਗੀ।"
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N ਸਵਿੱਚਾਂ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਪਰਭਾਸ਼ਿਤ "
+"ਕਰਦੀਆਂ ਹਨ ਜਿਹੜੇ ਕਿ ਉਹਨਾਂ ਕਮਾਂਡਾਂ ਦੇ ਅਨੁਸਾਰੀ ਹਨ। ਚਲਾਓ_ਕਮਾਂਡ_N ਵਾਸਤੇ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਦਬਾਉਣ "
+"ਨਾਲ ਕਮਾਂਡ_N ਚੱਲੇਗੀ।"
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screensho ਸਵਿੱਚ, ਸਵਿੱਚ-ਬਾਈਡਿੰਗ "
+"ਪਰਭਾਸ਼ਿਤ ਕਰਦੀ ਹੈ ਜਿਹਨਾ ਨੇ ਇਸ ਸਥਾਪਨ ਰਾਹੀਂ ਦਰਸਾਈ ਕਮਾਂਡ ਨੂੰ ਬੁਲਾਇਆ।"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot ਸਵਿੱਚ, ਸਵਿੱਚ "
+"ਬੰਧਨ ਪਰਭਾਸ਼ਿਤ ਕਰਦੀ ਹੈ ਜਿਹਨਾ ਨੇ ਇਸ ਸਥਾਪਨ ਰਾਹੀਂ ਦਰਸਾਈ ਕਮਾਂਡ ਨੂੰ ਬੁਲਾਇਆ।"
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜਿਹੜਾ apps/marco/keybinding_command ਵਿੱਚ ਅਨੁਸਾਰੀ ਅੰਕਿਤ ਕਮਾਂਡ "
+"ਚਲਾਉਦਾ ਹੈ ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ "
+"ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ"
+"\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "ਵਰਕਸਪੇਸ ਦਾ ਨਾਂ ਹੈ।"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "ਸਕਰੀਨ-ਸ਼ਾਂਟ ਕਮਾਂਡ"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "ਥੀਮ ਵਿੰਡੋ ਦੇ ਹਾਸ਼ੀਏ, ਟਾਇਟਲ-ਬਾਰ, ਅਤੇ ਸਾਹਮਣੀ ਦਿੱਖ ਨਿਰਧਾਰਿਤ ਕਰਦਾ ਹੈ।"
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr "ਵਿੰਡੋ ਉਠਾਉਣ ਤੋਂ ਪਹਿਲਾਂ ਵਕਫਾ ਜੇ ਸਵੈ-ਉਠਾਊ ਯੋਗ ਕੀਤੀ ਹੈ। ਵਕਫਾ ਸਕਿੰਟ ਦੇ ਹਜਾਰਵੇਂ ਵਿੱਚ ਦਿੱਤਾ ਹੈ।"
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"ਵਿੰਡੋ ਫੋਕਸ ਮੋਡ ਦਰਸਾਉਦਾ ਹੈ ਕਿ ਵਿੰਡੋ ਕਿਵੇਂ ਸਰਗਰਮ ਕਰਨੀਆਂ ਹਨ। ਇਸ ਦੀਆਂ ਤਿੰਨ ਸੰਭਵ ਕੀਮਤਾਂ ਹਨ; "
+"\"ਦਬਾਉ\" ਮਤਲਬ ਵਿੰਡੋ ਉਹਨਾਂ ਨੂੰ ਫੋਕਸ ਕਰਨ ਲਈ ਦਬਾਇਆ ਹੋਇਆ \"ਸਲੋਪੀ\" ਮਤਲਬ ਵਿੰਡੋ ਫੋਕਸ ਹੁੰਦੀਆਂ ਹਨ "
+"ਜਦੋਂ ਮਾਊਸ ਉਹਨਾਂ ਵਿੱਚ ਪਰਵੇਸ਼ ਕਰਦਾ ਹੈ, \"ਮਾਊਸ\" ਮਤਲਬ ਵਿੰਡੋ ਫੋਕਸ ਹੁੰਦੀਆਂ ਹਨ ਜਦੋਂ ਮਾਊਸ ਉਹਨਾਂ ਵਿੱਚ "
+"ਪਰਵੇਸ਼ ਕਰਦਾ ਹੈ ਅਤੇ ਬਿਨ-ਫੋਕਸ ਹੁੰਦੀਆਂ ਹਨ ਜਦੋਂ ਮਾਊਸ ਝਰੋਖਾ ਛੱਡ ਜਾਂਦਾ ਹੈ।"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "ਵਿੰਡੋ ਸਕਰੀਨ-ਸ਼ਾਟ ਕਮਾਂਡ"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ਇਹ ਚੋਣ ਟਾਇਟਲ-ਬਾਰ ਉੱਤੇ ਦੋ ਵਾਰ ਦਬਾਉ ਦਾ ਪ੍ਰਭਾਵ ਨਿਰਧਾਰਿਤ ਕਰਦੀ ਹੈ। ਮੌਜੂਦ ਯੋਗ ਚੋਣਾਂ ਹਨ "
+"'toggle_shade (ਰੰਗਤ_ਬਦਲੋ)', ਜਿਹੜੀ ਵਿੰਡੋ ਨੂੰ ਰੰਗਤ/ਬਿਨਾਂ-ਰੰਗਤ ਕਰਦੀ ਹੈ, ਅਤੇ "
+"'toggle_maximize (ਅਧਿਕਤਮ ਬਦਲੋ)' ਜਿਹੜੀ ਵਿੰਡੋ ਨੂੰ maximize/unmaximize (ਅਧਿਕਤਮ/ਨਾ-"
+"ਅਧਿਕਤਮ) ਕਰਦੀ ਹੈ, 'toggle_maximize_horizontally' ਅਤੇ "
+"'toggle_maximize_vertically' ਜੋ ਵਿੰਡੋ ਨੂੰ ਉਸ ਦਿਸ਼ਾ ਵਿੱਚ ਵੱਧੋ-ਵੱਧ/ਅਣ-ਵੱਧੋ-ਵੱਧ ਕਰਦੀ "
+"ਹੈ,'ਅਪਲੀਕਰਨ', ਜੋ ਕਿ ਵਿੰਢੋ ਨੂੰ ਅਪਲੀਕਰਨ ਕਰਦੀ ਹੈ, ਅਤੇ 'ਕੋਈ ਨਹੀਂ' ਕੁਝ ਨਹੀਂ ਕਰੇਗਾ, 'ਮੇਨੂ' ਵਿੰਡੋ ਮੇਨੂ "
+"ਵੇਖਾਏਗਾ, 'ਸ਼ੇਡ' ਵਿੰਡੋ ਰੋਲ ਕਰੇਗਾ, ਅਤੇ 'ਹੇਠਾਂ' ਵਿੰਡੋ ਨੂੰ ਹੋਰ ਵਿੰਡੋ ਹੇਠ ਭੇਜੇਗਾ।"
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ਇਹ ਚੋਣ ਟਾਇਟਲ-ਬਾਰ ਉੱਤੇ ਮਿਡਲ-ਕਲਿੱਕ ਦਬਾਉ ਦਾ ਪ੍ਰਭਾਵ ਪਛਾਣਦੀ ਹੈ। ਮੌਜੂਦ ਯੋਗ ਚੋਣਾਂ ਹਨ "
+"'toggle_shade (ਰੰਗਤ_ਬਦਲੋ)', ਜਿਹੜੀ ਵਿੰਡੋ ਨੂੰ ਰੰਗਤ/ਬਿਨਾਂ-ਰੰਗਤ ਕਰਦੀ ਹੈ, ਅਤੇ "
+"'toggle_maximize (ਅਧਿਕਤਮ ਬਦਲੋ)' ਜਿਹੜੀ ਵਿੰਡੋ ਨੂੰ maximize/unmaximize (ਅਧਿਕਤਮ/ਨਾ-"
+"ਅਧਿਕਤਮ) ਕਰਦੀ ਹੈ, 'toggle_maximize_horizontally' ਅਤੇ "
+"'toggle_maximize_vertically' ਜੋ ਵਿੰਡੋ ਨੂੰ ਉਸ ਦਿਸ਼ਾ ਵਿੱਚ ਵੱਧੋ-ਵੱਧ/ਅਣ-ਵੱਧੋ-ਵੱਧ ਕਰਦੀ "
+"ਹੈ,'ਅਪਲੀਕਰਨ', ਜੋ ਕਿ ਵਿੰਢੋ ਨੂੰ ਅਪਲੀਕਰਨ ਕਰਦੀ ਹੈ, ਅਤੇ 'ਕੋਈ ਨਹੀਂ' ਕੁਝ ਨਹੀਂ ਕਰੇਗਾ, 'ਮੇਨੂ' ਵਿੰਡੋ ਮੇਨੂ "
+"ਵੇਖਾਏਗਾ, 'ਸ਼ੇਡ' ਵਿੰਡੋ ਰੋਲ ਕਰੇਗਾ, ਅਤੇ 'ਹੇਠਾਂ' ਵਿੰਡੋ ਨੂੰ ਹੋਰ ਵਿੰਡੋ ਹੇਠ ਭੇਜੇਗਾ।"
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ਇਹ ਚੋਣ ਟਾਇਟਲ-ਬਾਰ ਉੱਤੇ ਸੱਜਾ-ਕਲਿੱਕ ਦਬਾਉ ਦਾ ਪ੍ਰਭਾਵ ਪਛਾਣਦੀ ਹੈ। ਮੌਜੂਦ ਯੋਗ ਚੋਣਾਂ ਹਨ "
+"'toggle_shade (ਰੰਗਤ_ਬਦਲੋ)', ਜਿਹੜੀ ਵਿੰਡੋ ਨੂੰ ਰੰਗਤ/ਬਿਨਾਂ-ਰੰਗਤ ਕਰਦੀ ਹੈ, ਅਤੇ "
+"'toggle_maximize (ਅਧਿਕਤਮ ਬਦਲੋ)' ਜਿਹੜੀ ਵਿੰਡੋ ਨੂੰ maximize/unmaximize (ਅਧਿਕਤਮ/ਨਾ-"
+"ਅਧਿਕਤਮ) ਕਰਦੀ ਹੈ, 'toggle_maximize_horizontally' ਅਤੇ "
+"'toggle_maximize_vertically' ਜੋ ਵਿੰਡੋ ਨੂੰ ਉਸ ਦਿਸ਼ਾ ਵਿੱਚ ਵੱਧੋ-ਵੱਧ/ਅਣ-ਵੱਧੋ-ਵੱਧ ਕਰਦੀ "
+"ਹੈ,'ਅਪਲੀਕਰਨ', ਜੋ ਕਿ ਵਿੰਢੋ ਨੂੰ ਅਪਲੀਕਰਨ ਕਰਦੀ ਹੈ, ਅਤੇ 'ਕੋਈ ਨਹੀਂ' ਕੁਝ ਨਹੀਂ ਕਰੇਗਾ, 'ਮੇਨੂ' ਵਿੰਡੋ ਮੇਨੂ "
+"ਵੇਖਾਏਗਾ, 'ਸ਼ੇਡ' ਵਿੰਡੋ ਰੋਲ ਕਰੇਗਾ, ਅਤੇ 'ਹੇਠਾਂ' ਵਿੰਡੋ ਨੂੰ ਹੋਰ ਵਿੰਡੋ ਹੇਠ ਭੇਜੇਗਾ।"
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"ਇਹ ਚੋਣ ਵੱਧ ਕੰਟਰੋਲ ਦਿੰਦੀ ਹੈ ਕਿ ਨਵਾਂ ਬਣਾਈ ਵਿੰਡੋ ਕਿਵੇਂ ਫੋਕਸ ਲਵੇ। ਦੋ ਸੰਭਵ ਮੁੱਲ ਹਨ; \"ਸਮਾਰਟ\" "
+"ਸਧਾਰਨ ਯੂਜ਼ਰ ਫੋਕਸ ਢੰਗ ਲਾਗੂ ਕਰਦਾ ਹੈ ਅਤੇ \"ਸਖਤ\" ਨਤੀਜੇ ਵਜੋਂ ਇੱਕ ਟਰਮੀਨਲ ਤੋਂ ਚਾਲੂ ਹੋਏ ਵਿੰਡੋ ਨੂੰ ਫੋਕਸ "
+"ਨਹੀਂ ਦਿੰਦਾ ਹੈ।"
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"ਦਰਿਸ਼ੀ ਸੰਕੇਤ ਨੂੰ ਯੋਗ ਕਰੋ ਜਦੋਂ ਇੱਕ ਕਾਰਜ ਜਾਂ ਸਿਸਟਮ 'ਘੰਟੀ' ਜਾਂ 'ਬੀਪ' ਦਿੰਦਾ ਹੈ; ਸੁਣਨ ਦੀ ਮੁਸ਼ਕਿਲ ਲਈ "
+"ਯੂਜ਼ਰ ਅਤੇ ਰੌਲੇ-ਰੱਪੇ ਵਾਲੇ ਮਾਹੌਲ ਵਿੱਚ ਵਰਤਣ ਲਈ, ਜਾਂ ਜਦੋਂ 'ਆਵਾਜ਼ੀ ਘੰਟੀ' ਬੰਦ ਹੋਵੇ।"
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "ਵਿੰਡੋ ਟਾਇਟਲਾਂ ਵਿੱਚ ਸਟੈਂਡਰਡ ਫੋਟ ਵਰਤੋਂ"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "ਦਿੱਖ ਘੰਟੀ ਕਿਸਮ"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "ਜਦੋਂ ਵਧਾਇਆ ਜਾਵੇਗਾ ਤਾਂ ਹੋਰ ਯੂਜ਼ਰ ਦਖਲਾਂ ਉੱਤੇ ਗਲਤ ਪਰਭਾਵ ਪਵੇਗਾ"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "ਕੀ ਸੱਜੇ ਬਟਨ ਨਾਲ ਮੁੜ-ਸਾਈਜ਼ ਕਰਨਾ ਹੈ"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "ਵਿੰਡੋ ਫੋਕਸ ਰੂਪ"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "ਝਰੋਖਾ ਟਾਇਟਲ ਫੋਟ"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "ਵਰਤੋਂ: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "ਵਿੰਡੋ ਬੰਦ ਕਰੋ"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "ਵਿੰਡੋ ਮੇਨੂ"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "ਵਿੰਡੋ ਅਲਪੀਕਰਨ ਕਰੋ"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "ਵਿੰਡੋ ਅਧਿਕਤਮ ਕਰੋ"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "ਵਿੰਡੋ ਮੁੜ-ਸਟੋਰ ਕਰੋ"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "ਵਿੰਡੋ ਸਮੇਟੋ"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "ਵਿੰਡੋ ਫੈਲਾਓ"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "ਵਿੰਡੋ ਉੱਤੇ ਰੱਖੋ"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "ਵਿੰਡੋ ਉੱਤੇ ਤੋਂ ਹਟਾਓ"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "ਹਮੇਸ਼ਾ ਉਪਲੱਬਧ ਵਰਕਸਪੇਸ 'ਚ"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "ਵਿੰਡੋ ਨੂੰ ਸਿਰਫ਼ ਇੱਕ ਵਰਕਸਪੇਸ ਉੱਤੇ ਰੱਖੋ"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "ਅਲਪੀਕਰਨ(_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "ਅਧਿਕਤਮ(_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "ਨਾ-ਅਧਿਕਤਮ(_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "ਸਮੇਟੋ(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "ਖੋਲ੍ਹੋ(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "ਏਧਰ-ਓਧਰ(_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "ਮੁੜ-ਅਕਾਰ(_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "ਟਾਇਟਲ ਸਕਰੀਨ ਉੱਤੇ ਭੇਜੋ(_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "ਹਮੇਸ਼ਾ ਸਭ ਤੋਂ ਉੱਤੇ(_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "ਸਿਰਫ਼ ਇਸ ਵਰਕਸਪੇਸ ਵਿੱਚ ਰੱਖੋ(_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "ਸਿਰਫ਼ ਇਸ ਵਰਕਸਪੇਸ ਵਿੱਚ ਰੱਖੋ(_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "ਵਰਕਸਪੇਸ ਵਿੱਚ ਖੱਬੇ ਭੇਜੋ(_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "ਵਰਕਸਪੇਸ ਵਿੱਚ ਸੱਜੇ ਭੇਜੋ(_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "ਵਰਕਸਪੇਸ ਵਿੱਚ ਉੱਤੇ ਲੈ ਜਾਓ(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "ਵਰਕਸਪੇਸ ਵਿੱਚ ਹੇਠਾਂ ਲੈ ਜਾਓ(_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "ਬੰਦ ਕਰੋ(_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "ਵਰਕਸਪੇਸ %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "ਵਰਕਸਪੇਸ 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "ਵਰਕਸਪੇਸ %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "ਹੋਰ ਵਰਕਸਪੇਸ ਉੱਤੇ ਭੇਜੋ(_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "ਮਾਡ2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "ਮਾਡ3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "ਮਾਡ4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "ਮਾਡ5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "ਉੱਤੇ"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "ਹੇਠਾਂ"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "ਖੱਬਾ"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "ਸੱਜਾ"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "ਫਰੇਮ ਅਕਿਰਤੀ \"%s\" ਦਿਸ਼ਾ ਨਹੀਂ ਦਰਸਾਉਦੀ ਹੈ"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "ਫਰੇਮ ਅਕਿਰਤੀ \"%s\" ਹਾਸ਼ੀਏ ਲਈ \"%s\" ਦਿਸ਼ਾ ਨਹੀਂ ਦਰਸਾਉਦੀ ਹੈ"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "ਤਲ ਰੂਪ ਅਨੁਪਾਤ %g ਸ਼ੰਕਾਜਨਕ ਨਹੀਂ ਹੈ"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "ਫਰੇਮ ਅਕਿਰਤੀ ਬਟਨਾਂ ਦਾ ਆਕਾਰ ਨਹੀਂ ਦਰਸਾਉਦੀ"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "ਢਾਲਵੇ ਲਈ ਘੱਟ ਤੋਂ ਘੱਟ ਦੋ ਰੰਗ ਚਾਹੀਦੇ ਹਨ"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK ਰੰਗ ਦੀ ਨਿਰਧਾਰਨਾ ਦੀ ਹਾਲਤ ਬਰੈਕਟਾਂ ਵਿੱਚ ਜਰੂਰੀ ਹੈ, ਉਦਾਹਰਨ ਵਜੋਂ gtk:fg[ਸਾਧਾਰਨ] ਜਿੱਥੇ "
+"ਸਾਧਾਰਨ ਇੱਕ ਹਾਲਤ ਹੈ; \"%s\" ਦੀ ਪਾਰਸ ਨਹੀਂ ਕਰ ਸਕਿਆ"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"ਹਾਲਤ ਤੋਂ ਬਾਅਦ GTK ਰੰਗ ਨਿਰਧਾਰਨ ਬਰੈਕਟਾਂ ਵਿੱਚ ਬੰਦ ਕਰਨੀ ਜਰੂਰੀ ਹੈ, ਉਦਾਹਰਨ ਵਜੋਂ gtk:fg"
+"[ਸਾਧਾਰਨ] ਜਿੱਥੇ ਸਾਧਾਰਨ ਇੱਕ ਹਾਲਤ ਹੈ; \"%s\" ਦੀ ਪਾਰਸ ਨਹੀਂ ਕਰ ਸਕਿਆ"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "ਰੰਗ ਨਿਰਧਾਰਨ ਵਿੱਚ \"%s\" ਹਾਲਤ ਨੂੰ ਨਹੀਂ ਸਮਝਿਆ"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "ਰੰਗ ਨਿਰਧਾਰਨ ਵਿੱਚ ਰੰਗ ਸੰਖੇਪ \"%s\" ਨੂੰ ਨਹੀਂ ਸਮਝਿਆ"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "ਧੁੰਦਲੀ ਬਣਤਰ \"ਧੁੰਦਲੀ/bg_ਰੰਗ/ਐਲਫਾ, \"%s\" ਬਣਤਰ ਵਿੱਚ ਠੀਕ ਨਹੀਂ ਆਂਉਦੀ"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "ਧੁੰਦਲੇ ਰੰਗ ਵਿੱਚ ਐਲਫਾ ਕੀਮਤ \"%s\" ਦੀ ਪਾਰਸ ਨਹੀਂ ਕਰ ਸਕਿਆ"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "ਧੁੰਦਲੇ ਰੰਗ ਵਿੱਚ ਐਲਫਾ ਕੀਮਤ \"%s\" 0.0 ਅਤੇ 1.0 ਵਿਚਕਾਰ ਨਹੀਂ ਹੈ"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "ਰੰਗਤ ਬਣਤਰ \"ਰੰਗਤ/ਆਧਾਰ_ਰੰਗ/ਫੈਕਟਰ\" ਹੈ, \"%s\" ਬਣਤਰ ਵਿੱਚ ਠੀਕ ਨਹੀਂ ਆਉਦੀ"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "ਛਾਇਆ ਰੰਗ ਵਿੱਚ ਰੰਗਤ ਫੈਕਟਰ \"%s\" ਦੀ ਪਾਰਸ ਨਹੀਂ ਕਰ ਸਕਿਆ"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "ਛਾਇਆ ਰੰਗ ਵਿੱਚ ਰੰਗਤ ਫੈਕਟਰ \"%s\" ਨਾਂਹਵਾਚਕ ਹੈ"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "\"%s\" ਰੰਗ ਦੀ ਪਾਰਸ ਨਹੀਂ ਕਰ ਸਕਿਆ"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਵਿੱਚ ਅੱਖਰ '%s' ਸ਼ਾਮਿਲ ਹੈ ਜਿਸ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਵਿੱਚ ਦਸ਼ਮਲਵ ਅੰਕ '%s' ਸ਼ਾਮਿਲ ਹੈ ਜਿਸ ਦੀ ਪਾਰਸ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਵਿੱਚ ਪੂਰਨ ਅੰਕ '%s' ਸ਼ਾਮਿਲ ਹੈ ਜਿਸ ਦੀ ਪਾਰਸ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਵਿੱਚ ਇਸ ਪਾਠ \"%s\" ਦੇ ਸ਼ੁਰੂ ਵਿੱਚ ਅਣਪਛਾਤਾ ਆਪ੍ਰੇਟਰ ਸ਼ਾਮਿਲ ਹੈ"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਖਾਲੀ ਸੀ ਜਾਂ ਸਮਝਿਆ ਨਹੀਂ"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਜੀਰੋ ਨਾਲ ਭਾਗ ਹੈ"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਦਸ਼ਮਲਵ ਅੰਕ ਉੱਤੇ ਮਾਡ (mod) ਆਪ੍ਰੇਟਰ ਵਰਤਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਵਿੱਚ ਆਪ੍ਰੇਟਰ \"%s\" ਹੈ ਜਿੱਥੇ ਪ੍ਰਭਾਵੀ ਅੰਕ ਦੀ ਉਮੀਦ ਸੀ"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਵਿੱਚ ਪ੍ਰਭਾਵੀ ਅੰਕ ਸੀ ਜਿੱਥੇ ਆਪ੍ਰੇਟਰ ਦੀ ਉਮੀਦ ਸੀ"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਦੀ ਸਮਾਪਤੀ ਆਪ੍ਰੇਟਰ ਨਾਲ ਹੁੰਦੀ ਹੈ ਨਾ ਕਿ ਪ੍ਰਭਾਵੀ ਅੰਕ ਨਾਲ"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਵਿੱਚ ਵਿਚਕਾਰ ਪ੍ਰਭਾਵੀ ਅੰਕ ਤੋਂ ਬਿਨਾਂ ਆਪ੍ਰੇਟਰ \"%c\" ਤੋਂ ਬਾਅਦ ਆਪ੍ਰੇਟਰ \"%c"
+"\" ਹੈ "
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਵਿੱਚ ਅਣਪਛਾਤਾ ਅਸਥਿਰ ਜਾਂ ਸਥਿਰ \"%s\" ਸੀ"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਪਾਰਸਰ ਦਾ ਬਫ਼ਰ ਓਵਰਫਲੋ ਹੋ ਗਿਆ ਹੈ।"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਵਿੱਚ ਕੋਈ ਖੁੱਲੀ ਬਰੈਕਟ ਨਾ ਹੋਣ ਕਰਕੇ ਬੰਦ ਬਰੈਕਟ(parenthesis) ਸੀ"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਵਿੱਚ ਕੋਈ ਬੰਦ ਬਰੈਕਟ ਨਾ ਹੋਣ ਕਰਕੇ ਖੁੱਲੀ ਬਰੈਕਟ ਸੀ"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "ਕਰੋਆਡੀਨੇਟ ਐਕਸ਼ਪਰੈਸ਼ਨ ਵਿੱਚ ਕੋਈ ਵੀ ਆਪ੍ਰੇਟਰ ਜਾਂ ਪ੍ਰਭਾਵੀ ਅੰਕ ਨਹੀਂ ਦਿਸਦਾ"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "ਥੀਮ ਵਿੱਚ ਸਮੀਕਰਨ ਹੈ, ਜਿਸ ਦਾ ਨਤੀਜਾ ਹੈ ਗਲਤੀ: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"ਇਸ ਫਰੇਮ ਵਾਸਤੇ <button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> ਦੇਣਾ "
+"ਲਾਜ਼ਮੀ ਹੈ"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> ਗੁੰਮ ਹੈ"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "ਥੀਮ \"%s\" ਲੋਡ ਕਰਨ ਲਈ ਅਸਫਲ: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "ਥੀਮ \"%2$s\" ਲਈ <%1$s> ਨਹੀਂ ਸੈੱਟ ਕੀਤਾ"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"ਸ਼ੈਸ਼ਨ \"%s\" ਵਿੱਚ ਵਿੰਡੋ ਕਿਸਮ \"%s\" ਲਈ ਕੋਈ ਫਰੇਮ ਸਾਇਟਲ ਸੈੱਟ ਨਹੀਂ ਕੀਤਾ, ਇੱਕ <window type="
+"\"%s\" style_set=\"whatever\"/> ਐਲਿਮੰਟ ਸ਼ਾਮਿਲ ਕਰੋ"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "ਯੂਜ਼ਰ ਰਾਹੀਂ ਪਰਭਾਸ਼ਿਤ ਸਥਿਰ ਵੱਡੇ ਅੱਖਰ ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ; \"%s\" ਨਹੀਂ ਹੁੰਦੇ"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "ਸਥਿਰ \"%s\" ਪਹਿਲਾਂ ਹੀ ਪਰਭਾਸ਼ਿਤ ਕੀਤਾ ਹੈ"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "<%2$s> ਐਲੀਮੈਂਟ ਉੱਤੇ ਕੋਈ \"%1$s\" ਗੁਣ ਨਹੀਂ"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "ਲਾਈਨ %d ਅੱਖਰ %d:%s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "ਗੁਣ \"%s\" ਇੱਕੋ ਐਲੀਮੈਂਟ <%s> ਉੱਤੇ ਦੋ ਵਾਰ ਦੁਹਰਾਇਆ ਗਿਆ"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "ਐਲਿਮੰਟ <%2$s> ਉੱਤੇ ਇਸ ਸਬੰਧ ਵਿਚਲਾ \"%1$s\" ਗੁਣ ਅਯੋਗ ਹੈ "
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" ਦੀ ਪੂਰਨ ਅੰਕ ਵਾਂਗ ਪਾਰਸ ਨਹੀ ਕਰ ਸਕਿਆ"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "\"%s\" ਸਤਰ ਵਿਚ ਖੋਜੇ ਅੱਖਰ \"%s\" ਨੂੰ ਸਮਝ ਨਹੀ ਸਕੇ"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "ਪੂਰਨ ਅੰਕ %ld ਜੋੜ ਦਾ ਹੋਣਾ ਜਰੂਰੀ ਹੈ"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "ਪੂਰਨ ਅੰਕ %ld ਬਹੁਤ ਵੱਡਾ ਹੈ, ਮੌਜੂਦਾ ਅਧਿਕਤਮ %d ਹੈ"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\" ਦੀ ਦਸ਼ਮਲਵ ਅੰਕ ਵਾਂਗ ਪਾਰਸ ਨਹੀਂ ਕਰ ਸਕਿਆ"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "ਬੂਲੀਅਨ ਕੀਮਤ \"ਠੀਕ\" ਜਾਂ \"ਗਲਤ\" ਹੋਵੇ \"%s\" ਨਹੀਂ"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "ਕੋਣ 0.0 ਤੋਂ 360.0 ਵਿਚਕਾਰ ਹੋਵੇ, ਕੀ %g ਸੀ\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "ਐਲਫਾ 0.0 (ਅਦਿੱਖ) ਅਤੇ 1.0 (ਪੂਰੀ ਤਰਾਂ ਅਪਾਰਦਰਸ਼ੀ) ਵਿਚਕਾਰ ਹੋਵੇ, ਕੀ %g ਸੀ\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr "ਅਯੋਗ ਟਾਇਟਲ ਪੈਮਾਨਾ \"%s\" (xx-ਛੋਟਾ,x-ਛੋਟਾ,ਛੋਟਾ,ਮੱਧਮ,ਵੱਡਾ,x-ਵੱਡਾ,xx-ਵੱਡਾ)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> ਨਾਂ \"%s\" ਦੂਜੀ ਵਾਰ ਵਰਤਿਆ ਗਿਆ"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> ਮੂਲ \"%s\" ਪਰਭਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤਾ ਗਿਆ"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> ਜੁਮੈਟਰੀ \"%s\" ਪਰਭਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤੀ ਗਈ"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> ਜੁਮੈਟਰੀ ਜਾਂ ਜੁਮੈਟਰੀ ਵਾਲੇ ਮੂਲ ਨੂੰ ਦੇਣਾ ਲਾਜ਼ਮੀ ਹੈ"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "ਤੁਹਾਨੂੰ ਇੱਕ ਐਲਫ਼ਾ ਮੁੱਲ ਲਈ ਇੱਕ ਬੈਕਗਰਾਊਂਡ ਮੁੱਲ ਦਿਓ, ਜੋ ਕਿ ਮਤਲਬ ਸਿਰ ਹੋਵੇ"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "ਅਣਜਾਣ ਕਿਸਮ \"%s\" ਉੱਤੇ <%s> ਐਲੀਮੈਂਟ"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "ਅਣਜਾਣ ਸਟਾਇਲ_ਸੈੱਟ \"%s\" <%s> ਐਲੀਮੈਂਟ ਉੱਤੇ"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "ਵਿੰਡੋ ਕਿਸਮ \"%s\" ਵਾਸਤੇ ਪਹਿਲਾਂ ਹੀ ਇੱਕ ਸਟਾਇਲ ਸੈੱਟ ਦਿੱਤਾ ਹੈ"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "<%s> ਐਲੀਮੈਂਟ ਨੂੰ <%s> ਹੇਠਾਂ ਇਜਾਜ਼ਤ ਨਹੀਂ"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"ਬਟਨਾਂ ਲਈ ਦੋਨੋਂ \"button_width\"/\"button_height\" ਅਤੇ \"aspect_ratio\" ਦਿੱਤਾ ਨਹੀਂ "
+"ਜਾ ਸਕਦਾ ਹੈ"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "ਫਾਸਲਾ \"%s\" ਅਣਜਾਣ ਹੈ"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "ਅਕਾਰ ਅਨੁਪਾਤ \"%s\" ਅਣਜਾਣ ਹੈ"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "ਬਾਰਡਰ \"%s\" ਅਣਜਾਣ ਹੈ"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "<%s> ਐਲੀਮੈਂਟ ਉੱਤੇ ਕੋਈ \"ਸ਼ੁਰੂ_ਕੋਣ\" ਜਾਂ \"ਇਸ ਤੋਂ\"ਗੁਣ ਨਹੀਂ ਹੈ ।"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਸੀਮਾਂ_ਕੋਣ\" ਜਾਂ \"ਵੱਲ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "ਢਾਲ ਦੇ ਅਨੁਪਾਤ ਦੀ ਕਿਸਮ ਵਾਸਤੇ ਕੀਮਤ \"%s\" ਨਹੀਂ ਸਮਝਿਆ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "ਐਲੀਮੈਂਟ <%s> ਵਾਸਤੇ ਭਰਨ ਕਿਸਮ \"%s\" ਨਹੀਂ ਸਮਝਿਆ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "ਐਲੀਮੈਂਟ <%s> ਲਈ ਸਥਿਤੀ \"%s\" ਨਹੀਂ ਸਮਝਿਆ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "ਐਲੀਮੈਂਟ <%s> ਲਈ ਪਰਛਾਂਵਾਂ \"%s\" ਨਹੀਂ ਸਮਝਿਆ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "ਐਲੀਮੈਂਟ <%s> ਲਈ ਤੀਰ \"%s\" ਨਹੀਂ ਸਮਝਿਆ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "ਕੋਈ <draw_ops> \"%s\" ਪਰਭਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤੀ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "draw_ops ਦੇ ਨਾਲ \"%s\" ਇੱਥੇ ਗੋਲਾਕਾਰ ਸੰਬੰਧ ਬਣਾਏਗਾ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "ਫਰੇਮ ਟੁਕੜੇ ਲਈ ਅਣਜਾਣੀ ਸਥਿਤੀ \"%s\" ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "ਫਰੇਮ ਸਟਾਇਲ ਵਿੱਚ ਪਹਿਲਾਂ ਹੀ %s ਸਥਿਤੀ ਉੱਤੇ ਇੱਕ ਟੁਕੜਾ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "\"%s\" ਨਾਂ ਨਾਲ <draw_ops> ਪਰਭਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤੀਆਂ"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "ਬਟਨ ਲਈ ਅਣਜਾਣ ਕੰਮ \"%s\" ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "ਬਟਨ ਫੰਕਸ਼ਨ \"%s\" ਇਹ ਵਰਜਨ 'ਚ ਮੌਜੂਦ ਨਹੀਂ ਹੈ (%d, %d ਲੋੜੀਦਾ ਹੈ)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "ਬਟਨ ਲਈ ਅਣਜਾਣ ਹਾਲਤ \"%s\" ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "ਫਰੇਮ ਸਟਾਇਲ ਵਿੱਚ ਪਹਿਲਾਂ ਹੀ ਕੰਮ %s ਹਾਲਤ %s ਬਟਨ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "ਫੋਕਸ ਗੁਣ ਲਈ \"%s\" ਯੋਗ ਕੀਮਤ ਨਹੀਂ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "ਹਾਲਤ ਗੁਣ ਲਈ \"%s\" ਯੋਗ ਕੀਮਤ ਨਹੀਂ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "ਇੱਕ ਸਟਾਇਲ \"%s\" ਪਰਭਾਸ਼ਿਤ ਨਹੀਂ ਕੀਤਾ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "ਮੁੜ ਆਕਾਰ ਦਿਓ ਗੁਣ ਲਈ \"%s\" ਯੋਗ ਕੀਮਤ ਨਹੀਂ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਵੱਡਾ/ਰੰਗਤ ਹਾਲਤ ਲਈ \"ਮੁੜ ਆਕਾਰ ਦਿਓ\" ਗੁਣ ਨਹੀਂ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "<%s> ਐਲੀਮੈਂਟ ਲਈ ਵੱਧ ਤੋਂ ਵੱਧ ਹਾਲਤਾਂ ਲਈ \"ਮੁੜ ਆਕਾਰ\" ਗੁਣ ਨਹੀਂ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "ਹਾਲਤ %s ਮੁੜ ਅਕਾਰ ਦਿਓ %s ਫੋਕਸ %s ਬਾਰੇ ਸਟਾਇਲ ਪਹਿਲਾਂ ਦਿੱਤਾ ਗਿਆ ਹੈ"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "ਹਾਲਤ %s ਫੋਕਸ %s ਬਾਰੇ ਸਟਾਇਲ ਪਹਿਲਾਂ ਦਿੱਤਾ ਹੈ"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<piece> ਐਲੀਮੈਂਟ ਵਾਸਤੇ ਦੋ draw_ops ਨਹੀਂ ਹੋ ਸਕਦੀਆਂ (ਥੀਮ ਨੇ draw_ops ਗੁਣ ਅਤੇ <draw_ops> "
+"ਐਲੀਮੈਂਟ ਵੀ ਹੋ ਸਕਦੀ ਹੈ ਜਾਂ ਦੋ ਐਲੀਮੈਂਟ ਦਿੱਤੀਆਂ ਹੋ ਸਕਦੀਆਂ ਹਨ)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"<button> ਐਲੀਮੈਂਟ ਵਾਸਤੇ ਦੋ draw_ops ਨਹੀਂ ਹੋ ਸਕਦੀਆਂ(ਥੀਮ ਨੇ ਉਲੀਕ ਚੋਣਾਂ ਗੁਣ ਅਤੇ <draw_ops> "
+"ਐਲੀਮੈਂਟ ਵੀ ਦਿੱਤਾ ਹੈ, ਜਾਂ ਦੋ ਐਲੀਮੈਂਟ ਦਿੱਤੇ ਹਨ)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"ਇੱਕ ਐਲੀਮੈਂਟ ਵਾਸਤੇ <menu_icon> draw_ops ਨਹੀਂ ਹੋ ਸਕਦੀਆਂ (ਥੀਮ ਨੇ draw_ops ਗੁਣ ਅਤੇ "
+"<draw_ops> ਇਕਾਈਆਂ ਦਿੱਤੀਆਂ ਹਨ, ਜਾਂ ਦੋ ਇਕਾਈਆਂ ਦਿੱਤੀਆਂ ਹਨ)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "ਥੀਮ ਵਿੱਚ ਸਭ ਤੋਂ ਬਾਹਰੀ ਐਲੀਮੈਂਟ <marco_theme> ਹੋਵੇ <%s> ਨਹੀਂ"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "<%s> ਐਲੀਮੈਂਟ ਨੂੰ ਨਾਂ/ਲੇਖਕ/ਮਿਤੀ/ਵੇਰਵਾ ਐਲੀਮੈਂਟ ਵਿੱਚ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<%s> ਐਲੀਮੈਂਟ ਨੂੰ <constant> ਐਲੀਮੈਂਟ ਵਿੱਚ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "<%s> ਐਲੀਮੈਂਟ ਨੂੰ ਫਾਸਲਾ/ਹਾਸ਼ੀਆ/ਅਕਾਰ ਅਨੁਪਾਤ(aspect_ratio) ਐਲੀਮੈਂਟ ਵਿੱਚ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "<%s> ਐਲੀਮੈਂਟ ਨੂੰ ਉਲੀਕ ਕਿਰਿਆ ਐਲੀਮੈਂਟ ਵਿੱਚ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%s> ਐਲੀਮੈਂਟ ਨੂੰ <%s> ਐਲੀਮੈਂਟ ਵਿੱਚ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "ਫਰੇਮ ਟੁਕੜੇ ਲਈ ਕੋਈ draw_ops ਨਹੀਂ ਦਿੱਤੀ ਗਈ"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "ਬਟਨ ਲਈ ਕੋਈ ਉਲੀਕ ਕਿਰਿਆ ਨਹੀ ਦਿੱਤੀ ਗਈ"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> ਐਲੀਮੈਂਟ ਵਿੱਚ ਕਿਸੇ ਪਾਠ ਨੂੰ ਇਜਾਜ਼ਤ ਨਹੀਂ"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "ਇਸ ਥੀਮ ਲਈ <%s> ਦੋ ਵਾਰ ਦਿੱਤਾ ਗਿਆ"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "ਥੀਮ %s ਲਈ ਇੱਕ ਢੁੱਕਵੀਂ ਫਾਇਲ ਲੱਭਣ ਲਈ ਫੇਲ੍ਹ\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "ਥੀਮ ਫਾਇਲ %s root <marco_theme> ਐਲੀਮੈਂਟ ਵਿੱਚ ਸ਼ਾਮਿਲ ਨਹੀਂ ਸੀ"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/ਵਿੰਡੋ(_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/ਵਿੰਡੋ/ਝਟਕੇ ਨਾਲ ਵੱਖ"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/ਵਿੰਡੋ/ਡਾਈਲਾਗ(_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/ਵਿੰਡੋ/ਮਾਡਲ ਡਾਈਲਾਗ(_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/ਵਿੰਡੋ/ਸਹੂਲਤ(_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/ਵਿੰਡੋ/ਸਵਾਗਤੀ ਸਕਰੀਨ(_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/ਵਿੰਡੋ/ਉੱਤੇ ਡੌਕ(_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/ਵਿੰਡੋ/ਹੇਠਾਂ ਡੌਕ(_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/ਵਿੰਡੋ/ਖੱਬਾ ਡੌਕ(_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/ਵਿੰਡੋ/ਸੱਜਾ ਡੌਕ(_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/ਵਿੰਡੋ/ਸਾਰੇ ਡੌਕ(_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/ਵਿੰਡੋ/ਡੈਸਕਟਾਪ(_k)"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "ਇਹ ਸੈਂਪਲ ਡਾਈਲਾਗ ਵਿੱਚ ਸੈਂਪਲ ਸੁਨੇਹਾ ਹੈ"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "ਨਕਲੀ ਮੇਨੂ ਆਈਟਮ %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "ਕੇਵਲ ਬਾਰਡਰ ਵਿੰਡੋ"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "ਬਾਰ"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "ਸਾਧਾਰਨ ਐਪਲੀਕੇਸ਼ਨ ਵਿੰਡੋ"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "ਡਾਈਲਾਗ ਡੱਬਾ"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "ਮਾਡਲ ਡਾਈਲਾਗ ਡੱਬਾ"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "ਸਹੂਲਤ ਪਲੇਅਟ"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "ਮੇਨੂ ਵੱਖ ਕਰੋ"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "ਬਾਰਡਰ"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "ਬਟਨ ਲੇਆਉਟ ਟੈਸਟ %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "ਇੱਕ ਵਿੰਡੋ ਫਰੇਮ ਉਲੀਕਣ ਲਈ %g ਮਿਲੀ ਸਕਿੰਟ"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "ਵਰਤੋਂ: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "ਥੀਮ ਲੋਡ ਕਰਨ ਵਿੱਚ ਗਲਤੀ: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "ਥੀਮ \"%s\" ਨੂੰ ਲੋਡ ਕਰਨ ਵਿੱਚ ਲੱਗਾ ਸਮਾਂ %g ਸਕਿੰਟਾਂ ਵਿੱਚ \n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "ਸਾਧਾਰਨ ਟਾਇਟਲ ਫੋਂਟ"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "ਛੋਟੇ ਟਾਇਟਲ ਫੋਂਟ"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "ਵੱਡੇ ਟਾਇਟਲ ਫੋਂਟ"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "ਬਟਨ ਲੇਆਉਟ"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "ਬੈਂਚਮਾਰਕ"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "ਵਿੰਡੋ ਟਾਇਟਲ ਇੱਥੇ ਹੋਵੇਗਾ"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d ਫਰੇਮ ਉਲੀਕੇ %g ਕਲਾਈਂਟ ਸਾਈਡ ਸਕਿੰਟਾਂ ਵਿੱਚ (%g ਮਿਲੀ ਸਕਿੰਟ ਪ੍ਰਤੀ ਫਰੇਮ) ਅਤੇ X ਸਰਵਰ ਸਮੇਤ %g "
+"ਸਕਿੰਟ ਕੰਧ ਘੜੀ ਸਮਾਂ (%g ਮਿਲੀ ਸਕਿੰਟ ਪ੍ਰਤੀ ਫਰੇਮ)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "ਸਥਿਤੀ ਕਥਨ ਜਾਂਚ ਨੇ ਜਵਾਬ ਠੀਕ(TRUE) ਦਿੱਤਾ ਪਰ ਗਲਤੀ ਕੱਢੀ ਹੈ"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "ਸਥਿਤੀ ਕਥਨ ਜਾਂਚ ਨੇ ਜਵਾਬ ਗਲਤ(FALSE) ਦਿੱਤਾ ਪਰ ਗਲਤੀ ਨਹੀਂ ਕੱਢੀ ਹੈ"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "ਗਲਤੀ ਦੀ ਉਮੀਦ ਸੀ ਪਰ ਕੋਈ ਵਿਖਾਈ ਨਹੀਂ"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "ਗਲਤੀ %d ਦੀ ਉਮੀਦ ਸੀ ਪਰ ਵਿਖਾਈ %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "ਗਲਤੀ ਦੀ ਉਮੀਦ ਨਹੀਂ ਸੀ ਪਰ ਇੱਕ ਨਿਕਲੀ: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x ਕੀਮਤ %d ਹੈ, %d ਦੀ ਉਮੀਦ ਸੀ"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y ਕੀਮਤ %d ਸੀ, %d ਦੀ ਉਮੀਦ ਸੀ"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d ਸਮਾਨਾਰਥਕ ਕਥਨ ਦੀ ਪਾਰਸ %g ਸਕਿੰਟਾਂ ਵਿੱਚ ਕੀਤੀ (ਔਸਤਨ %g ਸਕਿੰਟ)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "ਇਹਨਾਂ ਵਿੰਡੋਜ਼ ਵਿੱਚੋਂ ਕੋਈ ਹੋਰ ਖੋਲ੍ਹੋ"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "ਇਹ 'ਖੋਲ੍ਹੋ' ਆਈਕਾਨ ਨਾਲ ਡੈਮੋ ਬਟਨ ਹੈ"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "ਇਹ 'ਬਾਹਰ ਜਾਓ' ਆਈਕਾਨ ਨਾਲ ਡੈਮੋ ਬਟਨ ਹੈ"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "ਡਾਈਲਾਗ ਪਰੋਸੈਸ ਵਿੱਚੋਂ \"%s\" ਸੁਨੇਹੇ ਦੀ ਪਾਰਸ ਕਰਨ ਵਿੱਚ ਫੇਲ੍ਹ\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "ਡਾਈਲਾਗ ਡਿਸਪਲੇਅ ਪਰੋਸੈਸ ਵਿੱਚੋਂ ਪੜ੍ਹਨ ਦੀ ਗਲਤੀ: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr "ਐਪਲੀਕੇਸ਼ਨ ਖਤਮ ਕਰਨ ਲਈ ਪੁੱਛਣ ਵਾਲੇ ਮੈਟਾਸਿਟੀ ਡਾਈਲਾਗ ਨੂੰ ਸ਼ੁਰੂ ਕਰਨ ਵਿੱਚ ਗਲਤੀ:%s\n"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "ਵਿੰਡ ਅਣ-ਅਧਿਕਤਮ ਕਰੋ"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr "ਕਮਾਂਡ ਬਾਰੇ ਗਲਤੀ ਛਾਪਣ ਵਾਲੇ ਮੈਟਾਸਿਟੀ ਡਾਈਲਾਗ ਨੂੰ ਸ਼ੁਰੂ ਕਰਨ ਵਿੱਚ ਗਲਤੀ: %s \n"
+
+#~ msgid "Title"
+#~ msgstr "ਟਾਇਟਲ"
+
+#~ msgid "Class"
+#~ msgstr "ਕਲਾਸ"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ, ਜੋ ਮੌਜੂਦਾ ਵਰਕਸਪੇਸ ਤੋਂ ਉੱਪਰਲੇ ਵਰਕਸਪੇਸ ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ "
+#~ "ਹੈ\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਮੌਜੂਦਾ ਵਰਕਸਪੇਸ ਤੋਂ ਹੇਠਲੇ ਵਰਕਸਪੇਸ ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਮੌਜੂਦਾ ਵਰਕਸਪੇਸ ਤੋਂ ਖੱਬੇ ਵਰਕਸਪੇਸ ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਮੌਜੂਦਾ ਵਰਕਸਪੇਸ ਤੋਂ ਸੱਜੇ ਵਰਕਸਪੇਸ ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 1 ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;"
+#~ "a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ "
+#~ "ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;"
+#~ "Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-"
+#~ "ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 10 ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 11ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;"
+#~ "a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ "
+#~ "ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;"
+#~ "Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-"
+#~ "ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 12 ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 2 ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;"
+#~ "a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ "
+#~ "ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;"
+#~ "Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-"
+#~ "ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 3 ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;"
+#~ "a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ "
+#~ "ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;"
+#~ "Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-"
+#~ "ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 4 ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;"
+#~ "a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ "
+#~ "ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;"
+#~ "Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-"
+#~ "ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 5 ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;"
+#~ "a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ "
+#~ "ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;"
+#~ "Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-"
+#~ "ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 6 ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;"
+#~ "a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ "
+#~ "ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;"
+#~ "Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-"
+#~ "ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 7 ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;"
+#~ "a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ "
+#~ "ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;"
+#~ "Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-"
+#~ "ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 8 ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;"
+#~ "a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ "
+#~ "ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;"
+#~ "Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-"
+#~ "ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜੋ ਵਰਕਸਪੇਸ 9 ਵਿੱਚ ਲਿਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;"
+#~ "a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ "
+#~ "ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;"
+#~ "Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-"
+#~ "ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਮੇਨੂ ਨੂੰ ਸਰਗਰਮ ਕਰਨ ਲਈ ਵਰਤਿਆ ਗਿਆ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ \"ਹਿਲਾਓ ਮੋਡ\" ਵਿੱਚ ਜਾਣ ਲਈ ਵਰਤਿਆ ਗਿਆ ਹੈ ਅਤੇ ਕੀਬੋਰਡ ਵਰਤ ਕੇ ਝਰੋਖਾ "
+#~ "ਹਿਲਾਉਣਾ ਸ਼ੁਰੂ ਕਰਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ "
+#~ "ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ "
+#~ "ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ \"ਮੁੜ ਆਕਾਰ ਦਿਓ ਮੋਡ\" ਵਿੱਚ ਜਾਣ ਲਈ ਵਰਤਿਆ ਗਿਆ ਹੈ ਅਤੇ ਕੀਬੋਰਡ ਵਰਤ ਕੇ ਵਿੰਡੋ "
+#~ "ਨੂੰ ਮੁੜ ਆਕਾਰ ਦਿੰਦਾ ਹੈ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ "
+#~ "ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ "
+#~ "ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਸਾਰੇ ਸਾਧਾਰਨ ਝਰੋਖਿਆਂ ਨੂੰ ਢਕਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਡੈਸਕਟਾਪ ਦੀ ਬੈਕਗਰਾਊਂਡ ਨੂੰ "
+#~ "ਫੋਕਸ ਕਰਦਾ ਹੈ ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ "
+#~ "ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ "
+#~ "ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਝਰੋਖਾ ਅਧਿਕਤਮ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਝਰੋਖਾ ਛੋਟਾ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਇੱਕ ਵਰਕਸਪੇਸ ਹੇਠਾਂ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਇੱਕ ਵਰਕਸਪੇਸ ਖੱਬੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਇੱਕ ਵਰਕਸਪੇਸ ਸੱਜੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਇੱਕ ਵਰਕਸਪੇਸ ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 1 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 10 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 11 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ "
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 12 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 2 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 3 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 4 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 5 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 6 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 7 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ "
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 8 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ "
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵਰਕਸਪੇਸ 9 ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਲਟਕਵਾਂ ਝਰੋਖਾ ਵਰਤ ਕੇ ਪੈਨਲ ਅਤੇ ਵਰਕਸਪੇਸ ਵਿਚਕਾਰ ਫੋਕਸ ਪਿਛਾਂਹ ਲਿਜਾਣ ਲਈ "
+#~ "ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ "
+#~ "ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ "
+#~ "ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਲਟਕਵਾਂ ਝਰੋਖਾ ਵਰਤੇ ਬਿਨਾਂ ਪੈਨਲ ਅਤੇ ਵਰਕਸਪੇਸ(ਵਰਕਸਪੇਸ) ਵਿਚਕਾਰ ਫੋਕਸ ਪਿਛਾਂਹ "
+#~ "ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ "
+#~ "ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ "
+#~ "ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਇੱਕ ਪੋਪਅੱਪ ਵਿੰਡੋ ਨਾਲ ਇੱਕ ਕਾਰਜ ਦੇ ਝਰੋਖਿਆਂ ਵਿੱਚ ਪਿੱਛੇ ਜਾਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ "
+#~ "ਬਾਈਡਿੰਗ ਨਾਲ \"ਸ਼ਿਫਟ(shift)\" ਦਬਾ ਕੇ ਮੁੜ ਅਗਾਂਹ ਜਾਣ ਦੀ ਦਿਸ਼ਾ ਬਣਦੀ ਹੈ। ਫਾਰਮੈਟ ਇੰਝ ਹੈ "
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਪੋਪਅੱਪ ਝਰੋਖਾ ਵਰਤ ਕੇ ਇੱਕ ਕਾਰਜ ਦੇ ਝਰੋਖਿਆਂ ਵਿੱਚ ਪਿੱਛੇ ਜਾਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। ਇਹ "
+#~ "ਬਾਈਡਿੰਗ ਬੰਧਨ ਨਾਲ \"ਸ਼ਿਫਟ(shift)\" ਦਬਾ ਕੇ ਦੁਬਾਰਾ ਅਗਾਂਹ ਜਾਣ ਦੀ ਦਿਸ਼ਾ ਬਣਦੀ ਹੈ। ਫਾਰਮੈਟ "
+#~ "ਇੰਜ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਆਜ਼ਾਦ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਪੋਪਅੱਪ ਝਰੋਖਾ ਵਰਤੇ ਬਿਨਾਂ ਝਰੋਖਿਆਂ ਫੋਕਸ ਬਦਲਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ।ਇਹ ਬਾਈਡਿੰਗ ਨਾਲ "
+#~ "\"ਸ਼ਿਫਟ(shift)\" ਦਬਾ ਕੇ ਮੁੜ ਅਗਾਂਹ ਜਾਣ ਦੀ ਦਿਸ਼ਾ ਬਣਦੀ ਹੈ। ਫਾਰਮੈਟ ਇੰਝ ਹੈ \"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਲਈ ਕੋਈ "
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਲਟਕਵਾਂ ਝਰੋਖਾ ਵਰਤ ਕੇ ਵਰਕਸਪੇਸ ਵਿਚਕਾਰ ਫੋਕਸ ਪਿਛਾਂਹ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ "
+#~ "ਹੈ।ਇਸ ਬੰਧਨ ਨਾਲ \"ਸ਼ਿਫਟ(shift)\" ਦਬਾ ਕੇ ਦੁਬਾਰਾ ਅਗਾਂਹ ਜਾਣ ਦੀ ਦਿਸ਼ਾ ਬਣਦੀ ਹੈ।ਫਾਰਮੈਟ ਇਸ "
+#~ "ਤਰਾਂ ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1।ਪਾਰਸਰ "
+#~ "ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ "
+#~ "\"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ "
+#~ "ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਲਟਕਵਾਂ ਝਰੋਖਾ ਵਰਤ ਕੇ ਪੈਨਲ ਅਤੇ ਵਰਕਸਪੇਸ ਵਿਚਕਾਰ ਫੋਕਸ ਘੁਮਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ "
+#~ "ਹੈ।ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ "
+#~ "ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" "
+#~ "ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਲਟਕਵਾਂ ਝਰੋਖਾ ਵਰਤੇ ਬਿਨਾਂ ਪੈਨਲ ਅਤੇ ਵਰਕਸਪੇਸ ਵਿਚਕਾਰ ਫੋਕਸ ਘੁਮਾਉਣ ਲਈ ਵਰਤਿਆ "
+#~ "ਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ "
+#~ "ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ "
+#~ "\"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਪੋਪਅੱਪ ਵਿੰਡੋ ਬਿਨਾਂ ਇੱਕ ਕਾਰਜ ਦੇ ਝਰੋਖਿਆਂ ਫੋਕਸ ਘੁੰਮਾਉਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ ਇਸ "
+#~ "ਬਾਈਡਿੰਗ ਨੂੰ ਵਰਤਣ ਸਮੇਂ \"ਸ਼ਿਫਟ(shift)\" ਦਬਾਉਣ ਨਾਲ ਗਤੀ ਦੀ ਦਿਸ਼ਾ ਉਲਟਦੀ ਹੈ। ਫਾਰਮੈਟ ਇੰਝ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ "
+#~ "ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਲਈ ਕੋਈ "
+#~ "ਬਾਈਡਿੰਘ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਪੋਪਅੱਪ ਝਰੋਖਾ ਵਰਤ ਕੇ ਇੱਕ ਕਾਰਜ ਦੇ ਝਰੋਖਿਆਂ ਵਿੱਚ ਫੋਕਸ ਘੁੰਮਾਉਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ। "
+#~ "(ਆਮ ਤੌਰ ਤੇ &lt;Alt&gt; F6 ਰਾਹੀਂ) ਇਸ ਬਾਈਡਿੰਗ ਨੂੰ ਵਰਤਣ ਸਮੇਂ \"ਸ਼ਿਫਟ(shift)\" ਦਬਾਉਣ "
+#~ "ਨਾਲ ਗਤੀ ਦੀ ਦਿਸ਼ਾ ਉਲਟਦੀ ਹੈ। ਫਾਰਮੈਟ ਇੰਝ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ "
+#~ "ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ "
+#~ "ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਲਟਕਵੇਂ ਵਿੰਡੋ ਬਿਨਾਂ ਵਰਕਸਪੇਸ ਵਿਚਕਾਰ ਫੋਕਸ ਘੁਮਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।"
+#~ "(ਰਿਵਾਇਤੀ &lt;Alt&gt;ਭੁੱਲ) ਇਸ ਬੰਧਨ ਨੂੰ ਵਰਤਣ ਸਮੇਂ \"ਸ਼ਿਫਟ(shift)\" ਦਬਾਉਣ ਨਾਲ ਗਤੀ ਦੀ "
+#~ "ਦਿਸ਼ਾ ਉਲਟਦੀ ਹੈ।ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ "
+#~ "ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ "
+#~ "ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਲਟਕਵਾਂ ਝਰੋਖਾ ਵਰਤ ਕੇ ਵਰਕਸਪੇਸ ਵਿਚਕਾਰ ਫੋਕਸ ਘੁਮਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।"
+#~ "(ਰਿਵਾਇਤੀ &lt;Alt&gt;ਭੁੱਲ) ਇਸ ਬੰਧਨ ਨੂੰ ਵਰਤਣ ਸਮੇਂ \"ਸ਼ਿਫਟ(shift)\" ਦਬਾਉਣ ਨਾਲ ਗਤੀ ਦੀ "
+#~ "ਦਿਸ਼ਾ ਉਲਟਦੀ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ "
+#~ "ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ "
+#~ "ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਹਮੇਸ਼ਾ ਸਿਖਰ ਉੱਤੇ ਰਹਿਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਝਰੋਖਾ ਜੋ ਹਮੇਸ਼ਾ ਸਿਖਰ ਤੇ ਹੁੰਦਾ ਹੈ "
+#~ "ਹਮੇਸ਼ਾ ਹੋਰ ਇੱਕ ਦੂਜੇ ਨੂੰ ਢਕਣ ਵਾਲੇ ਝਰੋਖਿਆਂ ਦੇ ਉੱਤੇੋਂ ਵੀ ਦਿਖੇਗਾ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1 ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਸਾਰੀ ਸਕਰੀਨ ਮੋਡ ਵਿੱਚ ਲਿਜਾਂਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ"
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ "
+#~ "ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵੱਡਾ ਆਕਾਰ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਰੰਗਤ/ਬਿਨ-ਰੰਗਤ ਸਥਿਤੀ ਵਿੱਚ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ "
+#~ "ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ "
+#~ "ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਸਾਰੇ ਵਰਕਸਪੇਸਾਂ ਜਾਂ ਸਿਰਫ ਇੱਕ ਉੱਤੇ ਲਿਜਾਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ।ਫਾਰਮੈਟ "
+#~ "ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1।ਪਾਰਸਰ "
+#~ "ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ "
+#~ "\"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ "
+#~ "ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਵਿੰਡੋ ਨੂੰ ਵੱਡਾ ਨਾ ਰੱਖਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦਾ ਹੈ\"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜਿਹੜਾ ਪੈਨਲ ਦੇ \"ਕਾਰਜ ਚਲਾਓ\" ਡਾਈਲਾਗ ਡੱਬੇ ਨੂੰ ਵਿਖਾਉਂਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ "
+#~ "ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ "
+#~ "ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ, ਜਿਸ ਵਿੱਚ ਇੱਕ ਟਰਮੀਨਲ ਸ਼ਾਮਲ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿੱਸਦਾ ਹੈ \"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ, ਜਿਹੜਾ ਵਿੰਡੋ ਦੀ ਸਕਰੀਨ-ਸ਼ਾਟ ਲੈਣ ਵਾਸਤੇ ਪੈਨਲ ਦੀ ਸਕਰੀਨ-ਸ਼ਾਟ ਸਹੂਲਤ ਨੂੰ "
+#~ "ਬੁਲਾਉਦਾ ਹੈ।ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਸਦੀ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ "
+#~ "ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ "
+#~ "\"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜਿਹੜਾ ਵਿੰਡੋ ਦੀ ਸਕਰੀਨ-ਸ਼ਾਟ ਸਹੂਲਤ ਨੂੰ ਬੁਲਾਉਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਖਦਾ ਹੈ "
+#~ "\"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1।ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ "
+#~ "ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" "
+#~ "ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂਇਸ ਕਿਰਿਆ ਵਾਸਤੇ "
+#~ "ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਜਿਹੜਾ ਪੈਨਲ ਦੀ ਮੁੱਖ ਮੇਨੂ ਵਿਖਾਉਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿੱਸਦਾ ਹੈ \"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1।ਪਾਰਸਰਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਬਦਲਦੀਆਂ ਹਨ, ਭਾਵੇਂ ਵਿੰਡੋ ਹੋਰ ਵਿੰਡੋ ਦੇ ਉੱਤੇ ਜਾਂ ਹੇਠਾਂ ਹੋਵੇ। ਜੇ ਵਿੰਡੋ ਹੋਰ ਵਿੰਡੋ ਨਾਲ ਢੱਕੀ "
+#~ "ਹੋਵੇ, ਇਹ ਵਿੰਡੋ ਨੂੰ ਹੋਰ ਵਿੰਡੋ ਤੋਂ ਉੱਤੇ ਉਠਾਉਦਾ ਹੈ। ਜੇ ਵਿੰਡੋ ਪਹਿਲਾਂ ਹੀ ਪੂਰਾ ਦਿਸਦੀ ਹੈ, ਇਹ ਵਿੰਡੋ ਨੂੰ "
+#~ "ਹੋਰ ਵਿੰਡੋ ਤੋਂ ਹੇਠਾਂ ਕਰਦੀ ਹੈ। ਫਾਰਮੈਟ ਇੰਜ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ "
+#~ "ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ "
+#~ "ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਝਰੋਖੇ ਨੂੰ ਹੋਰ ਝਰੋਖੇ ਤੋਂ ਹੇਠਾਂ ਕਰਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ ਦਿਖਦੀ ਹੈ \"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\"ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਝਰੋਖੇ ਸਕਰੀਨ ਦੇ ਉੱਤਰੀ (ਉੱਤੇ) ਪਾਸੇ ਭੇਜਦੀ ਹੈ। ਫਾਰਮੈਟ \"&lt;Control&gt;a\" ਜਾਂ "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1 ਹੈ। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ "
+#~ "ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। "
+#~ "ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\"ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ "
+#~ "ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਝਰੋਖੇ ਸਕਰੀਨ ਦੇ ਪੂਰਬੀ (ਸੱਜੇ) ਪਾਸੇ ਭੇਜਦੀ ਹੈ। ਫਾਰਮੈਟ \"&lt;Control&gt;a\" ਜਾਂ "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1 ਹੈ। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ "
+#~ "ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। "
+#~ "ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\"ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ "
+#~ "ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਇੱਕ ਝਰੋਖੇ ਨੂੰ ਸਕਰੀਨ ਦੇ ਉੱਤਰੀ-ਪੂਰਬੀ (ਉੱਤੇ ਸੱਜੇ) ਕੋਨੇ ਵੱਲ ਭੇਜਦੀ ਹੈ। ਫਾਰਮੈਟ \"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1 ਹੈ। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\"ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਇੱਕ ਝਰੋਖੇ ਨੂੰ ਸਕਰੀਨ ਦੇ ਉੱਤਰੀ-ਪੱਛਮੀ (ਉੱਤੇ ਖੱਬੇ) ਕੋਨੇ ਵੱਲ ਭੇਜਦੀ ਹੈ। ਫਾਰਮੈਟ \"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1 ਹੈ। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\"ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਇੱਕ ਝਰੋਖੇ ਨੂੰ ਸਕਰੀਨ ਦੇ ਦੱਖਣੀ (ਹੇਠਾਂ) ਕੋਨੇ ਵੱਲ ਭੇਜਦੀ ਹੈ। ਫਾਰਮੈਟ \"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1 ਹੈ। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\"ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਇੱਕ ਝਰੋਖੇ ਨੂੰ ਸਕਰੀਨ ਦੇ ਦੱਖਣੀ-ਪੂਰਬੀ (ਹੇਠਾਂ ਸੱਜੇ) ਕੋਨੇ ਵੱਲ ਭੇਜਦੀ ਹੈ। ਫਾਰਮੈਟ \"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1 ਹੈ। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\"ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਇੱਕ ਝਰੋਖੇ ਨੂੰ ਸਕਰੀਨ ਦੇ ਦੱਖਣੀ-ਪੱਛਮੀ (ਹੇਠਾਂ ਖੱਬੇ) ਕੋਨੇ ਵੱਲ ਭੇਜਦੀ ਹੈ। ਫਾਰਮੈਟ \"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1 ਹੈ। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\"ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਇੱਕ ਝਰੋਖੇ ਨੂੰ ਸਕਰੀਨ ਦੇ ਪੱਛਮੀ (ਖੱਬੇ) ਪਾਸੇ ਵੱਲ ਭੇਜਦੀ ਹੈ। ਫਾਰਮੈਟ \"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1 ਹੈ। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਆਜ਼ਾਦ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\"ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਾਰਵਾਈ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਕੀ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗੀ।"
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਝਰੋਖੇ ਨੂੰ ਹੋਰ ਝਰੋਖੇ ਤੋਂ ਉੱਤੇ ਉਠਾਉਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾ ਦਿੱਸਦਾ ਹੈ\"&lt;"
+#~ "Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ "
+#~ "ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;Ctl&gt;\" ਅਤੇ "
+#~ "\"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ "
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਝਰੋਖੇ ਨੂੰ ਪੂਰੀ ਉਪਲੱਬਧ ਸਮਤਲ ਜਗਾ ਤੱਕ ਮੁੜ ਆਕਾਰ ਦਿੰਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ "
+#~ "ਦਿੱਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰਪੂਰੀ "
+#~ "ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\"ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਝਰੋਖੇ ਨੂੰ ਪੂਰੀ ਉਪਲੱਬਧ ਲੰਬਕਾਰੀ ਜਗਾ ਤੱਕ ਮੁੜ ਆਕਾਰ ਦਿੰਦਾ ਹੈ। ਫਾਰਮੈਟ ਇਸ ਤਰਾਂ "
+#~ "ਦਿਸਦਾ ਹੈ \"&lt;Control&gt;a\" ਜਾਂ \"&lt;Shift&gt;&lt;Alt&gt;F1। ਪਾਰਸਰ ਪੂਰੀ "
+#~ "ਤਰਾਂ ਸਿੱਖਿਅਤ ਹੈ ਅਤੇ ਛੋਟੇ ਜਾਂ ਵੱਡੇ ਅੱਖਰਾਂ ਨੂੰ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਸੰਖੇਪ ਰਚਨਾ ਵੀ ਜਿਵੇਂ ਕਿ \"&lt;"
+#~ "Ctl&gt;\" ਅਤੇ \"&lt;Ctrl&gt;\"। ਜੇ ਤੁਸੀਂ ਖਾਸ ਸਤਰ ਦੀ ਚੋਣ \"ਅਯੋਗ\" ਬਣਾਉਦੇ ਹੋ ਤਾਂ ਇਸ "
+#~ "ਕਿਰਿਆ ਵਾਸਤੇ ਕੋਈ ਸਵਿੱਚ-ਬਾਈਡਿੰਗ ਨਹੀਂ ਹੋਵੇਗਾ।"
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "ਹਮੇਸ਼ਾ ਸਿਖਰ ਸਥਿਤੀ ਕਰੋ"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "ਵਿੰਡੋ ਨਾ-ਅਧਿਕਤਮ"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "%s ਦੀ ਟਾਇਪ ਪੂਰਨ ਅੰਕ ਨਹੀਂ ਹੈ"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "MateConf ਕੁੰਜੀ %2$s ਵਿੱਚ %1$d ਸੰਭਾਲਿਆ ਕਰਸਰ ਅਕਾਰ(cursor_size) ਠੀਕ ਨਹੀਂ ਹੈ, ਇਹ "
+#~ "1..128 ਵਿੱਚ ਹੀ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ।\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "ਸੰਭਾਲੀ %d ਜੀ-ਕਾਨਫ ਸਵਿੱਚ \"%s\" ਵਿੱਚ ਵਰਕਸਪੇਸ ਦਾ ਉਚਿੱਤ ਅੰਕ ਨਹੀਂ ਹੈ, ਮੌਜੂਦਾ ਅਧਿਕਤਮ %d "
+#~ "ਹੈ \n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "<marco_session> ਐਲਿਮੰਟ ਉੱਤੇ %s ਗੁਣ ਅਣਜਾਣ"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "<maximized> ਐਲਿਮੰਟ ਉੱਤੇ %s ਗੁਣ ਅਣਜਾਣ"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "<geometry> ਐਲਿਮੰਟ ਉੱਤੇ %s ਗੁਣ ਅਣਜਾਣ"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "ਕਾਰਜਾਂ, ਜਿਹੜੇ ਸ਼ੈਸ਼ਨ ਪਰਬੰਧ ਨੂੰ ਨਹੀਂ ਮੰਨਦੇ ਬਾਰੇ ਚੇਤਾਵਨੀ ਲਈ ਮੈਟਾਸਿਟੀ ਡਾਈਲਾਗ ਸ਼ੁਰੂ ਕਰਨ ਦੀ "
+#~ "ਗਲਤੀ:%s\n"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "ਕੋਈ \"%s\" ਗੁਣ ਨਹੀਂ ਹੈ <%s> ਐਲਿਮੰਟ ਉੱਤੇ"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "ਥੀਮ ਕੋਲ ਪਹਿਲਾਂ ਹੀ ਫਾਲਬੈਕ ਆਈਕਾਨ ਹੈ"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "ਥੀਮ ਕੋਲ ਪਹਿਲਾਂ ਹੀ ਮਿੰਨੀ_ਆਈਕਾਨ ਹੈ"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਨਾਂ\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਕੀਮਤ\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਸਿਖਰ\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਤਲ\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਖੱਬਾ\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਸੱਜਾ\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਰੰਗ\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"x1\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"y1\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"x2\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"y2\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"y\" ਗੁਣ ਨਹੀਂ"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਚੌੜਾਈ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਉਚਾਈ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਸ਼ੁਰੂ_ਕੋਣ\" ਗੁਣ ਨਹੀਂ ਹੈ ।"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਸੀਮਾਂ_ਕੋਣ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਐਲਫਾ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਕਿਸਮ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਫਾਇਲ ਨਾਂ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਹਾਲਤ\"ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਪਰਛਾਂਵਾਂ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "<%s> ਐਲਿਮੰਟ ਉੱਤੇ ਕੋਈ \"ਤੀਰ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "ਐਲਿਮੰਟ <%s> ਉੱਤੇ ਕੋਈ \"ਕੀਮਤ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "ਐਲਿਮੰਟ <%s> ਉੱਤੇ ਕੋਈ \"ਸਥਿਤੀ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "ਐਲਿਮੰਟ <%s> ਉੱਤੇ ਕੋਈ \"ਕੰਮ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "ਐਲਿਮੰਟ <%s> ਉੱਤੇ ਕੋਈ \"ਹਾਲਤ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "ਐਲਿਮੰਟ <%s> ਉੱਤੇ ਕੋਈ \"ਫੋਕਸ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "ਐਲਿਮੰਟ <%s> ਉੱਤੇ ਕੋਈ \"ਸਟਾਇਲ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "ਐਲਿਮੰਟ <%s> ਉੱਤੇ ਕੋਈ \"ਮੁੜ ਆਕਾਰ ਦਿਓ\" ਗੁਣ ਨਹੀਂ ਹੈ।"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "ਇਸ ਥੀਮ ਲਈ <author> ਦੋ ਵਾਰ ਬਿਆਨ ਕੀਤਾ ਗਿਆ"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "ਇਸ ਥੀਮ ਲਈ <copyright> ਦੋ ਵਾਰ ਬਿਆਨ ਕੀਤਾ ਗਿਆ"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "ਇਸ ਥੀਮ ਲਈ <date> ਦੋ ਵਾਰ ਬਿਆਨ ਕੀਤੀ ਗਈ"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "ਇਸ ਥੀਮ ਲਈ <description> ਦੋ ਵਾਰ ਬਿਆਨ ਕੀਤਾ ਗਿਆ"
diff --git a/po/pl.po b/po/pl.po
new file mode 100644
index 00000000..a2c4bf34
--- /dev/null
+++ b/po/pl.po
@@ -0,0 +1,2436 @@
+# -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+# Aviary.pl
+# Jeśli masz jakiekolwiek uwagi odnoszące się do tłumaczenia lub chcesz
+# pomóc w jego rozwijaniu i pielęgnowaniu, napisz do nas:
+# -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-01-21 21:34+0000\n"
+"PO-Revision-Date: 2010-02-24 18:19+0100\n"
+"Last-Translator: Piotr Drąg <[email protected]>\n"
+"Language-Team: Polish <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
+"|| n%100>=20) ? 1 : 2);\n"
+"X-Poedit-Language: Polish\n"
+"X-Poedit-Country: Poland\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Pulpit"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Zarządzanie oknami"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Zdarzenie sygnału dźwiękowego"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Żądanie nieznanej informacji okna: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "Okno <tt>%s</tt> nie odpowiada."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "Można poczekać chwilę dłużej lub wymusić zakończenie programu."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Czekaj"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Zakończ"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Uzyskanie nazwy komputera się nie powiodło: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Brak rozszerzenia %s wymaganego przez składanie"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr ""
+"Otwarcie połączenia z ekranem \"%s\" systemu X Window się nie powiodło\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Utracono połączenie z ekranem \"%s\".\n"
+"Prawdopodobnie przestał funkcjonować serwer X lub przerwano działanie "
+"menedżera okien.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Krytyczny błąd wejścia/wyjścia %d (%s) na ekranie \"%s\".\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Skrótu klawiszowego z klawiszem %s i modyfikatorami %x używa już inny "
+"program\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Wystąpił błąd podczas uruchamiania <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Nie określono polecenia %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Nie określono polecenia terminala.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., oraz inni\n"
+"Niniejszy program jest wolnym oprogramowaniem, aby poznać warunki, pod\n"
+"jakimi dopuszczalne jest kopiowanie programu, zajrzyj do jego źródeł.\n"
+"Na program nie udziela się ŻADNYCH GWARANCJI, nawet domyślnej gwarancji\n"
+"PRZYDATNOŚCI HANDLOWEJ albo PRZYDATNOŚCI DO OKREŚLONYCH ZASTOSOWAŃ.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Wyłącza połączenie z menedżerem sesji"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Podmienia uruchomionego menedżera okien na Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Określa identyfikator zarządzania sesją"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Używany ekran X"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inicjuje sesję z zapisanego pliku"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Wyświetla wersję"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Synchroniczne wezwania X"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Włącza składanie"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Wyłącza składanie"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Nie przełącza okien na pełny ekran, jeśli są zmaksymalizowane i nie "
+"posiadają dekoracji"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Przejrzenie katalogu z motywami się nie powiodło: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Nie można odnaleźć żadnego motywu. Proszę sprawdzić, czy katalog %s istnieje "
+"i zawiera standardowe motywy.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Ponowne uruchomienie się nie powiodło: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Kluczowi MateConf \"%s\" jest przypisana nieprawidłowa wartość\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "Wartość %d zapisana w kluczu MateConf %s jest poza zakresem %d - %d\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Klucz MateConf \"%s\" jest nieprawidłowego typu\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Obejścia dla błędnie działających programów są wyłączone. Niektóre z nich "
+"mogą się więc zachowywać w sposób nieprzewidywalny.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Nie można przetworzyć opisu czcionki \"%s\", powiązanego z kluczem MateConf %s\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Wartość \"%s\", odnaleziona w bazie danych konfiguracji nie opisuje "
+"prawidłowo modyfikatora przycisku myszy\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Błąd podczas ustawiania liczby obszarów roboczych na %d: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "Obszar roboczy %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Wartość \"%s\", odnaleziona w bazie danych konfiguracji nie opisuje "
+"prawidłowo skrótu klawiszowego \"%s\"\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Błąd podczas ustawiania nazwy obszaru roboczego %d na \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Błąd podczas ustawiania stanu menedżera składania: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Podekran %d ekranu \"%s\" jest nieprawidłowy\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Na podekranie %d ekranu \"%s\" działa już menedżer okien. Aby zastąpić "
+"działającego menedżera okien, proszę spróbować użyć opcji --replace.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Nie można uzyskać zaznaczenia menedżera okien na podekranie %d ekranu \"%s"
+"\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Na podekranie %d ekranu \"%s\" działa już menedżer okien\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Nie można zwolnić podekranu %d ekranu \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Przykładowy zapis ma postać \"&lt;Control&gt;a\" lub \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1.\n"
+"\n"
+"Analiza składniowa jest niezbyt restrykcyjna - pozwala to na używanie małych "
+"i wielkich liter oraz skrótów, takich jak \"&lt;Ctl&gt;\" oraz \"&lt;Ctrl&gt;"
+"\". Jeśli opcji zostanie przypisany specjalny atrybut \"disabled"
+"\" (wyłączone), wówczas z czynnością nie będzie powiązany żaden skrót "
+"klawiszowy."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Przykładowy zapis ma postać \"&lt;Control&gt;a\" lub \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1.\n"
+"\n"
+"Analiza składniowa jest niezbyt restrykcyjna - pozwala to na używanie małych "
+"i wielkich liter oraz skrótów, takich jak \"&lt;Ctl&gt;\" oraz \"&lt;Ctrl&gt;"
+"\". Jeśli opcji zostanie przypisany specjalny napis \"disabled"
+"\" (wyłączone), wówczas z czynnością nie będzie powiązany żaden skrót "
+"klawiszowy.\n"
+"\n"
+"Działanie skrótu może zostać odwrócone poprzez naciśnięcie klawisza \"Shift"
+"\"; z tego powodu, do skrótu nie można przypisać klawisza \"Shift\"."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Nie można utworzyć katalogu \"%s\": %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Nie można otworzyć pliku sesji \"%s\" do zapisania: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Błąd podczas zapisywania pliku sesji \"%s\": %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Błąd podczas zamykania pliku sesji \"%s\": %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Odczytanie zapisanego pliku sesji \"%s\" się nie powiodło: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Przetworzenie zapisanego pliku sesji się nie powiodło: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"Odnaleziono atrybut <marco_session>, kiedy identyfikator sesji został już "
+"ustawiony"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Nieznany atrybut %s elementu <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "zagnieżdżony znacznik <window>"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Nieznany element %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Te okna nie obsługują opcji zapisu aktualnego stanu (\"save current setup"
+"\"), więc przy następnym zalogowaniu będą musiały zostać uruchomione ręcznie."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Otwarcie dziennika z zapisem wykonania się nie powiodło: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Wykonać fdopen() na pliku dziennika %s się nie powiodło: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Otwarty plik dziennika %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+"Program Marco został skompilowany bez obsługi trybu z obszerną "
+"informacją\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Menedżer okien: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Błąd w programie menedżera okien: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Ostrzeżenie menedżera okien: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Błąd menedżera okien: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Okno %s ustawia na sobie SM_CLIENT_ID, zamiast na oknie WM_CLIENT_LEADER, "
+"jak to określono w specyfikacji ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Okno %s ustawia atrybut MWM, określający, że jego rozmiar okna jest "
+"niezmienny, lecz jednocześnie ustawia minimalny rozmiar na %d x %d, a "
+"maksymalny rozmiar na %d x %d. To nie ma żadnego sensu.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Program ustawił błędną wartość _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (na %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (jako administrator)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (na %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (jako inny użytkownik)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+"Nieprawidłowa wartość WM_TRANSIENT_FOR dla okna 0x%lx określona w %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Okno 0x%lx ma właściwość %s,\n"
+"której oczekiwanym typem jest %s, w formacie %d,\n"
+"a w rzeczywistości ma typ %s, w formacie %d przy n_items %d.\n"
+"Prawdopodobnie jest to błąd programu, a nie menedżera okien.\n"
+"Właściwości okna: tytuł=\"%s\" klasa=\"%s\" nazwa=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+"Własność %s odnosząca się do okna 0x%lx zawiera nieprawidłową sekwencję "
+"UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Własność %s odnosząca się do okna 0x%lx zawiera nieprawidłową sekwencję "
+"UTF-8 w %d. elemencie listy\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Przełączenie na 1. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Przełączenie na 2. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Przełączenie na 3. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Przełączenie na 4. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Przełączenie na 5. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Przełączenie na 6. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Przełączenie na 7. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Przełączenie na 8. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Przełączenie na 9. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Przełączenie na 10. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Przełączenie na 11. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Przełączenie na 12. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Przełączenie na obszar roboczy po lewej"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Przełączenie na obszar roboczy po prawej"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Przełączenie na obszar roboczy powyżej"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Przełączenie na obszar roboczy poniżej"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Przejście pomiędzy oknami programu z użyciem podręcznego okna"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Przejście do poprzedniego okna programu z użyciem okna podręcznego"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Przechodzenie pomiędzy oknami z użyciem okna podręcznego"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Przejście do poprzedniego okna z użyciem okna podręcznego"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Przechodzenie między panelami i pulpitem z użyciem okna podręcznego"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Przejście wstecz między panelami a biurkiem z użyciem okna podręcznego"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Natychmiastowe przejście pomiędzy oknami programu"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Przejście do poprzedniego okna programu bezpośrednio"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Natychmiastowe przejście pomiędzy oknami"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Przejście do poprzedniego okna bezpośrednio"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Natychmiastowe przejście pomiędzy panelami i biurkiem"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Przejście wstecz pomiędzy panelami i biurkiem"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Ukrycie wszystkich okien i uaktywnienie pulpitu"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Wyświetlenie głównego menu panelu"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Wyświetlenie okna uruchamiania panelu"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Pobranie zrzutu ekranu"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Pobranie zrzutu okna"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Uruchomienie terminala"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Otwarcie menu okna"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Przełączenie trybu pełnoekranowego"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Przełączenie trybu maksymalizacji"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Przełączanie widoczności okna na samej górze"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maksymalizacja okna"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Przywrócenie okna"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Przełączenie trybu zwinięcia"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimalizacja okna"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Zamknięcie okna"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Przeniesienie okna"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Zmiana rozmiaru okna"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Przełączenie obecności okna na wszystkich obszarach roboczych/tylko jednym"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Przeniesienie okna na 1. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Przeniesienie okna na 2. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Przeniesienie okna na 3. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Przeniesienie okna na 4. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Przeniesienie okna na 5. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Przeniesienie okna na 6. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Przeniesienie okna na 7. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Przeniesienie okna na 8. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Przeniesienie okna na 9. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Przeniesienie okna na 10. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Przeniesienie okna na 11. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Przeniesienie okna na 12. obszar roboczy"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Przeniesienie okna o obszar roboczy w lewo"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Przeniesienie okna o obszar roboczy w prawo"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Przeniesienie okna o obszar roboczy w górę"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Przeniesienie okna o obszar roboczy w dół"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Wysunięcie okna, jeśli jest zasłonięte, odsunięcie w przeciwnym wypadku."
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Wysunięcie okna przed pozostałe"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Odsunięcie okna pod pozostałe"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Pionowa maksymalizacja okna"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Pozioma maksymalizacja okna"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Przeniesienie okna do lewej górnej części ekranu"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Przeniesienie okna do prawej górnej części ekranu"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Przeniesienie okna do lewej dolnej części ekranu"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Przeniesienie okna do prawej dolnej części ekranu"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Przeniesienie okna do górnej części ekranu"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Przeniesienie okna do dolnej części ekranu"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Przeniesienie okna do prawej części ekranu"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Przeniesienie okna do lewej części ekranu"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Przeniesienie okna na środek ekranu"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Nie zaimplementowane) Oparcie nawigacji na programach, zamiast na oknach"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Napis opisujący czcionkę używaną na paskach tytułowych okien. Rozmiar z tego "
+"opisu będzie jednak użyty tylko, jeśli opcja titlebar_font_size ma wartość "
+"0. Opcja ta jest wyłączona, jeśli opcja titlebar_uses_desktop_font jest "
+"ustawiona na wartość true. "
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Operacja przy dwukrotnym kliknięciu paska tytułowego"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Operacja przy kliknięciu paska tytułowego środkowym przyciskiem"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Operacja przy kliknięciu paska tytułowego prawym przyciskiem"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Rozmieszczenie przycisków na pasku tytułowym"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Rozmieszczenie przycisków na pasku tytułowym. Wartość powinna być napisem w "
+"postaci \"menu:minimize,maximize,close\". Dwukropek rozdziela lewy róg okna "
+"od prawego, zaś nazwy przycisków są rozdzielone przecinkami. Nie można "
+"używać dwóch takich samych przycisków. Nieznane nazwy przycisków są "
+"ignorowane, aby w przyszłych wersjach programu mogły zostać dodane nowe "
+"przyciski nie powodując konfliktów. Aby rozdzielić dwa sąsiadujące ze sobą "
+"przyciski, można użyć specjalnego znacznika rozdzielenia ."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Automatyczne wysuwanie uaktywnianych okien"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Kliknięcie okna przy przytrzymaniu tego modyfikatora spowoduje przesunięcie "
+"okna (lewy przycisk), zmianę jego rozmiaru (środkowy przycisk) lub "
+"wyświetlenie menu okna (prawy przycisk). Funkcjonalność lewego i prawego "
+"przycisku myszy można odwrócić za pomocą klucza \"resize_with_right_button\". "
+"Przykładowy zapis modyfikatora ma postać \"&lt;Alt&gt;\" lub \"&lt;Super&gt;"
+"\"."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Polecenia uruchamiane w odpowiedzi na użycia skrótów klawiszowych"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Menedżer składania"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Określa, w jaki sposób uaktywniane są okna"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Bieżący motyw"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+"Opóźnienie w milisekundach używane przez opcję automatycznego wysuwania"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Określa, czy program Marco ma być menedżerem składania."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Określa, czy programy lub system mogą generować słyszalne sygnały dźwiękowe; "
+"opcja może być używana razem z opcją \"wizualne sygnały dźwiękowe\", "
+"przedstawiającą sygnały dźwiękowe w formie graficznej."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Wyłącza własności, które wymagane są przez stare i błędne programy."
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Włączone wizualne sygnały dźwiękowe"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Jeśli właściwość ta jest ustawiona, a sposób uaktywniania ustawiono jako "
+"\"sloppy\" (ang. luźny) lub \"mouse\" (ang. mysz), uaktywniane okno będzie "
+"automatycznie wysuwane po upływie czasu określanego przez klucz "
+"auto_raise_delay. Opcja ta nie ma zastosowania w przypadku klikania na "
+"oknie, aby je wysunąć, ani w przypadku przechodzenia do okna podczas "
+"przeciągania go."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ustawienie opcji powoduje ignorowanie opcji titlebar_font i używanie zamiast "
+"tego na paskach tytułowych standardowej czcionki systemowej używanej przez "
+"programy."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Ustawienie tej opcji spowoduje, że menedżer Marco ograniczy interakcję z "
+"użytkownikiem poprzez użycie ramek przy skalowaniu okien, wyłączenie "
+"animacji i podobne. Dla wielu użytkowników może być to znaczące ograniczenie "
+"funkcjonalności, ale może pozwolić starszym programom i terminalom na "
+"normalną pracę, która w innym wypadku byłaby niemożliwa. Ramki skalowania "
+"okien będą jednak wyłączone po włączeniu technologii wspierających."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Ustawienie tej opcji powoduje, że menedżer Marco pracuje w ramach "
+"programów, nie okien. Pojęcie to jest nieco abstrakcyjne, ale ogólnie "
+"ustawienia oparte na programach przypominają raczej działanie systemu MacOS "
+"niż systemu Windows. Gdy menedżer pracuje w trybie programów, po "
+"uaktywnieniu okna wszystkie okna danego programu zostaną wysunięte. W trybie "
+"programów kliknięcia aktywujące nie są przekazywane do okien innych "
+"programów. Aktualnie tryb programów nie jest jednak w pełni obsługiwany."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Jeżeli ustawione, zmniejsza zużycie zasobów kosztem funkcjonalności"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modyfikator używany do wykonywania operacji poprzez kliknięcie okna"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nazwa obszaru roboczego"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Liczba obszarów roboczych"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Liczba obszarów roboczych. Musi być większa od zera i ma ustalone maksimum "
+"(aby zapobiec przypadkowemu unieruchomieniu środowiska przez żądanie zbyt "
+"wielu obszarów roboczych)."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Uruchomienie zdefiniowanego polecenia"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Po włączeniu użytkownik będzie mógł zmieniać rozmiar okna po wciśnięciu "
+"prawego przycisku myszy i wyświetlać menu za pomocą środkowego przycisku "
+"przy jednoczesnym wciśnięciu przycisku podanego w opcji "
+"\"mouse_button_modifier\"; po wyłączeniu, sytuacja będzie odwrotna."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Wyłączenie tej opcji może prowadzić do nieprawidłowego działania, dlatego "
+"zaleca się, aby użytkownicy nie zmieniali jej domyślnej wartości. Wiele "
+"działań (np. kliknięcie w obszarze klienta, przesuwanie lub zmiana rozmiaru "
+"okna) powoduje jednoczesne wysunięcie okna. Odznaczenie tej opcji spowoduje "
+"oddzielenie wysuwania okna od innych działań użytkownika oraz ignorowanie "
+"żądań wysunięcia okna wysyłanych przez programy. Więcej informacji można "
+"także znaleźć na stronie http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+"Jednak nawet, gdy opcja jest wyłączona, okno może być wysunięte za pomocą "
+"kliknięcia lewym przyciskiem myszy w obszarze okna z jednoczesnym "
+"przytrzymaniem klawisza Alt, zwykłego kliknięcia na dekoracji okna, lub "
+"specjalnych komunikatów systemowych, jak np. żądania aktywacji z apletu "
+"listy zadań.Opcja ta jest wyłączona w trybie uaktywnienia przez kliknięcie."
+"Lista sposobów wysuwających okna, gdy opcja \"rise_on_click\" nie jest "
+"włączona, nie zawiera programowych żądań wysunięcia okna wysyłanych przez "
+"programy; te żądania będą ignorowane, niezależnie od ich powodu. Rada dla "
+"programistów: jeśli użytkownik uskarża się, że program po wyłączeniu tej "
+"opcji nie działa, należy uświadomić mu, że to _jego_ wina, oraz że powinien "
+"włączyć ją z powrotem, jeśli chce się pozbyć problemu."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Niektóre programy nie stosują się do specyfikacji, co może powodować "
+"nieprawidłowe zachowanie menedżera okien. Ta opcja przestawia Marco w "
+"tryb ściśle prawidłowy, w którym interfejs użytkownika jest bardziej spójny, "
+"o ile nie są uruchamiane żadne programy łamiące specyfikacje."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Brzęczyk systemowy jest słyszalny"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Opcja określa, w jaki sposób Marco ma graficznie przedstawić odtworzenie "
+"dźwięku przez brzęczyk systemowy lub program, który z niego korzysta. "
+"Aktualnie obsługiwane są dwie wartości \"fullscreen\", która powoduje "
+"mignięcie całego ekranu na czarno i biało oraz \"frame_flash\", która "
+"powoduje mignięcie paska tytułowego programu podczas wydawania dźwięku. "
+"Jeśli program, który wysłał sygnał dźwiękowy będzie nieznany (jak to ma "
+"zwykle miejsce przy domyślnym \"dźwięku systemowym\"), pasek tytułowy "
+"aktywnego okna zamigocze."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Klucze /apps/marco/global_keybindings/run_command_N określają skróty "
+"klawiszowe, które odpowiadają tym poleceniom. Użycie skrótu zapisanego w "
+"run_command_N spowoduje wykonanie polecenia zapisanego w command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Klucz /apps/marco/global_keybindings/run_command_screenshot określa "
+"skrót klawiszowy wywołujący polecenie określone przez to ustawienie."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Klucz /apps/marco/global_keybindings/run_command_window_screenshot "
+"określa skrót klawiszowy wywołujący polecenia określone przez to "
+"ustawienie."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Skrót klawiszowy, który wykonuje polecenie o odpowiadającym mu numerze, "
+"pobrane z ustawienia o kluczu /apps/marco/keybinding_commands. "
+"Przykładowy zapis skrótu ma postać \"&lt;Control&gt;a\" lub \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1. Analiza składniowa jest niezbyt restrykcyjna - pozwala to na "
+"używanie małych i wielkich liter oraz skrótów, takich jak \"&lt;Ctl&gt;\" "
+"oraz \"&lt;Ctrl&gt;\". Jeśli opcji zostanie przypisany specjalny napis "
+"\"disabled\" (ang. nieaktywne), wówczas z czynnością nie będzie powiązany "
+"żaden skrót klawiszowy."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Nazwa obszaru roboczego."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Polecenie pobrania zrzutu ekranu"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Motyw określa wygląd krawędzi okien, pasków tytułowych itp."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Opóźnienie czasowe przed wysunięciem okna, jeśli opcja automatycznego "
+"wysuwania (auto_rise) jest ustawiona. Opóźnienie jest podane w tysięcznych "
+"częściach sekundy."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Tryb uaktywnienia określa, w jaki sposób aktywowane są okna. Opcja ta może "
+"przyjmować trzy wartości; \"click\" (ang. kliknięcie) oznacza, że okno musi "
+"zostać kliknięte, aby zostało uaktywnione, \"sloppy\" (ang. luźny) oznacza, "
+"że okno otrzymuje skupienie, gdy przesunięty zostanie na jego obszar kursor "
+"myszy, zaś \"mouse\" (ang. mysz) oznacza, że okno zostaje uaktywnione, gdy "
+"kursor myszy przesunięty zostanie na jego obszar, a po opuszczeniu go "
+"aktywacja jest wyłączana."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Polecenie pobrania zrzutu okna"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ta opcja określa skutek dwukrotnego kliknięcia paska tytułowego okna. "
+"Aktualnie prawidłowymi opcjami są: \"toggle_shade\" (zwija/rozwija okno), "
+"\"toggle_maximize\" (maksymalizuje/przywraca rozmiar okna), "
+"\"toggle_maximize_horizontally\" i \"toggle_maximize_vertically"
+"\" (maksymalizują/minimalizują okno w poziomie lub w pionie), \"minimize"
+"\" (minimalizuje okno), \"shade\" (zwija okno), \"menu\" (wyświetla menu "
+"okna), \"lower\" (chowa okno pod pozostałe) i \"none\" (brak jakiegokolwiek "
+"efektu)."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ta opcja określa skutek kliknięcia środkowym przyciskiem myszy na pasku "
+"tytułowym okna. Aktualnie prawidłowymi opcjami są: \"toggle_shade\" (zwija/"
+"rozwija okno), \"toggle_maximize\" (maksymalizuje/przywraca rozmiar okna), "
+"\"toggle_maximize_horizontally\" i \"toggle_maximize_vertically"
+"\" (maksymalizują/minimalizują okno w poziomie lub w pionie), \"minimize"
+"\" (minimalizuje okno), \"shade\" (zwija okno), \"menu\" (wyświetla menu "
+"okna), \"lower\" (chowa okno pod pozostałe) i \"none\" (brak jakiegokolwiek "
+"efektu)."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ta opcja określa skutek kliknięcia prawym przyciskiem myszy na pasku "
+"tytułowym okna. Aktualnie prawidłowymi opcjami są: \"toggle_shade\" (zwija/"
+"rozwija okno), \"toggle_maximize\" (maksymalizuje/przywraca rozmiar okna), "
+"\"toggle_maximize_horizontally\" i \"toggle_maximize_vertically"
+"\" (maksymalizują/minimalizują okno w poziomie lub w pionie), \"minimize"
+"\" (minimalizuje okno), \"shade\" (zwija okno), \"menu\" (wyświetla menu "
+"okna), \"lower\" (chowa okno pod pozostałe) i \"none\" (brak jakiegokolwiek "
+"efektu)."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Ta opcja daje dodatkowe możliwości konfiguracji sposobu, w jaki nowo "
+"utworzone okna zostają uaktywnione. Dostępne są dwie wartości: \"smart\" - "
+"typowy tryb uaktywniania wg ustawień użytkownika i \"strict\" - okna otwarte "
+"z poziomu terminala nie zostaną uaktywnione."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Włączenie opcji spowoduje, że w przypadku gdy program lub system wyda sygnał "
+"dźwiękowy, wyświetlony zostanie komunikat; jest ona użyteczna dla "
+"użytkowników niedosłyszących oraz w środowiskach o dużym natężeniu dźwięku."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Użycie standardowej czcionki systemowej w paskach tytułowych okien"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Typ wizualnego sygnału dźwiękowego"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Określa, czy wysuwanie okna powinno towarzyszyć innym działaniom użytkownika"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Określa, czy zmieniać rozmiar okna za pomocą prawego przycisku myszy"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Tryb uaktywnienia okna"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Czcionka tytułu okna"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Użycie: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Zamyka okno"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menu okna"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimalizuje okno"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maksymalizuje okno"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Przywrócenie okna"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Zwiń okno"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Rozwiń okno"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Zatrzymaj okno na wierzchu"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Usuń okno z wierzchu"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Zawsze na widocznym obszarze roboczym"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Umieść okno tylko na jednym obszarze roboczym"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Zm_inimalizuj"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Zm_aksymalizuj"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Przywróć zm_aksymalizowane"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Zwiń"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Ro_zwiń"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Prz_esuń"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Zmień _rozmiar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Przeno_szenie paska tytułowego na ekranie"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Zawsze na _wierzchu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Zawsze na widocznym obszarze roboczym"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Tylko na tym obszarze roboczym"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Przenieś na _lewy obszar roboczy"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Przen_ieś na prawy obszar roboczy"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "_Przenieś na górny obszar roboczy"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Przenieś na _dolny obszar roboczy"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "Za_mknij"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Obszar roboczy %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Obszar roboczy 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Obszar roboczy %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Przeniesienie na inny _obszar roboczy"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "góra"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "dół"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "lewa"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "prawa"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "Rozmiar ramki nie określa wymiaru \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "Rozmiar ramki nie określa wymiaru \"%s\" dla krawędzi \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+"Współczynnik proporcji przycisku %g nie mieści się w rozsądnych granicach"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Rozmiar ramki nie określa liczby przycisków"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Gradienty powinny się składać co najmniej z dwóch kolorów"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specyfikacja koloru GTK+ musi zawierać stan w nawiasach kwadratowych, np. "
+"gtk:fg[NORMAL], gdzie NORMAL jest nazwą stanu; nie można przetworzyć \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specyfikacja koloru GTK+ musi po nazwie stanu zawierać zamykający nawias "
+"kwadratowy, np. gtk:fg[NORMAL], gdzie NORMAL jest nazwą stanu; nie można "
+"przetworzyć \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Niezrozumiały stan \"%s\" w specyfikacji koloru"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Niezrozumiała definicja koloru \"%s\" w specyfikacji koloru"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Formatem przenikania jest \"blend/bg_color/fg_color/alpha\", \"%s\" nie "
+"pasuje do formatu"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Nie można przetworzyć wartości alfa \"%s\" w przenikającym kolorze"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+"Wartość alfa \"%s\" w przenikającym kolorze nie zawiera się pomiędzy 0,0 i "
+"1,0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Formatem przenikania jest \"shade/base_color/factor\", \"%s\" nie pasuje do "
+"formatu"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+"Nie można przetworzyć współczynnika przenikania \"%s\" w przenikającym "
+"kolorze"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Współczynnik przenikania \"%s\" w przenikającym kolorze jest ujemny"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Nie można przetworzyć koloru \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Wyrażenie określające współrzędne zawiera niedozwolony znak \"%s\""
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Wyrażenie określające współrzędne zawiera liczbę zmiennoprzecinkową \"%s\", "
+"której nie można przetworzyć"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Wyrażenie określające współrzędne zawiera liczbę całkowitą \"%s\", której "
+"nie można przetworzyć"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Wyrażenie określające współrzędne zawiera nieznany operator na początku "
+"tekstu: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+"Wyrażenie określające współrzędne jest puste lub nie można go rozpoznać"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Wyrażenie opisujące położenie zawiera dzielenie przez zero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Wyrażenie opisujące położenie używa operatora dzielenia modulo z argumentem "
+"zmiennoprzecinkowym"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Wyrażenie opisujące położenie zawiera operand \"%s\" w miejscu, w którym "
+"oczekiwano argumentu"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"Wyrażenie opisujące położenie zawiera operand w miejscu, w którym "
+"oczekiwano operatora"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Wyrażenie opisujące położenie kończy się operatorem zamiast operandem"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Wyrażenie opisujące położenie zawiera argument \"%c\" bezpośrednio po "
+"argumencie \"%c\" bez rozdzielającego ich operand"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Wyrażenie opisujące położenie zawiera nieznaną zmienną lub stałą \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Parser wyrażeń określających współrzędne przepełnił swój bufor."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Wyrażenie opisujące położenie zawiera nawias zamykający bez odpowiadającego "
+"mu nawiasu otwierającego"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Wyrażenie opisujące położenie zawiera nawias otwierający bez odpowiadającego "
+"mu nawiasu zamykającego"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"Wyrażenie opisujące położenie nie zawiera żadnych operatorów ani operandów"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Motyw zawiera wyrażenie, przy którego obliczaniu wystąpił błąd: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Przy tym stylu ramki należy podać <button function=\"%s\" state=\"%s\" "
+"draw_ops=\"cokolwiek\"/>"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Brak <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"cokolwiek\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Wczytanie motywu \"%s\" się nie powiodło: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nie określono elementu <%s> dla motywu \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Przy typie okna \"%s\" w motywie \"%s\" nie ustawiono stylu ramki. Należy "
+"dodać element <window type=\"%s\" style_set=\"cokolwiek\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Stałe definiowane przez użytkownika powinny rozpoczynać się wielką literą, "
+"natomiast \"%s\" nie spełnia tego warunku"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Stała \"%s\" została już określona"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Brak atrybutu \"%s\" w elemencie <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Wiersz %d, znak %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atrybut \"%s\" wystąpił dwukrotnie wewnątrz jednego elementu <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+"Atrybut \"%s\" jest nieprawidłowy wewnątrz elementu <%s> w tym kontekście"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Nie można przetworzyć \"%s\" jako liczby całkowitej"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Nie można rozpoznać końcowych znaków \"%s\" w napisie \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Liczba całkowita %ld musi być dodatnia"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Liczba całkowita %ld jest zbyt duża, obecne maksimum to %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Napis \"%s\" nie jest zapisem liczby zmiennoprzecinkowej"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Wartościami logicznymi są \"true\" i \"false\", a nie \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Wartość kąta musi się mieścić pomiędzy 0,0 i 360,0, odczytano %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Wartość alfa musi się mieścić pomiędzy 0,0 (niewidoczne) i 1,0 (w pełni "
+"przezroczyste), odczytano %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Nieprawidłowy rozmiar tytułu \"%s\" (musi on być jedną z wartości: xx-small, "
+"x-small, small, medium, large, x-large, xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s>: użyto nazwy \"%s\" po raz drugi"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s>: nie określono elementu nadrzędnego o nazwie \"%s\""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s>: nie określono geometrii o nazwie \"%s\""
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> musi albo określać geometrię, albo element nadrzędny z geometrią"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Aby wartość alpha miała sens, należy określić tło"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Nieznany typ \"%s\" wewnątrz elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Nieznana wartość atrybutu \"style_set\" (%s) wewnątrz elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Z typem okna \"%s\" powiązano już zbiór stylów"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> nie jest dopuszczalny poniżej <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Nie można jednocześnie określać dla przycisku jego szerokości i wysokości "
+"oraz współczynnika proporcji"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Odległość \"%s\" jest nieznana"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Współczynnik proporcji \"%s\" jest nieznany"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Krawędź \"%s\" jest nieznana"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Brak atrybutu \"start_angle\" wewnątrz elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Brak atrybutu \"extent_angle\" wewnątrz elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Niezrozumiała wartość \"%s\" typu gradientu"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Niezrozumiały typ wypełnienia \"%s\" elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Niezrozumiały stan \"%s\" (atrybut state) elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Niezrozumiały cień \"%s\" (atrybut shadow) elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Niezrozumiała strzałka \"%s\" (atrybut arrow) elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nie określono elementu <draw_ops> o nazwie \"%s\""
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+"Włączenie tutaj elementu draw_ops o nazwie \"%s\" spowodowałoby zapętlone "
+"odwołanie"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Nieznane położenie \"%s\" elementu ramki"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Styl ramki zawiera już element o położeniu %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nie określono elementu <draw_ops> o nazwie \"%s\""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Nieznana funkcja \"%s\" powiązana z przyciskiem"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Funkcja \"%s\" przycisku nie istnieje w tej wersji (%d, wymaga %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Nieznany stan \"%s\" powiązany z przyciskiem"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+"Dla stylu ramki określono już przycisk, związany z funkcją %s i stanem %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" nie jest prawidłową wartością atrybutu \"focus\""
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" nie jest prawidłową wartością atrybutu \"state\""
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Nie określono stylu o nazwie \"%s\""
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" nie jest prawidłową wartością atrybutu \"resize\""
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Element <%s> nie powinien zawierać atrybutu \"resize\" przy stanie "
+"zmaksymalizowanym lub zwiniętym"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Element <%s> nie powinien zawierać atrybutu \"resize\" przy stanie "
+"zmaksymalizowanym"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Określono już styl dla stanu %s, rozmiaru %s i uaktywnienia %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Określono już styl dla stanu %s i uaktywnienia %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Element <piece> nie może zawierać dwóch draw_ops (motyw zawiera atrybut "
+"draw_ops i element <draw_ops> lub dwa elementy)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Element <button> nie może zawierać dwóch draw_ops (motyw zawiera atrybut "
+"draw_ops i element <draw_ops> lub dwa elementy)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Element <menu_icon> nie może zawierać dwóch draw_ops (motyw zawiera atrybut "
+"draw_ops i element <draw_ops> lub dwa elementy)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Głównym elementem motywu musi być <marco_theme>, nie <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Element <%s> nie jest dopuszczalny wewnątrz elementu name/author/date/"
+"description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> nie jest dopuszczalny wewnątrz elementu <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Element <%s> nie jest dopuszczalny wewnątrz elementu distance/border/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+"Element <%s> nie jest dopuszczalny wewnątrz elementu działania rysowania"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> nie jest dopuszczalny wewnątrz elementu <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Brak elementu <draw_ops> powiązanego z elementem ramki"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Brak elementu <draw_ops> powiązanego z przyciskiem"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Wewnątrz elementu <%s> nie jest dopuszczalny tekst"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> określono dwukrotnie dla tego motywu"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Odnalezienie prawidłowego pliku dla motywu %s się nie powiodło\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Plik tematu %s nie zawiera głównego elementu <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Okna"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Okna/odłączanie"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Okna/Okno _dialogowe"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Okna/_Modalne okno dialogowe"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Okna/_Narzędzie"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Okna/_Ekran powitalny"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Okna/_Górny dok"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Okna/_Dolny dok"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Okna/_Lewy dok"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Okna/_Prawy dok"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Okna/_Wszystkie doki"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Okna/Pu_lpit"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "To jest przykładowy komunikat w prostym oknie dialogowym"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Imitacja elementu menu %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Okno zawierające tylko krawędzie"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Pasek"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Zwykłe okno programu"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Okno dialogowe"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modalne okno dialogowe"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta narzędziowa"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menu rozwijane"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Krawędź"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test układu przycisków %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekundy do narysowania jednej ramki okna"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Użycie: methacity-theme-viewer [NAZWA_MOTYWU]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Błąd podczas wczytywania motywu: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Wczytano motyw \"%s\" w ciągu %g sekund\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Zwykła czcionka tytułu"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Mała czcionka tytułu"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Duża czcionka tytułu"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Układy przycisków"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Test wydajności"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Tutaj znajduje się tytuł okna"
+
+# FIXME - bełkot
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Narysowano %d ramek w ciągu %g sekund klienta (%g milisekund na ramkę) oraz %"
+"g sekund rzeczywistych, włączając w to zasoby serwera X (%g milisekund na "
+"ramkę)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "test wyrażenia pozycji zwrócił wartość PRAWDA, lecz ustawił błąd"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "test wyrażenia pozycji zwrócił wartość FAŁSZ, lecz nie ustawił błędu"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Spodziewano się błędu, lecz nie podano żadnego"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Spodziewano się błędu %d, lecz otrzymano %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Nie spodziewano się błędu, lecz został on zwrócony: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "wartością x było %d, spodziewano się wartości %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "wartością y było %d, spodziewano się wartości %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"wyrażenia współrzędnych %d zostało przetworzone w %g sekund (średnio %g "
+"sekund(y))\n"
diff --git a/po/pt.po b/po/pt.po
new file mode 100644
index 00000000..7832ea35
--- /dev/null
+++ b/po/pt.po
@@ -0,0 +1,3917 @@
+# marco's Portuguese Translation
+# Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 marco
+# Distributed under the same licence as the marco package
+# Duarte Loreto <[email protected]>, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: 2.30\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-09 00:22+0000\n"
+"PO-Revision-Date: 2010-03-09 00:25+0000\n"
+"Last-Translator: Duarte Loreto <[email protected]>\n"
+"Language-Team: Portuguese <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Área de Trabalho"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Gestão de Janelas"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Evento de campainha"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Pedido de informação de janela desconhecido: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> não está a responder."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Poderá aguardar uns instantes para que continue ou forçar a aplicação a "
+"terminar definitivamente."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Aguardar"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Forçar Terminar"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Falha ao obter nome de máquina: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Incapaz de encontrar a extensão %s, necessária para a composição"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Falha ao abrir ecrã '%s' do Sistema Janelas X\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Ligação ao ecrã '%s' perdida;\n"
+"provavelmente o servidor X foi desligado ou o gestor de janelas\n"
+"foi morto/destruído por si.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Erro IO fatal %d (%s) no ecrã '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"A tecla %s com os modificadores %x já está a ser utilizada como atalho por "
+"outra aplicação\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Ocorreu um erro ao executar <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Não foi definido nenhum comando %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Não foi definido nenhum comando de consola.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright © 2001-%s Havoc Pennington, Red Hat, Inc., e outros\n"
+"Esta é uma aplicação livre; consulte o código fonte para condições de "
+"cópia.\n"
+"NÃO existe qualquer garantia; nem sequer de COMERCIALIZAÇÃO ou ADEQUAÇÃO A "
+"UM PROPÓSITO ESPECÍFICO.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Desactivar a ligação ao gestor de sessão"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Substituir o gestor de janelas em execução pelo Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Especificar o ID de gestão de sessão"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Ecrã X a utilizar"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inicializar a sessão a partir de um ficheiro de gravação de sessão"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Imprimir a versão"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Realizar as invocações X sincronamente"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Activar a composição"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Desactivar a composição"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Não tornar janelas maximizadas e que não têm decorações em janelas de ecrã "
+"completo"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Falha ao analizar directório de temas: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Incapaz de encontrar um tema! Certifique-se que %s existe e contém os temas "
+"normais.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Falha ao reiniciar: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Chave MateConf '%s' está definida com um valor inválido\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d armazenado na chave MateConf %s está fora do intervalo de %d a %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Chave MateConf \"%s\" está definida para um tipo inválido\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Recursos para aplicações problemáticas inactivos. Algumas aplicações poderão "
+"não funcionar correctamente.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Incapaz de processar descrição de fonte \"%s\" da chave MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" encontrado na base de dados de configuração não é um valor válido "
+"para o modificador de botão de rato\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Erro ao definir número de ambientes de trabalho para %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Área de Trabalho %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" encontrado na base de dados de configuração não é um valor válido "
+"para o atalho de teclado \"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Erro ao definir nome da área de trabalho %d para \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Erro ao definir o estado da composição: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Ecrã %d no monitor '%s' é inválido\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Ecrã %d no monitor \"%s\" já tem um gestor de janelas; tente utilizar a "
+"opção --replace para substituir o gestor de janelas actual.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Incapaz de obter selecção do gestor de janelas no ecrã %d monitor \"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Ecrã %d no monitor \"%s\" já tem um gestor de janelas\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Incapaz libertar ecrã %d no monitor \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"O formato assemelha-se a \"<Control>a\" ou \"<Shift><Alt>F1\".\n"
+"\n"
+"O processador é razoavelmente liberal e permite capitalização maiúscula ou "
+"minúscula e também abreviaturas tais como \"<Ctl>\" e \"<Ctrl>\". Se definir "
+"a opção para a expressão especial \"disabled\", não existirão quaisquer "
+"atalhos de teclado para esta acção."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"O formato assemelha-se a \"<Control>a\" ou \"<Shift><Alt>F1\".\n"
+"\n"
+"O processador é razoavelmente liberal e permite capitalização maiúscula ou "
+"minúscula e também abreviaturas tais como \"<Ctl>\" e \"<Ctrl>\". Se definir "
+"a opção para a expressão especial \"disabled\", não existirão quaisquer "
+"atalhos de teclado para esta acção.\n"
+"\n"
+"Este atalho de teclado poderá ser invertido premindo a tecla \"shift\"; "
+"assim, \"shift\" não poderá ser uma das teclas utilizadas."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Incapaz de criar directório '%s': %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Incapaz de abrir ficheiro de sessão '%s' para escrita: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Erro ao escrever ficheiro de sessão '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Erro ao fechar ficheiro de sessão '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Falha ao ler ficheiro de sessão gravado %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Falha ao processar ficheiro de sessão gravado: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "Atributo <marco_session> enviado mas o ID de sessão já é conhecido"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Atributo %s desconhecido no elemento <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "etiqueta de <window> encadeada"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Elemento %s desconhecido"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Estas janelas não suportam &quot;gravar configuração actual&quot; e terão de "
+"ser reiniciadas manualmente da próxima vez que iniciar sessão."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Falha ao abrir registo de depuração: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Falha ao efectuar fdopen() do ficheiro de registo %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Ficheiro de registo %s aberto\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+"Marco foi compilado sem suporte para modo de registo detalhado (verbose)\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Gestor de janelas: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Erro no gestor de janelas: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Aviso do gestor de janelas: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Erro do gestor de janelas: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Janela %s define SM_CLIENT_ID em si própria, em vez de na janela "
+"WM_CLIENT_LEADER tal como especificado no ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Janela %s define uma dica MWM indicando que não é redimensionável, mas "
+"define tamanho mínimo %d x %d e tamanho máximo %d x %d; isto não faz muito "
+"sentido.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Aplicação definiu um _NET_WM_PID %lu fictício\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (em %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (como super utilizador)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (como %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (como outro utilizador)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Janela 0x%lx de WM_TRANSIENT_FOR inválido especificada para %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"A janela 0x%lx possui a propriedade %s\n"
+"que se esperava ter o tipo %s formato %d\n"
+"mas na verdade tem o tipo %s formato %d nº itens %d.\n"
+"Isto é provavelmente um erro da aplicação, não um erro do gestor de "
+"janelas.\n"
+"A janela tem o título=\"%s\" classe=\"%s\" nome=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Propriedade %s na janela 0x%lx continha UTF-8 inválido\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Propriedade %s na janela 0x%lx continha UTF-8 inválido para item %d na "
+"lista\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Mover para a área de trabalho 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Mover para a área de trabalho 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Mover para a área de trabalho 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Mover para a área de trabalho 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Mover para a área de trabalho 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Mover para a área de trabalho 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Mover para a área de trabalho 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Mover para a área de trabalho 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Mover para a área de trabalho 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Mover para a área de trabalho 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Mover para a área de trabalho 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Mover para a área de trabalho 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Mover para a área de trabalho à esquerda da actual"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Mover para a área de trabalho à direita da actual"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Mover para a área de trabalho acima da actual"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Mover para a área de trabalho abaixo da actual"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Mover entre janelas de uma aplicação, utilizando uma janela de popup"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Mover para trás entre janelas de uma aplicação, utilizando uma janela de "
+"popup"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Mover entre janelas, utilizando uma janela de popup"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Mover para trás entre janelas, utilizando uma janela de popup"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr ""
+"Mover entre painéis e a área de trabalho, utilizando uma janela de popup"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Mover para trás entre painéis e a área de trabalho, utilizando uma janela de "
+"popup"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Mover imediatamente entre janelas de uma aplicação"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Mover para trás imediatamente entre janelas de uma aplicação"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Mover imediatamente entre janelas"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Mover para trás imediatamente entre janelas"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Mover imediatamente entre painéis e o ambiente"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Mover para trás imediatamente entre painéis e o ambiente"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Esconder todas as janelas normais e colocar foco na área de trabalho"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Apresentar o menu principal do painel"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Apresentar a caixa de diálogo de painel do \"Executar Aplicação\""
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Efectuar uma captura de ecrã"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Efectuar uma captura de uma janela"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Executar uma consola"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Activar o menu de janela"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Alternar modo de ecrã completo"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Alternar estado de maximização"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+"Alternar se uma janela será ou não sempre visível sobre as outras janelas"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximizar a janela"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restaurar a janela"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Alternar estado sombreado"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimizar a janela"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Fechar a janela"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Mover a janela"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Redimensionar a janela"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Alternar se a janela está em todas as áreas de trabalho ou apenas numa"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Mover janela para a área de trabalho 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Mover janela para a área de trabalho 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Mover janela para a área de trabalho 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Mover janela para a área de trabalho 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Mover janela para a área de trabalho 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Mover janela para a área de trabalho 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Mover janela para a área de trabalho 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Mover janela para a área de trabalho 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Mover janela para a área de trabalho 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Mover janela para a área de trabalho 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Mover janela para a área de trabalho 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Mover janela para a área de trabalho 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Mover a janela uma área de trabalho para a esquerda"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Mover a janela uma área de trabalho para a direita"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Mover a janela uma área de trabalho acima"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Mover a janela uma área de trabalho abaixo"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Elevar a janela se estiver tapada por outra janela, caso contrário baixá-la"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Elevar janela acima de outras janelas"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Baixar janela abaixo de outras janelas"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximizar janela verticalmente"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximizar janela horizontalmente"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Mover a janela para o canto noroeste (superior esquerdo)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Mover a janela para o canto nordeste (superior direito)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Mover a janela para o canto sudoeste (inferior esquerdo)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Mover a janela para o canto sudeste (inferior direito)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Mover a janela para o lado norte (topo) do ecrã"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Mover a janela para o lado sul (inferior) do ecrã"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Mover a janela para o lado leste (direito) do ecrã"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Mover a janela para o lado oeste (esquerdo) do ecrã"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Mover a janela para o centro do ecrã"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Não implementado) Navegação funciona em termos de aplicações e não janelas"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Uma expressão de descrição de fonte que descreve uma fonte para as barras de "
+"título. O tamanho da descrição apenas será utilizada se a opção "
+"titlebar_font_size estiver definida como 0. Esta opção será desabilitada se "
+"a opção titlebar_uses_desktop_font estiver definida como verdadeira."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Acção do duplo-clique na barra de título"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Acção do clique-do-meio na barra de título"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Acção do clique-direito na barra de título"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Disposição dos botões na barra de título"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Disposição dos botões na barra de título. O valor deverá ser uma expressão, "
+"tal como \"menu:minimize,maximize,spacer,close\"; o dois-pontos separa o "
+"canto esquerdo da janela do direito, e os nomes dos botões são separados por "
+"vírgulas. Não são permitidos botões duplicados. Nomes de botões "
+"desconhecidos são ignorados para que possam ser adicionados botões em "
+"versões futuras do marco sem gerar erros em versões antigas. Pode ser "
+"utilizada uma etiqueta especial de espaçamento (spacer) para inserir algum "
+"espaço entre dois botões adjacentes."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Eleva automaticamente a janela com o foco"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Clicar numa janela durante a pressão desta tecla modificadora irá mover a "
+"janela (clique esquerdo), redimensionar a janela (clique do meio) ou "
+"apresentar o menu da janela (clique direito). As operações de clique "
+"do meio e direito podem ser trocadas utilizando a chave "
+"\"resize_with_right_button\". Modificador é expresso como \"&lt;Alt&gt;\" ou "
+"\"&lt;Super&gt;\", por exemplo."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Comandos a executar em resposta a um atalho de teclado"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Gestor de Composições"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Controla como as novas janelas obtém o foco"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Tema actual"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Atraso em milisegundos para a opção de elevar automaticamente"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determina se o Marco é ou não um gestor de composições."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determina se as aplicações ou o sistema podem gerar 'beeps' audíveis; pode "
+"ser utilizado em conjunto com a campainha visual para permitir 'beeps' "
+"silenciosos."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Desabilitar funcionalidades inválidas requeridas por aplicações antigas ou "
+"estragadas"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Activar Campainha Visual"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Se verdadeiro, e o modo de foco for \"sloppy\" ou \"mouse\" então a janela "
+"com foco será automaticamente elevada após um atraso especificado pela chave "
+"auto_raise_delay. Isto não está relacionado com clicar numa janela para a "
+"elevar, nem com entrar numa janela durante um processo de arrastar-e-largar."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Se verdadeiro, ignora a opção titlebar_font e utiliza a fonte standard da "
+"aplicação para os títulos da janela."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Se verdadeiro, o marco transmitirá ao utilizador menos resposta "
+"utilizando molduras de linhas, evitando animações ou por outros meios. Isto "
+"representa para muitos utilizadores uma redução significativa na "
+"usabilidade, mas poderá permitir que aplicações antigas funcionem e pode "
+"também ser um bom compromisso para servidores de consola. No entanto, a "
+"funcionalidade de molduras de linhas estará inactiva quando a acessibilidade "
+"estiver activa."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Se verdadeiro, o Marco funcionará em termos de aplicações e não de "
+"janelas. O conceito é algo abstracto, mas em geral uma configuração baseada "
+"em aplicações é mais tipo Mac e menos tipo Windows. Ao colocar o foco numa "
+"janela em modo aplicação, todas as janelas da aplicação são elevadas. "
+"Também, em modo aplicação, cliques de foco não são passados para janelas "
+"noutras aplicações. O modo aplicação está ainda, no entanto, quase todo por "
+"implementar."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Se verdadeiro, trocar usabilidade por menor utilização de recursos"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modificador a utilizar para acções de clique de janela modificada"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nome da área de trabalho"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Número de áreas de trabalho"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Número de áreas de trabalho. Tem de ser maior do que zero, e tem um máximo "
+"fixo (para impedir que torne o seu ambiente de trabalho inutilizável por "
+"pedir demasiadas áreas de trabalho)."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Executar um comando definido"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Definir como verdadeiro para redimensionar com o botão direito e apresentar "
+"o menu com o botão do meio enquanto é premida a tecla indicada em "
+"\"mouse_button_modifier\"; definir como falso para que funcione de forma "
+"inversa."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Definir esta opção como \"false\" poderá originar um comportamento com "
+"erros, pelo que se desaconselha a alteração do valor por omissão, que é "
+"\"true\". Muitas acções (por ex. clicar na área de cliente, mover ou "
+"redimensionar a janela) normalmente elevam a janela como efeito colateral. "
+"Definir esta opção como \"false\", o que é fortemente desencorajado, irá "
+"desassociar o elevar de outras acções do utilizador, e ignorar pedidos de "
+"elevação gerados por aplicações. Consulte http://bugzilla.gnome.org/show_bug."
+"cgi?id=445447#c6. Mesmo quando esta opção é \"false\", as janelas ainda "
+"podem ser elevadas com um alt-clique-esquerdo em qualquer local da janela, "
+"um clique normal nas decorações da janela, ou por mensagens especiais de "
+"pagers, tais como pedidos de activação de applets de lista de tarefas. Esta "
+"opção está de momento desactivada no modo clique-para-transmitir-foco. Note "
+"que a lista de formas de elevar janelas quando raise_on_click for \"false\" "
+"não inclui pedidos programáticos de aplicações para elevar janelas; tais "
+"pedidos serão ignorados independentemente do motivo do pedido. Se for um "
+"programador de aplicações e tiver um utilizador a queixar-se que a sua "
+"aplicação não funciona com esta definição desactivada, diga-lhe que é _dele_ "
+"a culpa de quebrar o seu gestor de janelas e que terá de alterar esta opção "
+"de volta para \"true\" ou viver com o erro que deseja e originou."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Algumas aplicações ignoram as especificações de formas que resultam num "
+"funcionamento incorrecto do gestor de janelas. Esta opção coloca o Marco "
+"num modo de correcção estrita, o que disponibiliza um interface de "
+"utilizador mais consistente, desde que não seja necessário utilizar nenhuma "
+"aplicação que seja problemática."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Campainha de Sistema é Audível"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Indica ao Marco como implementar a indicação visual de que a campainha de "
+"sistema ou o indicador de 'campainha' de outra aplicação tocou. Actualmente "
+"existem dois valores válidos, \"fullscreen\", que causa um flash branco-"
+"preto de ecrã completo, e \"frame_flash\" que faz com que a barra de título "
+"da aplicação que emitiu a campainha emita um flash. Se a aplicação que tocou "
+"a campainha for desconhecida (é normalmente o caso para o \"beep de sistema"
+"\" por omissão), irá emitir flash a barra de título da aplicação com o foco."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"As chaves /apps/marco/global_keybindings/run_command_N definem atalhos de "
+"teclado que correspondem a estes comandos. Premir o atalho de teclado para "
+"run_command_N irá executar o command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"A chave /apps/marco/global_keybindings/run_command_screenshot define um "
+"atalho de teclado que invoca o comando especificado por esta definição."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"A chave /apps/marco/global_keybindings/run_command_window_screenshot "
+"define um atalho de teclado que invoca o comando especificado por esta "
+"definição."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"O atalho de teclado que executa o comando correspondente numerado em /apps/"
+"marco/keybinding_commands O formato assemelha-se a \"&lt;Control&gt;a\" "
+"ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e "
+"permite capitalização maiúscula ou minúscula e também abreviaturas tais como "
+"\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+"especial \"disabled\", não existirão quaisquer atalhos de teclado para esta "
+"acção."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "O nome de uma área de trabalho."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "O comando de captura de ecrã"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"O tema determina a aparência das margens das janelas, barras de título, etc."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"O atraso temporal antes de elevar uma janela caso auto_raise esteja definido "
+"como verdadeiro. O atraso é especificado em milésimas de segundo."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"O modo de foco de janela indica como as janelas são activadas. Tem três "
+"valores possíveis; \"click\" significa que a janela tem de ser clicada para "
+"obter o foco, \"sloppy\" significa que a janela fica com foco quando o rato "
+"entra na janela, e \"mouse\" significa que a janela fica com o foco quando o "
+"rato entra na janela e o perde quando o rato sai."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "O comando de captura de janela"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opção determina o efeito do clique-duplo na barra de título. As opções "
+"actualmente válidas são 'toggle_shade', que sombreia/remove sombra na "
+"janela, 'toggle_maximize' que maximiza/restaura a janela, "
+"'toggle_maximize_horizontally' e 'toggle_maximize_vertically' que irão "
+"maximizar/restaurar a janela apenas nessa direcção, 'minimize' que irá "
+"minimizar a janela, 'shade' que irá enrolar a janela, 'menu' que irá "
+"apresentar o menu da janela, 'lower' que irá colocar a janela por detrás de "
+"todas as outras e 'none' que não fará qualquer acção."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opção determina o efeito do clique-do-meio na barra de título. As "
+"opções actualmente válidas são 'toggle_shade', que sombreia/remove sombra na "
+"janela, 'toggle_maximize' que maximiza/restaura a janela, "
+"'toggle_maximize_horizontally' e 'toggle_maximize_vertically' que irão "
+"maximizar/restaurar a janela apenas nessa direcção, 'minimize' que irá "
+"minimizar a janela, 'shade' que irá enrolar a janela, 'menu' que irá "
+"apresentar o menu da janela, 'lower' que irá colocar a janela por detrás de "
+"todas as outras e 'none' que não fará qualquer acção."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opção determina o efeito do clique-direito na barra de título. As "
+"opções actualmente válidas são 'toggle_shade', que sombreia/remove sombra na "
+"janela, 'toggle_maximize' que maximiza/restaura a janela, "
+"'toggle_maximize_horizontally' e 'toggle_maximize_vertically' que irão "
+"maximizar/restaurar a janela apenas nessa direcção, 'minimize' que irá "
+"minimizar a janela, 'shade' que irá enrolar a janela, 'menu' que irá "
+"apresentar o menu da janela, 'lower' que irá colocar a janela por detrás de "
+"todas as outras e 'none' que não fará qualquer acção."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Esta opção disponibiliza controlo adicional sobre como as janelas novas "
+"obtêm o foco. Existem dois valores possíveis; \"smart\" aplica o modo normal "
+"de foco do utilizador, e \"strict\" resulta em janelas iniciadas a partir de "
+"uma consola não receberem o foco."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Activa um indicador visual de quando uma aplicação ou o sistema emitem uma "
+"'campainha' ou 'beep'; útil para os deficientes auditivos e para utilizar em "
+"ambientes ruidosos."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Utilizar fonte de sistema standard nos títulos das janelas"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Tipo de Campainha Visual"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Se elevar deverá ou não ser um efeito secundário de outras acções do "
+"utilizador"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Se redimensionar ou não com o botão direito do rato"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Modo de foco de janela"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Fonte de título de janela"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Utilização: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Fechar Janela"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menu de Janela"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimizar Janela"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximizar Janela"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restaurar a Janela"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Enrolar a Janela"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Desenrolar a Janela"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Manter a Janela no Topo"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Remover a Janela do Topo"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Sempre na Área de Trabalho Visível"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Colocar a Janela Apenas em Uma Área de Trabalho"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Resta_urar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Enrolar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "D_esenrolar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Mover"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Redimensionar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Mover a _Barra de Títulos no Ecrã"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Sempre no _Topo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Sempre na Área de Trabalho Visível"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Apenas nesta Área de Trabalho"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Mover para a Área de Trabalho à _Esquerda"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Mover para a Área de Trabalho à _Direita"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Mover para a Área de Trabalho _Acima"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Mover para a Área de Trabalho A_baixo"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Fechar"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Área de Trabalho %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Área de Trabalho 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Área de Trabalho %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Mover para Outra Área de _Trabalho"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "superior"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "inferior"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "esquerda"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "direita"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "geometria de moldura não especifica dimensão \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "geometria de moldura não especifica dimensão \"%s\" para margem \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Rácio de aparência de botão %g não é um valor razoável"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Geometria de moldura não especifica dimensão dos botões"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Gradientes deverão ter pelo menos duas cores"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Especificação de cor GTK tem de ter o estado entre parentesis rectos, por "
+"ex. gtk:fg[NORMAL] em que NORMAL é o estado; incapaz de processar \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Especificação de cor GTK tem de ter um parentesis recto de fecho após o "
+"estado, por ex. gtk:fg[NORMAL] em que NORMAL é o estado; incapaz de "
+"processar \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Incapaz de compreender o estado \"%s\" na especificação de cor"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+"Incapaz de compreender componente de cor \"%s\" na especificação de cor"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Formato de mistura é \"blend/bg_color/fg_color/alpha\", \"%s\" não cumpre o "
+"formato"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Incapaz de processar o valor alfa \"%s\" na mistura de cor"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Valor alfa \"%s\" na mistura de cor não está entre 0.0 e 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Formato de sombra é \"shade/base_color/factor\", \"%s\" não cumpre o formato"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+"Incapaz de processar o valor de factor de sombra \"%s\" na cor sombreada"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Factor de sombreado \"%s\" na cor sombreada é negativo"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Incapaz de processar cor \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Expressão de coordenada contém caracter '%s' que não é permitido"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Expressão de coordenada contém número decimal '%s' que não pode ser "
+"processado"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Expressão de coordenada contém número inteiro '%s' que não pode ser "
+"processado"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Expressão de coordenada contém operador desconhecido no início deste texto: "
+"\"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Expressão de coordenada está vazia ou não foi compreendida"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Expressão de coordenada resulta em divisão por zero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "Expressão de coordenada tenta utilizar operador mod num número decimal"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Expressão de coordenada tem um operador \"%s\" onde era esperado um operando"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Expressão de coordenada tem um operando onde era esperado um operador"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Expressão de coordenada terminou com um operador em vez de um operando"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Expressão de coordenada tem o operador \"%c\" seguido do operador \"%c\" sem "
+"um operando entre os dois"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Expressão de coordenada tem uma variável ou constante \"%s\" desconhecida"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "O processador de expressão de coordenada transbordou o seu buffer."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Expressão de coordenada tem um fecho de parentesis sem a respectiva abertura"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Expressão de coordenada tem uma abertura de parentesis sem o respectivo fecho"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Expressão de coordenada não aparenta ter operadores nem operandos"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "O tema continha uma expressão que resultou num erro: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"qualquercoisa\"/> tem de ser "
+"especificado para este estilo de moldura"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Falta <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"qualquercoisa\"/"
+">"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Falha ao ler tema \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nenhum <%s> definido para o tema \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Nenhum estilo de moldura definido para tipo de janela \"%s\" no tema \"%s\", "
+"adicione um elemento <window type=\"%s\" style_set=\"qualquer\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Constante definida pelo utilizador tem de começar com uma maiúscula; \"%s\" "
+"não começa"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Constante \"%s\" já foi definida"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Nenhum atributo \"%s\" no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Linha %d caracter %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atributo \"%s\" repetido duas vezes no mesmo elemento <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atributo \"%s\" é inválido no elemento <%s> neste contexto"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Incapaz de processar \"%s\" como um inteiro"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Incapaz de compreender últimos caracteres \"%s\" na expressão \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Inteiro %ld tem de ser positivo"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Inteiro %ld é demasiado grande, máx actual é %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Incapaz de processar \"%s\" como um númerico decimal"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Valores boleanos têm de ser \"true\" ou \"false\" não \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Ângulo tem de ser entre 0.0 e 360.0, era %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa tem de ser entre 0.0 (invisível) e 1.0 (completamente opaco), era %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Título de escala \"%s\" inválido (tem de ser um de xx-small,x-small,small,"
+"medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "Nome \"%s\" de <%s> utilizado uma segunda vez"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Pai \"%s\" de <%s> não foi definido"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Geometria \"%s\" de <%s> não foi definida"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> tem de especificar ou uma geometria ou um pai que tenha geometria"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+"Tem de especificar um fundo para que o valor alfa tenha algum significado"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Tipo \"%s\" desconhecido no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Style_set \"%s\" desconhecido no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Tipo de janela \"%s\" já tem um tipo de estilo atribuido"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Elemento <%s> no é permitido abaixo de <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Impossível especificar ambos \"button_width\"/\"button_height\" e "
+"\"aspect_ratio\" para botões"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Distância \"%s\" é desconhecida"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Rácio de aparência \"%s\" é desconhecido"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Margem \"%s\" é desconhecida"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Nenhum atributo \"start_angle\" ou \"from\" no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Nenhum atributo \"extent_angle\" ou \"to\" no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Incapaz de compreender valor \"%s\" para tipo de gradiente"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Incapaz de compreender tipo de enchimento \"%s\" para elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Incapaz de compreender estado \"%s\" para elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Incapaz de compreender sombra \"%s\" para elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Incapaz de compreender seta \"%s\" para elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Não foi definido nenhum <draw_ops> chamado \"%s\""
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Incluir aqui draw_ops \"%s\" iria criar uma referência circular"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Posição \"%s\" desconhecida para peça de moldura"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Estilo de moldura já tem uma peça na posição %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Não foi definido nenhum <draw_ops> com o nome \"%s\""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Função \"%s\" desconhecida para botão"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Função do botão \"%s\" não existe nesta versão (%d, necessita %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Estado \"%s\" desconhecido para botão"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Estilo de moldura já tem um botão para a função %s estado %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" não é um valor válido para o atributo de foco"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" não é um valor válido para o atributo de estado"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Não foi definido um estilo chamado \"%s\""
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" não é um valor válido para o atributo redimensionar"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Não deveria ter atributo \"resize\" no elemento <%s> para os estados "
+"maximizado/sombreado"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Não deveria ter atributo \"resize\" no elemento <%s> para os estados "
+"maximizados"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Estilo já foi especificado para o estado %s redimensionamento %s foco %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Estilo já foi especificado para o estado %s foco %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossível ter dois draw_ops num elemento <piece> (tema especificou um "
+"atributo draw_ops e também um elemento <draw_ops>, ou especificou dois "
+"elementos)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossível ter dois draw_ops num elemento <button> (tema especificou um "
+"atributo draw_ops e também um elemento <draw_ops>, ou especificou dois "
+"elementos)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Impossível ter dois draw_ops num elemento <menu_icon> (tema especificou um "
+"atributo draw_ops e também um elemento <draw_ops>, ou especificou dois "
+"elementos)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Elemento mais externo tem de ser <marco_theme> não <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Elemento <%s> não é permitido dentro de um elemento name/author/date/"
+"description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Elemento <%s> não é permitido dentro de um elemento <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Elemento <%s> não é permitido dentro de um elemento distance/border/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+"Elemento <%s> não é permitido dentro de um elemento de operação de desenho"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Elemento <%s> não é permitido dentro de um elemento <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Nenhum draw_ops indicado para peça de moldura"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Nenhum draw_ops indicado para botão"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Não é permitido texto dentro do elemento <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> especificado duas vezes para este tema"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Falha ao procurar um ficheiro válido para o tema %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Ficheiro de tema %s não continha um elemento raiz <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Janelas"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Janelas/destavável"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Janelas/_Diálogo"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Janelas/Diálogo _modal"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Janelas/_Utilitário"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Janelas/_Ecrã de Logotipo"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Janelas/Doca _superior"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Janelas/Doca _inferior"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Janelas/Doca _esquerda"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Janelas/Doca _direita"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Janelas/_Todas as docas"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Janelas/Área de Trabal_ho"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Esta é uma mensagem de exemplo num diálogo de exemplo"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Item de menu %d falso\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Janela apenas com margem"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Barra"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Janela Normal de Aplicação"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Janela de Diálogo"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Janela de Diálogo Modal"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta de Utilitários"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menu Destacável"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Margem"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Teste %d de disposição de botão"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisegundos para desenhar uma moldura de janela"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Utilização: marco-theme-viewer [NOMETEMA]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Erro ao ler tema: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tema \"%s\" lido em %g segundos\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Fonte Normal de Título"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Fonte Pequena de Título"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Fonte Grande de Título"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Disposição de Botões"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Análise de Desempenho"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Título da Janela Fica Aqui"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Desenhadas %d frames em %g segundos no lado do cliente (%g milisegundos por "
+"frame) e %g segundos globais incluindo recursos do servidor X (%g "
+"milisegundos por frame)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "teste de expressão de posição devolveu VERDADEIRO mas definiu um erro"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "teste de expressão de posição devolveu FALSO mas não definiu um erro"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Era esperado um erro mas nenhum foi devolvido"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Era esperado o erro %d mas foi devolvido o %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Não era esperado nenhum erro mas foi devolvido um: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "valor x era %d, era esperado %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "valor y era %d, era esperado %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"expressões de coordenada %d processadas em %g segundos (%g segundos em "
+"média)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Abrir outra destas janelas"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Este é um botão de demonstração com um ícone 'abrir'"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Este é um botão de demonstração com um ícone 'sair'"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Falha ao processar mensagem \"%s\" do processo de diálogo\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Erro ao ler do processo de visualização de diálogo: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Erro ao abrir diálogo-marco para questionar sobre se matar uma "
+#~ "aplicação: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Erro ao abrir diálogo-marco para avisar sobre aplicações que não "
+#~ "suportam gestão de sessões: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Título"
+
+#~ msgid "Class"
+#~ msgstr "Classe"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Ocorreu um erro ao executar \"%s\":\n"
+#~ "%s."
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> especificado duas vezes para este tema"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> especificado duas vezes para este tema"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> especificado duas vezes para este tema"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> especificado duas vezes para este tema"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Erro ao abrir diálogo-marco para imprimir um erro sobre um comando: %"
+#~ "s\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Atributo %s desconhecido no elemento <marco_session>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Atributo %s desconhecido no elemento <maximized>"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Atributo %s desconhecido no elemento <geometry>"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Muitas acções (por ex. clicar na área de cliente, mover ou redimensionar "
+#~ "a janela) normalmente elevam a janela como efeito secundário. Definir "
+#~ "esta opção como falsa, o que é muito desaconselhável, irá desassociar o "
+#~ "elevar de outras acções do utilizador e ignorar pedidos de elevação "
+#~ "gerados pelas aplicações. Consulte http://bugzilla.gnome.org/show_bug.cgi?"
+#~ "id=445447#c6."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho acima da actual. "
+#~ "O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho abaixo da actual. "
+#~ "O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho à esquerda da "
+#~ "actual. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho à direita da "
+#~ "actual. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 1. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 10. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 11. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 12. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 2. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 3. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 4. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 5. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 6. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 7. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 8. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que alterna para a área de trabalho 9. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para activar o menu da janela. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para entrar em \"modo de movimento\" e "
+#~ "começar a mover uma janela utilizando o teclado. O formato assemelha-se a "
+#~ "\"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é "
+#~ "razoavelmente liberal e permite capitalização maiúscula ou minúscula e "
+#~ "também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "definir a opção para a expressão especial \"disabled\", não existirão "
+#~ "quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para entrar em \"modo de redimensionamento"
+#~ "\" e começar a redimensionar uma janela utilizando o teclado. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para esconder todas as janelas normais e "
+#~ "colocar o foco no fundo da área de trabalho. O formato assemelha-se a "
+#~ "\"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é "
+#~ "razoavelmente liberal e permite capitalização maiúscula ou minúscula e "
+#~ "também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "definir a opção para a expressão especial \"disabled\", não existirão "
+#~ "quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para maximizar uma janela. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para minimizar uma janela. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela uma área de trabalho "
+#~ "abaixo. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela uma área de trabalho "
+#~ "para a esquerda. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela uma área de trabalho "
+#~ "para a direita. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela uma área de trabalho "
+#~ "acima. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 1. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 10. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 11. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 12. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 2. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 3. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 4. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 5. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 6. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 7. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 8. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover uma janela para a área de "
+#~ "trabalho 9. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o foco atrás entre painéis e a "
+#~ "área de trabalho, utilizando uma janela de popup. O formato assemelha-se "
+#~ "a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é "
+#~ "razoavelmente liberal e permite capitalização maiúscula ou minúscula e "
+#~ "também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "definir a opção para a expressão especial \"disabled\", não existirão "
+#~ "quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o foco atrás entre painéis e a "
+#~ "área de trabalho, sem utilizar uma janela de popup. O formato assemelha-"
+#~ "se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o foco atrás entre janelas de "
+#~ "uma aplicação sem utilizar uma janela de popup. Premir \"Shift\" junto "
+#~ "com este atalho de teclado faz a direcção avançar novamente. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o foco atrás entre janelas de "
+#~ "uma aplicação, utilizando uma janela de popup. Premir \"Shift\" junto com "
+#~ "este atalho de teclado faz a direcção avançar novamente. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o foco atrás entre janelas sem "
+#~ "utilizar uma janela de popup. Premir \"Shift\" junto com este atalho de "
+#~ "teclado faz a direcção avançar novamente. O formato assemelha-se a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é "
+#~ "razoavelmente liberal e permite capitalização maiúscula ou minúscula e "
+#~ "também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "definir a opção para a expressão especial \"disabled\", não existirão "
+#~ "quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o foco atrás entre janelas "
+#~ "utilizando uma janela de popup. Premir \"Shift\" junto com este atalho de "
+#~ "teclado faz a direcção avançar novamente. O formato assemelha-se a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é "
+#~ "razoavelmente liberal e permite capitalização maiúscula ou minúscula e "
+#~ "também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "definir a opção para a expressão especial \"disabled\", não existirão "
+#~ "quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o foco entre painéis e a área de "
+#~ "trabalho, utilizando uma janela de popup. O formato assemelha-se a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é "
+#~ "razoavelmente liberal e permite capitalização maiúscula ou minúscula e "
+#~ "também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "definir a opção para a expressão especial \"disabled\", não existirão "
+#~ "quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o focus entre painéis e a área "
+#~ "de trabalho, sem utilizar uma janela de popup. O formato assemelha-se a "
+#~ "\"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é "
+#~ "razoavelmente liberal e permite capitalização maiúscula ou minúscula e "
+#~ "também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "definir a opção para a expressão especial \"disabled\", não existirão "
+#~ "quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o foco entre janelas de uma "
+#~ "aplicação, sem utilizar uma janela de popup. (Tradicionalmente &lt;Alt&gt;"
+#~ "Escape) Premindo o \"Shift\" ao utilizar este atalho inverte a direcção "
+#~ "do movimento. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o foco entre janelas de uma "
+#~ "aplicação, utilizando uma janela de popup. (Tradicionalmente &lt;Alt&gt;"
+#~ "Tab) Premindo o \"Shift\" ao utilizar este atalho inverte a direcção do "
+#~ "movimento. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o foco entre janelas, sem "
+#~ "utilizar uma janela de popup. (Tradicionalmente &lt;Alt&gt;Escape) "
+#~ "Premindo o \"Shift\" ao utilizar este atalho inverte a direcção do "
+#~ "movimento. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para mover o foco entre janelas, utilizando "
+#~ "uma janela de popup. (Tradicionalmente &lt;Alt&gt;Tab) Premindo o \"Shift"
+#~ "\" ao utilizar este atalho inverte a direcção do movimento. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para alternar o estado sempre no topo. Uma "
+#~ "janela que esteja sempre no topo estará sempre visível sobre outras "
+#~ "janelas. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para alternar o modo de ecrã completo. O "
+#~ "formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". O processador é razoavelmente liberal e permite capitalização "
+#~ "maiúscula ou minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e "
+#~ "\"&lt;Ctrl&gt;\". Se definir a opção para a expressão especial \"disabled"
+#~ "\", não existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para alternar a maximização. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para alternar estado sombreado/não "
+#~ "sombreado. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para alternar entre se a janela está em "
+#~ "todas as áreas de trabalho ou apenas numa. O formato assemelha-se a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é "
+#~ "razoavelmente liberal e permite capitalização maiúscula ou minúscula e "
+#~ "também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "definir a opção para a expressão especial \"disabled\", não existirão "
+#~ "quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado utilizado para restaurar uma janela. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado que apresenta a caixa de diálogo de painel \"Executar "
+#~ "Aplicação\". O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "O atalho de teclado que apresenta uma consola. O formato assemelha-se a "
+#~ "\"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é "
+#~ "razoavelmente liberal e permite capitalização maiúscula ou minúscula e "
+#~ "também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "definir a opção para a expressão especial \"disabled\", não existirão "
+#~ "quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado que invoca o utilitário de capturas de ecrã para "
+#~ "obter uma captura de uma janela. O formato assemelha-se a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é "
+#~ "razoavelmente liberal e permite capitalização maiúscula ou minúscula e "
+#~ "também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "definir a opção para a expressão especial \"disabled\", não existirão "
+#~ "quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "O atalho de teclado que invoca o utilitário de captura de ecrã. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "O atalho de teclado que apresenta o menu principal do painel. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado alterna se uma janela está acima ou abaixo de "
+#~ "outras janelas. Se a janela estiver coberta por outra janela, eleva a "
+#~ "janela acima das outras, e a janela já estiver completamente visível, "
+#~ "baixa-a para trás das outras. O formato assemelha-se a \"&lt;Control&gt;a"
+#~ "\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente "
+#~ "liberal e permite capitalização maiúscula ou minúscula e também "
+#~ "abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a "
+#~ "opção para a expressão especial \"disabled\", não existirão quaisquer "
+#~ "atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Este atalho de teclado coloca uma janela atrás de outras janelas. O "
+#~ "formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". O processador é razoavelmente liberal e permite capitalização "
+#~ "maiúscula ou minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e "
+#~ "\"&lt;Ctrl&gt;\". Se definir a opção para a expressão especial \"disabled"
+#~ "\", não existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado move uma janela contra o lado norte (superior) do "
+#~ "ecrã. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the center of the screen. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado move uma janela para o centro do ecrã. O formato "
+#~ "assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "processador é razoavelmente liberal e permite capitalização maiúscula ou "
+#~ "minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;"
+#~ "\". Se definir a opção para a expressão especial \"disabled\", não "
+#~ "existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado move uma janela contra o lado este (direito) do "
+#~ "ecrã. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado move uma janela contra o lado nordeste (superior "
+#~ "direito) do ecrã. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado move uma janela contra o lado noroeste (superior "
+#~ "esquerdo) do ecrã. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado move uma janela contra o lado sul (inferior) do "
+#~ "ecrã. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado move uma janela contra o lado sudeste (inferior "
+#~ "direito) do ecrã. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado move uma janela contra o lado sudoeste (inferior "
+#~ "esquerdo) do ecrã. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado move uma janela contra o lado oeste (esquerdo) do "
+#~ "ecrã. O formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O processador é razoavelmente liberal e permite "
+#~ "capitalização maiúscula ou minúscula e também abreviaturas tais como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a expressão "
+#~ "especial \"disabled\", não existirão quaisquer atalhos de teclado para "
+#~ "esta acção."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Este atalho de teclado eleva uma janela acima de outras janelas. O "
+#~ "formato assemelha-se a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". O processador é razoavelmente liberal e permite capitalização "
+#~ "maiúscula ou minúscula e também abreviaturas tais como \"&lt;Ctl&gt;\" e "
+#~ "\"&lt;Ctrl&gt;\". Se definir a opção para a expressão especial \"disabled"
+#~ "\", não existirão quaisquer atalhos de teclado para esta acção."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado redimensiona uma janela para preencher o espaço "
+#~ "horizontal disponível. O formato assemelha-se a \"&lt;Control&gt;a\" ou "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e "
+#~ "permite capitalização maiúscula ou minúscula e também abreviaturas tais "
+#~ "como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a "
+#~ "expressão especial \"disabled\", não existirão quaisquer atalhos de "
+#~ "teclado para esta acção."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Este atalho de teclado redimensiona uma janela para preencher o espaço "
+#~ "vertical disponível. O formato assemelha-se a \"&lt;Control&gt;a\" ou "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". O processador é razoavelmente liberal e "
+#~ "permite capitalização maiúscula ou minúscula e também abreviaturas tais "
+#~ "como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se definir a opção para a "
+#~ "expressão especial \"disabled\", não existirão quaisquer atalhos de "
+#~ "teclado para esta acção."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Alternar estado sempre no topo"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Restaurar a janela"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Restaurar Janela"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"%s\" no elemento <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Tema já possui um ícone de recurso"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Tema já possui um mini_icon de recurso"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"name\" no elemento <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"value\" no elemento <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"top\" no elemento <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"bottom\" no elemento <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"left\" no elemento <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"right\" no elemento <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"color\" no elemento <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"x1\" no elemento <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"y1\" no elemento <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"x2\" no elemento <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"y2\" no elemento <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"y\" no elemento <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"width\" no elemento <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"height\" no elemento <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"start_angle\" no elemento <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"extent_angle\" no elemento <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"alpha\" no elemento <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"type\" no elemento <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"filename\" no elemento <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"state\" no elemento <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"shadow\" no elemento <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"arrow\" no elemento <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"value\" no elemento <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"position\" no elemento <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"function\" no elemento <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"state\" no elemento <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"focus\" no elemento <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"style\" no elemento <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"resize\" no elemento <%s>"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "O tipo de %s não era um inteiro"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d armazenado na chave MateConf %s não é um cursor_size razoável; tem de ser "
+#~ "um valor no intervalo 1..128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d armazenado na chave MateConf %s não é um número razoável de ambientes de "
+#~ "trabalho, o número máximo actual é %d\n"
+
+#~ msgid "On _Top"
+#~ msgstr "No _Topo"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Ao forçar esta aplicação a terminar perderá quaisquer dados por gravar."
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Função \"%s\" desconhecida para ícone de menu"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Estado \"%s\" desconhecido para ícone de menu"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "Tema já tem um ícone de menu para a função %s estado %s"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "Nenhum draw_ops indicado para ícone de menu"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "Falha ao ler tema de ficheiro %s: %s\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"qualquer\"/> tem de "
+#~ "ser especificado para este tema"
+
+#~ msgid ""
+#~ "If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+#~ "focused window will be automatically raised after a delay (the delay is "
+#~ "specified by the auto_raise_delay key). This preference is poorly named, "
+#~ "but kept for backwards compatibility. To try to be more clear (at least "
+#~ "to the technically inclined), its meaning is \"automatically raise the "
+#~ "window following a timeout which is triggered by non-grabbed mouse entry "
+#~ "in sloppy or mouse focus modes\". It is unrelated to clicking behavior (i."
+#~ "e. this is not related to raise-on-click/orthogonal-raise). It is "
+#~ "unrelated to entering a window during drag and drop (because that results "
+#~ "in the application grabbing the mouse)"
+#~ msgstr ""
+#~ "Se verdadeiro, e o modo de focus for \"sloppy\" ou \"mouse\" então a "
+#~ "janela com o focus elevar-se-á automaticamente após um atraso (o atraso é "
+#~ "especificado na chave auto_raise_delay). Esta preferência está "
+#~ "deficientemente denominada mas mantida por motivos de retro-"
+#~ "compatibilidade. Para tentar ser mais explícito (pelo menos para os mais "
+#~ "técnicos), o seu significado é \"elevar automaticamente a janela após um "
+#~ "período que é iniciado por um rato que não arrasta nada a entrar numa "
+#~ "área, estando em modo sloppy ou mouse\". Isto é independente do "
+#~ "comportamento de clique (não é relacionado com o evelar-ao-clicar/"
+#~ "elevação-ortogonal). Não se relaciona com entrar numa janela durante um "
+#~ "processo de arrastar-e-largar (pois isso resulta na aplicação controlar o "
+#~ "rato)"
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Algumas aplicações quebram as especificações de uma forma que resulta no "
+#~ "mau funcionamento do gestor de janelas. Por exemplo, idealmente o "
+#~ "Marco colocaria todos os diálogos numa posição consistente em relação "
+#~ "à janela pai. Isto requer ignorar posições de diálogos definidos pelas "
+#~ "aplicações. Mas algumas versões de Java/Swing marcam os seus menus popup "
+#~ "como diálogos, pelo que o Marco tem de desactivar o posicionamento de "
+#~ "diálogos para permitir que os menus funcionem em aplicações Java "
+#~ "problemáticas. Existem outros exemplos como este. Esta opção coloca o "
+#~ "Marco em modo de Correcção Completa, que provavelmente disponibiliza "
+#~ "um Interface melhor caso não tenha de executar nenhuma aplicação "
+#~ "problemática. Infelizmente têm de ser activados recursos por omissão; o "
+#~ "mundo real é um sitio horrível. Alguns dos recursos servem para "
+#~ "limitações nas próprias especificações, pelo que por vezes um erro em "
+#~ "modo sem recursos pode não ser corrijível sem alterar a própria "
+#~ "especificação."
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Processador de expressão de coordenada transbordou o seu buffer, o que é "
+#~ "um erro do Marco, mas tem a certeza de que precisa de uma expressão "
+#~ "tão grande?"
diff --git a/po/pt_BR.po b/po/pt_BR.po
new file mode 100644
index 00000000..ea963092
--- /dev/null
+++ b/po/pt_BR.po
@@ -0,0 +1,3916 @@
+# Brazilian Portuguese translation of marco.
+# Copyright (C) 2002-2007 Free Software Foundation, Inc.
+# Sun G11n <[email protected]>, 2002.
+# Evandro Fernandes Giovanini <[email protected]>, 2002, 2003, 2006.
+# Gustavo Noronha Silva <[email protected]>, 2004.
+# Alexandre Folle de Menezes <[email protected]>, 2005.
+# Leonardo Ferreira Fontenelle <[email protected]>, 2007, 2008.
+# Raul Pereira <[email protected]>, 2007.
+# Og Maciel <[email protected]>, 2007-2008.
+# Rodrigo Flores <[email protected]>, 2007.
+# Djavan Fagundes <[email protected]>, 2008, 2009.
+# Vladimir Melo <[email protected]>, 2009.
+# Henrique P Machado <[email protected]>, 2009.
+# Fábio Nogueira <[email protected]>, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-01-29 12:35-0500\n"
+"PO-Revision-Date: 2009-09-09 10:03-0300\n"
+"Last-Translator: Ísis Binder <[email protected]>\n"
+"Language-Team: Brazilian Portuguese <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Portuguese\n"
+"X-Poedit-Country: BRAZIL\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Área de trabalho"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Gerenciador de janelas"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Campainha de evento"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Informação solicitada de janela desconhecida: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> não está respondendo."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Você pode escolher esperar um pouco para que ela continue ou forçar o "
+"aplicativo a sair inteiramente."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Esperar"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Forçar sair"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Falha ao obter o nome da máquina: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Extensão %s necessária para composição em falta"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Falha ao abrir a exibição \"%s\" do X Window System\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"A conexão com a exibição \"%s\" foi perdida;\n"
+"provavelmente o servidor X foi desligado ou você matou/destruiu\n"
+"o gerenciador de janelas.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Erro fatal de E/S %d (%s) na exibição \"%s\".\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Algum outro programa já está usando a chave %s com modificadores %x como uma "
+"tecla de atalho\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Ocorreu um erro ao executar <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Nenhum comando %d foi definido.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Nenhum comando de terminal foi definido.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., e outros\n"
+"Esse programa é um software livre; veja o código fonte para obter as\n"
+"condições de cópia e distribuição.\n"
+"Não há NENHUMA garantia; nem mesmo para o COMÉRCIO ou ADEQUAÇÃO\n"
+"PARA UM PROPÓSITO PARTICULAR.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Desabilitar a conexão com o gerenciador de sessões"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Substituir o gerenciador de sessões em execução pelo Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Especificar o ID do gerenciador de sessões"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Exibição do X a ser utilizada"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inicializar a sessão a partir do arquivo salvo"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Versão impressa"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Fazer X chamadas síncronas"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Ativar composição"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Desativar composição"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Não torna janelas em tela-cheia que estão maximizadas e não tem decorações"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Falha ao varrer a pasta de temas: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Não foi possível localizar um tema! Verifique se %s existe e contém os temas "
+"comuns.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Falha ao reiniciar: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "A chave MateConf \"%s\" está definida com um valor inválido\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d armazenado na chave MateConf %s está fora do intervalo de %d a %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "A chave MateConf \"%s\" está definida como um tipo inválido\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"As alternativas para aplicativos quebrados estão desabilitadas. É possível "
+"que alguns aplicativos não funcionem de maneira adequada.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Não foi possível analisar a descrição da fonte \"%s\" a partir da chave "
+"MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" localizado no banco de dados de configurações não é um valor válido "
+"para o modificador de botão do mouse\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Erro ao definir o número de espaços de trabalho como %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Espaço de trabalho %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" localizado no banco de dados de configurações não é um valor válido "
+"para a tecla de atalho \"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+"Erro ao definir o nome para o espaço de trabalho %d para \"%s\": \"%s\"\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Erro ao definir o status do compositor: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "A tela %d na exibição \"%s\" é inválida\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"A tela %d na exibição \"%s\" já possui um gerenciador de janelas; tente usar "
+"a opção --replace para substituir o gerenciador de janelas atual.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Não foi possível obter a seleção do gerenciador de janelas na exibição \"%2$s"
+"\" da tela %1$d\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "A tela %d na exibição \"%s\" já possui um gerenciador de janelas\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Não foi possível liberar a tela %d na exibição \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"O formato parece com \"<Control>a\" ou \"<Shift><Alt>F1\".\n"
+"\n"
+"O analisador é bem liberal e permite maiúsculas e minúsculas, e também "
+"abreviações como \"<Ctl>\" e \"<Ctrl>\". Se você definir a opção para string "
+"especial como \"desabilitado\", então não haverá atalho para essa ação."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"O formato parece com \"<Control>a\" ou \"<Shift><Alt>F1\".\n"
+"\n"
+"O analisador é bem liberal e permite maiúsculas e minúsculas, e também "
+"abreviações como \"<Ctl>\" e \"<Ctrl>\". Se você definir a opção para string "
+"especial como \"desabilitado\", então não haverá atalho para essa ação.\n"
+"\n"
+"Este atalho pode ser revertido ao pressionar a tecla \"shift\"; portanto, "
+"\"shift\" não pode ser usado como uma das teclas."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Não foi possível criar o diretório \"%s\": %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Não foi possível abrir o arquivo de sessão \"%s\" para gravação: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Erro ao gravar o arquivo de sessão \"%s\": %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Erro ao fechar o arquivo de sessão \"%s\": %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Falha ao ler o arquivo de sessão salvo %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Falha ao analisar o arquivo de sessão salvo: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "O atributo <marco_session> foi visto, mas já temos o ID da sessão"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Atributo %s desconhecido no elemento <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "marca de <window> aninhada"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Elemento %s desconhecido"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Estas janelas não oferecem suporte para a opção &quot;salvar configuração "
+"atual&quot; e precisarão ser reiniciadas manualmente a próxima vez que você "
+"iniciar a sessão."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Falha ao abrir o log de depuração: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Falha ao executar fdopen() no arquivo de log %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Arquivo de log %s aberto\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "O Marco foi compilado sem suporte para modo detalhado\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Gerenciador de janelas: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Bug no gerenciador de janelas: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Aviso do gerenciador de janelas: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Erro do gerenciador de janelas: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"A janela %s define SM_CLIENT_ID em si mesma, ao invés de definir na janela "
+"WM_CLIENT_LEADER como o ICCCM especifica.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"A janela %s define uma dica MWM indicando que não é redimensionável, mas "
+"define o tamanho mínimo %d x %d e máximo %d x %d; isso não faz muito "
+"sentido.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "O aplicativo definiu um _NET_WM_PID %lu inválido\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (em %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (como super-usuário)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (como %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (como outro usuário)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Janela WM_TRANSIENT_FOR inválida 0x%lx especificada para %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"A janela 0x%lx tem a propriedade %s\n"
+"que deveria ter tipo %s formato %d\n"
+"e, na verdade, ela tem tipo %s, %d n_items %d.\n"
+"Isso é bem provavelmente um erro do aplicativo, não do gerenciador de "
+"janelas.\n"
+"A janela tem title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "A propriedade %s na janela 0x%lx continha UTF-8 inválido\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"A propriedade %s na janela 0x%lx continha UTF-8 inválido para o item %d da "
+"lista\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Trocar para o espaço de trabalho 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Trocar para o espaço de trabalho 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Trocar para o espaço de trabalho 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Trocar para o espaço de trabalho 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Trocar para o espaço de trabalho 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Trocar para o espaço de trabalho 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Trocar para o espaço de trabalho 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Trocar para o espaço de trabalho 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Trocar para o espaço de trabalho 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Trocar para o espaço de trabalho 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Trocar para o espaço de trabalho 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Trocar para o espaço de trabalho 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Trocar para o espaço de trabalho à esquerda deste"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Trocar para o espaço de trabalho à direita deste"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Trocar para o espaço de trabalho acima deste"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Trocar para o espaço de trabalho abaixo deste"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Mover entre as janelas de um aplicativo, usando uma janela instantânea"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Mover para trás entre as janelas de um aplicativo, usando uma janela "
+"instantânea"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Mover entre as janelas, usando uma janela instantânea"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Mover para trás entre as janelas, usando uma janela instantânea"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr ""
+"Mover entre os painéis e a área de trabalho, usando uma janela instantânea"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Mover para trás entre os painéis e a área de trabalho, usando uma janela "
+"instantânea"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Mover entre janelas de um aplicativo imediatamente"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Mover para trás entre as janelas de um aplicativo imediatamente"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Mover entre janelas imediatamente"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Mover para trás entre as janelas imediatamente"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Mover entre os painéis e a área de trabalho imediatamente"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Mover para trás entre os painéis e a área de trabalho imediatamente"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Ocultar todas as janelas normais e focar a área de trabalho"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Mostrar o menu principal do painel"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Mostrar a caixa de diálogo \"Executar aplicativo\" do painel"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Capturar imagem da tela"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Capturar imagem da tela de uma janela"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Executar um terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Ativar o menu da janela"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Alternar modo de tela inteira"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Alternar estado de maximização"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Alternar se uma janela será sempre visível sobre as outras"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximizar a janela"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restaurar janela"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Alternar estado sombreado"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimizar a janela"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Fechar a janela"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Mover a janela"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Redimensionar a janela"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Alternar se a janela está em todos os espaços de trabalho ou em apenas um"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Mover a janela para o espaço de trabalho 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Mover a janela para o espaço de trabalho 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Mover a janela para o espaço de trabalho 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Mover a janela para o espaço de trabalho 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Mover a janela para o espaço de trabalho 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Mover a janela para o espaço de trabalho 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Mover a janela para o espaço de trabalho 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Mover a janela para o espaço de trabalho 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Mover a janela para o espaço de trabalho 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Mover a janela para o espaço de trabalho 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Mover a janela para o espaço de trabalho 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Mover a janela para o espaço de trabalho 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Mover a janela um espaço de trabalho à esquerda"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Mover a janela um espaço de trabalho à direita"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Mover a janela um espaço de trabalho acima"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Mover a janela um espaço de trabalho abaixo"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Elevar a janela se ela estiver coberta por outra; caso contrário, abaixá-la"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Elevar a janela para frente das outras"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Colocar a janela atrás das outras"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximizar a janela verticalmente"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximizar a janela horizontalmente"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Mover a janela para o canto superior esquerdo"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Mover a janela para o canto superior direito"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Mover a janela para o canto inferior esquerdo"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Mover a janela para o canto inferior direito"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Mover a janela para a parte superior da tela"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Mover a janela para a parte inferior da tela"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Mover a janela para a direita da tela"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Mover a janela para a esquerda da tela"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Mover a janela para o centro da tela"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Não implementado) A navegação funciona em termos de aplicativos e não de "
+"janelas"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Uma string de descrição de fonte descrevendo uma fonte para as barras de "
+"título das janelas. O tamanho da descrição só será usado se a opção "
+"titlebar_font_size estiver definida como 0. Além disso, essa opção estará "
+"desabilitada se a opção titlebar_uses_desktop_font estiver definida como "
+"verdadeira."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Ação ao clicar duas vezes a barra de título"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Ação ao clicar com o botão do meio do mouse na barra de título"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Ação ao clicar com o botão direito do mouse na barra de título"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Localização dos botões na barra de título"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Localização dos botões na barra de título. O valor deve ser uma string, como "
+"\"menu:minimize,maximize,spacer,close\"; os dois pontos separam o lado "
+"esquerdo da janela do lado direito, e os nomes dos botões são separados por "
+"vírgulas. Não se pode duplicar botões. Nomes de botões desconhecidos são "
+"silenciosamente ignorados para que novos botões possam ser adicionados em "
+"versões futuras do marco sem quebrar versões mais antigas. Uma etiqueta "
+"especial espaçadora pode ser usada para inserir algum espaço entre dois "
+"botões adjacentes."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Elevar automaticamente a janela focada"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Clicar em uma janela ao pressionar esta chave moverá a janela (botão "
+"esquerdo), redimensionará a janela (botão do meio), ou mostrará o menu da "
+"janela (botão direito). As operações dos botões direito e do meio podem "
+"ser trocadas usando a chave \"resize_with_right_button\". O modificador "
+"é expresso como \"&lt;Alt&gt;\" ou \"&lt;Super&gt;\" por exemplo."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Comandos executados em resposta a teclas de atalho"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Gerenciador de composição"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Controla como novas janelas obtêm foco"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Tema atual"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Atraso em milissegundos para a opção de elevação automática"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determina se o Marco é um gerenciador de composição."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determina se aplicativos ou o sistema podem gerar alarmes sonoros (\"beeps"
+"\") audíveis; pode ser usado em conjunto com campainha visual (\"visual bell"
+"\") para permitir alarmes sonoros (\"beeps\") silenciosos."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Desabilitar recursos inadequados que são necessários a aplicativos antigos "
+"ou quebrados"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Habilitar campainha visual"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Se verdadeiro, e o modo de foco for \"sloppy\" ou \"mouse\", a janela focada "
+"será automaticamente elevada após um atraso especificado pela chave "
+"auto_raise_delay. Isso não tem relação alguma com clicar em uma janela para "
+"elevá-la, ou alcançar uma janela durante uma ação de arrastar-e-soltar."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Se verdadeiro, ignore a opção titlebar_font e use a fonte do aplicativo "
+"padrão para os títulos das janelas."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Se verdadeiro, o marco dará menor retorno ao usuário, por exemplo "
+"mostrando somente as bordas durante a movimentação da janela e evitando "
+"animações. Isso significa uma redução significativa na usabilidade para "
+"muitos usuários, mas pode possibilitar o funcionamento de aplicativos "
+"legados, e pode ser uma troca vantajosa em servidores de terminais. Quando a "
+"acessibilidade estivar ativada, no entanto, o recurso de bordas fica "
+"desabilitado."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Se verdadeiro, o Marco funcionará em termos de aplicativo, em vez de "
+"janelas. O conceito é um pouco abstrato, mas, em geral, uma instalação "
+"baseada em aplicativo assemelha-se mais ao Mac do que ao Windows. Quando "
+"você foca uma janela no modo baseado em aplicativo, todas as janelas do "
+"aplicativo são elevadas. Além disso, no modo baseado em aplicativo, os "
+"cliques no foco não afetam as janelas de outros aplicativos. No entanto, o "
+"modo baseado em aplicativos está muito pouco implementado."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Se verdadeiro, troca-se usabilidade por menos uso de recursos"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modificador a ser usado para ações modificadas de clique em janela"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Nome do espaço de trabalho"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Número de espaços de trabalho"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Número de espaços de trabalho. Deve ser maior que zero, e possui um valor "
+"máximo fixo para evitar que o espaço de trabalho seja inutilizada "
+"acidentalmente."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Executar um comando definido"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Definir isto como verdadeiro para redimensionar com o botão direito e "
+"mostrar um menu com o botão do meio enquanto a tecla dada em "
+"\"mouse_button_modifier\" é pressionada; definir isso como falso para fazer "
+"funcionar de forma contrária."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Marcar esta opção como falso pode levar ao comportamento errôneo, e usuários "
+"são desencorajados a alterar seu valor padrão de verdadeiro. Muitas ações "
+"(ex: clicando na área do cliente, movendo ou redimensionando a janela) "
+"normalmente levantam a janela como efeito colateral. Ao marcar esta opção "
+"como falso, o que é desencorajado, desconectará este levantamento de outras "
+"ações do usuário, e ignorará solicitações de levantamentos gerados pelos "
+"aplicativos. Veja http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Mesmo "
+"quando esta opção for falsa, as janelas ainda podem ser levantadas com a "
+"combinação da tecla alt e clique com o botão esquerdo do mouse em qualquer "
+"lugar da janela, um clique normal nas decorações da janela, ou por mensagens "
+"especiais do alternador de espaços de trabalho, como pedidos de ativação de "
+"miniaplicativos de listas de tarefas. Esta opção está atualmente "
+"desabilitada no modo clique-para-focar (click-on-focus). Note que a lista de "
+"formas de levantar janelas quando raise_on_click é falso não inclui pedidos "
+"programáticos de aplicativos para levantar janelas; tais pedidos serão "
+"ignorados independente do motivo de solicitação. Se você for um "
+"desenvolvedor de aplicativos e possui um usuário reclamando que seu "
+"aplicativo não funciona com esta opção desabilitada, diga a eles que a culpa "
+"é _deles_ por ter quebrado o gerenciador de janelas e que eles precisam "
+"mudar esta opção para verdadeiro ou viver com o erro que eles provocaram."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Alguns aplicativos desprezam especificações formais de modo a prejudicar o "
+"funcionamento do gerenciador de janelas. Esta opção põe Marco em um modo "
+"rigorosamente correto, o qual dá mais consistência à interface de usuário, "
+"desde que ele não precise executar aplicativos mal comportados."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "A campainha do sistema é audível"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Implementar uma indicação visual que a campainha do sistema ou de um "
+"aplicativo foi tocada. Atualmente, são dois valores possíveis, \"fullscreen"
+"\" que pisca toda tela, e \"frame_flash\", que causa um pisca a barra de "
+"título do aplicativo que emitiu o alarme sonoro (\"beep\"). Se o aplicativo "
+"que enviou o alarme sonoro (\"beep\") for desconhecido (como normalmente é o "
+"caso para o alarme sonoro (\"beep\") do sistema), a barra de título da "
+"janela focada piscará."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"As chaves /apps/marco/global_keybindings/run_command_N definem teclas de "
+"atalho que correspondem a estes comandos. Pressionando as teclas de atalho "
+"para run_command_N irá executar command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"A chave /apps/marco/global_keybindings/run_command_screenshot define uma "
+"associação de teclas que faz o comando especificado por esta configuração "
+"ser executado."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"A chave /apps/marco/global_keybindings/run_command_window_screenshot "
+"define uma associação de teclas que faz o comando especificado por esta "
+"configuração ser executado."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"A tecla de atalho que executa o comando com número correspondente em /apps/"
+"marco/keybinding_commands. O formato é semelhante a \"&lt;Control&gt;a\" "
+"ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante flexível, "
+"permitindo letras minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;"
+"\" e \"&lt;Ctrl&gt;\". Se você definir a opção como a stringo valor especial "
+"\"disabled\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "O nome de um espaço de trabalho."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "O comando para captura de tela"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"O tema determina a aparência das bordas, da barra de título e de outros "
+"elementos da janela."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"O atraso antes de uma janela ser elevada, se auto_raise estiver definido "
+"como verdadeiro. O atraso é fornecido em milésimos de segundo."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"O modo de foco da janela indica como as janelas são ativadas. Ele possui "
+"três valores possíveis; \"click\" significa que é necessário clicar nas "
+"janelas para focalizá-las, \"sloppy\" significa que as janelas são focadas "
+"quando o mouse é posicionado dentro delas e \"mouse\" significa que as "
+"janelas são focadas quando o mouse é posicionado dentro delas e desfocadas "
+"quando ele sai das janelas."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "O comando para captura de janela"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Essa opção determina o efeito de um duplo-clique na barra de título. As "
+"opções atuais válidas são \"toggle_shaded\", que irá sombrear ou não a "
+"janela, \"toggle_maximize\", que irá maximizar/desmaximizar a janela, "
+"\"toggle_maximize\", que irá maximizar/desmaximizar a janela, "
+"\"toggle_maximize_horizontally\" e \"toggle_maximize_vertically\" que irá "
+"maximizar/desmaximizar a janela somente naquela direção, \"minimize\", que "
+"irá minimizar a janela, \"shade\" que irá enrolar a janela, \"menu\" que irá "
+"exibir a janela de menu, \"lower\" que irá colocar a janela atrás de todas "
+"as outras e \"none\", que não faz nada."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Esta opção determina o efeito de clicar com o botão do meio do mouse na "
+"barra de título. As opções válidas atuais são \"toggle_shade\", que irá "
+"sombrear ou não a janela, \"toggle_maximize\", que irá maximizar/"
+"desmaximizar a janela, \"toggle_maximize_horizontally\" e "
+"\"toggle_maximize_vertically\" que irá maximizar/desmaximizar a janela "
+"somente naquela direção, \"minimize\", que irá minimizar a janela, \"shade\" "
+"que irá enrolar a janela, \"menu\" que irá exibir a janela de menu, \"lower"
+"\" que irá colocar a janela atrás de todas as outras e \"none\", que não faz "
+"nada."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Essa opção determina o efeito de clicar com o botão direito do mouse na "
+"barra de título. As opções atualmente válidas são \"toggle_shade\", que irá "
+"sombrear ou não a janela, \"toggle_maximize\", que irá maximizar/"
+"desmaximizar a janela, \"minimize\", que irá minimizar a janela, \"shade\" "
+"que irá enrolar a janela, \"menu\" que irá exibir a janela de menu, \"lower"
+"\" que irá colocar a janela atrás de todas as outras e \"none\", que não faz "
+"nada."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Essa opção fornece controle adicional sobre como janelas recentemente "
+"criadas obtêm foco. Ela tem dois valores possíveis: \"smart\" aplica o modo "
+"de foco normal do usuário, e \"strict\" faz com que as janelas iniciadas de "
+"um terminal não recebam foco."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Habilita uma indicação visual quando um aplicativo ou o sistema emitir um "
+"alarme sonoro (\"beep\"); útil para quem tem pouca audição e para ambientes "
+"barulhentos."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Usar fonte do sistema padrão nos títulos das janelas"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Tipo de campainha visual"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Se colocar janela à frente deve ser consequência de outras interações do "
+"usuário"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Redimensionar com o botão direito"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Modo de foco de janela"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Fonte do título da janela"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Uso: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Fechar janela"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Menu de janela"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimizar janela"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximizar janela"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restaurar janela"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Enrolar janela"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Desenrolar janela"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Manter no topo"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Remover do topo"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Sempre no espaço de trabalho visível"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Colocar em apenas um espaço de trabalho"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Desfazer ma_ximizar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Enrolar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Desenrolar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Mover"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Redimensionar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Mover barra de título para te_la"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Sempre no _topo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Sempre no espaço de trabalho visível"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Apenas neste espaço de trabalho"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Mover para o espaço de trabalho á _esquerda"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Mover para o espaço de trabalho à d_ireita"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Mover para o espaço de trabalho _acima"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Mover para o espaço de trabalho a_baixo"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "Fe_char"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Espaço de trabalho %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Espaço de trabalho 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Espaço de trabalho %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Mover para _outro espaço de trabalho"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "superior"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "inferior"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "esquerda"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "direita"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "a geometria do quadro não especifica a dimensão \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "a geometria do quadro não especifica a dimensão \"%s\" da borda \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "A taxa de proporção %g do botão não é razoável"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "A geometria do quadro não especifica o tamanho dos botões"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Os gradientes devem ter pelo menos duas cores"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"O estado da especificação de cor GTK deve estar entre colchetes, por "
+"exemplo, gtk:fg[NORMAL], onde NORMAL é o estado; não foi possível analisar "
+"\"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Deve haver um colchete de fechamento após o estado da especificação de cor "
+"GTK, por exemplo, gtk:fg[NORMAL], onde NORMAL é o estado; não foi possível "
+"analisar \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "O estado \"%s\" não foi compreendido na especificação de cor"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+"O componente de cor \"%s\" não foi compreendido na especificação de cor"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"O formato de mistura é \"blend/bg_color/fg_color/alpha\"; \"%s\" não é "
+"adequado ao formato"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Não foi possível analisar o valor de alfa \"%s\" na cor misturada"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "O valor de alfa \"%s\" na cor misturada não está entre 0,0 e 1,0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"O formato de sombra é \"shade/base_color/factor\", \"%s\" não é adequado ao "
+"formato"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Não foi possível analisar o fator de sombra \"%s\" na cor sombreada"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "O fator de sombra \"%s\" na cor sombreada é negativo"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Não foi possível analisar a cor \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "A expressão coordenada contém o caractere \"%s\" que não é permitido"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"A expressão coordenada contém o número de ponto flutuante \"%s\" que não "
+"pôde ser analisado"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"A expressão coordenada contém o inteiro \"%s\" que não pôde ser analisado"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"A expressão coordenada continha um operador desconhecido no início deste "
+"texto: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "A expressão coordenada estava vazia ou não foi compreendida"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "A expressão coordenada resulta na divisão por zero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"A expressão coordenada tenta usar o operador mod em um número de ponto "
+"flutuante"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"A expressão coordenada tem o operador \"%s\" onde era esperado um operando"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "A expressão coordenada tinha um operando onde era esperado um operador"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"A expressão coordenada terminou com um operador, em vez de com um operando"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"A expressão coordenada tem o operador \"%c\" após o operador \"%c\" sem "
+"nenhum operando entre eles"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"A expressão coordenada tinha uma variável ou uma constante desconhecida \"%s"
+"\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "O analisador de expressão coordenada estourou o buffer."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"A expressão coordenada tinha um parêntese de fechamento sem um parêntese de "
+"abertura"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"A expressão coordenada tinha um parêntese de abertura sem um parêntese de "
+"fechamento"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Aparentemente não há operadores nem operandos na expressão coordenada"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "O tema continha uma expressão que resultou em um erro: %s \n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> deve ser "
+"especificado para este estilo de quadro"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> ausente"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Falha ao carregar o tema \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nenhum <%s> definido para o tema \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Nenhum estilo de quadro definido para o tipo de janela \"%s\" no tema \"%s"
+"\", adicione um elemento <window type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"As constantes definidas pelo usuário devem iniciar com letra maiúscula; \"%s"
+"\" não inicia"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "A constante \"%s\" já foi definida"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Nenhum atributo \"%s\" no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Caractere %d da linha %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "O atributo \"%s\" foi repetido duas vezes no mesmo elemento <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "O atributo \"%s\" é inválido no elemento <%s> neste contexto"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Não foi possível analisar \"%s\" como um inteiro"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+"Os caracteres à direita \"%s\" na string \"%s\" não foram compreendidos"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "O inteiro %ld deve ser positivo"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "O inteiro %ld é muito grande; o valor máximo atual é %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Não foi possível analisar \"%s\" como um número de ponto flutuante"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Os valores booleanos devem ser \"true\" ou \"false\" e não \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "O ângulo deve estar entre 0,0 e 360,0 e era %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa deve estar entre 0,0 (invisível) e 1,0 (totalmente opaco) e era %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Escala de título \"%s\" inválida (deve ser super pequena, extra pequena, "
+"pequena, média, grande, extra grande ou super grande)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> nome \"%s\" usado uma segunda vez"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> pai \"%s\" não foi definido"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometria \"%s\" não foi definida"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> deve especificar uma geometria ou um pai que tenha uma geometria"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+"Você pode especificar um plano de fundo para que um valor alfa faça sentido"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Tipo \"%s\" desconhecido no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "conjunto_de_estilo \"%s\" desconhecido no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "O tipo de janela \"%s\" já foi atribuído a um estilo definido"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "O elemento <%s> não é permitido abaixo de <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Não foi possível especificar \"button_width\"/\"button_height\" e "
+"\"aspect_ratio\" para os botões"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "A distância \"%s\" é desconhecida"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "A taxa de proporção \"%s\" é desconhecida"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "A borda \"%s\" é desconhecida"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Nenhum atributo \"start_angle\" ou \"from\" no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Nenhum atributo \"extent_angle\" ou \"to\" no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "O valor \"%s\" não foi compreendido para o tipo de gradiente"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+"O tipo de preenchimento \"%s\" não foi compreendido para o elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "O estado \"%s\" não foi compreendido para o elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "A sombra \"%s\" não foi compreendida para o elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "A seta \"%s\" não foi compreendida para o elemento <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nenhum <draw_ops> chamado \"%s\" foi definido"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "A inclusão do draw_ops \"%s\" aqui criaria uma referência circular"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Posição \"%s\" desconhecida para a parte do quadro"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "O estilo de quadro já tem uma parte na posição %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nenhum <draw_ops> com o nome \"%s\" foi definido"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Função \"%s\" desconhecida para o botão"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "A função \"%s\" de botão não existe nesta versão (%d, necessário %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Estado \"%s\" desconhecido para o botão"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "O estilo de quadro já possui um botão para o estado %s da função %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" não é um valor válido para o atributo de foco"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" não é um valor válido para o atributo de estado"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Um estilo chamado \"%s\" não foi definido"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" não é um valor válido para o atributo de redimensionamento"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Não deve haver o atributo \"resize\" no elemento <%s> para os estados "
+"maximizado/sombreado"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Não deve haver o atributo \"resize\" no elemento <%s> para os estados "
+"maximizados"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"O estilo já foi especificado para o foco %s de redimensionamento %s do "
+"estado %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "O estilo já foi especificado para o foco %s do estado %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Não pode haver um segundo draw_ops para um elemento <piece> (o tema "
+"especificou um atributo draw_ops e um elemento <draw_ops> ou especificou "
+"dois elementos)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Não pode haver um segundo draw_ops para um elemento <button> (o tema "
+"especificou um atributo draw_ops e um elemento <draw_ops> ou especificou "
+"dois elementos)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Não pode haver um segundo draw_ops para um elemento <menu_icon> (o tema "
+"especificou um atributo draw_ops e um elemento <draw_ops> ou especificou "
+"dois elementos)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "O elemento mais externo no tema deve ser <marco_theme> e não <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"O elemento <%s> não é permitido em um elemento nome/autor/data/descrição"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "O elemento <%s> não é permitido em um elemento <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"O elemento <%s> não é permitido em um elemento distância/borda/"
+"taxa_de_proporção"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "O elemento <%s> não é permitido em um elemento de operação de desenho"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "O elemento <%s> não é permitido em um elemento <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Nenhum draw_ops foi fornecido para a parte do quadro"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Nenhum draw_ops foi fornecido para o botão"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Nenhum texto é permitido no elemento <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> especificado duas vezes para este tema"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Falha ao localizar um arquivo válido para o tema %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "O arquivo de tema %s não continha um elemento <marco_theme> raiz"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Janelas"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Janelas/destacável"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Janelas/_Diálogo"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Janelas/Diálogo _modal"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Janelas/_Utilitária"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Janelas/Tela de _abertura"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Janelas/Encaixe de _topo"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Janelas/Encaixe de _fundo"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Janelas/Encaixe da _esquerda"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Janelas/Encaixe da _direita"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Janelas/Tod_os os encaixes"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Janelas/Área de _Trabalho"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Esta é uma mensagem de exemplo em um diálogo de exemplo"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Item falso de menu %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Janela com bordas somente"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Barra"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Janela normal de aplicativos"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Caixa de diálogo"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Caixa de diálogo modal"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta utilitária"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Menu destacável"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Borda"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Teste de disposição dos botões %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milissegundos para desenhar um quadro de janela"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Uso: marco-theme-viewer [NOMEDOTEMA]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Erro ao carregar tema: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tema \"%s\" carregado em %g segundos\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Fonte de título normal"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Fonte de título pequeno"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Fonte de título grande"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Disposições de botões"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Benchmark"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "O título da janela vem aqui"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d quadros desenhados em %g segundos do lado cliente (%g milissegundos por "
+"quadro) e %g segundos no relógio, incluindo recursos do servidor X (%g "
+"milissegundos por quadro)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "teste de expressão de posição retornou VERDADEIRO mas definiu erro"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "teste de expressão de posição retornou FALSO mas não definiu erro"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Um erro era esperado mas nenhum foi fornecido"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "O erro %d era esperado, mas o %d foi fornecido"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Não era esperado um erro, mas um foi retornado: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "valor x era %d, mas %d era esperado"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "o valor y era %d, mas %d era esperado"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d expressões de coordenadas analisadas em %g segundos (%g segundos em "
+"média)\n"
+
+#~ msgid ""
+#~ "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#~ "\n"
+#~ "<i>You may choose to wait a short while for it to continue or force the "
+#~ "application to quit entirely.</i>"
+#~ msgstr ""
+#~ "<big><b><tt>%s</tt> não está respondendo.</b></big>\n"
+#~ "\n"
+#~ "<i>Você pode escolher esperar um pouco para que ele continue ou forçar o "
+#~ "aplicativo a sair inteiramente.</i>"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Abrir outra janela desse tipo"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Este é um botão de demonstração com um ícone \"abrir\""
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Este é um botão de demonstração com um ícone \"sair\""
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Erro ao lançar o diálogo do Marco para avisar sobre as aplicações que "
+#~ "não oferecem suporte ao gerenciamento de sessão: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Título"
+
+#~ msgid "Class"
+#~ msgstr "Classe"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Ocorreu um erro ao executar \"%s\":\n"
+#~ "%s."
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr ""
+#~ "Falha ao analisar a mensagem \"%s\" do processo da caixa de diálogo\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr ""
+#~ "Erro ao ler a partir do processo de exibição da caixa de diálogo: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Erro ao exibir caixa de diálogo para perguntar sobre como matar um "
+#~ "aplicativo: %s\n"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> especificado duas vezes para este tema"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> especificado duas vezes para este tema"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> especificada duas vezes para este tema"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> especificada duas vezes para este tema"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Erro ao abrir um diálogo do Marco para exibir uma mensagem de erro "
+#~ "sobre um comando: %s\n"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Desmaximizar a janela"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Várias ações (como clicar em uma área cliente, mover ou redimensionar a "
+#~ "janela) normalmente elevam a janela como consequência. Defina esta opção "
+#~ "para falsa para desacoplar a elevação das outras ações do usuário, e "
+#~ "ignorar as requisições de elevação geradas pelos aplicativos. Veja http://"
+#~ "bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Desfazer maximizar janela"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Atributo %s desconhecido no elemento <marco_session>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Atributo %s desconhecido no elemento <maximized>"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Atributo %s desconhecido no elemento <geometry>"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho acima do atual. O "
+#~ "formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". O analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho abaixo do atual. O "
+#~ "formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. O analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho à esquerda do "
+#~ "atual. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho à direita do atual. "
+#~ "O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 1. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 10. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 11. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 12. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 2. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 3. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 4. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 5. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 6. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 7. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 8. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que troca para o espaço de trabalho 9. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para ativar o menu da janela. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para entrar em \"modo de movimentação\" e começar "
+#~ "a mover uma janela usando o teclado. O formato é semelhante a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante "
+#~ "flexível, permitindo letras minúsculas ou maiúsculas e abreviações, como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a opção como o valor "
+#~ "especial \"disabled\" (desabilitada), não haverá tecla de atalho para "
+#~ "essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para entrar em \"modo de redimensionamento\" e "
+#~ "começar a redimensionar uma janela usando o teclado. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para ocultar todas as janelas normais e definir o "
+#~ "foco como o plano de fundo da área de trabalho. O formato é semelhante a "
+#~ "\"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é "
+#~ "bastante flexível, permitindo letras minúsculas ou maiúsculas e "
+#~ "abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a "
+#~ "opção como o valor especial \"disabled\" (desabilitada), não haverá tecla "
+#~ "de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para maximizar uma janela. O formato é semelhante "
+#~ "a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é "
+#~ "bastante flexível, permitindo letras minúsculas ou maiúsculas e "
+#~ "abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a "
+#~ "opção como o valor especial \"disabled\" (desabilitada), não haverá tecla "
+#~ "de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para minimizar uma janela. O formato é semelhante "
+#~ "a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é "
+#~ "bastante flexível, permitindo letras minúsculas ou maiúsculas e "
+#~ "abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a "
+#~ "opção como o valor especial \"disabled\" (desabilitada), não haverá tecla "
+#~ "de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela um espaço de trabalho "
+#~ "abaixo. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela um espaço de trabalho à "
+#~ "esquerda. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela um espaço de trabalho à "
+#~ "direita. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela um espaço de trabalho "
+#~ "acima. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "1. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "10. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "11. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "12. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "2. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "3. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "4. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "5. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "6. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "7. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "8. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover uma janela para o espaço de trabalho "
+#~ "9. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco na direção contrária entre "
+#~ "painéis e a área de trabalho usando uma janela instantânea. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como a string especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco na direção contrária entre "
+#~ "painéis e a área de trabalho sem uma janela instantânea. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como a string especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco na direção contrária entre "
+#~ "janelas de um aplicativo sem uma janela instantânea. Segurar o \"shift\" "
+#~ "junto com este atalho deixa o sentido para frente novamente. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco na direção contrária entre "
+#~ "janelas de um aplicativo, usando uma janela instantânea. Segurar o \"shift"
+#~ "\" junto com este atalho deixa o sentido para frente novamente. O formato "
+#~ "é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco na direção contrária entre "
+#~ "janelas sem uma janela instantânea. O formato é semelhante a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante "
+#~ "flexível, permitindo letras minúsculas ou maiúsculas e abreviações, como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a opção como o valor "
+#~ "especial \"disabled\" (desabilitada), não haverá tecla de atalho para "
+#~ "essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco na direção contrária entre "
+#~ "janelas usando uma janela instantânea. O formato é semelhante a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante "
+#~ "flexível, permitindo letras minúsculas ou maiúsculas e abreviações, como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a opção como o valor "
+#~ "especial \"disabled\" (desabilitada), não haverá tecla de atalho para "
+#~ "essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco entre painéis e a área de "
+#~ "trabalho, usando uma janela instantânea. O formato é semelhante a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante "
+#~ "flexível, permitindo letras minúsculas ou maiúsculas e abreviações, como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a opção como o valor "
+#~ "especial \"disabled\" (desabilitada), não haverá tecla de atalho para "
+#~ "essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco entre painéis e a área de "
+#~ "trabalho, sem uma janela instantânea. O formato é semelhante a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante "
+#~ "flexível, permitindo letras minúsculas ou maiúsculas e abreviações, como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a opção como o valor "
+#~ "especial \"disabled\" (desabilitada), não haverá tecla de atalho para "
+#~ "essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco entre janelas de um aplicativo "
+#~ "sem janela instantânea. Segurar a tecla \"shift\" enquanto usa este "
+#~ "atalho inverte o sentido do movimento. O formato é semelhante a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante "
+#~ "flexível, permitindo letras minúsculas ou maiúsculas e abreviações, como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a opção como o valor "
+#~ "especial \"disabled\" (desabilitada), não haverá tecla de atalho para "
+#~ "essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco entre janelas de um aplicativo, "
+#~ "usando uma janela instantânea. (Tradicionalmente &lt;Alt&gt;F6.) Segurar "
+#~ "a tecla \"shift\" enquanto usa este atalho inverte o sentido do "
+#~ "movimento. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante flexível, permitindo "
+#~ "letras minúsculas ou maiúsculas e abreviações como \"&lt;Ctl&gt;\" e "
+#~ "\"&lt;Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco entre janelas sem uma janela "
+#~ "instantânea. (Tradicionalmente &lt;Alt&gt;Escape.) Segurar a tecla \"shift"
+#~ "\" ao usar essa tecla de atalho inverte a direção do movimento. O formato "
+#~ "é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco entre janelas usando uma janela "
+#~ "instantânea. (Tradicionalmente &lt;Alt&gt;Tab) Segurar o \"shift\" ao "
+#~ "usar essa tecla de atalho inverte a direção do movimento. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para alternar para o modo sempre no topo. A "
+#~ "janela que está sempre no topo será sempre visível sobre outras janelas. "
+#~ "O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para alternar para o modo de tela inteira. O "
+#~ "formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". O analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para alternar a maximização. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para alternar entre o estado sombreado ou não "
+#~ "sombreado. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante flexível, permitindo "
+#~ "letras minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e "
+#~ "\"&lt;Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para alternar entre a exibição da janela em todas "
+#~ "ou em apenas um espaço de trabalho. O formato é semelhante a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante "
+#~ "flexível, permitindo letras minúsculas ou maiúsculas e abreviações, como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a opção como o valor "
+#~ "especial \"disabled\" (desabilitada), não haverá tecla de atalho para "
+#~ "essa ação."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para desmaximizar uma janela. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho que executa o diálogo \"Executar Aplicativo\" do "
+#~ "painel. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho que invoca um terminal. O formato é semelhante a \"&lt;"
+#~ "Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante "
+#~ "flexível, permitindo letras minúsculas ou maiúsculas e abreviações, como "
+#~ "\"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a opção como o valor "
+#~ "especial \"disabled\" (desabilitada), não haverá tecla de atalho para "
+#~ "essa ação."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para abrir o programa de captura de tela do "
+#~ "painel para capturar a imagem de uma janela. O formato é semelhante a "
+#~ "\"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O analisador é "
+#~ "bastante flexível, permitindo letras minúsculas ou maiúsculas e "
+#~ "abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se você definir a "
+#~ "opção como o valor especial \"disabled\" (desabilitada), não haverá tecla "
+#~ "de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "A tecla de atalho que inicia o programa de captura de tela do painel. O "
+#~ "formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". O analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mostrar o menu principal do painel. O "
+#~ "formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". O analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho alterna o empilhamento da janela. Se a janela "
+#~ "estiver coberta por outra, será reposicionada acima de todas as janelas; "
+#~ "se já estiver totalmente visível, será posicionada abaixo de outras "
+#~ "janelas. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho coloca uma janela atrás das outras. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho move uma janela para o lado superior da tela. O "
+#~ "formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". O analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho move uma janela para o lado direito da tela. O "
+#~ "formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". O analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho move uma janela para o canto superior direito da "
+#~ "tela. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho move uma janela para o canto superior esquerdo da "
+#~ "tala. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho move uma janela para o lado inferior da tela. O "
+#~ "formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". O analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho move uma janela para o canto inferior direito da "
+#~ "tela. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho move uma janela para o canto inferior esquerdo da "
+#~ "tela. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". O analisador é bastante flexível, permitindo letras "
+#~ "minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;"
+#~ "Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho move uma janela para o lado superior da janela. O "
+#~ "formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". O analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho coloca uma janela à frente das outras. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desabilitada), "
+#~ "não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho redimensiona uma janela para preencher a tela "
+#~ "horizontalmente. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante flexível, permitindo "
+#~ "letras minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e "
+#~ "\"&lt;Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Esta tecla de atalho redimensiona uma janela para preencher a tela "
+#~ "verticalmente. O formato é semelhante a \"&lt;Control&gt;a\" ou \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". O analisador é bastante flexível, permitindo "
+#~ "letras minúsculas ou maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e "
+#~ "\"&lt;Ctrl&gt;\". Se você definir a opção como o valor especial \"disabled"
+#~ "\" (desabilitada), não haverá tecla de atalho para essa ação."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Alternar estado sempre no topo"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"%s\" no elemento <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "O tema já tem um ícone de reserva"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "O tema já tem um mini ícone de reserva"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"nome\" no elemento <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"valor\" no elemento <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"top\" no elemento <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"bottom\" no elemento <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"left\" no elemento <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"right\" no elemento <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"color\" no elemento <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"x1\" no elemento <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"y1\" no elemento <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"x2\" no elemento <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"y2\" no elemento <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"y\" no elemento <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"width\" no elemento <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"height\" no elemento <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"start_angle\" no elemento <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"extent_angle\" no elemento <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"alpha\" no elemento <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"type\" no elemento <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"filename\" no elemento <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"state\" no elemento <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"shadow\" no elemento <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Nenhum atributo \"arrow\" no elemento <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"value\" no elemento <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"position\" no elemento <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"function\" no elemento <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"estado\" no elemento <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"foco\" no elemento <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"style\" no elemento <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Nenhum atributo \"resize\" no elemento <%s>"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "Tipo de %s não foi um inteiro"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d armazenado na chave MateConf %s não é um cursor_size razoável; deve estar "
+#~ "no intervalo 1...128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d armazenado na chave MateConf %s não é um número razoável de espaços de "
+#~ "trabalho; o máximo atual é %d\n"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a instantânea window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A tecla de atalho usada para mover o foco na direção contrária entre "
+#~ "painéis e a área de trabalho, sem uma janela instantânea. O formato é "
+#~ "semelhante a \"&lt;Control&gt;a\" ou \"&lt;Shift&gt;&lt;Alt&gt;F1\". O "
+#~ "analisador é bastante flexível, permitindo letras minúsculas ou "
+#~ "maiúsculas e abreviações, como \"&lt;Ctl&gt;\" e \"&lt;Ctrl&gt;\". Se "
+#~ "você definir a opção como o valor especial \"disabled\" (desativada), não "
+#~ "haverá tecla de atalho para essa ação."
+
+#~ msgid "On _Top"
+#~ msgstr "No _Topo"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Forçar este aplicativo a sair, causará a perda de todas as alterações não "
+#~ "salvas."
+
+#~ msgid ""
+#~ "If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+#~ "focused window will be automatically raised after a delay (the delay is "
+#~ "specified by the auto_raise_delay key). This preference is poorly named, "
+#~ "but kept for backwards compatibility. To try to be more clear (at least "
+#~ "to the technically inclined), its meaning is \"automatically raise the "
+#~ "window following a timeout which is triggered by non-grabbed mouse entry "
+#~ "in sloppy or mouse focus modes\". It is unrelated to clicking behavior (i."
+#~ "e. this is not related to raise-on-click/orthogonal-raise). It is "
+#~ "unrelated to entering a window during drag and drop (because that results "
+#~ "in the application grabbing the mouse)"
+#~ msgstr ""
+#~ "Se verdadeiro, e o modo de foco é \"sloppy\" ou \"mouse\", então a janela "
+#~ "focada será automaticamente elevada após um atraso (que é definido pela "
+#~ "chave auto_raise_delay). O nome dessa preferência não é perfeito, mas é "
+#~ "usado para compatibilidade com versões anteriores. Para ser mais claro "
+#~ "(ou pelo menos de forma mais técnica), o significado é \"automaticamente "
+#~ "elevar a janela após a espera que é causada por uma entrada não obtida do "
+#~ "mouse no modo de foco sloppy ou mouse\". Não é relacionada ao "
+#~ "comportamento de cliques (isto é, não é relacionada a elevar-no-clique/"
+#~ "elevar-ortogonalmente). Não está relacionada a entrar em uma janela "
+#~ "durante uma operação de arrastar e soltar (porque isso resulta em um "
+#~ "aplicativo obtendo o mouse)."
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Alguns aplicativos quebram as especificações de modo que resultam em "
+#~ "recursos inadequados do gerenciador de janelas. Por exemplo, teoricamente "
+#~ "o Marco colocaria todas as caixas de diálogo em uma posição "
+#~ "consistente em relação à janela pai. Isso requer que as posições "
+#~ "especificadas pelos aplicativos para as caixas de diálogo sejam "
+#~ "ignoradas. No entanto, como algumas versões de Java/Swing marcam seus "
+#~ "menus instantâneos como caixas de diálogo, o Marco precisa desabilitar "
+#~ "o posicionamento das caixas de diálogo para que os menus possam funcionar "
+#~ "nos aplicativos Java quebradas. Há vários outros exemplos como esse. Essa "
+#~ "opção coloca o Marco no modo de correção completa, o que poderá "
+#~ "fornecer uma UI um pouco mais amigável se você não precisar executar "
+#~ "nenhum aplicativo quebrado. Infelizmente, as alternativas devem estar "
+#~ "habilitadas por padrão; o mundo é cruel. Algumas das alternativas aplicam-"
+#~ "se às limitações nas próprias especificações; portanto, algumas vezes, "
+#~ "não será possível corrigir um erro no modo sem alternativas sem que uma "
+#~ "especificação seja corrigida."
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Função \"%s\" desconhecida para o ícone de menu"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Estado \"%s\" desconhecido para o ícone de menu"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "O tema já possui um ícone de menu para o estado %s da função %s"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "Nenhum draw_ops foi fornecido para o ícone de menu"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "Falha ao ler o tema a partir do arquivo %s: %s\n"
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "O analisador da expressão coordenada estourou seu buffer; esse é um erro "
+#~ "do Marco, mas você tem certeza de que precisa de uma expressão tão "
+#~ "grande?"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> deve ser "
+#~ "especificado para este tema"
diff --git a/po/ro.po b/po/ro.po
new file mode 100644
index 00000000..5c9a5efd
--- /dev/null
+++ b/po/ro.po
@@ -0,0 +1,2418 @@
+# Romanian translation for marco-2.4.0.
+# Copyright (C) 2002
+# This file is distributed under the same license as the marco package.
+# Mugurel Tudor <[email protected]>, 2002-2004, 2005, 2006, 2007.
+# Adi Roiban https://launchpad.net/~adiroiban, 2008, 2009
+# Lucian Adrian Grijincu <[email protected]>, 2009, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.HEAD.ro\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-02-10 21:23+0000\n"
+"PO-Revision-Date: 2010-02-12 22:59+0300\n"
+"Last-Translator: Lucian Adrian Grijincu <[email protected]>\n"
+"Language-Team: Romanian MATE Team <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: ro\n"
+"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
+"20)) ? 1 : 2);;\n"
+"X-Generator: Virtaal 0.5.2\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Desktop"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Administrare ferestre"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Eveniment bip"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Cerere necunoscută de informație pentru fereastră: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> nu răspunde."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Puteți aștepta încă puțin pentru a continua sau puteți forța închiderea "
+"completă a aplicației."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Așteaptă"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Forțează închiderea"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Nu s-a putut obține numele calculatorului gazdă: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Extensie %s negăsită, necesară pentru compunere"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Nu s-a putut deschide afișajul X Window System „%s”\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"S-a pierdut conexiunea cu ecranul „%s”;\n"
+"cel mai probabil serverul X a fost oprit sau ați terminat/distrus\n"
+"administratorul de ferestre.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Eroare fatală IO %d (%s) la afișajul '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Alt program folosește deja tasta %s cu modificatorul %x drept combinație\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"A apărut o eroare la executarea <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Nici o comandă %d nu a fost definită.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Nici o comandă pentru terminal nu a fost definită.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Drepturi de autori (C) 2001-%s Havoc Pennington, Red Hat, Inc., și alții\n"
+"Acesta este software liber; consultați sursa pentru condițiile de copiere.\n"
+"Nu există NICIO garanție; nici aceea de COMERCIALIZARE sau ADECVARE PENTRU "
+"UN SCOP ANUME.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Dezactivează conexiunea la administratorul de sesiune"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Înlocuiește administratorul de ferestre curent cu Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Specifică ID-ul administrării de sesiune"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Afișajul X ce va fi folosit"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inițializează sesiunea din fișierul salvat"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Afișează versiunea"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Realizează apelurile X sincron"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Pornește efectele compozite"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Oprește efectele compozite"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Nu desena pe tot ecranul ferestrele care sunt maximizate, dar care nu au "
+"decorații"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Nu s-a putut citi dosarul de teme: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Nu s-a putut găsi o temă ! Asigurați-vă că %s există și conține temele "
+"uzuale.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Eșuare la repornire: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Cheia MateConf „%s” este definită la o valoare nevalidă\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d stocat în cheia MateConf %s este în afara intervalului %d la %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Cheia MateConf „%s” este definită la o valoare nevalidă\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Soluțiile de compromis pentru aplicațiile problematice sunt dezactivate. "
+"Există posibilitatea ca unele aplicații să nu se comporte corect.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Nu s-a putut analiza descrierea fontului „%s” din cheia MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"„%s” găsită în configurație nu este o cheie validă pentru modificatorul "
+"butonului de maus\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Eroare la definirea numărului de ecrane la %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Spațiul de lucru %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"„%s” găsită în configurație nu este o cheie validă pentru combinația de "
+"taste „%s”\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Eroare la definirea numelui spațiului de lucru %d la „%s”: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Eroare la stabilirea stării compozitorului: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Ecranul %d pe afișajul „%s” este invalid\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Ecranul %d pe afișajul „%s” are deja un administrator de ferestre; încercați "
+"să folosiți opțiunea --replace pentru a înlocui administratorul de ferestre "
+"actual.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Nu s-a putut obține selecția administratorului de ferestre pe ecranul %d "
+"afișajul „%s”\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Ecranul %d pe afișajul „%s” are deja un administrator de ferestre\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Nu s-a putut elibera ecranul %d pe afișajul „%s”\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Formatul arată ca „<Control>a” sau „<Shift><Alt>F1”.\n"
+"\n"
+"Analizorul este destul de permisiv și acceptă și minuscule și majuscule, și "
+"de asemenea abreviații ca „<Ctl>” și „<Ctrl>”. Dacă folosiți șirul special "
+"„disabled”, atunci nu va fi asociată nici o combinație de taste acestei "
+"acțiuni."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Formatul arată ca „<Control>a” sau „<Shift><Alt>F1”.\n"
+"\n"
+"Analizorul este destul de permisiv și acceptă și minuscule și majuscule, și "
+"de asemenea abreviații ca „<Ctl>” și „<Ctrl>”. Dacă folosiți șirul special "
+"„disabled”, atunci nu va fi asociată nici o combinație de taste aceastei "
+"acțiuni.\n"
+"\n"
+"Această combinație poate fi inversată apăsând tasta „Shift”; din această "
+"cauză, tasta „Shift” nu poate fi folosită în combinație."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Nu s-a putut crea dosarul „%s”: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Nu s-a putut deschide fișierul de sesiune „%s” pentru scriere: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Eroare la scrierea fișierului de sesiune „%s”: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Eroare la închiderea fișierului de sesiune „%s”: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Nu s-a putut citi fișierul sesiunii salvate %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Nu s-a putut analiza fișierul sesiunii salvate: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "atributul <marco_session> a fost văzut dar avem deja ID-ul sesiunii"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Atribut necunoscut %s al elementului <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "etichetă imbricată <window>"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Element necunoscut %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Aceste ferestre nu suportă &quot;save current setup&quot; și va trebui să "
+"fie restaurate manual în sesiunea următoare."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Nu s-a putut deschide înregistrarea de depanare: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+"Nu s-a putut deschide folosind fdopen() fișierul de înregistrare %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "S-a deschis fișierul de înregistrare %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco a fost compilat fără suport pentru modul detaliat\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Administrator de ferestre: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Problemă în administratorul de ferestre: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Avertisment al administratorului de ferestre: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Eroare a administratorului de ferestre: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Fereastra %s definește SM_CLIENT_ID asupra sa, în loc să o facă asupra "
+"ferestrei WM_CLIENT_LEADER așa cum este specificat în ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Fereastra %s definește un indicator MWM indicând că nu e redimensionabilă, "
+"dar definește dimensiunea minimă %d x %d și dimensiunea maximă %d x %d; asta "
+"nu prea are sens.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Aplicația a definit un _NET_WM_PID fictiv %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (pe %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (drept superutilizator)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (drept %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (drept un alt utilizator)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+"S-a specificat un WM_TRANSIENT_FOR fereastra 0x%lx invalid pentru %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Fereastra 0x%lx are proprietatea %s\n"
+"care era așteptată să aibă tipul %s formatul %d\n"
+"și de fapt are tipul %s formatul %d n_items %d.\n"
+"Acest lucru e cel mai probabil o problemă a aplicației, nu a managerului de "
+"ferestre.\n"
+"Fereastra are titlul=„%s” clasa=„%s” nume=„%s”\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Proprietatea %s din fereastra 0x%lx conține date invalide UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Proprietatea %s din fereastra 0x%lx conține date invalide UTF-8 pentru "
+"elementul %d din listă\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Comută la spațiul de lucru 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Comută la spațiul de lucru 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Comută la spațiul de lucru 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Comută la spațiul de lucru 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Comută la spațiul de lucru 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Comută la spațiul de lucru 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Comută la spațiul de lucru 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Comută la spațiul de lucru 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Comută la spațiul de lucru 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Comută la spațiul de lucru 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Comută la spațiul de lucru 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Comută la spațiul de lucru 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Schimbă cu spațiul de lucru din stânga celui actual"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Schimbă cu spațiul de lucru din dreapta celui actual"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Schimbă cu spațiul de lucru de deasupra celui actual"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Schimbă cu spațiul de lucru de dedesubtul celui actual"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Comută între ferestrele unui program, folosind o fereastră informativă"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Comută înapoi între ferestrele unui program, folosind o fereastră informativă"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Comută între ferestre, folosind o fereastră informativă"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Comută înapoi între ferestre, folosind o fereastră informativă"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Comută între panouri și desktop, folosind o fereastră informativă"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Comută înapoi între panouri și desktop, folosind o fereastră informativă"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Mută imediat între ferestrele unei aplicații"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Comută imediat înapoi între ferestrele unui program"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Mută imediat între ferestre"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Comută imediat înapoi între ferestre"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Mută imediat între panouri și desktop"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Mută imediat înapoi între panouri și desktop"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Ascunde toate ferestrele normale și definește focalizarea pe desktop"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Arată meniul principal al panoului"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Arată fereastra de dialog „Pornire aplicații” a panoului"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Captură de ecran"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Salvează o captură a ecranului"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Pornește un terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Activează meniul ferestrei"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Comută modul pe tot ecranul"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Comută starea de maximizare"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr ""
+"Comută dacă o fereastră este întotdeauna vizibilă deasupra altor ferestre"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximizează fereastra"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Restabilește fereastra"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Comută starea de umbrire"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimizează fereastra"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Închide fereastra"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Mută fereastra"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Redimensionează fereastra"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Comută dacă fereastra este în toate spațiile de lucru sau doar într-unul"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Mută fereastra pe spațiul de lucru 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Mută fereastra pe spațiul de lucru 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Mută fereastra pe spațiul de lucru 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Mută fereastra pe spațiul de lucru 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Mută fereastra pe spațiul de lucru 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Mută fereastra pe spațiul de lucru 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Mută fereastra pe spațiul de lucru 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Mută fereastra pe spațiul de lucru 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Mută fereastra pe spațiul de lucru 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Mută fereastra pe spațiul de lucru 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Mută fereastra pe spațiul de lucru 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Mută fereastra pe spațiul de lucru 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Mută fereastra pe spațiul de lucru din stânga"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Mută fereastra pe spațiul de lucru din dreapta"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Mută fereastra pe spațiul de lucru de mai sus"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Mută fereastra pe spațiul de lucru de mai jos"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Ridică fereastra dacă este acoperită de altă fereastră, altfel coboară-o"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Ridică fereastra deasupra celorlalte ferestre"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Coboară fereastra sub alte ferestre"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximizează fereastra pe verticală"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximizează fereastra pe orizontală"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Mută fereastra spre colțul de nord-vest (stânga sus)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Mută fereastra spre colțul de nord-est (dreapta sus)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Mută fereastra spre colțul de sud-vest (stânga jos)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Mută fereastra spre colțul de sud-est (dreapta jos)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Mută fereastra spre nord (partea de sus a ecranului)"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Mută fereastra spre sud (partea de jos a ecranului)"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Mută fereastra spre est (partea dreaptă a ecranului)"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Mută fereastra spre vest (partea stângă a ecranului)"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Mută fereastra în centrul ecranului"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Nu e implementat) Navigația se referă la aplicații și nu la ferestre"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"O descriere pentru fontul folosit pentru bările de titlu. Mărimea din "
+"descriere va fi folosită doar dacă opțiunea titlebar_font_size este setată "
+"la 0. De asemenea, această opțiune este dezactivată dacă opțiunea "
+"titlebar_uses_desktop_font este setată ca true."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Acțiune la dublu-clic pe bara de titlu"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Acțiune la clic cu butonul din mijloc pe bara de titlu"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Acțiune la clic dreapta pe bara de titlu"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Aranjamentul butoanelor în bara de titlu"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Aranjamentul butoanelor pe bara de titlu. Valoare ar trebui să fie un șir ca "
+"„menu:minimize,maximize,spacer,close”; două puncte separă colțul stâng de "
+"cel drept al ferestrei, și numele butoanelor sunt separate cu virgulă. Nu "
+"este permisă reduplicarea butoanelor. Numele de butoane necunoscute sunt "
+"ignorate, astfel că noi butoane pot fi adăugate în versiuni viitoare ale "
+"Marco fără a încurca versiunile mai vechi. O etichetă specială „spacer” "
+"poate fi folosită pentru a introduce un spațiu între două butoane adiacente."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Ridică automat fereastra focalizată"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Apăsând pe o fereastră în timp ce țineți apăsat această tastă modificatoare "
+"va mișca fereastra (clic stânga), redimensiona fereastra (clic central) sau "
+"va arăta meniul ferestrei (clic dreapta). Operațiile clic mijloc și dreapta "
+"pot fi inversate folosind tasta „resize_with_right_button”. Modificatorul "
+"este exprimat ca „&lt;Alt&gt;” sau „&lt;Super&gt;”, de exemplu."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Comanda care va fi executată la o combinație de taste"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Manager de compoziție"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Controlează felul în care ferestrele noi primesc focus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Tema curentă"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Întârzierea în milisecunde pentru opțiunea de ridicare automată"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Determină dacă Marco este un administrator de compoziție."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Determină dacă aplicația sau sistemul va genera „bipuri” audio; poate fi "
+"folosit împreună cu „bipurile” vizuale, pentru a permite „bipuri” "
+"silențioase."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Dezactivează facilitățile care sunt cerute de aplicațiile vechi sau stricate"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Activează bip vizual"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Dacă este activat, iar modul de focalizare este „sloppy” sau „mouse”, "
+"fereastra focalizată va fi automat ridicată după o întârziere precizată de "
+"cheia auto_raise_delay. Aceasta nu are legătură cu clicul pe o fereastră "
+"pentru a o ridica și nici cu pătrunderea într-o fereastră în timpul unei "
+"operațiuni trage-și-plasează."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Dacă este adevărat, ignoră opțiunea titlebar_font, și folosește fontul "
+"standard de aplicații pentru titlul ferestrelor."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Daca este true, marco va furniza mai puțin feedback folosind wireframe, "
+"dezactivand animațiile și alte efecte. În acest fel uzabilitatea va fi mult "
+"înrăutățită pentru utilizatori, dar multe aplicații mai vechi și servere de "
+"terminale vor putea funcționa doar în aceste condiții. Totuși, facilitatea "
+"de wireframe este dezactivată când accesibilitatea este activată."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Dacă este adevărat, atunci Marco operează cu aplicații mai degrabă decât "
+"cu ferestre. Conceptul este puțin abstract, dar în general setarea unei "
+"aplicații va fi mai apropiată de stilul Mac decât de cel Windows. Când "
+"focalizezi o fereastra în modul bazat pe aplicație, toate ferestrele din "
+"aplicație vor fi ridicate. De asemenea, în acest mod click-urile de "
+"focalizare nu sunt transmise prin fereastre către alte aplicații. Modul "
+"bazat pe aplicație este implementat doar în stadiu incipient pentru moment."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Daca este true, reduce uzabilitatea în favoarea ocupării a mai puține resurse"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modificatorul folosit pentru acțiunile speciale asupra ferestrei"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Numele spațiului de lucru"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Numărul de spații de lucru"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Numărul de spații de lucru. Trebuie să fie mai mare decât zero, și are un "
+"maxim fix pentru a preveni distrugerea accidentală a desktopului cerând un "
+"număr prea mare de ecrane."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Execută o comandă definită"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Definiți ca „true” pentru a redimensiona cu butonul drept și a arăta meniul "
+"cu butonul central când țineți apăsată tasta aleasă la "
+"„mouse_button_modifier”; definiți ca „false” pentru a obține comportamentul "
+"invers."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Definirea acestei opțiuni ca „false” poate conduce la comportamente "
+"deficiente, așa că vă sfătuim să nu o modificați de la valoarea implicită "
+"„true”. Multe acțiuni (de exemplu clic în zona client, deplasarea sau "
+"redimensionarea ferestrei) au în mod normal efectul secundar de a ridica "
+"fereastra. Definirea (nerecomandată) a acestei opțiuni ca „false” va decupla "
+"ridicarea ferestrei de alte acțiuni ale utilizatorilor și va ignora cererile "
+"de ridicare generate de aplicații. Vedeți http://bugzilla.gnome.org/show_bug."
+"cgi?id=445447#c6. Chiar și când această opțiune este „false”, ferestrele tot "
+"pot fi ridicate de alt-clic-stânga oriunde pe fereastră, un clic normal pe "
+"decorațiile ferestrei sau de mesaje speciale de la paginatori, cum ar fi "
+"cereri de activare de la lista de ferestre. Această opțiune este deocamdată "
+"dezactivată în modul „click-to-focus” (clic-pentru-focus). Rețineți că lista "
+"de moduri de a ridica ferestrele când „raise_on_click” este „false” nu "
+"include cererile programatice de a ridica ferestrele primite de la "
+"aplicații, aceste cereri vor fi ignorate indiferent de motivul cererii. Dacă "
+"sunteți programator și un utilizator vi se plânge că aplicația dumneavoastră "
+"nu funcționează cu această opțiune dezactivată, spuneți-i că este vina _sa_ "
+"că și-a stricat administratorul de ferestre și că trebuie să restaureze "
+"această opțiune la „true” sau să se mulțumească cu „hiba” pe care a cerut-o."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Unele aplicații nu iau în seamă specificațiile într-un mod care duce la "
+"funcționarea defectuoasă a managerului de ferestre. Această opțiune pune "
+"Marco într-un mod riguros corect, ceea ce duce la o interfață utilizator "
+"mai consistentă, admițând că nu este nevoie să executați nici o aplicație "
+"problematică."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Bipul de sistem este audio"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Instruiește Marco cum să implementeze indicația vizuală la producerea "
+"unui bip. Pentru moment sunt două valori, „fullscreen”, ce produce o clipire "
+"alb-negru pe tot ecranul, și „frame_flash”, ce produce o clipire la nivelul "
+"barei de titlu al aplicației ce a cauzat bipul. Dacă aplicația care a trimis "
+"bipul nu poate fi determinată (ca în cazul bipului de sistem), va clipi bara "
+"de titlu a ferestrei care are focusul în acel moment."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Cheile /apps/marco/global_keybindings/run_command_N definesc combinațiile "
+"de taste corespunzătoare acestor comenzi. Apăsând combinația de taste pentru "
+"run_command_N se va executa command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Cheia /apps/marco/global_keybindings/run_command_screenshot definește "
+"combinația de taste corespunzătoare acestei comenzi."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Cheia /apps/marco/global_keybindings/run_command_window_screenshot "
+"definește combinația de taste corespunzătoare acestei comenzi."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Combinația de taste care execută comenzile corespunzător numerotate din /"
+"apps/marco/keybinding_commands. Formatul arată ca de exemplu „&lt;"
+"Control&gt;a” sau „&lt;Shift&gt;&lt;Alt&gt;F1”. Este permisă folosirea "
+"majusculelor și a minusculelor, precum și a abrevierilor gen „&lt;Ctl&gt;” "
+"și „&lt;Ctrl&gt;”. Dacă setați opțiunea cu șirul „disabled”, atunci nu va "
+"exista o combinație de taste pentru această acțiune."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Numele unui spațiul de lucru."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Comanda pentru captură ecran"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Tema determină aspectul marginilor ferestrei, a bării de titlu și așa mai "
+"departe."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Întârzierea de timp după care se ridică o fereastră când auto_raise este "
+"setată ca adevărată. Întârzierea este dată în miimi de secundă."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Modul de focalizare al ferestrei indică modul în care ferestrele sunt "
+"activate. Are trei valori posibile: „click” înseamnă că fereastra trebuie "
+"click-ată pentru a fi focalizată, „sloppy” înseamnă ca fereastra este "
+"focalizată când mouse-ul se suprapune ferestrei, și „mouse” înseamnă că "
+"ferestrele sunt focalizate când mouse-ul se suprapune ferestrei, și pierde "
+"focusul în momentul când acesta nu se mai suprapune."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Comanda pentru captură ecran a ferestrei"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Această opțiune determină efectul unui dublu-clic pe bara de titlu. "
+"Deocamdată valorile acceptate sunt „toggle_shade”, care rulează/derulează "
+"fereastra, „toggle_maximize” care maximizează/demaximizează fereastra, "
+"„toggle_maximize_horizontally” și „toggle_maximize_vertically” care "
+"maximizează/restaurează fereastra orizontal și respectiv vertical, "
+"„minimize” care va minimiza fereastra, „shade” care rulează sus fereastra, "
+"„menu” care afișează meniul ferestrei, „lower” care pune fereastra sub toate "
+"celelalte, și „none” care nu face nimic."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Această opțiune determină efectul unui clic-centru pe bara de titlu. "
+"Deocamdată valorile acceptate sunt „toggle_shade”, care rulează/derulează "
+"fereastra, „toggle_maximize” care maximizează/demaximizează fereastra, "
+"„toggle_maximize_horizontally” și „toggle_maximize_vertically” care "
+"maximizează/restaurează fereastra orizontal și respectiv vertical, "
+"„minimize” care va minimiza fereastra, „shade” care rulează sus fereastra, "
+"„menu” care afișează meniul ferestrei, „lower” care pune fereastra sub toate "
+"celelalte, și „none” care nu face nimic."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Această opțiune determină efectul unui clic-dreapta pe bara de titlu. "
+"Deocamdată valorile acceptate sunt „toggle_shade”, care rulează/derulează "
+"fereastra, „toggle_maximize” care maximizează/demaximizează fereastra, "
+"„toggle_maximize_horizontally” și „toggle_maximize_vertically” care "
+"maximizează/restaurează fereastra orizontal și, respectiv, vertical, "
+"„minimize” care va minimiza fereastra, „shade” care rulează sus fereastra, "
+"„menu” care afișează meniul ferestrei, „lower” care pune fereastra sub toate "
+"celelalte, și „none” care nu face nimic."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Această opțiune furnizează un control adițional la cum ferestrele nou create "
+"primesc focus. Are valori posibile, „smart” furnizează modul normal de "
+"focus, iar „strict” face ca ferestrele pornite dintr-un terminal să nu "
+"primească focus."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Când o aplicație sau sistemul emite un „bell” sau „beep”, activează "
+"indicatorul vizual corespunzător (folositor pentru cei cu probleme auditive "
+"sau în medii zgomotoase)."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Folosește fontul standard al sistemului pentru titlul ferestrei"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Tipul de bip vizual"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Dacă aducerea în prim plan să fie un efect al altor interacții cu "
+"utilizatorul"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Redimensionare cu butonul drept"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Modul de focalizare al ferestrei"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Font titlu fereastră"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Folosire: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Închide fereastra"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Meniu fereastră"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimizează fereastra"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximizează fereastra"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Restabilește fereastra"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Rulează fereastra"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Derulează fereastra"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Menține fereastra deasupra"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Anulează menținerea fereastrei deasupra"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Visibil permanent pe spațiu de lucru"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Pune fereastra pe un singur spațiu de lucru"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimizează"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximizează"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Dema_ximizează"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "În_fășoară"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Desfășoară"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Mută"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Redimensionează"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Mută bara de _titlu pe ecran"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Întotdeauna _deasupra"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Întotde_auna pe spațiul de lucru vizibil"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "D_oar pe acest spațiu de lucru"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Mută în spațiul de _lucru din stânga"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Mută în spațiul de lucru d_in dreapta"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Mută pe spațiul de lucru de s_us"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Mută pe spațiul _de lucru de jos"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Închide"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Spațiul de lucru %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Spațiul de lucru de 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Spațiul de lucru %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Mută pe un alt _spațiul de lucru"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "sus"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "jos"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "stânga"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "dreapta"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "geometria cadrului nu specifică dimensiunea „%s”"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "geometria cadrului nu specifică dimensiunea „%s” pentru marginea „%s”"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Proporția butonul %g nu este rezonabilă"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Geometria cadrului nu specifică mărimea butoanelor"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Degradeul ar trebui să aibă cel puțin două culori"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specificația culorilor GTK trebuie să aibă starea între paranteze drepte, de "
+"exemplu gtk:fg[NORMAL], unde starea este NORMAL; nu s-a putut analiza „%s”"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specificația culorilor GTK trebuie să fie aibă o paranteză dreaptă după "
+"stare, de exemplu gtk:fg[NORMAL], unde starea este NORMAL; nu s-a putut "
+"analiza „%s”"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Nu s-a putut înțelege starea „%s” în specificarea culorilor"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+"Nu s-a putut înțelege componenta de culoare „%s” în specificarea culorilor"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Formatul blend este „blend/bg_color/fg_color/alpha”, unde„%s” nu se "
+"potrivește formatului"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Nu s-a putut analiza valoarea alfa „%s” în culoarea blend-ată"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Valoarea alfa „%s” în culoarea blend-ată nu este între 0.0 și 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Formatul de umbră este „shade/base_color/factor”, „%s” nu se potrivește "
+"formatului"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Nu s-a putut analiza factorul de umbrire „%s” în culoarea umbrită"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Factorul de umbrire „%s” în culoarea umbrită este negativ"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Nu s-a putut analiza culoarea „%s”"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Expresia coordonatelor conține caracterul nepermis „%s”"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Expresia coordonatelor conține numărul în virgulă mobilă „%s” care nu a "
+"putut fi analizat."
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Expresia coordonatelor conține întregul „%s” care nu a putut fi analizat"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Expresia coordonatelor conține operatorul necunoscut la începutul acestui "
+"text: „%s”"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Expresia coordonatelor a fost goală sau neînțeleasă"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Expresia coordonatelor este rezultată în urma unei împărțiri la zero"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Expresia coordonatelor încearcă să folosească operatorul mod asupra unui "
+"număr în virgulă mobilă"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Expresia coordonatelor are un operator „%s” care așteaptă un operand"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Expresia coordonatelor are un operand unde un operator era așteptat"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"Expresia coordonatelor a fost terminată cu un operator în locul operandului"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Expresia coordonatelor are un operator „%c” urmând operatorului „%c” fără un "
+"operand între ele"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Expresia coordonatelor are variabila necunscută sau constanta „%s”"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Parcurgerea expresiei coordonatelor a cauzat un buffer overflow."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Expresia coordonatelor are o paranteză închisă fără nici o paranteză deschisă"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Expresia coordonatelor are o paranteză deschisă și nici una închisă"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Expresia coordonatelor nu are nici un operator și operand"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Tema conținea o expresie ce a rezultat într-o eroare: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> trebuie "
+"specificate pentru stilul acestui cadru"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Lipsește <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Nu s-a putut încărca tema „%s”: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nu a fost definit nici un <%s> pentru tema „%s”"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Nici un stil de cadru definit pentru tipul de fereastră „%s” în tema „%s”; "
+"adăugați un element <window type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Constantele definite de utilizatori trebuie să înceapă cu o majusculă; „%s” "
+"nu respectă acest lucru"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Constanta „%s” a fost deja definită"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Nici un atribut „%s” în elementul <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Linia %d caracterul %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atributul „%s” se repetă de două ori în același element <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atributul „%s” este invalid în elementul <%s> în acest context"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Nu s-a putut analiza „%s” ca un întreg"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Nu s-au putut înțelege caracterele „%s” de la finalul șirului „%s”"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Întregul %ld trebuie să fie pozitiv"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Întregul %ld este prea mare, maximul este %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Nu s-a putut analiza „%s” drept un număr în virgulă mobilă"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Valorile boolene trebuie să fie „true” sau „false” nu „%s”"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Unghiul trebuie să fie între 0.0 și 360.0, el fiind %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa trebuie să fie între 0.0 (invizibil) și 1.0 (complet opac), el fiind %"
+"g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Scalare invalidă a titlului „%s” (trebuie să fie una dintre xx-small,x-small,"
+"small,medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> numit „%s” este folosit a doua oară"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> părinte „%s” nu a fost definit"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometrie „%s” nu a fost definită"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> trebuie să specifice o geometrie sau un părinte care are o geometrie"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+"Trebuie să specificați un fundal pentru o valoare alfa pentru a avea sens"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Tip necunoscut „%s” în elementul <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set necunoscut „%s” în elementul <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Ferestrei tip „%s” i-a fost deja atribuit un set de stil"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Elementul <%s> nu poate coborî sub <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Nu se pot specifica în același timp „button_width”/„button_height” și "
+"„aspect_ratio” pentru butoane"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Distanța „%s” este necunoscută"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Proporția „%s” este necunoscută"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Marginea „%s” este necunoscută"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Nu există atributul „start_angle” sau „from” în elementul <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Nu există atributul „extent_angle” sau „to” în elementul <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Nu s-a putut întelege valoarea „%s” pentru tipul de degrade"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Nu s-a putut înțelege tipul de umplere „%s” pentru elementul <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Nu s-a putut înțelege starea „%s” pentru elementul <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Nu s-a putut înțelege umbra „%s” pentru elementul <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Nu s-a putut înțelege săgeata „%s” pentru elementul <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nici un <draw_ops> numit „%s” nu a fost definit"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Includerea lui draw_ops „%s” aici ar crea o referință circulară"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Poziție necunoscută „%s” pentru componenta cadrului"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Stilul cadrului are deja o componentă la poziția %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nici o <draw_ops> cu numele „%s” nu a fost definită"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Funcție necunoscută „%s” pentru buton"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"Funcția de buton „%s” nu există în această versiune (%d, este nevoie de %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Stare necunoscută „%s” pentru buton"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Stilul cadrului are deja un buton pentru funcția %s starea %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "„%s”nu este o valoare validă pentru atributul de focalizare"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "„%s”nu este o valoare validă pentru atributul de stare"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Un stil numit „%s” nu a fost definit"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "„%s” nu este o valoare validă pentru atributul de redimensionare"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Nu ar trebui să aveți atributul „resize” în elementul <%s> pentru stările "
+"maximizate/umbrite"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Nu trebuie să conțină atributul „resize” în elementul <%s> pentru stările "
+"maximizate"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Stilul a fost deja specificat pentru starea %s redimensionare %s focalizare %"
+"s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stilul deja a fost specificat pentru starea %s focalizarea %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nu puteți avea două draw_ops pentru un element <piece> (tema a specificat un "
+"atribut draw_ops și un element <draw_ops>, sau pe amândouă)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nu puteți avea două draw_ops pentru un element <button> (tema a specificat "
+"un atribut draw_ops și un element <draw_ops>, sau pe amândouă)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nu puteți avea două draw_ops pentru un element <menu_icon> (tema a "
+"specificat un atribut draw_ops și un element <draw_ops>, sau pe amândouă)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Elementul extern în temă trebuie să fie <marco_theme> nu %s"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Elementul <%s> nu este permis în interiorul un element name/author/date/"
+"description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Elementul <%s> nu este permis în interiorul unui element <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Elementul <%s> nu este permis în interiorul unui element distance/border/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Elementul <%s> nu este permis în interiorul unui element de desenare"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Elementul <%s> nu este permis în interiorul unui element <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Nici o draw_ops furnizată pentru o componentă de cadru"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Nici o draw_ops furnizată pentru buton"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Nici un text nu este permis în interiorul <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> specificat de două ori pentru această temă"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Nu s-a putut găsi un fișier valid pentru tema %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Fișierul temă %s nu conține un element rădăcină <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Ferestre"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Ferestre/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Ferestre/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Ferestre/Dialog _modal"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Ferestre/_Utilitar"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Ferestre/_Ecran de pornire"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Ferestre/Atașează _sus"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Ferestre/Atașare _jos"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Ferestre/Atașare _stânga"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Ferestre/Atașare _dreapta"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Ferestre/Atașează to_ate"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Ferestre/Des_ktop"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Acesta este un mesaj de test într-un dialog de test"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Element fals de meniu %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Fereastră doar cu margine"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Bară"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Fereastră normală de aplicație"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Fereastră de dialog"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Fereastră modală de dialog"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paletă utilitară"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Meniu Torn-off"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Margine"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Aranjament de test pentru buton %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisecunde pentru a afișa un cadru de fereastră"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Utilizare: marco-theme-viewer [NUME TEMĂ]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Eroare la încărcarea temei: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "S-a încărcat tema „%s“ în %g secunde\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Font pentru titlu normal"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Font pentru titlu mic"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Font pentru titlu mare"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Aranjamente butoane"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Test de performanță"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Titlul de fereastră vine aici"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d cadre desenate în %g secunde măsurate la client (%g milisecunde pe cadru) "
+"și %g secunde consumate de proces incluzând resursele serverului X (%g "
+"milisecunde pe cadru)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "testul de poziție a returnat TRUE dar a setat eroare"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "testul de poziție a returnat FALSE dar nu a setat eroarea"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "A fost așteptată o eroare, dar nu a fost furnizată"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Eroarea %d a fost așteptată dar a fost furnizată %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Eroare neașteptată a fost returnată: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "valoarea x a fost %d, %d fiind așteptată"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "valoarea y a fost %d, %d fiind așteptată"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"Expresiile pentru coordonate %d parsate în %g secunde (o medie de %g "
+"secunde)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Deschide încă o fereastră"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Acesta este un buton demo cu o iconiță „deschide”"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Acesta este un buton demo cu o iconiță „renunță”"
diff --git a/po/ru.po b/po/ru.po
new file mode 100644
index 00000000..6d2ae39d
--- /dev/null
+++ b/po/ru.po
@@ -0,0 +1,2415 @@
+# translation of ru.po to Russian
+# translation of marco to Russian
+# Copyright (C) 2001, 2005, 2006, 2009 Free Software Foundation, Inc.
+#
+# Valek Filippov <[email protected]>, 2001.
+# Sun G11n <[email protected]>, 2002.
+# Dmitry G. Mastrukov <[email protected]>, 2002-2003.
+# Andrew w. Nosenko <[email protected]>, 2003.
+# Leonid Kanter <[email protected]>, 2004, 2005, 2006, 2009.
+# Alexander Saprykin <[email protected]>, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: ru\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-02-26 18:00+0200\n"
+"PO-Revision-Date: 2010-02-19 01:39+0300\n"
+"Last-Translator: Alexander Saprykin <[email protected]>\n"
+"Language-Team: Russian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%"
+"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Рабочий стол"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Управление окнами"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Событие звонка"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Неизвестный запрос сведений об окне: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> не отвечает."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "Можно немного подождать или заставить приложение завершить работу."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Подождать"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "Завер_шить"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Не удалось получить имя узла: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Отсутствует расширение %s, требуемое для композиции"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Не удалось открыть дисплей «%s» системы X Window\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Потеряно соединение с дисплеем «%s»;\n"
+"скорее всего, X-сервер был выключен, или был уничтожен\n"
+"менеджер окон.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Произошла неустранимая ошибка ввода-вывода %d (%s) на дисплее «%s».\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "Клавишу «%s» с модификаторами «%x» уже использует другая программа\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Произошла ошибка при запуске программы <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Команда %d не была определена.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Команда терминала не была определена.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Авторские права © 2001—%s Havoc Pennington, Red Hat, Inc. и другие\n"
+"Это свободное программное обеспечение; условия копирования указаны в "
+"исходном тексте.\n"
+"Распространяется без каких-либо гарантий, в том числе и БЕЗ гарантий "
+"потребительской стоимости и пригодности для выполнения каких бы то ни было "
+"определённых задач.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Запретить подключение к менеджеру сеансов"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Заменить запущенный менеджер окон на Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Указать идентификатор управления сеансом"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Используемый дисплей X"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Инициализировать сеанс из сохранённого файла"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Вывести версию"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Сделать X-вызовы синхронными"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Включить менеджер композиции"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Выключить менеджер композиции"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "Не создавать полноэкранные окна, не имеющие декораций"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Не удалось прочитать каталог тем: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Не удалось найти тему! Убедитесь, что «%s» существует и содержит обычные "
+"темы.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Не удалось перезапустить: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Для ключа MateConf «%s» установлено недопустимое значение\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"Значение %d ключа MateConf «%s» не входит в диапазон значений от %d до %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Для ключа MateConf «%s» выбран недопустимый тип\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Устранение недоделок для сломанных приложений отключено. Некоторые "
+"приложения могут работать неправильно.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Не удалось разобрать описание шрифта «%s» из ключа MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Значение «%s» из базы данных параметров является недопустимым значением для "
+"модификатора кнопки мыши\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Произошла ошибка при установке количества рабочих мест равным %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Рабочее место %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Значение «%s» из базы данных параметров является недопустимым значением для "
+"комбинации клавиш «%s»\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Произошла ошибка при установке имени рабочего места %d в «%s»: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Произошла ошибка при установке состояния менеджера композиции: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Недопустимый экран %d дисплея «%s»\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"У экрана %d дисплея «%s» уже есть менеджер окон. Попробуйте использовать "
+"параметр --replace, чтобы заместить текущий менеджер окон.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Не удалось выбрать менеджер окон на экране %d дисплея «%s»\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "У экрана %d дисплея «%s» уже есть менеджер окон\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Не удалось освободить экран %d дисплея «%s»\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Используется формат «<Control>a» или «<Shift><Alt>F1».\n"
+"\n"
+"Формат выражения не очень строг, можно использовать верхний и нижний регистр "
+"и сокращения, например «<Ctl>» и «<Ctrl>». Если параметру установить значение "
+"«disabled», для этого действия не будет использоваться никакая комбинация "
+"клавиш."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Используется формат «<Control>a» или «<Shift><Alt>F1».\n"
+"\n"
+"Формат выражения не очень строг, можно использовать верхний и нижний регистр "
+"и сокращения, например «<Ctl>» и «<Ctrl>». Если параметру установить значение "
+"«disabled», для этого действия не будет использоваться никакая комбинация "
+"клавиш.\n"
+"\n"
+"Действие этой комбинации клавиш может быть изменено путём удержания клавиши "
+"«shift», поэтому «shift» не может быть одной из клавиш этой комбинации."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Не удалось создать каталог «%s»: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Не удалось открыть для записи файл сеанса «%s»: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Произошла ошибка при записи файла сеанса «%s»: %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Произошла ошибка при закрытии файла сеанса «%s»: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Не удалось прочитать сохранённый файл сеанса «%s»: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Не удалось разобрать сохранённый файл сеанса: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "Указан атрибут <marco_session>, но ID сеанса уже есть"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Атрибут %s элемента <%s> неизвестен"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "вложенный тег <window>"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Элемент %s неизвестен"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Эти окна не поддерживают команду «Сохранить текущие настройки». При следующем "
+"входе в систему их придётся перезапустить вручную."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Не удалось открыть журнал отладочной информации: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Не удалось применить fdopen() к журналу отладочной информации %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Открыт журнал отладочной информации %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco был собран без поддержки режима подробных сообщений\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Менеджер окон: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Ошибка в менеджере окон: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Предупреждение менеджера окон: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Ошибка менеджера окон: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Окно %s установило на себя значение SM_CLIENT_ID вместо окна с значением "
+"WM_CLIENT_LEADER, как это определено в ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Окно %s установило подсказку MWM, определяющую, что его размер не меняется, "
+"но установило минимальный размер %d × %d и максимальный размер %d × %d, что "
+"не имеет смысла.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr ""
+"Приложение установило неправильное значение параметра _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (на %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (от суперпользователя)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (от %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (от другого пользователя)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Неверный параметр WM_TRANSIENT_FOR окна 0x%lx указан для %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"У окна 0x%lx есть свойство %s,\n"
+"у которого должен быть тип %s, формат %d,\n"
+"а на самом деле используется тип %s, формат %d, число элементов %d.\n"
+"Похоже на ошибку в приложении, а не в менеджере окон.\n"
+"Заголовок окна — «%s», класс — «%s», имя — «%s»\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Свойство %s для окна 0x%lx содержало недопустимые данные UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Свойство %s для окна 0x%lx содержало недопустимые данные UTF-8 для элемента %"
+"d в списке\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Переключиться на рабочее место 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Переключиться на рабочее место 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Переключиться на рабочее место 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Переключиться на рабочее место 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Переключиться на рабочее место 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Переключиться на рабочее место 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Переключиться на рабочее место 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Переключиться на рабочее место 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Переключиться на рабочее место 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Переключиться на рабочее место 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Переключиться на рабочее место 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Переключиться на рабочее место 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Переключиться на рабочее место слева от текущего"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Переключиться на рабочее место справа от текущего"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Переключиться на рабочее место над текущим"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Переключиться на рабочее место под текущим"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Переключиться между окнами приложения через всплывающее окно"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Переключиться в обратном порядке между окнами приложения через всплывающее "
+"окно"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Переключиться между окнами через всплывающее окно"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr ""
+"Переключиться в обратном порядке между окнами с использованием всплывающего "
+"окна"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Переключиться между панелями и рабочим столом через всплывающее окно"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Переключиться в обратном порядке между панелями и рабочим столом через "
+"всплывающее окно"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Переключиться между окнами приложения немедленно"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Переключиться в обратном порядке между окнами приложения немедленно"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Переключиться между окнами немедленно"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Переключиться в обратном порядке между окнами немедленно"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Переключиться между панелями и рабочим столом немедленно"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+"Переключиться в обратном порядке между панелями и рабочим столом немедленно"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Скрыть все обычные окна и активировать рабочий стол"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Вызвать главное меню панели"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Показать диалоговое окно панели «Выполнить программу»"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Получить снимок экрана"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Получить снимок окна"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Открыть терминал"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Активировать меню окна"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Переключить полноэкранный режим"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Переключить состояние развёрнутости на весь экран"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Будет ли окно всегда расположено поверх других окон"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Развернуть окно на весь экран"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Восстановить окно"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Переключить состояние скрученности в полоску"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Свернуть окно"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Закрыть окно"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Переместить окно"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Изменить размер окна"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Будет ли окно помещено на всех рабочих местах или только на одном"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Переместить окно на рабочее место 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Переместить окно на рабочее место 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Переместить окно на рабочее место 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Переместить окно на рабочее место 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Переместить окно на рабочее место 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Переместить окно на рабочее место 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Переместить окно на рабочее место 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Переместить окно на рабочее место 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Переместить окно на рабочее место 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Переместить окно на рабочее место 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Переместить окно на рабочее место 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Переместить окно на рабочее место 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Переместить окно на одно рабочее место влево"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Переместить окно на одно рабочее место вправо"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Переместить окно на одно рабочее место вверх"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Переместить окно на одно рабочее место вниз"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Поднять окно на передний план, если оно заслонено другими, иначе опустить его"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Поднять окно на передний план"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Поместить окно под другими окнами"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Развернуть окно на весь экран вертикально"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Развернуть окно на весь экран горизонтально"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Переместить окно в северо-западный (верхний левый) угол"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Переместить окно в северо-восточный (верхний правый) угол"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Переместить окно в юго-западный (нижний левый) угол"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Переместить окно в юго-восточный (нижний правый) угол"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Переместить окно к северной (верхней) стороне экрана"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Переместить окно к южной (нижней) стороне экрана"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Переместить окно к западной (правой) стороне экрана"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Переместить окно к восточной (левой) стороне экрана"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Переместить окно в центр экрана"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Не реализовано) Навигация ведётся по приложениям, а не по окнам"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Строка описания шрифта для заголовка окна. Размер из описания будет "
+"использоваться, только если для параметра titlebar_font_size выбрано "
+"значение 0. Этот параметр также отключён, если для параметра "
+"titlebar_uses_desktop_font выбрано значение «истина»."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Действие при двойном щелчке по заголовку окна"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Действие при щелчке по заголовку окна средней кнопкой мыши"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Действие при щелчке по заголовку окна правой кнопкой мыши"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Расположение кнопок в заголовке окна"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Расположение кнопок в заголовке окна. Значение должно быть строкой, "
+"например, «menu:minimize,maximize,spacer,close». Двоеточие разделяет левый и "
+"правый углы окна, имена кнопок разделяются запятыми. Дублирование кнопок не "
+"допускается. Неизвестные имена кнопок всегда игнорируются без уведомления, "
+"так что кнопки могут быть добавлены в будущих версиях, не нарушая "
+"предыдущих. Специальный элемент spacer может использоваться для вставки "
+"пробела между двумя кнопками."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Автоматически поднимать активное окно"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Щёлкнув по окну при нажатии этой клавиши-модификатора, вы сможете "
+"переместить окно (левая кнопка), изменить его размер (средняя кнопка), или "
+"показать меню окна (правая кнопка). Функции левой и правой кнопок меняются, "
+"если включён параметр «resize_with_right_button» Модификатор определяется, "
+"например, как «&lt;Alt&gt;» или «&lt;Super&gt;»."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Команды для запуска по комбинациям клавиш"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Менеджер композиции"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Определяет, как новое окно получает фокус"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Текущая тема"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Задержка в миллисекундах для параметра автоматического поднятия окна"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Определяет, является ли Marco менеджером композиции."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Определяет, могут ли приложения или система подавать слышимые звуковые "
+"сигналы. Может быть использован совместно с ключом «видимый сигнал», чтобы "
+"подавать бесшумные «гудки»."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Отключить неправильные свойства, нужные старым или сломанным приложениям"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Включить видимый сигнал"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Если этот ключ установлен, и режим фокуса либо «sloppy», либо «mouse», тогда "
+"окно, находящееся в фокусе, будет автоматически поднято по истечении "
+"задержки, указанной в ключе auto_raise_delay. Это не касается ни щелчка по "
+"окну для его поднятия, ни перехода в окно путём перетаскивания в него."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Если этот ключ установлен, то параметр titlebar_font игнорируется, и для "
+"заголовков окон используется стандартный шрифт приложения."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Если этот ключ установлен, Marco предоставляет пользователю меньше "
+"обратной связи за счёт использования контурных рамок, отключения анимации и "
+"другими способами. Это существенно снижает удобство для многих "
+"пользователей, но позволяет продлить срок службы старых приложений, а также "
+"может быть полезно для терминальных серверов. Следует отметить, что "
+"отображение контурной рамки отключается при включении специальных "
+"возможностей."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Если этот ключ установлен, Marco работает с приложениями, а не с окнами. "
+"Архитектура, основанная на приложениях, больше похожа на системы Mac, чем на "
+"Windows. При активизации окна в режиме, основанном на приложениях, "
+"поднимаются все окна приложения. Кроме того, в режиме, основанном на "
+"приложениях, щелчки мышью не передаются в окна других приложений. Реализация "
+"режима, основанного на приложениях, в настоящий момент ещё весьма далека от "
+"завершения."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Если этот ключ установлен, то Marco использует меньше системных ресурсов "
+"за счёт пониженного удобства в использовании."
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Модификатор для действий по щелчку мыши"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Имя рабочего места"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Число рабочих мест"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Число рабочих мест. Должно быть больше нуля. Имеет фиксированный максимум, "
+"чтобы нельзя было разрушить среду, запросив слишком много рабочих мест."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Запустить определённую команду"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Если ключ установлен, размер окна изменяется правой кнопкой мыши, а меню "
+"показывается средней, если удерживается клавиша, заданная в "
+"«mouse_button_modifier». Если ключ не установлен, функции кнопок мыши "
+"меняются местами."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Если этот параметр не установлен, возможно ошибочное поведение, поэтому мы "
+"настоятельно рекомендуем воздержаться от изменений значения по умолчанию. "
+"Многие действия (например, щелчок по окну, перемещение окна или изменение "
+"его размера) обычно поднимают окно на передний план. Если этот параметр не "
+"установлен, что настоятельно не рекомендуется, поднятие на передний план "
+"будет отделено от других действий и запросы на поднятие окна на передний "
+"план, поступающие от приложений, будут игнорироваться. Смотрите http://"
+"bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Даже если этот параметр не "
+"установлен, окна могут быть подняты на передний план с помощью "
+"одновременного нажатия на клавишу Alt и щелчка левой кнопкой мыши по любой "
+"области окна, щелчка по заголовку окна или специальных сообщений, таких как "
+"запросы на поднятие окна. Это поведение в данный момент выключено в режиме "
+"щелчка для передачи фокуса. Заметьте, что обозначенный выше список не "
+"включает в себя программные запросы от приложений о поднятии окон на "
+"передний план, такие запросы будут проигнорированы независимо от причины. "
+"Если вы разработчик приложения и вам приходится слушать замечания "
+"пользователей, что ваше приложение работает некорректно, укажите им, что "
+"_они_ допустили ошибку, выключив этот параметр и сломав менеджер окон, и что "
+"они должны вернуть этому параметру значение по умолчанию или прекратить "
+"посылать замечания."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Некоторые приложения игнорируют спецификации, поэтому в менеджер окон "
+"встроены возможности для обхода ошибок в этих приложениях. Этот ключ "
+"переводит Marco в режим строгого соответствия спецификациям, что даёт "
+"всем окнам более последовательный внешний вид, но при этом приложения с "
+"ошибками могут работать неправильно."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Системный сигнал — слышимый"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Указывает Marco, как реализовать индикацию звукового сигнала. Сейчас "
+"существуют два значения этого ключа: «fullscreen» вызывает чёрно-белое "
+"мерцание экрана, «frame_flash» вызывает мерцание строки заголовка того окна, "
+"приложение в котором подало звуковой сигнал. Если неизвестно, какое "
+"приложение подало сигнал, мерцать будет заголовок активного окна."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Ключи /apps/marco/global_keybindings/run_command_N определяют комбинации "
+"клавиш, которые соответствуют этим командам. Нажатие комбинации "
+"run_command_N запустит на выполнение command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Ключ /apps/marco/global_keybindings/run_command_screenshot определяет "
+"комбинацию клавиш, которая вызывает запуск команды, определённой в данном "
+"ключе."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Ключ /apps/marco/global_keybindings/run_command_window_screenshot "
+"определяет комбинацию клавиш, которая вызывает запуск команды, определённой "
+"в данном ключе."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Комбинация клавиш для запуска программ под соответствующим номером в ключе /"
+"apps/marco/keybindings_commands. Используется формат «&lt;Control&gt;a» "
+"или «&lt;Shift&gt;&lt;Alt&gt;F1». Формат выражения не очень строг, можно "
+"использовать верхний и нижний регистр и сокращения, например «&lt;Ctrl&gt;» и "
+"«&lt;Ctrl&gt;». Если для этого параметра выбрать значение "
+"«disabled» («отключён»), комбинация клавиш для этого действия выбрана не будет."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Имя рабочего места."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Команда для получения снимка экрана"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Тема определяет внешний вид границ окна, заголовка окна и так далее."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Время задержки всплывания окна, если установлен ключ auto_raise. Задержка "
+"измеряется в миллисекундах."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Режим передачи фокуса в окно определяет, как активируются окна. У этого "
+"режима три возможных значения; «click» — означает, что для активации окна на "
+"нём надо щелкнуть; «sloppy» — означает, что окно активируется, когда на него "
+"перемещается указатель мыши; «mouse» — означает, что окно активируется, когда "
+"в него перемещается указатель мыши, и перестает быть активным, когда "
+"указатель мыши выходит из него."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Команда для получения снимка окна"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Этот ключ определяет действие двойного щелчка на заголовке окна. В настоящее "
+"время допустимыми значениями являются «toggle_shade» (скручивает окно в "
+"полоску или раскатывает обратно), «toggle_maximize» (разворачивает окно или "
+"восстанавливает обычный размер), «toggle_maximize_vertically» и "
+"«toggle_maximize_horizontally» (разворачивает окно только в одном направлении "
+"или восстанавливает обычный размер), «minimize» (сворачивает окно), "
+"«shade» (скрутит окно вверх), «menu» (показывает меню окна), «lower» (помещает "
+"окно под другими) и, наконец, «none» (не делает ничего)."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Этот ключ определяет действие щелчка средней кнопкой мыши по заголовку окна. "
+"В настоящее время допустимыми значениями являются «toggle_shade» (скручивает "
+"окно в полоску или раскатывает обратно), «toggle_maximize» (разворачивает "
+"окно или восстанавливает обычный размер), «toggle_maximize_vertically» и "
+"«toggle_maximize_horizontally» (разворачивает окно только в одном направлении "
+"или восстанавливает обычный размер), «minimize» (сворачивает окно), "
+"«shade» (скрутит окно вверх), «menu» (показывает меню окна), «lower» (помещает "
+"окно под другими) и, наконец, «none» (не делает ничего)."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Этот ключ определяет действие щелчка правой кнопкой мыши по заголовку окна. "
+"В настоящее время допустимыми значениями являются «toggle_shade» (скручивает "
+"окно в полоску или раскатывает обратно), «toggle_maximize» (разворачивает "
+"окно или восстанавливает обычный размер), «toggle_maximize_vertically» и "
+"«toggle_maximize_horizontally» (разворачивает окно только в одном направлении "
+"или восстанавливает обычный размер), «minimize» (сворачивает окно), "
+"«shade» (скрутит окно вверх), «menu» (показывает меню окна), «lower» (помещает "
+"окно под другими) и, наконец, «none» (не делает ничего)."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Этот параметр предоставляет дополнительное управление тем, как новые окна "
+"получают фокус. Он имеет два возможных значения. Значение «smart» применяет "
+"обычный режим фокуса пользователя, а «strict» приводит к тому, что окна, "
+"запущенные из терминала, не получают фокус."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Включает визуальную индикацию системного звукового сигнала. Это полезно для "
+"слабослышащих и при работе в шумном окружении."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Использовать стандартный системный шрифт в заголовках окон"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Тип видимого сигнала"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Должно ли поднятие окна быть побочным эффектом других действий пользователя"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Изменение размера с использование правой кнопки мыши"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Режим активации окна"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Шрифт заголовка окна"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Применение: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Закрыть окно"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Меню окна"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Свернуть окно"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Развернуть окно на весь экран"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Восстановить окно"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Скрутить окно в полоску"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Раскатать окно"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Сохранять окно на переднем плане"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Убрать с переднего плана"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Всегда на видимом рабочем месте"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Помещать только на одно рабочее место"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Свернуть"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Развернуть на весь _экран"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Восстановить _прежний размер"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "С_крутить в полоску"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Рас_катать"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Пере_местить"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Изменить размер"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Переместить заголовок на _экран"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "_Закрепить на переднем плане"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Всегда на видимом рабочем месте"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Т_олько на этом рабочем месте"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Переместить на рабочее место в_лево"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Переместить на рабочее место в_право"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Переместить на рабочее место _вверх"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Переместить на рабочее место в_низ"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Закрыть"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Рабочее место %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Рабочее место 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Рабочее место %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Переместить на другое _рабочее место"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d × %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "top"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "bottom"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "left"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "right"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "геометрия рамки не указывает размер «%s»"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "геометрия рамки не указывает размер «%s» для границы «%s»"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Соотношение сторон кнопки %g недопустимо"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Геометрия рамки не указывает размер кнопок"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "У градиентов должно быть не меньше двух цветов"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"У спецификации цвета GTK+ в скобках должен быть указан режим, например, gtk:"
+"fg[NORMAL], где NORMAL — это режим; не удалось разобрать «%s»"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"У спецификации цвета GTK+ после указания режима должна быть закрывающая "
+"скобка, например, gtk:fg[NORMAL], где NORMAL — это режим; не удалось "
+"разобрать «%s»"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Не удалось распознать режим «%s» в спецификации цвета"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Не удалось распознать составную часть цвета «%s» в спецификации цвета"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Формат определения смешанного цвета — «blend/bg_color/fg_color/alpha»; «%s» не "
+"соответствует формату"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Не удалось разобрать значение альфа-канала «%s» в смешанном цвете"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+"Значение альфа-канала «%s» в смешанном цвете не входит в диапазон между 0.0 и "
+"1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Формат тени — «shade/base_color/factor»; «%s» не соответствует формату"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Не удалось разобрать составную часть тени «%s» в затенённом цвете"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Составная часть тени «%s» в затенённом цвете отрицательна"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Не удалось разобрать цвет «%s»"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Выражение координаты содержит символ «%s», который нельзя использовать"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Выражение координаты содержит число с плавающей запятой «%s», которое не "
+"удалось разобрать"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Выражение координаты содержит целое число «%s», которое не удалось разобрать"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Выражение координаты содержит неизвестный оператор в начале следующего "
+"текста: «%s»"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Выражение координаты пустое, или его не удалось распознать"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Вычисление выражения координаты привело к делению на ноль"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Выражение координаты пытается использовать оператор взятия остатка от "
+"деления для числа с плавающей запятой"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"В выражении координаты используется оператор «%s» там, где должен быть операнд"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"В выражении координаты используется операнд там, где должен быть оператор"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Выражение координаты заканчивается оператором, а не операндом"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"В выражении координаты за оператором «%c» следует оператор «%c», между ними "
+"нет операнда"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "В выражении координаты неизвестная переменная или константа «%s»"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Произошло переполнение буфера обработчика координат."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"В выражении координаты использованы закрывающие скобки, но нет "
+"соответствующих открывающих скобок"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"В выражении координаты использованы открывающие скобки, но нет "
+"соответствующих закрывающих скобок"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "В выражении координаты нет операторов и операндов"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "В теме было выражение, которое вызвало ошибку: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"для этого стиля рамки необходимо указать <button function=\"%s\" state=\"%s"
+"\" draw_ops=\"что-нибудь\"/>"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Отсутствует <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"что-нибудь"
+"\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Не удалось загрузить тему «%s»: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Отсутствует элемент <%s> для темы «%s»"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Нет стиля рамки для типа окна «%s» в теме «%s», добавьте элемент <window type="
+"\"%s\" style_set=\"что-нибудь\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Константы, заданные пользователем, должны начинаться с заглавной буквы; «%s» "
+"не начинается с заглавной буквы"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Константа «%s» уже задана"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Отсутствует атрибут «%s» для элемента <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Строка %d, символ %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Атрибут «%s» дважды повторяется в одном и том же элементе <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Атрибут «%s» не может применяться в элементе <%s> в этом контексте"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Не удалось разобрать «%s» как целое число"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Не удалось распознать замыкающие символы «%s» в строке «%s»"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Целое число %ld должно быть положительным"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Целое число %ld слишком большое, текущий максимум равен %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Не удалось разобрать «%s» как число с плавающей запятой"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Логические значения должны быть «true» или «false», а не «%s»"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Угол должен быть от 0,0 до 360,0, а был %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Альфа-канал должен быть от 0,0 (невидимость) до 1,0 (полная непрозрачность), "
+"а был %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Масштаб заголовка «%s» (возможные значения: xx-small, x-small, small, medium, "
+"large, x-large, xx-large) недопустим\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "Имя «%s» элемента <%s> использовалось второй раз"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Родительский объект «%s» элемента <%s> не определён"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Геометрия «%s» объекта <%s> не определена"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"В элементе <%s> должны быть определены либо геометрия, либо родительский "
+"объект, имеющий геометрию"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Необходимо задать фон, чтобы значение альфа-канала имело смысл"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Тип «%s» для элемента <%s> неизвестен"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Параметр style_set «%s» для элемента <%s> неизвестен"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Типу окна «%s» уже был приписан набор стилей"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Использование элемента <%s> под <%s> недопустимо"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Невозможно одновременно задать параметры «button_width»/«button_height» и "
+"«aspect_ratio» для кнопок"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Расстояние «%s» неизвестно"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Соотношение сторон «%s» неизвестно"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Рамка «%s» неизвестна"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Нет ни атрибута «start_angle», ни атрибута «from» для элемента <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Нет ни атрибута «extent_angle», ни атрибута «to» для элемента <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Не удалось распознать значение «%s» для типа градиента"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Не удалось распознать тип заливки «%s» для элемента <%s> "
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Не удалось распознать состояние «%s» для элемента <%s> "
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Не удалось распознать тень «%s» для элемента <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Не удалось распознать стрелку «%s» для элемента <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Параметр <draw_ops> с именем «%s» не задан"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Вставка сюда параметра draw_ops «%s» создаст циклическую ссылку"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Неизвестная позиция «%s» для участка рамки"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "У стиля рамки уже есть участок в позиции %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Не задан ни один параметр <draw_ops> с именем «%s»"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Неизвестная функция «%s» для кнопки"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"Функция кнопки «%s» не существует в этой версии (%d, необходима версия %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Неизвестное состояние «%s» для кнопки"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "У стиля рамки уже есть кнопка для режима %s функции %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "«%s» — недопустимое значение для атрибута «focus»"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "«%s» — недопустимое значение для атрибута «state»"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Стиль с именем «%s» не задан"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "«%s» — недопустимое значение для атрибута «resize»"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Не следует использовать атрибут «resize» в элементе <%s> для развернутого и "
+"скрученного состояний"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Не следует использовать атрибут «resize» в элементе <%s> для развёрнутых "
+"состояний"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Для атрибутов state %s resize %s focus %s стиль уже задан"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Для атрибутов state %s focus %s стиль уже задан"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Невозможно использовать два параметра draw_ops для элемента <piece> (в теме "
+"указан атрибут draw_ops и элемент <draw_ops> или указаны два элемента)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Невозможно использовать два параметра draw_ops для элемента <button> (в теме "
+"указан атрибут draw_ops и элемент <draw_ops> или указаны два элемента)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Невозможно использовать два параметра draw_ops для элемента <menu_icon> (в "
+"теме указан атрибут draw_ops и элемент <draw_ops> или указаны два элемента)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Элемент верхнего уровня в теме должен быть <marco_theme>, а не <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Использование элемента <%s> внутри элементов name/author/date/description "
+"недопустимо"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Использование элемента <%s> внутри элемента <constant> недопустимо"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Использование элемента <%s> внутри элементов distance/border/aspect_ratio "
+"недопустимо"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Использование элемента <%s> внутри элемента draw operation недопустимо"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Использование элемента <%s> внутри элемента <%s> недопустимо"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Не задан параметр draw_ops для участка рамки"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Не задан параметр draw_ops для кнопки"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Использование текста внутри элемента <%s> недопустимо"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> указан для этой темы дважды"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Не удалось найти допустимый файл для темы %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "В файле темы %s нет корневого элемента <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Окна"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Окна/разделитель"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Окна/_Диалоговое окно"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Окна/_Модальное диалоговое окно"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Окна/_Утилита"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Окна/_Экран-заставка"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Окна/_Верхний док"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Окна/_Нижний док"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Окна/_Левый док"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Окна/_Правый док"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Окна/_Все доки"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Окна/_Рабочий стол"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Это образец сообщения в образце диалогового окна"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Фальшивый элемент меню %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Окно только с рамкой"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Панель"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Обычное окно приложения"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Диалоговое окно"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Модальное диалоговое окно"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Вспомогательная палитра"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Отделённое меню"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Рамка"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Проверка размещения кнопок %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g мс для рисования одной рамки окна"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Применение: marco-theme-viewer [ИМЯТЕМЫ]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Ошибка загрузки темы: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Тема «%s» загружена за %g секунд\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Обычный текст заголовка"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Маленький шрифт заголовка"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Большой шрифт заголовка"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Расположение кнопок"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Рейтинг производительности"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Тут будет заголовок окна"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Отрисовано %d кадров за %g секунд клиентского времени (%g миллисекунд на "
+"кадр) и %g секунд календарного времени, включая ресурсы X-сервера (%g "
+"миллисекунд на кадр)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "проверка выражения позиции вернула TRUE, но установила ошибку"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "проверка выражения позиции вернула FALSE, но не установила ошибку"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Ожидалась ошибка, но ни одна не произошла"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Ожидалась ошибка %d, но произошла ошибка %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Ошибка не ожидалась, но произошла: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "значение x было %d, а ожидалось %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "значение y было %d, а ожидалось %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d координатных выражений разобрано за %g секунд (в среднем %g c)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Открыть другое окно"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Это демонстрационая кнопка со значком «открыть»"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Это демонстрационная кнопка со значком «выйти»"
diff --git a/po/rw.po b/po/rw.po
new file mode 100644
index 00000000..8e232d95
--- /dev/null
+++ b/po/rw.po
@@ -0,0 +1,3240 @@
+# translation of marco to Kinyarwanda.
+# Copyright (C) 2005 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+# Steve Murphy <[email protected]>, 2005
+# Steve performed initial rough translation from compendium built from translations provided by the following translators:
+# Philibert Ndandali <[email protected]>, 2005.
+# Viateur MUGENZI <[email protected]>, 2005.
+# Noëlla Mupole <[email protected]>, 2005.
+# Carole Karema <[email protected]>, 2005.
+# JEAN BAPTISTE NGENDAHAYO <[email protected]>, 2005.
+# Augustin KIBERWA <[email protected]>, 2005.
+# Donatien NSENGIYUMVA <[email protected]>, 2005..
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco 2.12\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-09-19 12:30+0200\n"
+"PO-Revision-Date: 2005-03-28 19:35-0700\n"
+"Last-Translator: Steve Murphy <[email protected]>\n"
+"Language-Team: Kinyarwanda <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+# crashrep/source\all\crashrep.lng:%MSG_CMDLINE_USAGE%.text
+#: ../src/tools/marco-message.c:150
+#, fuzzy, c-format
+msgid "Usage: %s\n"
+msgstr "Ikoresha:"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:128
+#, fuzzy
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Gushigikira kugirango"
+
+#: ../src/delete.c:63 ../src/delete.c:90 ../src/marco-dialog.c:70
+#: ../src/theme-parser.c:467
+#, fuzzy, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "OYA Nka Umubare wuzuye"
+
+#: ../src/delete.c:70 ../src/delete.c:97 ../src/marco-dialog.c:77
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, fuzzy, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "OYA Inyuguti in Ikurikiranyanyuguti"
+
+#: ../src/delete.c:128
+#, fuzzy, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Kuri Ubutumwa Bivuye Ikiganiro"
+
+#: ../src/delete.c:263
+#, fuzzy, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Bivuye Ikiganiro Kugaragaza"
+
+#: ../src/delete.c:344
+#, fuzzy, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr "Ikiganiro Kuri Ibyerekeye Porogaramu"
+
+#: ../src/delete.c:452
+#, fuzzy, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Kuri Kubona Izina ry'inturo:"
+
+#: ../src/display.c:319
+#, fuzzy, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Kuri Gufungura Kugaragaza"
+
+#: ../src/errors.c:231
+#, fuzzy, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr "Ukwihuza Kuri Kugaragaza Seriveri Hasi Cyangwa Idirishya Muyobozi"
+
+#: ../src/errors.c:238
+#, fuzzy, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Ikosa ku Kugaragaza"
+
+# sfx2/sdi\sfxslots.src:SID_CLOSEWIN.text
+#: ../src/frames.c:1125
+msgid "Close Window"
+msgstr "Gufunga Idirishya"
+
+#: ../src/frames.c:1128
+msgid "Window Menu"
+msgstr ""
+
+# 3850
+#: ../src/frames.c:1131
+msgid "Minimize Window"
+msgstr "gira idirishya rito"
+
+# 3784
+#: ../src/frames.c:1134
+msgid "Maximize Window"
+msgstr "heza idirishya"
+
+#: ../src/frames.c:1137
+msgid "Unmaximize Window"
+msgstr ""
+
+#: ../src/keybindings.c:994
+#, fuzzy, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "Ikindi Porogaramu ni ikoresha Urufunguzo Na: Nka a"
+
+#: ../src/keybindings.c:2620
+#, fuzzy, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr "Ikiganiro Kuri Gucapa Ikosa Ibyerekeye a Komandi:"
+
+#: ../src/keybindings.c:2725
+#, fuzzy, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Komandi:"
+
+#: ../src/keybindings.c:3570
+#, fuzzy
+msgid "No terminal command has been defined.\n"
+msgstr "Komandi:"
+
+#: ../src/main.c:69
+#, fuzzy, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"C Na ni Kigenga Inkomoko kugirango ni OYA ATARIIGIHARWE kugirango Cyangwa A"
+
+#: ../src/main.c:257
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:263
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:269
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:274
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:280
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:286
+msgid "Print version"
+msgstr ""
+
+#: ../src/main.c:440
+#, fuzzy, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Kuri Gusikana Insanganyamatsiko bushyinguro"
+
+#: ../src/main.c:456
+#, fuzzy, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr "OYA Gushaka a Na Kirimo Insanganyamatsiko"
+
+#: ../src/main.c:518
+#, fuzzy, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Kuri Ongera utangire"
+
+# vcl/source\src\helptext.src:SV_HELPTEXT_MINIMIZE.text
+#: ../src/menu.c:54
+#, fuzzy
+msgid "Mi_nimize"
+msgstr "Kugabanya ingano"
+
+# sc/source\ui\formdlg\formdlgs.src:RID_SCDLG_FORMULA.RB_REF.quickhelptext
+#: ../src/menu.c:55
+#, fuzzy
+msgid "Ma_ximize"
+msgstr "Kugira kinini"
+
+#: ../src/menu.c:56
+msgid "Unma_ximize"
+msgstr ""
+
+# vcl/source\src\helptext.src:SV_HELPTEXT_ROLLUP.text
+#: ../src/menu.c:57
+#, fuzzy
+msgid "Roll _Up"
+msgstr "Kuzamura"
+
+#: ../src/menu.c:58
+msgid "_Unroll"
+msgstr ""
+
+#: ../src/menu.c:59 ../src/menu.c:60
+msgid "On _Top"
+msgstr ""
+
+# sc/source\ui\src\globstr.src:RID_GLOBSTR.STR_UNDO_MOVE.text
+#: ../src/menu.c:61
+#, fuzzy
+msgid "_Move"
+msgstr "Kwimura"
+
+# starmath/source\smres.src:RID_TOOLBOXWINDOW.6.RID_SIZEXY.text
+#: ../src/menu.c:62
+#, fuzzy
+msgid "_Resize"
+msgstr "Kuringaniza"
+
+# #-#-#-#-# basctl.pot (Mate 2.12) #-#-#-#-#
+# basctl/source\basicide\macrodlg.src:RID_MACROCHOOSER.RID_PB_CLOSE.text
+# #-#-#-#-# basctl.pot (Mate 2.12) #-#-#-#-#
+# basctl/source\basicide\macrodlg.src:RID_STR_CLOSE.text
+# #-#-#-#-# basctl.pot (Mate 2.12) #-#-#-#-#
+# basctl/source\basicide\moduldlg.src:RID_TP_MODULS.RID_PB_CLOSE.text
+# #-#-#-#-# basctl.pot (Mate 2.12) #-#-#-#-#
+# basctl/source\basicide\moduldlg.src:RID_TP_LIBS.RID_PB_CLOSE.text
+#. separator
+#: ../src/menu.c:64
+#, fuzzy
+msgid "_Close"
+msgstr "Gufunga"
+
+#. separator
+#: ../src/menu.c:66
+#, fuzzy
+msgid "_Always on Visible Workspace"
+msgstr "ku"
+
+#: ../src/menu.c:67
+#, fuzzy
+msgid "_Only on This Workspace"
+msgstr "ku"
+
+#: ../src/menu.c:68
+#, fuzzy
+msgid "Move to Workspace _Left"
+msgstr "Kuri"
+
+#: ../src/menu.c:69
+#, fuzzy
+msgid "Move to Workspace R_ight"
+msgstr "Kuri"
+
+#: ../src/menu.c:70
+#, fuzzy
+msgid "Move to Workspace _Up"
+msgstr "Kuri"
+
+#: ../src/menu.c:71
+#, fuzzy
+msgid "Move to Workspace _Down"
+msgstr "Kuri"
+
+#: ../src/menu.c:162 ../src/prefs.c:2106
+#, fuzzy, c-format
+msgid "Workspace %d"
+msgstr "Umwanya- nkenerwa"
+
+#: ../src/menu.c:171
+msgid "Workspace 1_0"
+msgstr ""
+
+#: ../src/menu.c:173
+#, fuzzy, c-format
+msgid "Workspace %s%d"
+msgstr "Umwanya- nkenerwa"
+
+#: ../src/menu.c:368
+#, fuzzy
+msgid "Move to Another _Workspace"
+msgstr "Kuri"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Gusunika"
+
+# the control key
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+# the command key
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+# 6040
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "hejuru"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr ""
+
+#: ../src/marco-dialog.c:110
+#, fuzzy, c-format
+msgid "The window \"%s\" is not responding."
+msgstr "Idirishya ni OYA"
+
+#: ../src/marco-dialog.c:118
+#, fuzzy
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr "iyi Porogaramu Kuri Kuvamo Kuri Amahinduka"
+
+#: ../src/marco-dialog.c:129
+msgid "_Force Quit"
+msgstr ""
+
+#: ../src/marco-dialog.c:226
+msgid "Title"
+msgstr "Umutwe"
+
+#: ../src/marco-dialog.c:238
+msgid "Class"
+msgstr "ishuri,urwego"
+
+#: ../src/marco-dialog.c:264
+#, fuzzy
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"OYA Gushigikira Kubika KIGEZWEHO Imikorere Na Kuri Komeza>> Igihe LOG in"
+
+#: ../src/marco-dialog.c:330
+#, fuzzy, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr "Ikosa"
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:1
+#, fuzzy
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(in Bya Porogaramu OYA"
+
+#: ../src/marco.schemas.in.h:2
+#, fuzzy
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr ""
+"A Intego- nyuguti Isobanuramiterere Ikurikiranyanyuguti a Intego- nyuguti "
+"kugirango Idirishya Ingano Bivuye Isobanuramiterere NIBA Ihitamo ni "
+"Gushyiraho Kuri 0 iyi Ihitamo ni Yahagaritswe NIBA Ihitamo ni Gushyiraho "
+"Kuri NIBYO Mburabuzi ni Kuri Inyuma Kuri Ibiro Intego- nyuguti ATARIIGIHARWE "
+"NIBA ni SIBYO"
+
+#: ../src/marco.schemas.in.h:3
+#, fuzzy
+msgid "Action on title bar double-click"
+msgstr "ku Umutwe MAHARAKUBIRI Kanda"
+
+#: ../src/marco.schemas.in.h:4
+#, fuzzy
+msgid "Activate window menu"
+msgstr "Idirishya Ibikubiyemo"
+
+#: ../src/marco.schemas.in.h:5
+#, fuzzy
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Bya Utubuto ku"
+
+#: ../src/marco.schemas.in.h:6
+#, fuzzy
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"Bya Utubuto ku Agaciro a Ikurikiranyanyuguti Nka Ibikubiyemo Kugabanya "
+"ingano Kugira kinini Gufunga Ibumoso: Inguni Bya Idirishya Bivuye Iburyo: "
+"Inguni Na Akabuto Amazina Akitso Utubuto OYA Akabuto Amazina Utubuto "
+"Kyongewe in Uburyo Uburyo"
+
+#: ../src/marco.schemas.in.h:7
+#, fuzzy
+msgid "Automatically raises the focused window"
+msgstr "Idirishya"
+
+#: ../src/marco.schemas.in.h:8
+#, fuzzy
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"a Idirishya Hasi iyi Urufunguzo Kwimura Idirishya Ibumoso: Kanda "
+"Ihindurangero Idirishya Hagati Kanda Cyangwa Garagaza Idirishya Ibikubiyemo "
+"Iburyo: Kanda ni Nka Cyangwa kugirango Urugero"
+
+# sfx2/sdi\sfxslots.src:SID_CLOSEWIN.text
+#: ../src/marco.schemas.in.h:9
+#, fuzzy
+msgid "Close window"
+msgstr "Gufunga Idirishya"
+
+#: ../src/marco.schemas.in.h:10
+#, fuzzy
+msgid "Commands to run in response to keybindings"
+msgstr "Kuri Gukoresha in Kuri"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:12
+#, fuzzy
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "in kugirango Ikiyega Ihitamo"
+
+#: ../src/marco.schemas.in.h:13
+#, fuzzy
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr "Porogaramu Cyangwa Sisitemu Gicurasi in Na: Kigaragara Kuri Kwemerera"
+
+#: ../src/marco.schemas.in.h:14
+#, fuzzy
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Bya ngombwa ku ki/ bishaje Cyangwa Porogaramu"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:16
+#, fuzzy
+msgid "Hide all windows and focus desktop"
+msgstr "Byose Na Ibiro"
+
+#: ../src/marco.schemas.in.h:17
+#, fuzzy
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key)."
+msgstr ""
+"NIBYO Na Ubwoko ni Cyangwa Imbeba Hanyuma Idirishya ku buryo bwikora Nyuma a "
+"Gutinda Gutinda ni ku Urufunguzo"
+
+#: ../src/marco.schemas.in.h:18
+#, fuzzy
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"NIBYO Kwirengagiza Ihitamo Na Gukoresha Bisanzwe Porogaramu Intego- nyuguti "
+"kugirango Idirishya Imitwe"
+
+#: ../src/marco.schemas.in.h:19
+#, fuzzy
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+"NIBYO Ukoresha: Birutwa Na Birutwa Bya ku ikoresha Amayega Cyangwa Ikindi ni "
+"a in kugirango Gicurasi Kwemerera Porogaramu Na Kuri Umumaro Ryari: ni "
+"Yahagaritswe Ryari: Ubushobozi bwo gukoreshwa ni ku Kuri Ibiro"
+
+#: ../src/marco.schemas.in.h:20
+#, fuzzy
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr "g."
+
+#: ../src/marco.schemas.in.h:21
+#, fuzzy
+msgid "If true, trade off usability for less resource usage"
+msgstr "NIBYO Bidakora kugirango Birutwa Ikoresha:"
+
+#: ../src/marco.schemas.in.h:22
+#, fuzzy
+msgid "Lower window below other windows"
+msgstr "Idirishya munsi Ikindi"
+
+# 3784
+#: ../src/marco.schemas.in.h:23
+#, fuzzy
+msgid "Maximize window"
+msgstr "heza idirishya"
+
+#: ../src/marco.schemas.in.h:24
+#, fuzzy
+msgid "Maximize window horizontally"
+msgstr "Idirishya Mu buryo Butambitse"
+
+#: ../src/marco.schemas.in.h:25
+#, fuzzy
+msgid "Maximize window vertically"
+msgstr "Idirishya Mu buryo buhagaze"
+
+# 3850
+#: ../src/marco.schemas.in.h:26
+#, fuzzy
+msgid "Minimize window"
+msgstr "gira idirishya rito"
+
+#: ../src/marco.schemas.in.h:27
+#, fuzzy
+msgid "Modifier to use for modified window click actions"
+msgstr "Kuri Gukoresha kugirango Byahinduwe Idirishya Kanda"
+
+#: ../src/marco.schemas.in.h:28
+#, fuzzy
+msgid "Move backward between panels and the desktop immediately"
+msgstr "subira inyuma hagati Na Ibiro Ako kanya"
+
+#: ../src/marco.schemas.in.h:29
+#, fuzzy
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "Inyuma hagati Na Ibiro Na:"
+
+#: ../src/marco.schemas.in.h:30
+#, fuzzy
+msgid "Move backwards between windows immediately"
+msgstr "Inyuma hagati Ako kanya"
+
+#: ../src/marco.schemas.in.h:31
+#, fuzzy
+msgid "Move between panels and the desktop immediately"
+msgstr "hagati Na Ibiro Ako kanya"
+
+#: ../src/marco.schemas.in.h:32
+#, fuzzy
+msgid "Move between panels and the desktop with popup"
+msgstr "hagati Na Ibiro Na:"
+
+#: ../src/marco.schemas.in.h:33
+#, fuzzy
+msgid "Move between windows immediately"
+msgstr "hagati Ako kanya"
+
+#: ../src/marco.schemas.in.h:34
+#, fuzzy
+msgid "Move between windows with popup"
+msgstr "hagati Na:"
+
+#: ../src/marco.schemas.in.h:35
+#, fuzzy
+msgid "Move focus backwards between windows using popup display"
+msgstr "Inyuma hagati ikoresha Kugaragaza"
+
+#: ../src/marco.schemas.in.h:36
+#, fuzzy
+msgid "Move window"
+msgstr "Idirishya"
+
+#: ../src/marco.schemas.in.h:37
+#, fuzzy
+msgid "Move window one workspace down"
+msgstr "Idirishya Umwanya- nkenerwa Hasi"
+
+#: ../src/marco.schemas.in.h:38
+#, fuzzy
+msgid "Move window one workspace to the left"
+msgstr "Idirishya Umwanya- nkenerwa Kuri Ibumoso:"
+
+#: ../src/marco.schemas.in.h:39
+#, fuzzy
+msgid "Move window one workspace to the right"
+msgstr "Idirishya Umwanya- nkenerwa Kuri Iburyo:"
+
+#: ../src/marco.schemas.in.h:40
+#, fuzzy
+msgid "Move window one workspace up"
+msgstr "Idirishya Umwanya- nkenerwa Hejuru"
+
+#: ../src/marco.schemas.in.h:41
+#, fuzzy
+msgid "Move window to workspace 1"
+msgstr "Idirishya Kuri Umwanya- nkenerwa 1."
+
+#: ../src/marco.schemas.in.h:42
+#, fuzzy
+msgid "Move window to workspace 10"
+msgstr "Idirishya Kuri Umwanya- nkenerwa 10"
+
+#: ../src/marco.schemas.in.h:43
+#, fuzzy
+msgid "Move window to workspace 11"
+msgstr "Idirishya Kuri Umwanya- nkenerwa"
+
+#: ../src/marco.schemas.in.h:44
+#, fuzzy
+msgid "Move window to workspace 12"
+msgstr "Idirishya Kuri Umwanya- nkenerwa 12"
+
+#: ../src/marco.schemas.in.h:45
+#, fuzzy
+msgid "Move window to workspace 2"
+msgstr "Idirishya Kuri Umwanya- nkenerwa 2."
+
+#: ../src/marco.schemas.in.h:46
+#, fuzzy
+msgid "Move window to workspace 3"
+msgstr "Idirishya Kuri Umwanya- nkenerwa 3."
+
+#: ../src/marco.schemas.in.h:47
+#, fuzzy
+msgid "Move window to workspace 4"
+msgstr "Idirishya Kuri Umwanya- nkenerwa 4."
+
+#: ../src/marco.schemas.in.h:48
+#, fuzzy
+msgid "Move window to workspace 5"
+msgstr "Idirishya Kuri Umwanya- nkenerwa 5"
+
+#: ../src/marco.schemas.in.h:49
+#, fuzzy
+msgid "Move window to workspace 6"
+msgstr "Idirishya Kuri Umwanya- nkenerwa 6"
+
+#: ../src/marco.schemas.in.h:50
+#, fuzzy
+msgid "Move window to workspace 7"
+msgstr "Idirishya Kuri Umwanya- nkenerwa 7"
+
+#: ../src/marco.schemas.in.h:51
+#, fuzzy
+msgid "Move window to workspace 8"
+msgstr "Idirishya Kuri Umwanya- nkenerwa 8"
+
+#: ../src/marco.schemas.in.h:52
+#, fuzzy
+msgid "Move window to workspace 9"
+msgstr "Idirishya Kuri Umwanya- nkenerwa 9"
+
+#: ../src/marco.schemas.in.h:53
+#, fuzzy
+msgid "Name of workspace"
+msgstr "Bya Umwanya- nkenerwa"
+
+#: ../src/marco.schemas.in.h:54
+#, fuzzy
+msgid "Number of workspaces"
+msgstr "Bya"
+
+#: ../src/marco.schemas.in.h:55
+#, fuzzy
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr "Bya Birenzeho Zeru Na a BIHAMYE Kinini Kuri Ibiro ku kugirango"
+
+#: ../src/marco.schemas.in.h:56
+#, fuzzy
+msgid "Raise obscured window, otherwise lower"
+msgstr "Idirishya Ntoya"
+
+#: ../src/marco.schemas.in.h:57
+#, fuzzy
+msgid "Raise window above other windows"
+msgstr "Idirishya hejuru Ikindi"
+
+#: ../src/marco.schemas.in.h:58
+#, fuzzy
+msgid "Resize window"
+msgstr "Idirishya"
+
+#: ../src/marco.schemas.in.h:59
+#, fuzzy
+msgid "Run a defined command"
+msgstr "a Komandi:"
+
+#: ../src/marco.schemas.in.h:60
+#, fuzzy
+msgid "Run a terminal"
+msgstr "a"
+
+#: ../src/marco.schemas.in.h:61
+#, fuzzy
+msgid "Show the panel menu"
+msgstr "Ibikubiyemo"
+
+#: ../src/marco.schemas.in.h:62
+#, fuzzy
+msgid "Show the panel run application dialog"
+msgstr "Gukoresha Porogaramu Ikiganiro"
+
+#: ../src/marco.schemas.in.h:63
+#, fuzzy
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+"Porogaramu itandukanya in Igisubizo in Idirishya Muyobozi Urugero Byose "
+"Ibiganiro in a Ibirindiro Na: Kuri Idirishya Porogaramu imyanya kugirango "
+"Ibiganiro Uburyo Bya Ikimenyetso Ibikubiyemo Nka Ibiganiro Kuri Ikiganiro "
+"Kuri Kwemerera Ibikubiyemo Kuri Akazi in Porogaramu Ikindi nka iyi Ihitamo "
+"in ku Ubwoko a NIBA Kuri Gukoresha Bikora ku Mburabuzi ni Bya kugirango in a "
+"in Oya Ubwoko a"
+
+#: ../src/marco.schemas.in.h:64
+#, fuzzy
+msgid "Switch to workspace 1"
+msgstr "Kuri Umwanya- nkenerwa 1."
+
+#: ../src/marco.schemas.in.h:65
+#, fuzzy
+msgid "Switch to workspace 10"
+msgstr "Kuri Umwanya- nkenerwa 10"
+
+#: ../src/marco.schemas.in.h:66
+#, fuzzy
+msgid "Switch to workspace 11"
+msgstr "Kuri Umwanya- nkenerwa"
+
+#: ../src/marco.schemas.in.h:67
+#, fuzzy
+msgid "Switch to workspace 12"
+msgstr "Kuri Umwanya- nkenerwa 12"
+
+#: ../src/marco.schemas.in.h:68
+#, fuzzy
+msgid "Switch to workspace 2"
+msgstr "Kuri Umwanya- nkenerwa 2."
+
+#: ../src/marco.schemas.in.h:69
+#, fuzzy
+msgid "Switch to workspace 3"
+msgstr "Kuri Umwanya- nkenerwa 3."
+
+#: ../src/marco.schemas.in.h:70
+#, fuzzy
+msgid "Switch to workspace 4"
+msgstr "Kuri Umwanya- nkenerwa 4."
+
+#: ../src/marco.schemas.in.h:71
+#, fuzzy
+msgid "Switch to workspace 5"
+msgstr "Kuri Umwanya- nkenerwa 5"
+
+#: ../src/marco.schemas.in.h:72
+#, fuzzy
+msgid "Switch to workspace 6"
+msgstr "Kuri Umwanya- nkenerwa 6"
+
+#: ../src/marco.schemas.in.h:73
+#, fuzzy
+msgid "Switch to workspace 7"
+msgstr "Kuri Umwanya- nkenerwa 7"
+
+#: ../src/marco.schemas.in.h:74
+#, fuzzy
+msgid "Switch to workspace 8"
+msgstr "Kuri Umwanya- nkenerwa 8"
+
+#: ../src/marco.schemas.in.h:75
+#, fuzzy
+msgid "Switch to workspace 9"
+msgstr "Kuri Umwanya- nkenerwa 9"
+
+#: ../src/marco.schemas.in.h:76
+#, fuzzy
+msgid "Switch to workspace above this one"
+msgstr "Kuri Umwanya- nkenerwa hejuru iyi"
+
+#: ../src/marco.schemas.in.h:77
+#, fuzzy
+msgid "Switch to workspace below this one"
+msgstr "Kuri Umwanya- nkenerwa munsi iyi"
+
+#: ../src/marco.schemas.in.h:78
+#, fuzzy
+msgid "Switch to workspace on the left"
+msgstr "Kuri Umwanya- nkenerwa ku Ibumoso:"
+
+#: ../src/marco.schemas.in.h:79
+#, fuzzy
+msgid "Switch to workspace on the right"
+msgstr "Kuri Umwanya- nkenerwa ku Iburyo:"
+
+#: ../src/marco.schemas.in.h:80
+#, fuzzy
+msgid "System Bell is Audible"
+msgstr "ni"
+
+#: ../src/marco.schemas.in.h:81
+#, fuzzy
+msgid "Take a screenshot"
+msgstr "a"
+
+#: ../src/marco.schemas.in.h:82
+#, fuzzy
+msgid "Take a screenshot of a window"
+msgstr "a Bya a Idirishya"
+
+#: ../src/marco.schemas.in.h:83
+#, fuzzy
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Kuri Kigaragara Sisitemu Cyangwa Porogaramu Byemewe Uduciro a Umweru umukara "
+"Umurabyo Na Bya Porogaramu Yoherejwe: Kuri Umurabyo Porogaramu Yoherejwe: ni "
+"Kitazwi Nka ni kugirango Mburabuzi Sisitemu ni"
+
+#: ../src/marco.schemas.in.h:84
+#, fuzzy
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr "Utubuto Kugaragaza... Kuri Amabwiriza kugirango Gukora"
+
+#: ../src/marco.schemas.in.h:85
+#, fuzzy
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr "Urufunguzo a Komandi: ku iyi Igenamiterere Kuri"
+
+#: ../src/marco.schemas.in.h:86
+#, fuzzy
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr "Urufunguzo a Komandi: ku iyi Igenamiterere Kuri"
+
+#: ../src/marco.schemas.in.h:87
+#, fuzzy
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Iriho Imibare Komandi: in Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:88
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa hejuru KIGEZWEHO Umwanya- nkenerwa Imiterere nka a "
+"Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri "
+"Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi "
+"Igikorwa"
+
+#: ../src/marco.schemas.in.h:89
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa munsi KIGEZWEHO Umwanya- nkenerwa Imiterere nka a "
+"Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri "
+"Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi "
+"Igikorwa"
+
+#: ../src/marco.schemas.in.h:90
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa ku Ibumoso: Bya KIGEZWEHO Umwanya- nkenerwa Imiterere "
+"nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri "
+"Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi "
+"Igikorwa"
+
+#: ../src/marco.schemas.in.h:91
+#, fuzzy
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa ku Iburyo: Bya KIGEZWEHO Umwanya- nkenerwa Imiterere "
+"nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri "
+"Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi "
+"Igikorwa"
+
+#: ../src/marco.schemas.in.h:92
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa 1. Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:93
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa 10 Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:94
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na "
+"Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe "
+"Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:95
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa 12 Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:96
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa 2. Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:97
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa 3. Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:98
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa 4. Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:99
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa 5 Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:100
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa 6 Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:101
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa 7 Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:102
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa 8 Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:103
+#, fuzzy
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Umwanya- nkenerwa 9 Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:104
+#, fuzzy
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kureka bigakora Idirishya Ibikubiyemo Imiterere nka a Cyangwa ni Na "
+"Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:105
+#, fuzzy
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Gufunga a Idirishya Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:106
+#, fuzzy
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kuri Injiza Kwimura Ubwoko Na a Idirishya ikoresha Mwandikisho Imiterere nka "
+"a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri "
+"Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi "
+"Igikorwa"
+
+#: ../src/marco.schemas.in.h:107
+#, fuzzy
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kuri Injiza Ihindurangero Ubwoko Na a Idirishya ikoresha Mwandikisho "
+"Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho "
+"Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya "
+"kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:108
+#, fuzzy
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kuri Gushisha Byose Bisanzwe Na Gushyiraho Kuri Ibiro Mbuganyuma Imiterere "
+"nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri "
+"Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi "
+"Igikorwa"
+
+#: ../src/marco.schemas.in.h:109
+#, fuzzy
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kugira kinini a Idirishya Imiterere nka a Cyangwa ni Na Ntoya Cyangwa "
+"Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:110
+#, fuzzy
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kugabanya ingano a Idirishya Imiterere nka a Cyangwa ni Na Ntoya "
+"Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:111
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Kuri Kwimura a Idirishya Umwanya- nkenerwa Hasi Imiterere nka a Cyangwa ni "
+"Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:112
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Umwanya- nkenerwa Kuri Ibumoso: Imiterere nka a "
+"Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri "
+"Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi "
+"Igikorwa"
+
+#: ../src/marco.schemas.in.h:113
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Umwanya- nkenerwa Kuri Iburyo: Imiterere nka a "
+"Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri "
+"Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi "
+"Igikorwa"
+
+#: ../src/marco.schemas.in.h:114
+#, fuzzy
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Umwanya- nkenerwa Hejuru Imiterere nka a Cyangwa ni "
+"Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:115
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa 1. Imiterere nka a Cyangwa "
+"ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:116
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa 10 Imiterere nka a Cyangwa "
+"ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:117
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa Imiterere nka a Cyangwa ni "
+"Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:118
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa 12 Imiterere nka a Cyangwa "
+"ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:119
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa 2. Imiterere nka a Cyangwa "
+"ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:120
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa 3. Imiterere nka a Cyangwa "
+"ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:121
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa 4. Imiterere nka a Cyangwa "
+"ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:122
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa 5 Imiterere nka a Cyangwa ni "
+"Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:123
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa 6 Imiterere nka a Cyangwa ni "
+"Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:124
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa 7 Imiterere nka a Cyangwa ni "
+"Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:125
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa 8 Imiterere nka a Cyangwa ni "
+"Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:126
+#, fuzzy
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura a Idirishya Kuri Umwanya- nkenerwa 9 Imiterere nka a Cyangwa ni "
+"Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:127
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura Inyuma hagati Na Ibiro ikoresha a Idirishya Imiterere nka a "
+"Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri "
+"Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi "
+"Igikorwa"
+
+#: ../src/marco.schemas.in.h:128
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura Inyuma hagati Na Ibiro a Idirishya Imiterere nka a Cyangwa ni "
+"Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:129
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kuri Kwimura Inyuma hagati a Idirishya Gusunika Na: iyi Bifatanya Icyerekezo "
+"Gyayo Imbere Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na "
+"Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma "
+"Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:130
+#, fuzzy
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kuri Kwimura Inyuma hagati ikoresha a Idirishya Gusunika Na: iyi Bifatanya "
+"Icyerekezo Gyayo Imbere Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na "
+"Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe "
+"Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:131
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kuri Kwimura hagati Na Ibiro ikoresha a Idirishya Imiterere nka a Cyangwa ni "
+"Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:132
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kuri Kwimura hagati Na Ibiro a Idirishya Imiterere nka a Cyangwa ni Na Ntoya "
+"Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:133
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura hagati a Idirishya Gusunika Urufunguzo ikoresha iyi Bifatanya "
+"Icyerekezo Bya Igenda Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na "
+"Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe "
+"Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:134
+#, fuzzy
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Kwimura hagati ikoresha a Idirishya Gusunika Urufunguzo ikoresha iyi "
+"Bifatanya Icyerekezo Bya Igenda Imiterere nka a Cyangwa ni Na Ntoya Cyangwa "
+"Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:135
+#, fuzzy
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Mukomatanya Buri gihe ku Hejuru: A Idirishya ni Buri gihe ku Hejuru: "
+"Buri gihe Kigaragara KURI Ikindi iyorosa Imiterere nka a Cyangwa ni Na Ntoya "
+"Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:136
+#, fuzzy
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Mukomatanya Ubwoko Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na "
+"Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe "
+"Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:137
+#, fuzzy
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Mukomatanya Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na "
+"Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma "
+"Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:138
+#, fuzzy
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri Mukomatanya Leta Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na "
+"Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe "
+"Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:139
+#, fuzzy
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kuri Mukomatanya Idirishya ni ku Byose Cyangwa Imiterere nka a Cyangwa ni Na "
+"Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:140
+#, fuzzy
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kuri a Idirishya Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na "
+"Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma "
+"Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:141
+#, fuzzy
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Ikiganiro Agasanduku Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na "
+"Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe "
+"Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:142
+#, fuzzy
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"a Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho "
+"Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya "
+"kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:143
+#, fuzzy
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kuri a Bya a Idirishya Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na "
+"Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe "
+"Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:144
+#, fuzzy
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho "
+"Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya "
+"kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:145
+#, fuzzy
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Ibikubiyemo Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na "
+"Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma "
+"Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:146
+#, fuzzy
+msgid "The name of a workspace."
+msgstr "Izina: Bya a Umwanya- nkenerwa"
+
+#: ../src/marco.schemas.in.h:147
+#, fuzzy
+msgid "The screenshot command"
+msgstr "Komandi:"
+
+#: ../src/marco.schemas.in.h:148
+#, fuzzy
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Imigaragarire Bya Idirishya Impera Na"
+
+#: ../src/marco.schemas.in.h:149
+#, fuzzy
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Igihe Gutinda Mbere a Idirishya NIBA ni Gushyiraho Kuri NIBYO Gutinda ni in "
+"Bya a ISEGONDA"
+
+#: ../src/marco.schemas.in.h:150
+#, fuzzy
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Idirishya Ubwoko Uduciro Kanda in Itondekanya Kuri Ryari: Imbeba Idirishya "
+"Na Imbeba Ryari: Imbeba Idirishya Na Ryari: Imbeba Ibibabi Idirishya"
+
+#: ../src/marco.schemas.in.h:151
+#, fuzzy
+msgid "The window screenshot command"
+msgstr "Idirishya Komandi:"
+
+#: ../src/marco.schemas.in.h:152
+#, fuzzy
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Amahinduka a Idirishya ni hejuru Cyangwa munsi Ikindi Idirishya ni ku "
+"Idirishya Idirishya hejuru Ikindi Idirishya ni Kigaragara Idirishya munsi "
+"Ikindi Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na Nka Na "
+"Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe Hanyuma "
+"Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:153
+#, fuzzy
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"a Idirishya munsi Ikindi Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru "
+"Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti "
+"Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:154
+#, fuzzy
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Idirishya hejuru Ikindi Imiterere nka a Cyangwa ni Na Ntoya Cyangwa Nkuru Na "
+"Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe Ikurikiranyanyuguti Yahagaritswe "
+"Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:155
+#, fuzzy
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"a Idirishya Kuri Kuzuza Bihari Gitambitse Umwanya Imiterere nka a Cyangwa ni "
+"Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:156
+#, fuzzy
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"a Idirishya Kuri Kuzuza Bihari Bihagaritse Umwanya Imiterere nka a Cyangwa "
+"ni Na Ntoya Cyangwa Nkuru Na Nka Na Gushyiraho Ihitamo Kuri Bidasanzwe "
+"Ikurikiranyanyuguti Yahagaritswe Hanyuma Oya kugirango iyi Igikorwa"
+
+#: ../src/marco.schemas.in.h:157
+#, fuzzy
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, and 'toggle_maximize' which will maximize/unmaximize the window."
+msgstr ""
+"Ihitamo Ingaruka Bya MAHARAKUBIRI ku Umutwe Byemewe Amahitamo Idirishya Na "
+"Kugira kinini Idirishya"
+
+#: ../src/marco.schemas.in.h:158
+#, fuzzy
+msgid "Toggle always on top state"
+msgstr "Buri gihe ku Hejuru: Leta"
+
+#: ../src/marco.schemas.in.h:159
+#, fuzzy
+msgid "Toggle fullscreen mode"
+msgstr "Ubwoko"
+
+#: ../src/marco.schemas.in.h:160
+#, fuzzy
+msgid "Toggle maximization state"
+msgstr "Leta"
+
+#: ../src/marco.schemas.in.h:161
+#, fuzzy
+msgid "Toggle shaded state"
+msgstr "Leta"
+
+#: ../src/marco.schemas.in.h:162
+#, fuzzy
+msgid "Toggle window on all workspaces"
+msgstr "Idirishya ku Byose"
+
+#: ../src/marco.schemas.in.h:163
+#, fuzzy
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+"ku a Kigaragara Ryari: Porogaramu Cyangwa Sisitemu a Cyangwa kugirango "
+"Ikomeye Bya Na kugirango Gukoresha in Cyangwa Ryari: ni Bidakora"
+
+#: ../src/marco.schemas.in.h:164
+#, fuzzy
+msgid "Unmaximize window"
+msgstr "Idirishya"
+
+#: ../src/marco.schemas.in.h:165
+#, fuzzy
+msgid "Use standard system font in window titles"
+msgstr "Bisanzwe Sisitemu Intego- nyuguti in Idirishya Imitwe"
+
+#: ../src/marco.schemas.in.h:166
+msgid "Visual Bell Type"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:167
+#, fuzzy
+msgid "Window focus mode"
+msgstr "Ubwoko"
+
+#: ../src/marco.schemas.in.h:168
+#, fuzzy
+msgid "Window title font"
+msgstr "Umutwe Intego- nyuguti"
+
+#: ../src/prefs.c:528 ../src/prefs.c:544 ../src/prefs.c:560 ../src/prefs.c:576
+#: ../src/prefs.c:592 ../src/prefs.c:612 ../src/prefs.c:628 ../src/prefs.c:644
+#: ../src/prefs.c:660 ../src/prefs.c:676 ../src/prefs.c:692 ../src/prefs.c:708
+#: ../src/prefs.c:724 ../src/prefs.c:741 ../src/prefs.c:757 ../src/prefs.c:773
+#: ../src/prefs.c:789 ../src/prefs.c:805 ../src/prefs.c:820 ../src/prefs.c:835
+#: ../src/prefs.c:850 ../src/prefs.c:866 ../src/prefs.c:882 ../src/prefs.c:898
+#, fuzzy, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Urufunguzo ni Gushyiraho Kuri Sibyo"
+
+#: ../src/prefs.c:943
+#, fuzzy, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\"Byabonetse in Iboneza Ububikoshingiro ni OYA a Byemewe Agaciro "
+"kugirango Imbeba Akabuto"
+
+#: ../src/prefs.c:967 ../src/prefs.c:1428
+#, fuzzy, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Urufunguzo ni Gushyiraho Kuri Sibyo"
+
+#: ../src/prefs.c:1145
+#, fuzzy, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "OYA Intego- nyuguti Isobanuramiterere Bivuye Urufunguzo"
+
+#: ../src/prefs.c:1330
+#, fuzzy, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr "%din Urufunguzo ni OYA a Umubare Bya KIGEZWEHO Kinini ni"
+
+#: ../src/prefs.c:1390
+#, fuzzy
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr "kugirango Porogaramu Yahagaritswe Porogaramu Gicurasi OYA"
+
+#: ../src/prefs.c:1455
+#, fuzzy, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "%din Urufunguzo ni Inyuma Bya Urutonde 0 Kuri"
+
+#: ../src/prefs.c:1589
+#, fuzzy, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Igenamiterere Umubare Bya Kuri"
+
+#: ../src/prefs.c:1833
+#, fuzzy, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\"Byabonetse in Iboneza Ububikoshingiro ni OYA a Byemewe Agaciro "
+"kugirango"
+
+#: ../src/prefs.c:2187
+#, fuzzy, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Igenamiterere Izina: kugirango Umwanya- nkenerwa Kuri"
+
+#: ../src/resizepopup.c:126
+#, fuzzy, c-format
+msgid "%d x %d"
+msgstr "%dX"
+
+#: ../src/screen.c:408
+#, fuzzy, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "ku Kugaragaza ni"
+
+#: ../src/screen.c:424
+#, fuzzy, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"ku Kugaragaza a Idirishya Muyobozi ikoresha Gusimbura Ihitamo Kuri Gusimbura "
+"KIGEZWEHO Idirishya Muyobozi"
+
+#: ../src/screen.c:448
+#, fuzzy, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "OYA Idirishya Muyobozi Ihitamo ku Mugaragaza Kugaragaza"
+
+#: ../src/screen.c:506
+#, fuzzy, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "ku Kugaragaza a Idirishya"
+
+#: ../src/screen.c:716
+#, fuzzy, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "OYA Mugaragaza ku Kugaragaza"
+
+#: ../src/session.c:884 ../src/session.c:891
+#, fuzzy, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "OYA Kurema bushyinguro"
+
+#: ../src/session.c:901
+#, fuzzy, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "OYA Gufungura Umukoro IDOSIYE kugirango"
+
+#: ../src/session.c:1053
+#, fuzzy, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Umukoro IDOSIYE"
+
+#: ../src/session.c:1058
+#, fuzzy, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Umukoro IDOSIYE"
+
+#: ../src/session.c:1133
+#, fuzzy, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Kuri Gusoma Umukoro IDOSIYE"
+
+#: ../src/session.c:1168
+#, fuzzy, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Kuri Umukoro IDOSIYE"
+
+#: ../src/session.c:1217
+#, fuzzy
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<Ikiranga Twebwe Umukoro"
+
+#: ../src/session.c:1230
+#, fuzzy, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "Ikiranga ku Ikigize:"
+
+#: ../src/session.c:1247
+#, fuzzy
+msgid "nested <window> tag"
+msgstr "Idirishya Itagi:"
+
+#: ../src/session.c:1305 ../src/session.c:1337
+#, fuzzy, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Ikiranga ku Idirishya Ikigize:"
+
+#: ../src/session.c:1409
+#, fuzzy, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Ikiranga ku Ikigize:"
+
+#: ../src/session.c:1469
+#, fuzzy, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Ikiranga ku Iyigamashusho Ikigize:"
+
+#: ../src/session.c:1489
+#, fuzzy, c-format
+msgid "Unknown element %s"
+msgstr "Ikigize:"
+
+#: ../src/session.c:1961
+#, fuzzy, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr "Ikiganiro Kuri Ibyerekeye Gushigikira Umukoro"
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, fuzzy, c-format
+msgid "Line %d character %d: %s"
+msgstr "Inyuguti"
+
+#: ../src/theme-parser.c:396
+#, fuzzy, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "byasubiyemo ku Ikigize:"
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, fuzzy, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "ni Sibyo ku Ikigize: in iyi Imvugiro"
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr ""
+
+#: ../src/theme-parser.c:493
+#, fuzzy, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "ni Binini KIGEZWEHO KININI ni"
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, fuzzy, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "OYA Nka a Bihindagurika Akadomo Umubare"
+
+#: ../src/theme-parser.c:552
+#, fuzzy, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Uduciro NIBYO Cyangwa SIBYO OYA"
+
+#: ../src/theme-parser.c:572
+#, fuzzy, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "hagati 0 0 Na 0"
+
+#: ../src/theme-parser.c:638
+#, fuzzy, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "hagati 0 0 Kitagaragara Na 1. 0 Kijimye"
+
+#: ../src/theme-parser.c:684
+#, fuzzy, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Umutwe Gupima Bya Gitoya X Gitoya Gitoya biringaniye Binini X Binini Binini"
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, fuzzy, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, fuzzy, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s>Izina: a ISEGONDA Igihe"
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, fuzzy, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s>OYA"
+
+#: ../src/theme-parser.c:968
+#, fuzzy, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s>Iyigamashusho OYA"
+
+#: ../src/theme-parser.c:981
+#, fuzzy, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s>a Iyigamashusho Cyangwa a a Iyigamashusho"
+
+#: ../src/theme-parser.c:1080
+#, fuzzy, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Ubwoko ku Ikigize:"
+
+#: ../src/theme-parser.c:1091
+#, fuzzy, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "ku Ikigize:"
+
+#: ../src/theme-parser.c:1099
+#, fuzzy, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Ubwoko a IMISUSIRE Gushyiraho"
+
+#: ../src/theme-parser.c:1143
+#, fuzzy, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr "Umumaro kugirango Ibikubiyemo Agashushondanga"
+
+#: ../src/theme-parser.c:1152
+#, fuzzy, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr "Leta kugirango Ibikubiyemo Agashushondanga"
+
+#: ../src/theme-parser.c:1160
+#, fuzzy, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr "a Ibikubiyemo Agashushondanga kugirango Umumaro Leta"
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, fuzzy, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Na: Izina:"
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, fuzzy, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "ni OYA munsi"
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, fuzzy, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Izina: Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, fuzzy, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Agaciro Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+#, fuzzy
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr "Byombi Na kugirango Utubuto"
+
+#: ../src/theme-parser.c:1343
+#, fuzzy, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "ni Kitazwi"
+
+#: ../src/theme-parser.c:1402
+#, fuzzy, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "ni Kitazwi"
+
+#: ../src/theme-parser.c:1446
+#, fuzzy, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "Hejuru: Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1453
+#, fuzzy, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "Hasi: Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1460
+#, fuzzy, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "Ibumoso: Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1467
+#, fuzzy, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "Iburyo: Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1499
+#, fuzzy, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "ni Kitazwi"
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, fuzzy, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "Ibara Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1662
+#, fuzzy, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, fuzzy, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1676
+#, fuzzy, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, fuzzy, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, fuzzy, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "X Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, fuzzy, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "Y Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, fuzzy, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "Ubugari Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, fuzzy, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "Ubuhagarike Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1903
+#, fuzzy, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:1910
+#, fuzzy, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:2090
+#, fuzzy, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "Alufa Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:2161
+#, fuzzy, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "Ubwoko Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:2209
+#, fuzzy, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "OYA Agaciro kugirango Ubwoko Bya Ikizamuko"
+
+#: ../src/theme-parser.c:2294
+#, fuzzy, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "Izina ry'idosiye: Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, fuzzy, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "OYA Kuzuza Ubwoko kugirango Ikigize:"
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, fuzzy, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "Leta Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, fuzzy, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "Igicucu Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:2476
+#, fuzzy, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "Akambi Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, fuzzy, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "OYA Leta kugirango Ikigize:"
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, fuzzy, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "OYA Igicucu kugirango Ikigize:"
+
+#: ../src/theme-parser.c:2549
+#, fuzzy, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "OYA Akambi kugirango Ikigize:"
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, fuzzy, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Kurema a Cy'uruziga Indango"
+
+#: ../src/theme-parser.c:3153
+#, fuzzy, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "Agaciro Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:3210
+#, fuzzy, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "Ibirindiro Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:3219
+#, fuzzy, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Ibirindiro kugirango Ikadiri"
+
+#: ../src/theme-parser.c:3227
+#, fuzzy, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "IMISUSIRE a ku Ibirindiro"
+
+#: ../src/theme-parser.c:3272
+#, fuzzy, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "Umumaro Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, fuzzy, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "Leta Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:3289
+#, fuzzy, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Umumaro kugirango Akabuto"
+
+#: ../src/theme-parser.c:3298
+#, fuzzy, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Leta kugirango Akabuto"
+
+#: ../src/theme-parser.c:3306
+#, fuzzy, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "IMISUSIRE a Akabuto kugirango Umumaro Leta"
+
+#: ../src/theme-parser.c:3376
+#, fuzzy, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:3392
+#, fuzzy, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "IMISUSIRE Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:3401
+#, fuzzy, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\"ni OYA a Byemewe Agaciro kugirango Ikiranga"
+
+#: ../src/theme-parser.c:3410
+#, fuzzy, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\"ni OYA a Byemewe Agaciro kugirango Leta Ikiranga"
+
+#: ../src/theme-parser.c:3420
+#, fuzzy, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "A IMISUSIRE OYA"
+
+#: ../src/theme-parser.c:3430
+#, fuzzy, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "Ihindurangero Ikiranga ku Ikigize:"
+
+#: ../src/theme-parser.c:3440
+#, fuzzy, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\"ni OYA a Byemewe Agaciro kugirango Ihindurangero Ikiranga"
+
+#: ../src/theme-parser.c:3450
+#, fuzzy, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "OYA Ihindurangero Ikiranga ku Ikigize: kugirango"
+
+#: ../src/theme-parser.c:3464
+#, fuzzy, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "kugirango Leta Ihindurangero"
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, fuzzy, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "kugirango Leta"
+
+#: ../src/theme-parser.c:3536
+#, fuzzy
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "a kugirango a Ikigize: a Ikiranga Na a Ikigize: Cyangwa Ibintu"
+
+#: ../src/theme-parser.c:3574
+#, fuzzy
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "a kugirango a Akabuto Ikigize: a Ikiranga Na a Ikigize: Cyangwa Ibintu"
+
+#: ../src/theme-parser.c:3612
+#, fuzzy
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "a kugirango a Ikigize: a Ikiranga Na a Ikigize: Cyangwa Ibintu"
+
+#: ../src/theme-parser.c:3659
+#, fuzzy, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Ikigize: in OYA"
+
+#: ../src/theme-parser.c:3679
+#, fuzzy, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"ni OYA Mo Imbere a Izina: Umwanditsi Itariki Isobanuramiterere Ikigize:"
+
+#: ../src/theme-parser.c:3684
+#, fuzzy, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "ni OYA Mo Imbere a Ikigize:"
+
+#: ../src/theme-parser.c:3696
+#, fuzzy, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "ni OYA Mo Imbere a Intera Imbibi Ikigize:"
+
+#: ../src/theme-parser.c:3718
+#, fuzzy, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "ni OYA Mo Imbere a Gushushanya Ikigize:"
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, fuzzy, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "ni OYA Mo Imbere a Ikigize:"
+
+#: ../src/theme-parser.c:3984
+#, fuzzy
+msgid "No draw_ops provided for frame piece"
+msgstr "kugirango Ikadiri"
+
+#: ../src/theme-parser.c:3999
+#, fuzzy
+msgid "No draw_ops provided for button"
+msgstr "kugirango Akabuto"
+
+#: ../src/theme-parser.c:4014
+#, fuzzy
+msgid "No draw_ops provided for menu icon"
+msgstr "kugirango Ibikubiyemo Agashushondanga"
+
+#: ../src/theme-parser.c:4054
+#, fuzzy, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Umwandiko ni Mo Imbere Ikigize:"
+
+#: ../src/theme-parser.c:4109
+#, fuzzy
+msgid "<name> specified twice for this theme"
+msgstr "<Izina: kugirango iyi"
+
+#: ../src/theme-parser.c:4120
+#, fuzzy
+msgid "<author> specified twice for this theme"
+msgstr "<Umwanditsi kugirango iyi"
+
+#: ../src/theme-parser.c:4131
+#, fuzzy
+msgid "<copyright> specified twice for this theme"
+msgstr "<Uburenganzira bw'umuhimbyi kugirango iyi"
+
+#: ../src/theme-parser.c:4142
+#, fuzzy
+msgid "<date> specified twice for this theme"
+msgstr "<Itariki kugirango iyi"
+
+#: ../src/theme-parser.c:4153
+#, fuzzy
+msgid "<description> specified twice for this theme"
+msgstr "<Isobanuramiterere kugirango iyi"
+
+#: ../src/theme-parser.c:4348
+#, fuzzy, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr "Kuri Gusoma Bivuye IDOSIYE"
+
+#: ../src/theme-parser.c:4403
+#, fuzzy, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "IDOSIYE OYA a Imizi Ikigize:"
+
+# ***** BEGIN LICENSE BLOCK *****
+# Version: MPL 1.1/GPL 2.0/LGPL 2.1
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+# http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# The Original Code is Mozilla Communicator client code, released
+# March 31, 1998.
+#
+# The Initial Developer of the Original Code is
+# Netscape Communications Corporation.
+# Portions created by the Initial Developer are Copyright (C) 1998-1999
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either of the GNU General Public License Version 2 or later (the "GPL"),
+# or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+# in which case the provisions of the GPL or the LGPL are applicable instead
+# of those above. If you wish to allow use of your version of this file only
+# under the terms of either the GPL or the LGPL, and not to allow others to
+# use your version of this file under the terms of the MPL, indicate your
+# decision by deleting the provisions above and replace them with the notice
+# and other provisions required by the GPL or the LGPL. If you do not delete
+# the provisions above, a recipient may use your version of this file under
+# the terms of any one of the MPL, the GPL or the LGPL.
+#
+# ***** END LICENSE BLOCK *****
+#: ../src/theme-viewer.c:70
+#, fuzzy
+msgid "/_Windows"
+msgstr "/Amadirishya"
+
+#: ../src/theme-viewer.c:71
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/theme-viewer.c:72
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:73
+#, fuzzy
+msgid "/Windows/_Modal dialog"
+msgstr "/Ikiganiro"
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/Des_ktop"
+msgstr ""
+
+#: ../src/theme-viewer.c:131
+#, fuzzy
+msgid "Open another one of these windows"
+msgstr "Bya"
+
+#: ../src/theme-viewer.c:138
+#, fuzzy
+msgid "This is a demo button with an 'open' icon"
+msgstr "ni a Akabuto Na: Agashushondanga"
+
+#: ../src/theme-viewer.c:145
+#, fuzzy
+msgid "This is a demo button with a 'quit' icon"
+msgstr "ni a Akabuto Na: a Agashushondanga"
+
+#: ../src/theme-viewer.c:241
+#, fuzzy
+msgid "This is a sample message in a sample dialog"
+msgstr "ni a Urugero Ubutumwa in a Urugero Ikiganiro"
+
+#: ../src/theme-viewer.c:324
+#, fuzzy, c-format
+msgid "Fake menu item %d\n"
+msgstr "Ibikubiyemo Ikintu"
+
+#: ../src/theme-viewer.c:358
+#, fuzzy
+msgid "Border-only window"
+msgstr "Idirishya"
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr ""
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/theme-viewer.c:397
+#, fuzzy
+msgid "Torn-off Menu"
+msgstr "Bidakora"
+
+#: ../src/theme-viewer.c:402
+msgid "Border"
+msgstr "Imbibi"
+
+#: ../src/theme-viewer.c:731
+#, fuzzy, c-format
+msgid "Button layout test %d"
+msgstr "Imigaragarire Igerageza"
+
+#: ../src/theme-viewer.c:760
+#, fuzzy, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%gKuri Gushushanya Idirishya Ikadiri"
+
+#: ../src/theme-viewer.c:803
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:810
+#, fuzzy, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Itangira..."
+
+#: ../src/theme-viewer.c:816
+#, fuzzy, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "in"
+
+#: ../src/theme-viewer.c:839
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:845
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:851
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:856
+msgid "Button Layouts"
+msgstr ""
+
+#: ../src/theme-viewer.c:861
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/theme-viewer.c:908
+msgid "Window Title Goes Here"
+msgstr ""
+
+#: ../src/theme-viewer.c:1012
+#, fuzzy, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Amakadiri in Umukiriya amasogonda Ikadiri Na amasogonda Urukuta Igihe "
+"Seriveri Ikadiri"
+
+#: ../src/theme-viewer.c:1227
+#, fuzzy
+msgid "position expression test returned TRUE but set error"
+msgstr "Ibirindiro imvugo Igerageza Gushyiraho Ikosa"
+
+#: ../src/theme-viewer.c:1229
+#, fuzzy
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "Ibirindiro imvugo Igerageza Gushyiraho Ikosa"
+
+#: ../src/theme-viewer.c:1233
+#, fuzzy
+msgid "Error was expected but none given"
+msgstr "Ikitezwe: Ntacyo"
+
+#: ../src/theme-viewer.c:1235
+#, fuzzy, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Ikitezwe:"
+
+#: ../src/theme-viewer.c:1241
+#, fuzzy, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "OYA Ikitezwe:"
+
+#: ../src/theme-viewer.c:1245
+#, fuzzy, c-format
+msgid "x value was %d, %d was expected"
+msgstr "X Agaciro Ikitezwe:"
+
+#: ../src/theme-viewer.c:1248
+#, fuzzy, c-format
+msgid "y value was %d, %d was expected"
+msgstr "Y Agaciro Ikitezwe:"
+
+#: ../src/theme-viewer.c:1310
+#, fuzzy, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%din amasogonda amasogonda Impuzandengo"
+
+# scaddins/source\analysis\analysis.src:RID_ANALYSIS_FUNCTION_DESCRIPTIONS.ANALYSIS_Randbetween.4.text
+#: ../src/theme.c:202
+#, fuzzy
+msgid "top"
+msgstr "Hejuru"
+
+# 640
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "hasi"
+
+# #-#-#-#-# officecfg.pot (Mate 2.12) #-#-#-#-#
+# officecfg/registry\schema\org\openoffice\Office\DataAccess.xcs:....Column.Align..0.text
+# #-#-#-#-# officecfg.pot (Mate 2.12) #-#-#-#-#
+# officecfg/registry\schema\org\openoffice\Office\Math.xcs:....StandardFormat.HorizontalAlignment..0.text
+#: ../src/theme.c:206
+msgid "left"
+msgstr "ibumoso"
+
+# #-#-#-#-# officecfg.pot (Mate 2.12) #-#-#-#-#
+# officecfg/registry\schema\org\openoffice\Office\DataAccess.xcs:....Column.Align..2.text
+# #-#-#-#-# officecfg.pot (Mate 2.12) #-#-#-#-#
+# officecfg/registry\schema\org\openoffice\Office\Math.xcs:....StandardFormat.HorizontalAlignment..2.text
+#: ../src/theme.c:208
+msgid "right"
+msgstr "iburyo"
+
+#: ../src/theme.c:222
+#, fuzzy, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "Ikadiri Iyigamashusho OYA"
+
+#: ../src/theme.c:241
+#, fuzzy, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "Ikadiri Iyigamashusho OYA kugirango Imbibi"
+
+#: ../src/theme.c:278
+#, fuzzy, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "ni OYA"
+
+#: ../src/theme.c:290
+#, fuzzy
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Iyigamashusho OYA Ingano Bya Utubuto"
+
+#: ../src/theme.c:843
+#, fuzzy
+msgid "Gradients should have at least two colors"
+msgstr "ku Amabara"
+
+#: ../src/theme.c:969
+#, fuzzy, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr "g."
+
+#: ../src/theme.c:983
+#, fuzzy, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "g."
+
+#: ../src/theme.c:994
+#, fuzzy, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "OYA Leta in Ibara"
+
+#: ../src/theme.c:1007
+#, fuzzy, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "OYA Ibara in Ibara"
+
+#: ../src/theme.c:1037
+#, fuzzy, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "Imiterere ni Alufa OYA Imiterere"
+
+#: ../src/theme.c:1048
+#, fuzzy, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "OYA Alufa Agaciro in Ibara"
+
+#: ../src/theme.c:1058
+#, fuzzy, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Agaciro in Ibara ni OYA hagati 0 0 Na 1. 0"
+
+#: ../src/theme.c:1105
+#, fuzzy, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Imiterere ni Umubarwa OYA Imiterere"
+
+#: ../src/theme.c:1116
+#, fuzzy, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "OYA Umubarwa in Ibara"
+
+#: ../src/theme.c:1126
+#, fuzzy, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Umubarwa in Ibara ni"
+
+#: ../src/theme.c:1155
+#, fuzzy, c-format
+msgid "Could not parse color \"%s\""
+msgstr "OYA Ibara"
+
+#: ../src/theme.c:1417
+#, fuzzy, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "imvugo Kirimo Inyuguti ni OYA"
+
+#: ../src/theme.c:1444
+#, fuzzy, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "imvugo Kirimo Bihindagurika Akadomo Umubare OYA"
+
+#: ../src/theme.c:1458
+#, fuzzy, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "imvugo Kirimo Umubare wuzuye OYA"
+
+#: ../src/theme.c:1525
+#, fuzzy, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "imvugo Kitazwi Mukoresha ku Gutangira Bya iyi Umwandiko"
+
+#: ../src/theme.c:1582
+#, fuzzy
+msgid "Coordinate expression was empty or not understood"
+msgstr "imvugo ubusa Cyangwa OYA"
+
+#: ../src/theme.c:1725 ../src/theme.c:1735 ../src/theme.c:1769
+#, fuzzy
+msgid "Coordinate expression results in division by zero"
+msgstr "imvugo Ibisubizo ku in ku Zeru"
+
+#: ../src/theme.c:1777
+#, fuzzy
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "imvugo Kuri Gukoresha MOD Mukoresha ku a Bihindagurika Akadomo Umubare"
+
+#: ../src/theme.c:1834
+#, fuzzy, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "imvugo Mukoresha Ikitezwe:"
+
+#: ../src/theme.c:1843
+#, fuzzy
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "imvugo Mukoresha Ikitezwe:"
+
+#: ../src/theme.c:1851
+#, fuzzy
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "imvugo Na: Mukoresha Bya"
+
+#: ../src/theme.c:1861
+#, fuzzy, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "imvugo Mukoresha Mukoresha Na: Oya in hagati"
+
+#: ../src/theme.c:1980
+#, fuzzy
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr "imvugo iyi ni a a imvugo nka"
+
+#: ../src/theme.c:2009
+#, fuzzy
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "imvugo a Gufunga Na: Oya Gufungura"
+
+#: ../src/theme.c:2072
+#, fuzzy, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "imvugo Kitazwi IMPINDURAGACIRO Cyangwa"
+
+#: ../src/theme.c:2129
+#, fuzzy
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "imvugo Gufungura Na: Oya Gufunga"
+
+#: ../src/theme.c:2140
+#, fuzzy
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "imvugo Kuri Mukoresha Cyangwa"
+
+#: ../src/theme.c:2384 ../src/theme.c:2406 ../src/theme.c:2427
+#, fuzzy, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "imvugo in Ikosa"
+
+#: ../src/theme.c:3913
+#, fuzzy, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr "<Akabuto Umumaro Leta kugirango iyi Ikadiri IMISUSIRE"
+
+#: ../src/theme.c:4363 ../src/theme.c:4395
+#, fuzzy, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "Ikadiri Leta Ihindurangero IMISUSIRE"
+
+#: ../src/theme.c:4446
+#, fuzzy, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Kuri Ibirimo"
+
+#: ../src/theme.c:4592 ../src/theme.c:4599 ../src/theme.c:4606
+#: ../src/theme.c:4613 ../src/theme.c:4620
+#, fuzzy, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Gushyiraho kugirango"
+
+#: ../src/theme.c:4630
+#, fuzzy, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Ikadiri IMISUSIRE Gushyiraho kugirango Idirishya Ubwoko in Kongeramo a "
+"Idirishya Ubwoko Ikigize:"
+
+#: ../src/theme.c:4652
+#, fuzzy, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr "<Umumaro Leta kugirango iyi"
+
+#: ../src/theme.c:5041 ../src/theme.c:5103
+#, fuzzy, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "Na: a Ibaruwa... OYA"
+
+#: ../src/theme.c:5049 ../src/theme.c:5111
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#: ../src/util.c:93
+#, fuzzy, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Kuri Gufungura Kosora amakosa LOG"
+
+#: ../src/util.c:103
+#, fuzzy, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Kuri LOG IDOSIYE"
+
+#: ../src/util.c:109
+#, fuzzy, c-format
+msgid "Opened log file %s\n"
+msgstr "LOG IDOSIYE"
+
+#: ../src/util.c:203
+#, fuzzy
+msgid "Window manager: "
+msgstr "Umuyobozi w'idirishya"
+
+#: ../src/util.c:349
+#, fuzzy
+msgid "Bug in window manager: "
+msgstr "in Idirishya Muyobozi"
+
+#: ../src/util.c:378
+#, fuzzy
+msgid "Window manager warning: "
+msgstr "Muyobozi Iburira"
+
+#: ../src/util.c:402
+#, fuzzy
+msgid "Window manager error: "
+msgstr "Muyobozi Ikosa"
+
+#: ../src/window-props.c:162
+#, fuzzy, c-format
+msgid "Application set a bogus _NET_WM_PID %ld\n"
+msgstr "Gushyiraho a"
+
+#. first time through
+#: ../src/window.c:5205
+#, fuzzy, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr "ku Bya ku Idirishya Nka in"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5876
+#, fuzzy, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr "GITO Ingano X Na KININI Ingano X iyi Ubwoko"
+
+#: ../src/xprops.c:153
+#, fuzzy, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"indangakintu Ikitezwe: Kuri Ubwoko Imiterere Na Ubwoko Imiterere ni "
+"Porogaramu OYA a Idirishya Muyobozi Idirishya Umutwe ishuri Izina:"
+
+#: ../src/xprops.c:399
+#, fuzzy, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "ku Idirishya Sibyo"
+
+#: ../src/xprops.c:482
+#, fuzzy, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "ku Idirishya Sibyo 8 kugirango Ikintu in"
diff --git a/po/si.po b/po/si.po
new file mode 100644
index 00000000..9f2b1cac
--- /dev/null
+++ b/po/si.po
@@ -0,0 +1,2987 @@
+# translation of si.po to Sinhala
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Danishka Navin <[email protected]>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: si\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-08-17 03:38+0100\n"
+"PO-Revision-Date: 2007-08-17 14:12+0530\n"
+"Last-Translator: Danishka Navin <[email protected]>\n"
+"Language-Team: Sinhala <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "මූලික තිරය"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "කවුළු කළමණාකරු"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "භාවිතය: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:133
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+
+#: ../src/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr ""
+
+#: ../src/delete.c:67 ../src/delete.c:94 ../src/marco-dialog.c:50
+#: ../src/theme-parser.c:484
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr ""
+
+#: ../src/delete.c:74 ../src/delete.c:101 ../src/marco-dialog.c:57
+#: ../src/theme-parser.c:493 ../src/theme-parser.c:548
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+
+#: ../src/delete.c:132
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr ""
+
+#: ../src/delete.c:267
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr ""
+
+#: ../src/delete.c:350
+#, c-format
+msgid "Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+
+#: ../src/delete.c:459
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr ""
+
+#: ../src/display.c:349
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr ""
+
+#: ../src/errors.c:271
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+
+#: ../src/errors.c:278
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr ""
+
+#: ../src/frames.c:1078
+msgid "Close Window"
+msgstr "කවුළුව වසන්න"
+
+#: ../src/frames.c:1081
+msgid "Window Menu"
+msgstr "කවුළු මෙනුව"
+
+#: ../src/frames.c:1084
+msgid "Minimize Window"
+msgstr "කවුළුව හකුළන්න"
+
+#: ../src/frames.c:1087
+msgid "Maximize Window"
+msgstr "කවුළුව විහිදන්න"
+
+#: ../src/frames.c:1090
+msgid "Unmaximize Window"
+msgstr "කවුළුව නොවිහිදන්න"
+
+#: ../src/frames.c:1093
+msgid "Roll Up Window"
+msgstr ""
+
+#: ../src/frames.c:1096
+msgid "Unroll Window"
+msgstr ""
+
+#: ../src/frames.c:1099
+msgid "Keep Window On Top"
+msgstr ""
+
+#: ../src/frames.c:1102
+msgid "Remove Window From Top"
+msgstr ""
+
+#: ../src/frames.c:1105
+msgid "Always On Visible Workspace"
+msgstr ""
+
+#: ../src/frames.c:1108
+msgid "Put Window On Only One Workspace"
+msgstr ""
+
+#: ../src/keybindings.c:1087
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+
+#: ../src/keybindings.c:2716
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+
+#: ../src/keybindings.c:2821
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr ""
+
+#: ../src/keybindings.c:3849
+msgid "No terminal command has been defined.\n"
+msgstr ""
+
+#: ../src/main.c:67
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2007 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+
+#: ../src/main.c:171
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:177
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:183
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:188
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:194
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:200
+msgid "Print version"
+msgstr "මුද්‍රණ වෙළුම"
+
+#: ../src/main.c:353
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr ""
+
+#: ../src/main.c:369
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+
+#: ../src/main.c:429
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:70
+msgid "Mi_nimize"
+msgstr "හකුලන්න (_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:72
+msgid "Ma_ximize"
+msgstr "විහිදන්න (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:74
+msgid "Unma_ximize"
+msgstr "නොවිහිදන්න (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:76
+msgid "Roll _Up"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:78
+msgid "_Unroll"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:80
+msgid "_Move"
+msgstr "ගෙන යන්න (_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:82
+msgid "_Resize"
+msgstr "ප්‍රමාණය සකසන්න (_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr ""
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:87 ../src/menu.c:89
+msgid "Always on _Top"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "සැමවිටම දෘශ්‍ය වැඩබිම මත (_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "මෙම වැඩබිම මත පමණි (_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "වැඩබිම වමට ගෙන යන්න (_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "වැඩබිම දකුණට ගෙන යන්න (_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "වැඩබිම ඉහලට ගෙන යන්න (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "වැඩබිම පහලට ගෙන යන්න (_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/menu.c:105
+msgid "_Close"
+msgstr "වසන්න (_C)"
+
+#: ../src/menu.c:199 ../src/prefs.c:2246 ../src/prefs.c:2780
+#, c-format
+msgid "Workspace %d"
+msgstr "%d වැඩබිම"
+
+#: ../src/menu.c:208
+msgid "Workspace 1_0"
+msgstr "වැඩබිම 10 (_0)"
+
+#: ../src/menu.c:210
+#, c-format
+msgid "Workspace %s%d"
+msgstr "%s%d වැඩබිම"
+
+#: ../src/menu.c:390
+msgid "Move to Another _Workspace"
+msgstr "වෙනත් වැඩබිමකට ගෙන යන්න (_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr ""
+
+#: ../src/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr ""
+
+#: ../src/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+
+#: ../src/marco-dialog.c:107
+msgid "_Wait"
+msgstr "විරාමය (_W)"
+
+#: ../src/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "බලපෑමෙන් ඉවත් වීම (_F)"
+
+#: ../src/marco-dialog.c:206
+msgid "Title"
+msgstr "සිරස්තලය"
+
+#: ../src/marco-dialog.c:218
+msgid "Class"
+msgstr ""
+
+#: ../src/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+
+#: ../src/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:4
+msgid "Action on title bar middle-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:5
+msgid "Action on title bar right-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:6
+msgid "Activate window menu"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:7
+msgid "Arrangement of buttons on the titlebar"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:9
+msgid "Automatically raises the focused window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:10
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:11
+msgid "Close window"
+msgstr "කවුළුව වසන්න"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Commands to run in response to keybindings"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:13
+msgid "Compositing Manager"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:14
+msgid "Control how new windows get focus"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:15
+msgid "Current theme"
+msgstr "දැනට ඇති තේමාව"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:17
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:19
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:20
+msgid "Enable Visual Bell"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:21
+msgid "Hide all windows and focus desktop"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:22
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:23
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:24
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:25
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:26
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:27
+msgid "Lower window below other windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:28
+msgid "Maximize window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:29
+msgid "Maximize window horizontally"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:30
+msgid "Maximize window vertically"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:31
+msgid "Minimize window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:32
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move backwards between panels and the desktop with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move backwards between windows immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move backwards between windows of an application immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move backwards between windows of an application with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move between panels and the desktop with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move between windows immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move between windows of an application immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move between windows of an application with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move between windows with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move focus backwards between windows using popup display"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window one workspace down"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window one workspace to the left"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window one workspace to the right"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window one workspace up"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to east side of screen"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to north side of screen"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to north-east corner"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:53
+msgid "Move window to north-west corner"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:54
+msgid "Move window to south side of screen"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:55
+msgid "Move window to south-east corner"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:56
+msgid "Move window to south-west corner"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:57
+msgid "Move window to west side of screen"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:58
+msgid "Move window to workspace 1"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:59
+msgid "Move window to workspace 10"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:60
+msgid "Move window to workspace 11"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:61
+msgid "Move window to workspace 12"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:62
+msgid "Move window to workspace 2"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:63
+msgid "Move window to workspace 3"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:64
+msgid "Move window to workspace 4"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:65
+msgid "Move window to workspace 5"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:66
+msgid "Move window to workspace 6"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:67
+msgid "Move window to workspace 7"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:68
+msgid "Move window to workspace 8"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:69
+msgid "Move window to workspace 9"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:70
+msgid "Name of workspace"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:71
+msgid "Number of workspaces"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:72
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:73
+msgid "Raise obscured window, otherwise lower"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:74
+msgid "Raise window above other windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:75
+msgid "Resize window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:76
+msgid "Run a defined command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:77
+msgid "Run a terminal"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:78
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Set this option to false to decouple "
+"raising from other user actions. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the bug "
+"they requested. See also http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:79
+msgid "Show the panel menu"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:80
+msgid "Show the panel run application dialog"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:81
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:82
+msgid "Switch to workspace 1"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 10"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace 11"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace 12"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace 2"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace 3"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:88
+msgid "Switch to workspace 4"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:89
+msgid "Switch to workspace 5"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:90
+msgid "Switch to workspace 6"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:91
+msgid "Switch to workspace 7"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:92
+msgid "Switch to workspace 8"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:93
+msgid "Switch to workspace 9"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:94
+msgid "Switch to workspace above this one"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:95
+msgid "Switch to workspace below this one"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:96
+msgid "Switch to workspace on the left"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:97
+msgid "Switch to workspace on the right"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:98
+msgid "System Bell is Audible"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:99
+msgid "Take a screenshot"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:100
+msgid "Take a screenshot of a window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:146
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:147
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application without a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application, using a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:151
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"The keybinding used to move focus between windows of an application without "
+"a popup window. Holding the \"shift\" key while using this binding reverses "
+"the direction of movement. The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"The keybinding used to move focus between windows of an application, using a "
+"popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while "
+"using this binding reverses the direction of movement. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:158
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:159
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:160
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:161
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:162
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:164
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:165
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:166
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:167
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:168
+msgid "The name of a workspace."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:169
+msgid "The screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:170
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:171
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:172
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:173
+msgid "The window screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:174
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another one, it raises the window above all others, "
+"and if the window is already fully visible, it lowers it below all others. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:175
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:176
+msgid ""
+"This keybinding moves a window against the north (top) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:177
+msgid ""
+"This keybinding moves a window into the east (right) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:178
+msgid ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:179
+msgid ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:180
+msgid ""
+"This keybinding moves a window into the south (bottom) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:181
+msgid ""
+"This keybinding moves a window into the south-east (bottom right) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:182
+msgid ""
+"This keybinding moves a window into the south-west (bottom left) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:183
+msgid ""
+"This keybinding moves a window into the west (left) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:184
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:185
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:186
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:187
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:188
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:189
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'minimize' which will minimize the window, and 'none' which will not do "
+"anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:190
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:191
+msgid "Toggle always on top state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:192
+msgid "Toggle fullscreen mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:193
+msgid "Toggle maximization state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:194
+msgid "Toggle shaded state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:195
+msgid "Toggle window on all workspaces"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:196
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:197
+msgid "Unmaximize window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:198
+msgid "Use standard system font in window titles"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:199
+msgid "Visual Bell Type"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:200
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:201
+msgid "Window focus mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:202
+msgid "Window title font"
+msgstr ""
+
+#: ../src/prefs.c:434
+#, c-format
+msgid "Type of %s was not integer"
+msgstr ""
+
+#: ../src/prefs.c:572 ../src/prefs.c:600 ../src/prefs.c:616 ../src/prefs.c:632
+#: ../src/prefs.c:648 ../src/prefs.c:664 ../src/prefs.c:680 ../src/prefs.c:696
+#: ../src/prefs.c:716 ../src/prefs.c:732 ../src/prefs.c:748 ../src/prefs.c:766
+#: ../src/prefs.c:782 ../src/prefs.c:801 ../src/prefs.c:817 ../src/prefs.c:852
+#: ../src/prefs.c:868 ../src/prefs.c:885 ../src/prefs.c:901 ../src/prefs.c:917
+#: ../src/prefs.c:933 ../src/prefs.c:949 ../src/prefs.c:964 ../src/prefs.c:979
+#: ../src/prefs.c:994 ../src/prefs.c:1010 ../src/prefs.c:1026
+#: ../src/prefs.c:1042 ../src/prefs.c:1058
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr ""
+
+#: ../src/prefs.c:1103
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+
+#: ../src/prefs.c:1127 ../src/prefs.c:1148 ../src/prefs.c:1705
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr ""
+
+#: ../src/prefs.c:1277
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+"range 1..128\n"
+msgstr ""
+
+#: ../src/prefs.c:1357
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+
+#: ../src/prefs.c:1599
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1659
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+
+#: ../src/prefs.c:1732
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1881
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+
+#: ../src/prefs.c:2276 ../src/prefs.c:2446
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+
+#: ../src/prefs.c:2861
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+
+#: ../src/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:410
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr ""
+
+#: ../src/screen.c:426
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+
+#: ../src/screen.c:453
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+
+#: ../src/screen.c:511
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr ""
+
+#: ../src/session.c:826 ../src/session.c:833
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:843
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ""
+
+#: ../src/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:1075
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr ""
+
+#: ../src/session.c:1110
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr ""
+
+#: ../src/session.c:1159
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/session.c:1172
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr ""
+
+#: ../src/session.c:1189
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/session.c:1247 ../src/session.c:1279
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr ""
+
+#: ../src/session.c:1351
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr ""
+
+#: ../src/session.c:1411
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr ""
+
+#: ../src/session.c:1431
+#, c-format
+msgid "Unknown element %s"
+msgstr ""
+
+#: ../src/session.c:1868
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+
+#: ../src/theme-parser.c:227 ../src/theme-parser.c:245
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr ""
+
+#: ../src/theme-parser.c:399
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:417 ../src/theme-parser.c:442
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+
+#: ../src/theme-parser.c:503
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr ""
+
+#: ../src/theme-parser.c:511
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+
+#: ../src/theme-parser.c:539 ../src/theme-parser.c:655
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+
+#: ../src/theme-parser.c:570 ../src/theme-parser.c:598
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/theme-parser.c:625
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:688
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:753
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/theme-parser.c:798 ../src/theme-parser.c:806
+#: ../src/theme-parser.c:888 ../src/theme-parser.c:985
+#: ../src/theme-parser.c:1027 ../src/theme-parser.c:1138
+#: ../src/theme-parser.c:1188 ../src/theme-parser.c:1196
+#: ../src/theme-parser.c:3074 ../src/theme-parser.c:3163
+#: ../src/theme-parser.c:3170 ../src/theme-parser.c:3177
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:922 ../src/theme-parser.c:993
+#: ../src/theme-parser.c:1035 ../src/theme-parser.c:1146
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/theme-parser.c:934 ../src/theme-parser.c:1047
+#: ../src/theme-parser.c:1158
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:1060
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:1073
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/theme-parser.c:1115
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+
+#: ../src/theme-parser.c:1206
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1217
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1225
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/theme-parser.c:1261
+msgid "Theme already has a fallback icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1273
+msgid "Theme already has a fallback mini_icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1286 ../src/theme-parser.c:1350
+#: ../src/theme-parser.c:1639 ../src/theme-parser.c:3262
+#: ../src/theme-parser.c:3316 ../src/theme-parser.c:3488
+#: ../src/theme-parser.c:3704 ../src/theme-parser.c:3742
+#: ../src/theme-parser.c:3780 ../src/theme-parser.c:3818
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1376 ../src/theme-parser.c:1463
+#: ../src/theme-parser.c:1533
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1383 ../src/theme-parser.c:1470
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1414 ../src/theme-parser.c:1428
+#: ../src/theme-parser.c:1487
+msgid "Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+
+#: ../src/theme-parser.c:1437
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1496
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1540
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1547
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1554
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1561
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1593
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1746 ../src/theme-parser.c:1856
+#: ../src/theme-parser.c:1963 ../src/theme-parser.c:2190
+#: ../src/theme-parser.c:3007
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1753
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1760 ../src/theme-parser.c:2852
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1767
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1774 ../src/theme-parser.c:2859
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1863 ../src/theme-parser.c:1970
+#: ../src/theme-parser.c:2116 ../src/theme-parser.c:2197
+#: ../src/theme-parser.c:2303 ../src/theme-parser.c:2401
+#: ../src/theme-parser.c:2621 ../src/theme-parser.c:2747
+#: ../src/theme-parser.c:2845 ../src/theme-parser.c:2919
+#: ../src/theme-parser.c:3014
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1870 ../src/theme-parser.c:1977
+#: ../src/theme-parser.c:2123 ../src/theme-parser.c:2204
+#: ../src/theme-parser.c:2310 ../src/theme-parser.c:2408
+#: ../src/theme-parser.c:2628 ../src/theme-parser.c:2754
+#: ../src/theme-parser.c:2926 ../src/theme-parser.c:3021
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1877 ../src/theme-parser.c:1984
+#: ../src/theme-parser.c:2130 ../src/theme-parser.c:2211
+#: ../src/theme-parser.c:2317 ../src/theme-parser.c:2415
+#: ../src/theme-parser.c:2635 ../src/theme-parser.c:2761
+#: ../src/theme-parser.c:2933
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1884 ../src/theme-parser.c:1991
+#: ../src/theme-parser.c:2137 ../src/theme-parser.c:2218
+#: ../src/theme-parser.c:2324 ../src/theme-parser.c:2422
+#: ../src/theme-parser.c:2642 ../src/theme-parser.c:2768
+#: ../src/theme-parser.c:2940
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2000
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2007
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2016
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2023
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2225
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2296
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2344
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/theme-parser.c:2429
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2454 ../src/theme-parser.c:2965
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2600 ../src/theme-parser.c:2733
+#: ../src/theme-parser.c:2838
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2607 ../src/theme-parser.c:2740
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2614
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2667 ../src/theme-parser.c:2789
+#: ../src/theme-parser.c:2877
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2677 ../src/theme-parser.c:2799
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2687
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3100 ../src/theme-parser.c:3216
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:3112 ../src/theme-parser.c:3228
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/theme-parser.c:3291
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3348
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3357
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3365
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3382 ../src/theme-parser.c:3473
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3418 ../src/theme-parser.c:3534
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3427
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr ""
+
+#: ../src/theme-parser.c:3436
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+
+#: ../src/theme-parser.c:3448
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr ""
+
+#: ../src/theme-parser.c:3456
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3526
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3542
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3551
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3560
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3570
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:3581
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3614
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3625
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+
+#: ../src/theme-parser.c:3639
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+
+#: ../src/theme-parser.c:3653 ../src/theme-parser.c:3675
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3664 ../src/theme-parser.c:3686
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3725
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3763
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3801
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3849
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:3869
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+
+#: ../src/theme-parser.c:3874
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3886
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/theme-parser.c:3908
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/theme-parser.c:3918 ../src/theme-parser.c:3948
+#: ../src/theme-parser.c:3953 ../src/theme-parser.c:3958
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:4180
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:4195
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/theme-parser.c:4247
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:4302
+msgid "<name> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4313
+msgid "<author> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4324
+msgid "<copyright> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4335
+msgid "<date> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4346
+msgid "<description> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4573
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr ""
+
+#: ../src/theme-parser.c:4629
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+
+#: ../src/theme-viewer.c:74
+msgid "/_Windows"
+msgstr ""
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:82
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:83
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:84
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/theme-viewer.c:85
+msgid "/Windows/Des_ktop"
+msgstr ""
+
+#: ../src/theme-viewer.c:134
+msgid "Open another one of these windows"
+msgstr ""
+
+#: ../src/theme-viewer.c:141
+msgid "This is a demo button with an 'open' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:148
+msgid "This is a demo button with a 'quit' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr ""
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr ""
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/theme-viewer.c:381
+msgid "Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:385
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:389
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/theme-viewer.c:393
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/theme-viewer.c:397
+msgid "Border"
+msgstr ""
+
+#: ../src/theme-viewer.c:725
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/theme-viewer.c:754
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/theme-viewer.c:797
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:804
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:833
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:839
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:845
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:850
+msgid "Button Layouts"
+msgstr ""
+
+#: ../src/theme-viewer.c:855
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/theme-viewer.c:902
+msgid "Window Title Goes Here"
+msgstr ""
+
+#: ../src/theme-viewer.c:1006
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:1219
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1221
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1225
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1227
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1233
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/theme-viewer.c:1237
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1240
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1303
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+
+#: ../src/theme.c:206
+msgid "top"
+msgstr "ඉහළ"
+
+#: ../src/theme.c:208
+msgid "bottom"
+msgstr "පහළ"
+
+#: ../src/theme.c:210
+msgid "left"
+msgstr "වම"
+
+#: ../src/theme.c:212
+msgid "right"
+msgstr "දකුණ"
+
+#: ../src/theme.c:226
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr ""
+
+#: ../src/theme.c:245
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+
+#: ../src/theme.c:282
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+
+#: ../src/theme.c:294
+msgid "Frame geometry does not specify size of buttons"
+msgstr ""
+
+#: ../src/theme.c:925
+msgid "Gradients should have at least two colors"
+msgstr ""
+
+#: ../src/theme.c:1051
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:1065
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:1076
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1089
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1119
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+
+#: ../src/theme.c:1130
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/theme.c:1140
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/theme.c:1187
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/theme.c:1198
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/theme.c:1208
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/theme.c:1237
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr ""
+
+#: ../src/theme.c:1496
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/theme.c:1523
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+
+#: ../src/theme.c:1537
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/theme.c:1604
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+
+#: ../src/theme.c:1661
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/theme.c:1798 ../src/theme.c:1808 ../src/theme.c:1842
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/theme.c:1850
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/theme.c:1906
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/theme.c:1915
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/theme.c:1923
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/theme.c:1933
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+
+#: ../src/theme.c:2051
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr ""
+
+#: ../src/theme.c:2080
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2142
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/theme.c:2197
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2208
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/theme.c:2449 ../src/theme.c:2471 ../src/theme.c:2492
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/theme.c:3946
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+
+#: ../src/theme.c:4422 ../src/theme.c:4447
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+
+#: ../src/theme.c:4493
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr ""
+
+#: ../src/theme.c:4603 ../src/theme.c:4610 ../src/theme.c:4617
+#: ../src/theme.c:4624 ../src/theme.c:4631
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr ""
+
+#: ../src/theme.c:4639
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/theme.c:5006 ../src/theme.c:5068 ../src/theme.c:5131
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/theme.c:5014 ../src/theme.c:5076 ../src/theme.c:5139
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#: ../src/util.c:98
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr ""
+
+#: ../src/util.c:108
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+
+#: ../src/util.c:114
+#, c-format
+msgid "Opened log file %s\n"
+msgstr ""
+
+#: ../src/util.c:231
+msgid "Window manager: "
+msgstr ""
+
+#: ../src/util.c:379
+msgid "Bug in window manager: "
+msgstr ""
+
+#: ../src/util.c:408
+msgid "Window manager warning: "
+msgstr ""
+
+#: ../src/util.c:432
+msgid "Window manager error: "
+msgstr ""
+
+#: ../src/window-props.c:192
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr ""
+
+#: ../src/window-props.c:324
+#, c-format
+msgid "%s (on %s)"
+msgstr ""
+
+#: ../src/window-props.c:1406
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+
+#. first time through
+#: ../src/window.c:5551
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:6116
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+
+#: ../src/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+
diff --git a/po/sk.po b/po/sk.po
new file mode 100644
index 00000000..f6c64d67
--- /dev/null
+++ b/po/sk.po
@@ -0,0 +1,3822 @@
+# Slovak translation for marco.
+# Copyright (C) 2001, 2002, 2003, 2005, 2007-2010 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+# Stanislav Višňovský <[email protected]>, 2001, 2002, 2003.
+# Stanislav Visnovsky <[email protected]>, 2003.
+# Marcel Telka <[email protected]>, 2005.
+# Peter Tuharsky <[email protected]>, 2007.
+# Pavol Šimo <[email protected]>, 2007, 2008, 2009, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-03-06 00:21+0000\n"
+"PO-Revision-Date: 2010-03-07 20:17+0100\n"
+"Last-Translator: Pavol Šimo <[email protected]>\n"
+"Language-Team: Slovak <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0;\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Pracovná plocha"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Správca okien"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Udalosť zvončeka"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Neznáma požiadavka na informácie o okne: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> neodpovedá."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Môžete chvíľu počkať na pokračovanie aplikácie, alebo ju môžete ukončiť."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Počkať"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Vynútiť ukončenie"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Nepodarilo sa získať názov hostiteľa: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Rozšírenie %s chýba a je potrebné pre kompozitné prostredie"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Nepodarilo sa otvoriť displej X Window System '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Stratilo sa spojenie s displejom '%s'.\n"
+"Asi sa X server vypol alebo ste ukončili/zničili\n"
+"správcu okien.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Kritická chyba V/V %d (%s) na displeji '%s'\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Iný program už používa kláves %s s modifikátormi %x ako klávesovú skratku.\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Pri spustení <tt>%s</tt> nastala chyba:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Nedefinovaný príkaz %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Nebol definovaný žiadny terminálový príkaz.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Autorské práva (C) 2001-%s Havoc Pennington, Red Hat, Inc., a ostatní\n"
+"Toto je slobodný softvér; pozrite podmienky kopírovania v zdrojových "
+"kódoch.\n"
+"Záruka sa NEPOSKYTUJE; ani na PREDAJNOSŤ alebo VHODNOSŤ PRE URČITÝ ÚČEL.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Zakázať spojenia na správcu relácií"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Nahradiť bežiaceho správcu okien správcom Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Zadať ID správy relácií"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X displej, ktorý bude použitý"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Inicializovať reláciu z uloženého súboru"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Vypísať verziu"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Používať synchrónne volania X"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Zapnúť kompozíciu"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Vypnúť kompozíciu"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Nevytvárať celoobrazovkové okná, ktoré sú maximalizované a bez dekorácií"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Nepodarilo sa prehľadať adresár s témami: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Nepodarilo sa nájsť tému. Overte, že %s existuje a obsahuje obvyklé témy.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Nepodarilo znovu spustiť: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf kľúč '%s' má nastavenú neplatnú hodnotu\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "Hodnota %d uložená v MateConf kľúči %s nie je v rozsahu od %d do %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf kľúč \"%s\" má nastavený neplatný typ\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Náhradné riešenia pre chybné aplikácie nie sú povolené. Niektoré aplikácie "
+"sa nemusia správať slušne.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Nepodarilo sa spracovať popis písma \"%s\" z MateConf kľúča %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"V konfiguračnej databáze sa našlo \"%s\", čo nie je platná hodnota pre "
+"modifikátor tlačidla myši.\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Chyba pri nastavovaní počtu pracovných plôch na %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Pracovná plocha %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"V konfiguračnej databáze sa našlo \"%s\", čo nie je platná hodnota pre "
+"klávesovú skratku \"%s\".\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Chyba pri nastavovaní názvu pracovnej plochy %d na \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Chyba pri nastavovaní stavu kompozítora: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Obrazovka %d na displeji '%s' nie je platná\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Obrazovka %d na displeji \"%s\" už má správcu okien. Skúste použiť prepínač "
+"--replace, aby sa aktuálny správca predefinoval.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Nepodarilo sa získať výber správcu okien pre obrazovku %d na displeji \"%s"
+"\".\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Obrazovka %d na displeji \"%s\" už má správcu okien\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Nepodarilo sa uvoľniť obrazovku %d na displeji \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Formát je niečo ako \"<Control>a\" alebo \"<Shift><Alt>F1\".\n"
+"\n"
+"Spracovanie je dosť liberálne a povoľuje malé aj veľké písmená a taktiež "
+"skratky ako je \"<Ctl>\" a \"<Ctrl>\". Ak nastavíte túto možnosť na "
+"špeciálnu hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna "
+"klávesová skratka."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Formát je niečo ako \"<Control>a\" alebo \"<Shift><Alt>F1\".\n"
+"\n"
+"Spracovanie je dosť liberálne a povoľuje malé aj veľké písmená a taktiež "
+"skratky ako je \"<Ctl>\" a \"<Ctrl>\". Ak nastavíte túto možnosť na "
+"špeciálnu hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna "
+"klávesová skratka.\n"
+"\n"
+"Táto klávesová skratka môže byť obrátená podržaním klávesu \"shift\"; takže "
+"\"shift\" nemôže byť jedným z použitých klávesov."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Nepodarilo sa vytvoriť priečinok '%s': %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Nepodarilo sa otvoriť súbor relácie '%s' pre zápis: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Chyba pri zápise súboru relácie '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Chyba pri zatváraní súboru relácie '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Nepodarilo sa prečítať uložený súbor relácie %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Nepodarilo sa spracovať uložený súbor relácie: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "Našiel sa atribút <marco_session>, ale ID relácie už je nastavené"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Neznámy atribút %s v prvku <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "vnorená značka <window>"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Neznámy prvok %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Tieto okná nepodporujú &quot;uložiť aktuálne nastavenie&quot; a pri budúcom "
+"prihlásení ich budete musieť znovu spustiť ručne."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Nepodarilo sa otvoriť záznam pre ladenie: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Nepodarilo sa otvoriť súbor so záznamom pomocou fdopen() %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Otvorený súbor so záznamom %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco bol skompilovaný bez podpory zobrazovania informácií\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Správca okien:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Chyba v správcovi okien:"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Varovanie správcu okien:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Chyba správcu okien:"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Okno %s nastavuje SM_CLIENT_ID na seba a nie na WM_CLIENT_LEADER, ako je "
+"uvedené v ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Okno %s nastavuje radu MWM že nie je možné zmeniť jeho veľkosť, ale "
+"nastavuje minimálnu veľkosť %d x %d a maximálnu veľkosť %d x %d. To nedáva "
+"zmysel.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Aplikácia nastavila neplatné _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (na %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (ako superpoužívateľ)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (ako %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (ako iný používateľ)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Neplatné WM_TRANSIENT_FOR okno 0x%lx nastavené pre %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Okno 0x%lx má vlastnosť %s,\n"
+"ktorá by mala mať typ %s, formát %d,\n"
+"a v skutočnosti má typ %s a formát %d, počet položiek %d.\n"
+"Asi sa jedná o chybu aplikácie, a nie správcu okien.\n"
+"Okno má titulok \"%s\", triedu \"%s\" a názov \"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Vlastnosť %s pre okno 0x%lx obsahuje neplatné UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Vlastnosť %s pre okno 0x%lx obsahuje neplatné UTF-8 pre položku %d v "
+"zozname\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Prepnúť na pracovnú plochu 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Prepnúť na pracovnú plochu 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Prepnúť na pracovnú plochu 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Prepnúť na pracovnú plochu 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Prepnúť na pracovnú plochu 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Prepnúť na pracovnú plochu 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Prepnúť na pracovnú plochu 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Prepnúť na pracovnú plochu 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Prepnúť na pracovnú plochu 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Prepnúť na pracovnú plochu 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Prepnúť na pracovnú plochu 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Prepnúť na pracovnú plochu 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Prepnúť na pracovnú plochu vľavo od aktuálnej pracovnej plochy"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Prepnúť na pracovnú plochu vpravo od aktuálnej pracovnej plochy"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Prepnúť na pracovnú plochu nad aktuálnou pracovnou plochou"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Prepnúť na pracovnú plochu pod aktuálnou pracovnou plochou"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Presúvať medzi oknami aplikácie pomocou vyskakovacieho okna"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Presúvať dozadu medzi oknami aplikácie pomocou vyskakovacieho okna"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Presúvať medzi oknami pomocou vyskakovacieho okna"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Presúvať dozadu medzi oknami pomocou vyskakovacieho okna"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Presúvať medzi panelmi a plochou pomocou vyskakovacieho okna"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Presúvať dozadu medzi panelmi a plochou pomocou vyskakovacieho okna"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Presúvať medzi oknami aplikácie okamžite"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Presúvať dozadu medzi oknami aplikácie okamžite"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Presúvať medzi oknami okamžite"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Presúvať dozadu medzi oknami okamžite"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Presúvať medzi panelmi a plochou okamžite"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Presúvať dozadu medzi panelmi a plochou okamžite"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Skryť všetky normálne okná a aktivovať plochu"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Zobraziť hlavnú ponuku panelu"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Zobraziť dialógové okno \"Spustiť aplikáciu\" z panelu"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Zachytiť obsah obrazovky"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Zachytiť obsah okna"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Spustiť terminál"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Aktivovať ponuku okna"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Prepnúť celoobrazovkový režim"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Prepnúť stav maximalizácie"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Prepnúť či bude okno vždy viditeľné nad ostatnými oknami"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximalizovať okno"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Obnoviť okno"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Prepnúť zabalenie okna"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimalizovať okno"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Zatvoriť okno"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Presunúť okno"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Zmeniť veľkosť okna"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"Prepnúť, či je okno na všetkých pracovných plochách alebo len na jednej"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Presunúť okno na pracovnú plochu 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Presunúť okno na pracovnú plochu 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Presunúť okno na pracovnú plochu 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Presunúť okno na pracovnú plochu 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Presunúť okno na pracovnú plochu 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Presunúť okno na pracovnú plochu 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Presunúť okno na pracovnú plochu 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Presunúť okno na pracovnú plochu 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Presunúť okno na pracovnú plochu 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Presunúť okno na pracovnú plochu 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Presunúť okno na pracovnú plochu 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Presunúť okno na pracovnú plochu 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Presunúť okno o jednu pracovnú plochu vľavo"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Presunúť okno o jednu pracovnú plochu vpravo"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Presunúť okno o jednu pracovnú plochu hore"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Presunúť okno o jednu pracovnú plochu dolu"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Presunúť okno dopredu ak je zakryté iným oknom, inak presunúť dozadu"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Presunúť okno dopredu nad ostatné okná"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Presunúť okno pod ostatné okná"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximalizovať okno zvisle"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximalizovať okno vodorovne"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Presunúť okno ku severozápadnému rohu (vľavo hore)"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Presunúť okno ku severovýchodnému rohu (vpravo hore)"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Presunúť okno ku juhozápadnému rohu (vľavo dole)"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Presunúť okno ku juhovýchodnému rohu (vpravo dole)"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Presunúť okno na severnú stranu obrazovky (nahor)"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Presunúť okno na južnú stranu obrazovky (nadol)"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Presunúť okno na východnú stranu obrazovky (vpravo)"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Presunúť okno na západnú stranu obrazovky (vľavo)"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Presunúť okno doprostred obrazovky"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Neimplementované) Navigácia vzhľadom k aplikáciám, nie oknám"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Reťazec popisu písma pre titulky okien. Veľkosť sa použije iba v prípade, že "
+"voľba titlebar_font_size je 0. Táto voľba je vypnutá v prípade, že je na "
+"true nastavené titlebar_uses_desktop_font."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Akcia pri dvojitom kliknutí na titulok"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Akcia pri kliknutí stredným myšítkom na titulok"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Akcia pri kliknutí pravým myšítkom na titulok"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Usporiadanie tlačidiel v titulku"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Usporiadanie tlačidiel v titulku. Hodnota je reťazec, napríklad \"menu:"
+"minimize,maximize,spacer,close\". Dvojbodka oddeľuje ľavý roh okna od "
+"pravého a názvy tlačidiel sú oddelené čiarkami. Viacnásobné použitie "
+"tlačidiel nie je povolené. Neznáme názvy tlačidiel sú potichu ignorované, "
+"takže tlačidlá pridané v budúcich verziách marco nespôsobia nefunkčnosť "
+"starších verzií. Specialny retazec \"spacer\" moze byt pouzity pre vlozenie "
+"medzery medzi dve susedne tlacidla"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Automaticky presunúť aktívne okno dopredu"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Kliknutím na okno pri podržaní tohto modifikátora sa okno presunie (ľavé "
+"kliknutie), zmení jeho veľkosť (stredné kliknutie) alebo sa zobrazí ponuka "
+"okna (pravé kliknutie). Operácie na stredné a pravé kliknutie sa dajú "
+"prehodiť pomocou nastavenia kľúča \"resize_with_right_button\". Modifikátor "
+"je vyjadrený napr. ako \"&lt;Alt&gt;\" alebo \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Príkazy spustené ako reakcia na klávesové skratky"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Správca kompozície"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Nastavenie, ako sa nové okno stane aktívnym"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Aktuálna téma"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Čakanie v milisekundách pred automatickým presunom dopredu"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Určuje, či je Marco kompozičný správca"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Určuje, či majú aplikácie alebo systém generovať zvukové pípnutia. Spolu s "
+"vizuálnym zvončekom umožňuje tiché pípanie."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Vypnúť chybné funkcie, ktoré sú vyžadované starými alebo chybnými aplikáciami"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Povoliť vizuálny zvonček"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Ak je nastavené na true, a režim aktivizácie okien je buď \"sloppy\" alebo "
+"\"myš\", potom okno v zábere sa automaticky zobudí po čase zadanom v kľúči "
+"auto_raise_delay. Toto sa nevzťahuje na prebúdzanie okna klikaním, ani na "
+"vstup do okna pomocou ťahaj-a-pusť."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ak je true, ignoruje sa titlebar_font a použije sa štandardné písmo "
+"aplikácie pre titulky okien."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Ak je true, marco bude poskytovať používateľovi menej spätnej väzby "
+"pomocou obrysov, vynechaním animácií, alebo inak. Toto pre mnohých "
+"používateľov znamená výrazné zníženie použiteľnosti, ale môže umožniť "
+"pracovať starým aplikáciam a terminálovým serverom, ktoré by inak boli "
+"prakticky nepoužiteľné. Avšak obrysy nebudú povolené pri zapnutej "
+"použiteľnosti."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Ak je true, Marco funguje v rámci aplikácií a nie okien. Je to trochu "
+"abstraktnejšie, ale všeobecne sa dá povedať, že nastavenie vzhľadom k "
+"aplikáciám sa podobá viac systému Mac a menej systému Windows. Ak urobíte "
+"okno aktívnym v režime aplikácií, všetky okná tejto aplikácie sa presunú "
+"dopredu. Kliknutie kvôli aktivácii sa oknám iných aplikácií neodovzdáva. Na "
+"druhú stranu, máloktorá aplikácia je napísaná pre mód založený na "
+"aplikáciách."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Ak je true, zhorší sa použiteľnosť, ale klesne spotreba zdrojov"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modifikátor pre upravené akcie pri kliknutí na okno"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Názov pracovnej plochy"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Počet pracovných plôch"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Počet pracovných plôch. Musí byť viac ako 0 a má pevné maximum (aby sa "
+"zabránilo zničeniu pracovného prostredia požadovaním 34 miliónov pracovných "
+"plôch)."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Spustiť definovaný príkaz"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Nastavením na true povolíte zmenu veľkosti okna pravým tlačidlom a "
+"zobrazenie ponuky okna stredným tlačidlom pri súčasnom podržaní klávesu "
+"určeného v \"mouse_button_modifier\"; nastavením na false to bude fungovať "
+"presne naopak."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Nastavenie tejto voľby na false môže viesť k chybnému správaniu, takže "
+"používateľom dôrazne neodporúčame meniť predvolenú hodnotu true. Viaceré "
+"akcie (napr. kliknutie v klientskej oblasti, presun alebo zmena veľkosti "
+"okna) zvyčajne zároveň vyzdvihnú okno ako vedľajší efekt. Nastavenie tejto "
+"voľby na false, čo sa dôrazne neodporúča, oddelí vyzdvihnutie od ostatných "
+"akcií používateľa a bude ignorovať požiadavky na vyzdvihnutie od aplikácie. "
+"Pozrite http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Dokonca aj keď "
+"má táto voľba hodnotu false, budú sa okná dať vyzdvihnúť pomocou alt-ľavý "
+"klik kdekoľvek v okne, normálnym kliknutím na dekorácie okna, alebo "
+"špeciálnymi správami od pagerov, ako sú napríklad požiadavky na aktiváciu od "
+"apletov zoznamov úloh. Táto voľba je v súčasnosti vypnutá v režime aktivácie "
+"kliknutím. Poznámka: zoznam spôsobov, ako vyzdvihnúť okno pri nastavení "
+"raise_on_click na false, nezahŕňa programové požiadavky aplikácií na "
+"vyzdvihnutie okien; takéto požiadavky budú ignorované bez ohľadu na dôvod "
+"požiadavky. Ak vyvíjate aplikáciu a nejaký používateľ sa sťažuje, že vaša "
+"aplikácia nefunguje, keď je toto nastavenie vypnuté, povedzte mu, že "
+"pokazenie správcu okien je _ich_ chybou, a že si musia nastaviť túto hodnotu "
+"naspäť na true alebo sa zmieriť s \"chybou\", ktorú si vyžiadali."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Niektoré aplikácie porušujú špecifikácie spôsobmi, ktoré vedú k chybnému "
+"správaniu správcu okien. Táto voľba prepne Marco do puritánsky správneho "
+"režimu, čo prináša jednotnejšie používateľské rozhranie, za predpokladu že "
+"nepotrebujeme spúšťať nijaké nekorektné aplikácie."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Systémový zvonček je počuteľný"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Určuje, ako má Marco implementovať vizuálne zobrazenie pípnutia "
+"aplikáciou alebo systémom. Momentálne sú platné dve hodnoty, \"fullscreen\", "
+"ktorá čiernobielo blikne celou obrazovkou a \"frame_flash\", kde blikne "
+"titulok okna, v ktorom je pípajúca aplikácia. Ak nie je možné určiť pípajúcu "
+"aplikáciu (napríklad u \"pípnutia systému\"), blikne titulok momentálne "
+"aktívneho okna."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Kľúče /apps/marco/global_keybindings/run_command_N definujú klávesové "
+"skratky odpovedajúce týmto príkazom. Stlačením skratky pre run_command_N "
+"spustíte command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Kľúč /apps/marco/global_keybindings/run_command_screenshot definuje "
+"klávesovú skratku, ktorá spustí zadaný príkaz."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Kľúč /apps/marco/global_keybindings/run_command_window_screenshot "
+"definuje klávesovú skratku, ktorá spustí zadaný príkaz."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Klávesová skratka, ktorá spustí príkaz podľa čísla v /apps/marco/"
+"keybinding_commands. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená "
+"a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+"možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude definovaná "
+"žiadna klávesová skratka."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Názov pracovnej plochy."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Príkaz pre zachytenie obrazovky"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Téma určuje vzhľad rámu okna, titulku a tak ďalej."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Čas čakania pred presunom okna dopredu, ak je auto_raise true. Hodnota je v "
+"tisícinách sekundy."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Režim aktivizácie okien má tri možné hodnoty: \"click\" znamená, že na okno "
+"sa musí kliknúť, \"sloppy\" znamená, že okno sa stane aktívnym, ak sa kurzor "
+"myši nastaví nad okno, a \"mouse\" znamená, že sa okno stane aktívnym pri "
+"ukázaní kurzorom myši a pri presune kurzoru myši mimo okno prestane byť okno "
+"aktívne."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Príkaz pre zachytenie obsahu okna"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Táto voľba určuje výsledok dvojitého kliknutia na titulok okna. Momentálne "
+"je možné použiť 'toggle_shade', ktoré rozbalí resp. zabalí okno, "
+"'toggle_maximize', ktoré maximalizuje alebo zruší maximalizáciu okna, "
+"'toggle_maximize_horizontally' a 'toggle_maximize_vertically' ktoré prepne "
+"maximalizovanie okna v horizontálnom alebo vertikálnom smere, 'minimize', "
+"ktoré okno minimalizuje, 'shade', ktoré zroluje okno nahor, 'menu', ktoré "
+"zobrazí ponuku okna, 'lower', ktoré pošle okno dozadu za všetky ostatné a "
+"'none' čo nespraví nič."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Táto voľba určuje výsledok kliknutia stredným tlačidlom na titulok okna. "
+"Momentálne je možné použiť 'toggle_shade', ktoré rozbalí resp. zabalí okno, "
+"'toggle_maximize', ktoré maximalizuje alebo zruší maximalizáciu okna, "
+"'toggle_maximize_horizontally' a 'toggle_maximize_vertically' ktoré prepne "
+"maximalizovanie okna v horizontálnom alebo vertikálnom smere, 'minimize', "
+"ktoré okno minimalizuje, 'shade', ktoré zroluje okno nahor, 'menu', ktoré "
+"zobrazí ponuku okna, 'lower', ktoré pošle okno dozadu za všetky ostatné a "
+"'none' čo nespraví nič."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Táto voľba určuje výsledok kliknutia pravým tlačidlom na titulok okna. "
+"Momentálne je možné použiť 'toggle_shade', ktoré rozbalí resp. zabalí okno, "
+"'toggle_maximize', ktoré maximalizuje alebo zruší maximalizáciu okna, "
+"'toggle_maximize_horizontally' a 'toggle_maximize_vertically' ktoré prepne "
+"maximalizovanie okna v horizontálnom alebo vertikálnom smere, 'minimize', "
+"ktoré okno minimalizuje, 'shade', ktoré zroluje okno nahor, 'menu', ktoré "
+"zobrazí ponuku okna, 'lower', ktoré pošle okno dozadu za všetky ostatné a "
+"'none' čo nespraví nič."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Táto možnosť ponúka rozšírenú kontrolu nad tým, ako sa novovytvorené okná "
+"stávajú aktívnymi. Má dve možné hodnoty: \"smart\" použije bežný "
+"používateľský režim, a \"strict\" spôsobí, že okná spustené z terminálu nie "
+"sú hneď aktívne."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Zapne vizuálnu zobrazenie pokusu aplikácie alebo systému o pípnutie alebo "
+"zvonček. To sa hodí pre slabo počujúcich ľudí alebo ak pracujete v hlučnom "
+"prostredí, alebo pri vypnutom počuteľnom zvončeku."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Použiť štandardné systémové písmo v titulkoch okna"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Typ vizuálneho zvončeka"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Určuje, či sa má okno zobudiť aj pri iných interakciách s používateľom"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Či sa bude meniť veľkosť okna pravým tlačidlom"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Režim aktivácie okna"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Písmo titulku okna"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Použitie: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Zavrieť okno"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Ponuka okna"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimalizovať okno"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximalizovať okno"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Obnoviť okno"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Zabaliť okno"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Rozbaliť okno"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Ponechať okno vždy navrchu"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Okno nemusí byť navrchu"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Vždy na viditeľnej pracovnej ploche"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Poslať okno na jedinú pracovnú plochu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimalizovať"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximalizovať"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Zrušiť ma_ximalizáciu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Zabaliť"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Rozbaliť"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Pre_miestniť"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Zmeniť veľko_sť"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Presunúť titulok na _obrazovku"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Vždy na_vrchu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Vž_dy na viditeľnej pracovnej ploche"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Len na tejto pracovnej ploche"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Presunúť na pracovnú plochu vľav_o"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Presunúť na pracovnú plochu v_pravo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Presunúť na pracovnú plochu _hore"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Presunúť na pracovnú plochu _dole"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Zavrieť"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Pracovná plocha %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Pracovná plocha 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Pracovná plocha %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "P_resunúť na inú pracovnú plochu"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "hore"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "dole"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "vľavo"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "vpravo"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "geometria rámca neurčuje rozmer \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "geometria rámca neurčuje rozmer \"%s\" pre okraj \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Pomer stránok tlačidla %g nie je použiteľný."
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Geometria rámca neurčuje rozmer tlačidiel"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Prechody by mali mať aspoň dve farby"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Špecifikácia farby GTK musí mať stav v hranatých zátvorkách, napr. gtk:fg"
+"[NORMAL], kde NORMAL je stav. Nepodarilo sa spracovať \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Špecifikácia farby GTK musí mať stav uzavretý v hranatých zátvorkách, napr. "
+"gtk:fg[NORMAL], kde NORMAL je stav. Nepodarilo sa spracovať \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "V špecifikácii farby je nerozpoznaný stav \"%s\""
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "V špecifikácii farby je nerozpoznaný komponent \"%s\""
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Formát miešania je \"blend/bg_color/fg_color/alpha\", \"%s\" tomu neodpovedá"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Nepodarilo sa spracovať hodnotu alfa \"%s\" v miešanej farbe"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Hodnota alfa \"%s\" v miešanej farbe nie je medzi 0.0 a 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Formát tieňa je \"shade/base_color/factor\", \"%s\" tomu neodpovedá"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Nepodarilo sa spracovať hodnotu tieňa \"%s\" v tieňovanej farbe"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Faktor tieňa \"%s\" v tieňovanej farbe je záporný."
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Nepodarilo sa spracovať farbu \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Výraz umiestnenia obsahuje znak '%s', ktorý nie je povolený"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Výraz umiestnenia obsahuje reálne číslo '%s', ktoré nie je možné spracovať."
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Výraz umiestnenia obsahuje celé číslo '%s', ktoré nie je možné spracovať."
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Výraz umiestnenia obsahuje neznámy operátor na začiatku tohto textu: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Výraz umiestnenia je prázdny alebo nerozpoznaný"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Výsledok výrazu umiestnenia je delenie nulou"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Výraz umiestnenia sa snaží použiť operátor modulo na číslo s desatinnými "
+"miestami"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Výraz umiestnenia obsahuje operátor \"%s\" tam, kde sa očakáva operand"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Výraz umiestnenia obsahuje operand tam, kde sa očakáva operátor"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Výraz umiestnenia skončil operátorom namiesto operandom"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Výraz umiestnenia obsahuje operátor \"%c\" za operátorom \"%c\" bez "
+"operandov medzi nimi."
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Výraz umiestnenia obsahuje neznámu premennú alebo konštantu \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Výraz umiestnenia spôsobil preťaženie vyrovnávacej pamäte analyzátora"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Výraz umiestnenia obsahuje zatváraciu zátvorku bez otváracej zátvorky"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Výraz umiestnenia má otváraciu zátvorku bez zatváracej zátvorky"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Výraz umiestnenia asi neobsahuje žiadne operátory ani operandy"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Téma obsahuje výraz, ktorý spôsobil chybu: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Pre tento štýl rámca musí byť uvedené <button function=\"%s\" state=\"%s\" "
+"draw_ops=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Chýbajúce <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Nepodarilo sa prečítať tému \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Pre tému \"%s\" nie je nastavené <%s>"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Pre typ okna \"%s\" nie je sada štýlov v téme \"%s\", pridajte prvok <window "
+"type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "Používateľské konštanty musia začínať veľkým písmenom, \"%s\" nezačína"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konštanta \"%s\" už je definovaná"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Chýbajúci atribút \"%s\" v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Riadok %d znak %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atribút \"%s\" je uvedený dvakrát v jednom prvku <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atribút \"%s\" je neplatný v tomto kontexte v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Nepodarilo sa spracovať \"%s\" ako celé číslo"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Nerozpoznané znaky na konci \"%s\" v reťazci \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Celé číslo %ld musí byť kladné"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Celé číslo %ld je príliš veľké, maximum je %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+"Nepodarilo sa spracovať \"%s\" ako číslo s plávajúcou desatinnou čiarkou"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Pravdivostná hodnota musí byť \"true\" alebo \"false\", nie \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Uhol musí byť medzi 0.0 a 360.0, a teraz je %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa musí byť medzi 0.0 (neviditeľné) a 1.0 (úplne nakreslené), a je %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Neplatná mierka titulku \"%s\" (musí byť xx-small,x-small,small,medium,large,"
+"x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "Názov <%s> pre \"%s\" použitý dvakrát"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Nedefinovaný rodič <%s> pre \"%s\""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "Nedefinovaná geometria <%s> pre \"%s\""
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> musí uvádzať buď geometriu alebo rodiča, ktorý má geometriu"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Ak má byť hodnota alpha zmysluplná, tak musíte vybrať nejaké pozadie"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Neznámy typ \"%s\" v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Neznámy style_set \"%s\" v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Typ okna \"%s\" už má priradenú sadu štýlov"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Prvok <%s> nie je povolený v <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Pre tlačidlá nie je možné zadať zároveň \"button_width\"/\"button_height\" "
+"spolu s \"aspect_ratio\""
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Vzdialenosť \"%s\" je neznáma"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Pomer strán \"%s\" je neznámy"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Okraj \"%s\" je neznámy"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Chýba atribút \"start_angle\" alebo \"from\" v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Chýba atribút \"extent_angle\" alebo \"to\" v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Nerozpoznaná hodnota \"%s\" pre typ prechodu"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Nerozpoznaný typ výplne \"%s\" pre prvok <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Nerozpoznaný stav \"%s\" pre prvok <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Nerozpoznaný tieň \"%s\" pre prvok <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Nerozpoznaná šípka \"%s\" pre prvok <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nebola definovaná <draw_ops> nazvaná \"%s\""
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Pridaním draw_ops \"%s\" na tomto mieste vznikne cyklická referencia"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Neznáma pozícia \"%s\" pre časť rámca"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Štýl rámca už má časť na pozícii %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nebola definovaná <draw_ops> nazvaná \"%s\""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Neznáma funkcia \"%s\" pre tlačidlo"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Funkcia tlačidla \"%s\" v tejto verzii neexistuje (%d, potrebná %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Neznámy stav \"%s\" pre tlačidlo"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Štýl rámca už má tlačidlo pre funkciu %s stav %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" nie je platná hodnota pre atribút fokusu"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" nie je platná hodnota pre atribút stavu"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Štýl \"%s\" nie je definovaný"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" nie je platná hodnota pre atribút zmeny veľkosti"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Pre prvok <%s> by nemal byť atribút \"resize\" pre stavy maximalizované/"
+"zabalené"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Pre prvok <%s> by nemal byť atribút \"resize\" pre maximalizované stavy"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Pre stav %s zmena veľkosti %s fokus %s už bol štýl definovaný"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Pre stav %s fokus %s už bol štýl definovaný"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Pre prvok <piece> nie je možné mať dve draw_ops (téma obsahuje atribút "
+"draw_ops a aj prvok <draw_ops>, prípadne dva rovnaké prvky)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Pre prvok <button> nie je možné mať dve draw_ops (téma obsahuje atribút "
+"draw_ops a aj prvok <draw_ops>, prípadne dva rovnaké prvky)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Pre prvok <menu_icon> nie je možné mať dve draw_ops (téma obsahuje atribút "
+"draw_ops a aj prvok <draw_ops>, prípadne dva rovnaké prvky)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Najvyšším prvkom témy musí byť <marco_theme>, nie <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Prvok <%s> nie je povolený v popisnom prvku name/author/date/description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Prvok <%s> nie je povolený v prvku <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Prvok <%s> nie je povolený v prvku vzdialenosti/okrajov/pomeru strán"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Prvok <%s> nie je povolený v prvku operácie pre kreslenie"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Prvok <%s> nie je povolený v prvku <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Pre časť rámu nie je uvedená operácia draw_ops"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Pre tlačidlo nie je uvedená operácia draw_ops"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "V prvku <%s> nie je povolený žiadny text"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> uvedený dvakrát pre túto tému"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Nepodarilo sa nájsť platný súbor pre tému%s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Súbor témy %s neobsahuje koreňový prvok <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Okná"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Okná/odtrhávatko"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Okná/_Dialógové okno"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Okná/_Modálne dialógové okno"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Okná/_Nástroje"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Okná/Ú_vodná obrazovka"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Okná/_Horný dok"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Okná/_Spodný dok"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Okná/Ľ_avý dok"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Okná/_Pravý dok"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Okná/_Všetky doky"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Okná/Praco_vná plocha"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Toto je ukážková správa v ukážkovom dialógovom okne"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Vymyslená položka ponuky %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Okno len s okrajom"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Lišta"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normálne aplikačné okno"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialógové okno"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modálne dialógové okno"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta nástrojov"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Vypnúť ponuku"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Okraj"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test rozloženia tlačidiel %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekúnd pre vykreslenie jedného rámca okna"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Použitie: marco-theme-viewer [NÁZOVTÉMY]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Chyba pri načítavaní témy: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Téma \"%s\" načítaná za %g sekúnd\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Obyčajné písmo nadpisu"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Malé písmo nadpisu"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Veľké písmo nadpisu"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Rozloženia tlačidiel"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Test rýchlosti"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Sem príde názov okna"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Vykreslených %d rámcov za %g sekúnd na strane klienta (%g milisekúnd na "
+"rámec) a %g sekúnd celkového času vrátane zdrojov X servera (%g milisekúnd "
+"na rámec)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "test výrazu polohy vrátil TRUE, ale nastavil chybu"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "test výrazu polohy vrátil FALSE, ale nenastavil chybu"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Bola očakávaná chyba, ale žiadna nenastala"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Bola očakávaná chyba %d, ale nastala %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Chyba nebola očakávaná, ale bola vrátená: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "hodnota x bola %d, očakávaná bola %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "hodnota y bola %d, očakávaná bola %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d výrazov pre súradnice analyzovaných za %g sekúnd (priemer %g sekúnd)\n"
+
+#~ msgid ""
+#~ "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#~ "\n"
+#~ "<i>You may choose to wait a short while for it to continue or force the "
+#~ "application to quit entirely.</i>"
+#~ msgstr ""
+#~ "<big><b><tt>%s</tt> neodpovedá.</b></big>\n"
+#~ "\n"
+#~ "<i>Môžete chvíľu počkať na pokračovanie aplikácie, alebo ju môžete "
+#~ "násilne ukončiť.</i>"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Otvoriť ďalšie z týchto okien"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Toto je ukážkové tlačidlo s ikonou 'otvoriť'"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Toto je ukážkové tlačidlo s ikonou 'ukončiť'"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Chyba pri spustení dialógu marco pre varovanie o aplikácii, ktorá "
+#~ "nepodporuje správu relácií: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Titulok"
+
+#~ msgid "Class"
+#~ msgstr "Trieda"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Pri spustení \"%s\" nastala chyba:\n"
+#~ "%s"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Nepodarilo sa spracovať správu \"%s\" z dialógového procesu\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Chyba pri čítaní z procesu pre zobrazenie dialógu: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Chyba pri spustení dialógu marco pre nútené ukončenie aplikácie: %s\n"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "<author> uvedený dvakrát pre túto tému"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> uvedený dvakrát pre túto tému"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> uvedený dvakrát pre túto tému"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> uvedený dvakrát pre túto tému"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Chyba pri spustení dialógu marco pre zobrazenie chyby príkazu: %s\n"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of anapplication, using "
+#~ "a popup window."
+#~ msgstr "Prepnúť ihneď medzi oknami pomocou vyskakovacieho okna"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windowsof an "
+#~ "application, using a popup window."
+#~ msgstr "Prepnúť ihneď dozadu oknami aplikácie s vyskakovacím oknom"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window."
+#~ msgstr "Prepnúť aktívne okno naspäť pomocou vyskakovacieho okna"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window."
+#~ msgstr "Prepnúť aktívne okno naspäť pomocou vyskakovacieho okna"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window."
+#~ msgstr "Prepnúť medzi panelmi a plochou pomocou vyskakovacieho okna"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window."
+#~ msgstr ""
+#~ "Prepnúť ihneď naspäť medzi panelmi a plochou pomocou vyskakovacieho okna"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window."
+#~ msgstr "Prepnúť ihneď medzi oknami pomocou vyskakovacieho okna"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window."
+#~ msgstr "Prepnúť ihneď dozadu oknami aplikácie s vyskakovacím oknom"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window."
+#~ msgstr "Prepnúť aktívne okno naspäť pomocou vyskakovacieho okna"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window."
+#~ msgstr "Prepnúť medzi panelmi a plochou pomocou vyskakovacieho okna"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window."
+#~ msgstr ""
+#~ "Prepnúť ihneď naspäť medzi panelmi a plochou pomocou vyskakovacieho okna"
+
+#, fuzzy
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog box."
+#~ msgstr "Zobraziť aplikačné dialógové okno pre spustenie programu panelu"
+
+#, fuzzy
+#~ msgid "The keybinding used to toggle fullscreen mode."
+#~ msgstr "Prepnúť celoobrazovkový režim"
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Prepnúť vždy navrchu"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Odmaximalizovať okno"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace to the left."
+#~ msgstr "Presunúť okno o jednu pracovnú plochu vľavo"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace to the right."
+#~ msgstr "Presunúť okno o jednu pracovnú plochu vpravo"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace up."
+#~ msgstr "Presunúť okno o jednu pracovnú plochu hore"
+
+#, fuzzy
+#~ msgid "The keybinding used to move a window one workspace down."
+#~ msgstr "Presunúť okno o jednu pracovnú plochu dolu"
+
+#, fuzzy
+#~ msgid "This keybinding raises the window above other windows."
+#~ msgstr "Presunúť okno dopredu nad ostatné okná"
+
+#, fuzzy
+#~ msgid "This keybinding lowers a window below other windows."
+#~ msgstr "Presunúť okno pod ostatné okná"
+
+#, fuzzy
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the screen."
+#~ msgstr "Presunúť okno na severnú stranu obrazovky"
+
+#, fuzzy
+#~ msgid "This keybinding moves a window into the center of the screen."
+#~ msgstr "Presunúť okno doprostred obrazovky"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Veľa akcií (napríklad kliknutie do oblasti klienta, premiestnenie alebo "
+#~ "zmena veľkosti okna) obyčajne vyzdvihne okno do popredia ako vedľajší "
+#~ "efekt. Nastavením tohto na false, od čoho dôrazne odrádzame, izoluje "
+#~ "vyzdvihnutie od ostatných používateľských akcií a ignoruje požiadavky od "
+#~ "aplikácií. Viac informácií na http://bugzilla.gnome.org/show_bug.cgi?"
+#~ "id=445447#c6"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Zrušiť maximalizáciu okno"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Neznámy atribút %s v prvku <marco_session>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Neznámy atribút %s v prvku <maximized>"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Neznámy atribúť %s v prvku <geometry>"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu nad aktuálnou "
+#~ "pracovnou plochou. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké "
+#~ "písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte "
+#~ "túto možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu pod aktuálnou "
+#~ "pracovnou plochou. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké "
+#~ "písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte "
+#~ "túto možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu vľavo od aktuálnej "
+#~ "parcovnej plochy. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená "
+#~ "a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu vpravo od aktuálnej "
+#~ "pracovnej plochy. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená "
+#~ "a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 1. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 10. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 11. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 12. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 2. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 3. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 4. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 5. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 6. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 7. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 8. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá prepne na pracovnú plochu 9. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá pre aktiváciu ponuky okna. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá pre vstup do \"režimu presunu\" a začiatok "
+#~ "presunu okna pomocou klávesnice. Formát je \"&lt;Control&gt;a\" alebo "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť liberálne a umožňuje "
+#~ "malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;"
+#~ "\". Ak nastavíte túto možnosť na špeciálnu hodnotu \"disabled\", pre túto "
+#~ "akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá pre vstup do \"režimu zmeny veľkosti\" a "
+#~ "začiatok zmeny veľkosti okna pomocou klávesnice. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá pre skrytie všetkých normálnych okien a "
+#~ "nastavenie ako aktívne pozadie plochy. Formát je \"&lt;Control&gt;a\" "
+#~ "alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť liberálne a "
+#~ "umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;"
+#~ "Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu \"disabled\", "
+#~ "pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá pre maximalizáciu okna. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá pre minimalizáciu okna. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna o jednu pracovnú plochu dolu. "
+#~ "Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a skratky "
+#~ "ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na "
+#~ "špeciálnu hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna "
+#~ "klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna o jednu pracovnú plochu vľavo. "
+#~ "Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a skratky "
+#~ "ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na "
+#~ "špeciálnu hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna "
+#~ "klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna o jednu pracovnú plochu vpravo. "
+#~ "Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a skratky "
+#~ "ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na "
+#~ "špeciálnu hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna "
+#~ "klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna o jednu pracovnú plochu hore. "
+#~ "Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a skratky "
+#~ "ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na "
+#~ "špeciálnu hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna "
+#~ "klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 1. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 10. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 11. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 12. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 2. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 3. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 4. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 5. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 6. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 7. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 8. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na presun okna na pracovnú plochu 9. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska dozadu medzi panelmi a "
+#~ "plochou so zobrazením vyskakovacieho okna. Formát je \"&lt;Control&gt;a\" "
+#~ "alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť liberálne a "
+#~ "umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;"
+#~ "Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu \"disabled\", "
+#~ "pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska dozadu medzi panelmi a "
+#~ "plochou bez zobrazenia vyskakovacieho okna. Formát je \"&lt;Control&gt;a"
+#~ "\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť liberálne a "
+#~ "umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;"
+#~ "Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu \"disabled\", "
+#~ "pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska dozadu medzi oknami bez "
+#~ "zobrazenia vyskakovacieho okna. Držaním \"shift\" spolu s touto "
+#~ "klávesovou skratkou znovu obrátite smer prepínania. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska dozadu medzi oknami so "
+#~ "zobrazením vyskakovacieho okna. Držaním \"shift\" spolu s touto "
+#~ "klávesovou skratkou znovu obrátite smer prepínania. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska dozadu medzi oknami bez "
+#~ "zobrazenia vyskakovacieho okna. Držaním \"shift\" spolu s touto "
+#~ "klávesovou skratkou znovu obráti smer prepínania. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska dozadu medzi oknami so "
+#~ "zobrazením vyskakovacieho okna. Držaním \"shift\" spolu s touto "
+#~ "klávesovou skratkou znovu obráti smer prepínania. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska medzi panelmi a pracovnou "
+#~ "plochou so zobrazním vyskakovacieho okna. Formát je \"&lt;Control&gt;a\" "
+#~ "alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť liberálne a "
+#~ "umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;"
+#~ "Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu \"disabled\", "
+#~ "pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska medzi panelmi a pracovnou "
+#~ "plochou bez zobrazenia vyskakovacieho okna. Formát je \"&lt;Control&gt;a"
+#~ "\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť liberálne a "
+#~ "umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;"
+#~ "Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu \"disabled\", "
+#~ "pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska medzi oknami bez "
+#~ "zobrazenia vyskakovacieho okna. Držaním \"shift\" spolu s touto "
+#~ "klávesovou skratkou znovu obrátite smer prepínania. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska medzi oknami so zobrazením "
+#~ "vyskakovacieho okna. (Tradične &lt;Alt&gt;F6) Držaním \"shift\" spolu s "
+#~ "touto klávesovou skratkou znovu obrátite smer prepínania. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska medzi oknami bez "
+#~ "zobrazenia vyskakovacieho okna. (Tradične &lt;Alt&gt;Tab) Držaním \"shift"
+#~ "\" spolu s touto klávesovou skratkou znovu obráti smer prepínania. Formát "
+#~ "je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie "
+#~ "je dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie ohniska medzi oknami so zobrazením "
+#~ "vyskakovacieho okna. (Tradične &lt;Alt&gt;Tab) Držaním \"shift\" spolu s "
+#~ "touto klávesovou skratkou znovu obráti smer prepínania. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie, či je okno vždy navrchu. Okno, "
+#~ "ktoré je vždy navrchu bude vždy viditeľné nad ostatnými prekrývajúcimi sa "
+#~ "oknami. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a "
+#~ "skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie celoobrazovkového režimu. Formát "
+#~ "je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie "
+#~ "je dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie maximalizácie. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie zabalenie/rozbalenie okna. Formát "
+#~ "je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie "
+#~ "je dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na prepnutie, či je okno na všetkých pracovných "
+#~ "plochách alebo iba na jednej. Formát je \"&lt;Control&gt;a\" alebo \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť liberálne a umožňuje malé aj "
+#~ "veľké písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak "
+#~ "nastavíte túto možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu "
+#~ "nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka použitá na zrušenie maximalizácie okna. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá zobrazí dialógové okno panelu \"Spustiť aplikáciu"
+#~ "\". Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a skratky "
+#~ "ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na "
+#~ "špeciálnu hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna "
+#~ "klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá spustí terminál. Formát je \"&lt;Control&gt;a\" "
+#~ "alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť liberálne a "
+#~ "umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;"
+#~ "Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu \"disabled\", "
+#~ "pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá spustí nástroj panelu na zachytenie obsahu okna. "
+#~ "Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. "
+#~ "Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a skratky "
+#~ "ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na "
+#~ "špeciálnu hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna "
+#~ "klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá spustí nástroj panelu pre zachytenie obsahu "
+#~ "obrazovky. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a "
+#~ "skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Klávesová skratka, ktorá zobrazí hlavnú ponuku panelu. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka mení, či je okno nad alebo pod ostatnými oknami. "
+#~ "Ak je okno zakryté iným oknom, posunie ho dopredu pred ostatné okná. Ak "
+#~ "už je okno plne viditeľné, posunie ho dozadu za ostatné okná. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka presunie okno za ostatné okná. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka presunie okno voči severnej (hornej) strane "
+#~ "obrazovky. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a "
+#~ "skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the center of the screen. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka presunie okno doprostriedku obrazovky. Formát je "
+#~ "\"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je "
+#~ "dosť liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;"
+#~ "Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu "
+#~ "hodnotu \"disabled\", pre túto akciu nebude definovaná žiadna klávesová "
+#~ "skratka."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka presunie okno voči východnej (pravej) strane "
+#~ "obrazovky. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a "
+#~ "skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka presunie okno do severovýchodného (pravého "
+#~ "horného) rohu obrazovky. Formát je \"&lt;Control&gt;a\" alebo \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť liberálne a umožňuje malé aj "
+#~ "veľké písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak "
+#~ "nastavíte túto možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu "
+#~ "nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka presunie okno do severozápadného (ľavého horného) "
+#~ "rohu obrazovky. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená "
+#~ "a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka presunie okno voči južnej (spodnej) strane "
+#~ "obrazovky. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a "
+#~ "skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka presunie okno do juhovýchodného (pravého dolného) "
+#~ "rohu obrazovky. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená "
+#~ "a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka presunie do juhozápadného (ľavého dolného) rohu "
+#~ "obrazovky. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a "
+#~ "skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka presunie okno voči západnej (ľavej) strane "
+#~ "obrazovky. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a "
+#~ "skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka presunie okno pred ostatné okná. Formát je \"&lt;"
+#~ "Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;F1. Spracovanie je dosť "
+#~ "liberálne a umožňuje malé aj veľké písmená a skratky ako je \"&lt;Ctl&gt;"
+#~ "\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto možnosť na špeciálnu hodnotu "
+#~ "\"disabled\", pre túto akciu nebude definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka zmení veľkosť okna tak, aby vyplnilo celý "
+#~ "vodorovný priestor. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké "
+#~ "písmená a skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte "
+#~ "túto možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Táto klávesová skratka zmení veľkosť okna tak, aby vyplnilo celý zvislý "
+#~ "priestor. Formát je \"&lt;Control&gt;a\" alebo \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1. Spracovanie je dosť liberálne a umožňuje malé aj veľké písmená a "
+#~ "skratky ako je \"&lt;Ctl&gt;\" a \"&lt;Ctrl&gt;\". Ak nastavíte túto "
+#~ "možnosť na špeciálnu hodnotu \"disabled\", pre túto akciu nebude "
+#~ "definovaná žiadna klávesová skratka."
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Chýbajúci atribút \"%s\" v prvku <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Táto téma už má základnú ikonu"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Táto téma už má základnú mini ikonu"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"name\" v prvku <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"value\" v prvku <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"top\" v prvku <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"bottom\" v prvku <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"left\" v prvku <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"right\" v prvku <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"color\" v prvku <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"x1\" v prvku <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"y1\" v prvku <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"x2\" v prvku <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"y2\" v prvku <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"y\" v prvku <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"width\" v prvku <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"height\" v prvku <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"start_angle\" v prvku <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"extent_angle\" v prvku <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"alpha\" v prvku <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"type\" v prvku <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"filename\" v prvku <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"state\" v prvku <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"shadow\" v prvku <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Chýbajúci atribút \"arrow\" v prvku <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Chýbajúci atribút \"value\" v prvku <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Chýbajúci atribút \"position\" v prvku <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Chýbajúci atribút \"function\" v prvku <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Chýbajúci atribút \"state\" v prvku <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Chýbajúci atribút \"focus\" v prvku <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Chýbajúci atribút \"style\" v prvku <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Chýbajúci atribút \"resize\" v prvku <%s>"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "Nepodarilo sa spracovať %s ako celé číslo"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d uložená v MateConf kľúči %s nie je rozumná cursor_size; musí byť medzi "
+#~ "1..128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "Hodnota %d uložená v MateConf kľúči %s nie je rozumný počet pracovných "
+#~ "plôch, maximum je %d\n"
diff --git a/po/sl.po b/po/sl.po
new file mode 100644
index 00000000..8a2283ca
--- /dev/null
+++ b/po/sl.po
@@ -0,0 +1,2078 @@
+# Slovenian translations for marco.
+# Copyright (C) 2005-2006 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+#
+# Andraž Tori <[email protected]>, 2000.
+# Matjaž Horvat <[email protected]>, 2006.
+# Matej Urbančič <[email protected]>, 2007 - 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2010-01-26 00:30+0000\n"
+"PO-Revision-Date: 2010-08-17 14:36+0100\n"
+"Last-Translator: Matej Urbančič <[email protected]>\n"
+"Language-Team: Slovenian MATE Translation Team <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n%100==4 ? 3 : 0);\n"
+"X-Poedit-Language: Slovenian\n"
+"X-Poedit-Country: SLOVENIA\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Namizje"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Upravljanje oken"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Dogodek zvonjenja"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Zahteva izpisa podrobnosti neznanega okna: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> okno je neodzivno."
+
+#: ../src/core/delete.c:101
+msgid "You may choose to wait a short while for it to continue or force the application to quit entirely."
+msgstr "Lahko malo počakate, če se program morda zbudi, ali pa vsiljeno končate njegovo delovanje."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Počakaj"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Vsili končanje"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Ni mogoče pridobiti gostitelja z imenom: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Manjka razširitev %s, ki je ključna za sestavljanje"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Ni mogoče odpreti zaslona '%s' okenskega sistema X\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Izgubljena povezava z zaslonom '%s';\n"
+"najverjetneje se je strežnik X ugasnil ali pa je vsiljeno izklopljen\n"
+"upravljalnik oken.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Usodna napaka IO %d (%s) na zaslonu '%s'.\n"
+
+# G:1 K:0 O:0
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid "Some other program is already using the key %s with modifiers %x as a binding\n"
+msgstr "Tipko %s s spremenilnikom %x uporablja že nek drug program\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Ob zagonu <tt>%s</tt> je prišlo od napake:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Ukaz %d ni določen.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Ni navedenih ukazov terminala.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Avtorske pravice pridržane (C) 2001-%s Havoc Pennington, Red Hat in drugi\n"
+"To je prosto programje; za pogoje kopiranja si poglejte izvorno kodo.\n"
+"Program prihaja BREZ KAKRŠNIHKOLI ZAGOTOVIL delovanja.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Onemogoči povezavo z upravljalnikom sej"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Zamenjaj trenutni upravljalnik oken z Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Določi ID upravljanja seje"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Zaslon X, ki naj se uporabi"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Začni sejo iz shranjene datoteke"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Izpiši različico"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Naredi klice X usklajene"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Vključi skladanje"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Izključi skladanje"
+
+#: ../src/core/main.c:322
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "Ne ustvari celozaslonskih oken, ki so razpeta in nimajo oblikovanja"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Ni mogoče preiskati mape tem: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "Ni mogoče najti teme! Prepričajte se, da %s obstaja in vsebuje običajne teme.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Ni mogoče znova začeti: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508
+#: ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Ključ MateConf '%s' je nastavljen na neveljavno vrednost\n"
+
+#: ../src/core/prefs.c:589
+#: ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d shranjen v MateConf ključu %s je izven meja med %d in %d\n"
+
+# G:1 K:0 O:0
+#: ../src/core/prefs.c:633
+#: ../src/core/prefs.c:710
+#: ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822
+#: ../src/core/prefs.c:1115
+#: ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148
+#: ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Ključ MateConf \"%s\" je nastavljen na neveljavno vrsto\n"
+
+#: ../src/core/prefs.c:1234
+msgid "Workarounds for broken applications disabled. Some applications may not behave properly.\n"
+msgstr "Obhodi za pokvarjene programe so izključeni. Nekateri programi se morda ne bodo pravilno obnašali.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Ni mogoče razčleniti opisa \"%s\" iz ključa MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for mouse button modifier\n"
+msgstr "\"%s\", ki je bil najden v podatkovni zbirki nastavitev ni veljaven spremenilnik za miškine gumbe.\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Napaka med nastavljanjem števila delovnih površin na %d: %s\n"
+
+# G:1 K:0 O:0
+#: ../src/core/prefs.c:1953
+#: ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Delovna površina %d"
+
+#: ../src/core/prefs.c:1983
+#: ../src/core/prefs.c:2161
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for keybinding \"%s\"\n"
+msgstr "\"%s\" najden v podatkovni zbirki nastavitev ni veljaven ključ za tipkovno vez \"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Napaka med nastavljanjem imena delovne površine %d na \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Napaka med nastavljanjem stanja skladanja: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Zaslon %d na prikazu '%s' ni veljaven\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager; try using the --replace option to replace the current window manager.\n"
+msgstr "Zaslon %d na prikazu \"%s\" že ima upravljalnik oken; poskušajte uporabiti možnost --replace za zamenjavo trenutnega upravljalnika zaslona.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Ni mogoče dobiti izbire upravljalnika oken na zaslonu %d prikaz \"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Zaslon %d na prikazu \"%s\" že ima določen upravljalnik oken\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Ni mogoče sprostiti prikaza %d na zalonu \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Zapis je oblikovan kot \"<Control>a\" ali pa <Shift><Alt>F1\".\n"
+"\n"
+"Razčlenjevalnik je precej popustljiv in dopušča različno velikost črk ter okrajšave kot npr. \"<Ctl>\" in \"<Ctrl>\". V primeru, da uporabit možnost \"disabled\", potem za to dejanje ne bo tipkovne bližnjice."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Zapis je oblikovan kot \"<Control>a\" ali pa <Shift><Alt>F1\".\n"
+"\n"
+"Razčlenjevalnik je precej popustljiv in dopušča različno velikost črk ter okrajšave kot npr. \"<Ctl>\" in \"<Ctrl>\". V primeru, da uporabite možnost \"disabled\", potem za to dejanje ne bo bližnjice tipk.\n"
+"\n"
+"Tipkovno bližnjico je lahko povrnete s pritiskom tipke \"shift\" zato tipka \"shift\" ne more biti del tipkovne bližnjice."
+
+#: ../src/core/session.c:850
+#: ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Ni mogoče ustvariti mape '%s': %s\n"
+
+# G:2 K:0 O:0
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Ni mogoče odpreti datoteke seje '%s' za pisanje: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Napaka med zapisovanjem datoteke seje '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Napaka med zapiranjem datoteke seje '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Ni mogoče prebrati datoteke shranjene seje %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Ni mogoče razčleniti datoteke shranjene seje: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "atribut <marco_session> je bil viden, a mi že imamo ID seje"
+
+#: ../src/core/session.c:1207
+#: ../src/core/session.c:1282
+#: ../src/core/session.c:1314
+#: ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Neznan atribut %s predmeta <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "gnezdena oznaka <window>"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Neznan predmet %s"
+
+# G:2 K:6 O:0
+#: ../src/core/session.c:1818
+msgid "These windows do not support &quot;save current setup&quot; and will have to be restarted manually next time you log in."
+msgstr "Ta okna ne podpirajo možnosti &quot;shranjevanja trenutnih nastavitev&quot;, zato bodo morala biti ob vaši naslednji prijavi znova začeta ročno."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Odpiranje razhroščevalnega dnevnika je spodletelo: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Odpiranje dnevniške datoteke %s s fdopen() je spodletelo: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Odprta dnevniška datoteka %s\n"
+
+#: ../src/core/util.c:136
+#: ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco je kodno izgrajen brez podpore za podrobni način\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Upravljalnik oken: "
+
+# G:4 K:0 O:0
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Hrošč v upravljalniku oken: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Opozorilo upravljalnika oken: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Napaka upravljalnika oken: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570
+#: ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid "Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER window as specified in the ICCCM.\n"
+msgstr "Okno %s nastavi svoj SM_CLIENT_ID, namesto, da bi nastavilo WM_CLIENT_LEADER kot je zavedeno v ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid "Window %s sets an MWM hint indicating it isn't resizable, but sets min size %d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr "Okno %s določi namig MWM, ki pove, da ni mogoče spremeniti velikosti, hkrati pa določi najmanjšo velikost na %d x %d in največjo na %d x %d; vrednost ni smiselna.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Program je nastavil pokvarjen _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (na %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (kot skrbnik)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (kot %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (kot drug uporabnik)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Neveljaven WM_TRANSIENT_FOR za okno 0x%lx naveden za %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Okno 0x%lx ima lastnost %s,\n"
+"za katero se je pričakovalo, da je vrste %s oblike %d,\n"
+"a je v resnici vrste %s oblike %d n_items %d.\n"
+"To je najverjetneje hrošč v programu in ne v upravljalniku oken.\n"
+"Okno ima title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Lastnost %s okna 0x%lx vsebuje neveljaven znak UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "Lastnost %s okna 0x%lx vsebuje neveljaven znak UTF-8 za %d. predmet na seznamu\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Preklopi na delovno površino 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Preklopi na delovno površino 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Preklopi na delovno površino 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Preklopi na delovno površino 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Preklopi na delovno površino 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Preklopi na delovno površino 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Preklopi na delovno površino 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Preklopi na delovno površino 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Preklopi na delovno površino 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Preklopi na delovno površino 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Preklopi na delovno površino 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Preklopi na delovno površino 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Preklopi na delovno površino na levi od trenutne delovne površine"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Preklopi na delovno površino na desni od trenutne delovne površine"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Preklopi na delovno površino nad trenutno delovno površino"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Preklopi na delovno površino pod trenutno delovno površino"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Premikanje med okni programa s pojavnim oknom"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Premikanje nazaj med okni programa s pojavnim oknom"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Premikanje med okni s pojavnim oknom"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Premikanje nazaj med okni s pojavnim oknom"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Premikanje med pulti in namizjem s pojavnim oknom"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Premikanje nazaj med pladnji in namizjem s pojavnim oknom"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Takoj se premikaj med okni programa"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Takoj premakni nazaj med okni programa"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Med okni se takoj premakni"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Takoj premakni nazaj med okni"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Premakni se takoj med pulti in namizjem"
+
+# G:0 K:1 O:0
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Med pulti in namizjem se takoj pomakni nazaj"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Skrij vsa običajna okna in postavi v žarišče ozadje namizja"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Pokaži glavni meni pladnja"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Pokaži pogovorno okno pulta za zagon programov"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Zajemi zaslonsko sliko"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Zajemi okna na zaslonu"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Zaženi terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Omogoči meni okna"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Preklopi celozaslonski način"
+
+# G:1 K:0 O:0
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Preklopi stanje razpetosti"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Preklopi ali je okno vedno vidno nad drugimi okni"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Razpni okno"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Obnovi okno"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Preklopi stanje senčenja"
+
+# G:1 K:0 O:0
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Skrči okno"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Zapri okno"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Premakni okno"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Spremeni velikost okna"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Preklopi ali je okno na vseh delovnih površinah oziroma le na eni"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Premakni okno na delovno površino 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Premakni okno na delovno površino 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Premakni okno na delovno površino 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Premakni okno na delovno površino 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Premakni okno na delovno površino 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Premakni okno na delovno površino 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Premakni okno na delovno površino 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Premakni okno na delovno površino 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Premakni okno na delovno površino 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Premakni okno na delovno površino 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Premakni okno na delovno površino 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Premakni okno na delovno površino 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Premakni okno eno delovno površino levo"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Premakni okno eno delovno površino desno"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Premakni okno eno delovno površino navzgor"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Prestavi okno eno delovno površino navzdol"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Dvigni okno, če ga prekriva drugo okno, sicer ga spusti"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Dvigni okno nad druga okna"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Spusti okno pod druga"
+
+# G:1 K:0 O:0
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Razpni okno navpično"
+
+# G:0 K:1 O:0
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Razpni okno vodoravno"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Premakni okno v zgornji levi kot"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Premakni okno v zgornji desni kot"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Premakni okno v spodnji levi kot"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Premakni okno v spodnji desni kot"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Premakni okno na zgornji del zaslona"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Premakni okno na spodnji del zaslona"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Premakni okno na desni del zaslona"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Premakni okno na levi del zaslona"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Premakni okno na sredino zaslona"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Ni vstavljeno) Navigacija deluje v smislu programov, ne oken"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid "A font description string describing a font for window titlebars. The size from the description will only be used if the titlebar_font_size option is set to 0. Also, this option is disabled if the titlebar_uses_desktop_font option is set to true."
+msgstr "Niz opisa pisave, ki opisuje pisavo za nazivne vrstice oken. Velikost opisa bo uporabljena le, če je možnost velikosti pisave nazivne vrstice nastavljena na 0. Možnost je onemogočena tudi, kadar je privzeto uporabljena pisava namizja."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Dejanje ob dvojnem kliku na nazivno vrstico okna"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Dejanje ob srednjem kliku na nazivno vrstico okna"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Dejanje ob desnem kliku na nazivno vrstico okna"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Postavitev gumbov v nazivni vrstici okna"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid "Arrangement of buttons on the titlebar. The value should be a string, such as \"menu:minimize,maximize,spacer,close\"; the colon separates the left corner of the window from the right corner, and the button names are comma-separated. Duplicate buttons are not allowed. Unknown button names are silently ignored so that buttons can be added in future marco versions without breaking older versions. A special spacer tag can be used to insert some space between two adjacent buttons."
+msgstr "Postavitev gumbov na nazivni vrstici okna. Vrednost mora biti niz, kot je \"meni:skrči,razpni,preslednik,zapri\"; dvopičje loči levi kot okna od desnega in imena gumbov so ločena z vejico. Podvojeni gumbi niso dovoljeni. Neznana imena gumbov so tiho prezrta, tako, da se lahko v novih različicah Marco doda nove gumbe brez, da bi se porušila skladnost s starimi različicami. Posebna oznaka ločilnika se lahko uporabi pri večanju razdalje med gumbi."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Samodejno dvigne dejavno okno"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid "Clicking a window while holding down this modifier key will move the window (left click), resize the window (middle click), or show the window menu (right click). The middle and right click operations may be swapped using the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" for example."
+msgstr "Klik na okno ob držanju tipke spremenilnika bo premaknil okno (levi klik), spremenil velikost okna (srednji klik) ali pokazal meni okna (desni klik). Delovanje srednje in desne tipke je mogoče zamenjati s ključem \"spremeni_velikost_z_desnim gumbom\". Spremenilnik je izražen kot \"&lt;Alt&gt;\" ali \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Ukazi zagnani preko tipkovnih bližnjic"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Upravljalnik sestavljanja"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Nadzor žariščenja okna"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Trenutna tema"
+
+# G:1 K:0 O:0
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Premor v milisekundah za možnost samodejnega dviga"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Ugotovi, ali je Marco upravljalnik sestavljanja."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid "Determines whether applications or the system can generate audible 'beeps'; may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr "Ugotovi, ali lahko program ali sistem ustvari zvočne piske. Uporabno tudi skupaj z 'vidnimi zvonci', tako da nastanejo tihi 'piske'."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Onemogoči dodatke, ki jih uporabljajo stari ali pokvarjeni programi"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Omogoči vidni zvonec"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid "If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then the focused window will be automatically raised after a delay specified by the auto_raise_delay key. This is not related to clicking on a window to raise it, nor to entering a window during drag-and-drop."
+msgstr "Izbrana možnost omogoča, da je način žariščenja \"sloppy\" ali \"mouse\", potem bo okno v žarišču po premoru, določenem v ključu auto_raise_delay, samodejno dvignjeno. To ni povezano s klikanjem za dviganje okna, niti z vstopom v okno z metodo povleci-spusti."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid "If true, ignore the titlebar_font option, and use the standard application font for window titles."
+msgstr "Izbrana možnost omogoča, da se prezre možnost pisave nazivne vrstice okna in uporabi privzeto pisavo programov."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid "If true, marco will give the user less feedback by using wireframes, avoiding animations, or other means. This is a significant reduction in usability for many users, but may allow legacy applications to continue working, and may also be a useful tradeoff for terminal servers. However, the wireframe feature is disabled when accessibility is on."
+msgstr "Izbrana možnost omogoča, da bo program uporabniku podal manj odzivov z uporabo žičnih okvirjev z ukinjanjem animacij in na druge načine. To predstavlja občutno zmanjševanje uporabnosti za večino uporabnikov, število delujočih programov pa se lahko poveča, izbira pa je primerna tudi za terminalske strežnike. Kljub temu je možnost žičnih okvirjev onemogočena pri uporabi dostopnosti."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid "If true, then Marco works in terms of applications rather than windows. The concept is a bit abstract, but in general an application-based setup is more like the Mac and less like Windows. When you focus a window in application-based mode, all the windows in the application will be raised. Also, in application-based mode, focus clicks are not passed through to windows in other applications. Application-based mode is, however, largely unimplemented at the moment."
+msgstr "Izbrana možnost omogoča, da program prednostno obravnava program kot celoto in ne okna programa. Ta možnost je nekoliko abstraktna in je pomensko značilna za okolje Mac in manj za Windows. Ko je okno postavljeno v žarišče v programskem načinu, se vsa okna programa dvignejo. Prav tako se v tem načinu kliki z miško ne prenesejo na okna ostalih programov. Programski način v veliki meri še ni dokončno razvit."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Izbrana možnost omogoča, da, se zmanjša uporabnost in sistemske zahteve"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Spremenilnik, ki naj se uporabi za dejanja klika na okno"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Ime delovne površine"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Število delovnih površin"
+
+# G:1 K:0 O:0
+#: ../src/marco.schemas.in.in.h:27
+msgid "Number of workspaces. Must be more than zero, and has a fixed maximum to prevent making the desktop unusable by accidentally asking for too many workspaces."
+msgstr "Število delovnih površin. Mora biti več kot nič in ima določeno najvišjo vrednost, da prepreči uničenje namizja z vnosom prevelikega števila delovnih površin."
+
+# G:0 K:1 O:0
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Zaženi določen ukaz"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid "Set this to true to resize with the right button and show a menu with the middle button while holding down the key given in \"mouse_button_modifier\"; set it to false to make it work the opposite way around."
+msgstr "Izbrana možnost omogoča, da se velikost okna spremeni z desnim gumbom in prikaže meni s srednjim, če je določena tudi tipka tipkovnice."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid "Setting this option to false can lead to buggy behavior, so users are strongly discouraged from changing it from the default of true. Many actions (e.g. clicking in the client area, moving or resizing the window) normally raise the window as a side-effect. Setting this option to false, which is strongly discouraged, will decouple raising from other user actions, and ignore raise requests generated by applications. See http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can still be raised by an alt-left-click anywhere on the window, a normal click on the window decorations, or by special messages from pagers, such as activation requests from tasklist applets. This option is currently disabled in click-to-focus mode. Note that the list of ways to raise windows when raise_on_click is false does not include programmatic requests from applications to raise windows; such requests will be ignored regardless of the reason for the request. If you are an application developer and have a user complaining that your application does not work with this setting disabled, tell them it is _their_ fault for breaking their window manager and that they need to change this option back to true or live with the \"bug\" they requested."
+msgstr "Nastavitev možnosti lahko privede do nestanovitnega delovanja, zato spreminjanje možnosti ni priporočeno. Veliko dejanj (primer: klikanje znotraj oken, premikanje in spreminjanje velikosti oken) običajno privzdigne okno kot stranski učinek dejanja. Z onemogočenjem možnosti bo program preprečil dvig okna drugim programom in bo prezrl zahteve, ki jih ustvarjajo ukazi. Več podrobnosti najdete na http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Tudi z onemogočenjem možnosti je okna mogoče privzdigniti z alt-levi klik kjerkoli na oknu. Možnost je onemogočena le v klik-za-žarišče načinu. Seznam načinov, s katerimi je mogoče privzdigniti okno ne vključuje programskih zahtev programov za dvig okna; take zahteve so prezrte ne glede na vzrok zahteve."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid "Some applications disregard specifications in ways that result in window manager misfeatures. This option puts Marco in a rigorously correct mode, which gives a more consistent user interface, provided one does not need to run any misbehaving applications."
+msgstr "Nekateri programi prezrejo določila, tako da upravljalnik oken ne deluje v celoti pravilno. Ta možnost postavi Marco v pravilen način, ki daje bolj celovit uporabniški vmesnik, če uporabniku ni treba zaganjati programov, ki ne delujejo pravilno."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Sistemski zvonec je zvočen"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid "Tells Marco how to implement the visual indication that the system bell or another application 'bell' indicator has been rung. Currently there are two valid values, \"fullscreen\", which causes a fullscreen white-black flash, and \"frame_flash\" which causes the titlebar of the application which sent the bell signal to flash. If the application which sent the bell is unknown (as is usually the case for the default \"system beep\"), the currently focused window's titlebar is flashed."
+msgstr "Možnost določa način izvajanja vidnega opozarjanja sistemskega zvonca ali zvonca drugega programa. Trenutno sta na voljo dve veljavni vrednosti, \"fullscreen\", ki povzroči celozaslonsko črno belo utripanje in \"frame_flash\", ki povzroči utripanje nazivne vrstice programa, ki je sprožil zvonec. V kolikor je slednji neznan (npr. v primeru \"sistemskega zvonca\"), utripa naslovna vrstica okna, ki je trenutno v žarišču."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid "The /apps/marco/global_keybindings/run_command_N keys define keybindings that correspond to these commands. Pressing the keybinding for run_command_N will execute command_N."
+msgstr "Ključi /apps/marco/global_keybindings/run_command_N določa tipkovne bližnjice, ki ustrezajo tem ukazom. Pritisk tipke za run_command_N bo izvedel ukaz command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid "The /apps/marco/global_keybindings/run_command_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr "Ključ /apps/marco/global_keybindings/run_command_screenshot določa tipkovno bližnjico, ki izvede ukaz, določen s temi nastavitvami."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid "The /apps/marco/global_keybindings/run_command_window_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr "Ključ /apps/marco/global_keybindings/run_command_window_screenshot določa tipkovno bližnjico, ki izvede ukaz, določen s temi nastavitvami."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid "The keybinding that runs the correspondingly-numbered command in /apps/marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Tipkovna bližnjica, ki zažene ustrezno oštevilčen ukaz v /apps/marco/keybinding_commands. Oblikovana je kot \"&lt;Control&gt;a\" ali \"&lt;Shift&gt;&lt;Alt&gt;F1. Razčlenjevalnik je precej popustljiv in dopušča različno velikost črk ter okrajšave kot npr. \"&lt;Ctl&gt;\" in \"&lt;Ctrl&gt;\". V kolikor je izbrana možnost \"onemogočeno\", potem za to dejanje ne bo bližnjice."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Ime delovne površine."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Ukaz za zajem zaslona"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid "The theme determines the appearance of window borders, titlebar, and so forth."
+msgstr "Tema določa videz robov oken, nazivne vrstice oken itd."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid "The time delay before raising a window if auto_raise is set to true. The delay is given in thousandths of a second."
+msgstr "Časovni zamik preden se okno dvigne, kadar je auto_raise omogočen. Zamik je podan v tisočinkah sekunde."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid "The window focus mode indicates how windows are activated. It has three possible values; \"click\" means windows must be clicked in order to focus them, \"sloppy\" means windows are focused when the mouse enters the window, and \"mouse\" means windows are focused when the mouse enters the window and unfocused when the mouse leaves the window."
+msgstr "Način žariščenja določa kako se okna postavijo v žarišče. Možnosti so; \"click\", ki zahteva klik miške na oknu, \"sloppy\", ki omogoča žariščenje s pomikom miške na okno in \"mouse\", ki omogoča žariščenje, ko je kazalka miške v oknu, in sprostitev žarišča, ko okno zapusti."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Ukaz za zajem okna na zaslonu"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid "This option determines the effects of double-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr "Možnost določa učinek dvojnega klika miške na nazivno vrstico okna. Trenutno veljavne možnosti so 'preklop_senčenja', ki spremeni zasenčenost okna, 'preklop razpenjanja', ki razpne ali skrči okno, 'preklop razpenjanja vodoravno' in 'preklop razpenjanja navpično', ki razpneta okna le v eni smeri, 'pomanjšaj', ki pomanjša okno, 'zavij', ki zvije okno na velikost naslovne vrstice', 'meni', ki prikaže meni okna, 'pod', ki skrije okno pod ostala okna in 'brez', ki ne naredi ničesar."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid "This option determines the effects of middle-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr "Možnost določa učinek srednjega klika miške na nazivno vrstico okna. Trenutno veljavne možnosti so 'preklop_senčenja', ki spremeni zasenčenost okna, 'preklop razpenjanja', ki razpne ali skrči okno, 'preklop razpenjanja vodoravno' in 'preklop razpenjanja navpično', ki razpneta okna le v eni smeri, 'pomanjšaj', ki pomanjša okno, 'zavij', ki zavije okno na velikost naslovne vrstice', 'meni', ki prikaže meni okna, 'pod', ki skrije okno pod ostala okna in 'brez', ki ne naredi ničesar."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid "This option determines the effects of right-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr "Možnost določa učinek desnega klika miške na nazivno vrstico okna. Trenutno veljavne možnosti so 'preklop_senčenja', ki spremeni zasenčenost okna, 'preklop razpenjanja', ki razpne ali skrči okno, 'preklop razpenjanja vodoravno' in 'preklop razpenjanja navpično', ki razpneta okna le v eni smeri, 'pomanjšaj', ki pomanjša okno, 'zavij', ki zvije okno na velikost naslovne vrstice', 'meni', ki prikaže meni okna, 'pod', ki skrije okno pod ostala okna in 'brez', ki ne naredi ničesar."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid "This option provides additional control over how newly created windows get focus. It has two possible values; \"smart\" applies the user's normal focus mode, and \"strict\" results in windows started from a terminal not being given focus."
+msgstr "Možnost omogoča dodaten nadzor za pridobivanje žarišča novih oken. Na voljo sta možnosti: \"pametno\", ki uveljavi običajen način žariščenja in \"strogo\", ki pa žarišča ne dodeli oknom zagnanim preko terminala."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid "Turns on a visual indication when an application or the system issues a 'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy environments."
+msgstr "Vključi vidna opozorila, ko program ali sistem uporabi 'zvonec' ali 'pisk'. Uporabno v hrupnih okoljih."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "V nazivnih vrsticah oken uporabi običajno sistemsko pisavo"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Vrsta vidnega zvonca"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Ali naj bo dvigovanje stranski učinek drugih dejanj uporabnika"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Ali je mogoče spreminjati velikost okna z desnim gumbom."
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Način žariščenja oken"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Pisava naziva okna"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Uporaba: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Zapri okno"
+
+# G:1 K:1 O:0
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Meni okna"
+
+# G:0 K:1 O:0
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Skrči okno"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Razpni okno"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Obnovi okno"
+
+# G:2 K:0 O:0
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Zavij okno"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Odvij okno"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Ohrani okno na vrhu"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Odstrani okno z vrha"
+
+# G:1 K:0 O:0
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Vedno na vidni delovni površini"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Postavi okno na le eno delovno površino"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Skrči"
+
+# G:1 K:0 O:0
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ra_zpni"
+
+# G:1 K:0 O:0
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Pomanjšaj"
+
+# G:2 K:0 O:0
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Zavij"
+
+# G:1 K:0 O:0
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Odvij"
+
+# G:1 K:0 O:0
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Premakni"
+
+# G:2 K:2 O:0
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Sp_remeni velikost"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Premakni nazivno vrstico na _zaslon"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87
+#: ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Vedno na _vrhu"
+
+# G:1 K:0 O:0
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Vedno n_a vidni delovni površini"
+
+# G:1 K:0 O:0
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Sam_o na tej delovni površini"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Premakni na _levo delovno površino"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Premakni na _desno delovno površino"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Premakni na _zgornjo delovno površino"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Premakni na _spodnjo delovno površino"
+
+# G:0 K:1 O:0
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Zapri"
+
+# G:1 K:0 O:0
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Delovna površina %d%n"
+
+# G:1 K:0 O:0
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Delovna površina 1_0"
+
+# G:2 K:0 O:0
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Delovna površina %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Premakni na dru_go delovno površino"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+# G:2 K:1 O:0
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+# G:2 K:1 O:0
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+# G:5 K:2 O:0
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+# G:0 K:2 O:0
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hiper"
+
+# G:1 K:0 O:0
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+# G:0 K:1 O:0
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "zgoraj"
+
+# G:12 K:5 O:0
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "spodaj"
+
+# G:10 K:4 O:0
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "levo"
+
+# G:1 K:0 O:0
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "desno"
+
+# G:1 K:0 O:0
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "geometrija okvirja ne navaja dimenzije \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "geometrija okvirja ne navaja dimenzije \"%s\" za rob \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Razmerje gumba %g ni smiselno"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Geometrija okvirja ne navaja velikosti gumbov"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Prelivi bi morali imeti vsaj dve barvi"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid "GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "Navedba barve GTK mora vsebovati stanje v oglatih oklepajih, npr. gtk:fg[NORMAL], kjer je NORMAL stanje; ni mogoče razčleniti \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid "GTK color specification must have a close bracket after the state, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "Navedbi barve GTK manjka oglati zaklepaj za stanjem, npr. gtk:fg[NORMAL], kjer je NORMAL stanje; ni mogoče razčleniti \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Ni mogoče razumeti stanja \"%s\" v navedbi barve "
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Ni mogoče razumeti barvne komponente \"%s\" v navedbi barve"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid "Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the format"
+msgstr "Oblika zapisa preliva je \"blend/bg_color/fg_color/alpha\", \"%s\" ne ustreza pravilni obliki"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "V prelivni barvi ni mogoče razčleniti vrednosti alfa \"%s\""
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "V prelivni barvi alfa vrednost \"%s\" ni med 0.0 in 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Oblika zapisa barve senčenja je \"shade/base_color/factor\", \"%s\" ne ustreza pravilni obliki."
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Ni mogoče razčleniti faktorja senčenja \"%s\" v senčeni barvi"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "V senčeni barvi je faktor senčenja \"%s\" negativen"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Ni mogoče razčleniti barve \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Izraz koordinat vsebuje znak '%s', ki ni dovoljen"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid "Coordinate expression contains floating point number '%s' which could not be parsed"
+msgstr "Izraz koordinat vsebuje številko s plavajočo vejico '%s', ki je ni mogoče razčleniti"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Izraz koordinat vsebuje celo število '%s', ki ga ni mogoče razčleniti"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid "Coordinate expression contained unknown operator at the start of this text: \"%s\""
+msgstr "Izraz koordinat vsebuje neznan operator na začetku besedila: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Izraz koordinat je prazen ali pa ga ni mogoče razumleti"
+
+#: ../src/ui/theme.c:1913
+#: ../src/ui/theme.c:1923
+#: ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Izraz koordinat se povzroči deljenje z ničlo"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "Izraz koordinat poskuša uporabiti operator mod ali številko s plavajočo vejico"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Izraz koordinat vsebuje operator \"%s\", kjer je pričakovan operand"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Izraz koordinat vsebuje operand, kjer je pričakovan operator"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Izraz koordinat se konča z operatorjem namesto z operandom"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid "Coordinate expression has operator \"%c\" following operator \"%c\" with no operand in between"
+msgstr "Izraz koordinat vsebuje operator \"%c\", ki sledi operatorju \"%c\", brez vmesnega operanda"
+
+#: ../src/ui/theme.c:2195
+#: ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Izraz koordinat vsebuje neznano spremenljivko ali konstanto \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Razčlenjevalnik izrazov koordinat je preplavil medpomnilnik."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Izraz koordinat vsebuje zaklepaj, a ne oklepaja"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Izraz koordinat vsebuje uklepaj, vendar je brez zaklepaja"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Videti je, da izraz koordinat ne vsebuje operatorjev ali operandov"
+
+#: ../src/ui/theme.c:2596
+#: ../src/ui/theme.c:2616
+#: ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Tema vsebuje izraz, ki je povzročil napako: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be specified for this frame style"
+msgstr "za ta slog okvirja mora biti naveden <button function=\"%s\" state=\"%s\" draw_ops=\"karkoli\"/>"
+
+#: ../src/ui/theme.c:4711
+#: ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "Manjka <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"karkoli\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Nalaganje teme \"%s\" je podletelo: %s\n"
+
+#: ../src/ui/theme.c:4910
+#: ../src/ui/theme.c:4917
+#: ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931
+#: ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Ni nastavljen <%s> za temo \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid "No frame style set for window type \"%s\" in theme \"%s\", add a <window type=\"%s\" style_set=\"whatever\"/> element"
+msgstr "Slog okvirja za okno vrste \"%s\" v temi \"%s\" ni nastavljen, dodajte predmet <window type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5389
+#: ../src/ui/theme.c:5451
+#: ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "Uporabniško določene konstante se morajo začeti z veliko črko; \"%s\" se ne"
+
+#: ../src/ui/theme.c:5397
+#: ../src/ui/theme.c:5459
+#: ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstanta \"%s\" je bila že določena"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Ni atributa \"%s\" za predmet <%s>"
+
+#: ../src/ui/theme-parser.c:231
+#: ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Vrstica %d, znak %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atribut \"%s\" je v istem predmetu <%s> ponovljen dvakrat"
+
+#: ../src/ui/theme-parser.c:437
+#: ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Uporaba atributa \"%s\" na predmetu <%s> ni neveljavna"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Ni mogoče razčleniti \"%s\" kot celoštevilčne vrednosti"
+
+#: ../src/ui/theme-parser.c:531
+#: ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Ni mogoče razumeti končnih znakov \"%s\" v nizu \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Celoštevilska vrednost %ld mora biti pozitivna"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Celoštevilska vrednost %ld je prevelika, trenutna omejitev je %d"
+
+#: ../src/ui/theme-parser.c:577
+#: ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Ni mogoče razčleniti \"%s\" kot števila s plavajočo vejico"
+
+#: ../src/ui/theme-parser.c:608
+#: ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Logične vrednosti morajo biti ali \"true\" ali \"false\" in ne \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Kot mora biti določen med 0.0 in 360.0, vrednost pa je %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Vrednost alfa mora biti med 0.0 (nevidno) in 1.0 (popolnoma vidno), določena pa je vrednost %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid "Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+msgstr "Neveljavna velikost naziva \"%s\" (mora biti eno od xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936
+#: ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033
+#: ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "ime <%s> \"%s\" je uporabljeno drugič"
+
+#: ../src/ui/theme-parser.c:948
+#: ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "nadrejeni predmet <%s> \"%s\" ni naveden"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "geometrija <%s> \"%s\" ni navedena"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> mora navesti ali geometrijo ali nadrejeni predmet, ki ima geometrijo"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Določiti je treba ozadje, če želite, da ima alfa vrednost pomen."
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Neznana vrsta \"%s\" v predmetu <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Neznan style_set \"%s\" v predmetu <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Vrsti okna \"%s\" je nabor sloga že določen"
+
+#: ../src/ui/theme-parser.c:1229
+#: ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519
+#: ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786
+#: ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126
+#: ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202
+#: ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Predmet <%s> ni dovoljen pod <%s>"
+
+#: ../src/ui/theme-parser.c:1343
+#: ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid "Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" for buttons"
+msgstr "Ni mogoče navesti obojega \"button_width\"/\"button_height\" in razmerja\"aspect_ratio\" gumba"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Razdalja \"%s\" je neznana"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Razmerje \"%s\" je neznano"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Rob \"%s\" je neznan"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Predmet <%s> nima atributa \"start_angle\" ali \"from\""
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Predmet <%s> nima atributa \"extent_angle\" ali \"to\""
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Ni mogoče razumeti vrednost za vrsto preliva \"%s\""
+
+#: ../src/ui/theme-parser.c:2109
+#: ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Nerazpoznavna vrsta polnjenja \"%s\" za predmet <%s>"
+
+#: ../src/ui/theme-parser.c:2276
+#: ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Ni mogoče razumeti stanja \"%s\" za predmet <%s>"
+
+#: ../src/ui/theme-parser.c:2286
+#: ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Ni mogoče razumeti senčenja \"%s\" za predmet <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Ni mogoče razumeti puščice \"%s\" za predmet <%s>"
+
+#: ../src/ui/theme-parser.c:2596
+#: ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "<draw_ops> imenovan \"%s\" ni naveden"
+
+#: ../src/ui/theme-parser.c:2608
+#: ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Vključevanje draw_ops \"%s\" na tem mestu, bi ustvarilo krožno sklicevanje"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Neznan položaj \"%s\" za del okvirja"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Slog okvirja že ima del na položaju %s"
+
+#: ../src/ui/theme-parser.c:2844
+#: ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Za ime \"%s\" ni navedenega <draw_ops>"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Neznana funkcija \"%s\" za gumb"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Funkcija gumba \"%s\" ne obstaja v tej različici (%d, zahtevana %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Neznano stanje \"%s\" za gumb"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Slog okvirja že ima gumb za funkcijo %s stanje %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" ni veljavna vrednost za atribut \"focus\""
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" ni veljavna vrednost za atribut \"state\""
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Slog \"%s\" ni določen"
+
+#: ../src/ui/theme-parser.c:3013
+#: ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" ni veljavna vrednost za atribut \"resize\""
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized/shaded states"
+msgstr "Predmet <%s> ne sme imeti atributa \"resize\" za razpeta/senčena stanja"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "Predmet <%s> ne sme imeti atributa \"resize\" za razpeta stanja"
+
+#: ../src/ui/theme-parser.c:3075
+#: ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Slog za stanje %s velikost %s žarišče %s je bil že naveden"
+
+#: ../src/ui/theme-parser.c:3086
+#: ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Slog za stanje %s žarišče %s je bil že naveden"
+
+#: ../src/ui/theme-parser.c:3147
+msgid "Can't have a two draw_ops for a <piece> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Za predmet <piece> ni mogoče določiti dveh možnosti draw_ops (tema vsebuje atribut draw_ops in hkrati predmet <draw_ops> ali pa sta navedena dva predmeta)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid "Can't have a two draw_ops for a <button> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Za predmet <button> ni mogoče določiti dveh možnosti draw_ops (tema vsebuje atribut draw_ops in hkrati predmet <draw_ops> ali pa sta navedena dva predmeta)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid "Can't have a two draw_ops for a <menu_icon> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Za predmet <menu_icon> ni mogoče določiti dveh možnosti draw_ops (tema vsebuje atribut draw_ops in hkrati predmet <draw_ops> ali pa sta navedena dva predmeta)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Najbolj zunanji predmet teme mora biti <marco_theme> in ne <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Predmet <%s> ni dovoljen znotraj predmetov name, author, date ali description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Predmet <%s> ni dovoljen znotraj predmeta <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Predmet <%s> ni dovoljen znotraj predmetov distance/border/aspect_ration"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Predmet <%s> ni dovoljen znotraj predmeta opravila draw"
+
+#: ../src/ui/theme-parser.c:3340
+#: ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375
+#: ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Predmet <%s> ni dovoljen znotraj predmeta <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Za del okvirja ni naveden draw_ops"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Za gumb ni naveden draw_ops"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Znotraj predmeta <%s> besedilo ni dovoljeno"
+
+#: ../src/ui/theme-parser.c:3724
+#: ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748
+#: ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> je za to temo naveden dvakrat"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Ni mogoče najti veljavne datoteke za temo %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Datoteka teme %s ne vsebuje korenskega predmeta <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Okna"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Okna/odtrgaj"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Okna/_Pogovorno okno"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Okna/_Modalno okno"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Okna/P_ripomoček"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Okna/Pre_dstavitveno okno"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Okna/_Zgornje sidro"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Okna/_Spodnje sidro"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Okna/_Levo sidro"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Okna/_Desno sidro"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Okna/_Vsa sidra"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Okna/_Namizje"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "To je preizkusno sporočilo v pogovornem oknu"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Lažni predmet menija %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Okno le z okvirjem"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Vrstica"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Običajno okno programa"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Pogovorno okno"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modalno pogovorno okno"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta pripomočkov"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Odtrgan meni"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Obroba"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Preizkus razporeditve gumbov %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekund za izris ene sličice okna"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Uporaba: marco-theme-viewer [IMETEME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Napaka med nalaganjem teme: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tema \"%s\" je bila naložena v %g sekundah\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Običajna pisava naziva"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Majhna pisava naziva"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Velika pisava naziva"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Razpored gumbov"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Meritev"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Tukaj je naziv okna"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid "Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g seconds wall clock time including X server resources (%g milliseconds per frame)\n"
+msgstr "Izrisanih je %d sličic v %g sekundah na strani odjemalca (%g milisekund na sličico) in %g sekund v času stenske ure, upoštevajoč sredstva strežnika X (%g milisekund na sličico)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "preizkus izjave položaja je vrnil logični PRAV, vendar je nastavil napako"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "preizkus izjave položaja je vrnil logični NAPAK, vendar ni nastavil napake"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Pričakovana je bila napaka, vendar do nje ni prišlo"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Pričakovana je bila napaka %d, vrnjena pa je bila %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Napaka ni bila pričakovana, vendar je bila kljub temu vrnjena: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "vrednost x je %d, pričakovana pa je vrednost %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "vrednost y je %d, pričakovana pa je vrednost %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d izjav koordinat razčlenjenih v %g sekundah (%g sekund v povprečju)\n"
+
diff --git a/po/sq.po b/po/sq.po
new file mode 100644
index 00000000..9e8f6b93
--- /dev/null
+++ b/po/sq.po
@@ -0,0 +1,3999 @@
+# Përkthimi i marco në shqip.
+# Copyright (C) 2003-2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+#
+# Laurent Dhima <[email protected]>, 2003-2006, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco HEAD\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-09-27 04:13+0000\n"
+"PO-Revision-Date: 2008-09-27 12:27+0200\n"
+"Last-Translator: Laurent Dhima <[email protected]>\n"
+"Language-Team: albanian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Ambienti grafik"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Administrimi i dritareve"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Kërkesë informacioni dritare e panjohur: %d"
+
+#: ../src/core/delete.c:70 ../src/core/delete.c:97
+#: ../src/ui/marco-dialog.c:50 ../src/ui/theme-parser.c:481
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "I pamundur analizimi i «%s» si një numër i plotë"
+
+#: ../src/core/delete.c:77 ../src/core/delete.c:104
+#: ../src/ui/marco-dialog.c:57 ../src/ui/theme-parser.c:490
+#: ../src/ui/theme-parser.c:545
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Gërmat «%s» në stringën «%s» rezultojnë të pakuptueshëm"
+
+#: ../src/core/delete.c:135
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Analizimi i mesazhit «%s» nga proçesi i dialogut dështoi\n"
+
+#: ../src/core/delete.c:253
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Gabim gjatë leximit nga proçesi i shfaqjes së dialogut: %s\n"
+
+#: ../src/core/delete.c:336
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Gabim gjatë nisjes së marco-dialog për të pyetur nëse duhet përfunduar "
+"një aplikativ: %s\n"
+
+#: ../src/core/delete.c:445
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Marrja e emrit të host dështoi: %s\n"
+
+#: ../src/core/display.c:256
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Shtojca %s e nevojshme për compositing mungon"
+
+#: ../src/core/display.c:334
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Hapja e display «%s» të X Window System dështoi\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Humbi lidhja me display '%s';\n"
+"ka shumë mundësi që serveri X të jetë ndaluar ose është\n"
+"përfunduar apo shkatërruar window manager.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Gabim fatal IO %d (%s) tek display '%s'.\n"
+
+#: ../src/core/keybindings.c:924
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Ndonjë program tjetër është duke përdorur si shoqërim tastin %s me "
+"ndryshuesin %x\n"
+
+#: ../src/core/keybindings.c:2563
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+"Gabim gjatë nisjes së marco-dialog për të njoftuar një gabim në lidhje me "
+"një komandë: %s\n"
+
+#: ../src/core/keybindings.c:2668
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Komanda %d nuk është përcaktuar.\n"
+
+#: ../src/core/keybindings.c:3705
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Nuk është përcaktuar asnjë komandë terminali.\n"
+
+#: ../src/core/main.c:116
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., e të tjerë\n"
+"Ky është software i lirë;shiko buruesin për kushtet mbi kopjen.\n"
+"NUK afrohet asnjë garanci; as për TREGËTI apo PËRDORIM PËR NDONJË QËLLIM TË "
+"VEÇANTË.\n"
+
+#: ../src/core/main.c:253
+msgid "Disable connection to session manager"
+msgstr "Çaktivizo lidhjen me administruesin e seancës"
+
+#: ../src/core/main.c:259
+msgid "Replace the running window manager with Marco"
+msgstr "Zëvendëson window manager në ekzekutim me Marco"
+
+#: ../src/core/main.c:265
+msgid "Specify session management ID"
+msgstr "Specifiko ID e administruesit të seancës"
+
+#: ../src/core/main.c:270
+msgid "X Display to use"
+msgstr "Display X për t'u përdorur"
+
+#: ../src/core/main.c:276
+msgid "Initialize session from savefile"
+msgstr "Fillon seancën nga file i ruajtur"
+
+#: ../src/core/main.c:282
+msgid "Print version"
+msgstr "Printo versionin"
+
+#: ../src/core/main.c:288
+msgid "Make X calls synchronous"
+msgstr "Bën thirrjet X të sinkronizuara"
+
+#: ../src/core/main.c:294
+#, fuzzy
+msgid "Turn compositing on"
+msgstr "Përgjegjësi i kompozimit"
+
+#: ../src/core/main.c:300
+msgid "Turn compositing off"
+msgstr ""
+
+#: ../src/core/main.c:451
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Skanimi i directory të temave dështoi: %s\n"
+
+#: ../src/core/main.c:467
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Nuk u gjet asnjë temë. Sigurohu që %s ekziston dhe që përmban temat "
+"standard.\n"
+
+#: ../src/core/main.c:526
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Rinisja dështoi: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#.
+#: ../src/core/prefs.c:503 ../src/core/prefs.c:655
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Kyçi MateConf «%s» është vendosur në një vlerë të pavlefshme\n"
+
+#: ../src/core/prefs.c:584 ../src/core/prefs.c:824
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"Vlera %d e regjistruar në kyçin MateConf %s është jashtë intervalit nga %d në %"
+"d\n"
+
+#: ../src/core/prefs.c:628 ../src/core/prefs.c:702 ../src/core/prefs.c:750
+#: ../src/core/prefs.c:814 ../src/core/prefs.c:1109 ../src/core/prefs.c:1125
+#: ../src/core/prefs.c:1144 ../src/core/prefs.c:1160 ../src/core/prefs.c:1177
+#: ../src/core/prefs.c:1193
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Kyçi MateConf «%s» është caktuar në një lloj të pavlefshëm\n"
+
+#: ../src/core/prefs.c:1263
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Veprimtari mirëmbajtje për administrimin e programeve difektozë të "
+"çaktivizuar. Disa programe mund të shfaqin sjellje të gabuara.\n"
+
+#: ../src/core/prefs.c:1333
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"I pamundur analizimi i përshkrimit të llojit të gërmës «%s» nga kyçi MateConf %"
+"s\n"
+
+#: ../src/core/prefs.c:1393
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Vlera «%s» në bazën e të dhënave të konfigurimit është e pavlefshme për "
+"ndryshuesin e pulsantit të mouse\n"
+
+#: ../src/core/prefs.c:1810
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Gabim gjatë vendosjes së numrit të hapësirave të punës në %d: %s\n"
+
+#: ../src/core/prefs.c:2131 ../src/core/prefs.c:2643
+#, c-format
+msgid "Workspace %d"
+msgstr "Hapësira e punës %d"
+
+#: ../src/core/prefs.c:2161 ../src/core/prefs.c:2334
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Vlera \"%s\" në databazën e konfigurimit është e pavlefshme për kombinim "
+"tastesh \"%s\"\n"
+
+#: ../src/core/prefs.c:2724
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+"Gabim gjatë vendosjes së emrit të hapësirës së punës %d në \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2917
+#, fuzzy, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr ""
+"Gabim gjatë vendosjes së emrit të hapësirës së punës %d në \"%s\": %s\n"
+
+#: ../src/core/screen.c:350
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Screen %d tek display '%s' nuk është i vlefshëm\n"
+
+#: ../src/core/screen.c:366
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Screen %d tek display \"%s\" ka një administrues dritaresh; provo të "
+"zevëndësosh administruesin aktual të dritareve duke përdorur --replace.\n"
+
+#: ../src/core/screen.c:393
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"E pamundur marrja e zgjedhjes së adminiatruesit të dritares për screen %d "
+"tek display \"%s\"\n"
+
+#: ../src/core/screen.c:451
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+"Screen %d tek display \"%s\" aktualisht e ka një administrues dritareje\n"
+
+#: ../src/core/screen.c:661
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "I pamundur lëshimi i screen %d tek display \"%s\"\n"
+
+#: ../src/core/schema-bindings.c:77
+#, fuzzy
+msgid ""
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për mbyllur një dritare. Forma është \"&lt;"
+"Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i "
+"gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe "
+"\"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale \"disabled\", "
+"atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/core/session.c:837 ../src/core/session.c:844
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "I pamundur krijimi i directory '%s': %s\n"
+
+#: ../src/core/session.c:854
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "E pamundur hapja në shkrim i file të seancës '%s': %s\n"
+
+#: ../src/core/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Gabim gjatë shkrimit të file të seancës '%s': %s\n"
+
+#: ../src/core/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Gabim gjatë mbylljes së file të seancës '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1093
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Gabim gjatë leximit të file të ruajtur të seancës %s: %s\n"
+
+#: ../src/core/session.c:1132
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Gabim gjatë analizimit të file të ruajtur të seancës: %s\n"
+
+#: ../src/core/session.c:1181
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"U gjet një karakteristikë në <marco_session> por ekziston një ID për "
+"seancën"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "Atribut i panjohur %s tek elementi <marco_session>"
+
+#: ../src/core/session.c:1211
+#, c-format
+msgid "nested <window> tag"
+msgstr "tag <window> nested"
+
+#: ../src/core/session.c:1269 ../src/core/session.c:1301
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Atribut %s i panjohur tek elementi <window> "
+
+#: ../src/core/session.c:1373
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Atribut %s i panjohur tek elementi <maximized>"
+
+#: ../src/core/session.c:1433
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Atribut %s i panjohur tek elementi <geometry>"
+
+#: ../src/core/session.c:1453
+#, c-format
+msgid "Unknown element %s"
+msgstr "Element %s i panjohur"
+
+#: ../src/core/session.c:1879
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Gabim gjatë lëshimit të dritares së dialogut të marco për të "
+"paralajmëruar që programi nuk suporton administrimin e seancës: %s\n"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Gabim gjatë hapjes së file log të debug: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Gabim gjatë operacionit të fdopen() tek file i log %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "File i log %s u hap\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+"Marco është kompiluar pa përfshirë suportin për menyrën bashkë-"
+"dialoguese\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Administruesi i dritares: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Bug në administruesin e dritares: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Paralajmërim i administruesit të dritares:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Gabim i administruesit të dritares: "
+
+#: ../src/core/window-bindings.h:69 ../src/marco.schemas.in.h:6
+msgid "Activate window menu"
+msgstr "Aktivizo menunë e dritares"
+
+#: ../src/core/window-bindings.h:70
+msgid "The keybinding used to activate the window menu."
+msgstr ""
+
+#: ../src/core/window-bindings.h:76 ../src/marco.schemas.in.h:194
+msgid "Toggle fullscreen mode"
+msgstr "Aktivizon/çaktivizon modalitetin me ekran të plotë"
+
+#: ../src/core/window-bindings.h:77
+#, fuzzy
+msgid "The keybinding used to toggle fullscreen mode."
+msgstr "Aktivizon/çaktivizon modalitetin me ekran të plotë"
+
+#: ../src/core/window-bindings.h:80 ../src/marco.schemas.in.h:195
+msgid "Toggle maximization state"
+msgstr "Aktivizon/çaktivizon gjëndjen e maksimizimit"
+
+#: ../src/core/window-bindings.h:81
+msgid "The keybinding used to toggle maximization."
+msgstr ""
+
+#: ../src/core/window-bindings.h:84 ../src/marco.schemas.in.h:193
+msgid "Toggle always on top state"
+msgstr "Aktivizon/çaktivizon gjëndjen gjithmonë në plan të parë"
+
+#: ../src/core/window-bindings.h:85
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows."
+msgstr ""
+
+#: ../src/core/window-bindings.h:92 ../src/marco.schemas.in.h:29
+msgid "Maximize window"
+msgstr "Maksimizo dritaren"
+
+#: ../src/core/window-bindings.h:93
+msgid "The keybinding used to maximize a window."
+msgstr ""
+
+#: ../src/core/window-bindings.h:96 ../src/marco.schemas.in.h:199
+msgid "Unmaximize window"
+msgstr "Çmaksimizo dritaren"
+
+#: ../src/core/window-bindings.h:97
+msgid "The keybinding used to unmaximize a window."
+msgstr ""
+
+#: ../src/core/window-bindings.h:103 ../src/marco.schemas.in.h:196
+msgid "Toggle shaded state"
+msgstr "Aktivizon/çaktivizon palosjen"
+
+#: ../src/core/window-bindings.h:104
+msgid "The keybinding used to toggle shaded/unshaded state."
+msgstr ""
+
+#: ../src/core/window-bindings.h:110 ../src/marco.schemas.in.h:32
+msgid "Minimize window"
+msgstr "Minimizo dritaren"
+
+#: ../src/core/window-bindings.h:111
+msgid "The keybinding used to minimize a window."
+msgstr ""
+
+#: ../src/core/window-bindings.h:114 ../src/marco.schemas.in.h:11
+msgid "Close window"
+msgstr "Mbyll dritaren"
+
+#: ../src/core/window-bindings.h:115
+msgid "The keybinding used to close a window."
+msgstr ""
+
+#: ../src/core/window-bindings.h:118 ../src/marco.schemas.in.h:46
+msgid "Move window"
+msgstr "Lëviz dritaren"
+
+#: ../src/core/window-bindings.h:119
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard."
+msgstr ""
+
+#: ../src/core/window-bindings.h:123 ../src/marco.schemas.in.h:77
+msgid "Resize window"
+msgstr "Ndrysho përmasat e dritares"
+
+#: ../src/core/window-bindings.h:131 ../src/marco.schemas.in.h:197
+msgid "Toggle window on all workspaces"
+msgstr ""
+"Aktivizon/çaktivizon modalitetin dritarja në të gjithë hapësirat e punës"
+
+#: ../src/core/window-bindings.h:132
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one."
+msgstr ""
+
+#: ../src/core/window-bindings.h:138 ../src/marco.schemas.in.h:60
+msgid "Move window to workspace 1"
+msgstr "Zhvendos dritaren në hapësirën e punës 1"
+
+#: ../src/core/window-bindings.h:139
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 1."
+msgstr "Zhvendos dritaren në hapësirën e punës 1"
+
+#: ../src/core/window-bindings.h:142 ../src/marco.schemas.in.h:64
+msgid "Move window to workspace 2"
+msgstr "Zhvendos dritaren në hapësirën e punës 2"
+
+#: ../src/core/window-bindings.h:143
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 2."
+msgstr "Zhvendos dritaren në hapësirën e punës 2"
+
+#: ../src/core/window-bindings.h:146 ../src/marco.schemas.in.h:65
+msgid "Move window to workspace 3"
+msgstr "Zhvendos dritaren në hapësirën e punës 3"
+
+#: ../src/core/window-bindings.h:147
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 3."
+msgstr "Zhvendos dritaren në hapësirën e punës 3"
+
+#: ../src/core/window-bindings.h:150 ../src/marco.schemas.in.h:66
+msgid "Move window to workspace 4"
+msgstr "Zhvendos dritaren në hapësirën e punës 4"
+
+#: ../src/core/window-bindings.h:151
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 4."
+msgstr "Zhvendos dritaren në hapësirën e punës 4"
+
+#: ../src/core/window-bindings.h:154 ../src/marco.schemas.in.h:67
+msgid "Move window to workspace 5"
+msgstr "Zhvendos dritaren në hapësirën e punës 5"
+
+#: ../src/core/window-bindings.h:155
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 5."
+msgstr "Zhvendos dritaren në hapësirën e punës 5"
+
+#: ../src/core/window-bindings.h:158 ../src/marco.schemas.in.h:68
+msgid "Move window to workspace 6"
+msgstr "Zhvendos dritaren në hapësirën e punës 6"
+
+#: ../src/core/window-bindings.h:159
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 6."
+msgstr "Zhvendos dritaren në hapësirën e punës 6"
+
+#: ../src/core/window-bindings.h:162 ../src/marco.schemas.in.h:69
+msgid "Move window to workspace 7"
+msgstr "Zhvendos dritaren në hapësirën e punës 7"
+
+#: ../src/core/window-bindings.h:163
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 7."
+msgstr "Zhvendos dritaren në hapësirën e punës 7"
+
+#: ../src/core/window-bindings.h:166 ../src/marco.schemas.in.h:70
+msgid "Move window to workspace 8"
+msgstr "Zhvendos dritaren në hapësirën e punës 8"
+
+#: ../src/core/window-bindings.h:167
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 8."
+msgstr "Zhvendos dritaren në hapësirën e punës 8"
+
+#: ../src/core/window-bindings.h:170 ../src/marco.schemas.in.h:71
+msgid "Move window to workspace 9"
+msgstr "Zhvendos dritaren në hapësirën e punës 9"
+
+#: ../src/core/window-bindings.h:171
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 9."
+msgstr "Zhvendos dritaren në hapësirën e punës 9"
+
+#: ../src/core/window-bindings.h:174 ../src/marco.schemas.in.h:61
+msgid "Move window to workspace 10"
+msgstr "Zhvendos dritaren në hapësirën e punës 10"
+
+#: ../src/core/window-bindings.h:175
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 10."
+msgstr "Zhvendos dritaren në hapësirën e punës 10"
+
+#: ../src/core/window-bindings.h:178 ../src/marco.schemas.in.h:62
+msgid "Move window to workspace 11"
+msgstr "Zhvendos dritaren në hapësirën e punës 11"
+
+#: ../src/core/window-bindings.h:179
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 11."
+msgstr "Zhvendos dritaren në hapësirën e punës 11"
+
+#: ../src/core/window-bindings.h:182 ../src/marco.schemas.in.h:63
+msgid "Move window to workspace 12"
+msgstr "Zhvendos dritaren në hapësirën e punës 12"
+
+#: ../src/core/window-bindings.h:183
+#, fuzzy
+msgid "The keybinding used to move a window to workspace 12."
+msgstr "Zhvendos dritaren në hapësirën e punës 12"
+
+#: ../src/core/window-bindings.h:197 ../src/marco.schemas.in.h:48
+msgid "Move window one workspace to the left"
+msgstr "Zhvendos dritaren tek hapësira e punës në të majtë"
+
+#: ../src/core/window-bindings.h:198
+#, fuzzy
+msgid "The keybinding used to move a window one workspace to the left."
+msgstr "Zhvendos dritaren tek hapësira e punës në të majtë"
+
+#: ../src/core/window-bindings.h:201 ../src/marco.schemas.in.h:49
+msgid "Move window one workspace to the right"
+msgstr "Zhvendos dritaren tek hapësira e punës në të djathtë"
+
+#: ../src/core/window-bindings.h:202
+#, fuzzy
+msgid "The keybinding used to move a window one workspace to the right."
+msgstr "Zhvendos dritaren tek hapësira e punës në të djathtë"
+
+#: ../src/core/window-bindings.h:205 ../src/marco.schemas.in.h:50
+msgid "Move window one workspace up"
+msgstr "Zhvendos dritaren tek hapësira e sipërme e punës"
+
+#: ../src/core/window-bindings.h:206
+#, fuzzy
+msgid "The keybinding used to move a window one workspace up."
+msgstr "Zhvendos dritaren tek hapësira e sipërme e punës"
+
+#: ../src/core/window-bindings.h:209 ../src/marco.schemas.in.h:47
+msgid "Move window one workspace down"
+msgstr "Zhvendos dritaren tek hapësira e poshtme e punës"
+
+#: ../src/core/window-bindings.h:210
+#, fuzzy
+msgid "The keybinding used to move a window one workspace down."
+msgstr "Zhvendos dritaren tek hapësira e poshtme e punës"
+
+#: ../src/core/window-bindings.h:216 ../src/marco.schemas.in.h:75
+msgid "Raise obscured window, otherwise lower"
+msgstr ""
+"Sill dritaren në plan të parë po të jetë e mbuluar, përndryshe çoje në fund"
+
+#: ../src/core/window-bindings.h:217
+msgid ""
+"This keybinding changes whether a window is above or below other windows. "
+"If the window is covered by another one, it raises the window above all "
+"others, and if the window is already fully visible, it lowers it below all "
+"others."
+msgstr ""
+
+#: ../src/core/window-bindings.h:223 ../src/marco.schemas.in.h:76
+msgid "Raise window above other windows"
+msgstr "Sill dritaren në plan të parë"
+
+#: ../src/core/window-bindings.h:224
+#, fuzzy
+msgid "This keybinding raises the window above other windows."
+msgstr "Sill dritaren në plan të parë"
+
+#: ../src/core/window-bindings.h:227 ../src/marco.schemas.in.h:27
+msgid "Lower window below other windows"
+msgstr "Ul dritaret nën dritaret e tjera"
+
+#: ../src/core/window-bindings.h:228
+#, fuzzy
+msgid "This keybinding lowers a window below other windows."
+msgstr "Ul dritaret nën dritaret e tjera"
+
+#: ../src/core/window-bindings.h:232 ../src/marco.schemas.in.h:31
+msgid "Maximize window vertically"
+msgstr "Maksimizo dritaren vertikalisht"
+
+#: ../src/core/window-bindings.h:233
+msgid "This keybinding resizes a window to fill available vertical space."
+msgstr ""
+
+#: ../src/core/window-bindings.h:237 ../src/marco.schemas.in.h:30
+msgid "Maximize window horizontally"
+msgstr "Maksimizo dritaren horizontalisht"
+
+#: ../src/core/window-bindings.h:238
+msgid "This keybinding resizes a window to fill available horizontal space."
+msgstr ""
+
+#: ../src/core/window-bindings.h:243 ../src/marco.schemas.in.h:55
+msgid "Move window to north-west corner"
+msgstr "Zhvendos dritaren në këndin veri-perëndimor të ekranit"
+
+#: ../src/core/window-bindings.h:244
+msgid ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:248 ../src/marco.schemas.in.h:54
+msgid "Move window to north-east corner"
+msgstr "Zhvendos dritaren në këndin veri-lindor të ekranit"
+
+#: ../src/core/window-bindings.h:249
+msgid ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:253 ../src/marco.schemas.in.h:58
+msgid "Move window to south-west corner"
+msgstr "Zhvendos dritaren në këndin jug-perëndimor të ekranit"
+
+#: ../src/core/window-bindings.h:254
+msgid ""
+"This keybinding moves a window into the north-east (bottom left) corner of "
+"the screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:258 ../src/marco.schemas.in.h:57
+msgid "Move window to south-east corner"
+msgstr "Zhvendos dritaren në këndin jug-lindje të ekranit"
+
+#: ../src/core/window-bindings.h:259
+msgid ""
+"This keybinding moves a window into the north-east (bottom right) corner of "
+"the screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:264 ../src/marco.schemas.in.h:53
+msgid "Move window to north side of screen"
+msgstr "Zhvendos dritaren në anën në veri të ekranit"
+
+#: ../src/core/window-bindings.h:265
+#, fuzzy
+msgid ""
+"This keybinding moves a window against the north (top) side of the screen."
+msgstr "Zhvendos dritaren në anën në veri të ekranit"
+
+#: ../src/core/window-bindings.h:269 ../src/marco.schemas.in.h:56
+msgid "Move window to south side of screen"
+msgstr "Zhvendos dritaren në anën jugore të ekranit"
+
+#: ../src/core/window-bindings.h:270
+msgid ""
+"This keybinding moves a window against the south (bottom) side of the screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:274 ../src/marco.schemas.in.h:52
+msgid "Move window to east side of screen"
+msgstr "Zhvendos dritaren në anën lindore të ekranit"
+
+#: ../src/core/window-bindings.h:275
+msgid ""
+"This keybinding moves a window against the east (right) side of the screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:279 ../src/marco.schemas.in.h:59
+msgid "Move window to west side of screen"
+msgstr "Zhvendos dritaren në anën perëndimore të ekranit"
+
+#: ../src/core/window-bindings.h:280
+msgid ""
+"This keybinding moves a window against the west (left) side of the screen."
+msgstr ""
+
+#: ../src/core/window-bindings.h:285 ../src/marco.schemas.in.h:51
+#, fuzzy
+msgid "Move window to center of screen"
+msgstr "Zhvendos dritaren në anën lindore të ekranit"
+
+#: ../src/core/window-bindings.h:286
+msgid "This keybinding moves a window into the center of the screen."
+msgstr ""
+
+#. first time through
+#: ../src/core/window.c:5643
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Dritarja %s ja ka dhënë SM_CLIENT_ID vetvetes, në vend që t'a vendoste tek "
+"dritarja WM_CLIENT_LEADER sikurse specifikuar në ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6208
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Dritarja %s ka vendosur një propozim MWM duke treguar që është me madhësi të "
+"ndryshueshme, por nga ana tjetër ka përcaktuar madhësinë minimum %d x %d dhe "
+"madhësinë maksimum %d x %d; gjë që nuk ka shumë kuptim.\n"
+
+#: ../src/core/window-props.c:206
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Aplikativi ka vendosur një _NET_WM_PID %lu të gabuar\n"
+
+#: ../src/core/window-props.c:338
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (në %s)"
+
+#: ../src/core/window-props.c:1420
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+"Është specifikuar një WM_TRANSIENT_FOR dritarja 0x%lx i pavlefshëm për %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Dritarja 0x%lx ka një pronësi %s\n"
+"që duhet të jetë e llojit %s dhe formatit %d\n"
+"dhe aktualisht është e llojit %s dhe formatit %d e n_items %d.\n"
+"Ka shumë mundësi që të jetë një difekt i programit, jo i administruesit të "
+"dritareve.\n"
+"Karakteristikat e dritares janë titulli=\"%s\" klasa=\"%s\" emri=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Pronësia %s e dritares 0x%lx përmban UTF-8 të pavlefshme\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Pronësia %s e dritares 0x%lx përmban UTF-8 të pavlefshme për elementin %d në "
+"listë\n"
+
+#: ../src/marco.desktop.in.h:1 ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(E pakompletuar) Lundrimi funksionon në nivel programi, jo në nivel dritareje"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Një stringë përshkrimi të llojit të gërmave që përcakton një lloj gërme për "
+"shtyllën e titullit të dritares. Përmasa e specifikuar këtu përdoret vetëm "
+"nëse opsioni \"titlebar_font_size\" është caktuar në 0. Gjithashtu, ky "
+"opsion është i çaktivizuar nëse \"titlebar_uses_desktop_font\" është caktuar "
+"në E VËRTETË."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Veprimi për klik-dopjo tek shtylla e titullit"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Veprimi për klik-qendror tek shtylla e titullit"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Veprimi për klik-i djathtë tek shtylla e titullit"
+
+#: ../src/marco.schemas.in.h:7
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Vendvendosja e butonëve tek shtylla e titullit"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Vendvendosja e butonëve tek shtylla e titullit. Vlera duhet të jetë një "
+"stringë, tip \"menu:minimize,maximize,spacer,close\"; dy pikat veçojnë "
+"këndin e majtë të dritares nga i djathti, emrat e pulsantëve duhet të ndahen "
+"me presje. Nuk lejohen butonët e duplikuar. Emrat e panjohur të butonëve do "
+"të shpërfillen në menyrë që butonët e rinj të mund të shtohen në versionet e "
+"ardhshëm të marco, pa prishur përputhshmërinë me versionet më të vjetër. "
+"Një etiketë speciale \"spacer\" mund të përdoret për të shtuar hapësirë "
+"midis dy pulsantësh që gjenden njëri afër tjetrit."
+
+#: ../src/marco.schemas.in.h:9
+msgid "Automatically raises the focused window"
+msgstr "Sill automatikisht në plan të parë dritaret që kanë fokus-in"
+
+#: ../src/marco.schemas.in.h:10
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Duke klikuar një dritare ndërkohë që ky pulsant modifikues është i shtypur "
+"ka si rezultat lëvizjen e dritares (klik i majtë), ridimensionimin e "
+"dritares (tasti qëndror) ose shfaqjen e menusë së dritares (klik i djathtë). "
+"Ndryshuesi është përcaktuar si \"&lt;Alt&gt;\" ose \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.h:12
+msgid "Commands to run in response to keybindings"
+msgstr "Komandat që duhen zbatuar në përgjigje të një kombinimi përshpejtues"
+
+#: ../src/marco.schemas.in.h:13
+msgid "Compositing Manager"
+msgstr "Përgjegjësi i kompozimit"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Control how new windows get focus"
+msgstr "Kontrollon se si dritaret e reja marrin fokusin"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Current theme"
+msgstr "Tema aktuale"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Vonesa në milisekonda për opcionin e \"auto raise\""
+
+#: ../src/marco.schemas.in.h:17
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Përcakton se kur është Marco përgjegjësi i kompozimit."
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Përcakton se kur programet apo sistemi mund të gjenerojnë tingujt 'beeps'; "
+"mund të përdoret e shoqëruar nga 'visual bell' për të mundësuar 'beeps' e "
+"heshtur."
+
+#: ../src/marco.schemas.in.h:19
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Disaktivo funksionet e kërkuara nga programet e vjetër ose jo funksionues"
+
+#: ../src/marco.schemas.in.h:20
+msgid "Enable Visual Bell"
+msgstr "Aktivo 'Visual Bell'"
+
+#: ../src/marco.schemas.in.h:21
+msgid "Hide all windows and focus desktop"
+msgstr "Fshih të gjitha dritaret dhe fokuso desktopin"
+
+#: ../src/marco.schemas.in.h:22
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Nëse caktuar në E VËRTETË dhe modaliteti i fokusit është \"sloppy\" ose "
+"\"mouse\", atëhere dritarja me fokus sillet automatikisht në plan të parë "
+"mbas një vonese të përcaktuar në kyçin \"auto_raise_delay\". Kjo nuk ka të "
+"bëjë me klikimin mbi një dritare për ta sjellë në plan të parë, apo me "
+"hyrjen në një dritare gjatë një veprimi kap-e-tërhiq."
+
+#: ../src/marco.schemas.in.h:23
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Nëse e vërtetë injoron opcionin titlebar_font dhe përdor gërmat e programit "
+"për titujt e dritareve."
+
+#: ../src/marco.schemas.in.h:24
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Nëse caktuar në E VËRTETË, marco i jep përdoruesit më pak komunikim duke "
+"përdorur wireframe, duke shmangur animacionet e të tjera. Është një reduktim "
+"i ndjeshëm i lehtësisë së përdorimit për shumë përdorues, por mund t'i japë "
+"mundësinë aplikativëve legacy të vazhdojnë funksionimin, ashtu sikurse mund "
+"të jetë një kompromis i pranueshëm për terminal serverët. Funksioni "
+"wireframe është i çaktivizuar kur açesibiliteti të jetë duke punuar."
+
+#: ../src/marco.schemas.in.h:25
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Nëse caktuar në E VËRTETË, Marco funksionon në terme aplikativësh në vend "
+"të dritaresh. Koncepti është pak abstrakt, por në vija të përgjithshme një "
+"konfigurim i bazuar tek aplikativët është më shumë i ngjashëm me Mac sesa me "
+"Windows. Kur i jepet fokusi një dritareje në modalitetin e bazuar tek "
+"aplikativët, gati të gjitha dritaret \"ngrihen\". Gjithashtu, në këtë "
+"modalitet, klikimet për caktimin e fokusit nuk kalohen nëpërmjet dritareve "
+"drejt aplikativëve të tjerë. Modaliteti në bazë të apliaktivëve është tani "
+"për tani gati krejtësisht i paplotësuar."
+
+#: ../src/marco.schemas.in.h:26
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Nëse e vërtetë, hiqet lehtësia e përdorimit në favor të konsumit më të ulët"
+
+#: ../src/marco.schemas.in.h:28
+msgid ""
+"Many actions (e.g. clicking in the client area, moving or resizing the "
+"window) normally raise the window as a side-effect. Setting this option to "
+"false, which is strongly discouraged, will decouple raising from other user "
+"actions, and ignore raise requests generated by applications. See http://"
+"bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+msgstr ""
+"Shumë veprime (p.sh. klikimi tek zona klient, zhvendosja apo ndryshimi i "
+"përmasave të dritares) kanë zakonisht si efekt dytësor ngritjen e dritares "
+"në plan të parë. Duke vendosur këtë opsion në FALLSO, veprim ky me të "
+"vërtetë i shkëshilluar, veçohet ngritja nga çdo aksion tjetër i përdoruesit "
+"dhe shpërfillen kërkesat e vënies në plan të parë kryer nga aplikativët. Për "
+"informacione të hollësishme, shikoni http://bugzilla.gnome.org/show_bug.cgi?"
+"id=445447#c6."
+
+#: ../src/marco.schemas.in.h:33
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Ndryshuesi që duhet përdorur për veprimet mbi dritare me pulsantët e mouse"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+"Zhvendos menjëherë dhe në drejtim të kundërt fokusin midis panelëve dhe "
+"desktop-it"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move backwards between panels and the desktop with popup"
+msgstr ""
+"Zhvendos me një dritare popup dhe në drejtim të kundërt fokusin midis "
+"panelëve dhe desktop-it"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move backwards between windows immediately"
+msgstr "Zhvendos menjëherë dhe në drejtim të kundërt fokusin midis dritareve"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move backwards between windows of an application immediately"
+msgstr ""
+"Zhvendos menjëherë dhe në drejtim të kundërt fokusin midis dritareve të një "
+"aplikativi"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move backwards between windows of an application with popup"
+msgstr ""
+"Zhvendos me një dritare popup dhe në drejtim të kundërt fokusin midis "
+"dritareve të një aplikativi"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move between panels and the desktop immediately"
+msgstr "Zhvendos menjëherë fokusin midis panelëve dhe desktop-it"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move between panels and the desktop with popup"
+msgstr "Zhvendos me një dritare popup fokusin midis panelëve dhe desktop-it"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move between windows immediately"
+msgstr "Zhvendos menjëherë fokusin midis dritareve"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move between windows of an application immediately"
+msgstr "Zhvendos menjëherë fokusin midis dritareve të një aplikativi"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move between windows of an application with popup"
+msgstr ""
+"Zhvendos me një dritare popup fokusin midis dritareve të një aplikativi"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move between windows with popup"
+msgstr "Zhvendos me një dritare popup fokusin midis dritareve"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move focus backwards between windows using popup display"
+msgstr ""
+"Zhvendos, duke përdorur një dritare popup dhe në drejtim të kundërt, fokusin "
+"midis dritareve"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Name of workspace"
+msgstr "Emri i hapësirës së punës"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Number of workspaces"
+msgstr "Numri i hapësirave të punës"
+
+#: ../src/marco.schemas.in.h:74
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Numri i hapësirave të punës. Duhet të jetë më i madh se zero dhe ka një kufi "
+"maksimum të paracaktuar për të shmangur rrezikun e bërjes të "
+"pashfrytëzueshëm të mjedisit të punës duke kërkuar padashje një numër tepër "
+"të madh hapësirash pune."
+
+#: ../src/marco.schemas.in.h:78
+msgid "Run a defined command"
+msgstr "Zbato një komandë të përcaktuar"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Run a terminal"
+msgstr "Zbato një terminal"
+
+#: ../src/marco.schemas.in.h:80
+msgid "Show the panel menu"
+msgstr "Shfaq menunë e panelit"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Show the panel run application dialog"
+msgstr "Shfaq dritaren e dialogut \"Zbato aplikativin\""
+
+#: ../src/marco.schemas.in.h:82
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Disa aplikativë nuk respektojnë specifikat duke shkaktuar funksionime të "
+"gabuara tek window manager. Ky opsion vendos Marco në një modalitet "
+"rigorozisht korrekt, që afron një interfaqe përdoruesi jokontradiktore, me "
+"përjashtim të rasteve kur duhet ekzekutuar ndonjë aplikativ keqfunksionues."
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 1"
+msgstr "Kalo tek hapësira e punës 1"
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace 10"
+msgstr "Kalo tek hapësira e punës 10"
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace 11"
+msgstr "Kalo tek hapësira e punës 11"
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace 12"
+msgstr "Kalo tek hapësira e punës 12"
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace 2"
+msgstr "Kalo tek hapësira e punës 2"
+
+#: ../src/marco.schemas.in.h:88
+msgid "Switch to workspace 3"
+msgstr "Kalo tek hapësira e punës 3"
+
+#: ../src/marco.schemas.in.h:89
+msgid "Switch to workspace 4"
+msgstr "Kalo tek hapësira e punës 4"
+
+#: ../src/marco.schemas.in.h:90
+msgid "Switch to workspace 5"
+msgstr "Kalo tek hapësira e punës 5"
+
+#: ../src/marco.schemas.in.h:91
+msgid "Switch to workspace 6"
+msgstr "Kalo tek hapësira e punës 6"
+
+#: ../src/marco.schemas.in.h:92
+msgid "Switch to workspace 7"
+msgstr "Kalo tek hapësira e punës 7"
+
+#: ../src/marco.schemas.in.h:93
+msgid "Switch to workspace 8"
+msgstr "Kalo tek hapësira e punës 8"
+
+#: ../src/marco.schemas.in.h:94
+msgid "Switch to workspace 9"
+msgstr "Kalo tek hapësira e punës 9"
+
+#: ../src/marco.schemas.in.h:95
+msgid "Switch to workspace above this one"
+msgstr "Kalo tek hapësira e punës sipër"
+
+#: ../src/marco.schemas.in.h:96
+msgid "Switch to workspace below this one"
+msgstr "Kalo tek hapësira e punës poshtë"
+
+#: ../src/marco.schemas.in.h:97
+msgid "Switch to workspace on the left"
+msgstr "Kalo tek hapësira e punës majtas"
+
+#: ../src/marco.schemas.in.h:98
+msgid "Switch to workspace on the right"
+msgstr "Kalo tek hapësira e punës djathtas"
+
+#: ../src/marco.schemas.in.h:99
+msgid "System Bell is Audible"
+msgstr "Zilja e sistemit është e dëgjueshme"
+
+#: ../src/marco.schemas.in.h:100
+msgid "Take a screenshot"
+msgstr "Merr një pamje ekrani"
+
+#: ../src/marco.schemas.in.h:101
+msgid "Take a screenshot of a window"
+msgstr "Merr një pamje të një dritareje"
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Tregon sesi Marco kryen njoftimin viziv që zilja e sistemit apo ndonjë "
+"tregues tjetër \"zileje\" aplikativi është duke rënë. Tani për tani pranohen "
+"dy vlera: \"fullscreen\", që shkakton një flash në bardhë e zi në të gjithë "
+"ekranin, dhe \"frame_flash\" që shkakton ndriçimin e shtyllës së titullit të "
+"aplikativit që ka dërguar sinjalin e ziles. Nëse aplikativi që ka dërguar "
+"sinjalin e ziles është i panjohur (sikurse ndodh në rastin e ziles sl "
+"sistemit), do të ndriçohet dritarja që në atë moment ka fokusin."
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Kyçet /apps/marco/global_keybindings/run_command_N përçaktojnë kombinimet "
+"e tasteve të tastierës që korrespondojnë me këto komanda. Duke shtypur "
+"tastet e kombinimit që korrespondon me kyçin run_command_N, do të zbatohet "
+"komanda command_N."
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Kyçi /apps/marco/global_keybindings/run_command_screenshot përcakton një "
+"kombinim tastesh në tastierë që shkakton thirrjen e komandës së specifikuar "
+"nga ky rregullim."
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Kyçi /apps/marco/global_keybindings/run_command_window_screenshot "
+"përcakton një kombinim tastesh në tastierë që shkakton thirrjen e komandës "
+"së specifikuar nga ky rregullim."
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues që zbaton komandën me numurin korrispondues në /apps/"
+"marco/keybinding_commands. Forma është \"&lt;Control&gt;a\" ose \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla "
+"sidhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky "
+"opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë "
+"asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës mbi hapësirën "
+"aktuale të punës. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe "
+"shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion "
+"vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë asnjë "
+"kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës poshtë "
+"hapësirës aktuale të punës. Forma është \"&lt;Control&gt;a\" ose \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si "
+"dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion "
+"vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë asnjë "
+"kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës në të majtë "
+"të hapësirës aktuale të punës. Forma është \"&lt;Control&gt;a\" ose \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si "
+"dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion "
+"vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë asnjë "
+"kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës në të djathtë "
+"të hapësirës aktuale të punës. Forma është \"&lt;Control&gt;a\" ose \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si "
+"dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion "
+"vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë asnjë "
+"kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 1. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 10. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 11. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 12. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 2. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 3. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 4. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 5. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 6. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 7. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 8. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për t'u zhvendosur në hapësirën e punës 9. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të aktivizuar menunë e dritares. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për mbyllur një dritare. Forma është \"&lt;"
+"Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i "
+"gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe "
+"\"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale \"disabled\", "
+"atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të aktivizuar \"modalitetin lëvizje\" "
+"dhe për të lëvizur dritaren duke përdorur tastierën. Forma është \"&lt;"
+"Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i "
+"gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe "
+"\"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale \"disabled\", "
+"atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të aktivizuar \"modalitetin ripërmasim"
+"\" dhe për të ripërmasuar dritaren duke përdorur tastierën. Forma është "
+"\"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i "
+"gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe "
+"\"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale \"disabled\", "
+"atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të fshehur të gjitha dritaret normale "
+"dhe për t'i caktuar fokusin desktop-it. Forma është \"&lt;Control&gt;a\" ose "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të "
+"vogla si dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse "
+"ky opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë "
+"asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të maksimizuar një dritare. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të minimizuar një dritare. Forma është "
+"\"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i "
+"gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe "
+"\"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale \"disabled\", "
+"atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare një hapësirë "
+"pune më poshtë. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe "
+"shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion "
+"vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë asnjë "
+"kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare një hapësirë "
+"pune majtas. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare një hapësirë "
+"pune djathtas. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe "
+"shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion "
+"vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë asnjë "
+"kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare një hapësirë "
+"pune më poshtë. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe "
+"shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion "
+"vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë asnjë "
+"kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 1. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 10. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 11. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 12. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 2. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 3. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 4. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 5. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 6. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 7. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 8. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur një dritare tek hapësira "
+"e punës 9. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:146
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis panelëve "
+"dhe desktop-it në drejtim të kundërt, duke shfaqur një dritare popup. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:147
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis panelëve "
+"dhe desktop-it në drejtim të kundërt, pa shfaqur një dritare popup. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application without a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis dritareve "
+"të një aplikativi në drejtim të kundërt, pa shfaqur një dritare popup. "
+"Shtypja e njëkohëshme e këtij kombinimi dhe tastit \"shift\" inverton "
+"drejtimin. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application, using a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis dritareve "
+"të një aplikativi në drejtim të kundërt, duke shfaqur një dritare popup. "
+"Shtypja e njëkohëshme e këtij kombinimi dhe tastit \"shift\" inverton "
+"drejtimin. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis dritareve "
+"në drejtim të kundërt, pa shfaqur një dritare popup. Shtypja e njëkohëshme e "
+"këtij kombinimi dhe tastit \"shift\" inverton drejtimin. Forma është \"&lt;"
+"Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i "
+"gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe "
+"\"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale \"disabled\", "
+"atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:151
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis dritareve "
+"në drejtim të kundërt, duke shfaqur një dritare popup. Shtypja e njëkohëshme "
+"e këtij kombinimi dhe tastit \"shift\" inverton drejtimin. Forma është \"&lt;"
+"Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i "
+"gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe "
+"\"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale \"disabled\", "
+"atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis panelëve "
+"dhe desktop-it, duke shfaqur një dritare popup. Forma është \"&lt;Control&gt;"
+"a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të "
+"mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;"
+"\". Nëse ky opsion vendoset tek stringa speciale \"disabled\", atëhere nuk "
+"do të ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis panelëve "
+"dhe desktop-it, pa shfaqur një dritare popup. Forma është \"&lt;Control&gt;a"
+"\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, "
+"të vogla si dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". "
+"Nëse ky opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të "
+"ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"The keybinding used to move focus between windows of an application without "
+"a popup window. Holding the \"shift\" key while using this binding reverses "
+"the direction of movement. The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis dritareve "
+"të një aplikativi, pa shfaqur një dritare popup. Shtypja e njëkohëshme e "
+"këtij kombinimi dhe tastit \"shift\" inverton drejtimin e lëvizjes. Forma "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"The keybinding used to move focus between windows of an application, using a "
+"popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while "
+"using this binding reverses the direction of movement. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis dritareve "
+"të një aplikativi, duke përdorur një dritare popup. (Zakonisht &lt;Alt&gt;"
+"F6) Duke shtypur njëkohësisht tastin \"shift\" dhe këtë lidhës invertohet "
+"drejtimi i lëvizjes. Formati është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; "
+"&lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe i "
+"shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion "
+"vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë asnjë "
+"kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis dritareve "
+"të një aplikativi, pa përdorur një dritare popup. (Zakonisht &lt;Alt&gt;Esc) "
+"Duke shtypur njëkohësisht tastin \"shift\" dhe këtë lidhës invertohet "
+"drejtimi i lëvizjes. Formati është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; "
+"&lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe i "
+"shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion "
+"vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë asnjë "
+"kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të zhvendosur fokusin midis dritareve, "
+"duke përdorur një dritare popup. (Zakonisht &lt;Alt&gt;Tab) Duke shtypur "
+"njëkohësisht tastin \"shift\" dhe këtë lidhës invertohet drejtimi i "
+"lëvizjes. Formati është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; &lt;Alt&gt;"
+"F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe i shkurtimeve si "
+"p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:158
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të shkëmbyer modalitetin gjithmonë në "
+"plan të parë. Një dritare në plan të parë rezulton gjithmonë e dukshme, duke "
+"ju mbivënë dritareve të tjera. Formati është \"&lt;Control&gt;a\" ose \"&lt;"
+"Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si "
+"dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky "
+"opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë "
+"asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:159
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të shkëmbyer modalitetin me ekran të "
+"plotë. Formati është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; &lt;Alt&gt;F1"
+"\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe i shkurtimeve si p."
+"sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:160
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të shkëmbyer maksimizimin. Formati "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe i shkurtimeve si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:161
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të shkëmbyer gjëndjen palosur/"
+"shpalosur. Formati është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; &lt;Alt&gt;"
+"F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe i shkurtimeve si "
+"p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek "
+"stringa speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim "
+"përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:162
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të bërë që dritarja të jetë e "
+"pranishme në të gjitha hapësirat e punës apo vetëm në një hapësirë. Formati "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe i shkurtimeve si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të çmaksimizuar një dritare. Formati "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe i shkurtimeve si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:164
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinimi përshpejtues i përdorur për të shfaqur dialogun e panelit \"Zbato "
+"aplikativin\". Formati është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; &lt;"
+"Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe i "
+"shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion "
+"vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë asnjë "
+"kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:165
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues që ekzekuton një terminal. Formati është \"&lt;"
+"Control&gt;a\" ose \"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i "
+"gërmave të mëdha, të vogla si dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe "
+"\"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale \"disabled\", "
+"atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:166
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues që ekzekuton veglën e panelit të marrjes së pamjeve "
+"për të marrë një pamje të dritares. Formati është \"&lt;Control&gt;a\" ose "
+"\"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të "
+"vogla si dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". "
+"Nëse ky opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të "
+"ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:167
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinimi përshpejtues që ekzekuton veglën e panelit të marrjes së pamjeve. "
+"Formati është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; &lt;Alt&gt;F1\". "
+"Lejohet përdorimi i gërmave të mëdha, të vogla si dhe i shkurtimeve si p.sh. "
+"\"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa "
+"speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues "
+"për këtë veprim."
+
+#: ../src/marco.schemas.in.h:168
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinimi përshpejtues për të shfaqur menunë kryesore të panelit. Formati "
+"është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet "
+"përdorimi i gërmave të mëdha, të vogla si dhe i shkurtimeve si p.sh. \"&lt;"
+"Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale "
+"\"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë "
+"veprim."
+
+#: ../src/marco.schemas.in.h:169
+msgid "The name of a workspace."
+msgstr "Emri i hapësirës së punës."
+
+#: ../src/marco.schemas.in.h:170
+msgid "The screenshot command"
+msgstr "Komanda për marrjen e pamjeve"
+
+#: ../src/marco.schemas.in.h:171
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Tema përcakton paraqitjen e kornizave të dritareve, shtyllës të titullit, e "
+"kështu me rradhë."
+
+#: ../src/marco.schemas.in.h:172
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Intervali i kohës para se dritarja të sillet në plan të parë kur auto_raise "
+"është caktuar në E VËRTETË. Intervali jepet në të mijta të sekondës."
+
+#: ../src/marco.schemas.in.h:173
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Modaliteti i fokusimit përcakton mënyrën e aktivizimit të dritareve. Vlerat "
+"e mundëshme janë tre: \"click\" bën që dritaret të aktivizohen kur klikohen, "
+"\"sloppy\" bën që të aktivizohen kur i kalon kursori sipër dhe \"mouse\" bën "
+"që fokusi t'i jepet dritares mbi të cilën ndodhet kursori dhe t'i hiqet kur "
+"ky i fundit të lëshojë dritaren."
+
+#: ../src/marco.schemas.in.h:174
+msgid "The window screenshot command"
+msgstr "Komanda për marrjen e pamjes së dritares"
+
+#: ../src/marco.schemas.in.h:175
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another one, it raises the window above all others, "
+"and if the window is already fully visible, it lowers it below all others. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinimi përshpejtues shkëmben pozicionin e një dritareje sipër apo poshtë "
+"dritareve të tjera. Nëse dritarja është e mbuluar nga një dritare tjetër, ai "
+"ngre dritaren sipër të tjerave dhe, nëse dritarja gjendet në plan të parë, "
+"ai e fsheh atë mbas të tjerave. Formati është \"&lt;Control&gt;a\" ose \"&lt;"
+"Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si "
+"dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky "
+"opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë "
+"asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:176
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Kombinim përshpejtues i përdorur për të çuar një dritare poshtë të tjerave. "
+"Formati është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt; &lt;Alt&gt;F1\". "
+"Lejohet përdorimi i gërmave të mëdha, të vogla si dhe i shkurtimeve si p.sh. "
+"\"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky opsion vendoset tek stringa "
+"speciale \"disabled\", atëhere nuk do të ketë asnjë kombinim përshpejtues "
+"për këtë veprim."
+
+#: ../src/marco.schemas.in.h:177
+msgid ""
+"This keybinding moves a window against the north (top) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinim përshpejtues i përdorur për të çuar një dritare në kontakt me anën "
+"në veri (sipër) të ekranit. Formati është \"&lt;Control&gt;a\" ose \"&lt;"
+"Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si "
+"dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky "
+"opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë "
+"asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:178
+#, fuzzy
+msgid ""
+"This keybinding moves a window into the center of the screen. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinim përshpejtues i përdorur për të çuar një dritare në kontakt me anën "
+"perëndimore (e majtë) të ekranit. Formati është \"&lt;Control&gt;a\" ose "
+"\"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të "
+"vogla si dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". "
+"Nëse ky opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të "
+"ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:179
+msgid ""
+"This keybinding moves a window into the east (right) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinim përshpejtues i përdorur për të çuar një dritare në kontakt me anën "
+"jugore (djathtas) të ekranit. Formati është \"&lt;Control&gt;a\" ose \"&lt;"
+"Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si "
+"dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky "
+"opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë "
+"asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:180
+msgid ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinim përshpejtues i përdorur për të çuar një dritare në kontakt me anën "
+"veri-jugore (sipër djathtas) të ekranit. Formati është \"&lt;Control&gt;a\" "
+"ose \"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, "
+"të vogla si dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". "
+"Nëse ky opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të "
+"ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:181
+msgid ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinim përshpejtues i përdorur për të çuar një dritare në kontakt me anën "
+"veri-perëndimore (sipër majtas) të ekranit. Formati është \"&lt;Control&gt;a"
+"\" ose \"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të "
+"mëdha, të vogla si dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;"
+"Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale \"disabled\", "
+"atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:182
+msgid ""
+"This keybinding moves a window into the south (bottom) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinim përshpejtues i përdorur për të çuar një dritare në kontakt me anën "
+"sud (e poshtme) të ekranit. Formati është \"&lt;Control&gt;a\" ose \"&lt;"
+"Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si "
+"dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". Nëse ky "
+"opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të ketë "
+"asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:183
+msgid ""
+"This keybinding moves a window into the south-east (bottom right) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinim përshpejtues i përdorur për të çuar një dritare në kontakt me anën "
+"jug-lindje (poshtë djathtas) të ekranit. Formati është \"&lt;Control&gt;a\" "
+"ose \"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, "
+"të vogla si dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". "
+"Nëse ky opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të "
+"ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:184
+msgid ""
+"This keybinding moves a window into the south-west (bottom left) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Kombinim përshpejtues i përdorur për të çuar një dritare në kontakt me anën "
+"jug-perëndimore (poshtë majtas) të ekranit. Formati është \"&lt;Control&gt;a"
+"\" ose \"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të "
+"mëdha, të vogla si dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;"
+"Ctrl&gt;\". Nëse ky opsion vendoset tek stringa speciale \"disabled\", "
+"atëhere nuk do të ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:185
+msgid ""
+"This keybinding moves a window into the west (left) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Kombinim përshpejtues i përdorur për të çuar një dritare në kontakt me anën "
+"perëndimore (e majtë) të ekranit. Formati është \"&lt;Control&gt;a\" ose "
+"\"&lt;Shift&gt; &lt;Alt&gt;F1\". Lejohet përdorimi i gërmave të mëdha, të "
+"vogla si dhe i shkurtimeve si p.sh. \"&lt;Ctl&gt;\" dhe \"&lt;Ctrl&gt;\". "
+"Nëse ky opsion vendoset tek stringa speciale \"disabled\", atëhere nuk do të "
+"ketë asnjë kombinim përshpejtues për këtë veprim."
+
+#: ../src/marco.schemas.in.h:186
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Rrugëshkurtim për të sjellë në plan të parë dritaren aktive. Forma është "
+"\"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;F1\". Lejohet përdorimi i "
+"gërmave të mëdha, të vogla si dhe shkurtimet si p.sh. \"&lt;Ctl&gt;\" apo "
+"\"&lt;Ctrl&gt;\". Nëse ky opcion vendoset tek \"disabled\", atëhere nuk do "
+"të ketë asnjë rrugëshkurtim për këtë veprim."
+
+#: ../src/marco.schemas.in.h:187
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Rrugëshkurtim për t'ia përshtatur dritaren hapësirës horizontale në "
+"dispozicion. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" apo \"&lt;Ctrl&gt;\". Nëse ky opcion vendoset tek "
+"\"disabled\", atëhere nuk do të ketë asnjë rrugëshkurtim për këtë veprim."
+
+#: ../src/marco.schemas.in.h:188
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Rrugëshkurtim për t'ia përshtatur dritaren hapësirës vertikale në "
+"dispozicion. Forma është \"&lt;Control&gt;a\" ose \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Lejohet përdorimi i gërmave të mëdha, të vogla si dhe shkurtimet si p."
+"sh. \"&lt;Ctl&gt;\" apo \"&lt;Ctrl&gt;\". Nëse ky opcion vendoset tek "
+"\"disabled\", atëhere nuk do të ketë asnjë rrugëshkurtim për këtë veprim."
+
+#: ../src/marco.schemas.in.h:189
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ky opsion përcakton efektin e dopio-klik mbi shtyllën e titullit. Opsionet "
+"aktualisht të vlefshme janë \"toggle_shade\" për të palosur/shpalosur "
+"dritaren, \"toggle_maximize\" për të maksimizuar/çmaksimizuar dritaren, "
+"\"toggle_maximize_horizontally\" dhe \"toggle_maximize_vertically\" për të "
+"maksimizuar/çmaksimizuar dritaren vetëm në drejtimin e speçfikuar, \"minimize"
+"\" për të minimizuar dritaren, \"shade\" për të palosur dritaren, \"menu\" "
+"për të shfaqur menunë e dritares, \"lower\" për të vendosur dritaren nën "
+"dritaret e tjera dhe \"none\" për të mos kryer asnjë veprim."
+
+#: ../src/marco.schemas.in.h:190
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ky opsion përcakton efektin e klikimit me pulsantin qendror mbi shtyllën e "
+"titullit. Opsionet aktualisht të vlefshme janë \"toggle_shade\" për të "
+"palosur/shpalosur dritaren, \"toggle_maximize\" për të maksimizuar/"
+"çmaksimizuar dritaren, \"toggle_maximize_horizontally\" dhe "
+"\"toggle_maximize_vertically\" për të maksimizuar/çmaksimizuar dritaren "
+"vetëm në drejtimin e speçfikuar, \"minimize\" për të minimizuar dritaren, "
+"\"shade\" për të palosur dritaren, \"menu\" për të shfaqur menunë e "
+"dritares, \"lower\" për të vendosur dritaren nën dritaret e tjera dhe \"none"
+"\" për të mos kryer asnjë veprim."
+
+#: ../src/marco.schemas.in.h:191
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ky opsion përcakton efektin e klikimit me pulsantin e djathtë mbi shtyllën e "
+"titullit. Opsionet aktualisht të vlefshme janë \"toggle_shade\" për të "
+"palosur/shpalosur dritaren, \"toggle_maximize\" për të maksimizuar/"
+"çmaksimizuar dritaren, \"toggle_maximize_horizontally\" dhe "
+"\"toggle_maximize_vertically\" për të maksimizuar/çmaksimizuar dritaren "
+"vetëm në drejtimin e speçfikuar, \"minimize\" për të minimizuar dritaren, "
+"\"shade\" për të palosur dritaren, \"menu\" për të shfaqur menunë e "
+"dritares, \"lower\" për të vendosur dritaren nën dritaret e tjera dhe \"none"
+"\" për të mos kryer asnjë veprim."
+
+#: ../src/marco.schemas.in.h:192
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Ky opsion afron një kontroll shtesë në lidhje me menyrën me të cilën "
+"dritaret e sapokrijuara marrin fokusin. Lejohen dy vlera: \"smart\" për të "
+"aplikuar modalitetin normal të fokusimit të përdoruesit dhe \"strict\" për "
+"të mos i dhënë fokusin dritares së nisur nga një terminal."
+
+#: ../src/marco.schemas.in.h:198
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Aktivizon një sinjal viziv kur një aplikativ ose sistemi lëshon një \"bip\" "
+"ose \"i bie ziles\"; e dobishme për ata që kanë probleme dëgjimi apo për "
+"përdorim në mjedise me zhurmë."
+
+#: ../src/marco.schemas.in.h:200
+msgid "Use standard system font in window titles"
+msgstr "Përdor gërmat e paracaktuara të sistemit për titujt e dritares"
+
+#: ../src/marco.schemas.in.h:201
+msgid "Visual Bell Type"
+msgstr "Lloji i sinjalit të dukshëm"
+
+#: ../src/marco.schemas.in.h:202
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Nëse ngritja duhet të jetë një efekt dytësor i aktiviteteve të tjera të "
+"përdoruesit"
+
+#: ../src/marco.schemas.in.h:203
+msgid "Window focus mode"
+msgstr "Modaliteti i fokusimit të dritareve"
+
+#: ../src/marco.schemas.in.h:204
+msgid "Window title font"
+msgstr "Gërmat e titullit të dritares"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Përdorimi: %s\n"
+
+#: ../src/ui/frames.c:1077
+msgid "Close Window"
+msgstr "Mbyll dritaren"
+
+#: ../src/ui/frames.c:1080
+msgid "Window Menu"
+msgstr "Menuja e dritares"
+
+#: ../src/ui/frames.c:1083
+msgid "Minimize Window"
+msgstr "Minimizo dritaren"
+
+#: ../src/ui/frames.c:1086
+msgid "Maximize Window"
+msgstr "Maksimizo dritaren"
+
+#: ../src/ui/frames.c:1089
+msgid "Unmaximize Window"
+msgstr "Çmaksimizo dritaren"
+
+#: ../src/ui/frames.c:1092
+msgid "Roll Up Window"
+msgstr "Palos dritaren"
+
+#: ../src/ui/frames.c:1095
+msgid "Unroll Window"
+msgstr "Shpalos dritaren"
+
+#: ../src/ui/frames.c:1098
+msgid "Keep Window On Top"
+msgstr "Mbaj dritaren në plan të parë"
+
+#: ../src/ui/frames.c:1101
+msgid "Remove Window From Top"
+msgstr "Hiq dritaren nga plani i parë"
+
+#: ../src/ui/frames.c:1104
+msgid "Always On Visible Workspace"
+msgstr "Gjithmonë tek hapësira e punës e dukshme"
+
+#: ../src/ui/frames.c:1107
+msgid "Put Window On Only One Workspace"
+msgstr "Vendos dritaren vetëm në një hapësirë pune"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Mi_nimizo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ksimizo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Çmak_simizo"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Palose"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Shpalose"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Lëvize"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Ripërmaso"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Lëviz _shtyllën e titullit në ekran"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Gjithmonë në plan _të parë"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Gjithmonë tek hapësira e dukshme e punës"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Vetëm në këtë hapësirë pune"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Zhvendose tek hapësira e punës _majtas"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Zhvendose tek hapësira e punës d_jathtas"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Zhvendose tek hapësira e p_unës sipër"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Zhvendose tek hapësira e punës _poshtë"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Mbyll"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Hapësira e punës %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Hapësira e punës 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Hapësira e punës %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Zhvendose tek një tjetër hap_ësirë pune"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/ui/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr "Asnjë përgjigje nga «%s»."
+
+#: ../src/ui/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Mund të vendosni të prisni pak duke lejuar vazhdimin e aplikativit, ose të "
+"detyroni përfundimin e tij."
+
+#: ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr "_Prit"
+
+#: ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "_Detyro mbarimin"
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr "Titulli"
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr "Klasa"
+
+#: ../src/ui/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Këto dritare nuk suportojnë \"ruaj rregullimet aktuale\" dhe duhet të "
+"rinisen nga ju kur të futeni përsëri."
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Gabim gjatë ekzekutimit të \"%s\":\n"
+"%s"
+
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:256
+msgid "top"
+msgstr "sipër"
+
+#: ../src/ui/theme.c:258
+msgid "bottom"
+msgstr "poshtë"
+
+#: ../src/ui/theme.c:260
+msgid "left"
+msgstr "majtas"
+
+#: ../src/ui/theme.c:262
+msgid "right"
+msgstr "djathtas"
+
+#: ../src/ui/theme.c:289
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "gjeometria e kornizës nuk specifikon përmasën \"%s\""
+
+#: ../src/ui/theme.c:308
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"gjeometria e kornizës nuk specifikon përmasën \"%s\" për kornizën \"%s\""
+
+#: ../src/ui/theme.c:345
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Proporcionet %g të butonit nuk kanë kuptim"
+
+#: ../src/ui/theme.c:357
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Gjeometria e kornizës nuk specifikon madhësinë e pulsantëve"
+
+#: ../src/ui/theme.c:1022
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Gradient-ët duhet të kenë të paktën dy ngjyra"
+
+#: ../src/ui/theme.c:1148
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specifikimi i ngjyrave GTK duhet të ketë gjëndjen midis kllapave, p.sh. gtk:"
+"fg[NORMAL] ku NORMAL është gjëndja; i pamundur analizimi i \"%s\""
+
+#: ../src/ui/theme.c:1162
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specifikimi i ngjyrave GTK duhet të ketë një kllapë të mbyllur mbas "
+"gjëndjes, p.sh. gtk:fg[NORMAL] ku NORMAL është gjendja; i pamundur analizimi "
+"i \"%s\""
+
+#: ../src/ui/theme.c:1173
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Gjëndje \"%s\" e pakuptueshme në specifikimin e ngjyrës"
+
+#: ../src/ui/theme.c:1186
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Përbërës i ngjyrës \"%s\" i pakuptueshëm në specifikimin e ngjyrës"
+
+#: ../src/ui/theme.c:1216
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Formati i përzierjes është \"blend/bg_color/fg_color/alpha\", \"%s\" nuk bën "
+"pjesë në format"
+
+#: ../src/ui/theme.c:1227
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "I pamundur analizimi i vlerës alpha \"%s\" në ngjyrën e përzier"
+
+#: ../src/ui/theme.c:1237
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Vlera alpha \"%s\" në ngjyrën e përzier nuk gjendet midis 0.0 dhe 1.0"
+
+#: ../src/ui/theme.c:1284
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Formati i hijes është \"shade/base_color/factor\", \"%s\" nuk bën pjesë në "
+"format"
+
+#: ../src/ui/theme.c:1295
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "I pamundur analizimi i faktorit të hijes \"%s\" në ngjyrën me hije"
+
+#: ../src/ui/theme.c:1305
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Faktori hije \"%s\" në ngjyrën me hije është negativ"
+
+#: ../src/ui/theme.c:1334
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Nuk arrij të analizoj ngjyrën \"%s\""
+
+#: ../src/ui/theme.c:1584
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Shprehja e koordinatës përmban gërmën '%s' që nuk lejohet"
+
+#: ../src/ui/theme.c:1611
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Shprehja e koordinatës përmban numrin me presje të lëvizëshme '%s' që nuk "
+"mund të analizohet"
+
+#: ../src/ui/theme.c:1625
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+"Shprehja e koordinatës përmban numrin e plotë '%s' që nuk mund të analizohet"
+
+#: ../src/ui/theme.c:1747
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Shprehja e koordinatës përmban një operator të panjohur në fillim të këtij "
+"teksti: \"%s\""
+
+#: ../src/ui/theme.c:1804
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Shprehja e koordinatës është bosh ose e pakuptueshme"
+
+#: ../src/ui/theme.c:1915 ../src/ui/theme.c:1925 ../src/ui/theme.c:1959
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Shprehja e koordinatës rezulton një pjestim me zero"
+
+#: ../src/ui/theme.c:1967
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Shprehja e koordinatës përpiqet të përdorë një operator në një numër me "
+"presje të lëvizëshme"
+
+#: ../src/ui/theme.c:2023
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Shprehja e koordinatës ka një operator \"%s\" atje ku pritej një operim"
+
+#: ../src/ui/theme.c:2032
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Shprehja e koordinatës ka një operim atje ku pritej një operator"
+
+#: ../src/ui/theme.c:2040
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"Shprehja e koordinatës mbaron me një operator në vend që të mbarojë me një "
+"operim"
+
+#: ../src/ui/theme.c:2050
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Shprehja e koordinatës ka operatorin \"%c\" të ndjekur nga operatori \"%c\" "
+"pa një operim midis të dyve"
+
+#: ../src/ui/theme.c:2197 ../src/ui/theme.c:2238
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Shprehja e koordinatës ka të ndryshueshmen apo konstanten \"%s\" të panjohur"
+
+#: ../src/ui/theme.c:2292
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Analizuesi i shprehjes së koordinatës ka tejkaluar buffer-in e tij."
+
+#: ../src/ui/theme.c:2321
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Shprehja e koordinatës ka një kllapë të mbyllur pa patur një kllapë të hapur"
+
+#: ../src/ui/theme.c:2385
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Shprehja e koordinatës ka një kllapë të hapur pa patur një kllapë të mbyllur"
+
+#: ../src/ui/theme.c:2396
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Shprehja e koordinatës nuk ka as operatorë e as operime"
+
+#: ../src/ui/theme.c:2598 ../src/ui/theme.c:2618 ../src/ui/theme.c:2638
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Tema përmban një shprehje që ka përfunduar në një gabim: %s\n"
+
+#: ../src/ui/theme.c:4157
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> duhet të "
+"specifikohet për këtë stil kornize"
+
+#: ../src/ui/theme.c:4633 ../src/ui/theme.c:4658
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Mungon <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4702
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Dështoi ngarkimi i temës \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4828 ../src/ui/theme.c:4835 ../src/ui/theme.c:4842
+#: ../src/ui/theme.c:4849 ../src/ui/theme.c:4856
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Asnjë <%s> e përcaktuar për temën \"%s\""
+
+#: ../src/ui/theme.c:4864
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Asnjë stil kornize është përcaktuar për dritaren e llojit \"%s\" tek tema \"%"
+"s\", shto një element <window type=\"%s\" style_set=\"whatever\"/>"
+
+#: ../src/ui/theme.c:5231 ../src/ui/theme.c:5293 ../src/ui/theme.c:5356
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Konstantet e përcaktuara nga përdoruesi duhet të fillojnë me një gërmë të "
+"madhe, \"%s\" nuk fillon me gërmë të madhe"
+
+#: ../src/ui/theme.c:5239 ../src/ui/theme.c:5301 ../src/ui/theme.c:5364
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstantja \"%s\" është përcaktuar një herë"
+
+#: ../src/ui/theme-parser.c:227 ../src/ui/theme-parser.c:245
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Rreshti %d gërma %d: %s"
+
+#: ../src/ui/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atributi \"%s\" është përsëritur dy herë tek i njëjti element <%s>"
+
+#: ../src/ui/theme-parser.c:414 ../src/ui/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atributi \"%s\" tek elementi <%s> është i pavlefshëm për këtë kontekst"
+
+#: ../src/ui/theme-parser.c:500
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Numri i plotë %ld duhet të jetë pozitiv"
+
+#: ../src/ui/theme-parser.c:508
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Numri i plotë %ld është shumë i madh, aktualisht maksimumi është %d"
+
+#: ../src/ui/theme-parser.c:536 ../src/ui/theme-parser.c:652
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "I pamundur analizimi i \"%s\" si numër me presje të lëvizëshme"
+
+#: ../src/ui/theme-parser.c:567 ../src/ui/theme-parser.c:595
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Vlerat Booleane duhet të jenë \"true\" ose \"false\" dhe jo \"%s\""
+
+#: ../src/ui/theme-parser.c:622
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Këndi duhet të jetë midis 0.0 dhe 360.0, e jo %g\n"
+
+#: ../src/ui/theme-parser.c:685
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alpha duhet të jetë midis 0.0 (e tejdukshme) dhe 1.0 (opake), e jo %g\n"
+
+#: ../src/ui/theme-parser.c:750
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Shkallë e titullit \"%s\" e pavlefshme (duhet të jetë njëra prej xx-small,x-"
+"small,small,medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:795 ../src/ui/theme-parser.c:803
+#: ../src/ui/theme-parser.c:885 ../src/ui/theme-parser.c:982
+#: ../src/ui/theme-parser.c:1024 ../src/ui/theme-parser.c:1135
+#: ../src/ui/theme-parser.c:1185 ../src/ui/theme-parser.c:1193
+#: ../src/ui/theme-parser.c:3093 ../src/ui/theme-parser.c:3184
+#: ../src/ui/theme-parser.c:3191 ../src/ui/theme-parser.c:3198
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "Asnjë atribut \"%s\" tek elementi <%s>"
+
+#: ../src/ui/theme-parser.c:919 ../src/ui/theme-parser.c:990
+#: ../src/ui/theme-parser.c:1032 ../src/ui/theme-parser.c:1143
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> emri \"%s\" përdorur për herë të dytë"
+
+#: ../src/ui/theme-parser.c:931 ../src/ui/theme-parser.c:1044
+#: ../src/ui/theme-parser.c:1155
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "Elementi prind<%s> i \"%s\" nuk është përcaktuar"
+
+#: ../src/ui/theme-parser.c:1057
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> gjeometria \"%s\" nuk është përcaktuar"
+
+#: ../src/ui/theme-parser.c:1070
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> duhet të specifikojë një gjeometri ose një prind që ka një gjeometri"
+
+#: ../src/ui/theme-parser.c:1112
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+"Është i nevojshëm specifikimi i një sfondi për një vlerë alpha që të jetë e "
+"kuptueshme"
+
+#: ../src/ui/theme-parser.c:1203
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Lloj \"%s\" i panjohur tek elementi <%s>"
+
+#: ../src/ui/theme-parser.c:1214
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "style_set \"%s\" i panjohur tek elementi <%s>"
+
+#: ../src/ui/theme-parser.c:1222
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Llojit të dritares \"%s\" i është rregullisht caktuar një stil"
+
+#: ../src/ui/theme-parser.c:1258
+msgid "Theme already has a fallback icon"
+msgstr "Tema ka rregullisht një ikonë rikthimi"
+
+#: ../src/ui/theme-parser.c:1270
+msgid "Theme already has a fallback mini_icon"
+msgstr "Tema ka rregullisht një mini-ikonë rikthimi"
+
+#: ../src/ui/theme-parser.c:1283 ../src/ui/theme-parser.c:1347
+#: ../src/ui/theme-parser.c:1636 ../src/ui/theme-parser.c:3285
+#: ../src/ui/theme-parser.c:3339 ../src/ui/theme-parser.c:3511
+#: ../src/ui/theme-parser.c:3727 ../src/ui/theme-parser.c:3765
+#: ../src/ui/theme-parser.c:3803 ../src/ui/theme-parser.c:3841
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Nuk lejohet përdorimi i elementit <%s> mbas <%s>"
+
+#: ../src/ui/theme-parser.c:1373 ../src/ui/theme-parser.c:1460
+#: ../src/ui/theme-parser.c:1530
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Asnjë atribut \"name\" tek elementi <%s>"
+
+#: ../src/ui/theme-parser.c:1380 ../src/ui/theme-parser.c:1467
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Asnjë atribut \"value\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1411 ../src/ui/theme-parser.c:1425
+#: ../src/ui/theme-parser.c:1484
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"I pamundur specifikimi si i button_width/button_height ashtu dhe "
+"proporcionet për butonët"
+
+#: ../src/ui/theme-parser.c:1434
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Distanca \"%s\" është e panjohur"
+
+#: ../src/ui/theme-parser.c:1493
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Proporcioni \"%s\" është i panjohur"
+
+#: ../src/ui/theme-parser.c:1537
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "Asnjë atribut \"top\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1544
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "Asnjë atribut \"bottom\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1551
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "Asnjë atribut \"left\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1558
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "Asnjë atribut \"right\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1590
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Korniza \"%s\" është e panjohur"
+
+#: ../src/ui/theme-parser.c:1736 ../src/ui/theme-parser.c:1850
+#: ../src/ui/theme-parser.c:1961 ../src/ui/theme-parser.c:2192
+#: ../src/ui/theme-parser.c:3023
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "Asnjë atribut \"color\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1743
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "Asnjë atribut \"x1\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1750 ../src/ui/theme-parser.c:2864
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "Asnjë atribut \"y1\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1757
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "Asnjë atribut \"x2\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1764 ../src/ui/theme-parser.c:2871
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "Asnjë atribut \"y2\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1857 ../src/ui/theme-parser.c:1968
+#: ../src/ui/theme-parser.c:2117 ../src/ui/theme-parser.c:2199
+#: ../src/ui/theme-parser.c:2306 ../src/ui/theme-parser.c:2408
+#: ../src/ui/theme-parser.c:2630 ../src/ui/theme-parser.c:2758
+#: ../src/ui/theme-parser.c:2857 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3030
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "Asnjë atribut \"x\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1864 ../src/ui/theme-parser.c:1975
+#: ../src/ui/theme-parser.c:2124 ../src/ui/theme-parser.c:2206
+#: ../src/ui/theme-parser.c:2313 ../src/ui/theme-parser.c:2415
+#: ../src/ui/theme-parser.c:2637 ../src/ui/theme-parser.c:2765
+#: ../src/ui/theme-parser.c:2941 ../src/ui/theme-parser.c:3037
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "Asnjë atribut \"y\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1871 ../src/ui/theme-parser.c:1982
+#: ../src/ui/theme-parser.c:2131 ../src/ui/theme-parser.c:2213
+#: ../src/ui/theme-parser.c:2320 ../src/ui/theme-parser.c:2422
+#: ../src/ui/theme-parser.c:2644 ../src/ui/theme-parser.c:2772
+#: ../src/ui/theme-parser.c:2948
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "Asnjë atribut \"width\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1878 ../src/ui/theme-parser.c:1989
+#: ../src/ui/theme-parser.c:2138 ../src/ui/theme-parser.c:2220
+#: ../src/ui/theme-parser.c:2327 ../src/ui/theme-parser.c:2429
+#: ../src/ui/theme-parser.c:2651 ../src/ui/theme-parser.c:2779
+#: ../src/ui/theme-parser.c:2955
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "Asnjë atribut \"height\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:1998
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Asnjë atribut «start_angle» ose «from» në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2005
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Asnjë atribut \"extent_angle\" ose \"to\"në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2014
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "Asnjë atribut \"start_angle\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2021
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "Asnjë atribut \"extent_angle\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2227
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "Asnjë atribut \"alpha\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2299
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "Asnjë atribut \"type\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2349
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Vlerë \"%s\" e pakuptueshme për llojin e shkallëzimit"
+
+#: ../src/ui/theme-parser.c:2436
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "Asnjë atribut \"filename\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2461 ../src/ui/theme-parser.c:2980
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Lloj mbushje (ngjyrosje) \"%s\" e pakuptueshme për elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2609 ../src/ui/theme-parser.c:2744
+#: ../src/ui/theme-parser.c:2850
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "Asnjë atribut \"state\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2616 ../src/ui/theme-parser.c:2751
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "Asnjë atribut \"shadow\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2623
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "Asnjë atribut \"arrow\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2676 ../src/ui/theme-parser.c:2800
+#: ../src/ui/theme-parser.c:2891
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Gjëndje \"%s\" e pakuptueshme për elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2686 ../src/ui/theme-parser.c:2810
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Hije \"%s\" e pakuptueshme për elementin <%s>"
+
+#: ../src/ui/theme-parser.c:2696
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Shigjetë \"%s\" e pakuptueshme për elementin <%s>"
+
+#: ../src/ui/theme-parser.c:3120 ../src/ui/theme-parser.c:3237
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Asnjë <draw_ops> e quajtur \"%s\" është përcaktuar"
+
+#: ../src/ui/theme-parser.c:3132 ../src/ui/theme-parser.c:3249
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+"Përfshirja e draw_ops \"%s\" këtu do të provokojë një riferiment qarkor"
+
+#: ../src/ui/theme-parser.c:3314
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "Asnjë atribut \"value\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:3371
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "Asnjë atribut \"position\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Pozicion i panjohur \"%s\" për pjesën e frame"
+
+#: ../src/ui/theme-parser.c:3388
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Stili i frame ka një pjesë në pozicionin %s"
+
+#: ../src/ui/theme-parser.c:3405 ../src/ui/theme-parser.c:3496
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nuk është përcaktuar asnjë <draw_ops> me emrin \"%s\""
+
+#: ../src/ui/theme-parser.c:3433
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "Asnjë atribut \"function\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:3441 ../src/ui/theme-parser.c:3557
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "Asnjë atribut \"state\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:3450
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Funksion i panjohur \"%s\" për pulsantin"
+
+#: ../src/ui/theme-parser.c:3459
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Funksioni i butonit «%s» nuk ekziston në këtë version (%d, nevoitet %d)"
+
+#: ../src/ui/theme-parser.c:3471
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Gjëndje \"%s\" e panjohur për pulsantin"
+
+#: ../src/ui/theme-parser.c:3479
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Stili i framë ka një pulsant për funksionin %s gjëndja %s"
+
+#: ../src/ui/theme-parser.c:3549
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "Asnjë atribut \"focus\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:3565
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "Asnjë atribut \"style\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:3574
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "Vlera \"%s\" nuk është e vlefshme për atributin focus"
+
+#: ../src/ui/theme-parser.c:3583
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "Vlera \"%s\" nuk është e vlefshme për atributin state"
+
+#: ../src/ui/theme-parser.c:3593
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Një stil i quajtur \"%s\" nuk vshtë përcaktuar"
+
+#: ../src/ui/theme-parser.c:3604
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "Asnjë atribut \"resize\" në elementin <%s>"
+
+#: ../src/ui/theme-parser.c:3614 ../src/ui/theme-parser.c:3637
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "Vlera \"%s\" nuk është e vlefshme për atributin resize"
+
+#: ../src/ui/theme-parser.c:3648
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Nuk duhet të ekzistojë atributi \"resize\" në elementin <%s> për gjëndjet "
+"maximized/shaded"
+
+#: ../src/ui/theme-parser.c:3662
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Nuk duhet të ekzistojë atributi \"resize\" në elementin <%s> për gjëndjet "
+"maximized"
+
+#: ../src/ui/theme-parser.c:3676 ../src/ui/theme-parser.c:3698
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Stili është i përcaktuar njëherë për state %s resize %s focus %s"
+
+#: ../src/ui/theme-parser.c:3687 ../src/ui/theme-parser.c:3709
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stili është i përcaktuar njëherë për state %s focus %s"
+
+#: ../src/ui/theme-parser.c:3748
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nuk ka mundësi të ketë dy due draw_ops për një element <piece> (tema ka "
+"specifikuar një karakteristikë draw_ops si dhe një element <draw_ops>, ose "
+"ka specifikuar dy elementë)"
+
+#: ../src/ui/theme-parser.c:3786
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nuk ka mundësi të ketë dy due draw_ops për një element <button> (tema ka "
+"specifikuar një karakteristikë draw_ops si dhe një element <draw_ops>, ose "
+"ka specifikuar dy elementë)"
+
+#: ../src/ui/theme-parser.c:3824
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Nuk ka mundësi të ketë dy due draw_ops për një element <menu_icon> (tema ka "
+"specifikuar një karakteristikë draw_ops si dhe një element <draw_ops>, ose "
+"ka specifikuar dy elementë)"
+
+#: ../src/ui/theme-parser.c:3872
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Elementi i jashtëm në temë duhet të jetë <marco_theme> e jo <%s>"
+
+#: ../src/ui/theme-parser.c:3892
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Elementi <%s> nuk lejohet në brendësi të elementëve name/author/date/"
+"description"
+
+#: ../src/ui/theme-parser.c:3897
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Elementi <%s> nuk lejohet në brendësi të elementit <constant>"
+
+#: ../src/ui/theme-parser.c:3909
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Elementi <%s> nuk lejohet në brendësi të elementëve distance/border/"
+"aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3931
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+"Elementi <%s> nuk lejohet në brendësi të një elementi relativ me një "
+"operacion vizatimi"
+
+#: ../src/ui/theme-parser.c:3941 ../src/ui/theme-parser.c:3971
+#: ../src/ui/theme-parser.c:3976 ../src/ui/theme-parser.c:3981
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Elementi <%s> nuk lejohet brenda një elementi <%s>"
+
+#: ../src/ui/theme-parser.c:4203
+msgid "No draw_ops provided for frame piece"
+msgstr "Asnjë draw_ops është dhënë për pjesën e frame"
+
+#: ../src/ui/theme-parser.c:4218
+msgid "No draw_ops provided for button"
+msgstr "Asnjë draw_ops është dhënë për pulsantin"
+
+#: ../src/ui/theme-parser.c:4270
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Nuk lejohet teksti në brendësi të elementit <%s>"
+
+#: ../src/ui/theme-parser.c:4325
+msgid "<name> specified twice for this theme"
+msgstr "<name> është specifikuar dy herë për këtë temë"
+
+#: ../src/ui/theme-parser.c:4336
+msgid "<author> specified twice for this theme"
+msgstr "<author> është specifikuar dy herë për këtë temë"
+
+#: ../src/ui/theme-parser.c:4347
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> është specifikuar dy herë për këtë temë"
+
+#: ../src/ui/theme-parser.c:4358
+msgid "<date> specified twice for this theme"
+msgstr "<date> është specifikuar dy herë për këtë temë"
+
+#: ../src/ui/theme-parser.c:4369
+msgid "<description> specified twice for this theme"
+msgstr "<description> është specifikuar dy herë për këtë temë"
+
+#: ../src/ui/theme-parser.c:4636
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Dështoi gjetja e një file të vlefshëm për temën %s\n"
+
+#: ../src/ui/theme-parser.c:4692
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "File i temës %s nuk përmban elementin rrënjë <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Dritare"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Dritare/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Dritare/_Dialogu"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Dritare/_Modal dialog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Dritare/_Vegla"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Dritare/_Stema e nisjes"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Dritare/Dock super_ior"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Dritare/Dock in_ferior"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Dritare/Dock i ma_jtë"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Dritare/Dock i dj_athtë"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Dritare/Të gjithë do_ck"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Dritare/Des_ktop"
+
+#: ../src/ui/theme-viewer.c:135
+msgid "Open another one of these windows"
+msgstr "Hap një tjetër nga këto dritare"
+
+#: ../src/ui/theme-viewer.c:142
+msgid "This is a demo button with an 'open' icon"
+msgstr "Ky është një buton prove me një ikonë «Hap»"
+
+#: ../src/ui/theme-viewer.c:149
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Ky është një buton prove me një ikonë «Dalja»"
+
+#: ../src/ui/theme-viewer.c:242
+msgid "This is a sample message in a sample dialog"
+msgstr "Ky është një mesazh si shembull në një dialog si shembull"
+
+#: ../src/ui/theme-viewer.c:325
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Zë menuje të rremë n.%d\n"
+
+#: ../src/ui/theme-viewer.c:359
+msgid "Border-only window"
+msgstr "Dritare vetëm-kornizë"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Bar"
+msgstr "Shtyllë"
+
+#: ../src/ui/theme-viewer.c:378
+msgid "Normal Application Window"
+msgstr "Dritare aplikativi normal"
+
+#: ../src/ui/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Kuti dialogu"
+
+#: ../src/ui/theme-viewer.c:386
+msgid "Modal Dialog Box"
+msgstr "Kuti dialogu modal"
+
+#: ../src/ui/theme-viewer.c:390
+msgid "Utility Palette"
+msgstr "Kutiza e veglave"
+
+#: ../src/ui/theme-viewer.c:394
+msgid "Torn-off Menu"
+msgstr "Menu e shkëputur"
+
+#: ../src/ui/theme-viewer.c:398
+msgid "Border"
+msgstr "Kornizë"
+
+#: ../src/ui/theme-viewer.c:726
+#, c-format
+msgid "Button layout test %d"
+msgstr "Provë n.%d vendvendosje butonash"
+
+#: ../src/ui/theme-viewer.c:755
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekonda për të vizatuar një kornizë dritareje"
+
+#: ../src/ui/theme-viewer.c:798
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Përdorimi: marco-theme-viewer [EMRI_TEMËS]\n"
+
+#: ../src/ui/theme-viewer.c:805
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Gabim gjatë ngarkimit të temës: %s\n"
+
+#: ../src/ui/theme-viewer.c:811
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "U ngarkua tema \"%s\" në %g sekonda\n"
+
+#: ../src/ui/theme-viewer.c:852
+msgid "Normal Title Font"
+msgstr "Gërmat për titullin normal"
+
+#: ../src/ui/theme-viewer.c:858
+msgid "Small Title Font"
+msgstr "Gërmat për titullin e vogël"
+
+#: ../src/ui/theme-viewer.c:864
+msgid "Large Title Font"
+msgstr "Gërmat për titullin e madh"
+
+#: ../src/ui/theme-viewer.c:869
+msgid "Button Layouts"
+msgstr "Vendvendosja e butonëve"
+
+#: ../src/ui/theme-viewer.c:874
+msgid "Benchmark"
+msgstr "Prestacionet"
+
+#: ../src/ui/theme-viewer.c:921
+msgid "Window Title Goes Here"
+msgstr "Këtu vjen titulli i dritares"
+
+#: ../src/ui/theme-viewer.c:1025
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Vizatuar %d korniza në %g sekonda ana klient (%g milisekonda për kornizë) "
+"dhe %g sekonda wall clock time, përfshirë rezervat e serverit server X (%g "
+"milisekonda për kornizë)\n"
+
+#: ../src/ui/theme-viewer.c:1244
+msgid "position expression test returned TRUE but set error"
+msgstr "prova e shprehjes së pozicionit ktheu TRUE, por ka caktuar gabim"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "prova e shprehjes së pozicionit ktheu FALSE, por nuk ka caktuar gabim"
+
+#: ../src/ui/theme-viewer.c:1250
+msgid "Error was expected but none given"
+msgstr "Gabim i pritur, por nuk u dha"
+
+#: ../src/ui/theme-viewer.c:1252
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Pritej gabimi %d por u dha %d"
+
+#: ../src/ui/theme-viewer.c:1258
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Nuk pritej asnjë gabim por morëm një: %s"
+
+#: ../src/ui/theme-viewer.c:1262
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "vlera x ka %d, pritej %d"
+
+#: ../src/ui/theme-viewer.c:1265
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "vlera y ka %d, por pritej %d"
+
+#: ../src/ui/theme-viewer.c:1330
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"ekspresionet e kordinatës %d u analizuan në %g sekonda (%g sekonda "
+"mesatarisht)\n"
diff --git a/po/sr.po b/po/sr.po
new file mode 100644
index 00000000..bf1ff509
--- /dev/null
+++ b/po/sr.po
@@ -0,0 +1,3833 @@
+# Serbian translation of marco
+# Courtesy of Prevod.org team (http://prevod.org/) -- 2003 - 2009.
+#
+# This file is distributed under the same license as the marco package.
+#
+# Maintainer: Горан Ракић <[email protected]>
+# Reviewed on 2005-09-03 by: Данило Шеган <[email protected]>"
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-01-21 21:34+0000\n"
+"PO-Revision-Date: 2010-03-24 01:37+0100\n"
+"Last-Translator: Горан Ракић <[email protected]>\n"
+"Language-Team: Serbian (sr) <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Радна површина"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Управљање прозорима"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Звонце"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Захтевана је непозната информација о прозору: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+#| msgid "\"%s\" is not responding."
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> не даје одзив."
+
+#: ../src/core/delete.c:101
+#| msgid ""
+#| "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#| "\n"
+#| "<i>You may choose to wait a short while for it to continue or force the "
+#| "application to quit entirely.</i>"
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Можете мало сачекати док се програм не сабере или приморати програм да "
+"комплетно прекине са радом."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Сачекај"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Приморај излаз"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Нисам успео да сазнам име компјутера: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Недостаје потребан композитни додатак %s"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Нисам успео да отворим X Window System екран „%s“\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Изгубио сам везу са екраном „%s“;\n"
+"највероватније је да је Икс сервер угашен или да сте убили\n"
+"менаџер прозора.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Кобна грешка са излазом/улазом: %d (%s) на екрану „%s“.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Неки други програм већ користи тастер %s са измењивачима %x за неку "
+"функцију\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Јавила се грешка при покретању <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Није дефинисана команда %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Није дефинисана наредба терминала.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"метасити %s\n"
+"Сва права задржана (C) 2001–%s Havoc Pennington, Red Hat, Inc., и остали\n"
+"Ово је слободан програм; погледајте изворни код за услове коришћења.\n"
+"Никаква гаранција НЕ постоји; чак ни гаранција о подобности за одређену "
+"намену.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Онемогући везу са управником сесије"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Замени текућег управника прозорима Метаситијем"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Наведи ИД за управљање сесијом"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Жељени X екран"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Користи сесију из датотеке"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Испиши издање"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Синхронизуј X-ове позиве"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Укључи композицију"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Искључи композицију"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Не постављај преко целог екрана прозоре који нису увећани и не поседују оквир"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Нисам успео да прочитам директоријум тема: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Нисам могао да пронђем тему! Проверите да %s постоји и да садржи уобичајне "
+"теме.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Нисам успео да се поново покренем: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Кључ „%s“ у гном подешавањима је подешен на непрописну вредност\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d сачуван у кључу %s је изван опдега од %d до %d\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Кључ „%s“ у гном подешавањима је подешен на непрописни тип\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Компромиси за лоше програме су искључени. Неке апликације се могу понашати "
+"чудно.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Нисам могао да обрадим опис „%s“ из кључа %s у гном подешавањима\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"“%s“ је пронађен у бази подешавања што није исправна вредност за типку која "
+"мења понашање тастера миша\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Грешка приликом постављања броја радних површина на %d: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "%d. радни простор"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "“%s“ из базе са подешавањима није исправна комбинација тастера „%s“\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Грешка приликом постављања имена за радну површину %d у „%s“: %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Грешка при постављању стања композитора: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Приказ %d на екрану „%s“ није исправан\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Приказ %d на екрану „%s“ већ има покренут менаџер прозора; покушајте да "
+"користите --replace опцију како бисте заменили тренутни менаџер прозора.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Нисам могао да добијем избор менаџера прозора на приказу %d еркана „%s“\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Приказ %d на екрану „%s“ већ има менаџер прозора\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Нисам могао да испустим приказ %d на екрану „%s“\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Облик записа је „<Control>a“ или „<Shift><Alt>F1“.\n"
+"\n"
+"Програм за обраду је доста слободан и дозвољава велика или мала слова, као и "
+"скраћенице попут „<Ctl>“ или „<Ctrl>“. Уколико поставите опцију на "
+"„disabled“, неће бити коришћена ниједна комбинација тастера за ову радњу."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Облик записа је „<Control>“ или „<Shift><Alt>F1“.\n"
+"\n"
+"Програм за обраду је доста слободан и дозвољава велика или мала слова, као и "
+"скраћенице попут „<Ctl>“ или „<Ctrl>“. Уколико поставите опцију на "
+"„disabled“, неће бити коришћена ниједна комбинација тастера за ову радњу.\n"
+"\n"
+"Можете обрнути комбинацију тастера притиском на „<Shift>“, па тастер "
+"„<Shift>“ не може бити један од оних које овде користе."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Нисам могао да направим директоријум „%s“: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Нисам могао да отворим датотеку сесије „%s“ за упис: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Грешка приликом уписа у датотеку сесије '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Грешка приликом затварања датотеке сесије '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Нисам успео да прочитам сачувану датотеку сесије %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Нисам успео да обрадим сачувану датотеку сесије: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"<marco_session> атрибут је примећен али ми већ имамо индетификацију сесије"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Непознат атрибут %s у <%s> елементу"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "угњежден <window> елемент"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Непознат елемент %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Ови прозори не подржавају могућност „сними тренутна подешавања“ па ћете "
+"морати да их ручно поново покренете када се следећи пут пријавите."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Нисам успео да отворим историјат грешака: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Нисам успео да fdopen() датотеку са историјатом %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Отворена датотека са историјатом %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Метасити је преведен без подршке за обавештајни начин рада\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Менаџер прозора:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Грешка у менаџеру прозора: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Упозорење управника прозора: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Грешка менаџера прозора: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Метасити"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Прозор %s је поставио SM_CLIENT_ID на самог себе уместо на WM_CLIENT_LEADER "
+"прозор као што је наведено у ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Прозор %s је поставио MWM што наговештава да није променљиве величине, али "
+"је поставиоминималну величину %d x %d и максималну величину %d x %d што нема "
+"много смисла.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Програм је поставио нетачан _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (на %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (као администратор)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (као %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (као други корсник)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Неисправан прозор 0x%lx наведен као WM_TRANSIENT_FOR за %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Прозор 0x%lx има особину %s\n"
+"тако да је очекивано да има тип %s формат %d,\n"
+"а заправоand има тип %s формат %d n_items %d.\n"
+"Ово је највероватније грешка у програму, а не у менаџеру прозора.\n"
+"Прозор има наслов=\"%s\" класа=\"%s\" име=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Особина %s прозора 0x%lx садржи неисправан UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Особина %s прозора 0x%lx садржи неисправан UTF-8 за ставку %d у листи\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Пребаци се на радни простор 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Пребаци се на радни простор 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Пребаци се на радни простор 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Пребаци се на радни простор 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Пребаци се на радни простор 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Пребаци се на радни простор 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Пребаци се на радни простор 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Пребаци се на радни простор 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Пребаци се на радни простор 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Пребаци се на радни простор 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Пребаци се на радни простор 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Пребаци се на радни простор 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Пребаци се на радни простор на лево"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Пребаци се на радни простор на десно"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Пребаци се на радни простор изнад овог"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Пребаци се на радни простор испод овог"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Премести између прозора програма уз искакање"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Премести уназад између прозора програма уз искакање"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Премести између прозора уз искакање"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Премести уназад између прозора уз искакање"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Премести између панела и радне површине уз искакање"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Премести уназад између панела и радне површине уз искакање"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Премести одмах између прозора програма"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Премести одмах уназад између прозора програма"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Премести одмах између прозора"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Премести одмах уназад између прозора"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Премести одмах између панела и радне површине"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Премести одмах уназад између панела и радне површине"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Сакриј све обичне прозоре и прикажи радну површину"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Прикажи главни мени панела"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Прикажи прозорче за покретање програма у панелу"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Узми снимак екрана"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Узми снимак прозора"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Покрени терминал"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Активирај мени прозора"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Искључи/укључи приказ преко целог екрана"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Промени стање увећања"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Одређује да ли се прозор увек приказује изнад осталих"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Увећај прозор"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Врати величину прозору"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Промени стање засенчености"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Умањи прозор"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Затвори прозор"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Премести прозор"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Промени величину прозору"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Приказује прозор на свим или само на једној радној површи"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Премести прозор на радни простор број 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Премести прозор на радни простор број 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Премести прозор на радни простор број 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Премести прозор на радни простор број 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Премести прозор на радни простор број 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Премести прозор на радни простор број 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Премести прозор на радни простор број 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Премести прозор на радни простор број 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Премести прозор на радни простор број 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Премести прозор на радни простор број 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Премести прозор на радни простор број 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Премести прозор на радни простор број 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Премести прозор за један следећи радни простор улево"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Премести прозор за један следећи радни простор удесно"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Премести прозор за један радни простор на горе"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Премести прозор за један радни простор на доле"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Подигни прозор уколико га други прозор заклања, у противном га спусти"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Подигни прозор изнад осталих прозора"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Спусти прозор испод осталих прозора"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Увећај прозор вертикално"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Увећај прозор хоризонтално"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Премести прозор у горњи, леви ћошак"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Премести прозор у горњи, десни ћошак"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Премести прозор у доњи, леви ћошак"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Премести прозор у доњи, десни ћошак"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Премести прозор у врх екрана"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Премести прозор у дно екрана"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Премести прозор уз десну ивицу екрана"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Премести прозор уз леву ивицу екрана"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Премести прозор на средину екрана"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Није уграђено) Навигација ради у контексту програма, не и прозора"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Низ карактера који описује словни лик за насловну линију прозора. Величина "
+"из описа ће бити коришћена само ако је опција titlebar_font_size подешена на "
+"0. Такође, ова опција је искључена ако је опцијаtitlebar_uses_desktop_font "
+"постављена на „true“."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Акција за дупли клик на траку са насловом"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Акција за средњи клик на траку са насловом"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Акција за десни клик на траку са насловом"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Распоред дугмића на линији са насловом"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Распоред дугмића на насловној линији. Вредност треба да буде низ карактера, "
+"као на пример „menu:minimize,maximize,close“; две тачке раздвајају леви угао "
+"прозора од десног, а дугмићи су раздвојени запетама. Дуплирање дугмића није "
+"дозвољено. Непозната имена дугмића се игноришу тако да дугмићи који у "
+"будућности буду додати у метасити не разбију подешавања старијих издања. "
+"Могу се користити специјалне ознака за раздвајање како би се направило места "
+"између два суседна дугмета."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Аутоматски подигни прозор са фокусом"
+
+#: ../src/marco.schemas.in.in.h:9
+#| msgid ""
+#| "Clicking a window while holding down this modifier key will move the "
+#| "window (left click), resize the window (middle click), or show the window "
+#| "menu (right click). The left and right operations may be swapped using "
+#| "the \"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" "
+#| "or \"&lt;Super&gt;\" for example."
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Клик на прозор за време држања овог тастера ће преместити прозор (леви "
+"клик), променити величину прозора (средњи клик) или приказати мени прозора "
+"(десни клик). Можете заменити леви и десни тастер миша помоћу кључа "
+"„resize_with_right_button“. На пример, тастер може бити „&lt;Алт&gt;“ или "
+"„&lt;Супер&gt;“."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Команда коју треба покренути као одговор на притисак тастера"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Композитни управник"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Како нови прозор добија фокус"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Тренутна тема"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Временски период у милисекундама за аутоматско подизање прозора"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Одређује да ли је Метасити композитни управник."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Одређује да ли програми или систем могу да пусте звучне сигнале; може се "
+"користити уз „визуелне звуке“ ради дозвољавања тихих звукова."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Искључи лоше могућности које су обавезне за старе или лоше програме"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Омогући визуелне звуке"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Ако је тачно, а начин фокуса је или „sloppy“ или „mouse“ онда ће прозор у "
+"фокусу бити аутоматски подигнут након истека временског периода (који је "
+"подешен преко auto_raise_delay кључа). Ово није повезано са подизањем "
+"прозора кликом, нити са фокусирањем у току повуци-и-испусти."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ако је тачно, игнорише се опција titlebar_font, и метасити ће користити "
+"стандардан словни лик програма за словни лик наслова прозора."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Ако је постављено, Метасити ће кориснику приказати мање података и мање "
+"осећаја о „непосредном управљању“, употребом линија, избегавањем анимација "
+"или другим средствима. Ово је значајни недостатак по питању употребљивости "
+"за многе кориснике, али може омогућити старим програмима и терминалским "
+"серверима да раде када би иначе били непрактични. Такође, употреба линија је "
+"онемогућена када је укључена приступачност."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Ако је тачно, метасити рада у контексту програма, а не прозора. Концепт је "
+"помало чудан, али у општем случају поставке базиране на програму су више "
+"сличне Mac систему, а мање сличне Windows систему. Када поставите прозор у "
+"фокус у овом начину рада, сви прозори те апликације ће бити подигнути. "
+"Такође, у овом начину рада, фокусни клик се не шаље прозорима других "
+"програма. Такође овај начин рада је увелико недовршен у садашњим верзијама."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Уколико је постављено, жртвуј употребљивост зарад употребе мање ресурса"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Типка која ће се користити за промену акције клика на прозор"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Име радног простора"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Број радних простора"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Број радних простора. Мора бити већи од нуле, и имати фиксиран максимум како "
+"бисте спречили да случајно уништите радну површину тражећи превише радних "
+"простора."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Покрени дефинисану команду"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Поставите на „true“ за промену величине прозора десним тастером и приказ "
+"менија средњим тастером уз држање задатог тастера преко кључа "
+"„mouse_button_modifier“. Поставите на „false“ како би користили обрнут "
+"распоред тастера."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Постављање ове опције на „false“ (нетачно) може проузроковати неисправно "
+"понашање програма, па није препоручљиво. Многе наредбе (нпр. клик усред "
+"области клијента, померање или промена величине прозора) обично уједно и "
+"подижу прозор. Искључивањем ове опције ће раздвојити подизање прозора од "
+"осталих радњи и занемарити захтеве за подизање прозора од стране програма. "
+"Погледајте http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Чак и "
+"уколико искључите ову опцију, прозоре можете подићи левим кликом унутар "
+"прозора уз држање тастера Алт, обичним кликом на насловну линију прозора или "
+"преко посебних порука из пребацивача радних површина (као што је укључивање "
+"захтева из програмчета са списком задатака). Ова опција је тренутно "
+"искључена у режиму „click-to-focus“ (клик за фокус). Списак начина за "
+"подизање прозора када је „raise_on_click“ (подигни на клик) постављен на "
+"„false“ (нетачно) не укључује захтеве из програма за подизање прозора, па ће "
+"такви захтеви бити занемарени без обзира на на разлог. Уколико пишете "
+"сопствени програм и добијете примедбе од стране корисника како ваш програм "
+"не ради по искључивању ове опције, кажите им да је њихова кривица за "
+"неисправан рад управника прозорима и да врате опцију на „true“ (тачно) или "
+"да се навикну на пропратне појаве."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Неки програми не поштују спецификације на начин који води до тога да "
+"управник прозора не може да функционише. Ово подешавање поставља Метасити у "
+"строг режим рада који доприноси правилнијем понашању, под условом да се не "
+"покушава покретање неисправних програма."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Системско звонце се чује"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Наређује Метаситију да прикаже нешто када зазвони системско звонце или неки "
+"други програм зазвони. Тренутно су могуће две вредности, „fullscreen“ којим "
+"цео екран трепери црно-бело, и „frame_flash“ када трепери само насловна "
+"линија прозора који је зазвонио. Уколико није познат програм који је "
+"зазвонио (као што је то обично случај са „системским звонцетом“), трепереће "
+"насловна линија прозора који је тренутно у жижи."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Кључ /apps/marco/global_keybindings/run_command_N дефинише тастере који "
+"одговарају овим командама. Притиском комбинације тастера за покрени_комаду_Н "
+"ће извршити команду_Н."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Кључ /apps/marco/global_keybindings/run_command_N дефинише функцију "
+"тастера којим се покреће наредба наведена помоћу њега."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Кључ /apps/marco/global_keybindings/run_command_window_screenshot "
+"дефинише функцију тастера којим се покреће наредба наведена помоћу њега."
+
+# bug: missing dot (.) after keybinding_commands?
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Комбинације тастера који покрећу одговарајуће означену команду у /apps/"
+"marco/keybinding_commands кључу. Облик записа је „&lt;Control&gt;a“ или "
+"„&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је доста слободан и "
+"дозвољава велика или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или "
+"„&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ знакова „disabled“, "
+"онда неће бити коришћена ниједна комбинација тастера за ову акцију."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Име радне површине."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Наредба за снимак екрана"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Тема утврђује изглед ивица прозора, насловне линије и свега осталог сличног."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Временски период пре подизања прозора ако је опција auto_raise постављена на "
+"„true“. Период се изражава у хиљадитим деловима секунде."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Фокус прозора подешава како ће прозори бити активирани. Има три могуће "
+"вредности „click“ значи да прозор мора бити селектован да би добио фокус, "
+"„sloppy“ значи да прозор добија фокус када показивач миша уђе у прозор и "
+"„mouse“ штп значи да ће прозор бити фокуситан када показивачка стрелица миша "
+"уђе у прозор и бити дефокусиран када стрелица изађе из прозора."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Наредба за узимање снимка прозора"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ова могућност одређује ефекат дуплог клика на насловну линију прозора. "
+"Тренутно исправни су „toggle_shade“ што ће замотати/одмотати прозор, "
+"„toggle_maximize“ што ће увећати или поништити увећање прозора, "
+"„toggle_maximize_horizontally“ и „toggle_maximize_vertically“, што ће "
+"увећати или поништити увећање прозора само у хоризонтално или усправно, "
+"„minimize“ што ће умањити прозор, „shade“ што ће замотат прозор, „menu“ што "
+"ће приказати мени прозора, „lower“ што ће поставити прозор иза осталих и "
+"„none“ чиме се не обавља никаква радња."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ова могућност одређује ефекат средњег клика на насловну линију прозора. "
+"Тренутно исправни су „toggle_shade“ што ће замотати/одмотати прозор, "
+"„toggle_maximize“ што ће увећати или поништити увећање прозора, "
+"„toggle_maximize_horizontally“ и „toggle_maximize_vertically“, што ће "
+"увећати или поништити увећање прозора само у хоризонтално или усправно, "
+"„minimize“ што ће умањити прозор, „shade“ што ће замотат прозор, „menu“ што "
+"ће приказати мени прозора, „lower“ што ће поставити прозор иза осталих и "
+"„none“ чиме се не обавља никаква радња."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ова могућност одређује ефекат десног клика на насловну линију прозора. "
+"Тренутно исправни су „toggle_shade“ што ће замотати/одмотати прозор, "
+"„toggle_maximize“ што ће увећати или поништити увећање прозора, "
+"„toggle_maximize_horizontally“ и „toggle_maximize_vertically“, што ће "
+"увећати или поништити увећање прозора само у хоризонтално или усправно, "
+"„minimize“ што ће умањити прозор, „shade“ што ће замотат прозор, „menu“ што "
+"ће приказати мени прозора, „lower“ што ће поставити прозор иза осталих и "
+"„none“ чиме се не обавља никаква радња."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Ова опција пружа додатну контролу над начином на који нови прозори улазе у "
+"фокус. Има две могуће вредности: „smart“ поставља нормални режим фокуса и "
+"„strict“ када прозори покренути из командне линије не улазе у фокус."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Укључује визуелни приказ када програм или систем „зазвони“; корисно у бучним "
+"условима."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Користи стандардни системски словни лик за наслов прозора"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Врста визелног звонцета"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Да ли подизање прозора треба да буде бочни ефекат неких других корисникових "
+"радњи"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Да ли да промени величину десним тастером"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Начин фокуса прозора"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Словни лик наслова прозора"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Употреба: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Затвори прозор"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Мени прозора"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Умањи прозор"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Увећај прозор"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Врати величину прозору"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Замотај прозор"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Одмотај прозор"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Стави прозор изнад осталих"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Склони прозор са врха"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Увек на приказаној радној површини"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Стави прозор само на једну радну површину"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Умањи"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Увећај"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Поништи увећање"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Замотај"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Одмотај"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Помери"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Промени величину"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Премести насловну линију на екран"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Увек изнад ос_талих"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Увек на приказаној радној површини"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Само на _овој радној површини"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Премести на _леви радни простор"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Премести на _десни радни простор"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Премести на радни простор _изнад"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Премести на радни простор ис_под"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "Затвори"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Радни простор %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "1_0. радни простор"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "%s%d. радни простор"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Премести на други _радни простор"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Мета"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Супер"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Хипер"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Мод2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Мод3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Мод4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Мод5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "горњу"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "доњу"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "леву"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "десну"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "геометрија оквира не подешава „%s“ димензију"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "геометрија оквира не подешава „%s“ димензију за ивицу „%s“"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Однос дугмета %g није разуман"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Геометрија оквира не подешава величину дугмића"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Градијенти морају имати најмање две боје"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Спецификација ГТК боје мора имати наведено стање у загради, на пример gtk:fg"
+"[NORMAL] где је NORMAL стање; не могу да обрадим „%s“"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Спецификација ГТК боје мора имати наведено стање у загради, на пример gtk:fg"
+"[NORMAL] где је NORMAL стање; не могу да обрадим „%s“"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Нисам могао да разумем стање „%s“ у спецификацији боје"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Нисам могао да разумем део боје „%s“ у спецификацији боје"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Формат бленде је „blend/bg_color/fg_color/alpha“, „%s“ се не уклапа у "
+"тражени формат записа"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Нисам могао да обрадим алфа вредност „%s“ у бленди боје"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Алфа вредност „%s“ у бленди боје није између 0.0 и 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Формат сенке је „shade/base_color/factor“, „%s“ се не уклапа у формат"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Нисам могао да обрадим фактор сенке „%s“ у осенченој боји"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Фактор сенке „%s“ у осенченој боји је негативан"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Нисам могао да обрадим боју „%s“"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Израз координата садржи карактер „%s“ што није дозвољено"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "Израз координата садржи децимални број „%s“ што не може бити обрађено"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Израз координата садржи цели број „%s“ што не може бити обрађено"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Израз са координатама садржи непознати оператор на почетку овог текста: „%s“"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Израз са координатама је био празан или неразумљив"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Израз са координатама води дељењу са нулом"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Израз са координатам покушава да користи оператор остатка при дељењу за "
+"децимални број"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Израз са координатама има оператор „%s“ где је очекиван операнд"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Израз са координарама има операнд где је очекиван оператор"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Израз са координарама је завршио са оператором уместо са операндом"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Израз са координатама има оператор „%c“, а затим оператор „%c“ без опеанда "
+"између"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Израз са координатама има непознату променљиву или константи „%s“"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Израз са координатама је био превелики за смештај и обраду"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Израз са координатама има затворене заграде без отворених заграда"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Израз са координатама има отворене заграде без затворених заграда"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Израз са координатама нема ни један оператор или операнд"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Тема садржи израз који резултира грешком: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"било шта\"/> мора бити "
+"наведен за овај стил оквира"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Недостаје <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"било шта\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Нисам успео да учитам тему „%s“: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Није дефинисан елемент <%s> за тему „%s“"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Није подешен стил оквира за прозор типа „%s“ у теми „%s“. Додајте <window "
+"type=\"%s\" style_set=\"било шта\"/> елемент."
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Кориснички дефинисане константе морају почети великим словом; „%s“ не почиње"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Константа „%s“ је већ дефинисана"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Није дефинисан „%s“ атрибут у елементу <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Линија %d карактер %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Атрибут „%s“ је поновљен два пута у истом елементу <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Атрибут „%s“ је неисправан у елементу <%s> у овом контексту"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Нисам могао да издвојим „%s“ као целобројну вредност"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Нисам разумео водеће карактере „%s“ у низу карактера „%s“"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Цели број %ld мора бити позитивна"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Цели број %ld је превиш велики, тренутни максимум је %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Нисам могао да обрадим „%s“ као децимални број"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Логичке вредности морају бити „true“ или „false“, а не „%s“"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Угао мора бити између 0.0 и 360.0, био је %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Алфа степен мора бити између 0.0 (невидљиво) и 1.0 (потпуно видљиво), био је "
+"%g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Нетачно скалирање наслова „%s“ (мора бити један од следећих: xx-small,x-"
+"small,small,medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> име „%s“ је коришћено по други пут"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> старији „%s“ није дефинисан"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> геометрија „%s“ није дефинисана"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> мора бити наведена или геометрија или старији елемент који има "
+"геометрију"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Морате навести позадину да би алфа вредност имала смисла"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Непознат тип „%s“ у елементу <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Непознат style_set „%s“ у елементу <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Типу прозора „%s“ је већ додељен сет стила"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Елемент <%s> није дозвољен испод <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr "Не могу да подесим и ширину/висину и размеру дугмади"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Удаљеност „%s“ је непозната"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Однос „%s је непознат"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Ивица „%s“ је непозната"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Није дефинисан „start_angle“ или „from“ атрибут у елементу <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Није дефинисан „extent_angle“ или „to“ атрибут у елементу <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Нисам разумео вредност „%s“ као тип градијента"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Нисам разумео тип попуњавања површине „%s“ у елементу <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Нисам разумео стање „%s“ у елементу <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Нисам разумео сенку „%s“ у елементу <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Нисам разумео стрелицу „%s“ у елементу <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Није дефинисан <draw_ops> означен као „%s“"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Укључивање елемента draw_ops „%s“овде би направило кружну референцу"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Непозната позиција „%s“ за део оквира"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Стил оквира цећ има део на позицји %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Није дефинисан <draw_ops> са именом „%s“"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Непозната функција „%s“ за дугме"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"Функција „%s“ за дугме не постоји у овој верзији (верзија %d, а треба вам %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Непознато стање „%s“ за дугме"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Стил оквира већ има дугме са функцијом %s и стањем %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "„%s“ није дозвољена вредност за атрибут focus"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "„%s“ није дозвољена вредност за атрибут state"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Стил „%s“ није дефинисан"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "„%s“ није дозвољена вредност за атрибут resize"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Никако не треба имати „resize“ атрибут у елементу <%s> за увећана/засенчена "
+"стања"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Никако не треба имати „resize“ атрибут у елементу <%s> за увећана стања"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Стил је већ наведен за стање %s увећање %s фокус %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Стил је већ наведен за стање %s фокус %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Не могу постојати два draw_ops-а за елемент <piece> (тема наводи draw_ops "
+"атрибут и <draw_ops> елемент, или наводи два елемента)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Не могу постојати два draw_ops-а за елемент <button> (тема наводи draw_ops "
+"атрибут и <draw_ops> елемент, или наводи два елемента)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Не могу постојати два draw_ops-а за елемент <menu_icon> (тема наводи "
+"draw_ops атрибут и <draw_ops> елемент, или наводи два елемента)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Најстарији елемент теме мора бити <marco_theme>, а не <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Елемент <%s> није дозвољен унутар елемената name, author, date и description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Елемент <%s> није дозвољен унутар елемента <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Елемент <%s> није дозвољен унутар елемената distance, border и aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Елемент <%s> није дозвољен унутар елемената операција цртања"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Елемент <%s> није дозвољен унутар <%s> елемента"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Није наведен draw_ops за део оквира"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Није наведен draw_ops дугме"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Није дозвољен текст унутар елемента <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "Елемент <%s> је наведен два пута у овој теми"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Нисам успео да пронађем исправну датотеку за тему %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Датотека са темом %s не садржи коренски <marco_theme> елемент"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Прозори"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Прозори/откини"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Прозори/_Прозорче"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Прозори/_Важно прозорче"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Прозори/_Алатка"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Прозори/_Уводни екран"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Прозори/_Горње припајање"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Прозори/_Доње припајање"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Прозори/_Лево припајање"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Прозори/Д_есно припајање"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Прозори/_Сва припајања"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Прозори/Рад_на површина"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Ово је пример поруке у пробном прозорчету"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Лажна ставка менија %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Прозор само са ивицом"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Трака"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Обичан прозор програма"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Прозорче"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Важно прозорче"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Палета алатки"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Откинути мени"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Ивица"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Проба распореда дугмића %d"
+
+# bug: plural-forms
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g милисекунди за исцртавање оквира једног прозора"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Употреба: marco-theme-viewer [ИМЕ-ТЕМЕ]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Грешка приликом учитавања теме: %s\n"
+
+# bug: plural-forms
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Учитана тема „%s“ за %g секунди\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Обичан насловни словни лик"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Мали насловни словни лик"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Велики насловни словни лик"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Распоред дугмића"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Провера брзине"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Овде иде наслов прозора"
+
+# bug: plural-forms
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Нацртао је %d оквира за %g клијентских секунди (%g милисекунди по оквиру) и %"
+"g секунди времена на зидном часовнику укључујући и ресурсе Икс сервера (%g "
+"милисекунди по оквиру)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "провера израза положаја је вратила тачно, али је поставила грешку"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "провера израза положаја је вратила нетачно, али није поставила грешку"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Очекивана је грешка, али она није дата"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Очекивана је грешка %d, али је дата %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Грешка није очекивана, али је враћена: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x вредност је била %d, %d, а очекивана је"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y вредност је била %d, %d, а очекивана је"
+
+# bug: plural-forms
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d израза координата обрађено за %g секунди (просек %g секунди)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Отвори неки други од ових прозора"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Ово је пробно дугме са „отвори“ иконом"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Ово је пробно дугме са „изађи“ иконом"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Нисам успео да издвојим поруку „%s“ из прозорчета процеса\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Грешка приликом читања из прозорчета процеса: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Грешка приликом покретања marco-dialog због упита о убијању програма „%"
+#~ "s“\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Грешка приликом покретања marco-dialog ради упозорења о програмима "
+#~ "који не подржавају менаџер сесија: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Наслов"
+
+#~ msgid "Class"
+#~ msgstr "Класа"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Догодила се грешка приликом покретања „%s“:\n"
+#~ "%s."
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "Елемент <author> је наведен два пута у овој теми"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "Елемент <copyright> је наведен два пута у овој теми"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "Елемент <date> је наведен два пута у овој теми"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "Елемент <description> је наведен два пута у овој теми"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Грешка приликом покретања marco-dialog програма због штампања грешке о "
+#~ "команди: %s\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Непознат атрибут %s у <marco_session> елементу"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Непознат атрибут %s у <maximized> елементу"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Непознат атрибут %s у <geometry> елементу"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Многе радње (нпр. притисак на простор програма, премештање или мењање "
+#~ "величине прозора) уобичајено, као споредни ефекат, подижу прозор. "
+#~ "Постављање овог прекидача на истинитосну вредност „false“, што је крајње "
+#~ "непрепоручљиво, ће раздвојити подизање прозора од осталих наредби "
+#~ "корисника и занемарити захтеве за подизање од стране програма. Видите See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6 за више детаља."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор изнад текућег. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор испод текућег. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор лево од текућег. "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор десно од текућег. "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 1. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 10. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 11. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 12. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 2. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 3. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 4. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 5. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 6. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 7. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 8. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која пребацује на радни простор број 9. Облик записа "
+#~ "је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду "
+#~ "је доста слободан и дозвољава велика или мала слова, као и скраћенице "
+#~ "попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити "
+#~ "низ знакова „disabled“, онда неће бити коришћена ниједна комбинација "
+#~ "тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за приказивање менија прозора. Облик записа је „&lt;"
+#~ "Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за улазак у „режим премештања“ или за почетак "
+#~ "премештања прозора помоћу тастатуре. Облик записа је „&lt;Control&gt;a“ "
+#~ "или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је доста слободан и "
+#~ "дозвољава велика или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или "
+#~ "„&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ знакова „disabled“, "
+#~ "онда неће бити коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за улазак у „режим промене величине“ или за почетак "
+#~ "промене величине прозора помоћу тастатуре. Облик записа је „&lt;"
+#~ "Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за сакривање свих обичних прозора и фокусирање "
+#~ "позадине радне површи. Облик записа је „&lt;Control&gt;a“ или „&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је доста слободан и дозвољава "
+#~ "велика или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; "
+#~ "Ctrl&gt;“. Ако подесите опцију на нарочити низ знакова „disabled“, онда "
+#~ "неће бити коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера за увећавање прозора. Облик записа је „&lt;Control&gt;"
+#~ "a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је доста слободан "
+#~ "и дозвољава велика или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ "
+#~ "или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ знакова "
+#~ "„disabled“, онда неће бити коришћена ниједна комбинација тастера за ову "
+#~ "акцију."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера за умањивање прозора. Облик записа је „&lt;Control&gt;"
+#~ "a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је доста слободан "
+#~ "и дозвољава велика или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ "
+#~ "или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ знакова "
+#~ "„disabled“, онда неће бити коришћена ниједна комбинација тастера за ову "
+#~ "акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор испод. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор лево. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор десно. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор горе. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 1. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 10. "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 11. "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 12. "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 2. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 3. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 4. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 5. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 6. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 7. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 8. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање прозора на радни простор број 9. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса уназад између панела и радне "
+#~ "површи, помоћу искачућег прозора. Облик записа је „&lt;Control&gt;a“ или "
+#~ "„&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је доста слободан и "
+#~ "дозвољава велика или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или "
+#~ "„&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ знакова „disabled“, "
+#~ "онда неће бити коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса уназад између панела и радне "
+#~ "површи, без искачућег прозора. Облик записа је „&lt;Control&gt;a“ или "
+#~ "„&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је доста слободан и "
+#~ "дозвољава велика или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или "
+#~ "„&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ знакова „disabled“, "
+#~ "онда неће бити коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса уназад између прозора програма, "
+#~ "без искачућег прозора. Држање „shift“ уз ову пречицу ће ићи опет унапред. "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса уназад између прозора програма, "
+#~ "помоћу искачућег прозора. Држање „shift“ уз ову пречицу ће ићи опет "
+#~ "унапред. Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1“. Програм за обраду је доста слободан и дозвољава велика или мала "
+#~ "слова, као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако "
+#~ "подесите опцију на нарочити низ знакова „disabled“, онда неће бити "
+#~ "коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса уназад између прозора, без "
+#~ "искачућег прозора. Држање „shift“ уз ову пречицу ће ићи опет унапред. "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса уназад између прозора, помоћу "
+#~ "искачућег прозора. Држање „shift“ уз ову пречицу ће ићи опет унапред. "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса између панела и радне површи, "
+#~ "помоћу искачућег прозора. Облик записа је „&lt;Control&gt;a“ или „&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је доста слободан и дозвољава "
+#~ "велика или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; "
+#~ "Ctrl&gt;“. Ако подесите опцију на нарочити низ знакова „disabled“, онда "
+#~ "неће бити коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса између панела и радне површи, "
+#~ "без искачућег прозора. Облик записа је „&lt;Control&gt;a“ или „&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је доста слободан и дозвољава "
+#~ "велика или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; "
+#~ "Ctrl&gt;“. Ако подесите опцију на нарочити низ знакова „disabled“, онда "
+#~ "неће бити коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса између прозора програма, без "
+#~ "искачућег прозора. (Традиционално &lt;Alt&gr;Escape) Држање тастера "
+#~ "„shift“ при употреби ове комбинације обрће смер кретања. Облик записа је "
+#~ "„&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса између прозора програма, помоћу "
+#~ "искачућег прозора. (Традиционално &lt;Alt&gr;Tab) Држање тастера „shift“ "
+#~ "при употреби ове комбинације обрће смер кретања. Облик записа је „&lt;"
+#~ "Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса између прозора, без искачућег "
+#~ "прозора. (Традиционално &lt;Alt&gr;Escape) Држање тастера „shift“ при "
+#~ "употреби ове комбинације обрће смер кретања. Облик записа је „&lt;"
+#~ "Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера за пребацивање фокуса између прозора, помоћу "
+#~ "искачућег прозора. (Традиционално &lt;Alt&gr;Tab) Држање тастера „shift“ "
+#~ "при употреби ове комбинације обрће смер кретања. Облик записа је „&lt;"
+#~ "Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за укључивање/искључивање да прозор буде увек на "
+#~ "врху. Прозор који је увек на врху ће се видети и преко осталих "
+#~ "преклапајућих прозора. Облик записа је „&lt;Control&gt;a“ или „&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је доста слободан и дозвољава "
+#~ "велика или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; "
+#~ "Ctrl&gt;“. Ако подесите опцију на нарочити низ знакова „disabled“, онда "
+#~ "неће бити коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за укључивање/искључивање режима целог екрана. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера за укључивање/искључивање увећање. Облик записа је "
+#~ "„&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера за замотавање/одмотавање. Облик записа је „&lt;"
+#~ "Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за измену да ли је прозор у свим радним просторима "
+#~ "или само у једном. Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1“. Програм за обраду је доста слободан и дозвољава велика "
+#~ "или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. "
+#~ "Ако подесите опцију на нарочити низ знакова „disabled“, онда неће бити "
+#~ "коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера за поништавање увећања прозора. Облик записа је „&lt;"
+#~ "Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+# bug: s/display's/displays/ (it's not genitive, but a verb as in "it displays")
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која приказује прозорче панела „Покрени програм“. "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Комбинација тастера која покреће терминал. Облик записа је „&lt;"
+#~ "Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која приказује алатку панела за снимке екрана за "
+#~ "снимак прозора. Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1“. Програм за обраду је доста слободан и дозвољава велика или "
+#~ "мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако "
+#~ "подесите опцију на нарочити низ знакова „disabled“, онда неће бити "
+#~ "коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која приказује алатку панела за снимке екрана. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера која приказује главни мени панела. Облик записа је "
+#~ "„&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која мења да ли је прозор изнад или испод осталих "
+#~ "прозора. Ако је прозор покривен неким прозором, онда се издиже изнад "
+#~ "осталих, а ако је већ у потпуности приказан, онда се сакрива иза свих "
+#~ "осталих прозора. Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1“. Програм за обраду је доста слободан и дозвољава велика или "
+#~ "мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако "
+#~ "подесите опцију на нарочити низ знакова „disabled“, онда неће бити "
+#~ "коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера која сакрива прозор иза свих осталих прозора. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која помера прозор на север екрана (горња ивица). "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the center of the screen. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која помера прозор на средину екрана. Облик записа је "
+#~ "„&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за обраду је "
+#~ "доста слободан и дозвољава велика или мала слова, као и скраћенице попут "
+#~ "„&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију на нарочити низ "
+#~ "знакова „disabled“, онда неће бити коришћена ниједна комбинација тастера "
+#~ "за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која помера прозор на исток екрана (десна ивица). "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која помера прозор на североисток екрана (горе "
+#~ "десно). Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1“. Програм за обраду је доста слободан и дозвољава велика или мала "
+#~ "слова, као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако "
+#~ "подесите опцију на нарочити низ знакова „disabled“, онда неће бити "
+#~ "коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која помера прозор на северозапад екрана (горе лево). "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која помера прозор на југ екрана (доња ивица). Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која помера прозор на југоисток екрана (доле десно). "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која помера прозор на југозапад екрана (доле лево). "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера која помера прозор на запад екрана (лева ивица). "
+#~ "Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Програм за обраду је доста слободан и дозвољава велика или мала слова, "
+#~ "као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите "
+#~ "опцију на нарочити низ знакова „disabled“, онда неће бити коришћена "
+#~ "ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Комбинација тастера која издиже прозор испред свих осталих прозора. Облик "
+#~ "записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;&lt;Alt&gt;F1“. Програм за "
+#~ "обраду је доста слободан и дозвољава велика или мала слова, као и "
+#~ "скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. Ако подесите опцију "
+#~ "на нарочити низ знакова „disabled“, онда неће бити коришћена ниједна "
+#~ "комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за измену величине прозора тако да попуни сав "
+#~ "водоравни простор. Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1“. Програм за обраду је доста слободан и дозвољава велика "
+#~ "или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. "
+#~ "Ако подесите опцију на нарочити низ знакова „disabled“, онда неће бити "
+#~ "коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Комбинација тастера за измену величине прозора тако да попуни сав "
+#~ "усправни простор. Облик записа је „&lt;Control&gt;a“ или „&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1“. Програм за обраду је доста слободан и дозвољава велика "
+#~ "или мала слова, као и скраћенице попут „&lt;Ctl&gt;“ или „&lt; Ctrl&gt;“. "
+#~ "Ако подесите опцију на нарочити низ знакова „disabled“, онда неће бити "
+#~ "коришћена ниједна комбинација тастера за ову акцију."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Измени да ли је увек на врху"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Поништи увећање прозора"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Поништи увећавање прозора"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Не постоји атрибут „%s“ у елементу <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Тема већ има резервy за icon"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Тема већ има резерву за mini_icon"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „name“ атрибут у елементу <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „value“ атрибут у елементу <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „top“ атрибут у елементу <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „bottom“ атрибут у елементу <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „left“ атрибут у елементу <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „right“ атрибут у елементу <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „color“ атрибут у елементу <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „x1“ атрибут у елементу <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „y1“ атрибут у елементу <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „x2“ атрибут у елементу <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „y2“ атрибут у елементу <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „y“ атрибут у елементу <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „width“ атрибут у елементу <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „height“ атрибут у елементу <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „start_angle“ атрибут у елементу <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „extent_angle“ атрибут у елементу <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „alpha“ атрибут у елементу <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „type“ атрибут у елементу <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „filename“ атрибут у елементу <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „state“ атрибут у елементу <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „shadow“ атрибут у елементу <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Није дефинисан „arrow“ атрибут у елементу <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Није дефинисан „value“ атрибут у елементу <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Није дефинисан „position“ атрибут у елементу <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Није дефинисан „function“ атрибут у елементу <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Није дефинисан „state“ атрибут у елементу <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Није дефинисан „focus“ атрибут у елементу <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Није дефинисан „style“ атрибут у елементу <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Није дефинисан „resize“ атрибут у елементу <%s>"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "Тип податка „%s“ није целобројна вредност"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "Број %d сачуван у кључу %s у Гномовим подешавањима не представља разумну "
+#~ "величину курсора која мора бити у опсегу од 1 до 128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d сачувано у кључу %s у гном подешавањима није разуман број радних "
+#~ "површина, тренутни максимум је %d\n"
+
+#~ msgid "On _Top"
+#~ msgstr "Изна_д свега"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr "Приморавањем програма на излаз ћете изгубити све несачуване измене."
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Непозната функција „%s“ за икону менија"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Непознато стањр „%s“ за икону менија"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "Тема већ поседује икону менија за функцију %s стање %s"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "Није наведен draw_ops икону менија"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "Нисам успео да прочитам тему из датотеке %s: %s\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"било шта\"/> мора бити "
+#~ "дефинисан за ову тему"
+
+#~ msgid ""
+#~ "If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+#~ "focused window will be automatically raised after a delay (the delay is "
+#~ "specified by the auto_raise_delay key). This preference is poorly named, "
+#~ "but kept for backwards compatibility. To try to be more clear (at least "
+#~ "to the technically inclined), its meaning is \"automatically raise the "
+#~ "window following a timeout which is triggered by non-grabbed mouse entry "
+#~ "in sloppy or mouse focus modes\". It is unrelated to clicking behavior (i."
+#~ "e. this is not related to raise-on-click/orthogonal-raise). It is "
+#~ "unrelated to entering a window during drag and drop (because that results "
+#~ "in the application grabbing the mouse)"
+#~ msgstr ""
+#~ "Ако је истинито и режим фокуса је или „sloppy“ или „mouse“ тада ће "
+#~ "фокусирани прозор бити сам подигнут након неке задршке која је одређена у "
+#~ "кључу „auto_raise_delay“. Ова поставка је неодговарајуће именована али "
+#~ "задржана због сагласности са старим издањима. Да би били јаснији (барем "
+#~ "оним технички образованим), њено значење је — сам подигни прозор након "
+#~ "задршке што се окида у режимима „sloppy“ и „mouse“. То нема везе са "
+#~ "понашањем при притискању (није сродно са подизањем по притиску). Није "
+#~ "сросно такође са уласком у прозор при радњи „Превуци и отпусти“ јер "
+#~ "резултат тога је да сам програм преузима миш."
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Неки програми крше спецификације што резултира неисправним могућностима "
+#~ "менаџера прозора. На пример, у идеалном случају метасити би поставио "
+#~ "дијалоге на конзистентне позиције у зависности од старијег прозора. То "
+#~ "захтева игнорисање програмски специфираних позиција дијалога. Али неке "
+#~ "верзије Јаве/Свинга обележавају њихове контекстне меније као дијалоге, "
+#~ "тако да метасити мора да искључи позиционирање дијалога и омогући "
+#~ "менијима да раде у лошим Јава програмима. Постоји неколико сличних "
+#~ "примера. Ова опција поставља метасити у потпуно тачан начин рада, што "
+#~ "можда даје опште лепши кориснички интерфејс ако не морате да покрећете "
+#~ "некомпатибилне програме. Међутим компромиси морају бити предефинисано "
+#~ "дозвољени; старни свет је јако ружно место. Неки од компромиса су "
+#~ "компромиси за ограничења која се јављају у самим спецификацијама, тако да "
+#~ "се грешка у некомпромисном начину рада неможе исправити без-заобилажења "
+#~ "спецификација."
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Обрађивач израза са координатама је препунио свој багер, што је велика "
+#~ "грешка у метаситију, али да ли стебаш сигурни да вам треба толики израз?"
diff --git a/po/[email protected] b/po/[email protected]
new file mode 100644
index 00000000..15390b7f
--- /dev/null
+++ b/po/[email protected]
@@ -0,0 +1,3833 @@
+# Serbian translation of marco
+# Courtesy of Prevod.org team (http://prevod.org/) -- 2003 - 2009.
+#
+# This file is distributed under the same license as the marco package.
+#
+# Maintainer: Goran Rakić <[email protected]>
+# Reviewed on 2005-09-03 by: Danilo Šegan <[email protected]>"
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-01-21 21:34+0000\n"
+"PO-Revision-Date: 2010-03-24 01:37+0100\n"
+"Last-Translator: Goran Rakić <[email protected]>\n"
+"Language-Team: Serbian (sr) <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Radna površina"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Upravljanje prozorima"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Zvonce"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Zahtevana je nepoznata informacija o prozoru: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+#| msgid "\"%s\" is not responding."
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> ne daje odziv."
+
+#: ../src/core/delete.c:101
+#| msgid ""
+#| "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#| "\n"
+#| "<i>You may choose to wait a short while for it to continue or force the "
+#| "application to quit entirely.</i>"
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Možete malo sačekati dok se program ne sabere ili primorati program da "
+"kompletno prekine sa radom."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Sačekaj"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Primoraj izlaz"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Nisam uspeo da saznam ime kompjutera: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Nedostaje potreban kompozitni dodatak %s"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Nisam uspeo da otvorim X Window System ekran „%s“\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Izgubio sam vezu sa ekranom „%s“;\n"
+"najverovatnije je da je Iks server ugašen ili da ste ubili\n"
+"menadžer prozora.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Kobna greška sa izlazom/ulazom: %d (%s) na ekranu „%s“.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Neki drugi program već koristi taster %s sa izmenjivačima %x za neku "
+"funkciju\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Javila se greška pri pokretanju <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Nije definisana komanda %d.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Nije definisana naredba terminala.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"metasiti %s\n"
+"Sva prava zadržana (C) 2001–%s Havoc Pennington, Red Hat, Inc., i ostali\n"
+"Ovo je slobodan program; pogledajte izvorni kod za uslove korišćenja.\n"
+"Nikakva garancija NE postoji; čak ni garancija o podobnosti za određenu "
+"namenu.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Onemogući vezu sa upravnikom sesije"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Zameni tekućeg upravnika prozorima Metasitijem"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Navedi ID za upravljanje sesijom"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "Željeni X ekran"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Koristi sesiju iz datoteke"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Ispiši izdanje"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Sinhronizuj X-ove pozive"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Uključi kompoziciju"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Isključi kompoziciju"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Ne postavljaj preko celog ekrana prozore koji nisu uvećani i ne poseduju okvir"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Nisam uspeo da pročitam direktorijum tema: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Nisam mogao da pronđem temu! Proverite da %s postoji i da sadrži uobičajne "
+"teme.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Nisam uspeo da se ponovo pokrenem: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Ključ „%s“ u gnom podešavanjima je podešen na nepropisnu vrednost\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d sačuvan u ključu %s je izvan opdega od %d do %d\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Ključ „%s“ u gnom podešavanjima je podešen na nepropisni tip\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Kompromisi za loše programe su isključeni. Neke aplikacije se mogu ponašati "
+"čudno.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Nisam mogao da obradim opis „%s“ iz ključa %s u gnom podešavanjima\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"“%s“ je pronađen u bazi podešavanja što nije ispravna vrednost za tipku koja "
+"menja ponašanje tastera miša\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Greška prilikom postavljanja broja radnih površina na %d: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "%d. radni prostor"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "“%s“ iz baze sa podešavanjima nije ispravna kombinacija tastera „%s“\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Greška prilikom postavljanja imena za radnu površinu %d u „%s“: %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Greška pri postavljanju stanja kompozitora: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Prikaz %d na ekranu „%s“ nije ispravan\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Prikaz %d na ekranu „%s“ već ima pokrenut menadžer prozora; pokušajte da "
+"koristite --replace opciju kako biste zamenili trenutni menadžer prozora.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Nisam mogao da dobijem izbor menadžera prozora na prikazu %d erkana „%s“\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Prikaz %d na ekranu „%s“ već ima menadžer prozora\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Nisam mogao da ispustim prikaz %d na ekranu „%s“\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Oblik zapisa je „<Control>a“ ili „<Shift><Alt>F1“.\n"
+"\n"
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+"skraćenice poput „<Ctl>“ ili „<Ctrl>“. Ukoliko postavite opciju na "
+"„disabled“, neće biti korišćena nijedna kombinacija tastera za ovu radnju."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Oblik zapisa je „<Control>“ ili „<Shift><Alt>F1“.\n"
+"\n"
+"Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+"skraćenice poput „<Ctl>“ ili „<Ctrl>“. Ukoliko postavite opciju na "
+"„disabled“, neće biti korišćena nijedna kombinacija tastera za ovu radnju.\n"
+"\n"
+"Možete obrnuti kombinaciju tastera pritiskom na „<Shift>“, pa taster "
+"„<Shift>“ ne može biti jedan od onih koje ovde koriste."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Nisam mogao da napravim direktorijum „%s“: %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Nisam mogao da otvorim datoteku sesije „%s“ za upis: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Greška prilikom upisa u datoteku sesije '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Greška prilikom zatvaranja datoteke sesije '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Nisam uspeo da pročitam sačuvanu datoteku sesije %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Nisam uspeo da obradim sačuvanu datoteku sesije: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"<marco_session> atribut je primećen ali mi već imamo indetifikaciju sesije"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Nepoznat atribut %s u <%s> elementu"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "ugnježden <window> element"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Nepoznat element %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Ovi prozori ne podržavaju mogućnost „snimi trenutna podešavanja“ pa ćete "
+"morati da ih ručno ponovo pokrenete kada se sledeći put prijavite."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Nisam uspeo da otvorim istorijat grešaka: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Nisam uspeo da fdopen() datoteku sa istorijatom %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Otvorena datoteka sa istorijatom %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Metasiti je preveden bez podrške za obaveštajni način rada\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Menadžer prozora:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Greška u menadžeru prozora: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Upozorenje upravnika prozora: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Greška menadžera prozora: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Metasiti"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Prozor %s je postavio SM_CLIENT_ID na samog sebe umesto na WM_CLIENT_LEADER "
+"prozor kao što je navedeno u ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Prozor %s je postavio MWM što nagoveštava da nije promenljive veličine, ali "
+"je postaviominimalnu veličinu %d x %d i maksimalnu veličinu %d x %d što nema "
+"mnogo smisla.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Program je postavio netačan _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (na %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (kao administrator)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (kao %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (kao drugi korsnik)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Neispravan prozor 0x%lx naveden kao WM_TRANSIENT_FOR za %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Prozor 0x%lx ima osobinu %s\n"
+"tako da je očekivano da ima tip %s format %d,\n"
+"a zapravoand ima tip %s format %d n_items %d.\n"
+"Ovo je najverovatnije greška u programu, a ne u menadžeru prozora.\n"
+"Prozor ima naslov=\"%s\" klasa=\"%s\" ime=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Osobina %s prozora 0x%lx sadrži neispravan UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Osobina %s prozora 0x%lx sadrži neispravan UTF-8 za stavku %d u listi\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Prebaci se na radni prostor 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Prebaci se na radni prostor 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Prebaci se na radni prostor 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Prebaci se na radni prostor 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Prebaci se na radni prostor 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Prebaci se na radni prostor 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Prebaci se na radni prostor 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Prebaci se na radni prostor 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Prebaci se na radni prostor 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Prebaci se na radni prostor 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Prebaci se na radni prostor 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Prebaci se na radni prostor 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Prebaci se na radni prostor na levo"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Prebaci se na radni prostor na desno"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Prebaci se na radni prostor iznad ovog"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Prebaci se na radni prostor ispod ovog"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Premesti između prozora programa uz iskakanje"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Premesti unazad između prozora programa uz iskakanje"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Premesti između prozora uz iskakanje"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Premesti unazad između prozora uz iskakanje"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Premesti između panela i radne površine uz iskakanje"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Premesti unazad između panela i radne površine uz iskakanje"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Premesti odmah između prozora programa"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Premesti odmah unazad između prozora programa"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Premesti odmah između prozora"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Premesti odmah unazad između prozora"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Premesti odmah između panela i radne površine"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Premesti odmah unazad između panela i radne površine"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Sakrij sve obične prozore i prikaži radnu površinu"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Prikaži glavni meni panela"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Prikaži prozorče za pokretanje programa u panelu"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Uzmi snimak ekrana"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Uzmi snimak prozora"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Pokreni terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Aktiviraj meni prozora"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Isključi/uključi prikaz preko celog ekrana"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Promeni stanje uvećanja"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Određuje da li se prozor uvek prikazuje iznad ostalih"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Uvećaj prozor"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Vrati veličinu prozoru"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Promeni stanje zasenčenosti"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Umanji prozor"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Zatvori prozor"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Premesti prozor"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Promeni veličinu prozoru"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Prikazuje prozor na svim ili samo na jednoj radnoj površi"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Premesti prozor na radni prostor broj 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Premesti prozor na radni prostor broj 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Premesti prozor na radni prostor broj 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Premesti prozor na radni prostor broj 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Premesti prozor na radni prostor broj 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Premesti prozor na radni prostor broj 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Premesti prozor na radni prostor broj 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Premesti prozor na radni prostor broj 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Premesti prozor na radni prostor broj 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Premesti prozor na radni prostor broj 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Premesti prozor na radni prostor broj 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Premesti prozor na radni prostor broj 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Premesti prozor za jedan sledeći radni prostor ulevo"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Premesti prozor za jedan sledeći radni prostor udesno"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Premesti prozor za jedan radni prostor na gore"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Premesti prozor za jedan radni prostor na dole"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Podigni prozor ukoliko ga drugi prozor zaklanja, u protivnom ga spusti"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Podigni prozor iznad ostalih prozora"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Spusti prozor ispod ostalih prozora"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Uvećaj prozor vertikalno"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Uvećaj prozor horizontalno"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Premesti prozor u gornji, levi ćošak"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Premesti prozor u gornji, desni ćošak"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Premesti prozor u donji, levi ćošak"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Premesti prozor u donji, desni ćošak"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Premesti prozor u vrh ekrana"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Premesti prozor u dno ekrana"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Premesti prozor uz desnu ivicu ekrana"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Premesti prozor uz levu ivicu ekrana"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Premesti prozor na sredinu ekrana"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Nije ugrađeno) Navigacija radi u kontekstu programa, ne i prozora"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Niz karaktera koji opisuje slovni lik za naslovnu liniju prozora. Veličina "
+"iz opisa će biti korišćena samo ako je opcija titlebar_font_size podešena na "
+"0. Takođe, ova opcija je isključena ako je opcijatitlebar_uses_desktop_font "
+"postavljena na „true“."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Akcija za dupli klik na traku sa naslovom"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Akcija za srednji klik na traku sa naslovom"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Akcija za desni klik na traku sa naslovom"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Raspored dugmića na liniji sa naslovom"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Raspored dugmića na naslovnoj liniji. Vrednost treba da bude niz karaktera, "
+"kao na primer „menu:minimize,maximize,close“; dve tačke razdvajaju levi ugao "
+"prozora od desnog, a dugmići su razdvojeni zapetama. Dupliranje dugmića nije "
+"dozvoljeno. Nepoznata imena dugmića se ignorišu tako da dugmići koji u "
+"budućnosti budu dodati u metasiti ne razbiju podešavanja starijih izdanja. "
+"Mogu se koristiti specijalne oznaka za razdvajanje kako bi se napravilo mesta "
+"između dva susedna dugmeta."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Automatski podigni prozor sa fokusom"
+
+#: ../src/marco.schemas.in.in.h:9
+#| msgid ""
+#| "Clicking a window while holding down this modifier key will move the "
+#| "window (left click), resize the window (middle click), or show the window "
+#| "menu (right click). The left and right operations may be swapped using "
+#| "the \"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" "
+#| "or \"&lt;Super&gt;\" for example."
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Klik na prozor za vreme držanja ovog tastera će premestiti prozor (levi "
+"klik), promeniti veličinu prozora (srednji klik) ili prikazati meni prozora "
+"(desni klik). Možete zameniti levi i desni taster miša pomoću ključa "
+"„resize_with_right_button“. Na primer, taster može biti „&lt;Alt&gt;“ ili "
+"„&lt;Super&gt;“."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Komanda koju treba pokrenuti kao odgovor na pritisak tastera"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Kompozitni upravnik"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Kako novi prozor dobija fokus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Trenutna tema"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Vremenski period u milisekundama za automatsko podizanje prozora"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Određuje da li je Metasiti kompozitni upravnik."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Određuje da li programi ili sistem mogu da puste zvučne signale; može se "
+"koristiti uz „vizuelne zvuke“ radi dozvoljavanja tihih zvukova."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Isključi loše mogućnosti koje su obavezne za stare ili loše programe"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Omogući vizuelne zvuke"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Ako je tačno, a način fokusa je ili „sloppy“ ili „mouse“ onda će prozor u "
+"fokusu biti automatski podignut nakon isteka vremenskog perioda (koji je "
+"podešen preko auto_raise_delay ključa). Ovo nije povezano sa podizanjem "
+"prozora klikom, niti sa fokusiranjem u toku povuci-i-ispusti."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ako je tačno, ignoriše se opcija titlebar_font, i metasiti će koristiti "
+"standardan slovni lik programa za slovni lik naslova prozora."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Ako je postavljeno, Metasiti će korisniku prikazati manje podataka i manje "
+"osećaja o „neposrednom upravljanju“, upotrebom linija, izbegavanjem animacija "
+"ili drugim sredstvima. Ovo je značajni nedostatak po pitanju upotrebljivosti "
+"za mnoge korisnike, ali može omogućiti starim programima i terminalskim "
+"serverima da rade kada bi inače bili nepraktični. Takođe, upotreba linija je "
+"onemogućena kada je uključena pristupačnost."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Ako je tačno, metasiti rada u kontekstu programa, a ne prozora. Koncept je "
+"pomalo čudan, ali u opštem slučaju postavke bazirane na programu su više "
+"slične Mac sistemu, a manje slične Windows sistemu. Kada postavite prozor u "
+"fokus u ovom načinu rada, svi prozori te aplikacije će biti podignuti. "
+"Takođe, u ovom načinu rada, fokusni klik se ne šalje prozorima drugih "
+"programa. Takođe ovaj način rada je uveliko nedovršen u sadašnjim verzijama."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Ukoliko je postavljeno, žrtvuj upotrebljivost zarad upotrebe manje resursa"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Tipka koja će se koristiti za promenu akcije klika na prozor"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Ime radnog prostora"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Broj radnih prostora"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Broj radnih prostora. Mora biti veći od nule, i imati fiksiran maksimum kako "
+"biste sprečili da slučajno uništite radnu površinu tražeći previše radnih "
+"prostora."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Pokreni definisanu komandu"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Postavite na „true“ za promenu veličine prozora desnim tasterom i prikaz "
+"menija srednjim tasterom uz držanje zadatog tastera preko ključa "
+"„mouse_button_modifier“. Postavite na „false“ kako bi koristili obrnut "
+"raspored tastera."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Postavljanje ove opcije na „false“ (netačno) može prouzrokovati neispravno "
+"ponašanje programa, pa nije preporučljivo. Mnoge naredbe (npr. klik usred "
+"oblasti klijenta, pomeranje ili promena veličine prozora) obično ujedno i "
+"podižu prozor. Isključivanjem ove opcije će razdvojiti podizanje prozora od "
+"ostalih radnji i zanemariti zahteve za podizanje prozora od strane programa. "
+"Pogledajte http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Čak i "
+"ukoliko isključite ovu opciju, prozore možete podići levim klikom unutar "
+"prozora uz držanje tastera Alt, običnim klikom na naslovnu liniju prozora ili "
+"preko posebnih poruka iz prebacivača radnih površina (kao što je uključivanje "
+"zahteva iz programčeta sa spiskom zadataka). Ova opcija je trenutno "
+"isključena u režimu „click-to-focus“ (klik za fokus). Spisak načina za "
+"podizanje prozora kada je „raise_on_click“ (podigni na klik) postavljen na "
+"„false“ (netačno) ne uključuje zahteve iz programa za podizanje prozora, pa će "
+"takvi zahtevi biti zanemareni bez obzira na na razlog. Ukoliko pišete "
+"sopstveni program i dobijete primedbe od strane korisnika kako vaš program "
+"ne radi po isključivanju ove opcije, kažite im da je njihova krivica za "
+"neispravan rad upravnika prozorima i da vrate opciju na „true“ (tačno) ili "
+"da se naviknu na propratne pojave."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Neki programi ne poštuju specifikacije na način koji vodi do toga da "
+"upravnik prozora ne može da funkcioniše. Ovo podešavanje postavlja Metasiti u "
+"strog režim rada koji doprinosi pravilnijem ponašanju, pod uslovom da se ne "
+"pokušava pokretanje neispravnih programa."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Sistemsko zvonce se čuje"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Naređuje Metasitiju da prikaže nešto kada zazvoni sistemsko zvonce ili neki "
+"drugi program zazvoni. Trenutno su moguće dve vrednosti, „fullscreen“ kojim "
+"ceo ekran treperi crno-belo, i „frame_flash“ kada treperi samo naslovna "
+"linija prozora koji je zazvonio. Ukoliko nije poznat program koji je "
+"zazvonio (kao što je to obično slučaj sa „sistemskim zvoncetom“), trepereće "
+"naslovna linija prozora koji je trenutno u žiži."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Ključ /apps/marco/global_keybindings/run_command_N definiše tastere koji "
+"odgovaraju ovim komandama. Pritiskom kombinacije tastera za pokreni_komadu_N "
+"će izvršiti komandu_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Ključ /apps/marco/global_keybindings/run_command_N definiše funkciju "
+"tastera kojim se pokreće naredba navedena pomoću njega."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Ključ /apps/marco/global_keybindings/run_command_window_screenshot "
+"definiše funkciju tastera kojim se pokreće naredba navedena pomoću njega."
+
+# bug: missing dot (.) after keybinding_commands?
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Kombinacije tastera koji pokreću odgovarajuće označenu komandu u /apps/"
+"marco/keybinding_commands ključu. Oblik zapisa je „&lt;Control&gt;a“ ili "
+"„&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je dosta slobodan i "
+"dozvoljava velika ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili "
+"„&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz znakova „disabled“, "
+"onda neće biti korišćena nijedna kombinacija tastera za ovu akciju."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Ime radne površine."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Naredba za snimak ekrana"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Tema utvrđuje izgled ivica prozora, naslovne linije i svega ostalog sličnog."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Vremenski period pre podizanja prozora ako je opcija auto_raise postavljena na "
+"„true“. Period se izražava u hiljaditim delovima sekunde."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Fokus prozora podešava kako će prozori biti aktivirani. Ima tri moguće "
+"vrednosti „click“ znači da prozor mora biti selektovan da bi dobio fokus, "
+"„sloppy“ znači da prozor dobija fokus kada pokazivač miša uđe u prozor i "
+"„mouse“ štp znači da će prozor biti fokusitan kada pokazivačka strelica miša "
+"uđe u prozor i biti defokusiran kada strelica izađe iz prozora."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Naredba za uzimanje snimka prozora"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ova mogućnost određuje efekat duplog klika na naslovnu liniju prozora. "
+"Trenutno ispravni su „toggle_shade“ što će zamotati/odmotati prozor, "
+"„toggle_maximize“ što će uvećati ili poništiti uvećanje prozora, "
+"„toggle_maximize_horizontally“ i „toggle_maximize_vertically“, što će "
+"uvećati ili poništiti uvećanje prozora samo u horizontalno ili uspravno, "
+"„minimize“ što će umanjiti prozor, „shade“ što će zamotat prozor, „menu“ što "
+"će prikazati meni prozora, „lower“ što će postaviti prozor iza ostalih i "
+"„none“ čime se ne obavlja nikakva radnja."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ova mogućnost određuje efekat srednjeg klika na naslovnu liniju prozora. "
+"Trenutno ispravni su „toggle_shade“ što će zamotati/odmotati prozor, "
+"„toggle_maximize“ što će uvećati ili poništiti uvećanje prozora, "
+"„toggle_maximize_horizontally“ i „toggle_maximize_vertically“, što će "
+"uvećati ili poništiti uvećanje prozora samo u horizontalno ili uspravno, "
+"„minimize“ što će umanjiti prozor, „shade“ što će zamotat prozor, „menu“ što "
+"će prikazati meni prozora, „lower“ što će postaviti prozor iza ostalih i "
+"„none“ čime se ne obavlja nikakva radnja."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Ova mogućnost određuje efekat desnog klika na naslovnu liniju prozora. "
+"Trenutno ispravni su „toggle_shade“ što će zamotati/odmotati prozor, "
+"„toggle_maximize“ što će uvećati ili poništiti uvećanje prozora, "
+"„toggle_maximize_horizontally“ i „toggle_maximize_vertically“, što će "
+"uvećati ili poništiti uvećanje prozora samo u horizontalno ili uspravno, "
+"„minimize“ što će umanjiti prozor, „shade“ što će zamotat prozor, „menu“ što "
+"će prikazati meni prozora, „lower“ što će postaviti prozor iza ostalih i "
+"„none“ čime se ne obavlja nikakva radnja."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Ova opcija pruža dodatnu kontrolu nad načinom na koji novi prozori ulaze u "
+"fokus. Ima dve moguće vrednosti: „smart“ postavlja normalni režim fokusa i "
+"„strict“ kada prozori pokrenuti iz komandne linije ne ulaze u fokus."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Uključuje vizuelni prikaz kada program ili sistem „zazvoni“; korisno u bučnim "
+"uslovima."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Koristi standardni sistemski slovni lik za naslov prozora"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Vrsta vizelnog zvonceta"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Da li podizanje prozora treba da bude bočni efekat nekih drugih korisnikovih "
+"radnji"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Da li da promeni veličinu desnim tasterom"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Način fokusa prozora"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Slovni lik naslova prozora"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Upotreba: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Zatvori prozor"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Meni prozora"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Umanji prozor"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Uvećaj prozor"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Vrati veličinu prozoru"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Zamotaj prozor"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Odmotaj prozor"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Stavi prozor iznad ostalih"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Skloni prozor sa vrha"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Uvek na prikazanoj radnoj površini"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Stavi prozor samo na jednu radnu površinu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Umanji"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Uvećaj"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Poništi uvećanje"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Zamotaj"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Odmotaj"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Pomeri"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Promeni veličinu"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Premesti naslovnu liniju na ekran"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Uvek iznad os_talih"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Uvek na prikazanoj radnoj površini"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Samo na _ovoj radnoj površini"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Premesti na _levi radni prostor"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Premesti na _desni radni prostor"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Premesti na radni prostor _iznad"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Premesti na radni prostor is_pod"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "Zatvori"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Radni prostor %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "1_0. radni prostor"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "%s%d. radni prostor"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Premesti na drugi _radni prostor"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hiper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "gornju"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "donju"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "levu"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "desnu"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "geometrija okvira ne podešava „%s“ dimenziju"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "geometrija okvira ne podešava „%s“ dimenziju za ivicu „%s“"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Odnos dugmeta %g nije razuman"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Geometrija okvira ne podešava veličinu dugmića"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Gradijenti moraju imati najmanje dve boje"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specifikacija GTK boje mora imati navedeno stanje u zagradi, na primer gtk:fg"
+"[NORMAL] gde je NORMAL stanje; ne mogu da obradim „%s“"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Specifikacija GTK boje mora imati navedeno stanje u zagradi, na primer gtk:fg"
+"[NORMAL] gde je NORMAL stanje; ne mogu da obradim „%s“"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Nisam mogao da razumem stanje „%s“ u specifikaciji boje"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Nisam mogao da razumem deo boje „%s“ u specifikaciji boje"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Format blende je „blend/bg_color/fg_color/alpha“, „%s“ se ne uklapa u "
+"traženi format zapisa"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Nisam mogao da obradim alfa vrednost „%s“ u blendi boje"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alfa vrednost „%s“ u blendi boje nije između 0.0 i 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Format senke je „shade/base_color/factor“, „%s“ se ne uklapa u format"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Nisam mogao da obradim faktor senke „%s“ u osenčenoj boji"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Faktor senke „%s“ u osenčenoj boji je negativan"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Nisam mogao da obradim boju „%s“"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Izraz koordinata sadrži karakter „%s“ što nije dozvoljeno"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "Izraz koordinata sadrži decimalni broj „%s“ što ne može biti obrađeno"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Izraz koordinata sadrži celi broj „%s“ što ne može biti obrađeno"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Izraz sa koordinatama sadrži nepoznati operator na početku ovog teksta: „%s“"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Izraz sa koordinatama je bio prazan ili nerazumljiv"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Izraz sa koordinatama vodi deljenju sa nulom"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Izraz sa koordinatam pokušava da koristi operator ostatka pri deljenju za "
+"decimalni broj"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Izraz sa koordinatama ima operator „%s“ gde je očekivan operand"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Izraz sa koordinarama ima operand gde je očekivan operator"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Izraz sa koordinarama je završio sa operatorom umesto sa operandom"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Izraz sa koordinatama ima operator „%c“, a zatim operator „%c“ bez opeanda "
+"između"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Izraz sa koordinatama ima nepoznatu promenljivu ili konstanti „%s“"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Izraz sa koordinatama je bio preveliki za smeštaj i obradu"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Izraz sa koordinatama ima zatvorene zagrade bez otvorenih zagrada"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Izraz sa koordinatama ima otvorene zagrade bez zatvorenih zagrada"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Izraz sa koordinatama nema ni jedan operator ili operand"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Tema sadrži izraz koji rezultira greškom: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"bilo šta\"/> mora biti "
+"naveden za ovaj stil okvira"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Nedostaje <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"bilo šta\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Nisam uspeo da učitam temu „%s“: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nije definisan element <%s> za temu „%s“"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Nije podešen stil okvira za prozor tipa „%s“ u temi „%s“. Dodajte <window "
+"type=\"%s\" style_set=\"bilo šta\"/> element."
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Korisnički definisane konstante moraju početi velikim slovom; „%s“ ne počinje"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstanta „%s“ je već definisana"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Nije definisan „%s“ atribut u elementu <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Linija %d karakter %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Atribut „%s“ je ponovljen dva puta u istom elementu <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Atribut „%s“ je neispravan u elementu <%s> u ovom kontekstu"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Nisam mogao da izdvojim „%s“ kao celobrojnu vrednost"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Nisam razumeo vodeće karaktere „%s“ u nizu karaktera „%s“"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Celi broj %ld mora biti pozitivna"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Celi broj %ld je previš veliki, trenutni maksimum je %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Nisam mogao da obradim „%s“ kao decimalni broj"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Logičke vrednosti moraju biti „true“ ili „false“, a ne „%s“"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Ugao mora biti između 0.0 i 360.0, bio je %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa stepen mora biti između 0.0 (nevidljivo) i 1.0 (potpuno vidljivo), bio je "
+"%g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Netačno skaliranje naslova „%s“ (mora biti jedan od sledećih: xx-small,x-"
+"small,small,medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> ime „%s“ je korišćeno po drugi put"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> stariji „%s“ nije definisan"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometrija „%s“ nije definisana"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> mora biti navedena ili geometrija ili stariji element koji ima "
+"geometriju"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Morate navesti pozadinu da bi alfa vrednost imala smisla"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Nepoznat tip „%s“ u elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Nepoznat style_set „%s“ u elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Tipu prozora „%s“ je već dodeljen set stila"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Element <%s> nije dozvoljen ispod <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr "Ne mogu da podesim i širinu/visinu i razmeru dugmadi"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Udaljenost „%s“ je nepoznata"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Odnos „%s je nepoznat"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Ivica „%s“ je nepoznata"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Nije definisan „start_angle“ ili „from“ atribut u elementu <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Nije definisan „extent_angle“ ili „to“ atribut u elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Nisam razumeo vrednost „%s“ kao tip gradijenta"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Nisam razumeo tip popunjavanja površine „%s“ u elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Nisam razumeo stanje „%s“ u elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Nisam razumeo senku „%s“ u elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Nisam razumeo strelicu „%s“ u elementu <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Nije definisan <draw_ops> označen kao „%s“"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Uključivanje elementa draw_ops „%s“ovde bi napravilo kružnu referencu"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Nepoznata pozicija „%s“ za deo okvira"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Stil okvira ceć ima deo na pozicji %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Nije definisan <draw_ops> sa imenom „%s“"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Nepoznata funkcija „%s“ za dugme"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+"Funkcija „%s“ za dugme ne postoji u ovoj verziji (verzija %d, a treba vam %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Nepoznato stanje „%s“ za dugme"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Stil okvira već ima dugme sa funkcijom %s i stanjem %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "„%s“ nije dozvoljena vrednost za atribut focus"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "„%s“ nije dozvoljena vrednost za atribut state"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Stil „%s“ nije definisan"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "„%s“ nije dozvoljena vrednost za atribut resize"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Nikako ne treba imati „resize“ atribut u elementu <%s> za uvećana/zasenčena "
+"stanja"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Nikako ne treba imati „resize“ atribut u elementu <%s> za uvećana stanja"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Stil je već naveden za stanje %s uvećanje %s fokus %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stil je već naveden za stanje %s fokus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ne mogu postojati dva draw_ops-a za element <piece> (tema navodi draw_ops "
+"atribut i <draw_ops> element, ili navodi dva elementa)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ne mogu postojati dva draw_ops-a za element <button> (tema navodi draw_ops "
+"atribut i <draw_ops> element, ili navodi dva elementa)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Ne mogu postojati dva draw_ops-a za element <menu_icon> (tema navodi "
+"draw_ops atribut i <draw_ops> element, ili navodi dva elementa)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Najstariji element teme mora biti <marco_theme>, a ne <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Element <%s> nije dozvoljen unutar elemenata name, author, date i description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Element <%s> nije dozvoljen unutar elementa <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Element <%s> nije dozvoljen unutar elemenata distance, border i aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Element <%s> nije dozvoljen unutar elemenata operacija crtanja"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Element <%s> nije dozvoljen unutar <%s> elementa"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Nije naveden draw_ops za deo okvira"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Nije naveden draw_ops dugme"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Nije dozvoljen tekst unutar elementa <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "Element <%s> je naveden dva puta u ovoj temi"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Nisam uspeo da pronađem ispravnu datoteku za temu %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Datoteka sa temom %s ne sadrži korenski <marco_theme> element"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Prozori"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Prozori/otkini"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Prozori/_Prozorče"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Prozori/_Važno prozorče"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Prozori/_Alatka"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Prozori/_Uvodni ekran"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Prozori/_Gornje pripajanje"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Prozori/_Donje pripajanje"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Prozori/_Levo pripajanje"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Prozori/D_esno pripajanje"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Prozori/_Sva pripajanja"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Prozori/Rad_na površina"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Ovo je primer poruke u probnom prozorčetu"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Lažna stavka menija %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Prozor samo sa ivicom"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Traka"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Običan prozor programa"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Prozorče"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Važno prozorče"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Paleta alatki"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Otkinuti meni"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Ivica"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Proba rasporeda dugmića %d"
+
+# bug: plural-forms
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekundi za iscrtavanje okvira jednog prozora"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Upotreba: marco-theme-viewer [IME-TEME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Greška prilikom učitavanja teme: %s\n"
+
+# bug: plural-forms
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Učitana tema „%s“ za %g sekundi\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Običan naslovni slovni lik"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Mali naslovni slovni lik"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Veliki naslovni slovni lik"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Raspored dugmića"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Provera brzine"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Ovde ide naslov prozora"
+
+# bug: plural-forms
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Nacrtao je %d okvira za %g klijentskih sekundi (%g milisekundi po okviru) i %"
+"g sekundi vremena na zidnom časovniku uključujući i resurse Iks servera (%g "
+"milisekundi po okviru)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "provera izraza položaja je vratila tačno, ali je postavila grešku"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "provera izraza položaja je vratila netačno, ali nije postavila grešku"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Očekivana je greška, ali ona nije data"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Očekivana je greška %d, ali je data %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Greška nije očekivana, ali je vraćena: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x vrednost je bila %d, %d, a očekivana je"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y vrednost je bila %d, %d, a očekivana je"
+
+# bug: plural-forms
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d izraza koordinata obrađeno za %g sekundi (prosek %g sekundi)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Otvori neki drugi od ovih prozora"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Ovo je probno dugme sa „otvori“ ikonom"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Ovo je probno dugme sa „izađi“ ikonom"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Nisam uspeo da izdvojim poruku „%s“ iz prozorčeta procesa\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Greška prilikom čitanja iz prozorčeta procesa: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "Greška prilikom pokretanja marco-dialog zbog upita o ubijanju programa „%"
+#~ "s“\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Greška prilikom pokretanja marco-dialog radi upozorenja o programima "
+#~ "koji ne podržavaju menadžer sesija: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "Naslov"
+
+#~ msgid "Class"
+#~ msgstr "Klasa"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Dogodila se greška prilikom pokretanja „%s“:\n"
+#~ "%s."
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "Element <author> je naveden dva puta u ovoj temi"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "Element <copyright> je naveden dva puta u ovoj temi"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "Element <date> je naveden dva puta u ovoj temi"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "Element <description> je naveden dva puta u ovoj temi"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Greška prilikom pokretanja marco-dialog programa zbog štampanja greške o "
+#~ "komandi: %s\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Nepoznat atribut %s u <marco_session> elementu"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Nepoznat atribut %s u <maximized> elementu"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Nepoznat atribut %s u <geometry> elementu"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Mnoge radnje (npr. pritisak na prostor programa, premeštanje ili menjanje "
+#~ "veličine prozora) uobičajeno, kao sporedni efekat, podižu prozor. "
+#~ "Postavljanje ovog prekidača na istinitosnu vrednost „false“, što je krajnje "
+#~ "nepreporučljivo, će razdvojiti podizanje prozora od ostalih naredbi "
+#~ "korisnika i zanemariti zahteve za podizanje od strane programa. Vidite See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6 za više detalja."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor iznad tekućeg. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor ispod tekućeg. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor levo od tekućeg. "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor desno od tekućeg. "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 1. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 10. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 11. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 12. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 2. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 3. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 4. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 5. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 6. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 7. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 8. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prebacuje na radni prostor broj 9. Oblik zapisa "
+#~ "je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu "
+#~ "je dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice "
+#~ "poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti "
+#~ "niz znakova „disabled“, onda neće biti korišćena nijedna kombinacija "
+#~ "tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prikazivanje menija prozora. Oblik zapisa je „&lt;"
+#~ "Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za ulazak u „režim premeštanja“ ili za početak "
+#~ "premeštanja prozora pomoću tastature. Oblik zapisa je „&lt;Control&gt;a“ "
+#~ "ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je dosta slobodan i "
+#~ "dozvoljava velika ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili "
+#~ "„&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz znakova „disabled“, "
+#~ "onda neće biti korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za ulazak u „režim promene veličine“ ili za početak "
+#~ "promene veličine prozora pomoću tastature. Oblik zapisa je „&lt;"
+#~ "Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za sakrivanje svih običnih prozora i fokusiranje "
+#~ "pozadine radne površi. Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1“. Program za obradu je dosta slobodan i dozvoljava "
+#~ "velika ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; "
+#~ "Ctrl&gt;“. Ako podesite opciju na naročiti niz znakova „disabled“, onda "
+#~ "neće biti korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera za uvećavanje prozora. Oblik zapisa je „&lt;Control&gt;"
+#~ "a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je dosta slobodan "
+#~ "i dozvoljava velika ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ "
+#~ "ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz znakova "
+#~ "„disabled“, onda neće biti korišćena nijedna kombinacija tastera za ovu "
+#~ "akciju."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera za umanjivanje prozora. Oblik zapisa je „&lt;Control&gt;"
+#~ "a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je dosta slobodan "
+#~ "i dozvoljava velika ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ "
+#~ "ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz znakova "
+#~ "„disabled“, onda neće biti korišćena nijedna kombinacija tastera za ovu "
+#~ "akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor ispod. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor levo. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor desno. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor gore. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 1. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 10. "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 11. "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 12. "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 2. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 3. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 4. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 5. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 6. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 7. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 8. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje prozora na radni prostor broj 9. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa unazad između panela i radne "
+#~ "površi, pomoću iskačućeg prozora. Oblik zapisa je „&lt;Control&gt;a“ ili "
+#~ "„&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je dosta slobodan i "
+#~ "dozvoljava velika ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili "
+#~ "„&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz znakova „disabled“, "
+#~ "onda neće biti korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa unazad između panela i radne "
+#~ "površi, bez iskačućeg prozora. Oblik zapisa je „&lt;Control&gt;a“ ili "
+#~ "„&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je dosta slobodan i "
+#~ "dozvoljava velika ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili "
+#~ "„&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz znakova „disabled“, "
+#~ "onda neće biti korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa unazad između prozora programa, "
+#~ "bez iskačućeg prozora. Držanje „shift“ uz ovu prečicu će ići opet unapred. "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa unazad između prozora programa, "
+#~ "pomoću iskačućeg prozora. Držanje „shift“ uz ovu prečicu će ići opet "
+#~ "unapred. Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1“. Program za obradu je dosta slobodan i dozvoljava velika ili mala "
+#~ "slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako "
+#~ "podesite opciju na naročiti niz znakova „disabled“, onda neće biti "
+#~ "korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa unazad između prozora, bez "
+#~ "iskačućeg prozora. Držanje „shift“ uz ovu prečicu će ići opet unapred. "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa unazad između prozora, pomoću "
+#~ "iskačućeg prozora. Držanje „shift“ uz ovu prečicu će ići opet unapred. "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa između panela i radne površi, "
+#~ "pomoću iskačućeg prozora. Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1“. Program za obradu je dosta slobodan i dozvoljava "
+#~ "velika ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; "
+#~ "Ctrl&gt;“. Ako podesite opciju na naročiti niz znakova „disabled“, onda "
+#~ "neće biti korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa između panela i radne površi, "
+#~ "bez iskačućeg prozora. Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1“. Program za obradu je dosta slobodan i dozvoljava "
+#~ "velika ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; "
+#~ "Ctrl&gt;“. Ako podesite opciju na naročiti niz znakova „disabled“, onda "
+#~ "neće biti korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa između prozora programa, bez "
+#~ "iskačućeg prozora. (Tradicionalno &lt;Alt&gr;Escape) Držanje tastera "
+#~ "„shift“ pri upotrebi ove kombinacije obrće smer kretanja. Oblik zapisa je "
+#~ "„&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa između prozora programa, pomoću "
+#~ "iskačućeg prozora. (Tradicionalno &lt;Alt&gr;Tab) Držanje tastera „shift“ "
+#~ "pri upotrebi ove kombinacije obrće smer kretanja. Oblik zapisa je „&lt;"
+#~ "Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa između prozora, bez iskačućeg "
+#~ "prozora. (Tradicionalno &lt;Alt&gr;Escape) Držanje tastera „shift“ pri "
+#~ "upotrebi ove kombinacije obrće smer kretanja. Oblik zapisa je „&lt;"
+#~ "Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera za prebacivanje fokusa između prozora, pomoću "
+#~ "iskačućeg prozora. (Tradicionalno &lt;Alt&gr;Tab) Držanje tastera „shift“ "
+#~ "pri upotrebi ove kombinacije obrće smer kretanja. Oblik zapisa je „&lt;"
+#~ "Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za uključivanje/isključivanje da prozor bude uvek na "
+#~ "vrhu. Prozor koji je uvek na vrhu će se videti i preko ostalih "
+#~ "preklapajućih prozora. Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1“. Program za obradu je dosta slobodan i dozvoljava "
+#~ "velika ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; "
+#~ "Ctrl&gt;“. Ako podesite opciju na naročiti niz znakova „disabled“, onda "
+#~ "neće biti korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za uključivanje/isključivanje režima celog ekrana. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera za uključivanje/isključivanje uvećanje. Oblik zapisa je "
+#~ "„&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za zamotavanje/odmotavanje. Oblik zapisa je „&lt;"
+#~ "Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za izmenu da li je prozor u svim radnim prostorima "
+#~ "ili samo u jednom. Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1“. Program za obradu je dosta slobodan i dozvoljava velika "
+#~ "ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. "
+#~ "Ako podesite opciju na naročiti niz znakova „disabled“, onda neće biti "
+#~ "korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera za poništavanje uvećanja prozora. Oblik zapisa je „&lt;"
+#~ "Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+# bug: s/display's/displays/ (it's not genitive, but a verb as in "it displays")
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prikazuje prozorče panela „Pokreni program“. "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja pokreće terminal. Oblik zapisa je „&lt;"
+#~ "Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prikazuje alatku panela za snimke ekrana za "
+#~ "snimak prozora. Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1“. Program za obradu je dosta slobodan i dozvoljava velika ili "
+#~ "mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako "
+#~ "podesite opciju na naročiti niz znakova „disabled“, onda neće biti "
+#~ "korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prikazuje alatku panela za snimke ekrana. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja prikazuje glavni meni panela. Oblik zapisa je "
+#~ "„&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja menja da li je prozor iznad ili ispod ostalih "
+#~ "prozora. Ako je prozor pokriven nekim prozorom, onda se izdiže iznad "
+#~ "ostalih, a ako je već u potpunosti prikazan, onda se sakriva iza svih "
+#~ "ostalih prozora. Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1“. Program za obradu je dosta slobodan i dozvoljava velika ili "
+#~ "mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako "
+#~ "podesite opciju na naročiti niz znakova „disabled“, onda neće biti "
+#~ "korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja sakriva prozor iza svih ostalih prozora. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja pomera prozor na sever ekrana (gornja ivica). "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the center of the screen. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja pomera prozor na sredinu ekrana. Oblik zapisa je "
+#~ "„&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za obradu je "
+#~ "dosta slobodan i dozvoljava velika ili mala slova, kao i skraćenice poput "
+#~ "„&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju na naročiti niz "
+#~ "znakova „disabled“, onda neće biti korišćena nijedna kombinacija tastera "
+#~ "za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja pomera prozor na istok ekrana (desna ivica). "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja pomera prozor na severoistok ekrana (gore "
+#~ "desno). Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1“. Program za obradu je dosta slobodan i dozvoljava velika ili mala "
+#~ "slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako "
+#~ "podesite opciju na naročiti niz znakova „disabled“, onda neće biti "
+#~ "korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja pomera prozor na severozapad ekrana (gore levo). "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja pomera prozor na jug ekrana (donja ivica). Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja pomera prozor na jugoistok ekrana (dole desno). "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja pomera prozor na jugozapad ekrana (dole levo). "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja pomera prozor na zapad ekrana (leva ivica). "
+#~ "Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. "
+#~ "Program za obradu je dosta slobodan i dozvoljava velika ili mala slova, "
+#~ "kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite "
+#~ "opciju na naročiti niz znakova „disabled“, onda neće biti korišćena "
+#~ "nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Kombinacija tastera koja izdiže prozor ispred svih ostalih prozora. Oblik "
+#~ "zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;&lt;Alt&gt;F1“. Program za "
+#~ "obradu je dosta slobodan i dozvoljava velika ili mala slova, kao i "
+#~ "skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. Ako podesite opciju "
+#~ "na naročiti niz znakova „disabled“, onda neće biti korišćena nijedna "
+#~ "kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za izmenu veličine prozora tako da popuni sav "
+#~ "vodoravni prostor. Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1“. Program za obradu je dosta slobodan i dozvoljava velika "
+#~ "ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. "
+#~ "Ako podesite opciju na naročiti niz znakova „disabled“, onda neće biti "
+#~ "korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Kombinacija tastera za izmenu veličine prozora tako da popuni sav "
+#~ "uspravni prostor. Oblik zapisa je „&lt;Control&gt;a“ ili „&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1“. Program za obradu je dosta slobodan i dozvoljava velika "
+#~ "ili mala slova, kao i skraćenice poput „&lt;Ctl&gt;“ ili „&lt; Ctrl&gt;“. "
+#~ "Ako podesite opciju na naročiti niz znakova „disabled“, onda neće biti "
+#~ "korišćena nijedna kombinacija tastera za ovu akciju."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Izmeni da li je uvek na vrhu"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Poništi uvećanje prozora"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Poništi uvećavanje prozora"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Ne postoji atribut „%s“ u elementu <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Tema već ima rezervy za icon"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Tema već ima rezervu za mini_icon"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Nije definisan „name“ atribut u elementu <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Nije definisan „value“ atribut u elementu <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Nije definisan „top“ atribut u elementu <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Nije definisan „bottom“ atribut u elementu <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Nije definisan „left“ atribut u elementu <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Nije definisan „right“ atribut u elementu <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Nije definisan „color“ atribut u elementu <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Nije definisan „x1“ atribut u elementu <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Nije definisan „y1“ atribut u elementu <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Nije definisan „x2“ atribut u elementu <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Nije definisan „y2“ atribut u elementu <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Nije definisan „y“ atribut u elementu <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Nije definisan „width“ atribut u elementu <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Nije definisan „height“ atribut u elementu <%s>"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "Nije definisan „start_angle“ atribut u elementu <%s>"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "Nije definisan „extent_angle“ atribut u elementu <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Nije definisan „alpha“ atribut u elementu <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Nije definisan „type“ atribut u elementu <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Nije definisan „filename“ atribut u elementu <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Nije definisan „state“ atribut u elementu <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Nije definisan „shadow“ atribut u elementu <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Nije definisan „arrow“ atribut u elementu <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "Nije definisan „value“ atribut u elementu <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Nije definisan „position“ atribut u elementu <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Nije definisan „function“ atribut u elementu <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Nije definisan „state“ atribut u elementu <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Nije definisan „focus“ atribut u elementu <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Nije definisan „style“ atribut u elementu <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Nije definisan „resize“ atribut u elementu <%s>"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "Tip podatka „%s“ nije celobrojna vrednost"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "Broj %d sačuvan u ključu %s u Gnomovim podešavanjima ne predstavlja razumnu "
+#~ "veličinu kursora koja mora biti u opsegu od 1 do 128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d sačuvano u ključu %s u gnom podešavanjima nije razuman broj radnih "
+#~ "površina, trenutni maksimum je %d\n"
+
+#~ msgid "On _Top"
+#~ msgstr "Izna_d svega"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr "Primoravanjem programa na izlaz ćete izgubiti sve nesačuvane izmene."
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Nepoznata funkcija „%s“ za ikonu menija"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Nepoznato stanjr „%s“ za ikonu menija"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "Tema već poseduje ikonu menija za funkciju %s stanje %s"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "Nije naveden draw_ops ikonu menija"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "Nisam uspeo da pročitam temu iz datoteke %s: %s\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"bilo šta\"/> mora biti "
+#~ "definisan za ovu temu"
+
+#~ msgid ""
+#~ "If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+#~ "focused window will be automatically raised after a delay (the delay is "
+#~ "specified by the auto_raise_delay key). This preference is poorly named, "
+#~ "but kept for backwards compatibility. To try to be more clear (at least "
+#~ "to the technically inclined), its meaning is \"automatically raise the "
+#~ "window following a timeout which is triggered by non-grabbed mouse entry "
+#~ "in sloppy or mouse focus modes\". It is unrelated to clicking behavior (i."
+#~ "e. this is not related to raise-on-click/orthogonal-raise). It is "
+#~ "unrelated to entering a window during drag and drop (because that results "
+#~ "in the application grabbing the mouse)"
+#~ msgstr ""
+#~ "Ako je istinito i režim fokusa je ili „sloppy“ ili „mouse“ tada će "
+#~ "fokusirani prozor biti sam podignut nakon neke zadrške koja je određena u "
+#~ "ključu „auto_raise_delay“. Ova postavka je neodgovarajuće imenovana ali "
+#~ "zadržana zbog saglasnosti sa starim izdanjima. Da bi bili jasniji (barem "
+#~ "onim tehnički obrazovanim), njeno značenje je — sam podigni prozor nakon "
+#~ "zadrške što se okida u režimima „sloppy“ i „mouse“. To nema veze sa "
+#~ "ponašanjem pri pritiskanju (nije srodno sa podizanjem po pritisku). Nije "
+#~ "srosno takođe sa ulaskom u prozor pri radnji „Prevuci i otpusti“ jer "
+#~ "rezultat toga je da sam program preuzima miš."
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Neki programi krše specifikacije što rezultira neispravnim mogućnostima "
+#~ "menadžera prozora. Na primer, u idealnom slučaju metasiti bi postavio "
+#~ "dijaloge na konzistentne pozicije u zavisnosti od starijeg prozora. To "
+#~ "zahteva ignorisanje programski specifiranih pozicija dijaloga. Ali neke "
+#~ "verzije Jave/Svinga obeležavaju njihove kontekstne menije kao dijaloge, "
+#~ "tako da metasiti mora da isključi pozicioniranje dijaloga i omogući "
+#~ "menijima da rade u lošim Java programima. Postoji nekoliko sličnih "
+#~ "primera. Ova opcija postavlja metasiti u potpuno tačan način rada, što "
+#~ "možda daje opšte lepši korisnički interfejs ako ne morate da pokrećete "
+#~ "nekompatibilne programe. Međutim kompromisi moraju biti predefinisano "
+#~ "dozvoljeni; starni svet je jako ružno mesto. Neki od kompromisa su "
+#~ "kompromisi za ograničenja koja se javljaju u samim specifikacijama, tako da "
+#~ "se greška u nekompromisnom načinu rada nemože ispraviti bez-zaobilaženja "
+#~ "specifikacija."
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Obrađivač izraza sa koordinatama je prepunio svoj bager, što je velika "
+#~ "greška u metasitiju, ali da li stebaš sigurni da vam treba toliki izraz?"
diff --git a/po/sv.po b/po/sv.po
new file mode 100644
index 00000000..188fe5b3
--- /dev/null
+++ b/po/sv.po
@@ -0,0 +1,2082 @@
+# Swedish messages for marco.
+# Copyright (C) 2001-2010 Free Software Foundation, Inc.
+# Christian Rose <[email protected]>, 2001, 2002, 2003, 2004, 2005.
+# Daniel Nylander <[email protected]>, 2006, 2007, 2008, 2009, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-10 22:05+0100\n"
+"PO-Revision-Date: 2010-03-10 22:06+0100\n"
+"Last-Translator: Daniel Nylander <[email protected]>\n"
+"Language-Team: Swedish <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Skrivbord"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Fönsterhantering"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Ljudhändelse"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Okänd fråga efter fönsterinformation: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> svarar inte."
+
+#: ../src/core/delete.c:101
+msgid "You may choose to wait a short while for it to continue or force the application to quit entirely."
+msgstr "Du kan välja att vänta en kort stund på det för att fortsätta eller tvinga programmet att helt avslutas."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Vänta"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Tvinga att avsluta"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Misslyckades med att få tag i värdnamn: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Saknar %s-tillägg som krävs för kompositing"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Misslyckades med att öppna X Window System-displayen \"%s\"\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Tappade anslutningen till displayen \"%s\";\n"
+"troligtvis stängdes X-servern ner, eller så dödade/förstörde du\n"
+"fönsterhanteraren.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Ödesdigert IO-fel %d (%s) på display \"%s\".\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid "Some other program is already using the key %s with modifiers %x as a binding\n"
+msgstr "Ett annat program använder redan tangenten %s med modifierarna %x som en bindning\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Ett fel uppstod vid körning av <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Inget kommando %d har definierats.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Inget terminalkommando har definierats.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright © 2001-%s Havoc Pennington, Red Hat, Inc. och andra\n"
+"Det här är fri programvara; se källkoden för kopieringsvillkor.\n"
+"Det finns INGA garantier; inte ens för SÄLJBARHET eller LÄMPLIGHET FÖR NÅGOT SPECIELLT ÄNDAMÅL.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Inaktivera anslutning till sessionshanteraren"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Ersätt den körande fönsterhanteraren med Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Ange sessionshanteringsid"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X-display att använda"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Initiera session från sparandefil"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Skriv ut version"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Gör X-anrop synkrona"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Slå på compositing"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Stäng av compositing"
+
+#: ../src/core/main.c:322
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "Skapa inte helskärmsfönster som är maximerade och saknar dekorationer"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Misslyckades med att genomsöka temakatalogen: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "Kunde inte hitta ett tema! Försäkra dig om att %s finns och innehåller vanliga teman.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Misslyckades med att starta om: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508
+#: ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf-nyckeln \"%s\" är satt till ett ogiltigt värde\n"
+
+#: ../src/core/prefs.c:589
+#: ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d lagrad i MateConf-nyckeln %s är inte i intervallet %d till %d\n"
+
+# SUN CHANGED MESSAGE
+#: ../src/core/prefs.c:633
+#: ../src/core/prefs.c:710
+#: ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822
+#: ../src/core/prefs.c:1115
+#: ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148
+#: ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf-nyckeln \"%s\" är satt till en ogiltig typ\n"
+
+#: ../src/core/prefs.c:1234
+msgid "Workarounds for broken applications disabled. Some applications may not behave properly.\n"
+msgstr "Fixar för trasiga program är inaktiverade. En del program fungerar kanske inte korrekt.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Kunde inte tolka typsnittsbeskrivningen \"%s\" från MateConf-nyckeln %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for mouse button modifier\n"
+msgstr "\"%s\" som hittades i konfigurationsdatabasen är inte ett giltigt värde för musknappsmodifierare\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Fel vid inställning av antalet arbetsytor till %d: %s\n"
+
+#: ../src/core/prefs.c:1953
+#: ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Arbetsyta %d"
+
+#: ../src/core/prefs.c:1983
+#: ../src/core/prefs.c:2161
+#, c-format
+msgid "\"%s\" found in configuration database is not a valid value for keybinding \"%s\"\n"
+msgstr "\"%s\" som hittades i konfigurationsdatabasen är inte ett giltigt värde för tangentbindningen \"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Fel vid inställning av namnet på arbetsyta %d till \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Fel vid inställning av status för compositor: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Skärm %d på display \"%s\" är ogiltig\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager; try using the --replace option to replace the current window manager.\n"
+msgstr "Skärm %d på display \"%s\" har redan en fönsterhanterare; försök med flaggan --replace för att ersätta den aktuella fönsterhanteraren.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Kunde inte få tag i fönsterhanterarval på skärm %d display \"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Skärm %d på display \"%s\" har redan en fönsterhanterare\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Kunde inte släppa skärm %d på display \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Formatet ser ut som \"<Control>a\" eller \"<Shift><Alt>F1\".\n"
+"\n"
+"Tolken är ganska tillåtande och tillåter gemener och versaler och även förkortningar som \"<Ctl>\" och \"<Ctrl>\". Om du ställer in alternativet till specialsträngen \"disabled\" kommer det inte att finnas någon tangentbindning för denna åtgärd."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Formatet ser ut som \"<Control>a\" eller \"<Shift><Alt>F1\".\n"
+"\n"
+"Tolken är ganska tillåtande och tillåter gemener och versaler och även förkortningar som \"<Ctl>\" och \"<Ctrl>\". Om du ställer in alternativet till specialsträngen \"disabled\" kommer det inte att finnas någon tangentbindning för denna åtgärd.\n"
+"\n"
+"Denna tangentbindning kan omvändas genom att hålla ner \"shift\"-tangenten; därför kan inte \"shift\" vara en av de tangenter som används."
+
+#: ../src/core/session.c:850
+#: ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Kunde inte skapa katalogen \"%s\": %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Kunde inte öppna sessionsfilen \"%s\" för skrivning: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Fel vid skrivning av sessionsfilen \"%s\": %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Fel vid stängning av sessionsfilen \"%s\": %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Misslyckades med att läsa sparad sessionsfil %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Misslyckades med att tolka sparad sessionsfil: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session>-attribut hittat men vi har redan sessions-ID"
+
+# SUN CHANGED MESSAGE
+#: ../src/core/session.c:1207
+#: ../src/core/session.c:1282
+#: ../src/core/session.c:1314
+#: ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Okänt attribut %s i <%s>-element"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "nästlad <window>-tagg"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Okänt element %s"
+
+#: ../src/core/session.c:1818
+msgid "These windows do not support &quot;save current setup&quot; and will have to be restarted manually next time you log in."
+msgstr "Dessa fönster har inte stöd för &quot;spara nuvarande inställningar&quot; och kommer att behöva startas om manuellt nästa gång du loggar in."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Misslyckades med att öppna felsökningslogg: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Misslyckades med att använda fdopen() på loggfilen %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Öppnade loggfilen %s\n"
+
+#: ../src/core/util.c:136
+#: ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco kompilerades utan stöd för utförligt läge\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Fönsterhanterare: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Fel i fönsterhanterare: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Fönsterhanterarvarning: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Fönsterhanterarfel: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570
+#: ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid "Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER window as specified in the ICCCM.\n"
+msgstr "Fönstret %s ställer in SM_CLIENT_ID på sig själv, istället för på WM_CLIENT_LEADER-fönstret som är angivet i ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid "Window %s sets an MWM hint indicating it isn't resizable, but sets min size %d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr "Fönstret %s ställer in ett MWM-tips som anger att det inte går att ändra storlek på, men ställer in minsta storleken %d × %d och största storleken %d × %d; detta verkar inte vettigt.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Programmet ställde in ett felaktigt _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (på %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (som superanvändare)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (som %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (som en annan användare)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Ogiltigt WM_TRANSIENT_FOR-fönster 0x%lx angivet för %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Fönster 0x%lx har egenskap %s\n"
+"som förväntades ha typen %s format %d\n"
+"och har i verkligheten typ %s format %d n_items %d.\n"
+"Det här är sannolikt ett programfel och inte ett fel i fönsterhanteraren.\n"
+"Fönstret har titeln=\"%s\" klass=\"%s\" namn=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Egenskap %s på fönster 0x%lx innehöll ogiltig UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "Egenskap %s på fönster 0x%lx innehöll ogiltig UTF-8 för objekt %d i listan\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Växla till arbetsyta 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Växla till arbetsyta 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Växla till arbetsyta 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Växla till arbetsyta 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Växla till arbetsyta 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Växla till arbetsyta 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Växla till arbetsyta 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Växla till arbetsyta 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Växla till arbetsyta 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Växla till arbetsyta 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Växla till arbetsyta 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Växla till arbetsyta 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Växla till arbetsytan till vänster om den aktuella arbetsytan"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Växla till arbetsytan till höger om den aktuella arbetsytan"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Växla till arbetsytan ovanför den aktuella arbetsytan"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Växla till arbetsytan nedanför den aktuella arbetsytan"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Flytta mellan ett programs fönster med ett popupfönster"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Flytta baklänges mellan ett programs fönster, med hjälp av ett popupfönster"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Flytta mellan fönster genom ett popupfönster"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Flytta baklänges mellan fönster, med hjälp av ett popupfönster"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Flytta mellan paneler och skrivbordet med ett popupfönster"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Flytta baklänges mellan paneler och skrivbordet, med hjälp av ett popupfönster"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Flytta mellan ett programs fönster omedelbart"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Flytta baklänges mellan ett programs fönster omedelbart"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Flytta mellan fönster omedelbart"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Flytta baklänges mellan fönster omedelbart"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Flytta mellan paneler och skrivbordet omedelbart"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Flytta baklänges mellan paneler och skrivbordet omedelbart"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Dölj alla normala fönster och fokusera skrivbordet"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Visa panelens huvudmeny"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Visa panelens \"Kör program\"-dialogruta"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Ta en skärmdump"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Ta en skärmdump av ett fönster"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Kör en terminal"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Aktivera fönstermenyn"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Växla helskärmsläge"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Växla maximeringstillstånd"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Växla huruvida ett fönster alltid kommer att vara synlig över andra fönster"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Maximera fönster"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Återställ fönster"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Växla upprullat tillstånd"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Minimera fönster"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Stäng fönster"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Flytta fönster"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Ändra storlek på fönster"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Växla huruvida fönstret finns på alla arbetsytor eller bara en"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Flytta fönster till arbetsyta 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Flytta fönster till arbetsyta 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Flytta fönster till arbetsyta 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Flytta fönster till arbetsyta 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Flytta fönster till arbetsyta 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Flytta fönster till arbetsyta 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Flytta fönster till arbetsyta 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Flytta fönster till arbetsyta 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Flytta fönster till arbetsyta 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Flytta fönster till arbetsyta 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Flytta fönster till arbetsyta 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Flytta fönster till arbetsyta 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Flytta fönster en arbetsyta åt vänster"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Flytta fönster en arbetsyta åt höger"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Flytta fönster en arbetsyta uppåt"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Flytta fönster en arbetsyta nedåt"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Höj fönstret om det skyms av ett annat fönster, sänk det annars"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Höj fönstret över andra fönster"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Sänk fönster under andra fönster"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Maximera fönster vertikalt"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Maximera fönster horisontellt"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Flytta fönstret till nordvästra (övre vänstra) hörnet"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Flytta fönstret till nordöstra (övre högra) hörnet"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Flytta fönstret till sydvästra (nedre vänstra) hörnet"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Flytta fönstret till sydöstra (nedre högra) hörnet"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Flytta fönstret till norra (övre) sidan av skärmen"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Flytta fönstret till södra (nedre) sidan av skärmen"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Flytta fönstret till östra (högra) sidan av skärmen"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Flytta fönstret till västra (vänster) sidan av skärmen"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Flytta fönstret till mitten av skärmen"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Inte implementerat) Navigering fungerar i termer av program, inte fönster"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid "A font description string describing a font for window titlebars. The size from the description will only be used if the titlebar_font_size option is set to 0. Also, this option is disabled if the titlebar_uses_desktop_font option is set to true."
+msgstr "En typsnittsbeskrivningssträng som beskriver ett typsnitt för fönstertitelrader. Storleken från beskrivningen kommer dock endast att användas om alternativet titlebar_font_size är ställt till 0. Dessutom är detta alternativ inaktiverat om alternativet titlebar_uses_desktop_font är sant."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Åtgärd vid dubbelklick på titelraden"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Åtgärd vid mittenklick på titellisten"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Åtgärd vid högerklick på titellisten"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Knapparrangemang på titalraden"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid "Arrangement of buttons on the titlebar. The value should be a string, such as \"menu:minimize,maximize,spacer,close\"; the colon separates the left corner of the window from the right corner, and the button names are comma-separated. Duplicate buttons are not allowed. Unknown button names are silently ignored so that buttons can be added in future marco versions without breaking older versions. A special spacer tag can be used to insert some space between two adjacent buttons."
+msgstr "Arrangemang av knapparna på titelraden. Värdet måste vara en sträng som till exempel \"menu:minimize,maximize,close\"; kolonet skiljer det vänstra hörnet från det högra hörnet, och knappnamnen är kommaseparerade. Två knappar av samma typ är inte tillåtet. Okända knappnamn ignoreras helt och hållet så att knappar kan läggas till i framtida versioner utan att gamla versioner går sönder. En speciell utfyllnadstagg kan användas för att infoga utrymme mellan två närliggande knappar."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Höjer automatiskt det fokuserade fönstret"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid "Clicking a window while holding down this modifier key will move the window (left click), resize the window (middle click), or show the window menu (right click). The middle and right click operations may be swapped using the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" for example."
+msgstr "Att klicka ett fönster samtidigt som denna modifierartangent hålls ned kommer att flytta fönstret (vänsterklick), ändra storlek på fönstret (mittenklick) eller visa fönstermenyn (högerklick). Vänster- och högerklicksåtgärder kan växlas med nyckeln \"resize_with_right_button\". Modifierare uttrycks som till exempel \"&lt;Alt&gt;\" eller \"&lt;Super&gt;\"."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Kommandon att köra som svar på tangentbindningar"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Compositinghanterare"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Kontrollera hur nya fönster får fokus"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Aktuellt tema"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Fördröjning i millisekunder "
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Fastställer huruvida Marco är en compositinghanterare."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid "Determines whether applications or the system can generate audible 'beeps'; may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr "Avgör huruvida program eller systemet kan generera ljudliga \"pip\". Kan användas tillsammans med \"visual bell\" för att tillåta tysta \"pip\"."
+
+# SUN CHANGED MESSAGE
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Inaktivera felaktiga egenskaper som krävs av gamla eller felaktiga program"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Använd visuell signal"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid "If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then the focused window will be automatically raised after a delay specified by the auto_raise_delay key. This is not related to clicking on a window to raise it, nor to entering a window during drag-and-drop."
+msgstr "Om sant, och om fokusläget antingen är \"sloppy\" eller \"mouse\", kommer det fokuserade fönstret att automatiskt höjas efter en fördröjning (fördröjningen anges av nyckeln auto_raise_delay). Detta är inte relaterat till att klicka på ett fönster för att höja det, inte heller att gå in i ett fönster med drag-och-släpp."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid "If true, ignore the titlebar_font option, and use the standard application font for window titles."
+msgstr "Om sant ignoreras alternativet titlebar_font och standardtypsnittet för program används för fönstertitlar."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid "If true, marco will give the user less feedback by using wireframes, avoiding animations, or other means. This is a significant reduction in usability for many users, but may allow legacy applications to continue working, and may also be a useful tradeoff for terminal servers. However, the wireframe feature is disabled when accessibility is on."
+msgstr "Om detta är sant kommer marco att ge användaren mindre återkoppling genom att använda trådramar, undvika animationer, och andra sätt. Detta är en betydande minskning av användbarheten för många användare, men kan tillåta äldre program och terminalservrar att fungera i de fall de annars skulle varit olämpliga. Funktionaliteten med trådramar är dock inaktiverad då tillgänglighet är på."
+
+# SUN CHANGED MESSAGE
+#: ../src/marco.schemas.in.in.h:22
+msgid "If true, then Marco works in terms of applications rather than windows. The concept is a bit abstract, but in general an application-based setup is more like the Mac and less like Windows. When you focus a window in application-based mode, all the windows in the application will be raised. Also, in application-based mode, focus clicks are not passed through to windows in other applications. Application-based mode is, however, largely unimplemented at the moment."
+msgstr "Om sant fungerar Marco i termer av program, inte av fönster. Konceptet är ganska abstrakt, men i regel fungerar en programbaserad konfiguration mer likt Mac och mindre likt Windows. När du fokuserar ett fönster i programbaserat läge kommer alla fönster i programmet att höjas. Dessutom skickas fokusklick inte vidare till fönster i andra program då programbaserat läge används. Dessutom är programbaserat läge till stor del oimplementerat just nu."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Om sant kommer användbarhet att åsidosättas till förmån för mindre resursanvändning"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Modifierare att använda för modifierade fönsterklickåtgärder"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Namn på arbetsyta"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Antal arbetsytor"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid "Number of workspaces. Must be more than zero, and has a fixed maximum to prevent making the desktop unusable by accidentally asking for too many workspaces."
+msgstr "Antal arbetsytor. Måste vara större än noll, och har ett fast maxvärde för att förhindra att skrivbordet förstörs genom att för många arbetsytor begärs av misstag."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Kör ett angivet kommando"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid "Set this to true to resize with the right button and show a menu with the middle button while holding down the key given in \"mouse_button_modifier\"; set it to false to make it work the opposite way around."
+msgstr "Ställ in detta till sant för att ändra storlek med högerknappen och visa en meny med mittenknappen när tangenten, som angivits i \"mouse_button_modifier\", hålls ner; ställ in till falskt för att göra det motsatta."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid "Setting this option to false can lead to buggy behavior, so users are strongly discouraged from changing it from the default of true. Many actions (e.g. clicking in the client area, moving or resizing the window) normally raise the window as a side-effect. Setting this option to false, which is strongly discouraged, will decouple raising from other user actions, and ignore raise requests generated by applications. See http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can still be raised by an alt-left-click anywhere on the window, a normal click on the window decorations, or by special messages from pagers, such as activation requests from tasklist applets. This option is currently disabled in click-to-focus mode. Note that the list of ways to raise windows when raise_on_click is false does not include programmatic requests from applications to raise windows; such requests will be ignored regardless of the reason for the request. If you are an application developer and have a user complaining that your application does not work with this setting disabled, tell them it is _their_ fault for breaking their window manager and that they need to change this option back to true or live with the \"bug\" they requested."
+msgstr "Ställa in detta alternativ till falskt kan leda till ett felaktigt beteende, så därför rekommenderas användarna att inte ändra det från standardvärdet, vilket är sant. Många åtgärder (t.ex. klicka i klientområdet, flytta eller ändra storlek på fönstret) höjer normalt sett fönstret som en sidoeffekt. Ställa in detta alternativ till falskt, vilket inte rekommenderas, kan koppla loss höjningen från andra användaråtgärder och ignorera höjningsbegäran som genereras av program. Se http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6. Även när detta alternativ är falskt kan fönster fortfarande höjas genom Alt-vänster-klick någonstans i fönstret, ett vanligt klick på fönstrets dekoration eller genom speciella meddelanden från visare, såsom en aktiveringsbegäran från panelprogram. Detta alternativ är för närvarande inaktiverat i klicka-för-fokus-läget. Observera att listan över sätt att höja fönster när raise_on_click är falskt inte inkluderar programmatiska begäran från program för att höja fönster; sådana begäran kommer att ignoreras oavsett anledningen till begäran. Om du är en programutvecklare och har en användare som klagar på att ditt program inte fungerar med denna inställning inaktiverad så kan du informera dem om att det är _deras_ fel att deras fönsterhanterare är trasig och att de behöver ändra detta alternativ till sant eller leva med \"felet\" som de begärde."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid "Some applications disregard specifications in ways that result in window manager misfeatures. This option puts Marco in a rigorously correct mode, which gives a more consistent user interface, provided one does not need to run any misbehaving applications."
+msgstr "Vissa program bortser från specifikationerna vilket resulterar i att fönsterhanteraren inte fungerar som den ska. Detta alternativ försätter Marco i ett mycket korrekt läge, vilket ger ett mer konsistent användargränssnitt, om man inte behöver köra några program som inte sköter sig."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Systemsignalen är ljudlig"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid "Tells Marco how to implement the visual indication that the system bell or another application 'bell' indicator has been rung. Currently there are two valid values, \"fullscreen\", which causes a fullscreen white-black flash, and \"frame_flash\" which causes the titlebar of the application which sent the bell signal to flash. If the application which sent the bell is unknown (as is usually the case for the default \"system beep\"), the currently focused window's titlebar is flashed."
+msgstr "Talar om för Marco hur den synliga indikeringen att systemsignalen eller en annan programsignal har ljudit ska implementeras. För tillfället finns det två giltiga värden, \"fullscreen\", som genererar en svartvit blinkning i helskärmsformat, och \"frame_flash\" som gör att titelraden på programmet som skickade signalen blinkar. Om programmet som skickade signalen är okänd (vilket normalt är fallet för \"standardsystempipet\"), blinkas titelraden på det för tillfället fokuserade fönstret."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid "The /apps/marco/global_keybindings/run_command_N keys define keybindings that correspond to these commands. Pressing the keybinding for run_command_N will execute command_N."
+msgstr "Nycklarna /apps/marco/global_keybindings/run_command_N anger tangentbindningar som motsvarar dessa kommandon. Att trycka tangentbindningen för run_command_N kommer att köra command_N."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid "The /apps/marco/global_keybindings/run_command_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr "Nyckeln /apps/marco/global_keybindings/run_command_screenshot anger en tangentbindning som gör att kommandot som anges av denna inställning anropas."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid "The /apps/marco/global_keybindings/run_command_window_screenshot key defines a keybinding which causes the command specified by this setting to be invoked."
+msgstr "Nyckeln /apps/marco/global_keybindings/run_command_window_screenshot anger en tangentbindning som gör att kommandot som anges av denna inställning anropas."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid "The keybinding that runs the correspondingly-numbered command in /apps/marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", then there will be no keybinding for this action."
+msgstr "Tangentbindningen som kör det på motsvarande sätt numrerade kommandot i /apps/marco/keybinding_commands. Formatet ser ut som \"&lt;Control&gt;a\" eller \"&lt;Shift&gt;&lt;Alt&gt;F1\". Tolken är ganska tillåtande och tillåter gemener och versaler och även förkortningar som \"&lt;Ctl&gt;\" och \"&lt;Ctrl&gt;\". Om du ställer in alternativet till specialsträngen \"disabled\" kommer det inte att finnas en tangentbindning för denna åtgärd."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Namnet på en arbetsyta."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Kommando för att fånga skärmbild"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid "The theme determines the appearance of window borders, titlebar, and so forth."
+msgstr "Temat avgör utseendet på fönsterramar, titelrader, och så vidare."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid "The time delay before raising a window if auto_raise is set to true. The delay is given in thousandths of a second."
+msgstr "Tidsfördröjningen innan ett fönster höjs om auto_raise är sant. Fördröjningen ges i tusendelar av en sekund."
+
+# SUN CHANGED MESSAGE
+#: ../src/marco.schemas.in.in.h:42
+msgid "The window focus mode indicates how windows are activated. It has three possible values; \"click\" means windows must be clicked in order to focus them, \"sloppy\" means windows are focused when the mouse enters the window, and \"mouse\" means windows are focused when the mouse enters the window and unfocused when the mouse leaves the window."
+msgstr "Fönsterfokusläget anger hur fönster ska aktiveras. Det har tre möjliga värden; \"click\" betyder att fönster måste klickas på för att de ska få fokus, \"sloppy\" betyder att fönster fokuseras då muspekaren hamnar i fönstret, och \"mouse\" betyder att fönster fokuseras då muspekaren hamnar i fönstret och förlorar fokus då muspekaren lämnar fönstret."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Kommando för att fånga skärmbild av ett fönster"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid "This option determines the effects of double-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr "Detta alternativ bestämmer effekterna av dubbelklick på titelraden. Aktuella giltiga alternativ är \"toggle_shade\" som kommer att rulla upp/rulla ned fönstret, \"toggle_maximize\" som kommer att maximera/avmaximera fönstret, \"toggle_maximize_horizontally\" och \"toggle_maximize_vertically\" som kommer att maximera/avmaximera fönstret endast i den riktningen, \"minimize\" kommer kommer att minimera fönstret, \"shade\" kommer att rulla upp fönstret, \"menu\" kommer att visa fönstermenyn, \"lower\" som kommer att lägga fönstret bakom alla andra, samt \"none\" som inte gör något."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid "This option determines the effects of middle-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr "Detta alternativ bestämmer effekterna av mittenklick på titellisten. Aktuella giltiga alternativ är \"toggle_shade\" som kommer att rulla upp/rulla ned fönstret, \"toggle_maximize\" som kommer att maximera/avmaximera fönstret, \"toggle_maximize_horizontally\" och \"toggle_maximize_vertically\" som kommer att maximera/avmaximera fönstret endast i den riktningen, \"minimize\" kommer kommer att minimera fönstret, \"shade\" kommer att rulla upp fönstret, \"menu\" kommer att visa fönstermenyn, \"lower\" som kommer att lägga fönstret bakom alla andra, samt \"none\" som inte gör något."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid "This option determines the effects of right-clicking on the title bar. Current valid options are 'toggle_shade', which will shade/unshade the window, 'toggle_maximize' which will maximize/unmaximize the window, 'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will maximize/unmaximize the window in that direction only, 'minimize' which will minimize the window, 'shade' which will roll the window up, 'menu' which will display the window menu, 'lower' which will put the window behind all the others, and 'none' which will not do anything."
+msgstr "Detta alternativ bestämmer effekterna av högerklick på titellisten. Aktuella giltiga alternativ är \"toggle_shade\" som kommer att rulla upp/rulla ned fönstret, \"toggle_maximize\" som kommer att maximera/avmaximera fönstret, \"toggle_maximize_horizontally\" och \"toggle_maximize_vertically\" som kommer att maximera/avmaximera fönstret endast i den riktningen, \"minimize\" kommer kommer att minimera fönstret, \"shade\" kommer att rulla upp fönstret, \"menu\" kommer att visa fönstermenyn, \"lower\" som kommer att lägga fönstret bakom alla andra, samt \"none\" som inte gör något."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid "This option provides additional control over how newly created windows get focus. It has two possible values; \"smart\" applies the user's normal focus mode, and \"strict\" results in windows started from a terminal not being given focus."
+msgstr "Detta alternativ tillhandahåller ytterligare kontroll över hur nyligen skapade fönster får fokus. Det har två möjliga värden; \"smart\" som verkställer användarens normala fokusläge, och \"strict\" som resulterar i att fönster som startar från en terminal inte ges fokus."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid "Turns on a visual indication when an application or the system issues a 'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy environments."
+msgstr "Slår på en synlig indikering då ett program eller systemet sänder ut en signal eller \"pip\". Användbart för hörselskadade eller för användning i bullriga miljöer."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Använd standardsystemtypsnitt i fönstertitlar"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Typ av visuell signal"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Huruvida höjning ska vara en sidoeffekt av andra användarinteraktioner"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Huruvida högerknappen ändrar storlek"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Fönsterfokusläge"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Typsnitt för fönstertitel"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Användning: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Stäng fönster"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Fönstermeny"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Minimera fönster"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Maximera fönster"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Återställ fönster"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Rulla upp fönstret"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Rulla tillbaka fönstret"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Behåll fönstret överst"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Ta bort överliggande fönster"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Alltid på synlig arbetsyta"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Placera fönstret på endast en arbetsyta"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Minimera"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Ma_ximera"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Avma_ximera"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Rulla upp"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Rulla ned"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Flytta"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Ändra storlek"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Flytta titelrad på _skärm"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87
+#: ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Alltid _överst"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Alltid på _synlig arbetsyta"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Endast på denna arbetsyta"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Flytta till arbetsyta till _vänster"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Flytta till arbetsyta till _höger"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Flytta till arbetsyta _uppåt"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Flytta till arbetsyta _nedanför"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "S_täng"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Arbetsyta %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Arbetsyta 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Arbetsyta %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Flytta till en annan _arbetsyta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Skift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d × %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "överkant"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "nederkant"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "vänster"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "höger"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "ramgeometrin anger inte \"%s\"-dimension"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "ramgeometrin anger inte dimensionen \"%s\" för ramen \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Knappförhållandet %g är inte rimligt"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "ramgeometrin anger inte storlek på knappar"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Toningarna bör ha minst två färger"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid "GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "GTK-färgspecifikationen måste ha tillståndet inom klamrar, t.ex. gtk:fg[NORMAL], där NORMAL är tillståndet; kunde inte tolka \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid "GTK color specification must have a close bracket after the state, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "GTK-färgspecifikationen måste ha en stängningsklammer efter tillståndet, t.ex. gtk:fg[NORMAL], där NORMAL är tillståndet; kunde inte tolka \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Förstod inte tillståndet \"%s\" i färgspecifikation"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Förstod inte färgkomponenten \"%s\" i färgspecifikation"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid "Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the format"
+msgstr "Blandningsformatet är \"blend/bg_color/fg_color/alpha\", \"%s\" passar inte med formatet"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Kunde inte tolka alfavärdet \"%s\" i blandad färg"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Alfavärdet \"%s\" i blandad färg är inte mellan 0,0 och 1,0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "Skuggformatet är \"shade/base_color/factor\", \"%s\" passar inte med formatet"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Kunde inte tolka skuggfaktorn \"%s\" i skuggad färg"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Skuggfaktorn \"%s\" i skuggad färg är negativ"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Kunde inte tolka färgen \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Koordinatuttrycket innehåller tecknet \"%s\" vilket inte är tillåtet"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid "Coordinate expression contains floating point number '%s' which could not be parsed"
+msgstr "Koordinatuttrycket innehåller flyttalet \"%s\" som inte kunde tolkas"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Koordinatuttrycket innehåller heltalet \"%s\" som inte kunde tolkas"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid "Coordinate expression contained unknown operator at the start of this text: \"%s\""
+msgstr "Koordinatuttrycket hade en okänd operand vid början av denna text: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Koordinatuttrycket var tomt eller förstods inte"
+
+#: ../src/ui/theme.c:1913
+#: ../src/ui/theme.c:1923
+#: ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Koordinatuttrycket resulterar i division med noll"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "Koordinatuttrycket försöker använda mod-operator på ett flyttal"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Koordinatuttrycket har en operator \"%s\" där en operand förväntades"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Koordinatuttrycket hade en operand där en operator förväntades"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Koordinatuttrycket slutade med en operator istället för en operand"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid "Coordinate expression has operator \"%c\" following operator \"%c\" with no operand in between"
+msgstr "Koordinatuttrycket har en operator \"%c\" som följer på operatorn \"%c\" utan någon operand imellan"
+
+#: ../src/ui/theme.c:2195
+#: ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Koordinatuttrycket hade en okänd variabel eller konstant \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Koordinatuttryckstolkaren överflödade sin buffert."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Koordinatuttrycket hade en stängningsparentes utan någon öppningsparentes"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Koordinatuttrycket hade en öppningsparentes utan någon stängningsparentes"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Koordinatuttrycket verkar inte ha några operatorer eller operander"
+
+#: ../src/ui/theme.c:2596
+#: ../src/ui/theme.c:2616
+#: ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Temat innehöll ett uttryck som resulterade i ett fel: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be specified for this frame style"
+msgstr "<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> måste anges för denna ramtyp"
+
+#: ../src/ui/theme.c:4711
+#: ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> saknas"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Misslyckades med att läsa in temat \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910
+#: ../src/ui/theme.c:4917
+#: ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931
+#: ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Inget <%s> angivet för temat \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid "No frame style set for window type \"%s\" in theme \"%s\", add a <window type=\"%s\" style_set=\"whatever\"/> element"
+msgstr "Ingen ramstil angiven för fönstertypen \"%s\" i temat \"%s\", lägg till ett <window type=\"%s\" style_set=\"whatever\"/>-element"
+
+#: ../src/ui/theme.c:5389
+#: ../src/ui/theme.c:5451
+#: ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "Användardefinierade konstanter måste börja med en stor bokstav; \"%s\" gör det inte"
+
+#: ../src/ui/theme.c:5397
+#: ../src/ui/theme.c:5459
+#: ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Konstanten \"%s\" har redan definierats"
+
+# SUN CHANGED MESSAGE
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Inget \"%s\"-attribut i element <%s>"
+
+#: ../src/ui/theme-parser.c:231
+#: ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Rad %d tecken %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Attributet \"%s\" upprepat två gånger på samma <%s>-element"
+
+# SUN CHANGED MESSAGE
+#: ../src/ui/theme-parser.c:437
+#: ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Attributet \"%s\" är ogiltigt i <%s>-element i detta sammanhang"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Kunde inte tolka \"%s\" som ett heltal"
+
+#: ../src/ui/theme-parser.c:531
+#: ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Förstod inte de avslutande tecknen \"%s\" i strängen \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Heltalet %ld måste vara positivt"
+
+# SUN CHANGED MESSAGE
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Heltalet %ld är för stort, aktuellt maxvärde är %d"
+
+#: ../src/ui/theme-parser.c:577
+#: ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Kunde inte tolka \"%s\" som ett flyttal"
+
+#: ../src/ui/theme-parser.c:608
+#: ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Booleska värden måste vara \"true\" eller \"false\", inte \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Vinkeln måste vara mellan 0,0 och 360,0, var %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Alfavärdet måste vara mellan 0,0 (osynligt) och 1,0 (helt synligt), var %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid "Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+msgstr "Ogiltig titelskala \"%s\" (måste vara ett av xx-small,x-small,small,medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936
+#: ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033
+#: ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s>-namnet \"%s\" använt en andra gång"
+
+#: ../src/ui/theme-parser.c:948
+#: ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s>-föräldern \"%s\" har inte definierats"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s>-geometrin \"%s\" har inte definierats"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> måste ange antingen en geometri eller en förälder som har en geometri"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Du måste ange en bakgrund för att ett alfavärde ska vara meningsfullt"
+
+# SUN CHANGED MESSAGE
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Okänd typ \"%s\" i <%s>-element"
+
+# SUN CHANGED MESSAGE
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Okänt style_set \"%s\" i <%s>-element"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Fönstertypen \"%s\" har redan tilldelats en stilsamling"
+
+#: ../src/ui/theme-parser.c:1229
+#: ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519
+#: ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786
+#: ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126
+#: ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202
+#: ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Elementet <%s> är inte tillåtet under <%s>"
+
+#: ../src/ui/theme-parser.c:1343
+#: ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid "Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" for buttons"
+msgstr "Kan inte ange både \"button_width\"/\"button_height\" och \"aspect_ratio\" för knappar"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Avståndet \"%s\" är okänt"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Förhållandet \"%s\" är okänt"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Ramen \"%s\" är okänd"
+
+# SUN CHANGED MESSAGE
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Inget \"start_angle\"- eller \"from\"-attribut i element <%s>"
+
+# SUN CHANGED MESSAGE
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Inget \"extent_angle\"- eller \"to\"-attribut i element <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Förstod inte värdet \"%s\" för toningstyp"
+
+#: ../src/ui/theme-parser.c:2109
+#: ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Förstod inte fyllnadstypen \"%s\" för <%s>-element"
+
+#: ../src/ui/theme-parser.c:2276
+#: ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Förstod inte tillståndet \"%s\" för <%s>-element"
+
+#: ../src/ui/theme-parser.c:2286
+#: ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Förstod inte skuggan \"%s\" för <%s>-element"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Förstod inte pilen \"%s\" för <%s>-element"
+
+#: ../src/ui/theme-parser.c:2596
+#: ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Inget <draw_ops> anropat \"%s\" har definierats"
+
+#: ../src/ui/theme-parser.c:2608
+#: ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Att inkludera draw_ops \"%s\" här skulle skapa en cirkulärreferens"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Okänd position \"%s\" för ramdel"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Ramstilen har redan en del vid position %s"
+
+#: ../src/ui/theme-parser.c:2844
+#: ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Inget <draw_ops> med namnet \"%s\" har definierats"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Okänd funktion \"%s\" för knapp"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Knappfunktionen \"%s\" finns inte i den här versionen (%d, behöver %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Okänt tillstånd \"%s\" för knapp"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Ramstilen har redan en knapp för funktionen %s tillstånd %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" är inte ett tillåtet värde för fokusattribut"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" är inte ett giltigt värde på tillståndsattribut"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "En stil med namnet \"%s\" har inte definierats"
+
+#: ../src/ui/theme-parser.c:3013
+#: ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" är inte ett giltigt värde för storleksändringsattribut"
+
+# SUN CHANGED MESSAGE
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized/shaded states"
+msgstr "Bör inte ha \"resize\"-attribut i <%s>-element för maximerad/upprullat tillstånd"
+
+# SUN CHANGED MESSAGE
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "Bör inte ha \"resize\"-attribut i <%s>-element för maximerade tillstånd"
+
+#: ../src/ui/theme-parser.c:3075
+#: ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Stilen har redan angivits för tillståndet %s storleksändring %s fokus %s"
+
+#: ../src/ui/theme-parser.c:3086
+#: ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Stilen har redan angivits för tillståndet %s fokus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid "Can't have a two draw_ops for a <piece> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Kan inte ha två draw_ops för ett <piece>-element (temat angav ett draw_ops-attribut och även ett <draw_ops>-element, eller angav två element)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid "Can't have a two draw_ops for a <button> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Kan inte ha två draw_ops för ett <button>-element (temat angav ett draw_ops-attribut och även ett <draw_ops>-element, eller angav två element)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid "Can't have a two draw_ops for a <menu_icon> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "Kan inte ha två draw_ops för ett <menu_icon>-element (temat angav ett draw_ops-attribut och även ett <draw_ops>-element, eller angav två element)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Yttersta elementet i temat måste vara <marco_theme>, inte <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Elementet <%s> är inte tillåtet inuti ett namn-/författare-/datum-/beskrivningselement"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Elementet <%s> är inte tillåtet inuti ett <constant>-element"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Elementet <%s> är inte tillåtet inuti ett distance/border/aspect_ratio-element"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Elementet <%s> är inte tillåtet inuti ett ritningsåtgärdselement"
+
+#: ../src/ui/theme-parser.c:3340
+#: ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375
+#: ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Elementet <%s> är inte tillåtet inuti ett <%s>-element"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Inget draw_ops tillhandahålls för ramdel"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Inget draw_ops tillhandahålls för knappen"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Ingen text är tillåten inuti elementet <%s>"
+
+#: ../src/ui/theme-parser.c:3724
+#: ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748
+#: ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> är angiven två gånger för detta tema"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Misslyckades med att hitta en giltig fil för temat %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Temafilen %s innehöll inte ett <marco_theme>-rotelement"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Fönster"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Fönster/avskiljare"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Fönster/_Dialogruta"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Fönster/_Modal dialogruta"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Fönster/_Verktyg"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Fönster/_Startbild"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Fönster/_Övre docka"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Fönster/_Nedre docka"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Fönster/_Vänster docka"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Fönster/_Höger docka"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Fönster/_Alla dockor"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Fönster/S_krivbord"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Detta är ett exempelmeddelande i en exempelkatalog"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Falskt menyobjekt %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Fönster med endast ram"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Rad"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Normalt programfönster"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Dialogruta"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Modalt dialogfönster"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Verktygspalett"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Avtagen meny"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Ram"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Test %d av knapplayout"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g millisekunder för att rita en fönsterram"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Användning: marco-theme-viewer [TEMANAMN]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Fel vid inläsning av tema: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Läste in temat \"%s\" på %g sekunder\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Normalt titeltypsnitt"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Litet titeltypsnitt"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Stort titeltypsnitt"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Knapplayouter"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Prestandatest"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Fönstertitel hamnar här"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid "Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g seconds wall clock time including X server resources (%g milliseconds per frame)\n"
+msgstr "Ritade %d ramar på %g sekunder på klientsidan (%g millisekunder per ram) och %g sekunder väggklockstid inklusive X-serverresurser (%g millisekunder per ram)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "test av positionsuttryck returnerade SANT men satte fel"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "test av positionsuttryck returnerade FALSKT men satte inte fel"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Fel förväntades men gavs inte"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Fel %d förväntades men %d givet"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Fel förväntades inte men ett returnerades: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x-värdet var %d, %d förväntades"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y-värdet var %d, %d förväntades"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d koordinatuttryck tolkades på %g sekunder (%g sekunder i medelvärde)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Öppna ytterligare ett över dessa fönster"
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Detta är en exempelknapp med en \"öppna\"-ikon"
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Detta är en exempelknapp med en \"avsluta\"-ikon"
+#~ msgid ""
+#~ "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#~ "\n"
+#~ "<i>You may choose to wait a short while for it to continue or force the "
+#~ "application to quit entirely.</i>"
+#~ msgstr ""
+#~ "<big><b><tt>%s</tt> svarar inte.</b></big>\n"
+#~ "\n"
+#~ "<i>Du kan välja att vänta en kort stund på det för att fortsätta eller "
+#~ "tvinga programmet att helt avslutas.</i>"
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Fel vid start av marco-dialog för att varna om program som inte stöder "
+#~ "sessionshantering: %s\n"
+#~ msgid "Title"
+#~ msgstr "Titel"
+#~ msgid "Class"
+#~ msgstr "Klass"
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "Ett fel uppstod vid körning av \"%s\":\n"
+#~ "%s."
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "Misslyckades med att tolka meddelandet \"%s\" från dialogprocess\n"
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "Fel vid läsning från dialogvisningsprocess: %s\n"
+
diff --git a/po/ta.po b/po/ta.po
new file mode 100644
index 00000000..18b84007
--- /dev/null
+++ b/po/ta.po
@@ -0,0 +1,2331 @@
+# translation of marco.master.ta.po to Tamil
+# Tamil translation of Tamil Marco 2.4.
+# Copyright (C) 2003, 2004, 2006, 2007, 2009 Free Software Foundation, Inc.
+#
+#
+# Dinesh Nadarajah <[email protected]>, 2003.
+# Jayaradha N <[email protected]>, 2004.
+# Felix <[email protected]>, 2006.
+# Dr.T.Vasudevan <[email protected]>, 2007, 2009.
+# Dr.T.vasudevan <[email protected]>, 2009.
+# I. Felix <[email protected]>, 2009.
+# Dr,T,Vasudevan <[email protected]>, 2010.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.master.ta\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-02-18 09:57+0530\n"
+"PO-Revision-Date: 2010-02-18 10:04+0530\n"
+"Last-Translator: Dr,T,Vasudevan <[email protected]>\n"
+"Language-Team: Tamil <[email protected]>>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"0500\n"
+"X-Generator: Lokalize 0.3\n"
+"Plural-Forms: nplurals=2; plural=(n!=1);\\n"
+"\n"
+"\n"
+"\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "மேல்மேசை"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "சாளர மேலாண்மை"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "மணி நிகழ்ச்சி"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "தெரியாத சாளர தகவல் வேண்டுகோள்: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> பதிலளிக்கவில்லை"
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"நீங்கள் சிறிது நேரம் பொறுத்து அது தொடர அனுமதிக்கலாம் அல்லது செயல்பாட்டை வன் "
+"வெளியேற்றம் செய்யலாம்."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_காத்திரு"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "கட்டாய வெளியேற்றம் (_F)"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "புரவலன் பெயரை பெறுவதில் தோல்வி: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "பலவின் ஆக்கத்திற்கு கிடக்காத நீட்சி %s அவசியம்"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X சாளர காட்சியை திறப்பதில் தோல்வி '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"காட்ட வேண்டிய இணைப்புகளின் பட்டியல்'%s';\n"
+"X சேவகன் பணிநிறுத்தம் செய்யப்பட்டிருக்கலாம் அல்லது நீங்கள் செயலை\n"
+"சிதைத்திருக்கலாம்/கொன்றிருக்கலாம்\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "கவலைக்கிடமான IO பிழை %d (%s) திரையில் '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "விசை %s ஐ மாற்றி %x ஓடு இணைத்து வேறு நிரல் பயன்படுத்திக்கொண்டிருக்கிறது\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"இயக்குவதில் பிழை <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "கட்டளை %d எதுவும் குறிப்பிடப்படவில்லை.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "முனைய கட்டளை எதுவும் குறிப்பிடப்படவில்லை.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"மெடாசிடி %s\n"
+"காப்புரிமை (C) 2001-%s Havoc Pennington, Red Hat, Inc., கூட மற்றவர்கள்\n"
+"இது இலவச மென்பொருள். நகலெடுக்கும் விதிகளுக்கு மூலத்தை பார்க்கவும்.\n"
+"இதற்கு எந்த வித உத்திரவாதமும் இல்லை. ஆனால் விற்க தகுதி,குறிப்பிட்ட செயலுக்கான தகுதி "
+"உள்பட எந்த உத்திரவாதமும் அளிக்கப்படவில்லை. \n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "அமர்வு மேலாளருடன் இருக்கும் இணைப்பை முடக்கு"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "இயங்கும் சாளர மேலாளரை மெட்டாசிட்டியால் மாற்றுகிறது"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "அமர்வு மேலாண் எண்ணை குறிப்பிடு"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "பயன்படுத்த வேண்டிய X காட்சி"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "அமர்வை சேவ்பைல் இலிருந்து துவக்கு "
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "அச்சு பதிப்பு"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "X அழைப்புகளை நேரத்தில் ஒருங்கிணை"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "பலவின் ஆக்க மேலாளர் ஐ செயலாக்கு "
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "பலவின் ஆக்கம் செயல் நீக்கப்பட்டது"
+
+#: ../src/core/main.c:322
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "அதிக அளவாக்கி அலங்காரம் இல்லாத முழுத்திரை சாளரங்களை உருவாக்காதே"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "கருப்பொருள் அடைவை வருடுவதில் தோல்வி: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"கருப்பொருளை காணவில்லை! %s உள்ளதா எனவும் அதில் பயனுள்ள கருப்பொருள் உள்ளதா எனவும் "
+"பார்க்கவும்.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "மீண்டும் துவக்குவதில் பிழை: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf விசை '%s' செல்லாத மதிப்பாக அமைக்கப்பட்டுள்ளது\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d MateConf விசை %s இல் சேமிக்கப்பட்டுள்ளது அது வரம்பு கடந்துள்ளது %d %d க்கு\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf விசை \"%s\" செல்லாத வகை\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"உடைந்த பயன்பாடுகளின் செயல்பாடு தடைசெய்யப்பட்டது, சில பயன்பாடுகள் சரியாக வேலை "
+"செய்யாது.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "எழுத்துரு விளக்கம் \"%s\" ஐ MateConf விசையிலிருந்து பகுக்க முடியவில்லை %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "அமைப்பு பாங்கில் உள்ள \"%s\" சுட்டி பட்டன் மாற்றியில் செல்லாத மதிப்பு\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "பணியிடத்தை அமைப்பதில் பிழை %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "வேலையிடம் %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "\"%s\" அமைப்பு தரவுத்தளத்தில் உள்ள மதிப்பு செல்லாத கீபைன்டிங்\"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "பணியிடத்தை %d லிருந்து \"%s\" க்கு மாற்றுவதில் பிழை: %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "பலவின் ஆக்க நிலையை அமைப்பதில் பிழை: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "திரை %d காட்சி '%s' இல் செல்லாது\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"திரை %d காட்சி \"%s\" க்கு சாளர மேலாளர் உள்ளது; --replace தேர்வை பயன்படுத்தி "
+"தற்போதைய சாளரத்தை மாற்றவும்.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "திரையில் சாளர மேலாளர் தேர்வை பெறமுடியவில்லை %d காட்சி \"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "திரை %d யின் காட்சி \"%s\" க்கு சாளர மேலாளர் ஏற்கெனவே உள்ளது\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "திரை %d ஐ விடுவிக்க முடியவில்லை \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"இதன் அமைப்பு \"<Control>a\" அல்லது <Shift><Alt>F1\".\n"
+"\n"
+"இதன் பகுப்பி பெரிய மற்றும் சிறிய எழுத்துக்களை அனுமதிப்பதோடு, \"<Ctl>\" மற்றும் "
+"\"<Ctrl>\" போன்ற சுருக்கங்களையும் அனுமதிக்கும். \"செயல்படுத்தாதே\" தேர்வை அமைப்பதன் "
+"மூலம் இந்த செயலுக்கு கீபைன்டிங் ஐ நீக்க முடியும்."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"இதன் அமைப்பு \"<Control>a\" அல்லது <Shift><Alt>F1\".\n"
+"\n"
+"இதன் பகுப்பி பெரிய மற்றும் சிறிய எழுத்துக்களை அனுமதிப்பதோடு, \"<Ctl>\" மற்றும் "
+"\"<Ctrl>\" போன்ற சுருக்கங்களையும் அனுமதிக்கும். \"செயல்படுத்தாதே\" தேர்வை அமைப்பதன் "
+"மூலம் இந்த செயலுக்கு கீபைன்டிங் ஐ நீக்க முடியும்.\n"
+"\n"
+"இந்த \"shift\" விசையை அழுத்துவதால் இந்த விசை பிணைப்பை மீட்க முடியும்; \"shift\" "
+"விசை அது பயன்படுத்தப்படும் விசைகளில் ஒன்றாக இருக்க முடியாது."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "அடைவை உருவாக்க முடியவில்லை '%s': %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "அமர்வு கோப்பு '%s' எழுதுவதற்காக திறக்க முடியவில்லை: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "அமர்வு கோப்பை எழுதுவதில் பிழை '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "அமர்வுகோப்பை மூடுவதில் பிழை '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "சேமிக்கப்பட்ட அமர்வு கோப்பை படிப்பதில் தோல்வி %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "சேமிக்கப்பட்ட அமர்வு கோப்பை பகுப்பதில் தோல்வி: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> பண்பு பார்க்கப்பட்டது ஆனால் இங்கு அமர்வு ID ஏற்கெனவே உள்ளது"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "தெரியாத பண்பு %s <%s> உறுப்பில்"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "பின்னப்பட்ட <window> குறி"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "தெரியாத உறுப்பு %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+" &quot;தற்போதைய அமைப்பை சேமி&quot; செயலுக்கு ஆதரவு இல்லை மேலும் அடுத்த முறை "
+"உள்நுழையும் போது நீங்களாக துவக்க வேண்டும்"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "பிழைதிருத்த பட்டியலை திறப்பதில் தோல்வி: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "fdopen() பதிவுக்கோப்பு தோல்வி %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "பதிவுக்கோப்பு திறக்கப்பட்டது %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "வெர்போஸ் ஆதரவு இல்லாமல் மெட்டாசிட்டி அமைக்கப்பட்டது\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "சாளர மேலாளர்:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "சாளர மேலாளரில் பிழை"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "சாளர மேலாளர் எச்சரிக்கை:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "சாளர மேலாளர் பிழை"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "மெட்டாசிட்டி"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"சாளரம் %s SM_CLIENT_ID இன் மேல் உள்ளது, WM_CLIENT_LEADER சாளரத்தில் குறிப்பிட்டது "
+"போல் ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"சாளரம் %s MWM அளவு மாற்ற முடியும் என குறிப்பிடுகிறதும் ஆனால் %d x %d மற்றும் அதிக "
+"பட்ச அளவு %d x %d; பொருள் தரும்படி இல்லை.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "பயன்பாடு பொய்யான ஒரு _NET_WM_PID %lu ஐ அமைத்தது\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s மீது)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (முதன்மை பயனராக)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s ஆக)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (மற்றோர் பயனராக)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "செல்லாத WM_TRANSIENT_FOR சாளரம் 0x%lx இதற்கு குறிக்கப்பட்டது: %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"சாளரம் 0x%lx பண்பு %s உள்ளது\n"
+"இதில் %s வகை %d வடிவமைப்பு எதிர்பார்க்கப்பட்டது\n"
+"ஆனால் வகை %s வடிவமைப்பு %d n_items %d முறை உள்ளது.\n"
+"இது பயன்பாட்டு பிழையாக இருக்கலாம், சாளர மேலாளர் பிழை இல்லை.\n"
+"சாளரத்தில் title=\"%s\" class=\"%s\" name=\"%s\" உள்ளது\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "பண்பு %s சாளரம் 0x%lx செல்லாத UTF-8 உள்ளது\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "பண்பு %s சாளரம் 0x%lx செல்லாத UTF-8 உருப்படி %d பட்டியலில் உள்ளது\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "பணியிடம் 1க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "பணியிடம் 2 க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "பணியிடம் 3 க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "பணியிடம் 4 க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "பணியிடம் 5 க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "பணியிடம் 6 க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "பணியிடம் 7 க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "பணியிடம் 8 க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "பணியிடம் 9 க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "பணியிடம் 10 க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "பணியிடம் 11 க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "பணியிடம் 11 க்கு மாறு"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "பணியிடத்தை நடப்பு பணியிடத்தின் இடது பக்கமாக நகர்த்து"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "பணியிடத்தை நடப்பு பணியிடத்தின் வலது பக்கமாக நகர்த்து"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "பணியிடத்தை நடப்பு பணியிடத்தின் மேல் பக்கமாக நகர்த்து"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "பணியிடத்தை நடப்பு பணியிடத்தின் கீழ் பக்கமாக நகர்த்து."
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "ஒரு பயன்பாட்டின் சாளரங்களிடையே துள்ளு சாளரம் மூலமாக நகரவும்"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "மேல்மேசையில் ஒரு பயன்பாட்டின் சாளரங்களிடையே துள்ளு சாளரம் மூலமாக பின்னோக்கி நகரவும்"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "சாளரங்களிடையே துள்ளு சாளரம் மூலமாக நகரவும்"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "சாளரங்களிடையே துள்ளு சாளரம் மூலமாக பின்னோக்கி நகரவும்"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "பலகம் மற்றும் மேல்மேசை இடையே துள்ளு சாளரம் மூலமாக நகரவும்"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "பலகம் மற்றும் மேல்மேசை இடையே துள்ளு சாளரம் மூலமாக பின்னோக்கி நகரவும்"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "ஒரு பயன்பாட்டின் சாளரங்களிடையே உடனடியாக நகரவும்"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "மேல்மேசையில் ஒரு பயன்பாட்டின் சாளரங்களிடையே உடனடியாக பின்னோக்கி நகரவும்"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "சாளரத்திற்கிடையில் உடனடியாக நகரவும்"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "சாளரத்திற்கிடையில் உடனடியாக பின்னோக்கி நகரவும்"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "பலகம் மற்றும் மேல்மேசையில் உடனடியாக நகரவும்"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "பலகம் மற்றும் மேல்மேசையில் பின்னோக்கி நகரவும்"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "எல்லா வழக்கமான சாளரங்களையும் மறைந்து மேல்மேசையில் குவிப்பை காட்டு"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "பலக முதன்மை மெனுவை காட்டு"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "பலகத்தின் \" பயன்பாட்டை இயக்கு\" உரையாடல் பெட்டியை காட்டு"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "திரைவெட்டை பதிவு செய்"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "சாளரத்தின் திரைவெட்டை பதிவு செய்"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "முனையம் ஒன்றை இயக்கு"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "சாளர மெனுவை செயல்படுத்து"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "எப்போதும் முழுதிரை பாங்கிற்கு செல்"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "எப்போதும் பெரிய சாளர நிலைக்கு செல்"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "மற்ற சாளரங்களுக்கு மேலே சாளரத்தை வைக்கவேண்டுமா என்பதை நிலை மாற்றுகிறது"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "சாளரத்தை பெரிதாக்கு"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "சாளரத்தை மீட்டெடு "
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "எப்போதும் நிழை நிலைக்கு செல்"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "சாளரத்தை சிறிதாக்கு"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "சாளரம் மூடவும்"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "சாளரத்தின் அளவை மாற்று"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr ""
+"சாளரம் அனைத்து பணியிடங்களிலும் இருக்குமா அல்லது ஒரே பணியிடத்திலா என்பதை நிலை "
+"மாற்றுகிறது."
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "பணியிடம் 1 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "பணியிடம் 2 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "பணியிடம் 3 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "பணியிடம் 4 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "பணியிடம் 5 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "பணியிடம் 6 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "பணியிடம் 7 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "பணியிடம் 8 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "பணியிடம் 9 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "பணியிடம் 10 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "பணியிடம் 11 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "பணியிடம் 12 க்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "ஒருபணியிடத்திற்கு இடது பக்கம் சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "ஒருபணியிடத்திற்கு வலதுபக்கம் சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "ஒருபணியிடத்திற்கு மேலே சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "ஒருபணியிடத்திற்கு கீழே சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "வேறொரு சாளரத்தால் மறைக்கப்பட்டிருந்தால் சாளரத்தை உயர்த்து, அல்லது கீழிறக்கு"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "மற்ற சாளரத்திற்கு மேல் இந்த சாளரத்தை உயர்த்து"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "மற்ற சாளரத்திற்கு கீழே சாளரத்தை வைக்கவும்"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "சாளரத்தை இடவலமாக பெரிதாக்கு "
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "சாளரத்தை செங்குத்தாக பெரிதாக்கு "
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "வட மேற்கு (மேல் இடது) மூலைக்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "வட கிழக்கு (மேல் வலது) மூலைக்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "தென் மேற்கு (கீழ் இடது) மூலைக்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "தென் கிழக்கு (கீழ் வலது) மூலைக்கு சாளரத்தை நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "சாளரத்தை திரையின் வடக்கே (மேலே) நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "சாளரத்தை திரையின் தெற்கே (கீழே) நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "சாளரத்தை திரையின் கிழக்கே (வலது) பக்கம் நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "சாளரத்தை திரையின் மேற்கே (இடது) பக்கம் நகர்த்தவும்"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "சாளரத்தை திரையின் மையத்துக்கு நகர்த்தவும்"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(செயல்படுத்தப்படாத) உலாவல் பயன்பாட்டின் படி சாளரத்தின் படி அல்ல"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"சாளரத்தின் தலைப்புப்பட்டிக்கான எழுத்துருவை விளக்கும் எழுத்துரு விளக்க சரம். "
+"titlebar_font_size தேர்வில் 0 ஐ அமைத்தால் மட்டும் விளக்க சரத்தில் உள்ள அளவு "
+"பயன்படுத்தப்படும். மேலும் titlebar_uses_desktop_font தேர்வை உண்மை என அமைத்தால் இந்த "
+"தேர்வு செயல்படாது. "
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "தலைப்புப்பட்டியை இரண்டு-சொடுக்கு செய்யும் போது நிகழவேண்டியது"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "தலைப்புப்பட்டியை நடு சொடுக்கு செய்யும் போது நிகழவேண்டியது"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "தலைப்புப்பட்டியை வலது சொடுக்கு செய்யும் போது நிகழவேண்டியது"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "தலைப்புப்பட்டியில் பட்டன்கள் அடுக்கப்பட்ட நிலை"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"தலைப்புப்பட்டியில் பட்டன்கள் அடுக்கப்பட்ட நிலை.\"menu:minimize,maximize,spacer,close\" "
+"என மதிப்புகள் இருக்க வேண்டும்; அரைப்புள்ளி சாளரத்தின் இடது மூலையிலிருந்து வலது மூலையை "
+"தனிப்படுத்த பயன்படும். மேலும் பட்டன் பெயர்கள் கமா வால் பிரிக்கப்பட்டிருக்கும் பொய் பட்டனுக்கு "
+"அனுமதி இல்லை. தெரியாத பட்டன் பெயர்கள் பழைய பதிப்புகளை உடைக்காமல் தவிர்க்கப்பட்டு மெட்டா "
+"சிட்டியின் அடுத்த பதிப்பின் சேர்க்கப்படும். இரு அடுத்தடுத்த பட்டன்களின் இடையே கொஞ்சம் "
+"இடைவெளியை நுழைக்க ஒரு விசேஷ குறிப்பை பயன்படுத்தலாம்."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "குறிக்கப்பட்ட சாளரத்தை தானாக ஏற்று"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"இந்த விசையை அழுத்திக்கொண்டே சாளரத்தில் மேல் க்ளிக் செய்து சாளரத்தை நகர்த்தவும் (இடது "
+"க்ளிக்), அளவு மாற்ற (மைய க்ளிக்), அல்லது மெனுவைகாட்ட(வலது க்ளிக்). மைய, வலது "
+"பயன்பாடுகளை \"resize_with_right_button\" விசையை கொண்டு இட மாற்றலாம். மாற்றி உதாரணமாக "
+"\"&lt;Alt&gt;\" or \"&lt;Super&gt;\" என காட்டப்படும் "
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "கீபைண்டிங்களுக்கு இணங்க இயக்க கட்டளைகள்"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "பலவின் ஆக்க மேலாளர்"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "புதிய சாளரம் எப்படி முன்னிலை பெறும் என கட்டுப்படுத்துகிறது"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "தற்போதைய கருப்பொருள்"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "தானாக துவக்க தேர்வில் தாமதம் மில்லிசெகண்டில்"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "மெட்டாசிட்டி பலவின் ஆக்க மேலாளரா என நிர்ணயிக்கிறது"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"கணினி அல்லது பயன்பாட்டால் மணியை காட்டுவதற்கு பதில் கேட்கக்கூடிய ஒலியை உருவாக்க "
+"முடியுமா. "
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "பழைய மற்றும் உடைந்த பயன்பாடுகளாள் செயல்நீக்கம் செய்யப்பட்ட காணாமல் போன வசதிகள்"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "்சி மணகாட்சியாக ியை செயல்படுத்து"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"உண்மையெனில், குவியும் பாணி \"sloppy\" அல்லது \"mouse\" எனில் சிறிது தாமதத்திற்கு "
+"பிறகு சாளரம் தானாக மேலெழும் (தாமதம் auto_raise_delay விசையால் குறிக்கப்படும்). "
+"இதற்கும் ஒரு சாளரத்தை சொடுக்கி மேலெழச் செய்வதற்கும் அல்லது இழுத்து விடுதலில் ஒரு "
+"சாளரத்தில் நுழைவதற்கும் சம்பந்தமில்லை."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"உண்மையெனில், titlebar_font தேர்வை தவிர்கும். நிலையான எழுத்துருவை சாளர தலைப்பில் "
+"காட்டும்."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"உண்மையெனில், மெட்டாசிட்டி குறைவான கருத்து மற்றும் குறைந்த நேர் மாற்றத்திற்கும் வசதி செய்து "
+"தரும், கம்பி சட்டங்களை பயன்படுத்தி, அசைவூட்டங்களை தவிர்க்கும். இதனால் பயனீட்டாளரின் "
+"பயன்பாடுகளில் குறிப்பிடும்படி குறைகள் இருக்கும் , ஆனால் பழைய பயன்பாடுகள் மற்றும் முனைய "
+"சேவைகள் பாகுபாடு பாராமல் வேலை செய்ய அனுமதிக்கும். எனினும் வயர்ப்ரேம் வசதி அணுகல் தேர்வு "
+"இருப்பின் செயலிழக்கப்படும்."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"உண்மையெனில், மெட்டாசிட்டி சாளரத்தில் இல்லாமல் பயன்பாட்டில் இயங்கும். இந்த கொள்கை சிறிது "
+"சிக்கலானது என்றாலும், மேக் போன்ற பயன்பாடு-சார்ந்த அமைப்புக்கு மிக பயனுள்ளது, சாளரத்தை "
+"பயன்பாடு-சார்ந்து அமைக்கும் போது பயன்பாடோடு தொடர்புடைய சாளரங்கள் மேலெழும்பும்.மேலும் இது "
+"மற்ற சாளரங்களை பாதிக்காது. ஆனால் இதன் அமைப்பு சற்றே கேள்விக்குட்பட்டது. ஆனால் அமைப்புகள் "
+"பயன்பாடு சார்ந்த மற்றும் சாளரம் சார்ந்தவைகளின் விளக்கத்தை தெரிந்துகொள்வது நல்லது. மேலும் "
+"பயன்பாடு-சார்ந்தவை முடிக்கப்படாத நிலையில் உள்ளது"
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "உண்மையெனில், குறைவான வளத்தை பயன்படுத்தும்"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "சாளர க்ளிக் செயல்பாட்டின் போது பயன்பட வேண்டிய மாற்றி"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "பணியிடத்தின் பெயர்"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "பணியிடங்களின் எண்ணிக்கை"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"பணிக்களங்களின் எண். இது பூஜ்யமாக இருக்க வேண்டும். அதிகபட்சம் வரையறுக்கப்பட்டு இருக்க "
+"வேண்டும். இல்லாவிடில் தவறுதலாக் மிக அதிக பணிக்களம் கேட்கப்பட்டால் மேல்மேசை பயன்படுத்த "
+"முடியாததாகி விடும்."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "குறிப்பிட்ட கட்டளையை இயக்கு"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"உண்மை என அமைத்தால் \"mouse_button_modifier\" இல தரப்பட்ட விசையை அழுத்திக்கொண்டு வலது "
+"பட்டனால் அளவை மாற்றலாம், நடு பட்டனால் மெனுவை காட்டலாம்.; இது மாறாக செயல்பட பொய் என அமை."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"இந்த தேர்வை அமைத்தல் பிழையான நடத்தையை தரலாம். பயனர் முன்னிருப்பான உண்மை தேர்வை மாற்ற "
+"வேண்டாம் என பலமாக பரிந்துரைக்கப்படுகிறது. சார்ந்தோன் இடத்தில் சொடுக்குதல், சாளர நகர்வு, "
+"மறு அளவாக்கம் ஆகிய பல செயல்கள் சாதாரணமாக சாளரத்தை முன்னிலையாக்கும். மற்ற பயனர் "
+"செயல்களில் இருந்து இணைப்பு நீக்க இந்த தேவை இல்லை என அமைத்தல் -இது வேண்டாம் என பலமாக "
+"பரிந்துரைக்கப்படுகிறது- மற்ற பயனர் செயல்கள் நிரல்களின் வேண்டுதல்கள் ஆகியவை சாளரத்தை "
+"உயர்த்துவதிலிருந்து தடுக்கும். http://bugzilla.gnome.org/show_bug.cgi?"
+"id=445447#c6. ஐ யும் பார்க்கவும்.(அப்படியானாலும் சாளரத்தில் எங்கேயும் ஆல்ட்+ இடது "
+"சொடுக்கு, சாளர அலங்காரத்தில் சொடுக்கு, டாஸ்க்லிஸ்ட் குறுநிரலிலிருந்து செயல்பாடு "
+"வேண்டுகோள் போன்ற விளிப்பான்களிடமிருந்து சிறப்புச்செய்திகள் ஆகியவற்றால் சாளரத்தை "
+"முன்னிலையாக்கலாம்.) இந்த தேர்வு இப்போது ¨முன்னிலைபடுத்த சொடுக்கு¨ பாங்கில் "
+"செயலிழக்கபட்டுள்ளது. raise_on_click தேர்வு இல்லை என அமைக்கப்பட்டால் பாதிக்கப்படும் "
+"வழிகளில் நிரல்களின் வேண்டுதல்கள் இல்லை என அறியவும். அவை எப்போதுமே உதாசீனப்படுத்தப்படும். "
+"நீங்கள் செயல்பாடு உருவாக்குபவர் ஆயின், பயனர் செயல்பாடு வேலை செய்யவில்லை என கூறினால் அவரை "
+"இந்த சாளர மேலாளரை மாற்றியதால் இது நிகழ்ந்தது என்றும் இந்த தேர்வை உண்மை என அமைக்க வேண்டும் "
+"அல்லது பிழையுடன் (\"bug\") வாழ வேண்டும் என கூறுங்கள். "
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"சில நிரல்கள் சாளர மேலாளர் குறிப்பிடும் வரையரைகளை மீறுவதால் பிரச்சினைகள் ஏற்படுகிறன. "
+"இந்த தேர்வு மெட்டாசிட்டி ஐ வெகு சரியான பாங்கில் அமைக்கும். இதனால் சரியில்லாத பயன்பாடுகள் "
+"தவிர பயனருக்கு எப்போதுமே சரியான பயன்பாடு இடைமுகம் கிடைக்கும். "
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "கணினி ஒலி கேட்கும்படி"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"மணி ஒலிப்பதை காட்சியாக காட்டுவது எப்படி என்பதை மெட்டாசிட்டி குறிப்பிடும். தற்போது "
+"இரண்டு மதிப்புகள் உள்ளது \"முழுதிரை: முழுதிரையும் கருப்பு வெள்ளையாக தெரியும். "
+"\"சட்ட_காட்சி\" தலைப்புப்பட்டியில் பயன்பாட்டின் சின்னம் மணியோசையை அனுப்பும். மணியோசையை "
+"அனுப்பிய பயன்பாடு தெரியாத பயன்பாடு(இது இயல்பான \"கணினி ஒலிக்கு\" பொருந்தும்)"
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N கீபைன்டிங்கை அதனோடு தொடர்புடைய "
+"கட்டளையோடு இணைக்கும்.இந்த கட்டளைக்காக run_command_N கீபைன்டிங்கை அழுத்துவதால் command_N "
+"இயங்கும்."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+" /apps/marco/global_keybindings/run_command_screenshot கட்டளை அமைப்பை துவக்க "
+"பயன்படும் கீபைன்டிங்கை குறிக்கும்"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot விசை இந்த "
+"கட்டளை செயல்படுத்த வேண்டிய கீபைன்டிங்கை குறிக்கும்"
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"கீபைன்டிங் குறிப்பிட்ட எண்ணுள்ள கட்டளையை /apps/marco/keybinding_commands இல் "
+"இயக்கும். இதன் அமைப்பு \"&lt;Control&gt;a\" அல்லது\"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+"வாக இருக்கும். இதன் பகுப்பி பெரிய மற்றும் சிறிய எழுத்துக்களை அனுமதிப்பதோடு, \"&lt;"
+"Ctl&gt;\" மற்றும் \"&lt;Ctrl&gt;\".விரிவாக்கங்களை அனுமதிக்கும். \"செயல்படுத்தாதே\" "
+"தேர்வை அமைப்பதன் மூலம் கீபைன்டிங் செயலை கட்டுப்படுத்த முடியும்"
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "பணியிடத்தின் பெயர்"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "திரைவெட்டு கட்டளை"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "கருப்பொருள் ஓரம், தலைப்புப்பட்டி போன்றவைகளின் தோற்றத்தை கண்டறியும்."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"(_r)தானாக துவங்குதல் உண்மையென்று அமைக்கப்பட்டால் சாளரம் எடுத்துக்கொள்ளும் தாமத நேரம். "
+"தாமதம் 1000 நொடிகளில் குறிக்கப்பட்டுள்ளது"
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"சாளர துவக்க குறி சாளரங்கள் எவ்வாறு செயல்படுத்தப்படுகிறது என்பதை குறிப்பிடும். இதில் "
+"மூன்றுவித மதிப்புகள் இருக்கும்,\"க்ளிக்\" எனில் க்ளிக் செய்யும் போது சாளரம் குறியை "
+"நகர்த்தும்.\"sloppy\" எனில் சுட்டி சாளரத்தில் நுழையும் போது செயல்படும் மற்றும் \"mouse"
+"\" எனில் சுட்டி சாளரதில் நுழையும் போது செயல்படும்."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "சாளர திரைவெட்டு கட்டளை"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"இந்த தேர்வு தலைப்பு பட்டியில் இரட்டை சொடுக்கு செய்வதின் பலனை நிர்ணயிக்கிறது. இப்போதைய "
+"செல்லுபடியாகும் விருப்பங்கள் 'toggle_shade', -இது சாளரத்தை நிழல் அல்லது நிழலற்றதாக "
+"ஆக்கும். 'toggle_maximize' சாளரத்தை பெரிதாக்கும் அல்லது பெரிதாகியதை மீட்கும், "
+"'toggle_maximize_horizontally' மற்றும் 'toggle_maximize_vertically' என்பது "
+"பெரிதாக்கல்/ சிறியதாக்கலை அந்த திசையில் மட்டும் செய்யும்,'minimize' சாளரத்தை "
+"சிறிதாக்கும் அல்லது சிறிதாக்கியதை மீட்கும், 'shade' சாளரத்தை மேலுக்கு சுருட்டும், "
+"'menu' சாளர மெனுவை காட்டும், 'lower' சாளரத்தை மற்ற சாளரங்களின் பின்னே இறக்கும் "
+"மற்றும் 'none' -எதுவும் செய்யாது."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"இந்த தேர்வு தலைப்பு பட்டியில் நடு சொடுக்கு செய்வதின் பலனை நிர்ணயிக்கிறது. இப்போதைய "
+"செல்லுபடியாகும் விருப்பங்கள் 'toggle_shade', -இது சாளரத்தை நிழல் அல்லது நிழலற்றதாக "
+"ஆக்கும். 'toggle_maximize' சாளரத்தை பெரிதாக்கும் அல்லது பெரிதாகியதை மீட்கும், "
+"'toggle_maximize_horizontally' மற்றும் 'toggle_maximize_vertically' என்பது "
+"பெரிதாக்கல்/ சிறியதாக்கலை அந்த திசையில் மட்டும் செய்யும்,'minimize' சாளரத்தை "
+"சிறிதாக்கும் அல்லது சிறிதாக்கியதை மீட்கும், 'shade' சாளரத்தை மேலுக்கு சுருட்டும், "
+"'menu' சாளர மெனுவை காட்டும், 'lower' சாளரத்தை மற்ற சாளரங்களின் பின்னே இறக்கும் "
+"மற்றும் 'none' -எதுவும் செய்யாது."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"இந்த தேர்வு தலைப்பு பட்டியில் வலது சொடுக்கு செய்வதின் பலனை நிர்ணயிக்கிறது. இப்போதைய "
+"செல்லுபடியாகும் விருப்பங்கள் 'toggle_shade', -இது சாளரத்தை நிழல் அல்லது நிழலற்றதாக "
+"ஆக்கும். 'toggle_maximize' சாளரத்தை பெரிதாக்கும் அல்லது பெரிதாகியதை மீட்கும், "
+"'toggle_maximize_horizontally' மற்றும் 'toggle_maximize_vertically' என்பது "
+"பெரிதாக்கல்/ சிறியதாக்கலை அந்த திசையில் மட்டும் செய்யும்,'minimize' சாளரத்தை "
+"சிறிதாக்கும் அல்லது சிறிதாக்கியதை மீட்கும், 'shade' சாளரத்தை மேலுக்கு சுருட்டும், "
+"'menu' சாளர மெனுவை காட்டும், 'lower' சாளரத்தை மற்ற சாளரங்களின் பின்னே இறக்கும் "
+"மற்றும் 'none' -எதுவும் செய்யாது."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"இந்த தேர்வு புதிதாக உருவாக்கிய சாளரங்கல் மீது மேலும் கூடுதல் கட்டுப்பாடு தருகிறது. "
+"இதில் இரண்டு மதிப்புகள் இருக்கக்கூடும். \"smart\" என்பது பயனரின் வழக்கமான குவிப்பு "
+"பாங்கை தரும். \"strict\" என்பது முனையத்திலிருந்து துவக்கிய சாளரத்துக்கு முன்னிலை "
+"தராது."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"கணினி ஒரு பெல் அல்லது பீப் எச்சரிக்கை தரும் போது ஒரு காட்சி குறிப்பை தரும். இது காது "
+"சரியாக கேட்காதவர்களுக்கும் சத்தமான சூழலில் வேலை செய்பவர்களுக்கும் உபயோகமாகும்."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "சாளர தலைப்பிம் நிலையான கணினி எழுத்துருவை பயன்படுத்து"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "காட்சி மணி வகை"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "முன்னிருத்தம் மற்றா பயனர் ஊடாடலுக்கு பக்க விளைவாக இருக்க வேண்டுமா?"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "வலது பொத்தானால் மறுஅளவு செய்யவா"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "சாளர குறி பாங்கு"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "சாளர தலைப்பு எழுத்துரு"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "பயன்பாடு: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "சாளரம் மூடவும்"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "சாளர பட்டி"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "சாளரத்தை குறுக்கவும்"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "சாளரத்தை பெரிதாக்கவும்"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "சாளரத்தை மீட்டெடு"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "சாளரத்தை மேலே சுருட்டு"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "சாளரம் விரிக்கவும்"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "சாளரத்தை மேலே வைத்திரு "
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "மேலிருந்து சாளரத்தை நீக்கு "
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "வேலைகளத்தில் எப்போதும் தெரியும் "
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "சாளரத்தை ஒரே ஒரு பணியிடத்தில் மட்டும் வைக்கவும்"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "குறுக்கவும் (_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "பெரிதாக்கவும் (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "பெரிதாக்காத (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "மேலே சுருட்டு"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "கீழ் விரி (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "நகர்த்தவும் (_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "மறுஅளவு (_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "தலைப்புப்பட்டையை திரைக்கு நகர்த்தவும் (_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "எப்போதும் மேலே (_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "எப்போதும் தெரியும் வேலையிடத்தில் (_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "இந்த வேலையிடத்தில் மட்டும் (_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "வேலையிடத்தின் இடப்பக்கத்திற்கு நகர்த்தவும் (_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "வேலையிடத்தின் வலப்பக்கத்திற்கு நகர்த்தவும் (_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "வேலையிடத்தின் மேலே நகர்த்தவும் (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "வேலையிடத்தின் கீழே நகர்த்தவும் (_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "மூடவும் (_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "வேலையிடம் %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "வேலையிடம் 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "வேலையிடம் %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "மற்ற வேலையிடத்திற்கு மாற்றவும் (_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "மேல்"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "கீழ்"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "இடது"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "வலது"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "சட்ட வடிவியல் \"%s\" அளவை குறிப்பிடவில்லை"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "\"%s\" ஓரத்திற்கு வடிவியல் \"%s\" அளவை குறிப்பிடவில்லை"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "பட்டன் அளவு விகிதம் %g சரியில்ல"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "சட்ட அளவு பட்டன் அளவை குறிப்பிடவில்லை"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "க்ரேடியன்டில் இரண்டு நிறங்களாவது இருக்க வேண்டும்"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK வண்ணம் அடைப்புக்குறிகளை கொண்டிருக்க வேண்டும் உம் gtk:fg[NORMAL] NORMAL நிலையை "
+"குறிக்கும் பகுக்க முடியாது \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK வண்ணம் மூடிய அடைப்புக்குறிகளை கொண்டிருக்க வேண்டும் உம் gtk:fg[NORMAL] NORMAL "
+"நிலையை குறிக்கும் பகுக்க முடியாது \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "நிலை \"%s\" வண்ண குறிப்பில் புரிந்துகொள்ள முடியவில்லை"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "நிலை \"%s\" வண்ண குறிப்பு பொருளில் புரிந்துகொள்ள முடியவில்லை"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"வளைந்த அமைப்பு \"blend/bg_color/fg_color/alpha\", \"%s\" இந்த வடிவமைப்பிற்கு "
+"பொருந்தாது"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "ஆம்ஃபா மதிப்பை \"%s\" வளைந்த நிறத்தில் பகுக்க முடியவில்லை"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "ஆல்ஃபா மதுப்பு \"%s\"வளைவு நிறத்தில் 0.0 க்கும் 1.0 க்கும் இடையில் இல்லை"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "நிழல் வடிவமைப்பு \"shade/base_color/factor\", \"%s\" இந்த அமைப்பிற்கு பொருந்தாது"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "நிழல்விகிதத்தை \"%s\" நிறத்தோடு பகுக்க முடியாது"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "நிழல் விகிதம் \"%s\" முழுக்களாக உள்ளது "
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "\"%s\" நிறத்தை பகுக்க முடியவில்லை"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "அச்சுக்கள் எழுத்தால் குறிக்கப்பட்டுள்ளது '%s' க்கு அனுமதி இல்லை"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "அச்சுக்கள் பின்ன எண்ணால் குறிக்கப்பட்டுள்ளது '%s' ஐ பகுக்க முடியாது"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "அச்சுக்கள் இயல் எண்ணால் குறிக்கப்பட்டுள்ளது '%s' ஐ பகுக்க முடியாது"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "உரையின் துவக்கத்தில் அச்சின் கூற்றில் தெரியாத செயல் இடம்பெற்றுள்ளது \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "அச்சு கூற்று காலியாக உள்ளது அல்லது புரியவில்லை"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "அச்சு கூற்று பூஜ்ஜியத்தால் வகுத்தல் பிழையை தந்தது"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "அச்சு கூற்று mod ஆப்பரேட்டரை பின்ன எண்ணில் பயன்படுத்த முயல்கிறது"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "அச்சு கூற்றில் ஆப்பரேட்டர் உள்ளது \"%s\" ஆப்பரன் எதிர்பார்க்கப்படுகிறது"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "அச்சு கூற்றில் ஆப்பரன்ட் உள்ளது ஆனால் ஆப்பரேட்டர் எதிர்பார்க்கப்படுகிறது"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "அச்சு கூற்றில் ஆப்பரன்ட்டுக்கு பதில் ஆப்பரேட்டரால் முடிந்தது"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "அச்சு கூற்றில் \"%c\" ஆப்பரேட்டர் உள்ளது \"%c\" ஆப்பரேட்டருக்கு ஆப்பரன்ட் இல்லை"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "அச்சு கூற்றில் செல்லாத மாற்றி மற்றும் கான்ஸ்ட்டன் உள்ளது \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "ஆயத்தொலைவு தெரிவிப்பு பகுப்பி அதன் இடையகத்தை நிரப்பியது"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "அச்சு கூற்றில் மூடிய அடைப்புக்குறி உள்ளது ஆனால் திறந்த அடைப்புகுறி இல்லை"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "அச்சு கூற்றில் திறந்த அடைப்புக்குறி உள்ளது ஆனால் மூடிய அடைப்புகுறி இல்லை"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "அச்சுக்கூற்றில் ஆப்பரன்ட் மற்றும் ஆப்பரேட்டர் காணப்படவில்லை"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "கருப்பொருளில் உள்ள கூற்றால் பிழை ஏற்பட்டது: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> இந்த சட்ட பாணிக்கு "
+"குறிப்பிடப்பட வேண்டும்"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "காணவில்லை <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "கருப்பொருளை ஏற்றுவதில் தோல்வி \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "இல்லை<%s> கருப்பொருளுக்காக அமைக்கப்பட்டது \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"சட்ட பாணி சாளர வகை இல்லை\"%s\" கருப்பொருளில் \"%s\", <window type=\"%s\" "
+"style_set=\"whatever\"/> உறுப்பை சேர்க்கவும்"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "பயனீட்டாளர்-குறிப்பிட்ட கான்ஸ்டன் பெரிய எழுத்தில் துவங்க வேண்டும்; \"%s\" இல்லை"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "கான்ஸ்டன் \"%s\" ஏற்கெனவே குறிப்பிடப்பட்டது"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "இல்லை \"%s\" பண்பு<%s>உறுப்பின் மேல் "
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "வரி %d எழுத்து %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "பண்பு \"%s\" ஒரே உறுப்பில் இரண்டு முறை வந்துள்ளது <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "பண்பு \"%s\" <%s> இந்த பயன்பாட்டிற்கு செல்லாது"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" ஐ இயல் எண்ணாக பகுக்க முடியாது"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "\"%s\" தொடரும் சரத்தில் \"%s\" சரத்தை புரிந்துகொள்ள முடியவில்லை"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "இயல் எண் %ld முழு எண்ணாக இருக்க வேண்டும்"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "இயல் எண் %ld பெரிதாக இருக்கிறது, தற்போது அதிகபட்சம் %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\" பின்ன எண் பகுக்க முடியாது"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "பூலியன் மதிப்புகள் \"true\" அல்லது \"false\" \"%s\" இல்லை"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "கோணம் 0.0 மற்றும் 360.0, இடைப்பட்டதாக இருக்க வேண்டும் %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "ஆல்ஃபா 0.0 (பார்வைக்கு) மற்றும் 1.0 (முழுவதும் ஒலிபுகும்), %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"செல்லாத தலைப்பு அளவு \"%s\" ( xx-small,x-small,small,medium,large,x-large,xx-"
+"large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> பெயர் \"%s\" இரண்டாது முறை பயன்படுத்தப்படுகிறது"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> தாய் \"%s\" குறிப்பிடப்படவில்லை"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> வடிவியல் \"%s\" குறிப்பிடப்படவில்லை"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> வடிவியல் அல்லது வடிவியல் உள்ள மூலத்தை குறிப்பிடவேண்டும்"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "ஆல்பா மதிப்பு அர்தமுள்ளதாக இருக்க நீங்கள் ஒரு பின்னணி ஐ குறிப்பிட வேண்டும்."
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "தெரியாத வகை \"%s\" <%s> உறுப்பில்"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "(_s)தெரியாத பாணி அமைப்பு \"%s\" <%s> உறுப்பில்"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "சாளர வகை \"%s\" இந்த பாணிக்கு ஏற்கெனவே குறிப்பிடப்பட்டது"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "உறுப்பு <%s> கீழே அனுமதிக்கப்படவில்லை <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"பட்டன்களுக்கு \"button_width\"/\"button_height\" மற்றும் \"aspect_ratio\" "
+"இரண்டையுமே குறிப்பிட முடியாது"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "தூரன் \"%s\" தெரியாது"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "சீராக்க விகிதம் \"%s\" தெரியாது"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "ஓரம் \"%s\" தெரியாது"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "உறுப்பு <%s> இல் \"start_angle\" அல்லது \"from\" மதிப்புரு இல்லை "
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "உறுப்பு <%s> இல் \"extent_angle\" அல்லது \"to\" மதிப்புரு இல்லை "
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "இந்த ஒலிவிளைவிற்கான மதிப்பு \"%s\" ஐ புரிந்துகொள்ள முடியவில்லை"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "இந்த உறுப்பிற்கான <%s> நிரப்பல் வகை \"%s\" ஐ புரிந்துகொள்ள முடியவில்லை"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "இந்த உறுப்பிற்கான <%s> நிலை \"%s\" ஐ புரிந்துகொள்ள முடியவில்லை"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "இந்த உறுப்பிற்கான <%s> நிழல் \"%s\" ஐ புரிந்துகொள்ள முடியவில்லை"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "இந்த உறுப்பிற்கான <%s> அம்புக்குறி \"%s\" ஐ புரிந்துகொள்ள முடியவில்லை"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "இல்லை <draw_ops> அழைக்கப்பட்ட \"%s\" குறிப்பிடப்பட்டது"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "draw_ops உம் சேர்த்து \"%s\" முழு குறிப்பை உருவாக்கும்"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "சட்டம் ்தில் \"%s\" தெரியாத நிலை"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "%s இட சட்டம் ஏற்கெனவே உள்ளது"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "இல்லை <draw_ops> இந்த பெயர் \"%s\" எற்கெனவே குறிப்பிடப்பட்டது"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "\"%s\" பட்டனுக்கு தெரியாத செயல்"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "பொத்தான் தொழிற்பாடு \"%s\" இந்த வடிவ நிலையில் இல்லை (%d, தேவை %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "\"%s\" பட்டனுக்கு தெரியாத நிலை"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "%s நிலை %s இல் ஏற்கெனவே பட்டன் அல்லது செயல் உள்ளது"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" குறிப்பு பண்பிற்கு இது செல்லாத மதிப்பு"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" நிலை பண்பிற்கு இது செல்லாத மதிப்பு"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "பாணி \"%s\" குறிப்பிடப்படவில்லை"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" அளவுமாற்ற ப்பு பண்பிற்கு இது செல்லாத மதிப்பு"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "<%s> உறுப்பில் பெரிதாக்கு/சிறிதாக்கு நிலையில் \"அளவு மாற்ற\" பண்பு இருக்கக்கூடாது"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "பெரிதாக்கிய நிலையில் <%s> உறுப்பு க்கு \"resize\" மதிப்புரு இருக்கக்கூடாது."
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr " %s அளவுமாற்று %s குறி %s ஆகியவைகளின் நிலை ஏற்கெனவே குறிப்பிடப்பட்டுள்ளது"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "%s குறி %s ஆகியவைகளின் நிலை ஏற்கெனவே குறிப்பிடப்பட்டுள்ளது"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"இரண்டு draw_ops கள் <piece> உறுப்பிற்கு இருக்கக்கூடாது (draw_ops ஐ குறிப்பிடும் "
+"கருப்பொருள் மற்றும் அதன் பண்புகள் <draw_ops> அல்லது இரண்டும்)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"இரண்டு draw_ops கள் <button> உறுப்பிற்கு இருக்கக்கூடாது (draw_ops ஐ குறிப்பிடும் "
+"கருப்பொருள் மற்றும் அதன் பண்புகள் <draw_ops> அல்லது இரண்டும்)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"இரண்டு draw_ops கள் <menu_icon> உறுப்பிற்கு இருக்கக்கூடாது (draw_ops ஐ குறிப்பிடும் "
+"கருப்பொருள் மற்றும் அதன் பண்புகள் <draw_ops> அல்லது இரண்டும்)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "கருப்பொருளின் மேம்பட்ட உறுப்பு<marco_theme> <%s> இல்லை"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "உறுப்பு <%s> name/author/date/description க்குள் அனுமதி இல்லை"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "உறுப்பு <%s> க்கு <constant> உறுப்பில் அனுமதி இல்லை"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "உறுப்பு <%s> க்கு distance/border/aspect_ratio உறுப்பில் அனுமதி இல்லை"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "உறுப்பு <%s> க்கு வரையும் செயல்பாட்டில் பில் அனுமதி இல்லை"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "உறுப்பு <%s> க்கு <%s> உறுப்பில் அனுமதி இல்லை"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "சட்டத்திற்கு draw_ops தரப்படவில்லை"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "பட்டனுக்கு ்திற்கு draw_ops தரப்படவில்லை"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "உறுப்பிற்குள் உரை அனுமதி இல்லை<%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> கருப்பொருக்கு இரண்டுமுறை குறிப்பிட்டுள்ளது"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "%s கருத்துக்கு செல்லுபடியாகும் கோப்பு கண்டுபிடித்தல் தோல்வியுற்றது \n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "கருப்பொருள் கோப்பு %s இல் root <marco_theme> உறுப்பு இல்லை"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Windows"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Windows/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Windows/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Windows/_Modal dialog"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Windows/_Utility"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Windows/_Splashscreen"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Windows/_Top dock"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Windows/_Bottom dock"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Windows/_Left dock"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Windows/_Right dock"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Windows/_All docks"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Windows/Des_ktop"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "இது உதாரண உரையாடல் பெட்டியில் உள்ள உதாரண செய்தி"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "பெய்யான மெனு உருப்படி %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "ஓரம்-மட்டும் சாளரம்"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "பட்டி"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "தவறான சாளர பயன்பாடு"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "உரையாடல் பெட்டி"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "மாதிரி உரையாடல் பெட்டி"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "பயன்பாடு மாதிரி"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Torn-off மெனு"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "ஓரம்"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "பட்டன் உருவரை சோதனை %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g சாளரத்தை வரைய மில்லிசெக்கண்டு"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "பயன்பாடு: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "கருப்பொருளை ஏற்றுவதில் பிழை: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "கருப்பொருள் \"%s\" %g செகண்டில்\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "இயல்பான தலைப்பு எழுத்துரு"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "சிறிய தலைப்பு எழுத்துரு"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "பெரிய தலைப்பு எழுத்துரு"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "பட்டன் உருவரை"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "நிர்ணயம்"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "சாளர தலைப்பு இங்கே"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d சட்டங்கள் %g புரவலனில் செகண்டிலும் (%g சட்டத்தின் மில்லி செக்கண்டு ) %g X சேவகனின் "
+"மூலத்தில் (%g மில்லி செகண்ட் சட்டத்திற்கு)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "நிலை கூற்று சோதனை உண்மையை தந்தது ஆனால் பிழை"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "நிலை கூற்று சோதனை பொய்யை தந்தது ஆனால் பிழை"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "பிழை எதிர்பார்க்கப்பட்டடு ஆனால் தரப்படவில்லை"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "பிழை %d எதிர்பார்க்கப்பட்டது %d தரப்படவில்லை"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "பிழை எதிர்பார்க்கப்பட்டடு ஆனால் தரப்படவில்லை: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x மதிப்பு %d, %d எதிர்பார்க்கப்பட்டது"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y மதிப்பு %d, %d எதிர்பார்க்கப்பட்டது"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d அச்சு கூற்று பகுக்கப்பட்டது %g செகண்டில் (%g சராசரி செகண்ட்)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "இந்த சாளரத்தின் மற்றுமொரு சாளரம்"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "இது திற சின்னத்தோடு கூடிய சோதனை பட்டன்"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "இது 'வெளிச்செல்' சின்னத்தோடு கூடிய சோதனை பட்டன்"
diff --git a/po/te.po b/po/te.po
new file mode 100644
index 00000000..9ce33b33
--- /dev/null
+++ b/po/te.po
@@ -0,0 +1,2332 @@
+# translation of marco.master.te.po to Telugu
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+#
+# Krishna Babu K <[email protected]>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco.master.te\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=marco&component=general\n"
+"POT-Creation-Date: 2009-08-24 17:51+0000\n"
+"PO-Revision-Date: 2009-09-11 15:11+0530\n"
+"Last-Translator: Krishna Babu K <[email protected]>\n"
+"Language-Team: Telugu <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms: nplurals=2; plural=(n!=1);\n\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+"\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "రంగస్థలం"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "విండో నిర్వహణ"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "బెల్ ఘటన"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "తెలియని విండో సమాచార అభ్యర్ధన: %d"
+
+#: ../src/core/delete.c:104
+#, c-format
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+"<big><b><tt>%s</tt> స్పందించుటలేదు.</b></big>\n"
+"\n"
+"<i>ఇది కొనసాగుటకు మీరు కొంత సమయం వేచివుండవచ్చు లేదా బలవంతంగా మొత్తము అనువర్తనమును "
+"నిష్క్రమింపచేయవచ్చును.</i>"
+
+#: ../src/core/delete.c:115
+msgid "_Wait"
+msgstr "ఆగుము (_W)"
+
+#: ../src/core/delete.c:115
+msgid "_Force Quit"
+msgstr "బలవంతపు నిష్క్రమణ (_F)"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "హోస్టునామము పొందుటలో విఫలమైంది: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "కంపోజిటింగ్ కొరకు తప్పిపోయిన %s పొడిగింపు అవసరమైంది"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X విండో సిస్టమ్ ప్రదర్శన '%s' తెరుచుటకు విఫలమైంది\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"ప్రదర్శన '%s'కు అనుసంధానమును కోల్పోయింది;\n"
+"సాదారణంగా X సేవిక మూసివేయబడింది లేదా మీరు విండో నిర్వాహికను అంతము/నాశనము\n"
+"చేసివుంటారు.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "ఫాటల్ IO దోషము %d (%s) ప్రదర్శన '%s' పైన.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "వేరే యితర ప్రోగ్రామ్ యిప్పటికే కీ %sను సవరణిలు %xతో బందనం వలె వుపయోగిస్తోంది\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"అక్కడ వొక దోషము నడుచుచున్నది <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "ఏ ఆదేశము %d నిర్వచించబడిలేదు.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "ఎటువంటి టెర్మినల్ ఆదేశము నిర్వచించబడిలేదు.\n"
+
+#: ../src/core/main.c:130
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"మెటాసిటి %s\n"
+"కాపీరైట్ (C) 2001-%s Havoc Pennington, Red Hat, Inc., మరియు యితరులు\n"
+"యిది వుచిత సాఫ్టువేర్; నకలు నియమాల కొరకు మూలాన్ని చూడండి.\n"
+"వ్యాపారము కొరకుగాని లేదా వొక ప్రత్యేక ప్రయోజనము కొరకు వుపయోగపడుతుంది గాని;అక్కడ యెటువంటి వారెంటి "
+"లేదు.\n"
+
+#: ../src/core/main.c:268
+msgid "Disable connection to session manager"
+msgstr "సెషన్ నిర్వాహికకు అనుసంధానమును అచేతనము చేయుము"
+
+#: ../src/core/main.c:274
+msgid "Replace the running window manager with Marco"
+msgstr "నడుచుచున్న విండో నిర్వాహికను మెటాసిటితో పునఃస్థాపించుము"
+
+#: ../src/core/main.c:280
+msgid "Specify session management ID"
+msgstr "సెషన్ నిర్వహణా IDను తెలుపుము"
+
+#: ../src/core/main.c:285
+msgid "X Display to use"
+msgstr "ఉపయోగించుటకు X ప్రదర్శన"
+
+#: ../src/core/main.c:291
+msgid "Initialize session from savefile"
+msgstr "విభాగమును దాచినదస్త్రమునుండి సిద్దముచేయుము"
+
+#: ../src/core/main.c:297
+msgid "Print version"
+msgstr "వివరణము ముద్రించు"
+
+#: ../src/core/main.c:303
+msgid "Make X calls synchronous"
+msgstr "Xపిలుపులను కాలనియమితం చేయుము"
+
+#: ../src/core/main.c:309
+msgid "Turn compositing on"
+msgstr "కంపోజిటింగ్‌ను ఆన్ చేయుము"
+
+#: ../src/core/main.c:315
+msgid "Turn compositing off"
+msgstr "కంపోజిటింగ్‌ను ఆఫ్ చేయుము"
+
+#: ../src/core/main.c:321
+msgid "Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "పెద్దవిచేయబడిన మరియు అలంకరణలులేని విండోలను పెద్దస్క్రీను చేయవద్దు"
+
+#: ../src/core/main.c:543
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "థీమ్స్ డైరెక్టరీను స్కాను చేయుటకు విఫలమైంది: %s\n"
+
+#: ../src/core/main.c:559
+#, c-format
+msgid "Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"ఒక థీమ్‌ను కనుగొనలేక పోయింది! %s వుండునట్లు మరియు అది సాదారణ థీమ్సును కలిగివుండునట్లు "
+"చూచుకొనుము.\n"
+
+#: ../src/core/main.c:618
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "పునఃప్రారంభమునకు విఫలమైంది: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf కీ '%s' అనునది చెల్లని విలువునకు అమర్చబడింది\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "MateConf కీ %2$s నందు నిల్వవున్న %1$d విస్తృతి %3$d నుండి %4$dను దాటిపోయింది\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf కీ \"%s\" చెల్లని రకమునకు అమర్చబడింది\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"విరిగిపోయిన అనువర్తనములకు పరిష్కారములు అచేతనము చేయబడినవి. కొన్ని అనువర్తనములు సరిగా ప్రవర్తించక "
+"పోవచ్చును.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "ఫాంటు వివరణ \"%s\"ను MateConf కీ %sనుండి పార్శ్ చేయలేక పోయింది\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "ఆకృతీకరణ డాటాబేస్ నందు కనిపించిన \"%s\" మౌస్ బటన్ సవరణికి చెల్లునటువంటి విలువ కాదు\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "పనిస్థలముల సంఖ్యను %dకు అమర్చుటలో దోషము: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "పనిస్థలము %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"ఆకృతీకరణ డాటాబేస్ నందు కనిపించిన \"%s\" అనునది కీబందనము \"%s\" కొరకు చెల్లునటువంటి "
+"విలువకాదు\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "పనిస్థలము %dకు \"%s\" నామము అమర్చుటలో దోషము: %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "కంపోజిటర్ స్థితిని అమర్చుటలో దోషము: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "తెర %d ప్రదర్శన '%s' నందలిది చెల్లనిది\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"తెర %d ప్రదర్శన \"%s\" నందలిది యిప్పటికే విండో నిర్వాహికను కలిగివుంది; ప్రస్తుత విండో నిర్వాహికను "
+"పునఃస్థాపించుటకు --replace ఐచ్చికాన్ని ప్రయత్నించుము.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid "Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "తెర %d ప్రదర్శన \"%s\" పైన విండో నిర్వాహిక యెంపికను పొందలేక పోయింది\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "తెర %d ప్రదర్శన \"%s\"పైన యిప్పటికే విండో నిర్వాహికను కలిగివుంది\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "తెర %d ప్రదర్శన \"%s\"పైన విడుదల చేయలేకపోయింది\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+#| msgid ""
+#| "The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+#| "\n"
+#| "The parser is fairly liberal and allows lower or upper case, and also "
+#| "abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to "
+#| "the special string \"disabled\", then there will be no keybinding for "
+#| "this action."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"ఫార్మాట్ అనునది \"<Control>a\" వలె లేదా <Shift><Alt>F1\" వలె వుంటుంది.\n"
+"\n"
+"పార్శర్ అనునది అనువైనదిగా వుంటుంది మరియు చిన్న మరియు పెద్ద అక్షరములను అనుమతిస్తుంది, మరియు "
+"\"<Ctrl>\" మరియు \"<Ctrl>\" వంటి పొట్టిరూపాలను కూడా అనుమతిస్తుంది. మీరు ఐచ్చికాన్ని ప్రత్యేక "
+"స్ట్రింగు \"disabled\"కు అమర్చినట్లైతే, అప్పుడు ఈ చర్యకు యెటువంటి కీబందనము వుండదు."
+
+#: ../src/core/schema-bindings.c:177
+#| msgid ""
+#| "The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+#| "\n"
+#| "The parser is fairly liberal and allows lower or upper case, and also "
+#| "abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to "
+#| "the special string \"disabled\", then there will be no keybinding for "
+#| "this action.\n"
+#| "\n"
+#| "This keybinding may be reversed by holding down the \"shift\" key; "
+#| "therefore, \"shift\" cannot be one of the keys it uses."
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"ఫార్మాట్ అనునది \"<Control>a\" వలె లేదా <Shift><Alt>F1\" వలె వుంటుంది.\n"
+"\n"
+"పార్శర్ అనునది అనువైనదిగా వుంటుంది మరియు చిన్న మరియు పెద్ద అక్షరములను అనుమతిస్తుంది, మరియు "
+"\"<Ctrl>\" మరియు \"<Ctrl>\" వంటి పొట్టిరూపాలను కూడా అనుమతిస్తుంది. మీరు ఐచ్చికాన్ని ప్రత్యేక "
+"స్ట్రింగు \"disabled\"కు అమర్చినట్లైతే, అప్పుడు ఈ చర్యకు యెటువంటి కీబందనము వుండదు.\n"
+"\n"
+"ఈ కీబందనము \"shift\" కీను పట్టివుంచడం వలన వ్యతిరేకము కావచ్చును; అందువలన, ఇది వుపయోగించు "
+"కీలలో \"shift\" వుండకూడదు."
+
+#: ../src/core/session.c:845 ../src/core/session.c:852
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "డైరెక్టరీ '%s'ను సృష్టించలేక పోయింది: %s\n"
+
+#: ../src/core/session.c:862
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "విభాగపు దస్త్రము '%s'ను వ్రాయుట కొరకు తెరువలేక పోయింది: %s\n"
+
+#: ../src/core/session.c:1003
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "విభాగపు దస్త్రము '%s'ను వ్రాయుటలో దోషము: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "విభాగపు దస్త్రము '%s'ను మూయుటలో దోషము: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1101
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "దాచిన విభాగపు దస్త్రము చదువుటకు విఫలమైంది %s: %s\n"
+
+#: ../src/core/session.c:1140
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "దాచిన విభాగపు దస్త్రమును పార్శ్ చేయుటకు విఫలమైంది: %s\n"
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> యాట్రిబ్యూట్ చూడబడింది అయితే మనము యిప్పటికే విభాగపు IDను కలిగివున్నాము"
+
+#: ../src/core/session.c:1202 ../src/core/session.c:1277
+#: ../src/core/session.c:1309 ../src/core/session.c:1381
+#: ../src/core/session.c:1441
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "తెలియని యాట్రిబ్యూట్ %s మూలకం <%s> పైన"
+
+#: ../src/core/session.c:1219
+#, c-format
+msgid "nested <window> tag"
+msgstr "పునరావృత <window> టాగ్"
+
+#: ../src/core/session.c:1461
+#, c-format
+msgid "Unknown element %s"
+msgstr "తెలియని మూలకం %s"
+
+#: ../src/core/session.c:1812
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"ఈ విండోలు &quot;ప్రస్తుత అమర్పును దాయి&quot; మద్దతునీయవు అందువలన మీరు తరువాతి సారి "
+"లాగినైనప్పుడు మానవీయంగా పునఃప్రారంభించవలసి వుంటుంది."
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "డీబగ్ లాగ్ తెరుచుటలో విఫలమైంది: %s\n"
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "లాగ్ దస్త్రము %sను fdopen() చెయుటకు విఫలమైంది: %s\n"
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "తెరిచిన లాగ్ దస్త్రము %s\n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "వెర్బోస్ రీతికి మద్దతులేకుండా మెటాసిటి నిర్వర్తించబడింది\n"
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "విండో నిర్వాహిక: "
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr "విండో నిర్వాహిక నందు బగ్: "
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr "విండో నిర్వాహిక హెచ్చరిక: "
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr "విండో నిర్వాహిక దోషము: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "మెటాసిటి"
+
+#. first time through
+#: ../src/core/window.c:5627
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"ICCCM నందు తెలుపబడినట్లు WM_CLIENT_LEADER విండోపైన కాకుండా, విండో %s అనునది "
+"SM_CLIENT_IDను దానిపైనే అమర్చినది.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6192
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"విండో %s అనునది అది పునఃపరిమాణం అవలేదు అనే MWM హింటును అమర్చినది, అయితే కనిష్ట పరిమాణమును %d x "
+"%dగా మరియు గరిష్ట పరిమాణమును %d x %dగా అమర్చినది;యిది అంత అర్దవంతంగా లేదు.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "అనువర్తనము బూటకపు _NET_WM_PID %lu అమర్చినది\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s పైన)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (సూపర్‌వినియోగదారి వలె)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s వలె)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (వేరే వినియోగదారివలె)"
+
+#: ../src/core/window-props.c:1429
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "చెల్లని WM_TRANSIENT_FOR విండో 0x%lx అనునది %s కొరకు తెలుపబడింది.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"విండో 0x%lx లక్షణం %s కలిగివుంది\n"
+"అది రకము %sను ఫార్మాట్ %dను కలిగివుండాలి\n"
+"యదార్ధంగా రకము %s ఫార్మాట్ %d n_items %d కలిగివుంది.\n"
+"ఇది సాదారణంగా వొక అనువర్తనపు బగ్, విండో నిర్వాహిక బగ్ కాదు.\n"
+"విండో title=\"%s\" class=\"%s\" name=\"%s\" కలిగివుంది\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "లక్షణం %s విం‍డో 0x%lx పైన చెల్లని UTF-8 కలిగివుంది\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "లక్షణం %s విండో 0x%lx పైన చెల్లని UTF-8ను జాబితానందలి %d అంశముకొరకు కలిగివుంది\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "పనిస్థలము 1కు మారుము"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "పనిస్థలము 2కు మారుము"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "పనిస్థలము 3కు మారుము"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "పనిస్థలము 4కు మారుము"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "పనిస్థలము 5కు మారుము"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "పనిస్థలము 6కు మారుము"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "పనిస్థలము 7కు మారుము"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "పనిస్థలము 8కు మారుము"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "పనిస్థలము 9కు మారుము"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "పనిస్థలము 10కు మారుము"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "పనిస్థలము 11కు మారుము"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "పనిస్థలము 12కు మారుము"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "ప్రస్తుత పనిస్థలమునకు ఎడమవైపుని పనిస్థలమునకు మారుము"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "ప్రస్తుత పనిస్థలమునకు కుడివైపుని పనిస్థలమునకు మారుము"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "ప్రస్తుత పనిస్థలమునకు పైని పనిస్థలమునకు మార్చుము"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "ప్రస్తుత పనిస్థలమునకు క్రింది పనిస్థలమునకు మార్చుము"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "అనువర్తనము యొక్క విండోలమద్య కదులుము, పాపప్ విండో వుపయోగించి"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "అనువర్తనము యొక్క విండోలమద్య వెనుకకు కదులుము, పాపప్ విండో వుపయోగించి"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "విండోల మద్య కదులుము, పాపప్ విండో వుపయోగించి"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "విండోల మద్య వెనుకకు కదులుము, పాపప్ విండో వుపయోగించి"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "ప్యానల్సు మరియు డెస్కుటాపు మధ్యన కదులుము, పాపప్ విండో వుపయోగించి"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "ప్యానల్సు మరియు డెస్కుటాపు మద్యన వెనుకకు కదులుము, పాపప్ విండో వుపయోగించి"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "అనువర్తనము యొక్క విండోలమద్య తక్షణమే కదులుము"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "అనువర్తనము యొక్క విండోలమద్య వెనుకకు తక్షణమే కదులుము"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "విండోల మధ్య తక్షణమే కదులుము"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "విండోల మద్యన వెనుకకు తక్షణమే కదులుము"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "ప్యానల్సు మరియు డెస్కుటాపు మద్యన తక్షణమే కదులుము"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "ప్యానల్సు మరియు డెస్కుటాపు మద్యన వెనుకకు తక్షణమే కదులుము"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "అన్ని సాదారణ విండోలను మరుగున వుంచుము మరియు దృష్టిని డెస్కుటాపునకు వుంచుము"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "ప్యానల్ యొక్క ముఖ్యమెనూను చూపుము"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "ప్యానల్ యొక్క \"అనువర్తనము నడుపు\" డైలాగ్ పెట్టెను చూపుము"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "తెరపట్టును తీయుము"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "విండోయొక్క తెరపట్టును తీయుము"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "టెర్మినల్ నడుపుము"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "విండో మెనూను క్రియాశీలముచేయుము"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "పూర్తితెర రీతిని మార్చుము"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "గరిష్ట స్థితికి మార్చుము"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "ఒక విండో యెల్లప్పుడూ యితర విండోలపై కనబడుతూవుంటే మార్చుము"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "విండో పెద్దదిచేయి"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "విండో పూర్వస్థితికి వుంచుము"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "షేడెడ్ స్థితిని మార్చుము"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "విండో చిన్నది చేయుము"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "గవాక్షమును మూయుము"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "విండో కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "విండో పూర్వస్థితికి వుంచుము"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "విండో అన్ని పనిస్థలములపై వన్నా లేక వొకటే వున్నా మార్చుము"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "విండోను పనిస్థలము 1కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "విండోను పనిస్థలము 2కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "విండోను పనిస్థలము 3కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "విండోను పనిస్థలము 4కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "విండోను పనిస్థలము 5కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "విండోను పనిస్థలము 6కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "విండోను పనిస్థలము 7కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "విండోను పనిస్థలము 8కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "విండోను పనిస్థలము 9కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "విండోను పనిస్థలము 10కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "విండోను పనిస్థలము 11కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "విండోను పనిస్థలము 12కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "విండోను వొక పనిస్థలము ఎడమనకు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "విండోను వొక పనిస్థలము కుడికు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "విండోను వొక పనిస్థలము పైనకు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "విండోను వొక పనిస్థలము క్రిందనకు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "ఒక విండో వేరొక విండోతో కప్పివుంటే దానిని వృద్దిచేయుము, లేదా దానిని తగ్గించుము"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "విండోను యితర విండోలపైన వృద్దిచేయుము"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "విండోను క్రింది యితర విండోలకు తగ్గించుము"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "విండోను నిలువుగా పెద్దదిచేయుము"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "విండోను అడ్డముగా పెద్దదిచేయుము"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "విండోను ఉత్తర-పశ్చిమం (పైఎడమ) మూలకు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "విండోను ఉత్తర-తూర్పు (పైకుడి) మూలకు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "విండోను దక్షిణ-పశ్చిమం (క్రింది ఎడమ) మూలకు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "విండోను దక్షిణ-తూర్పు (క్రింది కుడి) మూలకు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "విండోను ఉత్తరం (పైన)కు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "విండోను దక్షిణ (క్రింది)నకు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "విండోను తూర్పు (కుడి) వైపునకు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "విండోను పశ్చిమ (ఎడమ) వైపునకు కదుల్చుము"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "విండోను కేంద్రమునకు కదుల్చుము"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(యింకా అభివృద్దిపరచలేదు) నావిగేషన్ అనునది అనువర్తనములను అనుసరిస్తుంది విండోలనుకాదు"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"ఒక ఫాంటు వివరణ స్ట్రింగ్ విండో శీర్షికపట్టీల కొరకు ఫాంటును వివరిస్తుంది. titlebar_font_size "
+"ఐచ్చికము 0కు అమర్చితేనే వివరణనుండి పరిమాణం వుపయోగించబడుతుంది. titlebar_uses_desktop_font "
+"ఐచ్చికము సత్యంకు అమర్చితేనే ఈ ఐచ్చికము అచేతనము చేయబడతుంది."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "శీర్షిక పట్టీ రెండుసార్లు-నొక్కినప్పుడు జరుగవలసిన చర్య"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "శీర్షిక పట్టీ మద్యనొక్కు-నొక్కినప్పుడు జరుగవలసిన చర్య"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "శీర్షిక పట్టీ కుడి-నొక్కు నొక్కినప్పుడు జరుగవలసిన చర్య"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "శీర్షికపట్టీపై బటన్సు అమరిక"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"శీర్షిక పట్టీపై బటన్సు అమరిక. విలువ స్ట్రింగై వుండాలి,\"menu:minimize,maximize,spacer,close"
+"\" వంటివి; కోలన్ అనునది విండోయొక్క ఎడమ మూలను కుడి మూలనుండి వేరుచేస్తుంది, మరియు బటన్ నామములు "
+"కామాతో వేరుచేయబడునవి. నకిలీ బటన్సు అనుమతించబడవు. తెలియని బటన్సు వదిలివేయబడతాయి అలా బటన్సు భవిష్య "
+"మెటాసిటి వర్షన్లనందు పాత వర్షన్లను బ్రేక్ చేయకుండా జతచేయగలుగుతాము. రెండు పక్కపక్క బటన్లకు మద్యన "
+"స్పేస్‌ను చేర్చుటకు వొక ప్రత్యేక స్పేసర్ టాగ్ వుపయోగించబడుతుంది."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "దృష్టివుంచిన విండోను స్వయంచాలకంగా రెట్టింపుచేస్తుంది"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+"ఈ సవరణి కీను పట్టివుంచినప్పుడు విండోపైన నొక్కుటవలన విండో కదులును (ఎడమ నొక్కుకు), విండో "
+"పునఃపరిమాణం జరుగును ( మద్య నొక్కుకు), లేదా విండో మెనూ చూపును (కుడి నొక్కుకు). ఎడమ మరియు "
+"కుడి ఆపరేషన్లు మార్చుకొనవచ్చును \"mouse_button_resize\" కీను వుపయోగించి. ఉదాహరణకు సవరణి "
+"\"&lt;Alt&gt;\" లేదా \"&lt;Super&gt;\"గా తెలియజేయటమైనది."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "కీబందనములకు స్పందనగా నడుపుటకు ఆదేశములు"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "కంపోజిటింగ్ నిర్వాహిక"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "కొత్త విండోలు యెలా దృష్టిని పొందవలెనో నియంత్రిస్తుంది"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "ప్రస్తుత థీమ్"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "స్వయంచాలకంగా రెట్టింపగు ఐచ్చికం కొరకు ఆలస్యం మిల్లిసెకనులలో"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "మెటాసిటి కంపోజిటింగ్ నిర్వాహిక అవునోకాదో నిర్ధారిస్తుంది."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"వినబడే 'బీప్‌లను' జనియింపచేయవలసింది అనువర్తనములో లేక సిస్టమో నిర్ణయిస్తుంది; నిశ్శబ్ద 'బీప్‌లను' "
+"అనుమతించుటకు 'విజువల్ బెల్'తో కంజక్షన్ నందు వినియోగించవచ్చు."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "పాత లేక విరిగిన అనువర్తనములకు అవసరమైన తగనిసౌలభ్యాలను అచేతనము చేయుము"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "విజువల్ బెల్ చేతనముచేయుము"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"సత్యమునకు అమర్చితే, మరియు దృష్టి రీతి \"sloppy\" లేదా \"mouse\" అయితే అప్పుడు దృష్టిపెట్టిన విండో "
+"auto_raise_delay కీ ద్వారా తెలుపబడిన సమయం తర్వాత స్వయంచాలకంగా రెట్టింపుచేయబడుతుంది. లాగి-మరియు-"
+"వదులునప్పుడు విండోను ప్రవేశపెట్టుట లేక, రెట్టింపు చేయుటకు విండోపై నొక్కుట మొదలగువాటికి సంభందించినది "
+"కాదు."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"సత్యమైతే, విండో శీర్షికల కొరకు titlebar_font ఐచ్చికాన్ని వదిలివేసి, విండో శీర్షికల కొరకు ప్రామాణిక "
+"అనువర్తనము ఫాంటును వుపయోగించుము."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"నిజమైతే, మెటాసిటీ వైర్‌ఫ్రేములను వుపయోగించి, యానిమేషన్లను తప్పించి, లేదా యితర విధాలద్వారా వినియోగదారికి తక్కువ "
+"ప్రతిపుష్టిని(ఫీడ్‌బ్యాక్) యిస్తుంది. చాలామంది వినియోగదారులకు వాడకంలో యిదివొక గుర్తించదగ్గ తగ్గింపు, అయితే పాత "
+"అనువర్తనములు పనిచేయుటకు అనుమతినిస్తుంది, మరియు టెర్మినల్ సేవికలు అమ్ముడుపోవుటకు వుపయోగపడవచ్చు. "
+"ఏమైనప్పటికి, వైర్‌ఫ్రేమ్ సౌలభ్యము యాక్సెస్‌బిలిటి ఆనైవున్నప్పుడు అచేతనము చేయబడుతుంది."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"నిజమైతే, మెటాసిటి విండోలకన్నా అనువర్తనముల పట్ల పనిచేస్తుంది. ఈ విషయం కొంచెం సంక్షిప్తంగా వుటుంది, "
+"సాదారణంగా అనువర్తన-ఆధారిత అమర్పు అంటే ఎక్కువగా Macవలె తక్కువగా Windowsవలె వుంటుంది. అనువర్తన-"
+"ఆదారిత రీతిలో మీరు విండోపైన సూచికవుంచితే, ఆ అనువర్తనములోని అన్ని విండోలు లెగువబడతాయి. ఇంకా, అనువర్తన-"
+"ఆధారిత రీతినందు, దృష్టిసారించి(ఫోకస్) నొక్కేనొక్కులు యితర అనువర్తనములలోని విండోలకు వెళ్ళవు. ఏమైనప్పటికి, "
+"అనువర్తన-ఆధారిత రీతి యింకా పెద్దగా అభివృద్ది పరచబడలేదు."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "సత్యమైతే, తక్కువ వనరుల వినియోగముకు తగ్గించును"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "సవరించిన విండో నొక్కు చర్యలకు వుపయోగించటానికి సవరణి"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "పనిస్థలము నామము"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "పనిస్థలముల సంఖ్య"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"పనిస్థలముల సంఖ్య. తప్పక సున్నాకన్నా యెక్కువ వుండాలి, మరియు ప్రమాదవశాత్తు మరీ యెక్కువ పనిస్థలములను "
+"అడుగుటద్వారా డెస్కుటాపును అవినియోగపరచకుండా నిర్ధిష్ట గరిష్టాన్ని కలిగివుండాలి."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "నిర్వచించిన ఆదేశమును నడుపుము"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"\"mouse_button_modifier\" నందు యిచ్చిన కీను నొక్కివుంచినప్పుడు కుడి బటన్‌తో పునఃపరిమాణము "
+"చేయుటకు మరియు మద్య బటన్‌తో మెనూను చూపుటకు దీనిని నిజానికి అమర్చుము; ఇందుకు వ్యతిరేకంగా పనిచేయుటకు "
+"దీనిని అసత్యమునకు అమర్చుము."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"ఈ ఐచ్చికాన్ని అసత్యమునకు మార్చుటవలన బగ్గీ ప్రవర్తనకు కారణమౌతుంది, అందువలన వినియోగదారులు దీనిని "
+"మార్చకుండా వుండుట గట్టిగా సిఫార్సు చేయడమైంది. (ఉ.దా. క్లైంట్ ఏరియాలో నొక్కుట, విండోను కదుల్చుట లేదా "
+"పునఃపరిమాణం చేయుట) వంటి చాలా చర్యలు సాదారణంగా విండోను వుప-ప్రభావంగా లేవనెత్తుతాయి. http://"
+"bugzilla.gnome.org/show_bug.cgi?id=445447#c6 ను చూడండి. ఈ ఐచ్చికం అసత్యంగా "
+"వున్నాకూడా, విండో పైన యెక్కడైనా alt-ఎడమ-నొక్కు నొక్కితే అది లేవనెత్తబడుతుంది, విండో అలంకరణలపై మామూలుగా "
+"నొక్కినా లెవనెత్తబడతుంది, లేదా పేజర్లనుండి ప్రత్యేక సందేశాలు వచ్చినా (కర్తవ్యజాబితా ఆప్లెట్స్ నుండి "
+"క్రియాశీలపరచమని అభ్యర్దనలు) వచ్చినా సరే. దృష్టి-సారించుటక-నొక్కు రీతిలో ఈ ఐచ్చికము ప్రస్తుతం "
+"అచేతనంగావుంది. నొక్కినప్పుడు-లేవనెత్తు అనునది అసత్యంగా వున్నప్పుడు విండో లేవనెత్తుటకు గల మార్గాలు "
+"అనువర్తనాలనుండి ప్రోగ్రామెటిక్ అభ్యర్ధనలను కలిగి వుండవు. మీరు వొక అనువర్తన అభివృద్దికారి అయివుండి ఈ "
+"అమరిక అచేతనపరచుట వలన మీ అనువర్తనమును కంపైల్ చేయలేని వినియోగదారిని కలిగివుంటే, వారు వారి విండోమేనేజర్‌ను "
+"బ్రేక్ చేయుట _వారి_తప్పని చెప్పండి మరియు ఈ ఐచ్చికాన్ని వారు సత్యమునకు అమర్చాలి లేదా వారు అభ్యర్దించిన \"బగ్"
+"\"తో వుండాలి."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"కొన్ని అనువర్తనముల అసంబర్ధ విశదీకరణలు విండో నిర్వాహిక తప్పుగా ప్రవర్తించటకు కారణం కావచ్చు. ఈ "
+"ఐచ్చికము మెటాసిటి ఖచ్చితముగా సరైన రీతిలో వుండునట్లు చేస్తుంది, అది మరింత స్థిరమైన వినియోగదారి యింటర్ఫేసును "
+"అందిస్తుంది, తద్వారా తప్పుగా ప్రవర్తించే అనువర్తనములు నడుపవలసిన అవసరం వుండదు."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "సిస్టమ్ బెల్ వినబడుతోంది"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"సిస్టమ్ బెల్ కాని లేదా యితర అనువర్తనము బెల్ కాని మ్రోగినప్పుడు మెటాసిటి దృశ్య సూచనను యెలా అభివృద్దిపరచాలో "
+"తెలియచేస్తుంది. ప్రస్తుతం రెండు విధానాలు వున్నాయి, \"పూర్తితెర\", యిది తెరమొత్తం తెలుపు-నలుపు "
+"మెరుపులు యిస్తుంది, మరియు \"చట్రము-ఫ్లాష్\" యిది గంట మ్రోగించిన అనువర్తనము యొక్క శీర్షికపట్టీను "
+"మెరిపిస్తుంది. ఒకవేళ గంటను మ్రోగించిన అనువర్తనము తెలియకపోతే (సాదారణంగా అప్రమేయ \"సిస్టమ్ బీప్\" "
+"వంటిది), ప్రస్తుతం వున్న విండోయొక్క శీర్షికపట్టీ మెరుస్తుంది."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"ఈ ఆదేశాలకు చెందినటువంటి కీ బందనాలను /apps/marco/global_keybindings/run_command_N "
+"కీలు నిర్వచిస్తాయి. run_command_N కొరకు కీబందనమును వత్తుట అనేది command_Nను నిర్వర్తిస్తుంది."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"ఈ అమరికద్వారా తెలుపబడిన ఆదేశము ప్రేరేపించబడుటకు కారణమగు కీబందనాన్ని /apps/marco/"
+"global_keybindings/run_command_screenshot కీ నిర్వచిస్తుంది."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"ఈ అమరికద్వారా తెలుపబడిన ఆదేశము ప్రేరేపించబడుటకు కారణమగు కీబందనాన్ని /apps/marco/"
+"global_keybindings/run_command_window_screenshot కీ నిర్వచిస్తుంది."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"/apps/marco/keybinding_commands నందు సంభందిత-సంఖ్యగల ఆదేశమును నడిపే కీబందనము "
+"ఫార్మాట్ చూడటానికి యిలా వుంటుంది \"&lt;Control&gt;a\" లేదా \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". పార్శర్ చక్కగా పనిచేస్తుంది మరియు చిన్న మరియు పెద్ద అక్షరాలను అనుమతిస్తుంది, \"&lt;Ctl&gt;\" "
+"మరియు\"&lt;Ctrl&gt;\" వంటి అబ్రివేషన్లను కూడా అనుమతిస్తుంది. మీరు ఐచ్చికాన్ని ప్రత్యేక స్ట్రింగ్ "
+"\"disabled\"కు అమర్చితే అప్పుడు ఈ చర్య కొరకు యెటువంటి కీబందనం వుండదు."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "పనిస్థలము నామము"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "తెరపట్టు(స్క్రీన్‌షాట్) ఆదేశము"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "విండో హద్దులు, శీర్షికపట్టీ, మరియు మిగతావి కనిపించు విధానాన్ని థీమ్ నిర్ణయిస్తుంది."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"auto_raise సత్యమునకు అమర్చినట్లైతే విండో రెట్టింపు చేయుటకు ముందుగా పట్టవలసిన సమయం. పట్టేసమయం "
+"సెకనులో వెయ్యోవంతులలో యివ్వాలి."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"విండో సూచిక రీతి విండోలు యెలా క్రియాశీలం చేయబడతాయో సూచిస్తుంది. ఇది మూడు విలువలను కలిగివుంది; \"click"
+"\" అంటే విండోలను సూచించుటకు వాటిని తప్పక నొక్కవలెను, \"sloppy\" మౌస్ విండోలనందు ప్రవేశించగానే "
+"విండోలు సూచించబడతాయి, మరియు \"mouse\" అంటే మౌస్ విండోల నందు ప్రవేశించగానే సూచించబడతాయి మౌస్ "
+"విండోలనుండి బయటకురాగానే సూచనను కోల్పోతాయి."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "విండో తెరపట్టు(స్క్రీన్‌షాట్) ఆదేశము"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ఈ ఐచ్చికము శీర్షిక పట్టీపైన రెండు-పర్యాయాలు నొక్కినప్పుడు ప్రభావాలను నిర్ణయిస్తుంది. ప్రస్తుతం "
+"చెల్లునటువంటి విలువలు 'toggle_shade', యిది విండోను షేడ్/అన్‌షేడ్ చేస్తుంది, "
+"'toggle_maximize_horizontally' మరియు 'toggle_maximize_vertically' యిది ఆదేదిశలో "
+"విండోను పెద్దది/చిన్నది చేస్తుంది, 'minimize' యిది విండోను చిన్నది చేస్తుంది, 'shade' యిది విండోను పైకి "
+"చుడుతుంది, 'menu' యిది విండో మెనూను ప్రదర్శింప చేస్తుంది, 'lower' యిది విండోను యితర విండోల వెనుక "
+"వుంచుతుంది, మరియు 'none' యిది ఏమీ చేయదు."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ఈ ఐచ్చికము శీర్షిక పట్టీపైన మద్య-నొక్కు నొక్కినప్పుడు ప్రభావాలను నిర్ణయిస్తుంది. ప్రస్తుతం చెల్లునటువంటి "
+"విలువలు 'toggle_shade', యిది విండోను షేడ్/అన్‌షేడ్ చేస్తుంది, "
+"'toggle_maximize_horizontally' మరియు 'toggle_maximize_vertically' యిది ఆదేదిశలో "
+"విండోను పెద్దది/చిన్నది చేస్తుంది, 'minimize' యిది విండోను చిన్నది చేస్తుంది, 'shade' యిది విండోను పైకి "
+"చుడుతుంది, 'menu' యిది విండో మెనూను ప్రదర్శింప చేస్తుంది, 'lower' యిది విండోను యితర విండోల వెనుక "
+"వుంచుతుంది, మరియు 'none' యిది ఏమీ చేయదు."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ఈ ఐచ్చికము శీర్షిక పట్టీపైన కుడి-నొక్కు నొక్కినప్పుడు ప్రభావాలను నిర్ణయిస్తుంది. ప్రస్తుతం చెల్లునటువంటి "
+"విలువలు 'toggle_shade', యిది విండోను షేడ్/అన్‌షేడ్ చేస్తుంది, "
+"'toggle_maximize_horizontally' మరియు 'toggle_maximize_vertically' యిది ఆదేదిశలో "
+"విండోను పెద్దది/చిన్నది చేస్తుంది, 'minimize' యిది విండోను చిన్నది చేస్తుంది, 'shade' యిది విండోను పైకి "
+"చుడుతుంది, 'menu' యిది విండో మెనూను ప్రదర్శింప చేస్తుంది, 'lower' యిది విండోను యితర విండోల వెనుక "
+"వుంచుతుంది, మరియు 'none' యిది ఏమీ చేయదు."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"కొత్తగా సృష్టించబడిన విండోలు యెలా సూచన పొందుతున్నాయి అనేదానిపై ఈ ఐచ్చికము అదనపు నియంత్రణను యిస్తుంది. "
+"ఇది రెండు విలువలను కలిగివుంది; \"smart\" వినియోగదారి యొక్క సాదారణ సూచనరీతిని ఆపాదిస్తుంది, మరియు "
+"\"strict\" టెర్మినల్ నుండి ప్రారంభించబడిన విండోలు సూచించబడకుండా చేస్తుంది."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"అనువర్తనము లేదా సిస్టమ్ 'గంటను' లేదా 'బీప్'ను మ్రోగించనప్పుడు దృశ్య సంకేతమును ఆన్ చేస్తుంది; "
+"వినుట-కష్టతరం అయినవాళ్ళకు మరియు శబ్ధపూరిత వాతావరణంలో వున్న వారికి వుపయోగకరంగా వుటుంది."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "విండో శీర్షికలనందు ప్రామాణిక సిస్టమ్ ఫాంటును వుపయోగించుము"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "విజువల్ బెల్ రకము"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "రెట్టింపు కావడం అనునది యితర వినియోగదారి యింటరాక్షన్సుకు ఉప-ప్రభావంలా వుండాలా"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "కుడి బటన్‌తో పునఃపరిమాణము చేయాలా"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "విండో దృష్టి రీతి"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "విండో శీర్షిక ఫాంటు"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "వినియోగము: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "గవాక్షమును మూసివేయు"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "విండో మెనూ"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "విండోను క్రిందకుమూయుము"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "విండోను పెద్దదిచేయుము"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "విండోను పూర్వస్థితికి వుంచుము"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "విండోను చుట్టుము"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "విండో చుట్టుతీయుము"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "విండోను పైన వుంచుము"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "విండోను పైననుండి తీసివేయుము"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "ఎల్లప్పుడూ కనిపిస్తున్న పనిస్థలము"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "విండో వొక పనిస్థలమునందు మాత్రమే వుంచుము"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "క్రిందకుచిన్నదిచేయి (_n)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "పెద్దదిచేయి (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "పెద్దదిచేయకు (_x)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "చుట్టుము (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "చుట్టుతీయుము (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "జరుపు(_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "పున: పరిమాణము(_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "శీర్షికపట్టీను తెరపైనకు కదుపుము (_s)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "ఎల్లప్పుడూ పైన వుంచుము (_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "ఎల్లప్పుడూ కనిపిస్తున్న పనిస్థలమునందు (_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "ఈ పనిస్థలమునందు మాత్రమే (_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "పనిచేస్తున్న చోటునుండీ ఎడమవైపుకు కదులు (_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "పనిచేస్తున్న చోటునుండీ కుడివైపుకు కదులు (_i)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "పనిచేస్తున్న చోటునుండీ పైకి కదులు (_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "పనిచేస్తున్న చోటునుండీ కిందకు కదులు (_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "మూయుము (_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "పనిస్థలము %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "పనిస్థలము 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "పనిస్థలము %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "వేరే పనిచేసెచోటుకి కదులు (_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "ఆల్ట్"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "సూపర్"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "హైపర్"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "పైనకు"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "క్రిందకు"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "ఎడమ"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "కుడి"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "చట్రపు జామెట్రీ \"%s\" కొలతను తెలుపుటలేదు"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "చట్రపు జామెట్రీ కొలత \"%s\"ను హద్దు \"%s\" కొరకు తెలుపుటలేదు"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "బటన్ యాస్పెక్ట్ నిష్పత్తి %g తగినట్లుగా లేదు"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "చట్రపు జామెట్రీ బటన్సు యొక్క పరిమాణమును తెలుపుటలేదు"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "గ్రేడియంట్లు కనీసం రెండు రంగులను కలిగివుండాలి"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK రంగు విశదీకరణ తప్పక స్థితిని బ్రాకెట్లనందు కలిగివుండాలి, ఉ.దా. gtk:fg[NORMAL] యిచట NORMAL "
+"అంటే స్థితి; \"%s\" పార్శ్ చేయలేదు"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK రంగు విశదీకరణము తప్పక దగ్గిరి బ్రాకెట్‌ను స్థితి తర్వాత గలిగివుండాలి, ఉ.దా. gtk:fg[NORMAL] "
+"యిచట NORMAL అనునది స్థితి, \"%s\" పార్శ్ చేయలేదు"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "స్థితి \"%s\"ను రంగు విశదీకరణనందు అర్ధముచేసికొనలేదు"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "రంగు విశదీకరణలోని రంగు మూలకం \"%s\"ను అర్ధం చేసుకోలేదు"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "\"blend/bg_color/fg_color/alpha\" యిది బ్లెండ్ ఫార్మాట్, \"%s\" ఈ ఫార్మాటులో యిమడదు."
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "మిశ్రమ(బ్లెండెడ్) రంగులో ఆల్ఫా విలువ \"%s\"ను పార్శ్ చేయలేదు"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "మిశ్రమ(బ్లెండెడ్) రంగులోని ఆల్ఫా విలువ \"%s\" అనునది 0.0 మరియు 1.0 మద్యలేదు"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid "Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "\"shade/base_color/factor\" అనునది షేడ్ ఫార్మాట్, \"%s\" ఫార్మాటును అమర్చలేదు"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "షేడెడ్ రంగులో షేడ్ గుణకం \"%s\"ను పార్శ్ చేయలేక పోయింది"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "షేడెడ్ రంగులోని షేడ్ గుణకం \"%s\" ఋణాంకము"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "రంగు \"%s\"ను పార్శ్ చేయలేదు"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "అనుమతించుటకు వీలుపడని ఆక్షరం '%s'ను కోఆర్డినేట్ సమీకరణం కలిగివుంది"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "పార్శ్ చేయటానికి వీలుపడని ఫ్లోటింగ్ సంఖ్య '%s'ను కోఆర్డినేట్ సమీకరణము కలిగివుంది"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "పార్శ్ చేయటానికి వీలుపడని పూర్ణాంకము '%s'ను కోఆర్డినేట్ సమీకరణము కలిగివుంది"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "ఈ పాఠ్యము ప్రారంభములో కోఆర్డినేట్ సమీకరణం తెలియని ఆపరేటరును కలిగివుంది: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "కోఆర్డినేట్ సమీకరణము ఖాళీగావుంది లేదా అర్ధముకావుటలేదు"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "కోఆర్డినేట్ సమీకరణము సున్నాతో భాగహారము అను ఫలితాన్నిస్తోంది"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid "Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "కోఆర్డినేట్ సమీకరణము mod ఆపరేటర్‌ను ఫ్లోటింగ్-పాయింట్ సంఖ్యపై వుపయోగించుటకు ప్రయత్నిస్తోంది"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid "Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "ఆపరెండ్ కావలసినచోట కోఆర్డినేట్ సమీకరణము ఆపరేటర్ \"%s\"ను కలిగివుంది"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "ఆపరేటర్ కావలసినచోట కోఆర్డినేట్ సమీకరణము ఆపరెండ్‌ను కలిగివుంది"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "కోఆర్డినేట్ సమీకరణము ఆపరెండ్‌కు బదులుగా ఆపరేటరుతో ముగియబడింది"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"కోఆర్డినేట్ సమీకరణము మధ్యలో యెటువంటి ఆపరెండ్ లేకుండా ఆపరేటర్ \"%c\" మరియు ఆపరేటర్ \"%c\"ను "
+"కలిగివుంది"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "కోఆర్డినేట్ సమీకరణము తెలియని చరరాశి లేదా స్థిరరాశిని \"%s\" కలిగివుంది"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "కోఆర్డినేట్ సమీకరణము పార్శర్ దాని బఫర్‌ను మించిపోయినది."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "కోఆర్డినేట్ సమీకరణము పెరాంథసిస్ తెరిచిలేకుండా మూసినవి కలిగివుంది"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "కోఆర్డినేట్ సమీకరణము మూసిన పెరాంథసిస్‌ను కలిగిలేకుండా తెరిసినవి కలిగివుంది"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "కోఆర్డినేట్ సమీకరణము ఆపరేటర్లను కాని ఆపరెండ్లను కాని కలిగివున్నట్లులేదు"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "దోషపూరిత పలితాన్ని యిచ్చు సమీకరణమును థీమ్ కలిగివుంది: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> ఈ చట్రపు శైలికి "
+"తప్పక తెలుపవలెను"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid "Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "<frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/> తప్పిపోయినది"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "థీమ్ \"%s\" లోడ్ చేయుటలో విఫలమైంది: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "ఎటువంటి <%s> అమర్చబడలేదు థీమ్ \"%s\" కొరకు"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"విండో రకము \"%s\" కొరకు థీమ్ \"%s\" నందు యెటువంటి చట్రపు శైలి అమర్చబడలేదు, వొక <window "
+"type=\"%s\" style_set=\"whatever\"/> మూలకం జతచేయుము"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid "User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "వినియోగదారి-నిర్వచిత స్థరిరాశులు తప్పక పెద్ద అక్షరముతో ప్రారంభించబడాలి; \"%s\" అలా లేదు"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "స్థిరరాశి \"%s\" యిప్పటికే నిర్వచింపడివుంది"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "ఎటువంటి \"%s\" మూల వస్తువు పై ఆపాదించు <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "గీత %d అక్షరం %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "ఆపాదించుట \"%s\" ఒక దానిపై రెండుసార్లు మళ్ళీచేయబడిన <%s> మూల వస్తువు"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "ఆపాదించుట \"%s\" పై నిస్సారము <%s> ఈ సంధర్భంలో మూల వాక్యము"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" వొక యింటీజర్‌లా పార్శ్ చేయలేము"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "ట్రెయిలింగ్ అక్షరములు \"%s\"ను స్ట్రింగు \"%s\" నందు అర్దముచేసుకోలేదు"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "పూర్ణాంకము %ld తప్పక ధనరాశి కావాలి"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "పూర్ణాంకము %ld మరీ పెద్దది, ప్రస్తుత గరిష్టము %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "ఫ్లోటింగ్ పాయింట్ సంఖ్యవలె \"%s\"ను పార్శ్ చేయలేకపోయింది"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "బూలియన్ విలువలు తప్పక \"సత్యము\" లేదా \"అసత్యము\" కావాలి \"%s\" కాదు"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "కోణము తప్పక 0.0 మరియు 360.0 మధ్య వుండాలి, %gగా వుంది\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "అల్ఫా అనునది తప్పక 0.0 (అదృశ్యంగా) మరియు 1.0 (పూర్తి ఒపాక్యూ) మద్య వుండాలి, %gగా వుంది\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"చెల్లని శీర్షిక స్కేల్ \"%s\" (తప్పక వీటిలో వొకటిగా వుండాలి xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> నామము \"%s\" రెండవసారి వుపయోగించబడింది"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> మాత్రుక(పేరెంట్) \"%s\" నిర్వచింపబడిలేదు"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> జియోమెట్రీ \"%s\" నిర్వచింపబడిలేదు"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> తప్పక జియెమెట్రీను లేదా జియెమెట్రీను కలిగివున్న మాత్రుకను తెలుపవలెను"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "అల్ఫా విలువ అర్ధవంతంగా వుండుటకు మీరు తప్పక బ్యాక్‌గ్రౌండును తెలుపవలెను"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "తెలియని రకము \"%s\" మూలకం <%s> పైన"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "తెలియని style_set \"%s\" మూలకం <%s> పైన"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "విండో రకము \"%s\"కు యిప్పటికే వొక శైలి అమర్చబడింది"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "<%s> మూల వస్తువు <%s> క్రింద అనుమతించబడవు"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"బటన్ల కొరకు \"button_width\"/\"button_height\" మరియు \"aspect_ratio\" రెంటిని "
+"తెలుపలేదు"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "\"%s\" దూరం తెలియనిది"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "ఏస్పెక్ట్ రేషియో \"%s\" తెలియనిది"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "హద్దు \"%s\" తెలియనిది"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "మూలకం <%s> పైన యెటువంటి \"start_angle\" లేదా \"from\" యాట్రిబ్యూట్ లేదు"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "మూలకం <%s> పైన యెటువంటి \"extent_angle\" లేదా \"to\" యాట్రిబ్యూట్ లేదు"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "గ్రేడియంట్ రకమునకు \"%s\" విలువ అర్దము కాలేదు"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "ఫిల్ రకము \"%s\"ను మూలకం <%s> కొరకు అర్దము కాలేదు"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "స్థితి \"%s\" మూలకం <%s> కొరకు అర్దము కాలేదు"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "షాడో \"%s\" మూలకం <%s> కొరకు అర్దము కాలేదు"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "ఏరో \"%s\" మూలకం <%s> కొరకు అర్దము కాలేదు"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "ఏ <draw_ops> పిలువబడిన \"%s\" నిర్వచింపబడలేదు"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "draw_ops \"%s\" కలుపుకొని యిక్కడ ఆవృత సంప్రదింపును సృష్టించేది"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "చట్రము ముక్క కొరకు తెలియని స్థానము \"%s\""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "చట్రము శైలి యిప్పటికే స్థానము %s వద్ద ముక్కను కలిగివుంది"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "ఎటువంటి <draw_ops> నామము \"%s\"తో నిర్వచింపబడిలేవు"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "బటన్ కొరకు తెలియని ప్రమేయం \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "బటన్ ప్రమేయం \"%s\" ఈ వర్షన్ (%d, %d అవసరము) నందు లేదు"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "బటన్ కొరకు తెలియని స్థితి \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "ప్రమేయం %s స్థితి %s కొరకు చట్రము శైలి యిప్పటికే బటన్ కలిగివుంది"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" అనునది ఫోకస్ యాట్రిబ్యూట్‌నకు చెల్లునటువంటి విలువ కాదు"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" అనునది స్థితి యాట్రిబ్యూట్‌నకు చెల్లునటువంటి విలువకాదు"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" అని పిలువబడే శైలి యింకా నిర్వచింపబడిలేదు"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "పునఃపరిమాణ యాట్రిబ్యూట్‌నకు \"%s\" చెల్లునటువంటి విలువకాదు"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "మూలకం <%s> పైన పెద్దదిచేయబడిన/షేడ్‌చేయబడిన స్థితుల కొరకు \"resize\" యాట్రిబ్యూట్‌ను కలిగివుండ కూడదు"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid "Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "మూలకం <%s> పైన పెద్దదిచేయబడిన స్థితి కొరకు \"resize\" యాట్రిబ్యూట్‌ను కలిగివుండ కూడదు"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "స్థితి %s పునఃపరిమాణము %s ఫోకస్ %s కొరకు శైలి యిప్పటికే తెలుపబడింది"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "స్థితి %s ఫోకస్ %s కొరకు స్థితి యిప్పటికే తెలుపబడింది"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"రెండు draw_opsను <piece> మూలకంకు (draw_ops యాట్రిబ్యూట్ తెలిపిన థీమ్ మరియు <draw_ops> "
+"మూలకం, లేదా తెలుపబడిన రెండు మూలకాలు) కలిగివుండలేదు"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"రెండు draw_opsను <button> మూలకంకు (draw_ops యాట్రిబ్యూట్ తెలిపిన థీమ్ మరియు <draw_ops> "
+"మూలకం, లేదా తెలుపబడిన రెండు మూలకాలు) కలిగివుండలేదు"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"రెండు draw_opsను <menu_icon> మూలకంకు (draw_ops యాట్రిబ్యూట్ తెలిపిన థీమ్ మరియు "
+"<draw_ops> మూలకం, లేదా తెలుపబడిన రెండు మూలకాలు) కలిగివుండలేదు"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "థీమ్ నందు బయటి మూలకం <marco_theme> <%s> కాకూడదు"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid "Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "మూలకం <%s> అనునది name/author/date/description మూలకంనందు అనుమతించబడదు"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "మూలకం <%s> అనునది <constant> మూలకంనందు అనుమతించబడదు"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid "Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "మూలకం <%s> అనునది distance/border/aspect_ratio మూలకంనందు అనుమతించబడదు"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "మూలకము <%s> అనునది డ్రా ఆపరేషన్ మూలకంనందు అనుమతించబడదు"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "మూల వస్తువు <%s> లోపలికి అనుమతించబడదు ఒక <%s> మూల వస్తువు"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "చట్రపు ముక్క కొరకు యెటువంటి draw_ops అందివ్వబడలేదు"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "బటన్ కొరకు యెటువంటి draw_ops అందివ్వబడలేదు"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> మూల వస్తువు లోపల ఎటువంటి పాఠం అనుమతించబడదు"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "ఈ థీమ్ కొరకు <%s> రెండుసార్లు తెలుపబడింది"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "థీమ్ %s కొరకు విలువైన ఫైలును కనుగొనుటలో విఫలమైంది\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "థీమ్ ఫైలు %s అనునది root <marco_theme> మూలకం కలిగిలేదు"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/విండోస్ (_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Windows/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Windows/_Dialog"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/విండోస్/మోడల్ డైలాగ్ (_M)/విండోస"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/విండోస్/సౌలభ్యము (_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/విండోస్/స్ప్లాష్‌తెర (_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/విండోస్/పై డాక్ (_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/విండోస్/క్రింది డాక్ (_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/విండోస్/ఎడమ డాక్ (_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/విండోస్/కుడి డాక్ (_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/విండోస్/అన్ని డాక్‌లు (_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/విండోస్/రంగస్థలం (_k)"
+
+#: ../src/ui/theme-viewer.c:136
+msgid "Open another one of these windows"
+msgstr "ఈ విండోలయొక్క వేరొక దానిని తెరువుము"
+
+#: ../src/ui/theme-viewer.c:143
+msgid "This is a demo button with an 'open' icon"
+msgstr "ఇది 'తెరుచు' ప్రతిమతో వున్న డెమో బటన్"
+
+#: ../src/ui/theme-viewer.c:150
+msgid "This is a demo button with a 'quit' icon"
+msgstr "ఇది 'నిష్క్రమించు' ప్రతిమతో వున్న డెమో బటన్"
+
+#: ../src/ui/theme-viewer.c:243
+msgid "This is a sample message in a sample dialog"
+msgstr "మాదిరి డైలాగునందు యిదివొక మాదిరి సందేశము"
+
+#: ../src/ui/theme-viewer.c:326
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "బూటకపు మెనూ అంశము %d\n"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Border-only window"
+msgstr "హద్దు-మాత్రమే విండో"
+
+#: ../src/ui/theme-viewer.c:362
+msgid "Bar"
+msgstr "పట్టీ"
+
+#: ../src/ui/theme-viewer.c:379
+msgid "Normal Application Window"
+msgstr "సాదారణ అనువర్తనపు విండో"
+
+#: ../src/ui/theme-viewer.c:383
+msgid "Dialog Box"
+msgstr "వివరణ పేటిక"
+
+#: ../src/ui/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "మోడల్ డైలాగ్ బాక్స్"
+
+#: ../src/ui/theme-viewer.c:391
+msgid "Utility Palette"
+msgstr "సౌలభ్యపు పాలెట్"
+
+#: ../src/ui/theme-viewer.c:395
+msgid "Torn-off Menu"
+msgstr "టార్న్-ఆఫ్ మెనూ"
+
+#: ../src/ui/theme-viewer.c:399
+msgid "Border"
+msgstr "సరిహద్దు"
+
+#: ../src/ui/theme-viewer.c:727
+#, c-format
+msgid "Button layout test %d"
+msgstr "బటన్ నమూనా పరిశీలన %d"
+
+#: ../src/ui/theme-viewer.c:756
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "ఒక విండో చట్రమును గీయుటకు %g మిల్లీసెకనులు"
+
+#: ../src/ui/theme-viewer.c:799
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Usage: marco-theme-viewer [THEMENAME]\n"
+
+#: ../src/ui/theme-viewer.c:806
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "థీమ్ లోడుచేయుటలో దోషము: %s\n"
+
+#: ../src/ui/theme-viewer.c:812
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "థీమ్ \"%s\" %g సెకనులలో లోడైనది\n"
+
+#: ../src/ui/theme-viewer.c:853
+msgid "Normal Title Font"
+msgstr "సాధారణ శీర్షిక ఫాంటు"
+
+#: ../src/ui/theme-viewer.c:859
+msgid "Small Title Font"
+msgstr "చిన్న శీర్షిక ఫాంటు"
+
+#: ../src/ui/theme-viewer.c:865
+msgid "Large Title Font"
+msgstr "పెద్ద శీర్షిక ఫాంటు"
+
+#: ../src/ui/theme-viewer.c:870
+msgid "Button Layouts"
+msgstr "బటన్ నమూనాలు"
+
+#: ../src/ui/theme-viewer.c:875
+msgid "Benchmark"
+msgstr "బెంట్‌మార్కు"
+
+#: ../src/ui/theme-viewer.c:922
+msgid "Window Title Goes Here"
+msgstr "విండో శీర్షిక యిక్కడకు వెళుతుంది"
+
+#: ../src/ui/theme-viewer.c:1026
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d చట్రములను %g క్లైంట్-సైడ్ సెకనులలో (చట్రముకు %g మిల్లీసెకనులు) గీసింది మరియు %g గోడగడియారం "
+"సమయం X సేవిక వనరులతో కలుపుకొని (చట్రమునకు %g మిల్లీసెకనులు)\n"
+
+#: ../src/ui/theme-viewer.c:1245
+msgid "position expression test returned TRUE but set error"
+msgstr "స్థానపు సమీకరణము పరిశీలన సత్యాన్ని యిచ్చింది అయితే దోషమును అమర్చింది"
+
+#: ../src/ui/theme-viewer.c:1247
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "స్థానపు సమీకరణము పరిశీలన అసత్యమును యిచ్చింది అయితే దోషమును అమర్చలేదు"
+
+#: ../src/ui/theme-viewer.c:1251
+msgid "Error was expected but none given"
+msgstr "దోషము రావలసివుంది కాని ఏమీ రాలేదు"
+
+#: ../src/ui/theme-viewer.c:1253
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "దోషము %d రావలసివుంది అయితే %d యివ్వబడింది"
+
+#: ../src/ui/theme-viewer.c:1259
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "దోషము రాకూడదు కాని వొకటి వచ్చింది: %s"
+
+#: ../src/ui/theme-viewer.c:1263
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x విలువ %d, %d కావలసివుంది"
+
+#: ../src/ui/theme-viewer.c:1266
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y విలువ %d, %d కావలసివుంది"
+
+#: ../src/ui/theme-viewer.c:1331
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "%d కోఆర్డినేట్ సమీకరణాలు %g సెకనులలో(%g సెకనులు సగటున) పార్శ్ చేయబడినవి\n"
+
diff --git a/po/th.po b/po/th.po
new file mode 100644
index 00000000..75fabec5
--- /dev/null
+++ b/po/th.po
@@ -0,0 +1,3546 @@
+# Thai translation for marco.
+# Copyright (C) 2003-2010 Free Software Foundation, Inc.
+# This file is distributed under the same license as the marco package.
+#
+# Phakhinee Thangnithirat <[email protected]>, 2003
+# Chanchai Junlouchai <[email protected]>, 2003
+# Paisa Seeluangsawat <[email protected]>, 2004.
+# Theppitak Karoonboonyanan <[email protected]>, 2004-2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-01-21 21:34+0000\n"
+"PO-Revision-Date: 2010-02-07 14:37+0700\n"
+"Last-Translator: Theppitak Karoonboonyanan <[email protected]>\n"
+"Language-Team: Thai <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "พื้นโต๊ะ"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "การจัดการหน้าต่าง"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "เหตุการณ์กระดิ่ง"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "คำร้องขอข้อมูลหน้าต่างที่ไม่รู้จัก: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> ไม่ตอบสนอง"
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "คุณอาจเลือกที่จะรอสักครู่ เพื่อให้โปรแกรมทำงานต่อ หรือจะบังคับโปรแกรมออกทันทีเลยก็ได้"
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_รอ"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_บังคับออก"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "ไม่สามารถอ่านชื่อโฮสต์: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "ไม่มีส่วนขยาย %s ซึ่งจำเป็นต่อการทำ composite"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "ไม่สามารถเปิดดิสเพลย์ '%s' ของระบบ X Window\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"ขาดการติดต่อจากดิสเพลย์ '%s';\n"
+"X เซิร์ฟเวอร์อาจจะถูกปิด หรือคุณอาจฆ่าโปรแกรมจัดการหน้าต่างไป\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "เกิดข้อผิดพลาดร้ายแรง %d (%s) ในการอ่านเขียนข้อมูลจากดิสเพลย์'%s'\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "โปรแกรมอื่นกำลังใช้ปุ่ม %s ร่วมกับปุ่ม %x เป็นปุ่มลัดอยู่แล้ว\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"เกิดข้อผิดพลาดขณะเรียก <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "คำสั่ง %d ยังไม่ได้ถูกกำหนด\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "คำสั่งเปิดเทอร์มินัลยังไม่ได้ถูกกำหนด\n"
+
+# FIXME: Get a lawer to translate the legal clause.
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"สงวนลิขสิทธิ์ (C) 2001-%s Havoc Pennington, Red Hat, Inc., และอื่นๆ\n"
+"นี่เป็นซอฟต์แวร์เสรี อ่านเงื่อนไขลิขสิทธิ์ได้ในโค้ดต้นฉบับ\n"
+"ไม่รับผิดชอบข้อเสียหายใดๆ "
+"ไม่รับประกันความเหมาะสมในเชิงพาณิชย์หรือการใช้งานเฉพาะทางอย่างหนึ่งอย่างใด\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "ปิดการเชื่อมต่อไปยังโปรแกรมจัดการวาระ"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "แทนที่โปรแกรมจัดการหน้าต่างที่กำลังทำงานอยู่ด้วย Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "ระบุ ID ของการจัดการวาระ"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "ดิสเพลย์ X ที่จะใช้"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "ใช้ค่าเริ่มต้นของวาระจากแฟ้มที่บันทึกไว้"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "แสดงเลขรุ่น"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "ให้การเรียกฟังก์ชัน X เป็นแบบซิงโครนัส"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "เปิดใช้การ composite"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "ปิดการ composite"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "ไม่ทำหน้าต่างแบบเต็มจอที่ขยายแผ่เต็มที่โดยไม่มีกรอบหน้าต่าง"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "ไม่สามารถอ่านโฟลเดอร์ชุดตกแต่ง: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "ไม่พบชุดตกแต่ง โปรดตรวจดูว่า %s มีอยู่จริง และบรรจุชุดตกแต่งที่ควรจะมี\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "ไม่สามารถเริ่มการทำงานใหม่ของ: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "คีย์ MateConf '%s' ถูกตั้งค่าเป็นค่าที่ใช้ไม่ได้\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d ในคีย์ MateConf %s ต้องอยู่ระหว่าง %d และ %d\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "คีย์ MateConf \"%s\" ถูกตั้งค่าเป็นชนิดที่ใช้ไม่ได้\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"ปิดการแก้ขัดที่เตรียมไว้สำหรับโปรแกรมเสียๆ บางโปรแกรมแล้ว "
+"ซึ่งอาจทำให้โปรแกรมเหล่านี้ทำงานไม่ปกติ\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "ไม่เข้าใจคำบรรยายแบบตัวอักษร \"%s\" จากคีย์ MateConf %s\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "\"%s\" ที่พบในฐานข้อมูลข้อปรับแต่ง ใช้เป็นปุ่มใช้ร่วมสำหรับเมาส์ไม่ได้\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "ไม่สามารถตั้งจำนวนพื้นที่ทำงานเป็น %d: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "พื้นที่ทำงาน %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "\"%s\" ที่พบในฐานข้อมูลค่าปรับแต่ง ไม่สามารถใช้เป็นปุ่มลัด \"%s\"\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "ไม่สามารถตั้งชื่อพื้นที่ทำงาน %d เป็น %s: %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "เกิดข้อผิดพลาดขณะกำหนดสถานะ compositor: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "สกรีน %d บนดิสเพลย์ '%s' ใช้ไม่ได้\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"สกรีน %d บนดิสเพลย์ \"%s\" มีโปรแกรมจัดการหน้าต่างอยู่แล้ว ลองใช้ตัวเลือก --replace "
+"ถ้าต้องการแทนที่โปรแกรมจัดการหน้าต่างปัจจุบัน\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "ไม่สามารถอ่านค่าโปรแกรมจัดการหน้าต่างจากสกรีน %d ดิสเพลย์ \"%s\" ได้\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "สกรีน %d บนดิสเพลย์ \"%s\" มีโปรแกรมจัดการหน้าต่างอยู่แล้ว\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "ไม่สามารถปล่อยการควบคุมสกรีน %d บนดิสเพลย์ \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"รูปแบบจะอยู่ในรูป \"<Control>a\" หรือ \"<Shift><Alt>F1\"\n"
+"\n"
+"ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"<Ctl>\" และ \"<Ctrl>\" "
+"คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"รูปแบบจะอยู่ในรูป \"<Control>a\" หรือ \"<Shift><Alt>F1\"\n"
+"\n"
+"ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"<Ctl>\" และ \"<Ctrl>\" "
+"คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้\n"
+"\n"
+"ปุ่มลัดนี้สามารถย้อนคืนได้ด้วยการกดปุ่ม \"shift\" ค้างไว้; ดังนั้น จึงไม่สามารถใช้ \"shift\" "
+"ประกอบในปุ่มลัดที่ตั้งนี้ได้"
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "ไม่สามารถสร้างโฟลเดอร์ '%s': %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "ไม่สามารถเปิดแฟ้มวาระ '%s' สำหรับเขียน: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "ไม่สามารถเขียนลงแฟ้มวาระ '%s': %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "ไม่สามารถปิดแฟ้มวาระ '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "ไม่สามารถอ่านแฟ้มวาระที่บันทึกไว้ %s: %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "ไม่เข้าใจแฟ้มวาระที่บันทึกไว้: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "พบแอตทริบิวต์ <marco_session> แต่ว่ามี ID วาระอยู่แล้ว"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "ไม่รู้จักแอตทริบิวต์ %s ในอิลิเมนต์ <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "มีแท็ก <window> ซ้อนด้านใน"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "ไม่รู้จักอิลิเมนต์ %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"หน้าต่างเหล่านี้ไม่รองรับการ &quot;บันทึกค่าตั้งปัจจุบัน&quot; "
+"และคุณต้องกำหนดใหม่เองเมื่อเข้าสู่ระบบครั้งต่อไป"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "เปิดแฟ้มปูมการดีบั๊กไม่สำเร็จ: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "fdopen() แฟ้มปูม %s ไม่สำเร็จ: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "เปิดแฟ้มปูม %s เรียบร้อยแล้ว\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco ถูกคอมไพล์โดยไม่ได้เลือกรองรับโหมด verbose\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "โปรแกรมจัดการหน้าต่าง: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "บั๊กในโปรแกรมจัดการหน้าต่าง: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "คำเตือนในโปรแกรมจัดการหน้าต่าง: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "เกิดข้อผิดพลาดในโปรแกรมจัดการหน้าต่าง: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"หน้าต่าง %s ตั้งค่า SM_CLIENT_ID มาที่ตัวเอง แทนที่จะอ้างไปถึงหน้าต่างของ WM_CLIENT_LEADER "
+"ตามที่กำหนดไว้ใน ICCCM\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"หน้าต่าง %s ตั้งค่า MWM hint ไว้ว่าเป็นหน้าต่างที่เปลี่ยนขนาดไม่ได้ แต่กลับตั้งค่าขนาดต่ำสุด %d x %"
+"d และขนาดสูงสุด %d x %d ไว้ ซึ่งไม่สมเหตุสมผลเท่าไรนัก\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "โปรแกรมประยุกต์ตั้งค่า _NET_WM_PID เป็น %lu ซึ่งไม่มีอยู่จริง\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (ที่เครื่อง %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (ในนามผู้ดูแลระบบ)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (ในนาม %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (ในนามผู้ใช้อื่น)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "ค่า WM_TRANSIENT_FOR หน้าต่าง 0x%lx ที่กำหนดให้กับ %s ใช้ไม่ได้\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"หน้าต่าง 0x%lx มีคุณสมบัติ %s\n"
+"ที่คาดหวังว่าจะมีชนิด %s และรูปแบบ %d\n"
+"แต่กลับมีชนิด %s รูปแบบ %d และ n_items %d\n"
+"โดยมากแล้ว นี่ถือเป็นบั๊กของโปรแกรม ไม่ใช่ของโปรแกรมจัดการหน้าต่าง\n"
+"หน้าต่างที่มีปัญหามีหัวเรื่อง=\"%s\" คลาส=\"%s\" ชื่อ=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "คุณสมบัติ %s ของหน้าต่าง 0x%lx มีค่าที่ไม่ใช่ UTF-8 ที่ถูกต้อง\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"คุณสมบัติ %s ของหน้าต่าง 0x%lx มีค่าที่ไม่ใช่ UTF-8 ที่ถูกต้องสำหรับหัวข้อที่ %d ในรายการ\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "สลับไปพื้นที่ทำงาน 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "สลับไปพื้นที่ทำงาน 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "สลับไปพื้นที่ทำงาน 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "สลับไปพื้นที่ทำงาน 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "สลับไปพื้นที่ทำงาน 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "สลับไปพื้นที่ทำงาน 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "สลับไปพื้นที่ทำงาน 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "สลับไปพื้นที่ทำงาน 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "สลับไปพื้นที่ทำงาน 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "สลับไปพื้นที่ทำงาน 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "สลับไปพื้นที่ทำงาน 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "สลับไปพื้นที่ทำงาน 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "สลับไปพื้นที่ทำงานด้านซ้ายของพื้นที่ทำงานปัจจุบัน"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "สลับไปพื้นที่ทำงานด้านขวาของพื้นที่ทำงานปัจจุบัน"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "สลับไปพื้นที่ทำงานด้านบนของพื้นที่ทำงานปัจจุบัน"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "สลับไปพื้นที่ทำงานด้านล่างของพื้นที่ทำงานปัจจุบัน"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "ย้ายโฟกัสระหว่างหน้าต่างทั้งหลายของโปรแกรมประยุกต์โดยใช้หน้าต่างผุดขึ้น"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "ย้ายโฟกัสย้อนหลังระหว่างหน้าต่างทั้งหลายของโปรแกรมประยุกต์โดยใช้หน้าต่างผุดขึ้น"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "ย้ายโฟกัสระหว่างหน้าต่างโดยใช้หน้าต่างผุดขึ้น"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "ย้ายโฟกัสย้อนหลังระหว่างหน้าต่างโดยใช้หน้าต่างผุดขึ้น"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "ย้ายโฟกัสระหว่างพาเนลและพื้นโต๊ะโดยใช้หน้าต่างผุดขึ้น"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "ย้ายโฟกัสย้อนหลังระหว่างพาเนลและพื้นโต๊ะโดยใช้หน้าต่างผุดขึ้น"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "ย้ายโฟกัสระหว่างหน้าต่างทั้งหลายของโปรแกรมประยุกต์โดยทันที"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "ย้ายโฟกัสย้อนหลังระหว่างหน้าต่างทั้งหลายของโปรแกรมประยุกต์โดยทันที"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "ย้ายโฟกัสระหว่างหน้าต่างโดยทันที"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "ย้ายโฟกัสย้อนหลังระหว่างหน้าต่างโดยทันที"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "ย้ายโฟกัสระหว่างพาเนลและพื้นโต๊ะโดยทันที"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "ย้ายโฟกัสย้อนหลังระหว่างพาเนลและพื้นโต๊ะโดยทันที"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "ซ่อนหน้าต่างทั้งหมดแล้วโฟกัสไปยังพื้นโต๊ะ"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "แสดงเมนูหลักของพาเนล"
+
+# Can omit the word panel without losing the core meaning.
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "เปิดกล่องโต้ตอบ \"เรียกโปรแกรม\""
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "จับภาพหน้าจอ"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "จับภาพหน้าต่าง"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "เปิดเทอร์มินัล"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "เปิดเมนูหน้าต่าง"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "สลับโหมดเต็มหน้าจอ"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "สลับสถานะขยายแผ่"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "สลับสถานะหน้าต่าง ว่าค้างอยู่บนสุดเหนือหน้าต่างอื่นหรือไม่"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "ขยายแผ่หน้าต่างเต็มพื้นโต๊ะ"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "คืนขนาดหน้าต่าง"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "ม้วน/คลี่หน้าต่าง"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "ย่อเก็บหน้าต่าง"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "ปิดหน้าต่าง"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "ย้ายหน้าต่าง"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "ปรับขนาดหน้าต่าง"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "สลับสถานะหน้าต่าง ว่าแสดงบนทุกพื้นที่ทำงาน หรือแค่พื้นที่ทำงานเดียว"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงาน 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงานด้านซ้าย"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงานด้านขวา"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงานด้านบน"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "ย้ายหน้าต่างไปพื้นที่ทำงานด้านล่าง"
+
+# Note: This is the longest description in "Shortcut" menu.
+# Should keep it as short as possible, so it doesn't pad the
+# dialog out too wide.
+#
+# The next entry in the list will make this entry clear.
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "ยกหน้าต่างขึ้นถ้าถูกบัง มิฉะนั้นก็เอาลงด้านหลัง"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "ยกหน้าต่างขึ้นมาไว้หน้าหน้าต่างอื่นๆ"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "ถอยหน้าต่างลงไปใว้หลังหน้าต่างอื่น"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "ขยายแผ่หน้าต่างเต็มด้านสูง"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "ขยายแผ่หน้าต่างเต็มด้านกว้าง"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "ย้ายหน้าต่างไปที่มุมตะวันตกเฉียงเหนือ (บนซ้าย) ของหน้าจอ"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "ย้ายหน้าต่างไปที่มุมตะวันออกเฉียงเหนือ (บนขวา) ของหน้าจอ"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "ย้ายหน้าต่างไปที่มุมตะวันตกเฉียงใต้ (ล่างซ้าย) ของหน้าจอ"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "ย้ายหน้าต่างไปที่มุมตะวันออกเฉียงใต้ (ล่างขวา) ของหน้าจอ"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "ย้ายหน้าต่างไปที่ขอบด้านทิศเหนือ (ด้านบน) ของหน้าจอ"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "ย้ายหน้าต่างไปที่ขอบด้านทิศใต้ (ด้านล่าง) ของหน้าจอ"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "ย้ายหน้าต่างไปที่ขอบด้านตะวันออก (ด้านขวา) ของหน้าจอ"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "ย้ายหน้าต่างไปที่ขอบด้านตะวันตก (ด้านซ้าย) ของหน้าจอ"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "ย้ายหน้าต่างไปที่กลางหน้าจอ"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(ยังใช้ไม่ได้) เคลื่อนย้ายระหว่างโปรแกรม แทนระหว่างหน้าต่าง"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"คำบรรยายแบบอักษรสำหรับแถบหัวเรื่องของหน้าต่าง "
+"ขนาดตัวอักษรในคำบรรยายนี้จะมีผลก็ต่อเมื่อตัวเลือก titlebar_font_size มีค่าเป็น 0 นอกจากนี้ "
+"ค่าตัวเลือกนี้จะไม่มีผลถ้าตัวเลือก titlebar_uses_desktop_font มีค่าเป็นจริง"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "การกระทำเมื่อดับเบิลคลิกที่แถบหัวหน้าต่าง"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "การกระทำเมื่อคลิกเมาส์ปุ่มกลางที่แถบหัวหน้าต่าง"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "การกระทำเมื่อคลิกเมาส์ปุ่มขวาที่แถบหัวหน้าต่าง"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "การจัดเรียงปุ่มบนแถบหัวหน้าต่าง"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"การจัดเรียงปุ่มบนแถบหัวหน้าต่าง ค่าของคีย์ควรเป็นข้อความ ตัวอย่างเช่น \"menu:minimize,"
+"maximize,spacer,close\" โดย colon จะแบ่งมุมซ้ายกับมุมขวาของหน้าต่างออกจากกัน "
+"และปุ่มต่างๆ จะคั่นด้วยจุลภาค ห้ามใช้ปุ่มซ้ำกัน ปุ่มที่ไม่รู้จักจะถูกข้ามไป "
+"เพื่อรองรับการเพิ่มปุ่มใหม่ในอนาคตได้โดยไม่ขัดกับ marco รุ่นเก่า คุณสามารถใช้แท็กพิเศษ "
+"\"spacer\" ในการแทรกช่องว่างระหว่างปุ่มที่อยู่ติดกันได้"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "ยกหน้าต่างที่ถูกโฟกัสขึ้นมาด้านหน้าโดยอัตโนมัติ"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"การคลิกเมาส์บนหน้าต่างพร้อมกับกดปุ่ม modifier นี้ค้างไว้จะเริ่มย้ายหน้าต่าง (ปุ่มซ้าย) "
+"เปลี่ยนขนาดหน้าต่าง (ปุ่มกลาง) หรือแสดงเมนูหน้าต่าง (ปุ่มขวา) "
+"การใช้ปุ่มกลางหรือขวาอาจสลับได้โดยใช้คีย์ \"resize_with_right_button\" ตัวอย่างการระบุปุ่ม "
+"modifier เช่น \"&lt;Alt&gt;\" หรือ \"&lt;Super&gt;\""
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "คำสั่งที่จะกระทำเมื่อมีการกดปุ่มตาม keybinding ที่กำหนด"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "จัดการ Composite"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "ควบคุมการโฟกัสหน้าต่างใหม่"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "ธีมปัจจุบัน"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "การหน่วงเวลาในหน่วยมิลลิวินาทีสำหรับการยกหน้าต่างมาด้านหน้าโดยอัตโนมัติ"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "กำหนดว่า จะให้ Marco เป็นผู้จัดการ composite หรือไม่"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"ระบุว่าจะให้โปรแกรมหรือระบบส่งเสียง 'บี๊ป' หรือไม่ สามารถใช้ร่วมกับ 'ระฆังภาพ' เพื่อใช้ 'บี๊ป' "
+"แบบเงียบได้"
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "ปิดคุณสมบัติแก้ขัดที่แก้ปัญหาให้กับโปรแกรมประยุกต์ที่เก่าหรือไม่ทำงาน"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "ใช้ระฆังภาพ"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"ถ้ามีค่าเป็นจริง และโหมดโฟกัสเป็น \"sloppy\" หรือ \"mouse\" อย่างใดอย่างหนึ่งแล้ว "
+"จะยกหน้าต่างที่ได้โฟกัสขึ้นมาโดยอัตโนมัติ หลังจากหน่วงเวลาเป็นระยะเวลาตามที่ระบุในคีย์ "
+"auto_raise_delay การยกหน้าต่างดังกล่าว ไม่เกี่ยวกับการคลิกบนหน้าต่างเพื่อยกหน้าต่างขึ้น "
+"หรือการเลื่อนเมาส์เข้าสู่หน้าต่างระหว่างการลากวางแต่อย่างใด"
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"ถ้าเป็นจริง จะละเว้นตัวเลือก titlebar_font และใช้แบบอักษรมาตรฐาน "
+"สำหรับแถบหัวเรื่องของหน้าต่าง"
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"ถ้าเป็นจริง marco จะตอบสนองผู้ใช้น้อยลง โดยใช้ wireframe ใช้ภาพเคลื่อนไหวน้อยลง "
+"หรืออะไรก็ตาม ซึ่งอาจดูใช้ยากขึ้นสำหรับผู้ใช้หลายๆ คน แต่จะช่วยให้โปรแกรมเก่าๆ ยังทำงานได้ "
+"และอาจช่วยให้การใช้เทอร์มินัลเซิร์ฟเวอร์คล่องตัวขึ้น อย่างไรก็ดี marco จะไม่ใช้ wireframe "
+"เมื่อเปิดระบบอำนวยการใช้งาน"
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"ถ้าเป็นจริง Marco จะทำงานในหน่วยของโปรแกรมประยุกต์แทนหน่วยของหน้าต่าง "
+"แนวคิดนี้ค่อนข้างเป็นนามธรรม แต่โดยทั่วไปการตั้งค่าแบบนี้จะคล้าย Mac และต่างจากวินโดวส์ "
+"เมื่อคุณโฟกัสหน้าต่างหนึ่งในโหมดโปรแกรมประยุกต์ "
+"หน้าต่างทั้งหมดในโปรแกรมประยุกต์เดียวกันจะถูกยกขึ้นพร้อมกัน นอกจากนี้ ในโหมดโปรแกรมประยุกต์นี้ "
+"การคลิกเพื่อโฟกัสจะไม่ถูกส่งผ่านไปยังหน้าต่างของโปรแกรมประยุกต์อื่นด้วย อย่างไรก็ดี "
+"โหมดโปรแกรมประยุกต์ยังใช้การไม่ได้ในขณะนี้"
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "ถ้าตั้ง จะสละความง่ายในการใช้เพื่อประหยัดทรัพยากร"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "ปุ่ม modifier เพื่อเปลี่ยนพฤติกรรมการคลิกหน้าต่าง"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "ชื่อของพื้นที่ทำงาน"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "จำนวนพื้นที่ทำงาน"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"จำนวนพื้นที่ทำงาน ต้องมากกว่าศูนย์ และมีขีดจำกัดตายตัวอยู่ "
+"เพื่อป้องกันการทำให้เดสก์ท็อปใช้การไม่ได้ด้วยการร้องขอพื้นที่ทำงานมากเกินไปโดยไม่เจตนา"
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "เรียกใช้คำสั่งที่กำหนดไว้"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"กำหนดค่านี้เป็นจริงหากต้องการให้ใช้เมาส์ปุ่มขวาปรับขนาดหน้าต่าง และใช้ปุ่มกลางเปิดเมนู "
+"ในขณะที่กดปุ่มที่กำหนดใน \"mouse_button_modifier\" ค้างไว้; "
+"กำหนดค่านี้เป็นเท็จถ้าต้องการให้ทำในทางกลับกัน"
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"การกำหนดตัวเลือกนี้เป็นเท็จ อาจทำให้การทำงานผิดพลาด ดังนั้น "
+"จึงไม่ขอแนะนำให้เปลี่ยนค่าจากค่าปกติที่เป็นค่าจริง โดยปกติ ปฏิบัติการหลายอย่าง (เช่น "
+"การคลิกบนพื้นที่ภายในหน้าต่าง การย้ายหรือปรับขนาดหน้าต่าง) จะยกหน้าต่างขึ้นด้วย "
+"ถ้ากำหนดตัวเลือกนี้เป็นเท็จ ซึ่งไม่ขอแนะนำเป็นอย่างยิ่ง จะไม่ยกหน้าต่างเมื่อมีปฏิสัมพันธ์กับผู้ใช้ "
+"และจะไม่สนใจการร้องขอให้ยกหน้าต่างขึ้นจากโปรแกรมต่างๆ ดู http://bugzilla.gnome.org/"
+"show_bug.cgi?id=445447#c6 แต่แม้ตัวเลือกนี้จะเป็นเท็จ ก็ยังสามารถยกหน้าต่างขึ้นได้โดย alt-"
+"คลิกซ้าย ภายในพื้นที่หน้าต่าง หรือคลิกแบบธรรมดาที่กรอบหน้าต่าง "
+"หรือโดยข้อความพิเศษจากโปรแกรมจัดหน้าพื้นโต๊ะ เช่น "
+"การร้องขอกระตุ้นหน้าต่างจากแอพเพล็ตรายการงาน ขณะนี้ "
+"ตัวเลือกนี้จะไม่มีผลถ้าอยู่ในโหมดโฟกัสด้วยการคลิก สังเกตว่า วิธีการต่างๆ ที่จะยกหน้าต่างขึ้นเมื่อ "
+"raise_on_click เป็นเท็จนี้ ไม่นับรวมการร้องขอจากโปรแกรมเพื่อขอยกหน้าต่างขึ้น "
+"การร้องขอดังกล่าวจะถูกปฏิเสธไม่ว่ากรณีใดๆ ถ้าคุณเป็นนักพัฒนาโปรแกรม "
+"และมีผู้ใช้บ่นว่าโปรแกรมของคุณทำงานผิดพลาดเมื่อปิดค่านี้ ก็บอกเขาได้เลย ว่าเป็นความผิด "
+"_ของเขาเอง_ ที่ทำให้โปรแกรมจัดการหน้าต่างรวน และเขาต้องเปลี่ยนตัวเลือกนี้กลับเป็นค่าจริง "
+"มิฉะนั้น ก็จะต้องอยู่กับ \"บั๊ก\" ที่เขาเรียกร้องต่อไป"
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"โปรแกรมบางตัวไม่สนใจข้อกำหนด โดยทำให้โปรแกรมจัดการหน้าต่างต้องทำงานแก้ขัด "
+"ตัวเลือกนี้จะกำหนดให้ Marco เข้าสู่โหมดการทำงานที่ถูกหลักเกณฑ์อย่างเข้มงวด "
+"ซึ่งจะทำให้การติดต่อผู้ใช้คงเส้นคงวายิ่งขึ้น โดยถือว่าผู้ใช้ไม่จำเป็นต้องเรียกโปรแกรมใดๆ "
+"ที่ประพฤติผิดหลักเกณฑ์"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "เปิดเล่นเสียงระฆังระบบ"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"บอก marco ว่าจะแสดงออกทางจอภาพอย่างไรเมื่อมีการสั่นระฆังของระบบหรือโปรแกรมประยุกต์ "
+"ค่าที่เป็นไปได้ ณ ขณะนี้มีสองค่า คือ \"fullscreen\" ซึ่งจะวาบจอภาพทั้งจอ และ \"frame_flash"
+"\" ซึ่งจะวาบแถบหัวหน้าต่างของโปรแกรมที่สั่นระฆัง หรือถ้าไม่ปรากฏโปรแกรมที่สั่นระฆัง "
+"(ซึ่งเป็นปกติสำหรับ \"เสียงบี๊ปของระบบ\") ก็จะวาบแถบหัวหน้าต่างของโปรแกรมที่ได้โฟกัสอยู่"
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"กำหนดคำสั่งที่จะเรียกจากการกดปุ่มลัดที่กำหนดในคีย์ /apps/marco/global_keybindings/"
+"run_command_N การกดปุ่มลัดใน run_command_N จะเรียกคำสั่ง command_N"
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"กำหนดคำสั่งที่จะเรียกจากการกดปุ่มลัดที่กำหนดในคีย์ /apps/marco/global_keybindings/"
+"run_command_screenshot"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"กำหนดคำสั่งที่จะเรียกจากการกดปุ่มลัดที่กำหนดในคีย์ /apps/marco/global_keybindings/"
+"run_command_window_screenshot"
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"ปุ่มลัดสำหรับเรียกคำสั่งใน /apps/marco/keybinding_commands รูปแบบคือ \"&lt;"
+"Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+"ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+"\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+"ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "ชื่อของพื้นที่ทำงาน"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "คำสั่งจับภาพหน้าจอ"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "ชุดตกแต่งนี้จะกำหนดลักษณะขอบหน้าต่าง หัวหน้าต่าง ฯลฯ"
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr "ระยะเวลารอก่อนยกหน้าต่างขึ้นมาด้านหน้า ใช้ถ้า auto_raise ถูกตั้ง ระบุเวลาเป็นมิลลิวินาที"
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"โหมดโฟกัสหน้าต่างกำหนดวิธีการโฟกัสหน้าต่างเพื่อใช้งาน ค่าที่เป็นไปได้มีสามค่า คือ \"click\" "
+"หมายถึงการโฟกัสหน้าต่างด้วยการคลิก, \"sloppy\" "
+"หมายความว่าหน้าต่างจะได้โฟกัสก็ต่อเมื่อเมาส์เคลื่อนเข้าสู่หน้าต่าง, และ\"mouse\" "
+"หมายความว่าหน้าต่างจะได้โฟกัสเมื่อเมาส์เคลื่อนเข้าสู่หน้าต่าง "
+"และเสียโฟกัสเมื่อเมาส์เคลื่อนออกจากหน้าต่าง"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "คำสั่งจับภาพหน้าต่าง"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ตัวเลือกนี้เลือกการปฏิบัติเมื่อดับเบิลคลิกที่แถบหัวหน้าต่าง ค่าตัวเลือกที่เป็นไปได้ในขณะนี้คือ "
+"'toggle_shade' ซึ่งจะม้วนหรือคลี่หน้าต่าง, 'toggle_maximize' "
+"ซึ่งจะขยายแผ่หรือยกเลิกการขยายแผ่หน้าต่างให้เต็มพื้นโต๊ะ, 'toggle_maximize_horizontally' "
+"และ 'toggle_maximize_vertically' "
+"ซึ่งจะขยายแผ่หรือยกเลิกการขยายแผ่หน้าต่างในทิศทางที่กำหนดเท่านั้น, 'minimize' "
+"ซึ่งจะย่อเก็บหน้าต่าง, 'shade' ซึ่งจะม้วนเก็บหน้าต่าง, 'menu' ซึ่งจะแสดงเมนูหน้าต่าง, 'lower' "
+"ซึ่งจะนำหน้าต่างลงไปอยู่หลังหน้าต่างอื่นทั้งหมด, และ 'none' ซึ่งจะไม่ทำอะไรเลย"
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ตัวเลือกนี้เลือกการปฏิบัติเมื่อคลิกเมาส์ปุ่มกลางที่แถบหัวหน้าต่าง ค่าตัวเลือกที่เป็นไปได้ในขณะนี้คือ "
+"'toggle_shade' ซึ่งจะม้วนหรือคลี่หน้าต่าง, 'toggle_maximize' "
+"ซึ่งจะขยายแผ่หรือยกเลิกการขยายแผ่หน้าต่างให้เต็มพื้นโต๊ะ, 'toggle_maximize_horizontally' "
+"และ 'toggle_maximize_vertically' "
+"ซึ่งจะขยายแผ่หรือยกเลิกการขยายแผ่หน้าต่างในทิศทางที่กำหนดเท่านั้น, 'minimize' "
+"ซึ่งจะย่อเก็บหน้าต่าง, 'shade' ซึ่งจะม้วนเก็บหน้าต่าง, 'menu' ซึ่งจะแสดงเมนูหน้าต่าง, 'lower' "
+"ซึ่งจะนำหน้าต่างลงไปอยู่หลังหน้าต่างอื่นทั้งหมด, และ 'none' ซึ่งจะไม่ทำอะไรเลย"
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"ตัวเลือกนี้เลือกการปฏิบัติเมื่อคลิกเมาส์ปุ่มขวาที่แถบหัวหน้าต่าง ค่าตัวเลือกที่เป็นไปได้ในขณะนี้คือ "
+"'toggle_shade' ซึ่งจะม้วนหรือคลี่หน้าต่าง, 'toggle_maximize' "
+"ซึ่งจะขยายแผ่หรือยกเลิกการขยายแผ่หน้าต่างให้เต็มพื้นโต๊ะ, 'toggle_maximize_horizontally' "
+"และ 'toggle_maximize_vertically' "
+"ซึ่งจะขยายแผ่หรือยกเลิกการขยายแผ่หน้าต่างในทิศทางที่กำหนดเท่านั้น, 'minimize' "
+"ซึ่งจะย่อเก็บหน้าต่าง, 'shade' ซึ่งจะม้วนเก็บหน้าต่าง, 'menu' ซึ่งจะแสดงเมนูหน้าต่าง, 'lower' "
+"ซึ่งจะนำหน้าต่างลงไปอยู่หลังหน้าต่างอื่นทั้งหมด, และ 'none' ซึ่งจะไม่ทำอะไรเลย"
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"ตัวเลือกนี้เพิ่มการควบคุมการโฟกัสหน้าต่างที่สร้างใหม่ ค่าที่เป็นไปได้มีสองค่า คือ \"smart\" "
+"ซึ่งจะใช้วิธีโฟกัสตามปกติของผู้ใช้ และ \"strict\" ซึ่งจะไม่โฟกัสหน้าต่างที่เรียกจากเทอร์มินัล"
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"เปิดใช้การส่งสัญญาณทางภาพเมื่อโปรแกรมหรือระบบสั่นระฆังหรือส่งเสียงบี๊ป "
+"ซึ่งจะมีประโยชน์สำหรับผู้ที่มีปัญหาเรื่องการฟัง หรือใช้ในสภาวะที่จอแจ"
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "ใช้แบบตัวอักษรปกติของระบบสำหรับหัวหน้าต่าง"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "ชนิดของระฆังภาพ"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "กำหนดว่าควรยกหน้าต่างขึ้นเมื่อมีปฏิสัมพันธ์กับผู้ใช้หรือไม่"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "กำหนดว่าจะปรับขนาดด้วยปุ่มขวาหรือไม่"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "โหมดโฟกัสหน้าต่าง"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "แบบอักษรหัวหน้าต่าง"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "วิธีใช้: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "ปิดหน้าต่าง"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "เมนูหน้าต่าง"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "ย่อเก็บหน้าต่าง"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "ขยายแผ่หน้าต่าง"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "คืนขนาดหน้าต่าง"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "_ม้วนหน้าต่างขึ้น"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "คลี่หน้าต่างกลับ"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "วางหน้าต่างไว้บนสุด"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "เลิกวางหน้าต่างไว้บนสุด"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "แสดงบนพื้นที่ทำงานเสมอ"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "วางหน้าต่างบนพื้นที่ทำงานเดียวเท่านั้น"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "ย่_อเก็บ"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "ขย_ายแผ่"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "เลิกขย_ายแผ่"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_ม้วนขึ้น"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_คลี่กลับ"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_ย้าย"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_ปรับขนาด"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "ย้ายแถบหัวเรื่องกลับเข้า_จอ"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "อยู่_บนสุด"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "แสดงบนพื้นที่ทำงานเ_สมอ"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "แสดงบนพื้นที่ทำงาน_นี้เท่านั้น"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "ย้ายไปพื้นที่ทำงานซ้_าย"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "ย้ายไปพื้นที่ทำงานข_วา"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "ย้ายไปพื้นที่ทำงาน_บน"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "ย้ายไปพื้นที่ทำงาน_ล่าง"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "ปิ_ด"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "พื้นที่ทำงาน %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "พื้นที่ทำงาน 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "พื้นที่ทำงาน %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "ย้ายไป_พื้นที่ทำงานอื่น"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "บน"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "ล่าง"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "ซ้าย"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "ขวา"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "ค่าเรขาคณิตของเฟรมไม่ได้ระบุขนาด \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "ค่าเรขาคณิตของเฟรมไม่ได้ระบุขนาด \"%s\" สำหรับกรอบ \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "ค่า aspect ratio %g ของปุ่มไม่สมเหตุสมผล"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "ค่าเรขาคณิตของเฟรมไม่ได้ระบุขนาดของปุ่ม"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "การไล่สีควรใช้อย่างน้อยสองสี"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"การกำหนดสี GTK ต้องเขียนสถานะในวงเล็บเหลี่ยม เช่น gtk:fg[NORMAL] เมื่อ NORMAL "
+"เป็นสถานะ; ไม่สามารถแจงค่า \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"การกำหนดสี GTK ต้องมีวงเล็บเหลี่ยมปิดหลังสถานะด้วย เช่น gtk:fg[NORMAL] เมื่อ NORMAL "
+"เป็นสถานะ; ไม่สามารถแจงค่า \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "ไม่เข้าใจสถานะ \"%s\" ในการระบุสี"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "ไม่เข้าใจองค์ประกอบ \"%s\" ในการระบุสี"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"รูปแบบการเกลี่ยสีคือ \"blend/bg_color/fg_color/alpha\", ค่า \"%s\" ไม่ตรงกับรูปแบบ"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "ไม่สามารถแจงค่าอัลฟา \"%s\" ในการเกลี่ยสี"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "ค่าอัลฟา \"%s\" ในการเกลี่ยสีไม่อยู่ระหว่าง 0.0 และ 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "รูปแบบของเฉดสีคือ \"shade/base_color/factor \", \"%s\" ไม่ตรงกับรูปแบบ"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "ไม่สามารถแจงค่าตัวคูณของเฉด \"%s\" ในเฉดสี"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "ตัวคูณเฉดสี \"%s\" ในเฉดสีเป็นค่าลบ"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "ไม่เข้าใจสี \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "นิพจน์พิกัดมีอักขระ'%s' ซึ่งไม่อนุญาตให้ใช้"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "นิพจน์พิกัดมีเลขจุดทศนิยม '%s' ที่แจงค่าไม่ได้"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "นิพจน์พิกัดมีเลขจำนวนเต็ม '%s' ที่แจงค่าไม่ได้"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "นิพจน์พิกัดมีเครื่องหมายดำเนินการที่ไม่รู้จัก เริ่มจากตำแหน่ง \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "นิพจน์พิกัดว่างเปล่าหรือไม่สามารถเข้าใจ"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "นิพจน์พิกัดมีผลลัพธ์ที่เป็นการหารด้วยศูนย์"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "นิพจน์พิกัดพยายามใช้ตัวดำเนินการ mod กับตัวเลขจุดทศนิยม"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "นิพจน์พิกัดมีตัวดำเนินการ\"%s\" ในที่ที่ควรจะเป็นตัวถูกดำเนินการ"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "นิพจน์พิกัดมีตัวถูกดำเนินการในที่ที่ควรจะเป็นตัวดำเนินการ"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "นิพจน์พิกัดจบด้วยตัวดำเนินการแทนที่จะเป็นตัวถูกดำเนินการ"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"นิพจน์พิกัดมีตัวดำเนินการ\"%c\" ตามหลังตัวดำเนินการ \"%c\" โดยไม่มีตัวถูกดำเนินการคั่นกลาง"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "นิพจน์พิกัดมีตัวแปรหรือค่าคงที่ \"%s\" ที่ไม่รู้จัก"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "ตัวแจงค่านิพจน์พิกัดทำข้อมูลล้น"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "นิพจน์พิกัดมีวงเล็บปิดโดยไม่มีวงเล็บเปิด"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "นิพจน์พิกัดมีวงเล็บเปิดโดยไม่มีวงเล็บปิด"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "นิพจน์พิกัดท่าทางจะไม่มีตัวดำเนินการหรือตัวถูกดำเนินการเลย"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "ชุดตกแต่งมีนิพจน์ซึ่งทำให้เกิดข้อผิดพลาด: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"ต้องระบุ <button function =\"%s\" state=\"%s\" draw_ops=\"อะไรก็ตามแต่\"/> "
+"สำหรับรูปแบบเฟรมด้วย"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"ขาด <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"อะไรก็ตามแต่\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "โหลดชุดตกแต่ง \"%s\" ล้มเหลว: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "ไม่ได้กำหนดค่า <%s> สำหรับชุดตกแต่ง \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"ไม่ได้กำหนดรูปแบบเฟรมสำหรับชนิดหน้าต่าง \"%s\" ในชุดตกแต่ง \"%s\", กรุณาเพิ่มอิลิเมนต์ "
+"<window type=\"%s\" style_set=\"อะไรก็ตามแต่\"/>"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "ค่าคงที่ที่ผู้ใช้กำหนดเองต้องเริ่มต้นด้วยอักษรตัวใหญ่; แต่ \"%s\" ไม่ได้เป็นตามนั้น"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "ค่าคงที่ \"%s\" ถูกกำหนดไว้แล้ว"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "ขาดแอตทริบิวต์ \"%s\" ในอิลิเมนต์ <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "บรรทัด %d อักขระ %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "มีแอตทริบิวต์ \"%s\" ซ้ำสองอันในอิลิเมนต์ <%s> เดียวกัน"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "ใช้แอตทริบิวต์ \"%s\" ในอิลิเมนต์ <%s> ไม่ได้ตรงนี้"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "ไม่สามารถแปลง \"%s\" เป็นเลขจำนวนเต็ม"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "ไม่เข้าใจตัวอักษร \"%s\" ที่ข้างท้ายข้อความ \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "จำนวนเต็ม %ld ต้องเป็นบวก"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "จำนวนเต็ม %ld ใหญ่เกินไป ตั้งได้สูงสุดเป็น %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "แปลง \"%s\" เป็นเลขจุดทศนิยมไม่สำเร็จ"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "ค่าตรรกะต้องเป็น \"true\" หรือ \"false\" ไม่ใช่ \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "มุมต้องอยู่ระหว่าง 0.0 และ 360.0 ไม่ใช่ %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "ค่าอัลฟาต้องอยู่ระหว่าง 0.0 (โปร่งใส) และ 1.0 (ทึบ) ไม่ใช่ %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"ขนาดหัวหน้าต่าง \"%s\" ใช้ไม่ได้ ตั้งได้เป็น xx-small, x-small, small, medium, large, "
+"x-large, หรือ xx-large\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> ชื่อ \"%s\" ถูกใช้เป็นครั้งที่สอง"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s>: พาเรนต์ \"%s\" ไม่ได้ระบุ"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s>: ค่าเรขาคณิต \"%s\" ไม่ได้ระบุ"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> ต้องกำหนดตำแหน่งและขนาด หรือพาเรนต์ที่มี่ตำแหน่งขนาด"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "คุณต้องกำหนดสีพื้นหลังเพื่อให้ค่าอัลฟามีความหมาย"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "ไม่รู้จักชนิด \"%s\" สำหรับอิลิเมนต์ <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "ไม่รู้จัก style_set \"%s\" สำหรับอิลิเมนต์ <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "ชนิดหน้าต่าง \"%s\" ถูกตั้ง style set ไว้อยู่แล้ว"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "ไม่อนุญาตให้มีอิลิเมนต์ <%s> ภายใน <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"ไม่สามารถกำหนดทั้ง \"button_width\"/\"button_height\" กับ \"aspect_ratio\" "
+"ของปุ่มพร้อมกันได้"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "ไม่รู้จักระยะทาง \"%s\""
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "ไม่รู้จัก aspect ratio \"%s\""
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "ไม่รู้จักเส้นขอบ \"%s\""
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "ขาดแอตทริบิวต์ \"start_angle\" หรือ \"from\" ในอิลิเมนต์ <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "ขาดแอตทริบิวต์ \"extent_angle\" หรือ \"to\" ในอิลิเมนต์ <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "ไม่เข้าใจค่า \"%s\" สำหรับชนิดของการไล่ระดับสี"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "ไม่เข้าใจชนิดการเติม \"%s\" สำหรับอิลิเมนต์ <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "ไม่เข้าใจค่า state \"%s\" สำหรับอิลิเมนต์ <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "ไม่เข้าใจค่า shadow \"%s\" สำหรับอิลิเมนต์ <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "ไม่เข้าใจค่า arrow \"%s\" สำหรับอิลิเมนต์ <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "ไม่มี <draw_ops> ที่ชื่อ \"%s\" กำหนดไว้"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "การรวม draw_ops \"%s\" ที่นี่จะทำให้เกิดการอ้างอิงแบบวนรอบ"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "ไม่รู้จักค่า position \"%s\" สำหรับชิ้นส่วนเฟรม"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "มีรูปแบบเฟรมที่ตำแหน่ง %s อยู่ก่อนแล้ว"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "ยังไม่ได้กำหนด <draw_ops> ชื่อ \"%s\""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "ไม่รู้จักฟังก์ชัน \"%s\" สำหรับปุ่ม"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "ไม่มีฟังก์ชันปุ่ม \"%s\" ในรุ่นนี้ (%d, ต้องเป็นรุ่น %d ขึ้นไป)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "ไม่รู้สถานะ \"%s\" สำหรับปุ่ม"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "รูปแบบเฟรมมีปุ่มสำหรับฟังก์ชัน %s สถานะ %s อยู่ก่อนแล้ว"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" ไม่ใช่ค่าที่ใช้ได้สำหรับแอตทริบิวต์ focus"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" ไม่ใช่ค่าที่ใช้ได้สำหรับแอตทริบิวต์ state"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "ไม่มีรูปแบบที่ชื่อ \"%s\" กำหนดไว้"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" ไม่ใช่ค่าที่ใช้ได้สำหรับแอตทริบิวต์ resize"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "ไม่ควรมีแอตทริบิวต์ \"resize\" ในอิลิเมนต์ <%s> สำหรับสถานะขยายแผ่/ม้วนเก็บ"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "ไม่ควรมีแอตทริบิวต์ \"resize\" ในอิลิเมนต์ <%s> สำหรับสถานะขยายแผ่"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "มีรูปแบบสำหรับ state %s resize %s focus %s กำหนดไว้ก่อนแล้ว"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "มีรูปแบบสำหรับ state %s focus %s กำหนดไว้ก่อนแล้ว"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"ไม่สามารถมี draw_ops ซ้อนกันสองค่าสำหรับอิลิเมนต์ <piece> "
+"(ชุดตกแต่งอาจมีการกำหนดทั้งแอตทริบิวต์ draw_ops และอิลิเมนต์ <draw_ops> "
+"หรือไม่ก็กำหนดอิลิเมนต์ซ้อนกันสองตัว)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"ไม่สามารถมี draw_ops ซ้อนกันสองค่าสำหรับอิลิเมนต์ <button> "
+"(ชุดตกแต่งอาจมีการกำหนดทั้งแอตทริบิวต์ draw_ops และอิลิเมนต์ <draw_ops> "
+"หรือไม่ก็กำหนดอิลิเมนต์ซ้อนกันสองตัว)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"ไม่สามารถมี draw_ops ซ้อนกันสองค่าสำหรับอิลิเมนต์ <menu_icon> "
+"(ชุดตกแต่งอาจมีการกำหนดทั้งแอตทริบิวต์ draw_ops และอิลิเมนต์ <draw_ops> "
+"หรือไม่ก็กำหนดอิลิเมนต์ซ้อนกันสองตัว)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "อิลิเมนต์ชั้นนอกสุดของชุดตกแต่งต้องเป็น <marco_theme> ไม่ใช่ <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "ไม่อนุญาตให้มีอิลิเมนต์ <%s> ภายในอิลิเมนต์ name/author/date/description"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "ไม่อนุญาตให้มีอิลิเมนต์ <%s> ภายในอิลิเมนต์ <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "ไม่อนุญาตให้มีอิลิเมนต์ <%s> ภายในอิลิเมนต์ distance/border/aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "ไม่อนุญาตให้มีอิลิเมนต์ <%s> ภายในอิลิเมนต์เกี่ยวกับคำสั่งวาด"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "ไม่อนุญาตให้มีอิลิเมนต์ <%s> ภายในอิลิเมนต์ <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "ขาด draw_ops สำหรับชิ้นส่วนเฟรม"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "ขาด draw_ops สำหรับปุ่ม"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "ไม่อนุญาตให้มีข้อความภายในอิลิเมนต์ <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> ถูกระบุซ้ำในชุดตกแต่งนี้"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "หาแฟ้มที่ใช้การได้สำหรับชุดตกแต่ง %s ไม่พบ\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "แฟ้มชุดตกแต่ง %s ไม่มีอิลิเมนต์ราก <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "_หน้าต่าง"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/หน้าต่าง/ฉีกออก"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/หน้าต่าง/โ_ต้ตอบ"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/หน้าต่าง/โต้ตอบแบบโ_มดอล"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/หน้าต่าง/_อรรถประโยชน์"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/หน้าต่าง/_ภาพเริ่มโปรแกรม"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/หน้าต่าง/ท่าเทียบ_บน"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/หน้าต่าง/ท่าเทียบ_ล่าง"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/หน้าต่าง/ท่าเทียบซ้_าย"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/หน้าต่าง/ท่าเทียบข_วา"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/หน้าต่าง/ท่าเทียบ_ทั้งหมด"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/หน้าต่าง/_พื้นโต๊ะ"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "นี่เป็นข้อความตัวอย่างในกล่องโต้ตอบตัวอย่าง"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "รายการเมนูตัวอย่าง %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "หน้าต่างที่มีแต่ขอบ"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "แถบ"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "หน้าต่างโปรแกรมปกติ"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "กล่องโต้ตอบ"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "กล่องโต้ตอบแบบโมดัล"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "แผงอุปกรณ์"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "เมนูที่ฉีกออกมา"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "ขอบ"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "ทดสอบการเรียงปุ่มครั้งที่ %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "ใช้เวลา %g มิลลิวินาทีในการวาดหนึ่งเฟรมหน้าต่าง"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "วิธีใช้: marco-theme-viewer [ชื่อชุดตกแต่ง]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "ไม่สามารถโหลดชุดตกแต่ง: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "อ่านชุดตกแต่ง \"%s\" เสร็จใน %g วินาที\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "อักษรหัวหน้าต่างปกติ"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "อักษรหัวหน้าต่างเล็ก"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "อักษรหัวหน้าต่างใหญ่"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "การจัดเรียงปุ่ม"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "ความเร็ว"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "ชื่อหน้าต่างอยู่ตรงนี้"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"วาด %d เฟรม โดยใช้เวลาที่ไคลเอนท์ทั้งหมด %g วินาที (%g มิลลิวินาทีต่อเฟรม) และ %g "
+"วินาทีตามเวลานาฬิกาจริงซึ่งรวมการติดต่อกับ X เซิร์ฟเวอร์ด้วย (%g มิลลิวินาทีต่อเฟรม)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "การทดสอบนิพจน์ตำแหน่งให้ค่าจริง แต่มีรหัสข้อผิดพลาด"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "การทดสอบนิพจน์ตำแหน่งให้ค่าเท็จ แต่ไม่มีรหัสข้อผิดพลาด"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "คาดหวังว่าจะเจอข้อผิดพลาด แต่ก็ไม่มีข้อมูล"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "คาดหวังว่าจะเจอข้อผิดพลาด %d แต่พบข้อผิดพลาด %d แทน"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "ไม่ได้คาดหวังว่าจะเจอข้อผิดพลาด แต่กลับมี: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "ค่าของ x เป็น %d แต่ที่คาดหวังไว้น่าจะเป็น %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "ค่าของ y เป็น %d แต่ที่คาดหวังไว้น่าจะเป็น %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "แจงค่านิพจน์พิกัดทั้งหมด %d นิพจน์ ในเวลา %g วินาที (%g วินาทีโดยเฉลี่ย)\n"
+
+#~ msgid ""
+#~ "<big><b><tt>%s</tt> is not responding.</b></big>\n"
+#~ "\n"
+#~ "<i>You may choose to wait a short while for it to continue or force the "
+#~ "application to quit entirely.</i>"
+#~ msgstr ""
+#~ "<big><b><tt>%s</tt> ไม่ตอบสนอง</b></big>\n"
+#~ "\n"
+#~ "<i>คุณอาจเลือกที่จะรอสักครู่ เพื่อให้โปรแกรมทำงานต่อ หรือจะบังคับโปรแกรมออกทันทีเลยก็ได้</i>"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "เปิดหน้าต่างอย่างนี้อีกบาน"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "นี่เป็นปุ่มตัวอย่างพร้อมกับไอคอน 'เปิด'"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "นี่เป็นปุ่มตัวอย่างพร้อมกับไอคอน 'ออก'"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "ไม่สามารถเปิดกล่องโต้ตอบ เพื่อเตือนเกี่ยวกับโปรแกรมซึ่งไม่รองรับการจัดการวาระ: %s\n"
+
+#~ msgid "Title"
+#~ msgstr "หัวหน้าต่าง"
+
+#~ msgid "Class"
+#~ msgstr "คลาส"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "เกิดข้อผิดพลาดขณะใช้ \"%s\":\n"
+#~ "%s."
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "ไม่เข้าใจข้อความ \"%s\" จากโพรเซสกล่องโต้ตอบ\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "เกิดข้อผิดพลาดขณะอ่านจากโพรเซสกล่องโต้ตอบ: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr "เกิดข้อผิดพลาด ขณะเปิดหน้าต่าง ถามการฆ่าโปรแกรม: %s\n"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "มีการระบุ <author> ซ้ำในชุดตกแต่งนี้"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "<copyright> ถูกระบุซ้ำในชุดตกแต่งนี้"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "<date> ถูกระบุซ้ำในชุดตกแต่งนี้"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "<description> ถูกระบุซ้ำในชุดตกแต่งนี้"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr "ไม่สามารถเปิดกล่องโต้ตอบ เพื่อแสดงข้อผิดพลาดของคำสั่ง: %s\n"
+
+#~ msgid ""
+#~ "Holding the \"shift\" key while using this binding reverses the direction "
+#~ "of movement."
+#~ msgstr "กดปุ่ม \"shift\" ค้างไว้ขณะกดปุ่มลัดนี้ จะเคลื่อนที่ในทิศย้อนกลับ"
+
+#~ msgid ""
+#~ "Holding the \"shift\" key while using this binding makes the direction go "
+#~ "forward again."
+#~ msgstr "กดปุ่ม \"shift\" ค้างไว้ขณะกดปุ่มลัดนี้ จะเคลื่อนที่ในทิศเดิมอีกครั้ง"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "ไม่รู้จักแอตทริบิวต์ %s ในอิลิเมนต์ <marco_session>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "ไม่รู้จักแอตทริบิวต์ %s ในอิลิเมนต์ <maximized>"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "ไม่รู้จักแอตทริบิวต์ %s ในอิลิเมนต์ <geometry>"
+
+#~ msgid "The keybinding used to activate the window menu."
+#~ msgstr "ปุ่มลัดสำหรับเปิดเมนูหน้าต่าง"
+
+#~ msgid "The keybinding used to toggle fullscreen mode."
+#~ msgstr "ปุ่มลัดสำหรับสลับโหมดเต็มหน้าจอ"
+
+#~ msgid "The keybinding used to toggle maximization."
+#~ msgstr "ปุ่มลัดสำหรับสลับสถานะขยายเต็ม"
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "สลับการค้างอยู่บนสุด"
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับการค้างอยู่บนสุด หน้าต่างที่ค้างอยู่บนสุดจะปรากฏอยู่เหนือหน้าต่างอื่นๆ "
+#~ "ที่ซ้อนทับกันเสมอ"
+
+#~ msgid "The keybinding used to maximize a window."
+#~ msgstr "ปุ่มลัดสำหรับขยายหน้าต่างเต็มจอ"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "เลิกขยายแผ่หน้าต่าง"
+
+#~ msgid "The keybinding used to unmaximize a window."
+#~ msgstr "ปุ่มลัดสำหรับเลิกขยายหน้าต่างเต็ม"
+
+#~ msgid "The keybinding used to toggle shaded/unshaded state."
+#~ msgstr "ปุ่มลัดสำหรับม้วน/คลี่หน้าต่าง"
+
+#~ msgid "The keybinding used to minimize a window."
+#~ msgstr "ปุ่มลัดสำหรับย่อเก็บหน้าต่าง"
+
+#~ msgid "The keybinding used to close a window."
+#~ msgstr "ปุ่มลัดสำหรับปิดหน้าต่าง"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard."
+#~ msgstr "ปุ่มลัดสำหรับเข้าสู่ \"โหมดเคลื่อนย้าย\" และเริ่มการย้ายหน้าต่างด้วยแป้นพิมพ์"
+
+#~ msgid "Toggle window on all workspaces"
+#~ msgstr "สลับการแสดงหน้าต่างบนทุกพื้นที่ทำงาน"
+
+#~ msgid "The keybinding used to move a window to workspace 1."
+#~ msgstr "ปุ่มลัดสำหรับย้ายหน้าต่างไปพื้นที่ทำงาน 1"
+
+#~ msgid "The keybinding used to move a window one workspace to the left."
+#~ msgstr "ปุ่มลัดสำหรับย้ายหน้าต่างไปพื้นที่ทำงานด้านซ้าย"
+
+#~ msgid "The keybinding used to move a window one workspace to the right."
+#~ msgstr "ปุ่มลัดสำหรับย้ายหน้าต่างไปพื้นที่ทำงานด้านขวา"
+
+#~ msgid "The keybinding used to move a window one workspace up."
+#~ msgstr "ปุ่มลัดสำหรับย้ายหน้าต่างไปพื้นที่ทำงานด้านบน"
+
+#~ msgid "The keybinding used to move a window one workspace down."
+#~ msgstr "ปุ่มลัดสำหรับย้ายหน้าต่างไปพื้นที่ทำงานด้านล่าง"
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other "
+#~ "windows. If the window is covered by another one, it raises the window "
+#~ "above all others, and if the window is already fully visible, it lowers "
+#~ "it below all others."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้เปลี่ยนสถานะหน้าต่าง ว่าอยู่หน้าหรือหลังหน้าต่างอื่นๆ ถ้าหน้าต่างถูกหน้าต่างอื่นบังอยู่ "
+#~ "จะยกหน้าต่างขึ้นมาหน้าสุด และถ้าหน้าต่างอยู่หน้าสุดอยู่แล้ว ก็จะถอยหน้าต่างลงไปอยู่หลังสุด"
+
+#~ msgid "This keybinding raises the window above other windows."
+#~ msgstr "ปุ่มลัดนี้ยกหน้าต่างขึ้นมาไว้หน้าหน้าต่างอื่นๆ"
+
+#~ msgid "This keybinding lowers a window below other windows."
+#~ msgstr "ปุ่มลัดนี้ถอยหน้าต่างลงไปใว้หลังหน้าต่างอื่น"
+
+#~ msgid "This keybinding resizes a window to fill available vertical space."
+#~ msgstr "ปุ่มลัดนี้ขยายหน้าต่างเพื่อให้เต็มความสูงของหน้าจอ"
+
+#~ msgid "This keybinding resizes a window to fill available horizontal space."
+#~ msgstr "ปุ่มลัดนี้ขยายหน้าต่างเพื่อให้เต็มความกว้างของหน้าจอ"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen."
+#~ msgstr "ปุ่มลัดนี้ย้ายหน้าต่างไปที่มุมตะวันตกเฉียงเหนือ (บนซ้าย) ของหน้าจอ"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen."
+#~ msgstr "ปุ่มลัดนี้ย้ายหน้าต่างไปที่มุมตะวันออกเฉียงเหนือ (บนขวา) ของหน้าจอ"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (bottom left) corner "
+#~ "of the screen."
+#~ msgstr "ปุ่มลัดนี้ย้ายหน้าต่างไปที่มุมตะวันตกเฉียงใต้ (ล่างซ้าย) ของหน้าจอ"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (bottom right) corner "
+#~ "of the screen."
+#~ msgstr "ปุ่มลัดนี้ย้ายหน้าต่างไปที่มุมตะวันออกเฉียงใต้ (ล่างขวา) ของหน้าจอ"
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the screen."
+#~ msgstr "ปุ่มลัดนี้ย้ายหน้าต่างไปที่ขอบด้านเหนือ (บนสุด) ของหน้าจอ"
+
+#~ msgid ""
+#~ "This keybinding moves a window against the south (bottom) side of the "
+#~ "screen."
+#~ msgstr "ปุ่มลัดนี้ย้ายหน้าต่างไปที่ขอบด้านใต้ (ล่างสุด) ของหน้าจอ"
+
+#~ msgid ""
+#~ "This keybinding moves a window against the east (right) side of the "
+#~ "screen."
+#~ msgstr "ปุ่มลัดนี้ย้ายหน้าต่างไปที่ขอบด้านตะวันออก (ขวาสุด) ของหน้าจอ"
+
+#~ msgid ""
+#~ "This keybinding moves a window against the west (left) side of the screen."
+#~ msgstr "ย้ายหน้าต่างไปที่ขอบด้านตะวันตก (ซ้ายสุด) ของหน้าจอ"
+
+#~ msgid "This keybinding moves a window into the center of the screen."
+#~ msgstr "ปุ่มลัดนี้ย้ายหน้าต่างไปที่กลางหน้าจอ"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "โดยปกติ ปฏิบัติการหลายอย่าง (เช่น การคลิกบนพื้นที่ภายในหน้าต่าง "
+#~ "การย้ายหรือปรับขนาดหน้าต่าง) จะยกหน้าต่างขึ้นด้วย ถ้ากำหนดตัวเลือกนี้เป็นเท็จ "
+#~ "(ซึ่งไม่ขอแนะนำ) จะไม่ยกหน้าต่างเมื่อมีการโต้ตอบอย่างอื่นกับผู้ใช้ "
+#~ "และจะไม่ตอบสนองการร้องขอการยกหน้าต่างจากโปรแกรมอื่นๆ ด้วย ดูรายละเอียดได้ที่ http://"
+#~ "bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงานที่อยู่ด้านบนพื้นที่ทำงานปัจจุบัน รูปแบบคือ \"&lt;Control&gt;a"
+#~ "\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงานที่อยู่ด้านล่างพื้นที่ทำงานปัจจุบัน รูปแบบคือ \"&lt;Control&gt;a"
+#~ "\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงานที่อยู่ด้านซ้ายของพื้นที่ทำงานปัจจุบัน รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงานที่อยู่ด้านขวาของพื้นที่ทำงานปัจจุบัน รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 1 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 10 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 11 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 12 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 2 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 3 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 4 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 5 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 6 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 7 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 8 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับไปยังพื้นที่ทำงาน 9 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับเรียกเมนูหน้าต่าง รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น "
+#~ "\"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" "
+#~ "ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to close a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับปิดหน้าต่าง รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;"
+#~ "Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับ \"โหมดเคลื่อนย้าย\" ซึ่งยอมให้คุณใช้แป้นพิมพ์เคลื่อนย้ายหน้าต่าง รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับ \"โหมดปรับขนาด\" ซึ่งยอมให้คุณใช้แป้นพิมพ์ปรับขนาดหน้าต่าง รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับซ่อนหน้าต่างทั้งหมดและโฟกัสไปที่พื้นโต๊ะ รูปแบบคือ \"&lt;Control&gt;a\" หรือ "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับขยายแผ่หน้าต่าง รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;"
+#~ "Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับย่อเก็บหน้าต่าง รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;"
+#~ "Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับย้ายหน้าต่างลงไปยังพื้นที่ทำงานถัดลงไปด้านล่าง รูปแบบคือ \"&lt;Control&gt;a"
+#~ "\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับย้ายหน้าต่างไปยังพื้นที่ทำงานถัดไปด้านซ้าย รูปแบบคือ \"&lt;Control&gt;a\" "
+#~ "หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับย้ายหน้าต่างไปยังพื้นที่ทำงานถัดไปด้านขวา รูปแบบคือ \"&lt;Control&gt;a\" "
+#~ "หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับย้ายหน้าต่างขึ้นไปยังพื้นที่ทำงานถัดขึ้นไปด้านบน รูปแบบคือ \"&lt;Control&gt;a\" "
+#~ "หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับย้ายหน้าต่างไปยังพื้นที่ทำงาน 1 รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัสไปยังพาเนลต่างๆ และพื้นโต๊ะ ในทิศย้อนกลับ โดยใช้หน้าต่างป๊อปอัพช่วย "
+#~ "รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัสไปยังพาเนลต่างๆ และพื้นโต๊ะ ในทิศย้อนกลับ โดยไม่ใช้หน้าต่างป๊อปอัพช่วย "
+#~ "รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัส ระหว่างหน้าต่างทั้งหลายของโปรแกรมประยุกต์ในทิศย้อนกลับ "
+#~ "โดยไม่ใช้หน้าต่างป๊อปอัพช่วย กด \"shift\" พร้อมกับปุ่มลัดนี้ถ้าต้องการวนให้ไปข้างหน้า "
+#~ "รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัส ระหว่างหน้าต่างทั้งหลายของโปรแกรมประยุกต์ในทิศย้อนกลับ "
+#~ "โดยใช้หน้าต่างป๊อปอัพช่วย กด \"shift\" พร้อมกับปุ่มลัดนี้ถ้าต้องการวนให้ไปข้างหน้า "
+#~ "รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัส ระหว่างหน้าต่างต่างๆในทิศย้อนกลับ โดยไม่ใช้หน้าต่างป๊อปอัพช่วย กด "
+#~ "\"shift\" พร้อมกับปุ่มลัดนี้ถ้าต้องการวนให้ไปข้างหน้า รูปแบบคือ \"&lt;Control&gt;a\" "
+#~ "หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัส ระหว่างหน้าต่างต่างๆในทิศย้อนกลับ โดยใช้หน้าต่างป๊อปอัพช่วย กด \"shift"
+#~ "\" พร้อมกับปุ่มลัดนี้ถ้าต้องการวนให้ไปข้างหน้า รูปแบบคือ \"&lt;Control&gt;a\" หรือ "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัสไปยังพาเนลต่างๆ และพื้นโต๊ะ โดยใช้หน้าต่างป๊อปอัพช่วย รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัสไปยังพาเนลต่างๆ และพื้นโต๊ะ โดยไม่ใช้หน้าต่างป๊อปอัพช่วย รูปแบบคือ "
+#~ "\"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัส ระหว่างหน้าต่างทั้งหลายของโปรแกรมประยุกต์โดยไม่ใช้หน้าต่างป๊อปอัพช่วย "
+#~ "กด \"shift\" พร้อมกับปุ่มลัดนี้ถ้าต้องการวนให้กลับคนละทาง รูปแบบคือ \"&lt;Control&gt;a"
+#~ "\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัส ระหว่างหน้าต่างทั้งหลายของโปรแกรมประยุกต์โดยใช้หน้าต่างป๊อปอัพช่วย "
+#~ "(โดยทั่วไปแล้วใช้ &lt;Alt&gt;F6) กด \"shift\" "
+#~ "พร้อมกับปุ่มลัดนี้ถ้าต้องการวนให้กลับคนละทาง รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัส ระหว่างหน้าต่างต่างๆ โดยไม่ใช้หน้าต่างป๊อปอัพช่วย (ทั่วไปแล้วใช้ &lt;"
+#~ "Alt&gt;Escape) กด \"shift\" พร้อมกับปุ่มลัดนี้ถ้าต้องการวนให้กลับคนละทาง รูปแบบคือ "
+#~ "\"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับวนโฟกัส ระหว่างหน้าต่างต่างๆ โดยใช้หน้าต่างป๊อปอัพช่วย (ทั่วไปแล้วใช้ &lt;"
+#~ "Alt&gt;Tab) กด \"shift\" พร้อมกับปุ่มลัดนี้ถ้าต้องการวนให้กลับคนละทาง รูปแบบคือ "
+#~ "\"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับการค้างอยู่บนสุด หน้าต่างที่ค้างอยู่บนสุดจะปรากฏอยู่หน้าหน้าต่างอื่นๆเสมอ "
+#~ "รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับโหมดเต็มหน้าจอ รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น "
+#~ "\"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" "
+#~ "ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับสถานะขยายแผ่ รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น "
+#~ "\"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" "
+#~ "ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับสถานะม้วนเก็บ/คลี่ออก รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับสลับ ว่าจะแสดงหน้าต่างบนทุกพื้นที่ทำงาน หรือบนพื้นที่ทำงานเดียว รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับยกเลิกการขยายแผ่หน้าต่างเต็มพื้นโต๊ะ รูปแบบคือ \"&lt;Control&gt;a\" หรือ "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับเปิดกล่องโต้ตอบ \"เรียกโปรแกรม\" ของพาเนล รูปแบบคือ \"&lt;Control&gt;a"
+#~ "\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับเปิดเทอร์มินัล รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;"
+#~ "Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับเรียกโปรแกรมจับภาพของพาเนล เพื่อจับภาพหน้าต่างที่ต้องการ รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับเรียกโปรแกรมจับภาพหน้าจอของพาเนล รูปแบบคือ \"&lt;Control&gt;a\" หรือ "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ปุ่มลัดสำหรับเปิดเมนูหลักของพาเนล รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ใช้ปรับว่าหน้าต่างจะอยู่ข้างบนหรือล่างหน้าต่างอื่น ถ้าหน้าต่างนั้นถูกหน้าต่างอื่นบังอยู่ "
+#~ "ก็จะถูกยกขึ้นมาไว้บนสุด แต่ถ้าหน้าต่างนั้นไม่ถูกบังอยู่ ก็จะถูกเอาไปไว้หลังสุด รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้เอาหน้าต่างลงไปอยู่หลังหน้าต่างอื่นๆ รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ย้ายหน้าต่างไปที่ขอบทางเหนือ (ด้านบน) ของหน้าจอ รูปแบบคือ \"&lt;Control&gt;a"
+#~ "\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the center of the screen. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ย้ายหน้าต่างไปที่กลางหน้าจอ รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ย้ายหน้าต่างไปที่ขอบทางตะวันออก (ด้านขวา) ของหน้าจอ รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ย้ายหน้าต่างไปที่มุมตะวันออกเฉียงเหนือ (ด้านบนขวา) ของหน้าจอ รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ย้ายหน้าต่างไปที่มุมตะวันตกเฉียงเหนือ (ด้านบนซ้าย) ของหน้าจอ รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ย้ายหน้าต่างไปที่ขอบทางใต้ (ด้านล่าง) ของหน้าจอ รูปแบบคือ \"&lt;Control&gt;a\" "
+#~ "หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ย้ายหน้าต่างไปที่มุมตะวันออกเฉียงใต้ (ด้านล่างขวา) ของหน้าจอ รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ย้ายหน้าต่างไปที่มุมตะวันตกเฉียงใต้ (ด้านล่างซ้าย) ของหน้าจอ รูปแบบคือ \"&lt;"
+#~ "Control&gt;a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ย้ายหน้าต่างไปที่ขอบทางตะวันตก (ด้านซ้าย) ของหน้าจอ รูปแบบคือ \"&lt;Control&gt;"
+#~ "a\" หรือ \"&lt;Shift&gt;&lt;Alt&gt;F1\" "
+#~ "ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ "
+#~ "\"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ "
+#~ "ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ยกหน้าต่างขึ้นมาอยู่หน้าหน้าต่างอื่นๆ รูปแบบคือ \"&lt;Control&gt;a\" หรือ \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก และเข้าใจชื่อย่อ "
+#~ "เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled"
+#~ "\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ใช้ขยายแผ่หน้าต่างเต็มความกว้างของพื้นโต๊ะ รูปแบบคือ \"&lt;Control&gt;a\" หรือ "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "ปุ่มลัดนี้ใช้ขยายแผ่หน้าต่างเต็มความสูงของพื้นโต๊ะ รูปแบบคือ \"&lt;Control&gt;a\" หรือ "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\" ตัวอ่านค่าคีย์ไม่สนใจว่าเป็นตัวพิมพ์ใหญ่หรือเล็ก "
+#~ "และเข้าใจชื่อย่อ เช่น \"&lt;Ctl&gt;\" และ \"&lt;Ctrl&gt;\" "
+#~ "คุณสามารถตั้งค่าตัวเลือกเป็น \"disabled\" ได้ ถ้าไม่ต้องการปุ่มลัดสำหรับปฏิบัติการนี้"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "เลิกขยายแผ่หน้าต่าง"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "ขาดแอตทริบิวต์ \"%s\" ในอิลิเมนต์ <%s>"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "ชุดตกแต่งมีไอคอนสำรองอยู่แล้ว"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "ชุดตกแต่งมีไอคอนเล็กสำรองอยู่แล้ว"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "ชนิดของ %s ไม่ใช่จำนวนเต็ม"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%d ในคีย์ MateConf %s ไม่ใช่ขนาดเคอร์เซอร์ที่สมเหตุสมผล ค่าดังกล่าวควรอยู่ในช่วง 1..128\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d ในคีย์ MateConf %s ไม่ใช่จำนวนพื้นที่ทำงานที่สมเหตุสมผล สามารถตั้งได้มากสุดเป็น %d\n"
+
+#~ msgid "On _Top"
+#~ msgstr "_บนสุด"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr "ถ้าบังคับออกจากโปรแกรมนี้ ข้อมูลที่ยังไม่ได้ถูกบันทึกจะสูญหาย"
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "ไม่รู้จักฟังก์ชัน \"%s\" สำหรับไอคอนเมนู"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "ไม่รู้จักสถานะ \"%s\" สำหรับไอคอนเมนู"
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "ชุดตกแต่งมีไอคอนเมนูสำหรับฟังก์ชัน %s สถานะ %s อยู่แล้ว"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "ขาด draw_ops สำหรับไอคอนเมนู"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "ไม่สามารถอ่านชุดตกแต่งจากแฟ้ม %s: %s\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "ต้องระบุ <menu_icon function=\"%s\" state=\"%s\" draw_ops=\"อะไรก็ตามแต่\"/> "
+#~ "สำหรับชุดตกแต่งนี้"
+
+#~ msgid ""
+#~ "If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+#~ "focused window will be automatically raised after a delay (the delay is "
+#~ "specified by the auto_raise_delay key). This preference is poorly named, "
+#~ "but kept for backwards compatibility. To try to be more clear (at least "
+#~ "to the technically inclined), its meaning is \"automatically raise the "
+#~ "window following a timeout which is triggered by non-grabbed mouse entry "
+#~ "in sloppy or mouse focus modes\". It is unrelated to clicking behavior (i."
+#~ "e. this is not related to raise-on-click/orthogonal-raise). It is "
+#~ "unrelated to entering a window during drag and drop (because that results "
+#~ "in the application grabbing the mouse)"
+#~ msgstr ""
+#~ "ถ้าเป็นจริง และโหมดโฟกัสหน้าต่างเป็น \"sloppy\" หรือ \"mouse\" "
+#~ "จะยกหน้าต่างที่ได้โฟกัสขึ้นมาโดยอัตโนมัติหลังจากหน่วงเวลาระยะหนึ่ง (กำหนดเวลาที่หน่วงโดยคีย์ "
+#~ "auto_raise_delay) ค่าตั้งนี้ตั้งชื่อค่อนข้างแย่ แต่ก็เก็บชื่อไว้เพื่อความเข้ากันได้กับรุ่นเก่า "
+#~ "ถ้าจะให้ชัดเจนกว่านี้ (อย่างน้อยก็สำหรับผู้มีความรู้ทางเทคนิค) ความหมายของมันก็คือ "
+#~ "\"ยกหน้าต่างขึ้นมาโดยอัตโนมัติหลังการหน่วงเวลา "
+#~ "ซึ่งเริ่มจับเวลาเมื่อมีการเลื่อนเมาส์เข้ามาในหน้าต่างขณะใช้โหมดโฟกัสหน้าต่างแบบ sloppy หรือ "
+#~ "mouse โดยขณะนั้นไม่มีหน้าต่างอื่นยึดเมาส์อยู่\" การยกหน้าต่างดังกล่าว "
+#~ "ไม่เกี่ยวกับพฤติกรรมการคลิก (กล่าวคือ ไม่เกี่ยวกับการยกหน้าต่างขึ้นเมื่อถูกคลิก "
+#~ "หรือการยกหน้าต่างขึ้นตามลำดับ) และไม่เกี่ยวกับการเลื่อนเมาส์เข้าสู่หน้าต่างระหว่างการลากวาง "
+#~ "(เพราะนั่นหมายความว่าโปรแกรมหนึ่งกำลังยึดเมาส์ไว้ใช้อยู่)"
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "โปรแกรมบางตัวละเมิดข้อกำหนดโดยทำให้โปรแกรมจัดการหน้าต่างต้องทำงานแก้ขัด ตัวอย่างเช่น "
+#~ "ในอุดมคติแล้ว marco จะเปิดกล่องโต้ตอบทั้งหลาย ณ ตำแหน่งคงที่เทียบกับหน้าต่างแม่ "
+#~ "ซี่งจำเป็นต้องละเลยตำแหน่งที่โปรแกรมระบุมา แต่ Java/Swing "
+#~ "บางรุ่นใช้กล่องโต้ตอบในการเปิดเมนูป๊อปอัพ ทำให้ marco "
+#~ "จำต้องงดการวางตำแหน่งกล่องโต้ตอบ เพื่อให้เมนูในโปรแกรมจาวาเสียๆ เหล่านี้ทำงานได้ "
+#~ "และยังมีตัวอย่างทำนองนี้อีกมากมาย ตัวเลือกนี้จะตั้งให้ marco "
+#~ "เข้าสู่โหมดการทำงานที่ถูกหลักเกณฑ์ทุกประการ ซึ่งอาจจะให้ UI ที่ดีกว่า "
+#~ "ถ้าคุณไม่ต้องการรันโปรแกรมที่เสียๆ แต่น่าเศร้าที่ต้องเปิดการแก้ขัดนี้ไว้ก่อน "
+#~ "โลกแห่งความเป็นจริงช่างโสมม การแก้ขัดบางอย่างก็เป็นเพราะข้อจำกัดในข้อกำหนดมาตรฐานเอง "
+#~ "ทำให้บั๊กในโหมดที่ปราศจากการแก้ขัดไม่สามารถแก้ได้โดยไม่แก้มาตรฐาน"
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "ตัวแจงค่านิพจน์พิกัดทำข้อมูลล้น ความจริงแล้วนี่ถือเป็นบั๊กของ Marco "
+#~ "แต่คุณแน่ใจหรือว่าคุณต้องการนิพจน์ที่ใหญ่มหึมาเช่นนี้?"
diff --git a/po/tk.po b/po/tk.po
new file mode 100644
index 00000000..5c305c80
--- /dev/null
+++ b/po/tk.po
@@ -0,0 +1,2679 @@
+# Turkmen translation of marco
+# Copyright (C) 2004 Free Software Foundation
+# Copyright (C) 2004 Kakilik Project <kakilik.sourceforge.net>
+# This file is distributed under the terms of GNU General Public License (GPL)
+# Gurban Mühemmet Tewekgeli <[email protected]>, 2004.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-09-19 12:30+0200\n"
+"PO-Revision-Date: 2004-08-13 03:30+0330\n"
+"Last-Translator: Gurban Mühemmet Tewekgeli <[email protected]>\n"
+"Language-Team: Turkmen <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr ""
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:128
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+
+#: ../src/delete.c:63 ../src/delete.c:90 ../src/marco-dialog.c:70
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr ""
+
+#: ../src/delete.c:70 ../src/delete.c:97 ../src/marco-dialog.c:77
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+
+#: ../src/delete.c:128
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr ""
+
+#: ../src/delete.c:263
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr ""
+
+#: ../src/delete.c:344
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+
+#: ../src/delete.c:452
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr ""
+
+#: ../src/display.c:319
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr ""
+
+#: ../src/errors.c:231
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+
+#: ../src/errors.c:238
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr ""
+
+#: ../src/frames.c:1125
+msgid "Close Window"
+msgstr "Äpişgäni Bagla"
+
+#: ../src/frames.c:1128
+msgid "Window Menu"
+msgstr "Äpişge Menüsi"
+
+#: ../src/frames.c:1131
+msgid "Minimize Window"
+msgstr "Äpişgäni Kiçelt"
+
+#: ../src/frames.c:1134
+msgid "Maximize Window"
+msgstr "Äpişgäni Ulalt"
+
+#: ../src/frames.c:1137
+msgid "Unmaximize Window"
+msgstr "Äpişgäniň Ulylykny Gaýtar"
+
+#: ../src/keybindings.c:994
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+
+#: ../src/keybindings.c:2620
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+
+#: ../src/keybindings.c:2725
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr ""
+
+#: ../src/keybindings.c:3570
+msgid "No terminal command has been defined.\n"
+msgstr ""
+
+#: ../src/main.c:69
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+
+#: ../src/main.c:257
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:263
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:269
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:274
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:280
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:286
+msgid "Print version"
+msgstr ""
+
+#: ../src/main.c:440
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr ""
+
+#: ../src/main.c:456
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr ""
+
+#: ../src/main.c:518
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr ""
+
+#: ../src/menu.c:54
+msgid "Mi_nimize"
+msgstr "_Kiçelt"
+
+#: ../src/menu.c:55
+msgid "Ma_ximize"
+msgstr "_Ulalt"
+
+#: ../src/menu.c:56
+msgid "Unma_ximize"
+msgstr "_Gaýtar"
+
+#: ../src/menu.c:57
+msgid "Roll _Up"
+msgstr "_Ýygna"
+
+#: ../src/menu.c:58
+msgid "_Unroll"
+msgstr "_Aç"
+
+#: ../src/menu.c:59 ../src/menu.c:60
+msgid "On _Top"
+msgstr "Iň Göň_de"
+
+#: ../src/menu.c:61
+msgid "_Move"
+msgstr "Göç_ir"
+
+#: ../src/menu.c:62
+msgid "_Resize"
+msgstr ""
+
+#. separator
+#: ../src/menu.c:64
+msgid "_Close"
+msgstr "_Bagla"
+
+#. separator
+#: ../src/menu.c:66
+msgid "_Always on Visible Workspace"
+msgstr ""
+
+#: ../src/menu.c:67
+msgid "_Only on This Workspace"
+msgstr ""
+
+#: ../src/menu.c:68
+msgid "Move to Workspace _Left"
+msgstr ""
+
+#: ../src/menu.c:69
+msgid "Move to Workspace R_ight"
+msgstr ""
+
+#: ../src/menu.c:70
+msgid "Move to Workspace _Up"
+msgstr ""
+
+#: ../src/menu.c:71
+msgid "Move to Workspace _Down"
+msgstr ""
+
+#: ../src/menu.c:162 ../src/prefs.c:2106
+#, c-format
+msgid "Workspace %d"
+msgstr ""
+
+#: ../src/menu.c:171
+msgid "Workspace 1_0"
+msgstr ""
+
+#: ../src/menu.c:173
+#, c-format
+msgid "Workspace %s%d"
+msgstr ""
+
+#: ../src/menu.c:368
+msgid "Move to Another _Workspace"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Şift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Kontrol"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:110
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr ""
+
+#: ../src/marco-dialog.c:118
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr ""
+
+#: ../src/marco-dialog.c:129
+msgid "_Force Quit"
+msgstr ""
+
+#: ../src/marco-dialog.c:226
+msgid "Title"
+msgstr ""
+
+#: ../src/marco-dialog.c:238
+msgid "Class"
+msgstr ""
+
+#: ../src/marco-dialog.c:264
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+
+#: ../src/marco-dialog.c:330
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:9
+msgid "Close window"
+msgstr "Äpişgäni Bagla"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:12
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:13
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:14
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:16
+msgid "Hide all windows and focus desktop"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:17
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key)."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:19
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:22
+msgid "Lower window below other windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:23
+msgid "Maximize window"
+msgstr "Äpişgäni Ulalt"
+
+#: ../src/marco.schemas.in.h:24
+msgid "Maximize window horizontally"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:25
+msgid "Maximize window vertically"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:26
+msgid "Minimize window"
+msgstr "Äpişgäni Kiçelt"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:28
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:29
+msgid "Move backwards between panels and the desktop with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:30
+msgid "Move backwards between windows immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:31
+msgid "Move between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move between panels and the desktop with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move between windows immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move between windows with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move focus backwards between windows using popup display"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move window"
+msgstr "Äpişgäni Göçir"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move window one workspace down"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move window one workspace to the left"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move window one workspace to the right"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move window one workspace up"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move window to workspace 1"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move window to workspace 10"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move window to workspace 11"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window to workspace 12"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window to workspace 2"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window to workspace 3"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window to workspace 4"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window to workspace 5"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 6"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 7"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 8"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 9"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:53
+msgid "Name of workspace"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:54
+msgid "Number of workspaces"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:55
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:56
+msgid "Raise obscured window, otherwise lower"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:57
+msgid "Raise window above other windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:58
+msgid "Resize window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:59
+msgid "Run a defined command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:60
+msgid "Run a terminal"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:61
+msgid "Show the panel menu"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:62
+msgid "Show the panel run application dialog"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:63
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:64
+msgid "Switch to workspace 1"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:65
+msgid "Switch to workspace 10"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:66
+msgid "Switch to workspace 11"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:67
+msgid "Switch to workspace 12"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:68
+msgid "Switch to workspace 2"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:69
+msgid "Switch to workspace 3"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:70
+msgid "Switch to workspace 4"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:71
+msgid "Switch to workspace 5"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 6"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 7"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 8"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 9"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace above this one"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace below this one"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace on the left"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace on the right"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:80
+msgid "System Bell is Audible"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:81
+msgid "Take a screenshot"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:82
+msgid "Take a screenshot of a window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:83
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:84
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:85
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:86
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:87
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:88
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:89
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:90
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:91
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:92
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:93
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:94
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:95
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:96
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:97
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:98
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:99
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:100
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:146
+msgid "The name of a workspace."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:147
+msgid "The screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:151
+msgid "The window screenshot command"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, and 'toggle_maximize' which will maximize/unmaximize the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:158
+msgid "Toggle always on top state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:159
+msgid "Toggle fullscreen mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:160
+msgid "Toggle maximization state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:161
+msgid "Toggle shaded state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:162
+msgid "Toggle window on all workspaces"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:164
+msgid "Unmaximize window"
+msgstr "Äpişgeleriň ululygny gaýtar"
+
+#: ../src/marco.schemas.in.h:165
+msgid "Use standard system font in window titles"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:166
+msgid "Visual Bell Type"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:167
+msgid "Window focus mode"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:168
+msgid "Window title font"
+msgstr ""
+
+#: ../src/prefs.c:528 ../src/prefs.c:544 ../src/prefs.c:560 ../src/prefs.c:576
+#: ../src/prefs.c:592 ../src/prefs.c:612 ../src/prefs.c:628 ../src/prefs.c:644
+#: ../src/prefs.c:660 ../src/prefs.c:676 ../src/prefs.c:692 ../src/prefs.c:708
+#: ../src/prefs.c:724 ../src/prefs.c:741 ../src/prefs.c:757 ../src/prefs.c:773
+#: ../src/prefs.c:789 ../src/prefs.c:805 ../src/prefs.c:820 ../src/prefs.c:835
+#: ../src/prefs.c:850 ../src/prefs.c:866 ../src/prefs.c:882 ../src/prefs.c:898
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr ""
+
+#: ../src/prefs.c:943
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+
+#: ../src/prefs.c:967 ../src/prefs.c:1428
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr ""
+
+#: ../src/prefs.c:1145
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+
+#: ../src/prefs.c:1330
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1390
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+
+#: ../src/prefs.c:1455
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1589
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+
+#: ../src/prefs.c:1833
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+
+#: ../src/prefs.c:2187
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+
+#: ../src/resizepopup.c:126
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:408
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr ""
+
+#: ../src/screen.c:424
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+
+#: ../src/screen.c:448
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+
+#: ../src/screen.c:506
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr ""
+
+#: ../src/session.c:884 ../src/session.c:891
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:901
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr ""
+
+#: ../src/session.c:1053
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:1058
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr ""
+
+#: ../src/session.c:1133
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr ""
+
+#: ../src/session.c:1168
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr ""
+
+#: ../src/session.c:1217
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/session.c:1230
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr ""
+
+#: ../src/session.c:1247
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/session.c:1305 ../src/session.c:1337
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr ""
+
+#: ../src/session.c:1409
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr ""
+
+#: ../src/session.c:1469
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr ""
+
+#: ../src/session.c:1489
+#, c-format
+msgid "Unknown element %s"
+msgstr ""
+
+#: ../src/session.c:1961
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr ""
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr ""
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1662
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1676
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1903
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1910
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2090
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2161
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2209
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/theme-parser.c:2294
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2476
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2549
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/theme-parser.c:3153
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3210
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3219
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3227
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3272
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3289
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr ""
+
+#: ../src/theme-parser.c:3298
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr ""
+
+#: ../src/theme-parser.c:3306
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3376
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3392
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3401
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3420
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:3430
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3440
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3450
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+
+#: ../src/theme-parser.c:3464
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3536
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3574
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3612
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3659
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:3679
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+
+#: ../src/theme-parser.c:3684
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3696
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/theme-parser.c:3718
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3984
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3999
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/theme-parser.c:4014
+msgid "No draw_ops provided for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:4054
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:4109
+msgid "<name> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4120
+msgid "<author> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4131
+msgid "<copyright> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4142
+msgid "<date> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4153
+msgid "<description> specified twice for this theme"
+msgstr ""
+
+#: ../src/theme-parser.c:4348
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr ""
+
+#: ../src/theme-parser.c:4403
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr ""
+
+#: ../src/theme-viewer.c:70
+msgid "/_Windows"
+msgstr "/_Äpişgeler"
+
+#: ../src/theme-viewer.c:71
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/theme-viewer.c:72
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Top dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_All docks"
+msgstr ""
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/Des_ktop"
+msgstr ""
+
+#: ../src/theme-viewer.c:131
+msgid "Open another one of these windows"
+msgstr ""
+
+#: ../src/theme-viewer.c:138
+msgid "This is a demo button with an 'open' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:145
+msgid "This is a demo button with a 'quit' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr ""
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr ""
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/theme-viewer.c:397
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/theme-viewer.c:402
+msgid "Border"
+msgstr ""
+
+#: ../src/theme-viewer.c:731
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/theme-viewer.c:760
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/theme-viewer.c:803
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:816
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:839
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:845
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:851
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:856
+msgid "Button Layouts"
+msgstr ""
+
+#: ../src/theme-viewer.c:861
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/theme-viewer.c:908
+msgid "Window Title Goes Here"
+msgstr ""
+
+#: ../src/theme-viewer.c:1012
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:1227
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1229
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1233
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1241
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/theme-viewer.c:1245
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1248
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1310
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "üst"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "ast"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "sol"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "sag"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr ""
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr ""
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr ""
+
+#: ../src/theme.c:843
+msgid "Gradients should have at least two colors"
+msgstr ""
+
+#: ../src/theme.c:969
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:983
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:994
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1007
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1037
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+
+#: ../src/theme.c:1048
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/theme.c:1058
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/theme.c:1105
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/theme.c:1116
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/theme.c:1126
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/theme.c:1155
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr ""
+
+#: ../src/theme.c:1417
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/theme.c:1444
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+
+#: ../src/theme.c:1458
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/theme.c:1525
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+
+#: ../src/theme.c:1582
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/theme.c:1725 ../src/theme.c:1735 ../src/theme.c:1769
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/theme.c:1777
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/theme.c:1834
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/theme.c:1843
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/theme.c:1851
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/theme.c:1861
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+
+#: ../src/theme.c:1980
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr ""
+
+#: ../src/theme.c:2009
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2072
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/theme.c:2129
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2140
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/theme.c:2384 ../src/theme.c:2406 ../src/theme.c:2427
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr ""
+
+#: ../src/theme.c:3913
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+
+#: ../src/theme.c:4363 ../src/theme.c:4395
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+
+#: ../src/theme.c:4446
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr ""
+
+#: ../src/theme.c:4592 ../src/theme.c:4599 ../src/theme.c:4606
+#: ../src/theme.c:4613 ../src/theme.c:4620
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr ""
+
+#: ../src/theme.c:4630
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/theme.c:4652
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+
+#: ../src/theme.c:5041 ../src/theme.c:5103
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/theme.c:5049 ../src/theme.c:5111
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#: ../src/util.c:93
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr ""
+
+#: ../src/util.c:103
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr ""
+
+#: ../src/util.c:109
+#, c-format
+msgid "Opened log file %s\n"
+msgstr ""
+
+#: ../src/util.c:203
+msgid "Window manager: "
+msgstr ""
+
+#: ../src/util.c:349
+msgid "Bug in window manager: "
+msgstr ""
+
+#: ../src/util.c:378
+msgid "Window manager warning: "
+msgstr ""
+
+#: ../src/util.c:402
+msgid "Window manager error: "
+msgstr ""
+
+#: ../src/window-props.c:162
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %ld\n"
+msgstr ""
+
+#. first time through
+#: ../src/window.c:5205
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5876
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
diff --git a/po/tr.po b/po/tr.po
new file mode 100644
index 00000000..2be6212d
--- /dev/null
+++ b/po/tr.po
@@ -0,0 +1,3735 @@
+# Turkish translation of marco.
+# Copyright (C) 2003 Free Software Foundation.
+# This file is distributed under the same license as the marco package.
+#
+# Sinan İmamoğlu <[email protected]>, 2003.
+# Baris Cicek <[email protected]>, 2004, 2005, 2008, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-08-30 18:10+0300\n"
+"PO-Revision-Date: 2009-08-30 18:10+0300\n"
+"Last-Translator: Baris Cicek <[email protected]>\n"
+"Language-Team: Turkish <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Masaüstü"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Pencere Yönetimi"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Zil olayı"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Bilinmeyen pencere bilgi isteği: %d"
+
+#: ../src/core/delete.c:104
+#, c-format
+msgid ""
+"<big><b><tt>%s</tt> is not responding.</b></big>\n"
+"\n"
+"<i>You may choose to wait a short while for it to continue or force the "
+"application to quit entirely.</i>"
+msgstr ""
+"<big><b><tt>%s</tt> cevap vermiyor.</b></big>\n"
+"\n"
+"<i>Uygulamanın devam etmesi için bir müddet bekleyi seçebilirsiniz ya da "
+"uygulamanın tamamen çıkması için onu zorlayabilirsiniz.</i>"
+
+#: ../src/core/delete.c:115
+msgid "_Wait"
+msgstr "_Bekle"
+
+#: ../src/core/delete.c:115
+msgid "_Force Quit"
+msgstr "_Sonlandır"
+
+#: ../src/core/delete.c:216
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Makine adı alınamadı: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Kompozisyon için gerekli olan %s eklentisi eksik"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "X Pencere Sistemi '%s' ekranı açılamadı\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"'%s' ekranıyla bağlantı kayboldu;\n"
+"büyük olasılıkla ya X sunucusu kapandı veya pencere yöneticisini\n"
+"öldürdünüz ya da yok ettiniz.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Ölümcül G/Ç hatası %d (%s); '%s' ekranında.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"%s tuşu %x değiştiricileriyle birlikte başka bir uygulama tarafından tuş "
+"bağıolarak kullanılıyor\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"<tt>%s</tt> çalıştırılırken bir hata oldu:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "%d komutu tanımlanmamış.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Hiçbir termina komutu tanımlanmamış.\n"
+
+#: ../src/core/main.c:130
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Telif Hakkı (C) 2001-%s Havoc Pennington, Red Hat, Inc., ve başkaları\n"
+"Bu, özgür yazılımdır; telif koşullarını öğrenmek için kaynak koda bakın.\n"
+"Hiç bir garantisi, BELİRLİ BİR AMACA UYGUNLUĞU için dahi, YOKTUR.\n"
+
+#: ../src/core/main.c:268
+msgid "Disable connection to session manager"
+msgstr "Ortam yöneticisine olan bağlantıyı kapat"
+
+#: ../src/core/main.c:274
+msgid "Replace the running window manager with Marco"
+msgstr "Çalışan pencere yöneticisini Marco ile değiştir"
+
+#: ../src/core/main.c:280
+msgid "Specify session management ID"
+msgstr "Ortam yönetim ID'sini belirtin"
+
+#: ../src/core/main.c:285
+msgid "X Display to use"
+msgstr "Kullanılacak X Ekranı"
+
+#: ../src/core/main.c:291
+msgid "Initialize session from savefile"
+msgstr "Ortamı kayıtlı dosyadan başlat"
+
+#: ../src/core/main.c:297
+msgid "Print version"
+msgstr "Sürümü yazdır"
+
+#: ../src/core/main.c:303
+msgid "Make X calls synchronous"
+msgstr "X çağrılarını eşazamanlı yap"
+
+#: ../src/core/main.c:309
+msgid "Turn compositing on"
+msgstr "Kompozisyonları aç"
+
+#: ../src/core/main.c:315
+msgid "Turn compositing off"
+msgstr "Kompozisyonları kapat"
+
+#: ../src/core/main.c:321
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "Büyütülmüş ve dekorasyonları olmayan pencereleri tam ekran yapma"
+
+#: ../src/core/main.c:543
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Tema dizini taranırken hata oluştu: %s\n"
+
+#: ../src/core/main.c:559
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Hiç tema bulunamadı! %s varlığından ve bildiğimiz temaları içerdiğinden emin "
+"olun.\n"
+
+#: ../src/core/main.c:618
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Yeniden başlatılamadı: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:506 ../src/core/prefs.c:661
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "'%s' MateConf anahtarına geçersiz bir değer atanmış\n"
+
+#: ../src/core/prefs.c:587 ../src/core/prefs.c:830
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"%2$s MateConf anahtarında saklı %1$d değeri %3$d ile %4$d aralığının dışında\n"
+
+#: ../src/core/prefs.c:631 ../src/core/prefs.c:708 ../src/core/prefs.c:756
+#: ../src/core/prefs.c:820 ../src/core/prefs.c:1113 ../src/core/prefs.c:1129
+#: ../src/core/prefs.c:1146 ../src/core/prefs.c:1162
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "\"%s\" MateConf anahtarına geçersiz bir tür atanmış\n"
+
+#: ../src/core/prefs.c:1232
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Hatalı uygulamalara yönelik çözümler devre dışı. Bazı uygulamalar düzgün "
+"işlemeyebilir.\n"
+
+#: ../src/core/prefs.c:1303
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "\"%s\" yazıtipi tanımlaması %s MateConf anahtarından ayrıştırılamadı\n"
+
+#: ../src/core/prefs.c:1365
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Yapılandırma veritabanında bulunan \"%s\", fare düğme düzenleyicisi olarak "
+"geçerli bir değer değil\n"
+
+#: ../src/core/prefs.c:1786
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Çalışma alanı sayısının %d yapılmasında hata: %s\n"
+
+#: ../src/core/prefs.c:1975 ../src/core/prefs.c:2478
+#, c-format
+msgid "Workspace %d"
+msgstr "Çalışma Alanı %d"
+
+#: ../src/core/prefs.c:2005 ../src/core/prefs.c:2183
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Yapılandırma veritabanında bulunan \"%s\", \"%s\" tuş bağı olarak geçerli "
+"bir değer değil\n"
+
+#: ../src/core/prefs.c:2559
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "%d çalışma alanının adının \"%s\" yapılmasında hata: %s\n"
+
+#: ../src/core/prefs.c:2763
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Komposizyon durumu atanırken hata: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "'%2$s' X oturumundaki ekran %1$d geçersiz\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"\"%2$s\" X oturumundaki ekran %1$d bir pencere yöneticisine zaten sahip; "
+"geçerli pencere yöneticisinin yerine bir başkasını koymak için --replace "
+"seçeneğini kullanmayı deneyin.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"\"%2$s\" X oturumundaki ekran %1$d hangi pencere yöneticisine "
+"sahipöğrenilemedi\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+"\"%2$s\" X oturumundaki ekran %1$d bir pencere yöneticisine zaten sahip\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "\"%2$s\" X oturumundaki ekran %1$d serberst bırakılamadı\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Biçimi şunun gibi olmalıdır: \"<Control>a\" ya da \"<Shift><Alt>F1\".\n"
+"\n"
+"Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"<Ctl>\" ya da "
+"\"<Ctrl>\" gibi kısaltmalara izin verir. Seçeneğe \"disabled\" özel "
+"dizgisini değer olarakatarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Biçimi şunun gibi olmalıdır: \"<Control>a\" ya da \"<Shift><Alt>F1\". \n"
+"\n"
+"Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"<Ctl>\" ya da "
+"\"<Ctrl>\" gibi kısaltmalara izin verir. Seçeneğe \"disabled\" özel "
+"dizgisini değer olarakatarsanız, o eylem için tuş bağı yapılmamış olur.\n"
+"\n"
+"Bu tuşbağı \"shift\" tuşuna basılı tutarak ayrılabilir, bu yüzden \"shift\" "
+"kullandığı tuşlardan bir tanesi olamaz."
+
+#: ../src/core/session.c:845 ../src/core/session.c:852
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "'%s' dizini oluşturulamadı: %s\n"
+
+#: ../src/core/session.c:862
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "'%s' oturum dosyası yazma için açılamadı: %s\n"
+
+#: ../src/core/session.c:1003
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "'%s' oturum dosyasına yazmada hata: %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "'%s' oturum dosyasını kapamada hata: %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1101
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Kaydedilmiş %s oturum dosyası okunamadı: %s\n"
+
+#: ../src/core/session.c:1140
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Kaydedilmiş oturum dosyası ayrıştırırken hata: %s\n"
+
+#: ../src/core/session.c:1189
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"Geçerli bir oturum kimliği bulunmasına karşın <marco_session> "
+"özniteliğiyle karşılaşıldı"
+
+#: ../src/core/session.c:1202 ../src/core/session.c:1277
+#: ../src/core/session.c:1309 ../src/core/session.c:1381
+#: ../src/core/session.c:1441
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Bilinmeyen öznitelik %s <%s> öğesinde"
+
+#: ../src/core/session.c:1219
+#, c-format
+msgid "nested <window> tag"
+msgstr "iç içe <window> imi"
+
+#: ../src/core/session.c:1461
+#, c-format
+msgid "Unknown element %s"
+msgstr "Bilinmeyen öğe %s"
+
+#: ../src/core/session.c:1812
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Bu pencereler, &quot;geçerli durumu kaydet&quot; özelliğini desteklemiyorlar "
+"ve bir dahaki girişte kendiniz yeniden başlatmalısınız."
+
+#: ../src/core/util.c:103
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Hata ayıklama günlüğü açılamadı: %s\n"
+
+#: ../src/core/util.c:113
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "fdopen() günlük dosyası %s açılamadı: %s\n"
+
+#: ../src/core/util.c:119
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "%s günlük dosyası açıldı\n"
+
+#: ../src/core/util.c:138 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco, ayrıntılı kip desteği olmadan derlenmiş\n"
+
+#: ../src/core/util.c:238
+msgid "Window manager: "
+msgstr "Pencere yöneticisi: "
+
+#: ../src/core/util.c:390
+msgid "Bug in window manager: "
+msgstr "Pencere yöneticisinde hata: "
+
+#: ../src/core/util.c:423
+msgid "Window manager warning: "
+msgstr "Pencere yöneticisi uyarısı: "
+
+#: ../src/core/util.c:451
+msgid "Window manager error: "
+msgstr "Pencere yöneticisi hatası: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5627
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"%s penceresi SM_CLIENT_ID'yi ICCCM tarafından belirtilen WM_CLIENT_LEADER'a "
+"değil kendine atadı.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6192
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"%s penceresi bir yandan yeniden boyutlandırılamaz olduğunu gösteren bir MWM "
+"ipucu verirken anlamsız bir biçimde en küçük (%d x %d) ve en büyük (%d x %d) "
+"boyut sınırlarını da atıyor.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Uygulama geçersiz _NET_WM_PID %lu atadı\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (%s üzerinde)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (superuser olarak)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (%s olarak)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (diğer kullanıcı olarak)"
+
+#: ../src/core/window-props.c:1429
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Geçersiz WM_TRANSIENT_FOR pencere 0x%lx belirtilen %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"0x%lx penceresinin %s özelliği beklenen\n"
+"%s türü ve %d biçimi yerine %s türü, %d biçimi,\n"
+"%d n_items'e sahip.\n"
+"Bu büyük olasılıkla uygulamanın bir hatası, pencere yöneticisinin değil.\n"
+"Pencerenin başlığı=\"%s\", sınıfı=\"%s\", adı=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "0x%2$lx penceresinin %1$s özelliği geçersiz UTF-8 içeriyor\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"0x%2$lx penceresinin %1$s özelliği listedeki öğe %3$d için geçersiz UTF-8 "
+"içeriyor\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Çalışma alanı 1'e geç"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Çalışma alanı 2'ye geç"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Çalışma alanı 3'e geç"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Çalışma alanı 4'e geç"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Çalışma alanı 5'e geç"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Çalışma alanı 6'ya geç"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Çalışma alanı 7'ye geç"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Çalışma alanı 8'e geç"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Çalışma alanı 9'a geç"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Çalışma alanı 10'a geç"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Çalışma alanı 11'e geç"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Çalışma alanı 12'ye geç"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Mevcut çalışma alanının solundaki çalışma alanına geç"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Mevcut çalışma alanının sağındaki çalışma alanına geç"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Mevcut çalışma alanının üstündeki çalışma alanına geç"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Mevcut çalışma alanının altındaki çalışma alanına geç"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Uygulamanın pencereleri arasında beliren pencere ile taşı"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Uygulamanın pencereleri arasında geriye doğru beliren pencere ile taşı"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Pencereler arası taşımayı beliren pencere ile yap"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "Pencereler arasında geriye doğru beliren pencere aracılığıyla taşı"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Panellerle ve masaüstü arasında beliren pencere ile taşı"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Panellerle ve masaüstü arasında geri doğru beliren pencere ile taşı"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Uygulamanın pencereleri arsında anında geç"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Uygulamanın pencereleri arasında geriye doğru anında taşı"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Pencereler arası geçişi anında yap"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Pencereler arası anında taşı"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Panellerle masaüstü arasındaki geçişi anında yap"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Panellerle masaüstü arasındaki geri geçişi anında yap"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Tüm pencereleri gizleyip masaüstüne odaklan"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Panel ana menüsünü göster"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Panel \"Uygulama Çalıştır\" penceresini göster"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Ekran görüntüsü al"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Pencerenin ekran görüntüsünü al"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Bir terminal çalıştır"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Pencere menüsünü etkinleştir"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Tam ekran kipini aç veya kapat"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Ekranı kaplama durumunu aç veya kapat"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Pencerenin her zaman diğerlerinin üzerinde görüneceğini seçer"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Bencereyi büyült"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Pencereyi eskiye getir"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Toplanmış durumu aç veya kapat"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Pencereyi küçült"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Pencereyi kapat"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Pencere taşı"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Pencereyi yeniden boyutlandır"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Pencerenin tüm çalışma alanlarında ya da sadece birine olmasını seçer"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Pencereyi çalışma alanı 1'e taşı"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Pencereyi çalışma alanı 2'ye taşı"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Pencereyi çalışma alanı 3'e taşı"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Pencereyi çalışma alanı 4'e taşı"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Pencereyi çalışma alanı 5'e taşı"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Pencereyi çalışma alanı 6'ya taşı"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Pencereyi çalışma alanı 7'ye taşı"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Pencereyi çalışma alanı 8'e taşı"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Pencereyi çalışma alanı 9'a taşı"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Pencereyi çalışma alanı 2'ye taşı"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Pencereyi çalışma alanı 11'e taşı"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Pencereyi çalışma alanı 12'ye taşı"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Pencereyi soldaki çalışma alanına taşı"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Pencereyi sağdaki çalışma alanına taşı"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Pencereyi üstteki çalışma alanına taşı"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Pencereyi alttaki çalışma alanına taşı"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Pencere başka pencere tafından kaplanmışsa en üste al, yoksa aşağı gönder"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Pencereyi diğerlerinin üstüne çıkar"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Pencereyi diğerlerinin altına gönder"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Pencereyi dikey olarak büyült"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Pencereyi yatay olarak büyült"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Pencereyi ekranın kuzey-batı (üst sol) tarafına taşı"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Pencereyi ekranın kuzey-doğu (üst sağ) tarafına taşı"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Pencereyi ekranın güney-batı (sol alt) tarafına taşı"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Pencereyi ekranın güney-doğu (sağ alt) tarafına taşı"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Pencereyi ekranın kuzey (üst) tarafına taşı"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Pencereyi ekranın güney (alt) tarafına taşı"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Pencereyi ekranın doğu (sağ) tarafına taşı"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Pencereyi ekranın batı (sol) tarafına taşı"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Pencereyi ekranın ortasına taşı"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Henüz uygulanmamış) Gezinme, pencerelere göre değil uygulamalara göre işler"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Pencere başlık çubuklarının yazıtipini tanımlayan yazıtipi tanımlama satırı. "
+"Bu tanımın boyut kısmı yalnızca titlebar_font_size (başlık çubuğu yazıtipi "
+"boyutu) seçeneği 0'a ayarlıysa kullanılacaktır. Ayrıca eğer "
+"titlebar_uses_desktop_font (başlık çubuğu masaüstü yazıtipini kullanır) "
+"seçeneği seçilmişse bu seçenek kapalı kabul edilir."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Başlık çubuğuna çift tıklandığındaki eylem"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Başlık çubuğuna orta tuşla tıklandığındaki eylem"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Başlık çubuğuna sağ tıklandığındaki eylem"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Başlık çubuğundaki düğmelerin düzeni"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Başlık çubuğundaki düğmelerin düzeni. Dizgi türünde bir değer alır, örneğin "
+"\"menu:minimize,maximize,spacer,close\"; pencerenin sol köşesindekilerle sağ "
+"köşesindekileri iki noktayla, düğme adlarını virgülle ayırın. Bir düğme "
+"birden çok kez kullanılamaz. Gelecek marco sürümlerinde eski sürümlerde "
+"soruna yol açmadan yeni düğmeler eklenebilmesi için bilinmeyen düğme adları "
+"hata vermeden göz ardı edilecektir. Ard arda iki düğme arasında biraz boşluk "
+"eklemek için özel spacer etiketi kullanılabilir."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Odaklanılan pencereyi kendiliğinden yükseltir"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The left and right operations may be swapped using the "
+"\"mouse_button_resize\" key. Modifier is expressed as \"&lt;Alt&gt;\" or "
+"\"&lt;Super&gt;\" for example."
+msgstr ""
+"Bu değiştirici tuş basılıyken pencereye tıklamak (sol tuşla) pencereyi "
+"taşır, (orta tuşla) pencereyi boyutlandırır, ya da (sağ tuşla) pencere "
+"menüsünü gösterir. Sol ve sağ işlemleri \"mouse_button_resize\" anahtarı "
+"kullanılarak değiştirilebilir. Değiştirici, \"&lt;Alt&gt;\" ya da \"&lt;"
+"Super&gt;\" örneklerindeki gibi gösterilir."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Tuş bağlarına yanıt olarak çalıştırılacak komutlar"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Kompozisyon Yöneticisi"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Yeni pencerelerin nasıl odaklanacağının kontrolü"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Geçerli tema"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Kendiliğinden yükseltme seçeneği için milisaniye olarak gecikme"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Marco'nin bir kompozisyon yöneticisi olmasına karar verir."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Uygulamaların veya sistemin sesli zil çıkarıp çıkartamayacaklarını belirler, "
+"sessiz zil sesleri için 'görzel zil' ile ilişkili de kullanılabilir."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Eski ya da hatalı uygulamaların gerektirdiği hatalı özellikleri kapat"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Görsel Zili Etkinleştir"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Eğer seçiliyse, ve odaklama kipi \"sloppy\" ya da \"mouse\" ise odaklanan "
+"pencere belirli bir süre sonra kendiliğinden üste çıkar (bu süre "
+"auto_raise_delay anahtarıyla belirlenir). Bu bir pencereye üste çıkarmak "
+"için tıklamak ya da sürükle ve bırak sırasında pencere sınırlarına girmek "
+"ile alakalı değildir."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Eğer seçiliyse, titlebar_font seçeneğini göz ardı edip pencere başlıklarında "
+"standart uygulama yazıtipi kullanılır."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Eğer seçiliyse, marco tel çerçeveleri kullanarak, canlandırma "
+"kullanmayarak ve diğer şekillerde, kullanıcıya daha az geri bildirim verip "
+"daha az \"doğrudan işlem\"e imkan verir. Bu bir çok kullanıcı için "
+"kullanılabilirlikte belirgin biz azalmaya neden olur, ama aksi halde "
+"kullanışsız olacak terminal sunucuları ve diğer eski uygulamalar için "
+"işleyebilirlik sağlayabilir. Ancak tel çerçeve özelliği erişilebilirlik açık "
+"olduğunda etkisizleştirilecek."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Eğer seçiliyse, Marco'nin pencerelere değil uygulamalara yönelik "
+"çalışmasını sağlar. Bu kavram biraz soyuttur, kısacası uygulama temelli "
+"çalışma Windows'tan çok Mac'takine benzer. Uygulama temelli kipte bir "
+"pencereye odaklandığınızda o uygulamanın bütün pencereleri yükseltilir. "
+"Ayrıca bu kipte odaklama amaçlı tıklamalar odaklamadan sonra bir de "
+"uygulamaya geçilmez. Uygulama tabanlı kipin büyük bölümü henüz tamamlanmadı."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Eğer seçiliyse, daha az kaynak kullanımı için kullanılabilirliği azaltır"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Değiştirilmiş pencere tıklama işlemleri için kullanılacak değiştirici"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Çalışma alanının adı"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Çalışma alanlarının sayısı"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Çalışma alanlarının sayısı. Sıfırdan büyük olmalıdır ve yanlışlıkla çok "
+"fazla sayıda çalışma alanı talep edip masaüstünü kullanışsız hale "
+"getirmenizi engellemek için bir üst sınırı vardır."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Tanımlanmış bir komutu çalıştır"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Bunu pencereyi sağ tuş ile yeniden boyutlandırmak ve orta tuşa basılıyken "
+"\"mouse_button_modifier\" anahtarında verilen tuşa basıldığında menü "
+"göstermek için doğru olarak atayın; tam tersi çalışması için bunu yanlış "
+"olarak atayın."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Bu seçeneğin yanlış olarak atanması bozuk bir işleyişe sebep olur, bu yüzden "
+"kullanıcıların bu seçeneği doğru olan öntanımlı ayarından değiştirilmemesi "
+"tavsiye edilir. Çoğu işlem (örn. istemci alanına tıklama, taşıma ya da "
+"pencere yeniden boyutlandırma) normalde pencereyi yan etki olarak en üste "
+"taşır. Bu seçeneği false yapmak, ki tavsiye edilmemektedir, diğer kullanıcı "
+"eylemlerinin üste taşımasını bozacak ve uygulamalar tarafından gelen üste "
+"taşıma isteklerini yok sayacaktır. http://bugzilla.gnome.org/show_bug.cgi?"
+"id=445447#c6 sayfasına bakın. Bu seçenek yanlış olsa bile, pencereler; "
+"pencerenin herhangi bir yerine alt-sol tıklama, pencere dekorasyonlarına "
+"normal tıklama ya da sayfalayıcılardan özel iletiler, örneğin görev "
+"listesinden etkinleştirme istekleri gibi durumlarda üste taşınır. Bu özellik "
+"şimdilik odak-için-tıkla kipinde kapalıdır. Pencerelerin raise_on_click "
+"yanlış olduğunda en üste taşıma yollarının listesi sadece programdan gelen "
+"istekleri içermez; bu istekler isteğin sebebi ne olursa olsun yok "
+"sayılacaktır. Eğer bir uygulama geliştiricisi kullanıcısının bu özellik "
+"yanlış olduğunda çalışmadığı şikayetini alıyorsa, kullanıcıya bunun _kendi_ "
+"hatası olduğunu çünkü pencere yöneticisinin ayarını bozduğunu ve bu seçeneği "
+"tekrar doğru olarak ayarlaması gerektiğini ya da istenen \"hata\" ile "
+"yaşamak zorunda olduğunu söylemelidir."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Bazı uygulamalar belirtimleri pencere yöneticisinin yanlış işlemesine sebep "
+"olacak şekilde göz ardı ederler. Bu seçenek Marco'i sıkı bir şekilde "
+"doğru kipe sokar, bu şayet kullanıcının hatalı işleyen bir uygulama "
+"çalıştırmaya ihtiyacı yoksa kullanıcı arayüzünün daha tutarlı olmasını "
+"sağlar."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Sistem Zili Duyulabilir"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Marco'e sistem zilinin veya diğer uygulama zil belirticilerinin "
+"kullanacağı görsel uyarıcı şeklini belirtir. Şu an için iki geçerli değer "
+"vardır, tüm ekranın siyah-beyaz flaşlaması için \"fullscreen\", ve "
+"uygulamanın başlık çubuğunun, zil sinyali ile flaşlaması için \"frame_flash"
+"\". Eğer zil sinyalini gönderen uygulama bilinmiyorsa (ön tanımlı \"sistem "
+"zili\" için geçerli olan durum), güncel odaklanmış pencerenin başlık çubuğu "
+"flaşlanır."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N anahtarları bu komutlara "
+"karşılık gelen tuş bağlarını tanımlar. run_command_N için tuş bağına basınca "
+"command_N çalışır."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot anahtarı bu ayara "
+"atanmış komutun çalıştırılması için gereken tuş bağını tanımlar."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot anahtarı bu "
+"ayara atanmış komutun çalıştırılması için gereken tuş bağını tanımlar."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"/apps/marco/keybinding_commands içinde ilgili numaraya sahip komutu "
+"çalıştırmak üzere atanmış tuş bağlarını tanımlar. Biçimi şunun gibi "
+"olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" ya "
+"da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled\" özel "
+"dizgisini değer olarakatarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Çalışma alanının adı."
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Ekran görüntüsü komutu"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Tema; pencere kenarları, başlık çubuğu gibi öğelerin görünümünü belirler."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Pencereyi auto_raise ayarı seçiliyse yükseltmeden önceki gecikme. Bu gecikme "
+"saniyenin binde biri cinsinden verilir."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Pencere odaklama kipi, pencerelerin nasıl etkinleştirileceğini belirler. Üç "
+"olası değeri vardır; \"click\" olursa pencereler tıklanarak odaklanır, "
+"\"sloppy\" olursa fare pencere sınırlarına girince kendiliğinden odaklanır, "
+"\"mouse\" olursa fare pencereye girince odaklanır ama fare çıktığında "
+"odaklama kaybolur."
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Pencere ekran görüntüsü komutu"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Bu seçenek başlık çubuğuna çift tıklamanın ne yapacağını belirler. Geçerli "
+"seçenekler: 'toggle_shade' pencereyi toplar/yayar, 'toggle_maximize' "
+"pencereyi büyültür/büyültmeyi geri alır, 'toggle_maximize_horizontally' ve "
+"'toggle_maximize_vertically' sadece o yönde pencereyi büyültür/büyültmeyi "
+"geri alır, 'minimize' pencereyi küçültür, 'shade' pencereyi yukarı toplar, "
+"'menu' pencere menüsünü gösterir, 'lower' pencereyi diğerlerinin arkasına "
+"koyar ve 'none' hiçbir şey yapmaz. "
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Bu seçenek başlık çubuğuna orta tıklamanın ne yapacağını belirler. Geçerli "
+"seçenekler: 'toggle_shade' pencereyi toplar/yayar, 'toggle_maximize' "
+"pencereyi büyültür/büyültmeyi geri alır, 'toggle_maximize_horizontally' ve "
+"'toggle_maximize_vertically' sadece o yönde pencereyi büyültür/büyültmeyi "
+"geri alır, 'minimize' pencereyi küçültür, 'shade' pencereyi yukarı toplar, "
+"'menu' pencere menüsünü gösterir, 'lower' pencereyi diğerlerinin arkasına "
+"koyar ve 'none' hiçbir şey yapmaz. "
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Bu seçenek başlık çubuğuna sağ tıklamanın ne yapacağını belirler. Geçerli "
+"seçenekler: 'toggle_shade' pencereyi toplar/yayar, 'toggle_maximize' "
+"pencereyi büyültür/büyültmeyi geri alır, 'toggle_maximize_horizontally' ve "
+"'toggle_maximize_vertically' sadece o yönde pencereyi büyültür/büyültmeyi "
+"geri alır, 'minimize' pencereyi küçültür, 'shade' pencereyi yukarı toplar, "
+"'menu' pencere menüsünü gösterir, 'lower' pencereyi diğerlerinin arkasına "
+"koyar ve 'none' hiçbir şey yapmaz. "
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Bu seçenek yeni oluşturulan pencerelerin odaklanmak için ek kontroller "
+"sağlar. İki geçerli değeri vardır; \"smart\" kullanıcının normal odak kipine "
+"uygulanır ve \"strict\" uçbirimden başlatılan uygulamaların odaklanmaması "
+"ile sonuçlanır."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Bir uygulama veya sistem 'zil' ya da 'bip' uygulamak istediginde görsel "
+"uyarıcıları da açar; duymanın zor olduğu gürültülü ortamlar için çok "
+"kullanışlıdır."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Pencere başlıklarında standart sistem yazıtipini kullan"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Görsel Zil Türü"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Yukarı çıkartmanın diğer kullanıcı etkileşimleri için yan etki olması"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Sağ tuş ile en üste taşıma"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Pencere odaklama kipi"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Pencere başlığı yazıtipi"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Kullanım: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Pencereyi Kapat"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Pencere Menüsü"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Pencereyi Küçült"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Pencereyi Büyült"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Pencereyi Eski Boyutuna Getir"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Pencereyi Yukarı Sar"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Pencereyi Geri Sar"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Pencereyi Üstte Tut"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Pencereyi Üstten Kaldır"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Her Zaman Görünen Çalışma Alanında"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Pencereyi Sadece Bir Çalışma Alanına Yerleştir"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "_Küçült"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_Büyült"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Büyült_meyi Geri Al"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Yukarı _Sar"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Sarmayı Geri Al"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Taşı"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Yeniden Boyutlandır"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Başlık Çubuğunu _Ekranda Taşı"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Her Zaman Ü_stte"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Her Zaman _Görünen Çalışma Alanında"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "Yalnız _Bu Çalışma Alanında"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "_Soldaki Çalışma Alanına Taşı"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "S_ağdaki Çalışma Alanına Taşı"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "_Yukarıdaki Çalışma Alanına Taşı"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "_Aşağıdaki Çalışma Alanına Taşı"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Kapat"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Çalışma Alanı %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Çalışma Alanı 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Çalışma Alanı %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Başka Bir Çalışma Ala_nına Taşı"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "üst"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "alt"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "sol"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "sağ"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "çerçeve geometrisi \"%s\" boyutunu tanımlamıyor"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"çerçeve geometrisi \"%s\" boyutunu \"%s\" pencere kenarı için tanımlamıyor"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "%g kabul edilebilir bir düğme en-boy oranı değil"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Çerçeve geometrisi düğmelerin boyutunu tanımlamıyor"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Renk geçişlerinde en az iki renk olmalı"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK renk belirtiminde köşeli parantezler arasında durum verilmelidir; "
+"örneğin, gtk:fg[NORMAL] belirtiminde NORMAL, durumu gösterir; \"%s\" "
+"ayrıştırılamadı"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK renk belirtiminde durumdan sonra sağ köşeli parantezleri gelmelidir; "
+"örneğin, gtk:fg[NORMAL] belirtiminde NORMAL, durumu gösterir; \"%s\" "
+"ayrıştırılamadı"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Renk belirtimindeki \"%s\" durumu anlaşılamadı"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Renk belirtimindeki \"%s\" renk bileşeni anlaşılamadı"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Renk karışımının doğru biçimi \"blend/bg_color/fg_color/alpha\"dır; \"%s\" "
+"bu biçime uymuyor"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Renk karışımındaki \"%s\" alfa değeri ayrıştırılamadı"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Renk karışımının alfa değeri \"%s\", 0.0 ile 1.0 arasında değil"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Gölgelendirmenin doğru biçimi \"shade/bas_color/factor\"dır; \"%s\" bu "
+"biçime uymuyor"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Gölgeli rengin gölge katsayısı olan \"%s\" ayrıştırılamadı"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Gölgeli rengin gölge katsayısı olan \"%s\", negatif"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "\"%s\" rengi ayrıştırılamadı"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Kordinat ifadesi izin verilmeyen '%s' karakterini içeriyor"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Kordinat ifadesi '%s' gerçel sayısını içeriyor ve bu sayı ayrıştırılamıyor"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Kordinat ifadesi ayrıştırılamayan '%s' tamsayısını içeriyor"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Kordinat ifadesi bu metnin başında bilinmeyen bir işleç içeriyor: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Kordinat ifadesi boş ya da anlaşılamadı"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Kordinat ifadesi sıfıra bölümle sonuçlanıyor"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Kordinat ifadesi bir gerçel sayı üzerinde mod (kalan bulma) işlecini "
+"kullanmaya çalıştı"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Kordinat ifadesi işleneni beklenen \"%s\", işlecini içeriyor"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Kordinat ifadesi işleci beklenen bir işlenen içeriyor"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Kordinat ifadesi bir işlenen yerine işleçle bitiyor"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Kordinat ifadesi birbirlerinin izleyen ve aralarında işlenen olmayan \"%2$c"
+"\" ve \"%1$c\" işleçlerini içeriyor"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Kordinat ifadesi bilinmeyen bir değişken ya da sabit olan \"%s\" içeriyor"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Kordinat belirtim ayrıştırıcısı tamponundan taştı."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Kordinat ifadesi sol parantezi olmayan bir sağ parantez içeriyor"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Kordinat ifadesi sağ parantezi olmayan bir sol parantez içeriyor"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Kordinat ifadesi göründüğü kadarıyla ne işleç ne de işlenen içeriyor"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Tema bir hata ile sonuçlanan ifadeye sahip: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"Bu çerçeve biçeminde <button function=\"%s\" state=\"%s\" draw_ops=\"her "
+"neyse\"/> belirtilmek zorunda"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Eksik <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"her neyse\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "\"%s\" teması yüklenemedi: %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "\"%2$s\" temasında hiç <%1$s> atanmamış"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"\"%2$s\" temasında \"%1$s\" pencere türüne çerçeve biçemi atanmamış, bir "
+"<window type=\"%3$s\" style_set=\"her neyse\"/> öğesi ekleyin"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Kullanıcı tanımlı sabitler büyük harfle başlamalıdır; \"%s\" buna uymuyor"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "\"%s\" sabit değeri zaten tanımlanmış"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "<%2$s> öğesinde \"%1$s\" özniteliği yok"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Satır %d karakter %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "\"%s\" özniteliği aynı <%s> öğesinde iki kez kullanılmış"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "\"%s\" özniteliği bu içerikte <%s> öğesi için geçersiz"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "\"%s\" bir tamsayı olarak ayrıştırılamadı"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "\"%2$s\" dizgisinin sonundaki \"%1$s\" karakterleri anlaşılmadı"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "%ld tamsayısı pozitif olmalı"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "%ld tamsayısı çok büyük, şu anda üst sınır %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "\"%s\" bir gerçel sayı olarak ayrıştırılamadı"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+"Mantıksal değerler ancak \"true\" (doğru) ya da \"false\" (yanlış) "
+"değerlerini alabilir; \"%s\" olamaz"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Açı 0.0 ile 360.0 arasında olmalı, %g verilmiş\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alfa 0.0 (görünmez) ile 1.0 (düz renk) arasında olmalıydı ama %g verilmiş\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Geçersiz öğe ölçüsü \"%s\" (şunlardan biri olmalıdır: xx-small,x-small,small,"
+"medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> adı \"%s\" ikinci kez kullanılmış"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> üst değeri \"%s\" tanımlanmamış"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> geometrisi \"%s\" tanımlanmamış"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s>, ya bir geometri ya da geometrisi olan bir üst öğe belirtmeli"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Arkaplanı anlamlı olabilmesi için bir alfa değeri ile belirtmelisiniz"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "<%2$s> öğesinde bilinmeyen type \"%1$s\""
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "<%2$s> öğesinde bilinmeyen style_set \"%1$s\""
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "\"%s\" pencere türünün önceden atanmış bir biçem kümesi var"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "<%s> öğesi <%s> altında kullanılamaz"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Düğmelere hem \"button_width\"/\"button_height\" (en-boy) değerleri hem de "
+"\"aspect_ratio\" değeri verilemez"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "\"%s\" uzaklığı bilinmiyor"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "\"%s\" en-boy oranı bilinmiyor"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "\"%s\" pencere kenarı bilinmiyor"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+"<%s> öğesinde \"start_angle\" (başlama açısı) ya da \"from\" özniteliği yok"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+"<%s> öğesinde \"extent_angle\" (genişletme açısı) ya da \"to\" özniteliği yok"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Renk geçişi türü olarak verilen \"%s\" değeri anlaşılamadı"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "<%2$s> öğesinin doldurma türü \"%1$s\" anlaşılamadı"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "<%2$s> öğesi için \"%1$s\" durumu anlaşılamadı"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "<%2$s> öğesi için \"%1$s\" gölgesi anlaşılamadı"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "<%2$s> öğesi için \"%1$s\" oku anlaşılamadı"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "\"%s\" adında hiç <draw_ops> tanımlanmamış"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Burada \"%s\" draw_ops'unu içermek çevrimsel gönderime yol açar"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Çerçeve parçası için bilinmeyen konum \"%s\""
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Çerçeve biçeminin %s konumunda zaten bir parça var"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "\"%s\" adında hiç <draw_ops> tanımlanmamış"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Düğme için geçersiz işlev \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Düğme işlevi \"%s\" bu sürümde mevcut değil (%d, gereken %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Düğme için geçersiz durum \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Çerçeve biçeminde %s işlevi, %s durumu için zaten bir düğme var"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\", odak özniteliği için geçerli bir değer değil"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\", durum özniteliği için geçerli bir değer değil"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "\"%s\" adlı bir biçem tanımlanmamış"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\", yeniden boyutlandırma özniteliği için geçerli bir değer değil"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"<%s> öğesinin büyütülmüş/toplanmış durumlarında \"resize\" özniteliği "
+"bulunmamalı"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"<%s> öğesinin büyütülmüş durumlarında \"resize\" özniteliği bulunmamalı"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"%s durumu, %s yeniden boyutlandırma, %s odak için biçem zaten belirtilmiş"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "%s durumu, odak %s için biçem zaten belirtilmiş"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Bir <piece> öğesi içinde iki draw_ops olamaz (tema, ya bir draw_ops "
+"özniteliğiyle bir <draw_ops> öğesi, ya da iki öğe belirtmiş)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Bir <button> öğesi içinde iki draw_ops olamaz (tema, ya bir draw_ops "
+"özniteliğiyle bir <draw_ops> öğesi, ya da iki öğe belirtmiş)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Bir <menu_icon> öğesi içinde iki draw_ops olamaz (tema, ya bir draw_ops "
+"özniteliğiyle bir <draw_ops> öğesi, ya da iki öğe belirtmiş)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Temanın en dış öğesi <%s> değil <marco_theme> olmalıdır"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"name/author/date/description öğelerinin içinde <%s> öğesi bulunmamalıdır"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<constant> öğesinin içinde <%s> öğesi bulunmamalıdır"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"distance/border/aspect_ratio öğelerinin içinde <%s> öğesi bulunmamalıdır"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "draw operation öğesinin içinde <%s> öğesi bulunmamalıdır"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%2$s> öğesinin içinde <%1$s> öğesi bulunmamalıdır"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Çerçeve parçası için hiç draw_ops sağlanmamış"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Düğme için hiç draw_ops sağlanmamış"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> öğesinin içinde metin bulunmamalıdır"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "Bu temada <%s> iki kez belirtilmiş"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Tema %s için geçerli bir dosya bulunamadı\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Tema dosyası %s, kök <marco_theme> öğesi içermiyor"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Pencereler"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Pencereler/kes"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Pencereler/_İletişim pencereleri"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Pencereler/_Düz iletişim pencereleri"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Pencereler/_Araçlar"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Pencereler/_Başlangıç görüntüsü"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Pencereler/_Üste sabitle"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Pencereler/_Alta sabitle"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Pencereler/_Sola sabitle"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Pencereler/S_ağa sabitle"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Pencereler/_Tüm sabitlemeler"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Pencereler/_Masaüstü"
+
+#: ../src/ui/theme-viewer.c:136
+msgid "Open another one of these windows"
+msgstr "Bu pencerelerden başka bir tane aç"
+
+#: ../src/ui/theme-viewer.c:143
+msgid "This is a demo button with an 'open' icon"
+msgstr "Bu 'aç' simgesi olan gösterim düğmesidir"
+
+#: ../src/ui/theme-viewer.c:150
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Bu 'çık' simgesi olan gösterim düğmesidir"
+
+#: ../src/ui/theme-viewer.c:243
+msgid "This is a sample message in a sample dialog"
+msgstr "Bu örnek iletişim penceresi için örnek bir iletidir"
+
+#: ../src/ui/theme-viewer.c:326
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Sahte menü öğesi %d\n"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Border-only window"
+msgstr "Sadece kenarı olan pencere"
+
+#: ../src/ui/theme-viewer.c:362
+msgid "Bar"
+msgstr "Çubuk"
+
+#: ../src/ui/theme-viewer.c:379
+msgid "Normal Application Window"
+msgstr "Normal Uygulama Penceresi"
+
+#: ../src/ui/theme-viewer.c:383
+msgid "Dialog Box"
+msgstr "İletişim Kutusu"
+
+#: ../src/ui/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "Yardımcı İletişim Kutusu"
+
+#: ../src/ui/theme-viewer.c:391
+msgid "Utility Palette"
+msgstr "Araç Paleti"
+
+#: ../src/ui/theme-viewer.c:395
+msgid "Torn-off Menu"
+msgstr "Kesilebilir Menü"
+
+#: ../src/ui/theme-viewer.c:399
+msgid "Border"
+msgstr "Kenarlık"
+
+#: ../src/ui/theme-viewer.c:727
+#, c-format
+msgid "Button layout test %d"
+msgstr "Düğme düzeni testi %d"
+
+#: ../src/ui/theme-viewer.c:756
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "bir pencere çerçevesi çizmek için %g milisaniye"
+
+#: ../src/ui/theme-viewer.c:799
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Kullanım: marco-theme-viewer [TEMAİSMİ]\n"
+
+#: ../src/ui/theme-viewer.c:806
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Tema yüklenirken hata: %s\n"
+
+#: ../src/ui/theme-viewer.c:812
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "\"%s\" teması %g saniye içerisinde yüklendi\n"
+
+#: ../src/ui/theme-viewer.c:853
+msgid "Normal Title Font"
+msgstr "Normal Başlık Yazıtipi"
+
+#: ../src/ui/theme-viewer.c:859
+msgid "Small Title Font"
+msgstr "Küçük Başlık Yazıtipi"
+
+#: ../src/ui/theme-viewer.c:865
+msgid "Large Title Font"
+msgstr "Büyük Başlık Yazıtipi"
+
+#: ../src/ui/theme-viewer.c:870
+msgid "Button Layouts"
+msgstr "Düğme Düzenleri"
+
+#: ../src/ui/theme-viewer.c:875
+msgid "Benchmark"
+msgstr "Karşılaştırma"
+
+#: ../src/ui/theme-viewer.c:922
+msgid "Window Title Goes Here"
+msgstr "Pencere Başlığı Buraya Gelir"
+
+#: ../src/ui/theme-viewer.c:1026
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"%d çerçeve %g istemci taraflı saniyede (%g milisaniye başına çerçeve) ve X "
+"sunucu kaynaları ile saat saniyesi olarak %g saniye (%g milisaniye başına "
+"çerçeve) içinde çizildi.\n"
+
+#: ../src/ui/theme-viewer.c:1245
+msgid "position expression test returned TRUE but set error"
+msgstr "konum ifadesi testi TRUE olarak döndü ama hata belirtti"
+
+#: ../src/ui/theme-viewer.c:1247
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "konum ifadesi testi FALSE olarak döndü ama hata belirtmedi"
+
+#: ../src/ui/theme-viewer.c:1251
+msgid "Error was expected but none given"
+msgstr "Hata beklendi ancak hiç bir hata verilmedi"
+
+#: ../src/ui/theme-viewer.c:1253
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Hata %d beklendi ancak %d verildi"
+
+#: ../src/ui/theme-viewer.c:1259
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Hata beklenmedi ancak bir hata görüldü: %s"
+
+#: ../src/ui/theme-viewer.c:1263
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x değeri %d, fakat beklenen değer %d"
+
+#: ../src/ui/theme-viewer.c:1266
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y değeri %d, fakat beklenen değer %d"
+
+#: ../src/ui/theme-viewer.c:1331
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d kordinat ifadesi %g saniye içinde ayrıştırıldı (%g saniye ortalama ile)\n"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "İletişim kutusu işleminden gelen \"%s\" iletisi ayrıştırılamadı\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "İletişim kutusu gösteren işlemde okuma hatası: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr ""
+#~ "marco-dialog'u bir uygulamanın öldürülmesiyle ilgili soru sormak "
+#~ "amacıyla başlatırken hata: %s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr ""
+#~ "Bir komutla ilgili hatayı göstermek için marco-dialog başlatılırken "
+#~ "hata: %s\n"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "%s türü tamsayı değil"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "%2$s MateConf anahtarında saklı %1$d değeri geçerli bir imleç_boyutu değil; "
+#~ "1..128 aralığında olmalı\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%2$s MateConf anahtarında saklı %1$d değeri geçerli bir çalışma alanı sayısı "
+#~ "değil; şu anki üst sınır: %3$d\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "<marco_session> öğesinde bilinmeyen öznitelik %s"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "<maximized> öğesinde bilinmeyen öznitelik %s"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "<geometry> öğesinde bilinmeyen öznitelik %s"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "Oturum yönetimini desteklemeyen uygulamalar hakkında uyarmak için "
+#~ "marco-dialog'u çalıştırırken hata: %s\n"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "Bir çok eylem (örn. istemci alanına tıklayarak pencereyi taşımak ve "
+#~ "yeniden boyutlandırmak) normalde yan etki olarak pencereyi yukarı "
+#~ "çıkartır. Bu seçeneği false olarak işaretlemek, şiddetle "
+#~ "önerilmemektedir, diğer kullanıcı eylemlerini ayıracak ve uygulamalar "
+#~ "tarafından yapılan yukarı çıkartma isteklerini yok sayacaktır. http://"
+#~ "bugzilla.gnome.org/show_bug.cgi?id=445447#c6 hata raporuna bakın."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Geçerli çalışma alanının üstündeki çalışma alanına geçmeyi sağlamak üzere "
+#~ "atanmış tuş bağı. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "daizin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak "
+#~ "atarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Geçerli çalışma alanının altındaki çalışma alanına geçmeyi sağlamak üzere "
+#~ "atanmış tuş bağı. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "daizin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak "
+#~ "atarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Geçerli çalışma alanının solundaki çalışma alanına geçmeyi sağlamak üzere "
+#~ "atanmış tuş bağı. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "daizin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak "
+#~ "atarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Geçerli çalışma alanının sağındaki çalışma alanına geçmeyi sağlamak üzere "
+#~ "atanmış tuş bağı. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "daizin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak "
+#~ "atarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 1'e geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 10'a geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 11'e geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 12'ye geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 2'ye geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 3'e geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 4'e geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 5'e geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 6'ya geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 7'ye geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 8'e geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Çalışma alanı 9'a geçmeyi sağlamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencere menüsünü etkinleştirmek üzere atanmış tuş bağı. Biçimi şunun gibi "
+#~ "olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" "
+#~ "ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled"
+#~ "\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "\"Taşıma kipi\"ne girmek, yani pencereyi klavye ile taşımaya başlamak "
+#~ "üzere atanmış tuş bağı. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" "
+#~ "ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf "
+#~ "farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi "
+#~ "kısaltmalara izin verir. Seçeneğe \"disabled\" özel dizgisini değer "
+#~ "olarak atarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "\"Boyutlandırma kipi\"ne girmek, yani pencereyi klavye ile "
+#~ "boyutlandırmaya başlamak üzere atanmış tuş bağı. Biçimi şunun gibi "
+#~ "olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" "
+#~ "ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled"
+#~ "\" özel dizgisini değer olarakatarsanız, o eylem için tuş bağı yapılmamış "
+#~ "olur."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Bütün sıradan pencereleri gizlemek ve masaüstüne odaklanmak üzere atanmış "
+#~ "tuş bağı. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "izin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, "
+#~ "o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Pencereyi ekranı kaplar boyuta getirmek üzere atanmış tuş bağı. Biçimi "
+#~ "şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Pencereyi simge boyutuna küçültmek üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi bir alttaki çalışma alanına taşımak üzere atanmış tuş bağı. "
+#~ "Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Pencereyi bir soldaki çalışma alanına taşımak üzere atanmış tuş bağı. "
+#~ "Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Pencereyi bir sağdaki çalışma alanına taşımak üzere atanmış tuş bağı. "
+#~ "Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi bir üstteki çalışma alanına taşımak üzere atanmış tuş bağı. "
+#~ "Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 1'e taşımak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 10'a taşımak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 11'e taşımak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 12'ye taşımak üzere atanmış tuş bağı. Biçimi "
+#~ "şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 2'ye taşımak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 3'e taşımak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 4'e taşımak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 5'e taşımak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 6'ya taşımak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 7'ye taşımak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 8'e taşımak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;"
+#~ "Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi çalışma alanı 9'a taşımak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Odağın panellerle masaüstü arasındaki ters yönde geçişini beliren pencere "
+#~ "aracılığıyla sağlamak üzere atanmış tuş bağı. Biçimi şunun gibi "
+#~ "olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" "
+#~ "ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled"
+#~ "\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Odağın panellerle masaüstü arasındaki ters yönde geçişini beliren pencere "
+#~ "olmadan sağlamak üzere atanmış tuş bağı. Biçimi şunun gibi olmalıdır: "
+#~ "\"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı "
+#~ "büyük veyaküçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;"
+#~ "Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled\" özel "
+#~ "dizgisini değer olarakatarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Odağın pencereler arasındaki ters yönde geçişini beliren pencere olmadan "
+#~ "taşımak üzere atanmış tuş bağı. Bu tuş bağını kullanırken \"shift\" tuşu "
+#~ "basılı tutulursa haraket yönü tersine döner. Biçimi şunun gibi olmalıdır: "
+#~ "\"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı "
+#~ "büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;"
+#~ "Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled\" özel "
+#~ "dizgisini değer olarak atarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Odağın pencereler arasındaki ters yönde geçişini beliren pencere "
+#~ "aracılığıyla taşımak üzere atanmış tuş bağı. Bu tuş bağını kullanırken "
+#~ "\"shift\" tuşu basılı tutulursa haraket yönü tersine döner. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Odağın pencereler arasındaki ters yönde geçişini beliren pencere olmadan "
+#~ "taşımak üzere atanmış tuş bağı. (Geleneksel olarak &lt;Alt&gt;Escape) Bu "
+#~ "tuş bağını kullanırken \"shift\" tuşu basılı tutulursa haraket yönü "
+#~ "tersine döner. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "izin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, "
+#~ "o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Odağın pencereler arasındaki ters yönde geçişini beliren pencere "
+#~ "aracılığıyla taşımak üzere atanmış tuş bağı. (Geleneksel olarak &lt;"
+#~ "Alt&gt;Escape) Bu tuş bağını kullanırken \"shift\" tuşu basılı tutulursa "
+#~ "haraket yönü tersine döner. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;"
+#~ "a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük "
+#~ "harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi "
+#~ "kısaltmalara izin verir. Seçeneğe \"disabled\" özel dizgisini değer "
+#~ "olarak atarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Odağın panellerle masaüstü arasındaki geçişini beliren pencere "
+#~ "aracılığıyla sağlamak üzere atanmış tuş bağı. Biçimi şunun gibi "
+#~ "olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" "
+#~ "ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled"
+#~ "\" özel dizgisini değer olarakatarsanız, o eylem için tuş bağı yapılmamış "
+#~ "olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Odağın panellerle masaüstü arasındaki geçişini beliren pencere olmadan "
+#~ "sağlamak üzere atanmış tuş bağı. Biçimi şunun gibi olmalıdır: \"&lt;"
+#~ "Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük "
+#~ "veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;"
+#~ "Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled\" özel "
+#~ "dizgisini değer olarakatarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Odağın pencereler arasındaki geçişini beliren pencere olmadan taşımak "
+#~ "üzere atanmış tuş bağı. Bu tuş bileşimini kullanırken \"shift\" tuşu "
+#~ "basılı tutulursa haraket yönü tersine döner. Biçimi şunun gibi olmalıdır: "
+#~ "\"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı "
+#~ "büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;"
+#~ "Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled\" özel "
+#~ "dizgisini değer olarak atarsanız, o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Odağın pencereler arasındaki geçişini beliren pencere aracılığıyla "
+#~ "taşımak üzere atanmış tuş bağı. Bu tuş bileşimini kullanırken \"shift\" "
+#~ "tuşu basılı tutulursa haraket yönü tersine döner. Biçimi şunun gibi "
+#~ "olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" "
+#~ "ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled"
+#~ "\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Odağın pencereler arasındaki geçişini beliren pencere olmadan taşımak "
+#~ "üzere atanmış tuş bağı. (Geleneksel olarak &lt;Alt&gt;Escape) Bu tuş "
+#~ "bileşimini kullanırken \"shift\" tuşu basılı tutulursa haraket yönü "
+#~ "tersine döner. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "izin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, "
+#~ "o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Odağın pencereler arasındaki geçişini beliren pencere aracılığıyla "
+#~ "taşımak üzere atanmış tuş bağı. (Geleneksel olarak &lt;Alt&gt;Escape) Bu "
+#~ "tuş bileşimini kullanırken \"shift\" tuşu basılı tutulursa haraket yönü "
+#~ "tersine döner. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "izin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, "
+#~ "o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Her zaman üstte tutmayı açmak veya kapamak üzere atanmış tuş bağı. Biçimi "
+#~ "şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Tam ekran kipini açmak ya da kapamak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Pencerenin ekranı kaplar boyutta oluşunu açıp kapamak üzere atanmış tuş "
+#~ "bağı. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "izin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, "
+#~ "o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Pencereyi toplamak, topluysa yaymak üzere atanmış tuş bağı. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Pencerenin görünürlüğünün bütün çalışma alanları ile yalnızca geçerli "
+#~ "çalışma alanı arasına geçişini yapmak üzere atanmış tuş bağı. Biçimi "
+#~ "şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Ekranı kaplayan pencereyi eski durumuna getirmek üzere atanmış tuş bağı. "
+#~ "Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Panelin \"Program Çalıştır\" penceresini göstermek üzere atanmış tuş "
+#~ "bağı. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;"
+#~ "Shift&gt;&lt; Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "izin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, "
+#~ "o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Panelin ana menüsünü göstermek üzere atanmış tuş bağı. Biçimi şunun gibi "
+#~ "olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt; Alt&gt;F1\". "
+#~ "Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt; Ctl&gt;\" "
+#~ "ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled"
+#~ "\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Pencerenin ekran görüntüsünü alması için panelin ekran görüntüsü alıcı "
+#~ "programını çalıştırmak üzere atanmış tuş bağı. Biçimi şunun gibi "
+#~ "olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" "
+#~ "ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled"
+#~ "\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Panelin ekran görüntüsü alıcı programını çalıştırmak üzere atanmış tuş "
+#~ "bağı. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;"
+#~ "Shift&gt;&lt; Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "izin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, "
+#~ "o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Panelin ana menüsünü göstermek üzere atanmış tuş bağı. Biçimi şunun gibi "
+#~ "olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt; Alt&gt;F1\". "
+#~ "Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt; Ctl&gt;\" "
+#~ "ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled"
+#~ "\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencerenin diğer pencerelerin üstünde mi altında mı olacağını "
+#~ "belirler. Eğer pencerenin üstünde bir başkası varsa, bu ilk pencereyi "
+#~ "diğer tüm pencerelerin üstüne yükseltir. Eğer pencere bütünüyle görünür "
+#~ "durumdaysa diğer tüm pencerelerin altına indirir. Biçimi şunun gibi "
+#~ "olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" "
+#~ "ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled"
+#~ "\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi diğerlerinin altına indirir. Biçimi şunun gibi "
+#~ "olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" "
+#~ "ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled"
+#~ "\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi ekranın kuzey (üst) kenarına taşır. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi ekranın doğu (sağ) kenarına taşır. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi ekranın kuzey-doğu (sağ üst) kenarına taşır. Biçimi "
+#~ "şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi ekranın kuzey-batı (sol üst) kenarına taşır. Biçimi "
+#~ "şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi ekranın güney (alt) kenarına taşır. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi ekranın güney-doğu (sağ alt) kenarına taşır. Biçimi "
+#~ "şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi ekranın güney-batı (sol alt) kenarına taşır. Biçimi "
+#~ "şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca "
+#~ "\"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. "
+#~ "Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, o eylem için "
+#~ "tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi ekranın batı (sol) kenarına taşır. Biçimi şunun "
+#~ "gibi olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;"
+#~ "\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe "
+#~ "\"disabled\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi diğerlerinin üstüne çıkarır. Biçimi şunun gibi "
+#~ "olmalıdır: \"&lt;Control&gt;a\" ya da \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Ayrıştırıcı büyük veya küçük harf farkı gözetmez; ayrıca \"&lt;Ctl&gt;\" "
+#~ "ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara izin verir. Seçeneğe \"disabled"
+#~ "\" özel dizgisini değer olarak atarsanız, o eylem için tuş bağı "
+#~ "yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi tüm yatay boşluğu kaplayacak şekilde yeniden "
+#~ "boyutlandırır. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "izin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, "
+#~ "o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Bu tuş bağı pencereyi tüm dikey boşluğu kaplayacak şekilde yeniden "
+#~ "boyutlandırır. Biçimi şunun gibi olmalıdır: \"&lt;Control&gt;a\" ya da "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Ayrıştırıcı büyük veya küçük harf farkı "
+#~ "gözetmez; ayrıca \"&lt;Ctl&gt;\" ya da \"&lt;Ctrl&gt;\" gibi kısaltmalara "
+#~ "izin verir. Seçeneğe \"disabled\" özel dizgisini değer olarak atarsanız, "
+#~ "o eylem için tuş bağı yapılmamış olur."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Herzaman üstte tut durumunu aç veya kapat"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Pencereyi büyültmeyi geri al"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Pencereyi Büyültmeyi Geri Al"
+
+#~ msgid "\"%s\" is not responding."
+#~ msgstr "\"%s\" cevap vermiyor."
+
+#~ msgid "Title"
+#~ msgstr "Başlık"
+
+#~ msgid "Class"
+#~ msgstr "Sınıf"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "<%s> öğesinde hiç \"%s\" özniteliği yok"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "Temanın zaten bir son çare simgesi var"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "Tema zaten bir en son durum mini_icon'a sahip"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"name\" (ad) özniteliği yok"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"value\" (değer) özniteliği yok"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "<%s> öğesine \"top\" (üst) özniteliği verilmemiş"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "<%s> öğesine \"bottom\" (alt) özniteliği verilmemiş"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "<%s> öğesine \"left\" (sol) özniteliği verilmemiş"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "<%s> öğesine \"right\" (sağ) özniteliği verilmemiş"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"color\" (renk) özniteliği yok"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"x1\" özniteliği yok"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"y1\" özniteliği yok"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"x2\" özniteliği yok"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"y2\" özniteliği yok"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"y\" özniteliği yok"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"width\" (en) özniteliği yok"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"height\" (boy) özniteliği yok"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"start_angle\" (başlama açısı) özniteliği yok"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"extent_angle\" (genişletme açısı) özniteliği yok"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"alpha\" (alfa) özniteliği yok"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"type\" (tür) özniteliği yok"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"filename\" (dosya adı) özniteliği yok"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"state\" (durum) özniteliği yok"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"shadow\" (gölge) özniteliği yok"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "<%s> öğesinde \"arrow\" (ok) özniteliği yok"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "<%s> öğesinde \"value\" (değer) özniteliği yok"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "<%s> öğesinde \"position\" (konum) özniteliği yok"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "<%s> öğesinde \"function\" (işlev) özniteliği yok"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "<%s> öğesinde \"state\" (durum) özniteliği yok"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "<%s> öğesinde \"focus\" (odak) özniteliği yok"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "<%s> öğesinde \"style\" (biçem) özniteliği yok"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "<%s> öğesinde \"resize\" (yeniden boyutlandırma) özniteliği yok"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "Bu temada <author> iki kez belirtilmiş"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "Bu temada <copyright> iki kez belirtilmiş"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "Bu temada <date> iki kez belirtilmiş"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "Bu temada <description> iki kez belirtilmiş"
diff --git a/po/uk.po b/po/uk.po
new file mode 100644
index 00000000..f9738420
--- /dev/null
+++ b/po/uk.po
@@ -0,0 +1,2401 @@
+# Copyright (C) 2001 Free Software Foundation, Inc.
+# Yuriy Syrota <[email protected]>, 2001, 2002.
+# Maxim Dziumanenko <[email protected]>, 2004-2010
+#
+# wanderlust <[email protected]>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-03-26 16:11+0200\n"
+"PO-Revision-Date: 2010-03-26 11:58+0300\n"
+"Last-Translator: Maxim Dziumanenko <[email protected]>\n"
+"Language-Team: Ukrainian <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Робочий стіл"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Керування вікнами"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "Подія дзвінка"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Запит інформації невідомого вікна: %d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> не відповідає."
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+"Можете трошки зачекати відновлення активності або примусово закрити програму."
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "_Чекати"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "_Завершити"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Помилка при отриманні назви комп'ютера: %s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Відсутнє розширення %s, яке необхідне для функції композиції"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Не вдається відкрити дисплей X Window System \"%s\"\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Втрачено з'єднання з дисплеєм \"%s\";\n"
+"очевидно було зупинено X-сервер, або в віконний менеджер\n"
+"був знищений.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Фатальна помилка вводу-виводу %d (%s) на дисплеї \"%s\".\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Клавішу \"%s\" з модифікаторами \"%x\" вже використовує інша програма\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Виникла помила під час запуску <tt>%s</tt>:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Команду %d не визначено.\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Команду терміналу не визначено.\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"Це - вільне програмне забезпечення; умови копіювання дивіться у текстах "
+"програми.\n"
+"Не надається НІЯКИХ гарантій; навіть ПРИДАТНОСТІ ДЛЯ ПРОДАЖУ чи "
+"ВІДПОВІДНОСТІ ПЕВНІЙ МЕТІ.\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "Вимкнути з'єднання з менеджером сеансу"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "Замінити запущений менеджер вікон на Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "Вказати ідентифікатор сеансу"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "X дисплей"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "Ініціалізувати сеанс з збереженого файлу"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "Вивести версію"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "Зробити виклики X синхронними"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "Увімкнути менеджер композиції"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "Вимкнути менеджер композиції"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr ""
+"Не створюйте повноекранних вікон, які розгортаються на весь екран і не мають "
+"рамок"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Помилка зчитування каталогу тем: %s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Не вдається знайти тему! Перевірте чи існує %s та чи містить він звичайну "
+"тему.\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Збій перезапуску: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Ключ MateConf \"%s\" встановлено у неправильний тип\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr ""
+"Значення %d встановлене у ключі MateConf %s не лежить у межах від %d до %d\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Ключ MateConf \"%s\" встановлено у неправильний тип\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Трюк для роботи із зіпсованими програмами вимкнено. Деякі додатки можуть "
+"поводитись неправильно.\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Неможливо проаналізувати опис шрифту \"%s\" у ключі MateConf %s\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"У базі даних конфігурації знайдено \"%s\" - що не є правильним значенням "
+"модифікатора клавіші миші.\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Помилка встановлення кількості робочих областей у %d: %s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "Робоча область %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Знайдене у конфігураційній базі даних значення \"%s\" не є правильним "
+"записом комбінації клавіш \"%s\"\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Помилка встановлення назви робочої області %d у \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Помилка встановлення стану менеджера композиції: %s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Екран %d на дисплеї \"%s\" не правильний\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Екран %d на дисплеї \"%s\" вже контролюється менеджером вікон; спробуйте "
+"вказати параметр --replace, щоб замінити поточний менеджер вікон.\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Не вдається одержати функцію виділення менеджеру вікон на екрані %d дисплею "
+"\"%s\"\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Екран %d на дисплеї \"%s\" вже контролюється менеджером вікон\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Не вдається повернути екран %d на дисплеї \"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Використовується формат \"<Control>a\" або <Shift><Alt>F1\".\n"
+"\n"
+"Аналізатор досить гнучкий та дозволяє використання верхнього та нижнього "
+"регістру та скорочень, наприклад \"<Ctl>\" та \"<Ctrl>\". Якщо цей параметр "
+"встановити у спеціальне значення \"disabled\", то для цієї дії не буде "
+"призначено комбінації клавіш."
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Використовується формат \"<Control>a\" або <Shift><Alt>F1\".\n"
+"\n"
+"Аналізатор досить гнучкий та дозволяє використання верхнього та нижнього "
+"регістру та скорочень, наприклад \"<Ctl>\" та \"<Ctrl>\". Якщо цей параметр "
+"встановити у спеціальне значення \"disabled\", то для цієї дії не буде "
+"призначено комбінації клавіш."
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Не вдається створити каталог \"%s\": %s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Не вдається відкрити для запису файл сеансу \"%s\": %s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Помилка запису файлу сеансу \"%s\": %s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Помилка закриття файлу сеансу \"%s\": %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Збій під час зчитування збереженого файлу сеансу \"%s\": %s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Збій аналізування збереженого файлу сеансу: %s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"було прочитано атрибут <marco_session>, але ідентифікатор сеансу вже було "
+"встановлено"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Невідома ознака %s у елементі <%s>"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "вкладений елемент <window>"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "Невідомий елемент %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"Ці вікна не підтримують \"збереження поточних параметрів\", при наступному "
+"входженні їх треба запустити власноруч."
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Збій відкриття налагоджувального журналу: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Збій виконання fdopen() для журналу %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Відкрито журнал %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr ""
+"\"Метасіті\" скомпільовано без підтримки режиму докладних повідомлень\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Віконний менеджер:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Вада у віконному менеджері:"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Попередження віконного менеджера:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Помилка віконного менеджера:"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Метасіті"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Вікно %s встановило значення SM_CLIENT_ID на себе, замість вікна зі "
+"значенням WM_CLIENT_LEADER, як це визначено у ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Вікно %s встановило натяк MWM, який вказує що його розмір не може "
+"змінюватись, але встановило мінімальний розмір %d x %d та максимальний %d x %"
+"d; що не має сенсу.\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Програма встановив неправильне значення параметра _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (на %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (від адміністратора)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (від %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (від іншого користувача)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Неправильний параметр WM_TRANSIENT_FOR вікна 0x%lx вказано для %s.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Вікно 0x%lx має властивість %s\n"
+"тип якої очікувався %s у форматі %d\n"
+"але насправді має тип %s формат %d n_items %d.\n"
+"Швидше за все - це помилка у програмі, а не у менеджері вікон.\n"
+"Вікно має title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Властивість %s вікна 0x%lx містить неправильний UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Властивість %s вікна 0x%lx містить неправильний UTF-8 у пункті %d списку\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Перейти в робочу область 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Перейти в робочу область 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Перейти в робочу область 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Перейти в робочу область 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Перейти в робочу область 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Перейти в робочу область 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Перейти в робочу область 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Перейти в робочу область 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Перейти в робочу область 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Перейти в робочу область 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Перейти в робочу область 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Перейти в робочу область 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Перейти на робочу область ліворуч від поточної"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Перейти на робочу область праворуч від поточної"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "Перейти на робочу область вище над поточною"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "Перейти на робочу область нижче поточної"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "Перемикати фокус вводу між вікнами програми через контекстне вікно"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr ""
+"Перемикати фокус у зворотному порядку між вікнами програми через контекстне "
+"вікно"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "Перехід між вікнами через контекстне вікно"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr ""
+"Перемикнутися у зворотному порядку між вікнами з використанням контекстного "
+"вікна"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Перехід між панелями та робочим столом через контекстне вікно"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr ""
+"Перехід у зворотному напрямку між панелями та робочим столом через "
+"контекстне вікно"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "Негайний перехід між вікнами"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "Перемикнутися у зворотному порядку між вікнами програми негайно"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Негайний перехід між вікнами"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "Негайний перехід у зворотному напрямку між вікнами"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Негайний перехід між панелями та робочим столом"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Негайний перехід у зворотному напрямку між панелями та робочим столом"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "Приховувати всі звичайні вікна та активувати робочий стіл"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "Показати головне меню панелі"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Показати діалогове вікно панелі «Виконати програму»"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Зробити знімок екрану"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Зробити знімок вікна"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Запустити термінал"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "Активувати меню вікна"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Перемикання повноекранного режиму"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Перемикання стану розгортання вікна на весь екран"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Перемістити вікна нижче усіх вікон"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Розгорнути вікно на весь екран"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "Відновити вікно"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Перемикання стану згорнутості"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Згорнути вікно"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Закрити вікно"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Перемістити вікно"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Змінити розміри вікна"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Чи буде вікно розташоване на усіх робочих областях або ж лишена одній"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Перемістити вікно на робочу область 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Перемістити вікно на робочу область 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Перемістити вікно на робочу область 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Перемістити вікно на робочу область 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Перемістити вікно на робочу область 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Перемістити вікно на робочу область 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Перемістити вікно на робочу область 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Перемістити вікно на робочу область 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Перемістити вікно на робочу область 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Перемістити вікно на робочу область 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Перемістити вікно на робочу область 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Перемістити вікно на робочу область 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Перемістити вікно у робочу область ліворуч"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Перемістити вікно у робочу область праворуч"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Перемістити вікно на робочу область вище"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Перемістити вікно на робочу область нижче"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr ""
+"Підняти вікно вікно на передній план, якщо воно затінене іншим, інакше "
+"опустити його"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Підняти вікно над іншими"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Перемістити вікна нижче усіх вікон"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Розгорнути вікно на весь екран вертикально"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Розгорнути вікно на весь екран горизонтально"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "Перемістити вікно на північно-західний (верхній лівий) кут"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "Перемістити вікно на північно-східний (верхній правий) кут"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "Перемістити вікно на південно-західний (нижній кут) кут"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "Перемістити вікно на південно-східний (нижній правий) кут"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "Перемістити вікно на північну (верхню) область екрану"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "Перемістити вікно на південну (нижню) область екрану"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "Перемістити вікно на східну (праву) область екрану"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "Перемістити вікно на західну (ліву) область екрану"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "Перемістити вікно у центр екрану"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(Не реалізовано) Навігація працює лише по програмам, а не по вікнам"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Рядок опису шрифту для заголовку вікна. Розмір з опису буде використано лише "
+"коли параметр \"titlebar_font_size\" має значення у 0. Цей параметр також "
+"вимкнений, якщо параметр \"titlebar_uses_desktop_font\" має значення Істина"
+"(true)."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Дія при подвійному клацанні на заголовку вікна"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Дія при клацанні середньою кнопкою на заголовку вікна"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Дія при клацанні правою кнопкою на заголовку вікна"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Вирівнювання кнопок у заголовку вікна."
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Вирівнювання кнопок у заголовку вікна. Значення має бути рядком, наприклад "
+"\"menu:minimize,maximize,spacer,close\"; де двокрапка відокремлює лівий кут "
+"вікна від правого, а назви кнопок розділяються комами. Дублікати кнопок не "
+"дозволяються. Невідомі назви кнопок просто ігноруються, таким чином можна "
+"додавати кнопки з майбутніх версій Метасіті без впливу на старі версії."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Автоматично піднімати вікно з фокусом вводу"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"Клацання кнопкою миші по вікну з утриманням натиснутою клавіші-модифікатора "
+"призведе до пересування вікна (лівою кнопкою), зміни розмірів (середньою "
+"кнопкою), або показу меню вікна (правою кнопкою). Функції лівої та середньої "
+"кнопок міняються, якщо увімкнено параметр «resize_with_right_button». "
+"Модифікатор визначається, наприклад, як «&lt;Alt&gt;» чи «&lt;Super&gt;»."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Команди призначені комбінаціям клавіш"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "Менеджер композиції"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "Визначає, як нове вікно отримує фокус"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Поточна тема"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Затримка у мілісекундах для параметру автоматичного піднімання вікна"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Визначає, чи є Marco менеджером композиції."
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Визначає, чи система і програми можуть генерувати озвучений системний "
+"гудок. Може використовуватись із \"візуальним системним гудком\", щоб "
+"увімкнути тихі системні гудки."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Вимкнути неправильні функції, що потрібні лише старим поламаним програмам"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Увімкнути візуальний системний гудок"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Якщо встановлено, та для режиму передачі фокусу вибрано або \"за вказівником"
+"\", або \"миша\" тоді вікно з фокусом буде автоматично піднято після "
+"затримки, що визначається параметром auto_raise_delay. Це не пов'язано з "
+"клацанням на вікні для його підняття, ані з входом у вікно при перетягуванні "
+"(drag-and-drop)."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Якщо встановлено, параметр titlebar_font ігнорується, та використовується "
+"стандартний шрифт для заголовків вікон."
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Якщо встановлено, то marco надає користувачу менший зворотний зв'язок та "
+"менше відчуття \"безпосереднього керування\" за рахунок використання "
+"контурних рамок, відключення анімації та іншими шляхами. Це суттєве "
+"зменшення зручності у використанні для багатьох користувачів, але може "
+"подовжити термін служби старих програм і термінальних серверів. Слід "
+"зауважити, що функція відображення контурної рамки вимикається при "
+"увімкненні спеціальних можливостей."
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Якщо встановлено, Метасіті працює лише з програмами, а не з вікнами. "
+"Концепція трошки абстрактна, але в цілому робота з додатками більше схожа на "
+"Mac, ніж на Windows. При активації вікна у режимі роботи з додатками, "
+"піднімаються всі вікна цієї програми. Крім того, в режимі роботи з "
+"додатками, клацання мишею не передається вікнам інших програм. Реалізація "
+"режиму роботи з додатками, здебільшого, ще не завершена."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Якщо встановлено, зменшує зручність використання для зменшення використання "
+"ресурсів"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Модифікатор, що використовується для дій при клацанні з модифікатором"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Назва робочої області"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Кількість робочих областей"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Кількість робочих областей. Повинно бути більшим за нуль, та має визначений "
+"максимум для упередження руйнування робочого столу кількістю робочих "
+"областей."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Запустити зазначену команду"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"Якщо ключ встановлено, розмір вікна змінюється правою кнопкою миші, а меню "
+"показується середньою, якщо утримується клавіша, вказану у "
+"\"mouse_button_modifier\". Якщо ключ не встановлено, функції кнопок миші "
+"міняються місцями."
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"Якщо цей параметр не встановлено, можлива помилкова поведінка, тому ми "
+"наполегливо радимо утримуватися від мін типового значення. Багато дій "
+"(наприклад, клацання у вікні, переміщення вікна чи зміна його розміру) "
+"звичайно піднімає вікно на передній план. Якщо цей параметр не встановлено, "
+"що наполегливо не рекомендується, підняття на передній план буде відділено "
+"від інший дій та запити на підняття вікна на передній план, що поступають "
+"від програм, будуть ігноруватися. Дивіться http://bugzilla.gnome.org/"
+"show_bug.cgi?id=445447#c6. Навіть якщо цей параметр не встановлено, вікна "
+"можуть бути підняті на передній план за допомогою одночасного натискання на "
+"клавішу Alt та клацання лівою кнопкою миші на будь-якій області вікна, "
+"клацання по заголовку вікна чи спеціальних повідомлень, таких як запити на "
+"підняття вікна. Ця поведінка наразі вимкнена у режимі клацання для передачі "
+"фокусу. Зауважте, що означений вище список не включає до себе програмні "
+"запити від програм про підняття вікон на передній план, такі запити будуть "
+"проігноровані незалежно від причини. Якщо ви розробник програми і вам "
+"доводиться вислуховувати зауваження користувачів, що ваша програма працює "
+"некоректно, вкажіть їм, що вони припустилися помилки, вимкнувши цей параметр "
+"та зруйнувавши менеджер вікон, та що вони повинні вернути цьому параметру "
+"типове значення та перестати надсилати зауваження."
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Деякі програми ігнорують специфікації, що може призвести до неправильної "
+"поведінки віконного менеджера. Цей параметр переводить Marco у режим "
+"суворої відповідності специфікаціям інтерфейсу, що забезпечує усім програмам "
+"стандартний зовнішній вигляд. При цьому звичайна робота програм, що не "
+"відповідають специфікаціям, не гарантується."
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "Системний гудок озвучується"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Вказує \"Метасіті\", як реалізувати візуальну індикацію системного гудка. На "
+"даний момент, доступні два значення: \"fullscreen\", що спричиняє "
+"короткочасне перемикання екрану в чорно-білий режим, і \"frame_flash\", що "
+"спричиняє блимання заголовка програми, що викликала гудок. Якщо не відомо, "
+"яка програма викликала гудок, що часто буває для типових системних гудків, "
+"відбувається блимання заголовка сфокусованого вікна."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Ключі /apps/marco/global_keybindings/run_command_N визначають комбінації "
+"клавіш, що відповідають цим командам. Натискання комбінації клавіш "
+"run_command_N призводить до виконання command_N"
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Ключ /apps/marco/global_keybindings/run_command_screenshot визначає "
+"комбінацію клавіш, що викликає команду вказану в цьому параметрі."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Ключ /apps/marco/global_keybindings/run_command_window_screenshot "
+"визначає комбінацію клавіш, що викликає команду вказану в цьому параметрі. "
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Комбінація клавіш для запуску команд з відповідним номером у ключі /apps/"
+"marco/keybinding_commands Використовується формат \"&lt;Control&gt;a\" "
+"або \"&lt;Shift&gt;&lt;Alt&gt;F1\". Аналізатор досить гнучкий та дозволяє "
+"використання верхнього та нижнього регістру та скорочень, наприклад \"&lt;"
+"Ctl&gt;\" та \"&lt;Ctrl&gt;\". Якщо цей параметр встановити у спеціальне "
+"значення \"disabled\", то для цієї дії не буде призначено комбінації клавіш."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "Назва робочої області"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "Команда створення знімку екрану"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Тема визначає вигляд рамки вікна, заголовку та таке інше."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Затримка перед підніманням вікна, якщо встановлено параметр auto_raise. "
+"Затримка вказується у тисячних долях секунди."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Режим передачі фокусу вікна визначає як слід активувати вікно. Можливі три "
+"значення \"click\" означає, що для передачі фокусу вікну потрібно клацнути "
+"по ньому; \"sloppy\" означає, що вікно отримуватиме фокус коли вказівник "
+"миші входить у межі вікна; \"mouse\" означає, що вікно отримуватиме фокус "
+"коли вказівник миші входить у межі вікна і втрачає фокус, коли виходить з "
+"вікна;"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "Команда створення знімку вікна"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Цей параметр визначає ефект від подвійного клацання по заголовку вікна. "
+"Поточними можливими значеннями є 'toggle_shade' - перемикає тіньовий стан "
+"вікна, 'toggle_maximize' - розгортає та відновлює вікно, "
+"'toggle_maximize_horizontally' та 'toggle_maximize_vertically' - "
+"розгортання/згортання вікна лише у цьому напрямку, 'minimize' - згортання "
+"вікна, 'shade'- згортання вікна вгору, 'menu' - відображення меню вікна, "
+"'lower' - переміщенні вікна на самий нижній рівень, під усі вікна, та 'none' "
+"- немає дії."
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Цей параметр визначає ефект від клацання середньою кнопкою по заголовку "
+"вікна. Поточними можливими значеннями є 'toggle_shade' - перемикає тіньовий "
+"стан вікна, 'toggle_maximize' - розгортає та відновлює вікно, "
+"'toggle_maximize_horizontally' та 'toggle_maximize_vertically' - "
+"розгортання/згортання вікна лише у цьому напрямку, 'minimize' - згортання "
+"вікна, 'shade'- згортання вікна вгору, 'menu' - відображення меню вікна, "
+"'lower' - переміщенні вікна на самий нижній рівень, під усі вікна, та 'none' "
+"- немає дії."
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Цей параметр визначає ефект від клацання правою кнопкою по заголовку вікна. "
+"Поточними можливими значеннями є 'toggle_shade' - перемикає тіньовий стан "
+"вікна, 'toggle_maximize' - розгортає та відновлює вікно, "
+"'toggle_maximize_horizontally' та 'toggle_maximize_vertically' - "
+"розгортання/згортання вікна лише у цьому напрямку, 'minimize' - згортання "
+"вікна, 'shade'- згортання вікна вгору, 'menu' - відображення меню вікна, "
+"'lower' - переміщенні вікна на самий нижній рівень, під усі вікна, та 'none' "
+"- немає дії."
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Цей параметр надає додаткове керування тим, як нові вікна отримують фокус. "
+"Він має два можливих значення. Значення \"smart\" застосовує звичайний режим "
+"фокусу користувача, а \"strict\" призводить до того, що запущені з терміналу "
+"вікна, не отримують фокус."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Увімкнути візуальну індикацію системного гудка, корисно для людей з вадами "
+"слуху, чи у шумному середовищі."
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "Використання стандартного шрифту у заголовках вікон"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "Тип візуального гудка"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "Чи піднімання вікна має бути побічним ефектом інших дій користувача"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "Зміна розміру з використанням правої кнопки миші"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "Режим отримання фокусу вікном"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "Шрифт заголовка вікна"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Використання: %s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "Закрити вікно"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "Меню вікна"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "Згорнути вікно"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "Розгорнути вікно"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "Відновити вікно"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "Скотити вікно"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "Розкотити вікно"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "Тримати вікно нагорі"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "Прибрати вікно з гори"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "Завжди на видимій робочій області"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "Розміщувати вікно лише на одній робочій області"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "З_горути"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "_Розгорнути"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Відновити п_опередній розмір"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "_Скотити"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "Роз_котити"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "Пере_містити"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "Змінити _розмір"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "Перемістити заголовок на _екран"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "Завжди звер_ху"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "Зав_жди на видимій робочій області"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Лише на цій робочій області"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Перемістити у робочу область _ліворуч"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Перемістити у робочу область _праворуч"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Перемістити у робочу область в_верху"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Перемістити у робочу область в_низу"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Закрити"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Робоча область %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Робоча область 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Робоча область %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Перемістити у ін_шу робочу область"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "top"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "bottom"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "left"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "right"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "геометрія рамки не визначає розмір \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "геометрія рамки не визначає розмір \"%s\" рамки \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Неприпустимий коефіцієнт пропорційності %g"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Геометрія рамки не визначає розміри кнопок"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Градієнти повинні мати принаймні два кольори"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"При визначенні кольору GTK потрібно вказувати режим у прямокутних дужках, "
+"наприклад gtk:fg[NORMAL], де NORMAL - режим; неможливо розібрати \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"При визначенні кольору GTK після вказування режиму повинна бути завершальна "
+"прямокутна дужка, наприклад gtk:fg[NORMAL], де NORMAL - режим; неможливо "
+"розібрати \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Неможливо розпізнати режим \"%s\" у визначенні кольору"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Неможливо розпізнати компонент кольору \"%s\" у визначенні кольору"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Формат визначення змішаного кольору такий - \"blend/bg_color/fg_color/alpha"
+"\", \"%s\" не відповідає формату"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Неможливо розібрати значення альфа-каналу \"%s\" у змішаному кольорі"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Значення альфа-каналу \"%s\" у змішаному кольорі поза межами 0.0 - 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Формат тіні такий - \"shade/base_color/factor\", \"%s\" не відповідає формату"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Не вдається проаналізувати компонент тіні \"%s\" у затіненому кольорі"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Компонент тіні \"%s\" у затіненому кольорі від'ємний"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Не вдається проаналізувати колір \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Вираз координати містить заборонений символ '%s'"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Вираз координати містить число з плаваючою комою \"%s\" яке не вдалось "
+"розібрати"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Вираз координати містить ціле число \"%s\" яке не вдалось розібрати"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "Вираз координати містить невідомий оператор на початку тексту\"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Вираз координати був пустий або його неможливо розпізнати"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Вираз координати призвів до ділення на нуль"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Вираз координати намагається використати оператор знаходження залишку від "
+"ділення для числа з плаваючою комою"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Вираз координати містить оператор \"%s\", там де очікувався операнд"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Вираз координати містить оператор, там де очікувався оператор"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Вираз координати закінчується оператором замість операнда"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Вираз координати містить оператор \"%c\", за яким йде оператор \"%c\" без "
+"операнду між ними"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Вираз координати містить невідому змінну або константу \"%s\""
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Переповнення буферу обробника координат."
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Вираз координати містить завершальну дужку без відповідної відкриваючої"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Вираз координати містить завершальну дужку без відповідної закриваючої"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Здається вираз координати не містить жодного оператору чи операнду"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Тема містить вираз, що призводить до помилки: %s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"для цього стилю рамки треба вказати <button function=\"%s\" state=\"%s\" "
+"draw_ops=\"будь-що\"/>"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Відсутнє <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"будь-що\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Збій завантаження схеми \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Не встановлено <%s> для теми \"%s\""
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Немає стилю рамки для вікна типу \"%s\" у темі \"%s\", додайте елемент "
+"<window type=\"%s\" style_set=\"будь-що\"/> "
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Визначені користувачем константи повинні починатись з великої літери; \"%s\" "
+"не починається з великої літери"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Константа \"%s\" вже визначена"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Немає ознаки «%s» у елементі <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Рядок %d, символ %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Ознака \"%s\" двічі повторюється у тому самому елементі <%s>"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Неправильна ознака \"%s\" у елементі <%s> у цьому контексті"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Не вдається проаналізувати як ціле \"%s\""
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Не вдається розпізнати останні символи \"%s\" у рядку \"%s\""
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Значення цілого %ld має бути додатнім"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Значення цілого %ld надто велике, максимумом є %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Неможливо проаналізувати \"%s\" як число з плаваючою комою"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Логічні значення повинні бути \"true\" або \"false\", а не \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Кут повинен бути між 0.0 та 360.0, вказано %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Альфа-канал повинен бути у межах 0.0 (невидимість) та 1.0 (повна "
+"непрозорість), було %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Неприпустимий масштаб заголовку \"%s\" (можливі значення: xx-small,x-small,"
+"small,medium,large,x-large,xx-large)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "у елементі <%s> назва \"%s\" зустрілась другий раз"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "у елементі <%s> не було визначено батьківський елемент \"%s\""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "у елементі <%s> не було визначено геометрію \"%s\""
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+"<%s> повинен або визначати геометрію, або вказувати на батьківський елемент, "
+"який містить геометрію"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Слід вказати тло для значення альфа-каналу"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Невідомий тип \"%s\" у елементі <%s>"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Невідомий параметр style_set \"%s\" у елементі <%s>"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Типу вікна \"%s\" вже було визначено набір стилів"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Не допускається використання елементу <%s> нижче <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Неможливо одночасно задати для кнопок параметри \"button_width\"/"
+"\"button_height\" та \"aspect_ratio\""
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Невідома відстань \"%s\""
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Невідомий коефіцієнт пропорційності \"%s\""
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Межа \"%s\" невідома"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Немає ознаки \"start_angle\" або \"from\" у елементі <%s>"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Немає ознаки \"extent_angle\" або \"to\" у елементі <%s>"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Не вдається розпізнати значення \"%s\" типу градієнту"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Не вдається розпізнати тип заповнення \"%s\" у елементі <%s>"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Не вдається розпізнати режим \"%s\" у елементі <%s>"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Не вдається розпізнати тінь \"%s\" у елементі <%s>"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Не вдається розпізнати стрілку \"%s\" у елементі <%s>"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Параметр <draw_ops> з назвою \"%s\" не було визначено"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+"Вставлення сюди draw_ops \"%s\" призведе до створення циклічного посилання"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Невідома позиція \"%s\" дільниці рамки"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "У стилю рамки вже є дільниці рамки у позиції %s"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Не було визначено параметру <draw_ops> з назвою \"%s\""
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Невідома функція кнопки - \"%s\""
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Функція кнопки \"%s\" не існує для цієї версії (%d, потрібно %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Невідомий стан кнопки - \"%s\""
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Стиль рамки вже містить кнопку для функції %s зі станом %s"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" не є правильною назвою ознаки \"focus\""
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" не є правильним станом ознаки \"state\""
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Стиль \"%s\" не визначено"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" не є правильним значенням ознаки \"resize\""
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Не слід використовувати ознаку \"resize\" у елементі <%s> для розгорнутого "
+"та згорнутого стану"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Не слід використовувати ознаку \"resize\" у елементі <%s> для розгорнутого "
+"стану"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Стиль вже було визначено для ознак state %s resize %s focus %s"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Стиль вже було визначено для ознак state %s focus %s"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Неможливо використовувати два параметра draw_ops у одному елементі <piece> "
+"(у темі вказано ознаку draw_ops та елемент <draw_ops>, або вказано два "
+"елементи)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Неможливо використовувати два параметра draw_ops у одному елементі <button> "
+"(у темі вказано ознаку draw_ops та елемент <draw_ops>, або вказано два "
+"елементи)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Неможливо використовувати два параметра draw_ops у одному елементі "
+"<menu_icon> (у темі вказано ознаку draw_ops та елемент <draw_ops>, або "
+"вказано два елементи)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Найвищим елементом в темі має бути <marco_theme>, не <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Елемент <%s> не дозволяється у елементах <name>, <author>, <date> і "
+"<description>"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Елемент <%s> не дозволяється у елементі <constant>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Елемент <%s> не дозволяється у елементах <distance>, <border>, <aspect_ratio>"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Елемент <%s> не дозволяється у елементі операції малювання"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Елемент <%s> не дозволяється у елементі <%s>"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "Для частини рамки не визначено параметр draw_ops"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "Для кнопки не визначено параметр draw_ops"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Текст не дозволяється у елементі <%s>"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> вказано для цієї теми двічі"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Не вдається знайти коректний файл для теми %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Файл теми %s не містить елемента <marco_theme>"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Вікна"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Вікна/відрив"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Вікна/_Діалог"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Вікна/_Модальний діалог"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Вікна/_Утиліта"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Вікна/_Заставка"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Вікна/_Верхній док"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Вікна/_Нижній док"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Вікна/_Лівий док"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Вікна/_Правий док"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "б/Вікна/Всі _доки"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Вікна/_Робочий стіл"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "Це зразок повідомлення у зразковому діалозі"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Фальшивий елемент меню %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "Вікно лише з рамкою"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "Прямокутник"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "Звичайне вікно програми"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "Діалог"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "Модальний діалог"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "Допоміжна палітра"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "Відірване меню"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "Рамка"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "Перевірка розташування кнопок %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g мс для малювання однієї рамки вікна"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Використання: marco-theme-viewer [НАЗВА_ТЕМИ]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Помилка завантаження теми: %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Завантажено тему \"%s\" за %g с\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "Звичайний шрифт заголовка"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "Малий шрифт заголовка"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "Великий шрифт заголовка"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "Розташування кнопок"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "Продуктивність"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "Тут буде заголовок вікна"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Намальовано %d рамок за %g с клієнтського часу (%g мс на рамку) і %g с "
+"календарного часу, включаючи ресурси сервера X Window (%g мс на кадр)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+"перевірка виразу позиції повернула значення ІСТИНА, але встановила помилку"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"перевірка виразу позиції повернула значення ХИБНІСТЬ, але не встановила "
+"помилки"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "Очікувалась помилка, але її не трапилось"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Очікувалась помилка %d, але трапилась помилка %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Помилка не очікувалась, але її повернуто: %s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "Значення X було %d, а очікувалось ― %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "Значення Y було %d, а очікувалось ― %d"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d координатних виразів проаналізовано за %g с (середнє значення: %g c)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "Відкрити інше вікно"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "Це демонстраційна кнопка із значком відкривання"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "Це демонстраційна кнопка із значком виходу"
diff --git a/po/vi.po b/po/vi.po
new file mode 100644
index 00000000..76c3db20
--- /dev/null
+++ b/po/vi.po
@@ -0,0 +1,3752 @@
+# Vietnamese translation for Marco.
+# Copyright © 2008 MATE i18n Project for Vietnamese.
+# Nguyễn Thái Ngọc Duy <[email protected]>, 2002-2004, 2007, 2008.
+# Clytie Siddall <[email protected]>, 2005-2008.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco MATE TRUNK\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-05-12 23:36+0000\n"
+"PO-Revision-Date: 2008-06-01 23:15+0930\n"
+"Last-Translator: Clytie Siddall <[email protected]>\n"
+"Language-Team: Vietnamese <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: LocFactoryEditor 1.7b3\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "Màn hình nền"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "Quản lý cửa sổ"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "Yêu cầu thông tin cửa sổ không rõ : %d"
+
+#: ../src/core/delete.c:70
+#: ../src/core/delete.c:97
+#: ../src/ui/marco-dialog.c:50
+#: ../src/ui/theme-parser.c:481
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Không thể phân tích « %s » thành một số nguyên."
+
+#: ../src/core/delete.c:77
+#: ../src/core/delete.c:104
+#: ../src/ui/marco-dialog.c:57
+#: ../src/ui/theme-parser.c:490
+#: ../src/ui/theme-parser.c:545
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Không thể hiểu ký tự đuôi « %s » trong chuỗi « %s »."
+
+#: ../src/core/delete.c:135
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Lỗi phân tích thông điệp « %s » từ tiến trình hội thoại.\n"
+
+#: ../src/core/delete.c:253
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Gặp lỗi khi đọc từ tiến trình hiển thị hộp thoại: %s\n"
+
+#: ../src/core/delete.c:336
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Lỗi chạy « marco-dialog » (hộp thoại) để hỏi về việc buộc kết thúc ứng "
+"dụng: %s\n"
+
+#: ../src/core/delete.c:445
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Lỗi lấy tên máy: %s\n"
+
+#: ../src/core/display.c:256
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "Thiếu phần mở rộng %s cần thiết để sắp thành phần"
+
+#: ../src/core/display.c:334
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Lỗi mở bộ trình bày Hệ thống Cửa sổ X « %s ».\n"
+
+#: ../src/core/errors.c:271
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Mất liên kết với bộ trình bày « %s »;\n"
+"thường là do trình phục vụ X bị ngừng hoạt động hoặc \n"
+"bạn đã buộc chấm dứt hoạt động bộ quản lý cửa sổ.\n"
+
+#: ../src/core/errors.c:278
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Lỗi gõ/xuất nghiêm trọng %d (%s) trên bộ trình bày « %s ».\n"
+
+#: ../src/core/keybindings.c:1090
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Một chương trình khác đã dùng phím « %s » với phím bổ trợ «%x» như là tổ hợp.\n"
+
+#: ../src/core/keybindings.c:2722
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+"Gặp lỗi khi khởi chạy «marco-dialog» để in thông báo lỗi về lệnh: %s\n"
+
+#: ../src/core/keybindings.c:2827
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Không có lệnh «%d» nào được định nghĩa.\n"
+
+#: ../src/core/keybindings.c:3855
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "Không có lệnh thiết bị cuối nào được định nghĩa.\n"
+
+#: ../src/core/main.c:115
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Tác quyền © 2001-2008 của Havoc Pennington, Red Hat, Inc., và người khác.\n"
+"Chương trình này là phần mềm tự do; xem mã nguồn để tìm điều kiện sao chép.\n"
+"KHÔNG CÓ BẢO HÀNH GÌ CẢ, THẬM CHÍ KHÔNG CÓ BẢO ĐẢM ĐƯỢC NGỤ Ý KHẢ NĂNG BÁN "
+"HAY KHẢ NĂNG LÀM ĐƯỢC VIỆC DỨT KHOÁT.\n"
+
+#: ../src/core/main.c:242
+msgid "Disable connection to session manager"
+msgstr "Vô hiệu hóa sự kết nối đến bộ quản lý phiên làm việc"
+
+#: ../src/core/main.c:248
+msgid "Replace the running window manager with Marco"
+msgstr "Thay thế bộ quản lý cửa sổ đang chạy bằng Marco"
+
+#: ../src/core/main.c:254
+msgid "Specify session management ID"
+msgstr "Ghi rõ ID quản lý phiên làm việc"
+
+#: ../src/core/main.c:259
+msgid "X Display to use"
+msgstr "Bộ trình bày X cần dùng"
+
+#: ../src/core/main.c:265
+msgid "Initialize session from savefile"
+msgstr "Khởi động phiên làm việc từ tập tin lưu"
+
+#: ../src/core/main.c:271
+msgid "Print version"
+msgstr "In ra phiên bản"
+
+#: ../src/core/main.c:277
+msgid "Make X calls synchronous"
+msgstr "Khiến các lời gọi X đồng bộ với nhau"
+
+#: ../src/core/main.c:428
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Lỗi quét thư mục sắc thái: %s\n"
+
+#: ../src/core/main.c:444
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr ""
+"Không tìm thấy sắc thái. Hãy bảo đảm %s tồn tại và chứa những sắc thái bình "
+"thường.\n"
+
+#: ../src/core/main.c:500
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Lỗi khởi động lại: %s\n"
+
+#: ../src/core/prefs.c:450
+#: ../src/core/prefs.c:564
+#, c-format
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#.
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Khóa MateConf « %s » được đặt giá trị không hợp lệ\n"
+
+#: ../src/core/prefs.c:537
+#: ../src/core/prefs.c:611
+#: ../src/core/prefs.c:659
+#: ../src/core/prefs.c:965
+#: ../src/core/prefs.c:983
+#: ../src/core/prefs.c:999
+#: ../src/core/prefs.c:1018
+#: ../src/core/prefs.c:1034
+#: ../src/core/prefs.c:1051
+#: ../src/core/prefs.c:1068
+#: ../src/core/prefs.c:1084
+#: ../src/core/prefs.c:1100
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Khóa MateConf « %s » được đặt kiểu sai\n"
+
+#: ../src/core/prefs.c:860
+#, c-format
+msgid "Type of %s was not integer"
+msgstr "%s có kiểu không phải số nguyên"
+
+#: ../src/core/prefs.c:1169
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Khả năng chỉnh sửa cho các ứng dụng không theo chuẩn đã đã tắt. Vài ứng dụng "
+"có thể sẽ xử sự không đúng.\n"
+
+#: ../src/core/prefs.c:1224
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+"range 1..128\n"
+msgstr ""
+"« %d » được lưu trong khóa MateConf « %s » không phải là một « cursor_size » (kích "
+"cỡ con chạy) hợp lý; phải nằm trong phạm vi (1..128)\n"
+
+#: ../src/core/prefs.c:1250
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Không thể phân tách mô tả phông chữ « %s » từ khóa MateConf « %s ».\n"
+
+#: ../src/core/prefs.c:1310
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"Tìm thấy « %s » trong cơ sở dữ liệu cấu hình không phải giá trị hợp lệ cho bộ "
+"biến đổi nút chuột.\n"
+
+#: ../src/core/prefs.c:1589
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+"«%d» được lưu trong khóa MateConf « %s » không phải là một con số hợp lý cho số "
+"vùng làm việc, hiện thời tối đa là «%d».\n"
+
+#: ../src/core/prefs.c:1633
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "«%d» được lưu trong khóa MateConf « %s » nằm ngoài phạm vi từ 0 tới «%d».\n"
+
+#: ../src/core/prefs.c:1764
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Gặp lỗi khi đặt số vùng làm việc là %d: %s\n"
+
+#: ../src/core/prefs.c:2129
+#: ../src/core/prefs.c:2641
+#, c-format
+msgid "Workspace %d"
+msgstr "Vùng làm việc %d"
+
+#: ../src/core/prefs.c:2159
+#: ../src/core/prefs.c:2332
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"Tìm thấy « %s » trong cơ sở dữ liệu cấu hình không phải giá trị hợp lệ cho tổ "
+"hợp phím « %s ».\n"
+
+#: ../src/core/prefs.c:2722
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Gặp lỗi khi đặt tên cho vùng làm việc «%d» thành « %s »: %s\n"
+
+#: ../src/core/screen.c:350
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Màn hình %d trên bộ trình bày « %s » không hợp lệ.\n"
+
+#: ../src/core/screen.c:366
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Màn hình %d trên bộ trình bày « %s » đã có bộ quản lý cửa sổ rồi; hãy thử "
+"dùng tùy chọn «--replace» để _thay thế_ bộ quản lý cửa sổ đang dùng.\n"
+
+#: ../src/core/screen.c:393
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Không thể lấy vùng chọn bộ quản lý cửa sổ trên Màn hình %d trên bộ trình bày "
+"« %s ».\n"
+
+#: ../src/core/screen.c:451
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Màn hình %d trên bộ trình bày « %s » đã có bộ quản lý cửa sổ.\n"
+
+#: ../src/core/screen.c:661
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Không thể giải phóng Màn hình %d trên bộ trình bày « %s ».\n"
+
+#: ../src/core/session.c:837
+#: ../src/core/session.c:844
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Không thể tạo thư mục « %s »: %s\n"
+
+#: ../src/core/session.c:854
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Không thể mở tập tin phiên làm việc « %s » để ghi: %s\n"
+
+#: ../src/core/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Gặp lỗi khi ghi tập tin phiên làm việc « %s »: %s\n"
+
+#: ../src/core/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Gặp lỗi khi đóng tập tin phiên làm việc « %s »: %s\n"
+
+#: ../src/core/session.c:1093
+#, c-format
+#. oh, just give up
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Lỗi đọc tập tin phiên làm việc đã lưu %s: %s\n"
+
+#: ../src/core/session.c:1132
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Lỗi phân tích tập tin phiên làm việc đã lưu: %s\n"
+
+#: ../src/core/session.c:1181
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "Thấy thuộc tính <marco_session>, nhưng đã có session ID."
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "Thuộc tính lạ « %s » trên phần tử <marco_session>."
+
+#: ../src/core/session.c:1211
+#, c-format
+msgid "nested <window> tag"
+msgstr "thẻ <window> lồng nhau"
+
+#: ../src/core/session.c:1269
+#: ../src/core/session.c:1301
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Thuộc tính lạ « %s » trên phần tử <window>"
+
+#: ../src/core/session.c:1373
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Thuộc tính lạ « %s » trên phần tử <maximized>"
+
+#: ../src/core/session.c:1433
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Thuộc tính lạ « %s » trên phần tử <geometry>"
+
+#: ../src/core/session.c:1453
+#, c-format
+msgid "Unknown element %s"
+msgstr "Phần tử lạ « %s »"
+
+#: ../src/core/session.c:1879
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Gặp lỗi khi chạy «marco-dialog» để cảnh báo về ứng dụng không hỗ trợ quản "
+"lý phiên làm việc: %s\n"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Lỗi mở bản ghi gỡ lỗi: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Lỗi fdopen() tập tin ghi lưu %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Đã mở tập tin ghi lưu %s.\n"
+
+#: ../src/core/util.c:136
+#: ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco đã được biên dịch không hỗ trợ phương thức chi tiết.\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Bộ quản lý cửa sổ: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Lỗi trong bộ quản lý cửa sổ: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Cảnh báo bộ quản lý cửa sổ: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Lỗi bộ quản lý cửa sổ: "
+
+#: ../src/core/window-props.c:195
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Ứng dụng đã đặt « _NET_WM_PID » giả %lu.\n"
+
+#: ../src/core/window-props.c:327
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (trên %s)"
+
+#: ../src/core/window-props.c:1409
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "Cửa sổ « WM_TRANSIENT_FOR » không hợp lệ 0x%lx được xác định cho %s.\n"
+
+#: ../src/core/window.c:5670
+#, c-format
+#. first time through
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Cửa sổ « %s » tự đặt « SM_CLIENT_ID » cho chính nó, thay vì đặt trên cửa sổ « "
+"WM_CLIENT_LEADER » như quy định trong ICCCM.\n"
+
+#: ../src/core/window.c:6235
+#, c-format
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Cửa sổ %s gọi ý MWM nói rằng nó không thể bị thay đổi kích thước, nhưng đặt "
+"kích thước tối thiểu %d x %d và tối đa %d x %d; điều này có vẻ cũng hơi hợp "
+"lý.\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Cửa sổ 0x%lx có thuộc tính « %s »\n"
+"mà lẽ ra phải có kiểu « %s » dạng thức «%d»\n"
+"và thực sự là kiểu « %s » dạng thức «%d n_items %d».\n"
+"Chắc là có một ứng dụng bị lỗi, không phải lỗi trình quản lý cửa sổ.\n"
+"Cửa sổ có « title=\"%s\" class=\"%s\" name=\"%s\" »\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Thuộc tính « %s » trên cửa sổ « 0x%lx » chứa chuỗi UTF-8 sai.\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Thuộc tính « %s » trên cửa sổ « 0x%lx » chứa chuỗi UTF-8 sai cho mục %d trong "
+"danh sách.\n"
+
+# Name: don't translate / Tên: đừng dịch
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"Việc duyệt (chưa thực hiện) làm việc theo các điều khoản của ứng dụng, không "
+"phải cửa sổ."
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Chuỗi mô tả phông chữ mô tả phông chữ cho tựa đề cửa sổ. Tuy nhiên kích "
+"thước theo mô tả này sẽ chỉ được dùng nếu tùy chọn « titlebar_font_size "
+"» (kích thước phông chữ thanh tựa đề) được đặt là 0. Ngoài ra, tùy chọn này "
+"sẽ tắt nếu tùy chọn « titlebar_uses_desktop_font » (thanh đựa đề dùng phông "
+"chữ của màn hình làm việc) bật."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Hành động khi nhấn đúp chuột lên thanh tiêu đề"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "Hành động khi nhấn-đúp chuột lên thanh tựa"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Action on title bar right-click"
+msgstr "Hành động khi nhấn-phải chuột lên thanh tựa"
+
+#: ../src/marco.schemas.in.h:6
+msgid "Activate window menu"
+msgstr "Kích hoạt trình đơn cửa sổ"
+
+#: ../src/marco.schemas.in.h:7
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Sự bố trí các nút trên thanh tiêu đề"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Bố trí các nút trên thanh tiêu đề. Giá trị nên là một chuỗi như là « menu:minimize,maximize,close » (trình đơn:cực tiểu hóa,cực đại hóa,đóng), dấu hai chấm tách góc trái ra khỏi góc phải cửa sổ, tên các nút được cách nhau bởi dấu phẩy. "
+"Không cho phép nút đúp nào. Tên nút không rõ sẽ được bỏ qua để cho các nút "
+"tiếp tục được bổ sung vào các phiên bản tiếp theo của marco mà không phá "
+"vỡ phiên bản cũ. Một thẻ phân cách đặc biệt có thể được dùng để chèn khoảng cách vào giữa hai nút kề nhau."
+
+#: ../src/marco.schemas.in.h:9
+msgid "Automatically raises the focused window"
+msgstr "Tự động hiển thị cửa sổ có tiêu điểm"
+
+#: ../src/marco.schemas.in.h:10
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Nhấn chuột lên một cửa sổ trong khi đang giữ phím biến đổi này sẽ di chuyển "
+"cửa sổ (nút chuột trái), đặt lại kích thước cửa sổ (nút chuột giữa), hoặc "
+"hiện trình đơn cửa sổ (nút chuột phải). Phím biến đổi được tạo như \"&lt;"
+"Alt&gt;\" hay \"&lt;Super&gt;\" để làm ví dụ."
+
+#: ../src/marco.schemas.in.h:11
+msgid "Close window"
+msgstr "Đóng cửa sổ"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Commands to run in response to keybindings"
+msgstr "Lệnh cần chạy khi nhấn phím tổ hợp"
+
+#: ../src/marco.schemas.in.h:13
+msgid "Compositing Manager"
+msgstr "Bộ Quản lý Ghép lại"
+
+#: ../src/marco.schemas.in.h:14
+msgid "Control how new windows get focus"
+msgstr "Điều khiển cách gán tiêu điểm cho cửa sổ mới"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Current theme"
+msgstr "Sắc thái hiện tại"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Khoảng chờ (mili giây) cho tùy chọn tự động hiện"
+
+#: ../src/marco.schemas.in.h:17
+msgid "Determines whether Marco is a compositing manager."
+msgstr "Quyết định nếu trình Marco là bộ quản lý ghép lại hay không."
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Xác định ứng dụng hoặc hệ thống có thể phát sinh tiến «bíp» hay không; có thể "
+"dùng chung với «cái chuông hình» để cho phép «bíp» câm."
+
+#: ../src/marco.schemas.in.h:19
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "Tắt «tính năng sai» là cần thiết đối với các ứng dụng cũ hay bị hỏng"
+
+#: ../src/marco.schemas.in.h:20
+msgid "Enable Visual Bell"
+msgstr "Bật Chuông hình"
+
+#: ../src/marco.schemas.in.h:21
+msgid "Hide all windows and focus desktop"
+msgstr "Ẩn mọi của sổ và màn hình nền có tiêu điểm"
+
+#: ../src/marco.schemas.in.h:22
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Nếu bật, và chế độ tiêu điểm hoạc là « sloppy » (luộm thuộm) hay « mouse "
+"» (con chuột) thì cửa sổ có tiêu điểm sẽ được nâng lên tự động, sau một thời "
+"gian hoãn được xác định bởi khoá « auto_raise_delay » (hoãn nâng lên tự "
+"động). Cái này không liên quan đến việc nhắp vào cửa sổ để nâng nó lên, cũng "
+"không liên quan đến việc vào cửa sổ trong khi kéo và thả."
+
+#: ../src/marco.schemas.in.h:23
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Nếu bật, bỏ qua tùy chọn «titlebar_font», và dùng phông chữ ứng dụng chuẩn "
+"cho tựa đề cửa sổ."
+
+#: ../src/marco.schemas.in.h:24
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Nếu bật thì trình marco sẽ cho người dùng xem phản hồi ít hơn bằng cách "
+"dùng đường viền, tránh hoạt ảnh, hoặc bằng cách khác. Phần lớn người dùng sẽ "
+"thấy biết tính hữu dụng đã giảm xuống, nhưng mà có lẽ tùy chọn này sẽ cho "
+"phép ứng dụng cũ hơn tiếp tục hoạt động, và có lẽ cũng là thoả hiệp có ích "
+"cho trình phục vụ thiết bị cuỗi. Tuy nhiên, tính năng đường viền đã tắt khi "
+"khả năng truy cập được bật."
+
+#: ../src/marco.schemas.in.h:25
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Nếu bật thì trình Marco hoạt động như theo ứng dụng hơn là theo cửa sổ. "
+"Khái niệm này hơi trừu tượng, nhưng nói chung một thiết lập dựa trên ứng "
+"dụng thì giống như Mac hơn Windows. Khi bạn đặt tiêu điểm lên một cửa sổ "
+"trong chế độ dựa trên ứng dụng, mọi cửa sổ trong ứng dụng đó sẽ được hiển "
+"thị. Ngoài ra, trong chế độ dựa trên ứng dụng, nhấn tiêu điểm không được "
+"chuyển cho cửa sổ của ứng dụng khác. Ngoài ra chế độ dựa trên ứng dụng chưa "
+"được làm tại thời điểm này."
+
+#: ../src/marco.schemas.in.h:26
+msgid "If true, trade off usability for less resource usage"
+msgstr "Nếu đúng, thoả hiệp giữa tính hữu dụng và dùng ít tài nguyên"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Lower window below other windows"
+msgstr "Hạ thấp cửa sổ xuống dưới các cửa sổ khác"
+
+#: ../src/marco.schemas.in.h:28
+msgid ""
+"Many actions (e.g. clicking in the client area, moving or resizing the "
+"window) normally raise the window as a side-effect. Setting this option to "
+"false, which is strongly discouraged, will decouple raising from other user "
+"actions, and ignore raise requests generated by applications. See http://"
+"bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+msgstr ""
+"Nhiều hành động (v.d. nhấn vào vùng khách, di chuyển hoặc thay đổi kích cỡ "
+"của cửa sổ) bình thường có hiệu ứng khác là nâng cửa sổ lên. Rất khuyên bạn "
+"không đặt tùy chọn này thành sai (false), mà sẽ gỡ hành động nâng lên ra các "
+"hành động người dùng khác, và bỏ qua các yêu cầu nâng lên được làm bởi ứng "
+"dụng. Xem vấn đề « http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6 »."
+
+#: ../src/marco.schemas.in.h:29
+msgid "Maximize window"
+msgstr "Phóng to cửa sổ"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Maximize window horizontally"
+msgstr "Phóng to cửa sổ theo chiều ngang"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Maximize window vertically"
+msgstr "Phóng to cửa sổ theo chiều dọc"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Minimize window"
+msgstr "Thu nhỏ cửa sổ"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Trình biến đổi để dùng cho các hành động nhấn chuột biến đổi lên cửa sổ"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Di chuyển lùi lại giữa các bảng và màn hình nền ngay"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move backwards between panels and the desktop with popup"
+msgstr "Di chuyển lùi lại giữa các bảng và màn hình nền với cửa sổ bật lên"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move backwards between windows immediately"
+msgstr "Di chuyển lùi lại giữa các cửa sổ ngay"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move backwards between windows of an application immediately"
+msgstr "Di chuyển ngay lùi lại giữa các cửa sổ của ứng dụng"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move backwards between windows of an application with popup"
+msgstr "Di chuyển lùi lại giữa các cửa sổ của ứng dụng với điều bật lên"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move between panels and the desktop immediately"
+msgstr "Di chuyển giữa các bảng và màn hình nền ngay"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move between panels and the desktop with popup"
+msgstr "Di chuyển giữa các bảng và màn hình nền với cửa sổ bật lên"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move between windows immediately"
+msgstr "Di chuyển giữa các cửa sổ ngay"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move between windows of an application immediately"
+msgstr "Di chuyển ngay giữa các cửa sổ của ứng dụng"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move between windows of an application with popup"
+msgstr "Di chuyển giữa các cửa sổ của ứng dụng với điều bật lên"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move between windows with popup"
+msgstr "Di chuyển giữa các cửa sổ với cửa sổ bật lên"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move focus backwards between windows using popup display"
+msgstr "Di chuyển tiêu điểm lùi lại giữa các cửa sổ dùng hiển thị bật lên"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window"
+msgstr "Di chuyển cửa sổ"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window one workspace down"
+msgstr "Chuyển cửa sổ xuống vùng làm việc dưới"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window one workspace to the left"
+msgstr "Chuyển cửa sổ sang vùng làm việc bên trái"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window one workspace to the right"
+msgstr "Chuyển cửa sổ sang vùng làm việc bên phải"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window one workspace up"
+msgstr "Chuyển cửa sổ lên vùng làm việc trên"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to east side of screen"
+msgstr "Chuyển cửa sổ sang phía đông màn hình"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to north side of screen"
+msgstr "Chuyển cửa sổ sang phía bắc màn hình"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Move window to north-east corner"
+msgstr "Chuyển cửa sổ sang góc đông bắc"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Move window to north-west corner"
+msgstr "Chuyển cửa sổ sang góc tây bắc"
+
+#: ../src/marco.schemas.in.h:55
+msgid "Move window to south side of screen"
+msgstr "Chuyển cửa sổ sang phía nam màn hình"
+
+#: ../src/marco.schemas.in.h:56
+msgid "Move window to south-east corner"
+msgstr "Chuyển cửa sổ sang góc đông nam"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Move window to south-west corner"
+msgstr "Chuyển cửa sổ sang góc tây nam"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Move window to west side of screen"
+msgstr "Chuyển cửa sổ sang phía tây màn hình"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Move window to workspace 1"
+msgstr "Chuyển cửa sổ sang vùng làm việc 1"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Move window to workspace 10"
+msgstr "Chuyển cửa sổ sang vùng làm việc 10"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Move window to workspace 11"
+msgstr "Chuyển cửa sổ sang vùng làm việc 11"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Move window to workspace 12"
+msgstr "Chuyển cửa sổ sang vùng làm việc 12"
+
+#: ../src/marco.schemas.in.h:63
+msgid "Move window to workspace 2"
+msgstr "Chuyển cửa sổ sang vùng làm việc 2"
+
+#: ../src/marco.schemas.in.h:64
+msgid "Move window to workspace 3"
+msgstr "Chuyển cửa sổ sang vùng làm việc 3"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Move window to workspace 4"
+msgstr "Chuyển cửa sổ sang vùng làm việc 4"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Move window to workspace 5"
+msgstr "Chuyển cửa sổ sang vùng làm việc 5"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Move window to workspace 6"
+msgstr "Chuyển cửa sổ sang vùng làm việc 6"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Move window to workspace 7"
+msgstr "Chuyển cửa sổ sang vùng làm việc 7"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Move window to workspace 8"
+msgstr "Chuyển cửa sổ sang vùng làm việc 8"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Move window to workspace 9"
+msgstr "Chuyển cửa sổ sang vùng làm việc 9"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Name of workspace"
+msgstr "Tên vùng làm việc"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Number of workspaces"
+msgstr "Số vùng làm việc"
+
+#: ../src/marco.schemas.in.h:73
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Số vùng làm việc. Phải là số lớn hơn số không, và có giới hạn cố định lớn "
+"nhất (để tránh việc hủy màn hình nền một cách bất ngờ bởi vì một yêu cầu 34 "
+"tỉ vùng làm việc)."
+
+#: ../src/marco.schemas.in.h:74
+msgid "Raise obscured window, otherwise lower"
+msgstr "Nâng cửa sổ bị lấp, nếu không thì hạ nó xuống"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Raise window above other windows"
+msgstr "Nâng cửa sổ lên trên các cửa sổ khác"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Resize window"
+msgstr "Đổi cỡ cửa sổ"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Run a defined command"
+msgstr "Chạy lệnh đã định nghĩa"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Run a terminal"
+msgstr "Chạy thiết bị cuối"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Show the panel menu"
+msgstr "Hiện trình đơn Bảng điều khiển"
+
+#: ../src/marco.schemas.in.h:80
+msgid "Show the panel run application dialog"
+msgstr "Hiện hộp thoại «Chạy ứng dụng» của Bảng"
+
+#: ../src/marco.schemas.in.h:81
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"Một số ứng dụng riêng bỏ qua đặc tả, gây ra bộ quản lý cửa sổ không hoạt "
+"động cho đúng. Tùy chọn này đặt Marco trong chế độ đúng chính xác, mà bảo "
+"tồn một giao diện người dùng thống nhất hơn, nếu bạn không cần chạy ứng dụng "
+"nào chạy sai."
+
+#: ../src/marco.schemas.in.h:82
+msgid "Switch to workspace 1"
+msgstr "Chuyển sang vùng làm việc 1"
+
+#: ../src/marco.schemas.in.h:83
+msgid "Switch to workspace 10"
+msgstr "Chuyển sang vùng làm việc 10"
+
+#: ../src/marco.schemas.in.h:84
+msgid "Switch to workspace 11"
+msgstr "Chuyển sang vùng làm việc 11"
+
+#: ../src/marco.schemas.in.h:85
+msgid "Switch to workspace 12"
+msgstr "Chuyển sang vùng làm việc 12"
+
+#: ../src/marco.schemas.in.h:86
+msgid "Switch to workspace 2"
+msgstr "Chuyển sang vùng làm việc 2"
+
+#: ../src/marco.schemas.in.h:87
+msgid "Switch to workspace 3"
+msgstr "Chuyển sang vùng làm việc 3"
+
+#: ../src/marco.schemas.in.h:88
+msgid "Switch to workspace 4"
+msgstr "Chuyển sang vùng làm việc 4"
+
+#: ../src/marco.schemas.in.h:89
+msgid "Switch to workspace 5"
+msgstr "Chuyển sang vùng làm việc 5"
+
+#: ../src/marco.schemas.in.h:90
+msgid "Switch to workspace 6"
+msgstr "Chuyển sang vùng làm việc 6"
+
+#: ../src/marco.schemas.in.h:91
+msgid "Switch to workspace 7"
+msgstr "Chuyển sang vùng làm việc 7"
+
+#: ../src/marco.schemas.in.h:92
+msgid "Switch to workspace 8"
+msgstr "Chuyển sang vùng làm việc 8"
+
+#: ../src/marco.schemas.in.h:93
+msgid "Switch to workspace 9"
+msgstr "Chuyển sang vùng làm việc 9"
+
+#: ../src/marco.schemas.in.h:94
+msgid "Switch to workspace above this one"
+msgstr "Chuyển sang vùng làm việc ở trên cái này"
+
+#: ../src/marco.schemas.in.h:95
+msgid "Switch to workspace below this one"
+msgstr "Chuyển sang vùng làm việc ở dưới cái này"
+
+#: ../src/marco.schemas.in.h:96
+msgid "Switch to workspace on the left"
+msgstr "Chuyển sang vùng làm việc bên trái"
+
+#: ../src/marco.schemas.in.h:97
+msgid "Switch to workspace on the right"
+msgstr "Chuyển sang vùng làm việc bên phải"
+
+#: ../src/marco.schemas.in.h:98
+msgid "System Bell is Audible"
+msgstr "Chuông hệ thống có thể nghe rõ"
+
+#: ../src/marco.schemas.in.h:99
+msgid "Take a screenshot"
+msgstr "Chụp hình"
+
+#: ../src/marco.schemas.in.h:100
+msgid "Take a screenshot of a window"
+msgstr "Chụp hình cửa sổ"
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Cho Marco biết cách thực hiện cái hiển thị khi có chuông từ hệ thống hoặc "
+"từ ứng dụng khác. Hiện thời chỉ có hai gia trị hợp lệ là «fullscreen» (toàn "
+"màn hình), làm chớp trắng-đen toàn màn hình, và «frame_flash» (khung chớp) "
+"làm chớp thanh tựa đề của ứng dụng rung chuông. Nếu không biết ứng dụng nào "
+"rung chuông (trường hợp thường khi là «chuông hệ thống»), tựa đề ứng dụng "
+"đang có tiêu điểm sẽ chớp."
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Những khóa «/apps/marco/global_keybindings/run_command_N» định nghĩa tổ "
+"hợp phím tương ứng với những lệnh này. Hãy nhấn phím tổ hợp của "
+"«run_command_N» để thực hiện «command_N»."
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Những khóa «/apps/marco/global_keybindings/run_command_screenshot» định "
+"nghĩa tổ hợp phím, khi được nhấn, sẽ thực hiện lệnh được ghi trong khóa này."
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Những khóa «/apps/marco/global_keybindings/run_command_window_screenshot» "
+"định nghĩa tổ hợp phím, khi được nhấn, sẽ thực hiện lệnh được ghi trong khóa "
+"này."
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chạy lệnh đánh số tương ứng trong «/apps/marco/"
+"keybinding_commands». Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả "
+"những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy "
+"chọn là chuỗi đặc biệt «disabled» thì sẽ không có tổ hợp phím nào thực hiện "
+"hành động này."
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Tổ hợp phím để chuyển qua vùng làm việc trên vùng làm việc hiện thời. Dạng "
+"thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như "
+"\"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc dưới vùng làm việc hiện thời. Dạng thức "
+"tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ "
+"phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc bên trái vùng làm việc hiện thời. Dạng "
+"thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như "
+"\"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc bên phải vùng làm việc hiện thời. Dạng "
+"thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như "
+"\"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 1. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 10. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 11. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 12. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 2. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 3. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 4. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 5. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 6. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 7. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 8. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím chuyển qua vùng làm việc 9. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím hoạt hóa trình đơn cửa sổ. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím dùng để đóng cửa sổ. Dạng thức tương tự như \"&lt;Control&gt;a\" "
+"hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ "
+"thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu "
+"bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có tổ hợp phím nào "
+"thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Tổ hợp phím để vào «chế độ di chuyển» và bắt đầu di chuyển cửa sổ bằng bàn "
+"phím. Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ "
+"viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là "
+"chuỗi đặc biệt «disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động "
+"này."
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím để vào «chế độ đổi kích thước» và bắt đầu thay đổi kích thước cửa "
+"sổ bằng bàn phím. Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả "
+"những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy "
+"chọn là chuỗi đặc biệt «disabled» thì sẽ không có tổ hợp phím nào thực hiện "
+"hành động này."
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím dùng để ẩn mọi cửa sổ thường và đặt tiêu điểm cho nền. Dạng thức "
+"tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ "
+"phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím dùng để phóng to cửa sổ. Dạng thức tương tự như \"&lt;Control&gt;"
+"a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn "
+"chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". "
+"Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có tổ hợp phím "
+"nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím dùng để thu nhỏ cửa sổ. Dạng thức tương tự như \"&lt;Control&gt;a"
+"\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ "
+"thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu "
+"bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có tổ hợp phím nào "
+"thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Tổ hợp phím dùng để di chuyển cửa sổ xuống vùng làm việc dưới. Dạng thức "
+"tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ "
+"phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Tổ hợp phím dùng để di chuyển cửa sổ qua vùng làm việc bên trái. Dạng thức "
+"tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ "
+"phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Tổ hợp phím dùng để di chuyển cửa sổ qua vùng làm việc bên phải. Dạng thức "
+"tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ "
+"phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím để di chuyển cửa sổ lên vùng làm việc bên trên. Dạng thức tương "
+"tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân "
+"tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím để di chuyển cửa sổ sang vùng làm việc 1. Dạng thức tương tự như "
+"\"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu "
+"cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và "
+"\"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ "
+"không có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím để di chuyển cửa sổ sang vùng làm việc 10. Dạng thức tương tự "
+"như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích "
+"hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" "
+"và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ "
+"không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để di chuyển cửa sổ sang workspace 11. Dạng thức tương tự như "
+"\"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu "
+"cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và "
+"\"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có "
+"phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để di chuyển cửa sổ sang workspace 12. Dạng thức tương tự như "
+"\"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu "
+"cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và "
+"\"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có "
+"phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để di chuyển cửa sổ sang workspace 2. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để di chuyển cửa sổ sang workspace 3. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để di chuyển cửa sổ sang workspace 4. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để di chuyển cửa sổ sang workspace 5. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để di chuyển cửa sổ sang workspace 6. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để di chuyển cửa sổ sang workspace 7. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để di chuyển cửa sổ sang workspace 8. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để di chuyển cửa sổ sang workspace 9. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím dùng để di chuyển tiêu điểm lùi lại giữa các bảng điều khiển và "
+"màn hình làm việc, dùng cửa sổ bật lên. Dạng thức kiểu như \"&lt;Control&gt;a"
+"\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Trình phân tích hiểu cả chữ hoa lẫn "
+"chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". "
+"Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có tổ hợp phím "
+"nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:146
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím dùng để di chuyển focus lùi lại giữa các bảng điều khiển và màn "
+"hình làm việc, không dùng cửa sổ bật lên. Dạng thức kiểu như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Trình phân tích hiểu cả "
+"chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:147
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application without a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím dùng để chuyển tiêu điểm lùi lại giữa các cửa sổ của ứng dụng, "
+"không có cửa sổ bật lên. Giữ phím Shift cùng với tổ hợp này thì sẽ chuyển "
+"lại thành hướng tiến lên. Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Trình phân tách hiểu cả chữ hoa lẫn chữ "
+"thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu "
+"bạn đặt tùy chọn là chuỗi đặc biệt « disabled » (tắt) thì sẽ không có tổ hợp "
+"phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The keybinding used to move focus backwards between windows of an "
+"application, using a popup window. Holding \"shift\" together with this "
+"binding makes the direction go forward again. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng dùng để chuyển tiêu điểm lùi lại giữa các cửa sổ của ứng dụng, "
+"dùng cửa sổ bật lên. Giữ phím Shift cùng tổ hợp này sẽ tạo lại hướng tiến "
+"lên. Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ "
+"viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl &gt;\". Nếu bạn đặt tùy chọn là "
+"chuỗi « disabled » (tắt) thì sẽ không có phím nóng nào thực hiện hành động "
+"này."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Tổ hợp phím dùng để chuyển focus lùi lại giữa các cửa sổ, không có cửa sổ "
+"bật lên. Giữ \"shift\" cùng với tổ hợp này thì sẽ chuyển thành hướng tiến "
+"lên. Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Trình phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ "
+"viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là "
+"chuỗi đặc biệt«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động "
+"này."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Phím nóng dùng để chuyển focus lùi lại giữa các cửa sổ, dùng cửa sổ bật lên. "
+"Giữ \"shift\" cùng tổ hợp này sẽ tạo lại hướng tiến lên. Dạng thức tương tự "
+"như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích "
+"hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" "
+"và \"&lt;Ctrl &gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ "
+"không có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:151
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Tổ hợp phím để di chuyển tiêu điểm giữa bảng điều khiển và màn hình làm "
+"việc, bằng của sổ bật lên. Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, "
+"và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt "
+"tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có tổ hợp phím nào thực "
+"hiện hành động này."
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Tổ hợp phím dùng để di chuyển tiêu điểm giữa bảng điều khiển và màn hình làm "
+"việc, không dùng cửa sổ bật lên. Dạng thức tương tự như \"&lt;Control&gt;a\" "
+"hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ "
+"thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu "
+"bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có tổ hợp phím nào "
+"thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"The keybinding used to move focus between windows of an application without "
+"a popup window. Holding the \"shift\" key while using this binding reverses "
+"the direction of movement. The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để chuyển tiêu điểm giữa các cửa sổ của ứng dụng, không hiện cửa "
+"sổ bật lên. Giữ phím Shift cùng tổ hợp này sẽ đảo hướng di chuyển. Dạng thức "
+"tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ "
+"phân tách hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùychọn là chuỗi « disabled "
+"» (tắt) thì sẽ không có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"The keybinding used to move focus between windows of an application, using a "
+"popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" key while "
+"using this binding reverses the direction of movement. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để chuyển focus giữa các cửa sổ, dùng cửa sổ bật lên. (Thường là "
+"&lt;Alt&gt;Tab). Giữ phím Shift khi dùng tổ hợp này sẽ đảo hướng chuyển "
+"động. Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Bộ phân tách hiểu cả chữ hoa lẫn chữ thường, và cả những từ "
+"viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là "
+"chuỗi « disabled » (tắt) thì sẽ không có phím nóng nào thực hiện hành động "
+"này."
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để chuyển focus giữa các cửa sổ, không hiện cửa sổ bật lên. "
+"(Thường là &lt;Alt&gt;Escape). Giữ phím \"shift\" cùng tổ hợp này sẽ đảo "
+"hướng di chuyển. Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và "
+"cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt "
+"tùychọn là chuỗi \"disabled\" thì sẽ không có phím nóng nào thực hiện hành "
+"động này."
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để chuyển focus giữa các cửa sổ, dùng cửa sổ bật lên. (Thường là "
+"&lt;Alt&gt;Tab). Giữ phím \"shift\" khi dùng tổ hợp này sẽ đảo hướng chuyển "
+"động. Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Trình phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ "
+"viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là "
+"chuỗi \"disabled\" thì sẽ không có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím để bật tắt hiện cửa sổ ở trên cùng. Cửa sổ đó sẽ hiện bên trên "
+"tất cả các cửa sổ khác. Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, "
+"và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt "
+"tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có tổ hợp phím nào thực "
+"hiện hành động này."
+
+#: ../src/marco.schemas.in.h:158
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để bật tắt chế độ toàn màn hình. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:159
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím nóng để bật tắt phóng to. Dạng thức tương tự như \"&lt;Control&gt;a\" "
+"hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ "
+"thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". "
+"Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím nóng nào "
+"thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:160
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím để bật tắt trạng thái đánh bóng. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:161
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Phím tắt để bật tắt việc cửa sổ hiện trên mọi vùng làm việc hay chỉ một vùng "
+"làm việc. Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ "
+"viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là "
+"chuỗi đặc biệt «disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động "
+"này."
+
+#: ../src/marco.schemas.in.h:162
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím tắt để bỏ phóng to cửa sổ. Dạng thức tương tự như \"&lt;Control&gt;a\" "
+"hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ "
+"thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". "
+"Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím nóng nào "
+"thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Tổ hợp phím dùng để hiện hộp thoại «Chạy chương trình» của bảng điều khiển. "
+"Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như "
+"\"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:164
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím dùng để gọi một thiết bị cuối. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt «disabled» thì sẽ không có "
+"tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:165
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Phím nóng dùng để chụp hình cửa sổ. Dạng thức tương tự như \"&lt;Control&gt;a"
+"\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ hoa lẫn chữ "
+"thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". "
+"Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím nóng nào "
+"thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:166
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Phím nóng dùng để gọi tiện ích chụp hình. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:167
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Tổ hợp phím dùng để hiện trình đơn chính của bảng điều khiển. Dạng thức "
+"tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ "
+"phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:168
+msgid "The name of a workspace."
+msgstr "Tên của vùng làm việc."
+
+#: ../src/marco.schemas.in.h:169
+msgid "The screenshot command"
+msgstr "Lệnh chụp hình"
+
+#: ../src/marco.schemas.in.h:170
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Sắc thái xác định diện mạo của đường viền cửa sổ, thanh tựa đề, và nhiều thứ "
+"khác."
+
+#: ../src/marco.schemas.in.h:171
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Khoảng chờ trước khi hiện cửa sổ nếu đặt «auto_raise». Khoảng chờ tính theo "
+"số phần ngàn giây."
+
+#: ../src/marco.schemas.in.h:172
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Chế độ tiêu điểm cửa sổ chỉ ra cách cửa sổ được kích hoạt. Nó có thể có ba "
+"giá trị sau: «nhắp» (click) nghĩa là cửa sổ được nhấn để nhận tiêu điểm, «luộn "
+"thuộm» (sloppy) nghĩa là cửa sổ nhận tiêu điểm nếu con chuột đi ngang qua "
+"cửa sổ, và «chuột» (mouse) nghĩa là cửa sổ nhận tiêu điểm khi con chuột đi "
+"vào cửa sổ và mất tiêu điểm khi con chuột rời khỏi cửa sổ."
+
+#: ../src/marco.schemas.in.h:173
+msgid "The window screenshot command"
+msgstr "Lệnh chụp hình cửa sổ"
+
+#: ../src/marco.schemas.in.h:174
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another one, it raises the window above all others, "
+"and if the window is already fully visible, it lowers it below all others. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Tổ hợp phím để đặt cửa sổ ở trên hay ở dưới cửa sổ khác. Nếu cửa sổ bị che "
+"bởi cửa sổ khác, nó sẽ được đặt lên trên. Nếu cửa sổ đã nằm trên, nó sẽ được "
+"đặt xuống dưới các cửa sổ khác. Dạng thức tương tự như \"&lt;Control&gt;a\" "
+"hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tách hiểu cả chữ hoa lẫn chữ "
+"thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu "
+"bạn đặt tùy chọn là chuỗi đặc biệt « disabled » (tắt) thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:175
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím tắt để đặt cửa sổ ở dưới các cửa sổ khác. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:176
+msgid ""
+"This keybinding moves a window against the north (top) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Phím tắt để đặt cửa sổ theo hướng bắc (đỉnh) màn hình. Dạng thức tương tự "
+"như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích "
+"hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" "
+"và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không "
+"có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:177
+msgid ""
+"This keybinding moves a window into the east (right) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Phím tắt để đặt cửa sổ theo hướng đông (bên phải) màn hình. Dạng thức tương "
+"tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân "
+"tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" "
+"thì sẽ không có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:178
+msgid ""
+"This keybinding moves a window into the north-east (top right) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Phím tắt để đặt cửa sổ theo hướng đông bắc (góc trên bên phải) màn hình. "
+"Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt "
+"như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi "
+"\"disabled\" thì sẽ không có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:179
+msgid ""
+"This keybinding moves a window into the north-west (top left) corner of the "
+"screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Phím tắt để đặt cửa sổ theo hướng tây bắc (góc trên bên trái) màn hình. Dạng "
+"thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như "
+"\"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled"
+"\" thì sẽ không có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:180
+msgid ""
+"This keybinding moves a window into the south (bottom) side of the screen. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Phím tắt để đặt cửa sổ theo hướng nam (đáy) màn hình. Dạng thức tương tự như "
+"\"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu "
+"cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và "
+"\"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có "
+"phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:181
+msgid ""
+"This keybinding moves a window into the south-east (bottom right) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Phím tắt để đặt cửa sổ theo hướng đông nam (góc dưới bên phải) màn hình. "
+"Dạng thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt "
+"như \"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi "
+"\"disabled\" thì sẽ không có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:182
+msgid ""
+"This keybinding moves a window into the south-west (bottom left) corner of "
+"the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Phím tắt để đặt cửa sổ theo hướng tây nam (góc dưới bên trái) màn hình. Dạng "
+"thức tương tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Bộ phân tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như "
+"\"&lt;Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled"
+"\" thì sẽ không có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:183
+msgid ""
+"This keybinding moves a window into the west (left) side of the screen. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Phím tắt để đặt cửa sổ theo hướng tây (bên trái) màn hình. Dạng thức tương "
+"tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân "
+"tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" "
+"thì sẽ không có phím nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:184
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Phím tắt để đặt cửa sổ ở trên các cửa sổ khác. Dạng thức tương tự như \"&lt;"
+"Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Bộ phân tích hiểu cả chữ "
+"hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;Ctl&gt;\" và \"&lt;"
+"Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi \"disabled\" thì sẽ không có phím "
+"nóng nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:185
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Tổ hợp phím này dùng để giãn cửa sổ hết chiều ngang hiện có. Dạng thức tương "
+"tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Trình phân "
+"tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:186
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Tổ hợp phím này dùng để giãn cửa sổ hết chiều dọc hiện có. Dạng thức tương "
+"tự như \"&lt;Control&gt;a\" hoặc \"&lt;Shift&gt;&lt;Alt&gt;F1\". Trình phân "
+"tích hiểu cả chữ hoa lẫn chữ thường, và cả những từ viết tắt như \"&lt;"
+"Ctl&gt;\" và \"&lt;Ctrl&gt;\". Nếu bạn đặt tùy chọn là chuỗi đặc biệt "
+"«disabled» thì sẽ không có tổ hợp phím nào thực hiện hành động này."
+
+#: ../src/marco.schemas.in.h:187
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Tùy chọn này quyết định tác dụng của việc nhấn đúp chuột trên thanh tiêu đề. "
+"Tùy chọn hợp lệ hiện thời là:\n"
+" • toggle_shade\t\ttạo bóng/thôi tạo bóng cửa sổ\n"
+" • toggle_maximize\tphóng to/thôi phóng to cửa sổ\n"
+" • toggle_maximize_horizontally phóng to cửa sổ theo chiều ngang\n"
+" • toggle_maximize_vertically phóng to cửa sổ theo chiều dọc\n"
+" • minimize\t\t\tthu nhỏ cửa sổ\n"
+" • shade cuộn cửa sổ lên\n"
+" • menu hiển thị trình đơn cửa sổ\n"
+" • lower đặt cửa sổ vào nền sau các cửa sổ khác\n"
+" • none\t\t\t\tkhông làm gì."
+
+#: ../src/marco.schemas.in.h:188
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Tùy chọn này quyết định tác dụng của việc nhấn-giữa chuột trên thanh tiêu đề. Tùy "
+"chọn hợp lệ hiện thời là:\n"
+" • toggle_shade\t\ttạo bóng/thôi tạo bóng cửa sổ\n"
+" • toggle_maximize\tphóng to/thôi phóng to cửa sổ\n"
+" • toggle_maximize_horizontally phóng to cửa sổ theo chiều ngang\n"
+" • toggle_maximize_vertically phóng to cửa sổ theo chiều dọc\n"
+" • minimize\t\t\tthu nhỏ cửa sổ\n"
+" • shade cuộn cửa sổ lên\n"
+" • menu hiển thị trình đơn cửa sổ\n"
+" • lower đặt cửa sổ vào nền sau các cửa sổ khác\n"
+" • none\t\t\t\tkhông làm gì."
+
+#: ../src/marco.schemas.in.h:189
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"Tùy chọn này quyết định tác dụng của việc nhấn-giữa chuột trên thanh tựa. "
+"Tùy chọn hợp lệ hiện thời là:\n"
+" • toggle_shade\t\ttạo bóng/thôi tạo bóng cửa sổ\n"
+" • toggle_maximize\tphóng to/thôi phóng to cửa sổ\n"
+" • toggle_maximize_horizontally phóng to cửa sổ theo chiều ngang\n"
+" • toggle_maximize_vertically phóng to cửa sổ theo chiều dọc\n"
+" • minimize\t\t\tthu nhỏ cửa sổ\n"
+" • shade cuộn cửa sổ lên\n"
+" • menu hiển thị trình đơn cửa sổ\n"
+" • lower đặt cửa sổ vào nền sau các cửa sổ khác\n"
+" • none\t\t\t\tkhông làm gì."
+
+#: ../src/marco.schemas.in.h:190
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"Tùy chọn này cung cấp khả năng thêm điều khiển cách gán tiêu điểm cho cửa sổ "
+"mới tạo. Nó có hai giá trị có thể :\n"
+" • smart\t\táp dụng chế độ tiêu điểm bình thường của người dùng đó,\n"
+" • strict\t\tgây ra cửa sổ không có tiêu điểm nếu được tạo từ thiết bị cuối."
+
+#: ../src/marco.schemas.in.h:191
+msgid "Toggle always on top state"
+msgstr "Bật/Tắt trạng thái luôn nổi"
+
+#: ../src/marco.schemas.in.h:192
+msgid "Toggle fullscreen mode"
+msgstr "Bật/Tắt Chế độ Toàn màn hình"
+
+#: ../src/marco.schemas.in.h:193
+msgid "Toggle maximization state"
+msgstr "Bật tắt trạng thái phóng to"
+
+#: ../src/marco.schemas.in.h:194
+msgid "Toggle shaded state"
+msgstr "Bật tắt trạng thái đánh bóng"
+
+#: ../src/marco.schemas.in.h:195
+msgid "Toggle window on all workspaces"
+msgstr "Chốt cửa sổ trên mọi vùng làm việc"
+
+#: ../src/marco.schemas.in.h:196
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Bật chỉ thị trực quan khi ứng dụng hoặc hệ thống rung chuông; rất hữu dụng "
+"trong môi trường ồn ào hoặc không nghe rõ."
+
+#: ../src/marco.schemas.in.h:197
+msgid "Unmaximize window"
+msgstr "Bỏ phóng to cửa sổ"
+
+#: ../src/marco.schemas.in.h:198
+msgid "Use standard system font in window titles"
+msgstr "Dùng phông chữ hệ thống chuẩn cho tựa đề cửa sổ"
+
+#: ../src/marco.schemas.in.h:199
+msgid "Visual Bell Type"
+msgstr "Kiểu Chuông hình"
+
+#: ../src/marco.schemas.in.h:200
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+"Việc nâng lên có nên là hiệu ứng khác của việc tương tác người dùng khác hay "
+"không."
+
+#: ../src/marco.schemas.in.h:201
+msgid "Window focus mode"
+msgstr "Chế độ tiêu điểm cửa sổ"
+
+#: ../src/marco.schemas.in.h:202
+msgid "Window title font"
+msgstr "Phông chữ tựa đề cửa sổ"
+
+#: ../src/ui/frames.c:1077
+msgid "Close Window"
+msgstr "Đóng cửa sổ"
+
+#: ../src/ui/frames.c:1080
+msgid "Window Menu"
+msgstr "Trình đơn cửa sổ"
+
+#: ../src/ui/frames.c:1083
+msgid "Minimize Window"
+msgstr "Thu nhỏ cửa sổ"
+
+#: ../src/ui/frames.c:1086
+msgid "Maximize Window"
+msgstr "Phóng to cửa sổ"
+
+#: ../src/ui/frames.c:1089
+msgid "Unmaximize Window"
+msgstr "Bỏ phóng to cửa sổ"
+
+#: ../src/ui/frames.c:1092
+msgid "Roll Up Window"
+msgstr "Cuộn cửa sổ lên"
+
+#: ../src/ui/frames.c:1095
+msgid "Unroll Window"
+msgstr "Bỏ cuộn cửa sổ"
+
+#: ../src/ui/frames.c:1098
+msgid "Keep Window On Top"
+msgstr "Giữ cửa sổ ở trên cùng"
+
+#: ../src/ui/frames.c:1101
+msgid "Remove Window From Top"
+msgstr "Thôi giữ cửa sổ ở trên cùng"
+
+#: ../src/ui/frames.c:1104
+msgid "Always On Visible Workspace"
+msgstr "Luôn nằm trong vùng làm việc có thể thấy"
+
+#: ../src/ui/frames.c:1107
+msgid "Put Window On Only One Workspace"
+msgstr "Đặt cửa sổ trên chỉ một vùng làm việc"
+
+#: ../src/ui/menu.c:70
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Mi_nimize"
+msgstr "Th_u nhỏ"
+
+#: ../src/ui/menu.c:72
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Ma_ximize"
+msgstr "_Phóng to"
+
+#: ../src/ui/menu.c:74
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Unma_ximize"
+msgstr "_Bỏ phóng to"
+
+#: ../src/ui/menu.c:76
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Roll _Up"
+msgstr "Cuộn _lên"
+
+#: ../src/ui/menu.c:78
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Unroll"
+msgstr "_Bỏ cuộn"
+
+#: ../src/ui/menu.c:80
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Move"
+msgstr "_Di chuyển"
+
+#: ../src/ui/menu.c:82
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Resize"
+msgstr "Đổi _cỡ"
+
+#: ../src/ui/menu.c:84
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Move Titlebar On_screen"
+msgstr "Chuyển Thanh Tựa Đề trên _màn hình"
+
+#: ../src/ui/menu.c:87
+#: ../src/ui/menu.c:89
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Always on _Top"
+msgstr "Luôn ở _trên"
+
+#: ../src/ui/menu.c:91
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Always on Visible Workspace"
+msgstr "_Chỉ trong vùng làm việc có thể thấy"
+
+#: ../src/ui/menu.c:93
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Only on This Workspace"
+msgstr "Chỉ trong vùng làm việc _này"
+
+#: ../src/ui/menu.c:95
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Move to Workspace _Left"
+msgstr "Chuyển sang vùng làm việc bên t_rái"
+
+#: ../src/ui/menu.c:97
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Move to Workspace R_ight"
+msgstr "Chuyển sang vùng làm việc bên _phải"
+
+#: ../src/ui/menu.c:99
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Move to Workspace _Up"
+msgstr "Chuyển sang vùng làm việc bên _trên"
+
+#: ../src/ui/menu.c:101
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "Move to Workspace _Down"
+msgstr "Chuyển sang vùng làm việc bên _dưới"
+
+#: ../src/ui/menu.c:105
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+msgid "_Close"
+msgstr "Đón_g"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "Vùng làm việc %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Vùng làm việc 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Vùng làm việc «%s%d»"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Chuyển sang Vùng làm việc _khác"
+
+# Name: don't translate / Tên: đừng dịch
+#: ../src/ui/metaaccellabel.c:105
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Shift"
+msgstr "Shift"
+
+# Name: don't translate / Tên: đừng dịch
+#: ../src/ui/metaaccellabel.c:111
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Ctrl"
+msgstr "Ctrl"
+
+# Name: don't translate / Tên: đừng dịch
+#: ../src/ui/metaaccellabel.c:117
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Alt"
+msgstr "Alt"
+
+# Name: don't translate / Tên: đừng dịch
+#: ../src/ui/metaaccellabel.c:123
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Meta"
+msgstr "Meta"
+
+#: ../src/ui/metaaccellabel.c:129
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Super"
+msgstr "Cao cấp"
+
+#: ../src/ui/metaaccellabel.c:135
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Hyper"
+msgstr "Cao"
+
+# Name: don't translate / Tên: đừng dịch
+#: ../src/ui/metaaccellabel.c:141
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Mod2"
+msgstr "Mod2"
+
+# Name: don't translate / Tên: đừng dịch
+#: ../src/ui/metaaccellabel.c:147
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Mod3"
+msgstr "Mod3"
+
+# Name: don't translate / Tên: đừng dịch
+#: ../src/ui/metaaccellabel.c:153
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Mod4"
+msgstr "Mod4"
+
+# Name: don't translate / Tên: đừng dịch
+#: ../src/ui/metaaccellabel.c:159
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/ui/marco-dialog.c:90
+#, c-format
+msgid "\"%s\" is not responding."
+msgstr "\"%s\" không trả lời."
+
+#: ../src/ui/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "Bạn có thể chọn chờ một lúc trước khi buộc chấm dứt ứng dụng."
+
+#: ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr "_Chờ"
+
+#: ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "_Buộc thoát"
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr "Tựa đề"
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr "Hàng"
+
+#: ../src/ui/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Những cửa sổ này không hỗ trợ «lưu thiết lập hiện thời» và sẽ phải khởi động "
+"lại bằng tay lần kế bạn đăng nhập."
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Gặp lỗi khi chạy « %s »:\n"
+"%s."
+
+# Variable: don't translate / Biến: đừng dịch
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme-parser.c:227
+#: ../src/ui/theme-parser.c:245
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Dòng %d ký tự %d: %s"
+
+#: ../src/ui/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Thuộc tính « %s » lặp hai lần trên cùng phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:414
+#: ../src/ui/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Thuộc tính « %s » không hợp lệ trên phần tử <%s> trong ngữ cảnh này."
+
+#: ../src/ui/theme-parser.c:500
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Số nguyên %ld phải là số dương"
+
+#: ../src/ui/theme-parser.c:508
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Số nguyên %ld quá lớn, giá trị tối đa hiện thời là %d"
+
+#: ../src/ui/theme-parser.c:536
+#: ../src/ui/theme-parser.c:652
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Không thể phân tích « %s » thành số với điểm phù động."
+
+#: ../src/ui/theme-parser.c:567
+#: ../src/ui/theme-parser.c:595
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+"Giá trị luận lý phải là « đúng » (true) hoặc « sai » (false), không thể là « %s "
+"»."
+
+#: ../src/ui/theme-parser.c:622
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Góc phải nằm giữa 0.0 và 360.0, hiện là %g\n"
+
+#: ../src/ui/theme-parser.c:685
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"Alpha phải nằm giữa 0.0 (không thấy) và 1.0 (đục hoàn toàn), hiện là %g\n"
+
+#: ../src/ui/theme-parser.c:750
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Tỷ lệ tựa đề « %s » không hợp lệ. Nó phải là một điều của những điều này:\n"
+" • xx-small\t\ttí tị\n"
+" • x-small\t\tnhỏ lắm\n"
+" • small\t\t\tnhỏ\n"
+" • medium\t\tvừa\n"
+" • large\t\t\tlớn\n"
+" • x-large\t\tlớn lắm\n"
+" • xx-large\t\tto lớn.\n"
+
+#: ../src/ui/theme-parser.c:795
+#: ../src/ui/theme-parser.c:803
+#: ../src/ui/theme-parser.c:885
+#: ../src/ui/theme-parser.c:982
+#: ../src/ui/theme-parser.c:1024
+#: ../src/ui/theme-parser.c:1135
+#: ../src/ui/theme-parser.c:1185
+#: ../src/ui/theme-parser.c:1193
+#: ../src/ui/theme-parser.c:3093
+#: ../src/ui/theme-parser.c:3184
+#: ../src/ui/theme-parser.c:3191
+#: ../src/ui/theme-parser.c:3198
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "Không có thuộc tính « %s » trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:919
+#: ../src/ui/theme-parser.c:990
+#: ../src/ui/theme-parser.c:1032
+#: ../src/ui/theme-parser.c:1143
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> tên « %s » được dùng lần hai"
+
+#: ../src/ui/theme-parser.c:931
+#: ../src/ui/theme-parser.c:1044
+#: ../src/ui/theme-parser.c:1155
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> chưa định nghĩa mẹ « %s »."
+
+#: ../src/ui/theme-parser.c:1057
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> chưa định nghĩa tọa độ « %s »"
+
+#: ../src/ui/theme-parser.c:1070
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> phải xác định hoặc tọa độ hoặc mẹ có tọa độ."
+
+#: ../src/ui/theme-parser.c:1112
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "Bạn phải xác định nền thì giá trị alpha mới có ý nghĩa"
+
+#: ../src/ui/theme-parser.c:1203
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Loại lạ « %s » trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1214
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "«style_set» lạ « %s » trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1222
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Loại cửa sổ « %s » đã được gán một tập kiểu."
+
+#: ../src/ui/theme-parser.c:1258
+msgid "Theme already has a fallback icon"
+msgstr "Sắc thái đã có biểu tượng dự phòng"
+
+#: ../src/ui/theme-parser.c:1270
+msgid "Theme already has a fallback mini_icon"
+msgstr "Sắc thái đã có biểu tượng mini dự phòng"
+
+#: ../src/ui/theme-parser.c:1283
+#: ../src/ui/theme-parser.c:1347
+#: ../src/ui/theme-parser.c:1636
+#: ../src/ui/theme-parser.c:3285
+#: ../src/ui/theme-parser.c:3339
+#: ../src/ui/theme-parser.c:3511
+#: ../src/ui/theme-parser.c:3727
+#: ../src/ui/theme-parser.c:3765
+#: ../src/ui/theme-parser.c:3803
+#: ../src/ui/theme-parser.c:3841
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Không cho phép phần tử <%s> dưới <%s>."
+
+#: ../src/ui/theme-parser.c:1373
+#: ../src/ui/theme-parser.c:1460
+#: ../src/ui/theme-parser.c:1530
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Không có thuộc tính «name» (tên) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1380
+#: ../src/ui/theme-parser.c:1467
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Không có thuộc tính «value» (giá trị) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1411
+#: ../src/ui/theme-parser.c:1425
+#: ../src/ui/theme-parser.c:1484
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"Không thể xác định cả « button_width/button_height » (rộng/cao nút) lẫn tỷ lệ "
+"hình thể đều của cái nút."
+
+#: ../src/ui/theme-parser.c:1434
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Khoảng cách « %s » không biết."
+
+#: ../src/ui/theme-parser.c:1493
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Tỷ lệ hình thể « %s » không biết."
+
+#: ../src/ui/theme-parser.c:1537
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "Không có thuộc tính «top» (đính) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1544
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "Không có thuộc tính «bottom» (đáy) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1551
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "Không có thuộc tính «left» (bên trái) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1558
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "Không có thuộc tính «right» (bên phải) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1590
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Biên « %s » không biết."
+
+#: ../src/ui/theme-parser.c:1736
+#: ../src/ui/theme-parser.c:1850
+#: ../src/ui/theme-parser.c:1961
+#: ../src/ui/theme-parser.c:2192
+#: ../src/ui/theme-parser.c:3023
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "Không có thuộc tính «color» (màu) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1743
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "Không có thuộc tính «x1» trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1750
+#: ../src/ui/theme-parser.c:2864
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "Không có thuộc tính «y1» trong phần tử <%s>"
+
+#: ../src/ui/theme-parser.c:1757
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "Không có thuộc tính «x2» trong phần tử <%s>"
+
+#: ../src/ui/theme-parser.c:1764
+#: ../src/ui/theme-parser.c:2871
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "Không có thuộc tính «y2» trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1857
+#: ../src/ui/theme-parser.c:1968
+#: ../src/ui/theme-parser.c:2117
+#: ../src/ui/theme-parser.c:2199
+#: ../src/ui/theme-parser.c:2306
+#: ../src/ui/theme-parser.c:2408
+#: ../src/ui/theme-parser.c:2630
+#: ../src/ui/theme-parser.c:2758
+#: ../src/ui/theme-parser.c:2857
+#: ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3030
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "Không có thuộc tính «x» trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1864
+#: ../src/ui/theme-parser.c:1975
+#: ../src/ui/theme-parser.c:2124
+#: ../src/ui/theme-parser.c:2206
+#: ../src/ui/theme-parser.c:2313
+#: ../src/ui/theme-parser.c:2415
+#: ../src/ui/theme-parser.c:2637
+#: ../src/ui/theme-parser.c:2765
+#: ../src/ui/theme-parser.c:2941
+#: ../src/ui/theme-parser.c:3037
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "Không có thuộc tính «y» trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1871
+#: ../src/ui/theme-parser.c:1982
+#: ../src/ui/theme-parser.c:2131
+#: ../src/ui/theme-parser.c:2213
+#: ../src/ui/theme-parser.c:2320
+#: ../src/ui/theme-parser.c:2422
+#: ../src/ui/theme-parser.c:2644
+#: ../src/ui/theme-parser.c:2772
+#: ../src/ui/theme-parser.c:2948
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "Không có thuộc tính «width» (độ rộng) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1878
+#: ../src/ui/theme-parser.c:1989
+#: ../src/ui/theme-parser.c:2138
+#: ../src/ui/theme-parser.c:2220
+#: ../src/ui/theme-parser.c:2327
+#: ../src/ui/theme-parser.c:2429
+#: ../src/ui/theme-parser.c:2651
+#: ../src/ui/theme-parser.c:2779
+#: ../src/ui/theme-parser.c:2955
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "Không có thuộc tính «height» (độ cao) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:1998
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr ""
+"Không có thuộc tính \"start_angle\" (góc bắt đầu) hoặc \"from\" (từ) trong "
+"phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2005
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr ""
+"Không có thuộc tính \"extent_angle\" (góc phạm vi) hoặc \"to\" (đến) trong "
+"phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2014
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "Không có thuộc tính «start_angle» (góc bắt đầu) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2021
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "Không có thuộc tính «extent_angle» (góc phạm vi) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2227
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "Không có thuộc tính «alpha» (anfa) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2299
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "Không có thuộc tính «type» (loại) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2349
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Không thể hiểu giá trị « %s » (loại thang độ)."
+
+#: ../src/ui/theme-parser.c:2436
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "Không có thuộc tính «filename» (tên tập tin) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2461
+#: ../src/ui/theme-parser.c:2980
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Không hiểu loại tô « %s » cho phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2609
+#: ../src/ui/theme-parser.c:2744
+#: ../src/ui/theme-parser.c:2850
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "Không có thuộc tính «state» (tính trạng) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2616
+#: ../src/ui/theme-parser.c:2751
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "Không có thuộc tính «shadow» trong phần tử <%s>"
+
+#: ../src/ui/theme-parser.c:2623
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "Không có thuộc tính «arrow» (mũi tên) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2676
+#: ../src/ui/theme-parser.c:2800
+#: ../src/ui/theme-parser.c:2891
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Không hiểu trạng thái « %s » của phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2686
+#: ../src/ui/theme-parser.c:2810
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Không hiểu bóng « %s » của phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:2696
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Không hiểu mũi tên « %s » của phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:3120
+#: ../src/ui/theme-parser.c:3237
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Không có <draw_ops> nào gọi là « %s » được định nghĩa."
+
+#: ../src/ui/theme-parser.c:3132
+#: ../src/ui/theme-parser.c:3249
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Bao gồm |draw_ops| « %s » ở đây sẽ tạo tham chiếu vòng."
+
+#: ../src/ui/theme-parser.c:3314
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "Không có thuộc tính «value» (giá trị) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:3371
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "Không có thuộc tính «position» (vị trí) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Vị trí lạ « %s » trong phần khung."
+
+#: ../src/ui/theme-parser.c:3388
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Kiểu khung đã có một phần tại vị trí %s."
+
+#: ../src/ui/theme-parser.c:3405
+#: ../src/ui/theme-parser.c:3496
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Chưa định nghĩa <draw_ops> với tên « %s »."
+
+#: ../src/ui/theme-parser.c:3433
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "Không có thuộc tính «function» (chức năng) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:3441
+#: ../src/ui/theme-parser.c:3557
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "Không có thuộc tính «state» (tính trạng) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:3450
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Hàm lạ « %s » trong nút."
+
+#: ../src/ui/theme-parser.c:3459
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "Hàm nút \"%s\" không tồn tại trong phiên bản này (%d, cần %d)"
+
+#: ../src/ui/theme-parser.c:3471
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Trạng thái lạ « %s » trong nút."
+
+#: ../src/ui/theme-parser.c:3479
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Kiểu khung đã có nút cho hàm « %s » trạng thái « %s »."
+
+#: ../src/ui/theme-parser.c:3549
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "Không có thuộc tính «focus» (tiêu điểm) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:3565
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "Không có thuộc tính «style» (kiểu dáng) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:3574
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "« %s » không phải là giá trị tiêu điểm hợp lệ."
+
+#: ../src/ui/theme-parser.c:3583
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "« %s » không phải là giá trị trạng thái hợp lệ."
+
+#: ../src/ui/theme-parser.c:3593
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Chưa định nghĩa kiểu dáng « %s »."
+
+#: ../src/ui/theme-parser.c:3604
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "Không có thuộc tính «resize» (đổi cỡ) trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:3614
+#: ../src/ui/theme-parser.c:3637
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "« %s » không phải là giá trị đổi cỡ hợp lệ."
+
+#: ../src/ui/theme-parser.c:3648
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Nên có thuộc tính «resize» (đổi cỡ) trên phần tử <%s> cho trạng thái phóng to/"
+"đánh bóng."
+
+#: ../src/ui/theme-parser.c:3662
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Nên có thuộc tính \"resize\" (đổi cỡ) trên phần tử <%s> cho trạng thái phóng "
+"to."
+
+#: ../src/ui/theme-parser.c:3676
+#: ../src/ui/theme-parser.c:3698
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+"Kiểu dạng đã được xác định cho trạng thái « %s » đổi cỡ « %s » tiêu điểm « %s »."
+
+#: ../src/ui/theme-parser.c:3687
+#: ../src/ui/theme-parser.c:3709
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Kiểu dạng đã được xác định cho trạng thái « %s » tiêu điểm « %s »."
+
+#: ../src/ui/theme-parser.c:3748
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Không thể có hai draw_ops cho một phần tử <piece> (sắc thái xác định một "
+"draw_ops và thêm một phần tử <draw_ops>, hoặc sắc thái xác định cả hai phần "
+"tử)."
+
+#: ../src/ui/theme-parser.c:3786
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Không thể có hai «draw_ops» trong một phần tử <button> (sắc thái xác định một "
+"«draw_ops» và có một phần tử <draw_ops>, hoặc xác định cả hai phần tử)."
+
+#: ../src/ui/theme-parser.c:3824
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Không thể có hai «draw_ops» cho phần tử <menu_icon> (sắc thái xác định thuộc "
+"tính «draw_ops» và một phần tử <draw_ops>, hoặc xác định cả hai phần tử)."
+
+#: ../src/ui/theme-parser.c:3872
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Phần tử ngoài cùng phải là <marco_theme>, không phải <%s>."
+
+#: ../src/ui/theme-parser.c:3892
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Không cho phép phần tử <%s> nằm trong phần tử « name/author/date/description "
+"» (tên/tác giả/ngày/mô tả)."
+
+#: ../src/ui/theme-parser.c:3897
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Không cho phép phần tử <%s> nằm trong phần tử <constant>."
+
+#: ../src/ui/theme-parser.c:3909
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Không cho phép phần tử <%s> nằm trong phần tử « distance/border/aspect_ratio "
+"» (khoảng cách/viền/tỷ lệ hình thể)."
+
+#: ../src/ui/theme-parser.c:3931
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Không cho phép phần tử <%s> nằm trong phần tử thao tác vẽ."
+
+#: ../src/ui/theme-parser.c:3941
+#: ../src/ui/theme-parser.c:3971
+#: ../src/ui/theme-parser.c:3976
+#: ../src/ui/theme-parser.c:3981
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Không cho phép phần tử <%s> nằm trong phần tử <%s>."
+
+#: ../src/ui/theme-parser.c:4203
+msgid "No draw_ops provided for frame piece"
+msgstr "Không có «draw_ops» cho phần khung."
+
+#: ../src/ui/theme-parser.c:4218
+msgid "No draw_ops provided for button"
+msgstr "Không có «draw_ops» cho nút."
+
+#: ../src/ui/theme-parser.c:4270
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Không cho phép chữ nằm trong <%s>."
+
+#: ../src/ui/theme-parser.c:4325
+msgid "<name> specified twice for this theme"
+msgstr "<name> (tên) được xác định hai lần trong sắc thái này."
+
+#: ../src/ui/theme-parser.c:4336
+msgid "<author> specified twice for this theme"
+msgstr "<author> (tác giả) được xác định hai lần trong sắc thái này."
+
+#: ../src/ui/theme-parser.c:4347
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> (quyền sở hữu) được xác định hai lần trong sắc thái này."
+
+#: ../src/ui/theme-parser.c:4358
+msgid "<date> specified twice for this theme"
+msgstr "<date> (ngày) được xác định hai lần trong sắc thái này."
+
+#: ../src/ui/theme-parser.c:4369
+msgid "<description> specified twice for this theme"
+msgstr "<description> (mô tả) được xác định hai lần trong sắc thái này."
+
+#: ../src/ui/theme-parser.c:4636
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Lỗi tìm tập tin hợp lệ của sắc thái %s\n"
+
+#: ../src/ui/theme-parser.c:4692
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Tập tin sắc thái « %s » không chứa phần tử gốc <marco_theme>."
+
+#: ../src/ui/theme-viewer.c:74
+msgid "/_Windows"
+msgstr "/_Cửa sổ"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/Windows/tearoff"
+msgstr "/Cửa sổ/chia cắt"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/_Dialog"
+msgstr "/Cửa sổ/_Hộp thoại"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Modal dialog"
+msgstr "/Cửa sổ/Hộp thoại _cách thức"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Utility"
+msgstr "/Cửa sổ/_Tiện ích"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Splashscreen"
+msgstr "/Cửa sổ/_Màn hình giật gân"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Top dock"
+msgstr "/Cửa sổ/Neo đỉ_nh"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Bottom dock"
+msgstr "/Cửa sổ/Neo đá_y"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Left dock"
+msgstr "/Cửa sổ/Neo t_rái"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Right dock"
+msgstr "/Cửa sổ/Neo _phải"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_All docks"
+msgstr "/Cửa sổ/Mọi neo"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/Des_ktop"
+msgstr "/Cửa sổ/Màn hình _nền"
+
+#: ../src/ui/theme-viewer.c:134
+msgid "Open another one of these windows"
+msgstr "Mở cái khác trong những cửa sổ này"
+
+#: ../src/ui/theme-viewer.c:141
+msgid "This is a demo button with an 'open' icon"
+msgstr "Đây là nút biểu diễn với biểu tượng «mở»"
+
+#: ../src/ui/theme-viewer.c:148
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Đây là nút biểu diễn với biểu tượng «thoát»"
+
+#: ../src/ui/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr "Đây là thông điệp mẫu trong hộp thoại mẫu"
+
+#: ../src/ui/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Mục trình đơn giả «%d»\n"
+
+#: ../src/ui/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "Cửa sổ chỉ có viền"
+
+#: ../src/ui/theme-viewer.c:360
+msgid "Bar"
+msgstr "Thanh"
+
+#: ../src/ui/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "Cửa sổ ứng dụng thông thường"
+
+#: ../src/ui/theme-viewer.c:381
+msgid "Dialog Box"
+msgstr "Hộp thoại"
+
+#: ../src/ui/theme-viewer.c:385
+msgid "Modal Dialog Box"
+msgstr "Hộp thoại cách thức"
+
+#: ../src/ui/theme-viewer.c:389
+msgid "Utility Palette"
+msgstr "Bảng chọn tiện ích"
+
+#: ../src/ui/theme-viewer.c:393
+msgid "Torn-off Menu"
+msgstr "Trình đơn tách rời"
+
+#: ../src/ui/theme-viewer.c:397
+msgid "Border"
+msgstr "Viền"
+
+#: ../src/ui/theme-viewer.c:725
+#, c-format
+msgid "Button layout test %d"
+msgstr "Thử Bố cục nút «%d»"
+
+#: ../src/ui/theme-viewer.c:754
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g mili giây để vẽ một khung cửa sổ"
+
+#: ../src/ui/theme-viewer.c:797
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Cách dùng: marco-theme-viewer [TÊN_SẮC_THÁI]\n"
+
+#: ../src/ui/theme-viewer.c:804
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Gặp lỗi khi tải sắc thái: %s\n"
+
+#: ../src/ui/theme-viewer.c:810
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Tải sắc thái « %s » trong %g giây.\n"
+
+#: ../src/ui/theme-viewer.c:833
+msgid "Normal Title Font"
+msgstr "Phông chữ Tựa đề thường"
+
+#: ../src/ui/theme-viewer.c:839
+msgid "Small Title Font"
+msgstr "Phông chữ Tựa đề nhỏ"
+
+#: ../src/ui/theme-viewer.c:845
+msgid "Large Title Font"
+msgstr "Phông chữ Tựa đề lớn"
+
+#: ../src/ui/theme-viewer.c:850
+msgid "Button Layouts"
+msgstr "Bố cục nút"
+
+#: ../src/ui/theme-viewer.c:855
+msgid "Benchmark"
+msgstr "Điểm chuẩn"
+
+#: ../src/ui/theme-viewer.c:902
+msgid "Window Title Goes Here"
+msgstr "Tựa đề Cửa sổ ở đây"
+
+#: ../src/ui/theme-viewer.c:1006
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Vẽ %d khung trong vòng %g giây bên khách (%g mili giây cho mỗi khung) và %g "
+"giây thời gian đồng hồ tường gồm tiềm năng trình phục vụ X (%g mili giây cho "
+"mỗi khung).\n"
+
+#: ../src/ui/theme-viewer.c:1225
+msgid "position expression test returned TRUE but set error"
+msgstr "việc thử ra biểu thức vị trí đã trả lời ĐÚNG nhưng đặt lỗi"
+
+#: ../src/ui/theme-viewer.c:1227
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "việc thử ra biểu thức vị trí đã trả lời KHÔNG ĐÚNG nhưng không đặt lỗi"
+
+#: ../src/ui/theme-viewer.c:1231
+msgid "Error was expected but none given"
+msgstr "Ngờ lỗi nhưng không có"
+
+#: ../src/ui/theme-viewer.c:1233
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Ngờ lỗi «%d» nhưng có «%d»"
+
+#: ../src/ui/theme-viewer.c:1239
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Gặp lỗi « %s » bất ngờ"
+
+#: ../src/ui/theme-viewer.c:1243
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "giá trị x là«%d», mong đợi giá trị «%d»"
+
+#: ../src/ui/theme-viewer.c:1246
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "giá trị y là «%d», mong đợi giá trị «%d»"
+
+#: ../src/ui/theme-viewer.c:1311
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"phân tách «%d» biểu thức tọa độ trong vòng %g giây (%g giây trung bình).\n"
+
+#: ../src/ui/theme.c:256
+msgid "top"
+msgstr "đỉnh"
+
+#: ../src/ui/theme.c:258
+msgid "bottom"
+msgstr "đáy"
+
+#: ../src/ui/theme.c:260
+msgid "left"
+msgstr "trái"
+
+#: ../src/ui/theme.c:262
+msgid "right"
+msgstr "phải"
+
+#: ../src/ui/theme.c:289
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "tọa độ khung không xác định chiều « %s »."
+
+#: ../src/ui/theme.c:308
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "tọa độ khung không xác định chiều « %s » cho biên « %s »."
+
+#: ../src/ui/theme.c:345
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Tỷ lệ hình thể nút «%g» không hợp lý."
+
+#: ../src/ui/theme.c:357
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Toạ độ khung không xác định kích thước nút."
+
+#: ../src/ui/theme.c:1022
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Thang độ nên có ít nhất hai màu."
+
+#: ../src/ui/theme.c:1148
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Lời ghi rõ màu GTK phải có trạng thái nằm trong ngoặc, v.d. «gtk:fg[NORMAL]», "
+"NORMAL (bình thường) là trạng thái; không thể phân tích « %s »."
+
+#: ../src/ui/theme.c:1162
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Lời ghi rõ màu GTK phải có dấu đóng ngoặc sau trạng thái, v.d. «fg[NORMAL]», "
+"NORMAL (bình thường) là trạng thái; không thể phân tích « %s »."
+
+#: ../src/ui/theme.c:1173
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Không hiểu trạng thái « %s » trong lời ghi rõ màu."
+
+#: ../src/ui/theme.c:1186
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Không hiểu thành phần màu « %s » trong lời ghi rõ màu."
+
+#: ../src/ui/theme.c:1216
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Dạng pha trộn là «blend/bg_color/fg_color/alpha», « %s » không tuân theo dạng "
+"thức đó."
+
+#: ../src/ui/theme.c:1227
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Không thể phân tích giá trị alpha « %s » trong màu pha trộn."
+
+#: ../src/ui/theme.c:1237
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Giá trị alpha « %s » trong màu pha trộn không nằm giữa 0.0 và 1.0."
+
+#: ../src/ui/theme.c:1285
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Dạng thức bóng là « shade/base_color/factor » (bóng/màu cơ bản/hệ số), « %s » "
+"không tuân theo dạng thức đó."
+
+#: ../src/ui/theme.c:1296
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Không thể phân tích hệ số bóng « %s » trong màu bóng."
+
+#: ../src/ui/theme.c:1306
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Có hệ số bóng âm « %s » trong màu bóng."
+
+#: ../src/ui/theme.c:1336
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Không thể phân tích màu « %s »."
+
+#: ../src/ui/theme.c:1594
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Biểu thức tọa độ chứa ký tự « %s » không được phép."
+
+#: ../src/ui/theme.c:1621
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "Biểu thức tọa độ chứa số với điểm phù động « %s » không thể phân tích."
+
+#: ../src/ui/theme.c:1635
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Biểu thức tọa độ chứa số nguyên « %s » không thể phân tích."
+
+#: ../src/ui/theme.c:1757
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Biểu thức tọa độ chứa toán tử lạ tại đầu văn bản: \n"
+"« %s »"
+
+#: ../src/ui/theme.c:1814
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Biểu thức tọa độ rỗng hoặc không thể hiểu."
+
+#: ../src/ui/theme.c:1925
+#: ../src/ui/theme.c:1935
+#: ../src/ui/theme.c:1969
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Biểu thức tọa độ gây ra lỗi chia cho không."
+
+#: ../src/ui/theme.c:1977
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "Biểu thức tọa độ thử dùng toán tử «mod» với số với điểm phụ động."
+
+#: ../src/ui/theme.c:2033
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Biểu thức tọa độ có toán tử « %s », nơi lẽ ra phải là một toán hạng."
+
+#: ../src/ui/theme.c:2042
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Biểu thức tọa đổ có toán hạng nơi lẽ ra phải là toán tử."
+
+#: ../src/ui/theme.c:2050
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+"Biểu thức tọa độ kết thúc bằng toán tử trong khi lẽ ra phải là toán hạng."
+
+#: ../src/ui/theme.c:2060
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Biểu thức tọa độ có toán tử «%c» theo sau toán tử «%c» mà không có toán hạng ở "
+"giữa."
+
+#: ../src/ui/theme.c:2207
+#: ../src/ui/theme.c:2248
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Biểu thức tọa độ có biến hoặc hằng lạ « %s »."
+
+#: ../src/ui/theme.c:2302
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Bộ phân tách biểu thức tọa độ đã tràn bộ đệm."
+
+#: ../src/ui/theme.c:2331
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Biểu thức tọa độ có dấu đóng ngoặc mà thiếu dấu mở ngoặc."
+
+#: ../src/ui/theme.c:2395
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Biểu thức tọa độ có dấu mở ngoặc nhưng thiếu dấu đóng ngoặc."
+
+#: ../src/ui/theme.c:2406
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Biểu thức tọa độ không có bất kỳ toán tử hay toán hạng nào."
+
+#: ../src/ui/theme.c:2608
+#: ../src/ui/theme.c:2628
+#: ../src/ui/theme.c:2648
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Sắc thái chứa một biểu thức gây ra lỗi: %s\n"
+
+#: ../src/ui/theme.c:4167
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"gì đó\"/> phải xác định cho "
+"kiểu dáng khung này."
+
+#: ../src/ui/theme.c:4643
+#: ../src/ui/theme.c:4668
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "Thiếu <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"gì đó\"/>"
+
+#: ../src/ui/theme.c:4712
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Lỗi nạp sắc thái « %s »: %s\n"
+
+#: ../src/ui/theme.c:4838
+#: ../src/ui/theme.c:4845
+#: ../src/ui/theme.c:4852
+#: ../src/ui/theme.c:4859
+#: ../src/ui/theme.c:4866
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Chưa đặt <%s> cho sắc thái « %s »."
+
+#: ../src/ui/theme.c:4874
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Chưa đặt kiểu khung cho loại cửa sổ « %s » trong sắc thái « %s », hãy thêm "
+"phần tử <window type=\"%s\" style_set=\"gì đó\"/>."
+
+#: ../src/ui/theme.c:5241
+#: ../src/ui/theme.c:5303
+#: ../src/ui/theme.c:5366
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "Hằng tự định nghĩa phải bắt đầu bằng ký tự hoa; « %s » không phải."
+
+#: ../src/ui/theme.c:5249
+#: ../src/ui/theme.c:5311
+#: ../src/ui/theme.c:5374
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Hằng « %s » đã được định nghĩa."
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Cách dùng: %s\n"
diff --git a/po/wa.po b/po/wa.po
new file mode 100644
index 00000000..1b3e8c93
--- /dev/null
+++ b/po/wa.po
@@ -0,0 +1,2715 @@
+# Traduction into the walloon language.
+#
+# Si vos voloz donner on côp di spale pol ratournaedje di Mate (ou des
+# ôtes libes programes) sicrijhoz mu a l' adresse emile
+# <[email protected]>; nos avons co bråmint di l' ovraedje a fé.
+#
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# Pablo Saratxaga <[email protected]>, 2003.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-09-19 12:30+0200\n"
+"PO-Revision-Date: 2003-07-12 14:51+0200\n"
+"Last-Translator: Pablo Saratxaga <[email protected]>\n"
+"Language-Team: Walon <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Po s' è siervi: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:128
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco a stî copilé sins sopoirt pol môde badjawe\n"
+
+#: ../src/delete.c:63 ../src/delete.c:90 ../src/marco-dialog.c:70
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr ""
+
+#: ../src/delete.c:70 ../src/delete.c:97 ../src/marco-dialog.c:77
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr ""
+
+#: ../src/delete.c:128
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr ""
+
+#: ../src/delete.c:263
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr ""
+
+#: ../src/delete.c:344
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+
+#: ../src/delete.c:452
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr ""
+
+#: ../src/display.c:319
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr ""
+
+#: ../src/errors.c:231
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+
+#: ../src/errors.c:238
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr ""
+
+#: ../src/frames.c:1125
+msgid "Close Window"
+msgstr "Clôre li purnea"
+
+#: ../src/frames.c:1128
+msgid "Window Menu"
+msgstr "Menu do purnea"
+
+#: ../src/frames.c:1131
+msgid "Minimize Window"
+msgstr "Mete li purnea å pus ptit"
+
+#: ../src/frames.c:1134
+msgid "Maximize Window"
+msgstr "Mete li purnea å pus grand"
+
+#: ../src/frames.c:1137
+msgid "Unmaximize Window"
+msgstr "Rimete li purnea a s' grandeu di dvant"
+
+#: ../src/keybindings.c:994
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+
+#: ../src/keybindings.c:2620
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+
+#: ../src/keybindings.c:2725
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr ""
+
+#: ../src/keybindings.c:3570
+#, fuzzy
+msgid "No terminal command has been defined.\n"
+msgstr "Nou stîle lomé «%s» n' a stî defini"
+
+#: ../src/main.c:69
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Copyright © 2001-2002 Havoc Pennington, Red Hat, Inc., et des ôtes\n"
+"Çouchal, c' est on libe programe; vos l' poloz bén spåde et sel poloz vs\n"
+"bén candjî tot shuvant li Licinse Publike Djeneråle (GPL)\n"
+"I n' a NOLE WAERANTEYE; nén minme ki vos VINDRÎZ bén\n"
+"li programe ou ki vos vs è SIEVRÎZ BÉN PO ENE SÔRE OU L' ÔTE.\n"
+
+#: ../src/main.c:257
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:263
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:269
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:274
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:280
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:286
+msgid "Print version"
+msgstr ""
+
+#: ../src/main.c:440
+#, fuzzy, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Dji n' a savou tcherdjî l' tinme «%s»: %s\n"
+
+#: ../src/main.c:456
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr ""
+
+#: ../src/main.c:518
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Dji n' a nén savou renonder: %s\n"
+
+#: ../src/menu.c:54
+msgid "Mi_nimize"
+msgstr "Å pus _ptit"
+
+#: ../src/menu.c:55
+msgid "Ma_ximize"
+msgstr "Å pus gr_and"
+
+#: ../src/menu.c:56
+msgid "Unma_ximize"
+msgstr "Grandeu di d_vant"
+
+#: ../src/menu.c:57
+msgid "Roll _Up"
+msgstr "E_rôler"
+
+#: ../src/menu.c:58
+msgid "_Unroll"
+msgstr "_Disrôler"
+
+#: ../src/menu.c:59 ../src/menu.c:60
+msgid "On _Top"
+msgstr ""
+
+#: ../src/menu.c:61
+msgid "_Move"
+msgstr "_Bodjî"
+
+#: ../src/menu.c:62
+msgid "_Resize"
+msgstr "Candjî l' _grandeu"
+
+#. separator
+#: ../src/menu.c:64
+msgid "_Close"
+msgstr "_Clôre"
+
+#. separator
+#: ../src/menu.c:66
+#, fuzzy
+msgid "_Always on Visible Workspace"
+msgstr "Seulmint so _ci scribanne chal"
+
+#: ../src/menu.c:67
+#, fuzzy
+msgid "_Only on This Workspace"
+msgstr "Seulmint so _ci scribanne chal"
+
+#: ../src/menu.c:68
+#, fuzzy
+msgid "Move to Workspace _Left"
+msgstr "Bodjî l' purnea viè l' sicribanne 9"
+
+#: ../src/menu.c:69
+#, fuzzy
+msgid "Move to Workspace R_ight"
+msgstr "Bodjî l' purnea viè l' sicribanne 1"
+
+#: ../src/menu.c:70
+#, fuzzy
+msgid "Move to Workspace _Up"
+msgstr "Bodjî l' purnea viè l' sicribanne 1"
+
+#: ../src/menu.c:71
+#, fuzzy
+msgid "Move to Workspace _Down"
+msgstr "Bodjî l' purnea viè l' sicribanne do dzo"
+
+#: ../src/menu.c:162 ../src/prefs.c:2106
+#, c-format
+msgid "Workspace %d"
+msgstr "Sicribanne %d"
+
+#: ../src/menu.c:171
+#, fuzzy
+msgid "Workspace 1_0"
+msgstr "Sicribanne %d"
+
+#: ../src/menu.c:173
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Sicribanne %s%d"
+
+#: ../src/menu.c:368
+#, fuzzy
+msgid "Move to Another _Workspace"
+msgstr "Bodjî l' purnea viè l' sicribanne do dzeur"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr ""
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr ""
+
+#: ../src/marco-dialog.c:110
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr "Li purnea «%s» ni responde nén."
+
+#: ../src/marco-dialog.c:118
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr ""
+
+#: ../src/marco-dialog.c:129
+msgid "_Force Quit"
+msgstr ""
+
+#: ../src/marco-dialog.c:226
+msgid "Title"
+msgstr "Tite"
+
+#: ../src/marco-dialog.c:238
+msgid "Class"
+msgstr "Classe"
+
+#: ../src/marco-dialog.c:264
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+
+#: ../src/marco-dialog.c:330
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Åk n' a nén stî tot-z enondant «%s»:\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Accion cwand on dobe-clitche sol bår di tite"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Adjinçmint des botons del bår di tite"
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:9
+#, fuzzy
+msgid "Close window"
+msgstr "Clôre on purnea"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr "Tinme do moumint"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Delay in milliseconds for the auto raise option"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:13
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:14
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr "Mete en alaedje li veyåve xhuflet"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Hide all windows and focus desktop"
+msgstr "Catchî tos les purneas et dner li focus å scribanne"
+
+#: ../src/marco.schemas.in.h:17
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key)."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:19
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:22
+msgid "Lower window below other windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:23
+#, fuzzy
+msgid "Maximize window"
+msgstr "Mete on purnea å pus grand"
+
+#: ../src/marco.schemas.in.h:24
+msgid "Maximize window horizontally"
+msgstr "Mete å pus grand di coûtchî"
+
+#: ../src/marco.schemas.in.h:25
+msgid "Maximize window vertically"
+msgstr "Mete å pus grand d' astampé"
+
+#: ../src/marco.schemas.in.h:26
+#, fuzzy
+msgid "Minimize window"
+msgstr "Mete on purnea å pus ptit"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:28
+msgid "Move backward between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:29
+msgid "Move backwards between panels and the desktop with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:30
+msgid "Move backwards between windows immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:31
+msgid "Move between panels and the desktop immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move between panels and the desktop with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move between windows immediately"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move between windows with popup"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move focus backwards between windows using popup display"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:36
+#, fuzzy
+msgid "Move window"
+msgstr "Bodjî on purnea"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move window one workspace down"
+msgstr "Bodjî l' purnea viè l' sicribanne do dzo"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move window one workspace to the left"
+msgstr "Bodjî l' purnea viè l' sicribanne a hintche"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move window one workspace to the right"
+msgstr "Bodjî l' purnea viè l' sicribanne a droete"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move window one workspace up"
+msgstr "Bodjî l' purnea viè l' sicribanne do dzeur"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move window to workspace 1"
+msgstr "Bodjî l' purnea viè l' sicribanne 1"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move window to workspace 10"
+msgstr "Bodjî l' purnea viè l' sicribanne 10"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move window to workspace 11"
+msgstr "Bodjî l' purnea viè l' sicribanne 11"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window to workspace 12"
+msgstr "Bodjî l' purnea viè l' sicribanne 12"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window to workspace 2"
+msgstr "Bodjî l' purnea viè l' sicribanne 2"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window to workspace 3"
+msgstr "Bodjî l' purnea viè l' sicribanne 3"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window to workspace 4"
+msgstr "Bodjî l' purnea viè l' sicribanne 4"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window to workspace 5"
+msgstr "Bodjî l' purnea viè l' sicribanne 5"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 6"
+msgstr "Bodjî l' purnea viè l' sicribanne 6"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 7"
+msgstr "Bodjî l' purnea viè l' sicribanne 7"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 8"
+msgstr "Bodjî l' purnea viè l' sicribanne 8"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 9"
+msgstr "Bodjî l' purnea viè l' sicribanne 9"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Name of workspace"
+msgstr "No do scribanne"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Number of workspaces"
+msgstr "Nombe di scribannes"
+
+#: ../src/marco.schemas.in.h:55
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:56
+msgid "Raise obscured window, otherwise lower"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:57
+msgid "Raise window above other windows"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:58
+#, fuzzy
+msgid "Resize window"
+msgstr "Candjî l' grandeu d' on purnea"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Run a defined command"
+msgstr "Enonder ene comande dinêye"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Run a terminal"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:61
+msgid "Show the panel menu"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:62
+msgid "Show the panel run application dialog"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:63
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:64
+msgid "Switch to workspace 1"
+msgstr "Potchî å scribanne 1"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Switch to workspace 10"
+msgstr "Potchî å scribanne 10"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Switch to workspace 11"
+msgstr "Potchî å scribanne 11"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Switch to workspace 12"
+msgstr "Potchî å scribanne 12"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Switch to workspace 2"
+msgstr "Potchî å scribanne 2"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Switch to workspace 3"
+msgstr "Potchî å scribanne 3"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Switch to workspace 4"
+msgstr "Potchî å scribanne 4"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Switch to workspace 5"
+msgstr "Potchî å scribanne 5"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 6"
+msgstr "Potchî å scribanne 6"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 7"
+msgstr "Potchî å scribanne 7"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 8"
+msgstr "Potchî å scribanne 8"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 9"
+msgstr "Potchî å scribanne 9"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace above this one"
+msgstr "Potchî å scribanne do dzeur"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace below this one"
+msgstr "Potchî å scribanne do dzo"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace on the left"
+msgstr "Potchî å scribanne a hintche"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace on the right"
+msgstr "Potchî å scribanne a droete"
+
+#: ../src/marco.schemas.in.h:80
+msgid "System Bell is Audible"
+msgstr "Li xhuflet do sistinme est oyåve"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Take a screenshot"
+msgstr "Fé ene waitroûlêye"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Take a screenshot of a window"
+msgstr "Fé ene waitroûlêye d' on purnea"
+
+#: ../src/marco.schemas.in.h:83
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:84
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:85
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:86
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:87
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:88
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:89
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:90
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:91
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:92
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:93
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:94
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:95
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:96
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:97
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:98
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:99
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:100
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:146
+msgid "The name of a workspace."
+msgstr "Li no d' on sicribanne"
+
+#: ../src/marco.schemas.in.h:147
+msgid "The screenshot command"
+msgstr "Li cmande po fé des waitroûlêyes"
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"Li tinme definixh li rivnance des boirdeures des purnes, des bår di tite, et "
+"vos nd åroz."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:151
+msgid "The window screenshot command"
+msgstr "Li cmande po fé des waitroûlêyes"
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, and 'toggle_maximize' which will maximize/unmaximize the window."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:158
+msgid "Toggle always on top state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:159
+msgid "Toggle fullscreen mode"
+msgstr "Discandjî l' môde forrimplixhaedje del waitroûle"
+
+#: ../src/marco.schemas.in.h:160
+msgid "Toggle maximization state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:161
+msgid "Toggle shaded state"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:162
+msgid "Toggle window on all workspaces"
+msgstr ""
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+
+#: ../src/marco.schemas.in.h:164
+#, fuzzy
+msgid "Unmaximize window"
+msgstr "Rimete on purnea a s' grandeu di dvant"
+
+#: ../src/marco.schemas.in.h:165
+msgid "Use standard system font in window titles"
+msgstr "Eployî li prémetowe fonte pol tecse des bårs di tite"
+
+#: ../src/marco.schemas.in.h:166
+msgid "Visual Bell Type"
+msgstr "Sôre di veyåve xhuflet"
+
+#: ../src/marco.schemas.in.h:167
+msgid "Window focus mode"
+msgstr "Môde di focus des purneas"
+
+#: ../src/marco.schemas.in.h:168
+msgid "Window title font"
+msgstr "Fonte pol tite des purneas"
+
+#: ../src/prefs.c:528 ../src/prefs.c:544 ../src/prefs.c:560 ../src/prefs.c:576
+#: ../src/prefs.c:592 ../src/prefs.c:612 ../src/prefs.c:628 ../src/prefs.c:644
+#: ../src/prefs.c:660 ../src/prefs.c:676 ../src/prefs.c:692 ../src/prefs.c:708
+#: ../src/prefs.c:724 ../src/prefs.c:741 ../src/prefs.c:757 ../src/prefs.c:773
+#: ../src/prefs.c:789 ../src/prefs.c:805 ../src/prefs.c:820 ../src/prefs.c:835
+#: ../src/prefs.c:850 ../src/prefs.c:866 ../src/prefs.c:882 ../src/prefs.c:898
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr ""
+
+#: ../src/prefs.c:943
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+
+#: ../src/prefs.c:967 ../src/prefs.c:1428
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr ""
+
+#: ../src/prefs.c:1145
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+
+#: ../src/prefs.c:1330
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1390
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+
+#: ../src/prefs.c:1455
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr ""
+
+#: ../src/prefs.c:1589
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr ""
+
+#: ../src/prefs.c:1833
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+
+#: ../src/prefs.c:2187
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr ""
+
+#: ../src/resizepopup.c:126
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:408
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Li waitroûle %d sol håynaedje «%s» n' est nén valide\n"
+
+#: ../src/screen.c:424
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+
+#: ../src/screen.c:448
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+
+#: ../src/screen.c:506
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr ""
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr ""
+
+#: ../src/session.c:884 ../src/session.c:891
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Dji n' a nén savou ahiver l' ridant «%s»: %s\n"
+
+#: ../src/session.c:901
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Dji n' a nén savou drovi l' fitchî d' session «%s» po-z î scrire: %s\n"
+
+#: ../src/session.c:1053
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Åk n' a nén stî tot scrijhant e fitchî d' session «%s»: %s\n"
+
+#: ../src/session.c:1058
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Åk n' a nén stî tot cloyant l' fitchî d' session «%s»: %s\n"
+
+#: ../src/session.c:1133
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Dji n' a nén savou lére li schapé fitchî d' session «%s»: %s\n"
+
+#: ../src/session.c:1168
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Dji n' a nén savou analijhî li schapé fitchî d' session: %s\n"
+
+#: ../src/session.c:1217
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+
+#: ../src/session.c:1230
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr ""
+
+#: ../src/session.c:1247
+msgid "nested <window> tag"
+msgstr ""
+
+#: ../src/session.c:1305 ../src/session.c:1337
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr ""
+
+#: ../src/session.c:1409
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr ""
+
+#: ../src/session.c:1469
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr ""
+
+#: ../src/session.c:1489
+#, c-format
+msgid "Unknown element %s"
+msgstr "Elemint nén cnowhou %s"
+
+#: ../src/session.c:1961
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Roye %d caractere %d: %s"
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "L' atribut «%s» est repeté deus côps dins l' minme elemint <%s>"
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr ""
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr ""
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr ""
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr ""
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr ""
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr ""
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr ""
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr ""
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Nol åtribut «name» (no) e l' elemint <%s>"
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Nol åtribut «value» (valixhance) e l' elemint <%s>"
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr ""
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1662
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1676
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1903
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:1910
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2090
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2161
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2209
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr ""
+
+#: ../src/theme-parser.c:2294
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2476
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr ""
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2549
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr ""
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr ""
+
+#: ../src/theme-parser.c:3153
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3210
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3219
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3227
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3272
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3289
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr ""
+
+#: ../src/theme-parser.c:3298
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr ""
+
+#: ../src/theme-parser.c:3306
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3376
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3392
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3401
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3420
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Nou stîle lomé «%s» n' a stî defini"
+
+#: ../src/theme-parser.c:3430
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr ""
+
+#: ../src/theme-parser.c:3440
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr ""
+
+#: ../src/theme-parser.c:3450
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+
+#: ../src/theme-parser.c:3464
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr ""
+
+#: ../src/theme-parser.c:3536
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3574
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3612
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+
+#: ../src/theme-parser.c:3659
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "L' elemint li pus å dfoû doet esse <marco_theme> et nén <%s>"
+
+#: ../src/theme-parser.c:3679
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Èn elemint <%s> n' est nén permis å dvins d' èn elemint di no (<name>)/oteur "
+"(<author>)/date/discrijhaedje (<description>)"
+
+#: ../src/theme-parser.c:3684
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Èn elemint <%s> n' est nén permis å dvins d' èn elemint <constant>"
+
+#: ../src/theme-parser.c:3696
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+
+#: ../src/theme-parser.c:3718
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr ""
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Èn elemint <%s> n' est nén permis å dvins d' èn elemint <%s>"
+
+#: ../src/theme-parser.c:3984
+msgid "No draw_ops provided for frame piece"
+msgstr ""
+
+#: ../src/theme-parser.c:3999
+msgid "No draw_ops provided for button"
+msgstr ""
+
+#: ../src/theme-parser.c:4014
+msgid "No draw_ops provided for menu icon"
+msgstr ""
+
+#: ../src/theme-parser.c:4054
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "I n' pout aveur nou tecse å dvins d' èn elemint <%s>"
+
+#: ../src/theme-parser.c:4109
+msgid "<name> specified twice for this theme"
+msgstr "<name> (no) diné deus côps po ç' tinme chal"
+
+#: ../src/theme-parser.c:4120
+msgid "<author> specified twice for this theme"
+msgstr "<author> (oteur) diné deus côps po ç' tinme chal"
+
+#: ../src/theme-parser.c:4131
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> diné deus côps po ç' tinme chal"
+
+#: ../src/theme-parser.c:4142
+msgid "<date> specified twice for this theme"
+msgstr "<date> diné deus côps po ç' tinme chal"
+
+#: ../src/theme-parser.c:4153
+msgid "<description> specified twice for this theme"
+msgstr "<description> (discrijhaedje) diné deus côps po ç' tinme chal"
+
+#: ../src/theme-parser.c:4348
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr "Dji n' a savou lére li tinme do fitchî %s: %s\n"
+
+#: ../src/theme-parser.c:4403
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Li fitchî di tinme %s n' a nén on elemint raecene «<marco_theme>»"
+
+#: ../src/theme-viewer.c:70
+#, fuzzy
+msgid "/_Windows"
+msgstr "Focus des purneas"
+
+#: ../src/theme-viewer.c:71
+msgid "/Windows/tearoff"
+msgstr ""
+
+#: ../src/theme-viewer.c:72
+msgid "/Windows/_Dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/_Modal dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Utility"
+msgstr ""
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Splashscreen"
+msgstr ""
+
+#: ../src/theme-viewer.c:76
+#, fuzzy
+msgid "/Windows/_Top dock"
+msgstr "Focus des purneas"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Bottom dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Left dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Right dock"
+msgstr ""
+
+#: ../src/theme-viewer.c:80
+#, fuzzy
+msgid "/Windows/_All docks"
+msgstr "Focus des purneas"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/Des_ktop"
+msgstr ""
+
+#: ../src/theme-viewer.c:131
+msgid "Open another one of these windows"
+msgstr ""
+
+#: ../src/theme-viewer.c:138
+msgid "This is a demo button with an 'open' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:145
+msgid "This is a demo button with a 'quit' icon"
+msgstr ""
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr ""
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr ""
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr ""
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr ""
+
+#: ../src/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr ""
+
+#: ../src/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr ""
+
+#: ../src/theme-viewer.c:397
+msgid "Torn-off Menu"
+msgstr ""
+
+#: ../src/theme-viewer.c:402
+msgid "Border"
+msgstr ""
+
+#: ../src/theme-viewer.c:731
+#, c-format
+msgid "Button layout test %d"
+msgstr ""
+
+#: ../src/theme-viewer.c:760
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr ""
+
+#: ../src/theme-viewer.c:803
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:810
+#, fuzzy, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Åk n' a nén stî tot cloyant l' fitchî d' session «%s»: %s\n"
+
+#: ../src/theme-viewer.c:816
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:839
+msgid "Normal Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:845
+msgid "Small Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:851
+msgid "Large Title Font"
+msgstr ""
+
+#: ../src/theme-viewer.c:856
+msgid "Button Layouts"
+msgstr ""
+
+#: ../src/theme-viewer.c:861
+msgid "Benchmark"
+msgstr ""
+
+#: ../src/theme-viewer.c:908
+#, fuzzy
+msgid "Window Title Goes Here"
+msgstr "Fonte pol tite des purneas"
+
+#: ../src/theme-viewer.c:1012
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+
+#: ../src/theme-viewer.c:1227
+msgid "position expression test returned TRUE but set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1229
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+
+#: ../src/theme-viewer.c:1233
+msgid "Error was expected but none given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr ""
+
+#: ../src/theme-viewer.c:1241
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr ""
+
+#: ../src/theme-viewer.c:1245
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1248
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr ""
+
+#: ../src/theme-viewer.c:1310
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "copete"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "valeye"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "hintche"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "droete"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "li djeyometreye do cåde ni dene nén li grandeu pol «%s»"
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr ""
+"li djeyometreye do cåde ni dene nén li grandeu di «%s» pol boird di «%s»"
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Les proporcions %g pol boton n' sont nén råjhnåves"
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Li djeyometreye do cåde ni dene nén l' grandeu des botons"
+
+#: ../src/theme.c:843
+msgid "Gradients should have at least two colors"
+msgstr ""
+
+#: ../src/theme.c:969
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:983
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+
+#: ../src/theme.c:994
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1007
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr ""
+
+#: ../src/theme.c:1037
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+
+#: ../src/theme.c:1048
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr ""
+
+#: ../src/theme.c:1058
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+
+#: ../src/theme.c:1105
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+
+#: ../src/theme.c:1116
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr ""
+
+#: ../src/theme.c:1126
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr ""
+
+#: ../src/theme.c:1155
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr ""
+
+#: ../src/theme.c:1417
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr ""
+
+#: ../src/theme.c:1444
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+
+#: ../src/theme.c:1458
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr ""
+
+#: ../src/theme.c:1525
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+
+#: ../src/theme.c:1582
+msgid "Coordinate expression was empty or not understood"
+msgstr ""
+
+#: ../src/theme.c:1725 ../src/theme.c:1735 ../src/theme.c:1769
+msgid "Coordinate expression results in division by zero"
+msgstr ""
+
+#: ../src/theme.c:1777
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+
+#: ../src/theme.c:1834
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+
+#: ../src/theme.c:1843
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+
+#: ../src/theme.c:1851
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr ""
+
+#: ../src/theme.c:1861
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+
+#: ../src/theme.c:1980
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr ""
+
+#: ../src/theme.c:2009
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2072
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+
+#: ../src/theme.c:2129
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+
+#: ../src/theme.c:2140
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+
+#: ../src/theme.c:2384 ../src/theme.c:2406 ../src/theme.c:2427
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "Li tinme a-st ene ratourneure «%s» k' a fwait ene aroke: %s\n"
+
+#: ../src/theme.c:3913
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+
+#: ../src/theme.c:4363 ../src/theme.c:4395
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"I manke <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/theme.c:4446
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Dji n' a savou tcherdjî l' tinme «%s»: %s\n"
+
+#: ../src/theme.c:4592 ../src/theme.c:4599 ../src/theme.c:4606
+#: ../src/theme.c:4613 ../src/theme.c:4620
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Nou eshonna <%s> pol tinme «%s»"
+
+#: ../src/theme.c:4630
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+
+#: ../src/theme.c:4652
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+
+#: ../src/theme.c:5041 ../src/theme.c:5103
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+
+#: ../src/theme.c:5049 ../src/theme.c:5111
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr ""
+
+#: ../src/util.c:93
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Li drovaedje do djournå di disbugaedje a fwait berwete: %s\n"
+
+#: ../src/util.c:103
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Li drovaedje avou fdopen() do fitchî djournå %s a fwait berwete: %s\n"
+
+#: ../src/util.c:109
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Fitchî djournå drovi %s\n"
+
+#: ../src/util.c:203
+msgid "Window manager: "
+msgstr "Manaedjeu di purneas: "
+
+#: ../src/util.c:349
+msgid "Bug in window manager: "
+msgstr "Bug do manaedjeu di purneas: "
+
+#: ../src/util.c:378
+msgid "Window manager warning: "
+msgstr "Adviertixhmint do manaedjeu di purneas: "
+
+#: ../src/util.c:402
+msgid "Window manager error: "
+msgstr "Aroke do manaedjeu di purneas: "
+
+#: ../src/window-props.c:162
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %ld\n"
+msgstr ""
+
+#. first time through
+#: ../src/window.c:5205
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5876
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr ""
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
diff --git a/po/xh.po b/po/xh.po
new file mode 100644
index 00000000..67a3ac21
--- /dev/null
+++ b/po/xh.po
@@ -0,0 +1,3294 @@
+# Xhosa translation of marco
+# Copyright (C) 2005 Canonical Ltd.
+# This file is distributed under the same license as the marco package.
+# Translation by Canonical Ltd <[email protected]> with thanks to
+# Translation World CC in South Africa, 2005.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2005-09-19 12:30+0200\n"
+"PO-Revision-Date: 2005-03-22 18:03+0200\n"
+"Last-Translator: Canonical Ltd <[email protected]>\n"
+"Language-Team: Xhosa <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Usetyenziso: %s\n"
+
+#: ../src/tools/marco-message.c:176 ../src/util.c:128
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "I-Marco yaqulunqwa ngaphandle kwenkxaso kwimowdi yeverbose\n"
+
+#: ../src/delete.c:63 ../src/delete.c:90 ../src/marco-dialog.c:70
+#: ../src/theme-parser.c:467
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Ayikwazi kwahlula ngezijungqe \"%s\" njengenani elipheleleyo"
+
+#: ../src/delete.c:70 ../src/delete.c:97 ../src/marco-dialog.c:77
+#: ../src/theme-parser.c:476 ../src/theme-parser.c:530
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Ayikwazanga kuqonda oonobumba abarhuqayo \"%s\" kwistring \"%s\""
+
+#: ../src/delete.c:128
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr ""
+"Ayikwazanga kuhlula ngezijungqe umyalezo \"%s\" ukusuka kwinkqubo "
+"yonxibelelwano\n"
+
+#: ../src/delete.c:263
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Impazamo ekufundeni kwinkqubo yokuboniswa konxibelelwano: %s\n"
+
+#: ../src/delete.c:344
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Impazamo ekuqaliseni unxibelelwano lwemarco ukubuza ngokubulala inkqubo: %"
+"s\n"
+
+#: ../src/delete.c:452
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Ayikwazi kufumana igama lomququzeleli: %s\n"
+
+#: ../src/display.c:319
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Ayikwazi ukuvula umboniso we-X Window System '%s'\n"
+
+#: ../src/errors.c:231
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Kulahleke unxibelelwano kumboniso '%s';\n"
+"kusenokwenzeka ukuba iseva X ivaliwe okanye ubulewe/utshabalalise\n"
+"umanejala wefestile.\n"
+
+#: ../src/errors.c:238
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Impazamo enkulu IO %d (%s) kumboniso '%s'.\n"
+
+#: ../src/frames.c:1125
+msgid "Close Window"
+msgstr "Vala iFestile"
+
+#: ../src/frames.c:1128
+msgid "Window Menu"
+msgstr "Imenyu yeFestile"
+
+#: ../src/frames.c:1131
+msgid "Minimize Window"
+msgstr "Nciphisa iFestile"
+
+#: ../src/frames.c:1134
+msgid "Maximize Window"
+msgstr "Yandisa iFestile"
+
+#: ../src/frames.c:1137
+msgid "Unmaximize Window"
+msgstr "Sukwandisa iFestile"
+
+#: ../src/keybindings.c:994
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Enye kwiinkqubo sele isebenzisa iqhosha %s nabalungisi %x njengesidibanisi\n"
+
+#: ../src/keybindings.c:2620
+#, c-format
+msgid "Error launching marco-dialog to print an error about a command: %s\n"
+msgstr ""
+"Impazamo ukuqalisa unxibelelwano lwemarco ukushicilela impazamo emalunga "
+"nomyalelo: %s\n"
+
+#: ../src/keybindings.c:2725
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "Akukho myalelo %d othe wachazwa.\n"
+
+#: ../src/keybindings.c:3570
+msgid "No terminal command has been defined.\n"
+msgstr "Akukho myalelo wetheminali ochaziweyo.\n"
+
+#: ../src/main.c:69
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"Imarco %s\n"
+"Copyright (C) 2001-2002 Havoc Pennington, Red Hat, Inc., and others\n"
+"Le yisoftwe engahlawulelwayo; jonga umboneleli kwiimeko zokukopa.\n"
+"Iwaranti AYIKHO; NAKUSHISHINO okanye UKULUNGELA INJONGO ETHILE.\n"
+
+#: ../src/main.c:257
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/main.c:263
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/main.c:269
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/main.c:274
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/main.c:280
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/main.c:286
+msgid "Print version"
+msgstr ""
+
+#: ../src/main.c:440
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Ayiphumeleli ukuskena uvimba weefayili zemixholo: %s\n"
+
+#: ../src/main.c:456
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes."
+msgstr ""
+"Ayikwazi kufumana umxholo! Qinisekisa %s ukhona kwaye uqulathe imixholo "
+"eqhelekileyo."
+
+#: ../src/main.c:518
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Ayikwazi kuqala kwakhona: %s\n"
+
+#: ../src/menu.c:54
+msgid "Mi_nimize"
+msgstr "_Nciphisa"
+
+#: ../src/menu.c:55
+msgid "Ma_ximize"
+msgstr "_Yandisa"
+
+#: ../src/menu.c:56
+msgid "Unma_ximize"
+msgstr "_Sukwandisa"
+
+#: ../src/menu.c:57
+msgid "Roll _Up"
+msgstr "Songela _Phezulu"
+
+#: ../src/menu.c:58
+msgid "_Unroll"
+msgstr "Musa _Ukusonga "
+
+#: ../src/menu.c:59 ../src/menu.c:60
+msgid "On _Top"
+msgstr "Nga _Phezulu"
+
+#: ../src/menu.c:61
+msgid "_Move"
+msgstr "_Shenxisa"
+
+#: ../src/menu.c:62
+msgid "_Resize"
+msgstr "_Tshintsha ubungakanani"
+
+#. separator
+#: ../src/menu.c:64
+msgid "_Close"
+msgstr "_Vala"
+
+#. separator
+#: ../src/menu.c:66
+msgid "_Always on Visible Workspace"
+msgstr "_Rhoqo kwiNdawo yoSebenzela eBonakalayo"
+
+#: ../src/menu.c:67
+msgid "_Only on This Workspace"
+msgstr "_Kuphela Kule Ndawo yoSebenzela"
+
+#: ../src/menu.c:68
+msgid "Move to Workspace _Left"
+msgstr "Shenxisela kwiNdawo yoSebenzela _eKhohlo"
+
+#: ../src/menu.c:69
+msgid "Move to Workspace R_ight"
+msgstr "Shenxisela kwiNdawo yokuSebenzela e_Kunene"
+
+#: ../src/menu.c:70
+msgid "Move to Workspace _Up"
+msgstr "Shenxisela kwiNdawo yokuSebenzela e_Phezulu"
+
+#: ../src/menu.c:71
+msgid "Move to Workspace _Down"
+msgstr "Shenxisela kwiNdawo yokuSebenzela eP_hantsi"
+
+#: ../src/menu.c:162 ../src/prefs.c:2106
+#, c-format
+msgid "Workspace %d"
+msgstr "Indawo yokusebenzela %d"
+
+#: ../src/menu.c:171
+msgid "Workspace 1_0"
+msgstr "Indawo yokusebenzela 1_0"
+
+#: ../src/menu.c:173
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Indawo yokusebenzela %s%d"
+
+#: ../src/menu.c:368
+msgid "Move to Another _Workspace"
+msgstr "Shenxisela kweNye iNdawo _Yokusebenzela"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:105
+msgid "Shift"
+msgstr "I-Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:111
+msgid "Ctrl"
+msgstr "I-Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:117
+msgid "Alt"
+msgstr "I-Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:123
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:129
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:135
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:141
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:147
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:153
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/metaaccellabel.c:159
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/marco-dialog.c:110
+#, c-format
+msgid "The window \"%s\" is not responding."
+msgstr "Ifestile \"%s\" ayiphenduli."
+
+#: ../src/marco-dialog.c:118
+msgid ""
+"Forcing this application to quit will cause you to lose any unsaved changes."
+msgstr ""
+"Ukunyanzelisa le nkqubo ukuba iphume kuya kubangela ukuphulukana nawo "
+"nawuphi na umsebenzi ongagcinwanga."
+
+#: ../src/marco-dialog.c:129
+msgid "_Force Quit"
+msgstr "_Phuma ngoNyanzeliso"
+
+#: ../src/marco-dialog.c:226
+msgid "Title"
+msgstr "Isihloko"
+
+#: ../src/marco-dialog.c:238
+msgid "Class"
+msgstr "Udidi"
+
+#: ../src/marco-dialog.c:264
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Ezi festile azixhasi \"gcina umiselo lwenkqubo lwangoku\" kwaye ziya "
+"kufuneka ziqaliswe ngokutsha ngesandla kwixa elizayo xa ungena."
+
+#: ../src/marco-dialog.c:330
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Kubekho impazamo ukuqhuba \"%s\":\n"
+"%s."
+
+#: ../src/marco.desktop.in.h:1
+msgid "Marco"
+msgstr "Imarco"
+
+#: ../src/marco.schemas.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(Awuzalisekiswanga) Ukwehla usenyuka kusebenza ngokweenkqubo ingezizo "
+"iifestile"
+
+#: ../src/marco.schemas.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0, however. Also, this option is disabled if the "
+"titlebar_uses_desktop_font option is set to true. By default, titlebar_font "
+"is unset, causing Marco to fall back to the desktop font even if "
+"titlebar_uses_desktop_font is false."
+msgstr ""
+"Istring senkcazelo ngefonti esichaza ifonti kwii-titlebar zefestile. "
+"Ubungakanani kwinkcazelo buya kusetyenziswa kuphela xa i-titlebar_font_size "
+"imiselwe ku-0, ke ngoko. Kwakhona, oku kwenziwa kungasebenzi xa i-"
+"titlebar_uses_desktop_font isetelwe inyaniso. Ngokwenene, i-titlebar_font "
+"ayimiselwanga, oko kwenza iMarco ibuyele kwifonti yedesktop noba i-"
+"titlebar_uses_desktop_font ayinyanisekanga."
+
+#: ../src/marco.schemas.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Inyathelo kwititle bar, cofa kabini"
+
+#: ../src/marco.schemas.in.h:4
+msgid "Activate window menu"
+msgstr "Yenza imenyu yefestile isebenze"
+
+#: ../src/marco.schemas.in.h:5
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Amalungiselelo amaqhosha kwi-titlebar"
+
+#: ../src/marco.schemas.in.h:6
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,close\"; the colon separates the left corner of "
+"the window from the right corner, and the button names are comma-separated. "
+"Duplicate buttons are not allowed. Unknown button names are silently ignored "
+"so that buttons can be added in future marco versions without breaking "
+"older versions."
+msgstr ""
+"Amalungiselelo amaqhosha kwi-titlebar. Ixabiso iya kuba sistring esinjenge "
+"\"menu:minimize,maximize,close\"; ikholoni eyohlula ikona yasekhohlo "
+"yefestile kwikona yasekunene namagama amaqhosha ohlulwa ngekoma. Amaqhosha "
+"aphinda-phindwayo awavumelekanga. Amagama amaqhosha angaziwa awahoywa "
+"ngokuthuleyo ukuze amaqhosha ongezwe kwiinguqulelo zexesha elizayo "
+"zemarco ngaphandle kokonakalisa iinguqulelo zakudala."
+
+#: ../src/marco.schemas.in.h:7
+msgid "Automatically raises the focused window"
+msgstr "Inyusa ngokuzenzekelayo ifestile ekuqwalaselwe kuyo"
+
+#: ../src/marco.schemas.in.h:8
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Ukucofa ifestile ngexa ubambe eli qhosha lesilungisi liya kuya kuhambisa "
+"ifestile (ukucofa ekhohlo), ubungakanani befestile (ukucofa phakathi), "
+"okanye ibonise imenyu yefestile (ukucofa ekunene). Isilungisi siboniswa "
+"njenge \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" umzekelo."
+
+#: ../src/marco.schemas.in.h:9
+msgid "Close window"
+msgstr "Vala ifestile"
+
+#: ../src/marco.schemas.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Imiyalelo eqhutywa xa kuphendulwa izidibanisi-qhosha"
+
+#: ../src/marco.schemas.in.h:11
+msgid "Current theme"
+msgstr "Umxholo wangoku"
+
+#: ../src/marco.schemas.in.h:12
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Libazisa ngokweemilisekondi kunyuso oluzenzekelayo"
+
+#: ../src/marco.schemas.in.h:13
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Imisa ukuba iinkqubo zekhompyutha okanye inkqubo ingadala ii-'beeps' "
+"ezivakalayo; zingasetyenziswa ngokusebenzisana 'nentsimbi evakalayo' "
+"ukuvumela ii-'beeps' ezithuleyo."
+
+#: ../src/marco.schemas.in.h:14
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Yenza zingasebenzi iimpawu ezingalunganga ezifuneka kwiinkqubo ezindala "
+"okanye ezophukileyo"
+
+#: ../src/marco.schemas.in.h:15
+msgid "Enable Visual Bell"
+msgstr "Yenza iNtsimbi eVakalayo isebenze"
+
+#: ../src/marco.schemas.in.h:16
+msgid "Hide all windows and focus desktop"
+msgstr "Fihla zonke iifestile nefocus desktop"
+
+#: ../src/marco.schemas.in.h:17
+msgid ""
+"If true, and the focus mode is either \"sloppy\" or \"mouse\" then the "
+"focused window will be automatically raised after a delay (the delay is "
+"specified by the auto_raise_delay key)."
+msgstr ""
+"Ukuba kuyinene, nefocus mode i- \"sloppy\" or \"mouse\" ke ngoko ifestile "
+"ekuqwalaselwe kuyo iya kunyuswa ngokuzenzekelayo emva kokulibaziseka "
+"(ukulibaziseka kubalulwa liqhosha i-auto_raise_delay)."
+
+#: ../src/marco.schemas.in.h:18
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Ukuba kuyinene, sukuyihoya i-titlebar_font, sebenzisa ifonti yenkqubo "
+"esemgangathweni kwizihloko zefestile."
+
+#: ../src/marco.schemas.in.h:19
+msgid ""
+"If true, marco will give the user less feedback and less sense of "
+"\"direct manipulation\", by using wireframes, avoiding animations, or other "
+"means. This is a significant reduction in usability for many users, but may "
+"allow legacy applications and terminal servers to function when they would "
+"otherwise be impractical. However, the wireframe feature is disabled when "
+"accessibility is on to avoid weird desktop breakages."
+msgstr ""
+"Ukuba kuyinene, i-marco iya kunikeza umsebenzisi ingxelo engaphantsi "
+"nentsingiselo engaphantsi \"direct manipulation\", ngokusebenzisa izakhelo "
+"zocingo, ukuthintela oopopayi, okanye ezinye iindlela. Olu lunciphiso "
+"olubalulekileyo kusetyenziso lwabasebenzisi abaninzi kodwa kungavumela "
+"iinkqubo ezililifa neeseva zetheminali ukuba zisebenze ngexa bezingasayi "
+"kusebenza. Kodwa ke, uphawu lwezakhelo zocingo alusebenzi xa ufikelelo "
+"luvuliwe ukuthintela ukophuka okungaqhelekanga kwe-desktop."
+
+#: ../src/marco.schemas.in.h:20
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. The existence of this setting is somewhat "
+"questionable. But it's better than having settings for all the specific "
+"details of application-based vs. window-based, e.g. whether to pass through "
+"clicks. Also, application-based mode is largely unimplemented at the moment."
+msgstr ""
+"Ukuba kuyinene, kengoko iMarco isebenza ngokweenkqubo kuneefestile. Le "
+"ngqiqo inokuthabathekisa okuthile, kodwa ke jikelele, umiselo olumiselwe "
+"kwinkqubo ikakhulu lunjenge-Mac libe ngaphantsi kune-Windows. Xa uqwalasele "
+"ifestile kwimowdi esekelwe kwinkqubo, zonke iifestile kwinkqubo ziya "
+"kunyuka. Kwakhona, kwimowdi esekelwe kwinkqubo, ukucofa kwingqwalaselo "
+"akugqithiswa kwiifestile kwezinye iinkqubo. Ubukho bolu miselo "
+"buyathandabuzeka. Kodwa kungcono kunokuba nomiselo kwiinkcukacha zizonke "
+"ezizodwa ezisekelwe kwiinkqubo nokuba ngaba ezisekelwe kwifestile, umz. noba "
+"kufuneka ugqithe ekucofeni. Kananjalo, imowdi esekelwe kwinkqubo iye "
+"ikakhulu ingazalisekiswa ngokwangoku."
+
+#: ../src/marco.schemas.in.h:21
+msgid "If true, trade off usability for less resource usage"
+msgstr ""
+"Ukuba kuyinene, rhwebisa ngosetyenziso kusetyenziso loovimba olungaphantsi"
+
+#: ../src/marco.schemas.in.h:22
+msgid "Lower window below other windows"
+msgstr "Thoba ifestile ngaphantsi kwezinye iifestile"
+
+#: ../src/marco.schemas.in.h:23
+msgid "Maximize window"
+msgstr "Yandisa ifestile"
+
+#: ../src/marco.schemas.in.h:24
+msgid "Maximize window horizontally"
+msgstr "Yandisa ifestile ngokuthe tyaba"
+
+#: ../src/marco.schemas.in.h:25
+msgid "Maximize window vertically"
+msgstr "Yandisa ifestile ngokuthe nkqo"
+
+#: ../src/marco.schemas.in.h:26
+msgid "Minimize window"
+msgstr "Nciphisa ifestile"
+
+#: ../src/marco.schemas.in.h:27
+msgid "Modifier to use for modified window click actions"
+msgstr ""
+"Isilungisi sokusetyenziswa kumanyathelo okucofa kwifestile elungisiweyo"
+
+#: ../src/marco.schemas.in.h:28
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Hambela ngasemva phakathi kweendawo zolawulo nedesktop ngokukhawuleza"
+
+#: ../src/marco.schemas.in.h:29
+msgid "Move backwards between panels and the desktop with popup"
+msgstr ""
+"Hambela ngasemva phakathi kweendawo zolawulo nedesktop enokukhetha okuvelayo"
+
+#: ../src/marco.schemas.in.h:30
+msgid "Move backwards between windows immediately"
+msgstr "Hambela ngasemva phakathi kweefestile ngokukhawuleza"
+
+#: ../src/marco.schemas.in.h:31
+msgid "Move between panels and the desktop immediately"
+msgstr "Hambela phakathi kweendawo zolawulo nedesktop ngokukhawuleza"
+
+#: ../src/marco.schemas.in.h:32
+msgid "Move between panels and the desktop with popup"
+msgstr "Hambela phakathi kweendawo zolawulo nedesktop enokukhetha okuvelayo"
+
+#: ../src/marco.schemas.in.h:33
+msgid "Move between windows immediately"
+msgstr "Hambela phakathi kweefestile ngokukhawuleza"
+
+#: ../src/marco.schemas.in.h:34
+msgid "Move between windows with popup"
+msgstr "Hambela phakathi kweefestile ezinokukhetha okuvelayo"
+
+#: ../src/marco.schemas.in.h:35
+msgid "Move focus backwards between windows using popup display"
+msgstr ""
+"Hambisa ugqaliselo ngasemva phakathi kweefestile ezisebenzisa umboniso "
+"onokukhetha okuvelayo"
+
+#: ../src/marco.schemas.in.h:36
+msgid "Move window"
+msgstr "Hambisa ifestile"
+
+#: ../src/marco.schemas.in.h:37
+msgid "Move window one workspace down"
+msgstr "Hambisa ifestile indawo yokusebenzela ibenye ukwehla"
+
+#: ../src/marco.schemas.in.h:38
+msgid "Move window one workspace to the left"
+msgstr "Hambisa ifestile indawo yokusebenzela ibenye ukuya ekhohlo"
+
+#: ../src/marco.schemas.in.h:39
+msgid "Move window one workspace to the right"
+msgstr "Hambisa ifestile indawo yokusebenzela benye ukuya ekunene"
+
+#: ../src/marco.schemas.in.h:40
+msgid "Move window one workspace up"
+msgstr "Hambisa ifestile indawo yokusebenzela benye ukuya phezulu"
+
+#: ../src/marco.schemas.in.h:41
+msgid "Move window to workspace 1"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 1"
+
+#: ../src/marco.schemas.in.h:42
+msgid "Move window to workspace 10"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 10"
+
+#: ../src/marco.schemas.in.h:43
+msgid "Move window to workspace 11"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 11"
+
+#: ../src/marco.schemas.in.h:44
+msgid "Move window to workspace 12"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 12"
+
+#: ../src/marco.schemas.in.h:45
+msgid "Move window to workspace 2"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 2"
+
+#: ../src/marco.schemas.in.h:46
+msgid "Move window to workspace 3"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 3"
+
+#: ../src/marco.schemas.in.h:47
+msgid "Move window to workspace 4"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 4"
+
+#: ../src/marco.schemas.in.h:48
+msgid "Move window to workspace 5"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 5"
+
+#: ../src/marco.schemas.in.h:49
+msgid "Move window to workspace 6"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 6"
+
+#: ../src/marco.schemas.in.h:50
+msgid "Move window to workspace 7"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 7"
+
+#: ../src/marco.schemas.in.h:51
+msgid "Move window to workspace 8"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 8"
+
+#: ../src/marco.schemas.in.h:52
+msgid "Move window to workspace 9"
+msgstr "Hambisela ifestile kwindawo yokusebenzela 9"
+
+#: ../src/marco.schemas.in.h:53
+msgid "Name of workspace"
+msgstr "Igama lendawo yokusebenzela"
+
+#: ../src/marco.schemas.in.h:54
+msgid "Number of workspaces"
+msgstr "Inani lendawo yokusebenzela"
+
+#: ../src/marco.schemas.in.h:55
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum (to "
+"prevent accidentally destroying your desktop by asking for 34 million "
+"workspaces)."
+msgstr ""
+"Inani leendawo zokusebenzela. Kufuneka zibe ngaphezulu kozero, zibe "
+"nobuninzi obusisigxina (ukukhusela ukutshabalalisa ngempazamo idesktop yakho "
+"ngokufuna iindawo zokusebenzela ezingama-34 million)."
+
+#: ../src/marco.schemas.in.h:56
+msgid "Raise obscured window, otherwise lower"
+msgstr "Nyusa ifestile ekekeleyo, kungenjalo ezantsi"
+
+#: ../src/marco.schemas.in.h:57
+msgid "Raise window above other windows"
+msgstr "Nyusa ifestile ngaphezu kwezinye iifestile"
+
+#: ../src/marco.schemas.in.h:58
+msgid "Resize window"
+msgstr "Linganisa ngokutsha ifestile"
+
+#: ../src/marco.schemas.in.h:59
+msgid "Run a defined command"
+msgstr "Qhuba umyalelo ochaziweyo"
+
+#: ../src/marco.schemas.in.h:60
+msgid "Run a terminal"
+msgstr "Qhuba itheminali"
+
+#: ../src/marco.schemas.in.h:61
+msgid "Show the panel menu"
+msgstr "Bonisa imenyu yendawo yolawulo"
+
+#: ../src/marco.schemas.in.h:62
+msgid "Show the panel run application dialog"
+msgstr "Bonisa ibhokisi yenkqubo yokuqhuba indawo yolawulo"
+
+#: ../src/marco.schemas.in.h:63
+msgid ""
+"Some applications break specifications in ways that result in window manager "
+"misfeatures. For example, ideally Marco would place all dialogs in a "
+"consistent position with respect to their parent window. This requires "
+"ignoring application-specified positions for dialogs. But some versions of "
+"Java/Swing mark their popup menus as dialogs, so Marco has to disable "
+"dialog positioning to allow menus to work in broken Java applications. There "
+"are several other examples like this. This option puts Marco in full-on "
+"Correct mode, which perhaps gives a moderately nicer UI if you don't need to "
+"run any broken apps. Sadly, workarounds must be enabled by default; the real "
+"world is an ugly place. Some of the workarounds are workarounds for "
+"limitations in the specifications themselves, so sometimes a bug in no-"
+"workarounds mode won't be fixable without amending a spec."
+msgstr ""
+"Ezinye iinkqubo zophula okukodwa ngeendlela ezibangela iimpawu "
+"ezingalunganga zomlawuli wefestile. Umzekelo, iMarco ingabeka zonke "
+"iibhokisi zonxibelelwano kwindawo efanayo ngokunxulumene nefestile yomzali "
+"wazo. Oku kufuna ukungahoyi iindawo ezizodwa zeenkqubo zeebhokisi. Kodwa "
+"ezinye iinguqulelo zeJava/Swing ziphawula iimenyu zazo zokukhetha okuvelayo "
+"njengeebhokisi, ke ngoko iMarco kufuneka yenze ubeko lwebhokisi "
+"lungasebenzi ukuvumela iimenyu ukuba zisebenze kwiinkqubo ezophukileyo "
+"zeJava. Kukho imizekelo emininzi engeminye efana nale. Oku kubeka iMarco "
+"kwimowdi epheleleyo eChanekileyo, nenikeza i-UI engcono ukuba akufunekanga "
+"uqhube naziphi na iinkqubo ezophukileyo. Ngelishwa, ukusebenza jikelele "
+"kufuneka kuvulwe ngokumiyo; ihlabathi lenene yindawo embi. Okunye kusetyenzo "
+"jikelele luncitshiso kokukodwa, kengoko ngamanye amaxesha isiphene kwinkqubo "
+"kwimowdi yokungasebenzi jikelele asisayi kulungiswa ngaphandle kokulungisa "
+"ispec."
+
+#: ../src/marco.schemas.in.h:64
+msgid "Switch to workspace 1"
+msgstr "Vula indawo yokusebenzela 1"
+
+#: ../src/marco.schemas.in.h:65
+msgid "Switch to workspace 10"
+msgstr "Vula indawo yokusebenzela 10"
+
+#: ../src/marco.schemas.in.h:66
+msgid "Switch to workspace 11"
+msgstr "Vula indawo yokusebenzela 11"
+
+#: ../src/marco.schemas.in.h:67
+msgid "Switch to workspace 12"
+msgstr "Vula indawo yokusebenzela 12"
+
+#: ../src/marco.schemas.in.h:68
+msgid "Switch to workspace 2"
+msgstr "Vula indawo yokusebenzela 2"
+
+#: ../src/marco.schemas.in.h:69
+msgid "Switch to workspace 3"
+msgstr "Vula indawo yokusebenzela 3"
+
+#: ../src/marco.schemas.in.h:70
+msgid "Switch to workspace 4"
+msgstr "Vula indawo yokusebenzela 4"
+
+#: ../src/marco.schemas.in.h:71
+msgid "Switch to workspace 5"
+msgstr "Vula indawo yokusebenzela 5"
+
+#: ../src/marco.schemas.in.h:72
+msgid "Switch to workspace 6"
+msgstr "Vula indawo yokusebenzela 6"
+
+#: ../src/marco.schemas.in.h:73
+msgid "Switch to workspace 7"
+msgstr "Vula indawo yokusebenzela 7"
+
+#: ../src/marco.schemas.in.h:74
+msgid "Switch to workspace 8"
+msgstr "Vula indawo yokusebenzela 8"
+
+#: ../src/marco.schemas.in.h:75
+msgid "Switch to workspace 9"
+msgstr "Vula indawo yokusebenzela 9"
+
+#: ../src/marco.schemas.in.h:76
+msgid "Switch to workspace above this one"
+msgstr "Vula indawo yokusebenzela engasentla kule"
+
+#: ../src/marco.schemas.in.h:77
+msgid "Switch to workspace below this one"
+msgstr "Vula indawo yokusebenzela engaphantsi kule"
+
+#: ../src/marco.schemas.in.h:78
+msgid "Switch to workspace on the left"
+msgstr "Vula indawo yokusebenzela esekhohlo"
+
+#: ../src/marco.schemas.in.h:79
+msgid "Switch to workspace on the right"
+msgstr "Vula indawo yokusebenzela esekunene"
+
+#: ../src/marco.schemas.in.h:80
+msgid "System Bell is Audible"
+msgstr "I-System Bell iyaVakala"
+
+#: ../src/marco.schemas.in.h:81
+msgid "Take a screenshot"
+msgstr "Thatha iscreenshot"
+
+#: ../src/marco.schemas.in.h:82
+msgid "Take a screenshot of a window"
+msgstr "Thatha iscreenshot sefestile"
+
+#: ../src/marco.schemas.in.h:83
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Ixelela iMarco indlela yokuzalisekisa umboniso ovakalayo enokuthi "
+"intsimbi yenkqubo okanye enye inkqubo isalathisi se-'bell' esikhaliswe "
+"ngayo. Ngokwangoku kukho amaxabiso amabini asebenzayo, \"fullscreen\", "
+"nebangela udanyazo olumhlophe-mnyama kwiscreen sisonke kunye \"frame_flash\" "
+"ebangela ititlebar yenkqubo nethumele isignali yentsimbi ukuba idanyaze. "
+"Ukuba inkqubo ethumele intsimbi ayaziwa (njengoko kuqhele ukuba njalo "
+"kokumiyo \"system beep\"), ititlebar yefestile ekuqwalaselwe kuyo iyadanyaza."
+
+#: ../src/marco.schemas.in.h:84
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Amaqhosha /apps/marco/global_keybindings/run_command_N achaza izidibanisi-"
+"qhosha ezihambelana nale miyalelo. Ukucofa isidibanisi-qhosha kwi-"
+"run_command_N kuya kuvula i-command_N."
+
+#: ../src/marco.schemas.in.h:85
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Iqhosha /apps/marco/global_keybindings/run_command_screenshot lichaza "
+"isidibanisi-qhosha esibangela umyalelo obalulwe lolu miselo ukuba ubizwe."
+
+#: ../src/marco.schemas.in.h:86
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Iqhosha /apps/marco/global_keybindings/run_command_window_screenshot "
+"lichaza isidibanisi-qhosha esibangela umyalelo obalulwe lolu miselo ukuba "
+"ubizwe."
+
+#: ../src/marco.schemas.in.h:87
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esiqhuba umyalelo onamanani ohambelana noku kwi- /apps/"
+"marco/keybinding_commands Ifomathi ikhangeleka \"&lt;Control&gt;a\" "
+"okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye "
+"sivumela oonombumba abakhulu okanye abancinci, kunye nezifinyezo ezinjengo "
+"\"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba useta okunye kwistring esisodwa "
+"\"disabled\", akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:88
+msgid ""
+"The keybinding that switches to the workspace above the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela ngasentla kwendawo "
+"yokusebenzela ekhoyo. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye sivumela "
+"oonombumba abakhulu okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;"
+"Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa "
+"\"disabled\", akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:89
+msgid ""
+"The keybinding that switches to the workspace below the current workspace. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela ngezantsi kwendawo "
+"yokusebenzela ekhoyo. below the current workspace. Ifomathi ibonakala \"&lt;"
+"Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe "
+"sinesisa kwaye sivumela oonombumba abakhulu okanye abancinci, kunye "
+"nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba umisela "
+"okunye kwistring esisodwa \"disabled\", akusayi kubakho isidibanisi-qhosha "
+"kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:90
+msgid ""
+"The keybinding that switches to the workspace on the left of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela ngasekhohlo "
+"kwendawo yokusebenzela ekhoyo. Ifomathi ibonakala \"&lt;Control&gt;a\" "
+"okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye "
+"sivumela oonombumba abakhulu okanye abancinci, kunye nezifinyezo ezinjengo "
+"\"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba umiselo okunye kwistring esisodwa "
+"\"disabled\", akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:91
+msgid ""
+"The keybinding that switches to the workspace on the right of the current "
+"workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela ngasekunene "
+"kwendawo yokusebenzela ekhoyo. Ifomathi ibonakala \"&lt;Control&gt;a\" "
+"okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye "
+"sivumela oonombumba abakhulu okanye abancinci, kunye nezifinyezo ezinjengo "
+"\"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba umiselo okunye kwistring esisodwa "
+"\"disabled\", akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:92
+msgid ""
+"The keybinding that switches to workspace 1. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 1. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:93
+msgid ""
+"The keybinding that switches to workspace 10. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 10. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:94
+msgid ""
+"The keybinding that switches to workspace 11. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 11. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:95
+msgid ""
+"The keybinding that switches to workspace 12. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 12. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:96
+msgid ""
+"The keybinding that switches to workspace 2. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 2. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:97
+msgid ""
+"The keybinding that switches to workspace 3. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 3. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:98
+msgid ""
+"The keybinding that switches to workspace 4. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 4. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:99
+msgid ""
+"The keybinding that switches to workspace 5. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 5. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne\"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:100
+msgid ""
+"The keybinding that switches to workspace 6. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 6. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:101
+msgid ""
+"The keybinding that switches to workspace 7. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 7. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:102
+msgid ""
+"The keybinding that switches to workspace 8. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 8. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo\"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:103
+msgid ""
+"The keybinding that switches to workspace 9. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esitshintshela kwindawo yokusebenzela 9. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:104
+msgid ""
+"The keybinding used to activate the window menu. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ekuvuleni imenyu yefestile. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:105
+msgid ""
+"The keybinding used to close a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ekuvaleni ifestile. Ifomathi ibonakala"
+"\"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli "
+"ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye abancinci, "
+"kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" okanye \"&lt;Ctrl&gt;\". Ukuba "
+"umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho isidibanisi-"
+"qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:106
+msgid ""
+"The keybinding used to enter \"move mode\" and begin moving a window using "
+"the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ekungeneni \"move mode\" nesiqalisa "
+"ukuhambisa ifestile sisebenzisa ikeyboard. Ifomathi ibonakala \"&lt;"
+"Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe "
+"sinesisa kwaye sivumela oonombumba abakhulu okanye abancinci, kunye "
+"nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba umisela "
+"okunye kwistring esisodwa \"disabled\", akusayi kubakho isidibanisi-qhosha "
+"kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:107
+msgid ""
+"The keybinding used to enter \"resize mode\" and begin resizing a window "
+"using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ekungeneni \"resize mode\" anesiqalisa "
+"ukuhambisa ifestile sisebenzisa ikeyboard. Ifomathi ibonakala \"&lt;"
+"Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe "
+"sinesisa kwaye sivumela oonombumba abakhulu okanye abancinci, kunye "
+"nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba umisela "
+"okunye kwistring esisodwa \"disabled\", akusayi kubakho isidibanisi-qhosha "
+"kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:108
+msgid ""
+"The keybinding used to hide all normal windows and set the focus to the "
+"desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ekufihleni zonke iifestile eziqhelekileyo "
+"size simisele ingqwalaselo kumva wedesktop. Ifomathi ibonakala \"&lt;"
+"Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe "
+"sinesisa kwaye sivumela oonombumba abakhulu okanye abancinci, kunye "
+"nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba umisela "
+"okunye kwistring esisodwa \"disabled\", akusayi kubakho isidibanisi-qhosha "
+"kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:109
+msgid ""
+"The keybinding used to maximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukwandisa ifestile. Ifomathi ibonakala "
+"\"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli "
+"ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye abancinci, "
+"kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba "
+"umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho isidibanisi-"
+"qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:110
+msgid ""
+"The keybinding used to minimize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukunciphisa ifestile. Ifomathi ibonakala "
+"\"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli "
+"ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye abancinci, "
+"kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba "
+"umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho isidibanisi-"
+"qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:111
+msgid ""
+"The keybinding used to move a window one workspace down. The format looks "
+"like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+"fairly liberal and allows lower or upper case, and also abbreviations such "
+"as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile indawo yokusebenzela "
+"enye ngezantsi. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye sivumela "
+"oonombumba abakhulu okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;"
+"Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa "
+"\"disabled\", akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:112
+msgid ""
+"The keybinding used to move a window one workspace to the left. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa indawo yokusebenzela enye "
+"ekhohlo. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba "
+"abakhulu okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne "
+"\"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", "
+"akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:113
+msgid ""
+"The keybinding used to move a window one workspace to the right. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile indawo yokusebenzela "
+"enye ekunene. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba "
+"abakhulu okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne "
+"\"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", "
+"akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:114
+msgid ""
+"The keybinding used to move a window one workspace up. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile indawo yokusebenzela "
+"enye phezulu. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba "
+"abakhulu okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne "
+"\"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", "
+"akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:115
+msgid ""
+"The keybinding used to move a window to workspace 1. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"1. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:116
+msgid ""
+"The keybinding used to move a window to workspace 10. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"10. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:117
+msgid ""
+"The keybinding used to move a window to workspace 11. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"11. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:118
+msgid ""
+"The keybinding used to move a window to workspace 12. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"12. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:119
+msgid ""
+"The keybinding used to move a window to workspace 2. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"2. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:120
+msgid ""
+"The keybinding used to move a window to workspace 3. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"3. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:121
+msgid ""
+"The keybinding used to move a window to workspace 4. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"4. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:122
+msgid ""
+"The keybinding used to move a window to workspace 5. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"5. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:123
+msgid ""
+"The keybinding used to move a window to workspace 6. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"6. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:124
+msgid ""
+"The keybinding used to move a window to workspace 7. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"7. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:125
+msgid ""
+"The keybinding used to move a window to workspace 8. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"8. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:126
+msgid ""
+"The keybinding used to move a window to workspace 9. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifestile kwindawo yokusebenzela "
+"9. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;"
+"F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu "
+"okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;"
+"Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi "
+"kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:127
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"using a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifocus ngasemva phakathi "
+"kweendawo zolawulo nedesktop, sisebenzisa ifestile yokukhetha okuvelayo. "
+"Imbonakalo ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:128
+msgid ""
+"The keybinding used to move focus backwards between panels and the desktop, "
+"without a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifocus ngasemva phakathi "
+"kweendawo zolawulo nedesktop, ngaphandle kwefestile yokukhetha okuvelayo. "
+"Imbonakalo ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:129
+msgid ""
+"The keybinding used to move focus backwards between windows without a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifocus ngasemva phakathi "
+"kweefestile ngaphandle kwefestile yokukhetha okuvelayo. Ukubamba \"shift\" "
+"kunye nesi sidibanisi kwenza indlela iye phambili kwakhona. Imbonakalo "
+"ibonakalo \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:130
+msgid ""
+"The keybinding used to move focus backwards between windows, using a popup "
+"window. Holding \"shift\" together with this binding makes the direction go "
+"forward again. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifocus ngasemva phakathi "
+"kweefestile, kusetyenziswa ifestile yokukhetha okuvelayo. Ukubamba \"shift\" "
+"kunye nesi sidibanisi kwenza indlela iye phambili kwakhona. Imbonakalo "
+"ibonakalo \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:131
+msgid ""
+"The keybinding used to move focus between panels and the desktop, using a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifocus phakathi kwendawo "
+"yolawulo nedesktop, kusetyenziswa ifestile yokukhetha okuvelayo. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqu sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"Ukuba useta okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:132
+msgid ""
+"The keybinding used to move focus between panels and the desktop, without a "
+"popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifocus phakathi kwendawo "
+"yolawulo nedesktop, ngaphandle kokusebenzisa ifestile yokukhetha okuvelayo. "
+"Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:133
+msgid ""
+"The keybinding used to move focus between windows without a popup window. "
+"(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifocus phakathi kweefestile "
+"ngaphandle kokusebenzisa ifestile yokukhetha okuvelayo. (Traditionally &lt;"
+"Alt&gt;Escape) Ukubamba iqhosha \"shift\" ngexa usebenzisa esi sidibanisi "
+"kubuyisela umva indlela yokuhamba. Ifomathi ibonakala \"&lt;Control&gt;a\" "
+"okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye "
+"sivumela oonombumba abakhulu okanye abancinci, kunye nezifinyezo ezinjengo "
+"\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring "
+"esisodwa \"disabled\", akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:134
+msgid ""
+"The keybinding used to move focus between windows, using a popup window. "
+"(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+"binding reverses the direction of movement. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuhambisa ifocus phakathi kweefestile, "
+"ngokusebenzisa ifestile yokukhetha okuvelayo. (Traditionally &lt;Alt&gt;Tab) "
+"Ukubamba iqhosha \"shift\" ngexa usebenzisa esi sidibanisi kubuyisela umva "
+"indlela yokuhamba. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye sivumela "
+"oonombumba abakhulu okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa "
+"\"disabled\", akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:135
+msgid ""
+"The keybinding used to toggle always on top. A window that is always on top "
+"will always be visible over other overlapping windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuqhobosha sihlala singentla. Ifestile "
+"ehlala ingasentla iya kuhlala ibonakala kwezinye iifestile ezingenanayo. "
+"Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:136
+msgid ""
+"The keybinding used to toggle fullscreen mode. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuqhobosha imowdi yescreen esigcweleyo. "
+"Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:137
+msgid ""
+"The keybinding used to toggle maximization. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuqhobosha ulwandiso. Ifomathi ibonakala "
+"\"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli "
+"ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye abancinci, "
+"kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". Ukuba "
+"umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho isidibanisi-"
+"qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:138
+msgid ""
+"The keybinding used to toggle shaded/unshaded state. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuqhobosha imeko ekhuhliweyo/"
+"engakhuhlwanga. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye sivumela "
+"oonombumba abakhulu okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa "
+"\"disabled\", akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:139
+msgid ""
+"The keybinding used to toggle whether the window is on all workspaces or "
+"just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+"Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+"and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you "
+"set the option to the special string \"disabled\", then there will be no "
+"keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukuqhobosha nokuba ifestile ikuzo zonke "
+"iindawo zokusebenzela okanye enye. Ifomathi ibonakala \"&lt;Control&gt;a\" "
+"or \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye "
+"sivumela oonombumba abakhulu okanye abancinci, kunye nezifinyezo ezinjengo "
+"\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring "
+"esisodwa \"disabled\", akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:140
+msgid ""
+"The keybinding used to unmaximize a window. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esisetyenziswa ukungandisi ifestile. Ifomathi ibonakala "
+"\"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli "
+"ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye abancinci, "
+"kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba "
+"umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho isidibanisi-"
+"qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:141
+msgid ""
+"The keybinding which display's the panel's \"Run Application\" dialog box. "
+"The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Isidibanisi-qhosha esibonisa ibhokisi yendawo yolawulo \"Run Application\". "
+"Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:142
+msgid ""
+"The keybinding which invokes a terminal. The format looks like \"&lt;"
+"Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esibiza itheminali. Ifomathi ibonakala \"&lt;Control&gt;a"
+"\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa "
+"kwaye sivumela oonombumba abakhulu okanye abancinci, kunye nezifinyezo "
+"ezinjengo \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". Ukuba umisela okunye "
+"kwistring esisodwa \"disabled\", akusayi kubakho isidibanisi-qhosha kweli "
+"nyathelo."
+
+#: ../src/marco.schemas.in.h:143
+msgid ""
+"The keybinding which invokes the panel's screenshot utility to take a "
+"screenshot of a window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+"Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or "
+"upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+"\". If you set the option to the special string \"disabled\", then there "
+"will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esibiza isibonelelo sescreenshot sendawo yolawulo "
+"kwifestile. Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba "
+"abakhulu okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne "
+"\"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa \"disabled\", "
+"akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:144
+msgid ""
+"The keybinding which invokes the panel's screenshot utility. The format "
+"looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+"parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Isidibanisi-qhosha esibiza isibonelelo sescreenshot sendawo yolawulo. "
+"Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:145
+msgid ""
+"The keybinding which shows the panel's main menu. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Isidibanisi-qhosha esibonisa eyona menyu yendawo yolawulo. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:146
+msgid "The name of a workspace."
+msgstr "Igama lendawo yokusebenzela."
+
+#: ../src/marco.schemas.in.h:147
+msgid "The screenshot command"
+msgstr "Umyalelo wescreenshot"
+
+#: ../src/marco.schemas.in.h:148
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "Umxholo umisa imbonakalo yemida yefestile, ititlebar, nokunye."
+
+#: ../src/marco.schemas.in.h:149
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Ukulibaziseka kwexesha ngaphambi kokunyusa ifestile xa auto_raise isetelwe "
+"kwinyani. Ulibaziseko lunikezwa kumawaka esekondi."
+
+#: ../src/marco.schemas.in.h:150
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Imowdi yefocus yefestile ibonisa indlela iifestile ezivulwa ngayo. Kukho "
+"iindlela ezintathu ezinokwenziwa ngayo; \"click\" uthetha ukuba iifestile "
+"kufuneka zicofwe ukuze kuqwalaselwe kuzo, \"sloppy\" kuthetha iifestile "
+"ziqwalaselwe xa imouse ingena kwifestile kunye \"mouse\" uthetha ukuba "
+"iifestile ziqwalaselwe xa imouse ingena kwifestile ize ingaqwalaselwa xa "
+"imouse ishiya ifestile."
+
+#: ../src/marco.schemas.in.h:151
+msgid "The window screenshot command"
+msgstr "Umyalelo wescreenshot sefestile"
+
+#: ../src/marco.schemas.in.h:152
+msgid ""
+"This keybinding changes whether a window is above or below other windows. If "
+"the window is covered by another window, it raises the window above other "
+"windows. If the window is already fully visible, it lowers the window below "
+"other windows. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+"&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+"case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". "
+"If you set the option to the special string \"disabled\", then there will be "
+"no keybinding for this action."
+msgstr ""
+"Esi sidibanisi-qhosha siyatshintsha noba ifestile ingentla okanye ngezantsi "
+"kwezinye iifestile. Ukuba ifestile yogqunywe yenye ifestile, yonyusa "
+"ifestile engasentla kwezinye iifestile. Ukuba ifestile sele ibonakala "
+"ngokupheleleyo, inciphisa ifestile engezantsi kwezinye iifestile. Ifomathi "
+"ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:153
+msgid ""
+"This keybinding lowers a window below other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Esi sidibanisi-qhosha sehlisa ifestile engezantsi kwezinye iifestile. "
+"Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:154
+msgid ""
+"This keybinding raises the window above other windows. The format looks like "
+"\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+"liberal and allows lower or upper case, and also abbreviations such as \"&lt;"
+"Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+"\"disabled\", then there will be no keybinding for this action."
+msgstr ""
+"Esi sidibanisi-qhosha senyusa ifestile engasentla kwezinye iifestile. "
+"Ifomathi ibonakala \"&lt;Control&gt;a\" okanye \"&lt;Shift&gt;&lt;Alt&gt;F1"
+"\". Isahluli ngezijungqe sinesisa kwaye sivumela oonombumba abakhulu okanye "
+"abancinci, kunye nezifinyezo ezinjengo \"&lt;Ctl&gt;\" ne \"&lt;Ctrl&gt;\". "
+"Ukuba umisela okunye kwistring esisodwa \"disabled\", akusayi kubakho "
+"isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:155
+msgid ""
+"This keybinding resizes a window to fill available horizontal space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Esi sidibanisi-qhosha silungisa ubungakanani ngokutsha befestile ukugcwalisa "
+"indawo ethe tyaba efumanekayo. Ifomathi ibonakala \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye sivumela "
+"oonombumba abakhulu okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;"
+"Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa "
+"\"disabled\", akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:156
+msgid ""
+"This keybinding resizes a window to fill available vertical space. The "
+"format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the "
+"option to the special string \"disabled\", then there will be no keybinding "
+"for this action."
+msgstr ""
+"Esi sidibanisi-qhosha silungisa ubungakanani ngokutsha befestile ukugcwalisa "
+"indawo ethe nkqo efumanekayo. Ifomathi ibonakala \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". Isahluli ngezijungqe sinesisa kwaye sivumela "
+"oonombumba abakhulu okanye abancinci, kunye nezifinyezo ezinjengo \"&lt;"
+"Ctl&gt;\" ne \"&lt;Ctrl&gt;\". Ukuba umisela okunye kwistring esisodwa "
+"\"disabled\", akusayi kubakho isidibanisi-qhosha kweli nyathelo."
+
+#: ../src/marco.schemas.in.h:157
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, and 'toggle_maximize' which will maximize/unmaximize the window."
+msgstr ""
+"Oku kumisa iziphumo zokucofa kabini kwititle bar. Okunye okukhoyo "
+"okusebenzayo yi- 'toggle_shade', neya kukhuhla/ingakhuhli ifestile "
+"ne-'toggle_maximize' neya kwandisa/kungandisi ifestile."
+
+#: ../src/marco.schemas.in.h:158
+msgid "Toggle always on top state"
+msgstr "I-toggle ihlala rhoqo ikwimeko ephezulu"
+
+#: ../src/marco.schemas.in.h:159
+msgid "Toggle fullscreen mode"
+msgstr "Imowdi yefullscreen ye-toggle"
+
+#: ../src/marco.schemas.in.h:160
+msgid "Toggle maximization state"
+msgstr "Imeko eyandisiweyo ye-toggle"
+
+#: ../src/marco.schemas.in.h:161
+msgid "Toggle shaded state"
+msgstr "Imeko ekhuhliweyo ye-toggle"
+
+#: ../src/marco.schemas.in.h:162
+msgid "Toggle window on all workspaces"
+msgstr "Ifestile ye-toggle kuzo zonke indawo zokusebenzela"
+
+#: ../src/marco.schemas.in.h:163
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments, or when 'audible bell' is off."
+msgstr ""
+"Ivula isalathisi esibonakalayo xa inkqubo yekhompyutha okanye inkqubo "
+"inikeza 'bell' okanye 'beep'; neziluncedo ekuveni nzima nokusetyenziswa "
+"kwiindawo ezinengxolo okanye xa i-'audible bell' ivaliwe."
+
+#: ../src/marco.schemas.in.h:164
+msgid "Unmaximize window"
+msgstr "Sukwandisa ifestile"
+
+#: ../src/marco.schemas.in.h:165
+msgid "Use standard system font in window titles"
+msgstr "Sebenzisa ifonti yenkqubo esemgangathweni kwizihloko zefestile"
+
+#: ../src/marco.schemas.in.h:166
+msgid "Visual Bell Type"
+msgstr "Udidi lweVisual Bell"
+
+#: ../src/marco.schemas.in.h:167
+msgid "Window focus mode"
+msgstr "Imowdi yefocus yefestile"
+
+#: ../src/marco.schemas.in.h:168
+msgid "Window title font"
+msgstr "Ifonti yesihloko sefestile"
+
+#: ../src/prefs.c:528 ../src/prefs.c:544 ../src/prefs.c:560 ../src/prefs.c:576
+#: ../src/prefs.c:592 ../src/prefs.c:612 ../src/prefs.c:628 ../src/prefs.c:644
+#: ../src/prefs.c:660 ../src/prefs.c:676 ../src/prefs.c:692 ../src/prefs.c:708
+#: ../src/prefs.c:724 ../src/prefs.c:741 ../src/prefs.c:757 ../src/prefs.c:773
+#: ../src/prefs.c:789 ../src/prefs.c:805 ../src/prefs.c:820 ../src/prefs.c:835
+#: ../src/prefs.c:850 ../src/prefs.c:866 ../src/prefs.c:882 ../src/prefs.c:898
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "Iqhosha i-MateConf \"%s\" limiselwe kudidi olungasebenziyo\n"
+
+#: ../src/prefs.c:943
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" ifunyenwe kwidatabase yesimo asiloxabiso elisebenzayo kwisilungisi "
+"seqhosha lemouse\n"
+
+#: ../src/prefs.c:967 ../src/prefs.c:1428
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "Iqhosha i-MateConf '%s' limiselwe kwixabiso elingasebenziyo\n"
+
+#: ../src/prefs.c:1145
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr ""
+"Ayikwazi kuhlula ngokwezijungqe inkcazelo ngefonti \"%s\" ukusuka kwiqhosha "
+"i-MateConf %s\n"
+
+#: ../src/prefs.c:1330
+#, c-format
+msgid ""
+"%d stored in MateConf key %s is not a reasonable number of workspaces, current "
+"maximum is %d\n"
+msgstr ""
+"%d igcinwe kwiqhosha MateConf %s asilo nani elifanelekileyo leendawo "
+"zokusebenzela, ubuninzi bangoku yi- %d\n"
+
+#: ../src/prefs.c:1390
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Ukusebenza jikelele kwiinkqubo ezophukileyo akusebenzi. Ezinye iinkqubo "
+"azisayi kuziphatha ngendlela efanelekileyo.\n"
+
+#: ../src/prefs.c:1455
+#, c-format
+msgid "%d stored in MateConf key %s is out of range 0 to %d\n"
+msgstr "%d igcinwe kwiqhosha MateConf %s alifumaneki 0 ukuya %d\n"
+
+#: ../src/prefs.c:1589
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Impazamo kumiselo lwenani leendawo zokusebenzela ukuya %d: %s\n"
+
+#: ../src/prefs.c:1833
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" funyenwe kwidatabase yesimo asiloxabiso elisebenzayo kwisidibanisi-"
+"qhosha \"%s\"\n"
+
+#: ../src/prefs.c:2187
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Impazamo kumiselo lwegama kwindawo yokusebenzela %d ukuya \"%s\": %s\n"
+
+#: ../src/resizepopup.c:126
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/screen.c:408
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Iscreen %d kumboniso '%s' asisebenzi\n"
+
+#: ../src/screen.c:424
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Iscreen %d kumboniso \"%s\" sele sinaye umanejala wefestile; zama "
+"ukusebenzisa --replace ukutshintsha umlawuli okhoyo wefestile.\n"
+
+#: ../src/screen.c:448
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr ""
+"Ayikwazi kufumana ukhetho lomlawuli wefestile kwiscreen %d somboniso \"%s\"\n"
+
+#: ../src/screen.c:506
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Iscreen %d kumboniso \"%s\" sele sinomlawuli wefestile\n"
+
+#: ../src/screen.c:716
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Ayikwazi kukhupha iscreen %d kumboniso \"%s\"\n"
+
+#: ../src/session.c:884 ../src/session.c:891
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Ayikwazi kwenza uvimba weefayili '%s': %s\n"
+
+#: ../src/session.c:901
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Ayikwazi kuvula ifayili yeseshini '%s' kubhalo: %s\n"
+
+#: ../src/session.c:1053
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Impazamo kwifayili yeseshini yobhalo '%s': %s\n"
+
+#: ../src/session.c:1058
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Impazamo kwifayili yeseshini yovalo '%s': %s\n"
+
+#: ../src/session.c:1133
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Ayikwazi kufunda ifayili yeseshini egciniweyo %s: %s\n"
+
+#: ../src/session.c:1168
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Ayikwazi ukwahlula ngezijungqe ifayili yeseshini egciniweyo: %s\n"
+
+#: ../src/session.c:1217
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr ""
+"<marco_session> ukubalelwa okuboniweyo kodwa sele siyenzile iseshini ye-ID"
+
+#: ../src/session.c:1230
+#, c-format
+msgid "Unknown attribute %s on <marco_session> element"
+msgstr "Ukubalelwa okungaziwa %s kumba we-<marco_session>"
+
+#: ../src/session.c:1247
+msgid "nested <window> tag"
+msgstr "itag esendlwaneni <window>"
+
+#: ../src/session.c:1305 ../src/session.c:1337
+#, c-format
+msgid "Unknown attribute %s on <window> element"
+msgstr "Ulwabelo olungaziwayo %s kwinto ethile <window> element"
+
+#: ../src/session.c:1409
+#, c-format
+msgid "Unknown attribute %s on <maximized> element"
+msgstr "Ulwabelo olungaziwayo %s ko <maximized> kokuthile"
+
+#: ../src/session.c:1469
+#, c-format
+msgid "Unknown attribute %s on <geometry> element"
+msgstr "Ulwabelo olungaziwayo %s ko <geometry> kokuthile"
+
+#: ../src/session.c:1489
+#, c-format
+msgid "Unknown element %s"
+msgstr "Izinto ezingaziwayo %s"
+
+#: ../src/session.c:1961
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Impazamo xa kuqaliswa imarco-dialog ukulumkisa ngeenkqubo ezingaxhasi "
+"ulawulo lweseshini: %s\n"
+
+#: ../src/theme-parser.c:224 ../src/theme-parser.c:242
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Ilayini %d unobumba %d: %s"
+
+#: ../src/theme-parser.c:396
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Ulwabelo \"%s\" luphindwe kabini kwinto enye <%s>"
+
+#: ../src/theme-parser.c:414 ../src/theme-parser.c:439
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Ulwabelo \"%s\" alusebenzi kwinto <%s> ekule meko"
+
+#: ../src/theme-parser.c:485
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "I-Integer %ld kufuneka ichaneke"
+
+#: ../src/theme-parser.c:493
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "I-Integer %ld inkulu kakhulu, ubukhulu yi-%d"
+
+#: ../src/theme-parser.c:521 ../src/theme-parser.c:602
+#: ../src/theme-parser.c:626
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Ayikwazi ukwahlula ngezijungqe \"%s\" njengenani lenqaku elibhabhayo"
+
+#: ../src/theme-parser.c:552
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Amaxabiso e-Boolean kufuneka \"true\" okanye \"false\" hayi \"%s\""
+
+#: ../src/theme-parser.c:572
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "I-engile kufuneka ibe phakathi ko-0.0 no-360.0, ibingu-%g\n"
+
+#: ../src/theme-parser.c:638
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr ""
+"I-Alpha kufuneka ibe phakathi ko-0.0 (ingabonakali) no-1.0 (ibe ngqindilili "
+"ngokupheleleyo), ibingu- %g\n"
+
+#: ../src/theme-parser.c:684
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Isikali sesihloko asisebenzi \"%s\" (kufuneka sibe sesinye se- xx-small,x-"
+"small,small,medium,large,x-large,xx-large)\n"
+
+#: ../src/theme-parser.c:729 ../src/theme-parser.c:737
+#: ../src/theme-parser.c:807 ../src/theme-parser.c:897
+#: ../src/theme-parser.c:935 ../src/theme-parser.c:1012
+#: ../src/theme-parser.c:1062 ../src/theme-parser.c:1070
+#: ../src/theme-parser.c:1126 ../src/theme-parser.c:1134
+#: ../src/theme-parser.c:2936 ../src/theme-parser.c:3025
+#: ../src/theme-parser.c:3032 ../src/theme-parser.c:3039
+#, c-format
+msgid "No \"%s\" attribute on <%s> element"
+msgstr "Akukho \"%s\" lwabelo kwinto <%s>"
+
+#: ../src/theme-parser.c:837 ../src/theme-parser.c:905
+#: ../src/theme-parser.c:943 ../src/theme-parser.c:1020
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> igama \"%s\" elisetyenziswe okwesibini"
+
+#: ../src/theme-parser.c:849 ../src/theme-parser.c:955
+#: ../src/theme-parser.c:1032
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> umzali \"%s\" akachazwanga"
+
+#: ../src/theme-parser.c:968
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> igeometry \"%s\" ayichazwanga"
+
+#: ../src/theme-parser.c:981
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> kufuneka ichaze igeometry okanye unozala onegeometry"
+
+#: ../src/theme-parser.c:1080
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Uhlobo olungaziwayo \"%s\" on <%s>"
+
+#: ../src/theme-parser.c:1091
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Esingaziwayo style_set \"%s\" on <%s> kwinto"
+
+#: ../src/theme-parser.c:1099
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Uhlobo lwefestile \"%s\" sele lwabelwe umiselo lohlobo"
+
+#: ../src/theme-parser.c:1143
+#, c-format
+msgid "Unknown function \"%s\" for menu icon"
+msgstr "Umsebenzi ongaziwayo \"%s\" womfanekiso ongumqondiso wemenyu"
+
+#: ../src/theme-parser.c:1152
+#, c-format
+msgid "Unknown state \"%s\" for menu icon"
+msgstr "Imeko engaziwayo \"%s\" kumfanekiso ongumqondiso kwimenyu"
+
+#: ../src/theme-parser.c:1160
+#, c-format
+msgid "Theme already has a menu icon for function %s state %s"
+msgstr "Umxholo sele unomfanekiso ongumqondios wemenyu kumsebenzi %s isimo %s"
+
+#: ../src/theme-parser.c:1177 ../src/theme-parser.c:3244
+#: ../src/theme-parser.c:3323
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Akukho <draw_ops> negama \"%s\" lichaziwe"
+
+#: ../src/theme-parser.c:1192 ../src/theme-parser.c:1256
+#: ../src/theme-parser.c:1545 ../src/theme-parser.c:3124
+#: ../src/theme-parser.c:3178 ../src/theme-parser.c:3338
+#: ../src/theme-parser.c:3515 ../src/theme-parser.c:3553
+#: ../src/theme-parser.c:3591 ../src/theme-parser.c:3629
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "Into <%s> ayivunyelwa ngezantsi <%s>"
+
+#: ../src/theme-parser.c:1282 ../src/theme-parser.c:1369
+#: ../src/theme-parser.c:1439
+#, c-format
+msgid "No \"name\" attribute on element <%s>"
+msgstr "Akukho \"name\" lolwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1289 ../src/theme-parser.c:1376
+#, c-format
+msgid "No \"value\" attribute on element <%s>"
+msgstr "Akukho \"value\" yolwabelo kwinto <%s>"
+
+#: ../src/theme-parser.c:1320 ../src/theme-parser.c:1334
+#: ../src/theme-parser.c:1393
+msgid ""
+"Cannot specify both button_width/button_height and aspect ratio for buttons"
+msgstr ""
+"Ayikwazi kubalula i-button_width/button_height nezinga lengqiqo kumaqhosha"
+
+#: ../src/theme-parser.c:1343
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "Umgama \"%s\" awaziwa"
+
+#: ../src/theme-parser.c:1402
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "Izinga lengqiqo \"%s\" alaziwa"
+
+#: ../src/theme-parser.c:1446
+#, c-format
+msgid "No \"top\" attribute on element <%s>"
+msgstr "Akukho \"top\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1453
+#, c-format
+msgid "No \"bottom\" attribute on element <%s>"
+msgstr "Akukho \"bottom\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1460
+#, c-format
+msgid "No \"left\" attribute on element <%s>"
+msgstr "Akukho \"left\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1467
+#, c-format
+msgid "No \"right\" attribute on element <%s>"
+msgstr "Akukho \"right\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1499
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Umda \"%s\" awaziwa"
+
+#: ../src/theme-parser.c:1655 ../src/theme-parser.c:1765
+#: ../src/theme-parser.c:1868 ../src/theme-parser.c:2055
+#: ../src/theme-parser.c:2869
+#, c-format
+msgid "No \"color\" attribute on element <%s>"
+msgstr "Akukho \"color\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1662
+#, c-format
+msgid "No \"x1\" attribute on element <%s>"
+msgstr "Akukho \"x1\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1669 ../src/theme-parser.c:2714
+#, c-format
+msgid "No \"y1\" attribute on element <%s>"
+msgstr "Akukho \"y1\" alwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1676
+#, c-format
+msgid "No \"x2\" attribute on element <%s>"
+msgstr "Akukho \"x2\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1683 ../src/theme-parser.c:2721
+#, c-format
+msgid "No \"y2\" attribute on element <%s>"
+msgstr "Akukho \"y2\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1772 ../src/theme-parser.c:1875
+#: ../src/theme-parser.c:1981 ../src/theme-parser.c:2062
+#: ../src/theme-parser.c:2168 ../src/theme-parser.c:2266
+#: ../src/theme-parser.c:2483 ../src/theme-parser.c:2609
+#: ../src/theme-parser.c:2707 ../src/theme-parser.c:2781
+#: ../src/theme-parser.c:2876
+#, c-format
+msgid "No \"x\" attribute on element <%s>"
+msgstr "Akukho \"x\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1779 ../src/theme-parser.c:1882
+#: ../src/theme-parser.c:1988 ../src/theme-parser.c:2069
+#: ../src/theme-parser.c:2175 ../src/theme-parser.c:2273
+#: ../src/theme-parser.c:2490 ../src/theme-parser.c:2616
+#: ../src/theme-parser.c:2788 ../src/theme-parser.c:2883
+#, c-format
+msgid "No \"y\" attribute on element <%s>"
+msgstr "Akukho \"y\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1786 ../src/theme-parser.c:1889
+#: ../src/theme-parser.c:1995 ../src/theme-parser.c:2076
+#: ../src/theme-parser.c:2182 ../src/theme-parser.c:2280
+#: ../src/theme-parser.c:2497 ../src/theme-parser.c:2623
+#: ../src/theme-parser.c:2795
+#, c-format
+msgid "No \"width\" attribute on element <%s>"
+msgstr "Akukho \"width\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1793 ../src/theme-parser.c:1896
+#: ../src/theme-parser.c:2002 ../src/theme-parser.c:2083
+#: ../src/theme-parser.c:2189 ../src/theme-parser.c:2287
+#: ../src/theme-parser.c:2504 ../src/theme-parser.c:2630
+#: ../src/theme-parser.c:2802
+#, c-format
+msgid "No \"height\" attribute on element <%s>"
+msgstr "Akukho \"height\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1903
+#, c-format
+msgid "No \"start_angle\" attribute on element <%s>"
+msgstr "Akukho \"start_angle\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:1910
+#, c-format
+msgid "No \"extent_angle\" attribute on element <%s>"
+msgstr "Akukho \"extent_angle\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:2090
+#, c-format
+msgid "No \"alpha\" attribute on element <%s>"
+msgstr "Akukho \"alpha\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:2161
+#, c-format
+msgid "No \"type\" attribute on element <%s>"
+msgstr "Akukho \"type\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:2209
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Ayiliqondanga ixabiso \"%s\" lohlobo lokuthambeka"
+
+#: ../src/theme-parser.c:2294
+#, c-format
+msgid "No \"filename\" attribute on element <%s>"
+msgstr "Akukho \"filename\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:2319 ../src/theme-parser.c:2827
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Ayiluqondanga uhlobo logcwaliso \"%s\" kwinto <%s>"
+
+#: ../src/theme-parser.c:2462 ../src/theme-parser.c:2595
+#: ../src/theme-parser.c:2700
+#, c-format
+msgid "No \"state\" attribute on element <%s>"
+msgstr "Akukho \"state\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:2469 ../src/theme-parser.c:2602
+#, c-format
+msgid "No \"shadow\" attribute on element <%s>"
+msgstr "Akukho \"shadow\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:2476
+#, c-format
+msgid "No \"arrow\" attribute on element <%s>"
+msgstr "Akukho \"arrow\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:2529 ../src/theme-parser.c:2651
+#: ../src/theme-parser.c:2739
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Ayiqondekanga imeko \"%s\" yento <%s>"
+
+#: ../src/theme-parser.c:2539 ../src/theme-parser.c:2661
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Ayikuqondanga ukukhuhleka \"%s\" kwinto <%s>"
+
+#: ../src/theme-parser.c:2549
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Ayisiqondanga isalathisi \"%s\" kwinto <%s>"
+
+#: ../src/theme-parser.c:2962 ../src/theme-parser.c:3078
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Akukho <draw_ops> ebiziweyo \"%s\" echaziweyo"
+
+#: ../src/theme-parser.c:2974 ../src/theme-parser.c:3090
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Ukuquka draw_ops \"%s\" apha kuya kuyila isalathisi sesetyhula"
+
+#: ../src/theme-parser.c:3153
+#, c-format
+msgid "No \"value\" attribute on <%s> element"
+msgstr "Akukho \"value\" lwabiwo <%s> kwinto"
+
+#: ../src/theme-parser.c:3210
+#, c-format
+msgid "No \"position\" attribute on <%s> element"
+msgstr "Akukho \"position\" lwabiwo <%s> kwinto"
+
+#: ../src/theme-parser.c:3219
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Indawo engaziwayo \"%s\" kwisuntswana lesakhelo"
+
+#: ../src/theme-parser.c:3227
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Isitayile sobume sele sikhona sinesuntswana kwindawo %s"
+
+#: ../src/theme-parser.c:3272
+#, c-format
+msgid "No \"function\" attribute on <%s> element"
+msgstr "Akukho \"function\" lwabiwo <%s> kwinto"
+
+#: ../src/theme-parser.c:3280 ../src/theme-parser.c:3384
+#, c-format
+msgid "No \"state\" attribute on <%s> element"
+msgstr "Akukho \"state\" lwabiwo kwinto <%s>"
+
+#: ../src/theme-parser.c:3289
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Umsebenzi ongaziwayo \"%s\" kwiqhosha"
+
+#: ../src/theme-parser.c:3298
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Imeko engaziwayo \"%s\" kwiqhosha"
+
+#: ../src/theme-parser.c:3306
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Isitayili sobume sele sineqhosha kumsebenzi %s kwimeko %s"
+
+#: ../src/theme-parser.c:3376
+#, c-format
+msgid "No \"focus\" attribute on <%s> element"
+msgstr "Akukho \"focus\" kulwabiwo lwento <%s>"
+
+#: ../src/theme-parser.c:3392
+#, c-format
+msgid "No \"style\" attribute on <%s> element"
+msgstr "Akukho \"style\" kulwabiwo lwento <%s>"
+
+#: ../src/theme-parser.c:3401
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" asilo xabiso elisebenzayo kulwabiwo logqaliselo"
+
+#: ../src/theme-parser.c:3410
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" asilo xabiso elisebenzayo kulwabiwo lwemeko"
+
+#: ../src/theme-parser.c:3420
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "Ubume obaziwa \"%s\" abuchazwanga"
+
+#: ../src/theme-parser.c:3430
+#, c-format
+msgid "No \"resize\" attribute on <%s> element"
+msgstr "Akukho \"resize\" kulwabiwo lwento <%s>"
+
+#: ../src/theme-parser.c:3440
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" asilo xabiso elisebenzayo kulwabiwo lobungakanani"
+
+#: ../src/theme-parser.c:3450
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Ayifanele kuba \"resize\" nolwabiwo <%s> kwinto ekwiimeko ezandisiweyo/"
+"khuhliweyo"
+
+#: ../src/theme-parser.c:3464
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "Ubume sele bubalulwe kwimeko %s ubungakanani %s ugqaliselo %s"
+
+#: ../src/theme-parser.c:3475 ../src/theme-parser.c:3486
+#: ../src/theme-parser.c:3497
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "Ubume sele bubalulwe kwimeko %s ugqaliselo %s"
+
+#: ../src/theme-parser.c:3536
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Azinakubambini i-draw_ops kwintwana <piece> (umxholo ubalulwe draw_ops "
+"kulwabiwo kwakunye <draw_ops> kwinto, okanye izinto ezibaluliweyo ezimbini)"
+
+#: ../src/theme-parser.c:3574
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Azinakubambini i-draw_ops kwintwana <button> (umxholo ubalulwe draw_ops "
+"kulwabiwo kwakunye <draw_ops> kwinto, okanye izinto ezibaluliweyo ezimbini)"
+
+#: ../src/theme-parser.c:3612
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Azinakubambini i-draw_ops kwinto <menu_icon> (umxholo ubalulwe draw_ops "
+"kulwabiwo kwakunye <draw_ops> kwinto, okanye izinto ezibaluliweyo ezimbini)"
+
+#: ../src/theme-parser.c:3659
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr ""
+"Eyona nto ingaphandle kumxholo kufuneka ibe yi- <marco_theme> hayi <%s>"
+
+#: ../src/theme-parser.c:3679
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr ""
+"Into <%s> ayivunyelwanga ngaphakathi kwenkcazelo ye-name/author/date/"
+"description"
+
+#: ../src/theme-parser.c:3684
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Into <%s> ayivunyelwanga ngaphakathi <constant> kwento"
+
+#: ../src/theme-parser.c:3696
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr ""
+"Into <%s> ayivunyelwanga ngaphakathi kwe-distance/border/aspect_ratio kwinto"
+
+#: ../src/theme-parser.c:3718
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Into <%s> ayivunyelwanga ngaphakathi kwento yomsebenzi olinganayo"
+
+#: ../src/theme-parser.c:3728 ../src/theme-parser.c:3758
+#: ../src/theme-parser.c:3763
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Into <%s> ayivunyelwa ngaphakathi <%s> kwento"
+
+#: ../src/theme-parser.c:3984
+msgid "No draw_ops provided for frame piece"
+msgstr "Akukho draw_ops ezinikezelwe kwisuntswana lefreym"
+
+#: ../src/theme-parser.c:3999
+msgid "No draw_ops provided for button"
+msgstr "Akukho draw_ops ezinikezelwe kwiqhosha"
+
+#: ../src/theme-parser.c:4014
+msgid "No draw_ops provided for menu icon"
+msgstr "Akukho draw_ops ezinikezelwe kwi-aykhoni yemenyu"
+
+#: ../src/theme-parser.c:4054
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "Akukho magama avunyelweyo ngaphakathi kwento <%s>"
+
+#: ../src/theme-parser.c:4109
+msgid "<name> specified twice for this theme"
+msgstr "<name> libalulwe kabini kulo mxholo"
+
+#: ../src/theme-parser.c:4120
+msgid "<author> specified twice for this theme"
+msgstr "<author> libalulwe kabini kulo mxholo"
+
+#: ../src/theme-parser.c:4131
+msgid "<copyright> specified twice for this theme"
+msgstr "<copyright> libalulwe kabini kulo mxholo"
+
+#: ../src/theme-parser.c:4142
+msgid "<date> specified twice for this theme"
+msgstr "<date> libalulwe kabini kulo mxholo"
+
+#: ../src/theme-parser.c:4153
+msgid "<description> specified twice for this theme"
+msgstr "<description> libalulwe kabini kulo mxholo"
+
+#: ../src/theme-parser.c:4348
+#, c-format
+msgid "Failed to read theme from file %s: %s\n"
+msgstr "Ayikwazi kufunda umxholo kwifayili %s: %s\n"
+
+#: ../src/theme-parser.c:4403
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Ifayili yomxholo %s ayiqulathanga ingcambu <marco_theme> kwinto"
+
+#: ../src/theme-viewer.c:70
+msgid "/_Windows"
+msgstr "/_Iifestile"
+
+#: ../src/theme-viewer.c:71
+msgid "/Windows/tearoff"
+msgstr "/Iifestile/susa"
+
+#: ../src/theme-viewer.c:72
+msgid "/Windows/_Dialog"
+msgstr "/Iifestile/_Unxibelelwano"
+
+#: ../src/theme-viewer.c:73
+msgid "/Windows/_Modal dialog"
+msgstr "/Iifestile/_Unxibelelwano lwenkqubo"
+
+#: ../src/theme-viewer.c:74
+msgid "/Windows/_Utility"
+msgstr "/Iifestile/_Ukuba luncedo"
+
+#: ../src/theme-viewer.c:75
+msgid "/Windows/_Splashscreen"
+msgstr "/Iifestile/I_skrini sokutsala amehlo"
+
+#: ../src/theme-viewer.c:76
+msgid "/Windows/_Top dock"
+msgstr "/Iifestile/Idokisi eli_phezulu"
+
+#: ../src/theme-viewer.c:77
+msgid "/Windows/_Bottom dock"
+msgstr "/Iifestile/Idokisi eli_sezantsi"
+
+#: ../src/theme-viewer.c:78
+msgid "/Windows/_Left dock"
+msgstr "/Iifestile/Idokisi elisek_hohlo"
+
+#: ../src/theme-viewer.c:79
+msgid "/Windows/_Right dock"
+msgstr "/Iifestile/Idokisi elisek_unene"
+
+#: ../src/theme-viewer.c:80
+msgid "/Windows/_All docks"
+msgstr "/Iifestile/_Onke amadokisi"
+
+#: ../src/theme-viewer.c:81
+msgid "/Windows/Des_ktop"
+msgstr "/Iifestile/i-Des_ktop"
+
+#: ../src/theme-viewer.c:131
+msgid "Open another one of these windows"
+msgstr "Vula enye yezi festile"
+
+#: ../src/theme-viewer.c:138
+msgid "This is a demo button with an 'open' icon"
+msgstr "Lo ngumboniso weqhosha eline-'open' aykhoni"
+
+#: ../src/theme-viewer.c:145
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Lo ngumboniso weqhosha eline-'quit' aykhoni"
+
+#: ../src/theme-viewer.c:241
+msgid "This is a sample message in a sample dialog"
+msgstr "Lo ngumzekelo womyalezo kwibhokisi yomyalezo"
+
+#: ../src/theme-viewer.c:324
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Ulandelo lwemenyu olungachanekanga %d\n"
+
+#: ../src/theme-viewer.c:358
+msgid "Border-only window"
+msgstr "Ifestile engumda kuphela"
+
+#: ../src/theme-viewer.c:360
+msgid "Bar"
+msgstr "Ibar"
+
+#: ../src/theme-viewer.c:377
+msgid "Normal Application Window"
+msgstr "IFestile yeNkqubo eQhelekileyo"
+
+#: ../src/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Ibhokisi yoNxibelelwano"
+
+#: ../src/theme-viewer.c:387
+msgid "Modal Dialog Box"
+msgstr "Isihloko seBhokisi yoNxibelelwano"
+
+#: ../src/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "I-Utility Palette"
+
+#: ../src/theme-viewer.c:397
+msgid "Torn-off Menu"
+msgstr "IMenyu ye-Torn-off"
+
+#: ../src/theme-viewer.c:402
+msgid "Border"
+msgstr "Umda"
+
+#: ../src/theme-viewer.c:731
+#, c-format
+msgid "Button layout test %d"
+msgstr "Uvavanyo lweqhosha %d"
+
+#: ../src/theme-viewer.c:760
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g milisekondi ukuzoba isakhelo esinye sefestile"
+
+#: ../src/theme-viewer.c:803
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Usetyenziso: marco-theme-viewer [IGAMA LOMXHOLO]\n"
+
+#: ../src/theme-viewer.c:810
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Impazamo kufako lomxholo: %s\n"
+
+#: ../src/theme-viewer.c:816
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Umxholo ofakiwe \"%s\" nge- %g sekondi\n"
+
+#: ../src/theme-viewer.c:839
+msgid "Normal Title Font"
+msgstr "IFonti yeSihloko esiQhelekileyo"
+
+#: ../src/theme-viewer.c:845
+msgid "Small Title Font"
+msgstr "IFonti yeSihloko esiNcinci"
+
+#: ../src/theme-viewer.c:851
+msgid "Large Title Font"
+msgstr "IFonti yeSihloko esiKhulu"
+
+#: ../src/theme-viewer.c:856
+msgid "Button Layouts"
+msgstr "Uyilo lwamaQhosha"
+
+#: ../src/theme-viewer.c:861
+msgid "Benchmark"
+msgstr "Umlinganiselo"
+
+#: ../src/theme-viewer.c:908
+msgid "Window Title Goes Here"
+msgstr "ISihloko seFestile Siya Apha"
+
+#: ../src/theme-viewer.c:1012
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Kutsalwe %d iifreym %g kwicala lomxhasi iisekondi (%g imilisekondi "
+"kwisakhelo ngasinye) kunye %g iisekondi kwixesha lekloko yodonga ukuquka "
+"oovimba beseva X (%g imilisekondi kwisakhelo nganye)\n"
+
+#: ../src/theme-viewer.c:1227
+msgid "position expression test returned TRUE but set error"
+msgstr "uvavanyo oluchaza indawo lubuyiswe LUYINYANI kodwa lumiselwe nempazamo"
+
+#: ../src/theme-viewer.c:1229
+msgid "position expression test returned FALSE but didn't set error"
+msgstr ""
+"uvavanyo oluchaza indawo lubuyiswe LUBUBUXOKI kodwa lungamiselwanga "
+"ngempazamo"
+
+#: ../src/theme-viewer.c:1233
+msgid "Error was expected but none given"
+msgstr "Impazamo ibilindelekile kodwa ayikho enikiweyo"
+
+#: ../src/theme-viewer.c:1235
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "Impazamo %d ibilindelekile kodwa %d enikiweyo"
+
+#: ../src/theme-viewer.c:1241
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "Impazamo ayilindelekanga kodwa enye yabuyiswa: %s"
+
+#: ../src/theme-viewer.c:1245
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x ixabiso yaba %d, %d lalilindelekile"
+
+#: ../src/theme-viewer.c:1248
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y ixabiso yaba %d, %d lalilindelekile"
+
+#: ../src/theme-viewer.c:1310
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d ulungelelaniso lweentetho eyahlulwe %g ngeesekondi (%g i-avareji "
+"yeesekondi)\n"
+
+#: ../src/theme.c:202
+msgid "top"
+msgstr "phezulu"
+
+#: ../src/theme.c:204
+msgid "bottom"
+msgstr "ezantsi"
+
+#: ../src/theme.c:206
+msgid "left"
+msgstr "ekhohlo"
+
+#: ../src/theme.c:208
+msgid "right"
+msgstr "ekunene"
+
+#: ../src/theme.c:222
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "isakhelo se-geometry asibaluli \"%s\" umlinganiso"
+
+#: ../src/theme.c:241
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "isakhelo se-geometry ayibaluli umlinganiso \"%s\" womda \"%s\""
+
+#: ../src/theme.c:278
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Izinga lomba wamaqhosha %g alifanelekanga"
+
+#: ../src/theme.c:290
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Isakhelo se-geometry ayibaluli ubungakanani bamaqhosha"
+
+#: ../src/theme.c:843
+msgid "Gradients should have at least two colors"
+msgstr "Ukuthambeka kufuneka kube nemibala emibini ubuncinane"
+
+#: ../src/theme.c:969
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Ubalulo lombala we-GTK kufuneka ube nemeko kwizibiyeli, umz. gtk:fg[NORMAL] "
+"apho u-QHELEKILEYO eyimeko; alunokwahlula njengezijungqu \"%s\""
+
+#: ../src/theme.c:983
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Ubalulo lombala we-GTK kufuneka ube nesibiyeli esikufuphi emva kwemeko, umz. "
+"gtk:fg[NORMAL] apho u-QHELEKILEYO eyimeko; alunokwahlula njengezijungqe \"%s"
+"\""
+
+#: ../src/theme.c:994
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Ayiqondekanga imeko \"%s\" kubalulo lombala"
+
+#: ../src/theme.c:1007
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Aliqondeki icandelo lombala \"%s\" kubalulo lombala"
+
+#: ../src/theme.c:1037
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Ifomathi yokudibana yi- \"blend/bg_color/fg_color/alpha\", \"%s\" "
+"ayifaneleki kwifomathi"
+
+#: ../src/theme.c:1048
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Ayikwazi kwahlula ixabiso le-alpha \"%s\" kumbala odityanisiweyo"
+
+#: ../src/theme.c:1058
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr ""
+"Ixabiso le-alpha \"%s\" kumbala odityanisiweyo alikho phakathi ko-0.0 no-1.0"
+
+#: ../src/theme.c:1105
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Ifomathi yokhuhlo yi- \"shade/base_color/factor\", \"%s\" ayifaneleki "
+"kwifomathi"
+
+#: ../src/theme.c:1116
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Ayikwazi kwahlula ukhuhleko \"%s\" kumbala okhuhliweyo"
+
+#: ../src/theme.c:1126
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Umba wokhuhleko \"%s\" kumbala okhuhliweyo uyalandula"
+
+#: ../src/theme.c:1155
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Ayikwazi kwahlula umbala \"%s\""
+
+#: ../src/theme.c:1417
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Intetho elungelelanisiweyo iqulathe unobumba '%s' ongavumelekanga"
+
+#: ../src/theme.c:1444
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr ""
+"Intetho elungelelanisiweyo iqulathe inombolo yenqaku elibhabhayo '%s' "
+"elingenakwahlulwa"
+
+#: ../src/theme.c:1458
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Intetho elungelelanisiweyo iqulathe i-integer '%s' engenokohlulwa"
+
+#: ../src/theme.c:1525
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr ""
+"Intetho elungelelanisiweyo iqulathe umsebenzisi ongaziwa ekuqaleni kwala "
+"magama: \"%s\""
+
+#: ../src/theme.c:1582
+msgid "Coordinate expression was empty or not understood"
+msgstr "Intetho elungelelanisiweyo ibingenanto okanye ingaqondwa"
+
+#: ../src/theme.c:1725 ../src/theme.c:1735 ../src/theme.c:1769
+msgid "Coordinate expression results in division by zero"
+msgstr "Intetho elungelelanisiweyo ibangela ulwahlulo ngozero"
+
+#: ../src/theme.c:1777
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Intetho elungelelanisiweyo izama ukusebenzisa i-mod operator kwinani lenqaku "
+"elibhabhayo"
+
+#: ../src/theme.c:1834
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr ""
+"Intetho elungelelanisiweyo inomsebenzisi \"%s\" apho i-operand yayilindeleke "
+"khona"
+
+#: ../src/theme.c:1843
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr ""
+"Intetho elungelelanisiweyo ine operand apho umsebenzisi wayelindeleke khona"
+
+#: ../src/theme.c:1851
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Intetho elungelelanisiweyo iphele kumsebenzisi ingeyiyo i-operand"
+
+#: ../src/theme.c:1861
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Intetho elungelelanisiweyo inomsebenzisi \"%c\" olandela umsebenzisi \"%c\" "
+"ngaphandle kwe-operand phakathi kwabo"
+
+#: ../src/theme.c:1980
+msgid ""
+"Coordinate expression parser overflowed its buffer, this is really a "
+"Marco bug, but are you sure you need a huge expression like that?"
+msgstr ""
+"Intetho elungelelanisiweyo umahluli ngezijungqe engaphezulu kwesigcini "
+"sethutyana, esi sisiphene senene seMarco kodwa uqinisekile ufuna intetho "
+"enkulu kanjalo?"
+
+#: ../src/theme.c:2009
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr ""
+"Intetho elungelelanisiweyo enesivakalisi esiphakathi kwesinye esikufuphi "
+"nezingavulekanga"
+
+#: ../src/theme.c:2072
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr ""
+"Intetho elungelelanisiweyo enokuguqu-guquka okungaziwayo okanye ukungaguquki "
+"\"%s\""
+
+#: ../src/theme.c:2129
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr ""
+"Intetho elungelelanisiweyo enesivakalisi esiphakathi kwesinye esivulekileyo "
+"nesingavalekanga"
+
+#: ../src/theme.c:2140
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr ""
+"Intetho elungelelanisiweyo akubonakali inabasebenzisi okanye ii-operand"
+
+#: ../src/theme.c:2384 ../src/theme.c:2406 ../src/theme.c:2427
+#, c-format
+msgid "Theme contained an expression \"%s\" that resulted in an error: %s\n"
+msgstr "Umxholo uqulathe intetho \"%s\" ebangele impazamo: %s\n"
+
+#: ../src/theme.c:3913
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> kufuneka "
+"ichazwe kwesi sitayili sefreym"
+
+#: ../src/theme.c:4363 ../src/theme.c:4395
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"Ilahlekile <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/"
+">"
+
+#: ../src/theme.c:4446
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Ayiphumeleli ukufaka umxholo \"%s\": %s\n"
+
+#: ../src/theme.c:4592 ../src/theme.c:4599 ../src/theme.c:4606
+#: ../src/theme.c:4613 ../src/theme.c:4620
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Akukho <%s> miselo lomxholo \"%s\""
+
+#: ../src/theme.c:4630
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Akukho sitayili esimiselwe uhlobo lwefestile \"%s\" kumxholo \"%s\", yongeza "
+"<window type=\"%s\" style_set=\"whatever\"/> into"
+
+#: ../src/theme.c:4652
+#, c-format
+msgid ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this theme"
+msgstr ""
+"<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> kufuneka "
+"ichazwe kulo mxholo"
+
+#: ../src/theme.c:5041 ../src/theme.c:5103
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr ""
+"Isixa esichaziweyo somsebenzisi kufuneka siqale ngonombumba omkhulu; \"%s\" "
+"akunjalo"
+
+#: ../src/theme.c:5049 ../src/theme.c:5111
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "Isixa \"%s\" sele sichaziwe"
+
+#: ../src/util.c:93
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Ayikwazi ukuvula idebug log: %s\n"
+
+#: ../src/util.c:103
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Ayikwazi ku-fdopen() ifayili yelog %s: %s\n"
+
+#: ../src/util.c:109
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Ifayili yelog evuliweyo %s\n"
+
+#: ../src/util.c:203
+msgid "Window manager: "
+msgstr "Umlawuli wefestile: "
+
+#: ../src/util.c:349
+msgid "Bug in window manager: "
+msgstr "Isiphene kumlawuli wefestile: "
+
+#: ../src/util.c:378
+msgid "Window manager warning: "
+msgstr "Isilumkiso kumlawuli wefestile: "
+
+#: ../src/util.c:402
+msgid "Window manager error: "
+msgstr "Impazamo kumlawuli wefestile: "
+
+#: ../src/window-props.c:162
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %ld\n"
+msgstr "Inkqubo imisela i-bogus _NET_WM_PID %ld\n"
+
+#. first time through
+#: ../src/window.c:5205
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Ifestile %s imisele SM_CLIENT_ID ngokwayo, endaweni yefestile i-"
+"WM_CLIENT_LEADER njengoko kuphawulwe kwi-ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/window.c:5876
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Ifestile %s imisele MWM ingcebiso eyalathisa ukuba ayinabungakanani, kodwa "
+"isete ubungakanani obungephi %d x %d nobungakanani obukhulu %d x %d; oku "
+"akwenzi ntsingiselo.\n"
+
+#: ../src/xprops.c:153
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Ifestile 0x%lx inepropati %s\n"
+"eyayilindeleke ukuba ibenohlobo %s lwefomathi %d\n"
+"kodwa inodidi %s lwefomathi %d n_items %d.\n"
+"Oku sisiphene senkqubo, ingesiso isiphene somlawuli wefestile.\n"
+"Ifestile inesihloko=\"%s\" udidi=\"%s\" igama=\"%s\"\n"
+
+#: ../src/xprops.c:399
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Ipropati %s kwifestile 0x%lx iqulathe engasebenziyo i-UTF-8\n"
+
+#: ../src/xprops.c:482
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Ipropati %s kwifestile 0x%lx iqulathe engasebenziyo i-UTF-8 kumba %d "
+"kuluhlu\n"
diff --git a/po/yo.po b/po/yo.po
new file mode 100644
index 00000000..a58333b7
--- /dev/null
+++ b/po/yo.po
@@ -0,0 +1,3493 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: marco\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2009-01-17 08:21+0000\n"
+"PO-Revision-Date: 2006-08-09 13:26+0100\n"
+"Last-Translator: Fajuyitan, Sunday Ayo <[email protected]>\n"
+"Language-Team: Yoruba\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.10\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+#, fuzzy
+msgid "Desktop"
+msgstr "òkè"
+
+#: ../src/50-marco-key.xml.in.h:1
+#, fuzzy
+msgid "Window Management"
+msgstr "Alábòójútó fèrèsé: "
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr ""
+
+#: ../src/core/delete.c:70 ../src/core/delete.c:97
+#: ../src/ui/marco-dialog.c:50 ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "Kò lè ṣètò \"%s\" gẹ́gẹ́ bíi ítíjà"
+
+#: ../src/core/delete.c:77 ../src/core/delete.c:104
+#: ../src/ui/marco-dialog.c:57 ../src/ui/theme-parser.c:531
+#: ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "Àwọn àmì-ìkọ tírélìn kò yé \"%s\" nínú fọ́nrán \"%s\""
+
+#: ../src/core/delete.c:135
+#, c-format
+msgid "Failed to parse message \"%s\" from dialog process\n"
+msgstr "Ó kùnà láti ṣètò iṣẹ́ rírán \"%s\" láti inú ìlànà onísọ̀rọ̀gbèsi\n"
+
+#: ../src/core/delete.c:253
+#, c-format
+msgid "Error reading from dialog display process: %s\n"
+msgstr "Àṣìṣe kíkà láti ìlànà ìṣàfihàn onísọ̀rọ̀gbèsì: %s\n"
+
+#: ../src/core/delete.c:336
+#, c-format
+msgid ""
+"Error launching marco-dialog to ask about killing an application: %s\n"
+msgstr ""
+"Àṣìṣe ìfilọ́lẹ̀ marco-onísọ̀rọ̀gbèsì á bèrè nípa pípa ìṣàmúlò-ètò kan: %s\n"
+
+#: ../src/core/delete.c:445
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "Ó kùnà láti rí orúkọ-agbàlejò: %s\n"
+
+#: ../src/core/display.c:256
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr ""
+
+#: ../src/core/display.c:334
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "Ó kùnà láti ṣí ìṣàfihàn Ètò Fèrèsé X '%s'\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"Ó sọ ìdarapọ̀ nù fún ìsàfihàn '%s';\n"
+"Ó ṣeé ṣe kí a pa sáfà X tàbí o pa/ba alábòójútó fèrèsé náà jẹ́.\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "Àṣìṣe IO ńlá %d (%s) lórí ìṣàfihàn '%s'.\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr ""
+"Ọ̀pọ̀lọpọ̀ àtòjọ-ètò mìíràn ló ń ti ń lo bọ́tìnì %s tẹ́lẹ̀ pẹ́lú àwọn aṣàtúntò %x "
+"gẹ́gẹ́ bíi aṣẹ̀dá-ìtọ́ka\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, fuzzy, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"Àṣìṣe kan ń rọ́ọ̀nù \"%s\":\n"
+"%s."
+
+#: ../src/core/keybindings.c:2381
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "A kò tíì soríkì àṣe %d kankan.\n"
+
+#: ../src/core/keybindings.c:3335
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "A kò tíì soríkì àṣẹ támínà kankan.\n"
+
+#: ../src/core/main.c:116
+#, fuzzy, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-2008 Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"Àṣẹ lórí-àrà (C) 2001-2002 Havoc Pennington, Red Hat, Inc., àti àwọn mìíràn\n"
+"Ọ̀fẹ́ ni ẹ̀yà-ara kọ̀ǹpútà àìfojúrí yìí; wo orísun fún àwọn ìwọfún ìṣẹ̀dà.\n"
+"Kò sí wáráǹtì; kó dà kò sí fún ITAJA tàbí ÌWÚLÒ FÚN ÌLÒ PÀTÀKÌ KAN.\n"
+
+#: ../src/core/main.c:253
+msgid "Disable connection to session manager"
+msgstr ""
+
+#: ../src/core/main.c:259
+msgid "Replace the running window manager with Marco"
+msgstr ""
+
+#: ../src/core/main.c:265
+msgid "Specify session management ID"
+msgstr ""
+
+#: ../src/core/main.c:270
+msgid "X Display to use"
+msgstr ""
+
+#: ../src/core/main.c:276
+msgid "Initialize session from savefile"
+msgstr ""
+
+#: ../src/core/main.c:282
+msgid "Print version"
+msgstr ""
+
+#: ../src/core/main.c:288
+msgid "Make X calls synchronous"
+msgstr ""
+
+#: ../src/core/main.c:294
+msgid "Turn compositing on"
+msgstr ""
+
+#: ../src/core/main.c:300
+msgid "Turn compositing off"
+msgstr ""
+
+#: ../src/core/main.c:478
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "Ó kùnà láti síkáànì atọ́nà àwọn kókó: %s\n"
+
+#: ../src/core/main.c:494
+#, fuzzy, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "Kò lè rí kókó! Rí dájú pé %s wà ó sì ní àwọn kókó tó yẹ kó ní."
+
+#: ../src/core/main.c:550
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "Ó kùnà láti tún bẹ̀rẹ̀: %s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:499 ../src/core/prefs.c:654
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "A gbé bọ́tìnì MateConf '%s' kalẹ̀ sí irúfẹ́ tí kò fẹsẹ̀múlẹ̀\n"
+
+#: ../src/core/prefs.c:580 ../src/core/prefs.c:823
+#, fuzzy, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "%d tí a fi pamọ́ sínú bọ́tìnì MateConf %s kò sí ní sàkánì 0 sí %d\n"
+
+#: ../src/core/prefs.c:624 ../src/core/prefs.c:701 ../src/core/prefs.c:749
+#: ../src/core/prefs.c:813 ../src/core/prefs.c:1106 ../src/core/prefs.c:1122
+#: ../src/core/prefs.c:1139 ../src/core/prefs.c:1155
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "A gbé bọ́tìnì MateConf \"%s\" kalẹ̀ sí irúfẹ́ tí kò fẹsẹ̀múlẹ̀\n"
+
+#: ../src/core/prefs.c:1225
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr ""
+"Àwọn workaround fún àwọn ìṣàmúlò-ètò tó dàrú kò ṣiṣẹ́. Ọ̀pọ̀lọpọ̀ àwọn ìṣàmúlò-"
+"ètò kò hùwà dáadáa.\n"
+
+#: ../src/core/prefs.c:1296
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "Kò lè páàsì àpèjúwe ìrísí-lẹ́tà \"%s\" láti inú bọ́tìnì MateConf %s\n"
+
+#: ../src/core/prefs.c:1356
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr ""
+"\"%s\" tí a rí nínú èròjà ìwádìí àtòpọ̀ kìí ṣe fálù tó fẹsẹ̀múlẹ̀ fún aṣàtúntò "
+"bọ́tìnì ohun-èlò aṣèkúté\n"
+
+#: ../src/core/prefs.c:1771
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "Àṣìṣe ìgbékalẹ̀ oye àwon ààyè-iṣẹ́ sí %d: %s\n"
+
+#: ../src/core/prefs.c:1960 ../src/core/prefs.c:2463
+#, c-format
+msgid "Workspace %d"
+msgstr "Ààyè-iṣẹ́ %d"
+
+#: ../src/core/prefs.c:1990 ../src/core/prefs.c:2168
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr ""
+"\"%s\" tí a rí nínú èròjà ìwádìí àtòpọ̀ kìí ṣe fálu tó fẹsẹ̀múlẹ̀ fún aṣẹ̀dá-"
+"ìtọ́ka \"%s\"\n"
+
+#: ../src/core/prefs.c:2544
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "Àṣìṣe ìgbékalẹ̀ orúkọ fún ààyè-iṣẹ́ %d sí \"%s\": %s\n"
+
+#: ../src/core/prefs.c:2730
+#, fuzzy, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "Àṣìṣe ìgbékalẹ̀ orúkọ fún ààyè-iṣẹ́ %d sí \"%s\": %s\n"
+
+#: ../src/core/screen.c:350
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "Ojú kọ̀ǹpútà %d tí a ̀ṣàfihàn '%s' kò fẹsẹ̀múlẹ̀\n"
+
+#: ../src/core/screen.c:366
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"Ojú kọ̀ǹpútà %d tí a ṣàfihàn \"%s\" ti ní alábòójútó fèrèsé tẹ́lẹ̀; gbìyànjú "
+"lílo --ẹ̀yàn ìpààrọ̀ láti pà́àrọ̀ alábòójútó lọ́wọ́lọ́wọ́.\n"
+
+#: ../src/core/screen.c:393
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "Kò lè gba ẹ̀yàn alábòójútó fèrèsé lórí ojú kọ̀ǹpútà %d ìṣàfihàn \"%s\"\n"
+
+#: ../src/core/screen.c:451
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "Ojú kọ̀ǹpútà %d tí a ̀ṣàfihàn \"%s\" ti ní alábòójútó fèrèsé tẹ́lẹ̀\n"
+
+#: ../src/core/screen.c:661
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "Kò lè fi ojú kọ̀ǹpútà %d tí a ṣàfihàn sílẹ̀\"%s\"\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:165
+#, fuzzy
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń ti àtòjọ-ẹ̀yàn fèrèsé́ . Ìgúnrégé náà jọ \"&lt;"
+"Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń "
+"fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti "
+"\"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára "
+"mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#: ../src/core/schema-bindings.c:173
+#, fuzzy
+msgid ""
+"The format looks like \"<Control>a\" or <Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń ti àtòjọ-ẹ̀yàn fèrèsé́ . Ìgúnrégé náà jọ \"&lt;"
+"Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń "
+"fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti "
+"\"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára "
+"mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#: ../src/core/session.c:837 ../src/core/session.c:844
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "Kò lè ṣẹ̀dá atọ́nà '%s': %s\n"
+
+#: ../src/core/session.c:854
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "Kò lè ṣí fáìlì sáà '%s' fún kíkọ: %s\n"
+
+#: ../src/core/session.c:995
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "Àṣìṣe kíkọ fáìlì sáà '%s': %s\n"
+
+#: ../src/core/session.c:1000
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "Aṣìse títi fáìlì sáà '%s': %s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1093
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "Ó kùnà láti ka fáìlì sáà tí a fi pamọ́ %s: %s\n"
+
+#: ../src/core/session.c:1132
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "Ó kùnà láti páàsì fáìlì sáà tí a fi pamọ́: %s\n"
+
+#: ../src/core/session.c:1181
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "àbùdá <sáà_marco> tí a rí ṣùgbọ́n tí a ti ní sáà ID náà tẹ́lẹ̀"
+
+#: ../src/core/session.c:1194 ../src/core/session.c:1269
+#: ../src/core/session.c:1301 ../src/core/session.c:1373
+#: ../src/core/session.c:1433
+#, fuzzy, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "Àbùd́ àìmọ̀ %s lorí fọ́nrán <fèrèsé>"
+
+#: ../src/core/session.c:1211
+#, c-format
+msgid "nested <window> tag"
+msgstr "nested <window> tag"
+
+#: ../src/core/session.c:1453
+#, c-format
+msgid "Unknown element %s"
+msgstr "Fọ́nrán àìmọ̀ %s"
+
+#: ../src/core/session.c:1879
+#, c-format
+msgid ""
+"Error launching marco-dialog to warn about apps that don't support "
+"session management: %s\n"
+msgstr ""
+"Àṣìṣe ìfi onísọ̀rọ̀gbèsì-marco lọ́lẹ̀ láti kìlọ̀ nípa apps tí kò ṣàtìlẹ́yìn "
+"alábòójútó sáà: %s\n"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "Ó kùnà láti ṣí ìpamọ́ ìwáṣìṣe bárakú: %s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "Ó kùnà láti fdṣí () fáìlì ìpamọ́ %s: %s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "Fáìlì ìpamọ́ tí a ṣí %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "A ṣàmúpọ̀ marco láì sí àtìlẹ́yìn fún móòdù verbose\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "Alábòójútó fèrèsé: "
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "Àsìṣe bárakú nínú alábòójútó fèrèsé: "
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "Ìkìlọ̀ alábòójútó fèrèsé: "
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "Àṣìṣe alábòójútó fèrèsé: "
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:577 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5743
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"Fèrèsé %s ń ṣàgbékalẹ̀ SM_CLIENT_ID lórí ara rẹ̀ dípò lórí fèrèsé "
+"WM_CLIENT_LEADER gẹ́gẹ́ bí a ṣe sọ ní pàtó nínú ICCCM.\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6308
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"Fèrèsé %s ń ṣàgbékalẹ̀ òfófó MWM, ó sì ń tọ́ka si pè kò ṣeé tún wọ̀n, ṣùgbọ́n ó "
+"gbé ìwọ̀n %d x %d kalẹ̀ fún min, ó sì gbé %d x %d kalẹ̀ fún ìwọ̀n max; èyí kò fi "
+"bẹ́ẹ̀ ní ọpọlọ.\n"
+
+#: ../src/core/window-props.c:206
+#, fuzzy, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "Ìṣàmúlò-ètò gbé bogus _NET_WM_PID %ld kalẹ̀\n"
+
+#: ../src/core/window-props.c:338
+#, c-format
+msgid "%s (on %s)"
+msgstr ""
+
+#: ../src/core/window-props.c:1422
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr ""
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"Fèrèsé 0x%lx ní àbùdá %s\n"
+"tí a rò pé á ní irúfẹ́ %s ìgúnrégé %d\n"
+"tó sì wá ní irúfẹ́ %s ìgúnrégé %d n_àwọn wúnrẹ̀n %d.\n"
+"Àṣìṣe bárakú ìṣàmúlò-ètò ni yóò jẹ́ kìí ṣe àṣìṣe bárakú alábòójútó fèrèsé.\n"
+"Fèrèsé náà ní àkọ́lé=\"%s\" kíláàsì=\"%s\" orúkọ=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "Àbùdá %s lórí fèrèsé 0x%lx ní UTF-8 tí kò fẹsẹ̀múlẹ̀ nínú̀\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr ""
+"Àbùdá %s lórí fèrèsé 0x%lx ní UTF-8 tí kò fẹsẹ̀múlẹ̀ fún wúnrẹ̀n %d nínú àtòjọ "
+"náà\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "Sún sí ààyè-iṣẹ́ kìíní"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "Sún sí ààyè-iṣẹ́ kejì"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "Sún sí ààyè-iṣẹ́ kẹta"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "Sún sí ààyè-iṣẹ́ kẹrin"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "Sún sí ààyè-iṣẹ́ karùn ún"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "Sún sí ààyè-iṣẹ́ kẹfà"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "Sún sí ààyè-iṣẹ́ keje"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "Sún sí ààyè-iṣẹ́ kẹjọ"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "Sún sí ààyè-iṣẹ́ kẹsàn án"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "Sún sí ààyè-iṣẹ́ kẹwàá"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "Sún sí ààyè-iṣẹ́ kọkànlá"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "Sún sí ààyè-iṣẹ́ kejìlá"
+
+#: ../src/include/all-keybindings.h:122
+#, fuzzy
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "Sún sí ààyè-iṣẹ́ tó wà lápá òsì"
+
+#: ../src/include/all-keybindings.h:126
+#, fuzzy
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "Sún sí ààyè-iṣẹ́ tó wà lápá ọ̀tún"
+
+#: ../src/include/all-keybindings.h:130
+#, fuzzy
+msgid "Switch to workspace above the current workspace"
+msgstr "Sún sí ààyè-iṣẹ́ tó wà lókè eléyìí"
+
+#: ../src/include/all-keybindings.h:134
+#, fuzzy
+msgid "Switch to workspace below the current workspace"
+msgstr "Sún sí ààyè-iṣẹ́ tó wà nísàlẹ̀ eléyìí"
+
+#: ../src/include/all-keybindings.h:150
+#, fuzzy
+msgid "Move between windows of an application, using a popup window"
+msgstr "Lọ láàrin àwọn fèrèsé pẹ̀lú ìtasókè"
+
+#: ../src/include/all-keybindings.h:153
+#, fuzzy
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "Gbé ìwòye padà sẹ́yìn láàrin àwọn fèrèsé nípa lílo ìṣàfihàn ìtasókè"
+
+#: ../src/include/all-keybindings.h:157
+#, fuzzy
+msgid "Move between windows, using a popup window"
+msgstr "Lọ láàrin àwọn fèrèsé pẹ̀lú ìtasókè"
+
+#: ../src/include/all-keybindings.h:160
+#, fuzzy
+msgid "Move backward between windows, using a popup window"
+msgstr "Gbé ìwòye padà sẹ́yìn láàrin àwọn fèrèsé nípa lílo ìṣàfihàn ìtasókè"
+
+#: ../src/include/all-keybindings.h:163
+#, fuzzy
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "Lọ láàrin àwọn pánẹ́èlì àti ojú-iṣẹ́ pẹ̀lú ìtasókè"
+
+#: ../src/include/all-keybindings.h:166
+#, fuzzy
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "Lọ sẹ́yìn láàrin àwọn pánẹ́ẹ̀lì àti ojú-iṣẹ́ pẹ̀lú ìta sókè"
+
+#: ../src/include/all-keybindings.h:171
+#, fuzzy
+msgid "Move between windows of an application immediately"
+msgstr "Lọ láàrin àwọn fèrèsé lẹ́sẹ̀kẹsẹ̀"
+
+#: ../src/include/all-keybindings.h:174
+#, fuzzy
+msgid "Move backward between windows of an application immediately"
+msgstr "Lọ sẹ́yìn láàrin àwọn fèrèsé lẹ́sẹ̀kẹsẹ̀"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "Lọ láàrin àwọn fèrèsé lẹ́sẹ̀kẹsẹ̀"
+
+#: ../src/include/all-keybindings.h:180
+#, fuzzy
+msgid "Move backward between windows immediately"
+msgstr "Lọ sẹ́yìn láàrin àwọn fèrèsé lẹ́sẹ̀kẹsẹ̀"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "Lọ láàrin àwọn pánẹ́èlì àti ojú-iṣẹ́ lẹ́sẹ̀kẹsẹ̀"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "Lọ sẹ́yìn láàrin àwọn pánẹ́ẹ̀lì àti ojú-iṣẹ́ lẹ́sẹ̀kẹsẹ̀"
+
+#: ../src/include/all-keybindings.h:191
+#, fuzzy
+msgid "Hide all normal windows and set focus to the desktop background"
+msgstr "Fi gbogbo àwọn fèrèsé pamọ́ kí o sì wòye ojú-iṣẹ́"
+
+#: ../src/include/all-keybindings.h:194
+#, fuzzy
+msgid "Show the panel's main menu"
+msgstr "Fi àtòjọ-ẹ̀yàn pánẹ́ẹ̀lì hàn"
+
+#: ../src/include/all-keybindings.h:197
+#, fuzzy
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "Fi onísọ̀rọ̀gbèsì ìṣàmúlò-ètò rọ́ọ̀nù pánẹ́ẹ̀lì hàn"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "Ya ìmáwòrán"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "Ya ìmáwòrán fèrèsé kan"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "Rọ́ọ̀nù támínà"
+
+#: ../src/include/all-keybindings.h:257
+#, fuzzy
+msgid "Activate the window menu"
+msgstr "Mu àtòjọ-ẹ̀yàn fèrèsé"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "Tọ́gù móòdù ojú kọ̀ǹpútà kíkún"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "Tọ́gù ipò ìfẹ̀lójú"
+
+#: ../src/include/all-keybindings.h:264
+#, fuzzy
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "Fèrèsé ìsàlẹ̀ lábẹ́ àwọn fèrèsé mìíràn"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "Fẹ fèrèsé"
+
+#: ../src/include/all-keybindings.h:268
+#, fuzzy
+msgid "Restore window"
+msgstr "Ìṣòdíwọ̀n fèrèsé"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "Tọ́gù ipò tí a kùn"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "Pa fèrèsé dé"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "Ti Fèrèsé"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "Gbé fèrèsé"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "Ìṣòdíwọ̀n fèrèsé"
+
+#: ../src/include/all-keybindings.h:281
+#, fuzzy
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "Fèrèsé tọ́gù lórí gbogbo àwọn ààyè-iṣẹ́"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ kìíní"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ kejì"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹta"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹrin"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ karùn ún"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹfà"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ keje"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹjọ"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹsàn án"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹwàá"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ kọkànlá"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "Gbé fèrèsé lọ sí ààyè-iṣẹ́ kejìlá"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "Gbé ààyè-iṣẹ́ fèrèsé kan sí òsì"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "Gbé ààyè-iṣẹ́ fèrèsé kan sí ọ̀tún"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "Gbé ààyè-iṣẹ́ fèrèsé kan sókè"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "Gbé ààyè-iṣẹ́ fèrèsé kan wálẹ̀"
+
+#: ../src/include/all-keybindings.h:342
+#, fuzzy
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "Gbé fèrèsé dídí sókè, bí bẹ́ẹ̀ kọ́, gbé wálẹ̀"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "Gbeŕ fèrèsé ga ju àwọn fèrèsé mìíràn lọ"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "Fèrèsé ìsàlẹ̀ lábẹ́ àwọn fèrèsé mìíràn"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "Fẹ fèrèsé lólóròó"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "Fẹ fèrèsé lóníbùú"
+
+#: ../src/include/all-keybindings.h:358
+#, fuzzy
+msgid "Move window to north-west (top left) corner"
+msgstr "Gbé ààyè-iṣẹ́ fèrèsé kan sí òsì"
+
+#: ../src/include/all-keybindings.h:361
+#, fuzzy
+msgid "Move window to north-east (top right) corner"
+msgstr "Gbé ààyè-iṣẹ́ fèrèsé kan sí ọ̀tún"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr ""
+
+#: ../src/include/all-keybindings.h:383
+#, fuzzy
+msgid "Move window to center of screen"
+msgstr "Gbé ààyè-iṣẹ́ fèrèsé kan wálẹ̀"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr ""
+"(A kò pilẹ̀ rẹ̀) Wíwúlò àwọn ìṣàmúlò-ètò ní ìtọpa ń bá ṣiṣẹ́ kìí ṣe ti àwọn "
+"fèrèsé"
+
+#: ../src/marco.schemas.in.in.h:2
+#, fuzzy
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"Fọ́nrán à̀pèjúwe ìrísí-lẹ́tàtó ń ṣàpèjúwe ìrísí-lẹ́tà fún àwọn àká-àkọ́lé fèrèsé. "
+"Ìgbà tí a bá gbé ẹ̀yàn ìwọ̀n_ìrísí-lẹ́tà_ojú-iṣẹ́_àwọn_ìlo_àká-àkọ́lé sí 0 ní a "
+"tó máà lo ìwọ̀n inú àpèjúwe náà. Àmọ́, ṣá ẹ̀yàn yìí kò ní ṣiṣẹ́ mọ́ tí ẹ̀yàn ìrísí-"
+"lẹ́tà_ojú-iṣẹ́_àwọn_ìlò_àká-irinṣẹ́ bá jẹ́ òótọ́. Nípa ìpéwọ̀n a kò gbé ìrísí-lẹ́tà "
+"kalẹ̀, èyí sì ń mú kí Marco padà sí ìrísí-lẹ́tà ojú-iṣẹ́ kódà tí àká-"
+"àkọ́lé_bá_lo_ìrísí-lẹ́tà_ojú-iṣẹ́ bá jẹ́ irọ́."
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "Iṣẹ́ lórí àká ákọ́lé, tẹ̀ẹ́-lẹ́ẹ̀mejì"
+
+#: ../src/marco.schemas.in.in.h:4
+#, fuzzy
+msgid "Action on title bar middle-click"
+msgstr "Iṣẹ́ lórí àká ákọ́lé, tẹ̀ẹ́-lẹ́ẹ̀mejì"
+
+#: ../src/marco.schemas.in.in.h:5
+#, fuzzy
+msgid "Action on title bar right-click"
+msgstr "Iṣẹ́ lórí àká ákọ́lé, tẹ̀ẹ́-lẹ́ẹ̀mejì"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "Ètò àwọn bọ́tìnì lórí àká-àkọ́lé"
+
+#: ../src/marco.schemas.in.in.h:7
+#, fuzzy
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"Ètò àwọn bọ́tìnì lórí àká-àkọ́lé. Fálù náà yẹ kó jẹ́ fọ́nrán bíi \"àtòjọ-ẹ̀yàn:"
+"pajúdé,fẹ̀ẹ́lójú̀,tìí\"; kọ́lọ́mù náà ń pín igun apá òsì àti ọ̀tún fèrèsé níyà. A "
+"fi kọmá pín à̀wọn orúkọ bọ́tìnì náà n. Kò sáyè fún àwọn bọ́tìnì aṣẹ̀dà. A kàn "
+"rọra pa àwọn orúkọ bọ́tìnì àìmọ̀ tì ni kó má bàa da àwọn ẹ̀yà marco àtijọ́ rú "
+"nígbà tí a bá fẹ́ ṣàfikún àọn bọ́tìnì lọ́jọ́ iwájú."
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "Ń gbé fèrèsé tí a wòye sókè fún ra rẹ̀"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). Modifier is expressed as \"&lt;Alt&gt;\" or \"&lt;Super&gt;\" "
+"for example."
+msgstr ""
+"Títẹ fèrèsé kan, nígbà tí o bá ń tẹ bọ́tìnì aṣàtúntò yìí yóò gbé fèrèsé náà "
+"(ìtẹ̀ òsì) ìṣòdíwọ̀n fèrèsé náà (ìtẹ̀ àárín), tàbí kí o fi àtòjọ-ẹ̀yàn fèrèsé "
+"náà hàn (ìtẹ̀ ọ̀tún). A máa ń ṣàfihàn aṣàtúntò gẹ́gẹ́ bíi \"&lt;Alt&gt;\" tàbí "
+"\"&lt;Super&gt;\" bíi àpẹẹrẹ."
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "Àwọn àṣẹ tí a fẹ́ rọ́ọ̀nù ní ìfèsì àwọn aṣẹ̀dá-ìtọ́ka bọ́tìnì"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "Kókó lọ́wọ́lọ́wọ́"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "Ìdádúró ìdá-ọ̀kẹ́ ìṣísẹ̀ fún ẹ̀yàn ìgbésókè aládàáṣe"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"Ń máa ń sọ bóyá àwọn ìṣàmúlò-ètò tàbí ètò kọ̀ǹpútà lè da àwọn 'ìfùnpè' tó dún "
+"rọ. KÁ sì lè lòó pẹ̀lú 'aago afojúrí' láti lè fàyè gba àwọn 'ìfùnpè' ìdákẹ́jẹ́."
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr ""
+"Má mùú àwọn àbùd́á ségesège tí àwọn ìṣàmúlò-ètò àtijọ́ tàbí tí ó bàjẹ́ ń fẹ́ ṣiṣẹ́"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "Mú Agogo Afojúrí Ṣiṣẹ́"
+
+#: ../src/marco.schemas.in.in.h:19
+#, fuzzy
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"Tí ó bá jẹ́ òótọ́, tí móòdù òye sì jẹ́ \"dàgẹ̀rẹ̀\" tàbí \"ohun-èlò aṣèkúté\" a "
+"jẹ́ pé a óò gbé fèrèsé tí a wòye rẹ̀ sókè lẹ́yìn ìdádúró díè (bọ́tìnì "
+"ìdádúró_ìgbésókè_aládàáṣe ló ń sọ ìdádúró náà ní pàtó)."
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"Tó bá jẹ́ òótọ́, pa ẹ̀yàn ìrísí-lẹ́tà àká-àkọ́lé náà ti, kí o sì lo ìrísí-lẹ́tà "
+"ìṣàmúlò-ètò òpéwọ̀n fún àwọn àkọ́lé fèrèsé."
+
+#: ../src/marco.schemas.in.in.h:21
+#, fuzzy
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"Tó bá jẹ́ òótọ́, èsì tí marco máa fún òǹlò máa kéré kò sì ní ní \"àyínìke "
+"tààrà\", nípa lílo àwọn férémù-wáyà, kí àwọn ìsàfarawé kọ̀ǹpútà má wáyé, tàbí "
+"àwọn ọ̀nà mìíràn. Ìdínkù tó jọjú ni èyí fún ìlò àwọn òǹlò. Àmọ́, ó lè fàyè gba "
+"àwọn ìṣàmúlò-ètò ogún àti àwọn sáfà támínà láti ṣiṣẹ́ kódà nígbà tí kò bá "
+"ṣiṣẹ́. Àmọ́ ṣá, àbùdá férémù-wáyà kò ní ṣiṣẹ́ tí ìràyé bá dẹ́kun ìbàjẹ́ ojú-iṣẹ́ "
+"tó lè dẹ́rù ba ni."
+
+#: ../src/marco.schemas.in.in.h:22
+#, fuzzy
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"Tó bá jẹ́ òótọ́, a jẹ́ pé marco ń ṣiṣẹ́ gẹ́gẹ́ bíi àwọn ìṣàmúlò-ètò dípò bíi "
+"àwọn fèrèsé. Èrò náà kò ṣeé fojú rí dáyè kan,ṣùgbọ́n ṣá àgbékalẹ̀-ètò tó dálé "
+"ìṣàmúlò-ètò sún mọ́ Mac ju Àwọn Fèrèsé lọ. Nígbà tí o bá wòye fèrèsé nínú "
+"móòdù tó dálé ìṣàmúlò-ètò, gbogbo àwọn fèrèsé inú ìṣàmúlò-ètò ni a óò gbé "
+"sókè. Bákan náà, nínú móòdù ajẹmọ́ ìṣàmúlò-ètò a kò ní fi àwọn ìtẹ̀ òye ránṣẹ́ "
+"sí àwọn fèrèsé nínú àwọn ìṣàmúlò-ètò mìíràn. wíwà àwọn ààtò yìí gan rí "
+"bákan. Ṣùgbọ́n ó dára ká ní àwọn ààtò fún gbogbo àwọn àlàyé ajẹ̀mọ́ ìṣàmúlò-ètò "
+"òun ajẹmọ́ fèrèsé. B.a Bóyá ká kọjá nípasẹ̀ àwọn ìtẹ̀. Bákan náà ni a kò tíì "
+"pilẹ̀, móòdù ajẹmọ́ ìṣàmúlò-ètò lọ́wọ́lọ́wọ́ báyìí."
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "Tó bá jẹ́ òótọ́, pààrọ̀ agbára ìlò fún ìlò ìròyìn díẹ̀"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "Aṣàtúntò tí a fẹ́ lò fún àwọn iṣẹ́ ìtẹ fèrèsé tí a túntò"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "Orúkọ ààyè-iṣẹ́"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "Iye àwọn ààyè-iṣẹ́"
+
+#: ../src/marco.schemas.in.in.h:27
+#, fuzzy
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"Iye àwọn ààyè-iṣẹ́. Ó gbọ́dọ̀ ju òdo lọ kí ó sì ní oye tó gajù (láti dẹ́kun "
+"ìjàǹbá bíba kọ̀ǹpútà rẹ jẹ́ nípa bí bèrè fún àwọn ààyè-iṣẹ́ 34 miliọ̀nù)."
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "Rọ́ọ̀nù àṣẹ tí a kì"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:31
+msgid "System Bell is Audible"
+msgstr "Agogo Ètò Kọ̀ǹpútà Dún dáadáa"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"Ń sọ fún Marco bí wọ́n ṣe ń pilẹ̀ ìtọ́ka tí a lè fojúrí pé aago ètò kọ̀ǹpútà "
+"tàbí atọ́ka 'aago' ìṣàmúlò-ètò mìíràn ti dún. Lọ́wọ́lọ́wọ́ báyìí àwọn fálù tó "
+"fesẹ̀múlẹ̀ méjì ló wà, \"ojú -kọ̀ǹpútà kíkún\" tí ó máa ń fa fíláàṣì funfun-"
+"dúdú ojú kọ̀ǹpútà kíkún àti \"fíláàṣì_férémù\" tó máa ń fa kí àká-àkọ́lé "
+"ìṣàmúlò-ètò tó ń fi àmì aago ránṣẹ́ sí fíláàṣì. Tí ìṣàmúlò-ètò tó fi aago náà "
+"ránṣẹ́ bá jẹ́ àìmọ̀ (bó ṣe máa ń rí fún ìpéwọ̀n \"ìfùnpè ètò kọ̀ǹpútà\") á "
+"fíláàṣì àká-àkọ́lé fèrèsé tí a wòye lọ́wọ́lọ́wọ́."
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"Àwọn bọ́tìnì /apps/marco/àwọn aṣẹ̀dá-ìtọ́ka bọ́tìnì_kárí ayé/rọ́ọ̀nù_àṣẹ_N máa "
+"ń soríkì àwọn aṣẹ̀dá-ìtọ́ka bọ́tìnì tó bá àwọn àṣẹ yìí mu. Títẹ aṣẹ̀dá-ìtọ́ka "
+"bọ́tìnì náà láti rọ́ọ̀nù_àṣẹ_N á mú àṣẹ_N ṣe."
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"Bọ́tìnì /apps/marco/àwọn aṣẹ̀dá-ìtọ́ka bọ́tìni_kárí ayé/rọ́ọ̀nù_àṣẹ_ìmáwòrán ló "
+"máa ń sọ oríkì aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń fa ìgbàpadà àṣẹ tí ààtò yìí sọ ní "
+"pàtó."
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"Bọ́tìnì /apps/marco/àwọn aṣẹ̀dá-ìtọ́ka bọ́tìni_kárí ayé/"
+"rọ́ọ̀nù_àṣẹ_ìmáwòrán_fèrèsé ló máa ń sọ oríkì aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń fa "
+"ìgbàpadà àṣẹ tí ààtò yìí sọ ní pàtó."
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"Aṣẹ̀dá-ìtọ́ka bọ́tìnì tí́ ó ń rọ́ọ̀nù àwọn àṣẹ tí a nọ́ńbà tó jọra nínú /apps/"
+"marco/àwọn àṣẹ_aṣẹ̀dá-ìtọ́ka bọ́tìnì. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" "
+"tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà "
+"kékeré àti gòdògbò àti àwọn ìgékúrú bíi \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;"
+"\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé "
+"kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#: ../src/marco.schemas.in.in.h:37
+msgid "The name of a workspace."
+msgstr "Orúkọ ààyè-iṣẹ́ kan."
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The screenshot command"
+msgstr "Àṣẹ ìmáwòrán"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr ""
+"́Kókó náà ni yóò sọ bí ìrísí àwọn ìpàlà fèrèsé, àká-àkọ́lé, àti bẹ́ẹ̀ bẹ́ẹ̀ lọ ṣe "
+"rí."
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"Ìdádúró wà ní àkókò kí a tó gbé fèrèsé sókè tí a bá gbé ìgbéga_aládàáṣe kalẹ̀ "
+"sí òótọ́. Ìdádúró náà a máa wà ní ìdá ẹgbẹ̀rún ìṣísẹ̀."
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"Móòdù ìwòye fèrèsé náà máa ń fi bí a ṣe ń mú àwọn fèrèsé ṣiṣẹ́. Àwọn fálù "
+"mẹ́ta ló lè jẹ́; \"tẹ\" ó túmọ sí pé a gbọ́dọ̀ tẹ àwọn fèrèsé láti lè wòye wọn "
+"\"àìbìkíta\" ó túmọ̀ sí pé a gbọ́dọ̀ wòye àwọn fèrèsé nígbà tí fèrèsé náà bá wọ "
+"fèrèsé náà, àti\"ohun-èlò aṣèkúté\" ó túmọ sí pé a gbọ́dọ̀ wòye àwọn fèrèsé "
+"nígbà tí ohun-èlò aṣèkúté bá wọ fèrèsé náà kò sí ní wòye nígbà tí ó fi "
+"fèrèsé náà sílẹ̀."
+
+#: ../src/marco.schemas.in.in.h:42
+msgid "The window screenshot command"
+msgstr "Àṣẹ ìmáwòràn fèrèsé"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:47
+#, fuzzy
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"Ń máa ń tan atọ́ka tí a lè rí nígbà tí ìṣàmúlò-ètò kan tàbí ètò kọ̀ǹpútà náà "
+"lu 'aago' tàbí 'fùnpè'; ó wùlò fún àwọn tí àti gbọ́rọ̀ ṣòro fún àti fún àwọn "
+"àyíká aláriwo. A sì tún lè lòó nígbà tí 'aago dídún' bá kú."
+
+#: ../src/marco.schemas.in.in.h:48
+msgid "Use standard system font in window titles"
+msgstr "Lo ìrísí-lẹ́tà ètò òpéwọ̀n nínú àwọn àkọ́lé fèrèsé"
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Visual Bell Type"
+msgstr "Irúfẹ́ Aago Tí a lè rí"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr ""
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Window focus mode"
+msgstr "Móòdù ìwòye fèrèsé"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Window title font"
+msgstr "Ìrísí-lẹ́tà àkọ́lé fèrèsé"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "Ìlò: %s\n"
+
+#: ../src/ui/frames.c:1077
+msgid "Close Window"
+msgstr "Ti Fèrèsé"
+
+#: ../src/ui/frames.c:1080
+msgid "Window Menu"
+msgstr "Àtròjọ-ẹ̀yàn Fèrèsé"
+
+#: ../src/ui/frames.c:1083
+msgid "Minimize Window"
+msgstr "Pa Fèrèsé Dé"
+
+#: ../src/ui/frames.c:1086
+msgid "Maximize Window"
+msgstr "Fẹ Fèrèsé"
+
+#: ../src/ui/frames.c:1089
+#, fuzzy
+msgid "Restore Window"
+msgstr "Ìṣòdíwọ̀n fèrèsé"
+
+#: ../src/ui/frames.c:1092
+#, fuzzy
+msgid "Roll Up Window"
+msgstr "Ka _Sókè"
+
+#: ../src/ui/frames.c:1095
+#, fuzzy
+msgid "Unroll Window"
+msgstr "Ti Fèrèsé"
+
+#: ../src/ui/frames.c:1098
+msgid "Keep Window On Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1101
+msgid "Remove Window From Top"
+msgstr ""
+
+#: ../src/ui/frames.c:1104
+#, fuzzy
+msgid "Always On Visible Workspace"
+msgstr "_Ó máa ń wà lórí Ààyè-iṣẹ́ tí a le Rí"
+
+#: ../src/ui/frames.c:1107
+#, fuzzy
+msgid "Put Window On Only One Workspace"
+msgstr "Fèrèsé tọ́gù lórí gbogbo àwọn ààyè-iṣẹ́"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "Ìp_ajúdé"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "Fẹ̀_ẹ́lójú"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "Ma fẹ̀_ẹ́lójú"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "Ka _Sókè"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "_Máka"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "_Gbe"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "_Ìṣòdíwọ̀n"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr ""
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr ""
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "_Ó máa ń wà lórí Ààyè-iṣẹ́ tí a le Rí"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "_Lórí Ààyè-iṣẹ́ Yìí Nìkan"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "Gbe lọ sí Ààyè-iṣẹ́ _Òsì"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "Gbe lọ sí Ààyè-iṣẹ́ Ọ̀_tún"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "Gbe lọ sí Ààyè-iṣẹ́ _Òkè"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "Gbe lọ sí ààyè-iṣẹ́ _Ìsàlẹ̀"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "_Ti"
+
+#: ../src/ui/menu.c:203
+#, fuzzy, c-format
+msgid "Workspace %d%n"
+msgstr "Ààyè-iṣẹ́ %d"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "Ààyè-iṣẹ́ 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "Ààyè-iṣẹ́ %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "Gbé sí Ààyè-iṣẹ́_Mìíràn"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#: ../src/ui/marco-dialog.c:90
+#, fuzzy, c-format
+msgid "\"%s\" is not responding."
+msgstr "Fèrèsé náà \"%s\" kò fèsì."
+
+#: ../src/ui/marco-dialog.c:97
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:107
+msgid "_Wait"
+msgstr ""
+
+#: ../src/ui/marco-dialog.c:109
+msgid "_Force Quit"
+msgstr "_Ìjáde Ipá"
+
+#: ../src/ui/marco-dialog.c:206
+msgid "Title"
+msgstr "Àkọ́lé"
+
+#: ../src/ui/marco-dialog.c:218
+msgid "Class"
+msgstr "kíláàsì"
+
+#: ../src/ui/marco-dialog.c:244
+msgid ""
+"These windows do not support \"save current setup\" and will have to be "
+"restarted manually next time you log in."
+msgstr ""
+"Àwọn Fèrèsé yìí kò ṣàtìlẹ́yìn \"fi àgbékalẹ̀-ètò lọ́wọ́lọ́wọ́ pamọ́\", a máa ní "
+"láti tun bẹ̀rẹ̀ pẹ̀lú ọwọ́ nígbà mìíràn tí a bá bẹ̀rẹ̀ iṣẹ́."
+
+#: ../src/ui/marco-dialog.c:310
+#, c-format
+msgid ""
+"There was an error running \"%s\":\n"
+"%s."
+msgstr ""
+"Àṣìṣe kan ń rọ́ọ̀nù \"%s\":\n"
+"%s."
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "òkè"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "ìsàlẹ̀"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "òsì"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "ọ̀tún"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "Férémù jiọmítírì kò sọ ní pàtó ojúùwọ̀n \"%s\""
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "Férémù jiọmítírì kò sọ ní pàtó ojúùwọ̀n \"%s\" fún ìpàlà \"%s\""
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "Bọ́tìnì réṣíò aspect %g kò ní ọ̀pọ̀lọ"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "Férémù jiọmítírì kò sọ ní pàtó ìwọ̀n àwọn bọ́tìnì"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "Àwọn ìdàgẹ̀rẹ̀ yẹ kó ní ó kéré tán àwọn àwọ̀ méjì"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Ojú-ìwọ̀n àwọ̀ GTK gbọ́dọ̀ ní ipò náà nínú àwọn àmì àkámọ́, b.a. gtk:fg[DÉÉDÉÉ] "
+"níbi tí DÉÉDÉÉ bá jẹ́ ipò;kò ní lè páàsì \"%s\""
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"Ojú-ìwọ̀n àwọ̀ GTK gbọ́dọ̀ ní àmì àkámọ́ títí lẹ́yìn ipò náà, b.a. gtk:fg[DÉÉDÉÉ] "
+"níbi tí DÉÉDÉÉ ti jẹ́ ipò kò ní lè páàsì \"%s\""
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "Ipò \"%s\" kò ye nínú ojú-ìwọ̀n àwọ̀"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "Ọmọ-inú àwọ̀ \"%s\" kò ye nínú ojú-ìwọ̀n àwọ̀"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr ""
+"Ìgúnrégé tí a pòpọ̀ ni \"blend/bg_color/fg_color/alpha\", \"%s\" kò bá "
+"ìgúnrégé náà mu"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "Kò lè páàsì fálù áfà \"%s\" nínú àwọ tí a pòpọ̀"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "Fálù áfà \"%s\" nínú àwọ̀ tí a papọ̀ kò sí láàrin 0.0 àti 1.0"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr ""
+"Ìgúnrégé kíkùn jẹ́ \"shade/base_color/factor\", \"%s\" kò bá ìgúnrégé náà mu"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "Kò lè páàsì ọ̀fà kíkùn \"%s\" nínú àwọ̀ tí a kùn"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "Ọ̀fà kíkùn \"%s\" nínú àwọ̀ tí a kùn jẹ́ ìyọkúrò"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "Kò lè páàsì àwọ̀ \"%s\""
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "Ìsọ ìfètò sí nǹkan ní àmì-ìkọ '%s' nínú tí a kò fàyè gbà"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "Ìsọ ìfètò sí nǹkan ní nọ́ńbà floating point nínú '%s' tí a kò lè páàsì"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "Ìsọ ìfètò sí nǹkan ní ítíjà '%s' nínú tí a kò lè páàsì"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "Ìsọ ìfètò sí nǹkan ní ọpirétọ̀ àìmọ̀ nínú ní ìbẹ̀rẹ̀ àyọkà yìí: \"%s\""
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "Òfìfo ni ìsọ ìfètò sí nǹkan wà tàbí kó má yé ni"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "Èsì ìpín ìsọ ìfètò sí nǹkan pẹ̀lú òdo"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr ""
+"Ìsọ ìfètò sí nǹkan ń gbìyànjú láti lo ọpirétọ̀ mod lórí nọ́ńbà floating point"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "Ìsọ ìfètò sí nǹkan ní ọpirétọ̀ \"%s\" kan níbi tí a ti ń retí operand"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "Ìsọ ìfèto sí nǹkan ní operand níbi tí a ti ń retí ọpirétọ̀"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "Ọpirétọ̀ ló kẹ́yìn ìsọ ìfètò sí nǹkàn dípò operand"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr ""
+"Ìsọ ìfètò sí nǹkan ní ọpirétọ̀ \"%c\" tó tẹ̀lé ọpirétọ̀ \"%c\" láì sí operand "
+"láàrin rẹ̀"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "Ìsọ ìfètò sí nǹkan ní férébù tàbí kọ́nsítáǹtì \"%s\" àìmọ̀"
+
+#: ../src/ui/theme.c:2290
+#, fuzzy, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "Òfìfo ni ìsọ ìfètò sí nǹkan wà tàbí kó má yé ni"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "Ìsọ ìfètò sí nǹkan ní àkámọ́ títì, kò ní àkámọ́ ṣíṣí"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "Ìsọ ìfètò sí nǹkan ní àkámọ́ ṣíṣí láì sí àkámọ́ títì"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "Ó jọ pé ìsọ ìfètò sí nǹkan kò ní àwọn ọpirétọ̀ tàbí àwọn operand"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, fuzzy, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "Kókó ní ìsọ kan \"%s\" tó jásí àṣìṣe: %s\n"
+
+#: ../src/ui/theme.c:4155
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"<ojúṣe bọ́tìnì=\"%s\" ipò=\"%s\" ya_ops=\"ohunkóhun\"/> a gbọ́dọ̀ sọ ní pàtó "
+"fún sítáì férémù"
+
+#: ../src/ui/theme.c:4635 ../src/ui/theme.c:4660
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"A kò ri <ipò férémù=\"%s\" ìṣòdíwọ̀n=\"%s\" òye=\"%s\" sítáì=\"ohunkóhun\"/>"
+
+#: ../src/ui/theme.c:4704
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "Ó kùnà láti ki kókó \"%s\": %s\n"
+
+#: ../src/ui/theme.c:4834 ../src/ui/theme.c:4841 ../src/ui/theme.c:4848
+#: ../src/ui/theme.c:4855 ../src/ui/theme.c:4862
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "Kòsí <%s> àgbékalẹ̀ fún kókó \"%s\""
+
+#: ../src/ui/theme.c:4870
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"Kò sí sítàì férémù kankan tí a gbékalẹ̀ fún irúfẹ́ fèrèsé \"%s\" nínú kókó \"%s"
+"\", ṣàfikún <irúfẹ́ fèrèsé=\"%s\" àgbékalẹ̀_sítáì=\"ohunkóhun\"/> fọ́nrán"
+
+#: ../src/ui/theme.c:5295 ../src/ui/theme.c:5357 ../src/ui/theme.c:5420
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "Àwọn kọ́nsítáǹtì òǹlò gbọ́dọ̀ bẹ̀rẹ̀ pẹ̀lú lẹ́tà ńlá; \"%s\" kò ní"
+
+#: ../src/ui/theme.c:5303 ../src/ui/theme.c:5365 ../src/ui/theme.c:5428
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "A ti soríkì kọ́nsítáǹtì \"%s\" tẹ́lẹ̀"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "Kò sí àbùdá \"%s\" lórí fọ́nrán <%s>"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "Ilà %d àmì-ìkọ %d: %s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "Àbùdá \"%s\" tí a tún ṣe lẹ́ẹ̀mejì lórí fọ́nrán <%s. kan náà"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "Àbùdá \"%s\" kò fẹsẹ̀múlẹ̀ lórí fọ́nrán <%s> ní ọ̀gangan ipò yìí"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "Ítíjà %ld gbọ́dọ̀ jẹ́ àròpọ̀"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "Ítíjà %ld ti tóbi jù, max lọ́wọ́lọ́wọ́ jẹ́ %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "Kò lé páàsì \"%s\" gẹ́gẹ́ bíi nọ́ńbà floating point"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "Àwọn fálù Boolean gbọ́dọ̀ jẹ́ \"òótọ́\" tàbí \"irọ́ kìí ṣe \"%s\""
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "Áńgù gbọ́dọ̀ wà láàrin 0.0 àti 360.0, ó jẹ́ %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Áfà gbọ́dọ̀ wà láàrin 0.0 (àìfojúrí) àti 1.0 (dídí pátápátá), ó jẹ́ %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"Òṣùwọ̀n àkọ́lé tí kò fẹsẹ̀múlẹ̀ \"%s\" (ó gbọ́dọ̀ jẹ́ ọ̀kan lára kékeré gan,kékeré "
+"díẹ̀,àárín,ńlá,ńlá díẹ̀, ńlá púpọ̀)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> orúkọ \"%s\" tí a lò lẹ́ẹ̀kejì"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> a kò tíi soríkì òbí \"%s\""
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> a kò tíì soríkì \"%s\" jiọmítírì"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> gbọ́dọ̀ sọ ní pàtó bóyá jiọmítírì tàbí òbí tó ní jiọmítírì"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "Irúfẹ́ àìmọ̀ \"%s\" lórí <%s> fọ́nrán"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "Sẹ́ẹ̀tì_sítàì àìmọ̀ \"%s\" lórí <%s> fọ́nrán"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "Irúfẹ́ fèrèsé \"%s\" ti ní sẹ́ètì sítàì ná"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2732
+#: ../src/ui/theme-parser.c:2778 ../src/ui/theme-parser.c:2926
+#: ../src/ui/theme-parser.c:3118 ../src/ui/theme-parser.c:3156
+#: ../src/ui/theme-parser.c:3194 ../src/ui/theme-parser.c:3232
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "A kò fàyè gba <%s> fọ́nrán nísàlẹ̀ <%s>"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+#, fuzzy
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"Kò lè sọ ní pàtó ìfẹ̀sí_bọ́tìnì/ìgasí_bọ́tìni àti réṣíò aspect fún àwọn bọ́tìnì"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "A kò mọ ìjìnsí \"%s\""
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "A kò mọ réṣíò aspect \"%s\""
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "Àìmọ̀ ni ìpàlà \"%s\""
+
+#: ../src/ui/theme-parser.c:1776
+#, fuzzy, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "Kò sí àbùdá \"bẹ̀rẹ̀_igun\" lórí fọ́nrán <%s>"
+
+#: ../src/ui/theme-parser.c:1783
+#, fuzzy, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "Kò sí àbùdá \"extent_angle\" lórí fọ́nrán <%s>"
+
+#: ../src/ui/theme-parser.c:2023
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "Fálù \"%s\" fún irúfẹ́ ìdàgẹ̀rẹ̀ kò ye"
+
+#: ../src/ui/theme-parser.c:2101 ../src/ui/theme-parser.c:2476
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "Irúfẹ́ \"%s\" fún fọ́nrán <%s> kò ye"
+
+#: ../src/ui/theme-parser.c:2268 ../src/ui/theme-parser.c:2351
+#: ../src/ui/theme-parser.c:2414
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "Ipò \"%s\" fún fọ́nrán <%s> kò ye"
+
+#: ../src/ui/theme-parser.c:2278 ../src/ui/theme-parser.c:2361
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "Òjìji \"%s\" fún fọ́nrán <%s> kò ye"
+
+#: ../src/ui/theme-parser.c:2288
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "Atọ́ka árò \"%s\" fún fọ́nrán <%s> kò ye"
+
+#: ../src/ui/theme-parser.c:2588 ../src/ui/theme-parser.c:2684
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "Kò sí <draw_ops> tí a pè ní \"%s\" tí a ti kì"
+
+#: ../src/ui/theme-parser.c:2600 ../src/ui/theme-parser.c:2696
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "Ṣíṣàfikún draw_ops \"%s\" níbí á ṣẹ̀dá ìtọ́kasí òbìrìkìtí"
+
+#: ../src/ui/theme-parser.c:2811
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "Ipò àìmọ̀ \"%s\" fún férémù"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "Sítàì férémù ti ní ẹyọ ipò %s tẹ́lẹ̀"
+
+#: ../src/ui/theme-parser.c:2836 ../src/ui/theme-parser.c:2911
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "Kò sí <draw_ops> pẹ̀lú orúkọ \"%s\" tí a ti kì"
+
+#: ../src/ui/theme-parser.c:2865
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "Ojúṣe àìmọ̀ \"%s\" fún bọ́tìnì"
+
+#: ../src/ui/theme-parser.c:2874
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr ""
+
+#: ../src/ui/theme-parser.c:2886
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "Ipò àìmọ̀\"%s\" fún bọ́tìnì"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "Sítàì férémù ti ni bọ́tìnì fún ojúṣe %s ipò %s tẹ́lẹ̀"
+
+#: ../src/ui/theme-parser.c:2965
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "\"%s\" kìí ṣe fálù tó fesẹ̀múlẹ̀ fún àbùdá òye"
+
+#: ../src/ui/theme-parser.c:2974
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "\"%s\" kìí ṣe fálù tó fẹsẹ̀múlẹ̀ fún àbùdá ipò"
+
+#: ../src/ui/theme-parser.c:2984
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "A kò tíì soríkì sítàì tí a pè ní \"%s\""
+
+#: ../src/ui/theme-parser.c:3005 ../src/ui/theme-parser.c:3028
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "\"%s\" kìí ṣe fálù tó fesẹ̀múlẹ̀ fún àbùdá ìṣòdíwọ̀n"
+
+#: ../src/ui/theme-parser.c:3039
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr ""
+"Kó má ní àbùdá \"ìṣòdíwọ̀n\" lórí fọ́nrán <%s> fún àwọn ipò tí a fẹ̀lójú/kùn"
+
+#: ../src/ui/theme-parser.c:3053
+#, fuzzy, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr ""
+"Kó má ní àbùdá \"ìṣòdíwọ̀n\" lórí fọ́nrán <%s> fún àwọn ipò tí a fẹ̀lójú/kùn"
+
+#: ../src/ui/theme-parser.c:3067 ../src/ui/theme-parser.c:3089
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "A ti sọ sítàì kan ní pàtó fún ipò %s ìṣòdíwọ̀n %s òye %s"
+
+#: ../src/ui/theme-parser.c:3078 ../src/ui/theme-parser.c:3100
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "A ti sọ sítàì kan ní pàtó fún ipò %s òye %s"
+
+#: ../src/ui/theme-parser.c:3139
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kò lè ní draw_ops fún fónrán <ẹyọ> (kókó sọ ní pàtó àbùdá draw_ops àti "
+"fọ́nrán <draw_ops> pẹ̀lú tàbí àwọn fọ́nrán méjì ní pàtó)"
+
+#: ../src/ui/theme-parser.c:3177
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kò lè ní draw_ops fún fónrán <bọ́tìnì> (kókó sọ ní pàtó àbùdá draw_ops àti "
+"fọ́nrán <draw_ops> pẹ̀lú, tàbí àwọn fọ́nrán méjì ní pàtó)"
+
+#: ../src/ui/theme-parser.c:3215
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"Kò lè ní draw_ops fún fónrán <áíkànnù_àtòjọ-ẹ̀yàn (kókó sọ ní pàtó àbùdá "
+"draw_ops àti fọ́nrán <draw_ops> pẹ̀lú tàbí àwọn fọ́nrán méjì ní pàtó)"
+
+#: ../src/ui/theme-parser.c:3263
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "Fọ́nrán tó jìn jù nínú kókó gbọ́dọ̀ jẹ́ <kókó_marco> kìí ṣe <%s>"
+
+#: ../src/ui/theme-parser.c:3283
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "Kò sáyè fún fọ́nrán <%s> nínú fọ́nrán orúkọ/olùdásílẹ̀/déètì/àpèjúwe"
+
+#: ../src/ui/theme-parser.c:3288
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "Kò sáyè fún fọ́nrán <%s> nínú fọ́nrán <kọ́nsítáǹtì."
+
+#: ../src/ui/theme-parser.c:3300
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "Kò sáyè fún fọ́nrán <%s> nínú fọ́nrán ìjìnsí/ìpàlà/aspect_ratio"
+
+#: ../src/ui/theme-parser.c:3322
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "Kò sáyè fún fọ́nrán <%s> nínú fọ́nrán iṣẹ́"
+
+#: ../src/ui/theme-parser.c:3332 ../src/ui/theme-parser.c:3362
+#: ../src/ui/theme-parser.c:3367 ../src/ui/theme-parser.c:3372
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "Fọ́nrán <%s> kò fàyè gba nínú fọ́nrán <%s>"
+
+#: ../src/ui/theme-parser.c:3594
+msgid "No draw_ops provided for frame piece"
+msgstr "A kò pèsè draw_ops fún ẹyọ férémù"
+
+#: ../src/ui/theme-parser.c:3609
+msgid "No draw_ops provided for button"
+msgstr "A kò pèsè draw_ops fún bọ́tìnì"
+
+#: ../src/ui/theme-parser.c:3661
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "A kò fàyè gba àyọkà nínú fọ́nrán <%s>"
+
+#: ../src/ui/theme-parser.c:3716
+msgid "<name> specified twice for this theme"
+msgstr "<orúkọ> tí a sọ ní pàtó lẹ́ẹ̀mejì fún kókó̀ yìí"
+
+#: ../src/ui/theme-parser.c:3727
+msgid "<author> specified twice for this theme"
+msgstr "<olùdásílẹ̀> tí a sọ lẹ́ẹ̀mejì fún kókó yìí"
+
+#: ../src/ui/theme-parser.c:3738
+msgid "<copyright> specified twice for this theme"
+msgstr "<àṣẹ-lórí-àrà> tí a sọ ní pàtó lẹ́ẹ̀mejì fún kókó yìí"
+
+#: ../src/ui/theme-parser.c:3749
+msgid "<date> specified twice for this theme"
+msgstr "<déètì> tí a sọ ní pàtó lẹ́ẹ̀mejì fún kókó yìí"
+
+#: ../src/ui/theme-parser.c:3760
+msgid "<description> specified twice for this theme"
+msgstr "<àpèjúwe> tí a sọ ní pàtó lẹ́ẹ̀mejì fún kókó yìí"
+
+#: ../src/ui/theme-parser.c:4027
+#, fuzzy, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "Ó kùnà láti fdṣí () fáìlì ìpamọ́ %s: %s\n"
+
+#: ../src/ui/theme-parser.c:4083
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "Fáìlì kókó %s kò ní ìpìlẹ̀ fọ́nrán <kókó_marco> nínú"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/_Àwọn Fèrèsé"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/Àwọn fèrèsé/tearoff"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/Àwọn Fèrèsé/_Onísọ̀rọ̀gbèsì"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/Àwọn Fèrèsé/_Onísọ̀rọ̀gbèsì aṣèrànwọ́"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/Àwọn Fèrèsé/_Àwọn Ohun-èlò"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/Àwọn Fèrèsé/_Ojú-Kọ̀ǹpútà-Píláàṣì"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/Àwọn Fèrèsé/_Dọ́ọ̀kì òkè"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/Àwọn Fèrèsé/_Dọ́ọ̀kì ìsàlẹ̀"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/Àwọn Fèrèsé/_Dọ́ọ̀kì òsì"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/Àwọn Fèrèsé/_Dọ́ọ̀kì ọ̀tún"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/Àwọn Fèrèsé/_Gbogbo àwọn dọ́ọ̀kì"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/Àwọn Fèrèsé/Ojú-iṣẹ́"
+
+#: ../src/ui/theme-viewer.c:135
+msgid "Open another one of these windows"
+msgstr "Ṣí òmíràn nínú awọn fèrèsé yìí"
+
+#: ../src/ui/theme-viewer.c:142
+msgid "This is a demo button with an 'open' icon"
+msgstr "Bọ́tìnì dẹ́mò lèyí pẹ̀lú áíkànnù 'ṣíṣí'"
+
+#: ../src/ui/theme-viewer.c:149
+msgid "This is a demo button with a 'quit' icon"
+msgstr "Bọ́tìnì dẹ́mò lèyí pẹ̀lú áíkànnù 'jáde'"
+
+#: ../src/ui/theme-viewer.c:242
+msgid "This is a sample message in a sample dialog"
+msgstr "Èyí ni àpẹẹrẹ iṣẹ́ rírán nínú onísọ̀rọ̀gbèsì àpẹẹrẹ"
+
+#: ../src/ui/theme-viewer.c:325
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "Wúnrẹ̀n àtòjọ-ẹ̀yàn ayédèrú %d\n"
+
+#: ../src/ui/theme-viewer.c:359
+msgid "Border-only window"
+msgstr "Fèrèsé Ìpàlà nìkan"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Bar"
+msgstr "Àká"
+
+#: ../src/ui/theme-viewer.c:378
+msgid "Normal Application Window"
+msgstr "Fèrèsé Ìṣàmúlò-ètò Déédéé"
+
+#: ../src/ui/theme-viewer.c:382
+msgid "Dialog Box"
+msgstr "Àpótí Onísọ̀rọ̀gbèsì"
+
+#: ../src/ui/theme-viewer.c:386
+msgid "Modal Dialog Box"
+msgstr "Àpótí Onísọ̀rọ̀gbèsì Aṣèrànwọ́"
+
+#: ../src/ui/theme-viewer.c:390
+msgid "Utility Palette"
+msgstr "Pálẹ́ẹ̀tì Ohun-èlò"
+
+#: ../src/ui/theme-viewer.c:394
+msgid "Torn-off Menu"
+msgstr "Pa Àtòjọ-ẹ̀yàn"
+
+#: ../src/ui/theme-viewer.c:398
+msgid "Border"
+msgstr "Ìpàlà"
+
+#: ../src/ui/theme-viewer.c:726
+#, c-format
+msgid "Button layout test %d"
+msgstr "Àyẹ̀wò ìlàálẹ̀ bọ́tìnì %d"
+
+#: ../src/ui/theme-viewer.c:755
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g ọ̀kẹ́-ìṣísẹ̀ láti ya férémù fèrèsé kan"
+
+#: ../src/ui/theme-viewer.c:798
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "Ìlò: awòye-kókó-marco [ORÚKỌ-KÓKÓ]\n"
+
+#: ../src/ui/theme-viewer.c:805
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "Àṣìṣe kíki kókó: %s\n"
+
+#: ../src/ui/theme-viewer.c:811
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "Kókó tí a ti kì\"%s\" ní %g ìṣísẹ̀\n"
+
+#: ../src/ui/theme-viewer.c:852
+msgid "Normal Title Font"
+msgstr "Ìrísí-lẹ́tà Àkọ́lé déédéé"
+
+#: ../src/ui/theme-viewer.c:858
+msgid "Small Title Font"
+msgstr "Ìrísí-lẹ́tà Àkọ́lé Kékeré"
+
+#: ../src/ui/theme-viewer.c:864
+msgid "Large Title Font"
+msgstr "Ìrísí-lẹ́tà Àkọ́lé Ńlá"
+
+#: ../src/ui/theme-viewer.c:869
+msgid "Button Layouts"
+msgstr "Àwọn Ìlàálẹ̀ Bọ́tìnì"
+
+#: ../src/ui/theme-viewer.c:874
+msgid "Benchmark"
+msgstr "Ìdíwọ̀n"
+
+#: ../src/ui/theme-viewer.c:921
+msgid "Window Title Goes Here"
+msgstr "Ibí ni Àkọ́lé Fèrèsé Máa Lọ"
+
+#: ../src/ui/theme-viewer.c:1025
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"Ó ya àwọn férémù %d ní ìṣísẹ̀ abẹ̀wẹ̀ %g (ọ̀kẹ́-ìṣísẹ̀ %g fún férémù kọ̀ọ̀kan) àti %"
+"g ìṣísẹ̀ aago ara ògiri pẹ̀lú àwọn ìròyìn sáfà X (%g ọ̀kẹ́-ìṣísẹ̀ fún férémù "
+"kọ̀ọ̀kan)\n"
+
+#: ../src/ui/theme-viewer.c:1244
+msgid "position expression test returned TRUE but set error"
+msgstr "Ipò àyẹ̀wò ìsọ padà pẹ̀lú ÒÓTỌ́ ṣùgbọ́n ó gbé àsìṣe kalẹ̀"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "Ipò àyẹ̀wò ìsọ padà pẹ̀lú IRỌ́ ṣùgbọ́n ó gbé àsìṣe kalẹ̀"
+
+#: ../src/ui/theme-viewer.c:1250
+msgid "Error was expected but none given"
+msgstr "A ń retí àṣìṣe ṣùgbọ́n kò wá"
+
+#: ../src/ui/theme-viewer.c:1252
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "À ń réti àṣìṣe %d ṣùgbọ́n %d ló wá"
+
+#: ../src/ui/theme-viewer.c:1258
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "A kò retí àṣìṣe ṣùgbọ́n a dá eyọkan padà: %s"
+
+#: ../src/ui/theme-viewer.c:1262
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "à ń retí fálù x %d, %d"
+
+#: ../src/ui/theme-viewer.c:1265
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "à ń retí fálù y %d, %d"
+
+#: ../src/ui/theme-viewer.c:1330
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr ""
+"%d àwọn ìsọ ìfètò sí nǹkan tí a páàsì nínú àwọn ìṣísẹ̀ %g (%g àròpín àwọn "
+"ìṣísẹ̀)\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "%d tí a fi pamọ́ sínú bọ́tìnì MateConf %s kìí ṣe oye àwọn ààyè-iṣẹ́ tó mọ́gbọ́n "
+#~ "dání. Èyí tó ga jù lọ́wọ́lọ́wọ́ ni %d\n"
+
+#~ msgid ""
+#~ "<menu_icon function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+#~ "specified for this theme"
+#~ msgstr ""
+#~ "<ojúṣe áíkànnù_àtòjọ-ẹ̀yàn=\"%s\" ipò=\"%s\" ya_ops=\"ohunkóhun\"/> a "
+#~ "gbọ́dọ̀ sọ ní pàtó fún kókó yìí"
+
+#~ msgid ""
+#~ "Coordinate expression parser overflowed its buffer, this is really a "
+#~ "Marco bug, but are you sure you need a huge expression like that?"
+#~ msgstr ""
+#~ "Pásà ìsọ ìfètò sí nǹkan kún kọjá bọ́fà rẹ̀, àṣìṣe bárakú Marco ni èyí. "
+#~ "Ṣùgbọ́n ṣé ó dá ẹ lójú pé ó nílò ìsọ ńlá bíi ìyẹn?"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr "Àṣìṣe ìfilọ́lẹ̀ marco-onísọ̀rọ̀gbèsì á píríǹtì àṣìṣe nípa àṣẹ: %s\n"
+
+#~ msgid "Failed to read theme from file %s: %s\n"
+#~ msgstr "Ó kùnà láti ka kókó náà láti inú fáìlì %s: %s\n"
+
+#~ msgid ""
+#~ "Forcing this application to quit will cause you to lose any unsaved "
+#~ "changes."
+#~ msgstr ""
+#~ "Mímú ìṣàmúlò-ètò yìí jáde pẹ̀lú ipá,yóò jẹ́ kí o sọ àwọn ìyípadà tí o kò fi "
+#~ "pamọ́ nù."
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "Kò sí àbùdá \"%s\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùdá \"áfà\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùdá \"atọ́ka árò\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùdá \"ìsàlẹ̀\" lórí <%s>"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùdá \"àwọ̀\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùdá \"orúkọ-fáaìlì\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "Kò sí àbùdá \"òye\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "Kò sí àbùdá \"ojúṣe\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùd́á \"ìgasí\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùdá \"òsì\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "Kò̀ sí àbùdá \"orúko\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "Kò sí àbùdá \"ipò\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "Kò sí àbùdá \"ìṣòdíwọ̀n\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùdá \"ọ̀tún\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùdá \"òjìji\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "Kò sí àbùdá \"ipò\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùdá \"ipò\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "Kò sí àbùdá \"sítàì\" lorí fọ́nrán <%s>"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùdá \"òkè\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùd́á \"irúfẹ́\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "kò sí àbùdá \"fálù\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùdá \"fálù\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùd́á \"ìfẹ̀sí\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"x\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùd́á \"x\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùd́á \"x1\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùd́á \"x2\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùd́á \"y\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùd́á \"y1\" lórí fọ́nrán <%s>"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "Kò sí àbùd́á \"y2\" lórí fọ́nrán <%s>"
+
+#~ msgid "No draw_ops provided for menu icon"
+#~ msgstr "A kò pèsè draw_ops fún áíkànnù àtòjọ-ẹ̀yàn"
+
+#~ msgid "On _Top"
+#~ msgstr "Lórí _Òkè"
+
+#~ msgid ""
+#~ "Some applications break specifications in ways that result in window "
+#~ "manager misfeatures. For example, ideally Marco would place all "
+#~ "dialogs in a consistent position with respect to their parent window. "
+#~ "This requires ignoring application-specified positions for dialogs. But "
+#~ "some versions of Java/Swing mark their popup menus as dialogs, so "
+#~ "Marco has to disable dialog positioning to allow menus to work in "
+#~ "broken Java applications. There are several other examples like this. "
+#~ "This option puts Marco in full-on Correct mode, which perhaps gives a "
+#~ "moderately nicer UI if you don't need to run any broken apps. Sadly, "
+#~ "workarounds must be enabled by default; the real world is an ugly place. "
+#~ "Some of the workarounds are workarounds for limitations in the "
+#~ "specifications themselves, so sometimes a bug in no-workarounds mode "
+#~ "won't be fixable without amending a spec."
+#~ msgstr ""
+#~ "Ọ̀pọ̀lọpọ̀ àwọn ìṣàmúlò-ètò ló máa ń rú àwọn ojúùwọ̀n ní àwọn ọ̀nà tó jẹ́ pé "
+#~ "èsì inú alábòójútó fèrèsé máa ń dàrú. Bí àpẹẹrẹ, bó ṣe yẹ̀ kórí ni pe "
+#~ "Marco á gbé gbogbo àwọn onísọ̀rọ̀gbèsì sí ipò pẹ̀lú ìbáṣe sí àwọn fèrèsé "
+#~ "òbí wọn. Èyí á nílò pípa àwọn ipò ìṣàmúlò-ètò tí a sọ ní pàtó tì fún àwọn "
+#~ "onísọ̀rọ̀gbèsì. Ṣùgbọ́n ọ̀pọ̀lọpọ̀ àwọn ẹ̀yà Java/Swing máàkì àwọn àtòjọ-ẹ̀yàn "
+#~ "wọn gẹ́gẹ́ bíi àwọn onísọ̀rọ̀gbèsì, fún ìdí èyí Marco ní láti gba agbára "
+#~ "lọ́wọ́ ipò onísọ̀rọ̀gbèsì láti fàyè gba àwọn àtòjọ-ẹ̀yàn láti siṣẹ́ nínú àwọn "
+#~ "ìṣàmúlò-ètò Java tó dàrú. a tún sì ní oríṣiríṣi àwọn àpẹẹrẹ mìíràn bíi "
+#~ "èyí. Ẹ̀yàn yìí á fún Marco ní móòdù tó tọ̀nà dáadáa èyí yóò sì fún un ní "
+#~ "UI tó wà níọ́̀ ntúnmòsìtí o kò bá nílò láti rọ́ọ̀nù apps tó ti dàrú. Ohun tó "
+#~ "burú ni pé a gbọ́dọ̀ mú workarounds ṣiṣẹ́ nípa ìpéwọ̀n nítorí ibi tó burẹ́wà "
+#~ "ní ayé gangan. Ọ̀pọ̀lọpọ̀ àwọn workaroundnló jẹ́ workaround fún àwọn ìdíwọ́ "
+#~ "nínú àwọn ojú-ìwọ̀n fún ra wọn; fún ìdí èyí àsìṣe bárakú nínú móòdù tí kìí "
+#~ "ṣe workaround kò ní ṣeé fisi tí a kò bá tún spec ṣe."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ lókè ààyè-iṣẹ́ lọ́wọ́lọ́wọ́. Ìgúnrégé "
+#~ "náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bíi "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ nísàlẹ̀ ààyè-iṣẹ́ lọ́wọ́lọ́wọ́. "
+#~ "Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn "
+#~ "ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà "
+#~ "kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka "
+#~ "bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ lápá òsì ààyè-iṣẹ́ lọ́wọ́lọ́wọ́. "
+#~ "Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn "
+#~ "ìgékúrú bíi \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà "
+#~ "kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka "
+#~ "bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ lápá ọ̀tún ààyè-iṣẹ́ lọ́wọ́lọ́wọ́. "
+#~ "Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn "
+#~ "ìgékúrú bíi \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà "
+#~ "kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka "
+#~ "bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ kìíní. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ kẹwa. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ kọkànlá. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bíi \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ kejìlá. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ kejì. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ kẹta. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ kẹrin. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ karùn ún. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ kẹfà. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ keje. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ kẹjọ. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń sún sí ààyè-iṣẹ́ kẹsàn án. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń mú àtòjọ-ẹ̀yàn fèrèsé ṣiṣẹ́́ ṣẹ́ 9. Ìgúnrégé náà "
+#~ "jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń tẹ \"móòdù fún gbígbé\" wọlé á sì bẹ̀rẹ̀ síí "
+#~ "gbé fèrèsé nípa lílo kííbọọ̀dù ṣiṣẹ́́ . Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" "
+#~ "tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba "
+#~ "lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bíi \"&lt;Ctl&gt;\" àti \"&lt;"
+#~ "Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́"
+#~ "\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń tẹ \"móòdù ìṣòdíwọ̀n\" wọlé á sì bẹ̀rẹ̀ "
+#~ "siṣòdíwọ̀n fèrèsé ̀rèsé nípa lílo kíiọọ̀dù ṣiṣẹ́́ . Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì ná̀à máa ń fi gbogbo à́wọn fèrèsé pamọ́ á sì ṣàgbékalẹ̀ "
+#~ "òye sí ẹ̀yìn ojú-iṣẹ́ náà. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré "
+#~ "àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". "
+#~ "Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé "
+#~ "kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń fẹ fèrèsé lójú. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń pa fèrèsé dé. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;"
+#~ "a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè "
+#~ "gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti "
+#~ "\"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé ààyè-iṣẹ́ kìíní fèrèsé wálẹ̀. Ìgúnrégé náà "
+#~ "jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé ààyè-iṣẹ́ kìíní fèrèsé sápá òsì. Ìgúnrégé "
+#~ "náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé ààyè-iṣẹ́ kìíní fèrèsé sápá ọ̀tún. "
+#~ "Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn "
+#~ "ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà "
+#~ "kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka "
+#~ "bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé ààyè-iṣẹ́ kìíní fèrèsé sókè. Ìgúnrégé náà "
+#~ "jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ kìíní. Ìgúnrégé "
+#~ "náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹwàá. Ìgúnrégé "
+#~ "náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ kọkànlá. Ìgúnrégé "
+#~ "náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ kejìlá. Ìgúnrégé "
+#~ "náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ kejì. Ìgúnrégé náà "
+#~ "jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹta. Ìgúnrégé náà "
+#~ "jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹrin. Ìgúnrégé "
+#~ "náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ karùn ún. Ìgúnrégé "
+#~ "náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹfà. Ìgúnrégé náà "
+#~ "jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ keje. Ìgúnrégé náà "
+#~ "jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹjọ. Ìgúnrégé náà "
+#~ "jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé fèrèsé lọ sí ààyè-iṣẹ́ kẹsàn án. Ìgúnrégé "
+#~ "náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé òye padà sẹ́yìn láàrin àwọn pánẹ́ẹ̀lì àti "
+#~ "ojú-iṣẹ́, nípa lílo fèrèsé ìtasókè. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" "
+#~ "tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba "
+#~ "lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;"
+#~ "Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́"
+#~ "\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé òye padà sẹ́yìn láàrin àwọn pánẹ́ẹ̀lì àti "
+#~ "ojú-iṣẹ́, láì sí fèrèsé ìtasókè. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà "
+#~ "kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;"
+#~ "Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́"
+#~ "\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé òye padà sẹ́yìn láàrin àwọn fèrèsé láì sí "
+#~ "fèrèsé ìtasókè. Títẹ \"ṣíífìtì\" pẹ̀lú aṣẹ̀dá-atọ́ka yìí á mú ìtọ́nà tẹ̀síwájú "
+#~ "si. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn "
+#~ "ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà "
+#~ "kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka "
+#~ "bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé òye padà sẹ́yìn láàrin àwọn fèrèsé nípa "
+#~ "lílo fèrèsé ìtasókè. Títẹ \"ṣíífìtì\" pẹ̀lú aṣẹ̀dá-atọ́ka yìí á mú ìtọ́nà "
+#~ "tẹ̀síwájú si. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò "
+#~ "àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé "
+#~ "ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí "
+#~ "aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé òye láàrin àwọn pánẹ́ẹ̀lì àti ojú-iṣẹ́, "
+#~ "nípa lílo fèrèsé ìtasókè. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré "
+#~ "àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". "
+#~ "Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé "
+#~ "kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé òye láàrin àwọn pánẹ́ẹ̀lì àti ojú-iṣẹ́, láì "
+#~ "sí fèrèsé ìtasókè. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti "
+#~ "gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o "
+#~ "bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní "
+#~ "sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń gbé òye láàrin àwọn fèrèsé, láì sí fèrèsé "
+#~ "ìtasókè. (Ìgbàgbogbo &lt;Alt&gt;Máa ń sálà) Dídi bọ́tìnì \"ṣíífìtì\"mú "
+#~ "nígbà́ aṣẹ̀dá-atọ́ka yìí mú ìtọ́nà tẹ̀síwájú si. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "A máa ń lo aṣẹ̀dá-ìtọ́ka bọ́tìnì náà láti gbé òye láàrin àwọn fèrèsé nípa "
+#~ "lílo fèrèsé ìtasókè. (Ní ọ̀pọ̀ ìgbà &lt;Alt&gt;Tab) Dídi bọ́tìnì \"ṣíífìtì\" "
+#~ "mú nígbà tí à ń lo aṣẹ̀dá-ìtọ́ka yìí ń dá ọ̀nà ìpapòdà náà padà. Ìgúnrégé "
+#~ "náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náa máa tọ́gù nígbà gbogbo. Fèrèsé tó bá wà lókè á ṣeé "
+#~ "rí ju àwọn fèrèsé tó ṣí léra. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà "
+#~ "kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;"
+#~ "Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́"
+#~ "\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń tọ́gù móòdù ojú kọ̀ǹpútà kíkún. Ìgúnrégé náà "
+#~ "jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Àṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń tọ́gù ìfẹ̀lójú. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;"
+#~ "a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè "
+#~ "gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti "
+#~ "\"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Àṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń tọ́gù ipò tí kùn/tí a kò kùn. Ìgúnrégé náà jọ "
+#~ "\"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "Àṣẹ̀dá-ìtọ́ka bọ́tìnì náà máa ń tọ́gù bóyá fèrèsé náà wà lórí gbogbo àwọn "
+#~ "ààyè-iṣẹ́ tàbí ẹyọ kan.Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré "
+#~ "àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". "
+#~ "Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé "
+#~ "kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì náà kìí máa ń fẹ fèrèsé. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tí o ṣàfihàn àpótí onísọ̀rọ̀gbèsì \"Rọ́ọ̀nù Ìṣàmúlò-ètò\" "
+#~ "pánẹ́ẹ̀lì. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò "
+#~ "àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé "
+#~ "ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí "
+#~ "aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń bẹ̀rẹ̀ támínà. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" "
+#~ "tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba "
+#~ "lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;"
+#~ "Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́"
+#~ "\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì tó ń bẹ̀rẹ̀ ohun-èlò ìmáwòrán pánẹ́ẹ̀lì láti ya ìmáwòrán "
+#~ "fèrèsé. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;"
+#~ "F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn "
+#~ "ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà "
+#~ "kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka "
+#~ "bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka tí ó ń bẹ̀rẹ̀ ohun-èlò ìmáwòrán pánẹ́ẹ̀lì. Ìgúnrégé náà jọ \"&lt;"
+#~ "Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì "
+#~ "ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" "
+#~ "àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní "
+#~ "agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀ɗá-ìtọ́ka bọ́tìnì tí ó fi àtòjọ-ẹ̀yàn pánẹ́ẹ̀lì gangan hàn. Ìgúnrégé náà jọ "
+#~ "\"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà "
+#~ "fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn ìgékúrú bí i "
+#~ "\"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán "
+#~ "àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ "
+#~ "yìí nìyẹn."
+
+#~ msgid "Theme already has a menu icon for function %s state %s"
+#~ msgstr "Kókó ti ní áíkànnù àtòjọ-ẹ̀yàn fún ojúṣe %s ipò %s"
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another window, it raises the window above "
+#~ "other windows. If the window is already fully visible, it lowers the "
+#~ "window below other windows. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka yìí máa ń yípadà yálà fèrèsé wà lókè tàbí ìsàlẹ̀ fèrèsé náà. "
+#~ "Tí fèrèsé mìíràn bá bo fèrèsé náà mọ́lẹ̀, ó máa ń gbé fèrèsé náà sókè borí "
+#~ "àwọn fèrèsé mìíràn. Tí a bá ti lè rí fèrèsé náà dáadáa, ó máa mú àwọn "
+#~ "fèrèsé mìíràn tó wà nísàlẹ̀ wálẹ̀. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà "
+#~ "kékeré àti gòdògbò àti àwọn ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;"
+#~ "Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́"
+#~ "\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka yìí ń mú fèrèsé tó wà nísàlẹ̀ àwọn fèrèsé mìíràn wálẹ̀. "
+#~ "Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn "
+#~ "ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà "
+#~ "kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka "
+#~ "bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì yìí máa ń gbé fèrèsé tó wà lókè àwọn fèrèsé mìíràn "
+#~ "sókè. Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn "
+#~ "ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà "
+#~ "kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka "
+#~ "bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì yìí máa ń ṣòdíwọ̀n fèrèsé láti kún ààyè ìbú tó wà nílẹ̀. "
+#~ "Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò̀ àti àwọn "
+#~ "ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà "
+#~ "kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka "
+#~ "bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "Aṣẹ̀dá-ìtọ́ka bọ́tìnì yìí máa ń ṣòdíwọ̀n fèrèsé láti kún ààyè oòró tó wà nílẹ̀."
+#~ "Ìgúnrégé náà jọ \"&lt;Ìdarí&gt;a\" tàbí \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "Pásà náà fanimọ́ra, ó sì ń fàyè gba lẹ́tà kékeré àti gòdògbò àti àwọn "
+#~ "ìgékúrú bí i \"&lt;Ctl&gt;\" àti \"&lt;Ctrl&gt;\". Tí o bá gbé ẹ̀yàn náà "
+#~ "kalẹ̀ sí fọ́nrán àkànṣe \"kò ní agbára mọ́\", a jẹ́ pé kò ní sí aṣẹ̀dá-ìtọ́ka "
+#~ "bọ́tìnì fún iṣẹ́ yìí nìyẹn."
+
+#~ msgid ""
+#~ "This option determines the effects of double-clicking on the title bar. "
+#~ "Current valid options are 'toggle_shade', which will shade/unshade the "
+#~ "window, and 'toggle_maximize' which will maximize/unmaximize the window."
+#~ msgstr ""
+#~ "Ẹ̀yàn yìí ló máa sọ àwọn ipa tí ìtẹ̀ ẹ̀ẹ̀mejì máa ń ní lórí àká àkọ́lé. Àwọn "
+#~ "ẹ̀yàn tó fẹsẹ̀múlẹ̀ lọ́wọ́lọ́wọ́ jẹ́ 'tọ́gù_kíkùn' tí yóò kun/má kun fèrèsé náà "
+#~ "àti 'tọ́gù fífẹ̀' tí yóò fẹ/má fẹ fèrèsé náà."
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "Ipò òkè ni tọ́gù máa ń wà ṣá"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "Àbùdá àìmọ̀ %s lórí fọ́nrán <jiọmítírì>"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "Àbùdá àìmọ̀ %s lórí fọ́nrán <tí a fẹ̀>"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "Àbùdá àìmọ̀ %s lórí fọ́nrán <sáà_marco>"
+
+#~ msgid "Unknown function \"%s\" for menu icon"
+#~ msgstr "Ojúṣe àìmọ̀ \"%s\" fún áíkànnù àtòjọ-ẹ̀yàn"
+
+#~ msgid "Unknown state \"%s\" for menu icon"
+#~ msgstr "Ipò àìmọ̀ \"%s\" fún áíkànnù àtòjọ-ẹ̀yàn"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "Má Fẹ Fèrèsé"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "Má fẹ fèrèsé"
+
+#~ msgid ""
+#~ "marco [--sm-disable] [--sm-client-id=ID] [--sm-save-file=FILENAME] [--"
+#~ "display=DISPLAY] [--replace] [--version]\n"
+#~ msgstr ""
+#~ "marco [--sm-disable] [--sm-client-id=ID] [--sm-save-file=FILENAME] [--"
+#~ "display=DISPLAY] [--replace] [--version]\n"
diff --git a/po/zh_CN.po b/po/zh_CN.po
new file mode 100644
index 00000000..96fe9339
--- /dev/null
+++ b/po/zh_CN.po
@@ -0,0 +1,2330 @@
+# translation of marco.po to zh_CN
+# Simplified Chinese translation of marco.
+# Copyright (C) 2002, 2003, 2004, 2009, 2010 Free Software Foundation, Inc.
+# Sun G11n <[email protected]>, 2002.
+# He Qiangqiang <[email protected]>, 2002
+# Xiong Jiang <[email protected]>, 2003
+# Funda Wang <[email protected]>, 2003, 2004
+# 甘露(Gan Lu) <[email protected]>, 2009.
+# Ray Wang <[email protected]>, 2009.
+# Jessica Ban <[email protected]>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: marco master\n"
+"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?"
+"product=marco&component=general\n"
+"POT-Creation-Date: 2010-07-21 12:10+0000\n"
+"PO-Revision-Date: 2010-07-24 20:31+0800\n"
+"Last-Translator: Jessica Ban <[email protected]>\n"
+"Language-Team: Chinese (simplified) <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "桌面"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "窗口管理"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "响铃事件"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "未知的窗口信息请求:%d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s<tt> 未响应。"
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "您可以选择稍等一会儿然后继续,或者强制退出该应用程序。"
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "等待(_W)"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "强制退出(_F)"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "无法获取主机名:%s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "缺少复合效果所需的 %s 扩展"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "无法打开 X Window System 显示“%s”\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"丢失到显示“%s”的连接;\n"
+"可能是 X 服务器已关闭或者您杀死/摧毁了\n"
+"窗口管理器。\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "严重的 IO 错误 %d (%s) 出现在显示“%s”上。\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "某个其它程序已经将按键 %s 和修饰键 %x 配合使用作为一种组合\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"运行 <tt>%s</tt>时发生错误:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "命令 %d 尚未定义。\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "终端命令尚未定义。\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"版权所有 (C) 2001-%s Havoc Pennington, Red Hat, Inc., 以及其他人\n"
+"这是自由软件:版权条款请参见源码.\n"
+"不存在任何保证:即使是对适销性或者适合某种特定目的也不作保证。\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "禁止连接到会话管理器"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "将运行中的窗口管理器替换为 Marco"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "指定会话管理 ID"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "要使用的 X 显示"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "从保存文件中初始化会话"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "打印版本"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "使 X 调用同步"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "打开复合效果"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "关闭复合效果"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "不要将已最大化的窗口全屏,不要做任何装饰"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "扫描主题目录失败:%s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "无法找到主题!请确认 %s 存在并且含有正常的主题。\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "无法重启动:%s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf 关键字“%s”被设置为无效值\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "存储在 MateConf 关键字 %2$s 中的值 %1$d 超出了 %3$d 到 %4$d 的范围\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf 关键字“%s”被设置为无效的类型\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr "有缺陷的应用程序的工作区已禁用。某些应用程序可能无法正常运行。\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "无法解析字体说明“%s”(来自 MateConf 关键字 %s)\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "在配置数据库中找到的“%s”不是鼠标按钮修饰键的有效值\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "将工作区数量设置为 %d 时出错:%s\n"
+
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "工作区 %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "在配置数据库中找到的“%s”不是按键组合“%s”的有效值\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "将工作区 %d 的名称设置为“%s”时出错:%s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "设置复合管理器状态时出错:%s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "显示“%2$s”上的屏幕 %1$d 无效\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"显示“%2$s”上的屏幕 %1$d 已经有一个窗口管理器;请尝试使用 --replace 选项替换当"
+"前的窗口管理器。\n"
+
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "无法获得显示“%2$s”上的屏幕 %1$d 的窗口管理器选定项\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "在显示 \"%2$s\" 上的 %1$d 屏幕已经有一个窗口管理器\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "无法释放显示“%2$s”上的屏幕 %1$d\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"其格式类似于“<Ctrl>a”或 “<Shift><Alt>F1”。\n"
+"\n"
+"该解析程序相当自由,大小写以及诸如“<Ctl>” 和“<Ctrl>” 的缩写均允许使用。如果将"
+"该选项设置为特殊字符串“disabled”,那么此操作将没有按键组合。"
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"其格式类似于“<Ctrl>a”或 “<Shift><Alt>F1”。\n"
+"\n"
+"该解析程序相当自由,大小写以及诸如“<Ctl>”和“<Ctrl>”的缩写均允许使用。如果将该"
+"选项设置为特殊字符串“disabled”,那么此操作将没有按键组合。\n"
+"\n"
+"此按键组合可以按住“Shift”键进行反转,所以不能在组合中使用“Shift”。"
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "无法创建目录“%s”:%s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "无法打开会话文件“%s”进行写入:%s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "写入会话文件“%s”时出错:%s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "关闭会话文件“%s”时出错:%s\n"
+
+#: ../src/core/session.c:1143
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "无法解析保存的会话文件:%s\n"
+
+#: ../src/core/session.c:1192
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "<marco_session> 属性已看到,但我们已经拥有该会话 ID"
+
+#: ../src/core/session.c:1205 ../src/core/session.c:1280
+#: ../src/core/session.c:1312 ../src/core/session.c:1384
+#: ../src/core/session.c:1444
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "<%2$s> 元素上未知的属性 %1$s"
+
+#: ../src/core/session.c:1222
+#, c-format
+msgid "nested <window> tag"
+msgstr "嵌套 <window> 标记"
+
+#: ../src/core/session.c:1464
+#, c-format
+msgid "Unknown element %s"
+msgstr "未知的元素 %s"
+
+#: ../src/core/session.c:1816
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr ""
+"这些窗口不支持&quot;保存当前设置&quot;,您在下次登录时,必须手动重启动它们。"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "无法打开调试日志:%s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "无法对日志文件 %s 进行 fdopen() 操作:%s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "打开的日志文件 %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "Marco 编译的时候没有加入详细模式的支持\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "窗口管理器:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "窗口管理器中的错误:"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "窗口管理器警告:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "窗口管理器错误:"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5660
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"窗口 %s 在它自身上设置 SM_CLIENT_ID,而不是按照 ICCCM 规定的那样,设置在 "
+"WM_CLIENT_LEADER 窗口上。\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6225
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"窗口 %s 设置了一个 MWM 提示,表明它是不可改变大小的,但设置最小尺寸为 %d x %"
+"d,最大尺寸为 %d x %d;这没有任何意义。\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "应用程序设置一个假的 _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s (于 %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (作为超级用户)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (于 %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (作为其他用户)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "为 %2$s 指定了无效的 WM_TRANSIENT_FOR 窗口 0x%1$lx。\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"窗口 0x%lx 的属性 %s\n"
+"的期望类型为 %s、格式为 %d,\n"
+"而实际类型为 %s、格式为 %d、n_items 为 %d。\n"
+"这很可能是应用程序的错误,不是窗口管理器的错误。\n"
+"窗口的标题为“%s”,类别为“%s”,名称为“%s”\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "窗口 0x%2$lx 上的属性 %1$s 包含无效的 UTF-8\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "窗口 0x%2$lx 上的属性 %1$s 为列表中的条目 %3$d 包含无效的 UTF-8\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "切换到工作区 1"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "切换到工作区 2"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "切换到工作区 3"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "切换到工作区 4"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "切换到工作区 5"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "切换到工作区 6"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "切换到工作区 7"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "切换到工作区 8"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "切换到工作区 9"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "切换到工作区 10"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "切换到工作区 11"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "切换到工作区 12"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "切换到当前工作区左侧的工作区"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "切换到当前工作区右侧的工作区"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "切换到当前工作区上方的工作区"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "切换到当前工作区下方的工作区"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "在应用程序的窗口之间移动,使用弹出窗口"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "在应用程序的窗口之间反向移动,使用弹出窗口"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "在窗口之间移动,使用弹出窗口"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "在窗口之间反向移动,使用弹出窗口"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "在面板和桌面之间移动,使用弹出窗口"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "在面板和桌面之间反向移动,使用弹出窗口"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "在应用程序的窗口之间立即移动焦点"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "在应用程序的窗口之间即时反向移动"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "在窗口之间立即移动焦点"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "在窗口之间即时反向移动"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "在面板和桌面之间立即移动焦点"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "在面板和桌面之间立即反向移动焦点"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "隐藏所有正常窗口并将桌面设置为焦点"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "显示面板主菜单"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "显示面板的“运行应用程序”对话框"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "屏幕抓图"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "窗口抓图"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "运行终端"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "激活窗口菜单"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "切换全屏模式"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "切换最大化状态"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "在窗口是否永远可见于其它窗口之上间切换"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "最大化窗口"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "恢复窗口"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "切换卷起状态"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "最小化窗口"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "关闭窗口"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "移动窗口"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "改变窗口大小"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "在窗口位于所有或仅一个工作区间切换"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "将窗口移到工作区 1"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "将窗口移到工作区 2"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "将窗口移到工作区 3"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "将窗口移到工作区 4"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "将窗口移到工作区 5"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "将窗口移到工作区 6"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "将窗口移到工作区 7"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "将窗口移到工作区 8"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "将窗口移到工作区 9"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "将窗口移到工作区 10"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "将窗口移到工作区 11"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "将窗口移到工作区 12"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "将窗口左移一个工作区"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "将窗口右移一个工作区"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "将窗口上移一个工作区"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "将窗口下移一个工作区"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "如果窗口被其他窗口遮盖,则提升它,否则降低它"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "将窗口提升到其它窗口之上"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "将窗口降低到其它窗口之下"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "垂直最大化窗口"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "水平最大化窗口"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "将窗口移到西北(左上)角"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "将窗口移到东北(右上)角"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "将窗口移到西南(左下)角"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "将窗口移到东南(右下)角"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "将窗口移到屏幕北(顶)侧"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "将窗口移到屏幕南(底)侧"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "将窗口移到屏幕东(右)侧"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "将窗口移到屏幕西(左)侧"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "将窗口移到屏幕中心"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(未实现)导航以应用程序而不是窗口的方式工作"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"描述窗口标题栏所用字体的字体描述字符串。但是,只有在 titlebar_font_size 选项"
+"设置为 0 时,才使用该说明中的字体大小。同时,如果 titlebar_uses_desktop_font "
+"选项设置为真,则禁用该选项。默认情况下不设置 titlebar_font。"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "双击标题栏时的动作"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "鼠标中键单击标题栏时的动作"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "鼠标右键单击标题栏时的动作"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "标题栏上按钮的排列"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"标题栏上按钮的排列。它的值必须是一个字符串,比如“menu:minimize,maximize,"
+"spacer,close”;冒号分隔窗口左上角和右上角的按钮,按钮名称之间用逗号分隔。不允"
+"许指定重复的按钮。未知的按钮名称将被忽略,因此在将来版本的 marco 中可以添"
+"加新的按钮,而不至于破坏旧的版本。而特殊的 spacer 标记可在两个按钮之间添加一"
+"些空格。"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "自动提升获得焦点的窗口"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"单击窗口时如果按住这个修饰键将移动窗口(左键单击),改变窗口大小(中键单击),或"
+"者显示窗口菜单(右键单击)。使用“鼠标按钮更改大小”键可以互换左右键操作。例如,"
+"修饰键可写作“&lt;Alt&gt;”或者“&lt;Super&gt;”。"
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "按键组合对应的执行命令"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "复合管理器"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "控制新窗口如何获得窗口"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "当前主题"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "自动提升选项的几毫秒延迟"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "决定 Marco 是否是复合管理器。"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"决定应用程序或系统是否可以生成听得见的铃声;可以和“视觉铃声”一起使用,以便允"
+"许静默的铃声。"
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "禁用旧的或有缺陷的应用程序所需的错误功能"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "启用视觉铃声"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"如果为 true,而聚焦模式为“sloppy”或“mouse”,那么聚焦的窗口将会在指定延迟后自"
+"动升起,延迟的时间由 auto_raise_delay 键指定。此选项与单击行为并没有什么关"
+"系,它也与拖放时进入窗口无关。"
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"如果为 true,则忽略 titlebar_font 选项,并为窗口标题使用标准应用程序字体。"
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"如果为 true,marco 将会给用户提供较少的反馈,方法是使用线框、避免动画或者"
+"其它途径。这对许多用户来说,可用性大打折扣,但是这将允许较早的应用程序和终端"
+"服务器能够顺利运行。此外,如果开启了辅助功能,系统会自动禁用线框特性。"
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"如果为 true,那么 Marco 将以应用程序而不是窗口的方式工作。该概念有点抽象,"
+"但通常基于应用程序的设置更类似于 Mac 系统,而不太像 Windows 系统。当您以基于"
+"应用程序的模式聚焦窗口时,该应用程序中的所有窗口都将被提升。同时,在基于应用"
+"程序的模式下,聚焦点击不会被传递到其它应用程序中的窗口。但是,基于应用程序的"
+"模式目前还基本没有实现。"
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "如果为 true,则以可用性为代价而降低资源占用"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "用于修改窗口点击动作的修饰键"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "工作区名称"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "工作区数量"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"工作区数量。必须大于零,并有一个固定的最大值,以防由于不小心请求调用太多工作"
+"区而摧毁您的桌面。"
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "运行预定义的命令"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"使用右键设置这个为真来更改大小并且当按下“鼠标按钮修饰键”时使用中键来显示菜"
+"单,设置这个为假来实现相反的操作。"
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"将本选项设定为 false (假)将导致有缺陷的行为,所以强烈反对用户将该值由默认的 "
+"true (真)进行更改。许多动作(例如在客户区域内单击,移动或调整窗口大小)通常都会"
+"提升窗口,这其实是个副作用。将该选项设定为 false (假),在此强烈反对,将从其他"
+"用户动作中 decouple 提升,同时忽略由程序产生的提升要求。参见 http://bugzilla."
+"gnome.org/show_bug.cgi?id=445447#c6。但即便该选项为 false (假),仍然可以通过 "
+"alt + 左键单击窗口任何地方,在窗口装饰条上正常单击,或从寻呼中的特别消息(诸如"
+"从任务列表小程序的激活要求)来提升窗口。该选项目前在单击以聚焦(click-to-focus)"
+"模式中禁用。注意:当 raise_on_click 设为 false (假)而同时要提升窗口的一系列办"
+"法中并不包括从程序来的编程请求;此类请求将被忽略而不管为什么请求。如果你是一"
+"名程序开发者,而有某用户埋怨你的程序无法在该设定禁用下工作,告诉他们这都是他"
+"们破坏他们窗口管理器所犯的错,他们要么将该选项改回为 true (真),或好好享受他"
+"们自找的麻烦。"
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"某些应用程序破坏规定从而导致窗口管理器功能失常。该选项将 Marco 置于完全正"
+"确模式下,这样的用户界面会更具有一致性,假定您不需要运行任何有缺陷的应用程"
+"序。"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "系统铃声发声"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"通知 Marco 如何实现系统铃声或其它应用程序响铃的视觉标识。目前有两种值,“全"
+"屏”将以黑白色闪烁整个屏幕,而“框架闪烁”将闪烁发出响铃信号的应用程序的标题栏。"
+"如果发送响铃的程序未知(通常是默认的“系统响铃”),则闪烁当前窗口的标题栏。"
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N 键值定义这些命令对应的按键组"
+"合。按下 run_command_N 对应的按键组合将执行命令 command_N。"
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot 键值定义了导致调用此"
+"设置的按键组合。"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot 键值定义了导"
+"致调用此设置的按键组合。"
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"运行 /apps/marco/keybinding_commands 中相应编号的命令的按键组合。其格式类"
+"似于“&lt;Control&gt;a”或者“&lt;Shift&gt;&lt;Alt&gt;F1”。该分析程序的格式相当"
+"自由并允许大小写或者缩写,如“&lt;Ctl&gt;”和“&lt;Ctrl&gt;”。如果将该选项设置为"
+"特殊字符串“disabled”,那么此操作将没有按键组合。"
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "工作区名称。"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "屏幕抓图命令"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "主题决定窗口边框、标题栏等的外观。"
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr "提升窗口前的延迟时间(如果 auto_raise 设置为真)。延迟时间的单位为毫秒。"
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"窗口焦点模式指明窗口的激活方式。它有三个可能的值;“click”表示必须单击窗口才能"
+"聚焦该窗口,“sloppy”表示当鼠标进入窗口时,即会聚焦该窗口,“mouse”表示当鼠标进"
+"入窗口时会聚焦该窗口,当鼠标离开该窗口时则会失去焦点。"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "窗口抓图命令"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"这个选项决定在标题栏上双击的效果。当前有效的选项包括,“toggle_shade”将卷起/展"
+"开窗口,“toggle_maximize”将最大化/还原窗"
+"口,“toggle_maximize_horizontally”和“toggle_maximize_vertically”将分别在水平"
+"和垂直方向上最大化窗口,“minimize”将最小化窗口,“shade”将卷起窗口,“menu”将显"
+"示窗口菜单,“lower”将把窗口推至最后b,而“none”将不执行任何操作。"
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"这个选项决定在标题栏上单击中键的效果。当前有效的选项包括,“toggle_shade”将卷"
+"起/展开窗口,“toggle_maximize”将最大化/还原窗"
+"口,“toggle_maximize_horizontally”和“toggle_maximize_vertically”将分别在水平"
+"和垂直方向上最大化窗口,“minimize”将最小化窗口,“shade”将卷起窗口,“menu”将显"
+"示窗口菜单,“lower”将把窗口推至最后b,而“none”将不执行任何操作。"
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"这个选项决定在标题栏上单击右键的效果。当前有效的选项包括,“toggle_shade”将卷"
+"起/展开窗口,“toggle_maximize”将最大化/还原窗"
+"口,“toggle_maximize_horizontally”和“toggle_maximize_vertically”将分别在水平"
+"和垂直方向上最大化窗口,“minimize”将最小化窗口,“shade”将卷起窗口,“menu”将显"
+"示窗口菜单,“lower”将把窗口推至最后b,而“none”将不执行任何操作。"
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"此选项提供了关于新创建的窗口如何获得焦点的额外控制。目前有效的选项包"
+"括,“smart”将应用用户普通的聚焦模式,而“strict”将使得通过终端启动的窗口不获得"
+"焦点。"
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"当应用程序或系统发出“铃声”时,打开视觉标识;适合有听力障碍的用户以及在吵闹的"
+"环境中使用。"
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "在窗口标题中使用标准系统字体"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "视觉铃声类型"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "升起是否作为其它用户交互的副作用"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "是否使用右键更改大小"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "窗口焦点模式"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "窗口标题字体"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "用法:%s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "关闭窗口"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "窗口菜单"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "最小化窗口"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "最大化窗口"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "恢复窗口"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "卷起窗口"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "展开窗口"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "窗口常居顶端"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "取消窗口常居顶端"
+
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "总在可见工作区"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "只将窗口放在一个工作区"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "最小化(_N)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "最大化(_X)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "取消最大化(_X)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "卷起(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "展开(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "移动(_M)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "改变大小(_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "将标题栏上移动到屏幕上(_S)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "常居顶端(_T)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "总在可见工作区(_A)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "只在此工作区(_O)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "移动到左侧工作区(_L)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "移动到右侧工作区(_I)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "移动到上侧工作区(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "移动到下侧工作区(_D)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "关闭(_C)"
+
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "工作区 %d%n"
+
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "工作区 1_0"
+
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "工作区 %s%d"
+
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "移动到另外的工作区(_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "上"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "下"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "左"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "右"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "框架几何布局没有指定“%s”尺寸"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "框架几何布局没有指定“%s”尺寸(该尺寸是为边框“%s”指定的)"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "按钮长宽比 %g 不合理"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "框架几何布局没有指定按钮大小"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "渐变应至少有两种颜色"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK 颜色规范必须将状态包含在方括号中,例如 gtk:fg[NORMAL]其中 NORMAL 是状态;"
+"无法解析“%s”"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK 颜色规范必须在状态后有一个闭方括号,例如 gtk:fg[NORMAL],其中 NORMAL 是状"
+"态;无法解析“%s”"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "不理解颜色规范中的状态“%s”"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "不理解颜色规范中的颜色组成部分“%s”"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "混合格式为“blend/bg_color/fg_color/alpha”,“%s”不符合该格式"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "无法解析混合色中的 Alpha 值“%s”"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "混合色中的 Alpha 值“%s”不在 0.0 到 1.0 之间"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "阴影格式为“shade/base_color/factor”,“%s”不符合该格式"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "无法解析阴影色中的阴影因子“%s”"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "阴影色中的阴影因子“%s”为负数"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "无法解析颜色“%s”"
+
+#: ../src/ui/theme.c:1586
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "坐标表达式包含不允许的字符“%s”"
+
+#: ../src/ui/theme.c:1613
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "坐标表达式包含无法解析的浮点数“%s”"
+
+#: ../src/ui/theme.c:1627
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "坐标表达式包含无法解析的整数“%s”"
+
+#: ../src/ui/theme.c:1749
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "坐标表达式在该文本开始处包含未知的运算符:“%s”"
+
+#: ../src/ui/theme.c:1806
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "坐标表达式为空或无法理解"
+
+#: ../src/ui/theme.c:1917 ../src/ui/theme.c:1927 ../src/ui/theme.c:1961
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "坐标表达式用零做除数"
+
+#: ../src/ui/theme.c:1969
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "坐标表达式试图对浮点数使用 mod 运算符"
+
+#: ../src/ui/theme.c:2025
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "坐标表达式的运算符“%s”应该是一个操作数"
+
+#: ../src/ui/theme.c:2034
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "坐标表达式的某个操作数应该是运算符"
+
+#: ../src/ui/theme.c:2042
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "坐标表达式以运算符结尾,而不是以操作数结尾"
+
+#: ../src/ui/theme.c:2052
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "坐标表达式的运算符“%c”后面跟着运算符“%c”,之间没有操作数"
+
+#: ../src/ui/theme.c:2199 ../src/ui/theme.c:2240
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "坐标表达式有未知的变量或常数“%s”"
+
+#: ../src/ui/theme.c:2294
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "坐标表达式溢出了其缓冲区。"
+
+#: ../src/ui/theme.c:2323
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "坐标表达式有一个闭括号,而没有开括号"
+
+#: ../src/ui/theme.c:2387
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "坐标表达式有一个开括号,而没有闭括号"
+
+#: ../src/ui/theme.c:2398
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "坐标表达式似乎没有任何运算符或操作数"
+
+#: ../src/ui/theme.c:2602 ../src/ui/theme.c:2622 ../src/ui/theme.c:2642
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "主题包含的一个表达式产生错误:%s\n"
+
+#: ../src/ui/theme.c:4209
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"必须为该框架风格指定<button function=\"%s\" state=\"%s\" draw_ops=\"whatever"
+"\"/>"
+
+#: ../src/ui/theme.c:4717 ../src/ui/theme.c:4742
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"缺少 <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4786
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "无法载入主题“%s”:%s\n"
+
+#: ../src/ui/theme.c:4916 ../src/ui/theme.c:4923 ../src/ui/theme.c:4930
+#: ../src/ui/theme.c:4937 ../src/ui/theme.c:4944
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "没有为主题“%2$s”设置 <%1$s>"
+
+#: ../src/ui/theme.c:4952
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"没有为窗口类型“%s”(在主题“%s”中)设置框架风格,请添加一个 <window type=\"%s\" "
+"style_set=\"whatever\"/> 元素"
+
+#: ../src/ui/theme.c:5395 ../src/ui/theme.c:5457 ../src/ui/theme.c:5520
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "用户定义的常数必须以大写字母开头;而“%s”却不必"
+
+#: ../src/ui/theme.c:5403 ../src/ui/theme.c:5465 ../src/ui/theme.c:5528
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "常数“%s”已被定义"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "元素 <%2$s> 上没有“%1$s”属性"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "行 %d 字符 %d:%s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "属性“%s”在同一个 <%s> 元素上重复了两次"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "在该上下文中,属性“%s”对 <%s> 元素无效"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "无法将“%s” 解析为整数"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "不理解结尾字符“%1$s”(位于字符串“%2$s”中)"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "整数 %ld 必须是正数"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "整数 %ld 过大,当前最大值为 %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "无法将“%s”解析为浮点数"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "布尔值必须为“真”或“假”,不能为“%s”"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "角度值必须界于 0.0 到 360.0 之间,现在是 %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "Alpha 值必须界于 0.0(不可见)到 1.0(完全不透明)之间,现在是 %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"无效的标题比例“%s”(必须是 xx-small、x-small、small、medium、large、x-large、"
+"xx-large 中的一个)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "再次使用了 <%s> 名称“%s”"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> 父级“%s”尚未定义"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> 几何布局“%s”尚未定义"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> 必须指定一个几何布局或者一个带有几何布局的父级"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "要让 alpha 值有意义,您必须指定背景"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "未知的类型“%s”在元素 <%s> 上"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "未知的 style_set“%s”在元素 <%s> 上"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "已经为窗口类型“%s”指定了一种风格设置"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "不允许元素 <%s> 在 <%s> 下方"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr "不能同时指定按钮的“button_width”、“button_height”和“aspect_ratio”"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "距离“%s”未知"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "长宽比“%s”未知"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "边框“%s”未知"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "元素 <%s> 上没有“start_angle”或“from”属性"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "元素 <%s> 上没有“extent_angle”或“to”属性"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "不理解梯度类型的值“%s”"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "不理解填充类型“%s”(用于 <%s> 元素)"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "不理解状态“%s”(用于 <%s> 元素)"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "不理解阴影“%s”(用于 <%s> 元素)"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "不理解箭头“%s”(用于 <%s> 元素)"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "尚未定义名为“%s”的 <draw_ops>"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "此处包括 draw_ops“%s”将创建一个循环引用"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "框架段的位置“%s”未知"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "在位置 %s 处已经有一段框架风格"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "尚未定义名为“%s”的 <draw_ops>"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "按钮的函数“%s”未知"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "按钮函数“%s”在此版本(%d,需要的是 %d)中不存在"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "按钮的状态“%s”未知"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "框架风格已经有一个函数为 %s、状态为 %s 的按钮"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "“%s”不是 focus 属性的有效值"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "“%s”不是 state 属性的有效值"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "尚未定义名为“%s”的风格"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "“%s”不是 resize 属性的有效值"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "状态为 maximized/shaded 的 <%s> 元素不应有“resize”属性"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "状态为 maximized 的 <%s> 元素不应有“resize”属性"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "已经为 state 属性 %s、resize 属性 %s、focus 属性 %s 指定了风格"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "已经为 state 属性 %s、focus 属性 %s 指定了风格"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"一个 <piece> 元素不能有两个 draw_ops(主题指定了一个 draw_ops属性和一个 "
+"<draw_ops> 元素,或者指定了两个元素)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"一个 <button> 元素不能有两个 draw_ops(主题指定了一个 draw_ops属性和一个 "
+"<draw_ops> 元素,或者指定了两个元素)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"一个 <menu_icon> 元素不能有两个 draw_ops(主题指定了一个draw_ops 属性和一个 "
+"<draw_ops> 元素,或者指定了两个元素)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "主题中最外面的元素必须是 <marco_theme>,而不能是 <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "name/author/date/description 元素中不允许有元素 <%s>"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<constant> 元素中不允许有元素 <%s>"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "distance/border/aspect_ratio 元素中不允许有元素 <%s>"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "draw operation 元素中不允许有元素 <%s>"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "元素 <%s> 不允许出现在 <%s> 元素内"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "没有为框架段提供 draw_ops"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "没有为按钮提供 draw_ops"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "元素 <%s> 中不允许有文本"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "为此主题指定了两次<%s>"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "找不到主题 %s 的有效文件\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "主题文件 %s 不包含根 <marco_theme> 元素"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/窗口(_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/窗口(W)/撕下"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/窗口(W)/对话框(_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/窗口(W)/模态对话框(_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/窗口(W)/工具(_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/窗口(W)/启动屏幕(_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/窗口(W)/上侧停靠(_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/窗口(W)/下侧停靠(_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/窗口(W)/左侧停靠(_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/窗口(W)/右侧停靠(_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/窗口(W)/全部停靠(_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/窗口(W)/桌面(_K)"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "这是示例对话框中的示例消息"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "虚假菜单项 %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "只有边框的窗口"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "栏"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "普通的应用程序窗口"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "对话框"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "模态对话框"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "工具盘"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "撕下的菜单"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "边框"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "按钮布局测试 %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "%g 毫秒用来绘制一个窗口框架"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "用法:marco-theme-viewer [主题名称]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "装入主题出错:%s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "在 %2$g 秒内装入主题“%1$s”\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "普通标题字体"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "小标题字体"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "大标题字体"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "按钮布局"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "基准"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "窗口标题在这里"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"在 %2$g 的客户端秒(每帧 %3$g 毫秒)和包括 X 服务器资源在内的 %4$g 秒时钟时间"
+"(每帧 %5$g 毫秒)内绘制 %1$d 帧\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "位置表达式测试返回了 TRUE 但设置错误"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "位置表达式测试返回了 FALSE 但并没有设置错误"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "期待错误但没有给出错误"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "期待错误 %d,但给出了 %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "未期待错误,但返回了错误:%s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x 值为 %d,但应该为 %d"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y 值为 %d,但应该为 %d "
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "在 %2$g 秒内处理了 %1$d 个坐标表达式(平均 %3$g 秒)\n"
+
+#~ msgid "Failed to read saved session file %s: %s\n"
+#~ msgstr "无法读取保存的会话文件 %s:%s\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "打开这些窗口中的另外一个"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "这是一个演示按钮,带有“打开”图标"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "这是一个演示按钮,带有“退出”图标"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "无法通过对话进程解析消息“%s”\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "读取对话显示进程时出错:%s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr "启动 marco-dialog 查询有关杀死应用程序的情况时出错:%s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr "启动 marco-dialog 以警告应用程序不支持会话管理时出错:%s\n"
+
+#~ msgid "Title"
+#~ msgstr "标题"
+
+#~ msgid "Class"
+#~ msgstr "类别"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "运行“%s”时发生错误:\n"
+#~ "%s"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "为此主题指定了两次 <author>"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "为此主题指定了两次 <copyright>"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "为此主题指定了两次 <date>"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "为此主题指定了两次 <description>"
diff --git a/po/zh_HK.po b/po/zh_HK.po
new file mode 100644
index 00000000..c1c1b629
--- /dev/null
+++ b/po/zh_HK.po
@@ -0,0 +1,3396 @@
+# Chinese (Hong Kong) translation of marco.
+# Copyright (C) 2002-07 Free Software Foundation, Inc.
+# Abel Cheung <[email protected]>, 2002-2003.
+# Woodman Tuen <[email protected]>, 2004-07.
+# Chao-Hsiung Liao <[email protected]>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco 2.28.1\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-02-16 19:11+0800\n"
+"PO-Revision-Date: 2010-02-16 19:11+0800\n"
+"Last-Translator: Chao-Hsiung Liao <[email protected]>\n"
+"Language-Team: Chinese (Hong Kong) <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "桌面"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "視窗管理員"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "響鈴事件"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "未知的視窗資訊要求:%d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> 沒有回應。"
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "你可以選擇稍等一下直到它可以繼續,或者強制程式立即結束。"
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "等待(_W)"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "強制結束(_F)"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "無法取得主機名稱:%s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "遺失視窗管理所需的 %s 延伸功能"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "無法開啟 X Window 畫面‘%s’\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"跟畫面‘%s’失去聯繫;\n"
+"很可能 X 伺服程式已經中止運作,或是你強行中止了視窗管理員。\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "畫面‘%3$s’發生嚴重輸入/出錯誤 %1$d (%2$s)。\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "其它程式已經使用了按鍵 %s 加上特殊按鍵 %x 作為按鍵組合\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"執行 <tt>%s</tt> 時發生錯誤:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "並未定義任何指令 %d。\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "沒有定義任何終端機指令。\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"版權所有 (C) 2001-%s Havoc Pennington, Red Hat, Inc. 及其它開發者\n"
+"本程式是自由軟件;有關版權的詳情請參考源程式碼。\n"
+"本程式不負任何擔保責任;亦無對適售性或特定目的適用性所為的默示性擔保。\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "停用到作業階段管理程式的連線"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "以 Marco 取代執行中的視窗管理員"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "指定作業階段管理 ID"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "使用的 X 畫面"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "以 savefile 初始化作業階段"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "顯示版本"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "使用同步方式調用 X 函數"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "開啟組合功能"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "關閉組合功能"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "不要將已最大化且沒有裝飾的視窗最大化"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "找不到佈景主題目錄:%s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "找不到任何佈景主題!請確定 %s 存在及其中存放了平常使用的佈景主題。\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "無法重新啟動:%s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf 設定鍵‘%s’的設定值無效\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "MateConf 設定鍵 %2$s 的值 %1$d 超出範圍 (%3$d 至 %4$d)\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf 設定鍵“%s”的設定值類型無效\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr "關閉了對不合規格的程式的支援。某些程式可能無法正常運作。\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "無法從 MateConf 設定鍵 %2$s 分析字型描述文字“%1$s”\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "組態資料庫中的“%s”設定值不是有效的滑鼠按鈕修改功能鍵\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "將工作區數目設定為 %d 個時出現錯誤:%s\n"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "工作區 %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "組態資料庫中的“%s”不是按鍵組合“%s”的有效設定值\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "將第 %d 個工作區的名稱設定為“%s”時出現錯誤:%s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "設定複合視窗狀態時出現錯誤:%s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "畫面‘%2$s’中的第 %1$d 個螢幕無效\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr "畫面‘%2$s’中的第 %1$d 個螢幕已經有了視窗管理員;請嘗試使用 --replace 選項來替換目前的視窗管理員。\n"
+
+# FIXME: I'm still unclear about the meaning of XGetSelectionOwner -- Abel
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "無法在畫面“%2$s”中的第 %1$d 個螢幕進行視窗管理員選擇程序\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "畫面“%2$s”中的第 %1$d 個螢幕已經有了視窗總管\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "無法釋放畫面“%2$s”中的第 %1$d 個螢幕\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"格式可以像「<Control>a」或是 <Shift><Alt>F1。\n"
+"分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許使用像「<Ctl>」及「<Ctrl>」等的縮寫。如果將此選項設定為字串「disabled」,則不會為該項動作安排任何按鍵組合。"
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"格式可以像「<Control>a」或是 <Shift><Alt>F1。\n"
+"分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許使用像「<Ctl>」及「<Ctrl>」等的縮寫。如果將此選項設定為字串「disabled」,則不會為該項動作安排任何按鍵組合。\n"
+"\n"
+"這個按鍵組合可按下「shift」按鍵讓它反轉;因此,「shift」不能成為它所使用的按鍵之一。"
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "無法建立目錄‘%s’:%s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "無法開啟作業階段檔案‘%s’以供寫入資料:%s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "無法寫入作業階段檔案‘%s’:%s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "無法關閉作業階段檔案‘%s’:%s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "無法讀入已儲存的作業階段檔案 %s:%s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "無法分析已儲存的作業階段檔案:%s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "出現了 <marco_session> 的屬性,但作業階段代碼已經存在"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "<%2$s> 元素中出現不明的屬性 %1$s"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "重疊的 <window> 區域"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "不明的元素 %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr "這些視窗不支援 &quot;儲存目前的設定&quot; ,必須在下次登入後自行啟動。"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "無法開啟偵錯記錄檔:%s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "無法 fdopen() 記錄檔 %s:%s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "已開啟記錄檔 %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "編譯 Marco 時並沒有加入詳細偵錯模式的支援\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "視窗管理員:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "視窗總管出現錯誤:"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "視窗總管警告:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "視窗總管錯誤:"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr "視窗 %s 將 SM_CLIENT_ID 設定為該視窗本身,而不是 ICCCM 規格中指定的 WM_CLIENT_LEADER 視窗。\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr "視窗 %s 設定了 MWM 提示,表示它不可以調整大小,但又將大小下限定為 %d×%d 及將大小上限定為 %d×%d;這種做法不符合常理。\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "程式設定了多餘的 _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s(在 %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (以超級使用者)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (以 %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (以別的使用者)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "%2$s 指定了無效的 WM_TRANSIENT_FOR 視窗 0x%1$lx。\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"視窗 0x%lx 的 %s 屬性應該是\n"
+"type %s format %d,但實際上是\n"
+"type %s format %d n_items %d。\n"
+"這極可能是程式方面的漏洞,而不是視窗總管的漏洞。\n"
+"該視窗的其它屬性為 title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "視窗 0x%2$lx 的屬性 %1$s 中含有無效的 UTF-8 資料\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "視窗 0x%2$lx 的屬性清單 %1$s 的第 %3$d 個項目含有無效的 UTF-8 資料\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "切換至第 1 個工作區"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "切換至第 2 個工作區"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "切換至第 3 個工作區"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "切換至第 4 個工作區"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "切換至第 5 個工作區"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "切換至第 6 個工作區"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "切換至第 7 個工作區"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "切換至第 8 個工作區"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "切換至第 9 個工作區"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "切換至第 10 個工作區"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "切換至第 11 個工作區"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "切換至第 12 個工作區"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "切換至目前工作區的左方工作區"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "切換至目前工作區的右方工作區"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "切換至目前工作區的上方工作區"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "切換至目前工作區的下方工作區"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "在應用程式的視窗之間切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "在應用程式的視窗之間相反次序切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "在視窗之間切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "在視窗之間以相反次序切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "在面板及桌面之間切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "在面板及桌面之間以相反次序切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "在視窗及程式之間切換(立即模式)"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "立即在應用程式的視窗之間相反次序切換"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "將輸入焦點在各視窗之間切換(立即模式)"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "立即在視窗之間相反次序切換"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "將輸入焦點在面板及桌面之間切換(立即模式)"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "將輸入焦點在面板及桌面之間以相反次序切換(立即模式)"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "隱藏所有一般視窗並將焦點設至桌面"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "顯示面板的主選單"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "顯示面板的「執行程式」對話盒"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "擷取畫面快照"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "拍下視窗的畫面快照"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "執行終端機"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "使用視窗選單"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "切換全螢幕模式"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "切換最大化狀態"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "切換某個視窗是否永遠可以遮蔽其他視窗"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "視窗最大化"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "還原視窗"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "切換視窗捲起/放下狀態"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "視窗最小化"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "關閉視窗"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "移動視窗"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "調整視窗大小"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "切換視窗是否在所有工作區顯示或是只顯示於其中之一"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "將視窗移至第 1 個工作區"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "將視窗移至第 2 個工作區"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "將視窗移至第 3 個工作區"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "將視窗移至第 4 個工作區"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "將視窗移至第 5 個工作區"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "將視窗移至第 6 個工作區"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "將視窗移至第 7 個工作區"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "將視窗移至第 8 個工作區"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "將視窗移至第 9 個工作區"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "將視窗移至第 10 個工作區"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "將視窗移至第 11 個工作區"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "將視窗移至第 12 個工作區"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "將視窗移至左方的工作區"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "將視窗移至右方的工作區"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "將視窗移至上方的工作區"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "將視窗移至下方的工作區"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "若視窗被其他視窗遮蔽就抬升它,否則將它降下"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "令某個視窗覆蓋其它視窗"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "遮蔽某個視窗"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "將視窗縱向最大化"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "將視窗橫向最大化"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "將視窗移至北-西(左上)角"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "將視窗移至北-東(右上)角"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "將視窗移至南-西(左下)角"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "將視窗移至南-東(右下)角"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "將視窗移至畫面的北(上)方"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "將視窗移至畫面的南(下)方"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "將視窗移至畫面的東(右)方"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "將視窗移至畫面的西(左)方"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "將視窗移動至螢幕中央"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(未完成)使用桌面時以應用程式為主的方式運作,並非以視窗為主"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr "視窗標題所使用的字型的描述字串。可是只有當 titlebar_font_size option 設定為 0 時才會採用本設定值中的字型大小。另外,當 titlebar_uses_desktop_font 設定為‘true’時本設定值不會生效。"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "連按兩下標題列所表示的操作程序"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "中鍵點選標題列所表示的操作程序"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "右擊標題列所表示的操作程序"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "標題列上的按鈕排列"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr "標題列上的按鈕排列。設定值必須為字串,例如“menu:minimize,maximize,spacer,close”;冒號表示將視窗左上角及右上角分開,而按鈕名稱則以逗號分開。不會接受重複的按鈕名稱。不明的按鈕會忽略不理,使得在日後的 marco 版本增加新的按鈕時也不會令舊版本無法使用。特殊的 spacer 標籤則是用來在兩個相鄰的按鈕之間加入空白。"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "輸入焦點所在的視窗自動地覆蓋其它視窗"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr "當在視窗中按下滑鼠按鈕及本特殊按鍵會:移動視窗(左按鈕)、調整視窗大小(中按鈕)或顯示視窗選單(右按鈕)。使用「resize_with_right_button」設定鍵可以交換中和右鍵的操作。特殊按鍵可以表示為「&lt;Alt&gt;」或「&lt;Super&gt;」那樣。"
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "按下按鍵組合後執行相關的指令"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "視窗管理程式"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "控制視窗如何取得焦點"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "目前的佈景主題"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "某視窗自動覆蓋其它視窗前延遲的時間"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "決定 Marco 是否視窗管理程式。"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr "決定程式或系統可否發出可聽見的「聲響」;配合「鈴聲視覺效果」後,就可以產生不發出聲音的「聲響」。"
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "關閉舊式或不合規格的程式所需的功能"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "啟用鈴聲視覺效果"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr "如設定為‘true’,而且焦點模式是“sloppy”或“mouse”的時候,輸入焦點所在的視窗經過某段時間後會自動完全顯示(auto_raise_delay 設定鍵指定了延遲的時間)。這跟按下視窗將視窗升起,及以在拖曳時進入視窗無關。"
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr "如設定為‘true’,則忽略 titlebar_font 選項,並在視窗標題中使用標準的程式字型。"
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr "如設定為‘true’,marco 會給使用者更少的回饋:會使用線框、防止動畫或使用其它方法的使用。這很明顯會減低很多給使用者的可用性。但可能會使到在啟用此項前不能使用的舊程式及終端服務可以運作。但是,如果使用了無障礙環境,線框功能將會停用,以防止捆綁的桌面破損。"
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr "如設定為‘true’,Marco 會以應用程式而不是以視窗為主的方式運作。它的概念是比較抽象,但大致上,以應用程式為主的設定會類似 Mac 多於 Windows。在應用程式為主的模式中,當視窗獲得輸入焦點時,所有該程式的視窗都會完全顯示出來。另外,在應用程式為主的模式中,若在輸入焦點以外的視窗按滑鼠按鈕,只會令輸入焦點轉移,按該下按鈕不會令程式帶來其它變化。另外,應用程式為主的設定目前大致上仍未編寫完成。"
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "如設定為‘true’,以改變可用性來換取使用更少的資源"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "按下指定的特殊按鍵後,點擊動作會代表不同的操作程序"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "工作區名稱"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "工作區數目"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr "工作區數目。必須大於 0,並有固定的最大值(防止因工作區數目過多而破壞桌面)。"
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "執行指定的指令"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr "將此項設為 true 則按下「mouse_button_modifier」指定的按鍵時,可用右鍵調整大小並以中鍵顯示選單;將它設為 false 則會以相反的方式運作。"
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr "將這個選項設定為 false 可能會導致程式錯誤的行為,因此強烈不建議使用者將它從預設的 true 改變。許多動作(例如:在客戶端區域點擊、移動或調整視窗大小)通常會同時讓該視窗有抬升的效果。將這個選項設定為 false,注意我們強烈不建議這麼做,會減低來自其他使用者動作的抬升視窗要求,並且忽略由應用程式產生的抬升要求。請查閱 http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6。即使在把這個選項設為 false 的時候,視窗仍然可能因為以下因素被抬升:在視窗中任何地方按 alt 加上滑鼠左擊、點選視窗裝飾區,或是來自傳呼機的特殊訊息,例如工作清單面板程式要求它進入使用中狀態。這個選項目前在點選以聚焦(click-to-focus)模式中是停用的。注意當 raise_on_click 設為 false 時一系列用來抬升視窗的方法中不包含來自應用程式的程式化要求;這類要求不論其原因為何都會被忽略。如果你是應用程式開發者,而且有使用者向你抱怨你的程式在停用這個選項時無法運作,請告訴他們那是「他們的問題」才使得視窗管理程式壞掉。因此他們只能把這個選項改回 true 或是繼續活在他們自己要求的「程式錯誤」中。"
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr "某些應用程式不符合規定,導致令視窗管理員要加入某些不應該有的功能。本選項會關閉對這些不合規格的程式的支援,如果你不需要執行任何不合規格的程式,這樣的使用者界面會較好。"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "系統聲響可發出聲音"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"讓 Marco 知道當系統或程式發出「鈴聲」時,如何顯示該「鈴聲」的視覺效果。目前可接受的值有兩個:\n"
+"“fullscreen”令整個畫面以黑白方式閃爍\n"
+"“frame_flash”令發出鈴聲的程式的視窗標題列閃動。如果不知道發出鈴聲的是哪一個視窗(主要的例子為預設的「系統聲響」),則會令目前輸入焦點所在的視窗閃動標題列。"
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr "/apps/marco/global_keybindings/run_command_N 設定鍵中定義了相應指令所使用的按鍵組合。按下 run_command_N 的按鍵組合會執行 command_N。"
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr "/apps/marco/global_keybindings/run_command_screenshot 設定鍵中定義了相應指令所使用的按鍵組合。"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr "/apps/marco/global_keybindings/run_command_window_screenshot 設定鍵中定義了相應指令所使用的按鍵組合。"
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr "本按鍵組合可以執行在 /apps/marco/keybinding_commands 中加上相應數字的指令。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "工作區的名稱。"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "桌面畫面快照指令"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "佈景主題可指定視窗邊框、標題列等的外觀。"
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr "如果選用 auto_raise 選項時,令視窗不被遮蔽的延遲時間。延遲的時間會以 1/1000 秒為單位來表示。"
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"「視窗焦點模式」表示視窗如何對輸入產生反應。它有 3 個可接受的值:\n"
+"“click”表示必須在視窗按滑鼠按鈕才會令視窗獲取輸入焦點,\n"
+"“sloppy”表示當鼠標在某視窗上時會令該視窗獲取輸入焦點,最後\n"
+"“mouse”表示當鼠標在某視窗上時會令該視窗獲取輸入焦點,而且當鼠標移離視窗時輸入焦點也會脫離該視窗。"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "視窗畫面快照指令"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr "本選項決定在標題列上連按兩下滑鼠按鈕的效果。目前有效的選項為:「toggle_shade」會捲起/放下視窗,「toggle_maximize」會切換是否將視窗最大化,「toggle_maximize_horizontally」和「toggle_maximize_vertically」會根據其方向決定最大化的方式。「minimize」會將視窗最小化,「shade」會捲起視窗,「menu」會顯示視窗選單,「降低」會把視窗置於所有其他視窗之後,而「nome」則不會作出任何反應。"
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr "本選項決定在標題列上按下滑鼠中鍵的效果。目前有效的選項為:「toggle_shade」會捲起/放下視窗,「toggle_maximize」會切換是否將視窗最大化,「toggle_maximize_horizontally」和「toggle_maximize_vertically」會根據其方向決定最大化的方式。「minimize」會將視窗最小化,「shade」會捲起視窗,「menu」會顯示視窗選單,「降低」會把視窗置於所有其他視窗之後,而「nome」則不會作出任何反應。"
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr "本選項決定在標題列上安下滑鼠右鍵的效果。目前有效的選項為:「toggle_shade」會捲起/放下視窗,「toggle_maximize」會切換是否將視窗最大化,「toggle_maximize_horizontally」和「toggle_maximize_vertically」會根據其方向決定最大化的方式。「minimize」會將視窗最小化,「shade」會捲起視窗,「menu」會顯示視窗選單,「降低」會把視窗置於所有其他視窗之後,而「nome」則不會作出任何反應。"
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr "本選項會在新建視窗取得焦點上提供符加的控制。它有兩個可用的值“smart”會套用使用者平常使用的焦點模式,及“strick”會導致在終端中執行的視窗在開始時不會取得焦點。"
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr "當程式系統發出「聲響」或「鈴聲」時,以視覺方式表示。對於聽障人士、在嘈雜的環境中時,這個設定會比較有用。"
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "在視窗標題中使用標準系統字型"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "鈴聲視覺效果類型"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "由於其他使用的動作,提升視窗取得焦點應否是一個副作用"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "是否以右鍵調整大小"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "視窗焦點模式"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "視窗標題列字型"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "用法:%s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "關閉視窗"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "視窗選單"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "視窗最小化"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "視窗最大化"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "還原視窗"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "捲起視窗(_U)"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "放下視窗"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "視窗保留在最上層"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "視窗移離最上層"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "在所有工作區顯示"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "視窗只置於一個工作區"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "最小化(_N)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "最大化(_X)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "取消最大化(_X)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "捲起(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "放下(_U)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "移動(_M)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "調整大小(_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "在畫面上移動標題列(_S)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "總是在最上層(_T)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "在所有工作區顯示(_A)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "只在本工作區顯示(_O)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "移至左方的工作區(_L)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "移至右方的工作區(_I)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "移至上方的工作區(_U)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "移至下方的工作區(_D)"
+
+# (Abel) take care of the same string in libwnck
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "關閉(_C)"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "工作區 %d%n"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "工作區 1_0"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "工作區 %s%d"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "移至另一個工作區(_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "頂"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "底"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "左"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "右"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "邊框的位置大小中沒有指定“%s”部分的大小"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "邊框的位置大小中沒有指定“%2$s”邊框中的“%1$s”部分"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "按鈕的長寬比 %g 不合理"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "邊框的位置大小規格內未有指定按鈕的大小"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "漸變色至少應該有兩種顏色"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr "GTK 色彩規格規定必須在狀態外加上方括號,例如 gtk:fg[NORMAL],這裏 NORMAL 表示狀態;無法分析“%s”"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr "GTK 色彩規格規定必須在狀態後加上閉方括號,例如 gtk:fg[NORMAL],這裏 NORMAL 表示狀態;無法分析“%s”"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "無法將“%s”理解為色彩規格中的狀態"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "無法將“%s”理解為色彩規格中的色彩部分"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "指定混色的格式是“blend/背景顏色/前景顏色/透明度”,“%s”不符合規格"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "無法理解“%s”作為混色的透明度數值"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "混色的透明度數值“%s”不是在 0.0 至 1.0 之間"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "陰影的格式是“shade/基本顏色/比重”,但“%s”不符合格式"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "在陰影顏色中無法將“%s”理解為陰影比重"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "在陰影顏色中陰影比重“%s”是負數"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "無法分析顏色“%s”"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "座標表達式中出現不可接受的字符‘%s’"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "座標表達式中出現無法分析的浮點小數‘%s’"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "座標表達式中出現無法分析的整數‘%s’"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "在座標表達式中,以下文字的開始部分含有不明的運算符:“%s”"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "座標表達式是空白的或是無法分析"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "座標表達式中出現被 0 整除的錯誤"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "座標表達式中出現將浮點數使用於餘數運算符 (mod) 的錯誤"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "在座標表達式中,應該有運算子的地方出現了運算符“%s”"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "在座標表達式中,應該有運算符的地方出現了運算子"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "結束座標表達式的是一個運算符而非運算子"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "在座標表達式中,運算符“%c”緊隨運算符“%c”出現,但中間沒有任何運算子"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "座標表達式中出現不明的變數或常數“%s”"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "座標表達式分析器令緩衝溢位。"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "座標表達式中的閉括號沒有相應的開括號"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "座標表達式中的開括號沒有相應的閉括號"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "座標表達式中似乎沒有任何運算符或運算子"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "佈景主題中含有引致錯誤的表達式:%s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr "此邊框款式必須指定 <button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr "缺少了 <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "無法載入佈景主題“%s”:%s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "佈景主題“%s”未指定 <%s>"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr "在佈景主題“%2$s”中,視窗類型“%1$s”沒有指定任何邊框款式。請加上 <window type=\"%3$s\" style_set=\"whatever\"/> 元素"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "自行定義的常數必須以大寫字母開始;但“%s”不是"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "已定義了“%s”常數"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "在元素 <%2$s> 中沒有「%1$s」屬性"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "第 %d 行第 %d 字:%s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "屬性「%s」在同一個 <%s> 元素中重複了兩次"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "在此關聯選單中,屬性「%s」在 <%s> 元素中是無效的"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "無法以整數的方式分析“%s”"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "無法理解字串“%2$s”中的結束字符“%1$s”"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "整數 %ld 必須為正數"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "整數 %ld 太大,目前可接受的最大值為 %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "無法以浮點小數的方式分析“%s”"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "邏輯值必須為“true”或“false”,不是“%s”"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "角度必須在 0.0 至 360.0 之間,此處的值為 %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "透明度必須在 0.0(完全透明)至 1.0(完全不透明)之間,此處的值為 %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"無效的標題大小“%s”(必須為 xx-small、x-small、small、medium、large、\n"
+"x-large、xx-large 其中一個)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> 的 name 屬性“%s”用了超過一次"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> 的主元素“%s”沒有任何定義"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> 元素的位置大小“%s”沒有任何定義"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> 必須自己指定位置大小或指定有位置大小的主元素"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "必須指定背景使得透明 ( alpha) 值的變得有意義"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "<%2$s> 元素之內出現不明的類型“%1$s”"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "<%2$s> 元素之內出現不明的 style_set“%1$s”"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "視窗類型“%s”已經分配了 style set"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "元素 <%s> 不允許在 <%s> 之下"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr "不可能同時指定按鈕的闊度/長度 (button_width/button_height) 及長寬比(aspect_ratio)"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "不明的距離“%s”"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "不明的長寬比“%s”"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "不明的邊框“%s”"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "元素 <%s> 中沒有“start_angle”或“from”屬性"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "元素 <%s> 中沒有“extent_angle”或“to”屬性"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "無法將“%s”理解為漸變色的樣式"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "無法理解 <%2$s> 元素中的填充類型“%1$s”"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "無法將“%s”理解為 <%s> 元素的狀態"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "無法將“%s”理解為 <%s> 元素的陰影"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "無法將“%s”理解為 <%s> 元素的箭頭"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "沒有定義任何名稱為“%s”的 <draw_ops>"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "這裏的 draw_ops“%s”會造成循環"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "邊框組件指定了不明的位置“%s”"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "邊框款式已經在位置 %s 中指定了一件邊框組件"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "沒有定義任何名稱為“%s”的 <draw_ops>"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "按鈕擁有不明的功能“%s”"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "按鈕功能“%s”不存在於這個 版本(%d,要求 %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "無法理解“%s”為按鈕的狀態"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "邊框款式已經指定了一個擁有 %s 功能及 %s 狀態的按鈕"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "“%s”不是 focus 屬性的有效設定值"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "“%s”不是 state 屬性的有效設定值"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "沒有定義任何稱為“%s”的款式"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "“%s”不是 resize 屬性的有效設定值"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "元素 <%s> 不應在最大化或捲起的狀態中指定“resize”屬性"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "不應在元素 <%s> 最大化的狀態中指定“resize”屬性"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "當 state=%s resize=%s focus=%s 時,樣式早已經被指定了"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "當 state=%s focus=%s 時,樣式早已經被指定了"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "一個 <piece> 元素不可同時使用兩個 draw_ops (佈景主題同時指定了一個 draw_ops 屬性及一個 <draw_ops> 元素,或是指定了兩個元素)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "一個 <button> 元素不可同時使用兩個 draw_ops (佈景主題同時指定了一個 draw_ops 屬性及一個 <draw_ops> 元素,或是指定了兩個元素)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr "一個 <menu_icon> 元素不可同時使用兩個 draw_ops (佈景主題同時指定了一個 draw_ops 屬性及一個 <draw_ops> 元素,或是指定了兩個元素)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "佈景主題中最外層的元素必須為 <marco_theme> 而不是 <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "元素 <%s> 不許在名稱/作者/日期/描述元素內出現"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<%s> 元素不可出現在 <constant> 元素內"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "<%s> 元素不可出現於 distance/border/aspect_ratio 元素之內"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "元素 <%s> 不允許在有關繪圖操作的元素內出現"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%s> 元素不可出現在 <%s> 元素內"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "邊框沒有提供任何 draw_ops 屬性"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "按鈕沒有提供任何 draw_ops 屬性"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> 元素內不可出現任何文字"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> 指定了此佈景主題兩次"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "無法佈景主題的有效檔案 %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "佈景檔 %s 沒有頂層的 <marco_theme> 元素"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/視窗(_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/視窗/分開"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/視窗/對話視窗(_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/視窗/模態對話視窗(_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/視窗/工具(_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/視窗/啟動畫面(_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/視窗/上工作區(_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/視窗/下工作區(_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/視窗/左工作區(_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/視窗/右工作區(_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/視窗/所有工作區(_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/視窗/桌面(_K)"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "這是在樣版對話視窗中的樣版訊息"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "假的選單項目 %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "只有邊框的視窗"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "列"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "正常的程式視窗"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "對話盒"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "模態對話盒"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "公用程式控制板"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "關閉選單"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "邊框"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "按鈕配置測試 %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "繪畫一個視窗需時 %g 毫秒"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "用法: marco-theme-viewer [佈景主題名稱]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "載入佈景主題失敗 %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "載入佈景主題 “%s” 需時 %g 秒\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "正常標題列字型"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "小標題列字型"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "大標題列字型"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "按鈕配置"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "速度測試"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "這裏是視窗標題"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"繪畫 %d 幀需時:\n"
+"在客戶端是 %g 秒(每幀 %g 毫秒)\n"
+"包括 X 伺服器資源的實際消耗時間是 %g 秒(每幀 %g 毫秒)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "位置表現測試返回值是「正確」,但有 set error"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "位置表現測試返回值是「錯誤」,但沒有 set error"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "預期會發生錯誤,但結果並沒錯誤發生"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "預期會發生錯誤 %d ,但結果卻出現 %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "預期不會發生錯誤,但結果返回了一個:%s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x 的數值是 %d,%d是預期中的數值"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y 的數值是 %d,%d是預期中的數值"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "分析 %d 座標表現需時 %g 秒(平均 %g 秒)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "開啟一個同樣的視窗"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "這是有開啟圖示的展示用按鈕"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "這是有離開圖示的展示用按鈕"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "無法從對話視窗進程中分析訊息“%s”\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "從對話視窗進程中讀取資料時出現錯誤:%s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr "啟動 marco-dialog 來詢問是否強行中止其它程式時出現錯誤:%s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "目前有不支援作業階段管理的程式存在,但當啟動 metactiy-dialog 來顯示有關此"
+#~ "類程式的警告訊息時出現錯誤:%s\n"
+
+#~ msgid "Title"
+#~ msgstr "標題"
+
+#~ msgid "Class"
+#~ msgstr "分類"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "執行“%s”時發生錯誤:\n"
+#~ "%s。"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "此佈景主題指定了兩次 <author>"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "此佈景主題指定了兩次 <copyright>"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "此佈景主題指定了兩次 <date>"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "此佈景主題指定了兩次 <description>"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr "當嘗試啟動 marco-dialog 來顯示某指令的錯誤訊息時出現錯誤:%s\n"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "“%s”的類型不是整數"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "儲存在 MateConf 設定鍵 %2$s 的值 %1$d 不是一個合理的游標大小數目,應該 "
+#~ "1..128 範圍內的數值\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "MateConf 設定鍵 %2$s 的值 %1$d 不是一個合理的工作區數目,目前的最大值為 %3"
+#~ "$d\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "<marco_session> 元素中出現不明的屬性 %s"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "<maximized> 元素中出現不明的屬性 %s"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "<geometry> 元素中出現不明的屬性 %s"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "通常很多動作(例如,點擊客戶端區域,移動或調整視窗大小)都會出現將視窗提升"
+#~ "的副作用。設定本選項為 “false”(相當不建議)會消除由於其他使用者的動作引致的"
+#~ "視窗提升,並忽略由應用程式產生的提升要求。請查閱 http://bugzilla.mate."
+#~ "org/show_bug.cgi?id=445447#c6。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至目前工作區上方的工作區。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至目前工作區下方的工作區。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至目前工作區左方的工作區。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至目前工作區右方的工作區。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 1 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 10 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 11 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 12 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 2 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 3 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 4 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 5 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 6 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 7 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 8 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 9 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合可以啟用視窗選單。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許"
+#~ "使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為字"
+#~ "串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以進入「移動模式」,這時可以使用鍵盤來移動視窗。格式可以"
+#~ "像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是"
+#~ "比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以進入「調整大小模式」,這時可以使用鍵盤來調整視窗大小。格式可"
+#~ "以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時"
+#~ "是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會隱藏所有普通的視窗並將輸入焦點移至桌面。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合會令視窗最大化。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許"
+#~ "使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為字"
+#~ "串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合會令視窗最小化。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許"
+#~ "使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為字"
+#~ "串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至下方的工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至左方的工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至右方的工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至上方的工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 1 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 10 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 11 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 12 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 2 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 3 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 4 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 5 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 6 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 7 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 8 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 9 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在面板及桌面之間以相反次序切換。格"
+#~ "式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字"
+#~ "串時是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在面板及桌面之間以相反次序切換。格"
+#~ "式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字"
+#~ "串時是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在各視窗之間以相反次序切換。如果配"
+#~ "合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在各視窗之間以相反次序切換。如果配"
+#~ "合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在各視窗之間以相反次序切換。如果配"
+#~ "合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在各視窗之間以相反次序切換。如果配"
+#~ "合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在面板及桌面之間切換。格式可以"
+#~ "像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是"
+#~ "比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在面板及桌面之間切換。格式可以"
+#~ "像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是"
+#~ "比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在各視窗之間切換。如果配"
+#~ "合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在各視窗之間切換。(預設為 &lt;"
+#~ "Alt&gt;F6)如果配合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以"
+#~ "像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是"
+#~ "比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在各視窗之間切換。(預設為 &lt;"
+#~ "Alt&gt;Escape) 如果配合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式"
+#~ "可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串"
+#~ "時是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在各視窗之間切換。(預設為 &lt;"
+#~ "Alt&gt;Tab) 如果配合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可"
+#~ "以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時"
+#~ "是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以切換視窗是否在「最上層」顯示。「最上層」表示視窗永遠不會被其"
+#~ "它重叠的視窗遮蔽。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許使用"
+#~ "像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為字"
+#~ "串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合可以切換全螢幕模式。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以切換視窗是否在最大化的狀態。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將視窗狀態切換為捲起/放下。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以切換視窗在所有工作區顯示,還是只在一個工作區顯示。格式可以"
+#~ "像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是"
+#~ "比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合會令視窗從最大化狀態還原。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以顯示「執行程式」對話視窗。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以開啟終端機。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許"
+#~ "使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為字"
+#~ "串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以啟動畫面快照公用程式,擷取某視窗的畫面。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以啟動畫面快照公用程式。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合可以顯示面板的主選單。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會切換視窗的顯示狀態,決定它會覆蓋其它視窗還是被其它視窗覆蓋。如"
+#~ "果該視窗本來被其它視窗覆蓋,則會反過來覆蓋其它視窗。相反,如果本來是覆蓋其"
+#~ "它視窗的,則會被其它視窗所覆蓋。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗被其它視窗遮蔽。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中向上移。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中向右移。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中移向右上角。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中移向左上角。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中向下移。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中移向右下角。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中移向左下角。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中向左移。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗覆蓋其它視窗。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將視窗大小調整至填滿所有水平空間。格式可以像“&lt;Control&gt;"
+#~ "a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使"
+#~ "用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此"
+#~ "選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將視窗大小調整至填滿所有垂直空間。格式可以像“&lt;Control&gt;"
+#~ "a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使"
+#~ "用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此"
+#~ "選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "切換是否在「最上層」顯示"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "視窗從最大化還原"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "視窗還原最大化"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "沒有任何“%s”屬性出現在 <%s> 元素內"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "佈景主題已經有備用圖示"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "佈景主題已經有備用的迷你圖示"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“name”屬性"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“value”屬性"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“top”屬性"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“bottom”屬性"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“left”屬性"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“right”屬性"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“color”屬性"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“x1”屬性"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“y1”屬性"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“x2”屬性"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“y2”屬性"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“y”屬性"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“width”屬性"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“height”屬性"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“start_angle”屬性"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“extent_angle”屬性"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“alpha”屬性"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“type”屬性"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“filename”屬性"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“state”屬性"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“shadow”屬性"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“arrow”屬性"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“value”屬性"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“position”屬性"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“function”屬性"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“state”屬性"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“focus”屬性"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“style”屬性"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“resize”屬性"
diff --git a/po/zh_TW.po b/po/zh_TW.po
new file mode 100644
index 00000000..17e4466a
--- /dev/null
+++ b/po/zh_TW.po
@@ -0,0 +1,3510 @@
+# Chinese (Taiwan) translation of marco.
+# Copyright (C) 2002-07 Free Software Foundation, Inc.
+# Abel Cheung <[email protected]>, 2002-2003.
+# Woodman Tuen <[email protected]>, 2004-07.
+# Chao-Hsiung Liao <[email protected]>, 2009.
+msgid ""
+msgstr ""
+"Project-Id-Version: marco 2.28.1\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-02-16 19:11+0800\n"
+"PO-Revision-Date: 2010-02-16 13:57+0800\n"
+"Last-Translator: Chao-Hsiung Liao <[email protected]>\n"
+"Language-Team: Chinese (traditional) <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: ../src/50-marco-desktop-key.xml.in.h:1
+msgid "Desktop"
+msgstr "桌面"
+
+#: ../src/50-marco-key.xml.in.h:1
+msgid "Window Management"
+msgstr "視窗管理員"
+
+#: ../src/core/bell.c:294
+msgid "Bell event"
+msgstr "響鈴事件"
+
+#: ../src/core/core.c:206
+#, c-format
+msgid "Unknown window information request: %d"
+msgstr "未知的視窗資訊要求:%d"
+
+#. Translators: %s is a window title
+#: ../src/core/delete.c:96
+#, c-format
+msgid "<tt>%s</tt> is not responding."
+msgstr "<tt>%s</tt> 沒有回應。"
+
+#: ../src/core/delete.c:101
+msgid ""
+"You may choose to wait a short while for it to continue or force the "
+"application to quit entirely."
+msgstr "您可以選擇稍等一下直到它可以繼續,或者強制程式立即結束。"
+
+#: ../src/core/delete.c:110
+msgid "_Wait"
+msgstr "等待(_W)"
+
+#: ../src/core/delete.c:110
+msgid "_Force Quit"
+msgstr "強制結束(_F)"
+
+#: ../src/core/delete.c:208
+#, c-format
+msgid "Failed to get hostname: %s\n"
+msgstr "無法取得主機名稱:%s\n"
+
+#: ../src/core/display.c:258
+#, c-format
+msgid "Missing %s extension required for compositing"
+msgstr "遺失視窗管理所需的 %s 延伸功能"
+
+#: ../src/core/display.c:336
+#, c-format
+msgid "Failed to open X Window System display '%s'\n"
+msgstr "無法開啟 X Window 畫面‘%s’\n"
+
+#: ../src/core/errors.c:272
+#, c-format
+msgid ""
+"Lost connection to the display '%s';\n"
+"most likely the X server was shut down or you killed/destroyed\n"
+"the window manager.\n"
+msgstr ""
+"跟畫面‘%s’失去聯繫;\n"
+"很可能 X 伺服程式已經中止運作,或是您強行中止了視窗管理員。\n"
+
+#: ../src/core/errors.c:279
+#, c-format
+msgid "Fatal IO error %d (%s) on display '%s'.\n"
+msgstr "畫面‘%3$s’發生嚴重輸入/出錯誤 %1$d (%2$s)。\n"
+
+#: ../src/core/keybindings.c:680
+#, c-format
+msgid ""
+"Some other program is already using the key %s with modifiers %x as a "
+"binding\n"
+msgstr "其它程式已經使用了按鍵 %s 加上特殊按鍵 %x 作為按鍵組合\n"
+
+#. Displayed when a keybinding which is
+#. * supposed to launch a program fails.
+#.
+#: ../src/core/keybindings.c:2294
+#, c-format
+msgid ""
+"There was an error running <tt>%s</tt>:\n"
+"\n"
+"%s"
+msgstr ""
+"執行 <tt>%s</tt> 時發生錯誤:\n"
+"\n"
+"%s"
+
+#: ../src/core/keybindings.c:2383
+#, c-format
+msgid "No command %d has been defined.\n"
+msgstr "並未定義任何指令 %d。\n"
+
+#: ../src/core/keybindings.c:3337
+#, c-format
+msgid "No terminal command has been defined.\n"
+msgstr "沒有定義任何終端機指令。\n"
+
+#: ../src/core/main.c:131
+#, c-format
+msgid ""
+"marco %s\n"
+"Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+"This is free software; see the source for copying conditions.\n"
+"There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A "
+"PARTICULAR PURPOSE.\n"
+msgstr ""
+"marco %s\n"
+"版權所有 (C) 2001-%s Havoc Pennington, Red Hat, Inc. 及其它開發者\n"
+"本程式是自由軟體;有關版權的詳情請參考源程式碼。\n"
+"本程式不負任何擔保責任;亦無對適售性或特定目的適用性所為的默示性擔保。\n"
+
+#: ../src/core/main.c:269
+msgid "Disable connection to session manager"
+msgstr "停用到作業階段管理程式的連線"
+
+#: ../src/core/main.c:275
+msgid "Replace the running window manager with Marco"
+msgstr "以 Marco 取代執行中的視窗管理員"
+
+#: ../src/core/main.c:281
+msgid "Specify session management ID"
+msgstr "指定作業階段管理 ID"
+
+#: ../src/core/main.c:286
+msgid "X Display to use"
+msgstr "使用的 X 畫面"
+
+#: ../src/core/main.c:292
+msgid "Initialize session from savefile"
+msgstr "以 savefile 初始化作業階段"
+
+#: ../src/core/main.c:298
+msgid "Print version"
+msgstr "顯示版本"
+
+#: ../src/core/main.c:304
+msgid "Make X calls synchronous"
+msgstr "使用同步方式調用 X 函式"
+
+#: ../src/core/main.c:310
+msgid "Turn compositing on"
+msgstr "開啟組合功能"
+
+#: ../src/core/main.c:316
+msgid "Turn compositing off"
+msgstr "關閉組合功能"
+
+#: ../src/core/main.c:322
+msgid ""
+"Don't make fullscreen windows that are maximized and have no decorations"
+msgstr "不要將已最大化且沒有裝飾的視窗最大化"
+
+#: ../src/core/main.c:528
+#, c-format
+msgid "Failed to scan themes directory: %s\n"
+msgstr "找不到佈景主題目錄:%s\n"
+
+#: ../src/core/main.c:544
+#, c-format
+msgid ""
+"Could not find a theme! Be sure %s exists and contains the usual themes.\n"
+msgstr "找不到任何佈景主題!請確定 %s 存在及其中存放了平常使用的佈景主題。\n"
+
+#: ../src/core/main.c:603
+#, c-format
+msgid "Failed to restart: %s\n"
+msgstr "無法重新啟動:%s\n"
+
+#.
+#. * We found it, but it was invalid. Complain.
+#. *
+#. * FIXME: This replicates the original behaviour, but in the future
+#. * we might consider reverting invalid keys to their original values.
+#. * (We know the old value, so we can look up a suitable string in
+#. * the symtab.)
+#. *
+#. * (Empty comment follows so the translators don't see this.)
+#.
+#.
+#: ../src/core/prefs.c:508 ../src/core/prefs.c:663
+#, c-format
+msgid "MateConf key '%s' is set to an invalid value\n"
+msgstr "MateConf 設定鍵‘%s’的設定值無效\n"
+
+#: ../src/core/prefs.c:589 ../src/core/prefs.c:832
+#, c-format
+msgid "%d stored in MateConf key %s is out of range %d to %d\n"
+msgstr "MateConf 設定鍵 %2$s 的值 %1$d 超出範圍 (%3$d 至 %4$d)\n"
+
+#: ../src/core/prefs.c:633 ../src/core/prefs.c:710 ../src/core/prefs.c:758
+#: ../src/core/prefs.c:822 ../src/core/prefs.c:1115 ../src/core/prefs.c:1131
+#: ../src/core/prefs.c:1148 ../src/core/prefs.c:1164
+#, c-format
+msgid "MateConf key \"%s\" is set to an invalid type\n"
+msgstr "MateConf 設定鍵“%s”的設定值類型無效\n"
+
+#: ../src/core/prefs.c:1234
+msgid ""
+"Workarounds for broken applications disabled. Some applications may not "
+"behave properly.\n"
+msgstr "關閉了對不合規格的程式的支援。某些程式可能無法正常運作。\n"
+
+#: ../src/core/prefs.c:1305
+#, c-format
+msgid "Could not parse font description \"%s\" from MateConf key %s\n"
+msgstr "無法從 MateConf 設定鍵 %2$s 分析字型描述文字“%1$s”\n"
+
+#: ../src/core/prefs.c:1367
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for mouse button "
+"modifier\n"
+msgstr "組態資料庫中的“%s”設定值不是有效的滑鼠按鈕修改功能鍵\n"
+
+#: ../src/core/prefs.c:1788
+#, c-format
+msgid "Error setting number of workspaces to %d: %s\n"
+msgstr "將工作區數目設定為 %d 個時出現錯誤:%s\n"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/core/prefs.c:1953 ../src/core/prefs.c:2456
+#, c-format
+msgid "Workspace %d"
+msgstr "工作區 %d"
+
+#: ../src/core/prefs.c:1983 ../src/core/prefs.c:2161
+#, c-format
+msgid ""
+"\"%s\" found in configuration database is not a valid value for keybinding "
+"\"%s\"\n"
+msgstr "組態資料庫中的“%s”不是按鍵組合“%s”的有效設定值\n"
+
+#: ../src/core/prefs.c:2537
+#, c-format
+msgid "Error setting name for workspace %d to \"%s\": %s\n"
+msgstr "將第 %d 個工作區的名稱設定為“%s”時出現錯誤:%s\n"
+
+#: ../src/core/prefs.c:2741
+#, c-format
+msgid "Error setting compositor status: %s\n"
+msgstr "設定複合視窗狀態時出現錯誤:%s\n"
+
+#: ../src/core/screen.c:357
+#, c-format
+msgid "Screen %d on display '%s' is invalid\n"
+msgstr "畫面‘%2$s’中的第 %1$d 個螢幕無效\n"
+
+#: ../src/core/screen.c:373
+#, c-format
+msgid ""
+"Screen %d on display \"%s\" already has a window manager; try using the --"
+"replace option to replace the current window manager.\n"
+msgstr ""
+"畫面‘%2$s’中的第 %1$d 個螢幕已經有了視窗管理員;請嘗試使用 --replace 選項來替"
+"換目前的視窗管理員。\n"
+
+# FIXME: I'm still unclear about the meaning of XGetSelectionOwner -- Abel
+#: ../src/core/screen.c:400
+#, c-format
+msgid ""
+"Could not acquire window manager selection on screen %d display \"%s\"\n"
+msgstr "無法在畫面“%2$s”中的第 %1$d 個螢幕進行視窗管理員選擇程序\n"
+
+#: ../src/core/screen.c:458
+#, c-format
+msgid "Screen %d on display \"%s\" already has a window manager\n"
+msgstr "畫面“%2$s”中的第 %1$d 個螢幕已經有了視窗總管\n"
+
+#: ../src/core/screen.c:668
+#, c-format
+msgid "Could not release screen %d on display \"%s\"\n"
+msgstr "無法釋放畫面“%2$s”中的第 %1$d 個螢幕\n"
+
+#. Translators: Please don't translate "Control", "Shift", etc, since these
+#. * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+#. * "disabled" must also stay as it is.
+#.
+#: ../src/core/schema-bindings.c:169
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action."
+msgstr ""
+"格式可以像「<Control>a」或是 <Shift><Alt>F1。\n"
+"分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許使用像「<Ctl>」及"
+"「<Ctrl>」等的縮寫。如果將此選項設定為字串「disabled」,則不會為該項動作安排"
+"任何按鍵組合。"
+
+#: ../src/core/schema-bindings.c:177
+msgid ""
+"The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n"
+"\n"
+"The parser is fairly liberal and allows lower or upper case, and also "
+"abbreviations such as \"<Ctl>\" and \"<Ctrl>\". If you set the option to the "
+"special string \"disabled\", then there will be no keybinding for this "
+"action.\n"
+"\n"
+"This keybinding may be reversed by holding down the \"shift\" key; "
+"therefore, \"shift\" cannot be one of the keys it uses."
+msgstr ""
+"格式可以像「<Control>a」或是 <Shift><Alt>F1。\n"
+"分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許使用像「<Ctl>」及"
+"「<Ctrl>」等的縮寫。如果將此選項設定為字串「disabled」,則不會為該項動作安排"
+"任何按鍵組合。\n"
+"\n"
+"這個按鍵組合可按下「shift」按鍵讓它反轉;因此,「shift」不能成為它所使用的按"
+"鍵之一。"
+
+#: ../src/core/session.c:850 ../src/core/session.c:857
+#, c-format
+msgid "Could not create directory '%s': %s\n"
+msgstr "無法建立目錄‘%s’:%s\n"
+
+#: ../src/core/session.c:867
+#, c-format
+msgid "Could not open session file '%s' for writing: %s\n"
+msgstr "無法開啟作業階段檔案‘%s’以供寫入資料:%s\n"
+
+#: ../src/core/session.c:1008
+#, c-format
+msgid "Error writing session file '%s': %s\n"
+msgstr "無法寫入作業階段檔案‘%s’:%s\n"
+
+#: ../src/core/session.c:1013
+#, c-format
+msgid "Error closing session file '%s': %s\n"
+msgstr "無法關閉作業階段檔案‘%s’:%s\n"
+
+#. oh, just give up
+#: ../src/core/session.c:1106
+#, c-format
+msgid "Failed to read saved session file %s: %s\n"
+msgstr "無法讀入已儲存的作業階段檔案 %s:%s\n"
+
+#: ../src/core/session.c:1145
+#, c-format
+msgid "Failed to parse saved session file: %s\n"
+msgstr "無法分析已儲存的作業階段檔案:%s\n"
+
+#: ../src/core/session.c:1194
+#, c-format
+msgid "<marco_session> attribute seen but we already have the session ID"
+msgstr "出現了 <marco_session> 的屬性,但作業階段代碼已經存在"
+
+#: ../src/core/session.c:1207 ../src/core/session.c:1282
+#: ../src/core/session.c:1314 ../src/core/session.c:1386
+#: ../src/core/session.c:1446
+#, c-format
+msgid "Unknown attribute %s on <%s> element"
+msgstr "<%2$s> 元素中出現不明的屬性 %1$s"
+
+#: ../src/core/session.c:1224
+#, c-format
+msgid "nested <window> tag"
+msgstr "重疊的 <window> 區域"
+
+#: ../src/core/session.c:1466
+#, c-format
+msgid "Unknown element %s"
+msgstr "不明的元素 %s"
+
+#: ../src/core/session.c:1818
+msgid ""
+"These windows do not support &quot;save current setup&quot; and will have to "
+"be restarted manually next time you log in."
+msgstr "這些視窗不支援 &quot;儲存目前的設定&quot; ,必須在下次登入後自行啟動。"
+
+#: ../src/core/util.c:101
+#, c-format
+msgid "Failed to open debug log: %s\n"
+msgstr "無法開啟偵錯記錄檔:%s\n"
+
+#: ../src/core/util.c:111
+#, c-format
+msgid "Failed to fdopen() log file %s: %s\n"
+msgstr "無法 fdopen() 記錄檔 %s:%s\n"
+
+#: ../src/core/util.c:117
+#, c-format
+msgid "Opened log file %s\n"
+msgstr "已開啟記錄檔 %s\n"
+
+#: ../src/core/util.c:136 ../src/tools/marco-message.c:176
+#, c-format
+msgid "Marco was compiled without support for verbose mode\n"
+msgstr "編譯 Marco 時並沒有加入詳細偵錯模式的支援\n"
+
+#: ../src/core/util.c:236
+msgid "Window manager: "
+msgstr "視窗管理員:"
+
+#: ../src/core/util.c:388
+msgid "Bug in window manager: "
+msgstr "視窗總管出現錯誤:"
+
+#: ../src/core/util.c:421
+msgid "Window manager warning: "
+msgstr "視窗總管警告:"
+
+#: ../src/core/util.c:449
+msgid "Window manager error: "
+msgstr "視窗總管錯誤:"
+
+#. Translators: This is the title used on dialog boxes
+#. eof all-keybindings.h
+#: ../src/core/util.c:570 ../src/marco.desktop.in.h:1
+#: ../src/marco-wm.desktop.in.h:1
+msgid "Marco"
+msgstr "Marco"
+
+#. first time through
+#: ../src/core/window.c:5642
+#, c-format
+msgid ""
+"Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER "
+"window as specified in the ICCCM.\n"
+msgstr ""
+"視窗 %s 將 SM_CLIENT_ID 設定為該視窗本身,而不是 ICCCM 規格中指定的 "
+"WM_CLIENT_LEADER 視窗。\n"
+
+#. We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+#. * authoritative source for that info. Some apps such as mplayer or
+#. * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+#. * leads to e.g. us not fullscreening their windows. Apps that set
+#. * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+#. * about these apps but make them work.
+#.
+#: ../src/core/window.c:6207
+#, c-format
+msgid ""
+"Window %s sets an MWM hint indicating it isn't resizable, but sets min size %"
+"d x %d and max size %d x %d; this doesn't make much sense.\n"
+msgstr ""
+"視窗 %s 設定了 MWM 提示,表示它不可以調整大小,但又將大小下限定為 %d×%d 及將"
+"大小上限定為 %d×%d;這種做法不符合常理。\n"
+
+#: ../src/core/window-props.c:244
+#, c-format
+msgid "Application set a bogus _NET_WM_PID %lu\n"
+msgstr "程式設定了多餘的 _NET_WM_PID %lu\n"
+
+#. Translators: the title of a window from another machine
+#: ../src/core/window-props.c:388
+#, c-format
+msgid "%s (on %s)"
+msgstr "%s(在 %s)"
+
+#. Simple case-- don't bother to look it up. It's root.
+#: ../src/core/window-props.c:420
+#, c-format
+msgid "%s (as superuser)"
+msgstr "%s (以超級使用者)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine
+#: ../src/core/window-props.c:438
+#, c-format
+msgid "%s (as %s)"
+msgstr "%s (以 %s)"
+
+#. Translators: the title of a window owned by another user
+#. * on this machine, whose name we don't know
+#: ../src/core/window-props.c:444
+#, c-format
+msgid "%s (as another user)"
+msgstr "%s (以別的使用者)"
+
+#: ../src/core/window-props.c:1430
+#, c-format
+msgid "Invalid WM_TRANSIENT_FOR window 0x%lx specified for %s.\n"
+msgstr "%2$s 指定了無效的 WM_TRANSIENT_FOR 視窗 0x%1$lx。\n"
+
+#: ../src/core/xprops.c:155
+#, c-format
+msgid ""
+"Window 0x%lx has property %s\n"
+"that was expected to have type %s format %d\n"
+"and actually has type %s format %d n_items %d.\n"
+"This is most likely an application bug, not a window manager bug.\n"
+"The window has title=\"%s\" class=\"%s\" name=\"%s\"\n"
+msgstr ""
+"視窗 0x%lx 的 %s 屬性應該是\n"
+"type %s format %d,但實際上是\n"
+"type %s format %d n_items %d。\n"
+"這極可能是程式方面的漏洞,而不是視窗總管的漏洞。\n"
+"該視窗的其它屬性為 title=\"%s\" class=\"%s\" name=\"%s\"\n"
+
+#: ../src/core/xprops.c:401
+#, c-format
+msgid "Property %s on window 0x%lx contained invalid UTF-8\n"
+msgstr "視窗 0x%2$lx 的屬性 %1$s 中含有無效的 UTF-8 資料\n"
+
+#: ../src/core/xprops.c:484
+#, c-format
+msgid ""
+"Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"
+msgstr "視窗 0x%2$lx 的屬性清單 %1$s 的第 %3$d 個項目含有無效的 UTF-8 資料\n"
+
+#: ../src/include/all-keybindings.h:88
+msgid "Switch to workspace 1"
+msgstr "切換至第 1 個工作區"
+
+#: ../src/include/all-keybindings.h:90
+msgid "Switch to workspace 2"
+msgstr "切換至第 2 個工作區"
+
+#: ../src/include/all-keybindings.h:92
+msgid "Switch to workspace 3"
+msgstr "切換至第 3 個工作區"
+
+#: ../src/include/all-keybindings.h:94
+msgid "Switch to workspace 4"
+msgstr "切換至第 4 個工作區"
+
+#: ../src/include/all-keybindings.h:96
+msgid "Switch to workspace 5"
+msgstr "切換至第 5 個工作區"
+
+#: ../src/include/all-keybindings.h:98
+msgid "Switch to workspace 6"
+msgstr "切換至第 6 個工作區"
+
+#: ../src/include/all-keybindings.h:100
+msgid "Switch to workspace 7"
+msgstr "切換至第 7 個工作區"
+
+#: ../src/include/all-keybindings.h:102
+msgid "Switch to workspace 8"
+msgstr "切換至第 8 個工作區"
+
+#: ../src/include/all-keybindings.h:104
+msgid "Switch to workspace 9"
+msgstr "切換至第 9 個工作區"
+
+#: ../src/include/all-keybindings.h:106
+msgid "Switch to workspace 10"
+msgstr "切換至第 10 個工作區"
+
+#: ../src/include/all-keybindings.h:108
+msgid "Switch to workspace 11"
+msgstr "切換至第 11 個工作區"
+
+#: ../src/include/all-keybindings.h:110
+msgid "Switch to workspace 12"
+msgstr "切換至第 12 個工作區"
+
+#: ../src/include/all-keybindings.h:122
+msgid "Switch to workspace on the left of the current workspace"
+msgstr "切換至目前工作區的左方工作區"
+
+#: ../src/include/all-keybindings.h:126
+msgid "Switch to workspace on the right of the current workspace"
+msgstr "切換至目前工作區的右方工作區"
+
+#: ../src/include/all-keybindings.h:130
+msgid "Switch to workspace above the current workspace"
+msgstr "切換至目前工作區的上方工作區"
+
+#: ../src/include/all-keybindings.h:134
+msgid "Switch to workspace below the current workspace"
+msgstr "切換至目前工作區的下方工作區"
+
+#: ../src/include/all-keybindings.h:150
+msgid "Move between windows of an application, using a popup window"
+msgstr "在應用程式的視窗之間切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:153
+msgid "Move backward between windows of an application, using a popup window"
+msgstr "在應用程式的視窗之間相反次序切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:157
+msgid "Move between windows, using a popup window"
+msgstr "在視窗之間切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:160
+msgid "Move backward between windows, using a popup window"
+msgstr "在視窗之間以相反次序切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:163
+msgid "Move between panels and the desktop, using a popup window"
+msgstr "在面板及桌面之間切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:166
+msgid "Move backward between panels and the desktop, using a popup window"
+msgstr "在面板及桌面之間以相反次序切換,使用彈出式視窗"
+
+#: ../src/include/all-keybindings.h:171
+msgid "Move between windows of an application immediately"
+msgstr "在視窗及程式之間切換(立即模式)"
+
+#: ../src/include/all-keybindings.h:174
+msgid "Move backward between windows of an application immediately"
+msgstr "立即在應用程式的視窗之間相反次序切換"
+
+#: ../src/include/all-keybindings.h:177
+msgid "Move between windows immediately"
+msgstr "將輸入焦點在各視窗之間切換(立即模式)"
+
+#: ../src/include/all-keybindings.h:180
+msgid "Move backward between windows immediately"
+msgstr "立即在視窗之間相反次序切換"
+
+#: ../src/include/all-keybindings.h:183
+msgid "Move between panels and the desktop immediately"
+msgstr "將輸入焦點在面板及桌面之間切換(立即模式)"
+
+#: ../src/include/all-keybindings.h:186
+msgid "Move backward between panels and the desktop immediately"
+msgstr "將輸入焦點在面板及桌面之間以相反次序切換(立即模式)"
+
+#: ../src/include/all-keybindings.h:191
+msgid "Hide all normal windows and set focus to the desktop"
+msgstr "隱藏所有一般視窗並將焦點設至桌面"
+
+#: ../src/include/all-keybindings.h:194
+msgid "Show the panel's main menu"
+msgstr "顯示面板的主選單"
+
+#: ../src/include/all-keybindings.h:197
+msgid "Show the panel's \"Run Application\" dialog box"
+msgstr "顯示面板的「執行程式」對話盒"
+
+#: ../src/include/all-keybindings.h:238
+msgid "Take a screenshot"
+msgstr "擷取畫面快照"
+
+#: ../src/include/all-keybindings.h:240
+msgid "Take a screenshot of a window"
+msgstr "拍下視窗的畫面快照"
+
+#: ../src/include/all-keybindings.h:242
+msgid "Run a terminal"
+msgstr "執行終端機"
+
+#: ../src/include/all-keybindings.h:257
+msgid "Activate the window menu"
+msgstr "使用視窗選單"
+
+#: ../src/include/all-keybindings.h:260
+msgid "Toggle fullscreen mode"
+msgstr "切換全螢幕模式"
+
+#: ../src/include/all-keybindings.h:262
+msgid "Toggle maximization state"
+msgstr "切換最大化狀態"
+
+#: ../src/include/all-keybindings.h:264
+msgid "Toggle whether a window will always be visible over other windows"
+msgstr "切換某個視窗是否永遠可以遮蔽其他視窗"
+
+#: ../src/include/all-keybindings.h:266
+msgid "Maximize window"
+msgstr "視窗最大化"
+
+#: ../src/include/all-keybindings.h:268
+msgid "Restore window"
+msgstr "還原視窗"
+
+#: ../src/include/all-keybindings.h:270
+msgid "Toggle shaded state"
+msgstr "切換視窗捲起/放下狀態"
+
+#: ../src/include/all-keybindings.h:272
+msgid "Minimize window"
+msgstr "視窗最小化"
+
+#: ../src/include/all-keybindings.h:274
+msgid "Close window"
+msgstr "關閉視窗"
+
+#: ../src/include/all-keybindings.h:276
+msgid "Move window"
+msgstr "移動視窗"
+
+#: ../src/include/all-keybindings.h:278
+msgid "Resize window"
+msgstr "調整視窗大小"
+
+#: ../src/include/all-keybindings.h:281
+msgid "Toggle whether window is on all workspaces or just one"
+msgstr "切換視窗是否在所有工作區顯示或是只顯示於其中之一"
+
+#: ../src/include/all-keybindings.h:285
+msgid "Move window to workspace 1"
+msgstr "將視窗移至第 1 個工作區"
+
+#: ../src/include/all-keybindings.h:288
+msgid "Move window to workspace 2"
+msgstr "將視窗移至第 2 個工作區"
+
+#: ../src/include/all-keybindings.h:291
+msgid "Move window to workspace 3"
+msgstr "將視窗移至第 3 個工作區"
+
+#: ../src/include/all-keybindings.h:294
+msgid "Move window to workspace 4"
+msgstr "將視窗移至第 4 個工作區"
+
+#: ../src/include/all-keybindings.h:297
+msgid "Move window to workspace 5"
+msgstr "將視窗移至第 5 個工作區"
+
+#: ../src/include/all-keybindings.h:300
+msgid "Move window to workspace 6"
+msgstr "將視窗移至第 6 個工作區"
+
+#: ../src/include/all-keybindings.h:303
+msgid "Move window to workspace 7"
+msgstr "將視窗移至第 7 個工作區"
+
+#: ../src/include/all-keybindings.h:306
+msgid "Move window to workspace 8"
+msgstr "將視窗移至第 8 個工作區"
+
+#: ../src/include/all-keybindings.h:309
+msgid "Move window to workspace 9"
+msgstr "將視窗移至第 9 個工作區"
+
+#: ../src/include/all-keybindings.h:312
+msgid "Move window to workspace 10"
+msgstr "將視窗移至第 10 個工作區"
+
+#: ../src/include/all-keybindings.h:315
+msgid "Move window to workspace 11"
+msgstr "將視窗移至第 11 個工作區"
+
+#: ../src/include/all-keybindings.h:318
+msgid "Move window to workspace 12"
+msgstr "將視窗移至第 12 個工作區"
+
+#: ../src/include/all-keybindings.h:330
+msgid "Move window one workspace to the left"
+msgstr "將視窗移至左方的工作區"
+
+#: ../src/include/all-keybindings.h:333
+msgid "Move window one workspace to the right"
+msgstr "將視窗移至右方的工作區"
+
+#: ../src/include/all-keybindings.h:336
+msgid "Move window one workspace up"
+msgstr "將視窗移至上方的工作區"
+
+#: ../src/include/all-keybindings.h:339
+msgid "Move window one workspace down"
+msgstr "將視窗移至下方的工作區"
+
+#: ../src/include/all-keybindings.h:342
+msgid "Raise window if it's covered by another window, otherwise lower it"
+msgstr "若視窗被其他視窗遮蔽就抬升它,否則將它降下"
+
+#: ../src/include/all-keybindings.h:344
+msgid "Raise window above other windows"
+msgstr "令某個視窗覆蓋其它視窗"
+
+#: ../src/include/all-keybindings.h:346
+msgid "Lower window below other windows"
+msgstr "遮蔽某個視窗"
+
+#: ../src/include/all-keybindings.h:350
+msgid "Maximize window vertically"
+msgstr "將視窗縱向最大化"
+
+#: ../src/include/all-keybindings.h:354
+msgid "Maximize window horizontally"
+msgstr "將視窗橫向最大化"
+
+#: ../src/include/all-keybindings.h:358
+msgid "Move window to north-west (top left) corner"
+msgstr "將視窗移至北-西(左上)角"
+
+#: ../src/include/all-keybindings.h:361
+msgid "Move window to north-east (top right) corner"
+msgstr "將視窗移至北-東(右上)角"
+
+#: ../src/include/all-keybindings.h:364
+msgid "Move window to south-west (bottom left) corner"
+msgstr "將視窗移至南-西(左下)角"
+
+#: ../src/include/all-keybindings.h:367
+msgid "Move window to south-east (bottom right) corner"
+msgstr "將視窗移至南-東(右下)角"
+
+#: ../src/include/all-keybindings.h:371
+msgid "Move window to north (top) side of screen"
+msgstr "將視窗移至畫面的北(上)方"
+
+#: ../src/include/all-keybindings.h:374
+msgid "Move window to south (bottom) side of screen"
+msgstr "將視窗移至畫面的南(下)方"
+
+#: ../src/include/all-keybindings.h:377
+msgid "Move window to east (right) side of screen"
+msgstr "將視窗移至畫面的東(右)方"
+
+#: ../src/include/all-keybindings.h:380
+msgid "Move window to west (left) side of screen"
+msgstr "將視窗移至畫面的西(左)方"
+
+#: ../src/include/all-keybindings.h:383
+msgid "Move window to center of screen"
+msgstr "將視窗移動至螢幕中央"
+
+#: ../src/marco.schemas.in.in.h:1
+msgid "(Not implemented) Navigation works in terms of applications not windows"
+msgstr "(未完成)使用桌面時以應用程式為主的方式運作,並非以視窗為主"
+
+#: ../src/marco.schemas.in.in.h:2
+msgid ""
+"A font description string describing a font for window titlebars. The size "
+"from the description will only be used if the titlebar_font_size option is "
+"set to 0. Also, this option is disabled if the titlebar_uses_desktop_font "
+"option is set to true."
+msgstr ""
+"視窗標題所使用的字型的描述字串。可是只有當 titlebar_font_size option 設定為 "
+"0 時才會採用本設定值中的字型大小。另外,當 titlebar_uses_desktop_font 設定"
+"為‘true’時本設定值不會生效。"
+
+#: ../src/marco.schemas.in.in.h:3
+msgid "Action on title bar double-click"
+msgstr "雙擊標題列所表示的操作程序"
+
+#: ../src/marco.schemas.in.in.h:4
+msgid "Action on title bar middle-click"
+msgstr "中鍵點選標題列所表示的操作程序"
+
+#: ../src/marco.schemas.in.in.h:5
+msgid "Action on title bar right-click"
+msgstr "右擊標題列所表示的操作程序"
+
+#: ../src/marco.schemas.in.in.h:6
+msgid "Arrangement of buttons on the titlebar"
+msgstr "標題列上的按鈕排列"
+
+#: ../src/marco.schemas.in.in.h:7
+msgid ""
+"Arrangement of buttons on the titlebar. The value should be a string, such "
+"as \"menu:minimize,maximize,spacer,close\"; the colon separates the left "
+"corner of the window from the right corner, and the button names are comma-"
+"separated. Duplicate buttons are not allowed. Unknown button names are "
+"silently ignored so that buttons can be added in future marco versions "
+"without breaking older versions. A special spacer tag can be used to insert "
+"some space between two adjacent buttons."
+msgstr ""
+"標題列上的按鈕排列。設定值必須為字串,例如“menu:minimize,maximize,spacer,"
+"close”;冒號表示將視窗左上角及右上角分開,而按鈕名稱則以逗號分開。不會接受重"
+"複的按鈕名稱。不明的按鈕會忽略不理,使得在日後的 marco 版本增加新的按鈕時"
+"也不會令舊版本無法使用。特殊的 spacer 標籤則是用來在兩個相鄰的按鈕之間加入空"
+"白。"
+
+#: ../src/marco.schemas.in.in.h:8
+msgid "Automatically raises the focused window"
+msgstr "輸入焦點所在的視窗自動地覆蓋其它視窗"
+
+#: ../src/marco.schemas.in.in.h:9
+msgid ""
+"Clicking a window while holding down this modifier key will move the window "
+"(left click), resize the window (middle click), or show the window menu "
+"(right click). The middle and right click operations may be swapped using "
+"the \"resize_with_right_button\" key. Modifier is expressed as \"&lt;Alt&gt;"
+"\" or \"&lt;Super&gt;\" for example."
+msgstr ""
+"當在視窗中按下滑鼠按鈕及本特殊按鍵會:移動視窗(左按鈕)、調整視窗大小(中按"
+"鈕)或顯示視窗選單(右按鈕)。使用「resize_with_right_button」設定鍵可以交換"
+"中和右鍵的操作。特殊按鍵可以表示為「&lt;Alt&gt;」或「&lt;Super&gt;」那樣。"
+
+#: ../src/marco.schemas.in.in.h:10
+msgid "Commands to run in response to keybindings"
+msgstr "按下按鍵組合後執行相關的指令"
+
+#: ../src/marco.schemas.in.in.h:11
+msgid "Compositing Manager"
+msgstr "視窗管理程式"
+
+#: ../src/marco.schemas.in.in.h:12
+msgid "Control how new windows get focus"
+msgstr "控制視窗如何取得焦點"
+
+#: ../src/marco.schemas.in.in.h:13
+msgid "Current theme"
+msgstr "目前的佈景主題"
+
+#: ../src/marco.schemas.in.in.h:14
+msgid "Delay in milliseconds for the auto raise option"
+msgstr "某視窗自動覆蓋其它視窗前延遲的時間"
+
+#: ../src/marco.schemas.in.in.h:15
+msgid "Determines whether Marco is a compositing manager."
+msgstr "決定 Marco 是否視窗管理程式。"
+
+#: ../src/marco.schemas.in.in.h:16
+msgid ""
+"Determines whether applications or the system can generate audible 'beeps'; "
+"may be used in conjunction with 'visual bell' to allow silent 'beeps'."
+msgstr ""
+"決定程式或系統可否發出可聽見的「聲響」;配合「鈴聲視覺效果」後,就可以產生不"
+"發出聲音的「聲響」。"
+
+#: ../src/marco.schemas.in.in.h:17
+msgid "Disable misfeatures that are required by old or broken applications"
+msgstr "關閉舊式或不合規格的程式所需的功能"
+
+#: ../src/marco.schemas.in.in.h:18
+msgid "Enable Visual Bell"
+msgstr "啟用鈴聲視覺效果"
+
+#: ../src/marco.schemas.in.in.h:19
+msgid ""
+"If set to true, and the focus mode is either \"sloppy\" or \"mouse\" then "
+"the focused window will be automatically raised after a delay specified by "
+"the auto_raise_delay key. This is not related to clicking on a window to "
+"raise it, nor to entering a window during drag-and-drop."
+msgstr ""
+"如設定為‘true’,而且焦點模式是“sloppy”或“mouse”的時候,輸入焦點所在的視窗經過"
+"某段時間後會自動完全顯示(auto_raise_delay 設定鍵指定了延遲的時間)。這跟按下"
+"視窗將視窗升起,及以在拖曳時進入視窗無關。"
+
+#: ../src/marco.schemas.in.in.h:20
+msgid ""
+"If true, ignore the titlebar_font option, and use the standard application "
+"font for window titles."
+msgstr ""
+"如設定為‘true’,則忽略 titlebar_font 選項,並在視窗標題中使用標準的程式字型。"
+
+#: ../src/marco.schemas.in.in.h:21
+msgid ""
+"If true, marco will give the user less feedback by using wireframes, "
+"avoiding animations, or other means. This is a significant reduction in "
+"usability for many users, but may allow legacy applications to continue "
+"working, and may also be a useful tradeoff for terminal servers. However, "
+"the wireframe feature is disabled when accessibility is on."
+msgstr ""
+"如設定為‘true’,marco 會給使用者更少的回饋:會使用線框、防止動畫或使用其它"
+"方法的使用。這很明顯會減低很多給使用者的可用性。但可能會使到在啟用此項前不能"
+"使用的舊程式及終端服務可以運作。但是,如果使用了無障礙環境,線框功能將會停"
+"用,以防止捆綁的桌面破損。"
+
+#: ../src/marco.schemas.in.in.h:22
+msgid ""
+"If true, then Marco works in terms of applications rather than windows. "
+"The concept is a bit abstract, but in general an application-based setup is "
+"more like the Mac and less like Windows. When you focus a window in "
+"application-based mode, all the windows in the application will be raised. "
+"Also, in application-based mode, focus clicks are not passed through to "
+"windows in other applications. Application-based mode is, however, largely "
+"unimplemented at the moment."
+msgstr ""
+"如設定為‘true’,Marco 會以應用程式而不是以視窗為主的方式運作。它的概念是比"
+"較抽象,但大致上,以應用程式為主的設定會類似 Mac 多於 Windows。在應用程式為主"
+"的模式中,當視窗獲得輸入焦點時,所有該程式的視窗都會完全顯示出來。另外,在應"
+"用程式為主的模式中,若在輸入焦點以外的視窗按滑鼠按鈕,只會令輸入焦點轉移,按"
+"該下按鈕不會令程式帶來其它變化。另外,應用程式為主的設定目前大致上仍未編寫完"
+"成。"
+
+#: ../src/marco.schemas.in.in.h:23
+msgid "If true, trade off usability for less resource usage"
+msgstr "如設定為‘true’,以改變可用性來換取使用更少的資源"
+
+#: ../src/marco.schemas.in.in.h:24
+msgid "Modifier to use for modified window click actions"
+msgstr "按下指定的特殊按鍵後,點擊動作會代表不同的操作程序"
+
+#: ../src/marco.schemas.in.in.h:25
+msgid "Name of workspace"
+msgstr "工作區名稱"
+
+#: ../src/marco.schemas.in.in.h:26
+msgid "Number of workspaces"
+msgstr "工作區數目"
+
+#: ../src/marco.schemas.in.in.h:27
+msgid ""
+"Number of workspaces. Must be more than zero, and has a fixed maximum to "
+"prevent making the desktop unusable by accidentally asking for too many "
+"workspaces."
+msgstr ""
+"工作區數目。必須大於 0,並有固定的最大值(防止因工作區數目過多而破壞桌面)。"
+
+#: ../src/marco.schemas.in.in.h:28
+msgid "Run a defined command"
+msgstr "執行指定的指令"
+
+#: ../src/marco.schemas.in.in.h:29
+msgid ""
+"Set this to true to resize with the right button and show a menu with the "
+"middle button while holding down the key given in \"mouse_button_modifier\"; "
+"set it to false to make it work the opposite way around."
+msgstr ""
+"將此項設為 true 則按下「mouse_button_modifier」指定的按鍵時,可用右鍵調整大小"
+"並以中鍵顯示選單;將它設為 false 則會以相反的方式運作。"
+
+#: ../src/marco.schemas.in.in.h:30
+msgid ""
+"Setting this option to false can lead to buggy behavior, so users are "
+"strongly discouraged from changing it from the default of true. Many actions "
+"(e.g. clicking in the client area, moving or resizing the window) normally "
+"raise the window as a side-effect. Setting this option to false, which is "
+"strongly discouraged, will decouple raising from other user actions, and "
+"ignore raise requests generated by applications. See http://bugzilla.mate."
+"org/show_bug.cgi?id=445447#c6. Even when this option is false, windows can "
+"still be raised by an alt-left-click anywhere on the window, a normal click "
+"on the window decorations, or by special messages from pagers, such as "
+"activation requests from tasklist applets. This option is currently disabled "
+"in click-to-focus mode. Note that the list of ways to raise windows when "
+"raise_on_click is false does not include programmatic requests from "
+"applications to raise windows; such requests will be ignored regardless of "
+"the reason for the request. If you are an application developer and have a "
+"user complaining that your application does not work with this setting "
+"disabled, tell them it is _their_ fault for breaking their window manager "
+"and that they need to change this option back to true or live with the \"bug"
+"\" they requested."
+msgstr ""
+"將這個選項設定為 false 可能會導致程式錯誤的行為,因此強烈不建議使用者將它從預"
+"設的 true 改變。許多動作(例如:在客戶端區域點擊、移動或調整視窗大小)通常會"
+"同時讓該視窗有抬升的效果。將這個選項設定為 false,注意我們強烈不建議這麼做,"
+"會減低來自其他使用者動作的抬升視窗要求,並且忽略由應用程式產生的抬升要求。請"
+"查閱 http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6。即使在把這個選項設"
+"為 false 的時候,視窗仍然可能因為以下因素被抬升:在視窗中任何地方按 alt 加上"
+"滑鼠左擊、點選視窗裝飾區,或是來自呼叫器的特殊訊息,例如工作清單面板程式要求"
+"它進入使用中狀態。這個選項目前在點選以聚焦(click-to-focus)模式中是停用的。注"
+"意當 raise_on_click 設為 false 時一系列用來抬升視窗的方法中不包含來自應用程式"
+"的程式化要求;這類要求不論其原因為何都會被忽略。如果您是應用程式開發者,而且"
+"有使用者向您抱怨您的程式在停用這個選項時無法運作,請告訴他們那是「他們的問"
+"題」才使得視窗管理程式壞掉。因此他們只能把這個選項改回 true 或是繼續活在他們"
+"自己要求的「程式錯誤」中。"
+
+#: ../src/marco.schemas.in.in.h:31
+msgid ""
+"Some applications disregard specifications in ways that result in window "
+"manager misfeatures. This option puts Marco in a rigorously correct mode, "
+"which gives a more consistent user interface, provided one does not need to "
+"run any misbehaving applications."
+msgstr ""
+"某些應用程式不符合規定,導致令視窗管理員要加入某些不應該有的功能。本選項會關"
+"閉對這些不合規格的程式的支援,如果您不需要執行任何不合規格的程式,這樣的使用"
+"者界面會較好。"
+
+#: ../src/marco.schemas.in.in.h:32
+msgid "System Bell is Audible"
+msgstr "系統聲響可發出聲音"
+
+#: ../src/marco.schemas.in.in.h:33
+msgid ""
+"Tells Marco how to implement the visual indication that the system bell "
+"or another application 'bell' indicator has been rung. Currently there are "
+"two valid values, \"fullscreen\", which causes a fullscreen white-black "
+"flash, and \"frame_flash\" which causes the titlebar of the application "
+"which sent the bell signal to flash. If the application which sent the bell "
+"is unknown (as is usually the case for the default \"system beep\"), the "
+"currently focused window's titlebar is flashed."
+msgstr ""
+"讓 Marco 知道當系統或程式發出「鈴聲」時,如何顯示該「鈴聲」的視覺效果。目"
+"前可接受的值有兩個:\n"
+"“fullscreen”令整個畫面以黑白方式閃爍\n"
+"“frame_flash”令發出鈴聲的程式的視窗標題列閃動。如果不知道發出鈴聲的是哪一個視"
+"窗(主要的例子為預設的「系統聲響」),則會令目前輸入焦點所在的視窗閃動標題"
+"列。"
+
+#: ../src/marco.schemas.in.in.h:34
+msgid ""
+"The /apps/marco/global_keybindings/run_command_N keys define keybindings "
+"that correspond to these commands. Pressing the keybinding for run_command_N "
+"will execute command_N."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_N 設定鍵中定義了相應指令所使用"
+"的按鍵組合。按下 run_command_N 的按鍵組合會執行 command_N。"
+
+#: ../src/marco.schemas.in.in.h:35
+msgid ""
+"The /apps/marco/global_keybindings/run_command_screenshot key defines a "
+"keybinding which causes the command specified by this setting to be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_screenshot 設定鍵中定義了相應指"
+"令所使用的按鍵組合。"
+
+#: ../src/marco.schemas.in.in.h:36
+msgid ""
+"The /apps/marco/global_keybindings/run_command_window_screenshot key "
+"defines a keybinding which causes the command specified by this setting to "
+"be invoked."
+msgstr ""
+"/apps/marco/global_keybindings/run_command_window_screenshot 設定鍵中定義"
+"了相應指令所使用的按鍵組合。"
+
+#: ../src/marco.schemas.in.in.h:37
+msgid ""
+"The keybinding that runs the correspondingly-numbered command in /apps/"
+"marco/keybinding_commands The format looks like \"&lt;Control&gt;a\" or "
+"\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+"lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+"\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+"then there will be no keybinding for this action."
+msgstr ""
+"本按鍵組合可以執行在 /apps/marco/keybinding_commands 中加上相應數字的指"
+"令。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組"
+"合字串時是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+"Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何"
+"按鍵組合。"
+
+#: ../src/marco.schemas.in.in.h:38
+msgid "The name of a workspace."
+msgstr "工作區的名稱。"
+
+#: ../src/marco.schemas.in.in.h:39
+msgid "The screenshot command"
+msgstr "桌面畫面快照指令"
+
+#: ../src/marco.schemas.in.in.h:40
+msgid ""
+"The theme determines the appearance of window borders, titlebar, and so "
+"forth."
+msgstr "佈景主題可指定視窗邊框、標題列等的外觀。"
+
+#: ../src/marco.schemas.in.in.h:41
+msgid ""
+"The time delay before raising a window if auto_raise is set to true. The "
+"delay is given in thousandths of a second."
+msgstr ""
+"如果選用 auto_raise 選項時,令視窗不被遮蔽的延遲時間。延遲的時間會以 1/1000 "
+"秒為單位來表示。"
+
+#: ../src/marco.schemas.in.in.h:42
+msgid ""
+"The window focus mode indicates how windows are activated. It has three "
+"possible values; \"click\" means windows must be clicked in order to focus "
+"them, \"sloppy\" means windows are focused when the mouse enters the window, "
+"and \"mouse\" means windows are focused when the mouse enters the window and "
+"unfocused when the mouse leaves the window."
+msgstr ""
+"「視窗焦點模式」表示視窗如何對輸入產生反應。它有 3 個可接受的值:\n"
+"“click”表示必須在視窗按滑鼠按鈕才會令視窗獲取輸入焦點,\n"
+"“sloppy”表示當鼠標在某視窗上時會令該視窗獲取輸入焦點,最後\n"
+"“mouse”表示當鼠標在某視窗上時會令該視窗獲取輸入焦點,而且當鼠標移離視窗時輸入"
+"焦點也會脫離該視窗。"
+
+#: ../src/marco.schemas.in.in.h:43
+msgid "The window screenshot command"
+msgstr "視窗畫面快照指令"
+
+#: ../src/marco.schemas.in.in.h:44
+msgid ""
+"This option determines the effects of double-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"本選項決定在標題列上雙擊滑鼠按鈕的效果。目前有效的選項為:「toggle_shade」會"
+"捲起/放下視窗,「toggle_maximize」會切換是否將視窗最大化,"
+"「toggle_maximize_horizontally」和「toggle_maximize_vertically」會根據其方向"
+"決定最大化的方式。「minimize」會將視窗最小化,「shade」會捲起視窗,「menu」會"
+"顯示視窗選單,「降低」會把視窗置於所有其他視窗之後,而「nome」則不會作出任何"
+"反應。"
+
+#: ../src/marco.schemas.in.in.h:45
+msgid ""
+"This option determines the effects of middle-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"本選項決定在標題列上按下滑鼠中鍵的效果。目前有效的選項為:「toggle_shade」會"
+"捲起/放下視窗,「toggle_maximize」會切換是否將視窗最大化,"
+"「toggle_maximize_horizontally」和「toggle_maximize_vertically」會根據其方向"
+"決定最大化的方式。「minimize」會將視窗最小化,「shade」會捲起視窗,「menu」會"
+"顯示視窗選單,「降低」會把視窗置於所有其他視窗之後,而「nome」則不會作出任何"
+"反應。"
+
+#: ../src/marco.schemas.in.in.h:46
+msgid ""
+"This option determines the effects of right-clicking on the title bar. "
+"Current valid options are 'toggle_shade', which will shade/unshade the "
+"window, 'toggle_maximize' which will maximize/unmaximize the window, "
+"'toggle_maximize_horizontally' and 'toggle_maximize_vertically' which will "
+"maximize/unmaximize the window in that direction only, 'minimize' which will "
+"minimize the window, 'shade' which will roll the window up, 'menu' which "
+"will display the window menu, 'lower' which will put the window behind all "
+"the others, and 'none' which will not do anything."
+msgstr ""
+"本選項決定在標題列上安下滑鼠右鍵的效果。目前有效的選項為:「toggle_shade」會"
+"捲起/放下視窗,「toggle_maximize」會切換是否將視窗最大化,"
+"「toggle_maximize_horizontally」和「toggle_maximize_vertically」會根據其方向"
+"決定最大化的方式。「minimize」會將視窗最小化,「shade」會捲起視窗,「menu」會"
+"顯示視窗選單,「降低」會把視窗置於所有其他視窗之後,而「nome」則不會作出任何"
+"反應。"
+
+#: ../src/marco.schemas.in.in.h:47
+msgid ""
+"This option provides additional control over how newly created windows get "
+"focus. It has two possible values; \"smart\" applies the user's normal focus "
+"mode, and \"strict\" results in windows started from a terminal not being "
+"given focus."
+msgstr ""
+"本選項會在新建視窗取得焦點上提供符加的控制。它有兩個可用的值“smart”會套用使用"
+"者平常使用的焦點模式,及“strick”會導致在終端中執行的視窗在開始時不會取得焦"
+"點。"
+
+#: ../src/marco.schemas.in.in.h:48
+msgid ""
+"Turns on a visual indication when an application or the system issues a "
+"'bell' or 'beep'; useful for the hard-of-hearing and for use in noisy "
+"environments."
+msgstr ""
+"當程式系統發出「聲響」或「鈴聲」時,以視覺方式表示。對於聽障人士、在嘈雜的環"
+"境中時,這個設定會比較有用。"
+
+#: ../src/marco.schemas.in.in.h:49
+msgid "Use standard system font in window titles"
+msgstr "在視窗標題中使用標準系統字型"
+
+#: ../src/marco.schemas.in.in.h:50
+msgid "Visual Bell Type"
+msgstr "鈴聲視覺效果類型"
+
+#: ../src/marco.schemas.in.in.h:51
+msgid "Whether raising should be a side-effect of other user interactions"
+msgstr "由於其他使用的動作,提升視窗取得焦點應否是一個副作用"
+
+#: ../src/marco.schemas.in.in.h:52
+msgid "Whether to resize with the right button"
+msgstr "是否以右鍵調整大小"
+
+#: ../src/marco.schemas.in.in.h:53
+msgid "Window focus mode"
+msgstr "視窗焦點模式"
+
+#: ../src/marco.schemas.in.in.h:54
+msgid "Window title font"
+msgstr "視窗標題列字型"
+
+#: ../src/tools/marco-message.c:150
+#, c-format
+msgid "Usage: %s\n"
+msgstr "用法:%s\n"
+
+#: ../src/ui/frames.c:1118
+msgid "Close Window"
+msgstr "關閉視窗"
+
+#: ../src/ui/frames.c:1121
+msgid "Window Menu"
+msgstr "視窗選單"
+
+#: ../src/ui/frames.c:1124
+msgid "Minimize Window"
+msgstr "視窗最小化"
+
+#: ../src/ui/frames.c:1127
+msgid "Maximize Window"
+msgstr "視窗最大化"
+
+#: ../src/ui/frames.c:1130
+msgid "Restore Window"
+msgstr "還原視窗"
+
+#: ../src/ui/frames.c:1133
+msgid "Roll Up Window"
+msgstr "捲起視窗(_U)"
+
+#: ../src/ui/frames.c:1136
+msgid "Unroll Window"
+msgstr "放下視窗"
+
+#: ../src/ui/frames.c:1139
+msgid "Keep Window On Top"
+msgstr "視窗保留在最上層"
+
+#: ../src/ui/frames.c:1142
+msgid "Remove Window From Top"
+msgstr "視窗移離最上層"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/ui/frames.c:1145
+msgid "Always On Visible Workspace"
+msgstr "在所有工作區顯示"
+
+#: ../src/ui/frames.c:1148
+msgid "Put Window On Only One Workspace"
+msgstr "視窗只置於一個工作區"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:70
+msgid "Mi_nimize"
+msgstr "最小化(_N)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:72
+msgid "Ma_ximize"
+msgstr "最大化(_X)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:74
+msgid "Unma_ximize"
+msgstr "取消最大化(_X)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:76
+msgid "Roll _Up"
+msgstr "捲起(_U)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:78
+msgid "_Unroll"
+msgstr "放下(_U)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:80
+msgid "_Move"
+msgstr "移動(_M)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:82
+msgid "_Resize"
+msgstr "調整大小(_R)"
+
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:84
+msgid "Move Titlebar On_screen"
+msgstr "在畫面上移動標題列(_S)"
+
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:87 ../src/ui/menu.c:89
+msgid "Always on _Top"
+msgstr "總是在最上層(_T)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:91
+msgid "_Always on Visible Workspace"
+msgstr "在所有工作區顯示(_A)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:93
+msgid "_Only on This Workspace"
+msgstr "只在本工作區顯示(_O)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:95
+msgid "Move to Workspace _Left"
+msgstr "移至左方的工作區(_L)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:97
+msgid "Move to Workspace R_ight"
+msgstr "移至右方的工作區(_I)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:99
+msgid "Move to Workspace _Up"
+msgstr "移至上方的工作區(_U)"
+
+# (Abel) take care of the same string in libwnck
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:101
+msgid "Move to Workspace _Down"
+msgstr "移至下方的工作區(_D)"
+
+# (Abel) take care of the same string in libwnck
+#. separator
+#. Translators: Translate this string the same way as you do in libwnck!
+#: ../src/ui/menu.c:105
+msgid "_Close"
+msgstr "關閉(_C)"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/ui/menu.c:203
+#, c-format
+msgid "Workspace %d%n"
+msgstr "工作區 %d%n"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/ui/menu.c:213
+#, c-format
+msgid "Workspace 1_0"
+msgstr "工作區 1_0"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/ui/menu.c:215
+#, c-format
+msgid "Workspace %s%d"
+msgstr "工作區 %s%d"
+
+# (Abel) take care of the same string in libwnck
+#: ../src/ui/menu.c:395
+msgid "Move to Another _Workspace"
+msgstr "移至另一個工作區(_W)"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the shift key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:104
+msgid "Shift"
+msgstr "Shift"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the control key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:110
+msgid "Ctrl"
+msgstr "Ctrl"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the alt key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:116
+msgid "Alt"
+msgstr "Alt"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the meta key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:122
+msgid "Meta"
+msgstr "Meta"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the super key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:128
+msgid "Super"
+msgstr "Super"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the hyper key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:134
+msgid "Hyper"
+msgstr "Hyper"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod2 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:140
+msgid "Mod2"
+msgstr "Mod2"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod3 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:146
+msgid "Mod3"
+msgstr "Mod3"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod4 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:152
+msgid "Mod4"
+msgstr "Mod4"
+
+#. This is the text that should appear next to menu accelerators
+#. * that use the mod5 key. If the text on this key isn't typically
+#. * translated on keyboards used for your language, don't translate
+#. * this.
+#.
+#: ../src/ui/metaaccellabel.c:158
+msgid "Mod5"
+msgstr "Mod5"
+
+#. Translators: This represents the size of a window. The first number is
+#. * the width of the window and the second is the height.
+#.
+#: ../src/ui/resizepopup.c:113
+#, c-format
+msgid "%d x %d"
+msgstr "%d x %d"
+
+#: ../src/ui/theme.c:254
+msgid "top"
+msgstr "頂"
+
+#: ../src/ui/theme.c:256
+msgid "bottom"
+msgstr "底"
+
+#: ../src/ui/theme.c:258
+msgid "left"
+msgstr "左"
+
+#: ../src/ui/theme.c:260
+msgid "right"
+msgstr "右"
+
+#: ../src/ui/theme.c:287
+#, c-format
+msgid "frame geometry does not specify \"%s\" dimension"
+msgstr "邊框的位置大小中沒有指定“%s”部分的大小"
+
+#: ../src/ui/theme.c:306
+#, c-format
+msgid "frame geometry does not specify dimension \"%s\" for border \"%s\""
+msgstr "邊框的位置大小中沒有指定“%2$s”邊框中的“%1$s”部分"
+
+#: ../src/ui/theme.c:343
+#, c-format
+msgid "Button aspect ratio %g is not reasonable"
+msgstr "按鈕的長寬比 %g 不合理"
+
+#: ../src/ui/theme.c:355
+#, c-format
+msgid "Frame geometry does not specify size of buttons"
+msgstr "邊框的位置大小規格內未有指定按鈕的大小"
+
+#: ../src/ui/theme.c:1020
+#, c-format
+msgid "Gradients should have at least two colors"
+msgstr "漸層至少應該有兩種顏色"
+
+#: ../src/ui/theme.c:1146
+#, c-format
+msgid ""
+"GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] "
+"where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK 色彩規格規定必須在狀態外加上方括號,例如 gtk:fg[NORMAL],這裡 NORMAL 表示"
+"狀態;無法分析“%s”"
+
+#: ../src/ui/theme.c:1160
+#, c-format
+msgid ""
+"GTK color specification must have a close bracket after the state, e.g. gtk:"
+"fg[NORMAL] where NORMAL is the state; could not parse \"%s\""
+msgstr ""
+"GTK 色彩規格規定必須在狀態後加上閉方括號,例如 gtk:fg[NORMAL],這裡 NORMAL 表"
+"示狀態;無法分析“%s”"
+
+#: ../src/ui/theme.c:1171
+#, c-format
+msgid "Did not understand state \"%s\" in color specification"
+msgstr "無法將“%s”理解為色彩規格中的狀態"
+
+#: ../src/ui/theme.c:1184
+#, c-format
+msgid "Did not understand color component \"%s\" in color specification"
+msgstr "無法將“%s”理解為色彩規格中的色彩部分"
+
+#: ../src/ui/theme.c:1214
+#, c-format
+msgid ""
+"Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the "
+"format"
+msgstr "指定混色的格式是“blend/背景顏色/前景顏色/透明度”,“%s”不符合規格"
+
+#: ../src/ui/theme.c:1225
+#, c-format
+msgid "Could not parse alpha value \"%s\" in blended color"
+msgstr "無法理解“%s”作為混色的透明度數值"
+
+#: ../src/ui/theme.c:1235
+#, c-format
+msgid "Alpha value \"%s\" in blended color is not between 0.0 and 1.0"
+msgstr "混色的透明度數值“%s”不是在 0.0 至 1.0 之間"
+
+#: ../src/ui/theme.c:1282
+#, c-format
+msgid ""
+"Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"
+msgstr "陰影的格式是“shade/基本顏色/比重”,但“%s”不符合格式"
+
+#: ../src/ui/theme.c:1293
+#, c-format
+msgid "Could not parse shade factor \"%s\" in shaded color"
+msgstr "在陰影顏色中無法將“%s”理解為陰影比重"
+
+#: ../src/ui/theme.c:1303
+#, c-format
+msgid "Shade factor \"%s\" in shaded color is negative"
+msgstr "在陰影顏色中陰影比重“%s”是負數"
+
+#: ../src/ui/theme.c:1332
+#, c-format
+msgid "Could not parse color \"%s\""
+msgstr "無法分析顏色“%s”"
+
+#: ../src/ui/theme.c:1582
+#, c-format
+msgid "Coordinate expression contains character '%s' which is not allowed"
+msgstr "座標表達式中出現不可接受的字元‘%s’"
+
+#: ../src/ui/theme.c:1609
+#, c-format
+msgid ""
+"Coordinate expression contains floating point number '%s' which could not be "
+"parsed"
+msgstr "座標表達式中出現無法分析的浮點小數‘%s’"
+
+#: ../src/ui/theme.c:1623
+#, c-format
+msgid "Coordinate expression contains integer '%s' which could not be parsed"
+msgstr "座標表達式中出現無法分析的整數‘%s’"
+
+#: ../src/ui/theme.c:1745
+#, c-format
+msgid ""
+"Coordinate expression contained unknown operator at the start of this text: "
+"\"%s\""
+msgstr "在座標表達式中,以下文字的開始部分含有不明的運算符:“%s”"
+
+#: ../src/ui/theme.c:1802
+#, c-format
+msgid "Coordinate expression was empty or not understood"
+msgstr "座標表達式是空白的或是無法分析"
+
+#: ../src/ui/theme.c:1913 ../src/ui/theme.c:1923 ../src/ui/theme.c:1957
+#, c-format
+msgid "Coordinate expression results in division by zero"
+msgstr "座標表達式中出現被 0 整除的錯誤"
+
+#: ../src/ui/theme.c:1965
+#, c-format
+msgid ""
+"Coordinate expression tries to use mod operator on a floating-point number"
+msgstr "座標表達式中出現將浮點數使用於餘數運算符 (mod) 的錯誤"
+
+#: ../src/ui/theme.c:2021
+#, c-format
+msgid ""
+"Coordinate expression has an operator \"%s\" where an operand was expected"
+msgstr "在座標表達式中,應該有運算子的地方出現了運算符“%s”"
+
+#: ../src/ui/theme.c:2030
+#, c-format
+msgid "Coordinate expression had an operand where an operator was expected"
+msgstr "在座標表達式中,應該有運算符的地方出現了運算子"
+
+#: ../src/ui/theme.c:2038
+#, c-format
+msgid "Coordinate expression ended with an operator instead of an operand"
+msgstr "結束座標表達式的是一個運算符而非運算子"
+
+#: ../src/ui/theme.c:2048
+#, c-format
+msgid ""
+"Coordinate expression has operator \"%c\" following operator \"%c\" with no "
+"operand in between"
+msgstr "在座標表達式中,運算符“%c”緊隨運算符“%c”出現,但中間沒有任何運算子"
+
+#: ../src/ui/theme.c:2195 ../src/ui/theme.c:2236
+#, c-format
+msgid "Coordinate expression had unknown variable or constant \"%s\""
+msgstr "座標表達式中出現不明的變數或常數“%s”"
+
+#: ../src/ui/theme.c:2290
+#, c-format
+msgid "Coordinate expression parser overflowed its buffer."
+msgstr "座標表達式分析器令緩衝溢位。"
+
+#: ../src/ui/theme.c:2319
+#, c-format
+msgid "Coordinate expression had a close parenthesis with no open parenthesis"
+msgstr "座標表達式中的閉括號沒有相應的開括號"
+
+#: ../src/ui/theme.c:2383
+#, c-format
+msgid "Coordinate expression had an open parenthesis with no close parenthesis"
+msgstr "座標表達式中的開括號沒有相應的閉括號"
+
+#: ../src/ui/theme.c:2394
+#, c-format
+msgid "Coordinate expression doesn't seem to have any operators or operands"
+msgstr "座標表達式中似乎沒有任何運算符或運算子"
+
+#: ../src/ui/theme.c:2596 ../src/ui/theme.c:2616 ../src/ui/theme.c:2636
+#, c-format
+msgid "Theme contained an expression that resulted in an error: %s\n"
+msgstr "佈景主題中含有引致錯誤的表達式:%s\n"
+
+#: ../src/ui/theme.c:4203
+#, c-format
+msgid ""
+"<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be "
+"specified for this frame style"
+msgstr ""
+"此邊框款式必須指定 <button function=\"%s\" state=\"%s\" draw_ops=\"whatever"
+"\"/>"
+
+#: ../src/ui/theme.c:4711 ../src/ui/theme.c:4736
+#, c-format
+msgid ""
+"Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+msgstr ""
+"缺少了 <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"
+
+#: ../src/ui/theme.c:4780
+#, c-format
+msgid "Failed to load theme \"%s\": %s\n"
+msgstr "無法載入佈景主題“%s”:%s\n"
+
+#: ../src/ui/theme.c:4910 ../src/ui/theme.c:4917 ../src/ui/theme.c:4924
+#: ../src/ui/theme.c:4931 ../src/ui/theme.c:4938
+#, c-format
+msgid "No <%s> set for theme \"%s\""
+msgstr "佈景主題“%s”未指定 <%s>"
+
+#: ../src/ui/theme.c:4946
+#, c-format
+msgid ""
+"No frame style set for window type \"%s\" in theme \"%s\", add a <window "
+"type=\"%s\" style_set=\"whatever\"/> element"
+msgstr ""
+"在佈景主題“%2$s”中,視窗類型“%1$s”沒有指定任何邊框款式。請加上 <window type="
+"\"%3$s\" style_set=\"whatever\"/> 元素"
+
+#: ../src/ui/theme.c:5389 ../src/ui/theme.c:5451 ../src/ui/theme.c:5514
+#, c-format
+msgid ""
+"User-defined constants must begin with a capital letter; \"%s\" does not"
+msgstr "自行定義的常數必須以大寫字母開始;但“%s”不是"
+
+#: ../src/ui/theme.c:5397 ../src/ui/theme.c:5459 ../src/ui/theme.c:5522
+#, c-format
+msgid "Constant \"%s\" has already been defined"
+msgstr "已定義了“%s”常數"
+
+#. Translators: This means that an attribute which should have been found
+#. * on an XML element was not in fact found.
+#.
+#: ../src/ui/theme-parser.c:202
+#, c-format
+msgid "No \"%s\" attribute on element <%s>"
+msgstr "在元素 <%2$s> 中沒有「%1$s」屬性"
+
+#: ../src/ui/theme-parser.c:231 ../src/ui/theme-parser.c:249
+#, c-format
+msgid "Line %d character %d: %s"
+msgstr "第 %d 行第 %d 字:%s"
+
+#: ../src/ui/theme-parser.c:413
+#, c-format
+msgid "Attribute \"%s\" repeated twice on the same <%s> element"
+msgstr "屬性「%s」在同一個 <%s> 元素中重複了兩次"
+
+#: ../src/ui/theme-parser.c:437 ../src/ui/theme-parser.c:480
+#, c-format
+msgid "Attribute \"%s\" is invalid on <%s> element in this context"
+msgstr "在此關聯選單中,屬性「%s」在 <%s> 元素中是無效的"
+
+#: ../src/ui/theme-parser.c:522
+#, c-format
+msgid "Could not parse \"%s\" as an integer"
+msgstr "無法以整數的方式分析“%s”"
+
+#: ../src/ui/theme-parser.c:531 ../src/ui/theme-parser.c:586
+#, c-format
+msgid "Did not understand trailing characters \"%s\" in string \"%s\""
+msgstr "無法理解字串“%2$s”中的結束字元“%1$s”"
+
+#: ../src/ui/theme-parser.c:541
+#, c-format
+msgid "Integer %ld must be positive"
+msgstr "整數 %ld 必須為正數"
+
+#: ../src/ui/theme-parser.c:549
+#, c-format
+msgid "Integer %ld is too large, current max is %d"
+msgstr "整數 %ld 太大,目前可接受的最大值為 %d"
+
+#: ../src/ui/theme-parser.c:577 ../src/ui/theme-parser.c:693
+#, c-format
+msgid "Could not parse \"%s\" as a floating point number"
+msgstr "無法以浮點小數的方式分析“%s”"
+
+#: ../src/ui/theme-parser.c:608 ../src/ui/theme-parser.c:636
+#, c-format
+msgid "Boolean values must be \"true\" or \"false\" not \"%s\""
+msgstr "布林值必須為“true”或“false”,不是“%s”"
+
+#: ../src/ui/theme-parser.c:663
+#, c-format
+msgid "Angle must be between 0.0 and 360.0, was %g\n"
+msgstr "角度必須在 0.0 至 360.0 之間,此處的值為 %g\n"
+
+#: ../src/ui/theme-parser.c:726
+#, c-format
+msgid "Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"
+msgstr "透明度必須在 0.0(完全透明)至 1.0(完全不透明)之間,此處的值為 %g\n"
+
+#: ../src/ui/theme-parser.c:791
+#, c-format
+msgid ""
+"Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,"
+"large,x-large,xx-large)\n"
+msgstr ""
+"無效的標題大小“%s”(必須為 xx-small、x-small、small、medium、large、\n"
+"x-large、xx-large 其中一個)\n"
+
+#: ../src/ui/theme-parser.c:936 ../src/ui/theme-parser.c:999
+#: ../src/ui/theme-parser.c:1033 ../src/ui/theme-parser.c:1136
+#, c-format
+msgid "<%s> name \"%s\" used a second time"
+msgstr "<%s> 的 name 屬性“%s”用了超過一次"
+
+#: ../src/ui/theme-parser.c:948 ../src/ui/theme-parser.c:1045
+#: ../src/ui/theme-parser.c:1148
+#, c-format
+msgid "<%s> parent \"%s\" has not been defined"
+msgstr "<%s> 的主元素“%s”沒有任何定義"
+
+#: ../src/ui/theme-parser.c:1058
+#, c-format
+msgid "<%s> geometry \"%s\" has not been defined"
+msgstr "<%s> 元素的位置大小“%s”沒有任何定義"
+
+#: ../src/ui/theme-parser.c:1071
+#, c-format
+msgid "<%s> must specify either a geometry or a parent that has a geometry"
+msgstr "<%s> 必須自己指定位置大小或指定有位置大小的主元素"
+
+#: ../src/ui/theme-parser.c:1113
+msgid "You must specify a background for an alpha value to be meaningful"
+msgstr "必須指定背景使得透明 ( alpha) 值的變得有意義"
+
+#: ../src/ui/theme-parser.c:1180
+#, c-format
+msgid "Unknown type \"%s\" on <%s> element"
+msgstr "<%2$s> 元素之內出現不明的類型“%1$s”"
+
+#: ../src/ui/theme-parser.c:1191
+#, c-format
+msgid "Unknown style_set \"%s\" on <%s> element"
+msgstr "<%2$s> 元素之內出現不明的 style_set“%1$s”"
+
+#: ../src/ui/theme-parser.c:1199
+#, c-format
+msgid "Window type \"%s\" has already been assigned a style set"
+msgstr "視窗類型“%s”已經分配了 style set"
+
+#: ../src/ui/theme-parser.c:1229 ../src/ui/theme-parser.c:1293
+#: ../src/ui/theme-parser.c:1519 ../src/ui/theme-parser.c:2740
+#: ../src/ui/theme-parser.c:2786 ../src/ui/theme-parser.c:2934
+#: ../src/ui/theme-parser.c:3126 ../src/ui/theme-parser.c:3164
+#: ../src/ui/theme-parser.c:3202 ../src/ui/theme-parser.c:3240
+#, c-format
+msgid "Element <%s> is not allowed below <%s>"
+msgstr "元素 <%s> 不允許在 <%s> 之下"
+
+#: ../src/ui/theme-parser.c:1343 ../src/ui/theme-parser.c:1357
+#: ../src/ui/theme-parser.c:1402
+msgid ""
+"Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" "
+"for buttons"
+msgstr ""
+"不可能同時指定按鈕的寬度/長度 (button_width/button_height) 及長寬比"
+"(aspect_ratio)"
+
+#: ../src/ui/theme-parser.c:1366
+#, c-format
+msgid "Distance \"%s\" is unknown"
+msgstr "不明的距離“%s”"
+
+#: ../src/ui/theme-parser.c:1411
+#, c-format
+msgid "Aspect ratio \"%s\" is unknown"
+msgstr "不明的長寬比“%s”"
+
+#: ../src/ui/theme-parser.c:1473
+#, c-format
+msgid "Border \"%s\" is unknown"
+msgstr "不明的邊框“%s”"
+
+#: ../src/ui/theme-parser.c:1784
+#, c-format
+msgid "No \"start_angle\" or \"from\" attribute on element <%s>"
+msgstr "元素 <%s> 中沒有“start_angle”或“from”屬性"
+
+#: ../src/ui/theme-parser.c:1791
+#, c-format
+msgid "No \"extent_angle\" or \"to\" attribute on element <%s>"
+msgstr "元素 <%s> 中沒有“extent_angle”或“to”屬性"
+
+#: ../src/ui/theme-parser.c:2031
+#, c-format
+msgid "Did not understand value \"%s\" for type of gradient"
+msgstr "無法將“%s”理解為漸層的樣式"
+
+#: ../src/ui/theme-parser.c:2109 ../src/ui/theme-parser.c:2484
+#, c-format
+msgid "Did not understand fill type \"%s\" for <%s> element"
+msgstr "無法理解 <%2$s> 元素中的填充類型“%1$s”"
+
+#: ../src/ui/theme-parser.c:2276 ../src/ui/theme-parser.c:2359
+#: ../src/ui/theme-parser.c:2422
+#, c-format
+msgid "Did not understand state \"%s\" for <%s> element"
+msgstr "無法將“%s”理解為 <%s> 元素的狀態"
+
+#: ../src/ui/theme-parser.c:2286 ../src/ui/theme-parser.c:2369
+#, c-format
+msgid "Did not understand shadow \"%s\" for <%s> element"
+msgstr "無法將“%s”理解為 <%s> 元素的陰影"
+
+#: ../src/ui/theme-parser.c:2296
+#, c-format
+msgid "Did not understand arrow \"%s\" for <%s> element"
+msgstr "無法將“%s”理解為 <%s> 元素的箭頭"
+
+#: ../src/ui/theme-parser.c:2596 ../src/ui/theme-parser.c:2692
+#, c-format
+msgid "No <draw_ops> called \"%s\" has been defined"
+msgstr "沒有定義任何名稱為“%s”的 <draw_ops>"
+
+#: ../src/ui/theme-parser.c:2608 ../src/ui/theme-parser.c:2704
+#, c-format
+msgid "Including draw_ops \"%s\" here would create a circular reference"
+msgstr "這裡的 draw_ops“%s”會造成循環"
+
+#: ../src/ui/theme-parser.c:2819
+#, c-format
+msgid "Unknown position \"%s\" for frame piece"
+msgstr "邊框組件指定了不明的位置“%s”"
+
+#: ../src/ui/theme-parser.c:2827
+#, c-format
+msgid "Frame style already has a piece at position %s"
+msgstr "邊框款式已經在位置 %s 中指定了一件邊框組件"
+
+#: ../src/ui/theme-parser.c:2844 ../src/ui/theme-parser.c:2919
+#, c-format
+msgid "No <draw_ops> with the name \"%s\" has been defined"
+msgstr "沒有定義任何名稱為“%s”的 <draw_ops>"
+
+#: ../src/ui/theme-parser.c:2873
+#, c-format
+msgid "Unknown function \"%s\" for button"
+msgstr "按鈕擁有不明的功能“%s”"
+
+#: ../src/ui/theme-parser.c:2882
+#, c-format
+msgid "Button function \"%s\" does not exist in this version (%d, need %d)"
+msgstr "按鈕功能“%s”不存在於這個 版本(%d,要求 %d)"
+
+#: ../src/ui/theme-parser.c:2894
+#, c-format
+msgid "Unknown state \"%s\" for button"
+msgstr "無法理解“%s”為按鈕的狀態"
+
+#: ../src/ui/theme-parser.c:2902
+#, c-format
+msgid "Frame style already has a button for function %s state %s"
+msgstr "邊框款式已經指定了一個擁有 %s 功能及 %s 狀態的按鈕"
+
+#: ../src/ui/theme-parser.c:2973
+#, c-format
+msgid "\"%s\" is not a valid value for focus attribute"
+msgstr "“%s”不是 focus 屬性的有效設定值"
+
+#: ../src/ui/theme-parser.c:2982
+#, c-format
+msgid "\"%s\" is not a valid value for state attribute"
+msgstr "“%s”不是 state 屬性的有效設定值"
+
+#: ../src/ui/theme-parser.c:2992
+#, c-format
+msgid "A style called \"%s\" has not been defined"
+msgstr "沒有定義任何稱為“%s”的款式"
+
+#: ../src/ui/theme-parser.c:3013 ../src/ui/theme-parser.c:3036
+#, c-format
+msgid "\"%s\" is not a valid value for resize attribute"
+msgstr "“%s”不是 resize 屬性的有效設定值"
+
+#: ../src/ui/theme-parser.c:3047
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized/shaded "
+"states"
+msgstr "元素 <%s> 不應在最大化或捲起的狀態中指定“resize”屬性"
+
+#: ../src/ui/theme-parser.c:3061
+#, c-format
+msgid ""
+"Should not have \"resize\" attribute on <%s> element for maximized states"
+msgstr "不應在元素 <%s> 最大化的狀態中指定“resize”屬性"
+
+#: ../src/ui/theme-parser.c:3075 ../src/ui/theme-parser.c:3097
+#, c-format
+msgid "Style has already been specified for state %s resize %s focus %s"
+msgstr "當 state=%s resize=%s focus=%s 時,樣式早已經被指定了"
+
+#: ../src/ui/theme-parser.c:3086 ../src/ui/theme-parser.c:3108
+#, c-format
+msgid "Style has already been specified for state %s focus %s"
+msgstr "當 state=%s focus=%s 時,樣式早已經被指定了"
+
+#: ../src/ui/theme-parser.c:3147
+msgid ""
+"Can't have a two draw_ops for a <piece> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"一個 <piece> 元素不可同時使用兩個 draw_ops (佈景主題同時指定了一個 draw_ops "
+"屬性及一個 <draw_ops> 元素,或是指定了兩個元素)"
+
+#: ../src/ui/theme-parser.c:3185
+msgid ""
+"Can't have a two draw_ops for a <button> element (theme specified a draw_ops "
+"attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"一個 <button> 元素不可同時使用兩個 draw_ops (佈景主題同時指定了一個 draw_ops "
+"屬性及一個 <draw_ops> 元素,或是指定了兩個元素)"
+
+#: ../src/ui/theme-parser.c:3223
+msgid ""
+"Can't have a two draw_ops for a <menu_icon> element (theme specified a "
+"draw_ops attribute and also a <draw_ops> element, or specified two elements)"
+msgstr ""
+"一個 <menu_icon> 元素不可同時使用兩個 draw_ops (佈景主題同時指定了一個 "
+"draw_ops 屬性及一個 <draw_ops> 元素,或是指定了兩個元素)"
+
+#: ../src/ui/theme-parser.c:3271
+#, c-format
+msgid "Outermost element in theme must be <marco_theme> not <%s>"
+msgstr "佈景主題中最外層的元素必須為 <marco_theme> 而不是 <%s>"
+
+#: ../src/ui/theme-parser.c:3291
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a name/author/date/description element"
+msgstr "元素 <%s> 不許在名稱/作者/日期/描述元素內出現"
+
+#: ../src/ui/theme-parser.c:3296
+#, c-format
+msgid "Element <%s> is not allowed inside a <constant> element"
+msgstr "<%s> 元素不可出現在 <constant> 元素內"
+
+#: ../src/ui/theme-parser.c:3308
+#, c-format
+msgid ""
+"Element <%s> is not allowed inside a distance/border/aspect_ratio element"
+msgstr "<%s> 元素不可出現於 distance/border/aspect_ratio 元素之內"
+
+#: ../src/ui/theme-parser.c:3330
+#, c-format
+msgid "Element <%s> is not allowed inside a draw operation element"
+msgstr "元素 <%s> 不允許在有關繪圖操作的元素內出現"
+
+#: ../src/ui/theme-parser.c:3340 ../src/ui/theme-parser.c:3370
+#: ../src/ui/theme-parser.c:3375 ../src/ui/theme-parser.c:3380
+#, c-format
+msgid "Element <%s> is not allowed inside a <%s> element"
+msgstr "<%s> 元素不可出現在 <%s> 元素內"
+
+#: ../src/ui/theme-parser.c:3602
+msgid "No draw_ops provided for frame piece"
+msgstr "邊框沒有提供任何 draw_ops 屬性"
+
+#: ../src/ui/theme-parser.c:3617
+msgid "No draw_ops provided for button"
+msgstr "按鈕沒有提供任何 draw_ops 屬性"
+
+#: ../src/ui/theme-parser.c:3669
+#, c-format
+msgid "No text is allowed inside element <%s>"
+msgstr "<%s> 元素內不可出現任何文字"
+
+#: ../src/ui/theme-parser.c:3724 ../src/ui/theme-parser.c:3736
+#: ../src/ui/theme-parser.c:3748 ../src/ui/theme-parser.c:3760
+#: ../src/ui/theme-parser.c:3772
+#, c-format
+msgid "<%s> specified twice for this theme"
+msgstr "<%s> 指定了此佈景主題兩次"
+
+#: ../src/ui/theme-parser.c:4040
+#, c-format
+msgid "Failed to find a valid file for theme %s\n"
+msgstr "無法佈景主題的有效檔案 %s\n"
+
+#: ../src/ui/theme-parser.c:4096
+#, c-format
+msgid "Theme file %s did not contain a root <marco_theme> element"
+msgstr "佈景檔 %s 沒有頂層的 <marco_theme> 元素"
+
+#: ../src/ui/theme-viewer.c:75
+msgid "/_Windows"
+msgstr "/視窗(_W)"
+
+#: ../src/ui/theme-viewer.c:76
+msgid "/Windows/tearoff"
+msgstr "/視窗/分開"
+
+#: ../src/ui/theme-viewer.c:77
+msgid "/Windows/_Dialog"
+msgstr "/視窗/對話視窗(_D)"
+
+#: ../src/ui/theme-viewer.c:78
+msgid "/Windows/_Modal dialog"
+msgstr "/視窗/模態對話視窗(_M)"
+
+#: ../src/ui/theme-viewer.c:79
+msgid "/Windows/_Utility"
+msgstr "/視窗/工具(_U)"
+
+#: ../src/ui/theme-viewer.c:80
+msgid "/Windows/_Splashscreen"
+msgstr "/視窗/啟動畫面(_S)"
+
+#: ../src/ui/theme-viewer.c:81
+msgid "/Windows/_Top dock"
+msgstr "/視窗/上工作區(_T)"
+
+#: ../src/ui/theme-viewer.c:82
+msgid "/Windows/_Bottom dock"
+msgstr "/視窗/下工作區(_B)"
+
+#: ../src/ui/theme-viewer.c:83
+msgid "/Windows/_Left dock"
+msgstr "/視窗/左工作區(_L)"
+
+#: ../src/ui/theme-viewer.c:84
+msgid "/Windows/_Right dock"
+msgstr "/視窗/右工作區(_R)"
+
+#: ../src/ui/theme-viewer.c:85
+msgid "/Windows/_All docks"
+msgstr "/視窗/所有工作區(_A)"
+
+#: ../src/ui/theme-viewer.c:86
+msgid "/Windows/Des_ktop"
+msgstr "/視窗/桌面(_K)"
+
+#: ../src/ui/theme-viewer.c:244
+msgid "This is a sample message in a sample dialog"
+msgstr "這是在樣版對話視窗中的樣版訊息"
+
+#: ../src/ui/theme-viewer.c:327
+#, c-format
+msgid "Fake menu item %d\n"
+msgstr "假的選單項目 %d\n"
+
+#: ../src/ui/theme-viewer.c:361
+msgid "Border-only window"
+msgstr "只有邊框的視窗"
+
+#: ../src/ui/theme-viewer.c:363
+msgid "Bar"
+msgstr "列"
+
+#: ../src/ui/theme-viewer.c:380
+msgid "Normal Application Window"
+msgstr "正常的程式視窗"
+
+#: ../src/ui/theme-viewer.c:384
+msgid "Dialog Box"
+msgstr "對話盒"
+
+#: ../src/ui/theme-viewer.c:388
+msgid "Modal Dialog Box"
+msgstr "模態對話盒"
+
+#: ../src/ui/theme-viewer.c:392
+msgid "Utility Palette"
+msgstr "公用程式控制板"
+
+#: ../src/ui/theme-viewer.c:396
+msgid "Torn-off Menu"
+msgstr "關閉選單"
+
+#: ../src/ui/theme-viewer.c:400
+msgid "Border"
+msgstr "邊框"
+
+#: ../src/ui/theme-viewer.c:728
+#, c-format
+msgid "Button layout test %d"
+msgstr "按鈕配置測試 %d"
+
+#: ../src/ui/theme-viewer.c:757
+#, c-format
+msgid "%g milliseconds to draw one window frame"
+msgstr "繪畫一個視窗需時 %g 毫秒"
+
+#: ../src/ui/theme-viewer.c:800
+#, c-format
+msgid "Usage: marco-theme-viewer [THEMENAME]\n"
+msgstr "用法: marco-theme-viewer [佈景主題名稱]\n"
+
+#: ../src/ui/theme-viewer.c:807
+#, c-format
+msgid "Error loading theme: %s\n"
+msgstr "載入佈景主題失敗 %s\n"
+
+#: ../src/ui/theme-viewer.c:813
+#, c-format
+msgid "Loaded theme \"%s\" in %g seconds\n"
+msgstr "載入佈景主題 “%s” 需時 %g 秒\n"
+
+#: ../src/ui/theme-viewer.c:854
+msgid "Normal Title Font"
+msgstr "正常標題列字型"
+
+#: ../src/ui/theme-viewer.c:860
+msgid "Small Title Font"
+msgstr "小標題列字型"
+
+#: ../src/ui/theme-viewer.c:866
+msgid "Large Title Font"
+msgstr "大標題列字型"
+
+#: ../src/ui/theme-viewer.c:871
+msgid "Button Layouts"
+msgstr "按鈕配置"
+
+#: ../src/ui/theme-viewer.c:876
+msgid "Benchmark"
+msgstr "速度測試"
+
+#: ../src/ui/theme-viewer.c:923
+msgid "Window Title Goes Here"
+msgstr "這裡是視窗標題"
+
+#: ../src/ui/theme-viewer.c:1027
+#, c-format
+msgid ""
+"Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g "
+"seconds wall clock time including X server resources (%g milliseconds per "
+"frame)\n"
+msgstr ""
+"繪畫 %d 幀需時:\n"
+"在客戶端是 %g 秒(每幀 %g 毫秒)\n"
+"包括 X 伺服器資源的實際消耗時間是 %g 秒(每幀 %g 毫秒)\n"
+
+#: ../src/ui/theme-viewer.c:1246
+msgid "position expression test returned TRUE but set error"
+msgstr "位置表現測試返回值是「正確」,但有 set error"
+
+#: ../src/ui/theme-viewer.c:1248
+msgid "position expression test returned FALSE but didn't set error"
+msgstr "位置表現測試返回值是「錯誤」,但沒有 set error"
+
+#: ../src/ui/theme-viewer.c:1252
+msgid "Error was expected but none given"
+msgstr "預期會發生錯誤,但結果並沒錯誤發生"
+
+#: ../src/ui/theme-viewer.c:1254
+#, c-format
+msgid "Error %d was expected but %d given"
+msgstr "預期會發生錯誤 %d ,但結果卻出現 %d"
+
+#: ../src/ui/theme-viewer.c:1260
+#, c-format
+msgid "Error not expected but one was returned: %s"
+msgstr "預期不會發生錯誤,但結果返回了一個:%s"
+
+#: ../src/ui/theme-viewer.c:1264
+#, c-format
+msgid "x value was %d, %d was expected"
+msgstr "x 的數值是 %d,%d是預期中的數值"
+
+#: ../src/ui/theme-viewer.c:1267
+#, c-format
+msgid "y value was %d, %d was expected"
+msgstr "y 的數值是 %d,%d是預期中的數值"
+
+#: ../src/ui/theme-viewer.c:1332
+#, c-format
+msgid "%d coordinate expressions parsed in %g seconds (%g seconds average)\n"
+msgstr "分析 %d 座標表現需時 %g 秒(平均 %g 秒)\n"
+
+#~ msgid "Open another one of these windows"
+#~ msgstr "開啟一個同樣的視窗"
+
+#~ msgid "This is a demo button with an 'open' icon"
+#~ msgstr "這是有開啟圖示的展示用按鈕"
+
+#~ msgid "This is a demo button with a 'quit' icon"
+#~ msgstr "這是有離開圖示的展示用按鈕"
+
+#~ msgid "Failed to parse message \"%s\" from dialog process\n"
+#~ msgstr "無法從對話視窗進程中分析訊息“%s”\n"
+
+#~ msgid "Error reading from dialog display process: %s\n"
+#~ msgstr "從對話視窗進程中讀取資料時出現錯誤:%s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to ask about killing an application: %s\n"
+#~ msgstr "啟動 marco-dialog 來詢問是否強行中止其它程式時出現錯誤:%s\n"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to warn about apps that don't support "
+#~ "session management: %s\n"
+#~ msgstr ""
+#~ "目前有不支援作業階段管理的程式存在,但當啟動 metactiy-dialog 來顯示有關此"
+#~ "類程式的警告訊息時出現錯誤:%s\n"
+
+#~ msgid "Title"
+#~ msgstr "標題"
+
+#~ msgid "Class"
+#~ msgstr "分類"
+
+#~ msgid ""
+#~ "There was an error running \"%s\":\n"
+#~ "%s."
+#~ msgstr ""
+#~ "執行“%s”時發生錯誤:\n"
+#~ "%s。"
+
+#~ msgid "<author> specified twice for this theme"
+#~ msgstr "此佈景主題指定了兩次 <author>"
+
+#~ msgid "<copyright> specified twice for this theme"
+#~ msgstr "此佈景主題指定了兩次 <copyright>"
+
+#~ msgid "<date> specified twice for this theme"
+#~ msgstr "此佈景主題指定了兩次 <date>"
+
+#~ msgid "<description> specified twice for this theme"
+#~ msgstr "此佈景主題指定了兩次 <description>"
+
+#~ msgid ""
+#~ "Error launching marco-dialog to print an error about a command: %s\n"
+#~ msgstr "當嘗試啟動 marco-dialog 來顯示某指令的錯誤訊息時出現錯誤:%s\n"
+
+#~ msgid "Type of %s was not integer"
+#~ msgstr "“%s”的類型不是整數"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable cursor_size; must be in the "
+#~ "range 1..128\n"
+#~ msgstr ""
+#~ "儲存在 MateConf 設定鍵 %2$s 的值 %1$d 不是一個合理的游標大小數目,應該 "
+#~ "1..128 範圍內的數值\n"
+
+#~ msgid ""
+#~ "%d stored in MateConf key %s is not a reasonable number of workspaces, "
+#~ "current maximum is %d\n"
+#~ msgstr ""
+#~ "MateConf 設定鍵 %2$s 的值 %1$d 不是一個合理的工作區數目,目前的最大值為 %3"
+#~ "$d\n"
+
+#~ msgid "Unknown attribute %s on <marco_session> element"
+#~ msgstr "<marco_session> 元素中出現不明的屬性 %s"
+
+#~ msgid "Unknown attribute %s on <maximized> element"
+#~ msgstr "<maximized> 元素中出現不明的屬性 %s"
+
+#~ msgid "Unknown attribute %s on <geometry> element"
+#~ msgstr "<geometry> 元素中出現不明的屬性 %s"
+
+#~ msgid ""
+#~ "Many actions (e.g. clicking in the client area, moving or resizing the "
+#~ "window) normally raise the window as a side-effect. Setting this option "
+#~ "to false, which is strongly discouraged, will decouple raising from other "
+#~ "user actions, and ignore raise requests generated by applications. See "
+#~ "http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6."
+#~ msgstr ""
+#~ "通常很多動作(例如,點擊客戶端區域,移動或調整視窗大小)都會出現將視窗提升"
+#~ "的副作用。設定本選項為 “false”(相當不建議)會消除由於其他使用者的動作引致的"
+#~ "視窗提升,並忽略由應用程式產生的提升要求。請查閱 http://bugzilla.mate."
+#~ "org/show_bug.cgi?id=445447#c6。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace above the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至目前工作區上方的工作區。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace below the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至目前工作區下方的工作區。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the left of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至目前工作區左方的工作區。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to the workspace on the right of the current "
+#~ "workspace. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至目前工作區右方的工作區。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 1. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 1 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 10. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 10 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 11. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 11 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 12. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 12 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 2. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 2 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 3. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 3 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 4. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 4 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 5. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 5 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 6. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 6 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 7. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 7 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 8. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 8 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding that switches to workspace 9. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以將畫面切換至第 9 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to activate the window menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合可以啟用視窗選單。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許"
+#~ "使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為字"
+#~ "串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"move mode\" and begin moving a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以進入「移動模式」,這時可以使用鍵盤來移動視窗。格式可以"
+#~ "像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是"
+#~ "比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to enter \"resize mode\" and begin resizing a window "
+#~ "using the keyboard. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以進入「調整大小模式」,這時可以使用鍵盤來調整視窗大小。格式可"
+#~ "以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時"
+#~ "是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to hide all normal windows and set the focus to the "
+#~ "desktop background. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會隱藏所有普通的視窗並將輸入焦點移至桌面。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to maximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合會令視窗最大化。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許"
+#~ "使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為字"
+#~ "串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to minimize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合會令視窗最小化。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許"
+#~ "使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為字"
+#~ "串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace down. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至下方的工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the left. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至左方的工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace to the right. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至右方的工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window one workspace up. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至上方的工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 1. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 1 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 10. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 10 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 11. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 11 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 12. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 12 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 2. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 2 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 3. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 3 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 4. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 4 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 5. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 5 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 6. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 6 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 7. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 7 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 8. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 8 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move a window to workspace 9. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會將某視窗移動至第 9 個工作區。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, using a popup window. The format looks like \"&lt;Control&gt;a\" "
+#~ "or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在面板及桌面之間以相反次序切換。格"
+#~ "式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字"
+#~ "串時是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between panels and the "
+#~ "desktop, without a popup window. The format looks like \"&lt;Control&gt;a"
+#~ "\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and "
+#~ "allows lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;"
+#~ "\" and \"&lt;Ctrl&gt;\". If you set the option to the special string "
+#~ "\"disabled\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在面板及桌面之間以相反次序切換。格"
+#~ "式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字"
+#~ "串時是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application without a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在各視窗之間以相反次序切換。如果配"
+#~ "合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows of an "
+#~ "application, using a popup window. Holding \"shift\" together with this "
+#~ "binding makes the direction go forward again. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在各視窗之間以相反次序切換。如果配"
+#~ "合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows without a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在各視窗之間以相反次序切換。如果配"
+#~ "合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus backwards between windows, using a "
+#~ "popup window. Holding \"shift\" together with this binding makes the "
+#~ "direction go forward again. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在各視窗之間以相反次序切換。如果配"
+#~ "合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, using a "
+#~ "popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在面板及桌面之間切換。格式可以"
+#~ "像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是"
+#~ "比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between panels and the desktop, without "
+#~ "a popup window. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在面板及桌面之間切換。格式可以"
+#~ "像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是"
+#~ "比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application "
+#~ "without a popup window. Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在各視窗之間切換。如果配"
+#~ "合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows of an application, "
+#~ "using a popup window. (Traditionally &lt;Alt&gt;F6) Holding the \"shift\" "
+#~ "key while using this binding reverses the direction of movement. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在各視窗之間切換。(預設為 &lt;"
+#~ "Alt&gt;F6)如果配合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可以"
+#~ "像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是"
+#~ "比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows without a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Escape) Holding the \"shift\" key while using "
+#~ "this binding reverses the direction of movement. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合不顯示視窗作為提示,將輸入焦點在各視窗之間切換。(預設為 &lt;"
+#~ "Alt&gt;Escape) 如果配合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式"
+#~ "可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串"
+#~ "時是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to move focus between windows, using a popup window. "
+#~ "(Traditionally &lt;Alt&gt;Tab) Holding the \"shift\" key while using this "
+#~ "binding reverses the direction of movement. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合會顯示視窗作為提示,將輸入焦點在各視窗之間切換。(預設為 &lt;"
+#~ "Alt&gt;Tab) 如果配合“Shift”鍵一起使用則會以原有的次序切換輸入焦點。格式可"
+#~ "以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時"
+#~ "是比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle always on top. A window that is always on "
+#~ "top will always be visible over other overlapping windows. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以切換視窗是否在「最上層」顯示。「最上層」表示視窗永遠不會被其"
+#~ "它重叠的視窗遮蔽。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許使用"
+#~ "像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為字"
+#~ "串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle fullscreen mode. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合可以切換全螢幕模式。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle maximization. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以切換視窗是否在最大化的狀態。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle shaded/unshaded state. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將視窗狀態切換為捲起/放下。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to toggle whether the window is on all workspaces or "
+#~ "just one. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以切換視窗在所有工作區顯示,還是只在一個工作區顯示。格式可以"
+#~ "像“&lt;Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是"
+#~ "比較寬鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;"
+#~ "Ctrl&gt;”等的縮寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排"
+#~ "任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding used to unmaximize a window. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合會令視窗從最大化狀態還原。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding which display's the panel's \"Run Application\" dialog "
+#~ "box. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以顯示「執行程式」對話視窗。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding which invokes a terminal. The format looks like \"&lt;"
+#~ "Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly "
+#~ "liberal and allows lower or upper case, and also abbreviations such as "
+#~ "\"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to the "
+#~ "special string \"disabled\", then there will be no keybinding for this "
+#~ "action."
+#~ msgstr ""
+#~ "本按鍵組合可以開啟終端機。格式可以像“&lt;Control&gt;a”或是“&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小寫,也允許"
+#~ "使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為字"
+#~ "串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility to take a "
+#~ "screenshot of a window. The format looks like \"&lt;Control&gt;a\" or "
+#~ "\"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows "
+#~ "lower or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and "
+#~ "\"&lt;Ctrl&gt;\". If you set the option to the special string \"disabled"
+#~ "\", then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以啟動畫面快照公用程式,擷取某視窗的畫面。格式可以像“&lt;"
+#~ "Control&gt;a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬"
+#~ "鬆的,允許使用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮"
+#~ "寫。如果將此選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding which invokes the panel's screenshot utility. The format "
+#~ "looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The "
+#~ "parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以啟動畫面快照公用程式。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "The keybinding which shows the panel's main menu. The format looks like "
+#~ "\"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser is "
+#~ "fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合可以顯示面板的主選單。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding changes whether a window is above or below other windows. "
+#~ "If the window is covered by another one, it raises the window above all "
+#~ "others, and if the window is already fully visible, it lowers it below "
+#~ "all others. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會切換視窗的顯示狀態,決定它會覆蓋其它視窗還是被其它視窗覆蓋。如"
+#~ "果該視窗本來被其它視窗覆蓋,則會反過來覆蓋其它視窗。相反,如果本來是覆蓋其"
+#~ "它視窗的,則會被其它視窗所覆蓋。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding lowers a window below other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗被其它視窗遮蔽。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window against the north (top) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中向上移。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the east (right) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中向右移。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-east (top right) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中移向右上角。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the north-west (top left) corner of "
+#~ "the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;"
+#~ "&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower or upper "
+#~ "case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;"
+#~ "\". If you set the option to the special string \"disabled\", then there "
+#~ "will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中移向左上角。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south (bottom) side of the "
+#~ "screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;"
+#~ "Alt&gt;F1\". The parser is fairly liberal and allows lower or upper case, "
+#~ "and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If "
+#~ "you set the option to the special string \"disabled\", then there will be "
+#~ "no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中向下移。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-east (bottom right) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中移向右下角。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the south-west (bottom left) corner "
+#~ "of the screen. The format looks like \"&lt;Control&gt;a\" or \"&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1\". The parser is fairly liberal and allows lower "
+#~ "or upper case, and also abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;"
+#~ "Ctrl&gt;\". If you set the option to the special string \"disabled\", "
+#~ "then there will be no keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中移向左下角。格式可以像“&lt;Control&gt;a”或"
+#~ "是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大"
+#~ "寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項"
+#~ "設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding moves a window into the west (left) side of the screen. "
+#~ "The format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1"
+#~ "\". The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗在螢幕中向左移。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding raises the window above other windows. The format looks "
+#~ "like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". The parser "
+#~ "is fairly liberal and allows lower or upper case, and also abbreviations "
+#~ "such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set the option to "
+#~ "the special string \"disabled\", then there will be no keybinding for "
+#~ "this action."
+#~ msgstr ""
+#~ "本按鍵組合會令該視窗覆蓋其它視窗。格式可以像“&lt;Control&gt;a”或是“&lt;"
+#~ "Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使用大寫或小"
+#~ "寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此選項設定為"
+#~ "字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available horizontal space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將視窗大小調整至填滿所有水平空間。格式可以像“&lt;Control&gt;"
+#~ "a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使"
+#~ "用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此"
+#~ "選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid ""
+#~ "This keybinding resizes a window to fill available vertical space. The "
+#~ "format looks like \"&lt;Control&gt;a\" or \"&lt;Shift&gt;&lt;Alt&gt;F1\". "
+#~ "The parser is fairly liberal and allows lower or upper case, and also "
+#~ "abbreviations such as \"&lt;Ctl&gt;\" and \"&lt;Ctrl&gt;\". If you set "
+#~ "the option to the special string \"disabled\", then there will be no "
+#~ "keybinding for this action."
+#~ msgstr ""
+#~ "本按鍵組合可以將視窗大小調整至填滿所有垂直空間。格式可以像“&lt;Control&gt;"
+#~ "a”或是“&lt;Shift&gt;&lt;Alt&gt;F1”。分析按鍵組合字串時是比較寬鬆的,允許使"
+#~ "用大寫或小寫,也允許使用像“&lt;Ctl&gt;”及“&lt;Ctrl&gt;”等的縮寫。如果將此"
+#~ "選項設定為字串“disabled”,則不會為該項操作安排任何按鍵組合。"
+
+#~ msgid "Toggle always on top state"
+#~ msgstr "切換是否在「最上層」顯示"
+
+#~ msgid "Unmaximize window"
+#~ msgstr "視窗從最大化還原"
+
+#~ msgid "Unmaximize Window"
+#~ msgstr "視窗還原最大化"
+
+#~ msgid "No \"%s\" attribute on <%s> element"
+#~ msgstr "沒有任何“%s”屬性出現在 <%s> 元素內"
+
+#~ msgid "Theme already has a fallback icon"
+#~ msgstr "佈景主題已經有備用圖示"
+
+#~ msgid "Theme already has a fallback mini_icon"
+#~ msgstr "佈景主題已經有備用的迷你圖示"
+
+#~ msgid "No \"name\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“name”屬性"
+
+#~ msgid "No \"value\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“value”屬性"
+
+#~ msgid "No \"top\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“top”屬性"
+
+#~ msgid "No \"bottom\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“bottom”屬性"
+
+#~ msgid "No \"left\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“left”屬性"
+
+#~ msgid "No \"right\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“right”屬性"
+
+#~ msgid "No \"color\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“color”屬性"
+
+#~ msgid "No \"x1\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“x1”屬性"
+
+#~ msgid "No \"y1\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“y1”屬性"
+
+#~ msgid "No \"x2\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“x2”屬性"
+
+#~ msgid "No \"y2\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“y2”屬性"
+
+#~ msgid "No \"y\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“y”屬性"
+
+#~ msgid "No \"width\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“width”屬性"
+
+#~ msgid "No \"height\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“height”屬性"
+
+#~ msgid "No \"start_angle\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“start_angle”屬性"
+
+#~ msgid "No \"extent_angle\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“extent_angle”屬性"
+
+#~ msgid "No \"alpha\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“alpha”屬性"
+
+#~ msgid "No \"type\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“type”屬性"
+
+#~ msgid "No \"filename\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“filename”屬性"
+
+#~ msgid "No \"state\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“state”屬性"
+
+#~ msgid "No \"shadow\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“shadow”屬性"
+
+#~ msgid "No \"arrow\" attribute on element <%s>"
+#~ msgstr "<%s> 元素中沒有任何“arrow”屬性"
+
+#~ msgid "No \"value\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“value”屬性"
+
+#~ msgid "No \"position\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“position”屬性"
+
+#~ msgid "No \"function\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“function”屬性"
+
+#~ msgid "No \"state\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“state”屬性"
+
+#~ msgid "No \"focus\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“focus”屬性"
+
+#~ msgid "No \"style\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“style”屬性"
+
+#~ msgid "No \"resize\" attribute on <%s> element"
+#~ msgstr "<%s> 元素中沒有任何“resize”屬性"
diff --git a/rationales.txt b/rationales.txt
new file mode 100644
index 00000000..6bde56ca
--- /dev/null
+++ b/rationales.txt
@@ -0,0 +1,79 @@
+
+History
+====
+
+Focus issues:
+ see doc/how-to-get-focus-right.txt
+
+Keep panel always on top:
+ http://bugzilla.gnome.org/show_bug.cgi?id=81551
+
+Edge flipping:
+ http://bugzilla.gnome.org/show_bug.cgi?id=82917
+
+Opaque resize:
+ http://bugzilla.gnome.org/show_bug.cgi?id=92618
+
+Alt+click to move/resize:
+ http://bugzilla.gnome.org/show_bug.cgi?id=101151
+ https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=80918
+
+minimized windows in Alt+tab:
+ http://bugzilla.gnome.org/show_bug.cgi?id=89416
+
+dialogs above entire app group:
+ http://bugzilla.gnome.org/show_bug.cgi?id=88926
+
+display window size/position:
+ http://bugzilla.gnome.org/show_bug.cgi?id=85213
+ http://bugzilla.gnome.org/show_bug.cgi?id=106645
+ http://bugzilla.gnome.org/show_bug.cgi?id=130821
+
+configure click actions, alt+click:
+ http://bugzilla.gnome.org/show_bug.cgi?id=83210
+
+system modal dialogs:
+ http://bugzilla.gnome.org/show_bug.cgi?id=83357
+
+workspace wrapping:
+ http://bugzilla.gnome.org/show_bug.cgi?id=89315
+
+raise windows on click:
+ http://bugzilla.gnome.org/show_bug.cgi?id=326156
+ http://bugzilla.gnome.org/show_bug.cgi?id=86108
+ http://bugzilla.gnome.org/show_bug.cgi?id=115072
+ http://bugzilla.gnome.org/show_bug.cgi?id=115753
+
+Pointer warping:
+ http://bugzilla.gnome.org/show_bug.cgi?id=134353
+ http://bugzilla.gnome.org/show_bug.cgi?id=134352
+ (Think about tasklist & window selector too; this would be a very bad idea)
+
+
+Bugs for easy dupe-finding that seem to be hard to find otherwise:
+===
+Applications opening in wrong workspace:
+ http://bugzilla.gnome.org/show_bug.cgi?id=160687
+
+
+Tracking bugs
+====
+
+ revise theme format: http://bugzilla.gnome.org/show_bug.cgi?id=102547
+ session management: http://bugzilla.gnome.org/show_bug.cgi?id=107063
+ focus-stealing-prevention: http://bugzilla.gnome.org/show_bug.cgi?id=149028
+ other focus bugs: http://bugzilla.gnome.org/show_bug.cgi?id=155450
+ drag-and-drop: http://bugzilla.gnome.org/show_bug.cgi?id=155451
+ raising/stacking: http://bugzilla.gnome.org/show_bug.cgi?id=155452
+ tasklist/workspace switcher: http://bugzilla.gnome.org/show_bug.cgi?id=155453
+ window/workspace selection: http://bugzilla.gnome.org/show_bug.cgi?id=155456
+ key/mouse-binding actions: http://bugzilla.gnome.org/show_bug.cgi?id=155457
+moving/resizing (constraints): http://bugzilla.gnome.org/show_bug.cgi?id=155458
+ window placement: http://bugzilla.gnome.org/show_bug.cgi?id=155460
+ logout/system-monitor keys: http://bugzilla.gnome.org/show_bug.cgi?id=155462
+ modal dialogs: http://bugzilla.gnome.org/show_bug.cgi?id=164841
+ multi-head sans xinerama: http://bugzilla.gnome.org/show_bug.cgi?id=324772
+ xinerama: http://bugzilla.gnome.org/show_bug.cgi?id=324773
+ output-only windows: http://bugzilla.gnome.org/show_bug.cgi?id=340584
+ allowed actions/window-type: http://bugzilla.gnome.org/show_bug.cgi?id=340682
+ EWMH/ICCCM compliance: http://bugzilla.gnome.org/show_bug.cgi?id=340691
diff --git a/src/50-marco-desktop-key.xml.in b/src/50-marco-desktop-key.xml.in
new file mode 100644
index 00000000..5705607d
--- /dev/null
+++ b/src/50-marco-desktop-key.xml.in
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<KeyListEntries _name="Desktop" wm_name="Marco" package="marco">
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/panel_run_dialog" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/panel_main_menu" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/run_command_screenshot" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/run_command_window_screenshot" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/run_command_terminal" />
+
+</KeyListEntries>
+
diff --git a/src/50-marco-key.xml.in b/src/50-marco-key.xml.in
new file mode 100644
index 00000000..62c98236
--- /dev/null
+++ b/src/50-marco-key.xml.in
@@ -0,0 +1,269 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<KeyListEntries _name="Window Management" wm_name="Marco" package="marco">
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/activate_window_menu" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/toggle_fullscreen" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/toggle_maximized" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/maximize" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/unmaximize" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/toggle_shaded" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/close" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/minimize" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/begin_move" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/begin_resize" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/toggle_on_all_workspaces"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/raise_or_lower" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/raise" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/lower" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/maximize_vertically" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/maximize_horizontally" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_1"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_2"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_3"
+ value="2"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_4"
+ value="3"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_5"
+ value="4"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_6"
+ value="5"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_7"
+ value="6"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_8"
+ value="7"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_9"
+ value="8"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_10"
+ value="9"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_11"
+ value="10"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_12"
+ value="11"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_left"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_right"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_up"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/window_keybindings/move_to_workspace_down"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_windows" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_group" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_panels" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/cycle_windows" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/cycle_group" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/cycle_panels" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/show_desktop" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_1"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_2"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_3"
+ value="2"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_4"
+ value="3"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_5"
+ value="4"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_6"
+ value="5"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_7"
+ value="6"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_8"
+ value="7"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_9"
+ value="8"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_10"
+ value="9"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_11"
+ value="10"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_12"
+ value="11"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_left"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_right"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_up"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+ <KeyListEntry
+ name="/apps/marco/global_keybindings/switch_to_workspace_down"
+ value="1"
+ key="/apps/marco/general/num_workspaces"
+ comparison="gt" />
+
+</KeyListEntries>
+
diff --git a/src/Makefile.am b/src/Makefile.am
new file mode 100644
index 00000000..52223298
--- /dev/null
+++ b/src/Makefile.am
@@ -0,0 +1,223 @@
+lib_LTLIBRARIES = libmarco-private.la
+
+SUBDIRS=wm-tester tools themes
+
+INCLUDES = \
+ -I$(srcdir)/include \
+ -DMARCO_LIBEXECDIR=\"$(libexecdir)\" \
+ -DHOST_ALIAS=\"@HOST_ALIAS@\" \
+ -DMARCO_LOCALEDIR=\"$(prefix)/@DATADIRNAME@/locale\" \
+ -DMARCO_PKGDATADIR=\"$(pkgdatadir)\" \
+ -DMARCO_DATADIR=\"$(datadir)\" \
+ -DG_LOG_DOMAIN=\"marco\" \
+ -DSN_API_NOT_YET_FROZEN=1 \
+ @MARCO_CFLAGS@
+
+marco_SOURCES = \
+ core/async-getprop.c \
+ core/async-getprop.h \
+ core/atomnames.h \
+ core/bell.c \
+ core/bell.h \
+ core/boxes.c \
+ include/boxes.h \
+ compositor/compositor.c \
+ compositor/compositor-private.h \
+ compositor/compositor-xrender.c \
+ compositor/compositor-xrender.h \
+ include/compositor.h \
+ core/constraints.c \
+ core/constraints.h \
+ core/core.c \
+ core/delete.c \
+ core/display.c \
+ core/display-private.h \
+ include/display.h \
+ ui/draw-workspace.c \
+ ui/draw-workspace.h \
+ core/edge-resistance.c \
+ core/edge-resistance.h \
+ core/effects.c \
+ core/effects.h \
+ core/errors.c \
+ include/errors.h \
+ core/eventqueue.c \
+ core/eventqueue.h \
+ core/frame.c \
+ core/frame-private.h \
+ include/frame.h \
+ ui/gradient.c \
+ ui/gradient.h \
+ core/group-private.h \
+ core/group-props.c \
+ core/group-props.h \
+ core/group.c \
+ core/group.h \
+ core/iconcache.c \
+ core/iconcache.h \
+ core/keybindings.c \
+ core/keybindings.h \
+ core/main.c \
+ include/main.h \
+ core/marco-Xatomtype.h \
+ core/place.c \
+ core/place.h \
+ core/prefs.c \
+ include/prefs.h \
+ core/screen.c \
+ core/screen-private.h \
+ include/screen.h \
+ include/types.h \
+ core/session.c \
+ core/session.h \
+ core/stack.c \
+ core/stack.h \
+ core/util.c \
+ include/util.h \
+ core/window-props.c \
+ core/window-props.h \
+ core/window.c \
+ core/window-private.h \
+ include/window.h \
+ core/workspace.c \
+ core/workspace.h \
+ core/xprops.c \
+ include/xprops.h \
+ include/common.h \
+ include/core.h \
+ include/ui.h \
+ ui/fixedtip.c \
+ ui/fixedtip.h \
+ ui/frames.c \
+ ui/frames.h \
+ ui/menu.c \
+ ui/menu.h \
+ ui/metaaccellabel.c \
+ ui/metaaccellabel.h \
+ ui/resizepopup.c \
+ include/resizepopup.h \
+ ui/tabpopup.c \
+ include/tabpopup.h \
+ ui/theme-parser.c \
+ ui/theme-parser.h \
+ ui/theme.c \
+ ui/theme.h \
+ ui/themewidget.c \
+ ui/themewidget.h \
+ ui/ui.c \
+ include/all-keybindings.h
+
+# by setting libmarco_private_la_CFLAGS, the files shared with
+# marco proper will be compiled with different names.
+libmarco_private_la_CFLAGS =
+libmarco_private_la_SOURCES = \
+ core/boxes.c \
+ include/boxes.h \
+ ui/gradient.c \
+ ui/gradient.h \
+ core/util.c \
+ include/util.h \
+ include/common.h \
+ ui/preview-widget.c \
+ ui/preview-widget.h \
+ ui/theme-parser.c \
+ ui/theme-parser.h \
+ ui/theme.c \
+ ui/theme.h
+
+libmarco_private_la_LDFLAGS = -no-undefined
+libmarco_private_la_LIBADD = @MARCO_LIBS@
+
+libmarcoincludedir = $(includedir)/marco-1/marco-private
+
+libmarcoinclude_HEADERS = \
+ include/boxes.h \
+ ui/gradient.h \
+ include/util.h \
+ include/common.h \
+ ui/preview-widget.h \
+ ui/theme-parser.h \
+ ui/theme.h
+
+marco_theme_viewer_SOURCES= \
+ ui/theme-viewer.c
+
+schema_bindings_SOURCES = \
+ core/schema-bindings.c \
+ marco.schemas.in.in
+
+schema_bindings_LDADD = @MARCO_LIBS@
+marco.schemas.in: schema_bindings ${srcdir}/marco.schemas.in.in
+ @echo Generating keybinding schemas... ${srcdir}/marco.schemas.in.in
+ ${builddir}/schema_bindings ${srcdir}/marco.schemas.in.in ${builddir}/marco.schemas.in
+
+bin_PROGRAMS=marco marco-theme-viewer
+
+EFENCE=
+marco_LDADD=@MARCO_LIBS@ $(EFENCE)
+marco_theme_viewer_LDADD= @MARCO_LIBS@ libmarco-private.la
+
+testboxes_SOURCES=include/util.h core/util.c include/boxes.h core/boxes.c core/testboxes.c
+testgradient_SOURCES=ui/gradient.h ui/gradient.c ui/testgradient.c
+testasyncgetprop_SOURCES=core/async-getprop.h core/async-getprop.c core/testasyncgetprop.c
+
+noinst_PROGRAMS=testboxes testgradient testasyncgetprop schema_bindings
+
+testboxes_LDADD= @MARCO_LIBS@
+testgradient_LDADD= @MARCO_LIBS@
+testasyncgetprop_LDADD= @MARCO_LIBS@
+
+@INTLTOOL_DESKTOP_RULE@
+
+desktopfilesdir=$(datadir)/applications
+desktopfiles_in_files=marco.desktop.in
+desktopfiles_files=$(desktopfiles_in_files:.desktop.in=.desktop)
+desktopfiles_DATA = $(desktopfiles_files)
+
+wmpropertiesdir=$(datadir)/mate/wm-properties
+wmproperties_in_files=marco-wm.desktop.in
+wmproperties_files=$(wmproperties_in_files:.desktop.in=.desktop)
+wmproperties_DATA = $(wmproperties_files)
+
+schemadir = @MATECONF_SCHEMA_FILE_DIR@
+schema_in_files = marco.schemas.in
+schema_DATA = $(schema_in_files:.schemas.in=.schemas)
+
+@INTLTOOL_XML_NOMERGE_RULE@
+
+xmldir = @MATE_KEYBINDINGS_KEYSDIR@
+xml_in_files = 50-marco-desktop-key.xml.in 50-marco-key.xml.in
+xml_DATA = $(xml_in_files:.xml.in=.xml)
+
+@INTLTOOL_SCHEMAS_RULE@
+
+if MATECONF_SCHEMAS_INSTALL
+install-data-local:
+ MATECONF_CONFIG_SOURCE=$(MATECONF_SCHEMA_CONFIG_SOURCE) $(MATECONFTOOL) --makefile-install-rule $(schema_DATA)
+else
+install-data-local:
+endif
+
+BUILT_SOURCES =
+CLEANFILES = \
+ marco.desktop \
+ marco-wm.desktop \
+ marco.schemas \
+ marco.schemas.in \
+ 50-marco-desktop-key.xml \
+ 50-marco-key.xml
+
+pkgconfigdir = $(libdir)/pkgconfig
+
+pkgconfig_DATA = libmarco-private.pc
+
+EXTRA_DIST=$(desktopfiles_files) \
+ $(wmproperties_files) \
+ $(IMAGES) \
+ $(schema_DATA) \
+ $(desktopfiles_in_files) \
+ $(wmproperties_in_files) \
+ $(schema_in_files) \
+ $(xml_in_files) \
+ libmarco-private.pc.in
+
diff --git a/src/compositor/compositor-private.h b/src/compositor/compositor-private.h
new file mode 100644
index 00000000..ef9f8023
--- /dev/null
+++ b/src/compositor/compositor-private.h
@@ -0,0 +1,54 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2008 Iain Holmes
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_COMPOSITOR_PRIVATE_H
+#define META_COMPOSITOR_PRIVATE_H
+
+#include "compositor.h"
+
+struct _MetaCompositor
+{
+ void (* destroy) (MetaCompositor *compositor);
+
+ void (*manage_screen) (MetaCompositor *compositor,
+ MetaScreen *screen);
+ void (*unmanage_screen) (MetaCompositor *compositor,
+ MetaScreen *screen);
+ void (*add_window) (MetaCompositor *compositor,
+ MetaWindow *window,
+ Window xwindow,
+ XWindowAttributes *attrs);
+ void (*remove_window) (MetaCompositor *compositor,
+ Window xwindow);
+ void (*set_updates) (MetaCompositor *compositor,
+ MetaWindow *window,
+ gboolean update);
+ void (*process_event) (MetaCompositor *compositor,
+ XEvent *event,
+ MetaWindow *window);
+ Pixmap (*get_window_pixmap) (MetaCompositor *compositor,
+ MetaWindow *window);
+ void (*set_active_window) (MetaCompositor *compositor,
+ MetaScreen *screen,
+ MetaWindow *window);
+};
+
+#endif
diff --git a/src/compositor/compositor-xrender.c b/src/compositor/compositor-xrender.c
new file mode 100644
index 00000000..e0938706
--- /dev/null
+++ b/src/compositor/compositor-xrender.c
@@ -0,0 +1,3078 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2007 Iain Holmes
+ * Based on xcompmgr - (c) 2003 Keith Packard
+ * xfwm4 - (c) 2005-2007 Olivier Fourdan
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#define _GNU_SOURCE
+#define _XOPEN_SOURCE 500 /* for usleep() */
+
+#include <config.h>
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+
+#include <stdlib.h>
+#include <string.h>
+#include <math.h>
+#include <unistd.h>
+
+#include <gdk/gdk.h>
+
+#include "display.h"
+#include "screen.h"
+#include "frame.h"
+#include "errors.h"
+#include "window.h"
+#include "compositor-private.h"
+#include "compositor-xrender.h"
+#include "xprops.h"
+#include <X11/Xatom.h>
+#include <X11/extensions/shape.h>
+#include <X11/extensions/Xcomposite.h>
+#include <X11/extensions/Xdamage.h>
+#include <X11/extensions/Xfixes.h>
+#include <X11/extensions/Xrender.h>
+
+#if COMPOSITE_MAJOR > 0 || COMPOSITE_MINOR >= 2
+#define HAVE_NAME_WINDOW_PIXMAP 1
+#endif
+
+#if COMPOSITE_MAJOR > 0 || COMPOSITE_MINOR >= 3
+#define HAVE_COW 1
+#else
+/* Don't have a cow man...HAAHAAHAA */
+#endif
+
+#define USE_IDLE_REPAINT 1
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+static inline gboolean
+composite_at_least_version (MetaDisplay *display,
+ int maj, int min)
+{
+ static int major = -1;
+ static int minor = -1;
+
+ if (major == -1)
+ meta_display_get_compositor_version (display, &major, &minor);
+
+ return (major > maj || (major == maj && minor >= min));
+}
+
+#define have_name_window_pixmap(display) \
+ composite_at_least_version (display, 0, 2)
+#define have_cow(display) \
+ composite_at_least_version (display, 0, 3)
+
+#endif
+
+typedef enum _MetaCompWindowType
+{
+ META_COMP_WINDOW_NORMAL,
+ META_COMP_WINDOW_DND,
+ META_COMP_WINDOW_DESKTOP,
+ META_COMP_WINDOW_DOCK,
+ META_COMP_WINDOW_MENU,
+ META_COMP_WINDOW_DROP_DOWN_MENU,
+ META_COMP_WINDOW_TOOLTIP,
+} MetaCompWindowType;
+
+typedef enum _MetaShadowType
+{
+ META_SHADOW_SMALL,
+ META_SHADOW_MEDIUM,
+ META_SHADOW_LARGE,
+ LAST_SHADOW_TYPE
+} MetaShadowType;
+
+typedef struct _MetaCompositorXRender
+{
+ MetaCompositor compositor;
+
+ MetaDisplay *display;
+
+ Atom atom_x_root_pixmap;
+ Atom atom_x_set_root;
+ Atom atom_net_wm_window_opacity;
+ Atom atom_net_wm_window_type_dnd;
+
+ Atom atom_net_wm_window_type;
+ Atom atom_net_wm_window_type_desktop;
+ Atom atom_net_wm_window_type_dock;
+ Atom atom_net_wm_window_type_menu;
+ Atom atom_net_wm_window_type_dialog;
+ Atom atom_net_wm_window_type_normal;
+ Atom atom_net_wm_window_type_utility;
+ Atom atom_net_wm_window_type_splash;
+ Atom atom_net_wm_window_type_toolbar;
+ Atom atom_net_wm_window_type_dropdown_menu;
+ Atom atom_net_wm_window_type_tooltip;
+
+#ifdef USE_IDLE_REPAINT
+ guint repaint_id;
+#endif
+ guint enabled : 1;
+ guint show_redraw : 1;
+ guint debug : 1;
+} MetaCompositorXRender;
+
+typedef struct _conv
+{
+ int size;
+ double *data;
+} conv;
+
+typedef struct _shadow
+{
+ conv *gaussian_map;
+ guchar *shadow_corner;
+ guchar *shadow_top;
+} shadow;
+
+typedef struct _MetaCompScreen
+{
+ MetaScreen *screen;
+ GList *windows;
+ GHashTable *windows_by_xid;
+
+ MetaWindow *focus_window;
+
+ Window output;
+
+ gboolean have_shadows;
+ shadow *shadows[LAST_SHADOW_TYPE];
+
+ Picture root_picture;
+ Picture root_buffer;
+ Picture black_picture;
+ Picture trans_black_picture;
+ Picture root_tile;
+ XserverRegion all_damage;
+
+ guint overlays;
+ gboolean compositor_active;
+ gboolean clip_changed;
+
+ GSList *dock_windows;
+} MetaCompScreen;
+
+typedef struct _MetaCompWindow
+{
+ MetaScreen *screen;
+ MetaWindow *window; /* May be NULL if this window isn't managed by Marco */
+ Window id;
+ XWindowAttributes attrs;
+
+#ifdef HAVE_NAME_WINDOW_PIXMAP
+ Pixmap back_pixmap;
+
+ /* When the window is shaded back_pixmap will be replaced with the pixmap
+ for the shaded window. This is a copy of the original unshaded window
+ so that we can still see what the window looked like when it is needed
+ for the _get_window_pixmap function */
+ Pixmap shaded_back_pixmap;
+#endif
+
+ int mode;
+
+ gboolean damaged;
+ gboolean shaped;
+
+ MetaCompWindowType type;
+
+ Damage damage;
+ Picture picture;
+ Picture alpha_pict;
+
+ gboolean needs_shadow;
+ MetaShadowType shadow_type;
+ Picture shadow_pict;
+
+ XserverRegion border_size;
+ XserverRegion extents;
+
+ Picture shadow;
+ int shadow_dx;
+ int shadow_dy;
+ int shadow_width;
+ int shadow_height;
+
+ guint opacity;
+
+ XserverRegion border_clip;
+
+ gboolean updates_frozen;
+ gboolean update_pending;
+} MetaCompWindow;
+
+#define OPAQUE 0xffffffff
+
+#define WINDOW_SOLID 0
+#define WINDOW_ARGB 1
+
+#define SHADOW_SMALL_RADIUS 3.0
+#define SHADOW_MEDIUM_RADIUS 6.0
+#define SHADOW_LARGE_RADIUS 12.0
+
+#define SHADOW_SMALL_OFFSET_X (SHADOW_SMALL_RADIUS * -3 / 2)
+#define SHADOW_SMALL_OFFSET_Y (SHADOW_SMALL_RADIUS * -3 / 2)
+#define SHADOW_MEDIUM_OFFSET_X (SHADOW_MEDIUM_RADIUS * -3 / 2)
+#define SHADOW_MEDIUM_OFFSET_Y (SHADOW_MEDIUM_RADIUS * -5 / 4)
+#define SHADOW_LARGE_OFFSET_X -15
+#define SHADOW_LARGE_OFFSET_Y -15
+
+#define SHADOW_OPACITY 0.66
+
+#define TRANS_OPACITY 0.75
+
+#define DISPLAY_COMPOSITOR(display) ((MetaCompositorXRender *) meta_display_get_compositor (display))
+
+/* Gaussian stuff for creating the shadows */
+static double
+gaussian (double r,
+ double x,
+ double y)
+{
+ return ((1 / (sqrt (2 * G_PI * r))) *
+ exp ((- (x * x + y * y)) / (2 * r * r)));
+}
+
+static conv *
+make_gaussian_map (double r)
+{
+ conv *c;
+ int size, centre;
+ int x, y;
+ double t, g;
+
+ size = ((int) ceil ((r * 3)) + 1) & ~1;
+ centre = size / 2;
+ c = g_malloc (sizeof (conv) + size * size * sizeof (double));
+ c->size = size;
+ c->data = (double *) (c + 1);
+ t = 0.0;
+
+ for (y = 0; y < size; y++)
+ {
+ for (x = 0; x < size; x++)
+ {
+ g = gaussian (r, (double) (x - centre), (double) (y - centre));
+ t += g;
+ c->data[y * size + x] = g;
+ }
+ }
+
+ for (y = 0; y < size; y++)
+ {
+ for (x = 0; x < size; x++)
+ {
+ c->data[y * size + x] /= t;
+ }
+ }
+
+ return c;
+}
+
+static void
+dump_xserver_region (const char *location,
+ MetaDisplay *display,
+ XserverRegion region)
+{
+ MetaCompositorXRender *compositor = DISPLAY_COMPOSITOR (display);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ int nrects;
+ XRectangle *rects;
+ XRectangle bounds;
+
+ if (!compositor->debug)
+ return;
+
+ if (region)
+ {
+ rects = XFixesFetchRegionAndBounds (xdisplay, region, &nrects, &bounds);
+ if (nrects > 0)
+ {
+ int i;
+ fprintf (stderr, "%s (XSR): %d rects, bounds: %d,%d (%d,%d)\n",
+ location, nrects, bounds.x, bounds.y, bounds.width, bounds.height);
+ for (i = 1; i < nrects; i++)
+ fprintf (stderr, "\t%d,%d (%d,%d)\n",
+ rects[i].x, rects[i].y, rects[i].width, rects[i].height);
+ }
+ else
+ fprintf (stderr, "%s (XSR): empty\n", location);
+ XFree (rects);
+ }
+ else
+ fprintf (stderr, "%s (XSR): null\n", location);
+}
+
+/*
+* A picture will help
+*
+* -center 0 width width+center
+* -center +-----+-------------------+-----+
+* | | | |
+* | | | |
+* 0 +-----+-------------------+-----+
+* | | | |
+* | | | |
+* | | | |
+* height +-----+-------------------+-----+
+* | | | |
+* height+ | | | |
+* center +-----+-------------------+-----+
+*/
+static guchar
+sum_gaussian (conv *map,
+ double opacity,
+ int x,
+ int y,
+ int width,
+ int height)
+{
+ double *g_data, *g_line;
+ double v;
+ int fx, fy;
+ int fx_start, fx_end;
+ int fy_start, fy_end;
+ int g_size, centre;
+
+ g_line = map->data;
+ g_size = map->size;
+ centre = g_size / 2;
+ fx_start = centre - x;
+ if (fx_start < 0)
+ fx_start = 0;
+
+ fx_end = width + centre - x;
+ if (fx_end > g_size)
+ fx_end = g_size;
+
+ fy_start = centre - y;
+ if (fy_start < 0)
+ fy_start = 0;
+
+ fy_end = height + centre - y;
+ if (fy_end > g_size)
+ fy_end = g_size;
+
+ g_line = g_line + fy_start * g_size + fx_start;
+
+ v = 0.0;
+ for (fy = fy_start; fy < fy_end; fy++)
+ {
+ g_data = g_line;
+ g_line += g_size;
+
+ for (fx = fx_start; fx < fx_end; fx++)
+ v += *g_data++;
+ }
+
+ if (v > 1.0)
+ v = 1.0;
+
+ return ((guchar) (v * opacity * 255.0));
+}
+
+/* precompute shadow corners and sides to save time for large windows */
+static void
+presum_gaussian (shadow *shad)
+{
+ int centre;
+ int opacity, x, y;
+ int msize;
+ conv *map;
+
+ map = shad->gaussian_map;
+ msize = map->size;
+ centre = map->size / 2;
+
+ if (shad->shadow_corner)
+ g_free (shad->shadow_corner);
+ if (shad->shadow_top)
+ g_free (shad->shadow_top);
+
+ shad->shadow_corner = (guchar *)(g_malloc ((msize + 1) * (msize + 1) * 26));
+ shad->shadow_top = (guchar *) (g_malloc ((msize + 1) * 26));
+
+ for (x = 0; x <= msize; x++)
+ {
+
+ shad->shadow_top[25 * (msize + 1) + x] =
+ sum_gaussian (map, 1, x - centre, centre, msize * 2, msize * 2);
+ for (opacity = 0; opacity < 25; opacity++)
+ {
+ shad->shadow_top[opacity * (msize + 1) + x] =
+ shad->shadow_top[25 * (msize + 1) + x] * opacity / 25;
+ }
+
+ for (y = 0; y <= x; y++)
+ {
+ shad->shadow_corner[25 * (msize + 1) * (msize + 1)
+ + y * (msize + 1)
+ + x]
+ = sum_gaussian (map, 1, x - centre, y - centre,
+ msize * 2, msize * 2);
+
+ shad->shadow_corner[25 * (msize + 1) * (msize + 1)
+ + x * (msize + 1) + y] =
+ shad->shadow_corner[25 * (msize + 1) * (msize + 1)
+ + y * (msize + 1) + x];
+
+ for (opacity = 0; opacity < 25; opacity++)
+ {
+ shad->shadow_corner[opacity * (msize + 1) * (msize + 1)
+ + y * (msize + 1) + x]
+ = shad->shadow_corner[opacity * (msize + 1) * (msize + 1)
+ + x * (msize + 1) + y]
+ = shad->shadow_corner[25 * (msize + 1) * (msize + 1)
+ + y * (msize + 1) + x] * opacity / 25;
+ }
+ }
+ }
+}
+
+static void
+generate_shadows (MetaCompScreen *info)
+{
+ double radii[LAST_SHADOW_TYPE] = {SHADOW_SMALL_RADIUS,
+ SHADOW_MEDIUM_RADIUS,
+ SHADOW_LARGE_RADIUS};
+ int i;
+
+ for (i = 0; i < LAST_SHADOW_TYPE; i++) {
+ shadow *shad = g_new0 (shadow, 1);
+
+ shad->gaussian_map = make_gaussian_map (radii[i]);
+ presum_gaussian (shad);
+
+ info->shadows[i] = shad;
+ }
+}
+
+static XImage *
+make_shadow (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaShadowType shadow_type,
+ double opacity,
+ int width,
+ int height)
+{
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ XImage *ximage;
+ guchar *data;
+ shadow *shad;
+ int msize;
+ int ylimit, xlimit;
+ int swidth, sheight;
+ int centre;
+ int x, y;
+ guchar d;
+ int x_diff;
+ int opacity_int = (int)(opacity * 25);
+ int screen_number = meta_screen_get_screen_number (screen);
+
+ if (info==NULL)
+ {
+ return NULL;
+ }
+
+ shad = info->shadows[shadow_type];
+ msize = shad->gaussian_map->size;
+ swidth = width + msize;
+ sheight = height + msize;
+ centre = msize / 2;
+
+ data = g_malloc (swidth * sheight * sizeof (guchar));
+
+ ximage = XCreateImage (xdisplay, DefaultVisual (xdisplay, screen_number),
+ 8, ZPixmap, 0, (char *) data,
+ swidth, sheight, 8, swidth * sizeof (guchar));
+ if (!ximage)
+ {
+ g_free (data);
+ return NULL;
+ }
+
+ /*
+ * Build the gaussian in sections
+ */
+
+ /*
+ * centre (fill the complete data array
+ */
+ if (msize > 0)
+ d = shad->shadow_top[opacity_int * (msize + 1) + msize];
+ else
+ d = sum_gaussian (shad->gaussian_map, opacity, centre,
+ centre, width, height);
+ memset (data, d, sheight * swidth);
+
+ /*
+ * corners
+ */
+ ylimit = msize;
+ if (ylimit > sheight / 2)
+ ylimit = (sheight + 1) / 2;
+
+ xlimit = msize;
+ if (xlimit > swidth / 2)
+ xlimit = (swidth + 1) / 2;
+
+ for (y = 0; y < ylimit; y++)
+ {
+ for (x = 0; x < xlimit; x++)
+ {
+
+ if (xlimit == msize && ylimit == msize)
+ d = shad->shadow_corner[opacity_int * (msize + 1) * (msize + 1) + y * (msize + 1) + x];
+ else
+ d = sum_gaussian (shad->gaussian_map, opacity, x - centre,
+ y - centre, width, height);
+
+ data[y * swidth + x] = d;
+ data[(sheight - y - 1) * swidth + x] = d;
+ data[(sheight - y - 1) * swidth + (swidth - x - 1)] = d;
+ data[y * swidth + (swidth - x - 1)] = d;
+ }
+ }
+
+ /* top/bottom */
+ x_diff = swidth - (msize * 2);
+ if (x_diff > 0 && ylimit > 0)
+ {
+ for (y = 0; y < ylimit; y++)
+ {
+ if (ylimit == msize)
+ d = shad->shadow_top[opacity_int * (msize + 1) + y];
+ else
+ d = sum_gaussian (shad->gaussian_map, opacity, centre,
+ y - centre, width, height);
+
+ memset (&data[y * swidth + msize], d, x_diff);
+ memset (&data[(sheight - y - 1) * swidth + msize], d, x_diff);
+ }
+ }
+
+ /*
+ * sides
+ */
+ for (x = 0; x < xlimit; x++)
+ {
+ if (xlimit == msize)
+ d = shad->shadow_top[opacity_int * (msize + 1) + x];
+ else
+ d = sum_gaussian (shad->gaussian_map, opacity, x - centre,
+ centre, width, height);
+
+ for (y = msize; y < sheight - msize; y++)
+ {
+ data[y * swidth + x] = d;
+ data[y * swidth + (swidth - x - 1)] = d;
+ }
+ }
+
+ return ximage;
+}
+
+static Picture
+shadow_picture (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaShadowType shadow_type,
+ double opacity,
+ Picture alpha_pict,
+ int width,
+ int height,
+ int *wp,
+ int *hp)
+{
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ XImage *shadow_image;
+ Pixmap shadow_pixmap;
+ Picture shadow_picture;
+ Window xroot = meta_screen_get_xroot (screen);
+ GC gc;
+
+ shadow_image = make_shadow (display, screen, shadow_type,
+ opacity, width, height);
+ if (!shadow_image)
+ return None;
+
+ shadow_pixmap = XCreatePixmap (xdisplay, xroot,
+ shadow_image->width, shadow_image->height, 8);
+ if (!shadow_pixmap)
+ {
+ XDestroyImage (shadow_image);
+ return None;
+ }
+
+ shadow_picture = XRenderCreatePicture (xdisplay, shadow_pixmap,
+ XRenderFindStandardFormat (xdisplay,
+PictStandardA8),
+ 0, 0);
+ if (!shadow_picture)
+ {
+ XDestroyImage (shadow_image);
+ XFreePixmap (xdisplay, shadow_pixmap);
+ return None;
+ }
+
+ gc = XCreateGC (xdisplay, shadow_pixmap, 0, 0);
+ if (!gc)
+ {
+ XDestroyImage (shadow_image);
+ XFreePixmap (xdisplay, shadow_pixmap);
+ XRenderFreePicture (xdisplay, shadow_picture);
+ return None;
+ }
+
+ XPutImage (xdisplay, shadow_pixmap, gc, shadow_image, 0, 0, 0, 0,
+ shadow_image->width, shadow_image->height);
+ *wp = shadow_image->width;
+ *hp = shadow_image->height;
+
+ XFreeGC (xdisplay, gc);
+ XDestroyImage (shadow_image);
+ XFreePixmap (xdisplay, shadow_pixmap);
+
+ return shadow_picture;
+}
+
+static MetaCompWindow *
+find_window_for_screen (MetaScreen *screen,
+ Window xwindow)
+{
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+
+ if (info == NULL)
+ return NULL;
+
+ return g_hash_table_lookup (info->windows_by_xid, (gpointer) xwindow);
+}
+
+static MetaCompWindow *
+find_window_in_display (MetaDisplay *display,
+ Window xwindow)
+{
+ GSList *index;
+
+ for (index = meta_display_get_screens (display); index; index = index->next)
+ {
+ MetaCompWindow *cw = find_window_for_screen (index->data, xwindow);
+
+ if (cw != NULL)
+ return cw;
+ }
+
+ return NULL;
+}
+
+static MetaCompWindow *
+find_window_for_child_window_in_display (MetaDisplay *display,
+ Window xwindow)
+{
+ Window ignored1, *ignored2;
+ Window parent;
+ guint ignored_children;
+
+ XQueryTree (meta_display_get_xdisplay (display), xwindow, &ignored1,
+ &parent, &ignored2, &ignored_children);
+
+ if (parent != None)
+ return find_window_in_display (display, parent);
+
+ return NULL;
+}
+
+static Picture
+solid_picture (MetaDisplay *display,
+ MetaScreen *screen,
+ gboolean argb,
+ double a,
+ double r,
+ double g,
+ double b)
+{
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ Pixmap pixmap;
+ Picture picture;
+ XRenderPictureAttributes pa;
+ XRenderPictFormat *render_format;
+ XRenderColor c;
+ Window xroot = meta_screen_get_xroot (screen);
+
+ render_format = XRenderFindStandardFormat (xdisplay,
+ argb ? PictStandardARGB32 : PictStandardA8);
+
+ pixmap = XCreatePixmap (xdisplay, xroot, 1, 1, argb ? 32 : 8);
+ g_return_val_if_fail (pixmap != None, None);
+
+ pa.repeat = TRUE;
+ picture = XRenderCreatePicture (xdisplay, pixmap, render_format,
+ CPRepeat, &pa);
+ if (picture == None)
+ {
+ XFreePixmap (xdisplay, pixmap);
+ g_warning ("(picture != None) failed");
+ return None;
+ }
+
+ c.alpha = a * 0xffff;
+ c.red = r * 0xffff;
+ c.green = g * 0xffff;
+ c.blue = b * 0xffff;
+
+ XRenderFillRectangle (xdisplay, PictOpSrc, picture, &c, 0, 0, 1, 1);
+ XFreePixmap (xdisplay, pixmap);
+
+ return picture;
+}
+
+static Picture
+root_tile (MetaScreen *screen)
+{
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ Picture picture;
+ Pixmap pixmap;
+ gboolean fill = FALSE;
+ XRenderPictureAttributes pa;
+ XRenderPictFormat *format;
+ int p;
+ Atom background_atoms[2];
+ Atom pixmap_atom;
+ int screen_number = meta_screen_get_screen_number (screen);
+ Window xroot = meta_screen_get_xroot (screen);
+
+ pixmap = None;
+ background_atoms[0] = DISPLAY_COMPOSITOR (display)->atom_x_root_pixmap;
+ background_atoms[1] = DISPLAY_COMPOSITOR (display)->atom_x_set_root;
+
+ pixmap_atom = XInternAtom (xdisplay, "PIXMAP", False);
+ for (p = 0; p < 2; p++)
+ {
+ Atom actual_type;
+ int actual_format;
+ gulong nitems, bytes_after;
+ guchar *prop;
+
+ if (XGetWindowProperty (xdisplay, xroot,
+ background_atoms[p],
+ 0, 4, FALSE, AnyPropertyType,
+ &actual_type, &actual_format,
+ &nitems, &bytes_after, &prop) == Success)
+ {
+ if (actual_type == pixmap_atom &&
+ actual_format == 32 &&
+ nitems == 1)
+ {
+ memcpy (&pixmap, prop, 4);
+ XFree (prop);
+ fill = FALSE;
+ break;
+ }
+ }
+ }
+
+ if (!pixmap)
+ {
+ pixmap = XCreatePixmap (xdisplay, xroot, 1, 1,
+ DefaultDepth (xdisplay, screen_number));
+ g_return_val_if_fail (pixmap != None, None);
+ fill = TRUE;
+ }
+
+ pa.repeat = TRUE;
+ format = XRenderFindVisualFormat (xdisplay, DefaultVisual (xdisplay,
+ screen_number));
+ g_return_val_if_fail (format != NULL, None);
+
+ picture = XRenderCreatePicture (xdisplay, pixmap, format, CPRepeat, &pa);
+ if ((picture != None) && (fill))
+ {
+ XRenderColor c;
+
+ /* Background default to just plain ugly grey */
+ c.red = 0x8080;
+ c.green = 0x8080;
+ c.blue = 0x8080;
+ c.alpha = 0xffff;
+
+ XRenderFillRectangle (xdisplay, PictOpSrc, picture, &c, 0, 0, 1, 1);
+ XFreePixmap (xdisplay, pixmap);
+ }
+
+ return picture;
+}
+
+static Picture
+create_root_buffer (MetaScreen *screen)
+{
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+ Picture pict;
+ XRenderPictFormat *format;
+ Pixmap root_pixmap;
+ Visual *visual;
+ int depth, screen_width, screen_height, screen_number;
+
+ if (info == NULL)
+ {
+ return None;
+ }
+
+ meta_screen_get_size (screen, &screen_width, &screen_height);
+ screen_number = meta_screen_get_screen_number (screen);
+ visual = DefaultVisual (xdisplay, screen_number);
+ depth = DefaultDepth (xdisplay, screen_number);
+
+ format = XRenderFindVisualFormat (xdisplay, visual);
+ g_return_val_if_fail (format != NULL, None);
+
+ root_pixmap = XCreatePixmap (xdisplay, info->output,
+ screen_width, screen_height, depth);
+ g_return_val_if_fail (root_pixmap != None, None);
+
+ pict = XRenderCreatePicture (xdisplay, root_pixmap, format, 0, NULL);
+ XFreePixmap (xdisplay, root_pixmap);
+
+ return pict;
+}
+
+static void
+paint_root (MetaScreen *screen,
+ Picture root_buffer)
+{
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+ int width, height;
+
+ if (info == NULL)
+ {
+ return;
+ }
+
+ g_return_if_fail (root_buffer != None);
+
+ if (info->root_tile == None)
+ {
+ info->root_tile = root_tile (screen);
+ g_return_if_fail (info->root_tile != None);
+ }
+
+ meta_screen_get_size (screen, &width, &height);
+ XRenderComposite (xdisplay, PictOpSrc, info->root_tile, None, root_buffer,
+ 0, 0, 0, 0, 0, 0, width, height);
+}
+
+static gboolean
+window_has_shadow (MetaCompWindow *cw)
+{
+ MetaCompScreen *info = meta_screen_get_compositor_data (cw->screen);
+
+ if (info == NULL || info->have_shadows == FALSE)
+ return FALSE;
+
+ /* Always put a shadow around windows with a frame - This should override
+ the restriction about not putting a shadow around shaped windows
+ as the frame might be the reason the window is shaped */
+ if (cw->window)
+ {
+ if (meta_window_get_frame (cw->window)) {
+ meta_verbose ("Window has shadow because it has a frame\n");
+ return TRUE;
+ }
+ }
+
+ /* Never put a shadow around shaped windows */
+ if (cw->shaped) {
+ meta_verbose ("Window has no shadow as it is shaped\n");
+ return FALSE;
+ }
+
+ /* Don't put shadow around DND icon windows */
+ if (cw->type == META_COMP_WINDOW_DND ||
+ cw->type == META_COMP_WINDOW_DESKTOP) {
+ meta_verbose ("Window has no shadow as it is DND or Desktop\n");
+ return FALSE;
+ }
+
+ if (cw->mode != WINDOW_ARGB) {
+ meta_verbose ("Window has shadow as it is not ARGB\n");
+ return TRUE;
+ }
+
+ if (cw->type == META_COMP_WINDOW_MENU ||
+ cw->type == META_COMP_WINDOW_DROP_DOWN_MENU) {
+ meta_verbose ("Window has shadow as it is a menu\n");
+ return TRUE;
+ }
+
+ if (cw->type == META_COMP_WINDOW_TOOLTIP) {
+ meta_verbose ("Window has shadow as it is a tooltip\n");
+ return TRUE;
+ }
+
+ meta_verbose ("Window has no shadow as it fell through\n");
+ return FALSE;
+}
+
+double shadow_offsets_x[LAST_SHADOW_TYPE] = {SHADOW_SMALL_OFFSET_X,
+ SHADOW_MEDIUM_OFFSET_X,
+ SHADOW_LARGE_OFFSET_X};
+double shadow_offsets_y[LAST_SHADOW_TYPE] = {SHADOW_SMALL_OFFSET_Y,
+ SHADOW_MEDIUM_OFFSET_Y,
+ SHADOW_LARGE_OFFSET_Y};
+static XserverRegion
+win_extents (MetaCompWindow *cw)
+{
+ MetaScreen *screen = cw->screen;
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ XRectangle r;
+
+ r.x = cw->attrs.x;
+ r.y = cw->attrs.y;
+ r.width = cw->attrs.width + cw->attrs.border_width * 2;
+ r.height = cw->attrs.height + cw->attrs.border_width * 2;
+
+ if (cw->needs_shadow)
+ {
+ XRectangle sr;
+
+ cw->shadow_dx = shadow_offsets_x [cw->shadow_type];
+ cw->shadow_dy = shadow_offsets_y [cw->shadow_type];
+
+ if (!cw->shadow)
+ {
+ double opacity = SHADOW_OPACITY;
+ if (cw->opacity != (guint) OPAQUE)
+ opacity = opacity * ((double) cw->opacity) / ((double) OPAQUE);
+
+ cw->shadow = shadow_picture (display, screen, cw->shadow_type,
+ opacity, cw->alpha_pict,
+ cw->attrs.width + cw->attrs.border_width * 2,
+ cw->attrs.height + cw->attrs.border_width * 2,
+ &cw->shadow_width, &cw->shadow_height);
+ }
+
+ sr.x = cw->attrs.x + cw->shadow_dx;
+ sr.y = cw->attrs.y + cw->shadow_dy;
+ sr.width = cw->shadow_width;
+ sr.height = cw->shadow_height;
+
+ if (sr.x < r.x)
+ {
+ r.width = (r.x + r.width) - sr.x;
+ r.x = sr.x;
+ }
+
+ if (sr.y < r.y)
+ {
+ r.height = (r.y + r.height) - sr.y;
+ r.y = sr.y;
+ }
+
+ if (sr.x + sr.width > r.x + r.width)
+ r.width = sr.x + sr.width - r.x;
+
+ if (sr.y + sr.height > r.y + r.height)
+ r.height = sr.y + sr.height - r.y;
+ }
+
+ return XFixesCreateRegion (xdisplay, &r, 1);
+}
+
+static XserverRegion
+border_size (MetaCompWindow *cw)
+{
+ MetaScreen *screen = cw->screen;
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ XserverRegion border;
+
+ meta_error_trap_push (display);
+ border = XFixesCreateRegionFromWindow (xdisplay, cw->id,
+ WindowRegionBounding);
+ meta_error_trap_pop (display, FALSE);
+
+ g_return_val_if_fail (border != None, None);
+ XFixesTranslateRegion (xdisplay, border,
+ cw->attrs.x + cw->attrs.border_width,
+ cw->attrs.y + cw->attrs.border_width);
+ return border;
+}
+
+static XRenderPictFormat *
+get_window_format (MetaCompWindow *cw)
+{
+ MetaScreen *screen = cw->screen;
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ XRenderPictFormat *format;
+ int screen_number = meta_screen_get_screen_number (screen);
+
+ format = XRenderFindVisualFormat (xdisplay, cw->attrs.visual);
+ if (!format)
+ format = XRenderFindVisualFormat (xdisplay,
+ DefaultVisual (xdisplay, screen_number));
+ return format;
+}
+
+static Picture
+get_window_picture (MetaCompWindow *cw)
+{
+ MetaScreen *screen = cw->screen;
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ XRenderPictureAttributes pa;
+ XRenderPictFormat *format;
+ Drawable draw;
+
+ draw = cw->id;
+
+ meta_error_trap_push (display);
+
+#ifdef HAVE_NAME_WINDOW_PIXMAP
+ if (have_name_window_pixmap (display))
+ {
+ if (cw->back_pixmap == None)
+ cw->back_pixmap = XCompositeNameWindowPixmap (xdisplay, cw->id);
+
+ if (cw->back_pixmap != None)
+ draw = cw->back_pixmap;
+ }
+#endif
+
+ format = get_window_format (cw);
+ if (format)
+ {
+ Picture pict;
+
+ pa.subwindow_mode = IncludeInferiors;
+
+ pict = XRenderCreatePicture (xdisplay, draw, format, CPSubwindowMode, &pa);
+ meta_error_trap_pop (display, FALSE);
+
+ return pict;
+ }
+
+ meta_error_trap_pop (display, FALSE);
+ return None;
+}
+
+static void
+paint_dock_shadows (MetaScreen *screen,
+ Picture root_buffer,
+ XserverRegion region)
+{
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+ GSList *d;
+
+ if (info == NULL)
+ {
+ return;
+ }
+
+ for (d = info->dock_windows; d; d = d->next)
+ {
+ MetaCompWindow *cw = d->data;
+ XserverRegion shadow_clip;
+
+ if (cw->shadow)
+ {
+ shadow_clip = XFixesCreateRegion (xdisplay, NULL, 0);
+ XFixesIntersectRegion (xdisplay, shadow_clip,
+ cw->border_clip, region);
+
+ XFixesSetPictureClipRegion (xdisplay, root_buffer, 0, 0, shadow_clip);
+
+ XRenderComposite (xdisplay, PictOpOver, info->black_picture,
+ cw->shadow, root_buffer,
+ 0, 0, 0, 0,
+ cw->attrs.x + cw->shadow_dx,
+ cw->attrs.y + cw->shadow_dy,
+ cw->shadow_width, cw->shadow_height);
+ XFixesDestroyRegion (xdisplay, shadow_clip);
+ }
+ }
+}
+
+static void
+paint_windows (MetaScreen *screen,
+ GList *windows,
+ Picture root_buffer,
+ XserverRegion region)
+{
+ MetaDisplay *display = meta_screen_get_display (screen);
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ GList *index, *last;
+ int screen_width, screen_height, screen_number;
+ Window xroot;
+ MetaCompWindow *cw;
+ XserverRegion paint_region, desktop_region;
+
+ if (info == NULL)
+ {
+ return;
+ }
+
+ meta_screen_get_size (screen, &screen_width, &screen_height);
+ screen_number = meta_screen_get_screen_number (screen);
+ xroot = meta_screen_get_xroot (screen);
+
+ if (region == None)
+ {
+ XRectangle r;
+ r.x = 0;
+ r.y = 0;
+ r.width = screen_width;
+ r.height = screen_height;
+ paint_region = XFixesCreateRegion (xdisplay, &r, 1);
+ }
+ else
+ {
+ paint_region = XFixesCreateRegion (xdisplay, NULL, 0);
+ XFixesCopyRegion (xdisplay, paint_region, region);
+ }
+
+ desktop_region = None;
+
+ /*
+ * Painting from top to bottom, reducing the clipping area at
+ * each iteration. Only the opaque windows are painted 1st.
+ */
+ last = NULL;
+ for (index = windows; index; index = index->next)
+ {
+ /* Store the last window we dealt with */
+ last = index;
+
+ cw = (MetaCompWindow *) index->data;
+ if (!cw->damaged)
+ {
+ /* Not damaged */
+ continue;
+ }
+
+#if 0
+ if ((cw->attrs.x + cw->attrs.width < 1) ||
+ (cw->attrs.y + cw->attrs.height < 1) ||
+ (cw->attrs.x >= screen_width) || (cw->attrs.y >= screen_height))
+ {
+ /* Off screen */
+ continue;
+ }
+#endif
+
+ if (cw->picture == None)
+ cw->picture = get_window_picture (cw);
+
+ /* If the clip region of the screen has been changed
+ then we need to recreate the extents of the window */
+ if (info->clip_changed)
+ {
+ if (cw->border_size)
+ {
+ XFixesDestroyRegion (xdisplay, cw->border_size);
+ cw->border_size = None;
+ }
+
+#if 0
+ if (cw->extents)
+ {
+ XFixesDestroyRegion (xdisplay, cw->extents);
+ cw->extents = None;
+ }
+#endif
+ }
+
+ if (cw->border_size == None)
+ cw->border_size = border_size (cw);
+
+ if (cw->extents == None)
+ cw->extents = win_extents (cw);
+
+ if (cw->mode == WINDOW_SOLID)
+ {
+ int x, y, wid, hei;
+
+#ifdef HAVE_NAME_WINDOW_PIXMAP
+ if (have_name_window_pixmap (display))
+ {
+ x = cw->attrs.x;
+ y = cw->attrs.y;
+ wid = cw->attrs.width + cw->attrs.border_width * 2;
+ hei = cw->attrs.height + cw->attrs.border_width * 2;
+ }
+ else
+#endif
+ {
+ x = cw->attrs.x + cw->attrs.border_width;
+ y = cw->attrs.y + cw->attrs.border_width;
+ wid = cw->attrs.width;
+ hei = cw->attrs.height;
+ }
+
+ XFixesSetPictureClipRegion (xdisplay, root_buffer,
+ 0, 0, paint_region);
+ XRenderComposite (xdisplay, PictOpSrc, cw->picture,
+ None, root_buffer, 0, 0, 0, 0,
+ x, y, wid, hei);
+
+ if (cw->type == META_COMP_WINDOW_DESKTOP)
+ {
+ desktop_region = XFixesCreateRegion (xdisplay, 0, 0);
+ XFixesCopyRegion (xdisplay, desktop_region, paint_region);
+ }
+
+ XFixesSubtractRegion (xdisplay, paint_region,
+ paint_region, cw->border_size);
+ }
+
+ if (!cw->border_clip)
+ {
+ cw->border_clip = XFixesCreateRegion (xdisplay, 0, 0);
+ XFixesCopyRegion (xdisplay, cw->border_clip, paint_region);
+ }
+ }
+
+ XFixesSetPictureClipRegion (xdisplay, root_buffer, 0, 0, paint_region);
+ paint_root (screen, root_buffer);
+
+ paint_dock_shadows (screen, root_buffer, desktop_region == None ?
+ paint_region : desktop_region);
+ if (desktop_region != None)
+ XFixesDestroyRegion (xdisplay, desktop_region);
+
+ /*
+ * Painting from bottom to top, translucent windows and shadows are painted
+ */
+ for (index = last; index; index = index->prev)
+ {
+ cw = (MetaCompWindow *) index->data;
+
+ if (cw->picture)
+ {
+ if (cw->shadow && cw->type != META_COMP_WINDOW_DOCK)
+ {
+ XserverRegion shadow_clip;
+
+ shadow_clip = XFixesCreateRegion (xdisplay, NULL, 0);
+ XFixesSubtractRegion (xdisplay, shadow_clip, cw->border_clip,
+ cw->border_size);
+ XFixesSetPictureClipRegion (xdisplay, root_buffer, 0, 0,
+ shadow_clip);
+
+ XRenderComposite (xdisplay, PictOpOver, info->black_picture,
+ cw->shadow, root_buffer,
+ 0, 0, 0, 0,
+ cw->attrs.x + cw->shadow_dx,
+ cw->attrs.y + cw->shadow_dy,
+ cw->shadow_width, cw->shadow_height);
+ if (shadow_clip)
+ XFixesDestroyRegion (xdisplay, shadow_clip);
+ }
+
+ if ((cw->opacity != (guint) OPAQUE) && !(cw->alpha_pict))
+ {
+ cw->alpha_pict = solid_picture (display, screen, FALSE,
+ (double) cw->opacity / OPAQUE,
+ 0, 0, 0);
+ }
+
+ XFixesIntersectRegion (xdisplay, cw->border_clip, cw->border_clip,
+ cw->border_size);
+ XFixesSetPictureClipRegion (xdisplay, root_buffer, 0, 0,
+ cw->border_clip);
+ if (cw->mode == WINDOW_ARGB)
+ {
+ int x, y, wid, hei;
+#ifdef HAVE_NAME_WINDOW_PIXMAP
+ if (have_name_window_pixmap (display))
+ {
+ x = cw->attrs.x;
+ y = cw->attrs.y;
+ wid = cw->attrs.width + cw->attrs.border_width * 2;
+ hei = cw->attrs.height + cw->attrs.border_width * 2;
+ }
+ else
+#endif
+ {
+ x = cw->attrs.x + cw->attrs.border_width;
+ y = cw->attrs.y + cw->attrs.border_width;
+ wid = cw->attrs.width;
+ hei = cw->attrs.height;
+ }
+
+ XRenderComposite (xdisplay, PictOpOver, cw->picture,
+ cw->alpha_pict, root_buffer, 0, 0, 0, 0,
+ x, y, wid, hei);
+ }
+ }
+
+ if (cw->border_clip)
+ {
+ XFixesDestroyRegion (xdisplay, cw->border_clip);
+ cw->border_clip = None;
+ }
+ }
+
+ XFixesDestroyRegion (xdisplay, paint_region);
+}
+
+static void
+paint_all (MetaScreen *screen,
+ XserverRegion region)
+{
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ int screen_width, screen_height;
+
+ /* Set clipping to the given region */
+ XFixesSetPictureClipRegion (xdisplay, info->root_picture, 0, 0, region);
+
+ meta_screen_get_size (screen, &screen_width, &screen_height);
+
+ if (DISPLAY_COMPOSITOR (display)->show_redraw)
+ {
+ Picture overlay;
+
+ dump_xserver_region ("paint_all", display, region);
+
+ /* Make a random colour overlay */
+ overlay = solid_picture (display, screen, TRUE, 1, /* 0.3, alpha */
+ ((double) (rand () % 100)) / 100.0,
+ ((double) (rand () % 100)) / 100.0,
+ ((double) (rand () % 100)) / 100.0);
+
+ XRenderComposite (xdisplay, PictOpOver, overlay, None, info->root_picture,
+ 0, 0, 0, 0, 0, 0, screen_width, screen_height);
+ XRenderFreePicture (xdisplay, overlay);
+ XFlush (xdisplay);
+ usleep (100 * 1000);
+ }
+
+ if (info->root_buffer == None)
+ info->root_buffer = create_root_buffer (screen);
+
+ paint_windows (screen, info->windows, info->root_buffer, region);
+
+ XFixesSetPictureClipRegion (xdisplay, info->root_buffer, 0, 0, region);
+ XRenderComposite (xdisplay, PictOpSrc, info->root_buffer, None,
+ info->root_picture, 0, 0, 0, 0, 0, 0,
+ screen_width, screen_height);
+}
+
+static void
+repair_screen (MetaScreen *screen)
+{
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+
+ if (info!=NULL && info->all_damage != None)
+ {
+ meta_error_trap_push (display);
+ paint_all (screen, info->all_damage);
+ XFixesDestroyRegion (xdisplay, info->all_damage);
+ info->all_damage = None;
+ info->clip_changed = FALSE;
+ meta_error_trap_pop (display, FALSE);
+ }
+}
+
+static void
+repair_display (MetaDisplay *display)
+{
+ GSList *screens = meta_display_get_screens (display);
+ MetaCompositorXRender *compositor = DISPLAY_COMPOSITOR (display);
+
+#ifdef USE_IDLE_REPAINT
+ if (compositor->repaint_id > 0)
+ {
+ g_source_remove (compositor->repaint_id);
+ compositor->repaint_id = 0;
+ }
+#endif
+
+ for (; screens; screens = screens->next)
+ repair_screen ((MetaScreen *) screens->data);
+}
+
+#ifdef USE_IDLE_REPAINT
+static gboolean
+compositor_idle_cb (gpointer data)
+{
+ MetaCompositorXRender *compositor = (MetaCompositorXRender *) data;
+
+ compositor->repaint_id = 0;
+ repair_display (compositor->display);
+
+ return FALSE;
+}
+
+static void
+add_repair (MetaDisplay *display)
+{
+ MetaCompositorXRender *compositor = DISPLAY_COMPOSITOR (display);
+
+ if (compositor->repaint_id > 0)
+ return;
+
+#if 1
+ compositor->repaint_id = g_idle_add_full (G_PRIORITY_HIGH_IDLE,
+ compositor_idle_cb, compositor,
+ NULL);
+#else
+ /* Limit it to 50fps */
+ compositor->repaint_id = g_timeout_add_full (G_PRIORITY_HIGH, 20,
+ compositor_idle_cb, compositor,
+ NULL);
+#endif
+}
+#endif
+
+static void
+add_damage (MetaScreen *screen,
+ XserverRegion damage)
+{
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+
+ /* dump_xserver_region ("add_damage", display, damage); */
+
+ if (info != NULL && info->all_damage)
+ {
+ XFixesUnionRegion (xdisplay, info->all_damage, info->all_damage, damage);
+ XFixesDestroyRegion (xdisplay, damage);
+ }
+ else
+ info->all_damage = damage;
+
+#ifdef USE_IDLE_REPAINT
+ add_repair (display);
+#endif
+}
+
+static void
+damage_screen (MetaScreen *screen)
+{
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ XserverRegion region;
+ int width, height;
+ XRectangle r;
+
+ r.x = 0;
+ r.y = 0;
+ meta_screen_get_size (screen, &width, &height);
+ r.width = width;
+ r.height = height;
+
+ region = XFixesCreateRegion (xdisplay, &r, 1);
+ dump_xserver_region ("damage_screen", display, region);
+ add_damage (screen, region);
+}
+
+static void
+repair_win (MetaCompWindow *cw)
+{
+ MetaScreen *screen = cw->screen;
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ XserverRegion parts;
+
+ meta_error_trap_push (display);
+ if (!cw->damaged)
+ {
+ parts = win_extents (cw);
+ XDamageSubtract (xdisplay, cw->damage, None, None);
+ }
+ else
+ {
+ parts = XFixesCreateRegion (xdisplay, 0, 0);
+ XDamageSubtract (xdisplay, cw->damage, None, parts);
+ XFixesTranslateRegion (xdisplay, parts,
+ cw->attrs.x + cw->attrs.border_width,
+ cw->attrs.y + cw->attrs.border_width);
+ }
+
+ meta_error_trap_pop (display, FALSE);
+
+ dump_xserver_region ("repair_win", display, parts);
+ add_damage (screen, parts);
+ cw->damaged = TRUE;
+}
+
+static void
+free_win (MetaCompWindow *cw,
+ gboolean destroy)
+{
+ MetaDisplay *display = meta_screen_get_display (cw->screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ MetaCompScreen *info = meta_screen_get_compositor_data (cw->screen);
+
+#ifdef HAVE_NAME_WINDOW_PIXMAP
+ if (have_name_window_pixmap (display))
+ {
+ /* See comment in map_win */
+ if (cw->back_pixmap && destroy)
+ {
+ XFreePixmap (xdisplay, cw->back_pixmap);
+ cw->back_pixmap = None;
+ }
+
+ if (cw->shaded_back_pixmap && destroy)
+ {
+ XFreePixmap (xdisplay, cw->shaded_back_pixmap);
+ cw->shaded_back_pixmap = None;
+ }
+ }
+#endif
+
+ if (cw->picture)
+ {
+ XRenderFreePicture (xdisplay, cw->picture);
+ cw->picture = None;
+ }
+
+ if (cw->shadow)
+ {
+ XRenderFreePicture (xdisplay, cw->shadow);
+ cw->shadow = None;
+ }
+
+ if (cw->alpha_pict)
+ {
+ XRenderFreePicture (xdisplay, cw->alpha_pict);
+ cw->alpha_pict = None;
+ }
+
+ if (cw->shadow_pict)
+ {
+ XRenderFreePicture (xdisplay, cw->shadow_pict);
+ cw->shadow_pict = None;
+ }
+
+ if (cw->border_size)
+ {
+ XFixesDestroyRegion (xdisplay, cw->border_size);
+ cw->border_size = None;
+ }
+
+ if (cw->border_clip)
+ {
+ XFixesDestroyRegion (xdisplay, cw->border_clip);
+ cw->border_clip = None;
+ }
+
+ if (cw->extents)
+ {
+ XFixesDestroyRegion (xdisplay, cw->extents);
+ cw->extents = None;
+ }
+
+ if (destroy)
+ {
+ if (cw->damage != None) {
+ meta_error_trap_push (display);
+ XDamageDestroy (xdisplay, cw->damage);
+ meta_error_trap_pop (display, FALSE);
+
+ cw->damage = None;
+ }
+
+ /* The window may not have been added to the list in this case,
+ but we can check anyway */
+ if (info!=NULL && cw->type == META_COMP_WINDOW_DOCK)
+ info->dock_windows = g_slist_remove (info->dock_windows, cw);
+
+ g_free (cw);
+ }
+}
+
+static void
+map_win (MetaDisplay *display,
+ MetaScreen *screen,
+ Window id)
+{
+ MetaCompWindow *cw = find_window_for_screen (screen, id);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+
+ if (cw == NULL)
+ return;
+
+#ifdef HAVE_NAME_WINDOW_PIXMAP
+ /* The reason we deallocate this here and not in unmap
+ is so that we will still have a valid pixmap for
+ whenever the window is unmapped */
+ if (cw->back_pixmap)
+ {
+ XFreePixmap (xdisplay, cw->back_pixmap);
+ cw->back_pixmap = None;
+ }
+
+ if (cw->shaded_back_pixmap)
+ {
+ XFreePixmap (xdisplay, cw->shaded_back_pixmap);
+ cw->shaded_back_pixmap = None;
+ }
+#endif
+
+ cw->attrs.map_state = IsViewable;
+ cw->damaged = FALSE;
+}
+
+static void
+unmap_win (MetaDisplay *display,
+ MetaScreen *screen,
+ Window id)
+{
+ MetaCompWindow *cw = find_window_for_screen (screen, id);
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+
+ if (cw == NULL || info == NULL)
+ {
+ return;
+ }
+
+ if (cw->window && cw->window == info->focus_window)
+ info->focus_window = NULL;
+
+ cw->attrs.map_state = IsUnmapped;
+ cw->damaged = FALSE;
+
+ if (cw->extents != None)
+ {
+ dump_xserver_region ("unmap_win", display, cw->extents);
+ add_damage (screen, cw->extents);
+ cw->extents = None;
+ }
+
+ free_win (cw, FALSE);
+ info->clip_changed = TRUE;
+}
+
+static void
+determine_mode (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaCompWindow *cw)
+{
+ XRenderPictFormat *format;
+ Display *xdisplay = meta_display_get_xdisplay (display);
+
+ if (cw->alpha_pict)
+ {
+ XRenderFreePicture (xdisplay, cw->alpha_pict);
+ cw->alpha_pict = None;
+ }
+
+ if (cw->shadow_pict)
+ {
+ XRenderFreePicture (xdisplay, cw->shadow_pict);
+ cw->shadow_pict = None;
+ }
+
+ if (cw->attrs.class == InputOnly)
+ format = NULL;
+ else
+ format = XRenderFindVisualFormat (xdisplay, cw->attrs.visual);
+
+ if ((format && format->type == PictTypeDirect && format->direct.alphaMask)
+ || cw->opacity != (guint) OPAQUE)
+ cw->mode = WINDOW_ARGB;
+ else
+ cw->mode = WINDOW_SOLID;
+
+ if (cw->extents)
+ {
+ XserverRegion damage;
+ damage = XFixesCreateRegion (xdisplay, NULL, 0);
+ XFixesCopyRegion (xdisplay, damage, cw->extents);
+
+ dump_xserver_region ("determine_mode", display, damage);
+ add_damage (screen, damage);
+ }
+}
+
+static gboolean
+is_shaped (MetaDisplay *display,
+ Window xwindow)
+{
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ int xws, yws, xbs, ybs;
+ unsigned wws, hws, wbs, hbs;
+ int bounding_shaped, clip_shaped;
+
+ if (meta_display_has_shape (display))
+ {
+ XShapeQueryExtents (xdisplay, xwindow, &bounding_shaped,
+ &xws, &yws, &wws, &hws, &clip_shaped,
+ &xbs, &ybs, &wbs, &hbs);
+ return (bounding_shaped != 0);
+ }
+
+ return FALSE;
+}
+
+static void
+get_window_type (MetaDisplay *display,
+ MetaCompWindow *cw)
+{
+ MetaCompositorXRender *compositor = DISPLAY_COMPOSITOR (display);
+ int n_atoms;
+ Atom *atoms, type_atom;
+ int i;
+
+ type_atom = None;
+ n_atoms = 0;
+ atoms = NULL;
+
+ meta_prop_get_atom_list (display, cw->id,
+ compositor->atom_net_wm_window_type,
+ &atoms, &n_atoms);
+
+ for (i = 0; i < n_atoms; i++)
+ {
+ if (atoms[i] == compositor->atom_net_wm_window_type_dnd ||
+ atoms[i] == compositor->atom_net_wm_window_type_desktop ||
+ atoms[i] == compositor->atom_net_wm_window_type_dock ||
+ atoms[i] == compositor->atom_net_wm_window_type_toolbar ||
+ atoms[i] == compositor->atom_net_wm_window_type_menu ||
+ atoms[i] == compositor->atom_net_wm_window_type_dialog ||
+ atoms[i] == compositor->atom_net_wm_window_type_normal ||
+ atoms[i] == compositor->atom_net_wm_window_type_utility ||
+ atoms[i] == compositor->atom_net_wm_window_type_splash ||
+ atoms[i] == compositor->atom_net_wm_window_type_dropdown_menu ||
+ atoms[i] == compositor->atom_net_wm_window_type_tooltip)
+ {
+ type_atom = atoms[i];
+ break;
+ }
+ }
+
+ meta_XFree (atoms);
+
+ if (type_atom == compositor->atom_net_wm_window_type_dnd)
+ cw->type = META_COMP_WINDOW_DND;
+ else if (type_atom == compositor->atom_net_wm_window_type_desktop)
+ cw->type = META_COMP_WINDOW_DESKTOP;
+ else if (type_atom == compositor->atom_net_wm_window_type_dock)
+ cw->type = META_COMP_WINDOW_DOCK;
+ else if (type_atom == compositor->atom_net_wm_window_type_menu)
+ cw->type = META_COMP_WINDOW_MENU;
+ else if (type_atom == compositor->atom_net_wm_window_type_dropdown_menu)
+ cw->type = META_COMP_WINDOW_DROP_DOWN_MENU;
+ else if (type_atom == compositor->atom_net_wm_window_type_tooltip)
+ cw->type = META_COMP_WINDOW_TOOLTIP;
+ else
+ cw->type = META_COMP_WINDOW_NORMAL;
+
+/* meta_verbose ("Window is %d\n", cw->type); */
+}
+
+/* Must be called with an error trap in place */
+static void
+add_win (MetaScreen *screen,
+ MetaWindow *window,
+ Window xwindow)
+{
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+ MetaCompWindow *cw;
+ gulong event_mask;
+
+ if (info == NULL)
+ return;
+
+ if (xwindow == info->output)
+ return;
+
+ cw = g_new0 (MetaCompWindow, 1);
+ cw->screen = screen;
+ cw->window = window;
+ cw->id = xwindow;
+
+ if (!XGetWindowAttributes (xdisplay, xwindow, &cw->attrs))
+ {
+ g_free (cw);
+ return;
+ }
+ get_window_type (display, cw);
+
+ /* If Marco has decided not to manage this window then the input events
+ won't have been set on the window */
+ event_mask = cw->attrs.your_event_mask | PropertyChangeMask;
+
+ XSelectInput (xdisplay, xwindow, event_mask);
+
+
+#ifdef HAVE_NAME_WINDOW_PIXMAP
+ cw->back_pixmap = None;
+ cw->shaded_back_pixmap = None;
+#endif
+
+ cw->damaged = FALSE;
+ cw->shaped = is_shaped (display, xwindow);
+
+ if (cw->attrs.class == InputOnly)
+ cw->damage = None;
+ else
+ cw->damage = XDamageCreate (xdisplay, xwindow, XDamageReportNonEmpty);
+
+ cw->alpha_pict = None;
+ cw->shadow_pict = None;
+ cw->border_size = None;
+ cw->extents = None;
+ cw->shadow = None;
+ cw->shadow_dx = 0;
+ cw->shadow_dy = 0;
+ cw->shadow_width = 0;
+ cw->shadow_height = 0;
+
+ if (window && meta_window_has_focus (window))
+ cw->shadow_type = META_SHADOW_LARGE;
+ else
+ cw->shadow_type = META_SHADOW_MEDIUM;
+
+ cw->opacity = OPAQUE;
+
+ cw->border_clip = None;
+
+ determine_mode (display, screen, cw);
+ cw->needs_shadow = window_has_shadow (cw);
+
+ /* Only add the window to the list of docks if it needs a shadow */
+ if (cw->type == META_COMP_WINDOW_DOCK && cw->needs_shadow)
+ {
+ meta_verbose ("Appending %p to dock windows\n", cw);
+ info->dock_windows = g_slist_append (info->dock_windows, cw);
+ }
+
+ /* Add this to the list at the top of the stack
+ before it is mapped so that map_win can find it again */
+ info->windows = g_list_prepend (info->windows, cw);
+ g_hash_table_insert (info->windows_by_xid, (gpointer) xwindow, cw);
+
+ if (cw->attrs.map_state == IsViewable)
+ map_win (display, screen, xwindow);
+}
+
+static void
+destroy_win (MetaDisplay *display,
+ Window xwindow,
+ gboolean gone)
+{
+ MetaScreen *screen;
+ MetaCompScreen *info;
+ MetaCompWindow *cw;
+
+ cw = find_window_in_display (display, xwindow);
+
+ if (cw == NULL)
+ return;
+
+ screen = cw->screen;
+
+ if (cw->extents != None)
+ {
+ dump_xserver_region ("destroy_win", display, cw->extents);
+ add_damage (screen, cw->extents);
+ cw->extents = None;
+ }
+
+ info = meta_screen_get_compositor_data (screen);
+ if (info != NULL)
+ {
+ info->windows = g_list_remove (info->windows, (gconstpointer) cw);
+ g_hash_table_remove (info->windows_by_xid, (gpointer) xwindow);
+ }
+
+ free_win (cw, TRUE);
+}
+
+static void
+restack_win (MetaCompWindow *cw,
+ Window above)
+{
+ MetaScreen *screen;
+ MetaCompScreen *info;
+ Window previous_above;
+ GList *sibling, *next;
+
+ screen = cw->screen;
+ info = meta_screen_get_compositor_data (screen);
+
+ if (info == NULL)
+ {
+ return;
+ }
+
+ sibling = g_list_find (info->windows, (gconstpointer) cw);
+ next = g_list_next (sibling);
+ previous_above = None;
+
+ if (next)
+ {
+ MetaCompWindow *ncw = (MetaCompWindow *) next->data;
+ previous_above = ncw->id;
+ }
+
+ /* If above is set to None, the window whose state was changed is on
+ * the bottom of the stack with respect to sibling.
+ */
+ if (above == None)
+ {
+ /* Insert at bottom of window stack */
+ info->windows = g_list_delete_link (info->windows, sibling);
+ info->windows = g_list_append (info->windows, cw);
+ }
+ else if (previous_above != above)
+ {
+ GList *index;
+
+ for (index = info->windows; index; index = index->next) {
+ MetaCompWindow *cw2 = (MetaCompWindow *) index->data;
+ if (cw2->id == above)
+ break;
+ }
+
+ if (index != NULL)
+ {
+ info->windows = g_list_delete_link (info->windows, sibling);
+ info->windows = g_list_insert_before (info->windows, index, cw);
+ }
+ }
+}
+
+static void
+resize_win (MetaCompWindow *cw,
+ int x,
+ int y,
+ int width,
+ int height,
+ int border_width,
+ gboolean override_redirect)
+{
+ MetaScreen *screen = cw->screen;
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+ XserverRegion damage;
+ gboolean debug;
+
+ debug = DISPLAY_COMPOSITOR (display)->debug;
+
+ if (cw->extents)
+ {
+ damage = XFixesCreateRegion (xdisplay, NULL, 0);
+ XFixesCopyRegion (xdisplay, damage, cw->extents);
+ }
+ else
+ {
+ damage = None;
+ if (debug)
+ fprintf (stderr, "no extents to damage !\n");
+ }
+
+ /* { // Damage whole screen each time ! ;-)
+ XRectangle r;
+
+ r.x = 0;
+ r.y = 0;
+ meta_screen_get_size (screen, &r.width, &r.height);
+ fprintf (stderr, "Damage whole screen %d,%d (%d %d)\n",
+ r.x, r.y, r.width, r.height);
+
+ damage = XFixesCreateRegion (xdisplay, &r, 1);
+ } */
+
+ cw->attrs.x = x;
+ cw->attrs.y = y;
+
+ if (cw->attrs.width != width || cw->attrs.height != height)
+ {
+#ifdef HAVE_NAME_WINDOW_PIXMAP
+ if (have_name_window_pixmap (display))
+ {
+ if (cw->shaded_back_pixmap)
+ {
+ XFreePixmap (xdisplay, cw->shaded_back_pixmap);
+ cw->shaded_back_pixmap = None;
+ }
+
+ if (cw->back_pixmap)
+ {
+ /* If the window is shaded, we store the old backing pixmap
+ so we can return a proper image of the window */
+ if (cw->window && meta_window_is_shaded (cw->window))
+ {
+ cw->shaded_back_pixmap = cw->back_pixmap;
+ cw->back_pixmap = None;
+ }
+ else
+ {
+ XFreePixmap (xdisplay, cw->back_pixmap);
+ cw->back_pixmap = None;
+ }
+ }
+ }
+#endif
+ if (cw->picture)
+ {
+ XRenderFreePicture (xdisplay, cw->picture);
+ cw->picture = None;
+ }
+
+ if (cw->shadow)
+ {
+ XRenderFreePicture (xdisplay, cw->shadow);
+ cw->shadow = None;
+ }
+ }
+
+ cw->attrs.width = width;
+ cw->attrs.height = height;
+ cw->attrs.border_width = border_width;
+ cw->attrs.override_redirect = override_redirect;
+
+ if (cw->extents)
+ XFixesDestroyRegion (xdisplay, cw->extents);
+
+ cw->extents = win_extents (cw);
+
+ if (damage)
+ {
+ if (debug)
+ fprintf (stderr, "Inexplicable intersection with new extents!\n");
+
+ XFixesUnionRegion (xdisplay, damage, damage, cw->extents);
+ }
+ else
+ {
+ damage = XFixesCreateRegion (xdisplay, NULL, 0);
+ XFixesCopyRegion (xdisplay, damage, cw->extents);
+ }
+
+ dump_xserver_region ("resize_win", display, damage);
+ add_damage (screen, damage);
+
+ if (info != NULL)
+ {
+ info->clip_changed = TRUE;
+ }
+}
+
+/* event processors must all be called with an error trap in place */
+static void
+process_circulate_notify (MetaCompositorXRender *compositor,
+ XCirculateEvent *event)
+{
+ MetaCompWindow *cw = find_window_in_display (compositor->display,
+ event->window);
+ MetaCompWindow *top;
+ MetaCompScreen *info;
+ MetaScreen *screen;
+ GList *first;
+ Window above;
+
+ if (!cw)
+ return;
+
+ screen = cw->screen;
+ info = meta_screen_get_compositor_data (screen);
+ first = info->windows;
+ top = (MetaCompWindow *) first->data;
+
+ if ((event->place == PlaceOnTop) && top)
+ above = top->id;
+ else
+ above = None;
+ restack_win (cw, above);
+
+ if (info != NULL)
+ {
+ info->clip_changed = TRUE;
+ }
+
+#ifdef USE_IDLE_REPAINT
+ add_repair (compositor->display);
+#endif
+}
+
+static void
+process_configure_notify (MetaCompositorXRender *compositor,
+ XConfigureEvent *event)
+{
+ MetaDisplay *display = compositor->display;
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ MetaCompWindow *cw = find_window_in_display (display, event->window);
+
+ if (cw)
+ {
+#if 0
+ int x = -1, y = -1, width = -1, height = -1;
+ int ex = -1, ey = -1, ewidth = -1, eheight = -1;
+ MetaRectangle *rect;
+
+ if (cw->window) {
+ rect = meta_window_get_rect (cw->window);
+ x = rect->x;
+ y = rect->y;
+ width = rect->width;
+ height = rect->height;
+ }
+ fprintf (stderr, "configure notify xy (%d %d) -> (%d %d), wh (%d %d) -> (%d %d)\n",
+ x, y, event->x, event->y,
+ width, height, event->width, event->height);
+#endif
+
+ if (compositor->debug)
+ {
+ fprintf (stderr, "configure notify %d %d %d\n", cw->damaged,
+ cw->shaped, cw->needs_shadow);
+ dump_xserver_region ("\textents", display, cw->extents);
+ fprintf (stderr, "\txy (%d %d), wh (%d %d)\n",
+ event->x, event->y, event->width, event->height);
+ }
+
+ restack_win (cw, event->above);
+ resize_win (cw, event->x, event->y, event->width, event->height,
+ event->border_width, event->override_redirect);
+ }
+ else
+ {
+ MetaScreen *screen;
+ MetaCompScreen *info;
+
+ /* Might be the root window? */
+ screen = meta_display_screen_for_root (display, event->window);
+ if (screen == NULL)
+ return;
+
+ info = meta_screen_get_compositor_data (screen);
+ if (info != NULL && info->root_buffer)
+ {
+ XRenderFreePicture (xdisplay, info->root_buffer);
+ info->root_buffer = None;
+ }
+
+ damage_screen (screen);
+ }
+}
+
+static void
+process_property_notify (MetaCompositorXRender *compositor,
+ XPropertyEvent *event)
+{
+ MetaDisplay *display = compositor->display;
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ MetaScreen *screen;
+ int p;
+ Atom background_atoms[2];
+
+ /* Check for the background property changing */
+ background_atoms[0] = compositor->atom_x_root_pixmap;
+ background_atoms[1] = compositor->atom_x_set_root;
+
+ for (p = 0; p < 2; p++)
+ {
+ if (event->atom == background_atoms[p])
+ {
+ screen = meta_display_screen_for_root (display, event->window);
+ if (screen)
+ {
+ MetaCompScreen *info = meta_screen_get_compositor_data (screen);
+ Window xroot = meta_screen_get_xroot (screen);
+
+ if (info != NULL && info->root_tile)
+ {
+ XClearArea (xdisplay, xroot, 0, 0, 0, 0, TRUE);
+ XRenderFreePicture (xdisplay, info->root_tile);
+ info->root_tile = None;
+
+ /* Damage the whole screen as we may need to redraw the
+ background ourselves */
+ damage_screen (screen);
+#ifdef USE_IDLE_REPAINT
+ add_repair (display);
+#endif
+
+ return;
+ }
+ }
+ }
+ }
+
+ /* Check for the opacity changing */
+ if (event->atom == compositor->atom_net_wm_window_opacity)
+ {
+ MetaCompWindow *cw = find_window_in_display (display, event->window);
+ gulong value;
+
+ if (!cw)
+ {
+ /* Applications can set this for their toplevel windows, so
+ * this must be propagated to the window managed by the compositor
+ */
+ cw = find_window_for_child_window_in_display (display, event->window);
+ }
+
+ if (!cw)
+ return;
+
+ if (meta_prop_get_cardinal (display, event->window,
+ compositor->atom_net_wm_window_opacity,
+ &value) == FALSE)
+ value = OPAQUE;
+
+ cw->opacity = (guint)value;
+ determine_mode (display, cw->screen, cw);
+ cw->needs_shadow = window_has_shadow (cw);
+
+ if (cw->shadow)
+ {
+ XRenderFreePicture (xdisplay, cw->shadow);
+ cw->shadow = None;
+ }
+
+ if (cw->extents)
+ XFixesDestroyRegion (xdisplay, cw->extents);
+ cw->extents = win_extents (cw);
+
+ cw->damaged = TRUE;
+#ifdef USE_IDLE_REPAINT
+ add_repair (display);
+#endif
+
+ return;
+ }
+
+ if (event->atom == compositor->atom_net_wm_window_type) {
+ MetaCompWindow *cw = find_window_in_display (display, event->window);
+
+ if (!cw)
+ return;
+
+ get_window_type (display, cw);
+ cw->needs_shadow = window_has_shadow (cw);
+ return;
+ }
+}
+
+static void
+expose_area (MetaScreen *screen,
+ XRectangle *rects,
+ int nrects)
+{
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ XserverRegion region;
+
+ region = XFixesCreateRegion (xdisplay, rects, nrects);
+
+ dump_xserver_region ("expose_area", display, region);
+ add_damage (screen, region);
+}
+
+static void
+process_expose (MetaCompositorXRender *compositor,
+ XExposeEvent *event)
+{
+ MetaCompWindow *cw = find_window_in_display (compositor->display,
+ event->window);
+ MetaScreen *screen = NULL;
+ XRectangle rect[1];
+ int origin_x = 0, origin_y = 0;
+
+ if (cw != NULL)
+ {
+ screen = cw->screen;
+ origin_x = cw->attrs.x; /* + cw->attrs.border_width; ? */
+ origin_y = cw->attrs.y; /* + cw->attrs.border_width; ? */
+ }
+ else
+ {
+ screen = meta_display_screen_for_root (compositor->display,
+ event->window);
+ if (screen == NULL)
+ return;
+ }
+
+ rect[0].x = event->x + origin_x;
+ rect[0].y = event->y + origin_y;
+ rect[0].width = event->width;
+ rect[0].height = event->height;
+
+ expose_area (screen, rect, 1);
+}
+
+static void
+process_unmap (MetaCompositorXRender *compositor,
+ XUnmapEvent *event)
+{
+ MetaCompWindow *cw;
+
+ if (event->from_configure)
+ {
+ /* Ignore unmap caused by parent's resize */
+ return;
+ }
+
+
+ cw = find_window_in_display (compositor->display, event->window);
+ if (cw)
+ unmap_win (compositor->display, cw->screen, event->window);
+}
+
+static void
+process_map (MetaCompositorXRender *compositor,
+ XMapEvent *event)
+{
+ MetaCompWindow *cw = find_window_in_display (compositor->display,
+ event->window);
+
+ if (cw)
+ map_win (compositor->display, cw->screen, event->window);
+}
+
+static void
+process_reparent (MetaCompositorXRender *compositor,
+ XReparentEvent *event,
+ MetaWindow *window)
+{
+ MetaScreen *screen;
+
+ screen = meta_display_screen_for_root (compositor->display, event->parent);
+ if (screen != NULL)
+ add_win (screen, window, event->window);
+ else
+ destroy_win (compositor->display, event->window, FALSE);
+}
+
+static void
+process_create (MetaCompositorXRender *compositor,
+ XCreateWindowEvent *event,
+ MetaWindow *window)
+{
+ MetaScreen *screen;
+ /* We are only interested in top level windows, others will
+ be caught by normal marco functions */
+
+ screen = meta_display_screen_for_root (compositor->display, event->parent);
+ if (screen == NULL)
+ return;
+
+ if (!find_window_in_display (compositor->display, event->window))
+ add_win (screen, window, event->window);
+}
+
+static void
+process_destroy (MetaCompositorXRender *compositor,
+ XDestroyWindowEvent *event)
+{
+ destroy_win (compositor->display, event->window, FALSE);
+}
+
+static void
+process_damage (MetaCompositorXRender *compositor,
+ XDamageNotifyEvent *event)
+{
+ MetaCompWindow *cw = find_window_in_display (compositor->display,
+ event->drawable);
+ if (cw == NULL)
+ return;
+
+ repair_win (cw);
+
+#ifdef USE_IDLE_REPAINT
+ if (event->more == FALSE)
+ add_repair (compositor->display);
+#endif
+}
+
+static void
+process_shape (MetaCompositorXRender *compositor,
+ XShapeEvent *event)
+{
+ MetaCompWindow *cw = find_window_in_display (compositor->display,
+ event->window);
+
+ if (cw == NULL)
+ return;
+
+ if (event->kind == ShapeBounding)
+ {
+ if (!event->shaped && cw->shaped)
+ cw->shaped = FALSE;
+
+ resize_win (cw, cw->attrs.x, cw->attrs.y,
+ event->width + event->x, event->height + event->y,
+ cw->attrs.border_width, cw->attrs.override_redirect);
+
+ if (event->shaped && !cw->shaped)
+ cw->shaped = TRUE;
+ }
+}
+
+static int
+timeout_debug (MetaCompositorXRender *compositor)
+{
+ compositor->show_redraw = (g_getenv ("MARCO_DEBUG_REDRAWS") != NULL);
+ compositor->debug = (g_getenv ("MARCO_DEBUG_COMPOSITOR") != NULL);
+
+ return FALSE;
+}
+
+static void
+xrender_add_window (MetaCompositor *compositor,
+ MetaWindow *window,
+ Window xwindow,
+ XWindowAttributes *attrs)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ MetaCompositorXRender *xrc = (MetaCompositorXRender *) compositor;
+ MetaScreen *screen = meta_screen_for_x_screen (attrs->screen);
+
+ meta_error_trap_push (xrc->display);
+ add_win (screen, window, xwindow);
+ meta_error_trap_pop (xrc->display, FALSE);
+#endif
+}
+
+static void
+xrender_remove_window (MetaCompositor *compositor,
+ Window xwindow)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+#endif
+}
+
+static void
+show_overlay_window (MetaScreen *screen,
+ Window cow)
+{
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+
+#ifdef HAVE_COW
+ if (have_cow (display))
+ {
+ XserverRegion region;
+
+ region = XFixesCreateRegion (xdisplay, NULL, 0);
+
+ XFixesSetWindowShapeRegion (xdisplay, cow, ShapeBounding, 0, 0, 0);
+ XFixesSetWindowShapeRegion (xdisplay, cow, ShapeInput, 0, 0, region);
+
+ XFixesDestroyRegion (xdisplay, region);
+
+ damage_screen (screen);
+ }
+#endif
+}
+
+static void
+hide_overlay_window (MetaScreen *screen,
+ Window cow)
+{
+#ifdef HAVE_COW
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ XserverRegion region;
+
+ region = XFixesCreateRegion (xdisplay, NULL, 0);
+ XFixesSetWindowShapeRegion (xdisplay, cow, ShapeBounding, 0, 0, region);
+ XFixesDestroyRegion (xdisplay, region);
+#endif
+}
+
+static Window
+get_output_window (MetaScreen *screen)
+{
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ Window output, xroot;
+
+ xroot = meta_screen_get_xroot (screen);
+
+#ifdef HAVE_COW
+ if (have_cow (display))
+ {
+ output = XCompositeGetOverlayWindow (xdisplay, xroot);
+ XSelectInput (xdisplay, output, ExposureMask);
+ }
+ else
+#endif
+ {
+ output = xroot;
+ }
+
+ return output;
+}
+
+static void
+xrender_manage_screen (MetaCompositor *compositor,
+ MetaScreen *screen)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ MetaCompScreen *info;
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ XRenderPictureAttributes pa;
+ XRenderPictFormat *visual_format;
+ int screen_number = meta_screen_get_screen_number (screen);
+ Window xroot = meta_screen_get_xroot (screen);
+
+ /* Check if the screen is already managed */
+ if (meta_screen_get_compositor_data (screen))
+ return;
+
+ gdk_error_trap_push ();
+ XCompositeRedirectSubwindows (xdisplay, xroot, CompositeRedirectManual);
+ XSync (xdisplay, FALSE);
+
+ if (gdk_error_trap_pop ())
+ {
+ g_warning ("Another compositing manager is running on screen %i",
+ screen_number);
+ return;
+ }
+
+ info = g_new0 (MetaCompScreen, 1);
+ info->screen = screen;
+
+ meta_screen_set_compositor_data (screen, info);
+
+ visual_format = XRenderFindVisualFormat (xdisplay, DefaultVisual (xdisplay,
+ screen_number));
+ if (!visual_format)
+ {
+ g_warning ("Cannot find visual format on screen %i", screen_number);
+ return;
+ }
+
+ info->output = get_output_window (screen);
+
+ pa.subwindow_mode = IncludeInferiors;
+ info->root_picture = XRenderCreatePicture (xdisplay, info->output,
+ visual_format,
+ CPSubwindowMode, &pa);
+ if (info->root_picture == None)
+ {
+ g_warning ("Cannot create root picture on screen %i", screen_number);
+ return;
+ }
+
+ info->root_buffer = None;
+ info->black_picture = solid_picture (display, screen, TRUE, 1, 0, 0, 0);
+
+ info->root_tile = None;
+ info->all_damage = None;
+
+ info->windows = NULL;
+ info->windows_by_xid = g_hash_table_new (g_direct_hash, g_direct_equal);
+
+ info->focus_window = meta_display_get_focus_window (display);
+
+ info->compositor_active = TRUE;
+ info->overlays = 0;
+ info->clip_changed = TRUE;
+
+ info->have_shadows = (g_getenv("META_DEBUG_NO_SHADOW") == NULL);
+ if (info->have_shadows)
+ {
+ meta_verbose ("Enabling shadows\n");
+ generate_shadows (info);
+ }
+ else
+ meta_verbose ("Disabling shadows\n");
+
+ XClearArea (xdisplay, info->output, 0, 0, 0, 0, TRUE);
+
+ meta_screen_set_cm_selection (screen);
+
+ /* Now we're up and running we can show the output if needed */
+ show_overlay_window (screen, info->output);
+#endif
+}
+
+static void
+xrender_unmanage_screen (MetaCompositor *compositor,
+ MetaScreen *screen)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ MetaDisplay *display = meta_screen_get_display (screen);
+ Display *xdisplay = meta_display_get_xdisplay (display);
+ MetaCompScreen *info;
+ Window xroot = meta_screen_get_xroot (screen);
+ GList *index;
+
+ info = meta_screen_get_compositor_data (screen);
+
+ /* This screen isn't managed */
+ if (info == NULL)
+ return;
+
+ hide_overlay_window (screen, info->output);
+
+ /* Destroy the windows */
+ for (index = info->windows; index; index = index->next)
+ {
+ MetaCompWindow *cw = (MetaCompWindow *) index->data;
+ free_win (cw, TRUE);
+ }
+ g_list_free (info->windows);
+ g_hash_table_destroy (info->windows_by_xid);
+
+ if (info->root_picture)
+ XRenderFreePicture (xdisplay, info->root_picture);
+
+ if (info->black_picture)
+ XRenderFreePicture (xdisplay, info->black_picture);
+
+ if (info->have_shadows)
+ {
+ int i;
+
+ for (i = 0; i < LAST_SHADOW_TYPE; i++)
+ g_free (info->shadows[i]->gaussian_map);
+ }
+
+ XCompositeUnredirectSubwindows (xdisplay, xroot,
+ CompositeRedirectManual);
+ meta_screen_unset_cm_selection (screen);
+
+#ifdef HAVE_COW
+ XCompositeReleaseOverlayWindow (xdisplay, info->output);
+#endif
+
+ g_free (info);
+
+ meta_screen_set_compositor_data (screen, NULL);
+#endif
+}
+
+static void
+xrender_set_updates (MetaCompositor *compositor,
+ MetaWindow *window,
+ gboolean updates)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+
+#endif
+}
+
+static void
+xrender_destroy (MetaCompositor *compositor)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ g_free (compositor);
+#endif
+}
+
+#if 0
+/* Taking these out because they're empty and never called, and the
+ * compiler complains -- tthurman
+ */
+
+static void
+xrender_begin_move (MetaCompositor *compositor,
+ MetaWindow *window,
+ MetaRectangle *initial,
+ int grab_x,
+ int grab_y)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+#endif
+}
+
+static void
+xrender_update_move (MetaCompositor *compositor,
+ MetaWindow *window,
+ int x,
+ int y)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+#endif
+}
+
+static void
+xrender_end_move (MetaCompositor *compositor,
+ MetaWindow *window)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+#endif
+}
+
+static void
+xrender_free_window (MetaCompositor *compositor,
+ MetaWindow *window)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ /* FIXME: When an undecorated window is hidden this is called,
+ but the window does not get readded if it is subsequentally shown again
+ See http://bugzilla.gnome.org/show_bug.cgi?id=504876
+
+ I don't *think* theres any need for this call anyway, leaving it out
+ does not seem to cause any side effects so far, but I should check with
+ someone who understands more. */
+ /* destroy_win (compositor->display, window->xwindow, FALSE); */
+#endif
+}
+#endif /* 0 */
+
+static void
+xrender_process_event (MetaCompositor *compositor,
+ XEvent *event,
+ MetaWindow *window)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ MetaCompositorXRender *xrc = (MetaCompositorXRender *) compositor;
+ /*
+ * This trap is so that none of the compositor functions cause
+ * X errors. This is really a hack, but I'm afraid I don't understand
+ * enough about Marco/X to know how else you are supposed to do it
+ */
+ meta_error_trap_push (xrc->display);
+ switch (event->type)
+ {
+ case CirculateNotify:
+ process_circulate_notify (xrc, (XCirculateEvent *) event);
+ break;
+
+ case ConfigureNotify:
+ process_configure_notify (xrc, (XConfigureEvent *) event);
+ break;
+
+ case PropertyNotify:
+ process_property_notify (xrc, (XPropertyEvent *) event);
+ break;
+
+ case Expose:
+ process_expose (xrc, (XExposeEvent *) event);
+ break;
+
+ case UnmapNotify:
+ process_unmap (xrc, (XUnmapEvent *) event);
+ break;
+
+ case MapNotify:
+ process_map (xrc, (XMapEvent *) event);
+ break;
+
+ case ReparentNotify:
+ process_reparent (xrc, (XReparentEvent *) event, window);
+ break;
+
+ case CreateNotify:
+ process_create (xrc, (XCreateWindowEvent *) event, window);
+ break;
+
+ case DestroyNotify:
+ process_destroy (xrc, (XDestroyWindowEvent *) event);
+ break;
+
+ default:
+ if (event->type == meta_display_get_damage_event_base (xrc->display) + XDamageNotify)
+ process_damage (xrc, (XDamageNotifyEvent *) event);
+#ifdef HAVE_SHAPE
+ else if (event->type == meta_display_get_shape_event_base (xrc->display) + ShapeNotify)
+ process_shape (xrc, (XShapeEvent *) event);
+#endif /* HAVE_SHAPE */
+ else
+ {
+ meta_error_trap_pop (xrc->display, FALSE);
+ return;
+ }
+ break;
+ }
+
+ meta_error_trap_pop (xrc->display, FALSE);
+#ifndef USE_IDLE_REPAINT
+ repair_display (xrc->display);
+#endif
+
+ return;
+#endif
+}
+
+static Pixmap
+xrender_get_window_pixmap (MetaCompositor *compositor,
+ MetaWindow *window)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ MetaCompWindow *cw = NULL;
+ MetaScreen *screen = meta_window_get_screen (window);
+ MetaFrame *frame = meta_window_get_frame (window);
+
+ cw = find_window_for_screen (screen, frame ? meta_frame_get_xwindow (frame) :
+ meta_window_get_xwindow (window));
+ if (cw == NULL)
+ return None;
+
+#ifdef HAVE_NAME_WINDOW_PIXMAP
+ if (have_name_window_pixmap (meta_window_get_display (window)))
+ {
+ if (meta_window_is_shaded (window))
+ return cw->shaded_back_pixmap;
+ else
+ return cw->back_pixmap;
+ }
+ else
+#endif
+ return None;
+#endif
+}
+
+static void
+xrender_set_active_window (MetaCompositor *compositor,
+ MetaScreen *screen,
+ MetaWindow *window)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ MetaCompositorXRender *xrc = (MetaCompositorXRender *) compositor;
+ MetaDisplay *display;
+ Display *xdisplay;
+ MetaCompWindow *old_focus = NULL, *new_focus = NULL;
+ MetaCompScreen *info = NULL;
+ MetaWindow *old_focus_win = NULL;
+
+ if (compositor == NULL)
+ return;
+
+ display = xrc->display;
+ xdisplay = meta_display_get_xdisplay (display);
+ info = meta_screen_get_compositor_data (screen);
+
+ if (info != NULL)
+ {
+ old_focus_win = info->focus_window;
+ }
+
+ if (old_focus_win)
+ {
+ MetaFrame *f = meta_window_get_frame (old_focus_win);
+
+ old_focus = find_window_for_screen (screen,
+ f ? meta_frame_get_xwindow (f) :
+ meta_window_get_xwindow (old_focus_win));
+ }
+
+ if (window)
+ {
+ MetaFrame *f = meta_window_get_frame (window);
+ new_focus = find_window_for_screen (screen,
+ f ? meta_frame_get_xwindow (f) :
+ meta_window_get_xwindow (window));
+ }
+
+ if (info != NULL)
+ {
+ info->focus_window = window;
+ }
+
+ if (old_focus)
+ {
+ XserverRegion damage;
+
+ /* Tear down old shadows */
+ old_focus->shadow_type = META_SHADOW_MEDIUM;
+ determine_mode (display, screen, old_focus);
+ old_focus->needs_shadow = window_has_shadow (old_focus);
+
+ if (old_focus->attrs.map_state == IsViewable)
+ {
+ if (old_focus->shadow)
+ {
+ XRenderFreePicture (xdisplay, old_focus->shadow);
+ old_focus->shadow = None;
+ }
+
+ if (old_focus->extents)
+ {
+ damage = XFixesCreateRegion (xdisplay, NULL, 0);
+ XFixesCopyRegion (xdisplay, damage, old_focus->extents);
+ XFixesDestroyRegion (xdisplay, old_focus->extents);
+ }
+ else
+ damage = None;
+
+ /* Build new extents */
+ old_focus->extents = win_extents (old_focus);
+
+ if (damage)
+ XFixesUnionRegion (xdisplay, damage, damage, old_focus->extents);
+ else
+ {
+ damage = XFixesCreateRegion (xdisplay, NULL, 0);
+ XFixesCopyRegion (xdisplay, damage, old_focus->extents);
+ }
+
+ dump_xserver_region ("resize_win", display, damage);
+ add_damage (screen, damage);
+
+ if (info != NULL)
+ {
+ info->clip_changed = TRUE;
+ }
+ }
+ }
+
+ if (new_focus)
+ {
+ XserverRegion damage;
+
+ new_focus->shadow_type = META_SHADOW_LARGE;
+ determine_mode (display, screen, new_focus);
+ new_focus->needs_shadow = window_has_shadow (new_focus);
+
+ if (new_focus->shadow)
+ {
+ XRenderFreePicture (xdisplay, new_focus->shadow);
+ new_focus->shadow = None;
+ }
+
+ if (new_focus->extents)
+ {
+ damage = XFixesCreateRegion (xdisplay, NULL, 0);
+ XFixesCopyRegion (xdisplay, damage, new_focus->extents);
+ XFixesDestroyRegion (xdisplay, new_focus->extents);
+ }
+ else
+ damage = None;
+
+ /* Build new extents */
+ new_focus->extents = win_extents (new_focus);
+
+ if (damage)
+ XFixesUnionRegion (xdisplay, damage, damage, new_focus->extents);
+ else
+ {
+ damage = XFixesCreateRegion (xdisplay, NULL, 0);
+ XFixesCopyRegion (xdisplay, damage, new_focus->extents);
+ }
+
+ dump_xserver_region ("resize_win", display, damage);
+ add_damage (screen, damage);
+
+ if (info != NULL)
+ {
+ info->clip_changed = TRUE;
+ }
+ }
+#ifdef USE_IDLE_REPAINT
+ add_repair (display);
+#endif
+#endif
+}
+
+static MetaCompositor comp_info = {
+ xrender_destroy,
+ xrender_manage_screen,
+ xrender_unmanage_screen,
+ xrender_add_window,
+ xrender_remove_window,
+ xrender_set_updates,
+ xrender_process_event,
+ xrender_get_window_pixmap,
+ xrender_set_active_window
+};
+
+MetaCompositor *
+meta_compositor_xrender_new (MetaDisplay *display)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ char *atom_names[] = {
+ "_XROOTPMAP_ID",
+ "_XSETROOT_ID",
+ "_NET_WM_WINDOW_OPACITY",
+ "_NET_WM_WINDOW_TYPE_DND",
+ "_NET_WM_WINDOW_TYPE",
+ "_NET_WM_WINDOW_TYPE_DESKTOP",
+ "_NET_WM_WINDOW_TYPE_DOCK",
+ "_NET_WM_WINDOW_TYPE_MENU",
+ "_NET_WM_WINDOW_TYPE_DIALOG",
+ "_NET_WM_WINDOW_TYPE_NORMAL",
+ "_NET_WM_WINDOW_TYPE_UTILITY",
+ "_NET_WM_WINDOW_TYPE_SPLASH",
+ "_NET_WM_WINDOW_TYPE_TOOLBAR",
+ "_NET_WM_WINDOW_TYPE_DROPDOWN_MENU",
+ "_NET_WM_WINDOW_TYPE_TOOLTIP"
+ };
+ Atom atoms[G_N_ELEMENTS(atom_names)];
+ MetaCompositorXRender *xrc;
+ MetaCompositor *compositor;
+ Display *xdisplay = meta_display_get_xdisplay (display);
+
+ xrc = g_new (MetaCompositorXRender, 1);
+ xrc->compositor = comp_info;
+
+ compositor = (MetaCompositor *) xrc;
+
+ xrc->display = display;
+
+ meta_verbose ("Creating %d atoms\n", (int) G_N_ELEMENTS (atom_names));
+ XInternAtoms (xdisplay, atom_names, G_N_ELEMENTS (atom_names),
+ False, atoms);
+
+ xrc->atom_x_root_pixmap = atoms[0];
+ xrc->atom_x_set_root = atoms[1];
+ xrc->atom_net_wm_window_opacity = atoms[2];
+ xrc->atom_net_wm_window_type_dnd = atoms[3];
+ xrc->atom_net_wm_window_type = atoms[4];
+ xrc->atom_net_wm_window_type_desktop = atoms[5];
+ xrc->atom_net_wm_window_type_dock = atoms[6];
+ xrc->atom_net_wm_window_type_menu = atoms[7];
+ xrc->atom_net_wm_window_type_dialog = atoms[8];
+ xrc->atom_net_wm_window_type_normal = atoms[9];
+ xrc->atom_net_wm_window_type_utility = atoms[10];
+ xrc->atom_net_wm_window_type_splash = atoms[11];
+ xrc->atom_net_wm_window_type_toolbar = atoms[12];
+ xrc->atom_net_wm_window_type_dropdown_menu = atoms[13];
+ xrc->atom_net_wm_window_type_tooltip = atoms[14];
+
+#ifdef USE_IDLE_REPAINT
+ meta_verbose ("Using idle repaint\n");
+ xrc->repaint_id = 0;
+#endif
+
+ xrc->enabled = TRUE;
+ g_timeout_add (2000, (GSourceFunc) timeout_debug, xrc);
+
+ return compositor;
+#else
+ return NULL;
+#endif
+}
+
+#endif /* HAVE_COMPOSITE_EXTENSIONS */
+
diff --git a/src/compositor/compositor-xrender.h b/src/compositor/compositor-xrender.h
new file mode 100644
index 00000000..5c8a36c0
--- /dev/null
+++ b/src/compositor/compositor-xrender.h
@@ -0,0 +1,31 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2007 Iain Holmes
+ * Based on xcompmgr - (c) 2003 Keith Packard
+ * xfwm4 - (c) 2005-2007 Olivier Fourdan
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_COMPOSITOR_XRENDER_H_
+#define META_COMPOSITOR_XRENDER_H_
+
+#include "types.h"
+
+MetaCompositor *meta_compositor_xrender_new (MetaDisplay *display);
+
+#endif
diff --git a/src/compositor/compositor.c b/src/compositor/compositor.c
new file mode 100644
index 00000000..975bf341
--- /dev/null
+++ b/src/compositor/compositor.c
@@ -0,0 +1,159 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2008 Iain Holmes
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "compositor-private.h"
+#include "compositor-xrender.h"
+
+MetaCompositor *
+meta_compositor_new (MetaDisplay *display)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ /* At some point we would have a way to select between backends */
+ return meta_compositor_xrender_new (display);
+#else
+ return NULL;
+#endif
+}
+
+void
+meta_compositor_destroy (MetaCompositor *compositor)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ if (compositor && compositor->destroy)
+ compositor->destroy (compositor);
+#endif
+}
+
+void
+meta_compositor_add_window (MetaCompositor *compositor,
+ MetaWindow *window,
+ Window xwindow,
+ XWindowAttributes *attrs)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ if (compositor && compositor->add_window)
+ compositor->add_window (compositor, window, xwindow, attrs);
+#endif
+}
+
+void
+meta_compositor_remove_window (MetaCompositor *compositor,
+ Window xwindow)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ if (compositor && compositor->remove_window)
+ compositor->remove_window (compositor, xwindow);
+#endif
+}
+
+void
+meta_compositor_manage_screen (MetaCompositor *compositor,
+ MetaScreen *screen)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ if (compositor && compositor->manage_screen)
+ compositor->manage_screen (compositor, screen);
+#endif
+}
+
+void
+meta_compositor_unmanage_screen (MetaCompositor *compositor,
+ MetaScreen *screen)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ if (compositor && compositor->unmanage_screen)
+ compositor->unmanage_screen (compositor, screen);
+#endif
+}
+
+void
+meta_compositor_set_updates (MetaCompositor *compositor,
+ MetaWindow *window,
+ gboolean updates)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ if (compositor && compositor->set_updates)
+ compositor->set_updates (compositor, window, updates);
+#endif
+}
+
+void
+meta_compositor_process_event (MetaCompositor *compositor,
+ XEvent *event,
+ MetaWindow *window)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ if (compositor && compositor->process_event)
+ compositor->process_event (compositor, event, window);
+#endif
+}
+
+Pixmap
+meta_compositor_get_window_pixmap (MetaCompositor *compositor,
+ MetaWindow *window)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ if (compositor && compositor->get_window_pixmap)
+ return compositor->get_window_pixmap (compositor, window);
+ else
+ return None;
+#else
+ return None;
+#endif
+}
+
+void
+meta_compositor_set_active_window (MetaCompositor *compositor,
+ MetaScreen *screen,
+ MetaWindow *window)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ if (compositor && compositor->set_active_window)
+ compositor->set_active_window (compositor, screen, window);
+#endif
+}
+
+/* These functions are unused at the moment */
+void meta_compositor_begin_move (MetaCompositor *compositor,
+ MetaWindow *window,
+ MetaRectangle *initial,
+ int grab_x,
+ int grab_y)
+{
+}
+
+void meta_compositor_update_move (MetaCompositor *compositor,
+ MetaWindow *window,
+ int x,
+ int y)
+{
+}
+
+void meta_compositor_end_move (MetaCompositor *compositor,
+ MetaWindow *window)
+{
+}
+
+void meta_compositor_free_window (MetaCompositor *compositor,
+ MetaWindow *window)
+{
+}
diff --git a/src/core/async-getprop.c b/src/core/async-getprop.c
new file mode 100644
index 00000000..80322b41
--- /dev/null
+++ b/src/core/async-getprop.c
@@ -0,0 +1,680 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Asynchronous X property getting hack */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ * Copyright (C) 1986, 1998 The Open Group
+ *
+ * Permission to use, copy, modify, distribute, and sell this software
+ * and its documentation for any purpose is hereby granted without
+ * fee, provided that the above copyright notice appear in all copies
+ * and that both that copyright notice and this permission notice
+ * appear in supporting documentation.
+ *
+ * The above copyright notice and this permission notice shall be
+ * included in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR
+ * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
+ * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ *
+ * Except as contained in this notice, the name of The Open Group shall not be
+ * used in advertising or otherwise to promote the sale, use or other dealings
+ * in this Software without prior written authorization from The Open Group.
+ */
+
+#include <assert.h>
+
+#undef DEBUG_SPEW
+#ifdef DEBUG_SPEW
+#include <stdio.h>
+#endif
+
+#include "async-getprop.h"
+
+#define NEED_REPLIES
+#include <X11/Xlibint.h>
+
+#ifndef NULL
+#define NULL ((void*)0)
+#endif
+
+typedef struct _ListNode ListNode;
+typedef struct _AgPerDisplayData AgPerDisplayData;
+
+struct _ListNode
+{
+ ListNode *next;
+};
+
+struct _AgGetPropertyTask
+{
+ ListNode node;
+
+ AgPerDisplayData *dd;
+ Window window;
+ Atom property;
+
+ unsigned long request_seq;
+ int error;
+
+ Atom actual_type;
+ int actual_format;
+
+ unsigned long n_items;
+ unsigned long bytes_after;
+ char *data;
+
+ Bool have_reply;
+};
+
+struct _AgPerDisplayData
+{
+ ListNode node;
+ _XAsyncHandler async;
+
+ Display *display;
+ ListNode *pending_tasks;
+ ListNode *pending_tasks_tail;
+ ListNode *completed_tasks;
+ ListNode *completed_tasks_tail;
+ int n_tasks_pending;
+ int n_tasks_completed;
+};
+
+static ListNode *display_datas = NULL;
+static ListNode *display_datas_tail = NULL;
+
+static void
+append_to_list (ListNode **head,
+ ListNode **tail,
+ ListNode *task)
+{
+ task->next = NULL;
+
+ if (*tail == NULL)
+ {
+ assert (*head == NULL);
+ *head = task;
+ *tail = task;
+ }
+ else
+ {
+ (*tail)->next = task;
+ *tail = task;
+ }
+}
+
+static void
+remove_from_list (ListNode **head,
+ ListNode **tail,
+ ListNode *task)
+{
+ ListNode *prev;
+ ListNode *node;
+
+ prev = NULL;
+ node = *head;
+ while (node != NULL)
+ {
+ if (node == task)
+ {
+ if (prev)
+ prev->next = node->next;
+ else
+ *head = node->next;
+
+ if (node == *tail)
+ *tail = prev;
+
+ break;
+ }
+
+ prev = node;
+ node = node->next;
+ }
+
+ /* can't remove what's not there */
+ assert (node != NULL);
+
+ node->next = NULL;
+}
+
+static void
+move_to_completed (AgPerDisplayData *dd,
+ AgGetPropertyTask *task)
+{
+ remove_from_list (&dd->pending_tasks,
+ &dd->pending_tasks_tail,
+ &task->node);
+
+ append_to_list (&dd->completed_tasks,
+ &dd->completed_tasks_tail,
+ &task->node);
+
+ dd->n_tasks_pending -= 1;
+ dd->n_tasks_completed += 1;
+}
+
+static AgGetPropertyTask*
+find_pending_by_request_sequence (AgPerDisplayData *dd,
+ unsigned long request_seq)
+{
+ ListNode *node;
+
+ /* if the sequence is after our last pending task, we
+ * aren't going to find a match
+ */
+ {
+ AgGetPropertyTask *task = (AgGetPropertyTask*) dd->pending_tasks_tail;
+ if (task != NULL)
+ {
+ if (task->request_seq < request_seq)
+ return NULL;
+ else if (task->request_seq == request_seq)
+ return task; /* why not check this */
+ }
+ }
+
+ /* Generally we should get replies in the order we sent
+ * requests, so we should usually be using the task
+ * at the head of the list, if we use any task at all.
+ * I'm not sure this is 100% guaranteed, if it is,
+ * it would be a big speedup.
+ */
+
+ node = dd->pending_tasks;
+ while (node != NULL)
+ {
+ AgGetPropertyTask *task = (AgGetPropertyTask*) node;
+
+ if (task->request_seq == request_seq)
+ return task;
+
+ node = node->next;
+ }
+
+ return NULL;
+}
+
+static Bool
+async_get_property_handler (Display *dpy,
+ xReply *rep,
+ char *buf,
+ int len,
+ XPointer data)
+{
+ xGetPropertyReply replbuf;
+ xGetPropertyReply *reply;
+ AgGetPropertyTask *task;
+ AgPerDisplayData *dd;
+ int bytes_read;
+
+ dd = (AgPerDisplayData*) data;
+
+#if 0
+ printf ("%s: seeing request seq %ld buflen %d\n", __FUNCTION__,
+ dpy->last_request_read, len);
+#endif
+
+ task = find_pending_by_request_sequence (dd, dpy->last_request_read);
+
+ if (task == NULL)
+ return False;
+
+ assert (dpy->last_request_read == task->request_seq);
+
+ task->have_reply = True;
+ move_to_completed (dd, task);
+
+ /* read bytes so far */
+ bytes_read = SIZEOF (xReply);
+
+ if (rep->generic.type == X_Error)
+ {
+ xError errbuf;
+
+ task->error = rep->error.errorCode;
+
+#ifdef DEBUG_SPEW
+ printf ("%s: error code = %d (ignoring error, eating %d bytes, generic.length = %ld)\n",
+ __FUNCTION__, task->error, (SIZEOF (xError) - bytes_read),
+ rep->generic.length);
+#endif
+
+ /* We return True (meaning we consumed the reply)
+ * because otherwise it would invoke the X error handler,
+ * and an async API is useless if you have to synchronously
+ * trap X errors. Also GetProperty can always fail, pretty
+ * much, so trapping errors is always what you want.
+ *
+ * We have to eat all the error reply data here.
+ * (kind of a charade as we know sizeof(xError) == sizeof(xReply))
+ *
+ * Passing discard = True seems to break things; I don't understand
+ * why, because there should be no extra data in an error reply,
+ * right?
+ */
+ _XGetAsyncReply (dpy, (char *)&errbuf, rep, buf, len,
+ (SIZEOF (xError) - bytes_read) >> 2, /* in 32-bit words */
+ False); /* really seems like it should be True */
+
+ return True;
+ }
+
+#ifdef DEBUG_SPEW
+ printf ("%s: already read %d bytes reading %d more for total of %d; generic.length = %ld\n",
+ __FUNCTION__, bytes_read, (SIZEOF (xGetPropertyReply) - bytes_read) >> 2,
+ SIZEOF (xGetPropertyReply), rep->generic.length);
+#endif
+
+ /* (kind of a silly as we know sizeof(xGetPropertyReply) == sizeof(xReply)) */
+ reply = (xGetPropertyReply *)
+ _XGetAsyncReply (dpy, (char *)&replbuf, rep, buf, len,
+ (SIZEOF (xGetPropertyReply) - bytes_read) >> 2, /* in 32-bit words */
+ False); /* False means expecting more data to follow,
+ * don't eat the rest of the reply
+ */
+
+ bytes_read = SIZEOF (xGetPropertyReply);
+
+#ifdef DEBUG_SPEW
+ printf ("%s: have reply propertyType = %ld format = %d n_items = %ld\n",
+ __FUNCTION__, reply->propertyType, reply->format, reply->nItems);
+#endif
+
+ assert (task->data == NULL);
+
+ /* This is all copied from XGetWindowProperty(). Not sure we should
+ * LockDisplay(). Not sure I'm passing the right args to
+ * XGetAsyncData(). Not sure about a lot of things.
+ */
+
+ /* LockDisplay (dpy); */
+
+ if (reply->propertyType != None)
+ {
+ long nbytes, netbytes;
+
+ /* this alignment macro from matecorba2 */
+#define ALIGN_VALUE(this, boundary) \
+ (( ((unsigned long)(this)) + (((unsigned long)(boundary)) -1)) & (~(((unsigned long)(boundary))-1)))
+
+ switch (reply->format)
+ {
+ /*
+ * One extra byte is malloced than is needed to contain the property
+ * data, but this last byte is null terminated and convenient for
+ * returning string properties, so the client doesn't then have to
+ * recopy the string to make it null terminated.
+ */
+ case 8:
+ nbytes = reply->nItems;
+ /* there's padding to word boundary */
+ netbytes = ALIGN_VALUE (nbytes, 4);
+ if (nbytes + 1 > 0 &&
+ (task->data = (char *) Xmalloc ((unsigned)nbytes + 1)))
+ {
+#ifdef DEBUG_SPEW
+ printf ("%s: already read %d bytes using %ld, more eating %ld more\n",
+ __FUNCTION__, bytes_read, nbytes, netbytes);
+#endif
+ /* _XReadPad (dpy, (char *) task->data, netbytes); */
+ _XGetAsyncData (dpy, task->data, buf, len,
+ bytes_read, nbytes,
+ netbytes);
+ }
+ break;
+
+ case 16:
+ nbytes = reply->nItems * sizeof (short);
+ netbytes = reply->nItems << 1;
+ netbytes = ALIGN_VALUE (netbytes, 4); /* align to word boundary */
+ if (nbytes + 1 > 0 &&
+ (task->data = (char *) Xmalloc ((unsigned)nbytes + 1)))
+ {
+#ifdef DEBUG_SPEW
+ printf ("%s: already read %d bytes using %ld more, eating %ld more\n",
+ __FUNCTION__, bytes_read, nbytes, netbytes);
+#endif
+ /* _XRead16Pad (dpy, (short *) task->data, netbytes); */
+ _XGetAsyncData (dpy, task->data, buf, len,
+ bytes_read, nbytes, netbytes);
+ }
+ break;
+
+ case 32:
+ /* NOTE buffer is in longs to match XGetWindowProperty() */
+ nbytes = reply->nItems * sizeof (long);
+ netbytes = reply->nItems << 2; /* wire size is always 32 bits though */
+ if (nbytes + 1 > 0 &&
+ (task->data = (char *) Xmalloc ((unsigned)nbytes + 1)))
+ {
+#ifdef DEBUG_SPEW
+ printf ("%s: already read %d bytes using %ld more, eating %ld more\n",
+ __FUNCTION__, bytes_read, nbytes, netbytes);
+#endif
+
+ /* We have to copy the XGetWindowProperty() crackrock
+ * and get format 32 as long even on 64-bit platforms.
+ */
+ if (sizeof (long) == 8)
+ {
+ char *netdata;
+ char *lptr;
+ char *end_lptr;
+
+ /* Store the 32-bit values in the end of the array */
+ netdata = task->data + nbytes / 2;
+
+ _XGetAsyncData (dpy, netdata, buf, len,
+ bytes_read, netbytes,
+ netbytes);
+
+ /* Now move the 32-bit values to the front */
+
+ lptr = task->data;
+ end_lptr = task->data + nbytes;
+ while (lptr != end_lptr)
+ {
+ *(long*) lptr = *(CARD32*) netdata;
+ lptr += sizeof (long);
+ netdata += sizeof (CARD32);
+ }
+ }
+ else
+ {
+ /* Here the wire format matches our actual format */
+ _XGetAsyncData (dpy, task->data, buf, len,
+ bytes_read, netbytes,
+ netbytes);
+ }
+ }
+ break;
+
+ default:
+ /*
+ * This part of the code should never be reached. If it is,
+ * the server sent back a property with an invalid format.
+ * This is a BadImplementation error.
+ *
+ * However this async GetProperty API doesn't report errors
+ * via the standard X mechanism, so don't do anything about
+ * it, other than store it in task->error.
+ */
+ {
+#if 0
+ xError error;
+#endif
+
+ task->error = BadImplementation;
+
+#if 0
+ error.sequenceNumber = task->request_seq;
+ error.type = X_Error;
+ error.majorCode = X_GetProperty;
+ error.minorCode = 0;
+ error.errorCode = BadImplementation;
+
+ _XError (dpy, &error);
+#endif
+ }
+
+ nbytes = netbytes = 0L;
+ break;
+ }
+
+ if (task->data == NULL)
+ {
+ task->error = BadAlloc;
+
+#ifdef DEBUG_SPEW
+ printf ("%s: already read %d bytes eating %ld\n",
+ __FUNCTION__, bytes_read, netbytes);
+#endif
+ /* _XEatData (dpy, (unsigned long) netbytes); */
+ _XGetAsyncData (dpy, NULL, buf, len,
+ bytes_read, 0, netbytes);
+
+ /* UnlockDisplay (dpy); */
+ return BadAlloc; /* not Success */
+ }
+
+ (task->data)[nbytes] = '\0';
+ }
+
+#ifdef DEBUG_SPEW
+ printf ("%s: have data\n", __FUNCTION__);
+#endif
+
+ task->actual_type = reply->propertyType;
+ task->actual_format = reply->format;
+ task->n_items = reply->nItems;
+ task->bytes_after = reply->bytesAfter;
+
+ /* UnlockDisplay (dpy); */
+
+ return True;
+}
+
+static AgPerDisplayData*
+get_display_data (Display *display,
+ Bool create)
+{
+ ListNode *node;
+ AgPerDisplayData *dd;
+
+ node = display_datas;
+ while (node != NULL)
+ {
+ dd = (AgPerDisplayData*) node;
+
+ if (dd->display == display)
+ return dd;
+
+ node = node->next;
+ }
+
+ if (!create)
+ return NULL;
+
+ dd = Xcalloc (1, sizeof (AgPerDisplayData));
+ if (dd == NULL)
+ return NULL;
+
+ dd->display = display;
+ dd->async.next = display->async_handlers;
+ dd->async.handler = async_get_property_handler;
+ dd->async.data = (XPointer) dd;
+ dd->display->async_handlers = &dd->async;
+
+ append_to_list (&display_datas,
+ &display_datas_tail,
+ &dd->node);
+
+ return dd;
+}
+
+static void
+maybe_free_display_data (AgPerDisplayData *dd)
+{
+ if (dd->pending_tasks == NULL &&
+ dd->completed_tasks == NULL)
+ {
+ DeqAsyncHandler (dd->display, &dd->async);
+ remove_from_list (&display_datas, &display_datas_tail,
+ &dd->node);
+ XFree (dd);
+ }
+}
+
+AgGetPropertyTask*
+ag_task_create (Display *dpy,
+ Window window,
+ Atom property,
+ long offset,
+ long length,
+ Bool delete,
+ Atom req_type)
+{
+ AgGetPropertyTask *task;
+ xGetPropertyReq *req;
+ AgPerDisplayData *dd;
+
+ /* Fire up our request */
+ LockDisplay (dpy);
+
+ dd = get_display_data (dpy, True);
+ if (dd == NULL)
+ {
+ UnlockDisplay (dpy);
+ return NULL;
+ }
+
+ GetReq (GetProperty, req);
+ req->window = window;
+ req->property = property;
+ req->type = req_type;
+ req->delete = delete;
+ req->longOffset = offset;
+ req->longLength = length;
+
+ /* Queue up our async task */
+ task = Xcalloc (1, sizeof (AgGetPropertyTask));
+ if (task == NULL)
+ {
+ UnlockDisplay (dpy);
+ return NULL;
+ }
+
+ task->dd = dd;
+ task->window = window;
+ task->property = property;
+ task->request_seq = dpy->request;
+
+ append_to_list (&dd->pending_tasks,
+ &dd->pending_tasks_tail,
+ &task->node);
+ dd->n_tasks_pending += 1;
+
+ UnlockDisplay (dpy);
+
+ SyncHandle ();
+
+ return task;
+}
+
+static void
+free_task (AgGetPropertyTask *task)
+{
+ remove_from_list (&task->dd->completed_tasks,
+ &task->dd->completed_tasks_tail,
+ &task->node);
+ task->dd->n_tasks_completed -= 1;
+ maybe_free_display_data (task->dd);
+ XFree (task);
+}
+
+Status
+ag_task_get_reply_and_free (AgGetPropertyTask *task,
+ Atom *actual_type,
+ int *actual_format,
+ unsigned long *nitems,
+ unsigned long *bytesafter,
+ unsigned char **prop)
+{
+ Display *dpy;
+
+ *prop = NULL;
+
+ dpy = task->dd->display; /* Xlib macros require a variable named "dpy" */
+
+ if (task->error != Success)
+ {
+ Status s = task->error;
+
+ free_task (task);
+
+ return s;
+ }
+
+ if (!task->have_reply)
+ {
+ free_task (task);
+
+ return BadAlloc; /* not Success */
+ }
+
+ *actual_type = task->actual_type;
+ *actual_format = task->actual_format;
+ *nitems = task->n_items;
+ *bytesafter = task->bytes_after;
+
+ *prop = (unsigned char*) task->data; /* pass out ownership of task->data */
+
+ SyncHandle ();
+
+ free_task (task);
+
+ return Success;
+}
+
+Bool
+ag_task_have_reply (AgGetPropertyTask *task)
+{
+ return task->have_reply;
+}
+
+Atom
+ag_task_get_property (AgGetPropertyTask *task)
+{
+ return task->property;
+}
+
+Window
+ag_task_get_window (AgGetPropertyTask *task)
+{
+ return task->window;
+}
+
+Display*
+ag_task_get_display (AgGetPropertyTask *task)
+{
+ return task->dd->display;
+}
+
+AgGetPropertyTask*
+ag_get_next_completed_task (Display *display)
+{
+ AgPerDisplayData *dd;
+
+ dd = get_display_data (display, False);
+
+ if (dd == NULL)
+ return NULL;
+
+#ifdef DEBUG_SPEW
+ printf ("%d pending %d completed\n",
+ dd->n_tasks_pending,
+ dd->n_tasks_completed);
+#endif
+
+ return (AgGetPropertyTask*) dd->completed_tasks;
+}
+
+void*
+ag_Xmalloc (unsigned long bytes)
+{
+ return (void*) Xmalloc (bytes);
+}
+
+void*
+ag_Xmalloc0 (unsigned long bytes)
+{
+ return (void*) Xcalloc (bytes, 1);
+}
diff --git a/src/core/async-getprop.h b/src/core/async-getprop.h
new file mode 100644
index 00000000..c857e930
--- /dev/null
+++ b/src/core/async-getprop.h
@@ -0,0 +1,67 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Asynchronous X property getting hack */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * Permission to use, copy, modify, distribute, and sell this software
+ * and its documentation for any purpose is hereby granted without
+ * fee, provided that the above copyright notice appear in all copies
+ * and that both that copyright notice and this permission notice
+ * appear in supporting documentation.
+ *
+ * The above copyright notice and this permission notice shall be
+ * included in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR
+ * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
+ * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ *
+ * Except as contained in this notice, the name of The Open Group shall not be
+ * used in advertising or otherwise to promote the sale, use or other dealings
+ * in this Software without prior written authorization from The Open Group.
+ */
+
+#ifndef ASYNC_GETPROP_H
+#define ASYNC_GETPROP_H
+
+#include <X11/Xlib.h>
+#include <X11/Xutil.h>
+
+typedef struct _AgGetPropertyTask AgGetPropertyTask;
+
+AgGetPropertyTask* ag_task_create (Display *display,
+ Window window,
+ Atom property,
+ long offset,
+ long length,
+ Bool delete,
+ Atom req_type);
+Status ag_task_get_reply_and_free (AgGetPropertyTask *task,
+ Atom *actual_type,
+ int *actual_format,
+ unsigned long *nitems,
+ unsigned long *bytesafter,
+ unsigned char **prop);
+
+Bool ag_task_have_reply (AgGetPropertyTask *task);
+Atom ag_task_get_property (AgGetPropertyTask *task);
+Window ag_task_get_window (AgGetPropertyTask *task);
+Display* ag_task_get_display (AgGetPropertyTask *task);
+
+AgGetPropertyTask* ag_get_next_completed_task (Display *display);
+
+/* so other headers don't have to include internal Xlib goo */
+void* ag_Xmalloc (unsigned long bytes);
+void* ag_Xmalloc0 (unsigned long bytes);
+
+#endif
+
+
+
+
diff --git a/src/core/atomnames.h b/src/core/atomnames.h
new file mode 100644
index 00000000..551482ac
--- /dev/null
+++ b/src/core/atomnames.h
@@ -0,0 +1,166 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2002, 2003, 2004 Red Hat, Inc.
+ * Copyright (C) 2003, 2004 Rob Adams
+ * Copyright (C) 2004-2006 Elijah Newren
+ * Copyright (C) 2008 Thomas Thurman
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+/**
+ * \file atomnames.h A list of atom names.
+ *
+ * This is a list of the names of all the X atoms that Marco uses.
+ * Each is wrapped in a macro "item()" which is undefined here; the
+ * idea is that when you need to make a big list of all the X atoms,
+ * you can define item(), include this file, and then undefine it
+ * again.
+ *
+ * If you also define EWMH_ATOMS_ONLY then you will only get _NET_WM_*
+ * atoms rather than all of them.
+ */
+
+#ifndef item
+#error "item(x) must be defined when you include atomnames.h"
+#endif
+
+#ifndef EWMH_ATOMS_ONLY
+
+item(WM_PROTOCOLS)
+item(WM_TAKE_FOCUS)
+item(WM_DELETE_WINDOW)
+item(WM_STATE)
+item(_MOTIF_WM_HINTS)
+item(WM_CHANGE_STATE)
+item(SM_CLIENT_ID)
+item(WM_CLIENT_LEADER)
+item(WM_WINDOW_ROLE)
+item(UTF8_STRING)
+item(WM_ICON_SIZE)
+item(_KWM_WIN_ICON)
+item(_MARCO_RESTART_MESSAGE)
+item(_MARCO_RELOAD_THEME_MESSAGE)
+item(_MARCO_SET_KEYBINDINGS_MESSAGE)
+item(_MARCO_TOGGLE_VERBOSE)
+item(_MATE_PANEL_ACTION)
+item(_MATE_PANEL_ACTION_MAIN_MENU)
+item(_MATE_PANEL_ACTION_RUN_DIALOG)
+item(_MARCO_SENTINEL)
+item(_MARCO_VERSION)
+item(WM_CLIENT_MACHINE)
+item(MANAGER)
+item(TARGETS)
+item(MULTIPLE)
+item(TIMESTAMP)
+item(VERSION)
+item(ATOM_PAIR)
+
+/* Oddities: These are used, and we need atoms for them,
+ * but when we need all _NET_WM hints (i.e. when we're making
+ * lists of which _NET_WM hints we support in order to advertise
+ * it) we haven't historically listed them. I don't know what
+ * the reason for this is. It may be a bug.
+ */
+item(_NET_WM_SYNC_REQUEST)
+item(_NET_WM_SYNC_REQUEST_COUNTER)
+item(_NET_WM_VISIBLE_NAME)
+item(_NET_WM_VISIBLE_ICON_NAME)
+item(_NET_SUPPORTING_WM_CHECK)
+
+/* But I suppose it's quite reasonable not to advertise using
+ * _NET_SUPPORTED that we support _NET_SUPPORTED :)
+ */
+item(_NET_SUPPORTED)
+
+#endif /* !EWMH_ATOMS_ONLY */
+
+/**************************************************************************/
+
+item(_NET_WM_NAME)
+item(_NET_CLOSE_WINDOW)
+item(_NET_WM_STATE)
+item(_NET_WM_STATE_SHADED)
+item(_NET_WM_STATE_MAXIMIZED_HORZ)
+item(_NET_WM_STATE_MAXIMIZED_VERT)
+item(_NET_WM_DESKTOP)
+item(_NET_NUMBER_OF_DESKTOPS)
+item(_NET_CURRENT_DESKTOP)
+item(_NET_WM_WINDOW_TYPE)
+item(_NET_WM_WINDOW_TYPE_DESKTOP)
+item(_NET_WM_WINDOW_TYPE_DOCK)
+item(_NET_WM_WINDOW_TYPE_TOOLBAR)
+item(_NET_WM_WINDOW_TYPE_MENU)
+item(_NET_WM_WINDOW_TYPE_DIALOG)
+item(_NET_WM_WINDOW_TYPE_NORMAL)
+item(_NET_WM_STATE_MODAL)
+item(_NET_CLIENT_LIST)
+item(_NET_CLIENT_LIST_STACKING)
+item(_NET_WM_STATE_SKIP_TASKBAR)
+item(_NET_WM_STATE_SKIP_PAGER)
+item(_NET_WM_ICON_NAME)
+item(_NET_WM_ICON)
+item(_NET_WM_ICON_GEOMETRY)
+item(_NET_WM_MOVERESIZE)
+item(_NET_ACTIVE_WINDOW)
+item(_NET_WM_STRUT)
+item(_NET_WM_STATE_HIDDEN)
+item(_NET_WM_WINDOW_TYPE_UTILITY)
+item(_NET_WM_WINDOW_TYPE_SPLASH)
+item(_NET_WM_STATE_FULLSCREEN)
+item(_NET_WM_PING)
+item(_NET_WM_PID)
+item(_NET_WORKAREA)
+item(_NET_SHOWING_DESKTOP)
+item(_NET_DESKTOP_LAYOUT)
+item(_NET_DESKTOP_NAMES)
+item(_NET_WM_ALLOWED_ACTIONS)
+item(_NET_WM_ACTION_MOVE)
+item(_NET_WM_ACTION_RESIZE)
+item(_NET_WM_ACTION_SHADE)
+item(_NET_WM_ACTION_STICK)
+item(_NET_WM_ACTION_MAXIMIZE_HORZ)
+item(_NET_WM_ACTION_MAXIMIZE_VERT)
+item(_NET_WM_ACTION_CHANGE_DESKTOP)
+item(_NET_WM_ACTION_CLOSE)
+item(_NET_WM_STATE_ABOVE)
+item(_NET_WM_STATE_BELOW)
+item(_NET_STARTUP_ID)
+item(_NET_WM_STRUT_PARTIAL)
+item(_NET_WM_ACTION_FULLSCREEN)
+item(_NET_WM_ACTION_MINIMIZE)
+item(_NET_FRAME_EXTENTS)
+item(_NET_REQUEST_FRAME_EXTENTS)
+item(_NET_WM_USER_TIME)
+item(_NET_WM_STATE_DEMANDS_ATTENTION)
+item(_NET_MOVERESIZE_WINDOW)
+item(_NET_DESKTOP_GEOMETRY)
+item(_NET_DESKTOP_VIEWPORT)
+item(_NET_WM_USER_TIME_WINDOW)
+item(_NET_WM_ACTION_ABOVE)
+item(_NET_WM_ACTION_BELOW)
+item(_NET_WM_STATE_STICKY)
+item(_NET_WM_FULLSCREEN_MONITORS)
+
+#if 0
+/* We apparently never use: */
+/* item(_NET_RESTACK_WINDOW) */
+#endif
+
+/* eof atomnames.h */
+
diff --git a/src/core/bell.c b/src/core/bell.c
new file mode 100644
index 00000000..560b3569
--- /dev/null
+++ b/src/core/bell.c
@@ -0,0 +1,397 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco visual bell */
+
+/*
+ * Copyright (C) 2002 Sun Microsystems Inc.
+ * Copyright (C) 2005, 2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+/**
+ * \file bell.c Ring the bell or flash the screen
+ *
+ * Sometimes, X programs "ring the bell", whatever that means. Marco lets
+ * the user configure the bell to be audible or visible (aka visual), and
+ * if it's visual it can be configured to be frame-flash or fullscreen-flash.
+ * We never get told about audible bells; X handles them just fine by itself.
+ *
+ * Visual bells come in at meta_bell_notify(), which checks we are actually
+ * in visual mode and calls through to bell_visual_notify(). That
+ * function then checks what kind of visual flash you like, and calls either
+ * bell_flash_fullscreen()-- which calls bell_flash_screen() to do
+ * its work-- or bell_flash_frame(), which flashes the focussed window
+ * using bell_flash_window_frame(), unless there is no such window, in
+ * which case it flashes the screen instead. bell_flash_window_frame()
+ * flashes the frame and calls bell_unflash_frame() as a timeout to
+ * remove the flash.
+ *
+ * The visual bell was the result of a discussion in Bugzilla here:
+ * <http://bugzilla.gnome.org/show_bug.cgi?id=99886>.
+ *
+ * Several of the functions in this file are ifdeffed out entirely if we are
+ * found not to have the XKB extension, which is required to do these clever
+ * things with bells; some others are entirely no-ops in that case.
+ */
+
+#include <config.h>
+#include "bell.h"
+#include "screen-private.h"
+#include "prefs.h"
+#include <canberra-gtk.h>
+
+/**
+ * Flashes one entire screen. This is done by making a window the size of the
+ * whole screen (or reusing the old one, if it's still around), mapping it,
+ * painting it white and then black, and then unmapping it. We set saveunder so
+ * that all the windows behind it come back immediately.
+ *
+ * Unlike frame flashes, we don't do fullscreen flashes with a timeout; rather,
+ * we do them in one go, because we don't have to rely on the theme code
+ * redrawing the frame for us in order to do the flash.
+ *
+ * \param display The display which owns the screen (rather redundant)
+ * \param screen The screen to flash
+ *
+ * \bug The way I read it, this appears not to do the flash
+ * the first time we flash a particular display. Am I wrong?
+ *
+ * \bug This appears to destroy our current XSync status.
+ */
+static void
+bell_flash_screen (MetaDisplay *display,
+ MetaScreen *screen)
+{
+ Window root = screen->xroot;
+ int width = screen->rect.width;
+ int height = screen->rect.height;
+
+ if (screen->flash_window == None)
+ {
+ Visual *visual = (Visual *)CopyFromParent;
+ XSetWindowAttributes xswa;
+ int depth = CopyFromParent;
+ xswa.save_under = True;
+ xswa.override_redirect = True;
+ /*
+ * TODO: use XGetVisualInfo and determine which is an
+ * overlay, if one is present, and use the Overlay visual
+ * for this window (for performance reasons).
+ * Not sure how to tell this yet...
+ */
+ screen->flash_window = XCreateWindow (display->xdisplay, root,
+ 0, 0, width, height,
+ 0, depth,
+ InputOutput,
+ visual,
+ /* note: XSun doesn't like SaveUnder here */
+ CWSaveUnder | CWOverrideRedirect,
+ &xswa);
+ XSelectInput (display->xdisplay, screen->flash_window, ExposureMask);
+ XMapWindow (display->xdisplay, screen->flash_window);
+ XSync (display->xdisplay, False);
+ XFlush (display->xdisplay);
+ XUnmapWindow (display->xdisplay, screen->flash_window);
+ }
+ else
+ {
+ /* just draw something in the window */
+ GC gc = XCreateGC (display->xdisplay, screen->flash_window, 0, NULL);
+ XMapWindow (display->xdisplay, screen->flash_window);
+ XSetForeground (display->xdisplay, gc,
+ WhitePixel (display->xdisplay,
+ XScreenNumberOfScreen (screen->xscreen)));
+ XFillRectangle (display->xdisplay, screen->flash_window, gc,
+ 0, 0, width, height);
+ XSetForeground (display->xdisplay, gc,
+ BlackPixel (display->xdisplay,
+ XScreenNumberOfScreen (screen->xscreen)));
+ XFillRectangle (display->xdisplay, screen->flash_window, gc,
+ 0, 0, width, height);
+ XFlush (display->xdisplay);
+ XSync (display->xdisplay, False);
+ XUnmapWindow (display->xdisplay, screen->flash_window);
+ XFreeGC (display->xdisplay, gc);
+ }
+
+ if (meta_prefs_get_focus_mode () != META_FOCUS_MODE_CLICK &&
+ !display->mouse_mode)
+ meta_display_increment_focus_sentinel (display);
+ XFlush (display->xdisplay);
+}
+
+/**
+ * Flashes one screen, or all screens, in response to a bell event.
+ * If the event is on a particular window, flash the screen that
+ * window is on. Otherwise, flash every screen on this display.
+ *
+ * If the configure script found we had no XKB, this does not exist.
+ *
+ * \param display The display the event came in on
+ * \param xkb_ev The bell event
+ */
+#ifdef HAVE_XKB
+static void
+bell_flash_fullscreen (MetaDisplay *display,
+ XkbAnyEvent *xkb_ev)
+{
+ XkbBellNotifyEvent *xkb_bell_ev = (XkbBellNotifyEvent *) xkb_ev;
+ MetaScreen *screen;
+
+ g_assert (xkb_ev->xkb_type == XkbBellNotify);
+ if (xkb_bell_ev->window != None)
+ {
+ screen = meta_display_screen_for_xwindow (display, xkb_bell_ev->window);
+ if (screen)
+ bell_flash_screen (display, screen);
+ }
+ else
+ {
+ GSList *screen_list = display->screens;
+ while (screen_list)
+ {
+ screen = (MetaScreen *) screen_list->data;
+ bell_flash_screen (display, screen);
+ screen_list = screen_list->next;
+ }
+ }
+}
+
+/**
+ * Makes a frame be not flashed; this is the timeout half of
+ * bell_flash_window_frame(). This is done simply by clearing the
+ * flash flag and queuing a redraw of the frame.
+ *
+ * If the configure script found we had no XKB, this does not exist.
+ *
+ * \param data The frame to unflash, cast to a gpointer so it can go into
+ * a callback function.
+ * \return Always FALSE, so we don't get called again.
+ *
+ * \bug This is the parallel to bell_flash_window_frame(), so it should
+ * really be called meta_bell_unflash_window_frame().
+ */
+static gboolean
+bell_unflash_frame (gpointer data)
+{
+ MetaFrame *frame = (MetaFrame *) data;
+ frame->is_flashing = 0;
+ meta_frame_queue_draw (frame);
+ return FALSE;
+}
+
+/**
+ * Makes a frame flash and then return to normal shortly afterwards.
+ * This is done by setting a flag so that the theme
+ * code will temporarily draw the frame as focussed if it's unfocussed and
+ * vice versa, and then queueing a redraw. Lastly, we create a timeout so
+ * that the flag can be unset and the frame re-redrawn.
+ *
+ * If the configure script found we had no XKB, this does not exist.
+ *
+ * \param window The window to flash
+ */
+static void
+bell_flash_window_frame (MetaWindow *window)
+{
+ g_assert (window->frame != NULL);
+ window->frame->is_flashing = 1;
+ meta_frame_queue_draw (window->frame);
+ g_timeout_add_full (G_PRIORITY_DEFAULT_IDLE, 100,
+ bell_unflash_frame, window->frame, NULL);
+}
+
+/**
+ * Flashes the frame of the focussed window. If there is no focussed window,
+ * flashes the screen.
+ *
+ * \param display The display the bell event came in on
+ * \param xkb_ev The bell event we just received
+ */
+static void
+bell_flash_frame (MetaDisplay *display,
+ XkbAnyEvent *xkb_ev)
+{
+ XkbBellNotifyEvent *xkb_bell_event = (XkbBellNotifyEvent *) xkb_ev;
+ MetaWindow *window;
+
+ g_assert (xkb_ev->xkb_type == XkbBellNotify);
+ window = meta_display_lookup_x_window (display, xkb_bell_event->window);
+ if (!window && (display->focus_window))
+ {
+ window = display->focus_window;
+ }
+ if (window && window->frame)
+ {
+ bell_flash_window_frame (window);
+ }
+ else /* revert to fullscreen flash if there's no focussed window */
+ {
+ bell_flash_fullscreen (display, xkb_ev);
+ }
+}
+
+/**
+ * Gives the user some kind of visual bell substitute, in response to a
+ * bell event. What this is depends on the "visual bell type" pref.
+ *
+ * If the configure script found we had no XKB, this does not exist.
+ *
+ * \param display The display the bell event came in on
+ * \param xkb_ev The bell event we just received
+ *
+ * \bug This should be merged with meta_bell_notify().
+ */
+static void
+bell_visual_notify (MetaDisplay *display,
+ XkbAnyEvent *xkb_ev)
+{
+ switch (meta_prefs_get_visual_bell_type ())
+ {
+ case META_VISUAL_BELL_FULLSCREEN_FLASH:
+ bell_flash_fullscreen (display, xkb_ev);
+ break;
+ case META_VISUAL_BELL_FRAME_FLASH:
+ bell_flash_frame (display, xkb_ev); /* does nothing yet */
+ break;
+ case META_VISUAL_BELL_INVALID:
+ /* do nothing */
+ break;
+ }
+}
+
+void
+meta_bell_notify (MetaDisplay *display,
+ XkbAnyEvent *xkb_ev)
+{
+ /* flash something */
+ if (meta_prefs_get_visual_bell ())
+ bell_visual_notify (display, xkb_ev);
+
+ if (meta_prefs_bell_is_audible ())
+ {
+ ca_proplist *p;
+ XkbBellNotifyEvent *xkb_bell_event = (XkbBellNotifyEvent*) xkb_ev;
+ MetaWindow *window;
+ int res;
+
+ ca_proplist_create (&p);
+ ca_proplist_sets (p, CA_PROP_EVENT_ID, "bell-window-system");
+ ca_proplist_sets (p, CA_PROP_EVENT_DESCRIPTION, _("Bell event"));
+ ca_proplist_sets (p, CA_PROP_CANBERRA_CACHE_CONTROL, "permanent");
+
+ window = meta_display_lookup_x_window (display, xkb_bell_event->window);
+ if (!window && (display->focus_window) && (display->focus_window->frame))
+ window = display->focus_window;
+
+ if (window)
+ {
+ ca_proplist_sets (p, CA_PROP_WINDOW_NAME, window->title);
+ ca_proplist_setf (p, CA_PROP_WINDOW_X11_XID, "%lu", (unsigned long)window->xwindow);
+ ca_proplist_sets (p, CA_PROP_APPLICATION_NAME, window->res_name);
+ ca_proplist_setf (p, CA_PROP_APPLICATION_PROCESS_ID, "%d", window->net_wm_pid);
+ }
+
+ /* First, we try to play a real sound ... */
+ res = ca_context_play_full (ca_gtk_context_get (), 1, p, NULL, NULL);
+
+ ca_proplist_destroy (p);
+
+ if (res != CA_SUCCESS && res != CA_ERROR_DISABLED)
+ {
+ /* ...and in case that failed we use the classic X11 bell. */
+ XkbForceDeviceBell (display->xdisplay,
+ xkb_bell_event->device,
+ xkb_bell_event->bell_class,
+ xkb_bell_event->bell_id,
+ xkb_bell_event->percent);
+ }
+ }
+}
+#endif /* HAVE_XKB */
+
+void
+meta_bell_set_audible (MetaDisplay *display, gboolean audible)
+{
+}
+
+gboolean
+meta_bell_init (MetaDisplay *display)
+{
+#ifdef HAVE_XKB
+ int xkb_base_error_type, xkb_opcode;
+
+ if (!XkbQueryExtension (display->xdisplay, &xkb_opcode,
+ &display->xkb_base_event_type,
+ &xkb_base_error_type,
+ NULL, NULL))
+ {
+ display->xkb_base_event_type = -1;
+ g_message ("could not find XKB extension.");
+ return FALSE;
+ }
+ else
+ {
+ unsigned int mask = XkbBellNotifyMask;
+ gboolean visual_bell_auto_reset = FALSE;
+ /* TRUE if and when non-broken version is available */
+ XkbSelectEvents (display->xdisplay,
+ XkbUseCoreKbd,
+ XkbBellNotifyMask,
+ XkbBellNotifyMask);
+ XkbChangeEnabledControls (display->xdisplay,
+ XkbUseCoreKbd,
+ XkbAudibleBellMask,
+ 0);
+ if (visual_bell_auto_reset) {
+ XkbSetAutoResetControls (display->xdisplay,
+ XkbAudibleBellMask,
+ &mask,
+ &mask);
+ }
+ return TRUE;
+ }
+#endif
+ return FALSE;
+}
+
+void
+meta_bell_shutdown (MetaDisplay *display)
+{
+#ifdef HAVE_XKB
+ /* TODO: persist initial bell state in display, reset here */
+ XkbChangeEnabledControls (display->xdisplay,
+ XkbUseCoreKbd,
+ XkbAudibleBellMask,
+ XkbAudibleBellMask);
+#endif
+}
+
+/**
+ * Deals with a frame being destroyed. This is important because if we're
+ * using a visual bell, we might be flashing the edges of the frame, and
+ * so we'd have a timeout function waiting ready to un-flash them. If the
+ * frame's going away, we can tell the timeout not to bother.
+ *
+ * \param frame The frame which is being destroyed
+ */
+void
+meta_bell_notify_frame_destroy (MetaFrame *frame)
+{
+ if (frame->is_flashing)
+ g_source_remove_by_funcs_user_data (&g_timeout_funcs, frame);
+}
diff --git a/src/core/bell.h b/src/core/bell.h
new file mode 100644
index 00000000..95e3ea9e
--- /dev/null
+++ b/src/core/bell.h
@@ -0,0 +1,108 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file bell.h Ring the bell or flash the screen
+ *
+ * Sometimes, X programs "ring the bell", whatever that means. Marco lets
+ * the user configure the bell to be audible or visible (aka visual), and
+ * if it's visual it can be configured to be frame-flash or fullscreen-flash.
+ * We never get told about audible bells; X handles them just fine by itself.
+ *
+ * The visual bell was the result of a discussion in Bugzilla here:
+ * <http://bugzilla.gnome.org/show_bug.cgi?id=99886>.
+ */
+
+/*
+ * Copyright (C) 2002 Sun Microsystems Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <X11/Xlib.h>
+#ifdef HAVE_XKB
+#include <X11/XKBlib.h>
+#endif
+#include "display-private.h"
+#include "frame-private.h"
+
+#ifdef HAVE_XKB
+/**
+ * Gives the user some kind of visual bell; in fact, this is our response
+ * to any kind of bell request, but we set it up so that we only get
+ * notified about visual bells, and X deals with audible ones.
+ *
+ * If the configure script found we had no XKB, this does not exist.
+ *
+ * \param display The display the bell event came in on
+ * \param xkb_ev The bell event we just received
+ */
+void meta_bell_notify (MetaDisplay *display, XkbAnyEvent *xkb_ev);
+#endif
+
+/**
+ * Turns the bell to audible or visual. This tells X what to do, but
+ * not Marco; you will need to set the "visual bell" pref for that.
+ *
+ * If the configure script found we had no XKB, this is a no-op.
+ *
+ * \param display The display we're configuring
+ * \param audible True for an audible bell, false for a visual bell
+ */
+void meta_bell_set_audible (MetaDisplay *display, gboolean audible);
+
+/**
+ * Initialises the bell subsystem. This involves intialising
+ * XKB (which, despite being a keyboard extension, is the
+ * place to look for bell notifications), then asking it
+ * to send us bell notifications, and then also switching
+ * off the audible bell if we're using a visual one ourselves.
+ *
+ * Unlike most X extensions we use, we only initialise XKB here
+ * (rather than in main()). It's possible that XKB is not
+ * installed at all, but if that was known at build time
+ * we will have HAVE_XKB undefined, which will cause this
+ * function to be a no-op.
+ *
+ * \param display The display which is opening
+ *
+ * \bug There is a line of code that's never run that tells
+ * XKB to reset the bell status after we quit. Bill H said
+ * (<http://bugzilla.gnome.org/show_bug.cgi?id=99886#c12>)
+ * that XFree86's implementation is broken so we shouldn't
+ * call it, but that was in 2002. Is it working now?
+ */
+gboolean meta_bell_init (MetaDisplay *display);
+
+/**
+ * Shuts down the bell subsystem.
+ *
+ * \param display The display which is closing
+ *
+ * \bug This is never called! If we had XkbSetAutoResetControls
+ * enabled in meta_bell_init(), this wouldn't be a problem, but
+ * we don't.
+ */
+void meta_bell_shutdown (MetaDisplay *display);
+
+/**
+ * Deals with a frame being destroyed. This is important because if we're
+ * using a visual bell, we might be flashing the edges of the frame, and
+ * so we'd have a timeout function waiting ready to un-flash them. If the
+ * frame's going away, we can tell the timeout not to bother.
+ *
+ * \param frame The frame which is being destroyed
+ */
+void meta_bell_notify_frame_destroy (MetaFrame *frame);
diff --git a/src/core/boxes.c b/src/core/boxes.c
new file mode 100644
index 00000000..2ae5f06a
--- /dev/null
+++ b/src/core/boxes.c
@@ -0,0 +1,1926 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Simple box operations */
+
+/*
+ * Copyright (C) 2005, 2006 Elijah Newren
+ * [meta_rectangle_intersect() is copyright the GTK+ Team according to Havoc,
+ * see gdkrectangle.c. As far as Havoc knows, he probably wrote
+ * meta_rectangle_equal(), and I'm guessing it's (C) Red Hat. So...]
+ * Copyright (C) 1995-2000 GTK+ Team
+ * Copyright (C) 2002 Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include "boxes.h"
+#include "util.h"
+#include <X11/Xutil.h> /* Just for the definition of the various gravities */
+
+char*
+meta_rectangle_to_string (const MetaRectangle *rect,
+ char *output)
+{
+ /* 25 chars: 2 commas, space, plus, trailing \0 + 5 for each digit.
+ * Should be more than enough space. Note that of this space, the
+ * trailing \0 will be overwritten for all but the last rectangle.
+ */
+ g_snprintf (output, RECT_LENGTH, "%d,%d +%d,%d",
+ rect->x, rect->y, rect->width, rect->height);
+
+ return output;
+}
+
+char*
+meta_rectangle_region_to_string (GList *region,
+ const char *separator_string,
+ char *output)
+{
+ /* 27 chars: 2 commas, 2 square brackets, space, plus, trailing \0 + 5
+ * for each digit. Should be more than enough space. Note that of this
+ * space, the trailing \0 will be overwritten for all but the last
+ * rectangle.
+ */
+ char rect_string[RECT_LENGTH];
+
+ GList *tmp = region;
+ char *cur = output;
+
+ if (region == NULL)
+ g_snprintf (output, 10, "(EMPTY)");
+
+ while (tmp)
+ {
+ MetaRectangle *rect = tmp->data;
+ g_snprintf (rect_string, RECT_LENGTH, "[%d,%d +%d,%d]",
+ rect->x, rect->y, rect->width, rect->height);
+ cur = g_stpcpy (cur, rect_string);
+ tmp = tmp->next;
+ if (tmp)
+ cur = g_stpcpy (cur, separator_string);
+ }
+
+ return output;
+}
+
+char*
+meta_rectangle_edge_to_string (const MetaEdge *edge,
+ char *output)
+{
+ /* 25 chars: 2 commas, space, plus, trailing \0 + 5 for each digit.
+ * Should be more than enough space. Note that of this space, the
+ * trailing \0 will be overwritten for all but the last rectangle.
+ *
+ * Plus 2 for parenthesis, 4 for 2 more numbers, 2 more commas, and
+ * 2 more spaces, for a total of 10 more.
+ */
+ g_snprintf (output, EDGE_LENGTH, "[%d,%d +%d,%d], %2d, %2d",
+ edge->rect.x, edge->rect.y, edge->rect.width, edge->rect.height,
+ edge->side_type, edge->edge_type);
+
+ return output;
+}
+
+char*
+meta_rectangle_edge_list_to_string (GList *edge_list,
+ const char *separator_string,
+ char *output)
+{
+ /* 27 chars: 2 commas, 2 square brackets, space, plus, trailing \0 + 5 for
+ * each digit. Should be more than enough space. Note that of this
+ * space, the trailing \0 will be overwritten for all but the last
+ * rectangle.
+ *
+ * Plus 2 for parenthesis, 4 for 2 more numbers, 2 more commas, and
+ * 2 more spaces, for a total of 10 more.
+ */
+ char rect_string[EDGE_LENGTH];
+
+ char *cur = output;
+ GList *tmp = edge_list;
+
+ if (edge_list == NULL)
+ g_snprintf (output, 10, "(EMPTY)");
+
+ while (tmp)
+ {
+ MetaEdge *edge = tmp->data;
+ MetaRectangle *rect = &edge->rect;
+ g_snprintf (rect_string, EDGE_LENGTH, "([%d,%d +%d,%d], %2d, %2d)",
+ rect->x, rect->y, rect->width, rect->height,
+ edge->side_type, edge->edge_type);
+ cur = g_stpcpy (cur, rect_string);
+ tmp = tmp->next;
+ if (tmp)
+ cur = g_stpcpy (cur, separator_string);
+ }
+
+ return output;
+}
+
+MetaRectangle
+meta_rect (int x, int y, int width, int height)
+{
+ MetaRectangle temporary;
+ temporary.x = x;
+ temporary.y = y;
+ temporary.width = width;
+ temporary.height = height;
+
+ return temporary;
+}
+
+int
+meta_rectangle_area (const MetaRectangle *rect)
+{
+ g_return_val_if_fail (rect != NULL, 0);
+ return rect->width * rect->height;
+}
+
+gboolean
+meta_rectangle_intersect (const MetaRectangle *src1,
+ const MetaRectangle *src2,
+ MetaRectangle *dest)
+{
+ int dest_x, dest_y;
+ int dest_w, dest_h;
+ int return_val;
+
+ g_return_val_if_fail (src1 != NULL, FALSE);
+ g_return_val_if_fail (src2 != NULL, FALSE);
+ g_return_val_if_fail (dest != NULL, FALSE);
+
+ return_val = FALSE;
+
+ dest_x = MAX (src1->x, src2->x);
+ dest_y = MAX (src1->y, src2->y);
+ dest_w = MIN (src1->x + src1->width, src2->x + src2->width) - dest_x;
+ dest_h = MIN (src1->y + src1->height, src2->y + src2->height) - dest_y;
+
+ if (dest_w > 0 && dest_h > 0)
+ {
+ dest->x = dest_x;
+ dest->y = dest_y;
+ dest->width = dest_w;
+ dest->height = dest_h;
+ return_val = TRUE;
+ }
+ else
+ {
+ dest->width = 0;
+ dest->height = 0;
+ }
+
+ return return_val;
+}
+
+gboolean
+meta_rectangle_equal (const MetaRectangle *src1,
+ const MetaRectangle *src2)
+{
+ return ((src1->x == src2->x) &&
+ (src1->y == src2->y) &&
+ (src1->width == src2->width) &&
+ (src1->height == src2->height));
+}
+
+void
+meta_rectangle_union (const MetaRectangle *rect1,
+ const MetaRectangle *rect2,
+ MetaRectangle *dest)
+{
+ int dest_x, dest_y;
+ int dest_w, dest_h;
+
+ dest_x = rect1->x;
+ dest_y = rect1->y;
+ dest_w = rect1->width;
+ dest_h = rect1->height;
+
+ if (rect2->x < dest_x)
+ {
+ dest_w += dest_x - rect2->x;
+ dest_x = rect2->x;
+ }
+ if (rect2->y < dest_y)
+ {
+ dest_h += dest_y - rect2->y;
+ dest_y = rect2->y;
+ }
+ if (rect2->x + rect2->width > dest_x + dest_w)
+ dest_w = rect2->x + rect2->width - dest_x;
+ if (rect2->y + rect2->height > dest_y + dest_h)
+ dest_h = rect2->y + rect2->height - dest_y;
+
+ dest->x = dest_x;
+ dest->y = dest_y;
+ dest->width = dest_w;
+ dest->height = dest_h;
+}
+
+gboolean
+meta_rectangle_overlap (const MetaRectangle *rect1,
+ const MetaRectangle *rect2)
+{
+ g_return_val_if_fail (rect1 != NULL, FALSE);
+ g_return_val_if_fail (rect2 != NULL, FALSE);
+
+ return !((rect1->x + rect1->width <= rect2->x) ||
+ (rect2->x + rect2->width <= rect1->x) ||
+ (rect1->y + rect1->height <= rect2->y) ||
+ (rect2->y + rect2->height <= rect1->y));
+}
+
+gboolean
+meta_rectangle_vert_overlap (const MetaRectangle *rect1,
+ const MetaRectangle *rect2)
+{
+ return (rect1->y < rect2->y + rect2->height &&
+ rect2->y < rect1->y + rect1->height);
+}
+
+gboolean
+meta_rectangle_horiz_overlap (const MetaRectangle *rect1,
+ const MetaRectangle *rect2)
+{
+ return (rect1->x < rect2->x + rect2->width &&
+ rect2->x < rect1->x + rect1->width);
+}
+
+gboolean
+meta_rectangle_could_fit_rect (const MetaRectangle *outer_rect,
+ const MetaRectangle *inner_rect)
+{
+ return (outer_rect->width >= inner_rect->width &&
+ outer_rect->height >= inner_rect->height);
+}
+
+gboolean
+meta_rectangle_contains_rect (const MetaRectangle *outer_rect,
+ const MetaRectangle *inner_rect)
+{
+ return
+ inner_rect->x >= outer_rect->x &&
+ inner_rect->y >= outer_rect->y &&
+ inner_rect->x + inner_rect->width <= outer_rect->x + outer_rect->width &&
+ inner_rect->y + inner_rect->height <= outer_rect->y + outer_rect->height;
+}
+
+void
+meta_rectangle_resize_with_gravity (const MetaRectangle *old_rect,
+ MetaRectangle *rect,
+ int gravity,
+ int new_width,
+ int new_height)
+{
+ /* FIXME: I'm too deep into this to know whether the below comment is
+ * still clear or not now that I've moved it out of constraints.c.
+ * boxes.h has a good comment, but I'm not sure if the below info is also
+ * helpful on top of that (or whether it has superfluous info).
+ */
+
+ /* These formulas may look overly simplistic at first but you can work
+ * everything out with a left_frame_with, right_frame_width,
+ * border_width, and old and new client area widths (instead of old total
+ * width and new total width) and you come up with the same formulas.
+ *
+ * Also, note that the reason we can treat NorthWestGravity and
+ * StaticGravity the same is because we're not given a location at
+ * which to place the window--the window was already placed
+ * appropriately before. So, NorthWestGravity for this function
+ * means to just leave the upper left corner of the outer window
+ * where it already is, and StaticGravity for this function means to
+ * just leave the upper left corner of the inner window where it
+ * already is. But leaving either of those two corners where they
+ * already are will ensure that the other corner is fixed as well
+ * (since frame size doesn't change)--thus making the two
+ * equivalent.
+ */
+
+ /* First, the x direction */
+ int adjust = 0;
+ switch (gravity)
+ {
+ case NorthWestGravity:
+ case WestGravity:
+ case SouthWestGravity:
+ rect->x = old_rect->x;
+ break;
+
+ case NorthGravity:
+ case CenterGravity:
+ case SouthGravity:
+ /* FIXME: Needing to adjust new_width kind of sucks, but not doing so
+ * would cause drift.
+ */
+ new_width -= (old_rect->width - new_width) % 2;
+ rect->x = old_rect->x + (old_rect->width - new_width)/2;
+ break;
+
+ case NorthEastGravity:
+ case EastGravity:
+ case SouthEastGravity:
+ rect->x = old_rect->x + (old_rect->width - new_width);
+ break;
+
+ case StaticGravity:
+ default:
+ rect->x = old_rect->x;
+ break;
+ }
+ rect->width = new_width;
+
+ /* Next, the y direction */
+ adjust = 0;
+ switch (gravity)
+ {
+ case NorthWestGravity:
+ case NorthGravity:
+ case NorthEastGravity:
+ rect->y = old_rect->y;
+ break;
+
+ case WestGravity:
+ case CenterGravity:
+ case EastGravity:
+ /* FIXME: Needing to adjust new_height kind of sucks, but not doing so
+ * would cause drift.
+ */
+ new_height -= (old_rect->height - new_height) % 2;
+ rect->y = old_rect->y + (old_rect->height - new_height)/2;
+ break;
+
+ case SouthWestGravity:
+ case SouthGravity:
+ case SouthEastGravity:
+ rect->y = old_rect->y + (old_rect->height - new_height);
+ break;
+
+ case StaticGravity:
+ default:
+ rect->y = old_rect->y;
+ break;
+ }
+ rect->height = new_height;
+}
+
+/* Not so simple helper function for get_minimal_spanning_set_for_region() */
+static GList*
+merge_spanning_rects_in_region (GList *region)
+{
+ /* NOTE FOR ANY OPTIMIZATION PEOPLE OUT THERE: Please see the
+ * documentation of get_minimal_spanning_set_for_region() for performance
+ * considerations that also apply to this function.
+ */
+
+ GList* compare;
+ compare = region;
+
+ if (region == NULL)
+ {
+ meta_warning ("Region to merge was empty! Either you have a some "
+ "pathological STRUT list or there's a bug somewhere!\n");
+ return NULL;
+ }
+
+ while (compare && compare->next)
+ {
+ MetaRectangle *a = compare->data;
+ GList *other = compare->next;
+
+ g_assert (a->width > 0 && a->height > 0);
+
+ while (other)
+ {
+ MetaRectangle *b = other->data;
+ GList *delete_me = NULL;
+
+ g_assert (b->width > 0 && b->height > 0);
+
+ /* If a contains b, just remove b */
+ if (meta_rectangle_contains_rect (a, b))
+ {
+ delete_me = other;
+ }
+ /* If b contains a, just remove a */
+ else if (meta_rectangle_contains_rect (a, b))
+ {
+ delete_me = compare;
+ }
+ /* If a and b might be mergeable horizontally */
+ else if (a->y == b->y && a->height == b->height)
+ {
+ /* If a and b overlap */
+ if (meta_rectangle_overlap (a, b))
+ {
+ int new_x = MIN (a->x, b->x);
+ a->width = MAX (a->x + a->width, b->x + b->width) - new_x;
+ a->x = new_x;
+ delete_me = other;
+ }
+ /* If a and b are adjacent */
+ else if (a->x + a->width == b->x || a->x == b->x + b->width)
+ {
+ int new_x = MIN (a->x, b->x);
+ a->width = MAX (a->x + a->width, b->x + b->width) - new_x;
+ a->x = new_x;
+ delete_me = other;
+ }
+ }
+ /* If a and b might be mergeable vertically */
+ else if (a->x == b->x && a->width == b->width)
+ {
+ /* If a and b overlap */
+ if (meta_rectangle_overlap (a, b))
+ {
+ int new_y = MIN (a->y, b->y);
+ a->height = MAX (a->y + a->height, b->y + b->height) - new_y;
+ a->y = new_y;
+ delete_me = other;
+ }
+ /* If a and b are adjacent */
+ else if (a->y + a->height == b->y || a->y == b->y + b->height)
+ {
+ int new_y = MIN (a->y, b->y);
+ a->height = MAX (a->y + a->height, b->y + b->height) - new_y;
+ a->y = new_y;
+ delete_me = other;
+ }
+ }
+
+ other = other->next;
+
+ /* Delete any rectangle in the list that is no longer wanted */
+ if (delete_me != NULL)
+ {
+ /* Deleting the rect we compare others to is a little tricker */
+ if (compare == delete_me)
+ {
+ compare = compare->next;
+ other = compare->next;
+ a = compare->data;
+ }
+
+ /* Okay, we can free it now */
+ g_free (delete_me->data);
+ region = g_list_delete_link (region, delete_me);
+ }
+
+ }
+
+ compare = compare->next;
+ }
+
+ return region;
+}
+
+/* Simple helper function for get_minimal_spanning_set_for_region()... */
+static gint
+compare_rect_areas (gconstpointer a, gconstpointer b)
+{
+ const MetaRectangle *a_rect = (gconstpointer) a;
+ const MetaRectangle *b_rect = (gconstpointer) b;
+
+ int a_area = meta_rectangle_area (a_rect);
+ int b_area = meta_rectangle_area (b_rect);
+
+ return b_area - a_area; /* positive ret value denotes b > a, ... */
+}
+
+/* This function is trying to find a "minimal spanning set (of rectangles)"
+ * for a given region.
+ *
+ * The region is given by taking basic_rect, then removing the areas
+ * covered by all the rectangles in the all_struts list, and then expanding
+ * the resulting region by the given number of pixels in each direction.
+ *
+ * A "minimal spanning set (of rectangles)" is the best name I could come
+ * up with for the concept I had in mind. Basically, for a given region, I
+ * want a set of rectangles with the property that a window is contained in
+ * the region if and only if it is contained within at least one of the
+ * rectangles.
+ *
+ * The GList* returned will be a list of (allocated) MetaRectangles.
+ * The list will need to be freed by calling
+ * meta_rectangle_free_spanning_set() on it (or by manually
+ * implementing that function...)
+ */
+GList*
+meta_rectangle_get_minimal_spanning_set_for_region (
+ const MetaRectangle *basic_rect,
+ const GSList *all_struts)
+{
+ /* NOTE FOR OPTIMIZERS: This function *might* be somewhat slow,
+ * especially due to the call to merge_spanning_rects_in_region() (which
+ * is O(n^2) where n is the size of the list generated in this function).
+ * This is made more onerous due to the fact that it involves a fair
+ * number of memory allocation and deallocation calls. However, n is 1
+ * for default installations of Mate (because partial struts aren't used
+ * by default and only partial struts increase the size of the spanning
+ * set generated). With one partial strut, n will be 2 or 3. With 2
+ * partial struts, n will probably be 4 or 5. So, n probably isn't large
+ * enough to make this worth bothering. Further, it is only called from
+ * workspace.c:ensure_work_areas_validated (at least as of the time of
+ * writing this comment), which in turn should only be called if the
+ * strut list changes or the screen or xinerama size changes. If it ever
+ * does show up on profiles (most likely because people start using
+ * ridiculously huge numbers of partial struts), possible optimizations
+ * include:
+ *
+ * (1) rewrite merge_spanning_rects_in_region() to be O(n) or O(nlogn).
+ * I'm not totally sure it's possible, but with a couple copies of
+ * the list and sorting them appropriately, I believe it might be.
+ * (2) only call merge_spanning_rects_in_region() with a subset of the
+ * full list of rectangles. I believe from some of my preliminary
+ * debugging and thinking about it that it is possible to figure out
+ * apriori groups of rectangles which are only merge candidates with
+ * each other. (See testboxes.c:get_screen_region() when which==2
+ * and track the steps of this function carefully to see what gave
+ * me the hint that this might work)
+ * (3) figure out how to avoid merge_spanning_rects_in_region(). I think
+ * it might be possible to modify this function to make that
+ * possible, and I spent just a little while thinking about it, but n
+ * wasn't large enough to convince me to care yet.
+ * (4) Some of the stuff Rob mentioned at http://mail.gnome.org/archives\
+ * /marco-devel-list/2005-November/msg00028.html. (Sorry for the
+ * URL splitting.)
+ */
+
+ GList *ret;
+ GList *tmp_list;
+ const GSList *strut_iter;
+ MetaRectangle *temp_rect;
+
+ /* The algorithm is basically as follows:
+ * Initialize rectangle_set to basic_rect
+ * Foreach strut:
+ * Foreach rectangle in rectangle_set:
+ * - Split the rectangle into new rectangles that don't overlap the
+ * strut (but which are as big as possible otherwise)
+ * - Remove the old (pre-split) rectangle from the rectangle_set,
+ * and replace it with the new rectangles generated from the
+ * splitting
+ */
+
+ temp_rect = g_new (MetaRectangle, 1);
+ *temp_rect = *basic_rect;
+ ret = g_list_prepend (NULL, temp_rect);
+
+ strut_iter = all_struts;
+ for (strut_iter = all_struts; strut_iter; strut_iter = strut_iter->next)
+ {
+ GList *rect_iter;
+ MetaRectangle *strut_rect = &((MetaStrut*)strut_iter->data)->rect;
+
+ tmp_list = ret;
+ ret = NULL;
+ rect_iter = tmp_list;
+ while (rect_iter)
+ {
+ MetaRectangle *rect = (MetaRectangle*) rect_iter->data;
+ if (!meta_rectangle_overlap (rect, strut_rect))
+ ret = g_list_prepend (ret, rect);
+ else
+ {
+ /* If there is area in rect left of strut */
+ if (BOX_LEFT (*rect) < BOX_LEFT (*strut_rect))
+ {
+ temp_rect = g_new (MetaRectangle, 1);
+ *temp_rect = *rect;
+ temp_rect->width = BOX_LEFT (*strut_rect) - BOX_LEFT (*rect);
+ ret = g_list_prepend (ret, temp_rect);
+ }
+ /* If there is area in rect right of strut */
+ if (BOX_RIGHT (*rect) > BOX_RIGHT (*strut_rect))
+ {
+ int new_x;
+ temp_rect = g_new (MetaRectangle, 1);
+ *temp_rect = *rect;
+ new_x = BOX_RIGHT (*strut_rect);
+ temp_rect->width = BOX_RIGHT(*rect) - new_x;
+ temp_rect->x = new_x;
+ ret = g_list_prepend (ret, temp_rect);
+ }
+ /* If there is area in rect above strut */
+ if (BOX_TOP (*rect) < BOX_TOP (*strut_rect))
+ {
+ temp_rect = g_new (MetaRectangle, 1);
+ *temp_rect = *rect;
+ temp_rect->height = BOX_TOP (*strut_rect) - BOX_TOP (*rect);
+ ret = g_list_prepend (ret, temp_rect);
+ }
+ /* If there is area in rect below strut */
+ if (BOX_BOTTOM (*rect) > BOX_BOTTOM (*strut_rect))
+ {
+ int new_y;
+ temp_rect = g_new (MetaRectangle, 1);
+ *temp_rect = *rect;
+ new_y = BOX_BOTTOM (*strut_rect);
+ temp_rect->height = BOX_BOTTOM (*rect) - new_y;
+ temp_rect->y = new_y;
+ ret = g_list_prepend (ret, temp_rect);
+ }
+ g_free (rect);
+ }
+ rect_iter = rect_iter->next;
+ }
+ g_list_free (tmp_list);
+ }
+
+ /* Sort by maximal area, just because I feel like it... */
+ ret = g_list_sort (ret, compare_rect_areas);
+
+ /* Merge rectangles if possible so that the list really is minimal */
+ ret = merge_spanning_rects_in_region (ret);
+
+ return ret;
+}
+
+GList*
+meta_rectangle_expand_region (GList *region,
+ const int left_expand,
+ const int right_expand,
+ const int top_expand,
+ const int bottom_expand)
+{
+ return meta_rectangle_expand_region_conditionally (region,
+ left_expand,
+ right_expand,
+ top_expand,
+ bottom_expand,
+ 0,
+ 0);
+}
+
+GList*
+meta_rectangle_expand_region_conditionally (GList *region,
+ const int left_expand,
+ const int right_expand,
+ const int top_expand,
+ const int bottom_expand,
+ const int min_x,
+ const int min_y)
+{
+ GList *tmp_list = region;
+ while (tmp_list)
+ {
+ MetaRectangle *rect = (MetaRectangle*) tmp_list->data;
+ if (rect->width >= min_x)
+ {
+ rect->x -= left_expand;
+ rect->width += (left_expand + right_expand);
+ }
+ if (rect->height >= min_y)
+ {
+ rect->y -= top_expand;
+ rect->height += (top_expand + bottom_expand);
+ }
+ tmp_list = tmp_list->next;
+ }
+
+ return region;
+}
+
+void
+meta_rectangle_expand_to_avoiding_struts (MetaRectangle *rect,
+ const MetaRectangle *expand_to,
+ const MetaDirection direction,
+ const GSList *all_struts)
+{
+ const GSList *strut_iter;
+
+ /* If someone wants this function to handle more fine-grained
+ * direction expanding in the future (e.g. only left, or fully
+ * horizontal plus upward), feel free. But I'm hard-coding for both
+ * horizontal directions (exclusive-)or both vertical directions.
+ */
+ g_assert ((direction == META_DIRECTION_HORIZONTAL) ^
+ (direction == META_DIRECTION_VERTICAL ));
+
+ if (direction == META_DIRECTION_HORIZONTAL)
+ {
+ rect->x = expand_to->x;
+ rect->width = expand_to->width;
+ }
+ else
+ {
+ rect->y = expand_to->y;
+ rect->height = expand_to->height;
+ }
+
+
+ /* Run over all struts */
+ for (strut_iter = all_struts; strut_iter; strut_iter = strut_iter->next)
+ {
+ MetaStrut *strut = (MetaStrut*) strut_iter->data;
+
+ /* Skip struts that don't overlap */
+ if (!meta_rectangle_overlap (&strut->rect, rect))
+ continue;
+
+ if (direction == META_DIRECTION_HORIZONTAL)
+ {
+ if (strut->side == META_SIDE_LEFT)
+ {
+ int offset = BOX_RIGHT(strut->rect) - BOX_LEFT(*rect);
+ rect->x += offset;
+ rect->width -= offset;
+ }
+ else if (strut->side == META_SIDE_RIGHT)
+ {
+ int offset = BOX_RIGHT (*rect) - BOX_LEFT(strut->rect);
+ rect->width -= offset;
+ }
+ /* else ignore the strut */
+ }
+ else /* direction == META_DIRECTION_VERTICAL */
+ {
+ if (strut->side == META_SIDE_TOP)
+ {
+ int offset = BOX_BOTTOM(strut->rect) - BOX_TOP(*rect);
+ rect->y += offset;
+ rect->height -= offset;
+ }
+ else if (strut->side == META_SIDE_BOTTOM)
+ {
+ int offset = BOX_BOTTOM(*rect) - BOX_TOP(strut->rect);
+ rect->height -= offset;
+ }
+ /* else ignore the strut */
+ }
+ } /* end loop over struts */
+} /* end meta_rectangle_expand_to_avoiding_struts */
+
+void
+meta_rectangle_free_list_and_elements (GList *filled_list)
+{
+ g_list_foreach (filled_list,
+ (void (*)(gpointer,gpointer))&g_free, /* ew, for ugly */
+ NULL);
+ g_list_free (filled_list);
+}
+
+gboolean
+meta_rectangle_could_fit_in_region (const GList *spanning_rects,
+ const MetaRectangle *rect)
+{
+ const GList *temp;
+ gboolean could_fit;
+
+ temp = spanning_rects;
+ could_fit = FALSE;
+ while (!could_fit && temp != NULL)
+ {
+ could_fit = could_fit || meta_rectangle_could_fit_rect (temp->data, rect);
+ temp = temp->next;
+ }
+
+ return could_fit;
+}
+
+gboolean
+meta_rectangle_contained_in_region (const GList *spanning_rects,
+ const MetaRectangle *rect)
+{
+ const GList *temp;
+ gboolean contained;
+
+ temp = spanning_rects;
+ contained = FALSE;
+ while (!contained && temp != NULL)
+ {
+ contained = contained || meta_rectangle_contains_rect (temp->data, rect);
+ temp = temp->next;
+ }
+
+ return contained;
+}
+
+gboolean
+meta_rectangle_overlaps_with_region (const GList *spanning_rects,
+ const MetaRectangle *rect)
+{
+ const GList *temp;
+ gboolean overlaps;
+
+ temp = spanning_rects;
+ overlaps = FALSE;
+ while (!overlaps && temp != NULL)
+ {
+ overlaps = overlaps || meta_rectangle_overlap (temp->data, rect);
+ temp = temp->next;
+ }
+
+ return overlaps;
+}
+
+
+void
+meta_rectangle_clamp_to_fit_into_region (const GList *spanning_rects,
+ FixedDirections fixed_directions,
+ MetaRectangle *rect,
+ const MetaRectangle *min_size)
+{
+ const GList *temp;
+ const MetaRectangle *best_rect = NULL;
+ int best_overlap = 0;
+
+ /* First, find best rectangle from spanning_rects to which we can clamp
+ * rect to fit into.
+ */
+ for (temp = spanning_rects; temp; temp = temp->next)
+ {
+ MetaRectangle *compare_rect = temp->data;
+ int maximal_overlap_amount_for_compare;
+
+ /* If x is fixed and the entire width of rect doesn't fit in compare,
+ * skip this rectangle.
+ */
+ if ((fixed_directions & FIXED_DIRECTION_X) &&
+ (compare_rect->x > rect->x ||
+ compare_rect->x + compare_rect->width < rect->x + rect->width))
+ continue;
+
+ /* If y is fixed and the entire height of rect doesn't fit in compare,
+ * skip this rectangle.
+ */
+ if ((fixed_directions & FIXED_DIRECTION_Y) &&
+ (compare_rect->y > rect->y ||
+ compare_rect->y + compare_rect->height < rect->y + rect->height))
+ continue;
+
+ /* If compare can't hold the min_size window, skip this rectangle. */
+ if (compare_rect->width < min_size->width ||
+ compare_rect->height < min_size->height)
+ continue;
+
+ /* Determine maximal overlap amount */
+ maximal_overlap_amount_for_compare =
+ MIN (rect->width, compare_rect->width) *
+ MIN (rect->height, compare_rect->height);
+
+ /* See if this is the best rect so far */
+ if (maximal_overlap_amount_for_compare > best_overlap)
+ {
+ best_rect = compare_rect;
+ best_overlap = maximal_overlap_amount_for_compare;
+ }
+ }
+
+ /* Clamp rect appropriately */
+ if (best_rect == NULL)
+ {
+ meta_warning ("No rect whose size to clamp to found!\n");
+
+ /* If it doesn't fit, at least make it no bigger than it has to be */
+ if (!(fixed_directions & FIXED_DIRECTION_X))
+ rect->width = min_size->width;
+ if (!(fixed_directions & FIXED_DIRECTION_Y))
+ rect->height = min_size->height;
+ }
+ else
+ {
+ rect->width = MIN (rect->width, best_rect->width);
+ rect->height = MIN (rect->height, best_rect->height);
+ }
+}
+
+void
+meta_rectangle_clip_to_region (const GList *spanning_rects,
+ FixedDirections fixed_directions,
+ MetaRectangle *rect)
+{
+ const GList *temp;
+ const MetaRectangle *best_rect = NULL;
+ int best_overlap = 0;
+
+ /* First, find best rectangle from spanning_rects to which we will clip
+ * rect into.
+ */
+ for (temp = spanning_rects; temp; temp = temp->next)
+ {
+ MetaRectangle *compare_rect = temp->data;
+ MetaRectangle overlap;
+ int maximal_overlap_amount_for_compare;
+
+ /* If x is fixed and the entire width of rect doesn't fit in compare,
+ * skip the rectangle.
+ */
+ if ((fixed_directions & FIXED_DIRECTION_X) &&
+ (compare_rect->x > rect->x ||
+ compare_rect->x + compare_rect->width < rect->x + rect->width))
+ continue;
+
+ /* If y is fixed and the entire height of rect doesn't fit in compare,
+ * skip the rectangle.
+ */
+ if ((fixed_directions & FIXED_DIRECTION_Y) &&
+ (compare_rect->y > rect->y ||
+ compare_rect->y + compare_rect->height < rect->y + rect->height))
+ continue;
+
+ /* Determine maximal overlap amount */
+ meta_rectangle_intersect (rect, compare_rect, &overlap);
+ maximal_overlap_amount_for_compare = meta_rectangle_area (&overlap);
+
+ /* See if this is the best rect so far */
+ if (maximal_overlap_amount_for_compare > best_overlap)
+ {
+ best_rect = compare_rect;
+ best_overlap = maximal_overlap_amount_for_compare;
+ }
+ }
+
+ /* Clip rect appropriately */
+ if (best_rect == NULL)
+ meta_warning ("No rect to clip to found!\n");
+ else
+ {
+ /* Extra precaution with checking fixed direction shouldn't be needed
+ * due to logic above, but it shouldn't hurt either.
+ */
+ if (!(fixed_directions & FIXED_DIRECTION_X))
+ {
+ /* Find the new left and right */
+ int new_x = MAX (rect->x, best_rect->x);
+ rect->width = MIN ((rect->x + rect->width) - new_x,
+ (best_rect->x + best_rect->width) - new_x);
+ rect->x = new_x;
+ }
+
+ /* Extra precaution with checking fixed direction shouldn't be needed
+ * due to logic above, but it shouldn't hurt either.
+ */
+ if (!(fixed_directions & FIXED_DIRECTION_Y))
+ {
+ /* Clip the top, if needed */
+ int new_y = MAX (rect->y, best_rect->y);
+ rect->height = MIN ((rect->y + rect->height) - new_y,
+ (best_rect->y + best_rect->height) - new_y);
+ rect->y = new_y;
+ }
+ }
+}
+
+void
+meta_rectangle_shove_into_region (const GList *spanning_rects,
+ FixedDirections fixed_directions,
+ MetaRectangle *rect)
+{
+ const GList *temp;
+ const MetaRectangle *best_rect = NULL;
+ int best_overlap = 0;
+ int shortest_distance = G_MAXINT;
+
+ /* First, find best rectangle from spanning_rects to which we will shove
+ * rect into.
+ */
+
+ for (temp = spanning_rects; temp; temp = temp->next)
+ {
+ MetaRectangle *compare_rect = temp->data;
+ int maximal_overlap_amount_for_compare;
+ int dist_to_compare;
+
+ /* If x is fixed and the entire width of rect doesn't fit in compare,
+ * skip this rectangle.
+ */
+ if ((fixed_directions & FIXED_DIRECTION_X) &&
+ (compare_rect->x > rect->x ||
+ compare_rect->x + compare_rect->width < rect->x + rect->width))
+ continue;
+
+ /* If y is fixed and the entire height of rect doesn't fit in compare,
+ * skip this rectangle.
+ */
+ if ((fixed_directions & FIXED_DIRECTION_Y) &&
+ (compare_rect->y > rect->y ||
+ compare_rect->y + compare_rect->height < rect->y + rect->height))
+ continue;
+
+ /* Determine maximal overlap amount between rect & compare_rect */
+ maximal_overlap_amount_for_compare =
+ MIN (rect->width, compare_rect->width) *
+ MIN (rect->height, compare_rect->height);
+
+ /* Determine distance necessary to put rect into compare_rect */
+ dist_to_compare = 0;
+ if (compare_rect->x > rect->x)
+ dist_to_compare += compare_rect->x - rect->x;
+ if (compare_rect->x + compare_rect->width < rect->x + rect->width)
+ dist_to_compare += (rect->x + rect->width) -
+ (compare_rect->x + compare_rect->width);
+ if (compare_rect->y > rect->y)
+ dist_to_compare += compare_rect->y - rect->y;
+ if (compare_rect->y + compare_rect->height < rect->y + rect->height)
+ dist_to_compare += (rect->y + rect->height) -
+ (compare_rect->y + compare_rect->height);
+
+ /* See if this is the best rect so far */
+ if ((maximal_overlap_amount_for_compare > best_overlap) ||
+ (maximal_overlap_amount_for_compare == best_overlap &&
+ dist_to_compare < shortest_distance))
+ {
+ best_rect = compare_rect;
+ best_overlap = maximal_overlap_amount_for_compare;
+ shortest_distance = dist_to_compare;
+ }
+ }
+
+ /* Shove rect appropriately */
+ if (best_rect == NULL)
+ meta_warning ("No rect to shove into found!\n");
+ else
+ {
+ /* Extra precaution with checking fixed direction shouldn't be needed
+ * due to logic above, but it shouldn't hurt either.
+ */
+ if (!(fixed_directions & FIXED_DIRECTION_X))
+ {
+ /* Shove to the right, if needed */
+ if (best_rect->x > rect->x)
+ rect->x = best_rect->x;
+
+ /* Shove to the left, if needed */
+ if (best_rect->x + best_rect->width < rect->x + rect->width)
+ rect->x = (best_rect->x + best_rect->width) - rect->width;
+ }
+
+ /* Extra precaution with checking fixed direction shouldn't be needed
+ * due to logic above, but it shouldn't hurt either.
+ */
+ if (!(fixed_directions & FIXED_DIRECTION_Y))
+ {
+ /* Shove down, if needed */
+ if (best_rect->y > rect->y)
+ rect->y = best_rect->y;
+
+ /* Shove up, if needed */
+ if (best_rect->y + best_rect->height < rect->y + rect->height)
+ rect->y = (best_rect->y + best_rect->height) - rect->height;
+ }
+ }
+}
+
+void
+meta_rectangle_find_linepoint_closest_to_point (double x1,
+ double y1,
+ double x2,
+ double y2,
+ double px,
+ double py,
+ double *valx,
+ double *valy)
+{
+ /* I'll use the shorthand rx, ry for the return values, valx & valy.
+ * Now, we need (rx,ry) to be on the line between (x1,y1) and (x2,y2).
+ * For that to happen, we first need the slope of the line from (x1,y1)
+ * to (rx,ry) must match the slope of (x1,y1) to (x2,y2), i.e.:
+ * (ry-y1) (y2-y1)
+ * ------- = -------
+ * (rx-x1) (x2-x1)
+ * If x1==x2, though, this gives divide by zero errors, so we want to
+ * rewrite the equation by multiplying both sides by (rx-x1)*(x2-x1):
+ * (ry-y1)(x2-x1) = (y2-y1)(rx-x1)
+ * This is a valid requirement even when x1==x2 (when x1==x2, this latter
+ * equation will basically just mean that rx must be equal to both x1 and
+ * x2)
+ *
+ * The other requirement that we have is that the line from (rx,ry) to
+ * (px,py) must be perpendicular to the line from (x1,y1) to (x2,y2). So
+ * we just need to get a vector in the direction of each line, take the
+ * dot product of the two, and ensure that the result is 0:
+ * (rx-px)*(x2-x1) + (ry-py)*(y2-y1) = 0.
+ *
+ * This gives us two equations and two unknowns:
+ *
+ * (ry-y1)(x2-x1) = (y2-y1)(rx-x1)
+ * (rx-px)*(x2-x1) + (ry-py)*(y2-y1) = 0.
+ *
+ * This particular pair of equations is always solvable so long as
+ * (x1,y1) and (x2,y2) are not the same point (and note that anyone who
+ * calls this function that way is braindead because it means that they
+ * really didn't specify a line after all). However, the caller should
+ * be careful to avoid making (x1,y1) and (x2,y2) too close (e.g. like
+ * 10^{-8} apart in each coordinate), otherwise roundoff error could
+ * cause issues. Solving these equations by hand (or using Maple(TM) or
+ * Mathematica(TM) or whatever) results in slightly messy expressions,
+ * but that's all the below few lines do.
+ */
+
+ double diffx, diffy, den;
+ diffx = x2 - x1;
+ diffy = y2 - y1;
+ den = diffx * diffx + diffy * diffy;
+
+ *valx = (py * diffx * diffy + px * diffx * diffx +
+ y2 * x1 * diffy - y1 * x2 * diffy) / den;
+ *valy = (px * diffx * diffy + py * diffy * diffy +
+ x2 * y1 * diffx - x1 * y2 * diffx) / den;
+}
+
+/***************************************************************************/
+/* */
+/* Switching gears to code for edges instead of just rectangles */
+/* */
+/***************************************************************************/
+
+gboolean
+meta_rectangle_edge_aligns (const MetaRectangle *rect, const MetaEdge *edge)
+{
+ /* The reason for the usage of <= below instead of < is because we are
+ * interested in in-the-way-or-adject'ness. So, a left (i.e. vertical
+ * edge) occupying y positions 0-9 (which has a y of 0 and a height of
+ * 10) and a rectangle with top at y=10 would be considered to "align" by
+ * this function.
+ */
+ switch (edge->side_type)
+ {
+ case META_SIDE_LEFT:
+ case META_SIDE_RIGHT:
+ return BOX_TOP (*rect) <= BOX_BOTTOM (edge->rect) &&
+ BOX_TOP (edge->rect) <= BOX_BOTTOM (*rect);
+ case META_SIDE_TOP:
+ case META_SIDE_BOTTOM:
+ return BOX_LEFT (*rect) <= BOX_RIGHT (edge->rect) &&
+ BOX_LEFT (edge->rect) <= BOX_RIGHT (*rect);
+ default:
+ g_assert_not_reached ();
+ }
+}
+
+static GList*
+get_rect_minus_overlap (const GList *rect_in_list,
+ MetaRectangle *overlap)
+{
+ MetaRectangle *temp;
+ MetaRectangle *rect = rect_in_list->data;
+ GList *ret = NULL;
+
+ if (BOX_LEFT (*rect) < BOX_LEFT (*overlap))
+ {
+ temp = g_new (MetaRectangle, 1);
+ *temp = *rect;
+ temp->width = BOX_LEFT (*overlap) - BOX_LEFT (*rect);
+ ret = g_list_prepend (ret, temp);
+ }
+ if (BOX_RIGHT (*rect) > BOX_RIGHT (*overlap))
+ {
+ temp = g_new (MetaRectangle, 1);
+ *temp = *rect;
+ temp->x = BOX_RIGHT (*overlap);
+ temp->width = BOX_RIGHT (*rect) - BOX_RIGHT (*overlap);
+ ret = g_list_prepend (ret, temp);
+ }
+ if (BOX_TOP (*rect) < BOX_TOP (*overlap))
+ {
+ temp = g_new (MetaRectangle, 1);
+ temp->x = overlap->x;
+ temp->width = overlap->width;
+ temp->y = BOX_TOP (*rect);
+ temp->height = BOX_TOP (*overlap) - BOX_TOP (*rect);
+ ret = g_list_prepend (ret, temp);
+ }
+ if (BOX_BOTTOM (*rect) > BOX_BOTTOM (*overlap))
+ {
+ temp = g_new (MetaRectangle, 1);
+ temp->x = overlap->x;
+ temp->width = overlap->width;
+ temp->y = BOX_BOTTOM (*overlap);
+ temp->height = BOX_BOTTOM (*rect) - BOX_BOTTOM (*overlap);
+ ret = g_list_prepend (ret, temp);
+ }
+
+ return ret;
+}
+
+static GList*
+replace_rect_with_list (GList *old_element,
+ GList *new_list)
+{
+ GList *ret;
+ g_assert (old_element != NULL);
+
+ if (!new_list)
+ {
+ /* If there is no new list, just remove the old_element */
+ ret = g_list_remove_link (old_element, old_element);
+ }
+ else
+ {
+ /* Fix up the prev and next pointers everywhere */
+ ret = new_list;
+ if (old_element->prev)
+ {
+ old_element->prev->next = new_list;
+ new_list->prev = old_element->prev;
+ }
+ if (old_element->next)
+ {
+ GList *tmp = g_list_last (new_list);
+ old_element->next->prev = tmp;
+ tmp->next = old_element->next;
+ }
+ }
+
+ /* Free the old_element and return the appropriate "next" point */
+ g_free (old_element->data);
+ g_list_free_1 (old_element);
+ return ret;
+}
+
+/* Make a copy of the strut list, make sure that copy only contains parts
+ * of the old_struts that intersect with the region rect, and then do some
+ * magic to make all the new struts disjoint (okay, we we break up struts
+ * that aren't disjoint in a way that the overlapping part is only included
+ * once, so it's not really magic...).
+ */
+static GList*
+get_disjoint_strut_rect_list_in_region (const GSList *old_struts,
+ const MetaRectangle *region)
+{
+ GList *strut_rects;
+ GList *tmp;
+
+ /* First, copy the list */
+ strut_rects = NULL;
+ while (old_struts)
+ {
+ MetaRectangle *cur = &((MetaStrut*)old_struts->data)->rect;
+ MetaRectangle *copy = g_new (MetaRectangle, 1);
+ *copy = *cur;
+ if (meta_rectangle_intersect (copy, region, copy))
+ strut_rects = g_list_prepend (strut_rects, copy);
+ else
+ g_free (copy);
+
+ old_struts = old_struts->next;
+ }
+
+ /* Now, loop over the list and check for intersections, fixing things up
+ * where they do intersect.
+ */
+ tmp = strut_rects;
+ while (tmp)
+ {
+ GList *compare;
+
+ MetaRectangle *cur = tmp->data;
+
+ compare = tmp->next;
+ while (compare)
+ {
+ MetaRectangle *comp = compare->data;
+ MetaRectangle overlap;
+
+ if (meta_rectangle_intersect (cur, comp, &overlap))
+ {
+ /* Get a list of rectangles for each strut that don't overlap
+ * the intersection region.
+ */
+ GList *cur_leftover = get_rect_minus_overlap (tmp, &overlap);
+ GList *comp_leftover = get_rect_minus_overlap (compare, &overlap);
+
+ /* Add the intersection region to cur_leftover */
+ MetaRectangle *overlap_allocated = g_new (MetaRectangle, 1);
+ *overlap_allocated = overlap;
+ cur_leftover = g_list_prepend (cur_leftover, overlap_allocated);
+
+ /* Fix up tmp, compare, and cur -- maybe struts too */
+ if (strut_rects == tmp)
+ {
+ strut_rects = replace_rect_with_list (tmp, cur_leftover);
+ tmp = strut_rects;
+ }
+ else
+ tmp = replace_rect_with_list (tmp, cur_leftover);
+ compare = replace_rect_with_list (compare, comp_leftover);
+
+ if (compare == NULL)
+ break;
+
+ cur = tmp->data;
+ }
+
+ compare = compare->next;
+ }
+
+ tmp = tmp->next;
+ }
+
+ return strut_rects;
+}
+
+gint
+meta_rectangle_edge_cmp_ignore_type (gconstpointer a, gconstpointer b)
+{
+ const MetaEdge *a_edge_rect = (gconstpointer) a;
+ const MetaEdge *b_edge_rect = (gconstpointer) b;
+ int a_compare, b_compare;
+
+ /* Edges must be both vertical or both horizontal, or it doesn't make
+ * sense to compare them.
+ */
+ g_assert ((a_edge_rect->rect.width == 0 && b_edge_rect->rect.width == 0) ||
+ (a_edge_rect->rect.height == 0 && b_edge_rect->rect.height == 0));
+
+ a_compare = b_compare = 0; /* gcc-3.4.2 sucks at figuring initialized'ness */
+
+ if (a_edge_rect->side_type == META_SIDE_LEFT ||
+ a_edge_rect->side_type == META_SIDE_RIGHT)
+ {
+ a_compare = a_edge_rect->rect.x;
+ b_compare = b_edge_rect->rect.x;
+ if (a_compare == b_compare)
+ {
+ a_compare = a_edge_rect->rect.y;
+ b_compare = b_edge_rect->rect.y;
+ }
+ }
+ else if (a_edge_rect->side_type == META_SIDE_TOP ||
+ a_edge_rect->side_type == META_SIDE_BOTTOM)
+ {
+ a_compare = a_edge_rect->rect.y;
+ b_compare = b_edge_rect->rect.y;
+ if (a_compare == b_compare)
+ {
+ a_compare = a_edge_rect->rect.x;
+ b_compare = b_edge_rect->rect.x;
+ }
+ }
+ else
+ g_assert ("Some idiot wanted to sort sides of different types.\n");
+
+ return a_compare - b_compare; /* positive value denotes a > b ... */
+}
+
+/* To make things easily testable, provide a nice way of sorting edges */
+gint
+meta_rectangle_edge_cmp (gconstpointer a, gconstpointer b)
+{
+ const MetaEdge *a_edge_rect = (gconstpointer) a;
+ const MetaEdge *b_edge_rect = (gconstpointer) b;
+
+ int a_compare, b_compare;
+
+ a_compare = a_edge_rect->side_type;
+ b_compare = b_edge_rect->side_type;
+
+ if (a_compare == b_compare)
+ return meta_rectangle_edge_cmp_ignore_type (a, b);
+
+ return a_compare - b_compare; /* positive value denotes a > b ... */
+}
+
+/* Determine whether two given edges overlap */
+static gboolean
+edges_overlap (const MetaEdge *edge1,
+ const MetaEdge *edge2)
+{
+ if (edge1->rect.width == 0 && edge2->rect.width == 0)
+ {
+ return meta_rectangle_vert_overlap (&edge1->rect, &edge2->rect) &&
+ edge1->rect.x == edge2->rect.x;
+ }
+ else if (edge1->rect.height == 0 && edge2->rect.height == 0)
+ {
+ return meta_rectangle_horiz_overlap (&edge1->rect, &edge2->rect) &&
+ edge1->rect.y == edge2->rect.y;
+ }
+ else
+ {
+ return FALSE;
+ }
+}
+
+static gboolean
+rectangle_and_edge_intersection (const MetaRectangle *rect,
+ const MetaEdge *edge,
+ MetaEdge *overlap,
+ int *handle_type)
+{
+ const MetaRectangle *rect2 = &edge->rect;
+ MetaRectangle *result = &overlap->rect;
+ gboolean intersect = TRUE;
+
+ /* We don't know how to set these, so set them to invalid values */
+ overlap->edge_type = -1;
+ overlap->side_type = -1;
+
+ /* Figure out what the intersection is */
+ result->x = MAX (rect->x, rect2->x);
+ result->y = MAX (rect->y, rect2->y);
+ result->width = MIN (BOX_RIGHT (*rect), BOX_RIGHT (*rect2)) - result->x;
+ result->height = MIN (BOX_BOTTOM (*rect), BOX_BOTTOM (*rect2)) - result->y;
+
+ /* Find out if the intersection is empty; have to do it this way since
+ * edges have a thickness of 0
+ */
+ if ((result->width < 0 || result->height < 0) ||
+ (result->width == 0 && result->height == 0))
+ {
+ result->width = 0;
+ result->height = 0;
+ intersect = FALSE;
+ }
+ else
+ {
+ /* Need to figure out the handle_type, a somewhat weird quantity:
+ * 0 - overlap is in middle of rect
+ * -1 - overlap is at the side of rect, and is on the opposite side
+ * of rect than the edge->side_type side
+ * 1 - overlap is at the side of rect, and the side of rect it is
+ * on is the edge->side_type side
+ */
+ switch (edge->side_type)
+ {
+ case META_SIDE_LEFT:
+ if (result->x == rect->x)
+ *handle_type = 1;
+ else if (result->x == BOX_RIGHT (*rect))
+ *handle_type = -1;
+ else
+ *handle_type = 0;
+ break;
+ case META_SIDE_RIGHT:
+ if (result->x == rect->x)
+ *handle_type = -1;
+ else if (result->x == BOX_RIGHT (*rect))
+ *handle_type = 1;
+ else
+ *handle_type = 0;
+ break;
+ case META_SIDE_TOP:
+ if (result->y == rect->y)
+ *handle_type = 1;
+ else if (result->y == BOX_BOTTOM (*rect))
+ *handle_type = -1;
+ else
+ *handle_type = 0;
+ break;
+ case META_SIDE_BOTTOM:
+ if (result->y == rect->y)
+ *handle_type = -1;
+ else if (result->y == BOX_BOTTOM (*rect))
+ *handle_type = 1;
+ else
+ *handle_type = 0;
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+ }
+ return intersect;
+}
+
+/* Add all edges of the given rect to cur_edges and return the result. If
+ * rect_is_internal is false, the side types are switched (LEFT<->RIGHT and
+ * TOP<->BOTTOM).
+ */
+static GList*
+add_edges (GList *cur_edges,
+ const MetaRectangle *rect,
+ gboolean rect_is_internal)
+{
+ MetaEdge *temp_edge;
+ int i;
+
+ for (i=0; i<4; i++)
+ {
+ temp_edge = g_new (MetaEdge, 1);
+ temp_edge->rect = *rect;
+ switch (i)
+ {
+ case 0:
+ temp_edge->side_type =
+ rect_is_internal ? META_SIDE_LEFT : META_SIDE_RIGHT;
+ temp_edge->rect.width = 0;
+ break;
+ case 1:
+ temp_edge->side_type =
+ rect_is_internal ? META_SIDE_RIGHT : META_SIDE_LEFT;
+ temp_edge->rect.x += temp_edge->rect.width;
+ temp_edge->rect.width = 0;
+ break;
+ case 2:
+ temp_edge->side_type =
+ rect_is_internal ? META_SIDE_TOP : META_SIDE_BOTTOM;
+ temp_edge->rect.height = 0;
+ break;
+ case 3:
+ temp_edge->side_type =
+ rect_is_internal ? META_SIDE_BOTTOM : META_SIDE_TOP;
+ temp_edge->rect.y += temp_edge->rect.height;
+ temp_edge->rect.height = 0;
+ break;
+ }
+ temp_edge->edge_type = META_EDGE_SCREEN;
+ cur_edges = g_list_prepend (cur_edges, temp_edge);
+ }
+
+ return cur_edges;
+}
+
+/* Remove any part of old_edge that intersects remove and add any resulting
+ * edges to cur_list. Return cur_list when finished.
+ */
+static GList*
+split_edge (GList *cur_list,
+ const MetaEdge *old_edge,
+ const MetaEdge *remove)
+{
+ MetaEdge *temp_edge;
+ switch (old_edge->side_type)
+ {
+ case META_SIDE_LEFT:
+ case META_SIDE_RIGHT:
+ g_assert (meta_rectangle_vert_overlap (&old_edge->rect, &remove->rect));
+ if (BOX_TOP (old_edge->rect) < BOX_TOP (remove->rect))
+ {
+ temp_edge = g_new (MetaEdge, 1);
+ *temp_edge = *old_edge;
+ temp_edge->rect.height = BOX_TOP (remove->rect)
+ - BOX_TOP (old_edge->rect);
+ cur_list = g_list_prepend (cur_list, temp_edge);
+ }
+ if (BOX_BOTTOM (old_edge->rect) > BOX_BOTTOM (remove->rect))
+ {
+ temp_edge = g_new (MetaEdge, 1);
+ *temp_edge = *old_edge;
+ temp_edge->rect.y = BOX_BOTTOM (remove->rect);
+ temp_edge->rect.height = BOX_BOTTOM (old_edge->rect)
+ - BOX_BOTTOM (remove->rect);
+ cur_list = g_list_prepend (cur_list, temp_edge);
+ }
+ break;
+ case META_SIDE_TOP:
+ case META_SIDE_BOTTOM:
+ g_assert (meta_rectangle_horiz_overlap (&old_edge->rect, &remove->rect));
+ if (BOX_LEFT (old_edge->rect) < BOX_LEFT (remove->rect))
+ {
+ temp_edge = g_new (MetaEdge, 1);
+ *temp_edge = *old_edge;
+ temp_edge->rect.width = BOX_LEFT (remove->rect)
+ - BOX_LEFT (old_edge->rect);
+ cur_list = g_list_prepend (cur_list, temp_edge);
+ }
+ if (BOX_RIGHT (old_edge->rect) > BOX_RIGHT (remove->rect))
+ {
+ temp_edge = g_new (MetaEdge, 1);
+ *temp_edge = *old_edge;
+ temp_edge->rect.x = BOX_RIGHT (remove->rect);
+ temp_edge->rect.width = BOX_RIGHT (old_edge->rect)
+ - BOX_RIGHT (remove->rect);
+ cur_list = g_list_prepend (cur_list, temp_edge);
+ }
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ return cur_list;
+}
+
+/* Split up edge and remove preliminary edges from strut_edges depending on
+ * if and how rect and edge intersect.
+ */
+static void
+fix_up_edges (MetaRectangle *rect, MetaEdge *edge,
+ GList **strut_edges, GList **edge_splits,
+ gboolean *edge_needs_removal)
+{
+ MetaEdge overlap;
+ int handle_type;
+
+ if (!rectangle_and_edge_intersection (rect, edge, &overlap, &handle_type))
+ return;
+
+ if (handle_type == 0 || handle_type == 1)
+ {
+ /* Put the result of removing overlap from edge into edge_splits */
+ *edge_splits = split_edge (*edge_splits, edge, &overlap);
+ *edge_needs_removal = TRUE;
+ }
+
+ if (handle_type == -1 || handle_type == 1)
+ {
+ /* Remove the overlap from strut_edges */
+ /* First, loop over the edges of the strut */
+ GList *tmp = *strut_edges;
+ while (tmp)
+ {
+ MetaEdge *cur = tmp->data;
+ /* If this is the edge that overlaps, then we need to split it */
+ if (edges_overlap (cur, &overlap))
+ {
+ GList *delete_me = tmp;
+
+ /* Split this edge into some new ones */
+ *strut_edges = split_edge (*strut_edges, cur, &overlap);
+
+ /* Delete the old one */
+ tmp = tmp->next;
+ g_free (cur);
+ *strut_edges = g_list_delete_link (*strut_edges, delete_me);
+ }
+ else
+ tmp = tmp->next;
+ }
+ }
+}
+
+/* This function removes intersections of edges with the rectangles from the
+ * list of edges.
+ */
+GList*
+meta_rectangle_remove_intersections_with_boxes_from_edges (
+ GList *edges,
+ const GSList *rectangles)
+{
+ const GSList *rect_iter;
+ const int opposing = 1;
+
+ /* Now remove all intersections of rectangles with the edge list */
+ rect_iter = rectangles;
+ while (rect_iter)
+ {
+ MetaRectangle *rect = rect_iter->data;
+ GList *edge_iter = edges;
+ while (edge_iter)
+ {
+ MetaEdge *edge = edge_iter->data;
+ MetaEdge overlap;
+ int handle;
+ gboolean edge_iter_advanced = FALSE;
+
+ /* If this edge overlaps with this rect... */
+ if (rectangle_and_edge_intersection (rect, edge, &overlap, &handle))
+ {
+
+ /* "Intersections" where the edges touch but are opposite
+ * sides (e.g. a left edge against the right edge) should not
+ * be split. Note that the comments in
+ * rectangle_and_edge_intersection() say that opposing edges
+ * occur when handle is -1, BUT you need to remember that we
+ * treat the left side of a window as a right edge because
+ * it's what the right side of the window being moved should
+ * be-resisted-by/snap-to. So opposing is really 1. Anyway,
+ * we just keep track of it in the opposing constant set up
+ * above and if handle isn't equal to that, then we know the
+ * edge should be split.
+ */
+ if (handle != opposing)
+ {
+ /* Keep track of this edge so we can delete it below */
+ GList *delete_me = edge_iter;
+ edge_iter = edge_iter->next;
+ edge_iter_advanced = TRUE;
+
+ /* Split the edge and add the result to beginning of edges */
+ edges = split_edge (edges, edge, &overlap);
+
+ /* Now free the edge... */
+ g_free (edge);
+ edges = g_list_delete_link (edges, delete_me);
+ }
+ }
+
+ if (!edge_iter_advanced)
+ edge_iter = edge_iter->next;
+ }
+
+ rect_iter = rect_iter->next;
+ }
+
+ return edges;
+}
+
+/* This function is trying to find all the edges of an onscreen region. */
+GList*
+meta_rectangle_find_onscreen_edges (const MetaRectangle *basic_rect,
+ const GSList *all_struts)
+{
+ GList *ret;
+ GList *fixed_strut_rects;
+ GList *edge_iter;
+ const GList *strut_rect_iter;
+
+ /* The algorithm is basically as follows:
+ * Make sure the struts are disjoint
+ * Initialize the edge_set to the edges of basic_rect
+ * Foreach strut:
+ * Put together a preliminary new edge from the edges of the strut
+ * Foreach edge in edge_set:
+ * - Split the edge if it is partially contained inside the strut
+ * - If the edge matches an edge of the strut (i.e. a strut just
+ * against the edge of the screen or a not-next-to-edge-of-screen
+ * strut adjacent to another), then both the edge from the
+ * edge_set and the preliminary edge for the strut will need to
+ * be split
+ * Add any remaining "preliminary" strut edges to the edge_set
+ */
+
+ /* Make sure the struts are disjoint */
+ fixed_strut_rects =
+ get_disjoint_strut_rect_list_in_region (all_struts, basic_rect);
+
+ /* Start off the list with the edges of basic_rect */
+ ret = add_edges (NULL, basic_rect, TRUE);
+
+ strut_rect_iter = fixed_strut_rects;
+ while (strut_rect_iter)
+ {
+ MetaRectangle *strut_rect = (MetaRectangle*) strut_rect_iter->data;
+
+ /* Get the new possible edges we may need to add from the strut */
+ GList *new_strut_edges = add_edges (NULL, strut_rect, FALSE);
+
+ edge_iter = ret;
+ while (edge_iter)
+ {
+ MetaEdge *cur_edge = edge_iter->data;
+ GList *splits_of_cur_edge = NULL;
+ gboolean edge_needs_removal = FALSE;
+
+ fix_up_edges (strut_rect, cur_edge,
+ &new_strut_edges, &splits_of_cur_edge,
+ &edge_needs_removal);
+
+ if (edge_needs_removal)
+ {
+ /* Delete the old edge */
+ GList *delete_me = edge_iter;
+ edge_iter = edge_iter->next;
+ g_free (cur_edge);
+ ret = g_list_delete_link (ret, delete_me);
+
+ /* Add the new split parts of the edge */
+ ret = g_list_concat (splits_of_cur_edge, ret);
+ }
+ else
+ {
+ edge_iter = edge_iter->next;
+ }
+
+ /* edge_iter was already advanced above */
+ }
+
+ ret = g_list_concat (new_strut_edges, ret);
+ strut_rect_iter = strut_rect_iter->next;
+ }
+
+ /* Sort the list */
+ ret = g_list_sort (ret, meta_rectangle_edge_cmp);
+
+ /* Free the fixed struts list */
+ meta_rectangle_free_list_and_elements (fixed_strut_rects);
+
+ return ret;
+}
+
+GList*
+meta_rectangle_find_nonintersected_xinerama_edges (
+ const GList *xinerama_rects,
+ const GSList *all_struts)
+{
+ /* This function cannot easily be merged with
+ * meta_rectangle_find_onscreen_edges() because real screen edges
+ * and strut edges both are of the type "there ain't anything
+ * immediately on the other side"; xinerama edges are different.
+ */
+ GList *ret;
+ const GList *cur;
+ GSList *temp_rects;
+
+ /* Initialize the return list to be empty */
+ ret = NULL;
+
+ /* start of ret with all the edges of xineramas that are adjacent to
+ * another xinerama.
+ */
+ cur = xinerama_rects;
+ while (cur)
+ {
+ MetaRectangle *cur_rect = cur->data;
+ const GList *compare = xinerama_rects;
+ while (compare)
+ {
+ MetaRectangle *compare_rect = compare->data;
+
+ /* Check if cur might be horizontally adjacent to compare */
+ if (meta_rectangle_vert_overlap(cur_rect, compare_rect))
+ {
+ MetaSide side_type;
+ int y = MAX (cur_rect->y, compare_rect->y);
+ int height = MIN (BOX_BOTTOM (*cur_rect) - y,
+ BOX_BOTTOM (*compare_rect) - y);
+ int width = 0;
+ int x;
+
+ if (BOX_LEFT (*cur_rect) == BOX_RIGHT (*compare_rect))
+ {
+ /* compare_rect is to the left of cur_rect */
+ x = BOX_LEFT (*cur_rect);
+ side_type = META_SIDE_LEFT;
+ }
+ else if (BOX_RIGHT (*cur_rect) == BOX_LEFT (*compare_rect))
+ {
+ /* compare_rect is to the right of cur_rect */
+ x = BOX_RIGHT (*cur_rect);
+ side_type = META_SIDE_RIGHT;
+ }
+ else
+ /* These rectangles aren't adjacent after all */
+ x = INT_MIN;
+
+ /* If the rectangles really are adjacent */
+ if (x != INT_MIN)
+ {
+ /* We need a left edge for the xinerama on the right, and
+ * a right edge for the xinerama on the left. Just fill
+ * up the edges and stick 'em on the list.
+ */
+ MetaEdge *new_edge = g_new (MetaEdge, 1);
+
+ new_edge->rect = meta_rect (x, y, width, height);
+ new_edge->side_type = side_type;
+ new_edge->edge_type = META_EDGE_XINERAMA;
+
+ ret = g_list_prepend (ret, new_edge);
+ }
+ }
+
+ /* Check if cur might be vertically adjacent to compare */
+ if (meta_rectangle_horiz_overlap(cur_rect, compare_rect))
+ {
+ MetaSide side_type;
+ int x = MAX (cur_rect->x, compare_rect->x);
+ int width = MIN (BOX_RIGHT (*cur_rect) - x,
+ BOX_RIGHT (*compare_rect) - x);
+ int height = 0;
+ int y;
+
+ if (BOX_TOP (*cur_rect) == BOX_BOTTOM (*compare_rect))
+ {
+ /* compare_rect is to the top of cur_rect */
+ y = BOX_TOP (*cur_rect);
+ side_type = META_SIDE_TOP;
+ }
+ else if (BOX_BOTTOM (*cur_rect) == BOX_TOP (*compare_rect))
+ {
+ /* compare_rect is to the bottom of cur_rect */
+ y = BOX_BOTTOM (*cur_rect);
+ side_type = META_SIDE_BOTTOM;
+ }
+ else
+ /* These rectangles aren't adjacent after all */
+ y = INT_MIN;
+
+ /* If the rectangles really are adjacent */
+ if (y != INT_MIN)
+ {
+ /* We need a top edge for the xinerama on the bottom, and
+ * a bottom edge for the xinerama on the top. Just fill
+ * up the edges and stick 'em on the list.
+ */
+ MetaEdge *new_edge = g_new (MetaEdge, 1);
+
+ new_edge->rect = meta_rect (x, y, width, height);
+ new_edge->side_type = side_type;
+ new_edge->edge_type = META_EDGE_XINERAMA;
+
+ ret = g_list_prepend (ret, new_edge);
+ }
+ }
+
+ compare = compare->next;
+ }
+ cur = cur->next;
+ }
+
+ temp_rects = NULL;
+ for (; all_struts; all_struts = all_struts->next)
+ temp_rects = g_slist_prepend (temp_rects,
+ &((MetaStrut*)all_struts->data)->rect);
+ ret = meta_rectangle_remove_intersections_with_boxes_from_edges (ret,
+ temp_rects);
+ g_slist_free (temp_rects);
+
+ /* Sort the list */
+ ret = g_list_sort (ret, meta_rectangle_edge_cmp);
+
+ return ret;
+}
diff --git a/src/core/constraints.c b/src/core/constraints.c
new file mode 100644
index 00000000..6abc7d5c
--- /dev/null
+++ b/src/core/constraints.c
@@ -0,0 +1,1382 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco size/position constraints */
+
+/*
+ * Copyright (C) 2002, 2003 Red Hat, Inc.
+ * Copyright (C) 2003, 2004 Rob Adams
+ * Copyright (C) 2005, 2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "constraints.h"
+#include "workspace.h"
+#include "place.h"
+#include "prefs.h"
+
+#include <stdlib.h>
+#include <math.h>
+
+#if 0
+ // This is the short and sweet version of how to hack on this file; see
+ // doc/how-constraints-works.txt for the gory details. The basics of
+ // understanding this file can be shown by the steps needed to add a new
+ // constraint, which are:
+ // 1) Add a new entry in the ConstraintPriority enum; higher values
+ // have higher priority
+ // 2) Write a new function following the format of the example below,
+ // "constrain_whatever".
+ // 3) Add your function to the all_constraints and all_constraint_names
+ // arrays (the latter of which is for debugging purposes)
+ //
+ // An example constraint function, constrain_whatever:
+ //
+ // /* constrain_whatever does the following:
+ // * Quits (returning true) if priority is higher than PRIORITY_WHATEVER
+ // * If check_only is TRUE
+ // * Returns whether the constraint is satisfied or not
+ // * otherwise
+ // * Enforces the constraint
+ // * Note that the value of PRIORITY_WHATEVER is centralized with the
+ // * priorities of other constraints in the definition of ConstrainPriority
+ // * for easier maintenance and shuffling of priorities.
+ // */
+ // static gboolean
+ // constrain_whatever (MetaWindow *window,
+ // ConstraintInfo *info,
+ // ConstraintPriority priority,
+ // gboolean check_only)
+ // {
+ // if (priority > PRIORITY_WHATEVER)
+ // return TRUE;
+ //
+ // /* Determine whether constraint applies; note that if the constraint
+ // * cannot possibly be satisfied, constraint_applies should be set to
+ // * false. If we don't do this, all constraints with a lesser priority
+ // * will be dropped along with this one, and we'd rather apply as many as
+ // * possible.
+ // */
+ // if (!constraint_applies)
+ // return TRUE;
+ //
+ // /* Determine whether constraint is already satisfied; if we're only
+ // * checking the status of whether the constraint is satisfied, we end
+ // * here.
+ // */
+ // if (check_only || constraint_already_satisfied)
+ // return constraint_already_satisfied;
+ //
+ // /* Enforce constraints */
+ // return TRUE; /* Note that we exited early if check_only is FALSE; also,
+ // * we know we can return TRUE here because we exited early
+ // * if the constraint could not be satisfied; not that the
+ // * return value is heeded in this case...
+ // */
+ // }
+#endif
+
+typedef enum
+{
+ PRIORITY_MINIMUM = 0, /* Dummy value used for loop start = min(all priorities) */
+ PRIORITY_ASPECT_RATIO = 0,
+ PRIORITY_ENTIRELY_VISIBLE_ON_SINGLE_XINERAMA = 0,
+ PRIORITY_ENTIRELY_VISIBLE_ON_WORKAREA = 1,
+ PRIORITY_SIZE_HINTS_INCREMENTS = 1,
+ PRIORITY_MAXIMIZATION = 2,
+ PRIORITY_FULLSCREEN = 2,
+ PRIORITY_SIZE_HINTS_LIMITS = 3,
+ PRIORITY_TITLEBAR_VISIBLE = 4,
+ PRIORITY_PARTIALLY_VISIBLE_ON_WORKAREA = 4,
+ PRIORITY_MAXIMUM = 4 /* Dummy value used for loop end = max(all priorities) */
+} ConstraintPriority;
+
+typedef enum
+{
+ ACTION_MOVE,
+ ACTION_RESIZE,
+ ACTION_MOVE_AND_RESIZE
+} ActionType;
+
+typedef struct
+{
+ MetaRectangle orig;
+ MetaRectangle current;
+ MetaFrameGeometry *fgeom;
+ ActionType action_type;
+ gboolean is_user_action;
+
+ /* I know that these two things probably look similar at first, but they
+ * have much different uses. See doc/how-constraints-works.txt for for
+ * explanation of the differences and similarity between resize_gravity
+ * and fixed_directions
+ */
+ int resize_gravity;
+ FixedDirections fixed_directions;
+
+ /* work_area_xinerama - current xinerama region minus struts
+ * entire_xinerama - current xienrama, including strut regions
+ */
+ MetaRectangle work_area_xinerama;
+ MetaRectangle entire_xinerama;
+
+ /* Spanning rectangles for the non-covered (by struts) region of the
+ * screen and also for just the current xinerama
+ */
+ GList *usable_screen_region;
+ GList *usable_xinerama_region;
+} ConstraintInfo;
+
+static gboolean constrain_maximization (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only);
+static gboolean constrain_fullscreen (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only);
+static gboolean constrain_size_increments (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only);
+static gboolean constrain_size_limits (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only);
+static gboolean constrain_aspect_ratio (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only);
+static gboolean constrain_to_single_xinerama (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only);
+static gboolean constrain_fully_onscreen (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only);
+static gboolean constrain_titlebar_visible (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only);
+static gboolean constrain_partially_onscreen (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only);
+
+static void setup_constraint_info (ConstraintInfo *info,
+ MetaWindow *window,
+ MetaFrameGeometry *orig_fgeom,
+ MetaMoveResizeFlags flags,
+ int resize_gravity,
+ const MetaRectangle *orig,
+ MetaRectangle *new);
+static void place_window_if_needed (MetaWindow *window,
+ ConstraintInfo *info);
+static void update_onscreen_requirements (MetaWindow *window,
+ ConstraintInfo *info);
+static void extend_by_frame (MetaRectangle *rect,
+ const MetaFrameGeometry *fgeom);
+static void unextend_by_frame (MetaRectangle *rect,
+ const MetaFrameGeometry *fgeom);
+static inline void get_size_limits (const MetaWindow *window,
+ const MetaFrameGeometry *fgeom,
+ gboolean include_frame,
+ MetaRectangle *min_size,
+ MetaRectangle *max_size);
+
+typedef gboolean (* ConstraintFunc) (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only);
+
+typedef struct {
+ ConstraintFunc func;
+ const char* name;
+} Constraint;
+
+static const Constraint all_constraints[] = {
+ {constrain_maximization, "constrain_maximization"},
+ {constrain_fullscreen, "constrain_fullscreen"},
+ {constrain_size_increments, "constrain_size_increments"},
+ {constrain_size_limits, "constrain_size_limits"},
+ {constrain_aspect_ratio, "constrain_aspect_ratio"},
+ {constrain_to_single_xinerama, "constrain_to_single_xinerama"},
+ {constrain_fully_onscreen, "constrain_fully_onscreen"},
+ {constrain_titlebar_visible, "constrain_titlebar_visible"},
+ {constrain_partially_onscreen, "constrain_partially_onscreen"},
+ {NULL, NULL}
+};
+
+static gboolean
+do_all_constraints (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only)
+{
+ const Constraint *constraint;
+ gboolean satisfied;
+
+ constraint = &all_constraints[0];
+ satisfied = TRUE;
+ while (constraint->func != NULL)
+ {
+ satisfied = satisfied &&
+ (*constraint->func) (window, info, priority, check_only);
+
+ if (!check_only)
+ {
+ /* Log how the constraint modified the position */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "info->current is %d,%d +%d,%d after %s\n",
+ info->current.x, info->current.y,
+ info->current.width, info->current.height,
+ constraint->name);
+ }
+ else if (!satisfied)
+ {
+ /* Log which constraint was not satisfied */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "constraint %s not satisfied.\n",
+ constraint->name);
+ return FALSE;
+ }
+ ++constraint;
+ }
+
+ return TRUE;
+}
+
+void
+meta_window_constrain (MetaWindow *window,
+ MetaFrameGeometry *orig_fgeom,
+ MetaMoveResizeFlags flags,
+ int resize_gravity,
+ const MetaRectangle *orig,
+ MetaRectangle *new)
+{
+ ConstraintInfo info;
+ ConstraintPriority priority = PRIORITY_MINIMUM;
+ gboolean satisfied = FALSE;
+
+ /* WARNING: orig and new specify positions and sizes of the inner window,
+ * not the outer. This is a common gotcha since half the constraints
+ * deal with inner window position/size and half deal with outer. See
+ * doc/how-constraints-works.txt for more information.
+ */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Constraining %s in move from %d,%d %dx%d to %d,%d %dx%d\n",
+ window->desc,
+ orig->x, orig->y, orig->width, orig->height,
+ new->x, new->y, new->width, new->height);
+
+ setup_constraint_info (&info,
+ window,
+ orig_fgeom,
+ flags,
+ resize_gravity,
+ orig,
+ new);
+ place_window_if_needed (window, &info);
+
+ while (!satisfied && priority <= PRIORITY_MAXIMUM) {
+ gboolean check_only = TRUE;
+
+ /* Individually enforce all the high-enough priority constraints */
+ do_all_constraints (window, &info, priority, !check_only);
+
+ /* Check if all high-enough priority constraints are simultaneously
+ * satisfied
+ */
+ satisfied = do_all_constraints (window, &info, priority, check_only);
+
+ /* Drop the least important constraints if we can't satisfy them all */
+ priority++;
+ }
+
+ /* Make sure we use the constrained position */
+ *new = info.current;
+
+ /* We may need to update window->require_fully_onscreen,
+ * window->require_on_single_xinerama, and perhaps other quantities
+ * if this was a user move or user move-and-resize operation.
+ */
+ update_onscreen_requirements (window, &info);
+
+ /* Ew, what an ugly way to do things. Destructors (in a real OOP language,
+ * not gobject-style--gobject would be more pain than it's worth) or
+ * smart pointers would be so much nicer here. *shrug*
+ */
+ if (!orig_fgeom)
+ g_free (info.fgeom);
+}
+
+static void
+setup_constraint_info (ConstraintInfo *info,
+ MetaWindow *window,
+ MetaFrameGeometry *orig_fgeom,
+ MetaMoveResizeFlags flags,
+ int resize_gravity,
+ const MetaRectangle *orig,
+ MetaRectangle *new)
+{
+ const MetaXineramaScreenInfo *xinerama_info;
+ MetaWorkspace *cur_workspace;
+
+ info->orig = *orig;
+ info->current = *new;
+
+ /* Create a fake frame geometry if none really exists */
+ if (orig_fgeom && !window->fullscreen)
+ info->fgeom = orig_fgeom;
+ else
+ info->fgeom = g_new0 (MetaFrameGeometry, 1);
+
+ if (flags & META_IS_MOVE_ACTION && flags & META_IS_RESIZE_ACTION)
+ info->action_type = ACTION_MOVE_AND_RESIZE;
+ else if (flags & META_IS_RESIZE_ACTION)
+ info->action_type = ACTION_RESIZE;
+ else if (flags & META_IS_MOVE_ACTION)
+ info->action_type = ACTION_MOVE;
+ else
+ g_error ("BAD, BAD developer! No treat for you! (Fix your calls to "
+ "meta_window_move_resize_internal()).\n");
+
+ info->is_user_action = (flags & META_IS_USER_ACTION);
+
+ info->resize_gravity = resize_gravity;
+
+ /* FIXME: fixed_directions might be more sane if we (a) made it
+ * depend on the grab_op type instead of current amount of movement
+ * (thus implying that it only has effect when user_action is true,
+ * and (b) ignored it for aspect ratio windows -- at least in those
+ * cases where both directions do actually change size.
+ */
+ info->fixed_directions = FIXED_DIRECTION_NONE;
+ /* If x directions don't change but either y direction does */
+ if ( orig->x == new->x && orig->x + orig->width == new->x + new->width &&
+ (orig->y != new->y || orig->y + orig->height != new->y + new->height))
+ {
+ info->fixed_directions = FIXED_DIRECTION_X;
+ }
+ /* If y directions don't change but either x direction does */
+ if ( orig->y == new->y && orig->y + orig->height == new->y + new->height &&
+ (orig->x != new->x || orig->x + orig->width != new->x + new->width ))
+ {
+ info->fixed_directions = FIXED_DIRECTION_Y;
+ }
+ /* The point of fixed directions is just that "move to nearest valid
+ * position" is sometimes a poorer choice than "move to nearest
+ * valid position but only change this coordinate" for windows the
+ * user is explicitly moving. This isn't ever true for things that
+ * aren't explicit user interaction, though, so just clear it out.
+ */
+ if (!info->is_user_action)
+ info->fixed_directions = FIXED_DIRECTION_NONE;
+
+ xinerama_info =
+ meta_screen_get_xinerama_for_rect (window->screen, &info->current);
+ meta_window_get_work_area_for_xinerama (window,
+ xinerama_info->number,
+ &info->work_area_xinerama);
+
+ if (!window->fullscreen || window->fullscreen_monitors[0] == -1)
+ {
+ info->entire_xinerama = xinerama_info->rect;
+ }
+ else
+ {
+ int i = 0;
+ long monitor;
+
+ monitor = window->fullscreen_monitors[i];
+ info->entire_xinerama =
+ window->screen->xinerama_infos[monitor].rect;
+ for (i = 1; i <= 3; i++)
+ {
+ monitor = window->fullscreen_monitors[i];
+ meta_rectangle_union (&info->entire_xinerama,
+ &window->screen->xinerama_infos[monitor].rect,
+ &info->entire_xinerama);
+ }
+ }
+
+ cur_workspace = window->screen->active_workspace;
+ info->usable_screen_region =
+ meta_workspace_get_onscreen_region (cur_workspace);
+ info->usable_xinerama_region =
+ meta_workspace_get_onxinerama_region (cur_workspace,
+ xinerama_info->number);
+
+ /* Workaround braindead legacy apps that don't know how to
+ * fullscreen themselves properly.
+ */
+ if (meta_prefs_get_force_fullscreen() &&
+ meta_rectangle_equal (new, &xinerama_info->rect) &&
+ window->has_fullscreen_func &&
+ !window->fullscreen)
+ {
+ /*
+ meta_topic (META_DEBUG_GEOMETRY,
+ */
+ meta_warning (
+ "Treating resize request of legacy application %s as a "
+ "fullscreen request\n",
+ window->desc);
+ meta_window_make_fullscreen_internal (window);
+ }
+
+ /* Log all this information for debugging */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Setting up constraint info:\n"
+ " orig: %d,%d +%d,%d\n"
+ " new : %d,%d +%d,%d\n"
+ " fgeom: %d,%d,%d,%d\n"
+ " action_type : %s\n"
+ " is_user_action : %s\n"
+ " resize_gravity : %s\n"
+ " fixed_directions: %s\n"
+ " work_area_xinerama: %d,%d +%d,%d\n"
+ " entire_xinerama : %d,%d +%d,%d\n",
+ info->orig.x, info->orig.y, info->orig.width, info->orig.height,
+ info->current.x, info->current.y,
+ info->current.width, info->current.height,
+ info->fgeom->left_width, info->fgeom->right_width,
+ info->fgeom->top_height, info->fgeom->bottom_height,
+ (info->action_type == ACTION_MOVE) ? "Move" :
+ (info->action_type == ACTION_RESIZE) ? "Resize" :
+ (info->action_type == ACTION_MOVE_AND_RESIZE) ? "Move&Resize" :
+ "Freakin' Invalid Stupid",
+ (info->is_user_action) ? "true" : "false",
+ meta_gravity_to_string (info->resize_gravity),
+ (info->fixed_directions == FIXED_DIRECTION_NONE) ? "None" :
+ (info->fixed_directions == FIXED_DIRECTION_X) ? "X fixed" :
+ (info->fixed_directions == FIXED_DIRECTION_Y) ? "Y fixed" :
+ "Freakin' Invalid Stupid",
+ info->work_area_xinerama.x, info->work_area_xinerama.y,
+ info->work_area_xinerama.width,
+ info->work_area_xinerama.height,
+ info->entire_xinerama.x, info->entire_xinerama.y,
+ info->entire_xinerama.width, info->entire_xinerama.height);
+}
+
+static void
+place_window_if_needed(MetaWindow *window,
+ ConstraintInfo *info)
+{
+ gboolean did_placement;
+
+ /* Do placement if any, so we go ahead and apply position
+ * constraints in a move-only context. Don't place
+ * maximized/minimized/fullscreen windows until they are
+ * unmaximized, unminimized and unfullscreened.
+ */
+ did_placement = FALSE;
+ if (!window->placed &&
+ window->calc_placement &&
+ !(window->maximized_horizontally ||
+ window->maximized_vertically) &&
+ !window->minimized &&
+ !window->fullscreen)
+ {
+ MetaRectangle placed_rect = info->orig;
+ MetaWorkspace *cur_workspace;
+ const MetaXineramaScreenInfo *xinerama_info;
+
+ meta_window_place (window, info->fgeom, info->orig.x, info->orig.y,
+ &placed_rect.x, &placed_rect.y);
+ did_placement = TRUE;
+
+ /* placing the window may have changed the xinerama. Find the
+ * new xinerama and update the ConstraintInfo
+ */
+ xinerama_info =
+ meta_screen_get_xinerama_for_rect (window->screen, &placed_rect);
+ info->entire_xinerama = xinerama_info->rect;
+ meta_window_get_work_area_for_xinerama (window,
+ xinerama_info->number,
+ &info->work_area_xinerama);
+ cur_workspace = window->screen->active_workspace;
+ info->usable_xinerama_region =
+ meta_workspace_get_onxinerama_region (cur_workspace,
+ xinerama_info->number);
+
+
+ info->current.x = placed_rect.x;
+ info->current.y = placed_rect.y;
+
+ /* Since we just barely placed the window, there's no reason to
+ * consider any of the directions fixed.
+ */
+ info->fixed_directions = FIXED_DIRECTION_NONE;
+ }
+
+ if (window->placed || did_placement)
+ {
+ if (window->maximize_horizontally_after_placement ||
+ window->maximize_vertically_after_placement ||
+ window->fullscreen_after_placement)
+ {
+ /* define a sane saved_rect so that the user can unmaximize or
+ * make unfullscreen to something reasonable.
+ */
+ if (info->current.width >= info->work_area_xinerama.width)
+ {
+ info->current.width = .75 * info->work_area_xinerama.width;
+ info->current.x = info->work_area_xinerama.x +
+ .125 * info->work_area_xinerama.width;
+ }
+ if (info->current.height >= info->work_area_xinerama.height)
+ {
+ info->current.height = .75 * info->work_area_xinerama.height;
+ info->current.y = info->work_area_xinerama.y +
+ .083 * info->work_area_xinerama.height;
+ }
+
+ if (window->maximize_horizontally_after_placement ||
+ window->maximize_vertically_after_placement)
+ meta_window_maximize_internal (window,
+ (window->maximize_horizontally_after_placement ?
+ META_MAXIMIZE_HORIZONTAL : 0 ) |
+ (window->maximize_vertically_after_placement ?
+ META_MAXIMIZE_VERTICAL : 0), &info->current);
+
+ /* maximization may have changed frame geometry */
+ if (window->frame && !window->fullscreen)
+ meta_frame_calc_geometry (window->frame, info->fgeom);
+
+ if (window->fullscreen_after_placement)
+ {
+ window->saved_rect = info->current;
+ window->fullscreen = TRUE;
+ window->fullscreen_after_placement = FALSE;
+ }
+
+ window->maximize_horizontally_after_placement = FALSE;
+ window->maximize_vertically_after_placement = FALSE;
+ }
+ if (window->minimize_after_placement)
+ {
+ meta_window_minimize (window);
+ window->minimize_after_placement = FALSE;
+ }
+ }
+}
+
+static void
+update_onscreen_requirements (MetaWindow *window,
+ ConstraintInfo *info)
+{
+ gboolean old;
+
+ /* We only apply the various onscreen requirements to normal windows */
+ if (window->type == META_WINDOW_DESKTOP ||
+ window->type == META_WINDOW_DOCK)
+ return;
+
+ /* We don't want to update the requirements for fullscreen windows;
+ * fullscreen windows are specially handled anyway, and it updating
+ * the requirements when windows enter fullscreen mode mess up the
+ * handling of the window when it leaves that mode (especially when
+ * the application sends a bunch of configurerequest events). See
+ * #353699.
+ */
+ if (window->fullscreen)
+ return;
+
+ /* USABILITY NOTE: Naturally, I only want the require_fully_onscreen,
+ * require_on_single_xinerama, and require_titlebar_visible flags to
+ * *become false* due to user interactions (which is allowed since
+ * certain constraints are ignored for user interactions regardless of
+ * the setting of these flags). However, whether to make these flags
+ * *become true* due to just an application interaction is a little
+ * trickier. It's possible that users may find not doing that strange
+ * since two application interactions that resize in opposite ways don't
+ * necessarily end up cancelling--but it may also be strange for the user
+ * to have an application resize the window so that it's onscreen, the
+ * user forgets about it, and then later the app is able to resize itself
+ * off the screen. Anyway, for now, I think the latter is the more
+ * problematic case but this may need to be revisited.
+ */
+
+ /* The require onscreen/on-single-xinerama and titlebar_visible
+ * stuff is relative to the outer window, not the inner
+ */
+ extend_by_frame (&info->current, info->fgeom);
+
+ /* Update whether we want future constraint runs to require the
+ * window to be on fully onscreen.
+ */
+ old = window->require_fully_onscreen;
+ window->require_fully_onscreen =
+ meta_rectangle_contained_in_region (info->usable_screen_region,
+ &info->current);
+ if (old ^ window->require_fully_onscreen)
+ meta_topic (META_DEBUG_GEOMETRY,
+ "require_fully_onscreen for %s toggled to %s\n",
+ window->desc,
+ window->require_fully_onscreen ? "TRUE" : "FALSE");
+
+ /* Update whether we want future constraint runs to require the
+ * window to be on a single xinerama.
+ */
+ old = window->require_on_single_xinerama;
+ window->require_on_single_xinerama =
+ meta_rectangle_contained_in_region (info->usable_xinerama_region,
+ &info->current);
+ if (old ^ window->require_on_single_xinerama)
+ meta_topic (META_DEBUG_GEOMETRY,
+ "require_on_single_xinerama for %s toggled to %s\n",
+ window->desc,
+ window->require_on_single_xinerama ? "TRUE" : "FALSE");
+
+ /* Update whether we want future constraint runs to require the
+ * titlebar to be visible.
+ */
+ if (window->frame && window->decorated)
+ {
+ MetaRectangle titlebar_rect;
+
+ titlebar_rect = info->current;
+ titlebar_rect.height = info->fgeom->top_height;
+ old = window->require_titlebar_visible;
+ window->require_titlebar_visible =
+ meta_rectangle_overlaps_with_region (info->usable_screen_region,
+ &titlebar_rect);
+ if (old ^ window->require_titlebar_visible)
+ meta_topic (META_DEBUG_GEOMETRY,
+ "require_titlebar_visible for %s toggled to %s\n",
+ window->desc,
+ window->require_titlebar_visible ? "TRUE" : "FALSE");
+ }
+
+ /* Don't forget to restore the position of the window */
+ unextend_by_frame (&info->current, info->fgeom);
+}
+
+static void
+extend_by_frame (MetaRectangle *rect,
+ const MetaFrameGeometry *fgeom)
+{
+ rect->x -= fgeom->left_width;
+ rect->y -= fgeom->top_height;
+ rect->width += fgeom->left_width + fgeom->right_width;
+ rect->height += fgeom->top_height + fgeom->bottom_height;
+}
+
+static void
+unextend_by_frame (MetaRectangle *rect,
+ const MetaFrameGeometry *fgeom)
+{
+ rect->x += fgeom->left_width;
+ rect->y += fgeom->top_height;
+ rect->width -= fgeom->left_width + fgeom->right_width;
+ rect->height -= fgeom->top_height + fgeom->bottom_height;
+}
+
+static inline void
+get_size_limits (const MetaWindow *window,
+ const MetaFrameGeometry *fgeom,
+ gboolean include_frame,
+ MetaRectangle *min_size,
+ MetaRectangle *max_size)
+{
+ /* We pack the results into MetaRectangle structs just for convienience; we
+ * don't actually use the position of those rects.
+ */
+ min_size->width = window->size_hints.min_width;
+ min_size->height = window->size_hints.min_height;
+ max_size->width = window->size_hints.max_width;
+ max_size->height = window->size_hints.max_height;
+
+ if (include_frame)
+ {
+ int fw = fgeom->left_width + fgeom->right_width;
+ int fh = fgeom->top_height + fgeom->bottom_height;
+
+ min_size->width += fw;
+ min_size->height += fh;
+ max_size->width += fw;
+ max_size->height += fh;
+ }
+}
+
+static gboolean
+constrain_maximization (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only)
+{
+ MetaRectangle target_size;
+ MetaRectangle min_size, max_size;
+ gboolean hminbad, vminbad;
+ gboolean horiz_equal, vert_equal;
+ gboolean constraint_already_satisfied;
+
+ if (priority > PRIORITY_MAXIMIZATION)
+ return TRUE;
+
+ /* Determine whether constraint applies; exit if it doesn't */
+ if (!window->maximized_horizontally && !window->maximized_vertically)
+ return TRUE;
+
+ /* Calculate target_size = maximized size of (window + frame) */
+ if (window->maximized_horizontally && window->maximized_vertically)
+ target_size = info->work_area_xinerama;
+ else
+ {
+ /* Amount of maximization possible in a single direction depends
+ * on which struts could occlude the window given its current
+ * position. For example, a vertical partial strut on the right
+ * is only relevant for a horizontally maximized window when the
+ * window is at a vertical position where it could be occluded
+ * by that partial strut.
+ */
+ MetaDirection direction;
+ GSList *active_workspace_struts;
+
+ if (window->maximized_horizontally)
+ direction = META_DIRECTION_HORIZONTAL;
+ else
+ direction = META_DIRECTION_VERTICAL;
+ active_workspace_struts = window->screen->active_workspace->all_struts;
+
+ target_size = info->current;
+ extend_by_frame (&target_size, info->fgeom);
+ meta_rectangle_expand_to_avoiding_struts (&target_size,
+ &info->entire_xinerama,
+ direction,
+ active_workspace_struts);
+ }
+ /* Now make target_size = maximized size of client window */
+ unextend_by_frame (&target_size, info->fgeom);
+
+ /* Check min size constraints; max size constraints are ignored for maximized
+ * windows, as per bug 327543.
+ */
+ get_size_limits (window, info->fgeom, FALSE, &min_size, &max_size);
+ hminbad = target_size.width < min_size.width && window->maximized_horizontally;
+ vminbad = target_size.height < min_size.height && window->maximized_vertically;
+ if (hminbad || vminbad)
+ return TRUE;
+
+ /* Determine whether constraint is already satisfied; exit if it is */
+ horiz_equal = target_size.x == info->current.x &&
+ target_size.width == info->current.width;
+ vert_equal = target_size.y == info->current.y &&
+ target_size.height == info->current.height;
+ constraint_already_satisfied =
+ (horiz_equal || !window->maximized_horizontally) &&
+ (vert_equal || !window->maximized_vertically);
+ if (check_only || constraint_already_satisfied)
+ return constraint_already_satisfied;
+
+ /*** Enforce constraint ***/
+ if (window->maximized_horizontally)
+ {
+ info->current.x = target_size.x;
+ info->current.width = target_size.width;
+ }
+ if (window->maximized_vertically)
+ {
+ info->current.y = target_size.y;
+ info->current.height = target_size.height;
+ }
+ return TRUE;
+}
+
+static gboolean
+constrain_fullscreen (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only)
+{
+ MetaRectangle min_size, max_size, xinerama;
+ gboolean too_big, too_small, constraint_already_satisfied;
+
+ if (priority > PRIORITY_FULLSCREEN)
+ return TRUE;
+
+ /* Determine whether constraint applies; exit if it doesn't */
+ if (!window->fullscreen)
+ return TRUE;
+
+ xinerama = info->entire_xinerama;
+
+ get_size_limits (window, info->fgeom, FALSE, &min_size, &max_size);
+ too_big = !meta_rectangle_could_fit_rect (&xinerama, &min_size);
+ too_small = !meta_rectangle_could_fit_rect (&max_size, &xinerama);
+ if (too_big || too_small)
+ return TRUE;
+
+ /* Determine whether constraint is already satisfied; exit if it is */
+ constraint_already_satisfied =
+ meta_rectangle_equal (&info->current, &xinerama);
+ if (check_only || constraint_already_satisfied)
+ return constraint_already_satisfied;
+
+ /*** Enforce constraint ***/
+ info->current = xinerama;
+ return TRUE;
+}
+
+static gboolean
+constrain_size_increments (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only)
+{
+ int bh, hi, bw, wi, extra_height, extra_width;
+ int new_width, new_height;
+ gboolean constraint_already_satisfied;
+ MetaRectangle *start_rect;
+
+ if (priority > PRIORITY_SIZE_HINTS_INCREMENTS)
+ return TRUE;
+
+ /* Determine whether constraint applies; exit if it doesn't */
+ if (META_WINDOW_MAXIMIZED (window) || window->fullscreen ||
+ info->action_type == ACTION_MOVE)
+ return TRUE;
+
+ /* Determine whether constraint is already satisfied; exit if it is */
+ bh = window->size_hints.base_height;
+ hi = window->size_hints.height_inc;
+ bw = window->size_hints.base_width;
+ wi = window->size_hints.width_inc;
+ extra_height = (info->current.height - bh) % hi;
+ extra_width = (info->current.width - bw) % wi;
+ /* ignore size increments for maximized windows */
+ if (window->maximized_horizontally)
+ extra_width *= 0;
+ if (window->maximized_vertically)
+ extra_height *= 0;
+ /* constraint is satisfied iff there is no extra height or width */
+ constraint_already_satisfied =
+ (extra_height == 0 && extra_width == 0);
+
+ if (check_only || constraint_already_satisfied)
+ return constraint_already_satisfied;
+
+ /*** Enforce constraint ***/
+ new_width = info->current.width - extra_width;
+ new_height = info->current.height - extra_height;
+
+ /* Adjusting down instead of up (as done in the above two lines) may
+ * violate minimum size constraints; fix the adjustment if this
+ * happens.
+ */
+ if (new_width < window->size_hints.min_width)
+ new_width += ((window->size_hints.min_width - new_width)/wi + 1)*wi;
+ if (new_height < window->size_hints.min_height)
+ new_height += ((window->size_hints.min_height - new_height)/hi + 1)*hi;
+
+ /* Figure out what original rect to pass to meta_rectangle_resize_with_gravity
+ * See bug 448183
+ */
+ if (info->action_type == ACTION_MOVE_AND_RESIZE)
+ start_rect = &info->current;
+ else
+ start_rect = &info->orig;
+
+ /* Resize to the new size */
+ meta_rectangle_resize_with_gravity (start_rect,
+ &info->current,
+ info->resize_gravity,
+ new_width,
+ new_height);
+ return TRUE;
+}
+
+static gboolean
+constrain_size_limits (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only)
+{
+ MetaRectangle min_size, max_size;
+ gboolean too_big, too_small, constraint_already_satisfied;
+ int new_width, new_height;
+ MetaRectangle *start_rect;
+
+ if (priority > PRIORITY_SIZE_HINTS_LIMITS)
+ return TRUE;
+
+ /* Determine whether constraint applies; exit if it doesn't.
+ *
+ * Note: The old code didn't apply this constraint for fullscreen or
+ * maximized windows--but that seems odd to me. *shrug*
+ */
+ if (info->action_type == ACTION_MOVE)
+ return TRUE;
+
+ /* Determine whether constraint is already satisfied; exit if it is */
+ get_size_limits (window, info->fgeom, FALSE, &min_size, &max_size);
+ /* We ignore max-size limits for maximized windows; see #327543 */
+ if (window->maximized_horizontally)
+ max_size.width = MAX (max_size.width, info->current.width);
+ if (window->maximized_vertically)
+ max_size.height = MAX (max_size.height, info->current.height);
+ too_small = !meta_rectangle_could_fit_rect (&info->current, &min_size);
+ too_big = !meta_rectangle_could_fit_rect (&max_size, &info->current);
+ constraint_already_satisfied = !too_big && !too_small;
+ if (check_only || constraint_already_satisfied)
+ return constraint_already_satisfied;
+
+ /*** Enforce constraint ***/
+ new_width = CLAMP (info->current.width, min_size.width, max_size.width);
+ new_height = CLAMP (info->current.height, min_size.height, max_size.height);
+
+ /* Figure out what original rect to pass to meta_rectangle_resize_with_gravity
+ * See bug 448183
+ */
+ if (info->action_type == ACTION_MOVE_AND_RESIZE)
+ start_rect = &info->current;
+ else
+ start_rect = &info->orig;
+
+ meta_rectangle_resize_with_gravity (start_rect,
+ &info->current,
+ info->resize_gravity,
+ new_width,
+ new_height);
+ return TRUE;
+}
+
+static gboolean
+constrain_aspect_ratio (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only)
+{
+ double minr, maxr;
+ gboolean constraints_are_inconsistent, constraint_already_satisfied;
+ int fudge, new_width, new_height;
+ double best_width, best_height;
+ double alt_width, alt_height;
+ MetaRectangle *start_rect;
+
+ if (priority > PRIORITY_ASPECT_RATIO)
+ return TRUE;
+
+ /* Determine whether constraint applies; exit if it doesn't. */
+ minr = window->size_hints.min_aspect.x /
+ (double)window->size_hints.min_aspect.y;
+ maxr = window->size_hints.max_aspect.x /
+ (double)window->size_hints.max_aspect.y;
+ constraints_are_inconsistent = minr > maxr;
+ if (constraints_are_inconsistent ||
+ META_WINDOW_MAXIMIZED (window) || window->fullscreen ||
+ info->action_type == ACTION_MOVE)
+ return TRUE;
+
+ /* Determine whether constraint is already satisfied; exit if it is. We
+ * need the following to hold:
+ *
+ * width
+ * minr <= ------ <= maxr
+ * height
+ *
+ * But we need to allow for some slight fudging since width and height
+ * are integers instead of floating point numbers (this is particularly
+ * important when minr == maxr), so we allow width and height to be off
+ * a little bit from strictly satisfying these equations. For just one
+ * sided resizing, we have to make the fudge factor a little bigger
+ * because of how meta_rectangle_resize_with_gravity treats those as
+ * being a resize increment (FIXME: I should handle real resize
+ * increments better here...)
+ */
+ switch (info->resize_gravity)
+ {
+ case WestGravity:
+ case NorthGravity:
+ case SouthGravity:
+ case EastGravity:
+ fudge = 2;
+ break;
+
+ case NorthWestGravity:
+ case SouthWestGravity:
+ case CenterGravity:
+ case NorthEastGravity:
+ case SouthEastGravity:
+ case StaticGravity:
+ default:
+ fudge = 1;
+ break;
+ }
+ constraint_already_satisfied =
+ info->current.width - (info->current.height * minr ) > -minr*fudge &&
+ info->current.width - (info->current.height * maxr ) < maxr*fudge;
+ if (check_only || constraint_already_satisfied)
+ return constraint_already_satisfied;
+
+ /*** Enforce constraint ***/
+ new_width = info->current.width;
+ new_height = info->current.height;
+
+ switch (info->resize_gravity)
+ {
+ case WestGravity:
+ case EastGravity:
+ /* Yeah, I suck for doing implicit rounding -- sue me */
+ new_height = CLAMP (new_height, new_width / maxr, new_width / minr);
+ break;
+
+ case NorthGravity:
+ case SouthGravity:
+ /* Yeah, I suck for doing implicit rounding -- sue me */
+ new_width = CLAMP (new_width, new_height * minr, new_height * maxr);
+ break;
+
+ case NorthWestGravity:
+ case SouthWestGravity:
+ case CenterGravity:
+ case NorthEastGravity:
+ case SouthEastGravity:
+ case StaticGravity:
+ default:
+ /* Find what width would correspond to new_height, and what height would
+ * correspond to new_width */
+ alt_width = CLAMP (new_width, new_height * minr, new_height * maxr);
+ alt_height = CLAMP (new_height, new_width / maxr, new_width / minr);
+
+ /* The line connecting the points (alt_width, new_height) and
+ * (new_width, alt_height) provide a range of
+ * valid-for-the-aspect-ratio-constraint sizes. We want the
+ * size in that range closest to the value requested, i.e. the
+ * point on the line which is closest to the point (new_width,
+ * new_height)
+ */
+ meta_rectangle_find_linepoint_closest_to_point (alt_width, new_height,
+ new_width, alt_height,
+ new_width, new_height,
+ &best_width, &best_height);
+
+ /* Yeah, I suck for doing implicit rounding -- sue me */
+ new_width = best_width;
+ new_height = best_height;
+
+ break;
+ }
+
+ /* Figure out what original rect to pass to meta_rectangle_resize_with_gravity
+ * See bug 448183
+ */
+ if (info->action_type == ACTION_MOVE_AND_RESIZE)
+ start_rect = &info->current;
+ else
+ start_rect = &info->orig;
+
+ meta_rectangle_resize_with_gravity (start_rect,
+ &info->current,
+ info->resize_gravity,
+ new_width,
+ new_height);
+
+ return TRUE;
+}
+
+static gboolean
+do_screen_and_xinerama_relative_constraints (
+ MetaWindow *window,
+ GList *region_spanning_rectangles,
+ ConstraintInfo *info,
+ gboolean check_only)
+{
+ gboolean exit_early = FALSE, constraint_satisfied;
+ MetaRectangle how_far_it_can_be_smushed, min_size, max_size;
+
+#ifdef WITH_VERBOSE_MODE
+ if (meta_is_verbose ())
+ {
+ /* First, log some debugging information */
+ char spanning_region[1 + 28 * g_list_length (region_spanning_rectangles)];
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "screen/xinerama constraint; region_spanning_rectangles: %s\n",
+ meta_rectangle_region_to_string (region_spanning_rectangles, ", ",
+ spanning_region));
+ }
+#endif
+
+ /* Determine whether constraint applies; exit if it doesn't */
+ how_far_it_can_be_smushed = info->current;
+ get_size_limits (window, info->fgeom, TRUE, &min_size, &max_size);
+ extend_by_frame (&info->current, info->fgeom);
+
+ if (info->action_type != ACTION_MOVE)
+ {
+ if (!(info->fixed_directions & FIXED_DIRECTION_X))
+ how_far_it_can_be_smushed.width = min_size.width;
+
+ if (!(info->fixed_directions & FIXED_DIRECTION_Y))
+ how_far_it_can_be_smushed.height = min_size.height;
+ }
+ if (!meta_rectangle_could_fit_in_region (region_spanning_rectangles,
+ &how_far_it_can_be_smushed))
+ exit_early = TRUE;
+
+ /* Determine whether constraint is already satisfied; exit if it is */
+ constraint_satisfied =
+ meta_rectangle_contained_in_region (region_spanning_rectangles,
+ &info->current);
+ if (exit_early || constraint_satisfied || check_only)
+ {
+ unextend_by_frame (&info->current, info->fgeom);
+ return constraint_satisfied;
+ }
+
+ /* Enforce constraint */
+
+ /* Clamp rectangle size for resize or move+resize actions */
+ if (info->action_type != ACTION_MOVE)
+ meta_rectangle_clamp_to_fit_into_region (region_spanning_rectangles,
+ info->fixed_directions,
+ &info->current,
+ &min_size);
+
+ if (info->is_user_action && info->action_type == ACTION_RESIZE)
+ /* For user resize, clip to the relevant region */
+ meta_rectangle_clip_to_region (region_spanning_rectangles,
+ info->fixed_directions,
+ &info->current);
+ else
+ /* For everything else, shove the rectangle into the relevant region */
+ meta_rectangle_shove_into_region (region_spanning_rectangles,
+ info->fixed_directions,
+ &info->current);
+
+ unextend_by_frame (&info->current, info->fgeom);
+ return TRUE;
+}
+
+static gboolean
+constrain_to_single_xinerama (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only)
+{
+ if (priority > PRIORITY_ENTIRELY_VISIBLE_ON_SINGLE_XINERAMA)
+ return TRUE;
+
+ /* Exit early if we know the constraint won't apply--note that this constraint
+ * is only meant for normal windows (e.g. we don't want docks to be shoved
+ * "onscreen" by their own strut) and we can't apply it to frameless windows
+ * or else users will be unable to move windows such as XMMS across xineramas.
+ */
+ if (window->type == META_WINDOW_DESKTOP ||
+ window->type == META_WINDOW_DOCK ||
+ window->screen->n_xinerama_infos == 1 ||
+ !window->require_on_single_xinerama ||
+ !window->frame ||
+ info->is_user_action)
+ return TRUE;
+
+ /* Have a helper function handle the constraint for us */
+ return do_screen_and_xinerama_relative_constraints (window,
+ info->usable_xinerama_region,
+ info,
+ check_only);
+}
+
+static gboolean
+constrain_fully_onscreen (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only)
+{
+ if (priority > PRIORITY_ENTIRELY_VISIBLE_ON_WORKAREA)
+ return TRUE;
+
+ /* Exit early if we know the constraint won't apply--note that this constraint
+ * is only meant for normal windows (e.g. we don't want docks to be shoved
+ * "onscreen" by their own strut).
+ */
+ if (window->type == META_WINDOW_DESKTOP ||
+ window->type == META_WINDOW_DOCK ||
+ window->fullscreen ||
+ !window->require_fully_onscreen ||
+ info->is_user_action)
+ return TRUE;
+
+ /* Have a helper function handle the constraint for us */
+ return do_screen_and_xinerama_relative_constraints (window,
+ info->usable_screen_region,
+ info,
+ check_only);
+}
+
+static gboolean
+constrain_titlebar_visible (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only)
+{
+ gboolean unconstrained_user_action;
+ gboolean retval;
+ int bottom_amount;
+ int horiz_amount_offscreen, vert_amount_offscreen;
+ int horiz_amount_onscreen, vert_amount_onscreen;
+
+ if (priority > PRIORITY_TITLEBAR_VISIBLE)
+ return TRUE;
+
+ /* Allow the titlebar beyond the top of the screen only if the user wasn't
+ * clicking on the frame to start the move.
+ */
+ unconstrained_user_action =
+ info->is_user_action && !window->display->grab_frame_action;
+
+ /* Exit early if we know the constraint won't apply--note that this constraint
+ * is only meant for normal windows (e.g. we don't want docks to be shoved
+ * "onscreen" by their own strut).
+ */
+ if (window->type == META_WINDOW_DESKTOP ||
+ window->type == META_WINDOW_DOCK ||
+ window->fullscreen ||
+ !window->require_titlebar_visible ||
+ !window->decorated ||
+ unconstrained_user_action)
+ return TRUE;
+
+ /* Determine how much offscreen things are allowed. We first need to
+ * figure out how much must remain on the screen. For that, we use 25%
+ * window width/height but clamp to the range of (10,75) pixels. This is
+ * somewhat of a seat of my pants random guess at what might look good.
+ * Then, the amount that is allowed off is just the window size minus
+ * this amount (but no less than 0 for tiny windows).
+ */
+ horiz_amount_onscreen = info->current.width / 4;
+ vert_amount_onscreen = info->current.height / 4;
+ horiz_amount_onscreen = CLAMP (horiz_amount_onscreen, 10, 75);
+ vert_amount_onscreen = CLAMP (vert_amount_onscreen, 10, 75);
+ horiz_amount_offscreen = info->current.width - horiz_amount_onscreen;
+ vert_amount_offscreen = info->current.height - vert_amount_onscreen;
+ horiz_amount_offscreen = MAX (horiz_amount_offscreen, 0);
+ vert_amount_offscreen = MAX (vert_amount_offscreen, 0);
+ /* Allow the titlebar to touch the bottom panel; If there is no titlebar,
+ * require vert_amount to remain on the screen.
+ */
+ if (window->frame)
+ {
+ bottom_amount = info->current.height + info->fgeom->bottom_height;
+ vert_amount_onscreen = info->fgeom->top_height;
+ }
+ else
+ bottom_amount = vert_amount_offscreen;
+
+ /* Extend the region, have a helper function handle the constraint,
+ * then return the region to its original size.
+ */
+ meta_rectangle_expand_region_conditionally (info->usable_screen_region,
+ horiz_amount_offscreen,
+ horiz_amount_offscreen,
+ 0, /* Don't let titlebar off */
+ bottom_amount,
+ horiz_amount_onscreen,
+ vert_amount_onscreen);
+ retval =
+ do_screen_and_xinerama_relative_constraints (window,
+ info->usable_screen_region,
+ info,
+ check_only);
+ meta_rectangle_expand_region_conditionally (info->usable_screen_region,
+ -horiz_amount_offscreen,
+ -horiz_amount_offscreen,
+ 0, /* Don't let titlebar off */
+ -bottom_amount,
+ horiz_amount_onscreen,
+ vert_amount_onscreen);
+
+ return retval;
+}
+
+static gboolean
+constrain_partially_onscreen (MetaWindow *window,
+ ConstraintInfo *info,
+ ConstraintPriority priority,
+ gboolean check_only)
+{
+ gboolean retval;
+ int top_amount, bottom_amount;
+ int horiz_amount_offscreen, vert_amount_offscreen;
+ int horiz_amount_onscreen, vert_amount_onscreen;
+
+ if (priority > PRIORITY_PARTIALLY_VISIBLE_ON_WORKAREA)
+ return TRUE;
+
+ /* Exit early if we know the constraint won't apply--note that this constraint
+ * is only meant for normal windows (e.g. we don't want docks to be shoved
+ * "onscreen" by their own strut).
+ */
+ if (window->type == META_WINDOW_DESKTOP ||
+ window->type == META_WINDOW_DOCK)
+ return TRUE;
+
+ /* Determine how much offscreen things are allowed. We first need to
+ * figure out how much must remain on the screen. For that, we use 25%
+ * window width/height but clamp to the range of (10,75) pixels. This is
+ * somewhat of a seat of my pants random guess at what might look good.
+ * Then, the amount that is allowed off is just the window size minus
+ * this amount (but no less than 0 for tiny windows).
+ */
+ horiz_amount_onscreen = info->current.width / 4;
+ vert_amount_onscreen = info->current.height / 4;
+ horiz_amount_onscreen = CLAMP (horiz_amount_onscreen, 10, 75);
+ vert_amount_onscreen = CLAMP (vert_amount_onscreen, 10, 75);
+ horiz_amount_offscreen = info->current.width - horiz_amount_onscreen;
+ vert_amount_offscreen = info->current.height - vert_amount_onscreen;
+ horiz_amount_offscreen = MAX (horiz_amount_offscreen, 0);
+ vert_amount_offscreen = MAX (vert_amount_offscreen, 0);
+ top_amount = vert_amount_offscreen;
+ /* Allow the titlebar to touch the bottom panel; If there is no titlebar,
+ * require vert_amount to remain on the screen.
+ */
+ if (window->frame)
+ {
+ bottom_amount = info->current.height + info->fgeom->bottom_height;
+ vert_amount_onscreen = info->fgeom->top_height;
+ }
+ else
+ bottom_amount = vert_amount_offscreen;
+
+ /* Extend the region, have a helper function handle the constraint,
+ * then return the region to its original size.
+ */
+ meta_rectangle_expand_region_conditionally (info->usable_screen_region,
+ horiz_amount_offscreen,
+ horiz_amount_offscreen,
+ top_amount,
+ bottom_amount,
+ horiz_amount_onscreen,
+ vert_amount_onscreen);
+ retval =
+ do_screen_and_xinerama_relative_constraints (window,
+ info->usable_screen_region,
+ info,
+ check_only);
+ meta_rectangle_expand_region_conditionally (info->usable_screen_region,
+ -horiz_amount_offscreen,
+ -horiz_amount_offscreen,
+ -top_amount,
+ -bottom_amount,
+ horiz_amount_onscreen,
+ vert_amount_onscreen);
+
+ return retval;
+}
diff --git a/src/core/constraints.h b/src/core/constraints.h
new file mode 100644
index 00000000..d374581f
--- /dev/null
+++ b/src/core/constraints.h
@@ -0,0 +1,48 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco size/position constraints */
+
+/*
+ * Copyright (C) 2002 Red Hat, Inc.
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_CONSTRAINTS_H
+#define META_CONSTRAINTS_H
+
+#include "util.h"
+#include "window-private.h"
+#include "frame-private.h"
+
+typedef enum
+{
+ META_IS_CONFIGURE_REQUEST = 1 << 0,
+ META_DO_GRAVITY_ADJUST = 1 << 1,
+ META_IS_USER_ACTION = 1 << 2,
+ META_IS_MOVE_ACTION = 1 << 3,
+ META_IS_RESIZE_ACTION = 1 << 4
+} MetaMoveResizeFlags;
+
+void meta_window_constrain (MetaWindow *window,
+ MetaFrameGeometry *orig_fgeom,
+ MetaMoveResizeFlags flags,
+ int resize_gravity,
+ const MetaRectangle *orig,
+ MetaRectangle *new);
+
+#endif /* META_CONSTRAINTS_H */
diff --git a/src/core/core.c b/src/core/core.c
new file mode 100644
index 00000000..963cbfa7
--- /dev/null
+++ b/src/core/core.c
@@ -0,0 +1,779 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco interface used by GTK+ UI to talk to core */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2003 Rob Adams
+ * Copyright (C) 2004-2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "core.h"
+#include "frame-private.h"
+#include "workspace.h"
+#include "prefs.h"
+
+/* Looks up the MetaWindow representing the frame of the given X window.
+ * Used as a helper function by a bunch of the functions below.
+ *
+ * FIXME: The functions that use this function throw the result away
+ * after use. Many of these functions tend to be called in small groups,
+ * which results in get_window() getting called several times in succession
+ * with the same parameters. We should profile to see whether this wastes
+ * much time, and if it does we should look into a generalised
+ * meta_core_get_window_info() which takes a bunch of pointers to variables
+ * to put its results in, and only fills in the non-null ones.
+ */
+static MetaWindow *
+get_window (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaDisplay *display;
+ MetaWindow *window;
+
+ display = meta_display_for_x_display (xdisplay);
+ window = meta_display_lookup_x_window (display, frame_xwindow);
+
+ if (window == NULL || window->frame == NULL)
+ {
+ meta_bug ("No such frame window 0x%lx!\n", frame_xwindow);
+ return NULL;
+ }
+
+ return window;
+}
+
+void
+meta_core_get (Display *xdisplay,
+ Window xwindow,
+ ...)
+{
+ va_list args;
+ MetaCoreGetType request;
+
+ MetaDisplay *display = meta_display_for_x_display (xdisplay);
+ MetaWindow *window = meta_display_lookup_x_window (display, xwindow);
+
+ va_start (args, xwindow);
+
+ request = va_arg (args, MetaCoreGetType);
+
+ /* Now, we special-case the first request slightly. Mostly, requests
+ * for information on windows which have no frame are errors.
+ * But sometimes we may want to know *whether* a window has a frame.
+ * In this case, pass the key META_CORE_WINDOW_HAS_FRAME
+ * as the *first* request, with a pointer to a boolean; if the window
+ * has no frame, this will be set to False and meta_core_get will
+ * exit immediately (so the values of any other requests will be
+ * undefined). Otherwise it will be set to True and meta_core_get will
+ * continue happily on its way.
+ */
+
+ if (request != META_CORE_WINDOW_HAS_FRAME &&
+ (window == NULL || window->frame == NULL)) {
+ meta_bug ("No such frame window 0x%lx!\n", xwindow);
+ return;
+ }
+
+ while (request != META_CORE_GET_END) {
+
+ gpointer answer = va_arg (args, gpointer);
+
+ switch (request) {
+ case META_CORE_WINDOW_HAS_FRAME:
+ *((gboolean*)answer) = window != NULL && window->frame != NULL;
+ if (!*((gboolean*)answer)) return; /* see above */
+ break;
+ case META_CORE_GET_CLIENT_WIDTH:
+ *((gint*)answer) = window->rect.width;
+ break;
+ case META_CORE_GET_CLIENT_HEIGHT:
+ *((gint*)answer) = window->rect.height;
+ break;
+ case META_CORE_IS_TITLEBAR_ONSCREEN:
+ *((gboolean*)answer) = meta_window_titlebar_is_onscreen (window);
+ break;
+ case META_CORE_GET_CLIENT_XWINDOW:
+ *((Window*)answer) = window->xwindow;
+ break;
+ case META_CORE_GET_FRAME_FLAGS:
+ *((MetaFrameFlags*)answer) = meta_frame_get_flags (window->frame);
+ break;
+ case META_CORE_GET_FRAME_TYPE:
+ {
+ MetaFrameType base_type = META_FRAME_TYPE_LAST;
+
+ switch (window->type)
+ {
+ case META_WINDOW_NORMAL:
+ base_type = META_FRAME_TYPE_NORMAL;
+ break;
+
+ case META_WINDOW_DIALOG:
+ base_type = META_FRAME_TYPE_DIALOG;
+ break;
+
+ case META_WINDOW_MODAL_DIALOG:
+ base_type = META_FRAME_TYPE_MODAL_DIALOG;
+ break;
+
+ case META_WINDOW_MENU:
+ base_type = META_FRAME_TYPE_MENU;
+ break;
+
+ case META_WINDOW_UTILITY:
+ base_type = META_FRAME_TYPE_UTILITY;
+ break;
+
+ case META_WINDOW_DESKTOP:
+ case META_WINDOW_DOCK:
+ case META_WINDOW_TOOLBAR:
+ case META_WINDOW_SPLASHSCREEN:
+ /* No frame */
+ base_type = META_FRAME_TYPE_LAST;
+ break;
+
+ }
+
+ if (base_type == META_FRAME_TYPE_LAST)
+ {
+ /* can't add border if undecorated */
+ *((MetaFrameType*)answer) = META_FRAME_TYPE_LAST;
+ }
+ else if (window->border_only)
+ {
+ /* override base frame type */
+ *((MetaFrameType*)answer) = META_FRAME_TYPE_BORDER;
+ }
+ else
+ {
+ *((MetaFrameType*)answer) = base_type;
+ }
+
+ break;
+ }
+ case META_CORE_GET_MINI_ICON:
+ *((GdkPixbuf**)answer) = window->mini_icon;
+ break;
+ case META_CORE_GET_ICON:
+ *((GdkPixbuf**)answer) = window->icon;
+ break;
+ case META_CORE_GET_X:
+ meta_window_get_position (window, (int*)answer, NULL);
+ break;
+ case META_CORE_GET_Y:
+ meta_window_get_position (window, NULL, (int*)answer);
+ break;
+ case META_CORE_GET_FRAME_WORKSPACE:
+ *((gint*)answer) = meta_window_get_net_wm_desktop (window);
+ break;
+ case META_CORE_GET_FRAME_X:
+ *((gint*)answer) = window->frame->rect.x;
+ break;
+ case META_CORE_GET_FRAME_Y:
+ *((gint*)answer) = window->frame->rect.y;
+ break;
+ case META_CORE_GET_FRAME_WIDTH:
+ *((gint*)answer) = window->frame->rect.width;
+ break;
+ case META_CORE_GET_FRAME_HEIGHT:
+ *((gint*)answer) = window->frame->rect.height;
+ break;
+ case META_CORE_GET_SCREEN_WIDTH:
+ *((gint*)answer) = window->screen->rect.width;
+ break;
+ case META_CORE_GET_SCREEN_HEIGHT:
+ *((gint*)answer) = window->screen->rect.height;
+ break;
+
+ default:
+ meta_warning(_("Unknown window information request: %d"), request);
+ }
+
+ request = va_arg (args, MetaCoreGetType);
+ }
+
+ va_end (args);
+}
+
+void
+meta_core_queue_frame_resize (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_queue (window, META_QUEUE_MOVE_RESIZE);
+}
+
+void
+meta_core_user_move (Display *xdisplay,
+ Window frame_xwindow,
+ int x,
+ int y)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_move (window, TRUE, x, y);
+}
+
+void
+meta_core_user_resize (Display *xdisplay,
+ Window frame_xwindow,
+ int gravity,
+ int width,
+ int height)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_resize_with_gravity (window, TRUE, width, height, gravity);
+}
+
+void
+meta_core_user_raise (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_raise (window);
+}
+
+void
+meta_core_user_lower_and_unfocus (Display *xdisplay,
+ Window frame_xwindow,
+ guint32 timestamp)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_lower (window);
+
+ if (meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK &&
+ meta_prefs_get_raise_on_click ())
+ {
+ /* Move window to the back of the focusing workspace's MRU list.
+ * Do extra sanity checks to avoid possible race conditions.
+ * (Borrowed from window.c.)
+ */
+ if (window->screen->active_workspace &&
+ meta_window_located_on_workspace (window,
+ window->screen->active_workspace))
+ {
+ GList* link;
+ link = g_list_find (window->screen->active_workspace->mru_list,
+ window);
+ g_assert (link);
+
+ window->screen->active_workspace->mru_list =
+ g_list_remove_link (window->screen->active_workspace->mru_list,
+ link);
+ g_list_free (link);
+
+ window->screen->active_workspace->mru_list =
+ g_list_append (window->screen->active_workspace->mru_list,
+ window);
+ }
+ }
+
+ /* focus the default window, if needed */
+ if (window->has_focus)
+ meta_workspace_focus_default_window (window->screen->active_workspace,
+ NULL,
+ timestamp);
+}
+
+void
+meta_core_user_focus (Display *xdisplay,
+ Window frame_xwindow,
+ guint32 timestamp)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_focus (window, timestamp);
+}
+
+void
+meta_core_minimize (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_minimize (window);
+}
+
+void
+meta_core_maximize (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+
+ meta_window_maximize (window,
+ META_MAXIMIZE_HORIZONTAL | META_MAXIMIZE_VERTICAL);
+}
+
+void
+meta_core_toggle_maximize_vertically (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+
+ if (META_WINDOW_MAXIMIZED_VERTICALLY (window))
+ meta_window_unmaximize (window,
+ META_MAXIMIZE_VERTICAL);
+ else
+ meta_window_maximize (window,
+ META_MAXIMIZE_VERTICAL);
+}
+
+void
+meta_core_toggle_maximize_horizontally (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+
+ if (META_WINDOW_MAXIMIZED_HORIZONTALLY (window))
+ meta_window_unmaximize (window,
+ META_MAXIMIZE_HORIZONTAL);
+ else
+ meta_window_maximize (window,
+ META_MAXIMIZE_HORIZONTAL);
+}
+
+void
+meta_core_toggle_maximize (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+
+ if (META_WINDOW_MAXIMIZED (window))
+ meta_window_unmaximize (window,
+ META_MAXIMIZE_HORIZONTAL | META_MAXIMIZE_VERTICAL);
+ else
+ meta_window_maximize (window,
+ META_MAXIMIZE_HORIZONTAL | META_MAXIMIZE_VERTICAL);
+}
+
+void
+meta_core_unmaximize (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+
+ meta_window_unmaximize (window,
+ META_MAXIMIZE_HORIZONTAL | META_MAXIMIZE_VERTICAL);
+}
+
+void
+meta_core_delete (Display *xdisplay,
+ Window frame_xwindow,
+ guint32 timestamp)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_delete (window, timestamp);
+}
+
+void
+meta_core_unshade (Display *xdisplay,
+ Window frame_xwindow,
+ guint32 timestamp)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_unshade (window, timestamp);
+}
+
+void
+meta_core_shade (Display *xdisplay,
+ Window frame_xwindow,
+ guint32 timestamp)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_shade (window, timestamp);
+}
+
+void
+meta_core_unstick (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_unstick (window);
+}
+
+void
+meta_core_make_above (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_make_above (window);
+}
+
+void
+meta_core_unmake_above (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_unmake_above (window);
+}
+
+void
+meta_core_stick (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_stick (window);
+}
+
+void
+meta_core_change_workspace (Display *xdisplay,
+ Window frame_xwindow,
+ int new_workspace)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ meta_window_change_workspace (window,
+ meta_screen_get_workspace_by_index (window->screen,
+ new_workspace));
+}
+
+int
+meta_core_get_num_workspaces (Screen *xscreen)
+{
+ MetaScreen *screen;
+
+ screen = meta_screen_for_x_screen (xscreen);
+
+ return meta_screen_get_n_workspaces (screen);
+}
+
+int
+meta_core_get_active_workspace (Screen *xscreen)
+{
+ MetaScreen *screen;
+
+ screen = meta_screen_for_x_screen (xscreen);
+
+ return meta_workspace_index (screen->active_workspace);
+}
+
+void
+meta_core_show_window_menu (Display *xdisplay,
+ Window frame_xwindow,
+ int root_x,
+ int root_y,
+ int button,
+ guint32 timestamp)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ meta_window_focus (window, timestamp);
+
+ meta_window_show_menu (window, root_x, root_y, button, timestamp);
+}
+
+void
+meta_core_get_menu_accelerator (MetaMenuOp menu_op,
+ int workspace,
+ unsigned int *keysym,
+ MetaVirtualModifier *modifiers)
+{
+ const char *name;
+
+ name = NULL;
+
+ switch (menu_op)
+ {
+ case META_MENU_OP_NONE:
+ /* No keybinding for this one */
+ break;
+ case META_MENU_OP_DELETE:
+ name = "close";
+ break;
+ case META_MENU_OP_MINIMIZE:
+ name = "minimize";
+ break;
+ case META_MENU_OP_UNMAXIMIZE:
+ name = "unmaximize";
+ break;
+ case META_MENU_OP_MAXIMIZE:
+ name = "maximize";
+ break;
+ case META_MENU_OP_UNSHADE:
+ case META_MENU_OP_SHADE:
+ name = "toggle_shaded";
+ break;
+ case META_MENU_OP_UNSTICK:
+ case META_MENU_OP_STICK:
+ name = "toggle_on_all_workspaces";
+ break;
+ case META_MENU_OP_ABOVE:
+ case META_MENU_OP_UNABOVE:
+ name = "toggle_above";
+ break;
+ case META_MENU_OP_WORKSPACES:
+ switch (workspace)
+ {
+ case 1:
+ name = "move_to_workspace_1";
+ break;
+ case 2:
+ name = "move_to_workspace_2";
+ break;
+ case 3:
+ name = "move_to_workspace_3";
+ break;
+ case 4:
+ name = "move_to_workspace_4";
+ break;
+ case 5:
+ name = "move_to_workspace_5";
+ break;
+ case 6:
+ name = "move_to_workspace_6";
+ break;
+ case 7:
+ name = "move_to_workspace_7";
+ break;
+ case 8:
+ name = "move_to_workspace_8";
+ break;
+ case 9:
+ name = "move_to_workspace_9";
+ break;
+ case 10:
+ name = "move_to_workspace_10";
+ break;
+ case 11:
+ name = "move_to_workspace_11";
+ break;
+ case 12:
+ name = "move_to_workspace_12";
+ break;
+ }
+ break;
+ case META_MENU_OP_MOVE:
+ name = "begin_move";
+ break;
+ case META_MENU_OP_RESIZE:
+ name = "begin_resize";
+ break;
+ case META_MENU_OP_MOVE_LEFT:
+ name = "move_to_workspace_left";
+ break;
+ case META_MENU_OP_MOVE_RIGHT:
+ name = "move_to_workspace_right";
+ break;
+ case META_MENU_OP_MOVE_UP:
+ name = "move_to_workspace_up";
+ break;
+ case META_MENU_OP_MOVE_DOWN:
+ name = "move_to_workspace_down";
+ break;
+ case META_MENU_OP_RECOVER:
+ /* No keybinding for this one */
+ break;
+ }
+
+ if (name)
+ {
+ meta_prefs_get_window_binding (name, keysym, modifiers);
+ }
+ else
+ {
+ *keysym = 0;
+ *modifiers = 0;
+ }
+}
+
+const char*
+meta_core_get_workspace_name_with_index (Display *xdisplay,
+ Window xroot,
+ int index)
+{
+ MetaDisplay *display;
+ MetaScreen *screen;
+ MetaWorkspace *workspace;
+
+ display = meta_display_for_x_display (xdisplay);
+ screen = meta_display_screen_for_root (display, xroot);
+ g_assert (screen != NULL);
+ workspace = meta_screen_get_workspace_by_index (screen, index);
+ return workspace ? meta_workspace_get_name (workspace) : NULL;
+}
+
+gboolean
+meta_core_begin_grab_op (Display *xdisplay,
+ Window frame_xwindow,
+ MetaGrabOp op,
+ gboolean pointer_already_grabbed,
+ gboolean frame_action,
+ int button,
+ gulong modmask,
+ guint32 timestamp,
+ int root_x,
+ int root_y)
+{
+ MetaWindow *window = get_window (xdisplay, frame_xwindow);
+ MetaDisplay *display;
+ MetaScreen *screen;
+
+ display = meta_display_for_x_display (xdisplay);
+ screen = meta_display_screen_for_xwindow (display, frame_xwindow);
+
+ g_assert (screen != NULL);
+
+ return meta_display_begin_grab_op (display, screen, window,
+ op, pointer_already_grabbed,
+ frame_action,
+ button, modmask,
+ timestamp, root_x, root_y);
+}
+
+void
+meta_core_end_grab_op (Display *xdisplay,
+ guint32 timestamp)
+{
+ MetaDisplay *display;
+
+ display = meta_display_for_x_display (xdisplay);
+
+ meta_display_end_grab_op (display, timestamp);
+}
+
+MetaGrabOp
+meta_core_get_grab_op (Display *xdisplay)
+{
+ MetaDisplay *display;
+
+ display = meta_display_for_x_display (xdisplay);
+
+ return display->grab_op;
+}
+
+Window
+meta_core_get_grab_frame (Display *xdisplay)
+{
+ MetaDisplay *display;
+
+ display = meta_display_for_x_display (xdisplay);
+
+ g_assert (display != NULL);
+ g_assert (display->grab_op == META_GRAB_OP_NONE ||
+ display->grab_screen != NULL);
+ g_assert (display->grab_op == META_GRAB_OP_NONE ||
+ display->grab_screen->display->xdisplay == xdisplay);
+
+ if (display->grab_op != META_GRAB_OP_NONE &&
+ display->grab_window &&
+ display->grab_window->frame)
+ return display->grab_window->frame->xwindow;
+ else
+ return None;
+}
+
+int
+meta_core_get_grab_button (Display *xdisplay)
+{
+ MetaDisplay *display;
+
+ display = meta_display_for_x_display (xdisplay);
+
+ if (display->grab_op == META_GRAB_OP_NONE)
+ return -1;
+
+ return display->grab_button;
+}
+
+void
+meta_core_grab_buttons (Display *xdisplay,
+ Window frame_xwindow)
+{
+ MetaDisplay *display;
+
+ display = meta_display_for_x_display (xdisplay);
+
+ meta_verbose ("Grabbing buttons on frame 0x%lx\n", frame_xwindow);
+ meta_display_grab_window_buttons (display, frame_xwindow);
+}
+
+void
+meta_core_set_screen_cursor (Display *xdisplay,
+ Window frame_on_screen,
+ MetaCursor cursor)
+{
+ MetaWindow *window = get_window (xdisplay, frame_on_screen);
+
+ meta_frame_set_screen_cursor (window->frame, cursor);
+}
+
+void
+meta_core_increment_event_serial (Display *xdisplay)
+{
+ MetaDisplay *display;
+
+ display = meta_display_for_x_display (xdisplay);
+
+ meta_display_increment_event_serial (display);
+}
+
+void
+meta_invalidate_default_icons (void)
+{
+ MetaDisplay *display = meta_get_display ();
+ GSList *windows;
+ GSList *l;
+
+ if (display == NULL)
+ return; /* We can validly be called before the display is opened. */
+
+ windows = meta_display_list_windows (display);
+ for (l = windows; l != NULL; l = l->next)
+ {
+ MetaWindow *window = (MetaWindow*)l->data;
+
+ if (window->icon_cache.origin == USING_FALLBACK_ICON)
+ {
+ meta_icon_cache_free (&(window->icon_cache));
+ meta_window_update_icon_now (window);
+ }
+ }
+
+ g_slist_free (windows);
+}
+
diff --git a/src/core/delete.c b/src/core/delete.c
new file mode 100644
index 00000000..f0590e3b
--- /dev/null
+++ b/src/core/delete.c
@@ -0,0 +1,266 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco window deletion */
+
+/*
+ * Copyright (C) 2001, 2002 Havoc Pennington
+ * Copyright (C) 2004 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#define _GNU_SOURCE
+#define _SVID_SOURCE /* for gethostname() */
+
+#include <config.h>
+#include "util.h"
+#include "window-private.h"
+#include "errors.h"
+#include "workspace.h"
+
+#include <sys/types.h>
+#include <signal.h>
+#include <unistd.h>
+#include <errno.h>
+#include <string.h>
+#include <stdlib.h>
+#include <stdio.h>
+
+static void meta_window_present_delete_dialog (MetaWindow *window,
+ guint32 timestamp);
+
+static void
+delete_ping_reply_func (MetaDisplay *display,
+ Window xwindow,
+ guint32 timestamp,
+ void *user_data)
+{
+ meta_topic (META_DEBUG_PING,
+ "Got reply to delete ping for %s\n",
+ ((MetaWindow*)user_data)->desc);
+
+ /* we do nothing */
+}
+
+static void
+dialog_exited (GPid pid,
+ int status,
+ gpointer user_data)
+{
+ MetaWindow *ours = (MetaWindow*) user_data;
+
+ ours->dialog_pid = -1;
+
+ /* exit status of 1 means the user pressed "Force Quit" */
+ if (WIFEXITED (status) && WEXITSTATUS (status) == 1)
+ meta_window_kill (ours);
+}
+
+static void
+delete_ping_timeout_func (MetaDisplay *display,
+ Window xwindow,
+ guint32 timestamp,
+ void *user_data)
+{
+ MetaWindow *window = user_data;
+ char *window_title;
+ gchar *window_content, *tmp;
+ GPid dialog_pid;
+
+ meta_topic (META_DEBUG_PING,
+ "Got delete ping timeout for %s\n",
+ window->desc);
+
+ if (window->dialog_pid >= 0)
+ {
+ meta_window_present_delete_dialog (window, timestamp);
+ return;
+ }
+
+ window_title = g_locale_from_utf8 (window->title, -1, NULL, NULL, NULL);
+
+ /* Translators: %s is a window title */
+ tmp = g_strdup_printf (_("<tt>%s</tt> is not responding."),
+ window_title);
+ window_content = g_strdup_printf (
+ "<big><b>%s</b></big>\n\n<i>%s</i>",
+ tmp,
+ _("You may choose to wait a short while for it to "
+ "continue or force the application to quit entirely."));
+
+ g_free (window_title);
+
+ dialog_pid =
+ meta_show_dialog ("--question",
+ window_content, 0,
+ window->screen->number,
+ _("_Wait"), _("_Force Quit"), window->xwindow,
+ NULL, NULL);
+
+ g_free (window_content);
+ g_free (tmp);
+
+ window->dialog_pid = dialog_pid;
+ g_child_watch_add (dialog_pid, dialog_exited, window);
+}
+
+void
+meta_window_delete (MetaWindow *window,
+ guint32 timestamp)
+{
+ meta_error_trap_push (window->display);
+ if (window->delete_window)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Deleting %s with delete_window request\n",
+ window->desc);
+ meta_window_send_icccm_message (window,
+ window->display->atom_WM_DELETE_WINDOW,
+ timestamp);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Deleting %s with explicit kill\n",
+ window->desc);
+ XKillClient (window->display->xdisplay, window->xwindow);
+ }
+ meta_error_trap_pop (window->display, FALSE);
+
+ meta_display_ping_window (window->display,
+ window,
+ timestamp,
+ delete_ping_reply_func,
+ delete_ping_timeout_func,
+ window);
+
+ if (window->has_focus)
+ {
+ /* FIXME Clean this up someday
+ * http://bugzilla.gnome.org/show_bug.cgi?id=108706
+ */
+#if 0
+ /* This is unfortunately going to result in weirdness
+ * if the window doesn't respond to the delete event.
+ * I don't know how to avoid that though.
+ */
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing default window because focus window %s was deleted/killed\n",
+ window->desc);
+ meta_workspace_focus_default_window (window->screen->active_workspace,
+ window);
+#else
+ meta_topic (META_DEBUG_FOCUS,
+ "Not unfocusing %s on delete/kill\n",
+ window->desc);
+#endif
+ }
+ else
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Window %s was deleted/killed but didn't have focus\n",
+ window->desc);
+ }
+}
+
+
+void
+meta_window_kill (MetaWindow *window)
+{
+ char buf[257];
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Killing %s brutally\n",
+ window->desc);
+
+ if (window->wm_client_machine != NULL &&
+ window->net_wm_pid > 0)
+ {
+ if (gethostname (buf, sizeof(buf)-1) == 0)
+ {
+ if (strcmp (buf, window->wm_client_machine) == 0)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Killing %s with kill()\n",
+ window->desc);
+
+ if (kill (window->net_wm_pid, 9) < 0)
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Failed to signal %s: %s\n",
+ window->desc, strerror (errno));
+ }
+ }
+ else
+ {
+ meta_warning (_("Failed to get hostname: %s\n"),
+ strerror (errno));
+ }
+ }
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Disconnecting %s with XKillClient()\n",
+ window->desc);
+ meta_error_trap_push (window->display);
+ XKillClient (window->display->xdisplay, window->xwindow);
+ meta_error_trap_pop (window->display, FALSE);
+}
+
+void
+meta_window_free_delete_dialog (MetaWindow *window)
+{
+ if (window->dialog_pid >= 0)
+ {
+ kill (window->dialog_pid, 9);
+ window->dialog_pid = -1;
+ }
+}
+
+static void
+meta_window_present_delete_dialog (MetaWindow *window, guint32 timestamp)
+{
+ meta_topic (META_DEBUG_PING,
+ "Presenting existing ping dialog for %s\n",
+ window->desc);
+
+ if (window->dialog_pid >= 0)
+ {
+ GSList *windows;
+ GSList *tmp;
+
+ /* Activate transient for window that belongs to
+ * marco-dialog
+ */
+
+ windows = meta_display_list_windows (window->display);
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+
+ if (w->xtransient_for == window->xwindow &&
+ w->res_class &&
+ g_ascii_strcasecmp (w->res_class, "marco-dialog") == 0)
+ {
+ meta_window_activate (w, timestamp);
+ break;
+ }
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (windows);
+ }
+}
diff --git a/src/core/display-private.h b/src/core/display-private.h
new file mode 100644
index 00000000..692e25f2
--- /dev/null
+++ b/src/core/display-private.h
@@ -0,0 +1,513 @@
+/* Marco X display handler */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2002 Red Hat, Inc.
+ * Copyright (C) 2003 Rob Adams
+ * Copyright (C) 2004-2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_DISPLAY_PRIVATE_H
+#define META_DISPLAY_PRIVATE_H
+
+#ifndef PACKAGE
+ #error "config.h not included"
+#endif
+
+#include <glib.h>
+#include <X11/Xlib.h>
+#include "eventqueue.h"
+#include "common.h"
+#include "boxes.h"
+#include "display.h"
+
+#ifdef HAVE_STARTUP_NOTIFICATION
+ #include <libsn/sn.h>
+#endif
+
+#ifdef HAVE_XSYNC
+ #include <X11/extensions/sync.h>
+#endif
+
+typedef struct _MetaKeyBinding MetaKeyBinding;
+typedef struct _MetaStack MetaStack;
+typedef struct _MetaUISlave MetaUISlave;
+typedef struct _MetaWorkspace MetaWorkspace;
+
+typedef struct _MetaGroupPropHooks MetaGroupPropHooks;
+
+typedef struct MetaEdgeResistanceData MetaEdgeResistanceData;
+
+typedef void (*MetaWindowPingFunc) (MetaDisplay* display, Window xwindow, guint32 timestamp, gpointer user_data);
+
+
+#define _NET_WM_STATE_REMOVE 0 /* remove/unset property */
+#define _NET_WM_STATE_ADD 1 /* add/set property */
+#define _NET_WM_STATE_TOGGLE 2 /* toggle property */
+
+/* This is basically a bogus number, just has to be large enough
+ * to handle the expected case of the alt+tab operation, where
+ * we want to ignore serials from UnmapNotify on the tab popup,
+ * and the LeaveNotify/EnterNotify from the pointer ungrab
+ */
+#define N_IGNORED_SERIALS 4
+
+struct _MetaDisplay {
+ char* name;
+ Display* xdisplay;
+
+ Window leader_window;
+ Window timestamp_pinging_window;
+
+ /* Pull in all the names of atoms as fields; we will intern them when the
+ * class is constructed.
+ */
+ #define item(x) Atom atom_##x;
+ #include "atomnames.h"
+ #undef item
+
+ /* This is the actual window from focus events,
+ * not the one we last set
+ */
+ MetaWindow* focus_window;
+
+ /* window we are expecting a FocusIn event for or the current focus
+ * window if we are not expecting any FocusIn/FocusOut events; not
+ * perfect because applications can call XSetInputFocus directly.
+ * (It could also be messed up if a timestamp later than current
+ * time is sent to meta_display_set_input_focus_window, though that
+ * would be a programming error). See bug 154598 for more info.
+ */
+ MetaWindow* expected_focus_window;
+
+ /* last timestamp passed to XSetInputFocus */
+ guint32 last_focus_time;
+
+ /* last user interaction time in any app */
+ guint32 last_user_time;
+
+ /* whether we're using mousenav (only relevant for sloppy&mouse focus modes;
+ * !mouse_mode means "keynav mode")
+ */
+ guint mouse_mode: 1;
+
+ /* Helper var used when focus_new_windows setting is 'strict'; only
+ * relevant in 'strict' mode and if the focus window is a terminal.
+ * In that case, we don't allow new windows to take focus away from
+ * a terminal, but if the user explicitly did something that should
+ * allow a different window to gain focus (e.g. global keybinding or
+ * clicking on a dock), then we will allow the transfer.
+ */
+ guint allow_terminal_deactivation: 1;
+
+ guint static_gravity_works: 1;
+
+ /*< private-ish >*/
+ guint error_trap_synced_at_last_pop: 1;
+ MetaEventQueue* events;
+ GSList* screens;
+ MetaScreen* active_screen;
+ GHashTable* window_ids;
+ int error_traps;
+ int (*error_trap_handler) (Display* display, XErrorEvent* error);
+ int server_grab_count;
+
+ /* serials of leave/unmap events that may
+ * correspond to an enter event we should
+ * ignore
+ */
+ unsigned long ignored_serials[N_IGNORED_SERIALS];
+ Window ungrab_should_not_cause_focus_window;
+
+ guint32 current_time;
+
+ /* Pings which we're waiting for a reply from */
+ GSList* pending_pings;
+
+ /* Pending autoraise */
+ guint autoraise_timeout_id;
+ MetaWindow* autoraise_window;
+
+ /* Alt+click button grabs */
+ unsigned int window_grab_modifiers;
+
+ /* current window operation */
+ MetaGrabOp grab_op;
+ MetaScreen* grab_screen;
+ MetaWindow* grab_window;
+ Window grab_xwindow;
+ int grab_button;
+ int grab_anchor_root_x;
+ int grab_anchor_root_y;
+ MetaRectangle grab_anchor_window_pos;
+ int grab_latest_motion_x;
+ int grab_latest_motion_y;
+ gulong grab_mask;
+ guint grab_have_pointer : 1;
+ guint grab_have_keyboard : 1;
+ guint grab_wireframe_active : 1;
+ guint grab_was_cancelled : 1; /* Only used in wireframe mode */
+ guint grab_frame_action : 1;
+ MetaRectangle grab_wireframe_rect;
+ MetaRectangle grab_wireframe_last_xor_rect;
+ MetaRectangle grab_initial_window_pos;
+ int grab_initial_x, grab_initial_y; /* These are only relevant for */
+ gboolean grab_threshold_movement_reached; /* raise_on_click == FALSE. */
+ MetaResizePopup* grab_resize_popup;
+ GTimeVal grab_last_moveresize_time;
+ guint32 grab_motion_notify_time;
+ int grab_wireframe_last_display_width;
+ int grab_wireframe_last_display_height;
+ GList* grab_old_window_stacking;
+ MetaEdgeResistanceData* grab_edge_resistance_data;
+ unsigned int grab_last_user_action_was_snap;
+
+ /* we use property updates as sentinels for certain window focus events
+ * to avoid some race conditions on EnterNotify events
+ */
+ int sentinel_counter;
+
+ #ifdef HAVE_XKB
+ int xkb_base_event_type;
+ guint32 last_bell_time;
+ #endif
+
+ #ifdef HAVE_XSYNC
+ /* alarm monitoring client's _NET_WM_SYNC_REQUEST_COUNTER */
+ XSyncAlarm grab_sync_request_alarm;
+ #endif
+
+ int grab_resize_timeout_id;
+
+ /* Keybindings stuff */
+ MetaKeyBinding* key_bindings;
+ int n_key_bindings;
+ int min_keycode;
+ int max_keycode;
+ KeySym* keymap;
+ int keysyms_per_keycode;
+ XModifierKeymap* modmap;
+ unsigned int ignored_modifier_mask;
+ unsigned int num_lock_mask;
+ unsigned int scroll_lock_mask;
+ unsigned int hyper_mask;
+ unsigned int super_mask;
+ unsigned int meta_mask;
+
+ /* Xinerama cache */
+ unsigned int xinerama_cache_invalidated: 1;
+
+ /* Opening the display */
+ unsigned int display_opening: 1;
+
+ /* Closing down the display */
+ int closing;
+
+ /* To detect double clicks
+ *
+ * https://github.com/stefano-k/Mate-Desktop-Environment/commit/b0e5fb03eb21dae8f02692f11ef391bfc5ccba33
+ */
+ guint button_click_number;
+ Window button_click_window;
+ int button_click_x;
+ int button_click_y;
+ guint32 button_click_time;
+
+ /* Managed by group.c */
+ GHashTable* groups_by_leader;
+
+ /* currently-active window menu if any */
+ MetaWindowMenu* window_menu;
+ MetaWindow* window_with_menu;
+
+ /* Managed by window-props.c */
+ gpointer* prop_hooks_table;
+ GHashTable* prop_hooks;
+
+ /* Managed by group-props.c */
+ MetaGroupPropHooks* group_prop_hooks;
+
+ /* Managed by compositor.c */
+ MetaCompositor* compositor;
+
+ #ifdef HAVE_STARTUP_NOTIFICATION
+ SnDisplay* sn_display;
+ #endif
+
+ #ifdef HAVE_XSYNC
+ int xsync_event_base;
+ int xsync_error_base;
+ #endif
+
+ #ifdef HAVE_SHAPE
+ int shape_event_base;
+ int shape_error_base;
+ #endif
+
+ #ifdef HAVE_RENDER
+ int render_event_base;
+ int render_error_base;
+ #endif
+
+ #ifdef HAVE_COMPOSITE_EXTENSIONS
+ int composite_event_base;
+ int composite_error_base;
+ int composite_major_version;
+ int composite_minor_version;
+ int damage_event_base;
+ int damage_error_base;
+ int xfixes_event_base;
+ int xfixes_error_base;
+ #endif
+
+ #ifdef HAVE_XSYNC
+ unsigned int have_xsync : 1;
+ #define META_DISPLAY_HAS_XSYNC(display) ((display)->have_xsync)
+ #else
+ #define META_DISPLAY_HAS_XSYNC(display) FALSE
+ #endif
+
+ #ifdef HAVE_SHAPE
+ unsigned int have_shape : 1;
+ #define META_DISPLAY_HAS_SHAPE(display) ((display)->have_shape)
+ #else
+ #define META_DISPLAY_HAS_SHAPE(display) FALSE
+ #endif
+
+ #ifdef HAVE_RENDER
+ unsigned int have_render : 1;
+ #define META_DISPLAY_HAS_RENDER(display) ((display)->have_render)
+ #else
+ #define META_DISPLAY_HAS_RENDER(display) FALSE
+ #endif
+
+ #ifdef HAVE_COMPOSITE_EXTENSIONS
+ unsigned int have_composite : 1;
+ unsigned int have_damage : 1;
+ unsigned int have_xfixes : 1;
+ #define META_DISPLAY_HAS_COMPOSITE(display) ((display)->have_composite)
+ #define META_DISPLAY_HAS_DAMAGE(display) ((display)->have_damage)
+ #define META_DISPLAY_HAS_XFIXES(display) ((display)->have_xfixes)
+ #else
+ #define META_DISPLAY_HAS_COMPOSITE(display) FALSE
+ #define META_DISPLAY_HAS_DAMAGE(display) FALSE
+ #define META_DISPLAY_HAS_XFIXES(display) FALSE
+ #endif
+};
+
+/* Xserver time can wraparound, thus comparing two timestamps needs to take
+ * this into account. Here's a little macro to help out. If no wraparound
+ * has occurred, this is equivalent to
+ * time1 < time2
+ * Of course, the rest of the ugliness of this macro comes from accounting
+ * for the fact that wraparound can occur and the fact that a timestamp of
+ * 0 must be special-cased since it means older than anything else.
+ *
+ * Note that this is NOT an equivalent for time1 <= time2; if that's what
+ * you need then you'll need to swap the order of the arguments and negate
+ * the result.
+ */
+#define XSERVER_TIME_IS_BEFORE_ASSUMING_REAL_TIMESTAMPS(time1, time2) \
+ ( (( (time1) < (time2) ) && ( (time2) - (time1) < ((guint32)-1)/2 )) || \
+ (( (time1) > (time2) ) && ( (time1) - (time2) > ((guint32)-1)/2 )) \
+ )
+#define XSERVER_TIME_IS_BEFORE(time1, time2) \
+ ( (time1) == 0 || \
+ (XSERVER_TIME_IS_BEFORE_ASSUMING_REAL_TIMESTAMPS(time1, time2) && \
+ (time2) != 0) \
+ )
+
+gboolean meta_display_open (void);
+void meta_display_close (MetaDisplay *display,
+ guint32 timestamp);
+MetaScreen* meta_display_screen_for_x_screen (MetaDisplay *display,
+ Screen *screen);
+MetaScreen* meta_display_screen_for_xwindow (MetaDisplay *display,
+ Window xindow);
+void meta_display_grab (MetaDisplay *display);
+void meta_display_ungrab (MetaDisplay *display);
+
+void meta_display_unmanage_screen (MetaDisplay **display,
+ MetaScreen *screen,
+ guint32 timestamp);
+
+void meta_display_unmanage_windows_for_screen (MetaDisplay *display,
+ MetaScreen *screen,
+ guint32 timestamp);
+
+/* Utility function to compare the stacking of two windows */
+int meta_display_stack_cmp (const void *a,
+ const void *b);
+
+/* A given MetaWindow may have various X windows that "belong"
+ * to it, such as the frame window.
+ */
+MetaWindow* meta_display_lookup_x_window (MetaDisplay *display,
+ Window xwindow);
+void meta_display_register_x_window (MetaDisplay *display,
+ Window *xwindowp,
+ MetaWindow *window);
+void meta_display_unregister_x_window (MetaDisplay *display,
+ Window xwindow);
+/* Return whether the xwindow is a no focus window for any of the screens */
+gboolean meta_display_xwindow_is_a_no_focus_window (MetaDisplay *display,
+ Window xwindow);
+
+GSList* meta_display_list_windows (MetaDisplay *display);
+
+MetaDisplay* meta_display_for_x_display (Display *xdisplay);
+MetaDisplay* meta_get_display (void);
+
+Cursor meta_display_create_x_cursor (MetaDisplay *display,
+ MetaCursor cursor);
+
+void meta_display_set_grab_op_cursor (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaGrabOp op,
+ gboolean change_pointer,
+ Window grab_xwindow,
+ guint32 timestamp);
+
+gboolean meta_display_begin_grab_op (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ MetaGrabOp op,
+ gboolean pointer_already_grabbed,
+ gboolean frame_action,
+ int button,
+ gulong modmask,
+ guint32 timestamp,
+ int root_x,
+ int root_y);
+void meta_display_end_grab_op (MetaDisplay *display,
+ guint32 timestamp);
+
+void meta_display_check_threshold_reached (MetaDisplay *display,
+ int x,
+ int y);
+void meta_display_grab_window_buttons (MetaDisplay *display,
+ Window xwindow);
+void meta_display_ungrab_window_buttons (MetaDisplay *display,
+ Window xwindow);
+
+void meta_display_grab_focus_window_button (MetaDisplay *display,
+ MetaWindow *window);
+void meta_display_ungrab_focus_window_button (MetaDisplay *display,
+ MetaWindow *window);
+
+/* Next two functions are defined in edge-resistance.c */
+void meta_display_compute_resistance_and_snapping_edges (MetaDisplay *display);
+void meta_display_cleanup_edges (MetaDisplay *display);
+
+/* make a request to ensure the event serial has changed */
+void meta_display_increment_event_serial (MetaDisplay *display);
+
+void meta_display_update_active_window_hint (MetaDisplay *display);
+
+guint32 meta_display_get_current_time (MetaDisplay *display);
+guint32 meta_display_get_current_time_roundtrip (MetaDisplay *display);
+
+/* utility goo */
+const char* meta_event_mode_to_string (int m);
+const char* meta_event_detail_to_string (int d);
+
+void meta_display_queue_retheme_all_windows (MetaDisplay *display);
+void meta_display_retheme_all (void);
+
+void meta_display_set_cursor_theme (const char *theme,
+ int size);
+
+void meta_display_ping_window (MetaDisplay *display,
+ MetaWindow *window,
+ guint32 timestamp,
+ MetaWindowPingFunc ping_reply_func,
+ MetaWindowPingFunc ping_timeout_func,
+ void *user_data);
+gboolean meta_display_window_has_pending_pings (MetaDisplay *display,
+ MetaWindow *window);
+
+typedef enum
+{
+ META_TAB_LIST_NORMAL,
+ META_TAB_LIST_DOCKS,
+ META_TAB_LIST_GROUP
+} MetaTabList;
+
+typedef enum
+{
+ META_TAB_SHOW_ICON, /* Alt-Tab mode */
+ META_TAB_SHOW_INSTANTLY /* Alt-Esc mode */
+} MetaTabShowType;
+
+GList* meta_display_get_tab_list (MetaDisplay *display,
+ MetaTabList type,
+ MetaScreen *screen,
+ MetaWorkspace *workspace);
+
+MetaWindow* meta_display_get_tab_next (MetaDisplay *display,
+ MetaTabList type,
+ MetaScreen *screen,
+ MetaWorkspace *workspace,
+ MetaWindow *window,
+ gboolean backward);
+
+MetaWindow* meta_display_get_tab_current (MetaDisplay *display,
+ MetaTabList type,
+ MetaScreen *screen,
+ MetaWorkspace *workspace);
+
+int meta_resize_gravity_from_grab_op (MetaGrabOp op);
+
+gboolean meta_grab_op_is_moving (MetaGrabOp op);
+gboolean meta_grab_op_is_resizing (MetaGrabOp op);
+
+void meta_display_devirtualize_modifiers (MetaDisplay *display,
+ MetaVirtualModifier modifiers,
+ unsigned int *mask);
+
+void meta_display_increment_focus_sentinel (MetaDisplay *display);
+void meta_display_decrement_focus_sentinel (MetaDisplay *display);
+gboolean meta_display_focus_sentinel_clear (MetaDisplay *display);
+
+/* meta_display_set_input_focus_window is like XSetInputFocus, except
+ * that (a) it can't detect timestamps later than the current time,
+ * since Marco isn't part of the XServer, and thus gives erroneous
+ * behavior in this circumstance (so don't do it), (b) it uses
+ * display->last_focus_time since we don't have access to the true
+ * Xserver one, (c) it makes use of display->user_time since checking
+ * whether a window should be allowed to be focused should depend
+ * on user_time events (see bug 167358, comment 15 in particular)
+ */
+void meta_display_set_input_focus_window (MetaDisplay *display,
+ MetaWindow *window,
+ gboolean focus_frame,
+ guint32 timestamp);
+
+/* meta_display_focus_the_no_focus_window is called when the
+ * designated no_focus_window should be focused, but is otherwise the
+ * same as meta_display_set_input_focus_window
+ */
+void meta_display_focus_the_no_focus_window (MetaDisplay *display,
+ MetaScreen *screen,
+ guint32 timestamp);
+
+void meta_display_queue_autoraise_callback (MetaDisplay *display,
+ MetaWindow *window);
+void meta_display_remove_autoraise_callback (MetaDisplay *display);
+
+#endif /* META_DISPLAY_PRIVATE_H */
diff --git a/src/core/display.c b/src/core/display.c
new file mode 100644
index 00000000..59ec9021
--- /dev/null
+++ b/src/core/display.c
@@ -0,0 +1,5355 @@
+/* Marco X display handler */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2002, 2003, 2004 Red Hat, Inc.
+ * Copyright (C) 2003, 2004 Rob Adams
+ * Copyright (C) 2004-2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+/**
+ * \file display.c Handles operations on an X display.
+ *
+ * The display is represented as a MetaDisplay struct.
+ */
+
+#include <config.h>
+#include "display-private.h"
+#include "util.h"
+#include "main.h"
+#include "screen-private.h"
+#include "window-private.h"
+#include "window-props.h"
+#include "group-props.h"
+#include "frame-private.h"
+#include "errors.h"
+#include "keybindings.h"
+#include "prefs.h"
+#include "resizepopup.h"
+#include "xprops.h"
+#include "workspace.h"
+#include "bell.h"
+#include "effects.h"
+#include "compositor.h"
+#include <X11/Xatom.h>
+#include <X11/cursorfont.h>
+
+#ifdef HAVE_SOLARIS_XINERAMA
+ #include <X11/extensions/xinerama.h>
+#endif
+
+#ifdef HAVE_XFREE_XINERAMA
+ #include <X11/extensions/Xinerama.h>
+#endif
+
+#ifdef HAVE_RANDR
+ #include <X11/extensions/Xrandr.h>
+#endif
+
+#ifdef HAVE_SHAPE
+ #include <X11/extensions/shape.h>
+#endif
+
+#ifdef HAVE_RENDER
+ #include <X11/extensions/Xrender.h>
+#endif
+
+#ifdef HAVE_XKB
+ #include <X11/XKBlib.h>
+#endif
+
+#ifdef HAVE_XCURSOR
+ #include <X11/Xcursor/Xcursor.h>
+#endif
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ #include <X11/extensions/Xcomposite.h>
+ #include <X11/extensions/Xdamage.h>
+ #include <X11/extensions/Xfixes.h>
+ #include <gtk/gtk.h>
+#endif
+
+#include <string.h>
+
+#define GRAB_OP_IS_WINDOW_SWITCH(g) \
+ (g == META_GRAB_OP_KEYBOARD_TABBING_NORMAL || \
+ g == META_GRAB_OP_KEYBOARD_TABBING_DOCK || \
+ g == META_GRAB_OP_KEYBOARD_TABBING_GROUP || \
+ g == META_GRAB_OP_KEYBOARD_ESCAPING_NORMAL || \
+ g == META_GRAB_OP_KEYBOARD_ESCAPING_DOCK || \
+ g == META_GRAB_OP_KEYBOARD_ESCAPING_GROUP)
+
+/**
+ * \defgroup pings Pings
+ *
+ * Sometimes we want to see whether a window is responding,
+ * so we send it a "ping" message and see whether it sends us back a "pong"
+ * message within a reasonable time. Here we have a system which lets us
+ * nominate one function to be called if we get the pong in time and another
+ * function if we don't. The system is rather more complicated than it needs
+ * to be, since we only ever use it to destroy windows which are asked to
+ * close themselves and don't do so within a reasonable amount of time, and
+ * therefore we always use the same callbacks. It's possible that we might
+ * use it for other things in future, or on the other hand we might decide
+ * that we're never going to do so and simplify it a bit.
+ */
+
+/**
+ * Describes a ping on a window. When we send a ping to a window, we build
+ * one of these structs, and it eventually gets passed to the timeout function
+ * or to the function which handles the response from the window. If the window
+ * does or doesn't respond to the ping, we use this information to deal with
+ * these facts; we have a handler function for each.
+ *
+ * \ingroup pings
+ */
+typedef struct
+{
+ MetaDisplay *display;
+ Window xwindow;
+ guint32 timestamp;
+ MetaWindowPingFunc ping_reply_func;
+ MetaWindowPingFunc ping_timeout_func;
+ void *user_data;
+ guint ping_timeout_id;
+} MetaPingData;
+
+typedef struct
+{
+ MetaDisplay *display;
+ Window xwindow;
+} MetaAutoRaiseData;
+
+/**
+ * The display we're managing. This is a singleton object. (Historically,
+ * this was a list of displays, but there was never any way to add more
+ * than one element to it.) The goofy name is because we don't want it
+ * to shadow the parameter in its object methods.
+ */
+static MetaDisplay *the_display = NULL;
+
+#ifdef WITH_VERBOSE_MODE
+static void meta_spew_event (MetaDisplay *display,
+ XEvent *event);
+#endif
+
+static gboolean event_callback (XEvent *event,
+ gpointer data);
+static Window event_get_modified_window (MetaDisplay *display,
+ XEvent *event);
+static guint32 event_get_time (MetaDisplay *display,
+ XEvent *event);
+static void process_request_frame_extents (MetaDisplay *display,
+ XEvent *event);
+static void process_pong_message (MetaDisplay *display,
+ XEvent *event);
+static void process_selection_request (MetaDisplay *display,
+ XEvent *event);
+static void process_selection_clear (MetaDisplay *display,
+ XEvent *event);
+
+static void update_window_grab_modifiers (MetaDisplay *display);
+
+static void prefs_changed_callback (MetaPreference pref,
+ void *data);
+
+static void sanity_check_timestamps (MetaDisplay *display,
+ guint32 known_good_timestamp);
+
+MetaGroup* get_focussed_group (MetaDisplay *display);
+
+/**
+ * Destructor for MetaPingData structs. Will destroy the
+ * event source for the struct as well.
+ *
+ * \ingroup pings
+ */
+static void
+ping_data_free (MetaPingData *ping_data)
+{
+ /* Remove the timeout */
+ if (ping_data->ping_timeout_id != 0)
+ g_source_remove (ping_data->ping_timeout_id);
+
+ g_free (ping_data);
+}
+
+/**
+ * Frees every pending ping structure for the given X window on the
+ * given display. This means that we also destroy the timeouts.
+ *
+ * \param display The display the window appears on
+ * \param xwindow The X ID of the window whose pings we should remove
+ *
+ * \ingroup pings
+ *
+ */
+static void
+remove_pending_pings_for_window (MetaDisplay *display, Window xwindow)
+{
+ GSList *tmp;
+ GSList *dead;
+
+ /* could obviously be more efficient, don't care */
+
+ /* build list to be removed */
+ dead = NULL;
+ for (tmp = display->pending_pings; tmp; tmp = tmp->next)
+ {
+ MetaPingData *ping_data = tmp->data;
+
+ if (ping_data->xwindow == xwindow)
+ dead = g_slist_prepend (dead, ping_data);
+ }
+
+ /* remove what we found */
+ for (tmp = dead; tmp; tmp = tmp->next)
+ {
+ MetaPingData *ping_data = tmp->data;
+
+ display->pending_pings = g_slist_remove (display->pending_pings, ping_data);
+ ping_data_free (ping_data);
+ }
+
+ g_slist_free (dead);
+}
+
+
+#ifdef HAVE_STARTUP_NOTIFICATION
+static void
+sn_error_trap_push (SnDisplay *sn_display,
+ Display *xdisplay)
+{
+ MetaDisplay *display;
+ display = meta_display_for_x_display (xdisplay);
+ if (display != NULL)
+ meta_error_trap_push (display);
+}
+
+static void
+sn_error_trap_pop (SnDisplay *sn_display,
+ Display *xdisplay)
+{
+ MetaDisplay *display;
+ display = meta_display_for_x_display (xdisplay);
+ if (display != NULL)
+ meta_error_trap_pop (display, FALSE);
+}
+#endif
+
+static void
+enable_compositor (MetaDisplay *display,
+ gboolean composite_windows)
+{
+ GSList *list;
+
+ if (!META_DISPLAY_HAS_COMPOSITE (display) ||
+ !META_DISPLAY_HAS_DAMAGE (display) ||
+ !META_DISPLAY_HAS_XFIXES (display) ||
+ !META_DISPLAY_HAS_RENDER (display))
+ {
+ meta_warning (_("Missing %s extension required for compositing"),
+ !META_DISPLAY_HAS_COMPOSITE (display) ? "composite" :
+ !META_DISPLAY_HAS_DAMAGE (display) ? "damage" :
+ !META_DISPLAY_HAS_XFIXES (display) ? "xfixes" : "render");
+ return;
+ }
+
+ if (!display->compositor)
+ display->compositor = meta_compositor_new (display);
+
+ if (!display->compositor)
+ return;
+
+ for (list = display->screens; list != NULL; list = list->next)
+ {
+ MetaScreen *screen = list->data;
+
+ meta_compositor_manage_screen (screen->display->compositor,
+ screen);
+
+ if (composite_windows)
+ meta_screen_composite_all_windows (screen);
+ }
+}
+
+static void
+disable_compositor (MetaDisplay *display)
+{
+ GSList *list;
+
+ if (!display->compositor)
+ return;
+
+ for (list = display->screens; list != NULL; list = list->next)
+ {
+ MetaScreen *screen = list->data;
+
+ meta_compositor_unmanage_screen (screen->display->compositor,
+ screen);
+ }
+
+ meta_compositor_destroy (display->compositor);
+ display->compositor = NULL;
+}
+
+/**
+ * Opens a new display, sets it up, initialises all the X extensions
+ * we will need, and adds it to the list of displays.
+ *
+ * \return True if the display was opened successfully, and False
+ * otherwise-- that is, if the display doesn't exist or it already
+ * has a window manager.
+ *
+ * \ingroup main
+ */
+gboolean
+meta_display_open (void)
+{
+ Display *xdisplay;
+ GSList *screens;
+ GSList *tmp;
+ int i;
+ guint32 timestamp;
+
+ /* A list of all atom names, so that we can intern them in one go. */
+ char *atom_names[] = {
+#define item(x) #x,
+#include "atomnames.h"
+#undef item
+ };
+ Atom atoms[G_N_ELEMENTS(atom_names)];
+
+ meta_verbose ("Opening display '%s'\n", XDisplayName (NULL));
+
+ xdisplay = meta_ui_get_display ();
+
+ if (xdisplay == NULL)
+ {
+ meta_warning (_("Failed to open X Window System display '%s'\n"),
+ XDisplayName (NULL));
+ return FALSE;
+ }
+
+ if (meta_is_syncing ())
+ XSynchronize (xdisplay, True);
+
+ g_assert (the_display == NULL);
+ the_display = g_new (MetaDisplay, 1);
+
+ the_display->closing = 0;
+
+ /* here we use XDisplayName which is what the user
+ * probably put in, vs. DisplayString(display) which is
+ * canonicalized by XOpenDisplay()
+ */
+ the_display->name = g_strdup (XDisplayName (NULL));
+ the_display->xdisplay = xdisplay;
+ the_display->error_trap_synced_at_last_pop = TRUE;
+ the_display->error_traps = 0;
+ the_display->error_trap_handler = NULL;
+ the_display->server_grab_count = 0;
+ the_display->display_opening = TRUE;
+
+ the_display->pending_pings = NULL;
+ the_display->autoraise_timeout_id = 0;
+ the_display->autoraise_window = NULL;
+ the_display->focus_window = NULL;
+ the_display->expected_focus_window = NULL;
+ the_display->grab_old_window_stacking = NULL;
+
+ the_display->mouse_mode = TRUE; /* Only relevant for mouse or sloppy focus */
+ the_display->allow_terminal_deactivation = TRUE; /* Only relevant for when a
+ terminal has the focus */
+
+#ifdef HAVE_XSYNC
+ the_display->grab_sync_request_alarm = None;
+#endif
+
+ /* FIXME copy the checks from GDK probably */
+ the_display->static_gravity_works = g_getenv ("MARCO_USE_STATIC_GRAVITY") != NULL;
+
+ meta_bell_init (the_display);
+
+ meta_display_init_keys (the_display);
+
+ update_window_grab_modifiers (the_display);
+
+ meta_prefs_add_listener (prefs_changed_callback, the_display);
+
+ meta_verbose ("Creating %d atoms\n", (int) G_N_ELEMENTS (atom_names));
+ XInternAtoms (the_display->xdisplay, atom_names, G_N_ELEMENTS (atom_names),
+ False, atoms);
+ {
+ int i = 0;
+#define item(x) the_display->atom_##x = atoms[i++];
+#include "atomnames.h"
+#undef item
+ }
+
+ the_display->prop_hooks = NULL;
+ meta_display_init_window_prop_hooks (the_display);
+ the_display->group_prop_hooks = NULL;
+ meta_display_init_group_prop_hooks (the_display);
+
+ /* Offscreen unmapped window used for _NET_SUPPORTING_WM_CHECK,
+ * created in screen_new
+ */
+ the_display->leader_window = None;
+ the_display->timestamp_pinging_window = None;
+
+ the_display->xinerama_cache_invalidated = TRUE;
+
+ the_display->groups_by_leader = NULL;
+
+ the_display->window_with_menu = NULL;
+ the_display->window_menu = NULL;
+
+ the_display->screens = NULL;
+ the_display->active_screen = NULL;
+
+#ifdef HAVE_STARTUP_NOTIFICATION
+ the_display->sn_display = sn_display_new (the_display->xdisplay,
+ sn_error_trap_push,
+ sn_error_trap_pop);
+#endif
+
+ the_display->events = NULL;
+
+ /* Get events */
+ meta_ui_add_event_func (the_display->xdisplay,
+ event_callback,
+ the_display);
+
+ the_display->window_ids = g_hash_table_new (meta_unsigned_long_hash,
+ meta_unsigned_long_equal);
+
+ i = 0;
+ while (i < N_IGNORED_SERIALS)
+ {
+ the_display->ignored_serials[i] = 0;
+ ++i;
+ }
+ the_display->ungrab_should_not_cause_focus_window = None;
+
+ the_display->current_time = CurrentTime;
+ the_display->sentinel_counter = 0;
+
+ the_display->grab_resize_timeout_id = 0;
+ the_display->grab_have_keyboard = FALSE;
+
+#ifdef HAVE_XKB
+ the_display->last_bell_time = 0;
+#endif
+
+ the_display->grab_op = META_GRAB_OP_NONE;
+ the_display->grab_wireframe_active = FALSE;
+ the_display->grab_window = NULL;
+ the_display->grab_screen = NULL;
+ the_display->grab_resize_popup = NULL;
+
+ the_display->grab_edge_resistance_data = NULL;
+
+#ifdef HAVE_XSYNC
+ {
+ int major, minor;
+
+ the_display->have_xsync = FALSE;
+
+ the_display->xsync_error_base = 0;
+ the_display->xsync_event_base = 0;
+
+ /* I don't think we really have to fill these in */
+ major = SYNC_MAJOR_VERSION;
+ minor = SYNC_MINOR_VERSION;
+
+ if (!XSyncQueryExtension (the_display->xdisplay,
+ &the_display->xsync_event_base,
+ &the_display->xsync_error_base) ||
+ !XSyncInitialize (the_display->xdisplay,
+ &major, &minor))
+ {
+ the_display->xsync_error_base = 0;
+ the_display->xsync_event_base = 0;
+ }
+ else
+ the_display->have_xsync = TRUE;
+
+ meta_verbose ("Attempted to init Xsync, found version %d.%d error base %d event base %d\n",
+ major, minor,
+ the_display->xsync_error_base,
+ the_display->xsync_event_base);
+ }
+#else /* HAVE_XSYNC */
+ meta_verbose ("Not compiled with Xsync support\n");
+#endif /* !HAVE_XSYNC */
+
+
+#ifdef HAVE_SHAPE
+ {
+ the_display->have_shape = FALSE;
+
+ the_display->shape_error_base = 0;
+ the_display->shape_event_base = 0;
+
+ if (!XShapeQueryExtension (the_display->xdisplay,
+ &the_display->shape_event_base,
+ &the_display->shape_error_base))
+ {
+ the_display->shape_error_base = 0;
+ the_display->shape_event_base = 0;
+ }
+ else
+ the_display->have_shape = TRUE;
+
+ meta_verbose ("Attempted to init Shape, found error base %d event base %d\n",
+ the_display->shape_error_base,
+ the_display->shape_event_base);
+ }
+#else /* HAVE_SHAPE */
+ meta_verbose ("Not compiled with Shape support\n");
+#endif /* !HAVE_SHAPE */
+
+#ifdef HAVE_RENDER
+ {
+ the_display->have_render = FALSE;
+
+ the_display->render_error_base = 0;
+ the_display->render_event_base = 0;
+
+ if (!XRenderQueryExtension (the_display->xdisplay,
+ &the_display->render_event_base,
+ &the_display->render_error_base))
+ {
+ the_display->render_error_base = 0;
+ the_display->render_event_base = 0;
+ }
+ else
+ the_display->have_render = TRUE;
+
+ meta_verbose ("Attempted to init Render, found error base %d event base %d\n",
+ the_display->render_error_base,
+ the_display->render_event_base);
+ }
+#else /* HAVE_RENDER */
+ meta_verbose ("Not compiled with Render support\n");
+#endif /* !HAVE_RENDER */
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ {
+ the_display->have_composite = FALSE;
+
+ the_display->composite_error_base = 0;
+ the_display->composite_event_base = 0;
+
+ if (!XCompositeQueryExtension (the_display->xdisplay,
+ &the_display->composite_event_base,
+ &the_display->composite_error_base))
+ {
+ the_display->composite_error_base = 0;
+ the_display->composite_event_base = 0;
+ }
+ else
+ {
+ the_display->composite_major_version = 0;
+ the_display->composite_minor_version = 0;
+ if (XCompositeQueryVersion (the_display->xdisplay,
+ &the_display->composite_major_version,
+ &the_display->composite_minor_version))
+ {
+ the_display->have_composite = TRUE;
+ }
+ else
+ {
+ the_display->composite_major_version = 0;
+ the_display->composite_minor_version = 0;
+ }
+ }
+
+ meta_verbose ("Attempted to init Composite, found error base %d event base %d "
+ "extn ver %d %d\n",
+ the_display->composite_error_base,
+ the_display->composite_event_base,
+ the_display->composite_major_version,
+ the_display->composite_minor_version);
+
+ the_display->have_damage = FALSE;
+
+ the_display->damage_error_base = 0;
+ the_display->damage_event_base = 0;
+
+ if (!XDamageQueryExtension (the_display->xdisplay,
+ &the_display->damage_event_base,
+ &the_display->damage_error_base))
+ {
+ the_display->damage_error_base = 0;
+ the_display->damage_event_base = 0;
+ }
+ else
+ the_display->have_damage = TRUE;
+
+ meta_verbose ("Attempted to init Damage, found error base %d event base %d\n",
+ the_display->damage_error_base,
+ the_display->damage_event_base);
+
+ the_display->have_xfixes = FALSE;
+
+ the_display->xfixes_error_base = 0;
+ the_display->xfixes_event_base = 0;
+
+ if (!XFixesQueryExtension (the_display->xdisplay,
+ &the_display->xfixes_event_base,
+ &the_display->xfixes_error_base))
+ {
+ the_display->xfixes_error_base = 0;
+ the_display->xfixes_event_base = 0;
+ }
+ else
+ the_display->have_xfixes = TRUE;
+
+ meta_verbose ("Attempted to init XFixes, found error base %d event base %d\n",
+ the_display->xfixes_error_base,
+ the_display->xfixes_event_base);
+ }
+#else /* HAVE_COMPOSITE_EXTENSIONS */
+ meta_verbose ("Not compiled with Composite support\n");
+#endif /* !HAVE_COMPOSITE_EXTENSIONS */
+
+#ifdef HAVE_XCURSOR
+ {
+ XcursorSetTheme (the_display->xdisplay, meta_prefs_get_cursor_theme ());
+ XcursorSetDefaultSize (the_display->xdisplay, meta_prefs_get_cursor_size ());
+ }
+#else /* HAVE_XCURSOR */
+ meta_verbose ("Not compiled with Xcursor support\n");
+#endif /* !HAVE_XCURSOR */
+
+ /* Create the leader window here. Set its properties and
+ * use the timestamp from one of the PropertyNotify events
+ * that will follow.
+ */
+ {
+ gulong data[1];
+ XEvent event;
+
+ /* We only care about the PropertyChangeMask in the next 30 or so lines of
+ * code. Note that gdk will at some point unset the PropertyChangeMask for
+ * this window, so we can't rely on it still being set later. See bug
+ * 354213 for details.
+ */
+ the_display->leader_window =
+ meta_create_offscreen_window (the_display->xdisplay,
+ DefaultRootWindow (the_display->xdisplay),
+ PropertyChangeMask);
+
+ meta_prop_set_utf8_string_hint (the_display,
+ the_display->leader_window,
+ the_display->atom__NET_WM_NAME,
+ "Marco");
+
+ meta_prop_set_utf8_string_hint (the_display,
+ the_display->leader_window,
+ the_display->atom__MARCO_VERSION,
+ VERSION);
+
+ data[0] = the_display->leader_window;
+ XChangeProperty (the_display->xdisplay,
+ the_display->leader_window,
+ the_display->atom__NET_SUPPORTING_WM_CHECK,
+ XA_WINDOW,
+ 32, PropModeReplace, (guchar*) data, 1);
+
+ XWindowEvent (the_display->xdisplay,
+ the_display->leader_window,
+ PropertyChangeMask,
+ &event);
+
+ timestamp = event.xproperty.time;
+
+ /* Make it painfully clear that we can't rely on PropertyNotify events on
+ * this window, as per bug 354213.
+ */
+ XSelectInput(the_display->xdisplay,
+ the_display->leader_window,
+ NoEventMask);
+ }
+
+ /* Make a little window used only for pinging the server for timestamps; note
+ * that meta_create_offscreen_window already selects for PropertyChangeMask.
+ */
+ the_display->timestamp_pinging_window =
+ meta_create_offscreen_window (the_display->xdisplay,
+ DefaultRootWindow (the_display->xdisplay),
+ PropertyChangeMask);
+
+ the_display->last_focus_time = timestamp;
+ the_display->last_user_time = timestamp;
+ the_display->compositor = NULL;
+
+ screens = NULL;
+
+ i = 0;
+ while (i < ScreenCount (xdisplay))
+ {
+ MetaScreen *screen;
+
+ screen = meta_screen_new (the_display, i, timestamp);
+
+ if (screen)
+ screens = g_slist_prepend (screens, screen);
+ ++i;
+ }
+
+ the_display->screens = screens;
+
+ if (screens == NULL)
+ {
+ /* This would typically happen because all the screens already
+ * have window managers.
+ */
+ meta_display_close (the_display, timestamp);
+ return FALSE;
+ }
+
+ /* We don't composite the windows here because they will be composited
+ faster with the call to meta_screen_manage_all_windows further down
+ the code */
+ if (meta_prefs_get_compositing_manager ())
+ enable_compositor (the_display, FALSE);
+
+ meta_display_grab (the_display);
+
+ /* Now manage all existing windows */
+ tmp = the_display->screens;
+ while (tmp != NULL)
+ {
+ MetaScreen *screen = tmp->data;
+
+ meta_screen_manage_all_windows (screen);
+
+ tmp = tmp->next;
+ }
+
+ {
+ Window focus;
+ int ret_to;
+
+ /* kinda bogus because GetInputFocus has no possible errors */
+ meta_error_trap_push (the_display);
+
+ /* FIXME: This is totally broken; see comment 9 of bug 88194 about this */
+ focus = None;
+ ret_to = RevertToPointerRoot;
+ XGetInputFocus (the_display->xdisplay, &focus, &ret_to);
+
+ /* Force a new FocusIn (does this work?) */
+
+ /* Use the same timestamp that was passed to meta_screen_new(),
+ * as it is the most recent timestamp.
+ */
+ if (focus == None || focus == PointerRoot)
+ /* Just focus the no_focus_window on the first screen */
+ meta_display_focus_the_no_focus_window (the_display,
+ the_display->screens->data,
+ timestamp);
+ else
+ {
+ MetaWindow * window;
+ window = meta_display_lookup_x_window (the_display, focus);
+ if (window)
+ meta_display_set_input_focus_window (the_display, window, FALSE, timestamp);
+ else
+ /* Just focus the no_focus_window on the first screen */
+ meta_display_focus_the_no_focus_window (the_display,
+ the_display->screens->data,
+ timestamp);
+ }
+
+ meta_error_trap_pop (the_display, FALSE);
+ }
+
+ meta_display_ungrab (the_display);
+
+ /* Done opening new display */
+ the_display->display_opening = FALSE;
+
+ return TRUE;
+}
+
+static void
+listify_func (gpointer key, gpointer value, gpointer data)
+{
+ GSList **listp;
+
+ listp = data;
+ *listp = g_slist_prepend (*listp, value);
+}
+
+static gint
+ptrcmp (gconstpointer a, gconstpointer b)
+{
+ if (a < b)
+ return -1;
+ else if (a > b)
+ return 1;
+ else
+ return 0;
+}
+
+GSList*
+meta_display_list_windows (MetaDisplay *display)
+{
+ GSList *winlist;
+ GSList *tmp;
+ GSList *prev;
+
+ winlist = NULL;
+ g_hash_table_foreach (display->window_ids,
+ listify_func,
+ &winlist);
+
+ /* Uniquify the list, since both frame windows and plain
+ * windows are in the hash
+ */
+ winlist = g_slist_sort (winlist, ptrcmp);
+
+ prev = NULL;
+ tmp = winlist;
+ while (tmp != NULL)
+ {
+ GSList *next;
+
+ next = tmp->next;
+
+ if (next &&
+ next->data == tmp->data)
+ {
+ /* Delete tmp from list */
+
+ if (prev)
+ prev->next = next;
+
+ if (tmp == winlist)
+ winlist = next;
+
+ g_slist_free_1 (tmp);
+
+ /* leave prev unchanged */
+ }
+ else
+ {
+ prev = tmp;
+ }
+
+ tmp = next;
+ }
+
+ return winlist;
+}
+
+void
+meta_display_close (MetaDisplay *display,
+ guint32 timestamp)
+{
+ GSList *tmp;
+
+ g_assert (display != NULL);
+
+ if (display->closing != 0)
+ {
+ /* The display's already been closed. */
+ return;
+ }
+
+ if (display->error_traps > 0)
+ meta_bug ("Display closed with error traps pending\n");
+
+ display->closing += 1;
+
+ meta_prefs_remove_listener (prefs_changed_callback, display);
+
+ meta_display_remove_autoraise_callback (display);
+
+ if (display->grab_old_window_stacking)
+ g_list_free (display->grab_old_window_stacking);
+
+ /* Stop caring about events */
+ meta_ui_remove_event_func (display->xdisplay,
+ event_callback,
+ display);
+
+ /* Free all screens */
+ tmp = display->screens;
+ while (tmp != NULL)
+ {
+ MetaScreen *screen = tmp->data;
+ meta_screen_free (screen, timestamp);
+ tmp = tmp->next;
+ }
+
+ g_slist_free (display->screens);
+ display->screens = NULL;
+
+#ifdef HAVE_STARTUP_NOTIFICATION
+ if (display->sn_display)
+ {
+ sn_display_unref (display->sn_display);
+ display->sn_display = NULL;
+ }
+#endif
+
+ /* Must be after all calls to meta_window_free() since they
+ * unregister windows
+ */
+ g_hash_table_destroy (display->window_ids);
+
+ if (display->leader_window != None)
+ XDestroyWindow (display->xdisplay, display->leader_window);
+
+ XFlush (display->xdisplay);
+
+ meta_display_free_window_prop_hooks (display);
+ meta_display_free_group_prop_hooks (display);
+
+ g_free (display->name);
+
+ meta_display_shutdown_keys (display);
+
+ if (display->compositor)
+ meta_compositor_destroy (display->compositor);
+
+ g_free (display);
+ display = NULL;
+
+ meta_quit (META_EXIT_SUCCESS);
+}
+
+MetaScreen*
+meta_display_screen_for_root (MetaDisplay *display,
+ Window xroot)
+{
+ GSList *tmp;
+
+ tmp = display->screens;
+ while (tmp != NULL)
+ {
+ MetaScreen *screen = tmp->data;
+
+ if (xroot == screen->xroot)
+ return screen;
+
+ tmp = tmp->next;
+ }
+
+ return NULL;
+}
+
+MetaScreen*
+meta_display_screen_for_xwindow (MetaDisplay *display,
+ Window xwindow)
+{
+ XWindowAttributes attr;
+ int result;
+
+ meta_error_trap_push (display);
+ attr.screen = NULL;
+ result = XGetWindowAttributes (display->xdisplay, xwindow, &attr);
+ meta_error_trap_pop (display, TRUE);
+
+ /* Note, XGetWindowAttributes is on all kinds of crack
+ * and returns 1 on success 0 on failure, rather than Success
+ * on success.
+ */
+ if (result == 0 || attr.screen == NULL)
+ return NULL;
+
+ return meta_display_screen_for_x_screen (display, attr.screen);
+}
+
+MetaScreen*
+meta_display_screen_for_x_screen (MetaDisplay *display,
+ Screen *xscreen)
+{
+ GSList *tmp;
+
+ tmp = display->screens;
+ while (tmp != NULL)
+ {
+ MetaScreen *screen = tmp->data;
+
+ if (xscreen == screen->xscreen)
+ return screen;
+
+ tmp = tmp->next;
+ }
+
+ return NULL;
+}
+
+/* Grab/ungrab routines taken from fvwm */
+void
+meta_display_grab (MetaDisplay *display)
+{
+ if (display->server_grab_count == 0)
+ {
+ XGrabServer (display->xdisplay);
+ }
+ display->server_grab_count += 1;
+ meta_verbose ("Grabbing display, grab count now %d\n",
+ display->server_grab_count);
+}
+
+void
+meta_display_ungrab (MetaDisplay *display)
+{
+ if (display->server_grab_count == 0)
+ meta_bug ("Ungrabbed non-grabbed server\n");
+
+ display->server_grab_count -= 1;
+ if (display->server_grab_count == 0)
+ {
+ /* FIXME we want to purge all pending "queued" stuff
+ * at this point, such as window hide/show
+ */
+ XUngrabServer (display->xdisplay);
+ XFlush (display->xdisplay);
+ }
+
+ meta_verbose ("Ungrabbing display, grab count now %d\n",
+ display->server_grab_count);
+}
+
+/**
+ * Returns the singleton MetaDisplay if "xdisplay" matches the X display it's
+ * managing; otherwise gives a warning and returns NULL. When we were claiming
+ * to be able to manage multiple displays, this was supposed to find the
+ * display out of the list which matched that display. Now it's merely an
+ * extra sanity check.
+ *
+ * \param xdisplay An X display
+ * \return The singleton X display, or NULL if "xdisplay" isn't the one
+ * we're managing.
+ */
+MetaDisplay*
+meta_display_for_x_display (Display *xdisplay)
+{
+ if (the_display->xdisplay == xdisplay)
+ return the_display;
+
+ meta_warning ("Could not find display for X display %p, probably going to crash\n",
+ xdisplay);
+
+ return NULL;
+}
+
+/**
+ * Accessor for the singleton MetaDisplay.
+ *
+ * \return The only MetaDisplay there is. This can be NULL, but only
+ * during startup.
+ */
+MetaDisplay*
+meta_get_display (void)
+{
+ return the_display;
+}
+
+#ifdef WITH_VERBOSE_MODE
+static gboolean dump_events = TRUE;
+#endif
+
+static gboolean
+grab_op_is_mouse_only (MetaGrabOp op)
+{
+ switch (op)
+ {
+ case META_GRAB_OP_MOVING:
+ case META_GRAB_OP_RESIZING_SE:
+ case META_GRAB_OP_RESIZING_S:
+ case META_GRAB_OP_RESIZING_SW:
+ case META_GRAB_OP_RESIZING_N:
+ case META_GRAB_OP_RESIZING_NE:
+ case META_GRAB_OP_RESIZING_NW:
+ case META_GRAB_OP_RESIZING_W:
+ case META_GRAB_OP_RESIZING_E:
+ return TRUE;
+
+ default:
+ return FALSE;
+ }
+}
+
+static gboolean
+grab_op_is_mouse (MetaGrabOp op)
+{
+ switch (op)
+ {
+ case META_GRAB_OP_MOVING:
+ case META_GRAB_OP_RESIZING_SE:
+ case META_GRAB_OP_RESIZING_S:
+ case META_GRAB_OP_RESIZING_SW:
+ case META_GRAB_OP_RESIZING_N:
+ case META_GRAB_OP_RESIZING_NE:
+ case META_GRAB_OP_RESIZING_NW:
+ case META_GRAB_OP_RESIZING_W:
+ case META_GRAB_OP_RESIZING_E:
+ case META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN:
+ case META_GRAB_OP_KEYBOARD_RESIZING_S:
+ case META_GRAB_OP_KEYBOARD_RESIZING_N:
+ case META_GRAB_OP_KEYBOARD_RESIZING_W:
+ case META_GRAB_OP_KEYBOARD_RESIZING_E:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ case META_GRAB_OP_KEYBOARD_MOVING:
+ return TRUE;
+
+ default:
+ return FALSE;
+ }
+}
+
+static gboolean
+grab_op_is_keyboard (MetaGrabOp op)
+{
+ switch (op)
+ {
+ case META_GRAB_OP_KEYBOARD_MOVING:
+ case META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN:
+ case META_GRAB_OP_KEYBOARD_RESIZING_S:
+ case META_GRAB_OP_KEYBOARD_RESIZING_N:
+ case META_GRAB_OP_KEYBOARD_RESIZING_W:
+ case META_GRAB_OP_KEYBOARD_RESIZING_E:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ case META_GRAB_OP_KEYBOARD_TABBING_NORMAL:
+ case META_GRAB_OP_KEYBOARD_TABBING_DOCK:
+ case META_GRAB_OP_KEYBOARD_TABBING_GROUP:
+ case META_GRAB_OP_KEYBOARD_ESCAPING_NORMAL:
+ case META_GRAB_OP_KEYBOARD_ESCAPING_DOCK:
+ case META_GRAB_OP_KEYBOARD_ESCAPING_GROUP:
+ case META_GRAB_OP_KEYBOARD_WORKSPACE_SWITCHING:
+ return TRUE;
+
+ default:
+ return FALSE;
+ }
+}
+
+gboolean
+meta_grab_op_is_resizing (MetaGrabOp op)
+{
+ switch (op)
+ {
+ case META_GRAB_OP_RESIZING_SE:
+ case META_GRAB_OP_RESIZING_S:
+ case META_GRAB_OP_RESIZING_SW:
+ case META_GRAB_OP_RESIZING_N:
+ case META_GRAB_OP_RESIZING_NE:
+ case META_GRAB_OP_RESIZING_NW:
+ case META_GRAB_OP_RESIZING_W:
+ case META_GRAB_OP_RESIZING_E:
+ case META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN:
+ case META_GRAB_OP_KEYBOARD_RESIZING_S:
+ case META_GRAB_OP_KEYBOARD_RESIZING_N:
+ case META_GRAB_OP_KEYBOARD_RESIZING_W:
+ case META_GRAB_OP_KEYBOARD_RESIZING_E:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ return TRUE;
+
+ default:
+ return FALSE;
+ }
+}
+
+gboolean
+meta_grab_op_is_moving (MetaGrabOp op)
+{
+ switch (op)
+ {
+ case META_GRAB_OP_MOVING:
+ case META_GRAB_OP_KEYBOARD_MOVING:
+ return TRUE;
+
+ default:
+ return FALSE;
+ }
+}
+
+/* Get time of current event, or CurrentTime if none. */
+guint32
+meta_display_get_current_time (MetaDisplay *display)
+{
+ return display->current_time;
+}
+
+/* Get a timestamp, even if it means a roundtrip */
+guint32
+meta_display_get_current_time_roundtrip (MetaDisplay *display)
+{
+ guint32 timestamp;
+
+ timestamp = meta_display_get_current_time (display);
+ if (timestamp == CurrentTime)
+ {
+ XEvent property_event;
+
+ /* Using the property XA_PRIMARY because it's safe; nothing
+ * would use it as a property. The type doesn't matter.
+ */
+ XChangeProperty (display->xdisplay,
+ display->timestamp_pinging_window,
+ XA_PRIMARY, XA_STRING, 8,
+ PropModeAppend, NULL, 0);
+ XWindowEvent (display->xdisplay,
+ display->timestamp_pinging_window,
+ PropertyChangeMask,
+ &property_event);
+ timestamp = property_event.xproperty.time;
+ }
+
+ sanity_check_timestamps (display, timestamp);
+
+ return timestamp;
+}
+
+static void
+add_ignored_serial (MetaDisplay *display,
+ unsigned long serial)
+{
+ int i;
+
+ /* don't add the same serial more than once */
+ if (display->ignored_serials[N_IGNORED_SERIALS-1] == serial)
+ return;
+
+ /* shift serials to the left */
+ i = 0;
+ while (i < (N_IGNORED_SERIALS - 1))
+ {
+ display->ignored_serials[i] = display->ignored_serials[i+1];
+ ++i;
+ }
+ /* put new one on the end */
+ display->ignored_serials[i] = serial;
+}
+
+static gboolean
+serial_is_ignored (MetaDisplay *display,
+ unsigned long serial)
+{
+ int i;
+
+ i = 0;
+ while (i < N_IGNORED_SERIALS)
+ {
+ if (display->ignored_serials[i] == serial)
+ return TRUE;
+ ++i;
+ }
+ return FALSE;
+}
+
+static void
+reset_ignores (MetaDisplay *display)
+{
+ int i;
+
+ i = 0;
+ while (i < N_IGNORED_SERIALS)
+ {
+ display->ignored_serials[i] = 0;
+ ++i;
+ }
+
+ display->ungrab_should_not_cause_focus_window = None;
+}
+
+static gboolean
+window_raise_with_delay_callback (void *data)
+{
+ MetaWindow *window;
+ MetaAutoRaiseData *auto_raise;
+
+ auto_raise = data;
+
+ meta_topic (META_DEBUG_FOCUS,
+ "In autoraise callback for window 0x%lx\n",
+ auto_raise->xwindow);
+
+ auto_raise->display->autoraise_timeout_id = 0;
+ auto_raise->display->autoraise_window = NULL;
+
+ window = meta_display_lookup_x_window (auto_raise->display,
+ auto_raise->xwindow);
+
+ if (window == NULL)
+ return FALSE;
+
+ /* If we aren't already on top, check whether the pointer is inside
+ * the window and raise the window if so.
+ */
+ if (meta_stack_get_top (window->screen->stack) != window)
+ {
+ int x, y, root_x, root_y;
+ Window root, child;
+ unsigned int mask;
+ gboolean same_screen;
+ gboolean point_in_window;
+
+ meta_error_trap_push (window->display);
+ same_screen = XQueryPointer (window->display->xdisplay,
+ window->xwindow,
+ &root, &child,
+ &root_x, &root_y, &x, &y, &mask);
+ meta_error_trap_pop (window->display, TRUE);
+
+ point_in_window =
+ (window->frame && POINT_IN_RECT (root_x, root_y, window->frame->rect)) ||
+ (window->frame == NULL && POINT_IN_RECT (root_x, root_y, window->rect));
+ if (same_screen && point_in_window)
+ meta_window_raise (window);
+ else
+ meta_topic (META_DEBUG_FOCUS,
+ "Pointer not inside window, not raising %s\n",
+ window->desc);
+ }
+
+ return FALSE;
+}
+
+void
+meta_display_queue_autoraise_callback (MetaDisplay *display,
+ MetaWindow *window)
+{
+ MetaAutoRaiseData *auto_raise_data;
+
+ meta_topic (META_DEBUG_FOCUS,
+ "Queuing an autoraise timeout for %s with delay %d\n",
+ window->desc,
+ meta_prefs_get_auto_raise_delay ());
+
+ auto_raise_data = g_new (MetaAutoRaiseData, 1);
+ auto_raise_data->display = window->display;
+ auto_raise_data->xwindow = window->xwindow;
+
+ if (display->autoraise_timeout_id != 0)
+ g_source_remove (display->autoraise_timeout_id);
+
+ display->autoraise_timeout_id =
+ g_timeout_add_full (G_PRIORITY_DEFAULT,
+ meta_prefs_get_auto_raise_delay (),
+ window_raise_with_delay_callback,
+ auto_raise_data,
+ g_free);
+ display->autoraise_window = window;
+}
+
+#if 0
+static void
+handle_net_restack_window (MetaDisplay* display,
+ XEvent *event)
+{
+ MetaWindow *window;
+
+ window = meta_display_lookup_x_window (display,
+ event->xclient.window);
+
+ if (window)
+ {
+ /* FIXME: The EWMH includes a sibling for the restack request, but we
+ * (stupidly) don't currently support these types of raises.
+ *
+ * Also, unconditionally following these is REALLY stupid--we should
+ * combine this code with the stuff in
+ * meta_window_configure_request() which is smart about whether to
+ * follow the request or do something else (though not smart enough
+ * and is also too stupid to handle the sibling stuff).
+ */
+ switch (event->xclient.data.l[2])
+ {
+ case Above:
+ meta_window_raise (window);
+ break;
+ case Below:
+ meta_window_lower (window);
+ break;
+ case TopIf:
+ case BottomIf:
+ case Opposite:
+ break;
+ }
+ }
+}
+#endif
+
+/* We do some of our event handling in core/frames.c, which expects
+ * GDK events delivered by GTK+. However, since the transition to
+ * client side windows, we can't let GDK see button events, since the
+ * client-side tracking of implicit and explicit grabs it does will
+ * get confused by our direct use of X grabs.
+ *
+ * So we do a very minimal GDK => GTK event conversion here and send on the
+ * events we care about, and then filter them out so they don't go
+ * through the normal GDK event handling.
+ *
+ * To reduce the amount of code, the only events fields filled out
+ * below are the ones that frames.c uses. If frames.c is modified to
+ * use more fields, more fields need to be filled out below.
+ *
+ * https://github.com/stefano-k/Mate-Desktop-Environment/commit/b0e5fb03eb21dae8f02692f11ef391bfc5ccba33
+ */
+
+static gboolean maybe_send_event_to_gtk(MetaDisplay* display, XEvent* xevent)
+{
+ /* We're always using the default display */
+ GdkDisplay* gdk_display = gdk_display_get_default();
+ GdkEvent gdk_event;
+ GdkWindow* gdk_window;
+ Window window;
+
+ switch (xevent->type)
+ {
+ case ButtonPress:
+ case ButtonRelease:
+ window = xevent->xbutton.window;
+ break;
+
+ case MotionNotify:
+ window = xevent->xmotion.window;
+ break;
+
+ case EnterNotify:
+
+ case LeaveNotify:
+ window = xevent->xcrossing.window;
+ break;
+
+ default:
+ return FALSE;
+ }
+
+ gdk_window = gdk_window_lookup_for_display(gdk_display, window);
+
+ if (gdk_window == NULL)
+ {
+ return FALSE;
+ }
+
+ /* If GDK already things it has a grab, we better let it see events; this
+ * is the menu-navigation case and events need to get sent to the appropriate
+ * (client-side) subwindow for individual menu items.
+ */
+
+ if (gdk_display_pointer_is_grabbed(gdk_display))
+ {
+ return FALSE;
+ }
+
+ memset(&gdk_event, 0, sizeof(gdk_event));
+
+ switch (xevent->type)
+ {
+
+ case ButtonPress:
+
+ case ButtonRelease:
+
+ if (xevent->type == ButtonPress)
+ {
+ GtkSettings* settings = gtk_settings_get_default();
+
+ int double_click_time;
+ int double_click_distance;
+
+ g_object_get (settings,
+ "gtk-double-click-time", &double_click_time,
+ "gtk-double-click-distance", &double_click_distance,
+ NULL);
+
+ if (xevent->xbutton.button == display->button_click_number &&
+ xevent->xbutton.window == display->button_click_window &&
+ xevent->xbutton.time < display->button_click_time + double_click_time &&
+ ABS(xevent->xbutton.x - display->button_click_x) <= double_click_distance &&
+ ABS (xevent->xbutton.y - display->button_click_y) <= double_click_distance)
+ {
+
+ gdk_event.button.type = GDK_2BUTTON_PRESS;
+ display->button_click_number = 0;
+ }
+ else
+ {
+ gdk_event.button.type = GDK_BUTTON_PRESS;
+ display->button_click_number = xevent->xbutton.button;
+ display->button_click_window = xevent->xbutton.window;
+ display->button_click_time = xevent->xbutton.time;
+ display->button_click_x = xevent->xbutton.x;
+ display->button_click_y = xevent->xbutton.y;
+ }
+ }
+ else
+ {
+ gdk_event.button.type = GDK_BUTTON_RELEASE;
+ }
+
+ gdk_event.button.window = gdk_window;
+ gdk_event.button.button = xevent->xbutton.button;
+ gdk_event.button.time = xevent->xbutton.time;
+ gdk_event.button.x = xevent->xbutton.x;
+ gdk_event.button.y = xevent->xbutton.y;
+ gdk_event.button.x_root = xevent->xbutton.x_root;
+ gdk_event.button.y_root = xevent->xbutton.y_root;
+
+ break;
+
+ case MotionNotify:
+ gdk_event.motion.type = GDK_MOTION_NOTIFY;
+ gdk_event.motion.window = gdk_window;
+ break;
+
+ case EnterNotify:
+
+ case LeaveNotify:
+ gdk_event.crossing.type = xevent->type == EnterNotify ? GDK_ENTER_NOTIFY : GDK_LEAVE_NOTIFY;
+ gdk_event.crossing.window = gdk_window;
+ gdk_event.crossing.x = xevent->xcrossing.x;
+ gdk_event.crossing.y = xevent->xcrossing.y;
+ break;
+
+ default:
+ g_assert_not_reached();
+ break;
+ }
+
+ /* If we've gotten here, we've filled in the gdk_event and should send it on */
+ gtk_main_do_event(&gdk_event);
+ return TRUE;
+}
+
+/**
+ * This is the most important function in the whole program. It is the heart,
+ * it is the nexus, it is the Grand Central Station of Marco's world.
+ * When we create a MetaDisplay, we ask GDK to pass *all* events for *all*
+ * windows to this function. So every time anything happens that we might
+ * want to know about, this function gets called. You see why it gets a bit
+ * busy around here. Most of this function is a ginormous switch statement
+ * dealing with all the kinds of events that might turn up.
+ *
+ * \param event The event that just happened
+ * \param data The MetaDisplay that events are coming from, cast to a gpointer
+ * so that it can be sent to a callback
+ *
+ * \ingroup main
+ */
+static gboolean event_callback(XEvent* event, gpointer data)
+{
+ MetaWindow *window;
+ MetaWindow *property_for_window;
+ MetaDisplay *display;
+ Window modified;
+ gboolean frame_was_receiver;
+ gboolean filter_out_event;
+
+ display = data;
+
+#ifdef WITH_VERBOSE_MODE
+ if (dump_events)
+ meta_spew_event (display, event);
+#endif
+
+#ifdef HAVE_STARTUP_NOTIFICATION
+ sn_display_process_event (display->sn_display, event);
+#endif
+
+ filter_out_event = FALSE;
+ display->current_time = event_get_time (display, event);
+ display->xinerama_cache_invalidated = TRUE;
+
+ modified = event_get_modified_window (display, event);
+
+ if (event->type == ButtonPress)
+ {
+ /* filter out scrollwheel */
+ if (event->xbutton.button == 4 ||
+ event->xbutton.button == 5)
+ return FALSE;
+ }
+ else if (event->type == UnmapNotify)
+ {
+ if (meta_ui_window_should_not_cause_focus (display->xdisplay,
+ modified))
+ {
+ add_ignored_serial (display, event->xany.serial);
+ meta_topic (META_DEBUG_FOCUS,
+ "Adding EnterNotify serial %lu to ignored focus serials\n",
+ event->xany.serial);
+ }
+ }
+ else if (event->type == LeaveNotify &&
+ event->xcrossing.mode == NotifyUngrab &&
+ modified == display->ungrab_should_not_cause_focus_window)
+ {
+ add_ignored_serial (display, event->xany.serial);
+ meta_topic (META_DEBUG_FOCUS,
+ "Adding LeaveNotify serial %lu to ignored focus serials\n",
+ event->xany.serial);
+ }
+
+ if (modified != None)
+ window = meta_display_lookup_x_window (display, modified);
+ else
+ window = NULL;
+
+ /* We only want to respond to _NET_WM_USER_TIME property notify
+ * events on _NET_WM_USER_TIME_WINDOW windows; in particular,
+ * responding to UnmapNotify events is kind of bad.
+ */
+ property_for_window = NULL;
+ if (window && modified == window->user_time_window)
+ {
+ property_for_window = window;
+ window = NULL;
+ }
+
+
+ frame_was_receiver = FALSE;
+ if (window &&
+ window->frame &&
+ modified == window->frame->xwindow)
+ {
+ /* Note that if the frame and the client both have an
+ * XGrabButton (as is normal with our setup), the event
+ * goes to the frame.
+ */
+ frame_was_receiver = TRUE;
+ meta_topic (META_DEBUG_EVENTS, "Frame was receiver of event for %s\n",
+ window->desc);
+ }
+
+#ifdef HAVE_XSYNC
+ if (META_DISPLAY_HAS_XSYNC (display) &&
+ event->type == (display->xsync_event_base + XSyncAlarmNotify) &&
+ ((XSyncAlarmNotifyEvent*)event)->alarm == display->grab_sync_request_alarm)
+ {
+ filter_out_event = TRUE; /* GTK doesn't want to see this really */
+
+ if (display->grab_op != META_GRAB_OP_NONE &&
+ display->grab_window != NULL &&
+ grab_op_is_mouse (display->grab_op))
+ meta_window_handle_mouse_grab_op_event (display->grab_window, event);
+ }
+#endif /* HAVE_XSYNC */
+
+#ifdef HAVE_SHAPE
+ if (META_DISPLAY_HAS_SHAPE (display) &&
+ event->type == (display->shape_event_base + ShapeNotify))
+ {
+ filter_out_event = TRUE; /* GTK doesn't want to see this really */
+
+ if (window && !frame_was_receiver)
+ {
+ XShapeEvent *sev = (XShapeEvent*) event;
+
+ if (sev->kind == ShapeBounding)
+ {
+ if (sev->shaped && !window->has_shape)
+ {
+ window->has_shape = TRUE;
+ meta_topic (META_DEBUG_SHAPES,
+ "Window %s now has a shape\n",
+ window->desc);
+ }
+ else if (!sev->shaped && window->has_shape)
+ {
+ window->has_shape = FALSE;
+ meta_topic (META_DEBUG_SHAPES,
+ "Window %s no longer has a shape\n",
+ window->desc);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_SHAPES,
+ "Window %s shape changed\n",
+ window->desc);
+ }
+
+ if (window->frame)
+ {
+ window->frame->need_reapply_frame_shape = TRUE;
+ meta_warning("from event callback\n");
+ meta_window_queue (window, META_QUEUE_MOVE_RESIZE);
+ }
+ }
+ }
+ else
+ {
+ meta_topic (META_DEBUG_SHAPES,
+ "ShapeNotify not on a client window (window %s frame_was_receiver = %d)\n",
+ window ? window->desc : "(none)",
+ frame_was_receiver);
+ }
+ }
+#endif /* HAVE_SHAPE */
+
+ if (window && ((event->type == KeyPress) || (event->type == ButtonPress)))
+ {
+ if (CurrentTime == display->current_time)
+ {
+ /* We can't use missing (i.e. invalid) timestamps to set user time,
+ * nor do we want to use them to sanity check other timestamps.
+ * See bug 313490 for more details.
+ */
+ meta_warning ("Event has no timestamp! You may be using a broken "
+ "program such as xse. Please ask the authors of that "
+ "program to fix it.\n");
+ }
+ else
+ {
+ meta_window_set_user_time (window, display->current_time);
+ sanity_check_timestamps (display, display->current_time);
+ }
+ }
+
+ switch (event->type)
+ {
+ case KeyPress:
+ case KeyRelease:
+ meta_display_process_key_event (display, window, event);
+ break;
+ case ButtonPress:
+ if ((window &&
+ grab_op_is_mouse (display->grab_op) &&
+ display->grab_button != (int) event->xbutton.button &&
+ display->grab_window == window) ||
+ grab_op_is_keyboard (display->grab_op))
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Ending grab op %u on window %s due to button press\n",
+ display->grab_op,
+ (display->grab_window ?
+ display->grab_window->desc :
+ "none"));
+ if (GRAB_OP_IS_WINDOW_SWITCH (display->grab_op))
+ {
+ MetaScreen *screen;
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Syncing to old stack positions.\n");
+ screen =
+ meta_display_screen_for_root (display, event->xany.window);
+
+ if (screen!=NULL)
+ meta_stack_set_positions (screen->stack,
+ display->grab_old_window_stacking);
+ }
+ meta_display_end_grab_op (display,
+ event->xbutton.time);
+ }
+ else if (window && display->grab_op == META_GRAB_OP_NONE)
+ {
+ gboolean begin_move = FALSE;
+ unsigned int grab_mask;
+ gboolean unmodified;
+
+ grab_mask = display->window_grab_modifiers;
+ if (g_getenv ("MARCO_DEBUG_BUTTON_GRABS"))
+ grab_mask |= ControlMask;
+
+ /* Two possible sources of an unmodified event; one is a
+ * client that's letting button presses pass through to the
+ * frame, the other is our focus_window_grab on unmodified
+ * button 1. So for all such events we focus the window.
+ */
+ unmodified = (event->xbutton.state & grab_mask) == 0;
+
+ if (unmodified ||
+ event->xbutton.button == 1)
+ {
+ /* don't focus if frame received, will be lowered in
+ * frames.c or special-cased if the click was on a
+ * minimize/close button.
+ */
+ if (!frame_was_receiver)
+ {
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ else
+ meta_topic (META_DEBUG_FOCUS,
+ "Not raising window on click due to don't-raise-on-click option\n");
+
+ /* Don't focus panels--they must explicitly request focus.
+ * See bug 160470
+ */
+ if (window->type != META_WINDOW_DOCK)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing %s due to unmodified button %u press (display.c)\n",
+ window->desc, event->xbutton.button);
+ meta_window_focus (window, event->xbutton.time);
+ }
+ else
+ /* However, do allow terminals to lose focus due to new
+ * window mappings after the user clicks on a panel.
+ */
+ display->allow_terminal_deactivation = TRUE;
+ }
+
+ /* you can move on alt-click but not on
+ * the click-to-focus
+ */
+ if (!unmodified)
+ begin_move = TRUE;
+ }
+ else if (!unmodified && event->xbutton.button == meta_prefs_get_mouse_button_resize())
+ {
+ if (window->has_resize_func)
+ {
+ gboolean north, south;
+ gboolean west, east;
+ int root_x, root_y;
+ MetaGrabOp op;
+
+ meta_window_get_position (window, &root_x, &root_y);
+
+ west = event->xbutton.x_root < (root_x + 1 * window->rect.width / 3);
+ east = event->xbutton.x_root > (root_x + 2 * window->rect.width / 3);
+ north = event->xbutton.y_root < (root_y + 1 * window->rect.height / 3);
+ south = event->xbutton.y_root > (root_y + 2 * window->rect.height / 3);
+
+ if (north && west)
+ op = META_GRAB_OP_RESIZING_NW;
+ else if (north && east)
+ op = META_GRAB_OP_RESIZING_NE;
+ else if (south && west)
+ op = META_GRAB_OP_RESIZING_SW;
+ else if (south && east)
+ op = META_GRAB_OP_RESIZING_SE;
+ else if (north)
+ op = META_GRAB_OP_RESIZING_N;
+ else if (west)
+ op = META_GRAB_OP_RESIZING_W;
+ else if (east)
+ op = META_GRAB_OP_RESIZING_E;
+ else if (south)
+ op = META_GRAB_OP_RESIZING_S;
+ else /* Middle region is no-op to avoid user triggering wrong action */
+ op = META_GRAB_OP_NONE;
+
+ if (op != META_GRAB_OP_NONE)
+ meta_display_begin_grab_op (display,
+ window->screen,
+ window,
+ op,
+ TRUE,
+ FALSE,
+ event->xbutton.button,
+ 0,
+ event->xbutton.time,
+ event->xbutton.x_root,
+ event->xbutton.y_root);
+ }
+ }
+ else if (event->xbutton.button == meta_prefs_get_mouse_button_menu())
+ {
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ meta_window_show_menu (window,
+ event->xbutton.x_root,
+ event->xbutton.y_root,
+ event->xbutton.button,
+ event->xbutton.time);
+ }
+
+ if (!frame_was_receiver && unmodified)
+ {
+ /* This is from our synchronous grab since
+ * it has no modifiers and was on the client window
+ */
+ int mode;
+
+ /* When clicking a different app in click-to-focus
+ * in application-based mode, and the different
+ * app is not a dock or desktop, eat the focus click.
+ */
+ if (meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK &&
+ meta_prefs_get_application_based () &&
+ !window->has_focus &&
+ window->type != META_WINDOW_DOCK &&
+ window->type != META_WINDOW_DESKTOP &&
+ (display->focus_window == NULL ||
+ !meta_window_same_application (window,
+ display->focus_window)))
+ mode = AsyncPointer; /* eat focus click */
+ else
+ mode = ReplayPointer; /* give event back */
+
+ meta_verbose ("Allowing events mode %s time %u\n",
+ mode == AsyncPointer ? "AsyncPointer" : "ReplayPointer",
+ (unsigned int)event->xbutton.time);
+
+ XAllowEvents (display->xdisplay,
+ mode, event->xbutton.time);
+ }
+
+ if (begin_move && window->has_move_func)
+ {
+ meta_display_begin_grab_op (display,
+ window->screen,
+ window,
+ META_GRAB_OP_MOVING,
+ TRUE,
+ FALSE,
+ event->xbutton.button,
+ 0,
+ event->xbutton.time,
+ event->xbutton.x_root,
+ event->xbutton.y_root);
+ }
+ }
+ break;
+ case ButtonRelease:
+ if (display->grab_window == window &&
+ grab_op_is_mouse (display->grab_op))
+ meta_window_handle_mouse_grab_op_event (window, event);
+ break;
+ case MotionNotify:
+ if (display->grab_window == window &&
+ grab_op_is_mouse (display->grab_op))
+ meta_window_handle_mouse_grab_op_event (window, event);
+ break;
+ case EnterNotify:
+ if (display->grab_window == window &&
+ grab_op_is_mouse (display->grab_op))
+ {
+ meta_window_handle_mouse_grab_op_event (window, event);
+ break;
+ }
+
+ /* If the mouse switches screens, active the default window on the new
+ * screen; this will make keybindings and workspace-launched items
+ * actually appear on the right screen.
+ */
+ {
+ MetaScreen *new_screen =
+ meta_display_screen_for_root (display, event->xcrossing.root);
+
+ if (new_screen != NULL && display->active_screen != new_screen)
+ meta_workspace_focus_default_window (new_screen->active_workspace,
+ NULL,
+ event->xcrossing.time);
+ }
+
+ /* Check if we've entered a window; do this even if window->has_focus to
+ * avoid races.
+ */
+ if (window && !serial_is_ignored (display, event->xany.serial) &&
+ event->xcrossing.mode != NotifyGrab &&
+ event->xcrossing.mode != NotifyUngrab &&
+ event->xcrossing.detail != NotifyInferior &&
+ meta_display_focus_sentinel_clear (display))
+ {
+ switch (meta_prefs_get_focus_mode ())
+ {
+ case META_FOCUS_MODE_SLOPPY:
+ case META_FOCUS_MODE_MOUSE:
+ display->mouse_mode = TRUE;
+ if (window->type != META_WINDOW_DOCK &&
+ window->type != META_WINDOW_DESKTOP)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing %s due to enter notify with serial %lu "
+ "at time %lu, and setting display->mouse_mode to "
+ "TRUE.\n",
+ window->desc,
+ event->xany.serial,
+ event->xcrossing.time);
+
+ meta_window_focus (window, event->xcrossing.time);
+
+ /* stop ignoring stuff */
+ reset_ignores (display);
+
+ if (meta_prefs_get_auto_raise ())
+ {
+ meta_display_queue_autoraise_callback (display, window);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Auto raise is disabled\n");
+ }
+ }
+ /* In mouse focus mode, we defocus when the mouse *enters*
+ * the DESKTOP window, instead of defocusing on LeaveNotify.
+ * This is because having the mouse enter override-redirect
+ * child windows unfortunately causes LeaveNotify events that
+ * we can't distinguish from the mouse actually leaving the
+ * toplevel window as we expect. But, since we filter out
+ * EnterNotify events on override-redirect windows, this
+ * alternative mechanism works great.
+ */
+ if (window->type == META_WINDOW_DESKTOP &&
+ meta_prefs_get_focus_mode() == META_FOCUS_MODE_MOUSE &&
+ display->expected_focus_window != NULL)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Unsetting focus from %s due to mouse entering "
+ "the DESKTOP window\n",
+ display->expected_focus_window->desc);
+ meta_display_focus_the_no_focus_window (display,
+ window->screen,
+ event->xcrossing.time);
+ }
+ break;
+ case META_FOCUS_MODE_CLICK:
+ break;
+ }
+
+ if (window->type == META_WINDOW_DOCK)
+ meta_window_raise (window);
+ }
+ break;
+ case LeaveNotify:
+ if (display->grab_window == window &&
+ grab_op_is_mouse (display->grab_op))
+ meta_window_handle_mouse_grab_op_event (window, event);
+ else if (window != NULL)
+ {
+ if (window->type == META_WINDOW_DOCK &&
+ event->xcrossing.mode != NotifyGrab &&
+ event->xcrossing.mode != NotifyUngrab &&
+ !window->has_focus)
+ meta_window_lower (window);
+ }
+ break;
+ case FocusIn:
+ case FocusOut:
+ if (window)
+ {
+ meta_window_notify_focus (window, event);
+ }
+ else if (meta_display_xwindow_is_a_no_focus_window (display,
+ event->xany.window))
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focus %s event received on no_focus_window 0x%lx "
+ "mode %s detail %s\n",
+ event->type == FocusIn ? "in" :
+ event->type == FocusOut ? "out" :
+ "???",
+ event->xany.window,
+ meta_event_mode_to_string (event->xfocus.mode),
+ meta_event_detail_to_string (event->xfocus.detail));
+ }
+ else
+ {
+ MetaScreen *screen =
+ meta_display_screen_for_root(display,
+ event->xany.window);
+ if (screen == NULL)
+ break;
+
+ meta_topic (META_DEBUG_FOCUS,
+ "Focus %s event received on root window 0x%lx "
+ "mode %s detail %s\n",
+ event->type == FocusIn ? "in" :
+ event->type == FocusOut ? "out" :
+ "???",
+ event->xany.window,
+ meta_event_mode_to_string (event->xfocus.mode),
+ meta_event_detail_to_string (event->xfocus.detail));
+
+ if (event->type == FocusIn &&
+ event->xfocus.detail == NotifyDetailNone)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focus got set to None, probably due to "
+ "brain-damage in the X protocol (see bug "
+ "125492). Setting the default focus window.\n");
+ meta_workspace_focus_default_window (screen->active_workspace,
+ NULL,
+ meta_display_get_current_time_roundtrip (display));
+ }
+ else if (event->type == FocusIn &&
+ event->xfocus.mode == NotifyNormal &&
+ event->xfocus.detail == NotifyInferior)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focus got set to root window, probably due to "
+ "mate-session logout dialog usage (see bug "
+ "153220). Setting the default focus window.\n");
+ meta_workspace_focus_default_window (screen->active_workspace,
+ NULL,
+ meta_display_get_current_time_roundtrip (display));
+ }
+
+ }
+ break;
+ case KeymapNotify:
+ break;
+ case Expose:
+ break;
+ case GraphicsExpose:
+ break;
+ case NoExpose:
+ break;
+ case VisibilityNotify:
+ break;
+ case CreateNotify:
+ break;
+
+ case DestroyNotify:
+ if (window)
+ {
+ /* FIXME: It sucks that DestroyNotify events don't come with
+ * a timestamp; could we do something better here? Maybe X
+ * will change one day?
+ */
+ guint32 timestamp;
+ timestamp = meta_display_get_current_time_roundtrip (display);
+
+ if (display->grab_op != META_GRAB_OP_NONE &&
+ display->grab_window == window)
+ meta_display_end_grab_op (display, timestamp);
+
+ if (frame_was_receiver)
+ {
+ meta_warning ("Unexpected destruction of frame 0x%lx, not sure if this should silently fail or be considered a bug\n",
+ window->frame->xwindow);
+ meta_error_trap_push (display);
+ meta_window_destroy_frame (window->frame->window);
+ meta_error_trap_pop (display, FALSE);
+ }
+ else
+ {
+ /* Unmanage destroyed window */
+ meta_window_free (window, timestamp);
+ window = NULL;
+ }
+ }
+ break;
+ case UnmapNotify:
+ if (window)
+ {
+ /* FIXME: It sucks that UnmapNotify events don't come with
+ * a timestamp; could we do something better here? Maybe X
+ * will change one day?
+ */
+ guint32 timestamp;
+ timestamp = meta_display_get_current_time_roundtrip (display);
+
+ if (display->grab_op != META_GRAB_OP_NONE &&
+ display->grab_window == window &&
+ ((window->frame == NULL) || !window->frame->mapped))
+ meta_display_end_grab_op (display, timestamp);
+
+ if (!frame_was_receiver)
+ {
+ if (window->unmaps_pending == 0)
+ {
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Window %s withdrawn\n",
+ window->desc);
+
+ meta_effect_run_close (window, NULL, NULL);
+
+ /* Unmanage withdrawn window */
+ window->withdrawn = TRUE;
+ meta_window_free (window, timestamp);
+ window = NULL;
+ }
+ else
+ {
+ window->unmaps_pending -= 1;
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Received pending unmap, %d now pending\n",
+ window->unmaps_pending);
+ }
+ }
+
+ /* Unfocus on UnmapNotify, do this after the possible
+ * window_free above so that window_free can see if window->has_focus
+ * and move focus to another window
+ */
+ if (window)
+ meta_window_notify_focus (window, event);
+ }
+ break;
+ case MapNotify:
+ break;
+ case MapRequest:
+ if (window == NULL)
+ {
+ window = meta_window_new (display, event->xmaprequest.window,
+ FALSE);
+ }
+ /* if frame was receiver it's some malicious send event or something */
+ else if (!frame_was_receiver && window)
+ {
+ meta_verbose ("MapRequest on %s mapped = %d minimized = %d\n",
+ window->desc, window->mapped, window->minimized);
+ if (window->minimized)
+ {
+ meta_window_unminimize (window);
+ if (window->workspace != window->screen->active_workspace)
+ {
+ meta_verbose ("Changing workspace due to MapRequest mapped = %d minimized = %d\n",
+ window->mapped, window->minimized);
+ meta_window_change_workspace (window,
+ window->screen->active_workspace);
+ }
+ }
+ }
+ break;
+ case ReparentNotify:
+ break;
+ case ConfigureNotify:
+ /* Handle screen resize */
+ {
+ MetaScreen *screen;
+
+ screen = meta_display_screen_for_root (display,
+ event->xconfigure.window);
+
+ if (screen != NULL)
+ {
+#ifdef HAVE_RANDR
+ /* do the resize the official way */
+ XRRUpdateConfiguration (event);
+#else
+ /* poke around in Xlib */
+ screen->xscreen->width = event->xconfigure.width;
+ screen->xscreen->height = event->xconfigure.height;
+#endif
+
+ meta_screen_resize (screen,
+ event->xconfigure.width,
+ event->xconfigure.height);
+ }
+ }
+ break;
+ case ConfigureRequest:
+ /* This comment and code is found in both twm and fvwm */
+ /*
+ * According to the July 27, 1988 ICCCM draft, we should ignore size and
+ * position fields in the WM_NORMAL_HINTS property when we map a window.
+ * Instead, we'll read the current geometry. Therefore, we should respond
+ * to configuration requests for windows which have never been mapped.
+ */
+ if (window == NULL)
+ {
+ unsigned int xwcm;
+ XWindowChanges xwc;
+
+ xwcm = event->xconfigurerequest.value_mask &
+ (CWX | CWY | CWWidth | CWHeight | CWBorderWidth);
+
+ xwc.x = event->xconfigurerequest.x;
+ xwc.y = event->xconfigurerequest.y;
+ xwc.width = event->xconfigurerequest.width;
+ xwc.height = event->xconfigurerequest.height;
+ xwc.border_width = event->xconfigurerequest.border_width;
+
+ meta_verbose ("Configuring withdrawn window to %d,%d %dx%d border %d (some values may not be in mask)\n",
+ xwc.x, xwc.y, xwc.width, xwc.height, xwc.border_width);
+ meta_error_trap_push (display);
+ XConfigureWindow (display->xdisplay, event->xconfigurerequest.window,
+ xwcm, &xwc);
+ meta_error_trap_pop (display, FALSE);
+ }
+ else
+ {
+ if (!frame_was_receiver)
+ meta_window_configure_request (window, event);
+ }
+ break;
+ case GravityNotify:
+ break;
+ case ResizeRequest:
+ break;
+ case CirculateNotify:
+ break;
+ case CirculateRequest:
+ break;
+ case PropertyNotify:
+ {
+ MetaGroup *group;
+ MetaScreen *screen;
+
+ if (window && !frame_was_receiver)
+ meta_window_property_notify (window, event);
+ else if (property_for_window && !frame_was_receiver)
+ meta_window_property_notify (property_for_window, event);
+
+ group = meta_display_lookup_group (display,
+ event->xproperty.window);
+ if (group != NULL)
+ meta_group_property_notify (group, event);
+
+ screen = NULL;
+ if (window == NULL &&
+ group == NULL) /* window/group != NULL means it wasn't a root window */
+ screen = meta_display_screen_for_root (display,
+ event->xproperty.window);
+
+ if (screen != NULL)
+ {
+ if (event->xproperty.atom ==
+ display->atom__NET_DESKTOP_LAYOUT)
+ meta_screen_update_workspace_layout (screen);
+ else if (event->xproperty.atom ==
+ display->atom__NET_DESKTOP_NAMES)
+ meta_screen_update_workspace_names (screen);
+#if 0
+ else if (event->xproperty.atom ==
+ display->atom__NET_RESTACK_WINDOW)
+ handle_net_restack_window (display, event);
+#endif
+
+ /* we just use this property as a sentinel to avoid
+ * certain race conditions. See the comment for the
+ * sentinel_counter variable declaration in display.h
+ */
+ if (event->xproperty.atom ==
+ display->atom__MARCO_SENTINEL)
+ {
+ meta_display_decrement_focus_sentinel (display);
+ }
+ }
+ }
+ break;
+ case SelectionClear:
+ /* do this here instead of at end of function
+ * so we can return
+ */
+
+ /* FIXME: Clearing display->current_time here makes no sense to
+ * me; who put this here and why?
+ */
+ display->current_time = CurrentTime;
+
+ process_selection_clear (display, event);
+ /* Note that processing that may have resulted in
+ * closing the display... so return right away.
+ */
+ return FALSE;
+ case SelectionRequest:
+ process_selection_request (display, event);
+ break;
+ case SelectionNotify:
+ break;
+ case ColormapNotify:
+ if (window && !frame_was_receiver)
+ window->colormap = event->xcolormap.colormap;
+ break;
+ case ClientMessage:
+ if (window)
+ {
+ if (!frame_was_receiver)
+ meta_window_client_message (window, event);
+ }
+ else
+ {
+ MetaScreen *screen;
+
+ screen = meta_display_screen_for_root (display,
+ event->xclient.window);
+
+ if (screen)
+ {
+ if (event->xclient.message_type ==
+ display->atom__NET_CURRENT_DESKTOP)
+ {
+ int space;
+ MetaWorkspace *workspace;
+ guint32 time;
+
+ space = event->xclient.data.l[0];
+ time = event->xclient.data.l[1];
+
+ meta_verbose ("Request to change current workspace to %d with "
+ "specified timestamp of %u\n",
+ space, time);
+
+ workspace =
+ meta_screen_get_workspace_by_index (screen,
+ space);
+
+ /* Handle clients using the older version of the spec... */
+ if (time == 0 && workspace)
+ {
+ meta_warning ("Received a NET_CURRENT_DESKTOP message "
+ "from a broken (outdated) client who sent "
+ "a 0 timestamp\n");
+ time = meta_display_get_current_time_roundtrip (display);
+ }
+
+ if (workspace)
+ meta_workspace_activate (workspace, time);
+ else
+ meta_verbose ("Don't know about workspace %d\n", space);
+ }
+ else if (event->xclient.message_type ==
+ display->atom__NET_NUMBER_OF_DESKTOPS)
+ {
+ int num_spaces;
+
+ num_spaces = event->xclient.data.l[0];
+
+ meta_verbose ("Request to set number of workspaces to %d\n",
+ num_spaces);
+
+ meta_prefs_set_num_workspaces (num_spaces);
+ }
+ else if (event->xclient.message_type ==
+ display->atom__NET_SHOWING_DESKTOP)
+ {
+ gboolean showing_desktop;
+ guint32 timestamp;
+
+ showing_desktop = event->xclient.data.l[0] != 0;
+ /* FIXME: Braindead protocol doesn't have a timestamp */
+ timestamp = meta_display_get_current_time_roundtrip (display);
+ meta_verbose ("Request to %s desktop\n",
+ showing_desktop ? "show" : "hide");
+
+ if (showing_desktop)
+ meta_screen_show_desktop (screen, timestamp);
+ else
+ {
+ meta_screen_unshow_desktop (screen);
+ meta_workspace_focus_default_window (screen->active_workspace, NULL, timestamp);
+ }
+ }
+ else if (event->xclient.message_type ==
+ display->atom__MARCO_RESTART_MESSAGE)
+ {
+ meta_verbose ("Received restart request\n");
+ meta_restart ();
+ }
+ else if (event->xclient.message_type ==
+ display->atom__MARCO_RELOAD_THEME_MESSAGE)
+ {
+ meta_verbose ("Received reload theme request\n");
+ meta_ui_set_current_theme (meta_prefs_get_theme (),
+ TRUE);
+ meta_display_retheme_all ();
+ }
+ else if (event->xclient.message_type ==
+ display->atom__MARCO_SET_KEYBINDINGS_MESSAGE)
+ {
+ meta_verbose ("Received set keybindings request = %d\n",
+ (int) event->xclient.data.l[0]);
+ meta_set_keybindings_disabled (!event->xclient.data.l[0]);
+ }
+ else if (event->xclient.message_type ==
+ display->atom__MARCO_TOGGLE_VERBOSE)
+ {
+ meta_verbose ("Received toggle verbose message\n");
+ meta_set_verbose (!meta_is_verbose ());
+ }
+ else if (event->xclient.message_type ==
+ display->atom_WM_PROTOCOLS)
+ {
+ meta_verbose ("Received WM_PROTOCOLS message\n");
+
+ if ((Atom)event->xclient.data.l[0] == display->atom__NET_WM_PING)
+ {
+ process_pong_message (display, event);
+
+ /* We don't want ping reply events going into
+ * the GTK+ event loop because gtk+ will treat
+ * them as ping requests and send more replies.
+ */
+ filter_out_event = TRUE;
+ }
+ }
+ }
+
+ if (event->xclient.message_type ==
+ display->atom__NET_REQUEST_FRAME_EXTENTS)
+ {
+ meta_verbose ("Received _NET_REQUEST_FRAME_EXTENTS message\n");
+ process_request_frame_extents (display, event);
+ }
+ }
+ break;
+ case MappingNotify:
+ {
+ gboolean ignore_current;
+
+ ignore_current = FALSE;
+
+ /* Check whether the next event is an identical MappingNotify
+ * event. If it is, ignore the current event, we'll update
+ * when we get the next one.
+ */
+ if (XPending (display->xdisplay))
+ {
+ XEvent next_event;
+
+ XPeekEvent (display->xdisplay, &next_event);
+
+ if (next_event.type == MappingNotify &&
+ next_event.xmapping.request == event->xmapping.request)
+ ignore_current = TRUE;
+ }
+
+ if (!ignore_current)
+ {
+ /* Let XLib know that there is a new keyboard mapping.
+ */
+ XRefreshKeyboardMapping (&event->xmapping);
+ meta_display_process_mapping_event (display, event);
+ }
+ }
+ break;
+ default:
+#ifdef HAVE_XKB
+ if (event->type == display->xkb_base_event_type)
+ {
+ XkbAnyEvent *xkb_ev = (XkbAnyEvent *) event;
+
+ switch (xkb_ev->xkb_type)
+ {
+ case XkbBellNotify:
+ if (XSERVER_TIME_IS_BEFORE(display->last_bell_time,
+ xkb_ev->time - 100))
+ {
+ display->last_bell_time = xkb_ev->time;
+ meta_bell_notify (display, xkb_ev);
+ }
+ break;
+ }
+ }
+#endif
+ break;
+ }
+
+ if (display->compositor)
+ {
+ meta_compositor_process_event (display->compositor, event, window);
+ }
+
+ /* generates event on wrong window.
+ * https://github.com/stefano-k/Mate-Desktop-Environment/commit/b0e5fb03eb21dae8f02692f11ef391bfc5ccba33
+ */
+ if (maybe_send_event_to_gtk(display, event))
+ {
+ filter_out_event = TRUE;
+ }
+
+ display->current_time = CurrentTime;
+ return filter_out_event;
+}
+
+/* Return the window this has to do with, if any, rather
+ * than the frame or root window that was selecting
+ * for substructure
+ */
+static Window
+event_get_modified_window (MetaDisplay *display,
+ XEvent *event)
+{
+ switch (event->type)
+ {
+ case KeyPress:
+ case KeyRelease:
+ case ButtonPress:
+ case ButtonRelease:
+ case MotionNotify:
+ case FocusIn:
+ case FocusOut:
+ case KeymapNotify:
+ case Expose:
+ case GraphicsExpose:
+ case NoExpose:
+ case VisibilityNotify:
+ case ResizeRequest:
+ case PropertyNotify:
+ case SelectionClear:
+ case SelectionRequest:
+ case SelectionNotify:
+ case ColormapNotify:
+ case ClientMessage:
+ case EnterNotify:
+ case LeaveNotify:
+ return event->xany.window;
+
+ case CreateNotify:
+ return event->xcreatewindow.window;
+
+ case DestroyNotify:
+ return event->xdestroywindow.window;
+
+ case UnmapNotify:
+ return event->xunmap.window;
+
+ case MapNotify:
+ return event->xmap.window;
+
+ case MapRequest:
+ return event->xmaprequest.window;
+
+ case ReparentNotify:
+ return event->xreparent.window;
+
+ case ConfigureNotify:
+ return event->xconfigure.window;
+
+ case ConfigureRequest:
+ return event->xconfigurerequest.window;
+
+ case GravityNotify:
+ return event->xgravity.window;
+
+ case CirculateNotify:
+ return event->xcirculate.window;
+
+ case CirculateRequest:
+ return event->xcirculaterequest.window;
+
+ case MappingNotify:
+ return None;
+
+ default:
+#ifdef HAVE_SHAPE
+ if (META_DISPLAY_HAS_SHAPE (display) &&
+ event->type == (display->shape_event_base + ShapeNotify))
+ {
+ XShapeEvent *sev = (XShapeEvent*) event;
+ return sev->window;
+ }
+#endif
+
+ return None;
+ }
+}
+
+static guint32
+event_get_time (MetaDisplay *display,
+ XEvent *event)
+{
+ switch (event->type)
+ {
+ case KeyPress:
+ case KeyRelease:
+ return event->xkey.time;
+
+ case ButtonPress:
+ case ButtonRelease:
+ return event->xbutton.time;
+
+ case MotionNotify:
+ return event->xmotion.time;
+
+ case PropertyNotify:
+ return event->xproperty.time;
+
+ case SelectionClear:
+ case SelectionRequest:
+ case SelectionNotify:
+ return event->xselection.time;
+
+ case EnterNotify:
+ case LeaveNotify:
+ return event->xcrossing.time;
+
+ case FocusIn:
+ case FocusOut:
+ case KeymapNotify:
+ case Expose:
+ case GraphicsExpose:
+ case NoExpose:
+ case MapNotify:
+ case UnmapNotify:
+ case VisibilityNotify:
+ case ResizeRequest:
+ case ColormapNotify:
+ case ClientMessage:
+ case CreateNotify:
+ case DestroyNotify:
+ case MapRequest:
+ case ReparentNotify:
+ case ConfigureNotify:
+ case ConfigureRequest:
+ case GravityNotify:
+ case CirculateNotify:
+ case CirculateRequest:
+ case MappingNotify:
+ default:
+ return CurrentTime;
+ }
+}
+
+#ifdef WITH_VERBOSE_MODE
+const char*
+meta_event_detail_to_string (int d)
+{
+ const char *detail = "???";
+ switch (d)
+ {
+ /* We are an ancestor in the A<->B focus change relationship */
+ case NotifyAncestor:
+ detail = "NotifyAncestor";
+ break;
+ case NotifyDetailNone:
+ detail = "NotifyDetailNone";
+ break;
+ /* We are a descendant in the A<->B focus change relationship */
+ case NotifyInferior:
+ detail = "NotifyInferior";
+ break;
+ case NotifyNonlinear:
+ detail = "NotifyNonlinear";
+ break;
+ case NotifyNonlinearVirtual:
+ detail = "NotifyNonlinearVirtual";
+ break;
+ case NotifyPointer:
+ detail = "NotifyPointer";
+ break;
+ case NotifyPointerRoot:
+ detail = "NotifyPointerRoot";
+ break;
+ case NotifyVirtual:
+ detail = "NotifyVirtual";
+ break;
+ }
+
+ return detail;
+}
+#endif /* WITH_VERBOSE_MODE */
+
+#ifdef WITH_VERBOSE_MODE
+const char*
+meta_event_mode_to_string (int m)
+{
+ const char *mode = "???";
+ switch (m)
+ {
+ case NotifyNormal:
+ mode = "NotifyNormal";
+ break;
+ case NotifyGrab:
+ mode = "NotifyGrab";
+ break;
+ case NotifyUngrab:
+ mode = "NotifyUngrab";
+ break;
+ /* not sure any X implementations are missing this, but
+ * it seems to be absent from some docs.
+ */
+#ifdef NotifyWhileGrabbed
+ case NotifyWhileGrabbed:
+ mode = "NotifyWhileGrabbed";
+ break;
+#endif
+ }
+
+ return mode;
+}
+#endif /* WITH_VERBOSE_MODE */
+
+#ifdef WITH_VERBOSE_MODE
+static const char*
+stack_mode_to_string (int mode)
+{
+ switch (mode)
+ {
+ case Above:
+ return "Above";
+ case Below:
+ return "Below";
+ case TopIf:
+ return "TopIf";
+ case BottomIf:
+ return "BottomIf";
+ case Opposite:
+ return "Opposite";
+ }
+
+ return "Unknown";
+}
+#endif /* WITH_VERBOSE_MODE */
+
+#ifdef WITH_VERBOSE_MODE
+static char*
+key_event_description (Display *xdisplay,
+ XEvent *event)
+{
+ KeySym keysym;
+ const char *str;
+
+ keysym = XKeycodeToKeysym (xdisplay, event->xkey.keycode, 0);
+
+ str = XKeysymToString (keysym);
+
+ return g_strdup_printf ("Key '%s' state 0x%x",
+ str ? str : "none", event->xkey.state);
+}
+#endif /* WITH_VERBOSE_MODE */
+
+#ifdef HAVE_XSYNC
+#ifdef WITH_VERBOSE_MODE
+static gint64
+sync_value_to_64 (const XSyncValue *value)
+{
+ gint64 v;
+
+ v = XSyncValueLow32 (*value);
+ v |= (((gint64)XSyncValueHigh32 (*value)) << 32);
+
+ return v;
+}
+#endif /* WITH_VERBOSE_MODE */
+
+#ifdef WITH_VERBOSE_MODE
+static const char*
+alarm_state_to_string (XSyncAlarmState state)
+{
+ switch (state)
+ {
+ case XSyncAlarmActive:
+ return "Active";
+ case XSyncAlarmInactive:
+ return "Inactive";
+ case XSyncAlarmDestroyed:
+ return "Destroyed";
+ default:
+ return "(unknown)";
+ }
+}
+#endif /* WITH_VERBOSE_MODE */
+
+#endif /* HAVE_XSYNC */
+
+#ifdef WITH_VERBOSE_MODE
+static void
+meta_spew_event (MetaDisplay *display,
+ XEvent *event)
+{
+ const char *name = NULL;
+ char *extra = NULL;
+ char *winname;
+ MetaScreen *screen;
+
+ if (!meta_is_verbose())
+ return;
+
+ /* filter overnumerous events */
+ if (event->type == Expose || event->type == MotionNotify ||
+ event->type == NoExpose)
+ return;
+
+ switch (event->type)
+ {
+ case KeyPress:
+ name = "KeyPress";
+ extra = key_event_description (display->xdisplay, event);
+ break;
+ case KeyRelease:
+ name = "KeyRelease";
+ extra = key_event_description (display->xdisplay, event);
+ break;
+ case ButtonPress:
+ name = "ButtonPress";
+ extra = g_strdup_printf ("button %u state 0x%x x %d y %d root 0x%lx same_screen %d",
+ event->xbutton.button,
+ event->xbutton.state,
+ event->xbutton.x,
+ event->xbutton.y,
+ event->xbutton.root,
+ event->xbutton.same_screen);
+ break;
+ case ButtonRelease:
+ name = "ButtonRelease";
+ extra = g_strdup_printf ("button %u state 0x%x x %d y %d root 0x%lx same_screen %d",
+ event->xbutton.button,
+ event->xbutton.state,
+ event->xbutton.x,
+ event->xbutton.y,
+ event->xbutton.root,
+ event->xbutton.same_screen);
+ break;
+ case MotionNotify:
+ name = "MotionNotify";
+ extra = g_strdup_printf ("win: 0x%lx x: %d y: %d",
+ event->xmotion.window,
+ event->xmotion.x,
+ event->xmotion.y);
+ break;
+ case EnterNotify:
+ name = "EnterNotify";
+ extra = g_strdup_printf ("win: 0x%lx root: 0x%lx subwindow: 0x%lx mode: %s detail: %s focus: %d x: %d y: %d",
+ event->xcrossing.window,
+ event->xcrossing.root,
+ event->xcrossing.subwindow,
+ meta_event_mode_to_string (event->xcrossing.mode),
+ meta_event_detail_to_string (event->xcrossing.detail),
+ event->xcrossing.focus,
+ event->xcrossing.x,
+ event->xcrossing.y);
+ break;
+ case LeaveNotify:
+ name = "LeaveNotify";
+ extra = g_strdup_printf ("win: 0x%lx root: 0x%lx subwindow: 0x%lx mode: %s detail: %s focus: %d x: %d y: %d",
+ event->xcrossing.window,
+ event->xcrossing.root,
+ event->xcrossing.subwindow,
+ meta_event_mode_to_string (event->xcrossing.mode),
+ meta_event_detail_to_string (event->xcrossing.detail),
+ event->xcrossing.focus,
+ event->xcrossing.x,
+ event->xcrossing.y);
+ break;
+ case FocusIn:
+ name = "FocusIn";
+ extra = g_strdup_printf ("detail: %s mode: %s\n",
+ meta_event_detail_to_string (event->xfocus.detail),
+ meta_event_mode_to_string (event->xfocus.mode));
+ break;
+ case FocusOut:
+ name = "FocusOut";
+ extra = g_strdup_printf ("detail: %s mode: %s\n",
+ meta_event_detail_to_string (event->xfocus.detail),
+ meta_event_mode_to_string (event->xfocus.mode));
+ break;
+ case KeymapNotify:
+ name = "KeymapNotify";
+ break;
+ case Expose:
+ name = "Expose";
+ break;
+ case GraphicsExpose:
+ name = "GraphicsExpose";
+ break;
+ case NoExpose:
+ name = "NoExpose";
+ break;
+ case VisibilityNotify:
+ name = "VisibilityNotify";
+ break;
+ case CreateNotify:
+ name = "CreateNotify";
+ extra = g_strdup_printf ("parent: 0x%lx window: 0x%lx",
+ event->xcreatewindow.parent,
+ event->xcreatewindow.window);
+ break;
+ case DestroyNotify:
+ name = "DestroyNotify";
+ extra = g_strdup_printf ("event: 0x%lx window: 0x%lx",
+ event->xdestroywindow.event,
+ event->xdestroywindow.window);
+ break;
+ case UnmapNotify:
+ name = "UnmapNotify";
+ extra = g_strdup_printf ("event: 0x%lx window: 0x%lx from_configure: %d",
+ event->xunmap.event,
+ event->xunmap.window,
+ event->xunmap.from_configure);
+ break;
+ case MapNotify:
+ name = "MapNotify";
+ extra = g_strdup_printf ("event: 0x%lx window: 0x%lx override_redirect: %d",
+ event->xmap.event,
+ event->xmap.window,
+ event->xmap.override_redirect);
+ break;
+ case MapRequest:
+ name = "MapRequest";
+ extra = g_strdup_printf ("window: 0x%lx parent: 0x%lx\n",
+ event->xmaprequest.window,
+ event->xmaprequest.parent);
+ break;
+ case ReparentNotify:
+ name = "ReparentNotify";
+ extra = g_strdup_printf ("window: 0x%lx parent: 0x%lx event: 0x%lx\n",
+ event->xreparent.window,
+ event->xreparent.parent,
+ event->xreparent.event);
+ break;
+ case ConfigureNotify:
+ name = "ConfigureNotify";
+ extra = g_strdup_printf ("x: %d y: %d w: %d h: %d above: 0x%lx override_redirect: %d",
+ event->xconfigure.x,
+ event->xconfigure.y,
+ event->xconfigure.width,
+ event->xconfigure.height,
+ event->xconfigure.above,
+ event->xconfigure.override_redirect);
+ break;
+ case ConfigureRequest:
+ name = "ConfigureRequest";
+ extra = g_strdup_printf ("parent: 0x%lx window: 0x%lx x: %d %sy: %d %sw: %d %sh: %d %sborder: %d %sabove: %lx %sstackmode: %s %s",
+ event->xconfigurerequest.parent,
+ event->xconfigurerequest.window,
+ event->xconfigurerequest.x,
+ event->xconfigurerequest.value_mask &
+ CWX ? "" : "(unset) ",
+ event->xconfigurerequest.y,
+ event->xconfigurerequest.value_mask &
+ CWY ? "" : "(unset) ",
+ event->xconfigurerequest.width,
+ event->xconfigurerequest.value_mask &
+ CWWidth ? "" : "(unset) ",
+ event->xconfigurerequest.height,
+ event->xconfigurerequest.value_mask &
+ CWHeight ? "" : "(unset) ",
+ event->xconfigurerequest.border_width,
+ event->xconfigurerequest.value_mask &
+ CWBorderWidth ? "" : "(unset)",
+ event->xconfigurerequest.above,
+ event->xconfigurerequest.value_mask &
+ CWSibling ? "" : "(unset)",
+ stack_mode_to_string (event->xconfigurerequest.detail),
+ event->xconfigurerequest.value_mask &
+ CWStackMode ? "" : "(unset)");
+ break;
+ case GravityNotify:
+ name = "GravityNotify";
+ break;
+ case ResizeRequest:
+ name = "ResizeRequest";
+ extra = g_strdup_printf ("width = %d height = %d",
+ event->xresizerequest.width,
+ event->xresizerequest.height);
+ break;
+ case CirculateNotify:
+ name = "CirculateNotify";
+ break;
+ case CirculateRequest:
+ name = "CirculateRequest";
+ break;
+ case PropertyNotify:
+ {
+ char *str;
+ const char *state;
+
+ name = "PropertyNotify";
+
+ meta_error_trap_push (display);
+ str = XGetAtomName (display->xdisplay,
+ event->xproperty.atom);
+ meta_error_trap_pop (display, TRUE);
+
+ if (event->xproperty.state == PropertyNewValue)
+ state = "PropertyNewValue";
+ else if (event->xproperty.state == PropertyDelete)
+ state = "PropertyDelete";
+ else
+ state = "???";
+
+ extra = g_strdup_printf ("atom: %s state: %s",
+ str ? str : "(unknown atom)",
+ state);
+ meta_XFree (str);
+ }
+ break;
+ case SelectionClear:
+ name = "SelectionClear";
+ break;
+ case SelectionRequest:
+ name = "SelectionRequest";
+ break;
+ case SelectionNotify:
+ name = "SelectionNotify";
+ break;
+ case ColormapNotify:
+ name = "ColormapNotify";
+ break;
+ case ClientMessage:
+ {
+ char *str;
+ name = "ClientMessage";
+ meta_error_trap_push (display);
+ str = XGetAtomName (display->xdisplay,
+ event->xclient.message_type);
+ meta_error_trap_pop (display, TRUE);
+ extra = g_strdup_printf ("type: %s format: %d\n",
+ str ? str : "(unknown atom)",
+ event->xclient.format);
+ meta_XFree (str);
+ }
+ break;
+ case MappingNotify:
+ name = "MappingNotify";
+ break;
+ default:
+#ifdef HAVE_XSYNC
+ if (META_DISPLAY_HAS_XSYNC (display) &&
+ event->type == (display->xsync_event_base + XSyncAlarmNotify))
+ {
+ XSyncAlarmNotifyEvent *aevent = (XSyncAlarmNotifyEvent*) event;
+
+ name = "XSyncAlarmNotify";
+ extra =
+ g_strdup_printf ("alarm: 0x%lx"
+ " counter_value: %" G_GINT64_FORMAT
+ " alarm_value: %" G_GINT64_FORMAT
+ " time: %u alarm state: %s",
+ aevent->alarm,
+ (gint64) sync_value_to_64 (&aevent->counter_value),
+ (gint64) sync_value_to_64 (&aevent->alarm_value),
+ (unsigned int)aevent->time,
+ alarm_state_to_string (aevent->state));
+ }
+ else
+#endif /* HAVE_XSYNC */
+#ifdef HAVE_SHAPE
+ if (META_DISPLAY_HAS_SHAPE (display) &&
+ event->type == (display->shape_event_base + ShapeNotify))
+ {
+ XShapeEvent *sev = (XShapeEvent*) event;
+
+ name = "ShapeNotify";
+
+ extra =
+ g_strdup_printf ("kind: %s "
+ "x: %d y: %d w: %u h: %u "
+ "shaped: %d",
+ sev->kind == ShapeBounding ?
+ "ShapeBounding" :
+ (sev->kind == ShapeClip ?
+ "ShapeClip" : "(unknown)"),
+ sev->x, sev->y, sev->width, sev->height,
+ sev->shaped);
+ }
+ else
+#endif /* HAVE_SHAPE */
+ {
+ name = "(Unknown event)";
+ extra = g_strdup_printf ("type: %d", event->xany.type);
+ }
+ break;
+ }
+
+ screen = meta_display_screen_for_root (display, event->xany.window);
+
+ if (screen)
+ winname = g_strdup_printf ("root %d", screen->number);
+ else
+ winname = g_strdup_printf ("0x%lx", event->xany.window);
+
+ meta_topic (META_DEBUG_EVENTS,
+ "%s on %s%s %s %sserial %lu\n", name, winname,
+ extra ? ":" : "", extra ? extra : "",
+ event->xany.send_event ? "SEND " : "",
+ event->xany.serial);
+
+ g_free (winname);
+
+ if (extra)
+ g_free (extra);
+}
+#endif /* WITH_VERBOSE_MODE */
+
+MetaWindow*
+meta_display_lookup_x_window (MetaDisplay *display,
+ Window xwindow)
+{
+ return g_hash_table_lookup (display->window_ids, &xwindow);
+}
+
+void
+meta_display_register_x_window (MetaDisplay *display,
+ Window *xwindowp,
+ MetaWindow *window)
+{
+ g_return_if_fail (g_hash_table_lookup (display->window_ids, xwindowp) == NULL);
+
+ g_hash_table_insert (display->window_ids, xwindowp, window);
+}
+
+void
+meta_display_unregister_x_window (MetaDisplay *display,
+ Window xwindow)
+{
+ g_return_if_fail (g_hash_table_lookup (display->window_ids, &xwindow) != NULL);
+
+ g_hash_table_remove (display->window_ids, &xwindow);
+
+ /* Remove any pending pings */
+ remove_pending_pings_for_window (display, xwindow);
+}
+
+gboolean
+meta_display_xwindow_is_a_no_focus_window (MetaDisplay *display,
+ Window xwindow)
+{
+ gboolean is_a_no_focus_window = FALSE;
+ GSList *temp = display->screens;
+ while (temp != NULL) {
+ MetaScreen *screen = temp->data;
+ if (screen->no_focus_window == xwindow) {
+ is_a_no_focus_window = TRUE;
+ break;
+ }
+ temp = temp->next;
+ }
+
+ return is_a_no_focus_window;
+}
+
+Cursor
+meta_display_create_x_cursor (MetaDisplay *display,
+ MetaCursor cursor)
+{
+ Cursor xcursor;
+ guint glyph;
+
+ switch (cursor)
+ {
+ case META_CURSOR_DEFAULT:
+ glyph = XC_left_ptr;
+ break;
+ case META_CURSOR_NORTH_RESIZE:
+ glyph = XC_top_side;
+ break;
+ case META_CURSOR_SOUTH_RESIZE:
+ glyph = XC_bottom_side;
+ break;
+ case META_CURSOR_WEST_RESIZE:
+ glyph = XC_left_side;
+ break;
+ case META_CURSOR_EAST_RESIZE:
+ glyph = XC_right_side;
+ break;
+ case META_CURSOR_SE_RESIZE:
+ glyph = XC_bottom_right_corner;
+ break;
+ case META_CURSOR_SW_RESIZE:
+ glyph = XC_bottom_left_corner;
+ break;
+ case META_CURSOR_NE_RESIZE:
+ glyph = XC_top_right_corner;
+ break;
+ case META_CURSOR_NW_RESIZE:
+ glyph = XC_top_left_corner;
+ break;
+ case META_CURSOR_MOVE_OR_RESIZE_WINDOW:
+ glyph = XC_fleur;
+ break;
+ case META_CURSOR_BUSY:
+ glyph = XC_watch;
+ break;
+
+ default:
+ g_assert_not_reached ();
+ glyph = 0; /* silence compiler */
+ break;
+ }
+
+ xcursor = XCreateFontCursor (display->xdisplay, glyph);
+
+ return xcursor;
+}
+
+static Cursor
+xcursor_for_op (MetaDisplay *display,
+ MetaGrabOp op)
+{
+ MetaCursor cursor = META_CURSOR_DEFAULT;
+
+ switch (op)
+ {
+ case META_GRAB_OP_RESIZING_SE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ cursor = META_CURSOR_SE_RESIZE;
+ break;
+ case META_GRAB_OP_RESIZING_S:
+ case META_GRAB_OP_KEYBOARD_RESIZING_S:
+ cursor = META_CURSOR_SOUTH_RESIZE;
+ break;
+ case META_GRAB_OP_RESIZING_SW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ cursor = META_CURSOR_SW_RESIZE;
+ break;
+ case META_GRAB_OP_RESIZING_N:
+ case META_GRAB_OP_KEYBOARD_RESIZING_N:
+ cursor = META_CURSOR_NORTH_RESIZE;
+ break;
+ case META_GRAB_OP_RESIZING_NE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ cursor = META_CURSOR_NE_RESIZE;
+ break;
+ case META_GRAB_OP_RESIZING_NW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ cursor = META_CURSOR_NW_RESIZE;
+ break;
+ case META_GRAB_OP_RESIZING_W:
+ case META_GRAB_OP_KEYBOARD_RESIZING_W:
+ cursor = META_CURSOR_WEST_RESIZE;
+ break;
+ case META_GRAB_OP_RESIZING_E:
+ case META_GRAB_OP_KEYBOARD_RESIZING_E:
+ cursor = META_CURSOR_EAST_RESIZE;
+ break;
+ case META_GRAB_OP_MOVING:
+ case META_GRAB_OP_KEYBOARD_MOVING:
+ case META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN:
+ cursor = META_CURSOR_MOVE_OR_RESIZE_WINDOW;
+ break;
+
+ default:
+ break;
+ }
+
+ if (cursor == META_CURSOR_DEFAULT)
+ return None;
+ return meta_display_create_x_cursor (display, cursor);
+}
+
+void
+meta_display_set_grab_op_cursor (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaGrabOp op,
+ gboolean change_pointer,
+ Window grab_xwindow,
+ guint32 timestamp)
+{
+ Cursor cursor;
+
+ cursor = xcursor_for_op (display, op);
+
+#define GRAB_MASK (PointerMotionMask | \
+ ButtonPressMask | ButtonReleaseMask | \
+ EnterWindowMask | LeaveWindowMask)
+
+ if (change_pointer)
+ {
+ meta_error_trap_push_with_return (display);
+ XChangeActivePointerGrab (display->xdisplay,
+ GRAB_MASK,
+ cursor,
+ timestamp);
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Changed pointer with XChangeActivePointerGrab()\n");
+
+ if (meta_error_trap_pop_with_return (display, FALSE) != Success)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Error trapped from XChangeActivePointerGrab()\n");
+ if (display->grab_have_pointer)
+ display->grab_have_pointer = FALSE;
+ }
+ }
+ else
+ {
+ g_assert (screen != NULL);
+
+ meta_error_trap_push (display);
+ if (XGrabPointer (display->xdisplay,
+ grab_xwindow,
+ False,
+ GRAB_MASK,
+ GrabModeAsync, GrabModeAsync,
+ screen->xroot,
+ cursor,
+ timestamp) == GrabSuccess)
+ {
+ display->grab_have_pointer = TRUE;
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "XGrabPointer() returned GrabSuccess time %u\n",
+ timestamp);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "XGrabPointer() failed time %u\n",
+ timestamp);
+ }
+ meta_error_trap_pop (display, TRUE);
+ }
+
+#undef GRAB_MASK
+
+ if (cursor != None)
+ XFreeCursor (display->xdisplay, cursor);
+}
+
+gboolean
+meta_display_begin_grab_op (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ MetaGrabOp op,
+ gboolean pointer_already_grabbed,
+ gboolean frame_action,
+ int button,
+ gulong modmask,
+ guint32 timestamp,
+ int root_x,
+ int root_y)
+{
+ Window grab_xwindow;
+
+ if (grab_op_is_mouse (op) && meta_grab_op_is_moving (op))
+ {
+ if (display->compositor)
+ {
+ meta_compositor_begin_move (display->compositor,
+ window, &window->rect,
+ root_x, root_y);
+ }
+ }
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Doing grab op %u on window %s button %d pointer already grabbed: %d pointer pos %d,%d\n",
+ op, window ? window->desc : "none", button, pointer_already_grabbed,
+ root_x, root_y);
+
+ if (display->grab_op != META_GRAB_OP_NONE)
+ {
+ if (window)
+ meta_warning ("Attempt to perform window operation %u on window %s when operation %u on %s already in effect\n",
+ op, window->desc, display->grab_op,
+ display->grab_window ? display->grab_window->desc : "none");
+ return FALSE;
+ }
+
+ if (window &&
+ (meta_grab_op_is_moving (op) || meta_grab_op_is_resizing (op)))
+ {
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ else
+ {
+ display->grab_initial_x = root_x;
+ display->grab_initial_y = root_y;
+ display->grab_threshold_movement_reached = FALSE;
+ }
+ }
+
+ /* FIXME:
+ * If we have no MetaWindow we do our best
+ * and try to do the grab on the RootWindow.
+ * This will fail if anyone else has any
+ * key grab on the RootWindow.
+ */
+ if (window)
+ grab_xwindow = window->frame ? window->frame->xwindow : window->xwindow;
+ else
+ grab_xwindow = screen->xroot;
+
+ display->grab_have_pointer = FALSE;
+
+ if (pointer_already_grabbed)
+ display->grab_have_pointer = TRUE;
+
+ meta_display_set_grab_op_cursor (display, screen, op, FALSE, grab_xwindow,
+ timestamp);
+
+ if (!display->grab_have_pointer)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "XGrabPointer() failed\n");
+ return FALSE;
+ }
+
+ /* Grab keys for keyboard ops and mouse move/resizes; see #126497 */
+ if (grab_op_is_keyboard (op) || grab_op_is_mouse_only (op))
+ {
+ if (window)
+ display->grab_have_keyboard =
+ meta_window_grab_all_keys (window, timestamp);
+
+ else
+ display->grab_have_keyboard =
+ meta_screen_grab_all_keys (screen, timestamp);
+
+ if (!display->grab_have_keyboard)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "grabbing all keys failed, ungrabbing pointer\n");
+ XUngrabPointer (display->xdisplay, timestamp);
+ display->grab_have_pointer = FALSE;
+ return FALSE;
+ }
+ }
+
+ display->grab_op = op;
+ display->grab_window = window;
+ display->grab_screen = screen;
+ display->grab_xwindow = grab_xwindow;
+ display->grab_button = button;
+ display->grab_mask = modmask;
+ display->grab_anchor_root_x = root_x;
+ display->grab_anchor_root_y = root_y;
+ display->grab_latest_motion_x = root_x;
+ display->grab_latest_motion_y = root_y;
+ display->grab_last_moveresize_time.tv_sec = 0;
+ display->grab_last_moveresize_time.tv_usec = 0;
+ display->grab_motion_notify_time = 0;
+ display->grab_old_window_stacking = NULL;
+#ifdef HAVE_XSYNC
+ display->grab_sync_request_alarm = None;
+ display->grab_last_user_action_was_snap = FALSE;
+#endif
+ display->grab_was_cancelled = FALSE;
+ display->grab_frame_action = frame_action;
+
+ if (display->grab_resize_timeout_id)
+ {
+ g_source_remove (display->grab_resize_timeout_id);
+ display->grab_resize_timeout_id = 0;
+ }
+
+ if (display->grab_window)
+ {
+ meta_window_get_client_root_coords (display->grab_window,
+ &display->grab_initial_window_pos);
+ display->grab_anchor_window_pos = display->grab_initial_window_pos;
+
+ display->grab_wireframe_active =
+ (meta_prefs_get_reduced_resources () && !meta_prefs_get_mate_accessibility ()) &&
+ (meta_grab_op_is_resizing (display->grab_op) ||
+ meta_grab_op_is_moving (display->grab_op));
+
+ if (display->grab_wireframe_active)
+ {
+ meta_window_calc_showing (display->grab_window);
+ meta_window_begin_wireframe (window);
+ }
+
+#ifdef HAVE_XSYNC
+ if (!display->grab_wireframe_active &&
+ meta_grab_op_is_resizing (display->grab_op) &&
+ display->grab_window->sync_request_counter != None)
+ {
+ XSyncAlarmAttributes values;
+ XSyncValue init;
+
+ meta_error_trap_push_with_return (display);
+
+ /* Set the counter to 0, so we know that the application's
+ * responses to the client messages will always trigger
+ * a PositiveTransition
+ */
+
+ XSyncIntToValue (&init, 0);
+ XSyncSetCounter (display->xdisplay,
+ display->grab_window->sync_request_counter, init);
+
+ display->grab_window->sync_request_serial = 0;
+ display->grab_window->sync_request_time.tv_sec = 0;
+ display->grab_window->sync_request_time.tv_usec = 0;
+
+ values.trigger.counter = display->grab_window->sync_request_counter;
+ values.trigger.value_type = XSyncAbsolute;
+ values.trigger.test_type = XSyncPositiveTransition;
+ XSyncIntToValue (&values.trigger.wait_value,
+ display->grab_window->sync_request_serial + 1);
+
+ /* After triggering, increment test_value by this.
+ * (NOT wait_value above)
+ */
+ XSyncIntToValue (&values.delta, 1);
+
+ /* we want events (on by default anyway) */
+ values.events = True;
+
+ display->grab_sync_request_alarm = XSyncCreateAlarm (display->xdisplay,
+ XSyncCACounter |
+ XSyncCAValueType |
+ XSyncCAValue |
+ XSyncCATestType |
+ XSyncCADelta |
+ XSyncCAEvents,
+ &values);
+
+ if (meta_error_trap_pop_with_return (display, FALSE) != Success)
+ display->grab_sync_request_alarm = None;
+
+ meta_topic (META_DEBUG_RESIZING,
+ "Created update alarm 0x%lx\n",
+ display->grab_sync_request_alarm);
+ }
+#endif
+ }
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Grab op %u on window %s successful\n",
+ display->grab_op, window ? window->desc : "(null)");
+
+ g_assert (display->grab_window != NULL || display->grab_screen != NULL);
+ g_assert (display->grab_op != META_GRAB_OP_NONE);
+
+ /* If this is a move or resize, cache the window edges for
+ * resistance/snapping
+ */
+ if (meta_grab_op_is_resizing (display->grab_op) ||
+ meta_grab_op_is_moving (display->grab_op))
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Computing edges to resist-movement or snap-to for %s.\n",
+ window->desc);
+ meta_display_compute_resistance_and_snapping_edges (display);
+ }
+
+ /* Save the old stacking */
+ if (GRAB_OP_IS_WINDOW_SWITCH (display->grab_op))
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Saving old stack positions; old pointer was %p.\n",
+ display->grab_old_window_stacking);
+ display->grab_old_window_stacking =
+ meta_stack_get_positions (screen->stack);
+ }
+
+ /* Do this last, after everything is set up. */
+ switch (op)
+ {
+ case META_GRAB_OP_KEYBOARD_TABBING_NORMAL:
+ meta_screen_ensure_tab_popup (screen,
+ META_TAB_LIST_NORMAL,
+ META_TAB_SHOW_ICON);
+ break;
+ case META_GRAB_OP_KEYBOARD_ESCAPING_NORMAL:
+ meta_screen_ensure_tab_popup (screen,
+ META_TAB_LIST_NORMAL,
+ META_TAB_SHOW_INSTANTLY);
+ break;
+
+ case META_GRAB_OP_KEYBOARD_TABBING_DOCK:
+ meta_screen_ensure_tab_popup (screen,
+ META_TAB_LIST_DOCKS,
+ META_TAB_SHOW_ICON);
+ break;
+ case META_GRAB_OP_KEYBOARD_ESCAPING_DOCK:
+ meta_screen_ensure_tab_popup (screen,
+ META_TAB_LIST_DOCKS,
+ META_TAB_SHOW_INSTANTLY);
+ break;
+ case META_GRAB_OP_KEYBOARD_TABBING_GROUP:
+ meta_screen_ensure_tab_popup (screen,
+ META_TAB_LIST_GROUP,
+ META_TAB_SHOW_ICON);
+ break;
+ case META_GRAB_OP_KEYBOARD_ESCAPING_GROUP:
+ meta_screen_ensure_tab_popup (screen,
+ META_TAB_LIST_GROUP,
+ META_TAB_SHOW_INSTANTLY);
+
+ case META_GRAB_OP_KEYBOARD_WORKSPACE_SWITCHING:
+ meta_screen_ensure_workspace_popup (screen);
+ break;
+
+ default:
+ break;
+ }
+
+ if (display->grab_window)
+ {
+ meta_window_refresh_resize_popup (display->grab_window);
+ }
+
+ return TRUE;
+}
+
+void
+meta_display_end_grab_op (MetaDisplay *display,
+ guint32 timestamp)
+{
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Ending grab op %u at time %u\n", display->grab_op, timestamp);
+
+ if (display->grab_op == META_GRAB_OP_NONE)
+ return;
+
+ if (display->grab_window != NULL)
+ display->grab_window->shaken_loose = FALSE;
+
+ if (display->grab_window != NULL &&
+ !meta_prefs_get_raise_on_click () &&
+ (meta_grab_op_is_moving (display->grab_op) ||
+ meta_grab_op_is_resizing (display->grab_op)))
+ {
+ /* Only raise the window in orthogonal raise
+ * ('do-not-raise-on-click') mode if the user didn't try to move
+ * or resize the given window by at least a threshold amount.
+ * For raise on click mode, the window was raised at the
+ * beginning of the grab_op.
+ */
+ if (!display->grab_threshold_movement_reached)
+ meta_window_raise (display->grab_window);
+ }
+
+ if (GRAB_OP_IS_WINDOW_SWITCH (display->grab_op) ||
+ display->grab_op == META_GRAB_OP_KEYBOARD_WORKSPACE_SWITCHING)
+ {
+ meta_ui_tab_popup_free (display->grab_screen->tab_popup);
+ display->grab_screen->tab_popup = NULL;
+
+ /* If the ungrab here causes an EnterNotify, ignore it for
+ * sloppy focus
+ */
+ display->ungrab_should_not_cause_focus_window = display->grab_xwindow;
+ }
+
+ /* If this was a move or resize clear out the edge cache */
+ if (meta_grab_op_is_resizing (display->grab_op) ||
+ meta_grab_op_is_moving (display->grab_op))
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Clearing out the edges for resistance/snapping");
+ meta_display_cleanup_edges (display);
+ }
+
+ if (display->grab_old_window_stacking != NULL)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Clearing out the old stack position, which was %p.\n",
+ display->grab_old_window_stacking);
+ g_list_free (display->grab_old_window_stacking);
+ display->grab_old_window_stacking = NULL;
+ }
+
+ if (display->grab_wireframe_active)
+ {
+ display->grab_wireframe_active = FALSE;
+ meta_window_end_wireframe (display->grab_window);
+
+ if (!display->grab_was_cancelled)
+ {
+ if (meta_grab_op_is_moving (display->grab_op))
+ meta_window_move (display->grab_window,
+ TRUE,
+ display->grab_wireframe_rect.x,
+ display->grab_wireframe_rect.y);
+ if (meta_grab_op_is_resizing (display->grab_op))
+ meta_window_resize_with_gravity (display->grab_window,
+ TRUE,
+ display->grab_wireframe_rect.width,
+ display->grab_wireframe_rect.height,
+ meta_resize_gravity_from_grab_op (display->grab_op));
+ }
+ meta_window_calc_showing (display->grab_window);
+ }
+
+ if (display->compositor &&
+ display->grab_window &&
+ grab_op_is_mouse (display->grab_op) &&
+ meta_grab_op_is_moving (display->grab_op))
+ {
+ meta_compositor_end_move (display->compositor,
+ display->grab_window);
+ }
+
+ if (display->grab_have_pointer)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Ungrabbing pointer with timestamp %u\n", timestamp);
+ XUngrabPointer (display->xdisplay, timestamp);
+ }
+
+ if (display->grab_have_keyboard)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Ungrabbing all keys timestamp %u\n", timestamp);
+ if (display->grab_window)
+ meta_window_ungrab_all_keys (display->grab_window, timestamp);
+ else
+ meta_screen_ungrab_all_keys (display->grab_screen, timestamp);
+ }
+
+#ifdef HAVE_XSYNC
+ if (display->grab_sync_request_alarm != None)
+ {
+ XSyncDestroyAlarm (display->xdisplay,
+ display->grab_sync_request_alarm);
+ display->grab_sync_request_alarm = None;
+ }
+#endif /* HAVE_XSYNC */
+
+ display->grab_window = NULL;
+ display->grab_screen = NULL;
+ display->grab_xwindow = None;
+ display->grab_op = META_GRAB_OP_NONE;
+
+ if (display->grab_resize_popup)
+ {
+ meta_ui_resize_popup_free (display->grab_resize_popup);
+ display->grab_resize_popup = NULL;
+ }
+
+ if (display->grab_resize_timeout_id)
+ {
+ g_source_remove (display->grab_resize_timeout_id);
+ display->grab_resize_timeout_id = 0;
+ }
+}
+
+void
+meta_display_check_threshold_reached (MetaDisplay *display,
+ int x,
+ int y)
+{
+ /* Don't bother doing the check again if we've already reached the threshold */
+ if (meta_prefs_get_raise_on_click () ||
+ display->grab_threshold_movement_reached)
+ return;
+
+ if (ABS (display->grab_initial_x - x) >= 8 ||
+ ABS (display->grab_initial_y - y) >= 8)
+ display->grab_threshold_movement_reached = TRUE;
+}
+
+static void
+meta_change_button_grab (MetaDisplay *display,
+ Window xwindow,
+ gboolean grab,
+ gboolean sync,
+ int button,
+ int modmask)
+{
+ unsigned int ignored_mask;
+
+ meta_verbose ("%s 0x%lx sync = %d button = %d modmask 0x%x\n",
+ grab ? "Grabbing" : "Ungrabbing",
+ xwindow,
+ sync, button, modmask);
+
+ meta_error_trap_push (display);
+
+ ignored_mask = 0;
+ while (ignored_mask <= display->ignored_modifier_mask)
+ {
+ if (ignored_mask & ~(display->ignored_modifier_mask))
+ {
+ /* Not a combination of ignored modifiers
+ * (it contains some non-ignored modifiers)
+ */
+ ++ignored_mask;
+ continue;
+ }
+
+ if (meta_is_debugging ())
+ meta_error_trap_push_with_return (display);
+
+ /* GrabModeSync means freeze until XAllowEvents */
+
+ if (grab)
+ XGrabButton (display->xdisplay, button, modmask | ignored_mask,
+ xwindow, False,
+ ButtonPressMask | ButtonReleaseMask |
+ PointerMotionMask | PointerMotionHintMask,
+ sync ? GrabModeSync : GrabModeAsync,
+ GrabModeAsync,
+ False, None);
+ else
+ XUngrabButton (display->xdisplay, button, modmask | ignored_mask,
+ xwindow);
+
+ if (meta_is_debugging ())
+ {
+ int result;
+
+ result = meta_error_trap_pop_with_return (display, FALSE);
+
+ if (result != Success)
+ meta_verbose ("Failed to %s button %d with mask 0x%x for window 0x%lx error code %d\n",
+ grab ? "grab" : "ungrab",
+ button, modmask | ignored_mask, xwindow, result);
+ }
+
+ ++ignored_mask;
+ }
+
+ meta_error_trap_pop (display, FALSE);
+}
+
+void
+meta_display_grab_window_buttons (MetaDisplay *display,
+ Window xwindow)
+{
+ /* Grab Alt + button1 for moving window.
+ * Grab Alt + button2 for resizing window.
+ * Grab Alt + button3 for popping up window menu.
+ * Grab Alt + Shift + button1 for snap-moving window.
+ */
+ meta_verbose ("Grabbing window buttons for 0x%lx\n", xwindow);
+
+ /* FIXME If we ignored errors here instead of spewing, we could
+ * put one big error trap around the loop and avoid a bunch of
+ * XSync()
+ */
+
+ if (display->window_grab_modifiers != 0)
+ {
+ gboolean debug = g_getenv ("MARCO_DEBUG_BUTTON_GRABS") != NULL;
+ int i;
+ for (i = 1; i < 4; i++)
+ {
+ meta_change_button_grab (display, xwindow,
+ TRUE,
+ FALSE,
+ i, display->window_grab_modifiers);
+
+ /* This is for debugging, since I end up moving the Xnest
+ * otherwise ;-)
+ */
+ if (debug)
+ meta_change_button_grab (display, xwindow,
+ TRUE,
+ FALSE,
+ i, ControlMask);
+ }
+
+ /* In addition to grabbing Alt+Button1 for moving the window,
+ * grab Alt+Shift+Button1 for snap-moving the window. See bug
+ * 112478. Unfortunately, this doesn't work with
+ * Shift+Alt+Button1 for some reason; so at least part of the
+ * order still matters, which sucks (please FIXME).
+ */
+ meta_change_button_grab (display, xwindow,
+ TRUE,
+ FALSE,
+ 1, display->window_grab_modifiers | ShiftMask);
+ }
+}
+
+void
+meta_display_ungrab_window_buttons (MetaDisplay *display,
+ Window xwindow)
+{
+ gboolean debug;
+ int i;
+
+ if (display->window_grab_modifiers == 0)
+ return;
+
+ debug = g_getenv ("MARCO_DEBUG_BUTTON_GRABS") != NULL;
+ i = 1;
+ while (i < 4)
+ {
+ meta_change_button_grab (display, xwindow,
+ FALSE, FALSE, i,
+ display->window_grab_modifiers);
+
+ if (debug)
+ meta_change_button_grab (display, xwindow,
+ FALSE, FALSE, i, ControlMask);
+
+ ++i;
+ }
+}
+
+/* Grab buttons we only grab while unfocused in click-to-focus mode */
+#define MAX_FOCUS_BUTTON 4
+void
+meta_display_grab_focus_window_button (MetaDisplay *display,
+ MetaWindow *window)
+{
+ /* Grab button 1 for activating unfocused windows */
+ meta_verbose ("Grabbing unfocused window buttons for %s\n", window->desc);
+
+#if 0
+ /* FIXME:115072 */
+ /* Don't grab at all unless in click to focus mode. In click to
+ * focus, we may sometimes be clever about intercepting and eating
+ * the focus click. But in mouse focus, we never do that since the
+ * focus window may not be raised, and who wants to think about
+ * mouse focus anyway.
+ */
+ if (meta_prefs_get_focus_mode () != META_FOCUS_MODE_CLICK)
+ {
+ meta_verbose (" (well, not grabbing since not in click to focus mode)\n");
+ return;
+ }
+#endif
+
+ if (window->have_focus_click_grab)
+ {
+ meta_verbose (" (well, not grabbing since we already have the grab)\n");
+ return;
+ }
+
+ /* FIXME If we ignored errors here instead of spewing, we could
+ * put one big error trap around the loop and avoid a bunch of
+ * XSync()
+ */
+
+ {
+ int i = 1;
+ while (i < MAX_FOCUS_BUTTON)
+ {
+ meta_change_button_grab (display,
+ window->xwindow,
+ TRUE, TRUE,
+ i, 0);
+
+ ++i;
+ }
+
+ window->have_focus_click_grab = TRUE;
+ }
+}
+
+void
+meta_display_ungrab_focus_window_button (MetaDisplay *display,
+ MetaWindow *window)
+{
+ meta_verbose ("Ungrabbing unfocused window buttons for %s\n", window->desc);
+
+ if (!window->have_focus_click_grab)
+ return;
+
+ {
+ int i = 1;
+ while (i < MAX_FOCUS_BUTTON)
+ {
+ meta_change_button_grab (display, window->xwindow,
+ FALSE, FALSE, i, 0);
+
+ ++i;
+ }
+
+ window->have_focus_click_grab = FALSE;
+ }
+}
+
+void
+meta_display_increment_event_serial (MetaDisplay *display)
+{
+ /* We just make some random X request */
+ XDeleteProperty (display->xdisplay, display->leader_window,
+ display->atom__MOTIF_WM_HINTS);
+}
+
+void
+meta_display_update_active_window_hint (MetaDisplay *display)
+{
+ GSList *tmp;
+
+ gulong data[1];
+
+ if (display->focus_window)
+ data[0] = display->focus_window->xwindow;
+ else
+ data[0] = None;
+
+ tmp = display->screens;
+ while (tmp != NULL)
+ {
+ MetaScreen *screen = tmp->data;
+
+ meta_error_trap_push (display);
+ XChangeProperty (display->xdisplay, screen->xroot,
+ display->atom__NET_ACTIVE_WINDOW,
+ XA_WINDOW,
+ 32, PropModeReplace, (guchar*) data, 1);
+
+ meta_error_trap_pop (display, FALSE);
+
+ tmp = tmp->next;
+ }
+}
+
+void
+meta_display_queue_retheme_all_windows (MetaDisplay *display)
+{
+ GSList* windows;
+ GSList *tmp;
+
+ windows = meta_display_list_windows (display);
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *window = tmp->data;
+
+ meta_window_queue (window, META_QUEUE_MOVE_RESIZE);
+ if (window->frame)
+ {
+ window->frame->need_reapply_frame_shape = TRUE;
+
+ meta_frame_queue_draw (window->frame);
+ }
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (windows);
+}
+
+void
+meta_display_retheme_all (void)
+{
+ meta_display_queue_retheme_all_windows (meta_get_display ());
+}
+
+void
+meta_display_set_cursor_theme (const char *theme,
+ int size)
+{
+#ifdef HAVE_XCURSOR
+ GSList *tmp;
+
+ MetaDisplay *display = meta_get_display ();
+
+ XcursorSetTheme (display->xdisplay, theme);
+ XcursorSetDefaultSize (display->xdisplay, size);
+
+ tmp = display->screens;
+ while (tmp != NULL)
+ {
+ MetaScreen *screen = tmp->data;
+
+ meta_screen_update_cursor (screen);
+
+ tmp = tmp->next;
+ }
+
+#endif
+}
+
+/**
+ * Stores whether syncing is currently enabled.
+ */
+static gboolean is_syncing = FALSE;
+
+/**
+ * Returns whether X synchronisation is currently enabled.
+ *
+ * \return true if we must wait for events whenever we send X requests;
+ * false otherwise.
+ *
+ * \bug This is *only* called by meta_display_open, but by that time
+ * we have already turned syncing on or off on startup, and we don't
+ * have any way to do so while Marco is running, so it's rather
+ * pointless.
+ */
+gboolean
+meta_is_syncing (void)
+{
+ return is_syncing;
+}
+
+/**
+ * A handy way to turn on synchronisation on or off for every display.
+ *
+ * \bug Of course there is only one display ever anyway, so this can
+ * be rather hugely simplified.
+ */
+void
+meta_set_syncing (gboolean setting)
+{
+ if (setting != is_syncing)
+ {
+ is_syncing = setting;
+ if (meta_get_display ())
+ XSynchronize (meta_get_display ()->xdisplay, is_syncing);
+ }
+}
+
+/**
+ * How long, in milliseconds, we should wait after pinging a window
+ * before deciding it's not going to get back to us.
+ */
+#define PING_TIMEOUT_DELAY 5000
+
+/**
+ * Does whatever it is we decided to do when a window didn't respond
+ * to a ping. We also remove the ping from the display's list of
+ * pending pings. This function is called by the event loop when the timeout
+ * times out which we created at the start of the ping.
+ *
+ * \param data All the information about this ping. It is a MetaPingData
+ * cast to a void* in order to be passable to a timeout function.
+ * This function will also free this parameter.
+ *
+ * \return Always returns false, because this function is called as a
+ * timeout and we don't want to run the timer again.
+ *
+ * \ingroup pings
+ */
+static gboolean
+meta_display_ping_timeout (gpointer data)
+{
+ MetaPingData *ping_data;
+
+ ping_data = data;
+
+ ping_data->ping_timeout_id = 0;
+
+ meta_topic (META_DEBUG_PING,
+ "Ping %u on window %lx timed out\n",
+ ping_data->timestamp, ping_data->xwindow);
+
+ (* ping_data->ping_timeout_func) (ping_data->display, ping_data->xwindow,
+ ping_data->timestamp, ping_data->user_data);
+
+ ping_data->display->pending_pings =
+ g_slist_remove (ping_data->display->pending_pings,
+ ping_data);
+ ping_data_free (ping_data);
+
+ return FALSE;
+}
+
+/**
+ * Sends a ping request to a window. The window must respond to
+ * the request within a certain amount of time. If it does, we
+ * will call one callback; if the time passes and we haven't had
+ * a response, we call a different callback. The window must have
+ * the hint showing that it can respond to a ping; if it doesn't,
+ * we call the "got a response" callback immediately and return.
+ * This function returns straight away after setting things up;
+ * the callbacks will be called from the event loop.
+ *
+ * \param display The MetaDisplay that the window is on
+ * \param window The MetaWindow to send the ping to
+ * \param timestamp The timestamp of the ping. Used for uniqueness.
+ * Cannot be CurrentTime; use a real timestamp!
+ * \param ping_reply_func The callback to call if we get a response.
+ * \param ping_timeout_func The callback to call if we don't get a response.
+ * \param user_data Arbitrary data that will be passed to the callback
+ * function. (In practice it's often a pointer to
+ * the window.)
+ *
+ * \bug This should probably be a method on windows, rather than displays
+ * for one of their windows.
+ *
+ * \ingroup pings
+ */
+void
+meta_display_ping_window (MetaDisplay *display,
+ MetaWindow *window,
+ guint32 timestamp,
+ MetaWindowPingFunc ping_reply_func,
+ MetaWindowPingFunc ping_timeout_func,
+ gpointer user_data)
+{
+ MetaPingData *ping_data;
+
+ if (timestamp == CurrentTime)
+ {
+ meta_warning ("Tried to ping a window with CurrentTime! Not allowed.\n");
+ return;
+ }
+
+ if (!window->net_wm_ping)
+ {
+ if (ping_reply_func)
+ (* ping_reply_func) (display, window->xwindow, timestamp, user_data);
+
+ return;
+ }
+
+ ping_data = g_new (MetaPingData, 1);
+ ping_data->display = display;
+ ping_data->xwindow = window->xwindow;
+ ping_data->timestamp = timestamp;
+ ping_data->ping_reply_func = ping_reply_func;
+ ping_data->ping_timeout_func = ping_timeout_func;
+ ping_data->user_data = user_data;
+ ping_data->ping_timeout_id = g_timeout_add (PING_TIMEOUT_DELAY,
+ meta_display_ping_timeout,
+ ping_data);
+
+ display->pending_pings = g_slist_prepend (display->pending_pings, ping_data);
+
+ meta_topic (META_DEBUG_PING,
+ "Sending ping with timestamp %u to window %s\n",
+ timestamp, window->desc);
+ meta_window_send_icccm_message (window,
+ display->atom__NET_WM_PING,
+ timestamp);
+}
+
+static void
+process_request_frame_extents (MetaDisplay *display,
+ XEvent *event)
+{
+ /* The X window whose frame extents will be set. */
+ Window xwindow = event->xclient.window;
+ unsigned long data[4] = { 0, 0, 0, 0 };
+
+ MotifWmHints *hints = NULL;
+ gboolean hints_set = FALSE;
+
+ meta_verbose ("Setting frame extents for 0x%lx\n", xwindow);
+
+ /* See if the window is decorated. */
+ hints_set = meta_prop_get_motif_hints (display,
+ xwindow,
+ display->atom__MOTIF_WM_HINTS,
+ &hints);
+ if ((hints_set && hints->decorations) || !hints_set)
+ {
+ int top = 0;
+ int bottom = 0;
+ int left = 0;
+ int right = 0;
+
+ MetaScreen *screen;
+
+ screen = meta_display_screen_for_xwindow (display,
+ event->xclient.window);
+ if (screen == NULL)
+ {
+ meta_warning ("Received request to set _NET_FRAME_EXTENTS "
+ "on 0x%lx which is on a screen we are not managing\n",
+ event->xclient.window);
+ meta_XFree (hints);
+ return;
+ }
+
+ /* Return estimated frame extents for a normal window. */
+ meta_ui_theme_get_frame_borders (screen->ui,
+ META_FRAME_TYPE_NORMAL,
+ 0,
+ &top,
+ &bottom,
+ &left,
+ &right);
+
+ data[0] = left;
+ data[1] = right;
+ data[2] = top;
+ data[3] = bottom;
+ }
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Setting _NET_FRAME_EXTENTS on unmanaged window 0x%lx "
+ "to top = %lu, left = %lu, bottom = %lu, right = %lu\n",
+ xwindow, data[0], data[1], data[2], data[3]);
+
+ meta_error_trap_push (display);
+ XChangeProperty (display->xdisplay, xwindow,
+ display->atom__NET_FRAME_EXTENTS,
+ XA_CARDINAL,
+ 32, PropModeReplace, (guchar*) data, 4);
+ meta_error_trap_pop (display, FALSE);
+
+ meta_XFree (hints);
+}
+
+/**
+ * Process the pong (the response message) from the ping we sent
+ * to the window. This involves removing the timeout, calling the
+ * reply handler function, and freeing memory.
+ *
+ * \param display the display we got the pong from
+ * \param event the XEvent which is a pong; we can tell which
+ * ping it corresponds to because it bears the
+ * same timestamp.
+ *
+ * \ingroup pings
+ */
+static void
+process_pong_message (MetaDisplay *display,
+ XEvent *event)
+{
+ GSList *tmp;
+ guint32 timestamp = event->xclient.data.l[1];
+
+ meta_topic (META_DEBUG_PING, "Received a pong with timestamp %u\n",
+ timestamp);
+
+ for (tmp = display->pending_pings; tmp; tmp = tmp->next)
+ {
+ MetaPingData *ping_data = tmp->data;
+
+ if (timestamp == ping_data->timestamp)
+ {
+ meta_topic (META_DEBUG_PING,
+ "Matching ping found for pong %u\n",
+ ping_data->timestamp);
+
+ /* Remove the ping data from the list */
+ display->pending_pings = g_slist_remove (display->pending_pings,
+ ping_data);
+
+ /* Remove the timeout */
+ if (ping_data->ping_timeout_id != 0)
+ {
+ g_source_remove (ping_data->ping_timeout_id);
+ ping_data->ping_timeout_id = 0;
+ }
+
+ /* Call callback */
+ (* ping_data->ping_reply_func) (display,
+ ping_data->xwindow,
+ ping_data->timestamp,
+ ping_data->user_data);
+
+ ping_data_free (ping_data);
+
+ break;
+ }
+ }
+}
+
+/**
+ * Finds whether a window has any pings waiting on it.
+ *
+ * \param display The MetaDisplay of the window.
+ * \param window The MetaWindow whose pings we want to know about.
+ *
+ * \return True if there is at least one ping which has been sent
+ * to the window without getting a response; false otherwise.
+ *
+ * \bug This should probably be a method on windows, rather than displays
+ * for one of their windows.
+ *
+ * \ingroup pings
+ */
+gboolean
+meta_display_window_has_pending_pings (MetaDisplay *display,
+ MetaWindow *window)
+{
+ GSList *tmp;
+
+ for (tmp = display->pending_pings; tmp; tmp = tmp->next)
+ {
+ MetaPingData *ping_data = tmp->data;
+
+ if (ping_data->xwindow == window->xwindow)
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+MetaGroup*
+get_focussed_group (MetaDisplay *display)
+{
+ if (display->focus_window)
+ return display->focus_window->group;
+ else
+ return NULL;
+}
+
+#define IN_TAB_CHAIN(w,t) (((t) == META_TAB_LIST_NORMAL && META_WINDOW_IN_NORMAL_TAB_CHAIN (w)) \
+ || ((t) == META_TAB_LIST_DOCKS && META_WINDOW_IN_DOCK_TAB_CHAIN (w)) \
+ || ((t) == META_TAB_LIST_GROUP && META_WINDOW_IN_GROUP_TAB_CHAIN (w, get_focussed_group(w->display))))
+
+static MetaWindow*
+find_tab_forward (MetaDisplay *display,
+ MetaTabList type,
+ MetaScreen *screen,
+ MetaWorkspace *workspace,
+ GList *start,
+ gboolean skip_first)
+{
+ GList *tmp;
+
+ g_return_val_if_fail (start != NULL, NULL);
+ g_return_val_if_fail (workspace != NULL, NULL);
+
+ tmp = start;
+ if (skip_first)
+ tmp = tmp->next;
+
+ while (tmp != NULL)
+ {
+ MetaWindow *window = tmp->data;
+
+ if (window->screen == screen &&
+ IN_TAB_CHAIN (window, type))
+ return window;
+
+ tmp = tmp->next;
+ }
+
+ tmp = workspace->mru_list;
+ while (tmp != start && tmp != NULL)
+ {
+ MetaWindow *window = tmp->data;
+
+ if (IN_TAB_CHAIN (window, type))
+ return window;
+
+ tmp = tmp->next;
+ }
+
+ return NULL;
+}
+
+static MetaWindow*
+find_tab_backward (MetaDisplay *display,
+ MetaTabList type,
+ MetaScreen *screen,
+ MetaWorkspace *workspace,
+ GList *start,
+ gboolean skip_last)
+{
+ GList *tmp;
+
+ g_return_val_if_fail (start != NULL, NULL);
+ g_return_val_if_fail (workspace != NULL, NULL);
+
+ tmp = start;
+ if (skip_last)
+ tmp = tmp->prev;
+ while (tmp != NULL)
+ {
+ MetaWindow *window = tmp->data;
+
+ if (window->screen == screen &&
+ IN_TAB_CHAIN (window, type))
+ return window;
+
+ tmp = tmp->prev;
+ }
+
+ tmp = g_list_last (workspace->mru_list);
+ while (tmp != start)
+ {
+ MetaWindow *window = tmp->data;
+
+ if (IN_TAB_CHAIN (window, type))
+ return window;
+
+ tmp = tmp->prev;
+ }
+
+ return NULL;
+}
+
+GList*
+meta_display_get_tab_list (MetaDisplay *display,
+ MetaTabList type,
+ MetaScreen *screen,
+ MetaWorkspace *workspace)
+{
+ GList *tab_list;
+
+ g_return_val_if_fail (workspace != NULL, NULL);
+
+ /* Windows sellout mode - MRU order. Collect unminimized windows
+ * then minimized so minimized windows aren't in the way so much.
+ */
+ {
+ GList *tmp;
+
+ tab_list = NULL;
+ tmp = workspace->mru_list;
+ while (tmp != NULL)
+ {
+ MetaWindow *window = tmp->data;
+
+ if (!window->minimized &&
+ window->screen == screen &&
+ IN_TAB_CHAIN (window, type))
+ tab_list = g_list_prepend (tab_list, window);
+
+ tmp = tmp->next;
+ }
+ }
+
+ {
+ GList *tmp;
+
+ tmp = workspace->mru_list;
+ while (tmp != NULL)
+ {
+ MetaWindow *window = tmp->data;
+
+ if (window->minimized &&
+ window->screen == screen &&
+ IN_TAB_CHAIN (window, type))
+ tab_list = g_list_prepend (tab_list, window);
+
+ tmp = tmp->next;
+ }
+ }
+
+ tab_list = g_list_reverse (tab_list);
+
+ {
+ GSList *tmp;
+ MetaWindow *l_window;
+
+ tmp = meta_display_list_windows (display);
+
+ /* Go through all windows */
+ while (tmp != NULL)
+ {
+ l_window=tmp->data;
+
+ /* Check to see if it demands attention */
+ if (l_window->wm_state_demands_attention &&
+ l_window->workspace!=workspace &&
+ IN_TAB_CHAIN (l_window, type))
+ {
+ /* if it does, add it to the popup */
+ tab_list = g_list_prepend (tab_list, l_window);
+ }
+
+ tmp = tmp->next;
+ } /* End while tmp!=NULL */
+ }
+
+ return tab_list;
+}
+
+MetaWindow*
+meta_display_get_tab_next (MetaDisplay *display,
+ MetaTabList type,
+ MetaScreen *screen,
+ MetaWorkspace *workspace,
+ MetaWindow *window,
+ gboolean backward)
+{
+ gboolean skip;
+ GList *tab_list;
+ MetaWindow *ret;
+ tab_list = meta_display_get_tab_list(display,
+ type,
+ screen,
+ workspace);
+
+ if (tab_list == NULL)
+ return NULL;
+
+ if (window != NULL)
+ {
+ g_assert (window->display == display);
+
+ if (backward)
+ ret = find_tab_backward (display, type, screen, workspace,
+ g_list_find (tab_list,
+ window),
+ TRUE);
+ else
+ ret = find_tab_forward (display, type, screen, workspace,
+ g_list_find (tab_list,
+ window),
+ TRUE);
+ }
+ else
+ {
+ skip = display->focus_window != NULL &&
+ tab_list->data == display->focus_window;
+ if (backward)
+ ret = find_tab_backward (display, type, screen, workspace,
+ tab_list, skip);
+ else
+ ret = find_tab_forward (display, type, screen, workspace,
+ tab_list, skip);
+ }
+
+ g_list_free (tab_list);
+ return ret;
+}
+
+MetaWindow*
+meta_display_get_tab_current (MetaDisplay *display,
+ MetaTabList type,
+ MetaScreen *screen,
+ MetaWorkspace *workspace)
+{
+ MetaWindow *window;
+
+ window = display->focus_window;
+
+ if (window != NULL &&
+ window->screen == screen &&
+ IN_TAB_CHAIN (window, type) &&
+ (workspace == NULL ||
+ meta_window_located_on_workspace (window, workspace)))
+ return window;
+ else
+ return NULL;
+}
+
+int
+meta_resize_gravity_from_grab_op (MetaGrabOp op)
+{
+ int gravity;
+
+ gravity = -1;
+ switch (op)
+ {
+ case META_GRAB_OP_RESIZING_SE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ gravity = NorthWestGravity;
+ break;
+ case META_GRAB_OP_KEYBOARD_RESIZING_S:
+ case META_GRAB_OP_RESIZING_S:
+ gravity = NorthGravity;
+ break;
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ case META_GRAB_OP_RESIZING_SW:
+ gravity = NorthEastGravity;
+ break;
+ case META_GRAB_OP_KEYBOARD_RESIZING_N:
+ case META_GRAB_OP_RESIZING_N:
+ gravity = SouthGravity;
+ break;
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ case META_GRAB_OP_RESIZING_NE:
+ gravity = SouthWestGravity;
+ break;
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ case META_GRAB_OP_RESIZING_NW:
+ gravity = SouthEastGravity;
+ break;
+ case META_GRAB_OP_KEYBOARD_RESIZING_E:
+ case META_GRAB_OP_RESIZING_E:
+ gravity = WestGravity;
+ break;
+ case META_GRAB_OP_KEYBOARD_RESIZING_W:
+ case META_GRAB_OP_RESIZING_W:
+ gravity = EastGravity;
+ break;
+ case META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN:
+ gravity = CenterGravity;
+ break;
+ default:
+ break;
+ }
+
+ return gravity;
+}
+
+static MetaScreen*
+find_screen_for_selection (MetaDisplay *display,
+ Window owner,
+ Atom selection)
+{
+ GSList *tmp;
+
+ tmp = display->screens;
+ while (tmp != NULL)
+ {
+ MetaScreen *screen = tmp->data;
+
+ if (screen->wm_sn_selection_window == owner &&
+ screen->wm_sn_atom == selection)
+ return screen;
+
+ tmp = tmp->next;
+ }
+
+ return NULL;
+}
+
+/* from fvwm2, Copyright Matthias Clasen, Dominik Vogt */
+static gboolean
+convert_property (MetaDisplay *display,
+ MetaScreen *screen,
+ Window w,
+ Atom target,
+ Atom property)
+{
+#define N_TARGETS 4
+ Atom conversion_targets[N_TARGETS];
+ long icccm_version[] = { 2, 0 };
+
+ conversion_targets[0] = display->atom_TARGETS;
+ conversion_targets[1] = display->atom_MULTIPLE;
+ conversion_targets[2] = display->atom_TIMESTAMP;
+ conversion_targets[3] = display->atom_VERSION;
+
+ meta_error_trap_push_with_return (display);
+ if (target == display->atom_TARGETS)
+ XChangeProperty (display->xdisplay, w, property,
+ XA_ATOM, 32, PropModeReplace,
+ (unsigned char *)conversion_targets, N_TARGETS);
+ else if (target == display->atom_TIMESTAMP)
+ XChangeProperty (display->xdisplay, w, property,
+ XA_INTEGER, 32, PropModeReplace,
+ (unsigned char *)&screen->wm_sn_timestamp, 1);
+ else if (target == display->atom_VERSION)
+ XChangeProperty (display->xdisplay, w, property,
+ XA_INTEGER, 32, PropModeReplace,
+ (unsigned char *)icccm_version, 2);
+ else
+ {
+ meta_error_trap_pop_with_return (display, FALSE);
+ return FALSE;
+ }
+
+ if (meta_error_trap_pop_with_return (display, FALSE) != Success)
+ return FALSE;
+
+ /* Be sure the PropertyNotify has arrived so we
+ * can send SelectionNotify
+ */
+ /* FIXME the error trap pop synced anyway, right? */
+ meta_topic (META_DEBUG_SYNC, "Syncing on %s\n", G_STRFUNC);
+ XSync (display->xdisplay, False);
+
+ return TRUE;
+}
+
+/* from fvwm2, Copyright Matthias Clasen, Dominik Vogt */
+static void
+process_selection_request (MetaDisplay *display,
+ XEvent *event)
+{
+ XSelectionEvent reply;
+ MetaScreen *screen;
+
+ screen = find_screen_for_selection (display,
+ event->xselectionrequest.owner,
+ event->xselectionrequest.selection);
+
+ if (screen == NULL)
+ {
+ char *str;
+
+ meta_error_trap_push (display);
+ str = XGetAtomName (display->xdisplay,
+ event->xselectionrequest.selection);
+ meta_error_trap_pop (display, TRUE);
+
+ meta_verbose ("Selection request with selection %s window 0x%lx not a WM_Sn selection we recognize\n",
+ str ? str : "(bad atom)", event->xselectionrequest.owner);
+
+ meta_XFree (str);
+
+ return;
+ }
+
+ reply.type = SelectionNotify;
+ reply.display = display->xdisplay;
+ reply.requestor = event->xselectionrequest.requestor;
+ reply.selection = event->xselectionrequest.selection;
+ reply.target = event->xselectionrequest.target;
+ reply.property = None;
+ reply.time = event->xselectionrequest.time;
+
+ if (event->xselectionrequest.target == display->atom_MULTIPLE)
+ {
+ if (event->xselectionrequest.property != None)
+ {
+ Atom type, *adata;
+ int i, format;
+ unsigned long num, rest;
+ unsigned char *data;
+
+ meta_error_trap_push_with_return (display);
+ if (XGetWindowProperty (display->xdisplay,
+ event->xselectionrequest.requestor,
+ event->xselectionrequest.property, 0, 256, False,
+ display->atom_ATOM_PAIR,
+ &type, &format, &num, &rest, &data) != Success)
+ {
+ meta_error_trap_pop_with_return (display, TRUE);
+ return;
+ }
+
+ if (meta_error_trap_pop_with_return (display, TRUE) == Success)
+ {
+ /* FIXME: to be 100% correct, should deal with rest > 0,
+ * but since we have 4 possible targets, we will hardly ever
+ * meet multiple requests with a length > 8
+ */
+ adata = (Atom*)data;
+ i = 0;
+ while (i < (int) num)
+ {
+ if (!convert_property (display, screen,
+ event->xselectionrequest.requestor,
+ adata[i], adata[i+1]))
+ adata[i+1] = None;
+ i += 2;
+ }
+
+ meta_error_trap_push (display);
+ XChangeProperty (display->xdisplay,
+ event->xselectionrequest.requestor,
+ event->xselectionrequest.property,
+ display->atom_ATOM_PAIR,
+ 32, PropModeReplace, data, num);
+ meta_error_trap_pop (display, FALSE);
+ meta_XFree (data);
+ }
+ }
+ }
+ else
+ {
+ if (event->xselectionrequest.property == None)
+ event->xselectionrequest.property = event->xselectionrequest.target;
+
+ if (convert_property (display, screen,
+ event->xselectionrequest.requestor,
+ event->xselectionrequest.target,
+ event->xselectionrequest.property))
+ reply.property = event->xselectionrequest.property;
+ }
+
+ XSendEvent (display->xdisplay,
+ event->xselectionrequest.requestor,
+ False, 0L, (XEvent*)&reply);
+
+ meta_verbose ("Handled selection request\n");
+}
+
+static void
+process_selection_clear (MetaDisplay *display,
+ XEvent *event)
+{
+ /* We need to unmanage the screen on which we lost the selection */
+ MetaScreen *screen;
+
+ screen = find_screen_for_selection (display,
+ event->xselectionclear.window,
+ event->xselectionclear.selection);
+
+
+ if (screen != NULL)
+ {
+ meta_verbose ("Got selection clear for screen %d on display %s\n",
+ screen->number, display->name);
+
+ meta_display_unmanage_screen (&display,
+ screen,
+ event->xselectionclear.time);
+
+ if (!display)
+ the_display = NULL;
+
+ /* display and screen may both be invalid memory... */
+
+ return;
+ }
+
+ {
+ char *str;
+
+ meta_error_trap_push (display);
+ str = XGetAtomName (display->xdisplay,
+ event->xselectionclear.selection);
+ meta_error_trap_pop (display, TRUE);
+
+ meta_verbose ("Selection clear with selection %s window 0x%lx not a WM_Sn selection we recognize\n",
+ str ? str : "(bad atom)", event->xselectionclear.window);
+
+ meta_XFree (str);
+ }
+}
+
+void
+meta_display_unmanage_screen (MetaDisplay **displayp,
+ MetaScreen *screen,
+ guint32 timestamp)
+{
+ MetaDisplay *display = *displayp;
+
+ meta_verbose ("Unmanaging screen %d on display %s\n",
+ screen->number, display->name);
+
+ g_return_if_fail (g_slist_find (display->screens, screen) != NULL);
+
+ meta_screen_free (screen, timestamp);
+ display->screens = g_slist_remove (display->screens, screen);
+
+ if (display->screens == NULL)
+ {
+ meta_display_close (display, timestamp);
+ *displayp = NULL;
+ }
+}
+
+void
+meta_display_unmanage_windows_for_screen (MetaDisplay *display,
+ MetaScreen *screen,
+ guint32 timestamp)
+{
+ GSList *tmp;
+ GSList *winlist;
+
+ winlist = meta_display_list_windows (display);
+ winlist = g_slist_sort (winlist, meta_display_stack_cmp);
+
+ /* Unmanage all windows */
+ tmp = winlist;
+ while (tmp != NULL)
+ {
+ meta_window_free (tmp->data, timestamp);
+
+ tmp = tmp->next;
+ }
+ g_slist_free (winlist);
+}
+
+int
+meta_display_stack_cmp (const void *a,
+ const void *b)
+{
+ MetaWindow *aw = (void*) a;
+ MetaWindow *bw = (void*) b;
+
+ if (aw->screen == bw->screen)
+ return meta_stack_windows_cmp (aw->screen->stack, aw, bw);
+ /* Then assume screens are stacked by number */
+ else if (aw->screen->number < bw->screen->number)
+ return -1;
+ else if (aw->screen->number > bw->screen->number)
+ return 1;
+ else
+ return 0; /* not reached in theory, if windows on same display */
+}
+
+void
+meta_display_devirtualize_modifiers (MetaDisplay *display,
+ MetaVirtualModifier modifiers,
+ unsigned int *mask)
+{
+ *mask = 0;
+
+ if (modifiers & META_VIRTUAL_SHIFT_MASK)
+ *mask |= ShiftMask;
+ if (modifiers & META_VIRTUAL_CONTROL_MASK)
+ *mask |= ControlMask;
+ if (modifiers & META_VIRTUAL_ALT_MASK)
+ *mask |= Mod1Mask;
+ if (modifiers & META_VIRTUAL_META_MASK)
+ *mask |= display->meta_mask;
+ if (modifiers & META_VIRTUAL_HYPER_MASK)
+ *mask |= display->hyper_mask;
+ if (modifiers & META_VIRTUAL_SUPER_MASK)
+ *mask |= display->super_mask;
+ if (modifiers & META_VIRTUAL_MOD2_MASK)
+ *mask |= Mod2Mask;
+ if (modifiers & META_VIRTUAL_MOD3_MASK)
+ *mask |= Mod3Mask;
+ if (modifiers & META_VIRTUAL_MOD4_MASK)
+ *mask |= Mod4Mask;
+ if (modifiers & META_VIRTUAL_MOD5_MASK)
+ *mask |= Mod5Mask;
+}
+
+static void
+update_window_grab_modifiers (MetaDisplay *display)
+
+{
+ MetaVirtualModifier virtual_mods;
+ unsigned int mods;
+
+ virtual_mods = meta_prefs_get_mouse_button_mods ();
+ meta_display_devirtualize_modifiers (display, virtual_mods,
+ &mods);
+
+ display->window_grab_modifiers = mods;
+}
+
+static void
+prefs_changed_callback (MetaPreference pref,
+ void *data)
+{
+ MetaDisplay *display = data;
+
+ /* It may not be obvious why we regrab on focus mode
+ * change; it's because we handle focus clicks a
+ * bit differently for the different focus modes.
+ */
+ if (pref == META_PREF_MOUSE_BUTTON_MODS ||
+ pref == META_PREF_FOCUS_MODE)
+ {
+ MetaDisplay *display = data;
+ GSList *windows;
+ GSList *tmp;
+
+ windows = meta_display_list_windows (display);
+
+ /* Ungrab all */
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+ meta_display_ungrab_window_buttons (display, w->xwindow);
+ meta_display_ungrab_focus_window_button (display, w);
+ tmp = tmp->next;
+ }
+
+ /* change our modifier */
+ if (pref == META_PREF_MOUSE_BUTTON_MODS)
+ update_window_grab_modifiers (display);
+
+ /* Grab all */
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+ if (w->type != META_WINDOW_DOCK)
+ {
+ meta_display_grab_focus_window_button (display, w);
+ meta_display_grab_window_buttons (display, w->xwindow);
+ }
+ tmp = tmp->next;
+ }
+
+ g_slist_free (windows);
+ }
+ else if (pref == META_PREF_AUDIBLE_BELL)
+ {
+ meta_bell_set_audible (display, meta_prefs_bell_is_audible ());
+ }
+ else if (pref == META_PREF_COMPOSITING_MANAGER)
+ {
+ gboolean cm = meta_prefs_get_compositing_manager ();
+
+ if (cm)
+ enable_compositor (display, TRUE);
+ else
+ disable_compositor (display);
+ }
+}
+
+void
+meta_display_increment_focus_sentinel (MetaDisplay *display)
+{
+ unsigned long data[1];
+
+ data[0] = meta_display_get_current_time (display);
+
+ XChangeProperty (display->xdisplay,
+ ((MetaScreen*) display->screens->data)->xroot,
+ display->atom__MARCO_SENTINEL,
+ XA_CARDINAL,
+ 32, PropModeReplace, (guchar*) data, 1);
+
+ display->sentinel_counter += 1;
+}
+
+void
+meta_display_decrement_focus_sentinel (MetaDisplay *display)
+{
+ display->sentinel_counter -= 1;
+
+ if (display->sentinel_counter < 0)
+ display->sentinel_counter = 0;
+}
+
+gboolean
+meta_display_focus_sentinel_clear (MetaDisplay *display)
+{
+ return (display->sentinel_counter == 0);
+}
+
+static void
+sanity_check_timestamps (MetaDisplay *display,
+ guint32 timestamp)
+{
+ if (XSERVER_TIME_IS_BEFORE (timestamp, display->last_focus_time))
+ {
+ meta_warning ("last_focus_time (%u) is greater than comparison "
+ "timestamp (%u). This most likely represents a buggy "
+ "client sending inaccurate timestamps in messages such as "
+ "_NET_ACTIVE_WINDOW. Trying to work around...\n",
+ display->last_focus_time, timestamp);
+ display->last_focus_time = timestamp;
+ }
+ if (XSERVER_TIME_IS_BEFORE (timestamp, display->last_user_time))
+ {
+ GSList *windows;
+ GSList *tmp;
+
+ meta_warning ("last_user_time (%u) is greater than comparison "
+ "timestamp (%u). This most likely represents a buggy "
+ "client sending inaccurate timestamps in messages such as "
+ "_NET_ACTIVE_WINDOW. Trying to work around...\n",
+ display->last_user_time, timestamp);
+ display->last_user_time = timestamp;
+
+ windows = meta_display_list_windows (display);
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *window = tmp->data;
+
+ if (XSERVER_TIME_IS_BEFORE (timestamp, window->net_wm_user_time))
+ {
+ meta_warning ("%s appears to be one of the offending windows "
+ "with a timestamp of %u. Working around...\n",
+ window->desc, window->net_wm_user_time);
+ window->net_wm_user_time = timestamp;
+ }
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (windows);
+ }
+}
+
+static gboolean
+timestamp_too_old (MetaDisplay *display,
+ MetaWindow *window,
+ guint32 *timestamp)
+{
+ /* FIXME: If Soeren's suggestion in bug 151984 is implemented, it will allow
+ * us to sanity check the timestamp here and ensure it doesn't correspond to
+ * a future time (though we would want to rename to
+ * timestamp_too_old_or_in_future).
+ */
+
+ if (*timestamp == CurrentTime)
+ {
+ meta_warning ("Got a request to focus %s with a timestamp of 0. This "
+ "shouldn't happen!\n",
+ window ? window->desc : "the no_focus_window");
+ meta_print_backtrace ();
+ *timestamp = meta_display_get_current_time_roundtrip (display);
+ return FALSE;
+ }
+ else if (XSERVER_TIME_IS_BEFORE (*timestamp, display->last_focus_time))
+ {
+ if (XSERVER_TIME_IS_BEFORE (*timestamp, display->last_user_time))
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Ignoring focus request for %s since %u "
+ "is less than %u and %u.\n",
+ window ? window->desc : "the no_focus_window",
+ *timestamp,
+ display->last_user_time,
+ display->last_focus_time);
+ return TRUE;
+ }
+ else
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Received focus request for %s which is newer than most "
+ "recent user_time, but less recent than "
+ "last_focus_time (%u < %u < %u); adjusting "
+ "accordingly. (See bug 167358)\n",
+ window ? window->desc : "the no_focus_window",
+ display->last_user_time,
+ *timestamp,
+ display->last_focus_time);
+ *timestamp = display->last_focus_time;
+ return FALSE;
+ }
+ }
+
+ return FALSE;
+}
+
+void
+meta_display_set_input_focus_window (MetaDisplay *display,
+ MetaWindow *window,
+ gboolean focus_frame,
+ guint32 timestamp)
+{
+ if (timestamp_too_old (display, window, &timestamp))
+ return;
+
+ meta_error_trap_push (display);
+ XSetInputFocus (display->xdisplay,
+ focus_frame ? window->frame->xwindow : window->xwindow,
+ RevertToPointerRoot,
+ timestamp);
+ meta_error_trap_pop (display, FALSE);
+
+ display->expected_focus_window = window;
+ display->last_focus_time = timestamp;
+ display->active_screen = window->screen;
+
+ if (window != display->autoraise_window)
+ meta_display_remove_autoraise_callback (window->display);
+}
+
+void
+meta_display_focus_the_no_focus_window (MetaDisplay *display,
+ MetaScreen *screen,
+ guint32 timestamp)
+{
+ if (timestamp_too_old (display, NULL, &timestamp))
+ return;
+
+ XSetInputFocus (display->xdisplay,
+ screen->no_focus_window,
+ RevertToPointerRoot,
+ timestamp);
+ display->expected_focus_window = NULL;
+ display->last_focus_time = timestamp;
+ display->active_screen = screen;
+
+ meta_display_remove_autoraise_callback (display);
+}
+
+void
+meta_display_remove_autoraise_callback (MetaDisplay *display)
+{
+ if (display->autoraise_timeout_id != 0)
+ {
+ g_source_remove (display->autoraise_timeout_id);
+ display->autoraise_timeout_id = 0;
+ display->autoraise_window = NULL;
+ }
+}
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+void
+meta_display_get_compositor_version (MetaDisplay *display,
+ int *major,
+ int *minor)
+{
+ *major = display->composite_major_version;
+ *minor = display->composite_minor_version;
+}
+#endif
+
+Display *
+meta_display_get_xdisplay (MetaDisplay *display)
+{
+ return display->xdisplay;
+}
+
+MetaCompositor *
+meta_display_get_compositor (MetaDisplay *display)
+{
+ return display->compositor;
+}
+
+GSList *
+meta_display_get_screens (MetaDisplay *display)
+{
+ return display->screens;
+}
+
+gboolean
+meta_display_has_shape (MetaDisplay *display)
+{
+ return META_DISPLAY_HAS_SHAPE (display);
+}
+
+MetaWindow *
+meta_display_get_focus_window (MetaDisplay *display)
+{
+ return display->focus_window;
+}
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+int
+meta_display_get_damage_event_base (MetaDisplay *display)
+{
+ return display->damage_event_base;
+}
+#endif
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+#ifdef HAVE_SHAPE
+int
+meta_display_get_shape_event_base (MetaDisplay *display)
+{
+ return display->shape_event_base;
+}
+#endif
+#endif
diff --git a/src/core/edge-resistance.c b/src/core/edge-resistance.c
new file mode 100644
index 00000000..fd3f2d44
--- /dev/null
+++ b/src/core/edge-resistance.c
@@ -0,0 +1,1277 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Edge resistance for move/resize operations */
+
+/*
+ * Copyright (C) 2005, 2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "edge-resistance.h"
+#include "boxes.h"
+#include "display-private.h"
+#include "workspace.h"
+
+/* A simple macro for whether a given window's edges are potentially
+ * relevant for resistance/snapping during a move/resize operation
+ */
+#define WINDOW_EDGES_RELEVANT(window, display) \
+ meta_window_should_be_showing (window) && \
+ window->screen == display->grab_screen && \
+ window != display->grab_window && \
+ window->type != META_WINDOW_DESKTOP && \
+ window->type != META_WINDOW_MENU && \
+ window->type != META_WINDOW_SPLASHSCREEN
+
+struct ResistanceDataForAnEdge
+{
+ gboolean timeout_setup;
+ guint timeout_id;
+ int timeout_edge_pos;
+ gboolean timeout_over;
+ GSourceFunc timeout_func;
+ MetaWindow *window;
+ int keyboard_buildup;
+};
+typedef struct ResistanceDataForAnEdge ResistanceDataForAnEdge;
+
+struct MetaEdgeResistanceData
+{
+ GArray *left_edges;
+ GArray *right_edges;
+ GArray *top_edges;
+ GArray *bottom_edges;
+
+ ResistanceDataForAnEdge left_data;
+ ResistanceDataForAnEdge right_data;
+ ResistanceDataForAnEdge top_data;
+ ResistanceDataForAnEdge bottom_data;
+};
+
+/* !WARNING!: this function can return invalid indices (namely, either -1 or
+ * edges->len); this is by design, but you need to remember this.
+ */
+static int
+find_index_of_edge_near_position (const GArray *edges,
+ int position,
+ gboolean want_interval_min,
+ gboolean horizontal)
+{
+ /* This is basically like a binary search, except that we're trying to
+ * find a range instead of an exact value. So, if we have in our array
+ * Value: 3 27 316 316 316 505 522 800 1213
+ * Index: 0 1 2 3 4 5 6 7 8
+ * and we call this function with position=500 & want_interval_min=TRUE
+ * then we should get 5 (because 505 is the first value bigger than 500).
+ * If we call this function with position=805 and want_interval_min=FALSE
+ * then we should get 7 (because 800 is the last value smaller than 800).
+ * A couple more, to make things clear:
+ * position want_interval_min correct_answer
+ * 316 TRUE 2
+ * 316 FALSE 4
+ * 2 FALSE -1
+ * 2000 TRUE 9
+ */
+ int low, high, mid;
+ int compare;
+ MetaEdge *edge;
+
+ /* Initialize mid, edge, & compare in the off change that the array only
+ * has one element.
+ */
+ mid = 0;
+ edge = g_array_index (edges, MetaEdge*, mid);
+ compare = horizontal ? edge->rect.x : edge->rect.y;
+
+ /* Begin the search... */
+ low = 0;
+ high = edges->len - 1;
+ while (low < high)
+ {
+ mid = low + (high - low)/2;
+ edge = g_array_index (edges, MetaEdge*, mid);
+ compare = horizontal ? edge->rect.x : edge->rect.y;
+
+ if (compare == position)
+ break;
+
+ if (compare > position)
+ high = mid - 1;
+ else
+ low = mid + 1;
+ }
+
+ /* mid should now be _really_ close to the index we want, so we start
+ * linearly searching. However, note that we don't know if mid is less
+ * than or greater than what we need and it's possible that there are
+ * several equal values equal to what we were searching for and we ended
+ * up in the middle of them instead of at the end. So we may need to
+ * move mid multiple locations over.
+ */
+ if (want_interval_min)
+ {
+ while (compare >= position && mid > 0)
+ {
+ mid--;
+ edge = g_array_index (edges, MetaEdge*, mid);
+ compare = horizontal ? edge->rect.x : edge->rect.y;
+ }
+ while (compare < position && mid < (int)edges->len - 1)
+ {
+ mid++;
+ edge = g_array_index (edges, MetaEdge*, mid);
+ compare = horizontal ? edge->rect.x : edge->rect.y;
+ }
+
+ /* Special case for no values in array big enough */
+ if (compare < position)
+ return edges->len;
+
+ /* Return the found value */
+ return mid;
+ }
+ else
+ {
+ while (compare <= position && mid < (int)edges->len - 1)
+ {
+ mid++;
+ edge = g_array_index (edges, MetaEdge*, mid);
+ compare = horizontal ? edge->rect.x : edge->rect.y;
+ }
+ while (compare > position && mid > 0)
+ {
+ mid--;
+ edge = g_array_index (edges, MetaEdge*, mid);
+ compare = horizontal ? edge->rect.x : edge->rect.y;
+ }
+
+ /* Special case for no values in array small enough */
+ if (compare > position)
+ return -1;
+
+ /* Return the found value */
+ return mid;
+ }
+}
+
+static gboolean
+points_on_same_side (int ref, int pt1, int pt2)
+{
+ return (pt1 - ref) * (pt2 - ref) > 0;
+}
+
+static int
+find_nearest_position (const GArray *edges,
+ int position,
+ int old_position,
+ const MetaRectangle *new_rect,
+ gboolean horizontal,
+ gboolean only_forward)
+{
+ /* This is basically just a binary search except that we're looking
+ * for the value closest to position, rather than finding that
+ * actual value. Also, we ignore any edges that aren't relevant
+ * given the horizontal/vertical position of new_rect.
+ */
+ int low, high, mid;
+ int compare;
+ MetaEdge *edge;
+ int best, best_dist, i;
+ gboolean edges_align;
+
+ /* Initialize mid, edge, & compare in the off change that the array only
+ * has one element.
+ */
+ mid = 0;
+ edge = g_array_index (edges, MetaEdge*, mid);
+ compare = horizontal ? edge->rect.x : edge->rect.y;
+
+ /* Begin the search... */
+ low = 0;
+ high = edges->len - 1;
+ while (low < high)
+ {
+ mid = low + (high - low)/2;
+ edge = g_array_index (edges, MetaEdge*, mid);
+ compare = horizontal ? edge->rect.x : edge->rect.y;
+
+ if (compare == position)
+ break;
+
+ if (compare > position)
+ high = mid - 1;
+ else
+ low = mid + 1;
+ }
+
+ /* mid should now be _really_ close to the index we want, so we
+ * start searching nearby for something that overlaps and is closer
+ * than the original position.
+ */
+ best = old_position;
+ best_dist = INT_MAX;
+
+ /* Start the search at mid */
+ edge = g_array_index (edges, MetaEdge*, mid);
+ compare = horizontal ? edge->rect.x : edge->rect.y;
+ edges_align = meta_rectangle_edge_aligns (new_rect, edge);
+ if (edges_align &&
+ (!only_forward || !points_on_same_side (position, compare, old_position)))
+ {
+ int dist = ABS (compare - position);
+ if (dist < best_dist)
+ {
+ best = compare;
+ best_dist = dist;
+ }
+ }
+
+ /* Now start searching higher than mid */
+ for (i = mid + 1; i < (int)edges->len; i++)
+ {
+ edge = g_array_index (edges, MetaEdge*, i);
+ compare = horizontal ? edge->rect.x : edge->rect.y;
+
+ edges_align = horizontal ?
+ meta_rectangle_vert_overlap (&edge->rect, new_rect) :
+ meta_rectangle_horiz_overlap (&edge->rect, new_rect);
+
+ if (edges_align &&
+ (!only_forward ||
+ !points_on_same_side (position, compare, old_position)))
+ {
+ int dist = ABS (compare - position);
+ if (dist < best_dist)
+ {
+ best = compare;
+ best_dist = dist;
+ }
+ break;
+ }
+ }
+
+ /* Now start searching lower than mid */
+ for (i = mid-1; i >= 0; i--)
+ {
+ edge = g_array_index (edges, MetaEdge*, i);
+ compare = horizontal ? edge->rect.x : edge->rect.y;
+
+ edges_align = horizontal ?
+ meta_rectangle_vert_overlap (&edge->rect, new_rect) :
+ meta_rectangle_horiz_overlap (&edge->rect, new_rect);
+
+ if (edges_align &&
+ (!only_forward ||
+ !points_on_same_side (position, compare, old_position)))
+ {
+ int dist = ABS (compare - position);
+ if (dist < best_dist)
+ {
+ best = compare;
+ best_dist = dist;
+ }
+ break;
+ }
+ }
+
+ /* Return the best one found */
+ return best;
+}
+
+static gboolean
+movement_towards_edge (MetaSide side, int increment)
+{
+ switch (side)
+ {
+ case META_SIDE_LEFT:
+ case META_SIDE_TOP:
+ return increment < 0;
+ case META_SIDE_RIGHT:
+ case META_SIDE_BOTTOM:
+ return increment > 0;
+ default:
+ g_assert_not_reached ();
+ }
+}
+
+static gboolean
+edge_resistance_timeout (gpointer data)
+{
+ ResistanceDataForAnEdge *resistance_data = data;
+
+ resistance_data->timeout_over = TRUE;
+ resistance_data->timeout_id = 0;
+ (*resistance_data->timeout_func)(resistance_data->window);
+
+ return FALSE;
+}
+
+static int
+apply_edge_resistance (MetaWindow *window,
+ int old_pos,
+ int new_pos,
+ const MetaRectangle *old_rect,
+ const MetaRectangle *new_rect,
+ GArray *edges,
+ ResistanceDataForAnEdge *resistance_data,
+ GSourceFunc timeout_func,
+ gboolean xdir,
+ gboolean keyboard_op)
+{
+ int i, begin, end;
+ int last_edge;
+ gboolean increasing = new_pos > old_pos;
+ int increment = increasing ? 1 : -1;
+
+ const int PIXEL_DISTANCE_THRESHOLD_TOWARDS_WINDOW = 16;
+ const int PIXEL_DISTANCE_THRESHOLD_AWAYFROM_WINDOW = 0;
+ const int PIXEL_DISTANCE_THRESHOLD_TOWARDS_XINERAMA = 32;
+ const int PIXEL_DISTANCE_THRESHOLD_AWAYFROM_XINERAMA = 0;
+ const int PIXEL_DISTANCE_THRESHOLD_TOWARDS_SCREEN = 32;
+ const int PIXEL_DISTANCE_THRESHOLD_AWAYFROM_SCREEN = 0;
+ const int TIMEOUT_RESISTANCE_LENGTH_MS_WINDOW = 0;
+ const int TIMEOUT_RESISTANCE_LENGTH_MS_XINERAMA = 0;
+ const int TIMEOUT_RESISTANCE_LENGTH_MS_SCREEN = 0;
+
+ /* Quit if no movement was specified */
+ if (old_pos == new_pos)
+ return new_pos;
+
+ /* Remove the old timeout if it's no longer relevant */
+ if (resistance_data->timeout_setup &&
+ ((resistance_data->timeout_edge_pos > old_pos &&
+ resistance_data->timeout_edge_pos > new_pos) ||
+ (resistance_data->timeout_edge_pos < old_pos &&
+ resistance_data->timeout_edge_pos < new_pos)))
+ {
+ resistance_data->timeout_setup = FALSE;
+ if (resistance_data->timeout_id != 0)
+ {
+ g_source_remove (resistance_data->timeout_id);
+ resistance_data->timeout_id = 0;
+ }
+ }
+
+ /* Get the range of indices in the edge array that we move past/to. */
+ begin = find_index_of_edge_near_position (edges, old_pos, increasing, xdir);
+ end = find_index_of_edge_near_position (edges, new_pos, !increasing, xdir);
+
+ /* begin and end can be outside the array index, if the window is partially
+ * off the screen
+ */
+ last_edge = edges->len - 1;
+ begin = CLAMP (begin, 0, last_edge);
+ end = CLAMP (end, 0, last_edge);
+
+ /* Loop over all these edges we're moving past/to. */
+ i = begin;
+ while ((increasing && i <= end) ||
+ (!increasing && i >= end))
+ {
+ gboolean edges_align;
+ MetaEdge *edge = g_array_index (edges, MetaEdge*, i);
+ int compare = xdir ? edge->rect.x : edge->rect.y;
+
+ /* Find out if this edge is relevant */
+ edges_align = meta_rectangle_edge_aligns (new_rect, edge) ||
+ meta_rectangle_edge_aligns (old_rect, edge);
+
+ /* Nothing to do unless the edges align */
+ if (!edges_align)
+ {
+ /* Go to the next edge in the range */
+ i += increment;
+ continue;
+ }
+
+ /* Rest is easier to read if we split on keyboard vs. mouse op */
+ if (keyboard_op)
+ {
+ if ((old_pos < compare && compare < new_pos) ||
+ (old_pos > compare && compare > new_pos))
+ return compare;
+ }
+ else /* mouse op */
+ {
+ int threshold;
+
+ /* TIMEOUT RESISTANCE: If the edge is relevant and we're moving
+ * towards it, then we may want to have some kind of time delay
+ * before the user can move past this edge.
+ */
+ if (movement_towards_edge (edge->side_type, increment))
+ {
+ /* First, determine the length of time for the resistance */
+ int timeout_length_ms = 0;
+ switch (edge->edge_type)
+ {
+ case META_EDGE_WINDOW:
+ timeout_length_ms = TIMEOUT_RESISTANCE_LENGTH_MS_WINDOW;
+ break;
+ case META_EDGE_XINERAMA:
+ timeout_length_ms = TIMEOUT_RESISTANCE_LENGTH_MS_XINERAMA;
+ break;
+ case META_EDGE_SCREEN:
+ timeout_length_ms = TIMEOUT_RESISTANCE_LENGTH_MS_SCREEN;
+ break;
+ }
+
+ if (!resistance_data->timeout_setup &&
+ timeout_length_ms != 0)
+ {
+ resistance_data->timeout_id =
+ g_timeout_add (timeout_length_ms,
+ edge_resistance_timeout,
+ resistance_data);
+ resistance_data->timeout_setup = TRUE;
+ resistance_data->timeout_edge_pos = compare;
+ resistance_data->timeout_over = FALSE;
+ resistance_data->timeout_func = timeout_func;
+ resistance_data->window = window;
+ }
+ if (!resistance_data->timeout_over &&
+ timeout_length_ms != 0)
+ return compare;
+ }
+
+ /* PIXEL DISTANCE MOUSE RESISTANCE: If the edge matters and the
+ * user hasn't moved at least threshold pixels past this edge,
+ * stop movement at this edge. (Note that this is different from
+ * keyboard resistance precisely because keyboard move ops are
+ * relative to previous positions, whereas mouse move ops are
+ * relative to differences in mouse position and mouse position
+ * is an absolute quantity rather than a relative quantity)
+ */
+
+ /* First, determine the threshold */
+ threshold = 0;
+ switch (edge->edge_type)
+ {
+ case META_EDGE_WINDOW:
+ if (movement_towards_edge (edge->side_type, increment))
+ threshold = PIXEL_DISTANCE_THRESHOLD_TOWARDS_WINDOW;
+ else
+ threshold = PIXEL_DISTANCE_THRESHOLD_AWAYFROM_WINDOW;
+ break;
+ case META_EDGE_XINERAMA:
+ if (movement_towards_edge (edge->side_type, increment))
+ threshold = PIXEL_DISTANCE_THRESHOLD_TOWARDS_XINERAMA;
+ else
+ threshold = PIXEL_DISTANCE_THRESHOLD_AWAYFROM_XINERAMA;
+ break;
+ case META_EDGE_SCREEN:
+ if (movement_towards_edge (edge->side_type, increment))
+ threshold = PIXEL_DISTANCE_THRESHOLD_TOWARDS_SCREEN;
+ else
+ threshold = PIXEL_DISTANCE_THRESHOLD_AWAYFROM_SCREEN;
+ break;
+ }
+
+ if (ABS (compare - new_pos) < threshold)
+ return compare;
+ }
+
+ /* Go to the next edge in the range */
+ i += increment;
+ }
+
+ return new_pos;
+}
+
+static int
+apply_edge_snapping (int old_pos,
+ int new_pos,
+ const MetaRectangle *new_rect,
+ GArray *edges,
+ gboolean xdir,
+ gboolean keyboard_op)
+{
+ int snap_to;
+
+ if (old_pos == new_pos)
+ return new_pos;
+
+ snap_to = find_nearest_position (edges,
+ new_pos,
+ old_pos,
+ new_rect,
+ xdir,
+ keyboard_op);
+
+ /* If mouse snap-moving, the user could easily accidentally move just a
+ * couple pixels in a direction they didn't mean to move; so ignore snap
+ * movement in those cases unless it's only a small number of pixels
+ * anyway.
+ */
+ if (!keyboard_op &&
+ ABS (snap_to - old_pos) >= 8 &&
+ ABS (new_pos - old_pos) < 8)
+ return old_pos;
+ else
+ /* Otherwise, return the snapping position found */
+ return snap_to;
+}
+
+/* This function takes the position (including any frame) of the window and
+ * a proposed new position (ignoring edge resistance/snapping), and then
+ * applies edge resistance to EACH edge (separately) updating new_outer.
+ * It returns true if new_outer is modified, false otherwise.
+ *
+ * display->grab_edge_resistance_data MUST already be setup or calling this
+ * function will cause a crash.
+ */
+static gboolean
+apply_edge_resistance_to_each_side (MetaDisplay *display,
+ MetaWindow *window,
+ const MetaRectangle *old_outer,
+ MetaRectangle *new_outer,
+ GSourceFunc timeout_func,
+ gboolean auto_snap,
+ gboolean keyboard_op,
+ gboolean is_resize)
+{
+ MetaEdgeResistanceData *edge_data;
+ MetaRectangle modified_rect;
+ gboolean modified;
+ int new_left, new_right, new_top, new_bottom;
+
+ g_assert (display->grab_edge_resistance_data != NULL);
+ edge_data = display->grab_edge_resistance_data;
+
+ if (auto_snap)
+ {
+ /* Do the auto snapping instead of normal edge resistance; in all
+ * cases, we allow snapping to opposite kinds of edges (e.g. left
+ * sides of windows to both left and right edges.
+ */
+
+ new_left = apply_edge_snapping (BOX_LEFT (*old_outer),
+ BOX_LEFT (*new_outer),
+ new_outer,
+ edge_data->left_edges,
+ TRUE,
+ keyboard_op);
+
+ new_right = apply_edge_snapping (BOX_RIGHT (*old_outer),
+ BOX_RIGHT (*new_outer),
+ new_outer,
+ edge_data->right_edges,
+ TRUE,
+ keyboard_op);
+
+ new_top = apply_edge_snapping (BOX_TOP (*old_outer),
+ BOX_TOP (*new_outer),
+ new_outer,
+ edge_data->top_edges,
+ FALSE,
+ keyboard_op);
+
+ new_bottom = apply_edge_snapping (BOX_BOTTOM (*old_outer),
+ BOX_BOTTOM (*new_outer),
+ new_outer,
+ edge_data->bottom_edges,
+ FALSE,
+ keyboard_op);
+ }
+ else
+ {
+ /* Disable edge resistance for resizes when windows have size
+ * increment hints; see #346782. For all other cases, apply
+ * them.
+ */
+ if (!is_resize || window->size_hints.width_inc == 1)
+ {
+ /* Now, apply the normal horizontal edge resistance */
+ new_left = apply_edge_resistance (window,
+ BOX_LEFT (*old_outer),
+ BOX_LEFT (*new_outer),
+ old_outer,
+ new_outer,
+ edge_data->left_edges,
+ &edge_data->left_data,
+ timeout_func,
+ TRUE,
+ keyboard_op);
+ new_right = apply_edge_resistance (window,
+ BOX_RIGHT (*old_outer),
+ BOX_RIGHT (*new_outer),
+ old_outer,
+ new_outer,
+ edge_data->right_edges,
+ &edge_data->right_data,
+ timeout_func,
+ TRUE,
+ keyboard_op);
+ }
+ else
+ {
+ new_left = new_outer->x;
+ new_right = new_outer->x + new_outer->width;
+ }
+ /* Same for vertical resizes... */
+ if (!is_resize || window->size_hints.height_inc == 1)
+ {
+ new_top = apply_edge_resistance (window,
+ BOX_TOP (*old_outer),
+ BOX_TOP (*new_outer),
+ old_outer,
+ new_outer,
+ edge_data->top_edges,
+ &edge_data->top_data,
+ timeout_func,
+ FALSE,
+ keyboard_op);
+ new_bottom = apply_edge_resistance (window,
+ BOX_BOTTOM (*old_outer),
+ BOX_BOTTOM (*new_outer),
+ old_outer,
+ new_outer,
+ edge_data->bottom_edges,
+ &edge_data->bottom_data,
+ timeout_func,
+ FALSE,
+ keyboard_op);
+ }
+ else
+ {
+ new_top = new_outer->y;
+ new_bottom = new_outer->y + new_outer->height;
+ }
+ }
+
+ /* Determine whether anything changed, and save the changes */
+ modified_rect = meta_rect (new_left,
+ new_top,
+ new_right - new_left,
+ new_bottom - new_top);
+ modified = !meta_rectangle_equal (new_outer, &modified_rect);
+ *new_outer = modified_rect;
+ return modified;
+}
+
+void
+meta_display_cleanup_edges (MetaDisplay *display)
+{
+ guint i,j;
+ MetaEdgeResistanceData *edge_data = display->grab_edge_resistance_data;
+ GHashTable *edges_to_be_freed;
+
+ g_assert (edge_data != NULL);
+
+ /* We first need to clean out any window edges */
+ edges_to_be_freed = g_hash_table_new_full (g_direct_hash, g_direct_equal,
+ g_free, NULL);
+ for (i = 0; i < 4; i++)
+ {
+ GArray *tmp = NULL;
+ MetaSide side;
+ switch (i)
+ {
+ case 0:
+ tmp = edge_data->left_edges;
+ side = META_SIDE_LEFT;
+ break;
+ case 1:
+ tmp = edge_data->right_edges;
+ side = META_SIDE_RIGHT;
+ break;
+ case 2:
+ tmp = edge_data->top_edges;
+ side = META_SIDE_TOP;
+ break;
+ case 3:
+ tmp = edge_data->bottom_edges;
+ side = META_SIDE_BOTTOM;
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ for (j = 0; j < tmp->len; j++)
+ {
+ MetaEdge *edge = g_array_index (tmp, MetaEdge*, j);
+ if (edge->edge_type == META_EDGE_WINDOW &&
+ edge->side_type == side)
+ {
+ /* The same edge will appear in two arrays, and we can't free
+ * it yet we still need to compare edge->side_type for the other
+ * array that it is in. So store it in a hash table for later
+ * freeing. Could also do this in a simple linked list.
+ */
+ g_hash_table_insert (edges_to_be_freed, edge, edge);
+ }
+ }
+ }
+
+ /* Now free all the window edges (the key destroy function is g_free) */
+ g_hash_table_destroy (edges_to_be_freed);
+
+ /* Now free the arrays and data */
+ g_array_free (edge_data->left_edges, TRUE);
+ g_array_free (edge_data->right_edges, TRUE);
+ g_array_free (edge_data->top_edges, TRUE);
+ g_array_free (edge_data->bottom_edges, TRUE);
+ edge_data->left_edges = NULL;
+ edge_data->right_edges = NULL;
+ edge_data->top_edges = NULL;
+ edge_data->bottom_edges = NULL;
+
+ /* Cleanup the timeouts */
+ if (edge_data->left_data.timeout_setup &&
+ edge_data->left_data.timeout_id != 0)
+ g_source_remove (edge_data->left_data.timeout_id);
+ if (edge_data->right_data.timeout_setup &&
+ edge_data->right_data.timeout_id != 0)
+ g_source_remove (edge_data->right_data.timeout_id);
+ if (edge_data->top_data.timeout_setup &&
+ edge_data->top_data.timeout_id != 0)
+ g_source_remove (edge_data->top_data.timeout_id);
+ if (edge_data->bottom_data.timeout_setup &&
+ edge_data->bottom_data.timeout_id != 0)
+ g_source_remove (edge_data->bottom_data.timeout_id);
+
+ g_free (display->grab_edge_resistance_data);
+ display->grab_edge_resistance_data = NULL;
+}
+
+static int
+stupid_sort_requiring_extra_pointer_dereference (gconstpointer a,
+ gconstpointer b)
+{
+ const MetaEdge * const *a_edge = a;
+ const MetaEdge * const *b_edge = b;
+ return meta_rectangle_edge_cmp_ignore_type (*a_edge, *b_edge);
+}
+
+static void
+cache_edges (MetaDisplay *display,
+ GList *window_edges,
+ GList *xinerama_edges,
+ GList *screen_edges)
+{
+ MetaEdgeResistanceData *edge_data;
+ GList *tmp;
+ int num_left, num_right, num_top, num_bottom;
+ int i;
+
+ /*
+ * 0th: Print debugging information to the log about the edges
+ */
+#ifdef WITH_VERBOSE_MODE
+ if (meta_is_verbose())
+ {
+ int max_edges = MAX (MAX( g_list_length (window_edges),
+ g_list_length (xinerama_edges)),
+ g_list_length (screen_edges));
+ char big_buffer[(EDGE_LENGTH+2)*max_edges];
+
+ meta_rectangle_edge_list_to_string (window_edges, ", ", big_buffer);
+ meta_topic (META_DEBUG_EDGE_RESISTANCE,
+ "Window edges for resistance : %s\n", big_buffer);
+
+ meta_rectangle_edge_list_to_string (xinerama_edges, ", ", big_buffer);
+ meta_topic (META_DEBUG_EDGE_RESISTANCE,
+ "Xinerama edges for resistance: %s\n", big_buffer);
+
+ meta_rectangle_edge_list_to_string (screen_edges, ", ", big_buffer);
+ meta_topic (META_DEBUG_EDGE_RESISTANCE,
+ "Screen edges for resistance : %s\n", big_buffer);
+ }
+#endif
+
+ /*
+ * 1st: Get the total number of each kind of edge
+ */
+ num_left = num_right = num_top = num_bottom = 0;
+ for (i = 0; i < 3; i++)
+ {
+ tmp = NULL;
+ switch (i)
+ {
+ case 0:
+ tmp = window_edges;
+ break;
+ case 1:
+ tmp = xinerama_edges;
+ break;
+ case 2:
+ tmp = screen_edges;
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ while (tmp)
+ {
+ MetaEdge *edge = tmp->data;
+ switch (edge->side_type)
+ {
+ case META_SIDE_LEFT:
+ num_left++;
+ break;
+ case META_SIDE_RIGHT:
+ num_right++;
+ break;
+ case META_SIDE_TOP:
+ num_top++;
+ break;
+ case META_SIDE_BOTTOM:
+ num_bottom++;
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+ tmp = tmp->next;
+ }
+ }
+
+ /*
+ * 2nd: Allocate the edges
+ */
+ g_assert (display->grab_edge_resistance_data == NULL);
+ display->grab_edge_resistance_data = g_new (MetaEdgeResistanceData, 1);
+ edge_data = display->grab_edge_resistance_data;
+ edge_data->left_edges = g_array_sized_new (FALSE,
+ FALSE,
+ sizeof(MetaEdge*),
+ num_left + num_right);
+ edge_data->right_edges = g_array_sized_new (FALSE,
+ FALSE,
+ sizeof(MetaEdge*),
+ num_left + num_right);
+ edge_data->top_edges = g_array_sized_new (FALSE,
+ FALSE,
+ sizeof(MetaEdge*),
+ num_top + num_bottom);
+ edge_data->bottom_edges = g_array_sized_new (FALSE,
+ FALSE,
+ sizeof(MetaEdge*),
+ num_top + num_bottom);
+
+ /*
+ * 3rd: Add the edges to the arrays
+ */
+ for (i = 0; i < 3; i++)
+ {
+ tmp = NULL;
+ switch (i)
+ {
+ case 0:
+ tmp = window_edges;
+ break;
+ case 1:
+ tmp = xinerama_edges;
+ break;
+ case 2:
+ tmp = screen_edges;
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ while (tmp)
+ {
+ MetaEdge *edge = tmp->data;
+ switch (edge->side_type)
+ {
+ case META_SIDE_LEFT:
+ case META_SIDE_RIGHT:
+ g_array_append_val (edge_data->left_edges, edge);
+ g_array_append_val (edge_data->right_edges, edge);
+ break;
+ case META_SIDE_TOP:
+ case META_SIDE_BOTTOM:
+ g_array_append_val (edge_data->top_edges, edge);
+ g_array_append_val (edge_data->bottom_edges, edge);
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+ tmp = tmp->next;
+ }
+ }
+
+ /*
+ * 4th: Sort the arrays (FIXME: This is kinda dumb since the arrays were
+ * individually sorted earlier and we could have done this faster and
+ * avoided this sort by sticking them into the array with some simple
+ * merging of the lists).
+ */
+ g_array_sort (display->grab_edge_resistance_data->left_edges,
+ stupid_sort_requiring_extra_pointer_dereference);
+ g_array_sort (display->grab_edge_resistance_data->right_edges,
+ stupid_sort_requiring_extra_pointer_dereference);
+ g_array_sort (display->grab_edge_resistance_data->top_edges,
+ stupid_sort_requiring_extra_pointer_dereference);
+ g_array_sort (display->grab_edge_resistance_data->bottom_edges,
+ stupid_sort_requiring_extra_pointer_dereference);
+}
+
+static void
+initialize_grab_edge_resistance_data (MetaDisplay *display)
+{
+ MetaEdgeResistanceData *edge_data = display->grab_edge_resistance_data;
+
+ edge_data->left_data.timeout_setup = FALSE;
+ edge_data->right_data.timeout_setup = FALSE;
+ edge_data->top_data.timeout_setup = FALSE;
+ edge_data->bottom_data.timeout_setup = FALSE;
+
+ edge_data->left_data.keyboard_buildup = 0;
+ edge_data->right_data.keyboard_buildup = 0;
+ edge_data->top_data.keyboard_buildup = 0;
+ edge_data->bottom_data.keyboard_buildup = 0;
+}
+
+void
+meta_display_compute_resistance_and_snapping_edges (MetaDisplay *display)
+{
+ GList *stacked_windows;
+ GList *cur_window_iter;
+ GList *edges;
+ /* Lists of window positions (rects) and their relative stacking positions */
+ int stack_position;
+ GSList *obscuring_windows, *window_stacking;
+ /* The portions of the above lists that still remain at the stacking position
+ * in the layer that we are working on
+ */
+ GSList *rem_windows, *rem_win_stacking;
+
+ /*
+ * 1st: Get the list of relevant windows, from bottom to top
+ */
+ stacked_windows =
+ meta_stack_list_windows (display->grab_screen->stack,
+ display->grab_screen->active_workspace);
+
+ /*
+ * 2nd: we need to separate that stacked list into a list of windows that
+ * can obscure other edges. To make sure we only have windows obscuring
+ * those below it instead of going both ways, we also need to keep a
+ * counter list. Messy, I know.
+ */
+ obscuring_windows = window_stacking = NULL;
+ cur_window_iter = stacked_windows;
+ stack_position = 0;
+ while (cur_window_iter != NULL)
+ {
+ MetaWindow *cur_window = cur_window_iter->data;
+ if (WINDOW_EDGES_RELEVANT (cur_window, display))
+ {
+ MetaRectangle *new_rect;
+ new_rect = g_new (MetaRectangle, 1);
+ meta_window_get_outer_rect (cur_window, new_rect);
+ obscuring_windows = g_slist_prepend (obscuring_windows, new_rect);
+ window_stacking =
+ g_slist_prepend (window_stacking, GINT_TO_POINTER (stack_position));
+ }
+
+ stack_position++;
+ cur_window_iter = cur_window_iter->next;
+ }
+ /* Put 'em in bottom to top order */
+ rem_windows = obscuring_windows = g_slist_reverse (obscuring_windows);
+ rem_win_stacking = window_stacking = g_slist_reverse (window_stacking);
+
+ /*
+ * 3rd: loop over the windows again, this time getting the edges from
+ * them and removing intersections with the relevant obscuring_windows &
+ * obscuring_docks.
+ */
+ edges = NULL;
+ stack_position = 0;
+ cur_window_iter = stacked_windows;
+ while (cur_window_iter != NULL)
+ {
+ MetaRectangle cur_rect;
+ MetaWindow *cur_window = cur_window_iter->data;
+ meta_window_get_outer_rect (cur_window, &cur_rect);
+
+ /* Check if we want to use this window's edges for edge
+ * resistance (note that dock edges are considered screen edges
+ * which are handled separately
+ */
+ if (WINDOW_EDGES_RELEVANT (cur_window, display) &&
+ cur_window->type != META_WINDOW_DOCK)
+ {
+ GList *new_edges;
+ MetaEdge *new_edge;
+ MetaRectangle reduced;
+
+ /* We don't care about snapping to any portion of the window that
+ * is offscreen (we also don't care about parts of edges covered
+ * by other windows or DOCKS, but that's handled below).
+ */
+ meta_rectangle_intersect (&cur_rect,
+ &display->grab_screen->rect,
+ &reduced);
+
+ new_edges = NULL;
+
+ /* Left side of this window is resistance for the right edge of
+ * the window being moved.
+ */
+ new_edge = g_new (MetaEdge, 1);
+ new_edge->rect = reduced;
+ new_edge->rect.width = 0;
+ new_edge->side_type = META_SIDE_RIGHT;
+ new_edge->edge_type = META_EDGE_WINDOW;
+ new_edges = g_list_prepend (new_edges, new_edge);
+
+ /* Right side of this window is resistance for the left edge of
+ * the window being moved.
+ */
+ new_edge = g_new (MetaEdge, 1);
+ new_edge->rect = reduced;
+ new_edge->rect.x += new_edge->rect.width;
+ new_edge->rect.width = 0;
+ new_edge->side_type = META_SIDE_LEFT;
+ new_edge->edge_type = META_EDGE_WINDOW;
+ new_edges = g_list_prepend (new_edges, new_edge);
+
+ /* Top side of this window is resistance for the bottom edge of
+ * the window being moved.
+ */
+ new_edge = g_new (MetaEdge, 1);
+ new_edge->rect = reduced;
+ new_edge->rect.height = 0;
+ new_edge->side_type = META_SIDE_BOTTOM;
+ new_edge->edge_type = META_EDGE_WINDOW;
+ new_edges = g_list_prepend (new_edges, new_edge);
+
+ /* Top side of this window is resistance for the bottom edge of
+ * the window being moved.
+ */
+ new_edge = g_new (MetaEdge, 1);
+ new_edge->rect = reduced;
+ new_edge->rect.y += new_edge->rect.height;
+ new_edge->rect.height = 0;
+ new_edge->side_type = META_SIDE_TOP;
+ new_edge->edge_type = META_EDGE_WINDOW;
+ new_edges = g_list_prepend (new_edges, new_edge);
+
+ /* Update the remaining windows to only those at a higher
+ * stacking position than this one.
+ */
+ while (rem_win_stacking &&
+ stack_position >= GPOINTER_TO_INT (rem_win_stacking->data))
+ {
+ rem_windows = rem_windows->next;
+ rem_win_stacking = rem_win_stacking->next;
+ }
+
+ /* Remove edge portions overlapped by rem_windows and rem_docks */
+ new_edges =
+ meta_rectangle_remove_intersections_with_boxes_from_edges (
+ new_edges,
+ rem_windows);
+
+ /* Save the new edges */
+ edges = g_list_concat (new_edges, edges);
+ }
+
+ stack_position++;
+ cur_window_iter = cur_window_iter->next;
+ }
+
+ /*
+ * 4th: Free the extra memory not needed and sort the list
+ */
+ g_list_free (stacked_windows);
+ /* Free the memory used by the obscuring windows/docks lists */
+ g_slist_free (window_stacking);
+ /* FIXME: Shouldn't there be a helper function to make this one line of code
+ * to free a list instead of four ugly ones?
+ */
+ g_slist_foreach (obscuring_windows,
+ (void (*)(gpointer,gpointer))&g_free, /* ew, for ugly */
+ NULL);
+ g_slist_free (obscuring_windows);
+
+ /* Sort the list. FIXME: Should I bother with this sorting? I just
+ * sort again later in cache_edges() anyway...
+ */
+ edges = g_list_sort (edges, meta_rectangle_edge_cmp);
+
+ /*
+ * 5th: Cache the combination of these edges with the onscreen and
+ * xinerama edges in an array for quick access. Free the edges since
+ * they've been cached elsewhere.
+ */
+ cache_edges (display,
+ edges,
+ display->grab_screen->active_workspace->xinerama_edges,
+ display->grab_screen->active_workspace->screen_edges);
+ g_list_free (edges);
+
+ /*
+ * 6th: Initialize the resistance timeouts and buildups
+ */
+ initialize_grab_edge_resistance_data (display);
+}
+
+/* Note that old_[xy] and new_[xy] are with respect to inner positions of
+ * the window.
+ */
+void
+meta_window_edge_resistance_for_move (MetaWindow *window,
+ int old_x,
+ int old_y,
+ int *new_x,
+ int *new_y,
+ GSourceFunc timeout_func,
+ gboolean snap,
+ gboolean is_keyboard_op)
+{
+ MetaRectangle old_outer, proposed_outer, new_outer;
+ gboolean is_resize;
+
+ if (window == window->display->grab_window &&
+ window->display->grab_wireframe_active)
+ {
+ meta_window_get_xor_rect (window,
+ &window->display->grab_wireframe_rect,
+ &old_outer);
+ }
+ else
+ {
+ meta_window_get_outer_rect (window, &old_outer);
+ }
+ proposed_outer = old_outer;
+ proposed_outer.x += (*new_x - old_x);
+ proposed_outer.y += (*new_y - old_y);
+ new_outer = proposed_outer;
+
+ window->display->grab_last_user_action_was_snap = snap;
+ is_resize = FALSE;
+ if (apply_edge_resistance_to_each_side (window->display,
+ window,
+ &old_outer,
+ &new_outer,
+ timeout_func,
+ snap,
+ is_keyboard_op,
+ is_resize))
+ {
+ /* apply_edge_resistance_to_each_side independently applies
+ * resistance to both the right and left edges of new_outer as both
+ * could meet areas of resistance. But we don't want a resize, so we
+ * just have both edges move according to the stricter of the
+ * resistances. Same thing goes for top & bottom edges.
+ */
+ MetaRectangle *reference;
+ int left_change, right_change, smaller_x_change;
+ int top_change, bottom_change, smaller_y_change;
+
+ if (snap && !is_keyboard_op)
+ reference = &proposed_outer;
+ else
+ reference = &old_outer;
+
+ left_change = BOX_LEFT (new_outer) - BOX_LEFT (*reference);
+ right_change = BOX_RIGHT (new_outer) - BOX_RIGHT (*reference);
+ if ( snap && is_keyboard_op && left_change == 0)
+ smaller_x_change = right_change;
+ else if (snap && is_keyboard_op && right_change == 0)
+ smaller_x_change = left_change;
+ else if (ABS (left_change) < ABS (right_change))
+ smaller_x_change = left_change;
+ else
+ smaller_x_change = right_change;
+
+ top_change = BOX_TOP (new_outer) - BOX_TOP (*reference);
+ bottom_change = BOX_BOTTOM (new_outer) - BOX_BOTTOM (*reference);
+ if ( snap && is_keyboard_op && top_change == 0)
+ smaller_y_change = bottom_change;
+ else if (snap && is_keyboard_op && bottom_change == 0)
+ smaller_y_change = top_change;
+ else if (ABS (top_change) < ABS (bottom_change))
+ smaller_y_change = top_change;
+ else
+ smaller_y_change = bottom_change;
+
+ *new_x = old_x + smaller_x_change +
+ (BOX_LEFT (*reference) - BOX_LEFT (old_outer));
+ *new_y = old_y + smaller_y_change +
+ (BOX_TOP (*reference) - BOX_TOP (old_outer));
+
+ meta_topic (META_DEBUG_EDGE_RESISTANCE,
+ "outer x & y move-to coordinate changed from %d,%d to %d,%d\n",
+ proposed_outer.x, proposed_outer.y,
+ old_outer.x + (*new_x - old_x),
+ old_outer.y + (*new_y - old_y));
+ }
+}
+
+/* Note that old_(width|height) and new_(width|height) are with respect to
+ * sizes of the inner window.
+ */
+void
+meta_window_edge_resistance_for_resize (MetaWindow *window,
+ int old_width,
+ int old_height,
+ int *new_width,
+ int *new_height,
+ int gravity,
+ GSourceFunc timeout_func,
+ gboolean snap,
+ gboolean is_keyboard_op)
+{
+ MetaRectangle old_outer, new_outer;
+ int proposed_outer_width, proposed_outer_height;
+ gboolean is_resize;
+
+ if (window == window->display->grab_window &&
+ window->display->grab_wireframe_active)
+ {
+ meta_window_get_xor_rect (window,
+ &window->display->grab_wireframe_rect,
+ &old_outer);
+ }
+ else
+ {
+ meta_window_get_outer_rect (window, &old_outer);
+ }
+ proposed_outer_width = old_outer.width + (*new_width - old_width);
+ proposed_outer_height = old_outer.height + (*new_height - old_height);
+ meta_rectangle_resize_with_gravity (&old_outer,
+ &new_outer,
+ gravity,
+ proposed_outer_width,
+ proposed_outer_height);
+
+ window->display->grab_last_user_action_was_snap = snap;
+ is_resize = TRUE;
+ if (apply_edge_resistance_to_each_side (window->display,
+ window,
+ &old_outer,
+ &new_outer,
+ timeout_func,
+ snap,
+ is_keyboard_op,
+ is_resize))
+ {
+ *new_width = old_width + (new_outer.width - old_outer.width);
+ *new_height = old_height + (new_outer.height - old_outer.height);
+
+ meta_topic (META_DEBUG_EDGE_RESISTANCE,
+ "outer width & height got changed from %d,%d to %d,%d\n",
+ proposed_outer_width, proposed_outer_height,
+ new_outer.width, new_outer.height);
+ }
+}
diff --git a/src/core/edge-resistance.h b/src/core/edge-resistance.h
new file mode 100644
index 00000000..14ba17a0
--- /dev/null
+++ b/src/core/edge-resistance.h
@@ -0,0 +1,48 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Edge resistance for move/resize operations */
+
+/*
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_EDGE_RESISTANCE_H
+#define META_EDGE_RESISTANCE_H
+
+#include "window-private.h"
+
+void meta_window_edge_resistance_for_move (MetaWindow *window,
+ int old_x,
+ int old_y,
+ int *new_x,
+ int *new_y,
+ GSourceFunc timeout_func,
+ gboolean snap,
+ gboolean is_keyboard_op);
+void meta_window_edge_resistance_for_resize (MetaWindow *window,
+ int old_width,
+ int old_height,
+ int *new_width,
+ int *new_height,
+ int gravity,
+ GSourceFunc timeout_func,
+ gboolean snap,
+ gboolean is_keyboard_op);
+
+#endif /* META_EDGE_RESISTANCE_H */
+
diff --git a/src/core/effects.c b/src/core/effects.c
new file mode 100644
index 00000000..1392b7c2
--- /dev/null
+++ b/src/core/effects.c
@@ -0,0 +1,735 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file effects.c "Special effects" other than compositor effects.
+ *
+ * Before we had a serious compositor, we supported swooping
+ * rectangles for minimising and so on. These are still supported
+ * today, even when the compositor is enabled. The file contains two
+ * parts:
+ *
+ * 1) A set of functions, each of which implements a special effect.
+ * (Only the minimize function does anything interesting; we should
+ * probably get rid of the rest.)
+ *
+ * 2) A set of functions for moving a highlighted wireframe box around
+ * the screen, optionally with height and width shown in the middle.
+ * This is used for moving and resizing when reduced_resources is set.
+ *
+ * There was formerly a system which allowed callers to drop in their
+ * own handlers for various things; it was never used (people who want
+ * their own handlers can just modify this file, after all) and it added
+ * a good deal of extra complexity, so it has been removed. If you want it,
+ * it can be found in svn r3769.
+ *
+ * Once upon a time there were three different ways of drawing the box
+ * animation: window wireframe, window opaque, and root. People who had
+ * the shape extension theoretically had the choice of all three, and
+ * people who didn't weren't given the choice of the wireframe option.
+ * In practice, though, the opaque animation was never perfect, so it came
+ * down to the wireframe option for those who had the extension and
+ * the root option for those who didn't; there was actually no way of choosing
+ * any other option anyway. Work on the opaque animation stopped in 2002;
+ * anyone who wants something like that these days will be using the
+ * compositor anyway.
+ *
+ * In svn r3769 this was made explicit.
+ */
+
+/*
+ * Copyright (C) 2001 Anders Carlsson, Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "effects.h"
+#include "display-private.h"
+#include "ui.h"
+#include "window-private.h"
+#include "prefs.h"
+
+#ifdef HAVE_SHAPE
+#include <X11/extensions/shape.h>
+#endif
+
+#define META_MINIMIZE_ANIMATION_LENGTH 0.25
+#define META_SHADE_ANIMATION_LENGTH 0.2
+
+#include <string.h>
+
+typedef struct MetaEffect MetaEffect;
+typedef struct MetaEffectPriv MetaEffectPriv;
+
+typedef struct
+{
+ MetaScreen *screen;
+
+ double millisecs_duration;
+ GTimeVal start_time;
+
+#ifdef HAVE_SHAPE
+ /** For wireframe window */
+ Window wireframe_xwindow;
+#else
+ /** Rectangle to erase */
+ MetaRectangle last_rect;
+
+ /** First time we've plotted anything in this animation? */
+ gboolean first_time;
+
+ /** For wireframe drawn on root window */
+ GC gc;
+#endif
+
+ MetaRectangle start_rect;
+ MetaRectangle end_rect;
+
+} BoxAnimationContext;
+
+/**
+ * Information we need to know during a maximise or minimise effect.
+ */
+typedef struct
+{
+ /** This is the normal-size window. */
+ MetaRectangle window_rect;
+ /** This is the size of the window when it's an icon. */
+ MetaRectangle icon_rect;
+} MetaMinimizeEffect, MetaUnminimizeEffect;
+
+struct MetaEffectPriv
+{
+ MetaEffectFinished finished;
+ gpointer finished_data;
+};
+
+struct MetaEffect
+{
+ /** The window the effect is applied to. */
+ MetaWindow *window;
+ /** Which effect is happening here. */
+ MetaEffectType type;
+ /** The effect handler can hang data here. */
+ gpointer info;
+
+ union
+ {
+ MetaMinimizeEffect minimize;
+ /* ... and theoretically anything else */
+ } u;
+
+ MetaEffectPriv *priv;
+};
+
+static void run_default_effect_handler (MetaEffect *effect);
+static void run_handler (MetaEffect *effect);
+static void effect_free (MetaEffect *effect);
+
+static MetaEffect *
+create_effect (MetaEffectType type,
+ MetaWindow *window,
+ MetaEffectFinished finished,
+ gpointer finished_data);
+
+static void
+draw_box_animation (MetaScreen *screen,
+ MetaRectangle *initial_rect,
+ MetaRectangle *destination_rect,
+ double seconds_duration);
+
+/**
+ * Creates an effect.
+ *
+ */
+static MetaEffect*
+create_effect (MetaEffectType type,
+ MetaWindow *window,
+ MetaEffectFinished finished,
+ gpointer finished_data)
+{
+ MetaEffect *effect = g_new (MetaEffect, 1);
+
+ effect->type = type;
+ effect->window = window;
+ effect->priv = g_new (MetaEffectPriv, 1);
+ effect->priv->finished = finished;
+ effect->priv->finished_data = finished_data;
+
+ return effect;
+}
+
+/**
+ * Destroys an effect. If the effect has a "finished" hook, it will be
+ * called before cleanup.
+ *
+ * \param effect The effect.
+ */
+static void
+effect_free (MetaEffect *effect)
+{
+ if (effect->priv->finished)
+ effect->priv->finished (effect->priv->finished_data);
+
+ g_free (effect->priv);
+ g_free (effect);
+}
+
+void
+meta_effect_run_focus (MetaWindow *window,
+ MetaEffectFinished finished,
+ gpointer data)
+{
+ MetaEffect *effect;
+
+ g_return_if_fail (window != NULL);
+
+ effect = create_effect (META_EFFECT_FOCUS, window, finished, data);
+
+ run_handler (effect);
+}
+
+void
+meta_effect_run_minimize (MetaWindow *window,
+ MetaRectangle *window_rect,
+ MetaRectangle *icon_rect,
+ MetaEffectFinished finished,
+ gpointer data)
+{
+ MetaEffect *effect;
+
+ g_return_if_fail (window != NULL);
+ g_return_if_fail (icon_rect != NULL);
+
+ effect = create_effect (META_EFFECT_MINIMIZE, window, finished, data);
+
+ effect->u.minimize.window_rect = *window_rect;
+ effect->u.minimize.icon_rect = *icon_rect;
+
+ run_handler (effect);
+}
+
+void
+meta_effect_run_unminimize (MetaWindow *window,
+ MetaRectangle *window_rect,
+ MetaRectangle *icon_rect,
+ MetaEffectFinished finished,
+ gpointer data)
+{
+ MetaEffect *effect;
+
+ g_return_if_fail (window != NULL);
+ g_return_if_fail (icon_rect != NULL);
+
+ effect = create_effect (META_EFFECT_UNMINIMIZE, window, finished, data);
+
+ effect->u.minimize.window_rect = *window_rect;
+ effect->u.minimize.icon_rect = *icon_rect;
+
+ run_handler (effect);
+}
+
+void
+meta_effect_run_close (MetaWindow *window,
+ MetaEffectFinished finished,
+ gpointer data)
+{
+ MetaEffect *effect;
+
+ g_return_if_fail (window != NULL);
+
+ effect = create_effect (META_EFFECT_CLOSE, window,
+ finished, data);
+
+ run_handler (effect);
+}
+
+
+/* old ugly minimization effect */
+
+#ifdef HAVE_SHAPE
+static void
+update_wireframe_window (MetaDisplay *display,
+ Window xwindow,
+ const MetaRectangle *rect)
+{
+ XMoveResizeWindow (display->xdisplay,
+ xwindow,
+ rect->x, rect->y,
+ rect->width, rect->height);
+
+#define OUTLINE_WIDTH 3
+
+ if (rect->width > OUTLINE_WIDTH * 2 &&
+ rect->height > OUTLINE_WIDTH * 2)
+ {
+ XRectangle xrect;
+ Region inner_xregion;
+ Region outer_xregion;
+
+ inner_xregion = XCreateRegion ();
+ outer_xregion = XCreateRegion ();
+
+ xrect.x = 0;
+ xrect.y = 0;
+ xrect.width = rect->width;
+ xrect.height = rect->height;
+
+ XUnionRectWithRegion (&xrect, outer_xregion, outer_xregion);
+
+ xrect.x += OUTLINE_WIDTH;
+ xrect.y += OUTLINE_WIDTH;
+ xrect.width -= OUTLINE_WIDTH * 2;
+ xrect.height -= OUTLINE_WIDTH * 2;
+
+ XUnionRectWithRegion (&xrect, inner_xregion, inner_xregion);
+
+ XSubtractRegion (outer_xregion, inner_xregion, outer_xregion);
+
+ XShapeCombineRegion (display->xdisplay, xwindow,
+ ShapeBounding, 0, 0, outer_xregion, ShapeSet);
+
+ XDestroyRegion (outer_xregion);
+ XDestroyRegion (inner_xregion);
+ }
+ else
+ {
+ /* Unset the shape */
+ XShapeCombineMask (display->xdisplay, xwindow,
+ ShapeBounding, 0, 0, None, ShapeSet);
+ }
+}
+#endif
+
+/**
+ * A hack to force the X server to synchronize with the
+ * graphics hardware.
+ */
+static void
+graphics_sync (BoxAnimationContext *context)
+{
+ XImage *image;
+
+ image = XGetImage (context->screen->display->xdisplay,
+ context->screen->xroot,
+ 0, 0, 1, 1,
+ AllPlanes, ZPixmap);
+
+ XDestroyImage (image);
+}
+
+static gboolean
+effects_draw_box_animation_timeout (BoxAnimationContext *context)
+{
+ double elapsed;
+ GTimeVal current_time;
+ MetaRectangle draw_rect;
+ double fraction;
+
+#ifndef HAVE_SHAPE
+ if (!context->first_time)
+ {
+ /* Restore the previously drawn background */
+ XDrawRectangle (context->screen->display->xdisplay,
+ context->screen->xroot,
+ context->gc,
+ context->last_rect.x, context->last_rect.y,
+ context->last_rect.width, context->last_rect.height);
+ }
+ else
+ context->first_time = FALSE;
+
+#endif /* !HAVE_SHAPE */
+
+ g_get_current_time (&current_time);
+
+ /* We use milliseconds for all times */
+ elapsed =
+ ((((double)current_time.tv_sec - context->start_time.tv_sec) * G_USEC_PER_SEC +
+ (current_time.tv_usec - context->start_time.tv_usec))) / 1000.0;
+
+ if (elapsed < 0)
+ {
+ /* Probably the system clock was set backwards? */
+ meta_warning ("System clock seemed to go backwards?\n");
+ elapsed = G_MAXDOUBLE; /* definitely done. */
+ }
+
+ if (elapsed > context->millisecs_duration)
+ {
+ /* All done */
+#ifdef HAVE_SHAPE
+ XDestroyWindow (context->screen->display->xdisplay,
+ context->wireframe_xwindow);
+#else
+ meta_display_ungrab (context->screen->display);
+ meta_ui_pop_delay_exposes (context->screen->ui);
+ XFreeGC (context->screen->display->xdisplay,
+ context->gc);
+#endif /* !HAVE_SHAPE */
+
+ graphics_sync (context);
+
+ g_free (context);
+ return FALSE;
+ }
+
+ g_assert (context->millisecs_duration > 0.0);
+ fraction = elapsed / context->millisecs_duration;
+
+ draw_rect = context->start_rect;
+
+ /* Now add a delta proportional to elapsed time. */
+ draw_rect.x += (context->end_rect.x - context->start_rect.x) * fraction;
+ draw_rect.y += (context->end_rect.y - context->start_rect.y) * fraction;
+ draw_rect.width += (context->end_rect.width - context->start_rect.width) * fraction;
+ draw_rect.height += (context->end_rect.height - context->start_rect.height) * fraction;
+
+ /* don't confuse X or gdk-pixbuf with bogus rectangles */
+ if (draw_rect.width < 1)
+ draw_rect.width = 1;
+ if (draw_rect.height < 1)
+ draw_rect.height = 1;
+
+#ifdef HAVE_SHAPE
+ update_wireframe_window (context->screen->display,
+ context->wireframe_xwindow,
+ &draw_rect);
+#else
+ context->last_rect = draw_rect;
+
+ /* Draw the rectangle */
+ XDrawRectangle (context->screen->display->xdisplay,
+ context->screen->xroot,
+ context->gc,
+ draw_rect.x, draw_rect.y,
+ draw_rect.width, draw_rect.height);
+
+#endif /* !HAVE_SHAPE */
+
+ /* kick changes onto the server */
+ graphics_sync (context);
+
+ return TRUE;
+}
+
+void
+draw_box_animation (MetaScreen *screen,
+ MetaRectangle *initial_rect,
+ MetaRectangle *destination_rect,
+ double seconds_duration)
+{
+ BoxAnimationContext *context;
+
+#ifdef HAVE_SHAPE
+ XSetWindowAttributes attrs;
+#else
+ XGCValues gc_values;
+#endif
+
+ g_return_if_fail (seconds_duration > 0.0);
+
+ if (g_getenv ("MARCO_DEBUG_EFFECTS"))
+ seconds_duration *= 10; /* slow things down */
+
+ /* Create the animation context */
+ context = g_new0 (BoxAnimationContext, 1);
+
+ context->screen = screen;
+
+ context->millisecs_duration = seconds_duration * 1000.0;
+
+ context->start_rect = *initial_rect;
+ context->end_rect = *destination_rect;
+
+#ifdef HAVE_SHAPE
+
+ attrs.override_redirect = True;
+ attrs.background_pixel = BlackPixel (screen->display->xdisplay,
+ screen->number);
+
+ context->wireframe_xwindow = XCreateWindow (screen->display->xdisplay,
+ screen->xroot,
+ initial_rect->x,
+ initial_rect->y,
+ initial_rect->width,
+ initial_rect->height,
+ 0,
+ CopyFromParent,
+ CopyFromParent,
+ (Visual *)CopyFromParent,
+ CWOverrideRedirect | CWBackPixel,
+ &attrs);
+
+ update_wireframe_window (screen->display,
+ context->wireframe_xwindow,
+ initial_rect);
+
+ XMapWindow (screen->display->xdisplay,
+ context->wireframe_xwindow);
+
+#else /* !HAVE_SHAPE */
+
+ context->first_time = TRUE;
+ gc_values.subwindow_mode = IncludeInferiors;
+ gc_values.function = GXinvert;
+
+ context->gc = XCreateGC (screen->display->xdisplay,
+ screen->xroot,
+ GCSubwindowMode | GCFunction,
+ &gc_values);
+
+ /* Grab the X server to avoid screen dirt */
+ meta_display_grab (context->screen->display);
+ meta_ui_push_delay_exposes (context->screen->ui);
+#endif
+
+ /* Do this only after we get the pixbuf from the server,
+ * so that the animation doesn't get truncated.
+ */
+ g_get_current_time (&context->start_time);
+
+ /* Add the timeout - a short one, could even use an idle,
+ * but this is maybe more CPU-friendly.
+ */
+ g_timeout_add (15,
+ (GSourceFunc)effects_draw_box_animation_timeout,
+ context);
+
+ /* kick changes onto the server */
+ XFlush (context->screen->display->xdisplay);
+}
+
+void
+meta_effects_begin_wireframe (MetaScreen *screen,
+ const MetaRectangle *rect,
+ int width,
+ int height)
+{
+ /* Grab the X server to avoid screen dirt */
+ meta_display_grab (screen->display);
+ meta_ui_push_delay_exposes (screen->ui);
+
+ meta_effects_update_wireframe (screen,
+ NULL, -1, -1,
+ rect, width, height);
+}
+
+static void
+draw_xor_rect (MetaScreen *screen,
+ const MetaRectangle *rect,
+ int width,
+ int height)
+{
+ /* The lines in the center can't overlap the rectangle or each
+ * other, or the XOR gets reversed. So we have to draw things
+ * a bit oddly.
+ */
+ XSegment segments[8];
+ MetaRectangle shrunk_rect;
+ int i;
+
+#define LINE_WIDTH META_WIREFRAME_XOR_LINE_WIDTH
+
+ /* We don't want the wireframe going outside the window area.
+ * It makes it harder for the user to position windows and it exposes other
+ * annoying bugs.
+ */
+ shrunk_rect = *rect;
+
+ shrunk_rect.x += LINE_WIDTH / 2 + LINE_WIDTH % 2;
+ shrunk_rect.y += LINE_WIDTH / 2 + LINE_WIDTH % 2;
+ shrunk_rect.width -= LINE_WIDTH + 2 * (LINE_WIDTH % 2);
+ shrunk_rect.height -= LINE_WIDTH + 2 * (LINE_WIDTH % 2);
+
+ XDrawRectangle (screen->display->xdisplay,
+ screen->xroot,
+ screen->root_xor_gc,
+ shrunk_rect.x, shrunk_rect.y,
+ shrunk_rect.width, shrunk_rect.height);
+
+ /* Don't put lines inside small rectangles where they won't fit */
+ if (shrunk_rect.width < (LINE_WIDTH * 4) ||
+ shrunk_rect.height < (LINE_WIDTH * 4))
+ return;
+
+ if ((width >= 0) && (height >= 0))
+ {
+ XGCValues gc_values = { 0 };
+
+ if (XGetGCValues (screen->display->xdisplay,
+ screen->root_xor_gc,
+ GCFont, &gc_values))
+ {
+ char *text;
+ int text_length;
+
+ XFontStruct *font_struct;
+ int text_width, text_height;
+ int box_x, box_y;
+ int box_width, box_height;
+
+ font_struct = XQueryFont (screen->display->xdisplay,
+ gc_values.font);
+
+ if (font_struct != NULL)
+ {
+ text = g_strdup_printf ("%d x %d", width, height);
+ text_length = strlen (text);
+
+ text_width = text_length * font_struct->max_bounds.width;
+ text_height = font_struct->max_bounds.descent +
+ font_struct->max_bounds.ascent;
+
+ box_width = text_width + 2 * LINE_WIDTH;
+ box_height = text_height + 2 * LINE_WIDTH;
+
+
+ box_x = shrunk_rect.x + (shrunk_rect.width - box_width) / 2;
+ box_y = shrunk_rect.y + (shrunk_rect.height - box_height) / 2;
+
+ if ((box_width < shrunk_rect.width) &&
+ (box_height < shrunk_rect.height))
+ {
+ XFillRectangle (screen->display->xdisplay,
+ screen->xroot,
+ screen->root_xor_gc,
+ box_x, box_y,
+ box_width, box_height);
+ XDrawString (screen->display->xdisplay,
+ screen->xroot,
+ screen->root_xor_gc,
+ box_x + LINE_WIDTH,
+ box_y + LINE_WIDTH + font_struct->max_bounds.ascent,
+ text, text_length);
+ }
+
+ g_free (text);
+
+ XFreeFontInfo (NULL, font_struct, 1);
+
+ if ((box_width + LINE_WIDTH) >= (shrunk_rect.width / 3))
+ return;
+
+ if ((box_height + LINE_WIDTH) >= (shrunk_rect.height / 3))
+ return;
+ }
+ }
+ }
+
+ /* Two vertical lines at 1/3 and 2/3 */
+ segments[0].x1 = shrunk_rect.x + shrunk_rect.width / 3;
+ segments[0].y1 = shrunk_rect.y + LINE_WIDTH / 2 + LINE_WIDTH % 2;
+ segments[0].x2 = segments[0].x1;
+ segments[0].y2 = shrunk_rect.y + shrunk_rect.height - LINE_WIDTH / 2;
+
+ segments[1] = segments[0];
+ segments[1].x1 = shrunk_rect.x + (shrunk_rect.width / 3) * 2;
+ segments[1].x2 = segments[1].x1;
+
+ /* Now make two horizontal lines at 1/3 and 2/3, but not
+ * overlapping the verticals
+ */
+
+ segments[2].x1 = shrunk_rect.x + LINE_WIDTH / 2 + LINE_WIDTH % 2;
+ segments[2].x2 = segments[0].x1 - LINE_WIDTH / 2;
+ segments[2].y1 = shrunk_rect.y + shrunk_rect.height / 3;
+ segments[2].y2 = segments[2].y1;
+
+ segments[3] = segments[2];
+ segments[3].x1 = segments[2].x2 + LINE_WIDTH;
+ segments[3].x2 = segments[1].x1 - LINE_WIDTH / 2;
+
+ segments[4] = segments[3];
+ segments[4].x1 = segments[3].x2 + LINE_WIDTH;
+ segments[4].x2 = shrunk_rect.x + shrunk_rect.width - LINE_WIDTH / 2;
+
+ /* Second horizontal line is just like the first, but
+ * shifted down
+ */
+ i = 5;
+ while (i < 8)
+ {
+ segments[i] = segments[i - 3];
+ segments[i].y1 = shrunk_rect.y + (shrunk_rect.height / 3) * 2;
+ segments[i].y2 = segments[i].y1;
+ ++i;
+ }
+
+ XDrawSegments (screen->display->xdisplay,
+ screen->xroot,
+ screen->root_xor_gc,
+ segments,
+ G_N_ELEMENTS (segments));
+}
+
+void
+meta_effects_update_wireframe (MetaScreen *screen,
+ const MetaRectangle *old_rect,
+ int old_width,
+ int old_height,
+ const MetaRectangle *new_rect,
+ int new_width,
+ int new_height)
+{
+ if (old_rect)
+ draw_xor_rect (screen, old_rect, old_width, old_height);
+
+ if (new_rect)
+ draw_xor_rect (screen, new_rect, new_width, new_height);
+
+ XFlush (screen->display->xdisplay);
+}
+
+void
+meta_effects_end_wireframe (MetaScreen *screen,
+ const MetaRectangle *old_rect,
+ int old_width,
+ int old_height)
+{
+ meta_effects_update_wireframe (screen,
+ old_rect, old_width, old_height,
+ NULL, -1, -1);
+
+ meta_display_ungrab (screen->display);
+ meta_ui_pop_delay_exposes (screen->ui);
+}
+
+static void
+run_default_effect_handler (MetaEffect *effect)
+{
+ switch (effect->type)
+ {
+ case META_EFFECT_MINIMIZE:
+ draw_box_animation (effect->window->screen,
+ &(effect->u.minimize.window_rect),
+ &(effect->u.minimize.icon_rect),
+ META_MINIMIZE_ANIMATION_LENGTH);
+ break;
+
+ default:
+ break;
+ }
+}
+
+static void
+run_handler (MetaEffect *effect)
+{
+ if (meta_prefs_get_mate_animations ())
+ run_default_effect_handler (effect);
+
+ effect_free (effect);
+}
diff --git a/src/core/effects.h b/src/core/effects.h
new file mode 100644
index 00000000..91d09e15
--- /dev/null
+++ b/src/core/effects.h
@@ -0,0 +1,170 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file effects.h "Special effects" other than compositor effects.
+ *
+ * Before we had a serious compositor, we supported swooping
+ * rectangles for minimising and so on. These are still supported
+ * today, even when the compositor is enabled. The file contains two
+ * parts:
+ *
+ * 1) A set of functions, each of which implements a special effect.
+ * (Only the minimize function does anything interesting; we should
+ * probably get rid of the rest.)
+ *
+ * 2) A set of functions for moving a highlighted wireframe box around
+ * the screen, optionally with height and width shown in the middle.
+ * This is used for moving and resizing when reduced_resources is set.
+ *
+ * There was formerly a system which allowed callers to drop in their
+ * own handlers for various things; it was never used (people who want
+ * their own handlers can just modify this file, after all) and it added
+ * a good deal of extra complexity, so it has been removed. If you want it,
+ * it can be found in svn r3769.
+ */
+
+/*
+ * Copyright (C) 2001 Anders Carlsson, Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_EFFECTS_H
+#define META_EFFECTS_H
+
+#include "util.h"
+#include "screen-private.h"
+
+typedef enum
+{
+ META_EFFECT_MINIMIZE,
+ META_EFFECT_UNMINIMIZE,
+ META_EFFECT_FOCUS,
+ META_EFFECT_CLOSE,
+ META_NUM_EFFECTS
+} MetaEffectType;
+
+/**
+ * A callback which will be called when the effect has finished.
+ */
+typedef void (* MetaEffectFinished) (gpointer data);
+
+/**
+ * Performs the minimize effect.
+ *
+ * \param window The window we're moving
+ * \param window_rect Its current state
+ * \param target Where it should end up
+ * \param finished Callback for when it's finished
+ * \param data Data for callback
+ */
+void meta_effect_run_minimize (MetaWindow *window,
+ MetaRectangle *window_rect,
+ MetaRectangle *target,
+ MetaEffectFinished finished,
+ gpointer data);
+
+/**
+ * Performs the unminimize effect. There is no such effect.
+ * FIXME: delete this.
+ *
+ * \param window The window we're moving
+ * \param icon_rect Its current state
+ * \param window_rect Where it should end up
+ * \param finished Callback for when it's finished
+ * \param data Data for callback
+ */
+void meta_effect_run_unminimize (MetaWindow *window,
+ MetaRectangle *window_rect,
+ MetaRectangle *icon_rect,
+ MetaEffectFinished finished,
+ gpointer data);
+
+/**
+ * Performs the close effect. There is no such effect.
+ * FIXME: delete this.
+ *
+ * \param window The window we're moving
+ * \param finished Callback for when it's finished
+ * \param data Data for callback
+ */
+void meta_effect_run_close (MetaWindow *window,
+ MetaEffectFinished finished,
+ gpointer data);
+
+/**
+ * Performs the focus effect. There is no such effect.
+ * FIXME: delete this.
+ *
+ * \param window The window we're moving
+ * \param finished Callback for when it's finished
+ * \param data Data for callback
+ */
+void meta_effect_run_focus (MetaWindow *window,
+ MetaEffectFinished finished,
+ gpointer data);
+
+/**
+ * Grabs the server and paints a wireframe rectangle on the screen.
+ * Since this involves starting a grab, please be considerate of other
+ * users and don't keep the grab for long. You may move the wireframe
+ * around using meta_effects_update_wireframe() and remove it, and undo
+ * the grab, using meta_effects_end_wireframe().
+ *
+ * \param screen The screen to draw the rectangle on.
+ * \param rect The size of the rectangle to draw.
+ * \param width The width to display in the middle (or 0 not to)
+ * \param height The width to display in the middle (or 0 not to)
+ */
+void meta_effects_begin_wireframe (MetaScreen *screen,
+ const MetaRectangle *rect,
+ int width,
+ int height);
+
+/**
+ * Moves a wireframe rectangle around after its creation by
+ * meta_effects_begin_wireframe(). (Perhaps we ought to remember the old
+ * positions and not require people to pass them in?)
+ *
+ * \param old_rect Where the rectangle is now
+ * \param old_width The width that was displayed on it (or 0 if there wasn't)
+ * \param old_height The height that was displayed on it (or 0 if there wasn't)
+ * \param new_rect Where the rectangle is going
+ * \param new_width The width that will be displayed on it (or 0 not to)
+ * \param new_height The height that will be displayed on it (or 0 not to)
+ */
+void meta_effects_update_wireframe (MetaScreen *screen,
+ const MetaRectangle *old_rect,
+ int old_width,
+ int old_height,
+ const MetaRectangle *new_rect,
+ int new_width,
+ int new_height);
+
+/**
+ * Removes a wireframe rectangle from the screen and ends the grab started by
+ * meta_effects_begin_wireframe().
+ *
+ * \param old_rect Where the rectangle is now
+ * \param old_width The width that was displayed on it (or 0 if there wasn't)
+ * \param old_height The height that was displayed on it (or 0 if there wasn't)
+ */
+void meta_effects_end_wireframe (MetaScreen *screen,
+ const MetaRectangle *old_rect,
+ int width,
+ int height);
+
+#endif /* META_EFFECTS_H */
diff --git a/src/core/errors.c b/src/core/errors.c
new file mode 100644
index 00000000..3b2a6334
--- /dev/null
+++ b/src/core/errors.c
@@ -0,0 +1,288 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco X error handling */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington, error trapping inspired by GDK
+ * code copyrighted by the GTK team.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "errors.h"
+#include "display-private.h"
+#include <errno.h>
+#include <stdlib.h>
+#include <gdk/gdk.h>
+
+static int x_error_handler (Display *display,
+ XErrorEvent *error);
+static int x_io_error_handler (Display *display);
+
+void
+meta_errors_init (void)
+{
+ XSetErrorHandler (x_error_handler);
+ XSetIOErrorHandler (x_io_error_handler);
+}
+
+typedef struct ForeignDisplay ForeignDisplay;
+
+struct ForeignDisplay
+{
+ Display *dpy;
+ ErrorHandler handler;
+ gpointer data;
+ ForeignDisplay *next;
+};
+
+static ForeignDisplay *foreign_displays;
+
+void
+meta_errors_register_foreign_display (Display *foreign_dpy,
+ ErrorHandler handler,
+ gpointer data)
+{
+ ForeignDisplay *info = g_new0 (ForeignDisplay, 1);
+ info->dpy = foreign_dpy;
+ info->handler = handler;
+ info->data = data;
+ info->next = foreign_displays;
+ foreign_displays = info;
+}
+
+static void
+meta_error_trap_push_internal (MetaDisplay *display,
+ gboolean need_sync)
+{
+ /* GDK resets the error handler on each push */
+ int (* old_error_handler) (Display *,
+ XErrorEvent *);
+
+ if (need_sync)
+ {
+ XSync (display->xdisplay, False);
+ }
+
+ gdk_error_trap_push ();
+
+ /* old_error_handler will just be equal to x_error_handler
+ * for nested traps
+ */
+ old_error_handler = XSetErrorHandler (x_error_handler);
+
+ /* Replace GDK handler, but save it so we can chain up */
+ if (display->error_trap_handler == NULL)
+ {
+ g_assert (display->error_traps == 0);
+ display->error_trap_handler = old_error_handler;
+ g_assert (display->error_trap_handler != x_error_handler);
+ }
+
+ display->error_traps += 1;
+
+ meta_topic (META_DEBUG_ERRORS, "%d traps remain\n", display->error_traps);
+}
+
+static int
+meta_error_trap_pop_internal (MetaDisplay *display,
+ gboolean need_sync)
+{
+ int result;
+
+ g_assert (display->error_traps > 0);
+
+ if (need_sync)
+ {
+ XSync (display->xdisplay, False);
+ }
+
+ result = gdk_error_trap_pop ();
+
+ display->error_traps -= 1;
+
+ if (display->error_traps == 0)
+ {
+ /* check that GDK put our handler back; this
+ * assumes that there are no pending GDK traps from GDK itself
+ */
+
+ int (* restored_error_handler) (Display *,
+ XErrorEvent *);
+
+ restored_error_handler = XSetErrorHandler (x_error_handler);
+
+ /* remove this */
+ display->error_trap_handler = NULL;
+ }
+
+ meta_topic (META_DEBUG_ERRORS, "%d traps\n", display->error_traps);
+
+ return result;
+}
+
+void
+meta_error_trap_push (MetaDisplay *display)
+{
+ meta_error_trap_push_internal (display, FALSE);
+}
+
+void
+meta_error_trap_pop (MetaDisplay *display,
+ gboolean last_request_was_roundtrip)
+{
+ gboolean need_sync;
+
+ /* we only have to sync when popping the outermost trap */
+ need_sync = (display->error_traps == 1 && !last_request_was_roundtrip);
+
+ if (need_sync)
+ meta_topic (META_DEBUG_SYNC, "Syncing on error_trap_pop, traps = %d, roundtrip = %d\n",
+ display->error_traps, last_request_was_roundtrip);
+
+ display->error_trap_synced_at_last_pop = need_sync || last_request_was_roundtrip;
+
+ meta_error_trap_pop_internal (display, need_sync);
+}
+
+void
+meta_error_trap_push_with_return (MetaDisplay *display)
+{
+ gboolean need_sync;
+
+ /* We don't sync on push_with_return if there are no traps
+ * currently, because we assume that any errors were either covered
+ * by a previous pop, or were fatal.
+ *
+ * More generally, we don't sync if we were synchronized last time
+ * we popped. This is known to be the case if there are no traps,
+ * but we also keep a flag so we know whether it's the case otherwise.
+ */
+
+ if (!display->error_trap_synced_at_last_pop)
+ need_sync = TRUE;
+ else
+ need_sync = FALSE;
+
+ if (need_sync)
+ meta_topic (META_DEBUG_SYNC, "Syncing on error_trap_push_with_return, traps = %d\n",
+ display->error_traps);
+
+ meta_error_trap_push_internal (display, FALSE);
+}
+
+int
+meta_error_trap_pop_with_return (MetaDisplay *display,
+ gboolean last_request_was_roundtrip)
+{
+ if (!last_request_was_roundtrip)
+ meta_topic (META_DEBUG_SYNC, "Syncing on error_trap_pop_with_return, traps = %d, roundtrip = %d\n",
+ display->error_traps, last_request_was_roundtrip);
+
+ display->error_trap_synced_at_last_pop = TRUE;
+
+ return meta_error_trap_pop_internal (display,
+ !last_request_was_roundtrip);
+}
+
+static int
+x_error_handler (Display *xdisplay,
+ XErrorEvent *error)
+{
+ int retval;
+ gchar buf[64];
+ MetaDisplay *display;
+ ForeignDisplay *foreign;
+
+ for (foreign = foreign_displays; foreign != NULL; foreign = foreign->next)
+ {
+ if (foreign->dpy == xdisplay)
+ {
+ foreign->handler (xdisplay, error, foreign->data);
+
+ return 0;
+ }
+ }
+
+ XGetErrorText (xdisplay, error->error_code, buf, 63);
+
+ display = meta_display_for_x_display (xdisplay);
+
+ /* Display can be NULL here because the compositing manager
+ * has its own Display, but Xlib only has one global error handler
+ */
+ if (display->error_traps > 0)
+ {
+ /* we're in an error trap, chain to the trap handler
+ * saved from GDK
+ */
+ meta_verbose ("X error: %s serial %ld error_code %d request_code %d minor_code %d)\n",
+ buf,
+ error->serial,
+ error->error_code,
+ error->request_code,
+ error->minor_code);
+
+ g_assert (display->error_trap_handler != NULL);
+ g_assert (display->error_trap_handler != x_error_handler);
+
+ retval = (* display->error_trap_handler) (xdisplay, error);
+ }
+ else
+ {
+ meta_bug ("Unexpected X error: %s serial %ld error_code %d request_code %d minor_code %d)\n",
+ buf,
+ error->serial,
+ error->error_code,
+ error->request_code,
+ error->minor_code);
+
+ retval = 1; /* compiler warning */
+ }
+
+ return retval;
+}
+
+static int
+x_io_error_handler (Display *xdisplay)
+{
+ MetaDisplay *display;
+
+ display = meta_display_for_x_display (xdisplay);
+
+ if (display == NULL)
+ meta_bug ("IO error received for unknown display?\n");
+
+ if (errno == EPIPE)
+ {
+ meta_warning (_("Lost connection to the display '%s';\n"
+ "most likely the X server was shut down or you killed/destroyed\n"
+ "the window manager.\n"),
+ display->name);
+ }
+ else
+ {
+ meta_warning (_("Fatal IO error %d (%s) on display '%s'.\n"),
+ errno, g_strerror (errno),
+ display->name);
+ }
+
+ /* Xlib would force an exit anyhow */
+ exit (1);
+
+ return 0;
+}
diff --git a/src/core/eventqueue.c b/src/core/eventqueue.c
new file mode 100644
index 00000000..2799cae9
--- /dev/null
+++ b/src/core/eventqueue.c
@@ -0,0 +1,184 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco X event source for main loop */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington (based on GDK code (C) Owen
+ * Taylor, Red Hat Inc.)
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA. */
+
+#include "eventqueue.h"
+#include <X11/Xlib.h>
+
+static gboolean eq_prepare (GSource *source,
+ gint *timeout);
+static gboolean eq_check (GSource *source);
+static gboolean eq_dispatch (GSource *source,
+ GSourceFunc callback,
+ gpointer user_data);
+static void eq_destroy (GSource *source);
+
+static GSourceFuncs eq_funcs = {
+ eq_prepare,
+ eq_check,
+ eq_dispatch,
+ eq_destroy
+};
+
+struct _MetaEventQueue
+{
+ GSource source;
+
+ Display *display;
+ GPollFD poll_fd;
+ int connection_fd;
+ GQueue *events;
+};
+
+MetaEventQueue*
+meta_event_queue_new (Display *display, MetaEventQueueFunc func, gpointer data)
+{
+ GSource *source;
+ MetaEventQueue *eq;
+
+ source = g_source_new (&eq_funcs, sizeof (MetaEventQueue));
+ eq = (MetaEventQueue*) source;
+
+ eq->connection_fd = ConnectionNumber (display);
+ eq->poll_fd.fd = eq->connection_fd;
+ eq->poll_fd.events = G_IO_IN;
+
+ eq->events = g_queue_new ();
+
+ eq->display = display;
+
+ g_source_set_priority (source, G_PRIORITY_DEFAULT);
+ g_source_add_poll (source, &eq->poll_fd);
+ g_source_set_can_recurse (source, TRUE);
+
+ g_source_set_callback (source, (GSourceFunc) func, data, NULL);
+
+ g_source_attach (source, NULL);
+ g_source_unref (source);
+
+ return eq;
+}
+
+void
+meta_event_queue_free (MetaEventQueue *eq)
+{
+ GSource *source;
+
+ source = (GSource*) eq;
+
+ g_source_destroy (source);
+}
+
+static gboolean
+eq_events_pending (MetaEventQueue *eq)
+{
+ return eq->events->length > 0 || XPending (eq->display);
+}
+
+static void
+eq_queue_events (MetaEventQueue *eq)
+{
+ XEvent xevent;
+
+ while (XPending (eq->display))
+ {
+ XEvent *copy;
+
+ XNextEvent (eq->display, &xevent);
+
+ copy = g_new (XEvent, 1);
+ *copy = xevent;
+
+ g_queue_push_tail (eq->events, copy);
+ }
+}
+
+static gboolean
+eq_prepare (GSource *source, gint *timeout)
+{
+ MetaEventQueue *eq;
+
+ eq = (MetaEventQueue*) source;
+
+ *timeout = -1;
+
+ return eq_events_pending (eq);
+}
+
+static gboolean
+eq_check (GSource *source)
+{
+ MetaEventQueue *eq;
+
+ eq = (MetaEventQueue*) source;
+
+ if (eq->poll_fd.revents & G_IO_IN)
+ return eq_events_pending (eq);
+ else
+ return FALSE;
+}
+
+static gboolean
+eq_dispatch (GSource *source, GSourceFunc callback, gpointer user_data)
+{
+ MetaEventQueue *eq;
+
+ eq = (MetaEventQueue*) source;
+
+ eq_queue_events (eq);
+
+ if (eq->events->length > 0)
+ {
+ XEvent *event;
+ MetaEventQueueFunc func;
+
+ event = g_queue_pop_head (eq->events);
+ func = (MetaEventQueueFunc) callback;
+
+ (* func) (event, user_data);
+
+ g_free (event);
+ }
+
+ return TRUE;
+}
+
+static void
+eq_destroy (GSource *source)
+{
+ MetaEventQueue *eq;
+
+ eq = (MetaEventQueue*) source;
+
+ while (eq->events->length > 0)
+ {
+ XEvent *event;
+
+ event = g_queue_pop_head (eq->events);
+
+ g_free (event);
+ }
+
+ g_queue_free (eq->events);
+
+ /* source itself is freed by glib */
+}
diff --git a/src/core/eventqueue.h b/src/core/eventqueue.h
new file mode 100644
index 00000000..8f3596af
--- /dev/null
+++ b/src/core/eventqueue.h
@@ -0,0 +1,40 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco X event source for main loop */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_EVENT_QUEUE_H
+#define META_EVENT_QUEUE_H
+
+#include <glib.h>
+#include <X11/Xlib.h>
+
+typedef struct _MetaEventQueue MetaEventQueue;
+
+typedef void (* MetaEventQueueFunc) (XEvent *event,
+ gpointer data);
+
+MetaEventQueue* meta_event_queue_new (Display *display,
+ MetaEventQueueFunc func,
+ gpointer data);
+void meta_event_queue_free (MetaEventQueue *eq);
+
+#endif
diff --git a/src/core/frame-private.h b/src/core/frame-private.h
new file mode 100644
index 00000000..bde352dc
--- /dev/null
+++ b/src/core/frame-private.h
@@ -0,0 +1,88 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco X window decorations */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_FRAME_PRIVATE_H
+#define META_FRAME_PRIVATE_H
+
+#include "frame.h"
+#include "window-private.h"
+
+typedef struct _MetaFrameGeometry MetaFrameGeometry;
+
+struct _MetaFrameGeometry
+{
+ /* border sizes (space between frame and child) */
+ int left_width;
+ int right_width;
+ int top_height;
+ int bottom_height;
+};
+
+struct _MetaFrame
+{
+ /* window we frame */
+ MetaWindow *window;
+
+ /* reparent window */
+ Window xwindow;
+
+ MetaCursor current_cursor;
+
+ /* This rect is trusted info from where we put the
+ * frame, not the result of ConfigureNotify
+ */
+ MetaRectangle rect;
+
+ /* position of client, size of frame */
+ int child_x;
+ int child_y;
+ int right_width;
+ int bottom_height;
+
+ guint mapped : 1;
+ guint need_reapply_frame_shape : 1;
+ guint is_flashing : 1; /* used by the visual bell flash */
+};
+
+void meta_window_ensure_frame (MetaWindow *window);
+void meta_window_destroy_frame (MetaWindow *window);
+void meta_frame_queue_draw (MetaFrame *frame);
+
+MetaFrameFlags meta_frame_get_flags (MetaFrame *frame);
+
+/* These should ONLY be called from meta_window_move_resize_internal */
+void meta_frame_calc_geometry (MetaFrame *frame,
+ MetaFrameGeometry *geomp);
+void meta_frame_sync_to_window (MetaFrame *frame,
+ int gravity,
+ gboolean need_move,
+ gboolean need_resize);
+
+void meta_frame_set_screen_cursor (MetaFrame *frame,
+ MetaCursor cursor);
+
+#endif
+
+
+
+
diff --git a/src/core/frame.c b/src/core/frame.c
new file mode 100644
index 00000000..2d0bbb51
--- /dev/null
+++ b/src/core/frame.c
@@ -0,0 +1,421 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco X window decorations */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2003, 2004 Red Hat, Inc.
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "frame-private.h"
+#include "bell.h"
+#include "errors.h"
+#include "keybindings.h"
+
+#ifdef HAVE_RENDER
+#include <X11/extensions/Xrender.h>
+#endif
+
+#define EVENT_MASK (SubstructureRedirectMask | \
+ StructureNotifyMask | SubstructureNotifyMask | \
+ ExposureMask | \
+ ButtonPressMask | ButtonReleaseMask | \
+ PointerMotionMask | PointerMotionHintMask | \
+ EnterWindowMask | LeaveWindowMask | \
+ FocusChangeMask | \
+ ColormapChangeMask)
+
+void
+meta_window_ensure_frame (MetaWindow *window)
+{
+ MetaFrame *frame;
+ XSetWindowAttributes attrs;
+ Visual *visual;
+
+ if (window->frame)
+ return;
+
+ /* See comment below for why this is required. */
+ meta_display_grab (window->display);
+
+ frame = g_new (MetaFrame, 1);
+
+ frame->window = window;
+ frame->xwindow = None;
+
+ frame->rect = window->rect;
+ frame->child_x = 0;
+ frame->child_y = 0;
+ frame->bottom_height = 0;
+ frame->right_width = 0;
+ frame->current_cursor = 0;
+
+ frame->mapped = FALSE;
+ frame->need_reapply_frame_shape = TRUE;
+ frame->is_flashing = FALSE;
+
+ meta_verbose ("Framing window %s: visual %s default, depth %d default depth %d\n",
+ window->desc,
+ XVisualIDFromVisual (window->xvisual) ==
+ XVisualIDFromVisual (window->screen->default_xvisual) ?
+ "is" : "is not",
+ window->depth, window->screen->default_depth);
+ meta_verbose ("Frame geometry %d,%d %dx%d\n",
+ frame->rect.x, frame->rect.y,
+ frame->rect.width, frame->rect.height);
+
+ /* Default depth/visual handles clients with weird visuals; they can
+ * always be children of the root depth/visual obviously, but
+ * e.g. DRI games can't be children of a parent that has the same
+ * visual as the client. NULL means default visual.
+ *
+ * We look for an ARGB visual if we can find one, otherwise use
+ * the default of NULL.
+ */
+
+ /* Special case for depth 32 windows (assumed to be ARGB),
+ * we use the window's visual. Otherwise we just use the system visual.
+ */
+ if (window->depth == 32)
+ visual = window->xvisual;
+ else
+ visual = NULL;
+
+ frame->xwindow = meta_ui_create_frame_window (window->screen->ui,
+ window->display->xdisplay,
+ visual,
+ frame->rect.x,
+ frame->rect.y,
+ frame->rect.width,
+ frame->rect.height,
+ frame->window->screen->number);
+
+ meta_verbose ("Frame for %s is 0x%lx\n", frame->window->desc, frame->xwindow);
+ attrs.event_mask = EVENT_MASK;
+ XChangeWindowAttributes (window->display->xdisplay,
+ frame->xwindow, CWEventMask, &attrs);
+
+ meta_display_register_x_window (window->display, &frame->xwindow, window);
+
+ /* Now that frame->xwindow is registered with window, we can set its
+ * background.
+ */
+ meta_ui_reset_frame_bg (window->screen->ui, frame->xwindow);
+
+ /* Reparent the client window; it may be destroyed,
+ * thus the error trap. We'll get a destroy notify later
+ * and free everything. Comment in FVWM source code says
+ * we need a server grab or the child can get its MapNotify
+ * before we've finished reparenting and getting the decoration
+ * window onscreen, so ensure_frame must be called with
+ * a grab.
+ */
+ meta_error_trap_push (window->display);
+ if (window->mapped)
+ {
+ window->mapped = FALSE; /* the reparent will unmap the window,
+ * we don't want to take that as a withdraw
+ */
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Incrementing unmaps_pending on %s for reparent\n", window->desc);
+ window->unmaps_pending += 1;
+ }
+ /* window was reparented to this position */
+ window->rect.x = 0;
+ window->rect.y = 0;
+
+ XReparentWindow (window->display->xdisplay,
+ window->xwindow,
+ frame->xwindow,
+ window->rect.x,
+ window->rect.y);
+ /* FIXME handle this error */
+ meta_error_trap_pop (window->display, FALSE);
+
+ /* stick frame to the window */
+ window->frame = frame;
+
+ if (window->title)
+ meta_ui_set_frame_title (window->screen->ui,
+ window->frame->xwindow,
+ window->title);
+
+ /* Move keybindings to frame instead of window */
+ meta_window_grab_keys (window);
+
+ /* Shape mask */
+ meta_ui_apply_frame_shape (frame->window->screen->ui,
+ frame->xwindow,
+ frame->rect.width,
+ frame->rect.height,
+ frame->window->has_shape);
+ frame->need_reapply_frame_shape = FALSE;
+
+ meta_display_ungrab (window->display);
+}
+
+void
+meta_window_destroy_frame (MetaWindow *window)
+{
+ MetaFrame *frame;
+
+ if (window->frame == NULL)
+ return;
+
+ meta_verbose ("Unframing window %s\n", window->desc);
+
+ frame = window->frame;
+
+ meta_bell_notify_frame_destroy (frame);
+
+ /* Unparent the client window; it may be destroyed,
+ * thus the error trap.
+ */
+ meta_error_trap_push (window->display);
+ if (window->mapped)
+ {
+ window->mapped = FALSE; /* Keep track of unmapping it, so we
+ * can identify a withdraw initiated
+ * by the client.
+ */
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Incrementing unmaps_pending on %s for reparent back to root\n", window->desc);
+ window->unmaps_pending += 1;
+ }
+ XReparentWindow (window->display->xdisplay,
+ window->xwindow,
+ window->screen->xroot,
+ /* Using anything other than meta_window_get_position()
+ * coordinates here means we'll need to ensure a configure
+ * notify event is sent; see bug 399552.
+ */
+ window->frame->rect.x,
+ window->frame->rect.y);
+ meta_error_trap_pop (window->display, FALSE);
+
+ meta_ui_destroy_frame_window (window->screen->ui, frame->xwindow);
+
+ meta_display_unregister_x_window (window->display,
+ frame->xwindow);
+
+ window->frame = NULL;
+
+ /* Move keybindings to window instead of frame */
+ meta_window_grab_keys (window);
+
+ g_free (frame);
+
+ /* Put our state back where it should be */
+ meta_window_queue (window, META_QUEUE_CALC_SHOWING);
+ meta_window_queue (window, META_QUEUE_MOVE_RESIZE);
+}
+
+
+MetaFrameFlags
+meta_frame_get_flags (MetaFrame *frame)
+{
+ MetaFrameFlags flags;
+
+ flags = 0;
+
+ if (frame->window->border_only)
+ {
+ ; /* FIXME this may disable the _function_ as well as decor
+ * in some cases, which is sort of wrong.
+ */
+ }
+ else
+ {
+ flags |= META_FRAME_ALLOWS_MENU;
+
+ if (frame->window->has_close_func)
+ flags |= META_FRAME_ALLOWS_DELETE;
+
+ if (frame->window->has_maximize_func)
+ flags |= META_FRAME_ALLOWS_MAXIMIZE;
+
+ if (frame->window->has_minimize_func)
+ flags |= META_FRAME_ALLOWS_MINIMIZE;
+
+ if (frame->window->has_shade_func)
+ flags |= META_FRAME_ALLOWS_SHADE;
+ }
+
+ if (META_WINDOW_ALLOWS_MOVE (frame->window))
+ flags |= META_FRAME_ALLOWS_MOVE;
+
+ if (META_WINDOW_ALLOWS_HORIZONTAL_RESIZE (frame->window))
+ flags |= META_FRAME_ALLOWS_HORIZONTAL_RESIZE;
+
+ if (META_WINDOW_ALLOWS_VERTICAL_RESIZE (frame->window))
+ flags |= META_FRAME_ALLOWS_VERTICAL_RESIZE;
+
+ if (frame->window->has_focus)
+ flags |= META_FRAME_HAS_FOCUS;
+
+ if (frame->window->shaded)
+ flags |= META_FRAME_SHADED;
+
+ if (frame->window->on_all_workspaces)
+ flags |= META_FRAME_STUCK;
+
+ /* FIXME: Should we have some kind of UI for windows that are just vertically
+ * maximized or just horizontally maximized?
+ */
+ if (META_WINDOW_MAXIMIZED (frame->window))
+ flags |= META_FRAME_MAXIMIZED;
+
+ if (frame->window->fullscreen)
+ flags |= META_FRAME_FULLSCREEN;
+
+ if (frame->is_flashing)
+ flags |= META_FRAME_IS_FLASHING;
+
+ if (frame->window->wm_state_above)
+ flags |= META_FRAME_ABOVE;
+
+ return flags;
+}
+
+void
+meta_frame_calc_geometry (MetaFrame *frame,
+ MetaFrameGeometry *geomp)
+{
+ MetaFrameGeometry geom;
+ MetaWindow *window;
+
+ window = frame->window;
+
+ meta_ui_get_frame_geometry (window->screen->ui,
+ frame->xwindow,
+ &geom.top_height,
+ &geom.bottom_height,
+ &geom.left_width,
+ &geom.right_width);
+
+ *geomp = geom;
+}
+
+static void
+update_shape (MetaFrame *frame)
+{
+ if (frame->need_reapply_frame_shape)
+ {
+ meta_ui_apply_frame_shape (frame->window->screen->ui,
+ frame->xwindow,
+ frame->rect.width,
+ frame->rect.height,
+ frame->window->has_shape);
+ frame->need_reapply_frame_shape = FALSE;
+ }
+}
+
+void
+meta_frame_sync_to_window (MetaFrame *frame,
+ int resize_gravity,
+ gboolean need_move,
+ gboolean need_resize)
+{
+ if (!(need_move || need_resize))
+ {
+ update_shape (frame);
+ return;
+ }
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Syncing frame geometry %d,%d %dx%d (SE: %d,%d)\n",
+ frame->rect.x, frame->rect.y,
+ frame->rect.width, frame->rect.height,
+ frame->rect.x + frame->rect.width,
+ frame->rect.y + frame->rect.height);
+
+ /* set bg to none to avoid flicker */
+ if (need_resize)
+ {
+ meta_ui_unflicker_frame_bg (frame->window->screen->ui,
+ frame->xwindow,
+ frame->rect.width,
+ frame->rect.height);
+
+ /* we need new shape if we're resized */
+ frame->need_reapply_frame_shape = TRUE;
+ }
+
+ /* Done before the window resize, because doing it before means
+ * part of the window being resized becomes unshaped, which may
+ * be sort of hard to see with bg = None. If we did it after
+ * window resize, part of the window being resized would become
+ * shaped, which might be more visible.
+ */
+ update_shape (frame);
+
+ meta_ui_move_resize_frame (frame->window->screen->ui,
+ frame->xwindow,
+ frame->rect.x,
+ frame->rect.y,
+ frame->rect.width,
+ frame->rect.height);
+
+ if (need_resize)
+ {
+ meta_ui_reset_frame_bg (frame->window->screen->ui,
+ frame->xwindow);
+
+ /* If we're interactively resizing the frame, repaint
+ * it immediately so we don't start to lag.
+ */
+ if (frame->window->display->grab_window ==
+ frame->window)
+ meta_ui_repaint_frame (frame->window->screen->ui,
+ frame->xwindow);
+ }
+}
+
+void
+meta_frame_queue_draw (MetaFrame *frame)
+{
+ meta_ui_queue_frame_draw (frame->window->screen->ui,
+ frame->xwindow);
+}
+
+void
+meta_frame_set_screen_cursor (MetaFrame *frame,
+ MetaCursor cursor)
+{
+ Cursor xcursor;
+ if (cursor == frame->current_cursor)
+ return;
+ frame->current_cursor = cursor;
+ if (cursor == META_CURSOR_DEFAULT)
+ XUndefineCursor (frame->window->display->xdisplay, frame->xwindow);
+ else
+ {
+ xcursor = meta_display_create_x_cursor (frame->window->display, cursor);
+ XDefineCursor (frame->window->display->xdisplay, frame->xwindow, xcursor);
+ XFlush (frame->window->display->xdisplay);
+ XFreeCursor (frame->window->display->xdisplay, xcursor);
+ }
+}
+
+Window
+meta_frame_get_xwindow (MetaFrame *frame)
+{
+ return frame->xwindow;
+}
diff --git a/src/core/group-private.h b/src/core/group-private.h
new file mode 100644
index 00000000..bf8dd5a3
--- /dev/null
+++ b/src/core/group-private.h
@@ -0,0 +1,43 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco window group private header */
+
+/*
+ * Copyright (C) 2002 Red Hat Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_GROUP_PRIVATE_H
+#define META_GROUP_PRIVATE_H
+
+#include "group.h"
+
+struct _MetaGroup
+{
+ int refcount;
+ MetaDisplay *display;
+ GSList *windows;
+ Window group_leader;
+ char *startup_id;
+ char *wm_client_machine;
+};
+
+#endif
+
+
+
+
diff --git a/src/core/group-props.c b/src/core/group-props.c
new file mode 100644
index 00000000..05e82900
--- /dev/null
+++ b/src/core/group-props.c
@@ -0,0 +1,234 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* MetaGroup property handling */
+
+/*
+ * Copyright (C) 2002 Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "group-props.h"
+#include "group-private.h"
+#include "xprops.h"
+#include <X11/Xatom.h>
+
+typedef void (* InitValueFunc) (MetaDisplay *display,
+ Atom property,
+ MetaPropValue *value);
+typedef void (* ReloadValueFunc) (MetaGroup *group,
+ MetaPropValue *value);
+
+struct _MetaGroupPropHooks
+{
+ Atom property;
+ InitValueFunc init_func;
+ ReloadValueFunc reload_func;
+};
+
+static void init_prop_value (MetaDisplay *display,
+ Atom property,
+ MetaPropValue *value);
+static void reload_prop_value (MetaGroup *group,
+ MetaPropValue *value);
+static MetaGroupPropHooks* find_hooks (MetaDisplay *display,
+ Atom property);
+
+
+
+void
+meta_group_reload_property (MetaGroup *group,
+ Atom property)
+{
+ meta_group_reload_properties (group, &property, 1);
+}
+
+void
+meta_group_reload_properties (MetaGroup *group,
+ const Atom *properties,
+ int n_properties)
+{
+ int i;
+ MetaPropValue *values;
+
+ g_return_if_fail (properties != NULL);
+ g_return_if_fail (n_properties > 0);
+
+ values = g_new0 (MetaPropValue, n_properties);
+
+ i = 0;
+ while (i < n_properties)
+ {
+ init_prop_value (group->display, properties[i], &values[i]);
+ ++i;
+ }
+
+ meta_prop_get_values (group->display, group->group_leader,
+ values, n_properties);
+
+ i = 0;
+ while (i < n_properties)
+ {
+ reload_prop_value (group, &values[i]);
+
+ ++i;
+ }
+
+ meta_prop_free_values (values, n_properties);
+
+ g_free (values);
+}
+
+/* Fill in the MetaPropValue used to get the value of "property" */
+static void
+init_prop_value (MetaDisplay *display,
+ Atom property,
+ MetaPropValue *value)
+{
+ MetaGroupPropHooks *hooks;
+
+ value->type = META_PROP_VALUE_INVALID;
+ value->atom = None;
+
+ hooks = find_hooks (display, property);
+ if (hooks && hooks->init_func != NULL)
+ (* hooks->init_func) (display, property, value);
+}
+
+static void
+reload_prop_value (MetaGroup *group,
+ MetaPropValue *value)
+{
+ MetaGroupPropHooks *hooks;
+
+ hooks = find_hooks (group->display, value->atom);
+ if (hooks && hooks->reload_func != NULL)
+ (* hooks->reload_func) (group, value);
+}
+
+static void
+init_wm_client_machine (MetaDisplay *display,
+ Atom property,
+ MetaPropValue *value)
+{
+ value->type = META_PROP_VALUE_STRING;
+ value->atom = display->atom_WM_CLIENT_MACHINE;
+}
+
+static void
+reload_wm_client_machine (MetaGroup *group,
+ MetaPropValue *value)
+{
+ g_free (group->wm_client_machine);
+ group->wm_client_machine = NULL;
+
+ if (value->type != META_PROP_VALUE_INVALID)
+ group->wm_client_machine = g_strdup (value->v.str);
+
+ meta_verbose ("Group has client machine \"%s\"\n",
+ group->wm_client_machine ? group->wm_client_machine : "unset");
+}
+
+static void
+init_net_startup_id (MetaDisplay *display,
+ Atom property,
+ MetaPropValue *value)
+{
+ value->type = META_PROP_VALUE_UTF8;
+ value->atom = display->atom__NET_STARTUP_ID;
+}
+
+static void
+reload_net_startup_id (MetaGroup *group,
+ MetaPropValue *value)
+{
+ g_free (group->startup_id);
+ group->startup_id = NULL;
+
+ if (value->type != META_PROP_VALUE_INVALID)
+ group->startup_id = g_strdup (value->v.str);
+
+ meta_verbose ("Group has startup id \"%s\"\n",
+ group->startup_id ? group->startup_id : "unset");
+}
+
+#define N_HOOKS 3
+
+void
+meta_display_init_group_prop_hooks (MetaDisplay *display)
+{
+ int i;
+ MetaGroupPropHooks *hooks;
+
+ g_assert (display->group_prop_hooks == NULL);
+
+ display->group_prop_hooks = g_new0 (MetaGroupPropHooks, N_HOOKS);
+ hooks = display->group_prop_hooks;
+
+ i = 0;
+
+ hooks[i].property = display->atom_WM_CLIENT_MACHINE;
+ hooks[i].init_func = init_wm_client_machine;
+ hooks[i].reload_func = reload_wm_client_machine;
+ ++i;
+
+ hooks[i].property = display->atom__NET_WM_PID;
+ hooks[i].init_func = NULL;
+ hooks[i].reload_func = NULL;
+ ++i;
+
+ hooks[i].property = display->atom__NET_STARTUP_ID;
+ hooks[i].init_func = init_net_startup_id;
+ hooks[i].reload_func = reload_net_startup_id;
+ ++i;
+
+ if (i != N_HOOKS)
+ {
+ g_error ("Initialized %d group hooks should have been %d\n", i, N_HOOKS);
+ }
+}
+
+void
+meta_display_free_group_prop_hooks (MetaDisplay *display)
+{
+ g_assert (display->group_prop_hooks != NULL);
+
+ g_free (display->group_prop_hooks);
+ display->group_prop_hooks = NULL;
+}
+
+static MetaGroupPropHooks*
+find_hooks (MetaDisplay *display,
+ Atom property)
+{
+ int i;
+
+ /* FIXME we could sort the array and do binary search or
+ * something
+ */
+
+ i = 0;
+ while (i < N_HOOKS)
+ {
+ if (display->group_prop_hooks[i].property == property)
+ return &display->group_prop_hooks[i];
+
+ ++i;
+ }
+
+ return NULL;
+}
diff --git a/src/core/group-props.h b/src/core/group-props.h
new file mode 100644
index 00000000..ffde0901
--- /dev/null
+++ b/src/core/group-props.h
@@ -0,0 +1,37 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* MetaGroup property handling */
+
+/*
+ * Copyright (C) 2002 Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_GROUP_PROPS_H
+#define META_GROUP_PROPS_H
+
+#include "group.h"
+
+void meta_group_reload_property (MetaGroup *group,
+ Atom property);
+void meta_group_reload_properties (MetaGroup *group,
+ const Atom *properties,
+ int n_properties);
+void meta_display_init_group_prop_hooks (MetaDisplay *display);
+void meta_display_free_group_prop_hooks (MetaDisplay *display);
+
+#endif /* META_GROUP_PROPS_H */
diff --git a/src/core/group.c b/src/core/group.c
new file mode 100644
index 00000000..35db53c7
--- /dev/null
+++ b/src/core/group.c
@@ -0,0 +1,274 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco window groups */
+
+/*
+ * Copyright (C) 2002 Red Hat Inc.
+ * Copyright (C) 2003 Rob Adams
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "util.h"
+#include "group-private.h"
+#include "group-props.h"
+#include "window.h"
+
+static MetaGroup*
+meta_group_new (MetaDisplay *display,
+ Window group_leader)
+{
+ MetaGroup *group;
+#define N_INITIAL_PROPS 3
+ Atom initial_props[N_INITIAL_PROPS];
+ int i;
+
+ g_assert (N_INITIAL_PROPS == (int) G_N_ELEMENTS (initial_props));
+
+ group = g_new0 (MetaGroup, 1);
+
+ group->display = display;
+ group->windows = NULL;
+ group->group_leader = group_leader;
+ group->refcount = 1; /* owned by caller, hash table has only weak ref */
+
+ if (display->groups_by_leader == NULL)
+ display->groups_by_leader = g_hash_table_new (meta_unsigned_long_hash,
+ meta_unsigned_long_equal);
+
+ g_assert (g_hash_table_lookup (display->groups_by_leader, &group_leader) == NULL);
+
+ g_hash_table_insert (display->groups_by_leader,
+ &group->group_leader,
+ group);
+
+ /* Fill these in the order we want them to be gotten */
+ i = 0;
+ initial_props[i++] = display->atom_WM_CLIENT_MACHINE;
+ initial_props[i++] = display->atom__NET_WM_PID;
+ initial_props[i++] = display->atom__NET_STARTUP_ID;
+ g_assert (N_INITIAL_PROPS == i);
+
+ meta_group_reload_properties (group, initial_props, N_INITIAL_PROPS);
+
+ meta_topic (META_DEBUG_GROUPS,
+ "Created new group with leader 0x%lx\n",
+ group->group_leader);
+
+ return group;
+}
+
+static void
+meta_group_unref (MetaGroup *group)
+{
+ g_return_if_fail (group->refcount > 0);
+
+ group->refcount -= 1;
+ if (group->refcount == 0)
+ {
+ meta_topic (META_DEBUG_GROUPS,
+ "Destroying group with leader 0x%lx\n",
+ group->group_leader);
+
+ g_assert (group->display->groups_by_leader != NULL);
+
+ g_hash_table_remove (group->display->groups_by_leader,
+ &group->group_leader);
+
+ /* mop up hash table, this is how it gets freed on display close */
+ if (g_hash_table_size (group->display->groups_by_leader) == 0)
+ {
+ g_hash_table_destroy (group->display->groups_by_leader);
+ group->display->groups_by_leader = NULL;
+ }
+
+ g_free (group->wm_client_machine);
+ g_free (group->startup_id);
+
+ g_free (group);
+ }
+}
+
+MetaGroup*
+meta_window_get_group (MetaWindow *window)
+{
+ if (window->unmanaging)
+ return NULL;
+
+ return window->group;
+}
+
+void
+meta_window_compute_group (MetaWindow* window)
+{
+ MetaGroup *group;
+ MetaWindow *ancestor;
+
+ /* use window->xwindow if no window->xgroup_leader */
+
+ group = NULL;
+
+ /* Determine the ancestor of the window; its group setting will override the
+ * normal grouping rules; see bug 328211.
+ */
+ ancestor = meta_window_find_root_ancestor (window);
+
+ if (window->display->groups_by_leader)
+ {
+ if (ancestor != window)
+ group = ancestor->group;
+ else if (window->xgroup_leader != None)
+ group = g_hash_table_lookup (window->display->groups_by_leader,
+ &window->xgroup_leader);
+ else
+ group = g_hash_table_lookup (window->display->groups_by_leader,
+ &window->xwindow);
+ }
+
+ if (group != NULL)
+ {
+ window->group = group;
+ group->refcount += 1;
+ }
+ else
+ {
+ if (ancestor != window && ancestor->xgroup_leader != None)
+ group = meta_group_new (window->display,
+ ancestor->xgroup_leader);
+ else if (window->xgroup_leader != None)
+ group = meta_group_new (window->display,
+ window->xgroup_leader);
+ else
+ group = meta_group_new (window->display,
+ window->xwindow);
+
+ window->group = group;
+ }
+
+ window->group->windows = g_slist_prepend (window->group->windows, window);
+
+ meta_topic (META_DEBUG_GROUPS,
+ "Adding %s to group with leader 0x%lx\n",
+ window->desc, group->group_leader);
+
+}
+
+static void
+remove_window_from_group (MetaWindow *window)
+{
+ if (window->group != NULL)
+ {
+ meta_topic (META_DEBUG_GROUPS,
+ "Removing %s from group with leader 0x%lx\n",
+ window->desc, window->group->group_leader);
+
+ window->group->windows =
+ g_slist_remove (window->group->windows,
+ window);
+ meta_group_unref (window->group);
+ window->group = NULL;
+ }
+}
+
+void
+meta_window_group_leader_changed (MetaWindow *window)
+{
+ remove_window_from_group (window);
+ meta_window_compute_group (window);
+}
+
+void
+meta_window_shutdown_group (MetaWindow *window)
+{
+ remove_window_from_group (window);
+}
+
+MetaGroup*
+meta_display_lookup_group (MetaDisplay *display,
+ Window group_leader)
+{
+ MetaGroup *group;
+
+ group = NULL;
+
+ if (display->groups_by_leader)
+ group = g_hash_table_lookup (display->groups_by_leader,
+ &group_leader);
+
+ return group;
+}
+
+GSList*
+meta_group_list_windows (MetaGroup *group)
+{
+ return g_slist_copy (group->windows);
+}
+
+void
+meta_group_update_layers (MetaGroup *group)
+{
+ GSList *tmp;
+ GSList *frozen_stacks;
+
+ if (group->windows == NULL)
+ return;
+
+ frozen_stacks = NULL;
+ tmp = group->windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *window = tmp->data;
+
+ /* we end up freezing the same stack a lot of times,
+ * but doesn't hurt anything. have to handle
+ * groups that span 2 screens.
+ */
+ meta_stack_freeze (window->screen->stack);
+ frozen_stacks = g_slist_prepend (frozen_stacks, window->screen->stack);
+
+ meta_stack_update_layer (window->screen->stack,
+ window);
+
+ tmp = tmp->next;
+ }
+
+ tmp = frozen_stacks;
+ while (tmp != NULL)
+ {
+ meta_stack_thaw (tmp->data);
+ tmp = tmp->next;
+ }
+
+ g_slist_free (frozen_stacks);
+}
+
+const char*
+meta_group_get_startup_id (MetaGroup *group)
+{
+ return group->startup_id;
+}
+
+gboolean
+meta_group_property_notify (MetaGroup *group,
+ XEvent *event)
+{
+ meta_group_reload_property (group,
+ event->xproperty.atom);
+
+ return TRUE;
+
+}
diff --git a/src/core/group.h b/src/core/group.h
new file mode 100644
index 00000000..f71c2c47
--- /dev/null
+++ b/src/core/group.h
@@ -0,0 +1,53 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco window groups */
+
+/*
+ * Copyright (C) 2002 Red Hat Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_GROUP_H
+#define META_GROUP_H
+
+#include "window-private.h"
+
+/* note, can return NULL */
+MetaGroup* meta_window_get_group (MetaWindow *window);
+void meta_window_compute_group (MetaWindow* window);
+void meta_window_shutdown_group (MetaWindow *window);
+
+void meta_window_group_leader_changed (MetaWindow *window);
+
+/* note, can return NULL */
+MetaGroup* meta_display_lookup_group (MetaDisplay *display,
+ Window group_leader);
+
+GSList* meta_group_list_windows (MetaGroup *group);
+
+void meta_group_update_layers (MetaGroup *group);
+
+const char* meta_group_get_startup_id (MetaGroup *group);
+
+gboolean meta_group_property_notify (MetaGroup *group,
+ XEvent *event);
+
+#endif
+
+
+
+
diff --git a/src/core/iconcache.c b/src/core/iconcache.c
new file mode 100644
index 00000000..af9411ba
--- /dev/null
+++ b/src/core/iconcache.c
@@ -0,0 +1,849 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco window icons */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "iconcache.h"
+#include "ui.h"
+#include "errors.h"
+
+#include <X11/Xatom.h>
+
+/* The icon-reading code is also in libwnck, please sync bugfixes */
+
+static void
+get_fallback_icons (MetaScreen *screen,
+ GdkPixbuf **iconp,
+ int ideal_width,
+ int ideal_height,
+ GdkPixbuf **mini_iconp,
+ int ideal_mini_width,
+ int ideal_mini_height)
+{
+ /* we don't scale, should be fixed if we ever un-hardcode the icon
+ * size
+ */
+ *iconp = meta_ui_get_default_window_icon (screen->ui);
+ *mini_iconp = meta_ui_get_default_mini_icon (screen->ui);
+}
+
+static gboolean
+find_largest_sizes (gulong *data,
+ gulong nitems,
+ int *width,
+ int *height)
+{
+ *width = 0;
+ *height = 0;
+
+ while (nitems > 0)
+ {
+ int w, h;
+
+ if (nitems < 3)
+ return FALSE; /* no space for w, h */
+
+ w = data[0];
+ h = data[1];
+
+ if (nitems < ((gulong)(w * h) + 2))
+ return FALSE; /* not enough data */
+
+ *width = MAX (w, *width);
+ *height = MAX (h, *height);
+
+ data += (w * h) + 2;
+ nitems -= (w * h) + 2;
+ }
+
+ return TRUE;
+}
+
+static gboolean
+find_best_size (gulong *data,
+ gulong nitems,
+ int ideal_width,
+ int ideal_height,
+ int *width,
+ int *height,
+ gulong **start)
+{
+ int best_w;
+ int best_h;
+ gulong *best_start;
+ int max_width, max_height;
+
+ *width = 0;
+ *height = 0;
+ *start = NULL;
+
+ if (!find_largest_sizes (data, nitems, &max_width, &max_height))
+ return FALSE;
+
+ if (ideal_width < 0)
+ ideal_width = max_width;
+ if (ideal_height < 0)
+ ideal_height = max_height;
+
+ best_w = 0;
+ best_h = 0;
+ best_start = NULL;
+
+ while (nitems > 0)
+ {
+ int w, h;
+ gboolean replace;
+
+ replace = FALSE;
+
+ if (nitems < 3)
+ return FALSE; /* no space for w, h */
+
+ w = data[0];
+ h = data[1];
+
+ if (nitems < ((gulong)(w * h) + 2))
+ break; /* not enough data */
+
+ if (best_start == NULL)
+ {
+ replace = TRUE;
+ }
+ else
+ {
+ /* work with averages */
+ const int ideal_size = (ideal_width + ideal_height) / 2;
+ int best_size = (best_w + best_h) / 2;
+ int this_size = (w + h) / 2;
+
+ /* larger than desired is always better than smaller */
+ if (best_size < ideal_size &&
+ this_size >= ideal_size)
+ replace = TRUE;
+ /* if we have too small, pick anything bigger */
+ else if (best_size < ideal_size &&
+ this_size > best_size)
+ replace = TRUE;
+ /* if we have too large, pick anything smaller
+ * but still >= the ideal
+ */
+ else if (best_size > ideal_size &&
+ this_size >= ideal_size &&
+ this_size < best_size)
+ replace = TRUE;
+ }
+
+ if (replace)
+ {
+ best_start = data + 2;
+ best_w = w;
+ best_h = h;
+ }
+
+ data += (w * h) + 2;
+ nitems -= (w * h) + 2;
+ }
+
+ if (best_start)
+ {
+ *start = best_start;
+ *width = best_w;
+ *height = best_h;
+ return TRUE;
+ }
+ else
+ return FALSE;
+}
+
+static void
+argbdata_to_pixdata (gulong *argb_data, int len, guchar **pixdata)
+{
+ guchar *p;
+ int i;
+
+ *pixdata = g_new (guchar, len * 4);
+ p = *pixdata;
+
+ /* One could speed this up a lot. */
+ i = 0;
+ while (i < len)
+ {
+ guint argb;
+ guint rgba;
+
+ argb = argb_data[i];
+ rgba = (argb << 8) | (argb >> 24);
+
+ *p = rgba >> 24;
+ ++p;
+ *p = (rgba >> 16) & 0xff;
+ ++p;
+ *p = (rgba >> 8) & 0xff;
+ ++p;
+ *p = rgba & 0xff;
+ ++p;
+
+ ++i;
+ }
+}
+
+static gboolean
+read_rgb_icon (MetaDisplay *display,
+ Window xwindow,
+ int ideal_width,
+ int ideal_height,
+ int ideal_mini_width,
+ int ideal_mini_height,
+ int *width,
+ int *height,
+ guchar **pixdata,
+ int *mini_width,
+ int *mini_height,
+ guchar **mini_pixdata)
+{
+ Atom type;
+ int format;
+ gulong nitems;
+ gulong bytes_after;
+ int result, err;
+ guchar *data;
+ gulong *best;
+ int w, h;
+ gulong *best_mini;
+ int mini_w, mini_h;
+ gulong *data_as_long;
+
+ meta_error_trap_push_with_return (display);
+ type = None;
+ data = NULL;
+ result = XGetWindowProperty (display->xdisplay,
+ xwindow,
+ display->atom__NET_WM_ICON,
+ 0, G_MAXLONG,
+ False, XA_CARDINAL, &type, &format, &nitems,
+ &bytes_after, &data);
+ err = meta_error_trap_pop_with_return (display, TRUE);
+
+ if (err != Success ||
+ result != Success)
+ return FALSE;
+
+ if (type != XA_CARDINAL)
+ {
+ XFree (data);
+ return FALSE;
+ }
+
+ data_as_long = (gulong *)data;
+
+ if (!find_best_size (data_as_long, nitems,
+ ideal_width, ideal_height,
+ &w, &h, &best))
+ {
+ XFree (data);
+ return FALSE;
+ }
+
+ if (!find_best_size (data_as_long, nitems,
+ ideal_mini_width, ideal_mini_height,
+ &mini_w, &mini_h, &best_mini))
+ {
+ XFree (data);
+ return FALSE;
+ }
+
+ *width = w;
+ *height = h;
+
+ *mini_width = mini_w;
+ *mini_height = mini_h;
+
+ argbdata_to_pixdata (best, w * h, pixdata);
+ argbdata_to_pixdata (best_mini, mini_w * mini_h, mini_pixdata);
+
+ XFree (data);
+
+ return TRUE;
+}
+
+static void
+free_pixels (guchar *pixels, gpointer data)
+{
+ g_free (pixels);
+}
+
+static void
+get_pixmap_geometry (MetaDisplay *display,
+ Pixmap pixmap,
+ int *w,
+ int *h,
+ int *d)
+{
+ Window root_ignored;
+ int x_ignored, y_ignored;
+ guint width, height;
+ guint border_width_ignored;
+ guint depth;
+
+ if (w)
+ *w = 1;
+ if (h)
+ *h = 1;
+ if (d)
+ *d = 1;
+
+ XGetGeometry (display->xdisplay,
+ pixmap, &root_ignored, &x_ignored, &y_ignored,
+ &width, &height, &border_width_ignored, &depth);
+
+ if (w)
+ *w = width;
+ if (h)
+ *h = height;
+ if (d)
+ *d = depth;
+}
+
+static GdkPixbuf*
+apply_mask (GdkPixbuf *pixbuf,
+ GdkPixbuf *mask)
+{
+ int w, h;
+ int i, j;
+ GdkPixbuf *with_alpha;
+ guchar *src;
+ guchar *dest;
+ int src_stride;
+ int dest_stride;
+
+ w = MIN (gdk_pixbuf_get_width (mask), gdk_pixbuf_get_width (pixbuf));
+ h = MIN (gdk_pixbuf_get_height (mask), gdk_pixbuf_get_height (pixbuf));
+
+ with_alpha = gdk_pixbuf_add_alpha (pixbuf, FALSE, 0, 0, 0);
+
+ dest = gdk_pixbuf_get_pixels (with_alpha);
+ src = gdk_pixbuf_get_pixels (mask);
+
+ dest_stride = gdk_pixbuf_get_rowstride (with_alpha);
+ src_stride = gdk_pixbuf_get_rowstride (mask);
+
+ i = 0;
+ while (i < h)
+ {
+ j = 0;
+ while (j < w)
+ {
+ guchar *s = src + i * src_stride + j * 3;
+ guchar *d = dest + i * dest_stride + j * 4;
+
+ /* s[0] == s[1] == s[2], they are 255 if the bit was set, 0
+ * otherwise
+ */
+ if (s[0] == 0)
+ d[3] = 0; /* transparent */
+ else
+ d[3] = 255; /* opaque */
+
+ ++j;
+ }
+
+ ++i;
+ }
+
+ return with_alpha;
+}
+
+static gboolean
+try_pixmap_and_mask (MetaDisplay *display,
+ Pixmap src_pixmap,
+ Pixmap src_mask,
+ GdkPixbuf **iconp,
+ int ideal_width,
+ int ideal_height,
+ GdkPixbuf **mini_iconp,
+ int ideal_mini_width,
+ int ideal_mini_height)
+{
+ GdkPixbuf *unscaled = NULL;
+ GdkPixbuf *mask = NULL;
+ int w, h;
+
+ if (src_pixmap == None)
+ return FALSE;
+
+ meta_error_trap_push (display);
+
+ get_pixmap_geometry (display, src_pixmap, &w, &h, NULL);
+
+ unscaled = meta_gdk_pixbuf_get_from_pixmap (NULL,
+ src_pixmap,
+ 0, 0, 0, 0,
+ w, h);
+
+ if (unscaled && src_mask != None)
+ {
+ get_pixmap_geometry (display, src_mask, &w, &h, NULL);
+ mask = meta_gdk_pixbuf_get_from_pixmap (NULL,
+ src_mask,
+ 0, 0, 0, 0,
+ w, h);
+ }
+
+ meta_error_trap_pop (display, FALSE);
+
+ if (mask)
+ {
+ GdkPixbuf *masked;
+
+ masked = apply_mask (unscaled, mask);
+ g_object_unref (G_OBJECT (unscaled));
+ unscaled = masked;
+
+ g_object_unref (G_OBJECT (mask));
+ mask = NULL;
+ }
+
+ if (unscaled)
+ {
+ *iconp =
+ gdk_pixbuf_scale_simple (unscaled,
+ ideal_width > 0 ? ideal_width :
+ gdk_pixbuf_get_width (unscaled),
+ ideal_height > 0 ? ideal_height :
+ gdk_pixbuf_get_height (unscaled),
+ GDK_INTERP_BILINEAR);
+ *mini_iconp =
+ gdk_pixbuf_scale_simple (unscaled,
+ ideal_mini_width > 0 ? ideal_mini_width :
+ gdk_pixbuf_get_width (unscaled),
+ ideal_mini_height > 0 ? ideal_mini_height :
+ gdk_pixbuf_get_height (unscaled),
+ GDK_INTERP_BILINEAR);
+
+ g_object_unref (G_OBJECT (unscaled));
+
+ if (*iconp && *mini_iconp)
+ return TRUE;
+ else
+ {
+ if (*iconp)
+ g_object_unref (G_OBJECT (*iconp));
+ if (*mini_iconp)
+ g_object_unref (G_OBJECT (*mini_iconp));
+ return FALSE;
+ }
+ }
+ else
+ return FALSE;
+}
+
+static void
+get_kwm_win_icon (MetaDisplay *display,
+ Window xwindow,
+ Pixmap *pixmap,
+ Pixmap *mask)
+{
+ Atom type;
+ int format;
+ gulong nitems;
+ gulong bytes_after;
+ guchar *data;
+ Pixmap *icons;
+ int err, result;
+
+ *pixmap = None;
+ *mask = None;
+
+ meta_error_trap_push_with_return (display);
+ icons = NULL;
+ result = XGetWindowProperty (display->xdisplay, xwindow,
+ display->atom__KWM_WIN_ICON,
+ 0, G_MAXLONG,
+ False,
+ display->atom__KWM_WIN_ICON,
+ &type, &format, &nitems,
+ &bytes_after, &data);
+ icons = (Pixmap *)data;
+
+ err = meta_error_trap_pop_with_return (display, TRUE);
+ if (err != Success ||
+ result != Success)
+ return;
+
+ if (type != display->atom__KWM_WIN_ICON)
+ {
+ XFree (icons);
+ return;
+ }
+
+ *pixmap = icons[0];
+ *mask = icons[1];
+
+ XFree (icons);
+
+ return;
+}
+
+void
+meta_icon_cache_init (MetaIconCache *icon_cache)
+{
+ g_return_if_fail (icon_cache != NULL);
+
+ icon_cache->origin = USING_NO_ICON;
+ icon_cache->prev_pixmap = None;
+ icon_cache->prev_mask = None;
+#if 0
+ icon_cache->icon = NULL;
+ icon_cache->mini_icon = NULL;
+ icon_cache->ideal_width = -1; /* won't be a legit width */
+ icon_cache->ideal_height = -1;
+ icon_cache->ideal_mini_width = -1;
+ icon_cache->ideal_mini_height = -1;
+#endif
+ icon_cache->want_fallback = TRUE;
+ icon_cache->wm_hints_dirty = TRUE;
+ icon_cache->kwm_win_icon_dirty = TRUE;
+ icon_cache->net_wm_icon_dirty = TRUE;
+}
+
+static void
+clear_icon_cache (MetaIconCache *icon_cache,
+ gboolean dirty_all)
+{
+#if 0
+ if (icon_cache->icon)
+ g_object_unref (G_OBJECT (icon_cache->icon));
+ icon_cache->icon = NULL;
+
+ if (icon_cache->mini_icon)
+ g_object_unref (G_OBJECT (icon_cache->mini_icon));
+ icon_cache->mini_icon = NULL;
+#endif
+
+ icon_cache->origin = USING_NO_ICON;
+
+ if (dirty_all)
+ {
+ icon_cache->wm_hints_dirty = TRUE;
+ icon_cache->kwm_win_icon_dirty = TRUE;
+ icon_cache->net_wm_icon_dirty = TRUE;
+ }
+}
+
+void
+meta_icon_cache_free (MetaIconCache *icon_cache)
+{
+ clear_icon_cache (icon_cache, FALSE);
+}
+
+void
+meta_icon_cache_property_changed (MetaIconCache *icon_cache,
+ MetaDisplay *display,
+ Atom atom)
+{
+ if (atom == display->atom__NET_WM_ICON)
+ icon_cache->net_wm_icon_dirty = TRUE;
+ else if (atom == display->atom__KWM_WIN_ICON)
+ icon_cache->kwm_win_icon_dirty = TRUE;
+ else if (atom == XA_WM_HINTS)
+ icon_cache->wm_hints_dirty = TRUE;
+}
+
+gboolean
+meta_icon_cache_get_icon_invalidated (MetaIconCache *icon_cache)
+{
+ if (icon_cache->origin <= USING_KWM_WIN_ICON &&
+ icon_cache->kwm_win_icon_dirty)
+ return TRUE;
+ else if (icon_cache->origin <= USING_WM_HINTS &&
+ icon_cache->wm_hints_dirty)
+ return TRUE;
+ else if (icon_cache->origin <= USING_NET_WM_ICON &&
+ icon_cache->net_wm_icon_dirty)
+ return TRUE;
+ else if (icon_cache->origin < USING_FALLBACK_ICON &&
+ icon_cache->want_fallback)
+ return TRUE;
+ else if (icon_cache->origin == USING_NO_ICON)
+ return TRUE;
+ else if (icon_cache->origin == USING_FALLBACK_ICON &&
+ !icon_cache->want_fallback)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+static void
+replace_cache (MetaIconCache *icon_cache,
+ IconOrigin origin,
+ GdkPixbuf *new_icon,
+ GdkPixbuf *new_mini_icon)
+{
+ clear_icon_cache (icon_cache, FALSE);
+
+ icon_cache->origin = origin;
+
+#if 0
+ if (new_icon)
+ g_object_ref (G_OBJECT (new_icon));
+
+ icon_cache->icon = new_icon;
+
+ if (new_mini_icon)
+ g_object_ref (G_OBJECT (new_mini_icon));
+
+ icon_cache->mini_icon = new_mini_icon;
+#endif
+}
+
+static GdkPixbuf*
+scaled_from_pixdata (guchar *pixdata,
+ int w,
+ int h,
+ int new_w,
+ int new_h)
+{
+ GdkPixbuf *src;
+ GdkPixbuf *dest;
+
+ src = gdk_pixbuf_new_from_data (pixdata,
+ GDK_COLORSPACE_RGB,
+ TRUE,
+ 8,
+ w, h, w * 4,
+ free_pixels,
+ NULL);
+
+ if (src == NULL)
+ return NULL;
+
+ if (w != h)
+ {
+ GdkPixbuf *tmp;
+ int size;
+
+ size = MAX (w, h);
+
+ tmp = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8, size, size);
+
+ if (tmp)
+ {
+ gdk_pixbuf_fill (tmp, 0);
+ gdk_pixbuf_copy_area (src, 0, 0, w, h,
+ tmp,
+ (size - w) / 2, (size - h) / 2);
+
+ g_object_unref (src);
+ src = tmp;
+ }
+ }
+
+ if (w != new_w || h != new_h)
+ {
+ dest = gdk_pixbuf_scale_simple (src, new_w, new_h, GDK_INTERP_BILINEAR);
+
+ g_object_unref (G_OBJECT (src));
+ }
+ else
+ {
+ dest = src;
+ }
+
+ return dest;
+}
+
+gboolean
+meta_read_icons (MetaScreen *screen,
+ Window xwindow,
+ MetaIconCache *icon_cache,
+ Pixmap wm_hints_pixmap,
+ Pixmap wm_hints_mask,
+ GdkPixbuf **iconp,
+ int ideal_width,
+ int ideal_height,
+ GdkPixbuf **mini_iconp,
+ int ideal_mini_width,
+ int ideal_mini_height)
+{
+ guchar *pixdata;
+ int w, h;
+ guchar *mini_pixdata;
+ int mini_w, mini_h;
+ Pixmap pixmap;
+ Pixmap mask;
+
+ /* Return value is whether the icon changed */
+
+ g_return_val_if_fail (icon_cache != NULL, FALSE);
+
+ *iconp = NULL;
+ *mini_iconp = NULL;
+
+#if 0
+ if (ideal_width != icon_cache->ideal_width ||
+ ideal_height != icon_cache->ideal_height ||
+ ideal_mini_width != icon_cache->ideal_mini_width ||
+ ideal_mini_height != icon_cache->ideal_mini_height)
+ clear_icon_cache (icon_cache, TRUE);
+
+ icon_cache->ideal_width = ideal_width;
+ icon_cache->ideal_height = ideal_height;
+ icon_cache->ideal_mini_width = ideal_mini_width;
+ icon_cache->ideal_mini_height = ideal_mini_height;
+#endif
+
+ if (!meta_icon_cache_get_icon_invalidated (icon_cache))
+ return FALSE; /* we have no new info to use */
+
+ pixdata = NULL;
+
+ /* Our algorithm here assumes that we can't have for example origin
+ * < USING_NET_WM_ICON and icon_cache->net_wm_icon_dirty == FALSE
+ * unless we have tried to read NET_WM_ICON.
+ *
+ * Put another way, if an icon origin is not dirty, then we have
+ * tried to read it at the current size. If it is dirty, then
+ * we haven't done that since the last change.
+ */
+
+ if (icon_cache->origin <= USING_NET_WM_ICON &&
+ icon_cache->net_wm_icon_dirty)
+
+ {
+ icon_cache->net_wm_icon_dirty = FALSE;
+
+ if (read_rgb_icon (screen->display, xwindow,
+ ideal_width, ideal_height,
+ ideal_mini_width, ideal_mini_height,
+ &w, &h, &pixdata,
+ &mini_w, &mini_h, &mini_pixdata))
+ {
+ *iconp = scaled_from_pixdata (pixdata, w, h,
+ ideal_width, ideal_height);
+
+ *mini_iconp = scaled_from_pixdata (mini_pixdata, mini_w, mini_h,
+ ideal_mini_width, ideal_mini_height);
+
+ if (*iconp && *mini_iconp)
+ {
+ replace_cache (icon_cache, USING_NET_WM_ICON,
+ *iconp, *mini_iconp);
+
+ return TRUE;
+ }
+ else
+ {
+ if (*iconp)
+ g_object_unref (G_OBJECT (*iconp));
+ if (*mini_iconp)
+ g_object_unref (G_OBJECT (*mini_iconp));
+ }
+ }
+ }
+
+ if (icon_cache->origin <= USING_WM_HINTS &&
+ icon_cache->wm_hints_dirty)
+ {
+ icon_cache->wm_hints_dirty = FALSE;
+
+ pixmap = wm_hints_pixmap;
+ mask = wm_hints_mask;
+
+ /* We won't update if pixmap is unchanged;
+ * avoids a get_from_drawable() on every geometry
+ * hints change
+ */
+ if ((pixmap != icon_cache->prev_pixmap ||
+ mask != icon_cache->prev_mask) &&
+ pixmap != None)
+ {
+ if (try_pixmap_and_mask (screen->display,
+ pixmap, mask,
+ iconp, ideal_width, ideal_height,
+ mini_iconp, ideal_mini_width, ideal_mini_height))
+ {
+ icon_cache->prev_pixmap = pixmap;
+ icon_cache->prev_mask = mask;
+
+ replace_cache (icon_cache, USING_WM_HINTS,
+ *iconp, *mini_iconp);
+
+ return TRUE;
+ }
+ }
+ }
+
+ if (icon_cache->origin <= USING_KWM_WIN_ICON &&
+ icon_cache->kwm_win_icon_dirty)
+ {
+ icon_cache->kwm_win_icon_dirty = FALSE;
+
+ get_kwm_win_icon (screen->display, xwindow, &pixmap, &mask);
+
+ if ((pixmap != icon_cache->prev_pixmap ||
+ mask != icon_cache->prev_mask) &&
+ pixmap != None)
+ {
+ if (try_pixmap_and_mask (screen->display, pixmap, mask,
+ iconp, ideal_width, ideal_height,
+ mini_iconp, ideal_mini_width, ideal_mini_height))
+ {
+ icon_cache->prev_pixmap = pixmap;
+ icon_cache->prev_mask = mask;
+
+ replace_cache (icon_cache, USING_KWM_WIN_ICON,
+ *iconp, *mini_iconp);
+
+ return TRUE;
+ }
+ }
+ }
+
+ if (icon_cache->want_fallback &&
+ icon_cache->origin < USING_FALLBACK_ICON)
+ {
+ get_fallback_icons (screen,
+ iconp,
+ ideal_width,
+ ideal_height,
+ mini_iconp,
+ ideal_mini_width,
+ ideal_mini_height);
+
+ replace_cache (icon_cache, USING_FALLBACK_ICON,
+ *iconp, *mini_iconp);
+
+ return TRUE;
+ }
+
+ if (!icon_cache->want_fallback &&
+ icon_cache->origin == USING_FALLBACK_ICON)
+ {
+ /* Get rid of current icon */
+ clear_icon_cache (icon_cache, FALSE);
+
+ return TRUE;
+ }
+
+ /* found nothing new */
+ return FALSE;
+}
diff --git a/src/core/iconcache.h b/src/core/iconcache.h
new file mode 100644
index 00000000..85ea9c66
--- /dev/null
+++ b/src/core/iconcache.h
@@ -0,0 +1,79 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco window icons */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_ICON_CACHE_H
+#define META_ICON_CACHE_H
+
+#include "screen-private.h"
+
+typedef struct _MetaIconCache MetaIconCache;
+
+typedef enum
+{
+ /* These MUST be in ascending order of preference;
+ * i.e. if we get _NET_WM_ICON and already have
+ * WM_HINTS, we prefer _NET_WM_ICON
+ */
+ USING_NO_ICON,
+ USING_FALLBACK_ICON,
+ USING_KWM_WIN_ICON,
+ USING_WM_HINTS,
+ USING_NET_WM_ICON
+} IconOrigin;
+
+struct _MetaIconCache
+{
+ int origin;
+ Pixmap prev_pixmap;
+ Pixmap prev_mask;
+ guint want_fallback : 1;
+ /* TRUE if these props have changed */
+ guint wm_hints_dirty : 1;
+ guint kwm_win_icon_dirty : 1;
+ guint net_wm_icon_dirty : 1;
+};
+
+void meta_icon_cache_init (MetaIconCache *icon_cache);
+void meta_icon_cache_free (MetaIconCache *icon_cache);
+void meta_icon_cache_property_changed (MetaIconCache *icon_cache,
+ MetaDisplay *display,
+ Atom atom);
+gboolean meta_icon_cache_get_icon_invalidated (MetaIconCache *icon_cache);
+
+gboolean meta_read_icons (MetaScreen *screen,
+ Window xwindow,
+ MetaIconCache *icon_cache,
+ Pixmap wm_hints_pixmap,
+ Pixmap wm_hints_mask,
+ GdkPixbuf **iconp,
+ int ideal_width,
+ int ideal_height,
+ GdkPixbuf **mini_iconp,
+ int ideal_mini_width,
+ int ideal_mini_height);
+
+#endif
+
+
+
+
diff --git a/src/core/keybindings.c b/src/core/keybindings.c
new file mode 100644
index 00000000..b9371c85
--- /dev/null
+++ b/src/core/keybindings.c
@@ -0,0 +1,3352 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco Keybindings */
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2002 Red Hat Inc.
+ * Copyright (C) 2003 Rob Adams
+ * Copyright (C) 2004-2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#define _GNU_SOURCE
+#define _SVID_SOURCE /* for putenv() */
+
+#include <config.h>
+#include "keybindings.h"
+#include "workspace.h"
+#include "errors.h"
+#include "edge-resistance.h"
+#include "ui.h"
+#include "frame-private.h"
+#include "place.h"
+#include "prefs.h"
+#include "effects.h"
+#include "util.h"
+
+#include <X11/keysym.h>
+#include <string.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#ifdef HAVE_XKB
+#include <X11/XKBlib.h>
+#endif
+
+static gboolean all_bindings_disabled = FALSE;
+
+typedef void (* MetaKeyHandlerFunc) (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding);
+
+/* Prototypes for handlers */
+#define keybind(name, handler, param, flags, stroke, description) \
+static void \
+handler (MetaDisplay *display,\
+ MetaScreen *screen,\
+ MetaWindow *window,\
+ XEvent *event,\
+ MetaKeyBinding *binding);
+#include "all-keybindings.h"
+#undef keybind
+
+/* These can't be bound to anything, but they are used to handle
+ * various other events. TODO: Possibly we should include them as event
+ * handler functions and have some kind of flag to say they're unbindable.
+ */
+
+static void handle_workspace_switch (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding);
+
+static gboolean process_mouse_move_resize_grab (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ KeySym keysym);
+
+static gboolean process_keyboard_move_grab (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ KeySym keysym);
+
+static gboolean process_keyboard_resize_grab (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ KeySym keysym);
+
+static gboolean process_tab_grab (MetaDisplay *display,
+ MetaScreen *screen,
+ XEvent *event,
+ KeySym keysym);
+
+static gboolean process_workspace_switch_grab (MetaDisplay *display,
+ MetaScreen *screen,
+ XEvent *event,
+ KeySym keysym);
+
+static void regrab_key_bindings (MetaDisplay *display);
+
+typedef struct
+{
+ const char *name;
+ MetaKeyHandlerFunc func;
+ gint data, flags;
+} MetaKeyHandler;
+
+struct _MetaKeyBinding
+{
+ const char *name;
+ KeySym keysym;
+ KeyCode keycode;
+ unsigned int mask;
+ MetaVirtualModifier modifiers;
+ const MetaKeyHandler *handler;
+};
+
+#define keybind(name, handler, param, flags, stroke, description) \
+ { #name, handler, param, flags },
+static const MetaKeyHandler key_handlers[] = {
+#include "all-keybindings.h"
+ { NULL, NULL, 0, 0 }
+};
+#undef keybind
+
+static void
+reload_keymap (MetaDisplay *display)
+{
+ if (display->keymap)
+ meta_XFree (display->keymap);
+
+ display->keymap = XGetKeyboardMapping (display->xdisplay,
+ display->min_keycode,
+ display->max_keycode -
+ display->min_keycode + 1,
+ &display->keysyms_per_keycode);
+}
+
+static void
+reload_modmap (MetaDisplay *display)
+{
+ XModifierKeymap *modmap;
+ int map_size;
+ int i;
+
+ if (display->modmap)
+ XFreeModifiermap (display->modmap);
+
+ modmap = XGetModifierMapping (display->xdisplay);
+ display->modmap = modmap;
+
+ display->ignored_modifier_mask = 0;
+
+ /* Multiple bits may get set in each of these */
+ display->num_lock_mask = 0;
+ display->scroll_lock_mask = 0;
+ display->meta_mask = 0;
+ display->hyper_mask = 0;
+ display->super_mask = 0;
+
+ /* there are 8 modifiers, and the first 3 are shift, shift lock,
+ * and control
+ */
+ map_size = 8 * modmap->max_keypermod;
+ i = 3 * modmap->max_keypermod;
+ while (i < map_size)
+ {
+ /* get the key code at this point in the map,
+ * see if its keysym is one we're interested in
+ */
+ int keycode = modmap->modifiermap[i];
+
+ if (keycode >= display->min_keycode &&
+ keycode <= display->max_keycode)
+ {
+ int j = 0;
+ KeySym *syms = display->keymap +
+ (keycode - display->min_keycode) * display->keysyms_per_keycode;
+
+ while (j < display->keysyms_per_keycode)
+ {
+ if (syms[j] != 0)
+ {
+ const char *str;
+
+ str = XKeysymToString (syms[j]);
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Keysym %s bound to modifier 0x%x\n",
+ str ? str : "none",
+ (1 << ( i / modmap->max_keypermod)));
+ }
+
+ if (syms[j] == XK_Num_Lock)
+ {
+ /* Mod1Mask is 1 << 3 for example, i.e. the
+ * fourth modifier, i / keyspermod is the modifier
+ * index
+ */
+
+ display->num_lock_mask |= (1 << ( i / modmap->max_keypermod));
+ }
+ else if (syms[j] == XK_Scroll_Lock)
+ {
+ display->scroll_lock_mask |= (1 << ( i / modmap->max_keypermod));
+ }
+ else if (syms[j] == XK_Super_L ||
+ syms[j] == XK_Super_R)
+ {
+ display->super_mask |= (1 << ( i / modmap->max_keypermod));
+ }
+ else if (syms[j] == XK_Hyper_L ||
+ syms[j] == XK_Hyper_R)
+ {
+ display->hyper_mask |= (1 << ( i / modmap->max_keypermod));
+ }
+ else if (syms[j] == XK_Meta_L ||
+ syms[j] == XK_Meta_R)
+ {
+ display->meta_mask |= (1 << ( i / modmap->max_keypermod));
+ }
+
+ ++j;
+ }
+ }
+
+ ++i;
+ }
+
+ display->ignored_modifier_mask = (display->num_lock_mask |
+ display->scroll_lock_mask |
+ LockMask);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Ignoring modmask 0x%x num lock 0x%x scroll lock 0x%x hyper 0x%x super 0x%x meta 0x%x\n",
+ display->ignored_modifier_mask,
+ display->num_lock_mask,
+ display->scroll_lock_mask,
+ display->hyper_mask,
+ display->super_mask,
+ display->meta_mask);
+}
+
+static void
+reload_keycodes (MetaDisplay *display)
+{
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Reloading keycodes for binding tables\n");
+
+ if (display->key_bindings)
+ {
+ int i;
+
+ i = 0;
+ while (i < display->n_key_bindings)
+ {
+ if (display->key_bindings[i].keycode == 0)
+ display->key_bindings[i].keycode = XKeysymToKeycode (
+ display->xdisplay, display->key_bindings[i].keysym);
+
+ ++i;
+ }
+ }
+}
+
+static void
+reload_modifiers (MetaDisplay *display)
+{
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Reloading keycodes for binding tables\n");
+
+ if (display->key_bindings)
+ {
+ int i;
+
+ i = 0;
+ while (i < display->n_key_bindings)
+ {
+ meta_display_devirtualize_modifiers (display,
+ display->key_bindings[i].modifiers,
+ &display->key_bindings[i].mask);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ " Devirtualized mods 0x%x -> 0x%x (%s)\n",
+ display->key_bindings[i].modifiers,
+ display->key_bindings[i].mask,
+ display->key_bindings[i].name);
+
+ ++i;
+ }
+ }
+}
+
+
+static int
+count_bindings (const MetaKeyPref *prefs,
+ int n_prefs)
+{
+ int i;
+ int count;
+
+ count = 0;
+ i = 0;
+ while (i < n_prefs)
+ {
+ GSList *tmp = prefs[i].bindings;
+
+ while (tmp)
+ {
+ MetaKeyCombo *combo = tmp->data;
+
+ if (combo && (combo->keysym != None || combo->keycode != 0))
+ {
+ count += 1;
+
+ if (prefs[i].add_shift &&
+ (combo->modifiers & META_VIRTUAL_SHIFT_MASK) == 0)
+ count += 1;
+ }
+
+ tmp = tmp->next;
+ }
+
+ ++i;
+ }
+
+ return count;
+}
+
+/* FIXME: replace this with a temporary hash */
+static const MetaKeyHandler*
+find_handler (const MetaKeyHandler *handlers,
+ const char *name)
+{
+ const MetaKeyHandler *iter;
+
+ iter = handlers;
+ while (iter->name)
+ {
+ if (strcmp (iter->name, name) == 0)
+ return iter;
+
+ ++iter;
+ }
+
+ return NULL;
+}
+
+static void
+rebuild_binding_table (MetaDisplay *display,
+ MetaKeyBinding **bindings_p,
+ int *n_bindings_p,
+ const MetaKeyPref *prefs,
+ int n_prefs)
+{
+ int n_bindings;
+ int src, dest;
+
+ n_bindings = count_bindings (prefs, n_prefs);
+ g_free (*bindings_p);
+ *bindings_p = g_new0 (MetaKeyBinding, n_bindings);
+
+ src = 0;
+ dest = 0;
+ while (src < n_prefs)
+ {
+ GSList *tmp = prefs[src].bindings;
+
+ while (tmp)
+ {
+ MetaKeyCombo *combo = tmp->data;
+
+ if (combo && (combo->keysym != None || combo->keycode != 0))
+ {
+ const MetaKeyHandler *handler = find_handler (key_handlers, prefs[src].name);
+
+ (*bindings_p)[dest].name = prefs[src].name;
+ (*bindings_p)[dest].handler = handler;
+ (*bindings_p)[dest].keysym = combo->keysym;
+ (*bindings_p)[dest].keycode = combo->keycode;
+ (*bindings_p)[dest].modifiers = combo->modifiers;
+ (*bindings_p)[dest].mask = 0;
+
+ ++dest;
+
+ if (prefs[src].add_shift &&
+ (combo->modifiers & META_VIRTUAL_SHIFT_MASK) == 0)
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Binding %s also needs Shift grabbed\n",
+ prefs[src].name);
+
+ (*bindings_p)[dest].name = prefs[src].name;
+ (*bindings_p)[dest].handler = handler;
+ (*bindings_p)[dest].keysym = combo->keysym;
+ (*bindings_p)[dest].keycode = combo->keycode;
+ (*bindings_p)[dest].modifiers = combo->modifiers |
+ META_VIRTUAL_SHIFT_MASK;
+ (*bindings_p)[dest].mask = 0;
+
+ ++dest;
+ }
+ }
+
+ tmp = tmp->next;
+ }
+
+ ++src;
+ }
+
+ g_assert (dest == n_bindings);
+
+ *n_bindings_p = dest;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ " %d bindings in table\n",
+ *n_bindings_p);
+}
+
+static void
+rebuild_key_binding_table (MetaDisplay *display)
+{
+ const MetaKeyPref *prefs;
+ int n_prefs;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Rebuilding key binding table from preferences\n");
+
+ meta_prefs_get_key_bindings (&prefs, &n_prefs);
+ rebuild_binding_table (display,
+ &display->key_bindings,
+ &display->n_key_bindings,
+ prefs, n_prefs);
+}
+
+static void
+regrab_key_bindings (MetaDisplay *display)
+{
+ GSList *tmp;
+ GSList *windows;
+
+ meta_error_trap_push (display); /* for efficiency push outer trap */
+
+ tmp = display->screens;
+ while (tmp != NULL)
+ {
+ MetaScreen *screen = tmp->data;
+
+ meta_screen_ungrab_keys (screen);
+ meta_screen_grab_keys (screen);
+
+ tmp = tmp->next;
+ }
+
+ windows = meta_display_list_windows (display);
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+
+ meta_window_ungrab_keys (w);
+ meta_window_grab_keys (w);
+
+ tmp = tmp->next;
+ }
+ meta_error_trap_pop (display, FALSE);
+
+ g_slist_free (windows);
+}
+
+static MetaKeyBindingAction
+display_get_keybinding_action (MetaDisplay *display,
+ unsigned int keysym,
+ unsigned int keycode,
+ unsigned long mask)
+{
+ int i;
+
+ i = display->n_key_bindings - 1;
+ while (i >= 0)
+ {
+ if (display->key_bindings[i].keysym == keysym &&
+ display->key_bindings[i].keycode == keycode &&
+ display->key_bindings[i].mask == mask)
+ {
+ return meta_prefs_get_keybinding_action (display->key_bindings[i].name);
+ }
+
+ --i;
+ }
+
+ return META_KEYBINDING_ACTION_NONE;
+}
+
+void
+meta_display_process_mapping_event (MetaDisplay *display,
+ XEvent *event)
+{
+ if (event->xmapping.request == MappingModifier)
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Received MappingModifier event, will reload modmap and redo keybindings\n");
+
+ reload_modmap (display);
+
+ reload_modifiers (display);
+
+ regrab_key_bindings (display);
+ }
+ else if (event->xmapping.request == MappingKeyboard)
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Received MappingKeyboard event, will reload keycodes and redo keybindings\n");
+
+ reload_keymap (display);
+ reload_modmap (display);
+
+ reload_keycodes (display);
+
+ regrab_key_bindings (display);
+ }
+}
+
+static void
+bindings_changed_callback (MetaPreference pref,
+ void *data)
+{
+ MetaDisplay *display;
+
+ display = data;
+
+ switch (pref)
+ {
+ case META_PREF_KEYBINDINGS:
+ rebuild_key_binding_table (display);
+ reload_keycodes (display);
+ reload_modifiers (display);
+ regrab_key_bindings (display);
+ break;
+ default:
+ break;
+ }
+}
+
+
+void
+meta_display_init_keys (MetaDisplay *display)
+{
+ /* Keybindings */
+ display->keymap = NULL;
+ display->keysyms_per_keycode = 0;
+ display->modmap = NULL;
+ display->min_keycode = 0;
+ display->max_keycode = 0;
+ display->ignored_modifier_mask = 0;
+ display->num_lock_mask = 0;
+ display->scroll_lock_mask = 0;
+ display->hyper_mask = 0;
+ display->super_mask = 0;
+ display->meta_mask = 0;
+ display->key_bindings = NULL;
+ display->n_key_bindings = 0;
+
+ XDisplayKeycodes (display->xdisplay,
+ &display->min_keycode,
+ &display->max_keycode);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Display has keycode range %d to %d\n",
+ display->min_keycode,
+ display->max_keycode);
+
+ reload_keymap (display);
+ reload_modmap (display);
+
+ rebuild_key_binding_table (display);
+
+ reload_keycodes (display);
+ reload_modifiers (display);
+
+ /* Keys are actually grabbed in meta_screen_grab_keys() */
+
+ meta_prefs_add_listener (bindings_changed_callback, display);
+}
+
+void
+meta_display_shutdown_keys (MetaDisplay *display)
+{
+ /* Note that display->xdisplay is invalid in this function */
+
+ meta_prefs_remove_listener (bindings_changed_callback, display);
+
+ if (display->keymap)
+ meta_XFree (display->keymap);
+
+ if (display->modmap)
+ XFreeModifiermap (display->modmap);
+ g_free (display->key_bindings);
+}
+
+static const char*
+keysym_name (int keysym)
+{
+ const char *name;
+
+ name = XKeysymToString (keysym);
+ if (name == NULL)
+ name = "(unknown)";
+
+ return name;
+}
+
+/* Grab/ungrab, ignoring all annoying modifiers like NumLock etc. */
+static void
+meta_change_keygrab (MetaDisplay *display,
+ Window xwindow,
+ gboolean grab,
+ int keysym,
+ unsigned int keycode,
+ int modmask)
+{
+ unsigned int ignored_mask;
+
+ /* Grab keycode/modmask, together with
+ * all combinations of ignored modifiers.
+ * X provides no better way to do this.
+ */
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "%s keybinding %s keycode %d mask 0x%x on 0x%lx\n",
+ grab ? "Grabbing" : "Ungrabbing",
+ keysym_name (keysym), keycode,
+ modmask, xwindow);
+
+ /* efficiency, avoid so many XSync() */
+ meta_error_trap_push (display);
+
+ ignored_mask = 0;
+ while (ignored_mask <= display->ignored_modifier_mask)
+ {
+ if (ignored_mask & ~(display->ignored_modifier_mask))
+ {
+ /* Not a combination of ignored modifiers
+ * (it contains some non-ignored modifiers)
+ */
+ ++ignored_mask;
+ continue;
+ }
+
+ if (meta_is_debugging ())
+ meta_error_trap_push_with_return (display);
+ if (grab)
+ XGrabKey (display->xdisplay, keycode,
+ modmask | ignored_mask,
+ xwindow,
+ True,
+ GrabModeAsync, GrabModeSync);
+ else
+ XUngrabKey (display->xdisplay, keycode,
+ modmask | ignored_mask,
+ xwindow);
+
+ if (meta_is_debugging ())
+ {
+ int result;
+
+ result = meta_error_trap_pop_with_return (display, FALSE);
+
+ if (grab && result != Success)
+ {
+ if (result == BadAccess)
+ meta_warning (_("Some other program is already using the key %s with modifiers %x as a binding\n"), keysym_name (keysym), modmask | ignored_mask);
+ else
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Failed to grab key %s with modifiers %x\n",
+ keysym_name (keysym), modmask | ignored_mask);
+ }
+ }
+
+ ++ignored_mask;
+ }
+
+ meta_error_trap_pop (display, FALSE);
+}
+
+static void
+meta_grab_key (MetaDisplay *display,
+ Window xwindow,
+ int keysym,
+ unsigned int keycode,
+ int modmask)
+{
+ meta_change_keygrab (display, xwindow, TRUE, keysym, keycode, modmask);
+}
+
+static void
+grab_keys (MetaKeyBinding *bindings,
+ int n_bindings,
+ MetaDisplay *display,
+ Window xwindow,
+ gboolean binding_per_window)
+{
+ int i;
+
+ g_assert (n_bindings == 0 || bindings != NULL);
+
+ meta_error_trap_push (display);
+
+ i = 0;
+ while (i < n_bindings)
+ {
+ if (!!binding_per_window ==
+ !!(bindings[i].handler->flags & BINDING_PER_WINDOW) &&
+ bindings[i].keycode != 0)
+ {
+ meta_grab_key (display, xwindow,
+ bindings[i].keysym,
+ bindings[i].keycode,
+ bindings[i].mask);
+ }
+
+ ++i;
+ }
+
+ meta_error_trap_pop (display, FALSE);
+}
+
+static void
+ungrab_all_keys (MetaDisplay *display,
+ Window xwindow)
+{
+ if (meta_is_debugging ())
+ meta_error_trap_push_with_return (display);
+ else
+ meta_error_trap_push (display);
+
+ XUngrabKey (display->xdisplay, AnyKey, AnyModifier,
+ xwindow);
+
+ if (meta_is_debugging ())
+ {
+ int result;
+
+ result = meta_error_trap_pop_with_return (display, FALSE);
+
+ if (result != Success)
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Ungrabbing all keys on 0x%lx failed\n", xwindow);
+ }
+ else
+ meta_error_trap_pop (display, FALSE);
+}
+
+void
+meta_screen_grab_keys (MetaScreen *screen)
+{
+ if (screen->all_keys_grabbed)
+ return;
+
+ if (screen->keys_grabbed)
+ return;
+
+ grab_keys (screen->display->key_bindings,
+ screen->display->n_key_bindings,
+ screen->display, screen->xroot,
+ FALSE);
+
+ screen->keys_grabbed = TRUE;
+}
+
+void
+meta_screen_ungrab_keys (MetaScreen *screen)
+{
+ if (screen->keys_grabbed)
+ {
+ ungrab_all_keys (screen->display, screen->xroot);
+ screen->keys_grabbed = FALSE;
+ }
+}
+
+void
+meta_window_grab_keys (MetaWindow *window)
+{
+ if (window->all_keys_grabbed)
+ return;
+
+ if (window->type == META_WINDOW_DOCK)
+ {
+ if (window->keys_grabbed)
+ ungrab_all_keys (window->display, window->xwindow);
+ window->keys_grabbed = FALSE;
+ return;
+ }
+
+ if (window->keys_grabbed)
+ {
+ if (window->frame && !window->grab_on_frame)
+ ungrab_all_keys (window->display, window->xwindow);
+ else if (window->frame == NULL &&
+ window->grab_on_frame)
+ ; /* continue to regrab on client window */
+ else
+ return; /* already all good */
+ }
+
+ grab_keys (window->display->key_bindings,
+ window->display->n_key_bindings,
+ window->display,
+ window->frame ? window->frame->xwindow : window->xwindow,
+ TRUE);
+
+ window->keys_grabbed = TRUE;
+ window->grab_on_frame = window->frame != NULL;
+}
+
+void
+meta_window_ungrab_keys (MetaWindow *window)
+{
+ if (window->keys_grabbed)
+ {
+ if (window->grab_on_frame &&
+ window->frame != NULL)
+ ungrab_all_keys (window->display,
+ window->frame->xwindow);
+ else if (!window->grab_on_frame)
+ ungrab_all_keys (window->display,
+ window->xwindow);
+
+ window->keys_grabbed = FALSE;
+ }
+}
+
+#ifdef WITH_VERBOSE_MODE
+static const char*
+grab_status_to_string (int status)
+{
+ switch (status)
+ {
+ case AlreadyGrabbed:
+ return "AlreadyGrabbed";
+ case GrabSuccess:
+ return "GrabSuccess";
+ case GrabNotViewable:
+ return "GrabNotViewable";
+ case GrabFrozen:
+ return "GrabFrozen";
+ case GrabInvalidTime:
+ return "GrabInvalidTime";
+ default:
+ return "(unknown)";
+ }
+}
+#endif /* WITH_VERBOSE_MODE */
+
+static gboolean
+grab_keyboard (MetaDisplay *display,
+ Window xwindow,
+ guint32 timestamp)
+{
+ int result;
+ int grab_status;
+
+ /* Grab the keyboard, so we get key releases and all key
+ * presses
+ */
+ meta_error_trap_push_with_return (display);
+
+ grab_status = XGrabKeyboard (display->xdisplay,
+ xwindow, True,
+ GrabModeAsync, GrabModeAsync,
+ timestamp);
+
+ if (grab_status != GrabSuccess)
+ {
+ meta_error_trap_pop_with_return (display, TRUE);
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "XGrabKeyboard() returned failure status %s time %u\n",
+ grab_status_to_string (grab_status),
+ timestamp);
+ return FALSE;
+ }
+ else
+ {
+ result = meta_error_trap_pop_with_return (display, TRUE);
+ if (result != Success)
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "XGrabKeyboard() resulted in an error\n");
+ return FALSE;
+ }
+ }
+
+ meta_topic (META_DEBUG_KEYBINDINGS, "Grabbed all keys\n");
+
+ return TRUE;
+}
+
+static void
+ungrab_keyboard (MetaDisplay *display, guint32 timestamp)
+{
+ meta_error_trap_push (display);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Ungrabbing keyboard with timestamp %u\n",
+ timestamp);
+ XUngrabKeyboard (display->xdisplay, timestamp);
+ meta_error_trap_pop (display, FALSE);
+}
+
+gboolean
+meta_screen_grab_all_keys (MetaScreen *screen, guint32 timestamp)
+{
+ gboolean retval;
+
+ if (screen->all_keys_grabbed)
+ return FALSE;
+
+ if (screen->keys_grabbed)
+ meta_screen_ungrab_keys (screen);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Grabbing all keys on RootWindow\n");
+ retval = grab_keyboard (screen->display, screen->xroot, timestamp);
+ if (retval)
+ screen->all_keys_grabbed = TRUE;
+ else
+ meta_screen_grab_keys (screen);
+
+ return retval;
+}
+
+void
+meta_screen_ungrab_all_keys (MetaScreen *screen, guint32 timestamp)
+{
+ if (screen->all_keys_grabbed)
+ {
+ ungrab_keyboard (screen->display, timestamp);
+
+ screen->all_keys_grabbed = FALSE;
+ screen->keys_grabbed = FALSE;
+
+ /* Re-establish our standard bindings */
+ meta_screen_grab_keys (screen);
+ }
+}
+
+gboolean
+meta_window_grab_all_keys (MetaWindow *window,
+ guint32 timestamp)
+{
+ Window grabwindow;
+ gboolean retval;
+
+ if (window->all_keys_grabbed)
+ return FALSE;
+
+ if (window->keys_grabbed)
+ meta_window_ungrab_keys (window);
+
+ /* Make sure the window is focused, otherwise the grab
+ * won't do a lot of good.
+ */
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing %s because we're grabbing all its keys\n",
+ window->desc);
+ meta_window_focus (window, timestamp);
+
+ grabwindow = window->frame ? window->frame->xwindow : window->xwindow;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Grabbing all keys on window %s\n", window->desc);
+ retval = grab_keyboard (window->display, grabwindow, timestamp);
+ if (retval)
+ {
+ window->keys_grabbed = FALSE;
+ window->all_keys_grabbed = TRUE;
+ window->grab_on_frame = window->frame != NULL;
+ }
+
+ return retval;
+}
+
+void
+meta_window_ungrab_all_keys (MetaWindow *window, guint32 timestamp)
+{
+ if (window->all_keys_grabbed)
+ {
+ ungrab_keyboard (window->display, timestamp);
+
+ window->grab_on_frame = FALSE;
+ window->all_keys_grabbed = FALSE;
+ window->keys_grabbed = FALSE;
+
+ /* Re-establish our standard bindings */
+ meta_window_grab_keys (window);
+ }
+}
+
+static gboolean
+is_modifier (MetaDisplay *display,
+ unsigned int keycode)
+{
+ int i;
+ int map_size;
+ gboolean retval = FALSE;
+
+ g_assert (display->modmap);
+
+ map_size = 8 * display->modmap->max_keypermod;
+ i = 0;
+ while (i < map_size)
+ {
+ if (keycode == display->modmap->modifiermap[i])
+ {
+ retval = TRUE;
+ break;
+ }
+ ++i;
+ }
+
+ return retval;
+}
+
+/* Indexes:
+ * shift = 0
+ * lock = 1
+ * control = 2
+ * mod1 = 3
+ * mod2 = 4
+ * mod3 = 5
+ * mod4 = 6
+ * mod5 = 7
+ */
+
+static gboolean
+is_specific_modifier (MetaDisplay *display,
+ unsigned int keycode,
+ unsigned int mask)
+{
+ int i;
+ int end;
+ gboolean retval = FALSE;
+ int mod_index;
+
+ g_assert (display->modmap);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Checking whether code 0x%x is bound to modifier 0x%x\n",
+ keycode, mask);
+
+ mod_index = 0;
+ mask = mask >> 1;
+ while (mask != 0)
+ {
+ mod_index += 1;
+ mask = mask >> 1;
+ }
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Modifier has index %d\n", mod_index);
+
+ end = (mod_index + 1) * display->modmap->max_keypermod;
+ i = mod_index * display->modmap->max_keypermod;
+ while (i < end)
+ {
+ if (keycode == display->modmap->modifiermap[i])
+ {
+ retval = TRUE;
+ break;
+ }
+ ++i;
+ }
+
+ return retval;
+}
+
+static unsigned int
+get_primary_modifier (MetaDisplay *display,
+ unsigned int entire_binding_mask)
+{
+ /* The idea here is to see if the "main" modifier
+ * for Alt+Tab has been pressed/released. So if the binding
+ * is Alt+Shift+Tab then releasing Alt is the thing that
+ * ends the operation. It's pretty random how we order
+ * these.
+ */
+ unsigned int masks[] = { Mod5Mask, Mod4Mask, Mod3Mask,
+ Mod2Mask, Mod1Mask, ControlMask,
+ ShiftMask, LockMask };
+
+ int i;
+
+ i = 0;
+ while (i < (int) G_N_ELEMENTS (masks))
+ {
+ if (entire_binding_mask & masks[i])
+ return masks[i];
+ ++i;
+ }
+
+ return 0;
+}
+
+static gboolean
+keycode_is_primary_modifier (MetaDisplay *display,
+ unsigned int keycode,
+ unsigned int entire_binding_mask)
+{
+ unsigned int primary_modifier;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Checking whether code 0x%x is the primary modifier of mask 0x%x\n",
+ keycode, entire_binding_mask);
+
+ primary_modifier = get_primary_modifier (display, entire_binding_mask);
+ if (primary_modifier != 0)
+ return is_specific_modifier (display, keycode, primary_modifier);
+ else
+ return FALSE;
+}
+
+static gboolean
+primary_modifier_still_pressed (MetaDisplay *display,
+ unsigned int entire_binding_mask)
+{
+ unsigned int primary_modifier;
+ int x, y, root_x, root_y;
+ Window root, child;
+ guint mask;
+ MetaScreen *random_screen;
+ Window random_xwindow;
+
+ primary_modifier = get_primary_modifier (display, entire_binding_mask);
+
+ random_screen = display->screens->data;
+ random_xwindow = random_screen->no_focus_window;
+ XQueryPointer (display->xdisplay,
+ random_xwindow, /* some random window */
+ &root, &child,
+ &root_x, &root_y,
+ &x, &y,
+ &mask);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Primary modifier 0x%x full grab mask 0x%x current state 0x%x\n",
+ primary_modifier, entire_binding_mask, mask);
+
+ if ((mask & primary_modifier) == 0)
+ return FALSE;
+ else
+ return TRUE;
+}
+
+/* now called from only one place, may be worth merging */
+static gboolean
+process_event (MetaKeyBinding *bindings,
+ int n_bindings,
+ MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ KeySym keysym,
+ gboolean on_window)
+{
+ int i;
+
+ /* we used to have release-based bindings but no longer. */
+ if (event->type == KeyRelease)
+ return FALSE;
+
+ /*
+ * TODO: This would be better done with a hash table;
+ * it doesn't suit to use O(n) for such a common operation.
+ */
+ for (i=0; i<n_bindings; i++)
+ {
+ const MetaKeyHandler *handler = bindings[i].handler;
+
+ if ((!on_window && handler->flags & BINDING_PER_WINDOW) ||
+ event->type != KeyPress ||
+ bindings[i].keycode != event->xkey.keycode ||
+ ((event->xkey.state & 0xff & ~(display->ignored_modifier_mask)) !=
+ bindings[i].mask))
+ continue;
+
+ /*
+ * window must be non-NULL for on_window to be true,
+ * and so also window must be non-NULL if we get here and
+ * this is a BINDING_PER_WINDOW binding.
+ */
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Binding keycode 0x%x mask 0x%x matches event 0x%x state 0x%x\n",
+ bindings[i].keycode, bindings[i].mask,
+ event->xkey.keycode, event->xkey.state);
+
+ if (handler == NULL)
+ meta_bug ("Binding %s has no handler\n", bindings[i].name);
+ else
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Running handler for %s\n",
+ bindings[i].name);
+
+ /* Global keybindings count as a let-the-terminal-lose-focus
+ * due to new window mapping until the user starts
+ * interacting with the terminal again.
+ */
+ display->allow_terminal_deactivation = TRUE;
+
+ (* handler->func) (display, screen,
+ bindings[i].handler->flags & BINDING_PER_WINDOW? window: NULL,
+ event,
+ &bindings[i]);
+ return TRUE;
+ }
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "No handler found for this event in this binding table\n");
+ return FALSE;
+}
+
+/* Handle a key event. May be called recursively: some key events cause
+ * grabs to be ended and then need to be processed again in their own
+ * right. This cannot cause infinite recursion because we never call
+ * ourselves when there wasn't a grab, and we always clear the grab
+ * first; the invariant is enforced using an assertion. See #112560.
+ * FIXME: We need to prove there are no race conditions here.
+ * FIXME: Does it correctly handle alt-Tab being followed by another
+ * grabbing keypress without letting go of alt?
+ * FIXME: An iterative solution would probably be simpler to understand
+ * (and help us solve the other fixmes).
+ */
+void
+meta_display_process_key_event (MetaDisplay *display,
+ MetaWindow *window,
+ XEvent *event)
+{
+ KeySym keysym;
+ gboolean keep_grab;
+ gboolean all_keys_grabbed;
+ const char *str;
+ MetaScreen *screen;
+
+ XAllowEvents (display->xdisplay,
+ all_bindings_disabled ? ReplayKeyboard : AsyncKeyboard,
+ event->xkey.time);
+ if (all_bindings_disabled)
+ return;
+
+ /* if key event was on root window, we have a shortcut */
+ screen = meta_display_screen_for_root (display, event->xkey.window);
+
+ /* else round-trip to server */
+ if (screen == NULL)
+ screen = meta_display_screen_for_xwindow (display,
+ event->xany.window);
+
+ if (screen == NULL)
+ return; /* event window is destroyed */
+
+ /* ignore key events on popup menus and such. */
+ if (window == NULL &&
+ meta_ui_window_is_widget (screen->ui, event->xany.window))
+ return;
+
+ /* window may be NULL */
+
+ keysym = XKeycodeToKeysym (display->xdisplay, event->xkey.keycode, 0);
+
+ str = XKeysymToString (keysym);
+
+ /* was topic */
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Processing key %s event, keysym: %s state: 0x%x window: %s\n",
+ event->type == KeyPress ? "press" : "release",
+ str ? str : "none", event->xkey.state,
+ window ? window->desc : "(no window)");
+
+ keep_grab = TRUE;
+ all_keys_grabbed = window ? window->all_keys_grabbed : screen->all_keys_grabbed;
+ if (all_keys_grabbed)
+ {
+ if (display->grab_op == META_GRAB_OP_NONE)
+ return;
+ /* If we get here we have a global grab, because
+ * we're in some special keyboard mode such as window move
+ * mode.
+ */
+ if (window ? (window == display->grab_window) :
+ (screen == display->grab_screen))
+ {
+ switch (display->grab_op)
+ {
+ case META_GRAB_OP_MOVING:
+ case META_GRAB_OP_RESIZING_SE:
+ case META_GRAB_OP_RESIZING_S:
+ case META_GRAB_OP_RESIZING_SW:
+ case META_GRAB_OP_RESIZING_N:
+ case META_GRAB_OP_RESIZING_NE:
+ case META_GRAB_OP_RESIZING_NW:
+ case META_GRAB_OP_RESIZING_W:
+ case META_GRAB_OP_RESIZING_E:
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Processing event for mouse-only move/resize\n");
+ g_assert (window != NULL);
+ keep_grab = process_mouse_move_resize_grab (display, screen,
+ window, event, keysym);
+ break;
+
+ case META_GRAB_OP_KEYBOARD_MOVING:
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Processing event for keyboard move\n");
+ g_assert (window != NULL);
+ keep_grab = process_keyboard_move_grab (display, screen,
+ window, event, keysym);
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN:
+ case META_GRAB_OP_KEYBOARD_RESIZING_S:
+ case META_GRAB_OP_KEYBOARD_RESIZING_N:
+ case META_GRAB_OP_KEYBOARD_RESIZING_W:
+ case META_GRAB_OP_KEYBOARD_RESIZING_E:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Processing event for keyboard resize\n");
+ g_assert (window != NULL);
+ keep_grab = process_keyboard_resize_grab (display, screen,
+ window, event, keysym);
+ break;
+
+ case META_GRAB_OP_KEYBOARD_TABBING_NORMAL:
+ case META_GRAB_OP_KEYBOARD_TABBING_DOCK:
+ case META_GRAB_OP_KEYBOARD_TABBING_GROUP:
+ case META_GRAB_OP_KEYBOARD_ESCAPING_NORMAL:
+ case META_GRAB_OP_KEYBOARD_ESCAPING_DOCK:
+ case META_GRAB_OP_KEYBOARD_ESCAPING_GROUP:
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Processing event for keyboard tabbing/cycling\n");
+ keep_grab = process_tab_grab (display, screen, event, keysym);
+ break;
+
+ case META_GRAB_OP_KEYBOARD_WORKSPACE_SWITCHING:
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Processing event for keyboard workspace switching\n");
+ keep_grab = process_workspace_switch_grab (display, screen, event, keysym);
+ break;
+
+ default:
+ break;
+ }
+ }
+ if (!keep_grab)
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Ending grab op %u on key event sym %s\n",
+ display->grab_op, XKeysymToString (keysym));
+ meta_display_end_grab_op (display, event->xkey.time);
+ return;
+ }
+ }
+ /* Do the normal keybindings */
+ process_event (display->key_bindings,
+ display->n_key_bindings,
+ display, screen, window, event, keysym,
+ !all_keys_grabbed && window);
+}
+
+static gboolean
+process_mouse_move_resize_grab (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ KeySym keysym)
+{
+ /* don't care about releases, but eat them, don't end grab */
+ if (event->type == KeyRelease)
+ return TRUE;
+
+ if (keysym == XK_Escape)
+ {
+ /* End move or resize and restore to original state. If the
+ * window was a maximized window that had been "shaken loose" we
+ * need to remaximize it. In normal cases, we need to do a
+ * moveresize now to get the position back to the original. In
+ * wireframe mode, we just need to set grab_was_cancelled to tru
+ * to avoid avoid moveresizing to the position of the wireframe.
+ */
+ if (window->shaken_loose)
+ meta_window_maximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+ else if (!display->grab_wireframe_active)
+ meta_window_move_resize (display->grab_window,
+ TRUE,
+ display->grab_initial_window_pos.x,
+ display->grab_initial_window_pos.y,
+ display->grab_initial_window_pos.width,
+ display->grab_initial_window_pos.height);
+ else
+ display->grab_was_cancelled = TRUE;
+
+ /* End grab */
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+static gboolean
+process_keyboard_move_grab (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ KeySym keysym)
+{
+ gboolean handled;
+ int x, y;
+ int incr;
+ gboolean smart_snap;
+
+ handled = FALSE;
+
+ /* don't care about releases, but eat them, don't end grab */
+ if (event->type == KeyRelease)
+ return TRUE;
+
+ /* don't end grab on modifier key presses */
+ if (is_modifier (display, event->xkey.keycode))
+ return TRUE;
+
+ if (display->grab_wireframe_active)
+ {
+ x = display->grab_wireframe_rect.x;
+ y = display->grab_wireframe_rect.y;
+ }
+ else
+ {
+ meta_window_get_position (window, &x, &y);
+ }
+
+ smart_snap = (event->xkey.state & ShiftMask) != 0;
+
+#define SMALL_INCREMENT 1
+#define NORMAL_INCREMENT 10
+
+ if (smart_snap)
+ incr = 1;
+ else if (event->xkey.state & ControlMask)
+ incr = SMALL_INCREMENT;
+ else
+ incr = NORMAL_INCREMENT;
+
+ if (keysym == XK_Escape)
+ {
+ /* End move and restore to original state. If the window was a
+ * maximized window that had been "shaken loose" we need to
+ * remaximize it. In normal cases, we need to do a moveresize
+ * now to get the position back to the original. In wireframe
+ * mode, we just need to set grab_was_cancelled to tru to avoid
+ * avoid moveresizing to the position of the wireframe.
+ */
+ if (window->shaken_loose)
+ meta_window_maximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+ else if (!display->grab_wireframe_active)
+ meta_window_move_resize (display->grab_window,
+ TRUE,
+ display->grab_initial_window_pos.x,
+ display->grab_initial_window_pos.y,
+ display->grab_initial_window_pos.width,
+ display->grab_initial_window_pos.height);
+ else
+ display->grab_was_cancelled = TRUE;
+ }
+
+ /* When moving by increments, we still snap to edges if the move
+ * to the edge is smaller than the increment. This is because
+ * Shift + arrow to snap is sort of a hidden feature. This way
+ * people using just arrows shouldn't get too frustrated.
+ */
+ switch (keysym)
+ {
+ case XK_KP_Home:
+ case XK_KP_Prior:
+ case XK_Up:
+ case XK_KP_Up:
+ y -= incr;
+ handled = TRUE;
+ break;
+ case XK_KP_End:
+ case XK_KP_Next:
+ case XK_Down:
+ case XK_KP_Down:
+ y += incr;
+ handled = TRUE;
+ break;
+ }
+
+ switch (keysym)
+ {
+ case XK_KP_Home:
+ case XK_KP_End:
+ case XK_Left:
+ case XK_KP_Left:
+ x -= incr;
+ handled = TRUE;
+ break;
+ case XK_KP_Prior:
+ case XK_KP_Next:
+ case XK_Right:
+ case XK_KP_Right:
+ x += incr;
+ handled = TRUE;
+ break;
+ }
+
+ if (handled)
+ {
+ MetaRectangle old_rect;
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Computed new window location %d,%d due to keypress\n",
+ x, y);
+
+ if (display->grab_wireframe_active)
+ old_rect = display->grab_wireframe_rect;
+ else
+ meta_window_get_client_root_coords (window, &old_rect);
+
+ meta_window_edge_resistance_for_move (window,
+ old_rect.x,
+ old_rect.y,
+ &x,
+ &y,
+ NULL,
+ smart_snap,
+ TRUE);
+
+ if (display->grab_wireframe_active)
+ {
+ meta_window_update_wireframe (window, x, y,
+ display->grab_wireframe_rect.width,
+ display->grab_wireframe_rect.height);
+ }
+ else
+ {
+ meta_window_move (window, TRUE, x, y);
+ }
+
+ meta_window_update_keyboard_move (window);
+ }
+
+ return handled;
+}
+
+static gboolean
+process_keyboard_resize_grab_op_change (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ KeySym keysym)
+{
+ gboolean handled;
+
+ handled = FALSE;
+ switch (display->grab_op)
+ {
+ case META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN:
+ switch (keysym)
+ {
+ case XK_Up:
+ case XK_KP_Up:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_N;
+ handled = TRUE;
+ break;
+ case XK_Down:
+ case XK_KP_Down:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_S;
+ handled = TRUE;
+ break;
+ case XK_Left:
+ case XK_KP_Left:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_W;
+ handled = TRUE;
+ break;
+ case XK_Right:
+ case XK_KP_Right:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_E;
+ handled = TRUE;
+ break;
+ }
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_S:
+ switch (keysym)
+ {
+ case XK_Left:
+ case XK_KP_Left:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_W;
+ handled = TRUE;
+ break;
+ case XK_Right:
+ case XK_KP_Right:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_E;
+ handled = TRUE;
+ break;
+ }
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_N:
+ switch (keysym)
+ {
+ case XK_Left:
+ case XK_KP_Left:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_W;
+ handled = TRUE;
+ break;
+ case XK_Right:
+ case XK_KP_Right:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_E;
+ handled = TRUE;
+ break;
+ }
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_W:
+ switch (keysym)
+ {
+ case XK_Up:
+ case XK_KP_Up:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_N;
+ handled = TRUE;
+ break;
+ case XK_Down:
+ case XK_KP_Down:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_S;
+ handled = TRUE;
+ break;
+ }
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_E:
+ switch (keysym)
+ {
+ case XK_Up:
+ case XK_KP_Up:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_N;
+ handled = TRUE;
+ break;
+ case XK_Down:
+ case XK_KP_Down:
+ display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_S;
+ handled = TRUE;
+ break;
+ }
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ break;
+
+ default:
+ g_assert_not_reached ();
+ break;
+ }
+
+ if (handled)
+ {
+ meta_window_update_keyboard_resize (window, TRUE);
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+static gboolean
+process_keyboard_resize_grab (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ KeySym keysym)
+{
+ gboolean handled;
+ int height_inc;
+ int width_inc;
+ int width, height;
+ gboolean smart_snap;
+ int gravity;
+
+ handled = FALSE;
+
+ /* don't care about releases, but eat them, don't end grab */
+ if (event->type == KeyRelease)
+ return TRUE;
+
+ /* don't end grab on modifier key presses */
+ if (is_modifier (display, event->xkey.keycode))
+ return TRUE;
+
+ if (keysym == XK_Escape)
+ {
+ /* End resize and restore to original state. If not in
+ * wireframe mode, we need to do a moveresize now to get the
+ * position back to the original. If we are in wireframe mode,
+ * we need to avoid moveresizing to the position of the
+ * wireframe.
+ */
+ if (!display->grab_wireframe_active)
+ meta_window_move_resize (display->grab_window,
+ TRUE,
+ display->grab_initial_window_pos.x,
+ display->grab_initial_window_pos.y,
+ display->grab_initial_window_pos.width,
+ display->grab_initial_window_pos.height);
+ else
+ display->grab_was_cancelled = TRUE;
+
+ return FALSE;
+ }
+
+ if (process_keyboard_resize_grab_op_change (display, screen, window,
+ event, keysym))
+ return TRUE;
+
+ if (display->grab_wireframe_active)
+ {
+ width = display->grab_wireframe_rect.width;
+ height = display->grab_wireframe_rect.height;
+ }
+ else
+ {
+ width = window->rect.width;
+ height = window->rect.height;
+ }
+
+ gravity = meta_resize_gravity_from_grab_op (display->grab_op);
+
+ smart_snap = (event->xkey.state & ShiftMask) != 0;
+
+#define SMALL_INCREMENT 1
+#define NORMAL_INCREMENT 10
+
+ if (smart_snap)
+ {
+ height_inc = 1;
+ width_inc = 1;
+ }
+ else if (event->xkey.state & ControlMask)
+ {
+ width_inc = SMALL_INCREMENT;
+ height_inc = SMALL_INCREMENT;
+ }
+ else
+ {
+ width_inc = NORMAL_INCREMENT;
+ height_inc = NORMAL_INCREMENT;
+ }
+
+ /* If this is a resize increment window, make the amount we resize
+ * the window by match that amount (well, unless snap resizing...)
+ */
+ if (window->size_hints.width_inc > 1)
+ width_inc = window->size_hints.width_inc;
+ if (window->size_hints.height_inc > 1)
+ height_inc = window->size_hints.height_inc;
+
+ switch (keysym)
+ {
+ case XK_Up:
+ case XK_KP_Up:
+ switch (gravity)
+ {
+ case NorthGravity:
+ case NorthWestGravity:
+ case NorthEastGravity:
+ /* Move bottom edge up */
+ height -= height_inc;
+ break;
+
+ case SouthGravity:
+ case SouthWestGravity:
+ case SouthEastGravity:
+ /* Move top edge up */
+ height += height_inc;
+ break;
+
+ case EastGravity:
+ case WestGravity:
+ case CenterGravity:
+ g_assert_not_reached ();
+ break;
+ }
+
+ handled = TRUE;
+ break;
+
+ case XK_Down:
+ case XK_KP_Down:
+ switch (gravity)
+ {
+ case NorthGravity:
+ case NorthWestGravity:
+ case NorthEastGravity:
+ /* Move bottom edge down */
+ height += height_inc;
+ break;
+
+ case SouthGravity:
+ case SouthWestGravity:
+ case SouthEastGravity:
+ /* Move top edge down */
+ height -= height_inc;
+ break;
+
+ case EastGravity:
+ case WestGravity:
+ case CenterGravity:
+ g_assert_not_reached ();
+ break;
+ }
+
+ handled = TRUE;
+ break;
+
+ case XK_Left:
+ case XK_KP_Left:
+ switch (gravity)
+ {
+ case EastGravity:
+ case SouthEastGravity:
+ case NorthEastGravity:
+ /* Move left edge left */
+ width += width_inc;
+ break;
+
+ case WestGravity:
+ case SouthWestGravity:
+ case NorthWestGravity:
+ /* Move right edge left */
+ width -= width_inc;
+ break;
+
+ case NorthGravity:
+ case SouthGravity:
+ case CenterGravity:
+ g_assert_not_reached ();
+ break;
+ }
+
+ handled = TRUE;
+ break;
+
+ case XK_Right:
+ case XK_KP_Right:
+ switch (gravity)
+ {
+ case EastGravity:
+ case SouthEastGravity:
+ case NorthEastGravity:
+ /* Move left edge right */
+ width -= width_inc;
+ break;
+
+ case WestGravity:
+ case SouthWestGravity:
+ case NorthWestGravity:
+ /* Move right edge right */
+ width += width_inc;
+ break;
+
+ case NorthGravity:
+ case SouthGravity:
+ case CenterGravity:
+ g_assert_not_reached ();
+ break;
+ }
+
+ handled = TRUE;
+ break;
+
+ default:
+ break;
+ }
+
+ /* fixup hack (just paranoia, not sure it's required) */
+ if (height < 1)
+ height = 1;
+ if (width < 1)
+ width = 1;
+
+ if (handled)
+ {
+ MetaRectangle old_rect;
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Computed new window size due to keypress: "
+ "%dx%d, gravity %s\n",
+ width, height, meta_gravity_to_string (gravity));
+
+ if (display->grab_wireframe_active)
+ old_rect = display->grab_wireframe_rect;
+ else
+ old_rect = window->rect; /* Don't actually care about x,y */
+
+ /* Do any edge resistance/snapping */
+ meta_window_edge_resistance_for_resize (window,
+ old_rect.width,
+ old_rect.height,
+ &width,
+ &height,
+ gravity,
+ NULL,
+ smart_snap,
+ TRUE);
+
+ if (display->grab_wireframe_active)
+ {
+ MetaRectangle new_position;
+ meta_rectangle_resize_with_gravity (&display->grab_wireframe_rect,
+ &new_position,
+ gravity,
+ width,
+ height);
+ meta_window_update_wireframe (window,
+ new_position.x,
+ new_position.y,
+ new_position.width,
+ new_position.height);
+ }
+ else
+ {
+ /* We don't need to update unless the specified width and height
+ * are actually different from what we had before.
+ */
+ if (window->rect.width != width || window->rect.height != height)
+ meta_window_resize_with_gravity (window,
+ TRUE,
+ width,
+ height,
+ gravity);
+ }
+ meta_window_update_keyboard_resize (window, FALSE);
+ }
+
+ return handled;
+}
+
+static gboolean
+end_keyboard_grab (MetaDisplay *display,
+ unsigned int keycode)
+{
+#ifdef HAVE_XKB
+ if (display->xkb_base_event_type > 0)
+ {
+ unsigned int primary_modifier;
+ XkbStateRec state;
+
+ primary_modifier = get_primary_modifier (display, display->grab_mask);
+
+ XkbGetState (display->xdisplay, XkbUseCoreKbd, &state);
+
+ if (!(primary_modifier & state.mods))
+ return TRUE;
+ }
+ else
+#endif
+ {
+ if (keycode_is_primary_modifier (display, keycode, display->grab_mask))
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+static gboolean
+process_tab_grab (MetaDisplay *display,
+ MetaScreen *screen,
+ XEvent *event,
+ KeySym keysym)
+{
+ MetaKeyBindingAction action;
+ gboolean popup_not_showing;
+ gboolean backward;
+ gboolean key_used;
+ Window prev_xwindow;
+ MetaWindow *prev_window;
+
+ if (screen != display->grab_screen)
+ return FALSE;
+
+ g_return_val_if_fail (screen->tab_popup != NULL, FALSE);
+
+ if (event->type == KeyRelease &&
+ end_keyboard_grab (display, event->xkey.keycode))
+ {
+ /* We're done, move to the new window. */
+ Window target_xwindow;
+ MetaWindow *target_window;
+
+ target_xwindow =
+ (Window) meta_ui_tab_popup_get_selected (screen->tab_popup);
+ target_window =
+ meta_display_lookup_x_window (display, target_xwindow);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Ending tab operation, primary modifier released\n");
+
+ if (target_window)
+ {
+ target_window->tab_unminimized = FALSE;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Activating target window\n");
+
+ meta_topic (META_DEBUG_FOCUS, "Activating %s due to tab popup "
+ "selection and turning mouse_mode off\n",
+ target_window->desc);
+ display->mouse_mode = FALSE;
+ meta_window_activate (target_window, event->xkey.time);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Ending grab early so we can focus the target window\n");
+ meta_display_end_grab_op (display, event->xkey.time);
+
+ return TRUE; /* we already ended the grab */
+ }
+
+ return FALSE; /* end grab */
+ }
+
+ /* don't care about other releases, but eat them, don't end grab */
+ if (event->type == KeyRelease)
+ return TRUE;
+
+ /* don't end grab on modifier key presses */
+ if (is_modifier (display, event->xkey.keycode))
+ return TRUE;
+
+ prev_xwindow = (Window) meta_ui_tab_popup_get_selected (screen->tab_popup);
+ prev_window = meta_display_lookup_x_window (display, prev_xwindow);
+ action = display_get_keybinding_action (display,
+ keysym,
+ event->xkey.keycode,
+ display->grab_mask);
+
+ /* Cancel when alt-Escape is pressed during using alt-Tab, and vice
+ * versa.
+ */
+ switch (action)
+ {
+ case META_KEYBINDING_ACTION_CYCLE_PANELS:
+ case META_KEYBINDING_ACTION_CYCLE_WINDOWS:
+ case META_KEYBINDING_ACTION_CYCLE_PANELS_BACKWARD:
+ case META_KEYBINDING_ACTION_CYCLE_WINDOWS_BACKWARD:
+ /* CYCLE_* are traditionally Escape-based actions,
+ * and should cancel traditionally Tab-based ones.
+ */
+ switch (display->grab_op)
+ {
+ case META_GRAB_OP_KEYBOARD_ESCAPING_NORMAL:
+ case META_GRAB_OP_KEYBOARD_ESCAPING_DOCK:
+ /* carry on */
+ break;
+ default:
+ return FALSE;
+ }
+ break;
+ case META_KEYBINDING_ACTION_SWITCH_PANELS:
+ case META_KEYBINDING_ACTION_SWITCH_WINDOWS:
+ case META_KEYBINDING_ACTION_SWITCH_PANELS_BACKWARD:
+ case META_KEYBINDING_ACTION_SWITCH_WINDOWS_BACKWARD:
+ /* SWITCH_* are traditionally Tab-based actions,
+ * and should cancel traditionally Escape-based ones.
+ */
+ switch (display->grab_op)
+ {
+ case META_GRAB_OP_KEYBOARD_TABBING_NORMAL:
+ case META_GRAB_OP_KEYBOARD_TABBING_DOCK:
+ /* carry on */
+ break;
+ default:
+ /* Also, we must re-lower and re-minimize whatever window
+ * we'd previously raised and unminimized.
+ */
+ meta_stack_set_positions (screen->stack,
+ screen->display->grab_old_window_stacking);
+ if (prev_window && prev_window->tab_unminimized)
+ {
+ meta_window_minimize (prev_window);
+ prev_window->tab_unminimized = FALSE;
+ }
+ return FALSE;
+ }
+ break;
+ case META_KEYBINDING_ACTION_CYCLE_GROUP:
+ case META_KEYBINDING_ACTION_CYCLE_GROUP_BACKWARD:
+ case META_KEYBINDING_ACTION_SWITCH_GROUP:
+ case META_KEYBINDING_ACTION_SWITCH_GROUP_BACKWARD:
+ switch (display->grab_op)
+ {
+ case META_GRAB_OP_KEYBOARD_ESCAPING_GROUP:
+ case META_GRAB_OP_KEYBOARD_TABBING_GROUP:
+ /* carry on */
+ break;
+ default:
+ return FALSE;
+ }
+
+ break;
+ default:
+ break;
+ }
+
+ /* !! TO HERE !!
+ * alt-f6 during alt-{Tab,Escape} does not end the grab
+ * but does change the grab op (and redraws the window,
+ * of course).
+ * See _{SWITCH,CYCLE}_GROUP.@@@
+ */
+
+ popup_not_showing = FALSE;
+ key_used = FALSE;
+ backward = FALSE;
+
+ switch (action)
+ {
+ case META_KEYBINDING_ACTION_CYCLE_PANELS:
+ case META_KEYBINDING_ACTION_CYCLE_WINDOWS:
+ case META_KEYBINDING_ACTION_CYCLE_GROUP:
+ popup_not_showing = TRUE;
+ key_used = TRUE;
+ break;
+ case META_KEYBINDING_ACTION_CYCLE_PANELS_BACKWARD:
+ case META_KEYBINDING_ACTION_CYCLE_WINDOWS_BACKWARD:
+ case META_KEYBINDING_ACTION_CYCLE_GROUP_BACKWARD:
+ popup_not_showing = TRUE;
+ key_used = TRUE;
+ backward = TRUE;
+ break;
+ case META_KEYBINDING_ACTION_SWITCH_PANELS:
+ case META_KEYBINDING_ACTION_SWITCH_WINDOWS:
+ case META_KEYBINDING_ACTION_SWITCH_GROUP:
+ key_used = TRUE;
+ break;
+ case META_KEYBINDING_ACTION_SWITCH_PANELS_BACKWARD:
+ case META_KEYBINDING_ACTION_SWITCH_WINDOWS_BACKWARD:
+ case META_KEYBINDING_ACTION_SWITCH_GROUP_BACKWARD:
+ key_used = TRUE;
+ backward = TRUE;
+ break;
+ default:
+ break;
+ }
+
+ if (key_used)
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Key pressed, moving tab focus in popup\n");
+
+ if (event->xkey.state & ShiftMask)
+ backward = !backward;
+
+ if (backward)
+ meta_ui_tab_popup_backward (screen->tab_popup);
+ else
+ meta_ui_tab_popup_forward (screen->tab_popup);
+
+ if (popup_not_showing)
+ {
+ /* We can't actually change window focus, due to the grab.
+ * but raise the window.
+ */
+ Window target_xwindow;
+ MetaWindow *target_window;
+
+ meta_stack_set_positions (screen->stack,
+ display->grab_old_window_stacking);
+
+ target_xwindow =
+ (Window) meta_ui_tab_popup_get_selected (screen->tab_popup);
+ target_window =
+ meta_display_lookup_x_window (display, target_xwindow);
+
+ if (prev_window && prev_window->tab_unminimized)
+ {
+ prev_window->tab_unminimized = FALSE;
+ meta_window_minimize (prev_window);
+ }
+
+ if (target_window)
+ {
+ meta_window_raise (target_window);
+ target_window->tab_unminimized = target_window->minimized;
+ meta_window_unminimize (target_window);
+ }
+ }
+ }
+ else
+ {
+ /* end grab */
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Ending tabbing/cycling, uninteresting key pressed\n");
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Syncing to old stack positions.\n");
+ meta_stack_set_positions (screen->stack,
+ screen->display->grab_old_window_stacking);
+
+ if (prev_window && prev_window->tab_unminimized)
+ {
+ meta_window_minimize (prev_window);
+ prev_window->tab_unminimized = FALSE;
+ }
+ }
+
+ return key_used;
+}
+
+static void
+handle_switch_to_workspace (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *event_window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ gint which = binding->handler->data;
+ MetaWorkspace *workspace;
+
+ if (which < 0)
+ {
+ /* Negative workspace numbers are directions with respect to the
+ * current workspace. While we could insta-switch here by setting
+ * workspace to the result of meta_workspace_get_neighbor(), when
+ * people request a workspace switch to the left or right via
+ * the keyboard, they actually want a tab popup. So we should
+ * go there instead.
+ *
+ * Note that we're the only caller of that function, so perhaps
+ * we should merge with it.
+ */
+ handle_workspace_switch (display, screen, event_window, event, binding);
+ return;
+ }
+
+ workspace = meta_screen_get_workspace_by_index (screen, which);
+
+ if (workspace)
+ {
+ meta_workspace_activate (workspace, event->xkey.time);
+ }
+ else
+ {
+ /* We could offer to create it I suppose */
+ }
+}
+
+static void
+error_on_command (int command_index,
+ const char *command,
+ const char *message,
+ int screen_number,
+ guint32 timestamp)
+{
+ if (command_index < 0)
+ meta_warning ("Error on terminal command \"%s\": %s\n", command, message);
+ else
+ meta_warning ("Error on command %d \"%s\": %s\n",
+ command_index, command, message);
+
+ /*
+ marco-dialog said:
+
+ FIXME offer to change the value of the command's mateconf key
+ */
+
+ if (command && strcmp(command, "")!=0)
+ {
+ char *text = g_strdup_printf (
+ /* Displayed when a keybinding which is
+ * supposed to launch a program fails.
+ */
+ _("There was an error running "
+ "<tt>%s</tt>:\n\n%s"),
+ command,
+ message);
+
+ meta_show_dialog ("--error",
+ text,
+ NULL,
+ screen_number,
+ NULL, NULL, 0,
+ NULL, NULL);
+
+ g_free (text);
+
+ }
+ else
+ {
+ meta_show_dialog ("--error",
+ message,
+ NULL,
+ screen_number,
+ NULL, NULL, 0,
+ NULL, NULL);
+ }
+}
+
+static void
+set_display_setup_func (void *data)
+{
+ const char *screen_name = data;
+ char *full;
+
+ full = g_strdup_printf ("DISPLAY=%s", screen_name);
+
+ putenv (full);
+
+ /* do not free full, because putenv is lame */
+}
+
+static gboolean
+meta_spawn_command_line_async_on_screen (const gchar *command_line,
+ MetaScreen *screen,
+ GError **error)
+{
+ gboolean retval;
+ gchar **argv = NULL;
+
+ g_return_val_if_fail (command_line != NULL, FALSE);
+
+ if (!g_shell_parse_argv (command_line,
+ NULL, &argv,
+ error))
+ return FALSE;
+
+ retval = g_spawn_async (NULL,
+ argv,
+ NULL,
+ G_SPAWN_SEARCH_PATH,
+ set_display_setup_func,
+ screen->screen_name,
+ NULL,
+ error);
+ g_strfreev (argv);
+
+ return retval;
+}
+
+
+static void
+handle_run_command (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ gint which = binding->handler->data;
+ const char *command;
+ GError *err;
+
+ command = meta_prefs_get_command (which);
+
+ if (command == NULL)
+ {
+ char *s;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "No command %d to run in response to keybinding press\n",
+ which);
+
+ s = g_strdup_printf (_("No command %d has been defined.\n"),
+ which + 1);
+ error_on_command (which, NULL, s, screen->number, event->xkey.time);
+ g_free (s);
+
+ return;
+ }
+
+ err = NULL;
+ if (!meta_spawn_command_line_async_on_screen (command, screen, &err))
+ {
+ error_on_command (which, command, err->message, screen->number, event->xkey.time);
+
+ g_error_free (err);
+ }
+}
+
+
+static void
+handle_maximize_vertically (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->has_resize_func)
+ {
+ if (window->maximized_vertically)
+ meta_window_unmaximize (window, META_MAXIMIZE_VERTICAL);
+ else
+ meta_window_maximize (window, META_MAXIMIZE_VERTICAL);
+ }
+}
+
+static void
+handle_maximize_horizontally (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->has_resize_func)
+ {
+ if (window->maximized_horizontally)
+ meta_window_unmaximize (window, META_MAXIMIZE_HORIZONTAL);
+ else
+ meta_window_maximize (window, META_MAXIMIZE_HORIZONTAL);
+ }
+}
+
+/* Move a window to a corner; to_bottom/to_right are FALSE for the
+ * top or left edge, or TRUE for the bottom/right edge. xchange/ychange
+ * are FALSE if that dimension is not to be changed, TRUE otherwise.
+ * Together they describe which of the four corners, or four sides,
+ * is desired.
+ */
+static void
+handle_move_to_corner_backend (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ gboolean xchange,
+ gboolean ychange,
+ gboolean to_right,
+ gboolean to_bottom)
+{
+ MetaRectangle work_area;
+ MetaRectangle outer;
+ int orig_x, orig_y;
+ int new_x, new_y;
+ int frame_width, frame_height;
+
+ meta_window_get_work_area_all_xineramas (window, &work_area);
+ meta_window_get_outer_rect (window, &outer);
+ meta_window_get_position (window, &orig_x, &orig_y);
+
+ frame_width = (window->frame ? window->frame->child_x : 0);
+ frame_height = (window->frame ? window->frame->child_y : 0);
+
+ if (xchange) {
+ new_x = work_area.x + (to_right ?
+ (work_area.width + frame_width) - outer.width :
+ 0);
+ } else {
+ new_x = orig_x;
+ }
+
+ if (ychange) {
+ new_y = work_area.y + (to_bottom ?
+ (work_area.height + frame_height) - outer.height :
+ 0);
+ } else {
+ new_y = orig_y;
+ }
+
+ meta_window_move_resize (window,
+ FALSE,
+ new_x,
+ new_y,
+ window->rect.width,
+ window->rect.height);
+}
+
+static void
+handle_move_to_corner_nw (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ handle_move_to_corner_backend (display, screen, window, TRUE, TRUE, FALSE, FALSE);
+}
+
+static void
+handle_move_to_corner_ne (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ handle_move_to_corner_backend (display, screen, window, TRUE, TRUE, TRUE, FALSE);
+}
+
+static void
+handle_move_to_corner_sw (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ handle_move_to_corner_backend (display, screen, window, TRUE, TRUE, FALSE, TRUE);
+}
+
+static void
+handle_move_to_corner_se (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ handle_move_to_corner_backend (display, screen, window, TRUE, TRUE, TRUE, TRUE);
+}
+
+static void
+handle_move_to_side_n (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ handle_move_to_corner_backend (display, screen, window, FALSE, TRUE, FALSE, FALSE);
+}
+
+static void
+handle_move_to_side_s (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ handle_move_to_corner_backend (display, screen, window, FALSE, TRUE, FALSE, TRUE);
+}
+
+static void
+handle_move_to_side_e (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ handle_move_to_corner_backend (display, screen, window, TRUE, FALSE, TRUE, FALSE);
+}
+
+static void
+handle_move_to_side_w (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ handle_move_to_corner_backend (display, screen, window, TRUE, FALSE, FALSE, FALSE);
+}
+
+static void
+handle_move_to_center (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ MetaRectangle work_area;
+ MetaRectangle outer;
+ int orig_x, orig_y;
+ int frame_width, frame_height;
+
+ meta_window_get_work_area_all_xineramas (window, &work_area);
+ meta_window_get_outer_rect (window, &outer);
+ meta_window_get_position (window, &orig_x, &orig_y);
+
+ frame_width = (window->frame ? window->frame->child_x : 0);
+ frame_height = (window->frame ? window->frame->child_y : 0);
+
+ meta_window_move_resize (window,
+ TRUE,
+ work_area.x + (work_area.width +frame_width -outer.width )/2,
+ work_area.y + (work_area.height+frame_height-outer.height)/2,
+ window->rect.width,
+ window->rect.height);
+}
+
+static gboolean
+process_workspace_switch_grab (MetaDisplay *display,
+ MetaScreen *screen,
+ XEvent *event,
+ KeySym keysym)
+{
+ MetaWorkspace *workspace;
+
+ if (screen != display->grab_screen)
+ return FALSE;
+
+ g_return_val_if_fail (screen->tab_popup != NULL, FALSE);
+
+ if (event->type == KeyRelease &&
+ end_keyboard_grab (display, event->xkey.keycode))
+ {
+ /* We're done, move to the new workspace. */
+ MetaWorkspace *target_workspace;
+
+ target_workspace =
+ (MetaWorkspace *) meta_ui_tab_popup_get_selected (screen->tab_popup);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Ending workspace tab operation, primary modifier released\n");
+
+ if (target_workspace == screen->active_workspace)
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Ending grab so we can focus on the target workspace\n");
+ meta_display_end_grab_op (display, event->xkey.time);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Focusing default window on target workspace\n");
+
+ meta_workspace_focus_default_window (target_workspace,
+ NULL,
+ event->xkey.time);
+
+ return TRUE; /* we already ended the grab */
+ }
+
+ /* Workspace switching should have already occurred on KeyPress */
+ meta_warning ("target_workspace != active_workspace. Some other event must have occurred.\n");
+
+ return FALSE; /* end grab */
+ }
+
+ /* don't care about other releases, but eat them, don't end grab */
+ if (event->type == KeyRelease)
+ return TRUE;
+
+ /* don't end grab on modifier key presses */
+ if (is_modifier (display, event->xkey.keycode))
+ return TRUE;
+
+ /* select the next workspace in the tabpopup */
+ workspace =
+ (MetaWorkspace *) meta_ui_tab_popup_get_selected (screen->tab_popup);
+
+ if (workspace)
+ {
+ MetaWorkspace *target_workspace;
+ MetaKeyBindingAction action;
+
+ action = display_get_keybinding_action (display,
+ keysym,
+ event->xkey.keycode,
+ display->grab_mask);
+
+ switch (action)
+ {
+ case META_KEYBINDING_ACTION_WORKSPACE_UP:
+ target_workspace = meta_workspace_get_neighbor (workspace,
+ META_MOTION_UP);
+ break;
+
+ case META_KEYBINDING_ACTION_WORKSPACE_DOWN:
+ target_workspace = meta_workspace_get_neighbor (workspace,
+ META_MOTION_DOWN);
+ break;
+
+ case META_KEYBINDING_ACTION_WORKSPACE_LEFT:
+ target_workspace = meta_workspace_get_neighbor (workspace,
+ META_MOTION_LEFT);
+ break;
+
+ case META_KEYBINDING_ACTION_WORKSPACE_RIGHT:
+ target_workspace = meta_workspace_get_neighbor (workspace,
+ META_MOTION_RIGHT);
+ break;
+
+ default:
+ target_workspace = NULL;
+ break;
+ }
+
+ if (target_workspace)
+ {
+ meta_ui_tab_popup_select (screen->tab_popup,
+ (MetaTabEntryKey) target_workspace);
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Tab key pressed, moving tab focus in popup\n");
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Activating target workspace\n");
+
+ meta_workspace_activate (target_workspace, event->xkey.time);
+
+ return TRUE; /* we already ended the grab */
+ }
+ }
+
+ /* end grab */
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Ending workspace tabbing & focusing default window; uninteresting key pressed\n");
+ workspace =
+ (MetaWorkspace *) meta_ui_tab_popup_get_selected (screen->tab_popup);
+ meta_workspace_focus_default_window (workspace, NULL, event->xkey.time);
+ return FALSE;
+}
+
+static void
+handle_show_desktop (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (screen->active_workspace->showing_desktop)
+ {
+ meta_screen_unshow_desktop (screen);
+ meta_workspace_focus_default_window (screen->active_workspace,
+ NULL,
+ event->xkey.time);
+ }
+ else
+ meta_screen_show_desktop (screen, event->xkey.time);
+}
+
+static void
+handle_panel (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ MetaKeyBindingAction action = binding->handler->data;
+ Atom action_atom;
+ XClientMessageEvent ev;
+
+ action_atom = None;
+ switch (action)
+ {
+ /* FIXME: The numbers are wrong */
+ case META_KEYBINDING_ACTION_PANEL_MAIN_MENU:
+ action_atom = display->atom__MATE_PANEL_ACTION_MAIN_MENU;
+ break;
+ case META_KEYBINDING_ACTION_PANEL_RUN_DIALOG:
+ action_atom = display->atom__MATE_PANEL_ACTION_RUN_DIALOG;
+ break;
+ default:
+ return;
+ }
+
+ ev.type = ClientMessage;
+ ev.window = screen->xroot;
+ ev.message_type = display->atom__MATE_PANEL_ACTION;
+ ev.format = 32;
+ ev.data.l[0] = action_atom;
+ ev.data.l[1] = event->xkey.time;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Sending panel message with timestamp %lu, and turning mouse_mode "
+ "off due to keybinding press\n", event->xkey.time);
+ display->mouse_mode = FALSE;
+
+ meta_error_trap_push (display);
+
+ /* Release the grab for the panel before sending the event */
+ XUngrabKeyboard (display->xdisplay, event->xkey.time);
+
+ XSendEvent (display->xdisplay,
+ screen->xroot,
+ False,
+ StructureNotifyMask,
+ (XEvent*) &ev);
+
+ meta_error_trap_pop (display, FALSE);
+}
+
+static void
+handle_activate_window_menu (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *event_window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (display->focus_window)
+ {
+ int x, y;
+
+ meta_window_get_position (display->focus_window,
+ &x, &y);
+
+ if (meta_ui_get_direction() == META_UI_DIRECTION_RTL)
+ x += display->focus_window->rect.width;
+
+ meta_window_show_menu (display->focus_window,
+ x, y,
+ 0,
+ event->xkey.time);
+ }
+}
+
+static MetaGrabOp
+tab_op_from_tab_type (MetaTabList type)
+{
+ switch (type)
+ {
+ case META_TAB_LIST_NORMAL:
+ return META_GRAB_OP_KEYBOARD_TABBING_NORMAL;
+ case META_TAB_LIST_DOCKS:
+ return META_GRAB_OP_KEYBOARD_TABBING_DOCK;
+ case META_TAB_LIST_GROUP:
+ return META_GRAB_OP_KEYBOARD_TABBING_GROUP;
+ }
+
+ g_assert_not_reached ();
+
+ return 0;
+}
+
+static MetaGrabOp
+cycle_op_from_tab_type (MetaTabList type)
+{
+ switch (type)
+ {
+ case META_TAB_LIST_NORMAL:
+ return META_GRAB_OP_KEYBOARD_ESCAPING_NORMAL;
+ case META_TAB_LIST_DOCKS:
+ return META_GRAB_OP_KEYBOARD_ESCAPING_DOCK;
+ case META_TAB_LIST_GROUP:
+ return META_GRAB_OP_KEYBOARD_ESCAPING_GROUP;
+ }
+
+ g_assert_not_reached ();
+
+ return 0;
+}
+
+static void
+do_choose_window (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *event_window,
+ XEvent *event,
+ MetaKeyBinding *binding,
+ gboolean backward,
+ gboolean show_popup)
+{
+ MetaTabList type = binding->handler->data;
+ MetaWindow *initial_selection;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Tab list = %u show_popup = %d\n", type, show_popup);
+
+ /* reverse direction if shift is down */
+ if (event->xkey.state & ShiftMask)
+ backward = !backward;
+
+ initial_selection = meta_display_get_tab_next (display,
+ type,
+ screen,
+ screen->active_workspace,
+ NULL,
+ backward);
+
+ /* Note that focus_window may not be in the tab chain, but it's OK */
+ if (initial_selection == NULL)
+ initial_selection = meta_display_get_tab_current (display,
+ type, screen,
+ screen->active_workspace);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Initially selecting window %s\n",
+ initial_selection ? initial_selection->desc : "(none)");
+
+ if (initial_selection != NULL)
+ {
+ if (binding->mask == 0)
+ {
+ /* If no modifiers, we can't do the "hold down modifier to keep
+ * moving" thing, so we just instaswitch by one window.
+ */
+ meta_topic (META_DEBUG_FOCUS,
+ "Activating %s and turning off mouse_mode due to "
+ "switch/cycle windows with no modifiers\n",
+ initial_selection->desc);
+ display->mouse_mode = FALSE;
+ meta_window_activate (initial_selection, event->xkey.time);
+ }
+ else if (meta_display_begin_grab_op (display,
+ screen,
+ NULL,
+ show_popup ?
+ tab_op_from_tab_type (type) :
+ cycle_op_from_tab_type (type),
+ FALSE,
+ FALSE,
+ 0,
+ binding->mask,
+ event->xkey.time,
+ 0, 0))
+ {
+ if (!primary_modifier_still_pressed (display,
+ binding->mask))
+ {
+ /* This handles a race where modifier might be released
+ * before we establish the grab. must end grab
+ * prior to trying to focus a window.
+ */
+ meta_topic (META_DEBUG_FOCUS,
+ "Ending grab, activating %s, and turning off "
+ "mouse_mode due to switch/cycle windows where "
+ "modifier was released prior to grab\n",
+ initial_selection->desc);
+ meta_display_end_grab_op (display, event->xkey.time);
+ display->mouse_mode = FALSE;
+ meta_window_activate (initial_selection, event->xkey.time);
+ }
+ else
+ {
+ meta_ui_tab_popup_select (screen->tab_popup,
+ (MetaTabEntryKey) initial_selection->xwindow);
+
+ if (show_popup)
+ meta_ui_tab_popup_set_showing (screen->tab_popup,
+ TRUE);
+ else
+ {
+ meta_window_raise (initial_selection);
+ initial_selection->tab_unminimized =
+ initial_selection->minimized;
+ meta_window_unminimize (initial_selection);
+ }
+ }
+ }
+ }
+}
+
+static void
+handle_switch (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *event_window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ gint backwards = binding->handler->flags & BINDING_IS_REVERSED;
+
+ do_choose_window (display, screen, event_window, event, binding,
+ backwards, TRUE);
+}
+
+static void
+handle_cycle (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *event_window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ gint backwards = binding->handler->flags & BINDING_IS_REVERSED;
+
+ do_choose_window (display, screen, event_window, event, binding,
+ backwards, FALSE);
+}
+
+
+static void
+handle_toggle_fullscreen (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->fullscreen)
+ meta_window_unmake_fullscreen (window);
+ else if (window->has_fullscreen_func)
+ meta_window_make_fullscreen (window);
+}
+
+static void
+handle_toggle_above (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->wm_state_above)
+ meta_window_unmake_above (window);
+ else
+ meta_window_make_above (window);
+}
+
+static void
+handle_toggle_maximized (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (META_WINDOW_MAXIMIZED (window))
+ meta_window_unmaximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+ else if (window->has_maximize_func)
+ meta_window_maximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+}
+
+static void
+handle_maximize (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->has_maximize_func)
+ meta_window_maximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+}
+
+static void
+handle_unmaximize (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->maximized_vertically || window->maximized_horizontally)
+ meta_window_unmaximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+}
+
+static void
+handle_toggle_shaded (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->shaded)
+ meta_window_unshade (window, event->xkey.time);
+ else if (window->has_shade_func)
+ meta_window_shade (window, event->xkey.time);
+}
+
+static void
+handle_close (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->has_close_func)
+ meta_window_delete (window, event->xkey.time);
+}
+
+static void
+handle_minimize (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->has_minimize_func)
+ meta_window_minimize (window);
+}
+
+static void
+handle_begin_move (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->has_move_func)
+ {
+ meta_window_begin_grab_op (window,
+ META_GRAB_OP_KEYBOARD_MOVING,
+ FALSE,
+ event->xkey.time);
+ }
+}
+
+static void
+handle_begin_resize (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->has_resize_func)
+ {
+ meta_window_begin_grab_op (window,
+ META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN,
+ FALSE,
+ event->xkey.time);
+ }
+}
+
+static void
+handle_toggle_on_all_workspaces (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ if (window->on_all_workspaces)
+ meta_window_unstick (window);
+ else
+ meta_window_stick (window);
+}
+
+static void
+handle_move_to_workspace (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ gint which = binding->handler->data;
+ gboolean flip = (which < 0);
+ MetaWorkspace *workspace;
+
+ /* If which is zero or positive, it's a workspace number, and the window
+ * should move to the workspace with that number.
+ *
+ * However, if it's negative, it's a direction with respect to the current
+ * position; it's expressed as a member of the MetaMotionDirection enum,
+ * all of whose members are negative. Such a change is called a flip.
+ */
+
+ if (window->always_sticky)
+ return;
+
+ workspace = NULL;
+ if (flip)
+ {
+ workspace = meta_workspace_get_neighbor (screen->active_workspace,
+ which);
+ }
+ else
+ {
+ workspace = meta_screen_get_workspace_by_index (screen, which);
+ }
+
+ if (workspace)
+ {
+ /* Activate second, so the window is never unmapped */
+ meta_window_change_workspace (window, workspace);
+ if (flip)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Resetting mouse_mode to FALSE due to "
+ "handle_move_to_workspace() call with flip set.\n");
+ workspace->screen->display->mouse_mode = FALSE;
+ meta_workspace_activate_with_focus (workspace,
+ window,
+ event->xkey.time);
+ }
+ }
+ else
+ {
+ /* We could offer to create it I suppose */
+ }
+}
+
+static void
+handle_raise_or_lower (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ /* Get window at pointer */
+
+ MetaWindow *above = NULL;
+
+ /* Check if top */
+ if (meta_stack_get_top (window->screen->stack) == window)
+ {
+ meta_window_lower (window);
+ return;
+ }
+
+ /* else check if windows in same layer are intersecting it */
+
+ above = meta_stack_get_above (window->screen->stack, window, TRUE);
+
+ while (above)
+ {
+ MetaRectangle tmp, win_rect, above_rect;
+
+ if (above->mapped)
+ {
+ meta_window_get_outer_rect (window, &win_rect);
+ meta_window_get_outer_rect (above, &above_rect);
+
+ /* Check if obscured */
+ if (meta_rectangle_intersect (&win_rect, &above_rect, &tmp))
+ {
+ meta_window_raise (window);
+ return;
+ }
+ }
+
+ above = meta_stack_get_above (window->screen->stack, above, TRUE);
+ }
+
+ /* window is not obscured */
+ meta_window_lower (window);
+}
+
+static void
+handle_raise (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ meta_window_raise (window);
+}
+
+static void
+handle_lower (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ meta_window_lower (window);
+}
+
+static void
+handle_workspace_switch (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ gint motion = binding->handler->data;
+ unsigned int grab_mask;
+
+ g_assert (motion < 0);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Starting tab between workspaces, showing popup\n");
+
+ /* FIXME should we use binding->mask ? */
+ grab_mask = event->xkey.state & ~(display->ignored_modifier_mask);
+
+ if (meta_display_begin_grab_op (display,
+ screen,
+ NULL,
+ META_GRAB_OP_KEYBOARD_WORKSPACE_SWITCHING,
+ FALSE,
+ FALSE,
+ 0,
+ grab_mask,
+ event->xkey.time,
+ 0, 0))
+ {
+ MetaWorkspace *next;
+ gboolean grabbed_before_release;
+
+ next = meta_workspace_get_neighbor (screen->active_workspace, motion);
+ g_assert (next);
+
+ grabbed_before_release = primary_modifier_still_pressed (display, grab_mask);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Activating target workspace\n");
+
+ if (!grabbed_before_release)
+ {
+ /* end the grab right away, modifier possibly released
+ * before we could establish the grab and receive the
+ * release event. Must end grab before we can switch
+ * spaces.
+ */
+ meta_display_end_grab_op (display, event->xkey.time);
+ }
+
+ meta_workspace_activate (next, event->xkey.time);
+
+ if (grabbed_before_release)
+ {
+ meta_ui_tab_popup_select (screen->tab_popup, (MetaTabEntryKey) next);
+
+ /* only after selecting proper space */
+ meta_ui_tab_popup_set_showing (screen->tab_popup, TRUE);
+ }
+ }
+}
+
+static void
+handle_set_spew_mark (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ meta_verbose ("-- MARK MARK MARK MARK --\n");
+}
+
+void
+meta_set_keybindings_disabled (gboolean setting)
+{
+ all_bindings_disabled = setting;
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Keybindings %s\n", all_bindings_disabled ? "disabled" : "enabled");
+}
+
+static void
+handle_run_terminal (MetaDisplay *display,
+ MetaScreen *screen,
+ MetaWindow *window,
+ XEvent *event,
+ MetaKeyBinding *binding)
+{
+ const char *command;
+ GError *err;
+
+ command = meta_prefs_get_terminal_command ();
+
+ if (command == NULL)
+ {
+ char *s;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "No terminal command to run in response to "
+ "keybinding press\n");
+
+ s = g_strdup_printf (_("No terminal command has been defined.\n"));
+ error_on_command (-1, NULL, s, screen->number, event->xkey.time);
+ g_free (s);
+
+ return;
+ }
+
+ err = NULL;
+ if (!meta_spawn_command_line_async_on_screen (command, screen, &err))
+ {
+ error_on_command (-1, command, err->message, screen->number,
+ event->xkey.time);
+
+ g_error_free (err);
+ }
+}
diff --git a/src/core/keybindings.h b/src/core/keybindings.h
new file mode 100644
index 00000000..618520b4
--- /dev/null
+++ b/src/core/keybindings.h
@@ -0,0 +1,60 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file keybindings.h Grab and ungrab keys, and process the key events
+ *
+ * Performs global X grabs on the keys we need to be told about, like
+ * the one to close a window. It also deals with incoming key events.
+ */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_KEYBINDINGS_H
+#define META_KEYBINDINGS_H
+
+#include "display-private.h"
+#include "window.h"
+
+void meta_display_init_keys (MetaDisplay *display);
+void meta_display_shutdown_keys (MetaDisplay *display);
+void meta_screen_grab_keys (MetaScreen *screen);
+void meta_screen_ungrab_keys (MetaScreen *screen);
+gboolean meta_screen_grab_all_keys (MetaScreen *screen,
+ guint32 timestamp);
+void meta_screen_ungrab_all_keys (MetaScreen *screen,
+ guint32 timestamp);
+void meta_window_grab_keys (MetaWindow *window);
+void meta_window_ungrab_keys (MetaWindow *window);
+gboolean meta_window_grab_all_keys (MetaWindow *window,
+ guint32 timestamp);
+void meta_window_ungrab_all_keys (MetaWindow *window,
+ guint32 timestamp);
+void meta_display_process_key_event (MetaDisplay *display,
+ MetaWindow *window,
+ XEvent *event);
+void meta_set_keybindings_disabled (gboolean setting);
+void meta_display_process_mapping_event (MetaDisplay *display,
+ XEvent *event);
+
+#endif
+
+
+
+
diff --git a/src/core/main.c b/src/core/main.c
new file mode 100644
index 00000000..38c69b0a
--- /dev/null
+++ b/src/core/main.c
@@ -0,0 +1,673 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco main() */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+/**
+ * \file
+ * Program startup.
+ * Functions which parse the command-line arguments, create the display,
+ * kick everything off and then close down Marco when it's time to go.
+ */
+
+/**
+ * \mainpage
+ * Marco - a boring window manager for the adult in you
+ *
+ * Many window managers are like Marshmallow Froot Loops; Marco
+ * is like Cheerios.
+ *
+ * The best way to get a handle on how the whole system fits together
+ * is discussed in doc/code-overview.txt; if you're looking for functions
+ * to investigate, read main(), meta_display_open(), and event_callback().
+ */
+
+#define _GNU_SOURCE
+#define _SVID_SOURCE /* for putenv() and some signal-related functions */
+
+#include <config.h>
+#include "main.h"
+#include "util.h"
+#include "display-private.h"
+#include "errors.h"
+#include "ui.h"
+#include "session.h"
+#include "prefs.h"
+
+#include <glib-object.h>
+#include <glib/gprintf.h>
+
+#include <stdlib.h>
+#include <sys/types.h>
+#include <wait.h>
+#include <stdio.h>
+#include <string.h>
+#include <signal.h>
+#include <unistd.h>
+#include <errno.h>
+#include <fcntl.h>
+#include <locale.h>
+#include <time.h>
+#include <unistd.h>
+
+/**
+ * The exit code we'll return to our parent process when we eventually die.
+ */
+static MetaExitCode meta_exit_code = META_EXIT_SUCCESS;
+
+/**
+ * Handle on the main loop, so that we have an easy way of shutting Marco
+ * down.
+ */
+static GMainLoop *meta_main_loop = NULL;
+
+/**
+ * If set, Marco will spawn an identical copy of itself immediately
+ * before quitting.
+ */
+static gboolean meta_restart_after_quit = FALSE;
+
+static void prefs_changed_callback (MetaPreference pref,
+ gpointer data);
+
+/**
+ * Prints log messages. If Marco was compiled with backtrace support,
+ * also prints a backtrace (see meta_print_backtrace()).
+ *
+ * \param log_domain the domain the error occurred in (we ignore this)
+ * \param log_level the log level so that we can filter out less
+ * important messages
+ * \param message the message to log
+ * \param user_data arbitrary data (we ignore this)
+ */
+static void
+log_handler (const gchar *log_domain,
+ GLogLevelFlags log_level,
+ const gchar *message,
+ gpointer user_data)
+{
+ meta_warning ("Log level %d: %s\n", log_level, message);
+ meta_print_backtrace ();
+}
+
+/**
+ * Prints the version notice. This is shown when Marco is called
+ * with the --version switch.
+ */
+static void
+version (void)
+{
+ const int latest_year = 2009;
+ char yearbuffer[256];
+ GDate date;
+
+ /* this is all so the string to translate stays constant.
+ * see how much we love the translators.
+ */
+ g_date_set_dmy (&date, 1, G_DATE_JANUARY, latest_year);
+ if (g_date_strftime (yearbuffer, sizeof (yearbuffer), "%Y", &date)==0)
+ /* didn't work? fall back to decimal representation */
+ g_sprintf (yearbuffer, "%d", latest_year);
+
+ g_print (_("marco %s\n"
+ "Copyright (C) 2001-%s Havoc Pennington, Red Hat, Inc., and others\n"
+ "This is free software; see the source for copying conditions.\n"
+ "There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"),
+ VERSION, yearbuffer);
+ exit (0);
+}
+
+/**
+ * Prints a list of which configure script options were used to
+ * build this copy of Marco. This is actually always called
+ * on startup, but it's all no-op unless we're in verbose mode
+ * (see meta_set_verbose).
+ */
+static void
+meta_print_compilation_info (void)
+{
+#ifdef HAVE_SHAPE
+ meta_verbose ("Compiled with shape extension\n");
+#else
+ meta_verbose ("Compiled without shape extension\n");
+#endif
+#ifdef HAVE_XINERAMA
+ meta_topic (META_DEBUG_XINERAMA, "Compiled with Xinerama extension\n");
+#else
+ meta_topic (META_DEBUG_XINERAMA, "Compiled without Xinerama extension\n");
+#endif
+#ifdef HAVE_XFREE_XINERAMA
+ meta_topic (META_DEBUG_XINERAMA, " (using XFree86 Xinerama)\n");
+#else
+ meta_topic (META_DEBUG_XINERAMA, " (not using XFree86 Xinerama)\n");
+#endif
+#ifdef HAVE_SOLARIS_XINERAMA
+ meta_topic (META_DEBUG_XINERAMA, " (using Solaris Xinerama)\n");
+#else
+ meta_topic (META_DEBUG_XINERAMA, " (not using Solaris Xinerama)\n");
+#endif
+#ifdef HAVE_XSYNC
+ meta_verbose ("Compiled with sync extension\n");
+#else
+ meta_verbose ("Compiled without sync extension\n");
+#endif
+#ifdef HAVE_RANDR
+ meta_verbose ("Compiled with randr extension\n");
+#else
+ meta_verbose ("Compiled without randr extension\n");
+#endif
+#ifdef HAVE_STARTUP_NOTIFICATION
+ meta_verbose ("Compiled with startup notification\n");
+#else
+ meta_verbose ("Compiled without startup notification\n");
+#endif
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ meta_verbose ("Compiled with composite extensions\n");
+#else
+ meta_verbose ("Compiled without composite extensions\n");
+#endif
+}
+
+/**
+ * Prints the version number, the current timestamp (not the
+ * build date), the locale, the character encoding, and a list
+ * of configure script options that were used to build this
+ * copy of Marco. This is actually always called
+ * on startup, but it's all no-op unless we're in verbose mode
+ * (see meta_set_verbose).
+ */
+static void
+meta_print_self_identity (void)
+{
+ char buf[256];
+ GDate d;
+ const char *charset;
+
+ /* Version and current date. */
+ g_date_clear (&d, 1);
+ g_date_set_time_t (&d, time (NULL));
+ g_date_strftime (buf, sizeof (buf), "%x", &d);
+ meta_verbose ("Marco version %s running on %s\n",
+ VERSION, buf);
+
+ /* Locale and encoding. */
+ g_get_charset (&charset);
+ meta_verbose ("Running in locale \"%s\" with encoding \"%s\"\n",
+ setlocale (LC_ALL, NULL), charset);
+
+ /* Compilation settings. */
+ meta_print_compilation_info ();
+}
+
+/**
+ * The set of possible options that can be set on Marco's
+ * command line. This type exists so that meta_parse_options() can
+ * write to an instance of it.
+ */
+typedef struct
+{
+ gchar *save_file;
+ gchar *display_name;
+ gchar *client_id;
+ gboolean replace_wm;
+ gboolean disable_sm;
+ gboolean print_version;
+ gboolean sync;
+ gboolean composite;
+ gboolean no_composite;
+ gboolean no_force_fullscreen;
+} MetaArguments;
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+#define COMPOSITE_OPTS_FLAGS 0
+#else /* HAVE_COMPOSITE_EXTENSIONS */
+/* No compositor, so don't show the arguments in --help */
+#define COMPOSITE_OPTS_FLAGS G_OPTION_FLAG_HIDDEN
+#endif /* HAVE_COMPOSITE_EXTENSIONS */
+
+/**
+ * Parses argc and argv and returns the
+ * arguments that Marco understands in meta_args.
+ *
+ * The strange call signature has to be written like it is so
+ * that g_option_context_parse() gets a chance to modify argc and
+ * argv.
+ *
+ * \param argc Pointer to the number of arguments Marco was given
+ * \param argv Pointer to the array of arguments Marco was given
+ * \param meta_args The result of parsing the arguments.
+ **/
+static void
+meta_parse_options (int *argc, char ***argv,
+ MetaArguments *meta_args)
+{
+ MetaArguments my_args = {NULL, NULL, NULL,
+ FALSE, FALSE, FALSE, FALSE, FALSE};
+ GOptionEntry options[] = {
+ {
+ "sm-disable", 0, 0, G_OPTION_ARG_NONE,
+ &my_args.disable_sm,
+ N_("Disable connection to session manager"),
+ NULL
+ },
+ {
+ "replace", 0, 0, G_OPTION_ARG_NONE,
+ &my_args.replace_wm,
+ N_("Replace the running window manager with Marco"),
+ NULL
+ },
+ {
+ "sm-client-id", 0, 0, G_OPTION_ARG_STRING,
+ &my_args.client_id,
+ N_("Specify session management ID"),
+ "ID"
+ },
+ {
+ "display", 'd', 0, G_OPTION_ARG_STRING,
+ &my_args.display_name, N_("X Display to use"),
+ "DISPLAY"
+ },
+ {
+ "sm-save-file", 0, 0, G_OPTION_ARG_FILENAME,
+ &my_args.save_file,
+ N_("Initialize session from savefile"),
+ "FILE"
+ },
+ {
+ "version", 0, 0, G_OPTION_ARG_NONE,
+ &my_args.print_version,
+ N_("Print version"),
+ NULL
+ },
+ {
+ "sync", 0, 0, G_OPTION_ARG_NONE,
+ &my_args.sync,
+ N_("Make X calls synchronous"),
+ NULL
+ },
+ {
+ "composite", 'c', COMPOSITE_OPTS_FLAGS, G_OPTION_ARG_NONE,
+ &my_args.composite,
+ N_("Turn compositing on"),
+ NULL
+ },
+ {
+ "no-composite", 0, COMPOSITE_OPTS_FLAGS, G_OPTION_ARG_NONE,
+ &my_args.no_composite,
+ N_("Turn compositing off"),
+ NULL
+ },
+ {
+ "no-force-fullscreen", 0, COMPOSITE_OPTS_FLAGS, G_OPTION_ARG_NONE,
+ &my_args.no_force_fullscreen,
+ N_("Don't make fullscreen windows that are maximized and have no decorations"),
+ NULL
+ },
+ {NULL}
+ };
+ GOptionContext *ctx;
+ GError *error = NULL;
+
+ ctx = g_option_context_new (NULL);
+ g_option_context_add_main_entries (ctx, options, "marco");
+ if (!g_option_context_parse (ctx, argc, argv, &error))
+ {
+ g_print ("marco: %s\n", error->message);
+ exit(1);
+ }
+ g_option_context_free (ctx);
+ /* Return the parsed options through the meta_args param. */
+ *meta_args = my_args;
+}
+
+/**
+ * Selects which display Marco should use. It first tries to use
+ * display_name as the display. If display_name is NULL then
+ * try to use the environment variable MARCO_DISPLAY. If that
+ * also is NULL, use the default - :0.0
+ */
+static void
+meta_select_display (gchar *display_name)
+{
+ gchar *envVar = "";
+ if (display_name)
+ envVar = g_strconcat ("DISPLAY=", display_name, NULL);
+ else if (g_getenv ("MARCO_DISPLAY"))
+ envVar = g_strconcat ("DISPLAY=",
+ g_getenv ("MARCO_DISPLAY"), NULL);
+ /* DO NOT FREE envVar, putenv() sucks */
+ putenv (envVar);
+}
+
+static void
+meta_finalize (void)
+{
+ MetaDisplay *display = meta_get_display();
+
+ meta_session_shutdown ();
+
+ if (display)
+ meta_display_close (display,
+ CurrentTime); /* I doubt correct timestamps matter here */
+}
+
+static int sigterm_pipe_fds[2] = { -1, -1 };
+
+static void
+sigterm_handler (int signum)
+{
+ if (sigterm_pipe_fds[1] >= 0)
+ {
+ int dummy;
+
+ dummy = write (sigterm_pipe_fds[1], "", 1);
+ close (sigterm_pipe_fds[1]);
+ sigterm_pipe_fds[1] = -1;
+ }
+}
+
+static gboolean
+on_sigterm (void)
+{
+ meta_quit (META_EXIT_SUCCESS);
+ return FALSE;
+}
+
+/**
+ * This is where the story begins. It parses commandline options and
+ * environment variables, sets up the screen, hands control off to
+ * GTK, and cleans up afterwards.
+ *
+ * \param argc Number of arguments (as usual)
+ * \param argv Array of arguments (as usual)
+ *
+ * \bug It's a bit long. It would be good to split it out into separate
+ * functions.
+ */
+int
+main (int argc, char **argv)
+{
+ struct sigaction act;
+ sigset_t empty_mask;
+ MetaArguments meta_args;
+ const gchar *log_domains[] = {
+ NULL, G_LOG_DOMAIN, "Gtk", "Gdk", "GLib",
+ "Pango", "GLib-GObject", "GThread"
+ };
+ guint i;
+ GIOChannel *channel;
+
+ if (!g_thread_supported ())
+ g_thread_init (NULL);
+
+ if (setlocale (LC_ALL, "") == NULL)
+ meta_warning ("Locale not understood by C library, internationalization will not work\n");
+
+ g_type_init ();
+
+ sigemptyset (&empty_mask);
+ act.sa_handler = SIG_IGN;
+ act.sa_mask = empty_mask;
+ act.sa_flags = 0;
+ if (sigaction (SIGPIPE, &act, NULL) < 0)
+ g_printerr ("Failed to register SIGPIPE handler: %s\n",
+ g_strerror (errno));
+#ifdef SIGXFSZ
+ if (sigaction (SIGXFSZ, &act, NULL) < 0)
+ g_printerr ("Failed to register SIGXFSZ handler: %s\n",
+ g_strerror (errno));
+#endif
+
+ if (pipe (sigterm_pipe_fds) != 0)
+ g_printerr ("Failed to create SIGTERM pipe: %s\n",
+ g_strerror (errno));
+
+ channel = g_io_channel_unix_new (sigterm_pipe_fds[0]);
+ g_io_channel_set_flags (channel, G_IO_FLAG_NONBLOCK, NULL);
+ g_io_add_watch (channel, G_IO_IN, (GIOFunc) on_sigterm, NULL);
+ g_io_channel_set_close_on_unref (channel, TRUE);
+ g_io_channel_unref (channel);
+
+ act.sa_handler = &sigterm_handler;
+ if (sigaction (SIGTERM, &act, NULL) < 0)
+ g_printerr ("Failed to register SIGTERM handler: %s\n",
+ g_strerror (errno));
+
+ if (g_getenv ("MARCO_VERBOSE"))
+ meta_set_verbose (TRUE);
+ if (g_getenv ("MARCO_DEBUG"))
+ meta_set_debugging (TRUE);
+
+ if (g_get_home_dir ())
+ if (chdir (g_get_home_dir ()) < 0)
+ meta_warning ("Could not change to home directory %s.\n",
+ g_get_home_dir ());
+
+ meta_print_self_identity ();
+
+ bindtextdomain (GETTEXT_PACKAGE, MARCO_LOCALEDIR);
+ bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
+ textdomain (GETTEXT_PACKAGE);
+
+ /* Parse command line arguments.*/
+ meta_parse_options (&argc, &argv, &meta_args);
+
+ meta_set_syncing (meta_args.sync || (g_getenv ("MARCO_SYNC") != NULL));
+
+ if (meta_args.print_version)
+ version ();
+
+ meta_select_display (meta_args.display_name);
+
+ if (meta_args.replace_wm)
+ meta_set_replace_current_wm (TRUE);
+
+ if (meta_args.save_file && meta_args.client_id)
+ meta_fatal ("Can't specify both SM save file and SM client id\n");
+
+ meta_main_loop = g_main_loop_new (NULL, FALSE);
+
+ meta_ui_init (&argc, &argv);
+
+ /* must be after UI init so we can override GDK handlers */
+ meta_errors_init ();
+
+ /* Load prefs */
+ meta_prefs_init ();
+ meta_prefs_add_listener (prefs_changed_callback, NULL);
+
+
+#if 1
+
+ for (i=0; i<G_N_ELEMENTS(log_domains); i++)
+ g_log_set_handler (log_domains[i],
+ G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL | G_LOG_FLAG_RECURSION,
+ log_handler, NULL);
+
+#endif
+
+ if (g_getenv ("MARCO_G_FATAL_WARNINGS") != NULL)
+ g_log_set_always_fatal (G_LOG_LEVEL_MASK);
+
+ meta_ui_set_current_theme (meta_prefs_get_theme (), FALSE);
+
+ /* Try to find some theme that'll work if the theme preference
+ * doesn't exist. First try Simple (the default theme) then just
+ * try anything in the themes directory.
+ */
+ if (!meta_ui_have_a_theme ())
+ meta_ui_set_current_theme ("Simple", FALSE);
+
+ if (!meta_ui_have_a_theme ())
+ {
+ const char *dir_entry = NULL;
+ GError *err = NULL;
+ GDir *themes_dir = NULL;
+
+ if (!(themes_dir = g_dir_open (MARCO_DATADIR"/themes", 0, &err)))
+ {
+ meta_fatal (_("Failed to scan themes directory: %s\n"), err->message);
+ g_error_free (err);
+ }
+ else
+ {
+ while (((dir_entry = g_dir_read_name (themes_dir)) != NULL) &&
+ (!meta_ui_have_a_theme ()))
+ {
+ meta_ui_set_current_theme (dir_entry, FALSE);
+ }
+
+ g_dir_close (themes_dir);
+ }
+ }
+
+ if (!meta_ui_have_a_theme ())
+ meta_fatal (_("Could not find a theme! Be sure %s exists and contains the usual themes.\n"),
+ MARCO_DATADIR"/themes");
+
+ /* Connect to SM as late as possible - but before managing display,
+ * or we might try to manage a window before we have the session
+ * info
+ */
+ if (!meta_args.disable_sm)
+ {
+ if (meta_args.client_id == NULL)
+ {
+ const gchar *desktop_autostart_id;
+
+ desktop_autostart_id = g_getenv ("DESKTOP_AUTOSTART_ID");
+
+ if (desktop_autostart_id != NULL)
+ meta_args.client_id = g_strdup (desktop_autostart_id);
+ }
+
+ /* Unset DESKTOP_AUTOSTART_ID in order to avoid child processes to
+ * use the same client id. */
+ g_unsetenv ("DESKTOP_AUTOSTART_ID");
+
+ meta_session_init (meta_args.client_id, meta_args.save_file);
+ }
+ /* Free memory possibly allocated by the argument parsing which are
+ * no longer needed.
+ */
+ g_free (meta_args.save_file);
+ g_free (meta_args.display_name);
+ g_free (meta_args.client_id);
+
+ if (meta_args.composite || meta_args.no_composite)
+ meta_prefs_set_compositing_manager (meta_args.composite);
+
+ if (meta_args.no_force_fullscreen)
+ meta_prefs_set_force_fullscreen (FALSE);
+
+ if (!meta_display_open ())
+ meta_exit (META_EXIT_ERROR);
+
+ g_main_loop_run (meta_main_loop);
+
+ meta_finalize ();
+
+ if (meta_restart_after_quit)
+ {
+ GError *err;
+
+ err = NULL;
+ if (!g_spawn_async (NULL,
+ argv,
+ NULL,
+ G_SPAWN_SEARCH_PATH,
+ NULL,
+ NULL,
+ NULL,
+ &err))
+ {
+ meta_fatal (_("Failed to restart: %s\n"),
+ err->message);
+ g_error_free (err); /* not reached anyhow */
+ meta_exit_code = META_EXIT_ERROR;
+ }
+ }
+
+ return meta_exit_code;
+}
+
+/**
+ * Stops Marco. This tells the event loop to stop processing; it is rather
+ * dangerous to use this rather than meta_restart() because this will leave
+ * the user with no window manager. We generally do this only if, for example,
+ * the session manager asks us to; we assume the session manager knows what
+ * it's talking about.
+ *
+ * \param code The success or failure code to return to the calling process.
+ */
+void
+meta_quit (MetaExitCode code)
+{
+ meta_exit_code = code;
+
+ if (g_main_loop_is_running (meta_main_loop))
+ g_main_loop_quit (meta_main_loop);
+}
+
+/**
+ * Restarts Marco. In practice, this tells the event loop to stop
+ * processing, having first set the meta_restart_after_quit flag which
+ * tells Marco to spawn an identical copy of itself before quitting.
+ * This happens on receipt of a _MARCO_RESTART_MESSAGE client event.
+ */
+void
+meta_restart (void)
+{
+ meta_restart_after_quit = TRUE;
+ meta_quit (META_EXIT_SUCCESS);
+}
+
+/**
+ * Called on pref changes. (One of several functions of its kind and purpose.)
+ *
+ * \bug Why are these particular prefs handled in main.c and not others?
+ * Should they be?
+ *
+ * \param pref Which preference has changed
+ * \param data Arbitrary data (which we ignore)
+ */
+static void
+prefs_changed_callback (MetaPreference pref,
+ gpointer data)
+{
+ switch (pref)
+ {
+ case META_PREF_THEME:
+ meta_ui_set_current_theme (meta_prefs_get_theme (), FALSE);
+ meta_display_retheme_all ();
+ break;
+
+ case META_PREF_CURSOR_THEME:
+ case META_PREF_CURSOR_SIZE:
+ meta_display_set_cursor_theme (meta_prefs_get_cursor_theme (),
+ meta_prefs_get_cursor_size ());
+ break;
+ default:
+ /* handled elsewhere or otherwise */
+ break;
+ }
+}
diff --git a/src/core/marco-Xatomtype.h b/src/core/marco-Xatomtype.h
new file mode 100644
index 00000000..5698ed31
--- /dev/null
+++ b/src/core/marco-Xatomtype.h
@@ -0,0 +1,136 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file marco-Xatomtype.h Types for communicating with X about properties
+ *
+ * This files defines crock C structures for calling XGetWindowProperty and
+ * XChangeProperty. All fields must be longs as the semantics of property
+ * routines will handle conversion to and from actual 32 bit objects. If your
+ * compiler doesn't treat &structoflongs the same as &arrayoflongs[0], you
+ * will have some work to do.
+ */
+
+/***********************************************************
+
+Copyright 1987, 1998 The Open Group
+
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that
+the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of The Open Group shall not be
+used in advertising or otherwise to promote the sale, use or other dealings
+in this Software without prior written authorization from The Open Group.
+
+
+Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
+
+ All Rights Reserved
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+provided that the above copyright notice appear in all copies and that
+both that copyright notice and this permission notice appear in
+supporting documentation, and that the name of Digital not be
+used in advertising or publicity pertaining to distribution of the
+software without specific, written prior permission.
+
+DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
+ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
+ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
+SOFTWARE.
+
+******************************************************************/
+
+#ifndef _XATOMTYPE_H_
+#define _XATOMTYPE_H_
+
+#define BOOL long
+#define SIGNEDINT long
+#define UNSIGNEDINT unsigned long
+#define RESOURCEID unsigned long
+
+
+/* this structure may be extended, but do not change the order */
+typedef struct {
+ UNSIGNEDINT flags;
+ SIGNEDINT x, y, width, height; /* need to cvt; only for pre-ICCCM */
+ SIGNEDINT minWidth, minHeight; /* need to cvt */
+ SIGNEDINT maxWidth, maxHeight; /* need to cvt */
+ SIGNEDINT widthInc, heightInc; /* need to cvt */
+ SIGNEDINT minAspectX, minAspectY; /* need to cvt */
+ SIGNEDINT maxAspectX, maxAspectY; /* need to cvt */
+ SIGNEDINT baseWidth,baseHeight; /* need to cvt; ICCCM version 1 */
+ SIGNEDINT winGravity; /* need to cvt; ICCCM version 1 */
+} xPropSizeHints;
+#define OldNumPropSizeElements 15 /* pre-ICCCM */
+#define NumPropSizeElements 18 /* ICCCM version 1 */
+
+/* this structure may be extended, but do not change the order */
+/* RGB properties */
+typedef struct {
+ RESOURCEID colormap;
+ UNSIGNEDINT red_max;
+ UNSIGNEDINT red_mult;
+ UNSIGNEDINT green_max;
+ UNSIGNEDINT green_mult;
+ UNSIGNEDINT blue_max;
+ UNSIGNEDINT blue_mult;
+ UNSIGNEDINT base_pixel;
+ RESOURCEID visualid; /* ICCCM version 1 */
+ RESOURCEID killid; /* ICCCM version 1 */
+} xPropStandardColormap;
+#define OldNumPropStandardColormapElements 8 /* pre-ICCCM */
+#define NumPropStandardColormapElements 10 /* ICCCM version 1 */
+
+
+/* this structure may be extended, but do not change the order */
+typedef struct {
+ UNSIGNEDINT flags;
+ BOOL input; /* need to convert */
+ SIGNEDINT initialState; /* need to cvt */
+ RESOURCEID iconPixmap;
+ RESOURCEID iconWindow;
+ SIGNEDINT iconX; /* need to cvt */
+ SIGNEDINT iconY; /* need to cvt */
+ RESOURCEID iconMask;
+ UNSIGNEDINT windowGroup;
+ } xPropWMHints;
+#define NumPropWMHintsElements 9 /* number of elements in this structure */
+
+/* this structure defines the icon size hints information */
+typedef struct {
+ SIGNEDINT minWidth, minHeight; /* need to cvt */
+ SIGNEDINT maxWidth, maxHeight; /* need to cvt */
+ SIGNEDINT widthInc, heightInc; /* need to cvt */
+ } xPropIconSize;
+#define NumPropIconSizeElements 6 /* number of elements in this structure */
+
+/* this structure defines the window manager state information */
+typedef struct {
+ SIGNEDINT state; /* need to cvt */
+ RESOURCEID iconWindow;
+} xPropWMState;
+#define NumPropWMStateElements 2 /* number of elements in struct */
+
+#undef BOOL
+#undef SIGNEDINT
+#undef UNSIGNEDINT
+#undef RESOURCEID
+
+#endif /* _XATOMTYPE_H_ */
diff --git a/src/core/place.c b/src/core/place.c
new file mode 100644
index 00000000..cb1458f0
--- /dev/null
+++ b/src/core/place.c
@@ -0,0 +1,932 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco window placement */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2002, 2003 Red Hat, Inc.
+ * Copyright (C) 2003 Rob Adams
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+
+#include "place.h"
+#include "workspace.h"
+#include "prefs.h"
+#include <gdk/gdk.h>
+#include <math.h>
+#include <stdlib.h>
+
+typedef enum
+{
+ META_LEFT,
+ META_RIGHT,
+ META_TOP,
+ META_BOTTOM
+} MetaWindowDirection;
+
+static gint
+northwestcmp (gconstpointer a, gconstpointer b)
+{
+ MetaWindow *aw = (gpointer) a;
+ MetaWindow *bw = (gpointer) b;
+ int from_origin_a;
+ int from_origin_b;
+ int ax, ay, bx, by;
+
+ /* we're interested in the frame position for cascading,
+ * not meta_window_get_position()
+ */
+ if (aw->frame)
+ {
+ ax = aw->frame->rect.x;
+ ay = aw->frame->rect.y;
+ }
+ else
+ {
+ ax = aw->rect.x;
+ ay = aw->rect.y;
+ }
+
+ if (bw->frame)
+ {
+ bx = bw->frame->rect.x;
+ by = bw->frame->rect.y;
+ }
+ else
+ {
+ bx = bw->rect.x;
+ by = bw->rect.y;
+ }
+
+ /* probably there's a fast good-enough-guess we could use here. */
+ from_origin_a = sqrt (ax * ax + ay * ay);
+ from_origin_b = sqrt (bx * bx + by * by);
+
+ if (from_origin_a < from_origin_b)
+ return -1;
+ else if (from_origin_a > from_origin_b)
+ return 1;
+ else
+ return 0;
+}
+
+static void
+find_next_cascade (MetaWindow *window,
+ MetaFrameGeometry *fgeom,
+ /* visible windows on relevant workspaces */
+ GList *windows,
+ int x,
+ int y,
+ int *new_x,
+ int *new_y)
+{
+ GList *tmp;
+ GList *sorted;
+ int cascade_x, cascade_y;
+ int x_threshold, y_threshold;
+ int window_width, window_height;
+ int cascade_stage;
+ MetaRectangle work_area;
+ const MetaXineramaScreenInfo* current;
+
+ sorted = g_list_copy (windows);
+ sorted = g_list_sort (sorted, northwestcmp);
+
+ /* This is a "fuzzy" cascade algorithm.
+ * For each window in the list, we find where we'd cascade a
+ * new window after it. If a window is already nearly at that
+ * position, we move on.
+ */
+
+ /* arbitrary-ish threshold, honors user attempts to
+ * manually cascade.
+ */
+#define CASCADE_FUZZ 15
+ if (fgeom)
+ {
+ x_threshold = MAX (fgeom->left_width, CASCADE_FUZZ);
+ y_threshold = MAX (fgeom->top_height, CASCADE_FUZZ);
+ }
+ else
+ {
+ x_threshold = CASCADE_FUZZ;
+ y_threshold = CASCADE_FUZZ;
+ }
+
+ /* Find furthest-SE origin of all workspaces.
+ * cascade_x, cascade_y are the target position
+ * of NW corner of window frame.
+ */
+
+ current = meta_screen_get_current_xinerama (window->screen);
+ meta_window_get_work_area_for_xinerama (window, current->number, &work_area);
+
+ cascade_x = MAX (0, work_area.x);
+ cascade_y = MAX (0, work_area.y);
+
+ /* Find first cascade position that's not used. */
+
+ window_width = window->frame ? window->frame->rect.width : window->rect.width;
+ window_height = window->frame ? window->frame->rect.height : window->rect.height;
+
+ cascade_stage = 0;
+ tmp = sorted;
+ while (tmp != NULL)
+ {
+ MetaWindow *w;
+ int wx, wy;
+
+ w = tmp->data;
+
+ /* we want frame position, not window position */
+ if (w->frame)
+ {
+ wx = w->frame->rect.x;
+ wy = w->frame->rect.y;
+ }
+ else
+ {
+ wx = w->rect.x;
+ wy = w->rect.y;
+ }
+
+ if (ABS (wx - cascade_x) < x_threshold &&
+ ABS (wy - cascade_y) < y_threshold)
+ {
+ /* This window is "in the way", move to next cascade
+ * point. The new window frame should go at the origin
+ * of the client window we're stacking above.
+ */
+ meta_window_get_position (w, &wx, &wy);
+ cascade_x = wx;
+ cascade_y = wy;
+
+ /* If we go off the screen, start over with a new cascade */
+ if (((cascade_x + window_width) >
+ (work_area.x + work_area.width)) ||
+ ((cascade_y + window_height) >
+ (work_area.y + work_area.height)))
+ {
+ cascade_x = MAX (0, work_area.x);
+ cascade_y = MAX (0, work_area.y);
+
+#define CASCADE_INTERVAL 50 /* space between top-left corners of cascades */
+ cascade_stage += 1;
+ cascade_x += CASCADE_INTERVAL * cascade_stage;
+
+ /* start over with a new cascade translated to the right, unless
+ * we are out of space
+ */
+ if ((cascade_x + window_width) <
+ (work_area.x + work_area.width))
+ {
+ tmp = sorted;
+ continue;
+ }
+ else
+ {
+ /* All out of space, this cascade_x won't work */
+ cascade_x = MAX (0, work_area.x);
+ break;
+ }
+ }
+ }
+ else
+ {
+ /* Keep searching for a further-down-the-diagonal window. */
+ }
+
+ tmp = tmp->next;
+ }
+
+ /* cascade_x and cascade_y will match the last window in the list
+ * that was "in the way" (in the approximate cascade diagonal)
+ */
+
+ g_list_free (sorted);
+
+ /* Convert coords to position of window, not position of frame. */
+ if (fgeom == NULL)
+ {
+ *new_x = cascade_x;
+ *new_y = cascade_y;
+ }
+ else
+ {
+ *new_x = cascade_x + fgeom->left_width;
+ *new_y = cascade_y + fgeom->top_height;
+ }
+}
+
+static void
+find_most_freespace (MetaWindow *window,
+ MetaFrameGeometry *fgeom,
+ /* visible windows on relevant workspaces */
+ MetaWindow *focus_window,
+ int x,
+ int y,
+ int *new_x,
+ int *new_y)
+{
+ MetaWindowDirection side;
+ int max_area;
+ int max_width, max_height, left, right, top, bottom;
+ int left_space, right_space, top_space, bottom_space;
+ int frame_size_left, frame_size_top;
+ MetaRectangle work_area;
+ MetaRectangle avoid;
+ MetaRectangle outer;
+
+ frame_size_left = fgeom ? fgeom->left_width : 0;
+ frame_size_top = fgeom ? fgeom->top_height : 0;
+
+ meta_window_get_work_area_current_xinerama (focus_window, &work_area);
+ meta_window_get_outer_rect (focus_window, &avoid);
+ meta_window_get_outer_rect (window, &outer);
+
+ /* Find the areas of choosing the various sides of the focus window */
+ max_width = MIN (avoid.width, outer.width);
+ max_height = MIN (avoid.height, outer.height);
+ left_space = avoid.x - work_area.x;
+ right_space = work_area.width - (avoid.x + avoid.width - work_area.x);
+ top_space = avoid.y - work_area.y;
+ bottom_space = work_area.height - (avoid.y + avoid.height - work_area.y);
+ left = MIN (left_space, outer.width);
+ right = MIN (right_space, outer.width);
+ top = MIN (top_space, outer.height);
+ bottom = MIN (bottom_space, outer.height);
+
+ /* Find out which side of the focus_window can show the most of the window */
+ side = META_LEFT;
+ max_area = left*max_height;
+ if (right*max_height > max_area)
+ {
+ side = META_RIGHT;
+ max_area = right*max_height;
+ }
+ if (top*max_width > max_area)
+ {
+ side = META_TOP;
+ max_area = top*max_width;
+ }
+ if (bottom*max_width > max_area)
+ {
+ side = META_BOTTOM;
+ max_area = bottom*max_width;
+ }
+
+ /* Give up if there's no where to put it (i.e. focus window is maximized) */
+ if (max_area == 0)
+ return;
+
+ /* Place the window on the relevant side; if the whole window fits,
+ * make it adjacent to the focus window; if not, make sure the
+ * window doesn't go off the edge of the screen.
+ */
+ switch (side)
+ {
+ case META_LEFT:
+ *new_y = avoid.y + frame_size_top;
+ if (left_space > outer.width)
+ *new_x = avoid.x - outer.width + frame_size_left;
+ else
+ *new_x = work_area.x + frame_size_left;
+ break;
+ case META_RIGHT:
+ *new_y = avoid.y + frame_size_top;
+ if (right_space > outer.width)
+ *new_x = avoid.x + avoid.width + frame_size_left;
+ else
+ *new_x = work_area.x + work_area.width - outer.width + frame_size_left;
+ break;
+ case META_TOP:
+ *new_x = avoid.x + frame_size_left;
+ if (top_space > outer.height)
+ *new_y = avoid.y - outer.height + frame_size_top;
+ else
+ *new_y = work_area.y + frame_size_top;
+ break;
+ case META_BOTTOM:
+ *new_x = avoid.x + frame_size_left;
+ if (bottom_space > outer.height)
+ *new_y = avoid.y + avoid.height + frame_size_top;
+ else
+ *new_y = work_area.y + work_area.height - outer.height + frame_size_top;
+ break;
+ }
+}
+
+static void
+avoid_being_obscured_as_second_modal_dialog (MetaWindow *window,
+ MetaFrameGeometry *fgeom,
+ int *x,
+ int *y)
+{
+ /* We can't center this dialog if it was denied focus and it
+ * overlaps with the focus window and this dialog is modal and this
+ * dialog is in the same app as the focus window (*phew*...please
+ * don't make me say that ten times fast). See bug 307875 comment 11
+ * and 12 for details, but basically it means this is probably a
+ * second modal dialog for some app while the focus window is the
+ * first modal dialog. We should probably make them simultaneously
+ * visible in general, but it becomes mandatory to do so due to
+ * buggy apps (e.g. those using gtk+ *sigh*) because in those cases
+ * this second modal dialog also happens to be modal to the first
+ * dialog in addition to the main window, while it has only let us
+ * know about the modal-to-the-main-window part.
+ */
+
+ MetaWindow *focus_window;
+ MetaRectangle overlap;
+
+ focus_window = window->display->focus_window;
+
+ if (window->denied_focus_and_not_transient &&
+ window->wm_state_modal && /* FIXME: Maybe do this for all transients? */
+ meta_window_same_application (window, focus_window) &&
+ meta_rectangle_intersect (&window->rect,
+ &focus_window->rect,
+ &overlap))
+ {
+ find_most_freespace (window, fgeom, focus_window, *x, *y, x, y);
+ meta_topic (META_DEBUG_PLACEMENT,
+ "Dialog window %s was denied focus but may be modal "
+ "to the focus window; had to move it to avoid the "
+ "focus window\n",
+ window->desc);
+ }
+}
+
+static gboolean
+rectangle_overlaps_some_window (MetaRectangle *rect,
+ GList *windows)
+{
+ GList *tmp;
+ MetaRectangle dest;
+
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *other = tmp->data;
+ MetaRectangle other_rect;
+
+ switch (other->type)
+ {
+ case META_WINDOW_DOCK:
+ case META_WINDOW_SPLASHSCREEN:
+ case META_WINDOW_DESKTOP:
+ case META_WINDOW_DIALOG:
+ case META_WINDOW_MODAL_DIALOG:
+ break;
+
+ case META_WINDOW_NORMAL:
+ case META_WINDOW_UTILITY:
+ case META_WINDOW_TOOLBAR:
+ case META_WINDOW_MENU:
+ meta_window_get_outer_rect (other, &other_rect);
+
+ if (meta_rectangle_intersect (rect, &other_rect, &dest))
+ return TRUE;
+ break;
+ }
+
+ tmp = tmp->next;
+ }
+
+ return FALSE;
+}
+
+static gint
+leftmost_cmp (gconstpointer a, gconstpointer b)
+{
+ MetaWindow *aw = (gpointer) a;
+ MetaWindow *bw = (gpointer) b;
+ int ax, bx;
+
+ /* we're interested in the frame position for cascading,
+ * not meta_window_get_position()
+ */
+ if (aw->frame)
+ ax = aw->frame->rect.x;
+ else
+ ax = aw->rect.x;
+
+ if (bw->frame)
+ bx = bw->frame->rect.x;
+ else
+ bx = bw->rect.x;
+
+ if (ax < bx)
+ return -1;
+ else if (ax > bx)
+ return 1;
+ else
+ return 0;
+}
+
+static gint
+topmost_cmp (gconstpointer a, gconstpointer b)
+{
+ MetaWindow *aw = (gpointer) a;
+ MetaWindow *bw = (gpointer) b;
+ int ay, by;
+
+ /* we're interested in the frame position for cascading,
+ * not meta_window_get_position()
+ */
+ if (aw->frame)
+ ay = aw->frame->rect.y;
+ else
+ ay = aw->rect.y;
+
+ if (bw->frame)
+ by = bw->frame->rect.y;
+ else
+ by = bw->rect.y;
+
+ if (ay < by)
+ return -1;
+ else if (ay > by)
+ return 1;
+ else
+ return 0;
+}
+
+static void
+center_tile_rect_in_area (MetaRectangle *rect,
+ MetaRectangle *work_area)
+{
+ int fluff;
+
+ /* The point here is to tile a window such that "extra"
+ * space is equal on either side (i.e. so a full screen
+ * of windows tiled this way would center the windows
+ * as a group)
+ */
+
+ fluff = (work_area->width % (rect->width+1)) / 2;
+ rect->x = work_area->x + fluff;
+ fluff = (work_area->height % (rect->height+1)) / 3;
+ rect->y = work_area->y + fluff;
+}
+
+/* Find the leftmost, then topmost, empty area on the workspace
+ * that can contain the new window.
+ *
+ * Cool feature to have: if we can't fit the current window size,
+ * try shrinking the window (within geometry constraints). But
+ * beware windows such as Emacs with no sane minimum size, we
+ * don't want to create a 1x1 Emacs.
+ */
+static gboolean
+find_first_fit (MetaWindow *window,
+ MetaFrameGeometry *fgeom,
+ /* visible windows on relevant workspaces */
+ GList *windows,
+ int xinerama,
+ int x,
+ int y,
+ int *new_x,
+ int *new_y)
+{
+ /* This algorithm is limited - it just brute-force tries
+ * to fit the window in a small number of locations that are aligned
+ * with existing windows. It tries to place the window on
+ * the bottom of each existing window, and then to the right
+ * of each existing window, aligned with the left/top of the
+ * existing window in each of those cases.
+ */
+ int retval;
+ GList *below_sorted;
+ GList *right_sorted;
+ GList *tmp;
+ MetaRectangle rect;
+ MetaRectangle work_area;
+
+ retval = FALSE;
+
+ /* Below each window */
+ below_sorted = g_list_copy (windows);
+ below_sorted = g_list_sort (below_sorted, leftmost_cmp);
+ below_sorted = g_list_sort (below_sorted, topmost_cmp);
+
+ /* To the right of each window */
+ right_sorted = g_list_copy (windows);
+ right_sorted = g_list_sort (right_sorted, topmost_cmp);
+ right_sorted = g_list_sort (right_sorted, leftmost_cmp);
+
+ rect.width = window->rect.width;
+ rect.height = window->rect.height;
+
+ if (fgeom)
+ {
+ rect.width += fgeom->left_width + fgeom->right_width;
+ rect.height += fgeom->top_height + fgeom->bottom_height;
+ }
+
+#ifdef WITH_VERBOSE_MODE
+ {
+ char xinerama_location_string[RECT_LENGTH];
+ meta_rectangle_to_string (&window->screen->xinerama_infos[xinerama].rect,
+ xinerama_location_string);
+ meta_topic (META_DEBUG_XINERAMA,
+ "Natural xinerama is %s\n",
+ xinerama_location_string);
+ }
+#endif
+
+ meta_window_get_work_area_for_xinerama (window, xinerama, &work_area);
+
+ center_tile_rect_in_area (&rect, &work_area);
+
+ if (meta_rectangle_contains_rect (&work_area, &rect) &&
+ !rectangle_overlaps_some_window (&rect, windows))
+ {
+ *new_x = rect.x;
+ *new_y = rect.y;
+ if (fgeom)
+ {
+ *new_x += fgeom->left_width;
+ *new_y += fgeom->top_height;
+ }
+
+ retval = TRUE;
+
+ goto out;
+ }
+
+ /* try below each window */
+ tmp = below_sorted;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+ MetaRectangle outer_rect;
+
+ meta_window_get_outer_rect (w, &outer_rect);
+
+ rect.x = outer_rect.x;
+ rect.y = outer_rect.y + outer_rect.height;
+
+ if (meta_rectangle_contains_rect (&work_area, &rect) &&
+ !rectangle_overlaps_some_window (&rect, below_sorted))
+ {
+ *new_x = rect.x;
+ *new_y = rect.y;
+ if (fgeom)
+ {
+ *new_x += fgeom->left_width;
+ *new_y += fgeom->top_height;
+ }
+
+ retval = TRUE;
+
+ goto out;
+ }
+
+ tmp = tmp->next;
+ }
+
+ /* try to the right of each window */
+ tmp = right_sorted;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+ MetaRectangle outer_rect;
+
+ meta_window_get_outer_rect (w, &outer_rect);
+
+ rect.x = outer_rect.x + outer_rect.width;
+ rect.y = outer_rect.y;
+
+ if (meta_rectangle_contains_rect (&work_area, &rect) &&
+ !rectangle_overlaps_some_window (&rect, right_sorted))
+ {
+ *new_x = rect.x;
+ *new_y = rect.y;
+ if (fgeom)
+ {
+ *new_x += fgeom->left_width;
+ *new_y += fgeom->top_height;
+ }
+
+ retval = TRUE;
+
+ goto out;
+ }
+
+ tmp = tmp->next;
+ }
+
+ out:
+
+ g_list_free (below_sorted);
+ g_list_free (right_sorted);
+ return retval;
+}
+
+void
+meta_window_place (MetaWindow *window,
+ MetaFrameGeometry *fgeom,
+ int x,
+ int y,
+ int *new_x,
+ int *new_y)
+{
+ GList *windows;
+ const MetaXineramaScreenInfo *xi;
+
+ /* frame member variables should NEVER be used in here, only
+ * MetaFrameGeometry. But remember fgeom == NULL
+ * for undecorated windows. Also, this function should
+ * NEVER have side effects other than computing the
+ * placement coordinates.
+ */
+
+ meta_topic (META_DEBUG_PLACEMENT, "Placing window %s\n", window->desc);
+
+ windows = NULL;
+
+ switch (window->type)
+ {
+ /* Run placement algorithm on these. */
+ case META_WINDOW_NORMAL:
+ case META_WINDOW_DIALOG:
+ case META_WINDOW_MODAL_DIALOG:
+ case META_WINDOW_SPLASHSCREEN:
+ break;
+
+ /* Assume the app knows best how to place these, no placement
+ * algorithm ever (other than "leave them as-is")
+ */
+ case META_WINDOW_DESKTOP:
+ case META_WINDOW_DOCK:
+ case META_WINDOW_TOOLBAR:
+ case META_WINDOW_MENU:
+ case META_WINDOW_UTILITY:
+ goto done_no_constraints;
+ }
+
+ if (meta_prefs_get_disable_workarounds ())
+ {
+ switch (window->type)
+ {
+ /* Only accept USPosition on normal windows because the app is full
+ * of shit claiming the user set -geometry for a dialog or dock
+ */
+ case META_WINDOW_NORMAL:
+ if (window->size_hints.flags & USPosition)
+ {
+ /* don't constrain with placement algorithm */
+ meta_topic (META_DEBUG_PLACEMENT,
+ "Honoring USPosition for %s instead of using placement algorithm\n", window->desc);
+
+ goto done;
+ }
+ break;
+
+ /* Ignore even USPosition on dialogs, splashscreen */
+ case META_WINDOW_DIALOG:
+ case META_WINDOW_MODAL_DIALOG:
+ case META_WINDOW_SPLASHSCREEN:
+ break;
+
+ /* Assume the app knows best how to place these. */
+ case META_WINDOW_DESKTOP:
+ case META_WINDOW_DOCK:
+ case META_WINDOW_TOOLBAR:
+ case META_WINDOW_MENU:
+ case META_WINDOW_UTILITY:
+ if (window->size_hints.flags & PPosition)
+ {
+ meta_topic (META_DEBUG_PLACEMENT,
+ "Not placing non-normal non-dialog window with PPosition set\n");
+ goto done_no_constraints;
+ }
+ break;
+ }
+ }
+ else
+ {
+ /* workarounds enabled */
+
+ if ((window->size_hints.flags & PPosition) ||
+ (window->size_hints.flags & USPosition))
+ {
+ meta_topic (META_DEBUG_PLACEMENT,
+ "Not placing window with PPosition or USPosition set\n");
+ avoid_being_obscured_as_second_modal_dialog (window, fgeom, &x, &y);
+ goto done_no_constraints;
+ }
+ }
+
+ if ((window->type == META_WINDOW_DIALOG ||
+ window->type == META_WINDOW_MODAL_DIALOG) &&
+ window->xtransient_for != None)
+ {
+ /* Center horizontally, at top of parent vertically */
+
+ MetaWindow *parent;
+
+ parent =
+ meta_display_lookup_x_window (window->display,
+ window->xtransient_for);
+
+ if (parent)
+ {
+ int w;
+
+ meta_window_get_position (parent, &x, &y);
+ w = parent->rect.width;
+
+ /* center of parent */
+ x = x + w / 2;
+ /* center of child over center of parent */
+ x -= window->rect.width / 2;
+
+ /* "visually" center window over parent, leaving twice as
+ * much space below as on top.
+ */
+ y += (parent->rect.height - window->rect.height)/3;
+
+ /* put top of child's frame, not top of child's client */
+ if (fgeom)
+ y += fgeom->top_height;
+
+ meta_topic (META_DEBUG_PLACEMENT, "Centered window %s over transient parent\n",
+ window->desc);
+
+ avoid_being_obscured_as_second_modal_dialog (window, fgeom, &x, &y);
+
+ goto done;
+ }
+ }
+
+ /* FIXME UTILITY with transient set should be stacked up
+ * on the sides of the parent window or something.
+ */
+
+ if (window->type == META_WINDOW_DIALOG ||
+ window->type == META_WINDOW_MODAL_DIALOG ||
+ window->type == META_WINDOW_SPLASHSCREEN)
+ {
+ /* Center on current xinerama (i.e. on current monitor) */
+ int w, h;
+
+ /* Warning, this function is a round trip! */
+ xi = meta_screen_get_current_xinerama (window->screen);
+
+ w = xi->rect.width;
+ h = xi->rect.height;
+
+ x = (w - window->rect.width) / 2;
+ y = (h - window->rect.height) / 2;
+
+ x += xi->rect.x;
+ y += xi->rect.y;
+
+ meta_topic (META_DEBUG_PLACEMENT, "Centered window %s on screen %d xinerama %d\n",
+ window->desc, window->screen->number, xi->number);
+
+ goto done_check_denied_focus;
+ }
+
+ /* Find windows that matter (not minimized, on same workspace
+ * as placed window, may be shaded - if shaded we pretend it isn't
+ * for placement purposes)
+ */
+ {
+ GSList *all_windows;
+ GSList *tmp;
+
+ all_windows = meta_display_list_windows (window->display);
+
+ tmp = all_windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+
+ if (meta_window_showing_on_its_workspace (w) &&
+ w != window &&
+ (window->workspace == w->workspace ||
+ window->on_all_workspaces || w->on_all_workspaces))
+ windows = g_list_prepend (windows, w);
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (all_windows);
+ }
+
+ /* Warning, this is a round trip! */
+ xi = meta_screen_get_current_xinerama (window->screen);
+
+ /* "Origin" placement algorithm */
+ x = xi->rect.x;
+ y = xi->rect.y;
+
+ if (find_first_fit (window, fgeom, windows,
+ xi->number,
+ x, y, &x, &y))
+ goto done_check_denied_focus;
+
+ /* Maximize windows if they are too big for their work area (bit of
+ * a hack here). Assume undecorated windows probably don't intend to
+ * be maximized.
+ */
+ if (window->has_maximize_func && window->decorated &&
+ !window->fullscreen)
+ {
+ MetaRectangle workarea;
+ MetaRectangle outer;
+
+ meta_window_get_work_area_for_xinerama (window,
+ xi->number,
+ &workarea);
+ meta_window_get_outer_rect (window, &outer);
+
+ /* If the window is bigger than the screen, then automaximize. Do NOT
+ * auto-maximize the directions independently. See #419810.
+ */
+ if (outer.width >= workarea.width && outer.height >= workarea.height)
+ {
+ window->maximize_horizontally_after_placement = TRUE;
+ window->maximize_vertically_after_placement = TRUE;
+ }
+ }
+
+ /* If no placement has been done, revert to cascade to avoid
+ * fully overlapping window (e.g. starting multiple terminals)
+ * */
+ if (x == xi->rect.x && y == xi->rect.y)
+ find_next_cascade (window, fgeom, windows, x, y, &x, &y);
+
+ done_check_denied_focus:
+ /* If the window is being denied focus and isn't a transient of the
+ * focus window, we do NOT want it to overlap with the focus window
+ * if at all possible. This is guaranteed to only be called if the
+ * focus_window is non-NULL, and we try to avoid that window.
+ */
+ if (window->denied_focus_and_not_transient)
+ {
+ gboolean found_fit;
+ MetaWindow *focus_window;
+ MetaRectangle overlap;
+
+ focus_window = window->display->focus_window;
+ g_assert (focus_window != NULL);
+
+ /* No need to do anything if the window doesn't overlap at all */
+ found_fit = !meta_rectangle_intersect (&window->rect,
+ &focus_window->rect,
+ &overlap);
+
+ /* Try to do a first fit again, this time only taking into account the
+ * focus window.
+ */
+ if (!found_fit)
+ {
+ GList *focus_window_list;
+ focus_window_list = g_list_prepend (NULL, focus_window);
+
+ /* Reset x and y ("origin" placement algorithm) */
+ x = xi->rect.x;
+ y = xi->rect.y;
+
+ found_fit = find_first_fit (window, fgeom, focus_window_list,
+ xi->number,
+ x, y, &x, &y);
+ g_list_free (focus_window_list);
+ }
+
+ /* If that still didn't work, just place it where we can see as much
+ * as possible.
+ */
+ if (!found_fit)
+ find_most_freespace (window, fgeom, focus_window, x, y, &x, &y);
+ }
+
+ done:
+ g_list_free (windows);
+
+ done_no_constraints:
+
+ *new_x = x;
+ *new_y = y;
+}
diff --git a/src/core/place.h b/src/core/place.h
new file mode 100644
index 00000000..85b7cd3f
--- /dev/null
+++ b/src/core/place.h
@@ -0,0 +1,37 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco window placement */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_PLACE_H
+#define META_PLACE_H
+
+#include "window-private.h"
+#include "frame-private.h"
+
+void meta_window_place (MetaWindow *window,
+ MetaFrameGeometry *fgeom,
+ int x,
+ int y,
+ int *new_x,
+ int *new_y);
+
+#endif
diff --git a/src/core/prefs.c b/src/core/prefs.c
new file mode 100644
index 00000000..494d3da1
--- /dev/null
+++ b/src/core/prefs.c
@@ -0,0 +1,2794 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco preferences */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington, Copyright (C) 2002 Red Hat Inc.
+ * Copyright (C) 2006 Elijah Newren
+ * Copyright (C) 2008 Thomas Thurman
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "prefs.h"
+#include "ui.h"
+#include "util.h"
+#ifdef HAVE_MATECONF
+#include <mateconf/mateconf-client.h>
+#endif
+#include <string.h>
+#include <stdlib.h>
+
+#define MAX_REASONABLE_WORKSPACES 36
+
+#define MAX_COMMANDS (32 + NUM_EXTRA_COMMANDS)
+#define NUM_EXTRA_COMMANDS 2
+#define SCREENSHOT_COMMAND_IDX (MAX_COMMANDS - 2)
+#define WIN_SCREENSHOT_COMMAND_IDX (MAX_COMMANDS - 1)
+
+/* If you add a key, it needs updating in init() and in the mateconf
+ * notify listener and of course in the .schemas file.
+ *
+ * Keys which are handled by one of the unified handlers below are
+ * not given a name here, because the purpose of the unified handlers
+ * is that keys should be referred to exactly once.
+ */
+#define KEY_TITLEBAR_FONT "/apps/marco/general/titlebar_font"
+#define KEY_NUM_WORKSPACES "/apps/marco/general/num_workspaces"
+#define KEY_COMPOSITOR "/apps/marco/general/compositing_manager"
+#define KEY_MATE_ACCESSIBILITY "/desktop/mate/interface/accessibility"
+
+#define KEY_COMMAND_DIRECTORY "/apps/marco/keybinding_commands"
+#define KEY_COMMAND_PREFIX "/apps/marco/keybinding_commands/command_"
+
+#define KEY_TERMINAL_DIR "/desktop/mate/applications/terminal"
+#define KEY_TERMINAL_COMMAND KEY_TERMINAL_DIR "/exec"
+
+#define KEY_SCREEN_BINDINGS_PREFIX "/apps/marco/global_keybindings"
+#define KEY_WINDOW_BINDINGS_PREFIX "/apps/marco/window_keybindings"
+#define KEY_LIST_BINDINGS_SUFFIX "_list"
+
+#define KEY_WORKSPACE_NAME_DIRECTORY "/apps/marco/workspace_names"
+#define KEY_WORKSPACE_NAME_PREFIX "/apps/marco/workspace_names/name_"
+
+
+#ifdef HAVE_MATECONF
+static MateConfClient *default_client = NULL;
+static GList *changes = NULL;
+static guint changed_idle;
+static GList *listeners = NULL;
+#endif
+
+static gboolean use_system_font = FALSE;
+static PangoFontDescription *titlebar_font = NULL;
+static MetaVirtualModifier mouse_button_mods = Mod1Mask;
+static MetaFocusMode focus_mode = META_FOCUS_MODE_CLICK;
+static MetaFocusNewWindows focus_new_windows = META_FOCUS_NEW_WINDOWS_SMART;
+static gboolean raise_on_click = TRUE;
+static char* current_theme = NULL;
+static int num_workspaces = 4;
+static MetaActionTitlebar action_double_click_titlebar = META_ACTION_TITLEBAR_TOGGLE_MAXIMIZE;
+static MetaActionTitlebar action_middle_click_titlebar = META_ACTION_TITLEBAR_LOWER;
+static MetaActionTitlebar action_right_click_titlebar = META_ACTION_TITLEBAR_MENU;
+static gboolean application_based = FALSE;
+static gboolean disable_workarounds = FALSE;
+static gboolean auto_raise = FALSE;
+static gboolean auto_raise_delay = 500;
+static gboolean provide_visual_bell = FALSE;
+static gboolean bell_is_audible = TRUE;
+static gboolean reduced_resources = FALSE;
+static gboolean mate_accessibility = FALSE;
+static gboolean mate_animations = TRUE;
+static char *cursor_theme = NULL;
+static int cursor_size = 24;
+static gboolean compositing_manager = FALSE;
+static gboolean resize_with_right_button = FALSE;
+static gboolean force_fullscreen = TRUE;
+
+static MetaVisualBellType visual_bell_type = META_VISUAL_BELL_FULLSCREEN_FLASH;
+static MetaButtonLayout button_layout;
+
+/* The screenshot commands are at the end */
+static char *commands[MAX_COMMANDS] = { NULL, };
+
+static char *terminal_command = NULL;
+
+static char *workspace_names[MAX_REASONABLE_WORKSPACES] = { NULL, };
+
+#ifdef HAVE_MATECONF
+static gboolean handle_preference_update_enum (const gchar *key, MateConfValue *value);
+
+static gboolean update_key_binding (const char *name,
+ const char *value);
+static gboolean find_and_update_list_binding (MetaKeyPref *bindings,
+ const char *name,
+ GSList *value);
+static gboolean update_key_list_binding (const char *name,
+ GSList *value);
+static gboolean update_command (const char *name,
+ const char *value);
+static gboolean update_workspace_name (const char *name,
+ const char *value);
+
+static void change_notify (MateConfClient *client,
+ guint cnxn_id,
+ MateConfEntry *entry,
+ gpointer user_data);
+
+static char* mateconf_key_for_workspace_name (int i);
+
+static void queue_changed (MetaPreference pref);
+
+typedef enum
+ {
+ META_LIST_OF_STRINGS,
+ META_LIST_OF_MATECONFVALUE_STRINGS
+ } MetaStringListType;
+
+static gboolean update_list_binding (MetaKeyPref *binding,
+ GSList *value,
+ MetaStringListType type_of_value);
+
+static void cleanup_error (GError **error);
+static gboolean get_bool (const char *key, gboolean *val);
+static void maybe_give_disable_workarounds_warning (void);
+
+static void titlebar_handler (MetaPreference, const gchar*, gboolean*);
+static void theme_name_handler (MetaPreference, const gchar*, gboolean*);
+static void mouse_button_mods_handler (MetaPreference, const gchar*, gboolean*);
+static void button_layout_handler (MetaPreference, const gchar*, gboolean*);
+
+#endif /* HAVE_MATECONF */
+
+static gboolean update_binding (MetaKeyPref *binding,
+ const char *value);
+
+static void init_bindings (void);
+static void init_commands (void);
+static void init_workspace_names (void);
+
+#ifndef HAVE_MATECONF
+static void init_button_layout (void);
+#endif /* !HAVE_MATECONF */
+
+#ifdef HAVE_MATECONF
+
+typedef struct
+{
+ MetaPrefsChangedFunc func;
+ gpointer data;
+} MetaPrefsListener;
+
+static MateConfEnumStringPair symtab_focus_mode[] =
+ {
+ { META_FOCUS_MODE_CLICK, "click" },
+ { META_FOCUS_MODE_SLOPPY, "sloppy" },
+ { META_FOCUS_MODE_MOUSE, "mouse" },
+ { 0, NULL },
+ };
+
+static MateConfEnumStringPair symtab_focus_new_windows[] =
+ {
+ { META_FOCUS_NEW_WINDOWS_SMART, "smart" },
+ { META_FOCUS_NEW_WINDOWS_STRICT, "strict" },
+ { 0, NULL },
+ };
+
+static MateConfEnumStringPair symtab_visual_bell_type[] =
+ {
+ /* Note to the reader: 0 is an invalid value; these start at 1. */
+ { META_VISUAL_BELL_FULLSCREEN_FLASH, "fullscreen" },
+ { META_VISUAL_BELL_FRAME_FLASH, "frame_flash" },
+ { 0, NULL },
+ };
+
+static MateConfEnumStringPair symtab_titlebar_action[] =
+ {
+ { META_ACTION_TITLEBAR_TOGGLE_SHADE, "toggle_shade" },
+ { META_ACTION_TITLEBAR_TOGGLE_MAXIMIZE, "toggle_maximize" },
+ { META_ACTION_TITLEBAR_TOGGLE_MAXIMIZE_HORIZONTALLY,
+ "toggle_maximize_horizontally" },
+ { META_ACTION_TITLEBAR_TOGGLE_MAXIMIZE_VERTICALLY,
+ "toggle_maximize_vertically" },
+ { META_ACTION_TITLEBAR_MINIMIZE, "minimize" },
+ { META_ACTION_TITLEBAR_NONE, "none" },
+ { META_ACTION_TITLEBAR_LOWER, "lower" },
+ { META_ACTION_TITLEBAR_MENU, "menu" },
+ { META_ACTION_TITLEBAR_TOGGLE_SHADE, "toggle_shade" },
+ { 0, NULL },
+ };
+
+/**
+ * The details of one preference which is constrained to be
+ * one of a small number of string values-- in other words,
+ * an enumeration.
+ *
+ * We could have done this other ways. One particularly attractive
+ * possibility would have been to represent the entire symbol table
+ * as a space-separated string literal in the list of symtabs, so
+ * the focus mode enums could have been represented simply by
+ * "click sloppy mouse". However, the simplicity gained would have
+ * been outweighed by the bugs caused when the ordering of the enum
+ * strings got out of sync with the actual enum statement. Also,
+ * there is existing library code to use this kind of symbol tables.
+ *
+ * Other things we might consider doing to clean this up in the
+ * future include:
+ *
+ * - most of the keys begin with the same prefix, and perhaps we
+ * could assume it if they don't start with a slash
+ *
+ * - there are several cases where a single identifier could be used
+ * to generate an entire entry, and perhaps this could be done
+ * with a macro. (This would reduce clarity, however, and is
+ * probably a bad thing.)
+ *
+ * - these types all begin with a gchar* (and contain a MetaPreference)
+ * and we can factor out the repeated code in the handlers by taking
+ * advantage of this using some kind of union arrangement.
+ */
+typedef struct
+{
+ gchar *key;
+ MetaPreference pref;
+ MateConfEnumStringPair *symtab;
+ gpointer target;
+} MetaEnumPreference;
+
+typedef struct
+{
+ gchar *key;
+ MetaPreference pref;
+ gboolean *target;
+ gboolean becomes_true_on_destruction;
+} MetaBoolPreference;
+
+typedef struct
+{
+ gchar *key;
+ MetaPreference pref;
+
+ /**
+ * A handler. Many of the string preferences aren't stored as
+ * strings and need parsing; others of them have default values
+ * which can't be solved in the general case. If you include a
+ * function pointer here, it will be called before the string
+ * value is written out to the target variable.
+ *
+ * The function is passed two arguments: the preference, and
+ * the new string as a gchar*. It returns a gboolean;
+ * only if this is true, the listeners will be informed that
+ * the preference has changed.
+ *
+ * This may be NULL. If it is, see "target", below.
+ */
+ void (*handler) (MetaPreference pref,
+ const gchar *string_value,
+ gboolean *inform_listeners);
+
+ /**
+ * Where to write the incoming string.
+ *
+ * This must be NULL if the handler is non-NULL.
+ * If the incoming string is NULL, no change will be made.
+ */
+ gchar **target;
+
+} MetaStringPreference;
+
+#define METAINTPREFERENCE_NO_CHANGE_ON_DESTROY G_MININT
+
+typedef struct
+{
+ gchar *key;
+ MetaPreference pref;
+ gint *target;
+ /**
+ * Minimum and maximum values of the integer.
+ * If the new value is out of bounds, it will be discarded with a warning.
+ */
+ gint minimum, maximum;
+ /**
+ * Value to use if the key is destroyed.
+ * If this is METAINTPREFERENCE_NO_CHANGE_ON_DESTROY, it will
+ * not be changed when the key is destroyed.
+ */
+ gint value_if_destroyed;
+} MetaIntPreference;
+
+/* FIXMEs: */
+/* @@@ Don't use NULL lines at the end; glib can tell you how big it is */
+/* @@@ /apps/marco/general should be assumed if first char is not / */
+/* @@@ Will it ever be possible to merge init and update? If not, why not? */
+
+static MetaEnumPreference preferences_enum[] =
+ {
+ { "/apps/marco/general/focus_new_windows",
+ META_PREF_FOCUS_NEW_WINDOWS,
+ symtab_focus_new_windows,
+ &focus_new_windows,
+ },
+ { "/apps/marco/general/focus_mode",
+ META_PREF_FOCUS_MODE,
+ symtab_focus_mode,
+ &focus_mode,
+ },
+ { "/apps/marco/general/visual_bell_type",
+ META_PREF_VISUAL_BELL_TYPE,
+ symtab_visual_bell_type,
+ &visual_bell_type,
+ },
+ { "/apps/marco/general/action_double_click_titlebar",
+ META_PREF_ACTION_DOUBLE_CLICK_TITLEBAR,
+ symtab_titlebar_action,
+ &action_double_click_titlebar,
+ },
+ { "/apps/marco/general/action_middle_click_titlebar",
+ META_PREF_ACTION_MIDDLE_CLICK_TITLEBAR,
+ symtab_titlebar_action,
+ &action_middle_click_titlebar,
+ },
+ { "/apps/marco/general/action_right_click_titlebar",
+ META_PREF_ACTION_RIGHT_CLICK_TITLEBAR,
+ symtab_titlebar_action,
+ &action_right_click_titlebar,
+ },
+ { NULL, 0, NULL, NULL },
+ };
+
+static MetaBoolPreference preferences_bool[] =
+ {
+ { "/apps/marco/general/raise_on_click",
+ META_PREF_RAISE_ON_CLICK,
+ &raise_on_click,
+ TRUE,
+ },
+ { "/apps/marco/general/titlebar_uses_system_font",
+ META_PREF_TITLEBAR_FONT, /* note! shares a pref */
+ &use_system_font,
+ TRUE,
+ },
+ { "/apps/marco/general/application_based",
+ META_PREF_APPLICATION_BASED,
+ NULL, /* feature is known but disabled */
+ FALSE,
+ },
+ { "/apps/marco/general/disable_workarounds",
+ META_PREF_DISABLE_WORKAROUNDS,
+ &disable_workarounds,
+ FALSE,
+ },
+ { "/apps/marco/general/auto_raise",
+ META_PREF_AUTO_RAISE,
+ &auto_raise,
+ FALSE,
+ },
+ { "/apps/marco/general/visual_bell",
+ META_PREF_VISUAL_BELL,
+ &provide_visual_bell, /* FIXME: change the name: it's confusing */
+ FALSE,
+ },
+ { "/apps/marco/general/audible_bell",
+ META_PREF_AUDIBLE_BELL,
+ &bell_is_audible, /* FIXME: change the name: it's confusing */
+ FALSE,
+ },
+ { "/apps/marco/general/reduced_resources",
+ META_PREF_REDUCED_RESOURCES,
+ &reduced_resources,
+ FALSE,
+ },
+ { "/desktop/mate/interface/accessibility",
+ META_PREF_MATE_ACCESSIBILITY,
+ &mate_accessibility,
+ FALSE,
+ },
+ { "/desktop/mate/interface/enable_animations",
+ META_PREF_MATE_ANIMATIONS,
+ &mate_animations,
+ TRUE,
+ },
+ { "/apps/marco/general/compositing_manager",
+ META_PREF_COMPOSITING_MANAGER,
+ &compositing_manager,
+ FALSE,
+ },
+ { "/apps/marco/general/resize_with_right_button",
+ META_PREF_RESIZE_WITH_RIGHT_BUTTON,
+ &resize_with_right_button,
+ FALSE,
+ },
+ { NULL, 0, NULL, FALSE },
+ };
+
+static MetaStringPreference preferences_string[] =
+ {
+ { "/apps/marco/general/mouse_button_modifier",
+ META_PREF_MOUSE_BUTTON_MODS,
+ mouse_button_mods_handler,
+ NULL,
+ },
+ { "/apps/marco/general/theme",
+ META_PREF_THEME,
+ theme_name_handler,
+ NULL,
+ },
+ { KEY_TITLEBAR_FONT,
+ META_PREF_TITLEBAR_FONT,
+ titlebar_handler,
+ NULL,
+ },
+ { KEY_TERMINAL_COMMAND,
+ META_PREF_TERMINAL_COMMAND,
+ NULL,
+ &terminal_command,
+ },
+ { "/apps/marco/general/button_layout",
+ META_PREF_BUTTON_LAYOUT,
+ button_layout_handler,
+ NULL,
+ },
+ { "/desktop/mate/peripherals/mouse/cursor_theme",
+ META_PREF_CURSOR_THEME,
+ NULL,
+ &cursor_theme,
+ },
+ { NULL, 0, NULL, NULL },
+ };
+
+static MetaIntPreference preferences_int[] =
+ {
+ { "/apps/marco/general/num_workspaces",
+ META_PREF_NUM_WORKSPACES,
+ &num_workspaces,
+ /* I would actually recommend we change the destroy value to 4
+ * and get rid of METAINTPREFERENCE_NO_CHANGE_ON_DESTROY entirely.
+ * -- tthurman
+ */
+ 1, MAX_REASONABLE_WORKSPACES, METAINTPREFERENCE_NO_CHANGE_ON_DESTROY,
+ },
+ { "/apps/marco/general/auto_raise_delay",
+ META_PREF_AUTO_RAISE_DELAY,
+ &auto_raise_delay,
+ 0, 10000, 0,
+ /* @@@ Get rid of MAX_REASONABLE_AUTO_RAISE_DELAY */
+ },
+ { "/desktop/mate/peripherals/mouse/cursor_size",
+ META_PREF_CURSOR_SIZE,
+ &cursor_size,
+ 1, 128, 24,
+ },
+ { NULL, 0, NULL, 0, 0, 0, },
+ };
+
+static void
+handle_preference_init_enum (void)
+{
+ MetaEnumPreference *cursor = preferences_enum;
+
+ while (cursor->key!=NULL)
+ {
+ char *value;
+ GError *error = NULL;
+
+ if (cursor->target==NULL)
+ {
+ ++cursor;
+ continue;
+ }
+
+ value = mateconf_client_get_string (default_client,
+ cursor->key,
+ &error);
+ cleanup_error (&error);
+
+ if (value==NULL)
+ {
+ ++cursor;
+ continue;
+ }
+
+ if (!mateconf_string_to_enum (cursor->symtab,
+ value,
+ (gint *) cursor->target))
+ meta_warning (_("MateConf key '%s' is set to an invalid value\n"),
+ cursor->key);
+
+ g_free (value);
+
+ ++cursor;
+ }
+}
+
+static void
+handle_preference_init_bool (void)
+{
+ MetaBoolPreference *cursor = preferences_bool;
+
+ while (cursor->key!=NULL)
+ {
+ if (cursor->target!=NULL)
+ get_bool (cursor->key, cursor->target);
+
+ ++cursor;
+ }
+
+ maybe_give_disable_workarounds_warning ();
+}
+
+static void
+handle_preference_init_string (void)
+{
+ MetaStringPreference *cursor = preferences_string;
+
+ while (cursor->key!=NULL)
+ {
+ char *value;
+ GError *error = NULL;
+ gboolean dummy = TRUE;
+
+ /* the string "value" will be newly allocated */
+ value = mateconf_client_get_string (default_client,
+ cursor->key,
+ &error);
+ cleanup_error (&error);
+
+ if (cursor->handler)
+ {
+ if (cursor->target)
+ meta_bug ("%s has both a target and a handler\n", cursor->key);
+
+ cursor->handler (cursor->pref, value, &dummy);
+
+ g_free (value);
+ }
+ else if (cursor->target)
+ {
+ if (*(cursor->target))
+ g_free (*(cursor->target));
+
+ *(cursor->target) = value;
+ }
+
+ ++cursor;
+ }
+}
+
+static void
+handle_preference_init_int (void)
+{
+ MetaIntPreference *cursor = preferences_int;
+
+
+ while (cursor->key!=NULL)
+ {
+ gint value;
+ GError *error = NULL;
+
+ value = mateconf_client_get_int (default_client,
+ cursor->key,
+ &error);
+ cleanup_error (&error);
+
+ if (value < cursor->minimum || value > cursor->maximum)
+ {
+ meta_warning (_("%d stored in MateConf key %s is out of range %d to %d\n"),
+ value, cursor->key, cursor->minimum, cursor->maximum);
+ /* Former behaviour for out-of-range values was:
+ * - number of workspaces was clamped;
+ * - auto raise delay was always reset to zero even if too high!;
+ * - cursor size was ignored.
+ *
+ * These seem to be meaningless variations. If they did
+ * have meaning we could have put them into MetaIntPreference.
+ * The last of these is the closest to how we behave for
+ * other types, so I think we should standardise on that.
+ */
+ }
+ else if (cursor->target)
+ *cursor->target = value;
+
+ ++cursor;
+ }
+}
+
+static gboolean
+handle_preference_update_enum (const gchar *key, MateConfValue *value)
+{
+ MetaEnumPreference *cursor = preferences_enum;
+ gint old_value;
+
+ while (cursor->key!=NULL && strcmp (key, cursor->key)!=0)
+ ++cursor;
+
+ if (cursor->key==NULL)
+ /* Didn't recognise that key. */
+ return FALSE;
+
+ /* Setting it to null (that is, removing it) always means
+ * "don't change".
+ */
+
+ if (value==NULL)
+ return TRUE;
+
+ /* Check the type. Enums are always strings. */
+
+ if (value->type != MATECONF_VALUE_STRING)
+ {
+ meta_warning (_("MateConf key \"%s\" is set to an invalid type\n"),
+ key);
+ /* But we did recognise it. */
+ return TRUE;
+ }
+
+ /* We need to know whether the value changes, so
+ * store the current value away.
+ */
+
+ old_value = * ((gint *) cursor->target);
+
+ /* Now look it up... */
+
+ if (!mateconf_string_to_enum (cursor->symtab,
+ mateconf_value_get_string (value),
+ (gint *) cursor->target))
+ {
+ /*
+ * We found it, but it was invalid. Complain.
+ *
+ * FIXME: This replicates the original behaviour, but in the future
+ * we might consider reverting invalid keys to their original values.
+ * (We know the old value, so we can look up a suitable string in
+ * the symtab.)
+ *
+ * (Empty comment follows so the translators don't see this.)
+ */
+
+ /* */
+ meta_warning (_("MateConf key '%s' is set to an invalid value\n"),
+ key);
+ return TRUE;
+ }
+
+ /* Did it change? If so, tell the listeners about it. */
+
+ if (old_value != *((gint *) cursor->target))
+ queue_changed (cursor->pref);
+
+ return TRUE;
+}
+
+static gboolean
+handle_preference_update_bool (const gchar *key, MateConfValue *value)
+{
+ MetaBoolPreference *cursor = preferences_bool;
+ gboolean old_value;
+
+ while (cursor->key!=NULL && strcmp (key, cursor->key)!=0)
+ ++cursor;
+
+ if (cursor->key==NULL)
+ /* Didn't recognise that key. */
+ return FALSE;
+
+ if (cursor->target==NULL)
+ /* No work for us to do. */
+ return TRUE;
+
+ if (value==NULL)
+ {
+ /* Value was destroyed; let's get out of here. */
+
+ if (cursor->becomes_true_on_destruction)
+ /* This preserves the behaviour of the old system, but
+ * for all I know that might have been an oversight.
+ */
+ *((gboolean *)cursor->target) = TRUE;
+
+ return TRUE;
+ }
+
+ /* Check the type. */
+
+ if (value->type != MATECONF_VALUE_BOOL)
+ {
+ meta_warning (_("MateConf key \"%s\" is set to an invalid type\n"),
+ key);
+ /* But we did recognise it. */
+ return TRUE;
+ }
+
+ /* We need to know whether the value changes, so
+ * store the current value away.
+ */
+
+ old_value = * ((gboolean *) cursor->target);
+
+ /* Now look it up... */
+
+ *((gboolean *) cursor->target) = mateconf_value_get_bool (value);
+
+ /* Did it change? If so, tell the listeners about it. */
+
+ if (old_value != *((gboolean *) cursor->target))
+ queue_changed (cursor->pref);
+
+ if (cursor->pref==META_PREF_DISABLE_WORKAROUNDS)
+ maybe_give_disable_workarounds_warning ();
+
+ return TRUE;
+}
+
+static gboolean
+handle_preference_update_string (const gchar *key, MateConfValue *value)
+{
+ MetaStringPreference *cursor = preferences_string;
+ const gchar *value_as_string;
+ gboolean inform_listeners = TRUE;
+
+ while (cursor->key!=NULL && strcmp (key, cursor->key)!=0)
+ ++cursor;
+
+ if (cursor->key==NULL)
+ /* Didn't recognise that key. */
+ return FALSE;
+
+ if (value==NULL)
+ return TRUE;
+
+ /* Check the type. */
+
+ if (value->type != MATECONF_VALUE_STRING)
+ {
+ meta_warning (_("MateConf key \"%s\" is set to an invalid type\n"),
+ key);
+ /* But we did recognise it. */
+ return TRUE;
+ }
+
+ /* Docs: "The returned string is not a copy, don't try to free it." */
+ value_as_string = mateconf_value_get_string (value);
+
+ if (cursor->handler)
+ cursor->handler (cursor->pref, value_as_string, &inform_listeners);
+ else if (cursor->target)
+ {
+ if (*(cursor->target))
+ g_free(*(cursor->target));
+
+ if (value_as_string!=NULL)
+ *(cursor->target) = g_strdup (value_as_string);
+ else
+ *(cursor->target) = NULL;
+
+ inform_listeners =
+ (value_as_string==NULL && *(cursor->target)==NULL) ||
+ (value_as_string!=NULL && *(cursor->target)!=NULL &&
+ strcmp (value_as_string, *(cursor->target))==0);
+ }
+
+ if (inform_listeners)
+ queue_changed (cursor->pref);
+
+ return TRUE;
+}
+
+static gboolean
+handle_preference_update_int (const gchar *key, MateConfValue *value)
+{
+ MetaIntPreference *cursor = preferences_int;
+ gint new_value;
+
+ while (cursor->key!=NULL && strcmp (key, cursor->key)!=0)
+ ++cursor;
+
+ if (cursor->key==NULL)
+ /* Didn't recognise that key. */
+ return FALSE;
+
+ if (cursor->target==NULL)
+ /* No work for us to do. */
+ return TRUE;
+
+ if (value==NULL)
+ {
+ /* Value was destroyed. */
+
+ if (cursor->value_if_destroyed != METAINTPREFERENCE_NO_CHANGE_ON_DESTROY)
+ *((gint *)cursor->target) = cursor->value_if_destroyed;
+
+ return TRUE;
+ }
+
+ /* Check the type. */
+
+ if (value->type != MATECONF_VALUE_INT)
+ {
+ meta_warning (_("MateConf key \"%s\" is set to an invalid type\n"),
+ key);
+ /* But we did recognise it. */
+ return TRUE;
+ }
+
+ new_value = mateconf_value_get_int (value);
+
+ if (new_value < cursor->minimum || new_value > cursor->maximum)
+ {
+ meta_warning (_("%d stored in MateConf key %s is out of range %d to %d\n"),
+ new_value, cursor->key,
+ cursor->minimum, cursor->maximum);
+ return TRUE;
+ }
+
+ /* Did it change? If so, tell the listeners about it. */
+
+ if (*cursor->target != new_value)
+ {
+ *cursor->target = new_value;
+ queue_changed (cursor->pref);
+ }
+
+ return TRUE;
+
+}
+
+
+/****************************************************************************/
+/* Listeners. */
+/****************************************************************************/
+
+void
+meta_prefs_add_listener (MetaPrefsChangedFunc func,
+ gpointer data)
+{
+ MetaPrefsListener *l;
+
+ l = g_new (MetaPrefsListener, 1);
+ l->func = func;
+ l->data = data;
+
+ listeners = g_list_prepend (listeners, l);
+}
+
+void
+meta_prefs_remove_listener (MetaPrefsChangedFunc func,
+ gpointer data)
+{
+ GList *tmp;
+
+ tmp = listeners;
+ while (tmp != NULL)
+ {
+ MetaPrefsListener *l = tmp->data;
+
+ if (l->func == func &&
+ l->data == data)
+ {
+ g_free (l);
+ listeners = g_list_delete_link (listeners, tmp);
+
+ return;
+ }
+
+ tmp = tmp->next;
+ }
+
+ meta_bug ("Did not find listener to remove\n");
+}
+
+static void
+emit_changed (MetaPreference pref)
+{
+ GList *tmp;
+ GList *copy;
+
+ meta_topic (META_DEBUG_PREFS, "Notifying listeners that pref %s changed\n",
+ meta_preference_to_string (pref));
+
+ copy = g_list_copy (listeners);
+
+ tmp = copy;
+
+ while (tmp != NULL)
+ {
+ MetaPrefsListener *l = tmp->data;
+
+ (* l->func) (pref, l->data);
+
+ tmp = tmp->next;
+ }
+
+ g_list_free (copy);
+}
+
+static gboolean
+changed_idle_handler (gpointer data)
+{
+ GList *tmp;
+ GList *copy;
+
+ changed_idle = 0;
+
+ copy = g_list_copy (changes); /* reentrancy paranoia */
+
+ g_list_free (changes);
+ changes = NULL;
+
+ tmp = copy;
+ while (tmp != NULL)
+ {
+ MetaPreference pref = GPOINTER_TO_INT (tmp->data);
+
+ emit_changed (pref);
+
+ tmp = tmp->next;
+ }
+
+ g_list_free (copy);
+
+ return FALSE;
+}
+
+static void
+queue_changed (MetaPreference pref)
+{
+ meta_topic (META_DEBUG_PREFS, "Queueing change of pref %s\n",
+ meta_preference_to_string (pref));
+
+ if (g_list_find (changes, GINT_TO_POINTER (pref)) == NULL)
+ changes = g_list_prepend (changes, GINT_TO_POINTER (pref));
+ else
+ meta_topic (META_DEBUG_PREFS, "Change of pref %s was already pending\n",
+ meta_preference_to_string (pref));
+
+ /* add idle at priority below the mateconf notify idle */
+ if (changed_idle == 0)
+ changed_idle = g_idle_add_full (META_PRIORITY_PREFS_NOTIFY,
+ changed_idle_handler, NULL, NULL);
+}
+
+#else /* HAVE_MATECONF */
+
+void
+meta_prefs_add_listener (MetaPrefsChangedFunc func,
+ gpointer data)
+{
+ /* Nothing, because they have mateconf turned off */
+}
+
+void
+meta_prefs_remove_listener (MetaPrefsChangedFunc func,
+ gpointer data)
+{
+ /* Nothing, because they have mateconf turned off */
+}
+
+#endif /* HAVE_MATECONF */
+
+
+/****************************************************************************/
+/* Initialisation. */
+/****************************************************************************/
+
+#ifdef HAVE_MATECONF
+/* @@@ again, use glib's ability to tell you the size of the array */
+static gchar *mateconf_dirs_we_are_interested_in[] = {
+ "/apps/marco",
+ KEY_TERMINAL_DIR,
+ KEY_MATE_ACCESSIBILITY,
+ "/desktop/mate/peripherals/mouse",
+ "/desktop/mate/interface",
+ NULL,
+};
+#endif
+
+void
+meta_prefs_init (void)
+{
+#ifdef HAVE_MATECONF
+ GError *err = NULL;
+ gchar **mateconf_dir_cursor;
+
+ if (default_client != NULL)
+ return;
+
+ /* returns a reference which we hold forever */
+ default_client = mateconf_client_get_default ();
+
+ for (mateconf_dir_cursor=mateconf_dirs_we_are_interested_in;
+ *mateconf_dir_cursor!=NULL;
+ mateconf_dir_cursor++)
+ {
+ mateconf_client_add_dir (default_client,
+ *mateconf_dir_cursor,
+ MATECONF_CLIENT_PRELOAD_RECURSIVE,
+ &err);
+ cleanup_error (&err);
+ }
+
+ /* Pick up initial values. */
+
+ handle_preference_init_enum ();
+ handle_preference_init_bool ();
+ handle_preference_init_string ();
+ handle_preference_init_int ();
+
+ /* @@@ Is there any reason we don't do the add_dir here? */
+ for (mateconf_dir_cursor=mateconf_dirs_we_are_interested_in;
+ *mateconf_dir_cursor!=NULL;
+ mateconf_dir_cursor++)
+ {
+ mateconf_client_notify_add (default_client,
+ *mateconf_dir_cursor,
+ change_notify,
+ NULL,
+ NULL,
+ &err);
+ cleanup_error (&err);
+ }
+
+#else /* HAVE_MATECONF */
+
+ /* Set defaults for some values that can't be set at initialization time of
+ * the static globals. In the case of the theme, note that there is code
+ * elsewhere that will do everything possible to fallback to an existing theme
+ * if the one here does not exist.
+ */
+ titlebar_font = pango_font_description_from_string ("Sans Bold 10");
+ current_theme = g_strdup ("ClearlooksRe");
+
+ init_button_layout();
+#endif /* HAVE_MATECONF */
+
+ init_bindings ();
+ init_commands ();
+ init_workspace_names ();
+}
+
+
+/****************************************************************************/
+/* Updates. */
+/****************************************************************************/
+
+#ifdef HAVE_MATECONF
+
+gboolean (*preference_update_handler[]) (const gchar*, MateConfValue*) = {
+ handle_preference_update_enum,
+ handle_preference_update_bool,
+ handle_preference_update_string,
+ handle_preference_update_int,
+ NULL
+};
+
+static void
+change_notify (MateConfClient *client,
+ guint cnxn_id,
+ MateConfEntry *entry,
+ gpointer user_data)
+{
+ const char *key;
+ MateConfValue *value;
+ gint i=0;
+
+ key = mateconf_entry_get_key (entry);
+ value = mateconf_entry_get_value (entry);
+
+ /* First, search for a handler that might know what to do. */
+
+ /* FIXME: When this is all working, since the first item in every
+ * array is the gchar* of the key, there's no reason we can't
+ * find the correct record for that key here and save code duplication.
+ */
+
+ while (preference_update_handler[i]!=NULL)
+ {
+ if (preference_update_handler[i] (key, value))
+ goto out; /* Get rid of this eventually */
+
+ i++;
+ }
+
+ if (g_str_has_prefix (key, KEY_WINDOW_BINDINGS_PREFIX) ||
+ g_str_has_prefix (key, KEY_SCREEN_BINDINGS_PREFIX))
+ {
+ if (g_str_has_suffix (key, KEY_LIST_BINDINGS_SUFFIX))
+ {
+ GSList *list;
+
+ if (value && value->type != MATECONF_VALUE_LIST)
+ {
+ meta_warning (_("MateConf key \"%s\" is set to an invalid type\n"),
+ key);
+ goto out;
+ }
+
+ list = value ? mateconf_value_get_list (value) : NULL;
+
+ if (update_key_list_binding (key, list))
+ queue_changed (META_PREF_KEYBINDINGS);
+ }
+ else
+ {
+ const char *str;
+
+ if (value && value->type != MATECONF_VALUE_STRING)
+ {
+ meta_warning (_("MateConf key \"%s\" is set to an invalid type\n"),
+ key);
+ goto out;
+ }
+
+ str = value ? mateconf_value_get_string (value) : NULL;
+
+ if (update_key_binding (key, str))
+ queue_changed (META_PREF_KEYBINDINGS);
+ }
+ }
+ else if (g_str_has_prefix (key, KEY_COMMAND_PREFIX))
+ {
+ const char *str;
+
+ if (value && value->type != MATECONF_VALUE_STRING)
+ {
+ meta_warning (_("MateConf key \"%s\" is set to an invalid type\n"),
+ key);
+ goto out;
+ }
+
+ str = value ? mateconf_value_get_string (value) : NULL;
+
+ if (update_command (key, str))
+ queue_changed (META_PREF_COMMANDS);
+ }
+ else if (g_str_has_prefix (key, KEY_WORKSPACE_NAME_PREFIX))
+ {
+ const char *str;
+
+ if (value && value->type != MATECONF_VALUE_STRING)
+ {
+ meta_warning (_("MateConf key \"%s\" is set to an invalid type\n"),
+ key);
+ goto out;
+ }
+
+ str = value ? mateconf_value_get_string (value) : NULL;
+
+ if (update_workspace_name (key, str))
+ queue_changed (META_PREF_WORKSPACE_NAMES);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_PREFS, "Key %s doesn't mean anything to Marco\n",
+ key);
+ }
+
+ out:
+ /* nothing */
+ return; /* AIX compiler wants something after a label like out: */
+}
+
+static void
+cleanup_error (GError **error)
+{
+ if (*error)
+ {
+ meta_warning ("%s\n", (*error)->message);
+
+ g_error_free (*error);
+ *error = NULL;
+ }
+}
+
+/* get_bool returns TRUE if *val is filled in, FALSE otherwise */
+/* @@@ probably worth moving this inline; only used once */
+static gboolean
+get_bool (const char *key, gboolean *val)
+{
+ GError *err = NULL;
+ MateConfValue *value;
+ gboolean filled_in = FALSE;
+
+ value = mateconf_client_get (default_client, key, &err);
+ cleanup_error (&err);
+ if (value)
+ {
+ if (value->type == MATECONF_VALUE_BOOL)
+ {
+ *val = mateconf_value_get_bool (value);
+ filled_in = TRUE;
+ }
+ mateconf_value_free (value);
+ }
+
+ return filled_in;
+}
+
+/**
+ * Special case: give a warning the first time disable_workarounds
+ * is turned on.
+ */
+static void
+maybe_give_disable_workarounds_warning (void)
+{
+ static gboolean first_disable = TRUE;
+
+ if (first_disable && disable_workarounds)
+ {
+ first_disable = FALSE;
+
+ meta_warning (_("Workarounds for broken applications disabled. "
+ "Some applications may not behave properly.\n"));
+ }
+}
+
+#endif /* HAVE_MATECONF */
+
+MetaVirtualModifier
+meta_prefs_get_mouse_button_mods (void)
+{
+ return mouse_button_mods;
+}
+
+MetaFocusMode
+meta_prefs_get_focus_mode (void)
+{
+ return focus_mode;
+}
+
+MetaFocusNewWindows
+meta_prefs_get_focus_new_windows (void)
+{
+ return focus_new_windows;
+}
+
+gboolean
+meta_prefs_get_raise_on_click (void)
+{
+ /* Force raise_on_click on for click-to-focus, as requested by Havoc
+ * in #326156.
+ */
+ return raise_on_click || focus_mode == META_FOCUS_MODE_CLICK;
+}
+
+const char*
+meta_prefs_get_theme (void)
+{
+ return current_theme;
+}
+
+const char*
+meta_prefs_get_cursor_theme (void)
+{
+ return cursor_theme;
+}
+
+int
+meta_prefs_get_cursor_size (void)
+{
+ return cursor_size;
+}
+
+
+/****************************************************************************/
+/* Handlers for string preferences. */
+/****************************************************************************/
+
+#ifdef HAVE_MATECONF
+
+static void
+titlebar_handler (MetaPreference pref,
+ const gchar *string_value,
+ gboolean *inform_listeners)
+{
+ PangoFontDescription *new_desc = NULL;
+
+ if (string_value)
+ new_desc = pango_font_description_from_string (string_value);
+
+ if (new_desc == NULL)
+ {
+ meta_warning (_("Could not parse font description "
+ "\"%s\" from MateConf key %s\n"),
+ string_value ? string_value : "(null)",
+ KEY_TITLEBAR_FONT);
+
+ *inform_listeners = FALSE;
+
+ return;
+ }
+
+ /* Is the new description the same as the old? */
+
+ if (titlebar_font &&
+ pango_font_description_equal (new_desc, titlebar_font))
+ {
+ pango_font_description_free (new_desc);
+ *inform_listeners = FALSE;
+ return;
+ }
+
+ /* No, so free the old one and put ours in instead. */
+
+ if (titlebar_font)
+ pango_font_description_free (titlebar_font);
+
+ titlebar_font = new_desc;
+
+}
+
+static void
+theme_name_handler (MetaPreference pref,
+ const gchar *string_value,
+ gboolean *inform_listeners)
+{
+ g_free (current_theme);
+
+ /* Fallback crackrock */
+ if (string_value == NULL)
+ current_theme = g_strdup ("ClearlooksRe");
+ else
+ current_theme = g_strdup (string_value);
+}
+
+static void
+mouse_button_mods_handler (MetaPreference pref,
+ const gchar *string_value,
+ gboolean *inform_listeners)
+{
+ MetaVirtualModifier mods;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Mouse button modifier has new mateconf value \"%s\"\n",
+ string_value);
+ if (string_value && meta_ui_parse_modifier (string_value, &mods))
+ {
+ mouse_button_mods = mods;
+ }
+ else
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Failed to parse new mateconf value\n");
+
+ meta_warning (_("\"%s\" found in configuration database is "
+ "not a valid value for mouse button modifier\n"),
+ string_value);
+
+ *inform_listeners = FALSE;
+ }
+}
+
+static gboolean
+button_layout_equal (const MetaButtonLayout *a,
+ const MetaButtonLayout *b)
+{
+ int i;
+
+ i = 0;
+ while (i < MAX_BUTTONS_PER_CORNER)
+ {
+ if (a->left_buttons[i] != b->left_buttons[i])
+ return FALSE;
+ if (a->right_buttons[i] != b->right_buttons[i])
+ return FALSE;
+ if (a->left_buttons_has_spacer[i] != b->left_buttons_has_spacer[i])
+ return FALSE;
+ if (a->right_buttons_has_spacer[i] != b->right_buttons_has_spacer[i])
+ return FALSE;
+ ++i;
+ }
+
+ return TRUE;
+}
+
+static MetaButtonFunction
+button_function_from_string (const char *str)
+{
+ /* FIXME: mateconf_string_to_enum is the obvious way to do this */
+
+ if (strcmp (str, "menu") == 0)
+ return META_BUTTON_FUNCTION_MENU;
+ else if (strcmp (str, "minimize") == 0)
+ return META_BUTTON_FUNCTION_MINIMIZE;
+ else if (strcmp (str, "maximize") == 0)
+ return META_BUTTON_FUNCTION_MAXIMIZE;
+ else if (strcmp (str, "close") == 0)
+ return META_BUTTON_FUNCTION_CLOSE;
+ else if (strcmp (str, "shade") == 0)
+ return META_BUTTON_FUNCTION_SHADE;
+ else if (strcmp (str, "above") == 0)
+ return META_BUTTON_FUNCTION_ABOVE;
+ else if (strcmp (str, "stick") == 0)
+ return META_BUTTON_FUNCTION_STICK;
+ else
+ /* don't know; give up */
+ return META_BUTTON_FUNCTION_LAST;
+}
+
+static MetaButtonFunction
+button_opposite_function (MetaButtonFunction ofwhat)
+{
+ switch (ofwhat)
+ {
+ case META_BUTTON_FUNCTION_SHADE:
+ return META_BUTTON_FUNCTION_UNSHADE;
+ case META_BUTTON_FUNCTION_UNSHADE:
+ return META_BUTTON_FUNCTION_SHADE;
+
+ case META_BUTTON_FUNCTION_ABOVE:
+ return META_BUTTON_FUNCTION_UNABOVE;
+ case META_BUTTON_FUNCTION_UNABOVE:
+ return META_BUTTON_FUNCTION_ABOVE;
+
+ case META_BUTTON_FUNCTION_STICK:
+ return META_BUTTON_FUNCTION_UNSTICK;
+ case META_BUTTON_FUNCTION_UNSTICK:
+ return META_BUTTON_FUNCTION_STICK;
+
+ default:
+ return META_BUTTON_FUNCTION_LAST;
+ }
+}
+
+static void
+button_layout_handler (MetaPreference pref,
+ const gchar *string_value,
+ gboolean *inform_listeners)
+{
+ MetaButtonLayout new_layout;
+ char **sides = NULL;
+ int i;
+
+ /* We need to ignore unknown button functions, for
+ * compat with future versions
+ */
+
+ if (string_value)
+ sides = g_strsplit (string_value, ":", 2);
+
+ if (sides != NULL && sides[0] != NULL)
+ {
+ char **buttons;
+ int b;
+ gboolean used[META_BUTTON_FUNCTION_LAST];
+
+ i = 0;
+ while (i < META_BUTTON_FUNCTION_LAST)
+ {
+ used[i] = FALSE;
+ new_layout.left_buttons_has_spacer[i] = FALSE;
+ ++i;
+ }
+
+ buttons = g_strsplit (sides[0], ",", -1);
+ i = 0;
+ b = 0;
+ while (buttons[b] != NULL)
+ {
+ MetaButtonFunction f = button_function_from_string (buttons[b]);
+ if (i > 0 && strcmp("spacer", buttons[b]) == 0)
+ {
+ new_layout.left_buttons_has_spacer[i-1] = TRUE;
+ f = button_opposite_function (f);
+
+ if (f != META_BUTTON_FUNCTION_LAST)
+ {
+ new_layout.left_buttons_has_spacer[i-2] = TRUE;
+ }
+ }
+ else
+ {
+ if (f != META_BUTTON_FUNCTION_LAST && !used[f])
+ {
+ new_layout.left_buttons[i] = f;
+ used[f] = TRUE;
+ ++i;
+
+ f = button_opposite_function (f);
+
+ if (f != META_BUTTON_FUNCTION_LAST)
+ new_layout.left_buttons[i++] = f;
+
+ }
+ else
+ {
+ meta_topic (META_DEBUG_PREFS, "Ignoring unknown or already-used button name \"%s\"\n",
+ buttons[b]);
+ }
+ }
+
+ ++b;
+ }
+
+ new_layout.left_buttons[i] = META_BUTTON_FUNCTION_LAST;
+ new_layout.left_buttons_has_spacer[i] = FALSE;
+
+ g_strfreev (buttons);
+ }
+
+ if (sides != NULL && sides[0] != NULL && sides[1] != NULL)
+ {
+ char **buttons;
+ int b;
+ gboolean used[META_BUTTON_FUNCTION_LAST];
+
+ i = 0;
+ while (i < META_BUTTON_FUNCTION_LAST)
+ {
+ used[i] = FALSE;
+ new_layout.right_buttons_has_spacer[i] = FALSE;
+ ++i;
+ }
+
+ buttons = g_strsplit (sides[1], ",", -1);
+ i = 0;
+ b = 0;
+ while (buttons[b] != NULL)
+ {
+ MetaButtonFunction f = button_function_from_string (buttons[b]);
+ if (i > 0 && strcmp("spacer", buttons[b]) == 0)
+ {
+ new_layout.right_buttons_has_spacer[i-1] = TRUE;
+ f = button_opposite_function (f);
+ if (f != META_BUTTON_FUNCTION_LAST)
+ {
+ new_layout.right_buttons_has_spacer[i-2] = TRUE;
+ }
+ }
+ else
+ {
+ if (f != META_BUTTON_FUNCTION_LAST && !used[f])
+ {
+ new_layout.right_buttons[i] = f;
+ used[f] = TRUE;
+ ++i;
+
+ f = button_opposite_function (f);
+
+ if (f != META_BUTTON_FUNCTION_LAST)
+ new_layout.right_buttons[i++] = f;
+
+ }
+ else
+ {
+ meta_topic (META_DEBUG_PREFS, "Ignoring unknown or already-used button name \"%s\"\n",
+ buttons[b]);
+ }
+ }
+
+ ++b;
+ }
+
+ new_layout.right_buttons[i] = META_BUTTON_FUNCTION_LAST;
+ new_layout.right_buttons_has_spacer[i] = FALSE;
+
+ g_strfreev (buttons);
+ }
+
+ g_strfreev (sides);
+
+ /* Invert the button layout for RTL languages */
+ if (meta_ui_get_direction() == META_UI_DIRECTION_RTL)
+ {
+ MetaButtonLayout rtl_layout;
+ int j;
+
+ for (i = 0; new_layout.left_buttons[i] != META_BUTTON_FUNCTION_LAST; i++);
+ for (j = 0; j < i; j++)
+ {
+ rtl_layout.right_buttons[j] = new_layout.left_buttons[i - j - 1];
+ if (j == 0)
+ rtl_layout.right_buttons_has_spacer[i - 1] = new_layout.left_buttons_has_spacer[i - j - 1];
+ else
+ rtl_layout.right_buttons_has_spacer[j - 1] = new_layout.left_buttons_has_spacer[i - j - 1];
+ }
+ rtl_layout.right_buttons[j] = META_BUTTON_FUNCTION_LAST;
+ rtl_layout.right_buttons_has_spacer[j] = FALSE;
+
+ for (i = 0; new_layout.right_buttons[i] != META_BUTTON_FUNCTION_LAST; i++);
+ for (j = 0; j < i; j++)
+ {
+ rtl_layout.left_buttons[j] = new_layout.right_buttons[i - j - 1];
+ if (j == 0)
+ rtl_layout.left_buttons_has_spacer[i - 1] = new_layout.right_buttons_has_spacer[i - j - 1];
+ else
+ rtl_layout.left_buttons_has_spacer[j - 1] = new_layout.right_buttons_has_spacer[i - j - 1];
+ }
+ rtl_layout.left_buttons[j] = META_BUTTON_FUNCTION_LAST;
+ rtl_layout.left_buttons_has_spacer[j] = FALSE;
+
+ new_layout = rtl_layout;
+ }
+
+ if (button_layout_equal (&button_layout, &new_layout))
+ {
+ /* Same as before, so duck out */
+ *inform_listeners = FALSE;
+ }
+ else
+ {
+ button_layout = new_layout;
+ }
+}
+
+#endif /* HAVE_MATECONF */
+
+const PangoFontDescription*
+meta_prefs_get_titlebar_font (void)
+{
+ if (use_system_font)
+ return NULL;
+ else
+ return titlebar_font;
+}
+
+int
+meta_prefs_get_num_workspaces (void)
+{
+ return num_workspaces;
+}
+
+gboolean
+meta_prefs_get_application_based (void)
+{
+ return FALSE; /* For now, we never want this to do anything */
+
+ return application_based;
+}
+
+gboolean
+meta_prefs_get_disable_workarounds (void)
+{
+ return disable_workarounds;
+}
+
+#ifdef HAVE_MATECONF
+#define MAX_REASONABLE_AUTO_RAISE_DELAY 10000
+
+#endif /* HAVE_MATECONF */
+
+#ifdef WITH_VERBOSE_MODE
+const char*
+meta_preference_to_string (MetaPreference pref)
+{
+ /* FIXME: another case for mateconf_string_to_enum */
+ switch (pref)
+ {
+ case META_PREF_MOUSE_BUTTON_MODS:
+ return "MOUSE_BUTTON_MODS";
+
+ case META_PREF_FOCUS_MODE:
+ return "FOCUS_MODE";
+
+ case META_PREF_FOCUS_NEW_WINDOWS:
+ return "FOCUS_NEW_WINDOWS";
+
+ case META_PREF_RAISE_ON_CLICK:
+ return "RAISE_ON_CLICK";
+
+ case META_PREF_THEME:
+ return "THEME";
+
+ case META_PREF_TITLEBAR_FONT:
+ return "TITLEBAR_FONT";
+
+ case META_PREF_NUM_WORKSPACES:
+ return "NUM_WORKSPACES";
+
+ case META_PREF_APPLICATION_BASED:
+ return "APPLICATION_BASED";
+
+ case META_PREF_KEYBINDINGS:
+ return "KEYBINDINGS";
+
+ case META_PREF_DISABLE_WORKAROUNDS:
+ return "DISABLE_WORKAROUNDS";
+
+ case META_PREF_ACTION_DOUBLE_CLICK_TITLEBAR:
+ return "ACTION_DOUBLE_CLICK_TITLEBAR";
+
+ case META_PREF_ACTION_MIDDLE_CLICK_TITLEBAR:
+ return "ACTION_MIDDLE_CLICK_TITLEBAR";
+
+ case META_PREF_ACTION_RIGHT_CLICK_TITLEBAR:
+ return "ACTION_RIGHT_CLICK_TITLEBAR";
+
+ case META_PREF_AUTO_RAISE:
+ return "AUTO_RAISE";
+
+ case META_PREF_AUTO_RAISE_DELAY:
+ return "AUTO_RAISE_DELAY";
+
+ case META_PREF_COMMANDS:
+ return "COMMANDS";
+
+ case META_PREF_TERMINAL_COMMAND:
+ return "TERMINAL_COMMAND";
+
+ case META_PREF_BUTTON_LAYOUT:
+ return "BUTTON_LAYOUT";
+
+ case META_PREF_WORKSPACE_NAMES:
+ return "WORKSPACE_NAMES";
+
+ case META_PREF_VISUAL_BELL:
+ return "VISUAL_BELL";
+
+ case META_PREF_AUDIBLE_BELL:
+ return "AUDIBLE_BELL";
+
+ case META_PREF_VISUAL_BELL_TYPE:
+ return "VISUAL_BELL_TYPE";
+
+ case META_PREF_REDUCED_RESOURCES:
+ return "REDUCED_RESOURCES";
+
+ case META_PREF_MATE_ACCESSIBILITY:
+ return "MATE_ACCESSIBILTY";
+
+ case META_PREF_MATE_ANIMATIONS:
+ return "MATE_ANIMATIONS";
+
+ case META_PREF_CURSOR_THEME:
+ return "CURSOR_THEME";
+
+ case META_PREF_CURSOR_SIZE:
+ return "CURSOR_SIZE";
+
+ case META_PREF_COMPOSITING_MANAGER:
+ return "COMPOSITING_MANAGER";
+
+ case META_PREF_RESIZE_WITH_RIGHT_BUTTON:
+ return "RESIZE_WITH_RIGHT_BUTTON";
+
+ case META_PREF_FORCE_FULLSCREEN:
+ return "FORCE_FULLSCREEN";
+ }
+
+ return "(unknown)";
+}
+#endif /* WITH_VERBOSE_MODE */
+
+void
+meta_prefs_set_num_workspaces (int n_workspaces)
+{
+#ifdef HAVE_MATECONF
+ GError *err;
+
+ if (default_client == NULL)
+ return;
+
+ if (n_workspaces < 1)
+ n_workspaces = 1;
+ if (n_workspaces > MAX_REASONABLE_WORKSPACES)
+ n_workspaces = MAX_REASONABLE_WORKSPACES;
+
+ err = NULL;
+ mateconf_client_set_int (default_client,
+ KEY_NUM_WORKSPACES,
+ n_workspaces,
+ &err);
+
+ if (err)
+ {
+ meta_warning (_("Error setting number of workspaces to %d: %s\n"),
+ num_workspaces,
+ err->message);
+ g_error_free (err);
+ }
+#endif /* HAVE_MATECONF */
+}
+
+#define keybind(name, handler, param, flags, stroke, description) \
+ { #name, NULL, !!(flags & BINDING_REVERSES), !!(flags & BINDING_PER_WINDOW) },
+static MetaKeyPref key_bindings[] = {
+#include "all-keybindings.h"
+ { NULL, NULL, FALSE }
+};
+#undef keybind
+
+#ifndef HAVE_MATECONF
+
+/**
+ * A type to map names of keybindings (such as "switch_windows")
+ * to the binding strings themselves (such as "<Alt>Tab").
+ * It exists only when MateConf is turned off in ./configure and
+ * functions as a sort of ersatz MateConf.
+ */
+typedef struct
+{
+ const char *name;
+ const char *keybinding;
+} MetaSimpleKeyMapping;
+
+/* FIXME: This would be neater if the array only contained entries whose
+ * default keystroke was non-null. You COULD do this by defining
+ * ONLY_BOUND_BY_DEFAULT around various blocks at the cost of making
+ * the bindings file way more complicated. However, we could stop this being
+ * data and move it into code. Then the compiler would optimise away
+ * the problem lines.
+ */
+
+#define keybind(name, handler, param, flags, stroke, description) \
+ { #name, stroke },
+
+static MetaSimpleKeyMapping key_string_bindings[] = {
+#include "all-keybindings.h"
+ { NULL, NULL }
+};
+#undef keybind
+
+#endif /* NOT HAVE_MATECONF */
+
+static void
+init_bindings (void)
+{
+#ifdef HAVE_MATECONF
+ const char *prefix[] = {
+ KEY_WINDOW_BINDINGS_PREFIX,
+ KEY_SCREEN_BINDINGS_PREFIX,
+ NULL
+ };
+ int i;
+ GSList *list, *l, *list_val;
+ const char *str_val;
+ const char *key;
+ MateConfEntry *entry;
+ MateConfValue *value;
+
+ for (i = 0; prefix[i]; i++)
+ {
+ list = mateconf_client_all_entries (default_client, prefix[i], NULL);
+ for (l = list; l; l = l->next)
+ {
+ entry = l->data;
+ key = mateconf_entry_get_key (entry);
+ value = mateconf_entry_get_value (entry);
+ if (g_str_has_suffix (key, KEY_LIST_BINDINGS_SUFFIX))
+ {
+ list_val = mateconf_client_get_list (default_client, key, MATECONF_VALUE_STRING, NULL);
+
+ update_key_list_binding (key, list_val);
+ g_slist_foreach (list_val, (GFunc)g_free, NULL);
+ g_slist_free (list_val);
+ }
+ else
+ {
+ str_val = mateconf_value_get_string (value);
+ update_key_binding (key, str_val);
+ }
+ mateconf_entry_free (entry);
+ }
+ g_slist_free (list);
+ }
+#else /* HAVE_MATECONF */
+ int i = 0;
+ int which = 0;
+ while (key_string_bindings[i].name)
+ {
+ if (key_string_bindings[i].keybinding == NULL) {
+ ++i;
+ continue;
+ }
+
+ while (strcmp(key_bindings[which].name,
+ key_string_bindings[i].name) != 0)
+ which++;
+
+ /* Set the binding */
+ update_binding (&key_bindings[which],
+ key_string_bindings[i].keybinding);
+
+ ++i;
+ }
+#endif /* HAVE_MATECONF */
+}
+
+static void
+init_commands (void)
+{
+#ifdef HAVE_MATECONF
+ GSList *list, *l;
+ const char *str_val;
+ const char *key;
+ MateConfEntry *entry;
+ MateConfValue *value;
+
+ list = mateconf_client_all_entries (default_client, KEY_COMMAND_DIRECTORY, NULL);
+ for (l = list; l; l = l->next)
+ {
+ entry = l->data;
+ key = mateconf_entry_get_key (entry);
+ value = mateconf_entry_get_value (entry);
+ str_val = mateconf_value_get_string (value);
+ update_command (key, str_val);
+ mateconf_entry_free (entry);
+ }
+ g_slist_free (list);
+#else
+ int i;
+ for (i = 0; i < MAX_COMMANDS; i++)
+ commands[i] = NULL;
+#endif /* HAVE_MATECONF */
+}
+
+static void
+init_workspace_names (void)
+{
+#ifdef HAVE_MATECONF
+ GSList *list, *l;
+ const char *str_val;
+ const char *key;
+ MateConfEntry *entry;
+ MateConfValue *value;
+
+ list = mateconf_client_all_entries (default_client, KEY_WORKSPACE_NAME_DIRECTORY, NULL);
+ for (l = list; l; l = l->next)
+ {
+ entry = l->data;
+ key = mateconf_entry_get_key (entry);
+ value = mateconf_entry_get_value (entry);
+ str_val = mateconf_value_get_string (value);
+ update_workspace_name (key, str_val);
+ mateconf_entry_free (entry);
+ }
+ g_slist_free (list);
+#else
+ int i;
+ for (i = 0; i < MAX_REASONABLE_WORKSPACES; i++)
+ workspace_names[i] = g_strdup_printf (_("Workspace %d"), i + 1);
+
+ meta_topic (META_DEBUG_PREFS,
+ "Initialized workspace names\n");
+#endif /* HAVE_MATECONF */
+}
+
+static gboolean
+update_binding (MetaKeyPref *binding,
+ const char *value)
+{
+ unsigned int keysym;
+ unsigned int keycode;
+ MetaVirtualModifier mods;
+ MetaKeyCombo *combo;
+ gboolean changed;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Binding \"%s\" has new mateconf value \"%s\"\n",
+ binding->name, value ? value : "none");
+
+ keysym = 0;
+ keycode = 0;
+ mods = 0;
+ if (value)
+ {
+ if (!meta_ui_parse_accelerator (value, &keysym, &keycode, &mods))
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Failed to parse new mateconf value\n");
+ meta_warning (_("\"%s\" found in configuration database is not a valid value for keybinding \"%s\"\n"),
+ value, binding->name);
+
+ return FALSE;
+ }
+ }
+
+ /* If there isn't already a first element, make one. */
+ if (!binding->bindings)
+ {
+ MetaKeyCombo *blank = g_malloc0 (sizeof (MetaKeyCombo));
+ binding->bindings = g_slist_alloc();
+ binding->bindings->data = blank;
+ }
+
+ combo = binding->bindings->data;
+
+#ifdef HAVE_MATECONF
+ /* Bug 329676: Bindings which can be shifted must not have no modifiers,
+ * nor only SHIFT as a modifier.
+ */
+
+ if (binding->add_shift &&
+ 0 != keysym &&
+ (META_VIRTUAL_SHIFT_MASK == mods || 0 == mods))
+ {
+ gchar *old_setting;
+ gchar *key;
+ GError *err = NULL;
+
+ meta_warning ("Cannot bind \"%s\" to %s: it needs a modifier "
+ "such as Ctrl or Alt.\n",
+ binding->name,
+ value);
+
+ old_setting = meta_ui_accelerator_name (combo->keysym,
+ combo->modifiers);
+
+ if (!strcmp(old_setting, value))
+ {
+ /* We were about to set it to the same value
+ * that it had originally! This must be caused
+ * by getting an invalid string back from
+ * meta_ui_accelerator_name. Bail out now
+ * so we don't get into an infinite loop.
+ */
+ g_free (old_setting);
+ return TRUE;
+ }
+
+ meta_warning ("Reverting \"%s\" to %s.\n",
+ binding->name,
+ old_setting);
+
+ /* FIXME: add_shift is currently screen_bindings only, but
+ * there's no really good reason it should always be.
+ * So we shouldn't blindly add KEY_SCREEN_BINDINGS_PREFIX
+ * onto here.
+ */
+ key = g_strconcat (KEY_SCREEN_BINDINGS_PREFIX, "/",
+ binding->name, NULL);
+
+ mateconf_client_set_string (mateconf_client_get_default (),
+ key, old_setting, &err);
+
+ if (err)
+ {
+ meta_warning ("Error while reverting keybinding: %s\n",
+ err->message);
+ g_error_free (err);
+ err = NULL;
+ }
+
+ g_free (old_setting);
+ g_free (key);
+
+ /* The call to mateconf_client_set_string() will cause this function
+ * to be called again with the new value, so there's no need to
+ * carry on.
+ */
+ return TRUE;
+ }
+#endif
+
+ changed = FALSE;
+ if (keysym != combo->keysym ||
+ keycode != combo->keycode ||
+ mods != combo->modifiers)
+ {
+ changed = TRUE;
+
+ combo->keysym = keysym;
+ combo->keycode = keycode;
+ combo->modifiers = mods;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "New keybinding for \"%s\" is keysym = 0x%x keycode = 0x%x mods = 0x%x\n",
+ binding->name, combo->keysym, combo->keycode,
+ combo->modifiers);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Keybinding for \"%s\" is unchanged\n", binding->name);
+ }
+
+ return changed;
+}
+
+#ifdef HAVE_MATECONF
+static gboolean
+update_list_binding (MetaKeyPref *binding,
+ GSList *value,
+ MetaStringListType type_of_value)
+{
+ unsigned int keysym;
+ unsigned int keycode;
+ MetaVirtualModifier mods;
+ gboolean changed = FALSE;
+ const gchar *pref_string;
+ GSList *pref_iterator = value, *tmp;
+ MetaKeyCombo *combo;
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Binding \"%s\" has new mateconf value\n",
+ binding->name);
+
+ if (binding->bindings == NULL)
+ {
+ /* We need to insert a dummy element into the list, because the first
+ * element is the one governed by update_binding. We only handle the
+ * subsequent elements.
+ */
+ MetaKeyCombo *blank = g_malloc0 (sizeof (MetaKeyCombo));
+ binding->bindings = g_slist_alloc();
+ binding->bindings->data = blank;
+ }
+
+ /* Okay, so, we're about to provide a new list of key combos for this
+ * action. Delete any pre-existing list.
+ */
+ tmp = binding->bindings->next;
+ while (tmp)
+ {
+ g_free (tmp->data);
+ tmp = tmp->next;
+ }
+ g_slist_free (binding->bindings->next);
+ binding->bindings->next = NULL;
+
+ while (pref_iterator)
+ {
+ keysym = 0;
+ keycode = 0;
+ mods = 0;
+
+ if (!pref_iterator->data)
+ {
+ pref_iterator = pref_iterator->next;
+ continue;
+ }
+
+ switch (type_of_value)
+ {
+ case META_LIST_OF_STRINGS:
+ pref_string = pref_iterator->data;
+ break;
+ case META_LIST_OF_MATECONFVALUE_STRINGS:
+ pref_string = mateconf_value_get_string (pref_iterator->data);
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ if (!meta_ui_parse_accelerator (pref_string, &keysym, &keycode, &mods))
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Failed to parse new mateconf value\n");
+ meta_warning (_("\"%s\" found in configuration database is not a valid value for keybinding \"%s\"\n"),
+ pref_string, binding->name);
+
+ /* Should we remove this value from the list in mateconf? */
+ pref_iterator = pref_iterator->next;
+ continue;
+ }
+
+ /* Bug 329676: Bindings which can be shifted must not have no modifiers,
+ * nor only SHIFT as a modifier.
+ */
+
+ if (binding->add_shift &&
+ 0 != keysym &&
+ (META_VIRTUAL_SHIFT_MASK == mods || 0 == mods))
+ {
+ meta_warning ("Cannot bind \"%s\" to %s: it needs a modifier "
+ "such as Ctrl or Alt.\n",
+ binding->name,
+ pref_string);
+
+ /* Should we remove this value from the list in mateconf? */
+
+ pref_iterator = pref_iterator->next;
+ continue;
+ }
+
+ changed = TRUE;
+
+ combo = g_malloc0 (sizeof (MetaKeyCombo));
+ combo->keysym = keysym;
+ combo->keycode = keycode;
+ combo->modifiers = mods;
+ binding->bindings->next = g_slist_prepend (binding->bindings->next, combo);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "New keybinding for \"%s\" is keysym = 0x%x keycode = 0x%x mods = 0x%x\n",
+ binding->name, keysym, keycode, mods);
+
+ pref_iterator = pref_iterator->next;
+ }
+ return changed;
+}
+
+static const gchar*
+relative_key (const gchar* key)
+{
+ const gchar* end;
+
+ end = strrchr (key, '/');
+
+ ++end;
+
+ return end;
+}
+
+/* Return value is TRUE if a preference changed and we need to
+ * notify
+ */
+static gboolean
+find_and_update_binding (MetaKeyPref *bindings,
+ const char *name,
+ const char *value)
+{
+ const char *key;
+ int i;
+
+ if (*name == '/')
+ key = relative_key (name);
+ else
+ key = name;
+
+ i = 0;
+ while (bindings[i].name &&
+ strcmp (key, bindings[i].name) != 0)
+ ++i;
+
+ if (bindings[i].name)
+ return update_binding (&bindings[i], value);
+ else
+ return FALSE;
+}
+
+static gboolean
+update_key_binding (const char *name,
+ const char *value)
+{
+ return find_and_update_binding (key_bindings, name, value);
+}
+
+static gboolean
+find_and_update_list_binding (MetaKeyPref *bindings,
+ const char *name,
+ GSList *value)
+{
+ const char *key;
+ int i;
+ gchar *name_without_suffix = g_strdup(name);
+
+ name_without_suffix[strlen(name_without_suffix) - strlen(KEY_LIST_BINDINGS_SUFFIX)] = 0;
+
+ if (*name_without_suffix == '/')
+ key = relative_key (name_without_suffix);
+ else
+ key = name_without_suffix;
+
+ i = 0;
+ while (bindings[i].name &&
+ strcmp (key, bindings[i].name) != 0)
+ ++i;
+
+ g_free (name_without_suffix);
+
+ if (bindings[i].name)
+ return update_list_binding (&bindings[i], value, META_LIST_OF_MATECONFVALUE_STRINGS);
+ else
+ return FALSE;
+}
+
+static gboolean
+update_key_list_binding (const char *name,
+ GSList *value)
+{
+ return find_and_update_list_binding (key_bindings, name, value);
+}
+
+static gboolean
+update_command (const char *name,
+ const char *value)
+{
+ char *p;
+ int i;
+
+ p = strrchr (name, '_');
+ if (p == NULL)
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Command %s has no underscore?\n", name);
+ return FALSE;
+ }
+
+ ++p;
+
+ if (g_ascii_isdigit (*p))
+ {
+ i = atoi (p);
+ i -= 1; /* count from 0 not 1 */
+ }
+ else
+ {
+ p = strrchr (name, '/');
+ ++p;
+
+ if (strcmp (p, "command_screenshot") == 0)
+ {
+ i = SCREENSHOT_COMMAND_IDX;
+ }
+ else if (strcmp (p, "command_window_screenshot") == 0)
+ {
+ i = WIN_SCREENSHOT_COMMAND_IDX;
+ }
+ else
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Command %s doesn't end in number?\n", name);
+ return FALSE;
+ }
+ }
+
+ if (i >= MAX_COMMANDS)
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Command %d is too highly numbered, ignoring\n", i);
+ return FALSE;
+ }
+
+ if ((commands[i] == NULL && value == NULL) ||
+ (commands[i] && value && strcmp (commands[i], value) == 0))
+ {
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Command %d is unchanged\n", i);
+ return FALSE;
+ }
+
+ g_free (commands[i]);
+ commands[i] = g_strdup (value);
+
+ meta_topic (META_DEBUG_KEYBINDINGS,
+ "Updated command %d to \"%s\"\n",
+ i, commands[i] ? commands[i] : "none");
+
+ return TRUE;
+}
+
+#endif /* HAVE_MATECONF */
+
+const char*
+meta_prefs_get_command (int i)
+{
+ g_return_val_if_fail (i >= 0 && i < MAX_COMMANDS, NULL);
+
+ return commands[i];
+}
+
+char*
+meta_prefs_get_mateconf_key_for_command (int i)
+{
+ char *key;
+
+ switch (i)
+ {
+ case SCREENSHOT_COMMAND_IDX:
+ key = g_strdup (KEY_COMMAND_PREFIX "screenshot");
+ break;
+ case WIN_SCREENSHOT_COMMAND_IDX:
+ key = g_strdup (KEY_COMMAND_PREFIX "window_screenshot");
+ break;
+ default:
+ key = g_strdup_printf (KEY_COMMAND_PREFIX"%d", i + 1);
+ break;
+ }
+
+ return key;
+}
+
+const char*
+meta_prefs_get_terminal_command (void)
+{
+ return terminal_command;
+}
+
+const char*
+meta_prefs_get_mateconf_key_for_terminal_command (void)
+{
+ return KEY_TERMINAL_COMMAND;
+}
+
+#ifdef HAVE_MATECONF
+static gboolean
+update_workspace_name (const char *name,
+ const char *value)
+{
+ char *p;
+ int i;
+
+ p = strrchr (name, '_');
+ if (p == NULL)
+ {
+ meta_topic (META_DEBUG_PREFS,
+ "Workspace name %s has no underscore?\n", name);
+ return FALSE;
+ }
+
+ ++p;
+
+ if (!g_ascii_isdigit (*p))
+ {
+ meta_topic (META_DEBUG_PREFS,
+ "Workspace name %s doesn't end in number?\n", name);
+ return FALSE;
+ }
+
+ i = atoi (p);
+ i -= 1; /* count from 0 not 1 */
+
+ if (i >= MAX_REASONABLE_WORKSPACES)
+ {
+ meta_topic (META_DEBUG_PREFS,
+ "Workspace name %d is too highly numbered, ignoring\n", i);
+ return FALSE;
+ }
+
+ if (workspace_names[i] && value && strcmp (workspace_names[i], value) == 0)
+ {
+ meta_topic (META_DEBUG_PREFS,
+ "Workspace name %d is unchanged\n", i);
+ return FALSE;
+ }
+
+ /* This is a bad hack. We have to treat empty string as
+ * "unset" because the root window property can't contain
+ * null. So it gets empty string instead and we don't want
+ * that to result in setting the empty string as a value that
+ * overrides "unset".
+ */
+ if (value != NULL && *value != '\0')
+ {
+ g_free (workspace_names[i]);
+ workspace_names[i] = g_strdup (value);
+ }
+ else
+ {
+ /* use a default name */
+ char *d;
+
+ d = g_strdup_printf (_("Workspace %d"), i + 1);
+ if (workspace_names[i] && strcmp (workspace_names[i], d) == 0)
+ {
+ g_free (d);
+ return FALSE;
+ }
+ else
+ {
+ g_free (workspace_names[i]);
+ workspace_names[i] = d;
+ }
+ }
+
+ meta_topic (META_DEBUG_PREFS,
+ "Updated workspace name %d to \"%s\"\n",
+ i, workspace_names[i] ? workspace_names[i] : "none");
+
+ return TRUE;
+}
+#endif /* HAVE_MATECONF */
+
+const char*
+meta_prefs_get_workspace_name (int i)
+{
+ g_return_val_if_fail (i >= 0 && i < MAX_REASONABLE_WORKSPACES, NULL);
+
+ g_assert (workspace_names[i] != NULL);
+
+ meta_topic (META_DEBUG_PREFS,
+ "Getting workspace name for %d: \"%s\"\n",
+ i, workspace_names[i]);
+
+ return workspace_names[i];
+}
+
+void
+meta_prefs_change_workspace_name (int i,
+ const char *name)
+{
+#ifdef HAVE_MATECONF
+ char *key;
+ GError *err;
+
+ g_return_if_fail (i >= 0 && i < MAX_REASONABLE_WORKSPACES);
+
+ meta_topic (META_DEBUG_PREFS,
+ "Changing name of workspace %d to %s\n",
+ i, name ? name : "none");
+
+ /* This is a bad hack. We have to treat empty string as
+ * "unset" because the root window property can't contain
+ * null. So it gets empty string instead and we don't want
+ * that to result in setting the empty string as a value that
+ * overrides "unset".
+ */
+ if (name && *name == '\0')
+ name = NULL;
+
+ if ((name == NULL && workspace_names[i] == NULL) ||
+ (name && workspace_names[i] && strcmp (name, workspace_names[i]) == 0))
+ {
+ meta_topic (META_DEBUG_PREFS,
+ "Workspace %d already has name %s\n",
+ i, name ? name : "none");
+ return;
+ }
+
+ key = mateconf_key_for_workspace_name (i);
+
+ err = NULL;
+ if (name != NULL)
+ mateconf_client_set_string (default_client,
+ key, name,
+ &err);
+ else
+ mateconf_client_unset (default_client,
+ key, &err);
+
+
+ if (err)
+ {
+ meta_warning (_("Error setting name for workspace %d to \"%s\": %s\n"),
+ i, name ? name : "none",
+ err->message);
+ g_error_free (err);
+ }
+
+ g_free (key);
+#else
+ g_free (workspace_names[i]);
+ workspace_names[i] = g_strdup (name);
+#endif /* HAVE_MATECONF */
+}
+
+#ifdef HAVE_MATECONF
+static char*
+mateconf_key_for_workspace_name (int i)
+{
+ char *key;
+
+ key = g_strdup_printf (KEY_WORKSPACE_NAME_PREFIX"%d", i + 1);
+
+ return key;
+}
+#endif /* HAVE_MATECONF */
+
+void
+meta_prefs_get_button_layout (MetaButtonLayout *button_layout_p)
+{
+ *button_layout_p = button_layout;
+}
+
+gboolean
+meta_prefs_get_visual_bell (void)
+{
+ return provide_visual_bell;
+}
+
+gboolean
+meta_prefs_bell_is_audible (void)
+{
+ return bell_is_audible;
+}
+
+MetaVisualBellType
+meta_prefs_get_visual_bell_type (void)
+{
+ return visual_bell_type;
+}
+
+void
+meta_prefs_get_key_bindings (const MetaKeyPref **bindings,
+ int *n_bindings)
+{
+
+ *bindings = key_bindings;
+ *n_bindings = (int) G_N_ELEMENTS (key_bindings) - 1;
+}
+
+MetaActionTitlebar
+meta_prefs_get_action_double_click_titlebar (void)
+{
+ return action_double_click_titlebar;
+}
+
+MetaActionTitlebar
+meta_prefs_get_action_middle_click_titlebar (void)
+{
+ return action_middle_click_titlebar;
+}
+
+MetaActionTitlebar
+meta_prefs_get_action_right_click_titlebar (void)
+{
+ return action_right_click_titlebar;
+}
+
+gboolean
+meta_prefs_get_auto_raise (void)
+{
+ return auto_raise;
+}
+
+int
+meta_prefs_get_auto_raise_delay (void)
+{
+ return auto_raise_delay;
+}
+
+gboolean
+meta_prefs_get_reduced_resources (void)
+{
+ return reduced_resources;
+}
+
+gboolean
+meta_prefs_get_mate_accessibility ()
+{
+ return mate_accessibility;
+}
+
+gboolean
+meta_prefs_get_mate_animations ()
+{
+ return mate_animations;
+}
+
+MetaKeyBindingAction
+meta_prefs_get_keybinding_action (const char *name)
+{
+ int i;
+
+ i = G_N_ELEMENTS (key_bindings) - 2; /* -2 for dummy entry at end */
+ while (i >= 0)
+ {
+ if (strcmp (key_bindings[i].name, name) == 0)
+ return (MetaKeyBindingAction) i;
+
+ --i;
+ }
+
+ return META_KEYBINDING_ACTION_NONE;
+}
+
+/* This is used by the menu system to decide what key binding
+ * to display next to an option. We return the first non-disabled
+ * binding, if any.
+ */
+void
+meta_prefs_get_window_binding (const char *name,
+ unsigned int *keysym,
+ MetaVirtualModifier *modifiers)
+{
+ int i;
+
+ i = G_N_ELEMENTS (key_bindings) - 2; /* -2 for dummy entry at end */
+ while (i >= 0)
+ {
+ if (key_bindings[i].per_window &&
+ strcmp (key_bindings[i].name, name) == 0)
+ {
+ GSList *s = key_bindings[i].bindings;
+
+ while (s)
+ {
+ MetaKeyCombo *c = s->data;
+
+ if (c->keysym!=0 || c->modifiers!=0)
+ {
+ *keysym = c->keysym;
+ *modifiers = c->modifiers;
+ return;
+ }
+
+ s = s->next;
+ }
+
+ /* Not found; return the disabled value */
+ *keysym = *modifiers = 0;
+ return;
+ }
+
+ --i;
+ }
+
+ g_assert_not_reached ();
+}
+
+gboolean
+meta_prefs_get_compositing_manager (void)
+{
+ return compositing_manager;
+}
+
+guint
+meta_prefs_get_mouse_button_resize (void)
+{
+ return resize_with_right_button ? 3: 2;
+}
+
+guint
+meta_prefs_get_mouse_button_menu (void)
+{
+ return resize_with_right_button ? 2: 3;
+}
+
+gboolean
+meta_prefs_get_force_fullscreen (void)
+{
+ return force_fullscreen;
+}
+
+void
+meta_prefs_set_compositing_manager (gboolean whether)
+{
+#ifdef HAVE_MATECONF
+ GError *err = NULL;
+
+ mateconf_client_set_bool (default_client,
+ KEY_COMPOSITOR,
+ whether,
+ &err);
+
+ if (err)
+ {
+ meta_warning (_("Error setting compositor status: %s\n"),
+ err->message);
+ g_error_free (err);
+ }
+#else
+ compositing_manager = whether;
+#endif
+}
+
+#ifndef HAVE_MATECONF
+static void
+init_button_layout(void)
+{
+ MetaButtonLayout button_layout_ltr = {
+ {
+ /* buttons in the group on the left side */
+ META_BUTTON_FUNCTION_MENU,
+ META_BUTTON_FUNCTION_LAST
+ },
+ {
+ /* buttons in the group on the right side */
+ META_BUTTON_FUNCTION_MINIMIZE,
+ META_BUTTON_FUNCTION_MAXIMIZE,
+ META_BUTTON_FUNCTION_CLOSE,
+ META_BUTTON_FUNCTION_LAST
+ }
+ };
+ MetaButtonLayout button_layout_rtl = {
+ {
+ /* buttons in the group on the left side */
+ META_BUTTON_FUNCTION_CLOSE,
+ META_BUTTON_FUNCTION_MAXIMIZE,
+ META_BUTTON_FUNCTION_MINIMIZE,
+ META_BUTTON_FUNCTION_LAST
+ },
+ {
+ /* buttons in the group on the right side */
+ META_BUTTON_FUNCTION_MENU,
+ META_BUTTON_FUNCTION_LAST
+ }
+ };
+
+ button_layout = meta_ui_get_direction() == META_UI_DIRECTION_LTR ?
+ button_layout_ltr : button_layout_rtl;
+};
+
+#endif
+
+void
+meta_prefs_set_force_fullscreen (gboolean whether)
+{
+ force_fullscreen = whether;
+}
+
diff --git a/src/core/schema-bindings.c b/src/core/schema-bindings.c
new file mode 100644
index 00000000..2f1da821
--- /dev/null
+++ b/src/core/schema-bindings.c
@@ -0,0 +1,195 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2008 Thomas Thurman
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+/** \file Schema bindings generator.
+ *
+ * This program simply takes the items given in the binding list in
+ * all-keybindings.h and turns them into a portion of
+ * the MateConf .schemas file.
+ *
+ * FIXME: also need to make 50-marco-desktop-key.xml
+ */
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+#include <errno.h>
+
+#include <glib.h>
+#include "config.h"
+
+#define _(x) x
+
+static void single_stanza (gboolean is_window, const char *name,
+ const char *default_value,
+ gboolean can_reverse,
+ const char *description);
+
+char *about_keybindings, *about_reversible_keybindings;
+
+char *source_filename, *target_filename;
+FILE *source_file, *target_file;
+
+static void
+single_stanza (gboolean is_window, const char *name,
+ const char *default_value,
+ gboolean can_reverse,
+ const char *description)
+{
+ char *keybinding_type = is_window? "window": "global";
+ char *escaped_default_value, *escaped_description;
+
+ if (description==NULL)
+ return; /* it must be undocumented, so it can't go in this table */
+
+ escaped_description = g_markup_escape_text (description, -1);
+ escaped_default_value = default_value==NULL? "disabled":
+ g_markup_escape_text (default_value, -1);
+
+ fprintf (target_file, " <schema>\n");
+ fprintf (target_file, " <key>/schemas/apps/marco/%s_keybindings/%s</key>\n",
+ keybinding_type, name);
+ fprintf (target_file, " <applyto>/apps/marco/%s_keybindings/%s</applyto>\n",
+ keybinding_type, name);
+ fprintf (target_file, " <owner>marco</owner>\n");
+ fprintf (target_file, " <type>string</type>\n");
+ fprintf (target_file, " <default>%s</default>\n", escaped_default_value);
+
+ fprintf (target_file, " <locale name=\"C\">\n");
+ fprintf (target_file, " <short>%s</short>\n", description);
+ fprintf (target_file, " <long>%s</long>\n",
+ can_reverse? about_reversible_keybindings:
+ about_keybindings);
+ fprintf (target_file, " </locale>\n");
+ fprintf (target_file, " </schema>\n\n");
+
+ g_free (escaped_description);
+
+ if (default_value!=NULL)
+ g_free (escaped_default_value);
+}
+
+static void produce_bindings ();
+
+static void
+produce_bindings ()
+{
+ /* 10240 is ridiculous overkill; we're writing the input file and
+ * the lines are always 80 chars or less.
+ */
+ char buffer[10240];
+
+ source_file = fopen(source_filename, "r");
+
+ if (!source_file)
+ {
+ g_error ("Cannot compile without %s: %s\n",
+ source_filename, strerror (errno));
+ }
+
+ target_file = fopen(target_filename, "w");
+
+ if (!target_file)
+ {
+ g_error ("Cannot create %s: %s\n",
+ target_filename, strerror (errno));
+ }
+
+ while (fgets (buffer, sizeof (buffer), source_file))
+ {
+ if (strstr (buffer, "<!-- GENERATED -->"))
+ break;
+
+ fprintf (target_file, "%s", buffer);
+ }
+
+ if (!feof (source_file))
+ {
+#define keybind(name, handler, param, flags, stroke, description) \
+ single_stanza ( \
+ flags & BINDING_PER_WINDOW, \
+ #name, \
+ stroke, \
+ flags & BINDING_REVERSES, \
+ description);
+#include "all-keybindings.h"
+#undef keybind
+ }
+
+ while (fgets (buffer, sizeof (buffer), source_file))
+ fprintf (target_file, "%s", buffer);
+
+ if (fclose (source_file)!=0)
+ {
+ g_error ("Cannot close %s: %s\n",
+ source_filename, strerror (errno));
+ }
+
+ if (fclose (target_file)!=0)
+ {
+ g_error ("Cannot close %s: %s\n",
+ target_filename, strerror (errno));
+ }
+}
+
+int
+main (int argc, char **argv)
+{
+ if (argc!=3)
+ {
+ g_error ("Syntax: %s <source.in.in> <target.in>\n", argv[0]);
+ }
+
+ source_filename = argv[1];
+ target_filename = argv[2];
+
+ /* Translators: Please don't translate "Control", "Shift", etc, since these
+ * are hardcoded (in gtk/gtkaccelgroup.c; it's not marco's fault).
+ * "disabled" must also stay as it is.
+ */
+ about_keybindings = g_markup_escape_text(_( \
+ "The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n\n"\
+ "The parser is fairly liberal and allows "\
+ "lower or upper case, and also abbreviations such as \"<Ctl>\" and " \
+ "\"<Ctrl>\". If you set the option to the special string " \
+ "\"disabled\", then there will be no keybinding for this action."),
+ -1);
+
+ about_reversible_keybindings = g_markup_escape_text(_( \
+ "The format looks like \"<Control>a\" or \"<Shift><Alt>F1\".\n\n"\
+ "The parser is fairly liberal and allows "\
+ "lower or upper case, and also abbreviations such as \"<Ctl>\" and " \
+ "\"<Ctrl>\". If you set the option to the special string " \
+ "\"disabled\", then there will be no keybinding for this action.\n\n"\
+ "This keybinding may be reversed by holding down the \"shift\" key; "
+ "therefore, \"shift\" cannot be one of the keys it uses."),
+ -1);
+
+ produce_bindings ();
+
+ g_free (about_keybindings);
+ g_free (about_reversible_keybindings);
+
+ return 0;
+}
+
+/* eof schema-bindings.c */
+
diff --git a/src/core/screen-private.h b/src/core/screen-private.h
new file mode 100644
index 00000000..30941eab
--- /dev/null
+++ b/src/core/screen-private.h
@@ -0,0 +1,226 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file screen-private.h Screens which Marco manages
+ *
+ * Managing X screens.
+ * This file contains methods on this class which are available to
+ * routines in core but not outside it. (See screen.h for the routines
+ * which the rest of the world is allowed to use.)
+ */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2003 Rob Adams
+ * Copyright (C) 2004-2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_SCREEN_PRIVATE_H
+#define META_SCREEN_PRIVATE_H
+
+#include "display-private.h"
+#include "screen.h"
+#include <X11/Xutil.h>
+#include "ui.h"
+
+typedef struct _MetaXineramaScreenInfo MetaXineramaScreenInfo;
+
+struct _MetaXineramaScreenInfo
+{
+ int number;
+ MetaRectangle rect;
+};
+
+typedef void (* MetaScreenWindowFunc) (MetaScreen *screen, MetaWindow *window,
+ gpointer user_data);
+
+typedef enum
+{
+ META_SCREEN_TOPLEFT,
+ META_SCREEN_TOPRIGHT,
+ META_SCREEN_BOTTOMLEFT,
+ META_SCREEN_BOTTOMRIGHT
+} MetaScreenCorner;
+
+typedef enum
+{
+ META_SCREEN_UP,
+ META_SCREEN_DOWN,
+ META_SCREEN_LEFT,
+ META_SCREEN_RIGHT
+} MetaScreenDirection;
+
+#define META_WIREFRAME_XOR_LINE_WIDTH 2
+
+struct _MetaScreen
+{
+ MetaDisplay *display;
+ int number;
+ char *screen_name;
+ Screen *xscreen;
+ Window xroot;
+ int default_depth;
+ Visual *default_xvisual;
+ MetaRectangle rect; /* Size of screen; rect.x & rect.y are always 0 */
+ MetaUI *ui;
+ MetaTabPopup *tab_popup;
+
+ MetaWorkspace *active_workspace;
+
+ /* This window holds the focus when we don't want to focus
+ * any actual clients
+ */
+ Window no_focus_window;
+
+ GList *workspaces;
+
+ MetaStack *stack;
+
+ MetaCursor current_cursor;
+
+ Window flash_window;
+
+ Window wm_sn_selection_window;
+ Atom wm_sn_atom;
+ guint32 wm_sn_timestamp;
+
+ MetaXineramaScreenInfo *xinerama_infos;
+ int n_xinerama_infos;
+
+ /* Cache the current Xinerama */
+ int last_xinerama_index;
+
+#ifdef HAVE_STARTUP_NOTIFICATION
+ SnMonitorContext *sn_context;
+ GSList *startup_sequences;
+ guint startup_sequence_timeout;
+#endif
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ Window wm_cm_selection_window;
+ guint32 wm_cm_timestamp;
+#endif
+
+ guint work_area_idle;
+
+ int rows_of_workspaces;
+ int columns_of_workspaces;
+ MetaScreenCorner starting_corner;
+ guint vertical_workspaces : 1;
+
+ guint keys_grabbed : 1;
+ guint all_keys_grabbed : 1;
+
+ int closing;
+
+ /* gc for XOR on root window */
+ GC root_xor_gc;
+
+ /* Managed by compositor.c */
+ gpointer compositor_data;
+};
+
+MetaScreen* meta_screen_new (MetaDisplay *display,
+ int number,
+ guint32 timestamp);
+void meta_screen_free (MetaScreen *screen,
+ guint32 timestamp);
+void meta_screen_manage_all_windows (MetaScreen *screen);
+void meta_screen_foreach_window (MetaScreen *screen,
+ MetaScreenWindowFunc func,
+ gpointer data);
+void meta_screen_queue_frame_redraws (MetaScreen *screen);
+void meta_screen_queue_window_resizes (MetaScreen *screen);
+
+int meta_screen_get_n_workspaces (MetaScreen *screen);
+
+MetaWorkspace* meta_screen_get_workspace_by_index (MetaScreen *screen,
+ int index);
+
+void meta_screen_set_cursor (MetaScreen *screen,
+ MetaCursor cursor);
+void meta_screen_update_cursor (MetaScreen *screen);
+
+void meta_screen_ensure_tab_popup (MetaScreen *screen,
+ MetaTabList list_type,
+ MetaTabShowType show_type);
+void meta_screen_ensure_workspace_popup (MetaScreen *screen);
+
+MetaWindow* meta_screen_get_mouse_window (MetaScreen *screen,
+ MetaWindow *not_this_one);
+
+const MetaXineramaScreenInfo* meta_screen_get_current_xinerama (MetaScreen *screen);
+const MetaXineramaScreenInfo* meta_screen_get_xinerama_for_rect (MetaScreen *screen,
+ MetaRectangle *rect);
+const MetaXineramaScreenInfo* meta_screen_get_xinerama_for_window (MetaScreen *screen,
+ MetaWindow *window);
+
+
+const MetaXineramaScreenInfo* meta_screen_get_xinerama_neighbor (MetaScreen *screen,
+ int which_xinerama,
+ MetaScreenDirection dir);
+void meta_screen_get_natural_xinerama_list (MetaScreen *screen,
+ int** xineramas_list,
+ int* n_xineramas);
+
+void meta_screen_update_workspace_layout (MetaScreen *screen);
+void meta_screen_update_workspace_names (MetaScreen *screen);
+void meta_screen_queue_workarea_recalc (MetaScreen *screen);
+
+Window meta_create_offscreen_window (Display *xdisplay,
+ Window parent,
+ long valuemask);
+
+typedef struct MetaWorkspaceLayout MetaWorkspaceLayout;
+
+struct MetaWorkspaceLayout
+{
+ int rows;
+ int cols;
+ int *grid;
+ int grid_area;
+ int current_row;
+ int current_col;
+};
+
+void meta_screen_calc_workspace_layout (MetaScreen *screen,
+ int num_workspaces,
+ int current_space,
+ MetaWorkspaceLayout *layout);
+void meta_screen_free_workspace_layout (MetaWorkspaceLayout *layout);
+
+void meta_screen_resize (MetaScreen *screen,
+ int width,
+ int height);
+
+void meta_screen_minimize_all_on_active_workspace_except (MetaScreen *screen,
+ MetaWindow *keep);
+
+/* Show/hide the desktop (temporarily hide all windows) */
+void meta_screen_show_desktop (MetaScreen *screen,
+ guint32 timestamp);
+void meta_screen_unshow_desktop (MetaScreen *screen);
+
+/* Update whether the destkop is being shown for the current active_workspace */
+void meta_screen_update_showing_desktop_hint (MetaScreen *screen);
+
+gboolean meta_screen_apply_startup_properties (MetaScreen *screen,
+ MetaWindow *window);
+void meta_screen_composite_all_windows (MetaScreen *screen);
+
+#endif
diff --git a/src/core/screen.c b/src/core/screen.c
new file mode 100644
index 00000000..f9db9c71
--- /dev/null
+++ b/src/core/screen.c
@@ -0,0 +1,2815 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco X screen handler */
+
+/*
+ * Copyright (C) 2001, 2002 Havoc Pennington
+ * Copyright (C) 2002, 2003 Red Hat Inc.
+ * Some ICCCM manager selection code derived from fvwm2,
+ * Copyright (C) 2001 Dominik Vogt, Matthias Clasen, and fvwm2 team
+ * Copyright (C) 2003 Rob Adams
+ * Copyright (C) 2004-2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "screen-private.h"
+#include "util.h"
+#include "errors.h"
+#include "window-private.h"
+#include "frame-private.h"
+#include "prefs.h"
+#include "workspace.h"
+#include "keybindings.h"
+#include "stack.h"
+#include "xprops.h"
+#include "compositor.h"
+
+#ifdef HAVE_SOLARIS_XINERAMA
+#include <X11/extensions/xinerama.h>
+#endif
+#ifdef HAVE_XFREE_XINERAMA
+#include <X11/extensions/Xinerama.h>
+#endif
+
+#include <X11/Xatom.h>
+#include <locale.h>
+#include <string.h>
+#include <stdio.h>
+
+static char* get_screen_name (MetaDisplay *display,
+ int number);
+
+static void update_num_workspaces (MetaScreen *screen,
+ guint32 timestamp);
+static void update_focus_mode (MetaScreen *screen);
+static void set_workspace_names (MetaScreen *screen);
+static void prefs_changed_callback (MetaPreference pref,
+ gpointer data);
+
+static void set_desktop_geometry_hint (MetaScreen *screen);
+static void set_desktop_viewport_hint (MetaScreen *screen);
+
+#ifdef HAVE_STARTUP_NOTIFICATION
+static void meta_screen_sn_event (SnMonitorEvent *event,
+ void *user_data);
+#endif
+
+static int
+set_wm_check_hint (MetaScreen *screen)
+{
+ unsigned long data[1];
+
+ g_return_val_if_fail (screen->display->leader_window != None, 0);
+
+ data[0] = screen->display->leader_window;
+
+ XChangeProperty (screen->display->xdisplay, screen->xroot,
+ screen->display->atom__NET_SUPPORTING_WM_CHECK,
+ XA_WINDOW,
+ 32, PropModeReplace, (guchar*) data, 1);
+
+ return Success;
+}
+
+static void
+unset_wm_check_hint (MetaScreen *screen)
+{
+ XDeleteProperty (screen->display->xdisplay, screen->xroot,
+ screen->display->atom__NET_SUPPORTING_WM_CHECK);
+}
+
+static int
+set_supported_hint (MetaScreen *screen)
+{
+ Atom atoms[] = {
+#define EWMH_ATOMS_ONLY
+#define item(x) screen->display->atom_##x,
+#include "atomnames.h"
+#undef item
+#undef EWMH_ATOMS_ONLY
+ };
+
+ XChangeProperty (screen->display->xdisplay, screen->xroot,
+ screen->display->atom__NET_SUPPORTED,
+ XA_ATOM,
+ 32, PropModeReplace,
+ (guchar*) atoms, G_N_ELEMENTS(atoms));
+
+ return Success;
+}
+
+static int
+set_wm_icon_size_hint (MetaScreen *screen)
+{
+#define N_VALS 6
+ gulong vals[N_VALS];
+
+ /* min width, min height, max w, max h, width inc, height inc */
+ vals[0] = META_ICON_WIDTH;
+ vals[1] = META_ICON_HEIGHT;
+ vals[2] = META_ICON_WIDTH;
+ vals[3] = META_ICON_HEIGHT;
+ vals[4] = 0;
+ vals[5] = 0;
+
+ XChangeProperty (screen->display->xdisplay, screen->xroot,
+ screen->display->atom_WM_ICON_SIZE,
+ XA_CARDINAL,
+ 32, PropModeReplace, (guchar*) vals, N_VALS);
+
+ return Success;
+#undef N_VALS
+}
+
+static void
+reload_xinerama_infos (MetaScreen *screen)
+{
+ MetaDisplay *display;
+
+ {
+ GList *tmp;
+
+ tmp = screen->workspaces;
+ while (tmp != NULL)
+ {
+ MetaWorkspace *space = tmp->data;
+
+ meta_workspace_invalidate_work_area (space);
+
+ tmp = tmp->next;
+ }
+ }
+
+ display = screen->display;
+
+ if (screen->xinerama_infos)
+ g_free (screen->xinerama_infos);
+
+ screen->xinerama_infos = NULL;
+ screen->n_xinerama_infos = 0;
+ screen->last_xinerama_index = 0;
+
+ screen->display->xinerama_cache_invalidated = TRUE;
+
+#ifdef HAVE_XFREE_XINERAMA
+ if (XineramaIsActive (display->xdisplay))
+ {
+ XineramaScreenInfo *infos;
+ int n_infos;
+ int i;
+
+ n_infos = 0;
+ infos = XineramaQueryScreens (display->xdisplay, &n_infos);
+
+ meta_topic (META_DEBUG_XINERAMA,
+ "Found %d Xinerama screens on display %s\n",
+ n_infos, display->name);
+
+ if (n_infos > 0)
+ {
+ screen->xinerama_infos = g_new (MetaXineramaScreenInfo, n_infos);
+ screen->n_xinerama_infos = n_infos;
+
+ i = 0;
+ while (i < n_infos)
+ {
+ screen->xinerama_infos[i].number = infos[i].screen_number;
+ screen->xinerama_infos[i].rect.x = infos[i].x_org;
+ screen->xinerama_infos[i].rect.y = infos[i].y_org;
+ screen->xinerama_infos[i].rect.width = infos[i].width;
+ screen->xinerama_infos[i].rect.height = infos[i].height;
+
+ meta_topic (META_DEBUG_XINERAMA,
+ "Xinerama %d is %d,%d %d x %d\n",
+ screen->xinerama_infos[i].number,
+ screen->xinerama_infos[i].rect.x,
+ screen->xinerama_infos[i].rect.y,
+ screen->xinerama_infos[i].rect.width,
+ screen->xinerama_infos[i].rect.height);
+
+ ++i;
+ }
+ }
+
+ meta_XFree (infos);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_XINERAMA,
+ "No XFree86 Xinerama extension or XFree86 Xinerama inactive on display %s\n",
+ display->name);
+ }
+#else
+ meta_topic (META_DEBUG_XINERAMA,
+ "Marco compiled without XFree86 Xinerama support\n");
+#endif /* HAVE_XFREE_XINERAMA */
+
+#ifdef HAVE_SOLARIS_XINERAMA
+ /* This code from GDK, Copyright (C) 2002 Sun Microsystems */
+ if (screen->n_xinerama_infos == 0 &&
+ XineramaGetState (screen->display->xdisplay,
+ screen->number))
+ {
+ XRectangle monitors[MAXFRAMEBUFFERS];
+ unsigned char hints[16];
+ int result;
+ int n_monitors;
+ int i;
+
+ n_monitors = 0;
+ result = XineramaGetInfo (screen->display->xdisplay,
+ screen->number,
+ monitors, hints,
+ &n_monitors);
+ /* Yes I know it should be Success but the current implementation
+ * returns the num of monitor
+ */
+ if (result > 0)
+ {
+ g_assert (n_monitors > 0);
+
+ screen->xinerama_infos = g_new (MetaXineramaScreenInfo, n_monitors);
+ screen->n_xinerama_infos = n_monitors;
+
+ i = 0;
+ while (i < n_monitors)
+ {
+ screen->xinerama_infos[i].number = i;
+ screen->xinerama_infos[i].rect.x = monitors[i].x;
+ screen->xinerama_infos[i].rect.y = monitors[i].y;
+ screen->xinerama_infos[i].rect.width = monitors[i].width;
+ screen->xinerama_infos[i].rect.height = monitors[i].height;
+
+ meta_topic (META_DEBUG_XINERAMA,
+ "Xinerama %d is %d,%d %d x %d\n",
+ screen->xinerama_infos[i].number,
+ screen->xinerama_infos[i].rect.x,
+ screen->xinerama_infos[i].rect.y,
+ screen->xinerama_infos[i].rect.width,
+ screen->xinerama_infos[i].rect.height);
+
+ ++i;
+ }
+ }
+ }
+ else if (screen->n_xinerama_infos == 0)
+ {
+ meta_topic (META_DEBUG_XINERAMA,
+ "No Solaris Xinerama extension or Solaris Xinerama inactive on display %s\n",
+ display->name);
+ }
+#else
+ meta_topic (META_DEBUG_XINERAMA,
+ "Marco compiled without Solaris Xinerama support\n");
+#endif /* HAVE_SOLARIS_XINERAMA */
+
+
+ /* If no Xinerama, fill in the single screen info so
+ * we can use the field unconditionally
+ */
+ if (screen->n_xinerama_infos == 0)
+ {
+ if (g_getenv ("MARCO_DEBUG_XINERAMA"))
+ {
+ meta_topic (META_DEBUG_XINERAMA,
+ "Pretending a single monitor has two Xinerama screens\n");
+
+ screen->xinerama_infos = g_new (MetaXineramaScreenInfo, 2);
+ screen->n_xinerama_infos = 2;
+
+ screen->xinerama_infos[0].number = 0;
+ screen->xinerama_infos[0].rect = screen->rect;
+ screen->xinerama_infos[0].rect.width = screen->rect.width / 2;
+
+ screen->xinerama_infos[1].number = 1;
+ screen->xinerama_infos[1].rect = screen->rect;
+ screen->xinerama_infos[1].rect.x = screen->rect.width / 2;
+ screen->xinerama_infos[1].rect.width = screen->rect.width / 2;
+ }
+ else
+ {
+ meta_topic (META_DEBUG_XINERAMA,
+ "No Xinerama screens, using default screen info\n");
+
+ screen->xinerama_infos = g_new (MetaXineramaScreenInfo, 1);
+ screen->n_xinerama_infos = 1;
+
+ screen->xinerama_infos[0].number = 0;
+ screen->xinerama_infos[0].rect = screen->rect;
+ }
+ }
+
+ g_assert (screen->n_xinerama_infos > 0);
+ g_assert (screen->xinerama_infos != NULL);
+}
+
+MetaScreen*
+meta_screen_new (MetaDisplay *display,
+ int number,
+ guint32 timestamp)
+{
+ MetaScreen *screen;
+ Window xroot;
+ Display *xdisplay;
+ XWindowAttributes attr;
+ Window new_wm_sn_owner;
+ Window current_wm_sn_owner;
+ gboolean replace_current_wm;
+ Atom wm_sn_atom;
+ char buf[128];
+ guint32 manager_timestamp;
+ gulong current_workspace;
+
+ replace_current_wm = meta_get_replace_current_wm ();
+
+ /* Only display->name, display->xdisplay, and display->error_traps
+ * can really be used in this function, since normally screens are
+ * created from the MetaDisplay constructor
+ */
+
+ xdisplay = display->xdisplay;
+
+ meta_verbose ("Trying screen %d on display '%s'\n",
+ number, display->name);
+
+ xroot = RootWindow (xdisplay, number);
+
+ /* FVWM checks for None here, I don't know if this
+ * ever actually happens
+ */
+ if (xroot == None)
+ {
+ meta_warning (_("Screen %d on display '%s' is invalid\n"),
+ number, display->name);
+ return NULL;
+ }
+
+ sprintf (buf, "WM_S%d", number);
+ wm_sn_atom = XInternAtom (xdisplay, buf, False);
+
+ current_wm_sn_owner = XGetSelectionOwner (xdisplay, wm_sn_atom);
+
+ if (current_wm_sn_owner != None)
+ {
+ XSetWindowAttributes attrs;
+
+ if (!replace_current_wm)
+ {
+ meta_warning (_("Screen %d on display \"%s\" already has a window manager; try using the --replace option to replace the current window manager.\n"),
+ number, display->name);
+
+ return NULL;
+ }
+
+ /* We want to find out when the current selection owner dies */
+ meta_error_trap_push_with_return (display);
+ attrs.event_mask = StructureNotifyMask;
+ XChangeWindowAttributes (xdisplay,
+ current_wm_sn_owner, CWEventMask, &attrs);
+ if (meta_error_trap_pop_with_return (display, FALSE) != Success)
+ current_wm_sn_owner = None; /* don't wait for it to die later on */
+ }
+
+ /* We need SelectionClear and SelectionRequest events on the new_wm_sn_owner,
+ * but those cannot be masked, so we only need NoEventMask.
+ */
+ new_wm_sn_owner = meta_create_offscreen_window (xdisplay, xroot, NoEventMask);
+
+ manager_timestamp = timestamp;
+
+ XSetSelectionOwner (xdisplay, wm_sn_atom, new_wm_sn_owner,
+ manager_timestamp);
+
+ if (XGetSelectionOwner (xdisplay, wm_sn_atom) != new_wm_sn_owner)
+ {
+ meta_warning (_("Could not acquire window manager selection on screen %d display \"%s\"\n"),
+ number, display->name);
+
+ XDestroyWindow (xdisplay, new_wm_sn_owner);
+
+ return NULL;
+ }
+
+ {
+ /* Send client message indicating that we are now the WM */
+ XClientMessageEvent ev;
+
+ ev.type = ClientMessage;
+ ev.window = xroot;
+ ev.message_type = display->atom_MANAGER;
+ ev.format = 32;
+ ev.data.l[0] = manager_timestamp;
+ ev.data.l[1] = wm_sn_atom;
+
+ XSendEvent (xdisplay, xroot, False, StructureNotifyMask, (XEvent*)&ev);
+ }
+
+ /* Wait for old window manager to go away */
+ if (current_wm_sn_owner != None)
+ {
+ XEvent event;
+
+ /* We sort of block infinitely here which is probably lame. */
+
+ meta_verbose ("Waiting for old window manager to exit\n");
+ do
+ {
+ XWindowEvent (xdisplay, current_wm_sn_owner,
+ StructureNotifyMask, &event);
+ }
+ while (event.type != DestroyNotify);
+ }
+
+ /* select our root window events */
+ meta_error_trap_push_with_return (display);
+
+ /* We need to or with the existing event mask since
+ * gtk+ may be interested in other events.
+ */
+ XGetWindowAttributes (xdisplay, xroot, &attr);
+ XSelectInput (xdisplay,
+ xroot,
+ SubstructureRedirectMask | SubstructureNotifyMask |
+ ColormapChangeMask | PropertyChangeMask |
+ LeaveWindowMask | EnterWindowMask |
+ KeyPressMask | KeyReleaseMask |
+ FocusChangeMask | StructureNotifyMask |
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ ExposureMask |
+#endif
+ attr.your_event_mask);
+ if (meta_error_trap_pop_with_return (display, FALSE) != Success)
+ {
+ meta_warning (_("Screen %d on display \"%s\" already has a window manager\n"),
+ number, display->name);
+
+ XDestroyWindow (xdisplay, new_wm_sn_owner);
+
+ return NULL;
+ }
+
+ screen = g_new (MetaScreen, 1);
+ screen->closing = 0;
+
+ screen->display = display;
+ screen->number = number;
+ screen->screen_name = get_screen_name (display, number);
+ screen->xscreen = ScreenOfDisplay (xdisplay, number);
+ screen->xroot = xroot;
+ screen->rect.x = screen->rect.y = 0;
+ screen->rect.width = WidthOfScreen (screen->xscreen);
+ screen->rect.height = HeightOfScreen (screen->xscreen);
+ screen->current_cursor = -1; /* invalid/unset */
+ screen->default_xvisual = DefaultVisualOfScreen (screen->xscreen);
+ screen->default_depth = DefaultDepthOfScreen (screen->xscreen);
+ screen->flash_window = None;
+
+ screen->wm_sn_selection_window = new_wm_sn_owner;
+ screen->wm_sn_atom = wm_sn_atom;
+ screen->wm_sn_timestamp = manager_timestamp;
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ screen->wm_cm_selection_window = meta_create_offscreen_window (xdisplay,
+ xroot,
+ NoEventMask);
+#endif
+ screen->work_area_idle = 0;
+
+ screen->active_workspace = NULL;
+ screen->workspaces = NULL;
+ screen->rows_of_workspaces = 1;
+ screen->columns_of_workspaces = -1;
+ screen->vertical_workspaces = FALSE;
+ screen->starting_corner = META_SCREEN_TOPLEFT;
+ screen->compositor_data = NULL;
+
+ {
+ XFontStruct *font_info;
+ XGCValues gc_values;
+ gulong value_mask = 0;
+
+ gc_values.subwindow_mode = IncludeInferiors;
+ value_mask |= GCSubwindowMode;
+ gc_values.function = GXinvert;
+ value_mask |= GCFunction;
+ gc_values.line_width = META_WIREFRAME_XOR_LINE_WIDTH;
+ value_mask |= GCLineWidth;
+
+ font_info = XLoadQueryFont (screen->display->xdisplay, "fixed");
+
+ if (font_info != NULL)
+ {
+ gc_values.font = font_info->fid;
+ value_mask |= GCFont;
+ XFreeFontInfo (NULL, font_info, 1);
+ }
+ else
+ meta_warning ("xserver doesn't have 'fixed' font.\n");
+
+ screen->root_xor_gc = XCreateGC (screen->display->xdisplay,
+ screen->xroot,
+ value_mask,
+ &gc_values);
+ }
+
+ screen->xinerama_infos = NULL;
+ screen->n_xinerama_infos = 0;
+ screen->last_xinerama_index = 0;
+
+ reload_xinerama_infos (screen);
+
+ meta_screen_set_cursor (screen, META_CURSOR_DEFAULT);
+
+ /* Handle creating a no_focus_window for this screen */
+ screen->no_focus_window =
+ meta_create_offscreen_window (display->xdisplay,
+ screen->xroot,
+ FocusChangeMask|KeyPressMask|KeyReleaseMask);
+ XMapWindow (display->xdisplay, screen->no_focus_window);
+ /* Done with no_focus_window stuff */
+
+ set_wm_icon_size_hint (screen);
+
+ set_supported_hint (screen);
+
+ set_wm_check_hint (screen);
+
+ set_desktop_viewport_hint (screen);
+
+ set_desktop_geometry_hint (screen);
+
+ meta_screen_update_workspace_layout (screen);
+
+ /* Get current workspace */
+ current_workspace = 0;
+ if (meta_prop_get_cardinal (screen->display,
+ screen->xroot,
+ screen->display->atom__NET_CURRENT_DESKTOP,
+ &current_workspace))
+ meta_verbose ("Read existing _NET_CURRENT_DESKTOP = %d\n",
+ (int) current_workspace);
+ else
+ meta_verbose ("No _NET_CURRENT_DESKTOP present\n");
+
+ /* Screens must have at least one workspace at all times,
+ * so create that required workspace.
+ */
+ meta_workspace_activate (meta_workspace_new (screen), timestamp);
+ update_num_workspaces (screen, timestamp);
+
+ set_workspace_names (screen);
+
+ screen->all_keys_grabbed = FALSE;
+ screen->keys_grabbed = FALSE;
+ meta_screen_grab_keys (screen);
+
+ screen->ui = meta_ui_new (screen->display->xdisplay,
+ screen->xscreen);
+
+ screen->tab_popup = NULL;
+
+ screen->stack = meta_stack_new (screen);
+
+ meta_prefs_add_listener (prefs_changed_callback, screen);
+
+#ifdef HAVE_STARTUP_NOTIFICATION
+ screen->sn_context =
+ sn_monitor_context_new (screen->display->sn_display,
+ screen->number,
+ meta_screen_sn_event,
+ screen,
+ NULL);
+ screen->startup_sequences = NULL;
+ screen->startup_sequence_timeout = 0;
+#endif
+
+ /* Switch to the _NET_CURRENT_DESKTOP workspace */
+ {
+ MetaWorkspace *space;
+
+ space = meta_screen_get_workspace_by_index (screen,
+ current_workspace);
+
+ if (space != NULL)
+ meta_workspace_activate (space, timestamp);
+ }
+
+ meta_verbose ("Added screen %d ('%s') root 0x%lx\n",
+ screen->number, screen->screen_name, screen->xroot);
+
+ return screen;
+}
+
+void
+meta_screen_free (MetaScreen *screen,
+ guint32 timestamp)
+{
+ MetaDisplay *display;
+ XGCValues gc_values = { 0 };
+
+ display = screen->display;
+
+ screen->closing += 1;
+
+ meta_display_grab (display);
+
+ if (screen->display->compositor)
+ {
+ meta_compositor_unmanage_screen (screen->display->compositor,
+ screen);
+ }
+
+ meta_display_unmanage_windows_for_screen (display, screen, timestamp);
+
+ meta_prefs_remove_listener (prefs_changed_callback, screen);
+
+ meta_screen_ungrab_keys (screen);
+
+#ifdef HAVE_STARTUP_NOTIFICATION
+ g_slist_foreach (screen->startup_sequences,
+ (GFunc) sn_startup_sequence_unref, NULL);
+ g_slist_free (screen->startup_sequences);
+ screen->startup_sequences = NULL;
+
+ if (screen->startup_sequence_timeout != 0)
+ {
+ g_source_remove (screen->startup_sequence_timeout);
+ screen->startup_sequence_timeout = 0;
+ }
+ if (screen->sn_context)
+ {
+ sn_monitor_context_unref (screen->sn_context);
+ screen->sn_context = NULL;
+ }
+#endif
+
+ meta_ui_free (screen->ui);
+
+ meta_stack_free (screen->stack);
+
+ meta_error_trap_push_with_return (screen->display);
+ XSelectInput (screen->display->xdisplay, screen->xroot, 0);
+ if (meta_error_trap_pop_with_return (screen->display, FALSE) != Success)
+ meta_warning (_("Could not release screen %d on display \"%s\"\n"),
+ screen->number, screen->display->name);
+
+ unset_wm_check_hint (screen);
+
+ XDestroyWindow (screen->display->xdisplay,
+ screen->wm_sn_selection_window);
+
+ if (screen->work_area_idle != 0)
+ g_source_remove (screen->work_area_idle);
+
+
+ if (XGetGCValues (screen->display->xdisplay,
+ screen->root_xor_gc,
+ GCFont,
+ &gc_values))
+ {
+ XUnloadFont (screen->display->xdisplay,
+ gc_values.font);
+ }
+
+ XFreeGC (screen->display->xdisplay,
+ screen->root_xor_gc);
+
+ if (screen->xinerama_infos)
+ g_free (screen->xinerama_infos);
+
+ g_free (screen->screen_name);
+ g_free (screen);
+
+ XFlush (display->xdisplay);
+ meta_display_ungrab (display);
+}
+
+typedef struct
+{
+ Window xwindow;
+ XWindowAttributes attrs;
+} WindowInfo;
+
+static GList *
+list_windows (MetaScreen *screen)
+{
+ Window ignored1, ignored2;
+ Window *children;
+ guint n_children, i;
+ GList *result;
+
+ XQueryTree (screen->display->xdisplay,
+ screen->xroot,
+ &ignored1, &ignored2, &children, &n_children);
+
+ result = NULL;
+ for (i = 0; i < n_children; ++i)
+ {
+ WindowInfo *info = g_new0 (WindowInfo, 1);
+
+ meta_error_trap_push_with_return (screen->display);
+
+ XGetWindowAttributes (screen->display->xdisplay,
+ children[i], &info->attrs);
+
+ if (meta_error_trap_pop_with_return (screen->display, TRUE))
+ {
+ meta_verbose ("Failed to get attributes for window 0x%lx\n",
+ children[i]);
+ g_free (info);
+ }
+ else
+ {
+ info->xwindow = children[i];
+ }
+
+ result = g_list_prepend (result, info);
+ }
+
+ if (children)
+ XFree (children);
+
+ return g_list_reverse (result);
+}
+
+void
+meta_screen_manage_all_windows (MetaScreen *screen)
+{
+ GList *windows;
+ GList *list;
+
+ meta_display_grab (screen->display);
+
+ windows = list_windows (screen);
+
+ meta_stack_freeze (screen->stack);
+ for (list = windows; list != NULL; list = list->next)
+ {
+ WindowInfo *info = list->data;
+ MetaWindow *window;
+
+ window = meta_window_new_with_attrs (screen->display, info->xwindow, TRUE,
+ &info->attrs);
+ if (info->xwindow == screen->no_focus_window ||
+ info->xwindow == screen->flash_window ||
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ info->xwindow == screen->wm_cm_selection_window ||
+#endif
+ info->xwindow == screen->wm_sn_selection_window) {
+ meta_verbose ("Not managing our own windows\n");
+ continue;
+ }
+
+ if (screen->display->compositor)
+ meta_compositor_add_window (screen->display->compositor, window,
+ info->xwindow, &info->attrs);
+ }
+ meta_stack_thaw (screen->stack);
+
+ g_list_foreach (windows, (GFunc)g_free, NULL);
+ g_list_free (windows);
+
+ meta_display_ungrab (screen->display);
+}
+
+void
+meta_screen_composite_all_windows (MetaScreen *screen)
+{
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+ MetaDisplay *display;
+ GList *windows, *list;
+
+ display = screen->display;
+ if (!display->compositor)
+ return;
+
+ windows = list_windows (screen);
+
+ meta_stack_freeze (screen->stack);
+
+ for (list = windows; list != NULL; list = list->next)
+ {
+ WindowInfo *info = list->data;
+
+ if (info->xwindow == screen->no_focus_window ||
+ info->xwindow == screen->flash_window ||
+ info->xwindow == screen->wm_sn_selection_window ||
+ info->xwindow == screen->wm_cm_selection_window) {
+ meta_verbose ("Not managing our own windows\n");
+ continue;
+ }
+
+ meta_compositor_add_window (display->compositor,
+ meta_display_lookup_x_window (display,
+ info->xwindow),
+ info->xwindow, &info->attrs);
+ }
+
+ meta_stack_thaw (screen->stack);
+
+ g_list_foreach (windows, (GFunc)g_free, NULL);
+ g_list_free (windows);
+#endif
+}
+
+MetaScreen*
+meta_screen_for_x_screen (Screen *xscreen)
+{
+ MetaDisplay *display;
+
+ display = meta_display_for_x_display (DisplayOfScreen (xscreen));
+
+ if (display == NULL)
+ return NULL;
+
+ return meta_display_screen_for_x_screen (display, xscreen);
+}
+
+static void
+prefs_changed_callback (MetaPreference pref,
+ gpointer data)
+{
+ MetaScreen *screen = data;
+
+ if (pref == META_PREF_NUM_WORKSPACES)
+ {
+ /* MateConf doesn't provide timestamps, but luckily update_num_workspaces
+ * often doesn't need it...
+ */
+ guint32 timestamp =
+ meta_display_get_current_time_roundtrip (screen->display);
+ update_num_workspaces (screen, timestamp);
+ }
+ else if (pref == META_PREF_FOCUS_MODE)
+ {
+ update_focus_mode (screen);
+ }
+ else if (pref == META_PREF_WORKSPACE_NAMES)
+ {
+ set_workspace_names (screen);
+ }
+}
+
+
+static char*
+get_screen_name (MetaDisplay *display,
+ int number)
+{
+ char *p;
+ char *dname;
+ char *scr;
+
+ /* DisplayString gives us a sort of canonical display,
+ * vs. the user-entered name from XDisplayName()
+ */
+ dname = g_strdup (DisplayString (display->xdisplay));
+
+ /* Change display name to specify this screen.
+ */
+ p = strrchr (dname, ':');
+ if (p)
+ {
+ p = strchr (p, '.');
+ if (p)
+ *p = '\0';
+ }
+
+ scr = g_strdup_printf ("%s.%d", dname, number);
+
+ g_free (dname);
+
+ return scr;
+}
+
+static gint
+ptrcmp (gconstpointer a, gconstpointer b)
+{
+ if (a < b)
+ return -1;
+ else if (a > b)
+ return 1;
+ else
+ return 0;
+}
+
+static void
+listify_func (gpointer key, gpointer value, gpointer data)
+{
+ GSList **listp;
+
+ listp = data;
+
+ *listp = g_slist_prepend (*listp, value);
+}
+
+void
+meta_screen_foreach_window (MetaScreen *screen,
+ MetaScreenWindowFunc func,
+ gpointer data)
+{
+ GSList *winlist;
+ GSList *tmp;
+
+ /* If we end up doing this often, just keeping a list
+ * of windows might be sensible.
+ */
+
+ winlist = NULL;
+ g_hash_table_foreach (screen->display->window_ids,
+ listify_func,
+ &winlist);
+
+ winlist = g_slist_sort (winlist, ptrcmp);
+
+ tmp = winlist;
+ while (tmp != NULL)
+ {
+ /* If the next node doesn't contain this window
+ * a second time, delete the window.
+ */
+ if (tmp->next == NULL ||
+ (tmp->next && tmp->next->data != tmp->data))
+ {
+ MetaWindow *window = tmp->data;
+
+ if (window->screen == screen)
+ (* func) (screen, window, data);
+ }
+
+ tmp = tmp->next;
+ }
+ g_slist_free (winlist);
+}
+
+static void
+queue_draw (MetaScreen *screen, MetaWindow *window, gpointer data)
+{
+ if (window->frame)
+ meta_frame_queue_draw (window->frame);
+}
+
+void
+meta_screen_queue_frame_redraws (MetaScreen *screen)
+{
+ meta_screen_foreach_window (screen, queue_draw, NULL);
+}
+
+static void
+queue_resize (MetaScreen *screen, MetaWindow *window, gpointer data)
+{
+ meta_window_queue (window, META_QUEUE_MOVE_RESIZE);
+}
+
+void
+meta_screen_queue_window_resizes (MetaScreen *screen)
+{
+ meta_screen_foreach_window (screen, queue_resize, NULL);
+}
+
+int
+meta_screen_get_n_workspaces (MetaScreen *screen)
+{
+ return g_list_length (screen->workspaces);
+}
+
+MetaWorkspace*
+meta_screen_get_workspace_by_index (MetaScreen *screen,
+ int idx)
+{
+ GList *tmp;
+ int i;
+
+ /* should be robust, idx is maybe from an app */
+ if (idx < 0)
+ return NULL;
+
+ i = 0;
+ tmp = screen->workspaces;
+ while (tmp != NULL)
+ {
+ MetaWorkspace *w = tmp->data;
+
+ if (i == idx)
+ return w;
+
+ ++i;
+ tmp = tmp->next;
+ }
+
+ return NULL;
+}
+
+static void
+set_number_of_spaces_hint (MetaScreen *screen,
+ int n_spaces)
+{
+ unsigned long data[1];
+
+ if (screen->closing > 0)
+ return;
+
+ data[0] = n_spaces;
+
+ meta_verbose ("Setting _NET_NUMBER_OF_DESKTOPS to %lu\n", data[0]);
+
+ meta_error_trap_push (screen->display);
+ XChangeProperty (screen->display->xdisplay, screen->xroot,
+ screen->display->atom__NET_NUMBER_OF_DESKTOPS,
+ XA_CARDINAL,
+ 32, PropModeReplace, (guchar*) data, 1);
+ meta_error_trap_pop (screen->display, FALSE);
+}
+
+static void
+set_desktop_geometry_hint (MetaScreen *screen)
+{
+ unsigned long data[2];
+
+ if (screen->closing > 0)
+ return;
+
+ data[0] = screen->rect.width;
+ data[1] = screen->rect.height;
+
+ meta_verbose ("Setting _NET_DESKTOP_GEOMETRY to %lu, %lu\n", data[0], data[1]);
+
+ meta_error_trap_push (screen->display);
+ XChangeProperty (screen->display->xdisplay, screen->xroot,
+ screen->display->atom__NET_DESKTOP_GEOMETRY,
+ XA_CARDINAL,
+ 32, PropModeReplace, (guchar*) data, 2);
+ meta_error_trap_pop (screen->display, FALSE);
+}
+
+static void
+set_desktop_viewport_hint (MetaScreen *screen)
+{
+ unsigned long data[2];
+
+ if (screen->closing > 0)
+ return;
+
+ /*
+ * Marco does not implement viewports, so this is a fixed 0,0
+ */
+ data[0] = 0;
+ data[1] = 0;
+
+ meta_verbose ("Setting _NET_DESKTOP_VIEWPORT to 0, 0\n");
+
+ meta_error_trap_push (screen->display);
+ XChangeProperty (screen->display->xdisplay, screen->xroot,
+ screen->display->atom__NET_DESKTOP_VIEWPORT,
+ XA_CARDINAL,
+ 32, PropModeReplace, (guchar*) data, 2);
+ meta_error_trap_pop (screen->display, FALSE);
+}
+
+static void
+update_num_workspaces (MetaScreen *screen,
+ guint32 timestamp)
+{
+ int new_num;
+ GList *tmp;
+ int i;
+ GList *extras;
+ MetaWorkspace *last_remaining;
+ gboolean need_change_space;
+
+ new_num = meta_prefs_get_num_workspaces ();
+
+ g_assert (new_num > 0);
+
+ last_remaining = NULL;
+ extras = NULL;
+ i = 0;
+ tmp = screen->workspaces;
+ while (tmp != NULL)
+ {
+ MetaWorkspace *w = tmp->data;
+
+ if (i >= new_num)
+ extras = g_list_prepend (extras, w);
+ else
+ last_remaining = w;
+
+ ++i;
+ tmp = tmp->next;
+ }
+
+ g_assert (last_remaining);
+
+ /* Get rid of the extra workspaces by moving all their windows
+ * to last_remaining, then activating last_remaining if
+ * one of the removed workspaces was active. This will be a bit
+ * wacky if the config tool for changing number of workspaces
+ * is on a removed workspace ;-)
+ */
+ need_change_space = FALSE;
+ tmp = extras;
+ while (tmp != NULL)
+ {
+ MetaWorkspace *w = tmp->data;
+
+ meta_workspace_relocate_windows (w, last_remaining);
+
+ if (w == screen->active_workspace)
+ need_change_space = TRUE;
+
+ tmp = tmp->next;
+ }
+
+ if (need_change_space)
+ meta_workspace_activate (last_remaining, timestamp);
+
+ /* Should now be safe to free the workspaces */
+ tmp = extras;
+ while (tmp != NULL)
+ {
+ MetaWorkspace *w = tmp->data;
+
+ g_assert (w->windows == NULL);
+ meta_workspace_free (w);
+
+ tmp = tmp->next;
+ }
+
+ g_list_free (extras);
+
+ while (i < new_num)
+ {
+ meta_workspace_new (screen);
+ ++i;
+ }
+
+ set_number_of_spaces_hint (screen, new_num);
+
+ meta_screen_queue_workarea_recalc (screen);
+}
+
+static void
+update_focus_mode (MetaScreen *screen)
+{
+ /* nothing to do anymore */ ;
+}
+
+void
+meta_screen_set_cursor (MetaScreen *screen,
+ MetaCursor cursor)
+{
+ Cursor xcursor;
+
+ if (cursor == screen->current_cursor)
+ return;
+
+ screen->current_cursor = cursor;
+
+ xcursor = meta_display_create_x_cursor (screen->display, cursor);
+ XDefineCursor (screen->display->xdisplay, screen->xroot, xcursor);
+ XFlush (screen->display->xdisplay);
+ XFreeCursor (screen->display->xdisplay, xcursor);
+}
+
+void
+meta_screen_update_cursor (MetaScreen *screen)
+{
+ Cursor xcursor;
+
+ xcursor = meta_display_create_x_cursor (screen->display,
+ screen->current_cursor);
+ XDefineCursor (screen->display->xdisplay, screen->xroot, xcursor);
+ XFlush (screen->display->xdisplay);
+ XFreeCursor (screen->display->xdisplay, xcursor);
+}
+
+#define MAX_PREVIEW_SIZE 150.0
+
+static GdkPixbuf *
+get_window_pixbuf (MetaWindow *window,
+ int *width,
+ int *height)
+{
+ Pixmap pmap;
+ GdkPixbuf *pixbuf, *scaled;
+ double ratio;
+
+ pmap = meta_compositor_get_window_pixmap (window->display->compositor,
+ window);
+ if (pmap == None)
+ return NULL;
+
+ pixbuf = meta_ui_get_pixbuf_from_pixmap (pmap);
+ if (pixbuf == NULL)
+ return NULL;
+
+ *width = gdk_pixbuf_get_width (pixbuf);
+ *height = gdk_pixbuf_get_height (pixbuf);
+
+ /* Scale pixbuf to max dimension MAX_PREVIEW_SIZE */
+ if (*width > *height)
+ {
+ ratio = ((double) *width) / MAX_PREVIEW_SIZE;
+ *width = (int) MAX_PREVIEW_SIZE;
+ *height = (int) (((double) *height) / ratio);
+ }
+ else
+ {
+ ratio = ((double) *height) / MAX_PREVIEW_SIZE;
+ *height = (int) MAX_PREVIEW_SIZE;
+ *width = (int) (((double) *width) / ratio);
+ }
+
+ scaled = gdk_pixbuf_scale_simple (pixbuf, *width, *height,
+ GDK_INTERP_BILINEAR);
+ g_object_unref (pixbuf);
+ return scaled;
+}
+
+void
+meta_screen_ensure_tab_popup (MetaScreen *screen,
+ MetaTabList list_type,
+ MetaTabShowType show_type)
+{
+ MetaTabEntry *entries;
+ GList *tab_list;
+ GList *tmp;
+ int len;
+ int i;
+
+ if (screen->tab_popup)
+ return;
+
+ tab_list = meta_display_get_tab_list (screen->display,
+ list_type,
+ screen,
+ screen->active_workspace);
+
+ len = g_list_length (tab_list);
+
+ entries = g_new (MetaTabEntry, len + 1);
+ entries[len].key = NULL;
+ entries[len].title = NULL;
+ entries[len].icon = NULL;
+
+ i = 0;
+ tmp = tab_list;
+ while (i < len)
+ {
+ MetaWindow *window;
+ MetaRectangle r;
+ GdkPixbuf *win_pixbuf;
+ int width, height;
+
+ window = tmp->data;
+
+ entries[i].key = (MetaTabEntryKey) window->xwindow;
+ entries[i].title = window->title;
+
+ win_pixbuf = get_window_pixbuf (window, &width, &height);
+ if (win_pixbuf == NULL)
+ entries[i].icon = g_object_ref (window->icon);
+ else
+ {
+ int icon_width, icon_height, t_width, t_height;
+#define ICON_OFFSET 6
+
+ icon_width = gdk_pixbuf_get_width (window->icon);
+ icon_height = gdk_pixbuf_get_height (window->icon);
+
+ t_width = width + ICON_OFFSET;
+ t_height = height + ICON_OFFSET;
+
+ entries[i].icon = gdk_pixbuf_new (GDK_COLORSPACE_RGB, TRUE, 8,
+ t_width, t_height);
+ gdk_pixbuf_fill (entries[i].icon, 0x00000000);
+ gdk_pixbuf_copy_area (win_pixbuf, 0, 0, width, height,
+ entries[i].icon, 0, 0);
+ g_object_unref (win_pixbuf);
+ gdk_pixbuf_composite (window->icon, entries[i].icon,
+ t_width - icon_width, t_height - icon_height,
+ icon_width, icon_height,
+ t_width - icon_width, t_height - icon_height,
+ 1.0, 1.0, GDK_INTERP_BILINEAR, 255);
+ }
+
+ entries[i].blank = FALSE;
+ entries[i].hidden = !meta_window_showing_on_its_workspace (window);
+ entries[i].demands_attention = window->wm_state_demands_attention;
+
+ if (show_type == META_TAB_SHOW_INSTANTLY ||
+ !entries[i].hidden ||
+ !meta_window_get_icon_geometry (window, &r))
+ meta_window_get_outer_rect (window, &r);
+
+ entries[i].rect = r;
+
+ /* Find inside of highlight rectangle to be used when window is
+ * outlined for tabbing. This should be the size of the
+ * east/west frame, and the size of the south frame, on those
+ * sides. On the top it should be the size of the south frame
+ * edge.
+ */
+#define OUTLINE_WIDTH 5
+ /* Top side */
+ if (!entries[i].hidden &&
+ window->frame && window->frame->bottom_height > 0 &&
+ window->frame->child_y >= window->frame->bottom_height)
+ entries[i].inner_rect.y = window->frame->bottom_height;
+ else
+ entries[i].inner_rect.y = OUTLINE_WIDTH;
+
+ /* Bottom side */
+ if (!entries[i].hidden &&
+ window->frame && window->frame->bottom_height != 0)
+ entries[i].inner_rect.height = r.height
+ - entries[i].inner_rect.y - window->frame->bottom_height;
+ else
+ entries[i].inner_rect.height = r.height
+ - entries[i].inner_rect.y - OUTLINE_WIDTH;
+
+ /* Left side */
+ if (!entries[i].hidden && window->frame && window->frame->child_x != 0)
+ entries[i].inner_rect.x = window->frame->child_x;
+ else
+ entries[i].inner_rect.x = OUTLINE_WIDTH;
+
+ /* Right side */
+ if (!entries[i].hidden &&
+ window->frame && window->frame->right_width != 0)
+ entries[i].inner_rect.width = r.width
+ - entries[i].inner_rect.x - window->frame->right_width;
+ else
+ entries[i].inner_rect.width = r.width
+ - entries[i].inner_rect.x - OUTLINE_WIDTH;
+
+ ++i;
+ tmp = tmp->next;
+ }
+
+ screen->tab_popup = meta_ui_tab_popup_new (entries,
+ screen->number,
+ len,
+ 5, /* FIXME */
+ TRUE);
+
+ for (i = 0; i < len; i++)
+ g_object_unref (entries[i].icon);
+
+ g_free (entries);
+
+ g_list_free (tab_list);
+
+ /* don't show tab popup, since proper window isn't selected yet */
+}
+
+void
+meta_screen_ensure_workspace_popup (MetaScreen *screen)
+{
+ MetaTabEntry *entries;
+ int len;
+ int i;
+ MetaWorkspaceLayout layout;
+ int n_workspaces;
+ int current_workspace;
+
+ if (screen->tab_popup)
+ return;
+
+ current_workspace = meta_workspace_index (screen->active_workspace);
+ n_workspaces = meta_screen_get_n_workspaces (screen);
+
+ meta_screen_calc_workspace_layout (screen, n_workspaces,
+ current_workspace, &layout);
+
+ len = layout.grid_area;
+
+ entries = g_new (MetaTabEntry, len + 1);
+ entries[len].key = NULL;
+ entries[len].title = NULL;
+ entries[len].icon = NULL;
+
+ i = 0;
+ while (i < len)
+ {
+ if (layout.grid[i] >= 0)
+ {
+ MetaWorkspace *workspace;
+
+ workspace = meta_screen_get_workspace_by_index (screen,
+ layout.grid[i]);
+
+ entries[i].key = (MetaTabEntryKey) workspace;
+ entries[i].title = meta_workspace_get_name (workspace);
+ entries[i].icon = NULL;
+ entries[i].blank = FALSE;
+
+ g_assert (entries[i].title != NULL);
+ }
+ else
+ {
+ entries[i].key = NULL;
+ entries[i].title = NULL;
+ entries[i].icon = NULL;
+ entries[i].blank = TRUE;
+ }
+ entries[i].hidden = FALSE;
+ entries[i].demands_attention = FALSE;
+
+ ++i;
+ }
+
+ screen->tab_popup = meta_ui_tab_popup_new (entries,
+ screen->number,
+ len,
+ layout.cols,
+ FALSE);
+
+ g_free (entries);
+ meta_screen_free_workspace_layout (&layout);
+
+ /* don't show tab popup, since proper space isn't selected yet */
+}
+
+MetaWindow*
+meta_screen_get_mouse_window (MetaScreen *screen,
+ MetaWindow *not_this_one)
+{
+ MetaWindow *window;
+ Window root_return, child_return;
+ int root_x_return, root_y_return;
+ int win_x_return, win_y_return;
+ unsigned int mask_return;
+
+ if (not_this_one)
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing mouse window excluding %s\n", not_this_one->desc);
+
+ meta_error_trap_push (screen->display);
+ XQueryPointer (screen->display->xdisplay,
+ screen->xroot,
+ &root_return,
+ &child_return,
+ &root_x_return,
+ &root_y_return,
+ &win_x_return,
+ &win_y_return,
+ &mask_return);
+ meta_error_trap_pop (screen->display, TRUE);
+
+ window = meta_stack_get_default_focus_window_at_point (screen->stack,
+ screen->active_workspace,
+ not_this_one,
+ root_x_return,
+ root_y_return);
+
+ return window;
+}
+
+const MetaXineramaScreenInfo*
+meta_screen_get_xinerama_for_rect (MetaScreen *screen,
+ MetaRectangle *rect)
+{
+ int i;
+ int best_xinerama, xinerama_score;
+
+ if (screen->n_xinerama_infos == 1)
+ return &screen->xinerama_infos[0];
+
+ best_xinerama = 0;
+ xinerama_score = 0;
+
+ for (i = 0; i < screen->n_xinerama_infos; i++)
+ {
+ MetaRectangle dest;
+ if (meta_rectangle_intersect (&screen->xinerama_infos[i].rect,
+ rect,
+ &dest))
+ {
+ int cur = meta_rectangle_area (&dest);
+ if (cur > xinerama_score)
+ {
+ xinerama_score = cur;
+ best_xinerama = i;
+ }
+ }
+ }
+
+ return &screen->xinerama_infos[best_xinerama];
+}
+
+const MetaXineramaScreenInfo*
+meta_screen_get_xinerama_for_window (MetaScreen *screen,
+ MetaWindow *window)
+{
+ MetaRectangle window_rect;
+
+ meta_window_get_outer_rect (window, &window_rect);
+
+ return meta_screen_get_xinerama_for_rect (screen, &window_rect);
+}
+
+const MetaXineramaScreenInfo*
+meta_screen_get_xinerama_neighbor (MetaScreen *screen,
+ int which_xinerama,
+ MetaScreenDirection direction)
+{
+ MetaXineramaScreenInfo* input = screen->xinerama_infos + which_xinerama;
+ MetaXineramaScreenInfo* current;
+ int i;
+
+ for (i = 0; i < screen->n_xinerama_infos; i++)
+ {
+ current = screen->xinerama_infos + i;
+
+ if ((direction == META_SCREEN_RIGHT &&
+ current->rect.x == input->rect.x + input->rect.width &&
+ meta_rectangle_vert_overlap(&current->rect, &input->rect)) ||
+ (direction == META_SCREEN_LEFT &&
+ input->rect.x == current->rect.x + current->rect.width &&
+ meta_rectangle_vert_overlap(&current->rect, &input->rect)) ||
+ (direction == META_SCREEN_UP &&
+ input->rect.y == current->rect.y + current->rect.height &&
+ meta_rectangle_horiz_overlap(&current->rect, &input->rect)) ||
+ (direction == META_SCREEN_DOWN &&
+ current->rect.y == input->rect.y + input->rect.height &&
+ meta_rectangle_horiz_overlap(&current->rect, &input->rect)))
+ {
+ return current;
+ }
+ }
+
+ return NULL;
+}
+
+void
+meta_screen_get_natural_xinerama_list (MetaScreen *screen,
+ int** xineramas_list,
+ int* n_xineramas)
+{
+ const MetaXineramaScreenInfo* current;
+ const MetaXineramaScreenInfo* tmp;
+ GQueue* xinerama_queue;
+ int* visited;
+ int cur = 0;
+ int i;
+
+ *n_xineramas = screen->n_xinerama_infos;
+ *xineramas_list = g_new (int, screen->n_xinerama_infos);
+
+ /* we calculate a natural ordering by which to choose xineramas for
+ * window placement. We start at the current xinerama, and perform
+ * a breadth-first search of the xineramas starting from that
+ * xinerama. We choose preferentially left, then right, then down,
+ * then up. The visitation order produced by this traversal is the
+ * natural xinerama ordering.
+ */
+
+ visited = g_new (int, screen->n_xinerama_infos);
+ for (i = 0; i < screen->n_xinerama_infos; i++)
+ {
+ visited[i] = FALSE;
+ }
+
+ current = meta_screen_get_current_xinerama (screen);
+ xinerama_queue = g_queue_new ();
+ g_queue_push_tail (xinerama_queue, (gpointer) current);
+ visited[current->number] = TRUE;
+
+ while (!g_queue_is_empty (xinerama_queue))
+ {
+ current = (const MetaXineramaScreenInfo*)
+ g_queue_pop_head (xinerama_queue);
+
+ (*xineramas_list)[cur++] = current->number;
+
+ /* enqueue each of the directions */
+ tmp = meta_screen_get_xinerama_neighbor (screen,
+ current->number,
+ META_SCREEN_LEFT);
+ if (tmp && !visited[tmp->number])
+ {
+ g_queue_push_tail (xinerama_queue,
+ (MetaXineramaScreenInfo*) tmp);
+ visited[tmp->number] = TRUE;
+ }
+ tmp = meta_screen_get_xinerama_neighbor (screen,
+ current->number,
+ META_SCREEN_RIGHT);
+ if (tmp && !visited[tmp->number])
+ {
+ g_queue_push_tail (xinerama_queue,
+ (MetaXineramaScreenInfo*) tmp);
+ visited[tmp->number] = TRUE;
+ }
+ tmp = meta_screen_get_xinerama_neighbor (screen,
+ current->number,
+ META_SCREEN_UP);
+ if (tmp && !visited[tmp->number])
+ {
+ g_queue_push_tail (xinerama_queue,
+ (MetaXineramaScreenInfo*) tmp);
+ visited[tmp->number] = TRUE;
+ }
+ tmp = meta_screen_get_xinerama_neighbor (screen,
+ current->number,
+ META_SCREEN_DOWN);
+ if (tmp && !visited[tmp->number])
+ {
+ g_queue_push_tail (xinerama_queue,
+ (MetaXineramaScreenInfo*) tmp);
+ visited[tmp->number] = TRUE;
+ }
+ }
+
+ /* in case we somehow missed some set of xineramas, go through the
+ * visited list and add in any xineramas that were missed
+ */
+ for (i = 0; i < screen->n_xinerama_infos; i++)
+ {
+ if (visited[i] == FALSE)
+ {
+ (*xineramas_list)[cur++] = i;
+ }
+ }
+
+ g_free (visited);
+ g_queue_free (xinerama_queue);
+}
+
+const MetaXineramaScreenInfo*
+meta_screen_get_current_xinerama (MetaScreen *screen)
+{
+ if (screen->n_xinerama_infos == 1)
+ return &screen->xinerama_infos[0];
+
+ /* Sadly, we have to do it this way. Yuck.
+ */
+
+ if (screen->display->xinerama_cache_invalidated)
+ {
+ Window root_return, child_return;
+ int win_x_return, win_y_return;
+ unsigned int mask_return;
+ int i;
+ MetaRectangle pointer_position;
+
+ screen->display->xinerama_cache_invalidated = FALSE;
+
+ pointer_position.width = pointer_position.height = 1;
+ XQueryPointer (screen->display->xdisplay,
+ screen->xroot,
+ &root_return,
+ &child_return,
+ &pointer_position.x,
+ &pointer_position.y,
+ &win_x_return,
+ &win_y_return,
+ &mask_return);
+
+ screen->last_xinerama_index = 0;
+ for (i = 0; i < screen->n_xinerama_infos; i++)
+ {
+ if (meta_rectangle_contains_rect (&screen->xinerama_infos[i].rect,
+ &pointer_position))
+ {
+ screen->last_xinerama_index = i;
+ break;
+ }
+ }
+
+ meta_topic (META_DEBUG_XINERAMA,
+ "Rechecked current Xinerama, now %d\n",
+ screen->last_xinerama_index);
+ }
+
+ return &screen->xinerama_infos[screen->last_xinerama_index];
+}
+
+#define _NET_WM_ORIENTATION_HORZ 0
+#define _NET_WM_ORIENTATION_VERT 1
+
+#define _NET_WM_TOPLEFT 0
+#define _NET_WM_TOPRIGHT 1
+#define _NET_WM_BOTTOMRIGHT 2
+#define _NET_WM_BOTTOMLEFT 3
+
+void
+meta_screen_update_workspace_layout (MetaScreen *screen)
+{
+ gulong *list;
+ int n_items;
+
+ list = NULL;
+ n_items = 0;
+
+ if (meta_prop_get_cardinal_list (screen->display,
+ screen->xroot,
+ screen->display->atom__NET_DESKTOP_LAYOUT,
+ &list, &n_items))
+ {
+ if (n_items == 3 || n_items == 4)
+ {
+ int cols, rows;
+
+ switch (list[0])
+ {
+ case _NET_WM_ORIENTATION_HORZ:
+ screen->vertical_workspaces = FALSE;
+ break;
+ case _NET_WM_ORIENTATION_VERT:
+ screen->vertical_workspaces = TRUE;
+ break;
+ default:
+ meta_warning ("Someone set a weird orientation in _NET_DESKTOP_LAYOUT\n");
+ break;
+ }
+
+ cols = list[1];
+ rows = list[2];
+
+ if (rows <= 0 && cols <= 0)
+ {
+ meta_warning ("Columns = %d rows = %d in _NET_DESKTOP_LAYOUT makes no sense\n", rows, cols);
+ }
+ else
+ {
+ if (rows > 0)
+ screen->rows_of_workspaces = rows;
+ else
+ screen->rows_of_workspaces = -1;
+
+ if (cols > 0)
+ screen->columns_of_workspaces = cols;
+ else
+ screen->columns_of_workspaces = -1;
+ }
+
+ if (n_items == 4)
+ {
+ switch (list[3])
+ {
+ case _NET_WM_TOPLEFT:
+ screen->starting_corner = META_SCREEN_TOPLEFT;
+ break;
+ case _NET_WM_TOPRIGHT:
+ screen->starting_corner = META_SCREEN_TOPRIGHT;
+ break;
+ case _NET_WM_BOTTOMRIGHT:
+ screen->starting_corner = META_SCREEN_BOTTOMRIGHT;
+ break;
+ case _NET_WM_BOTTOMLEFT:
+ screen->starting_corner = META_SCREEN_BOTTOMLEFT;
+ break;
+ default:
+ meta_warning ("Someone set a weird starting corner in _NET_DESKTOP_LAYOUT\n");
+ break;
+ }
+ }
+ else
+ screen->starting_corner = META_SCREEN_TOPLEFT;
+ }
+ else
+ {
+ meta_warning ("Someone set _NET_DESKTOP_LAYOUT to %d integers instead of 4 "
+ "(3 is accepted for backwards compat)\n", n_items);
+ }
+
+ meta_XFree (list);
+ }
+
+ meta_verbose ("Workspace layout rows = %d cols = %d orientation = %d starting corner = %u\n",
+ screen->rows_of_workspaces,
+ screen->columns_of_workspaces,
+ screen->vertical_workspaces,
+ screen->starting_corner);
+}
+
+static void
+set_workspace_names (MetaScreen *screen)
+{
+ /* This updates names on root window when the pref changes,
+ * note we only get prefs change notify if things have
+ * really changed.
+ */
+ GString *flattened;
+ int i;
+ int n_spaces;
+
+ /* flatten to nul-separated list */
+ n_spaces = meta_screen_get_n_workspaces (screen);
+ flattened = g_string_new ("");
+ i = 0;
+ while (i < n_spaces)
+ {
+ const char *name;
+
+ name = meta_prefs_get_workspace_name (i);
+
+ if (name)
+ g_string_append_len (flattened, name,
+ strlen (name) + 1);
+ else
+ g_string_append_len (flattened, "", 1);
+
+ ++i;
+ }
+
+ meta_error_trap_push (screen->display);
+ XChangeProperty (screen->display->xdisplay,
+ screen->xroot,
+ screen->display->atom__NET_DESKTOP_NAMES,
+ screen->display->atom_UTF8_STRING,
+ 8, PropModeReplace,
+ (unsigned char *)flattened->str, flattened->len);
+ meta_error_trap_pop (screen->display, FALSE);
+
+ g_string_free (flattened, TRUE);
+}
+
+void
+meta_screen_update_workspace_names (MetaScreen *screen)
+{
+ char **names;
+ int n_names;
+ int i;
+
+ /* this updates names in prefs when the root window property changes,
+ * iff the new property contents don't match what's already in prefs
+ */
+
+ names = NULL;
+ n_names = 0;
+ if (!meta_prop_get_utf8_list (screen->display,
+ screen->xroot,
+ screen->display->atom__NET_DESKTOP_NAMES,
+ &names, &n_names))
+ {
+ meta_verbose ("Failed to get workspace names from root window %d\n",
+ screen->number);
+ return;
+ }
+
+ i = 0;
+ while (i < n_names)
+ {
+ meta_topic (META_DEBUG_PREFS,
+ "Setting workspace %d name to \"%s\" due to _NET_DESKTOP_NAMES change\n",
+ i, names[i] ? names[i] : "null");
+ meta_prefs_change_workspace_name (i, names[i]);
+
+ ++i;
+ }
+
+ g_strfreev (names);
+}
+
+Window
+meta_create_offscreen_window (Display *xdisplay,
+ Window parent,
+ long valuemask)
+{
+ XSetWindowAttributes attrs;
+
+ /* we want to be override redirect because sometimes we
+ * create a window on a screen we aren't managing.
+ * (but on a display we are managing at least one screen for)
+ */
+ attrs.override_redirect = True;
+ attrs.event_mask = valuemask;
+
+ return XCreateWindow (xdisplay,
+ parent,
+ -100, -100, 1, 1,
+ 0,
+ CopyFromParent,
+ CopyFromParent,
+ (Visual *)CopyFromParent,
+ CWOverrideRedirect | CWEventMask,
+ &attrs);
+}
+
+static void
+set_work_area_hint (MetaScreen *screen)
+{
+ int num_workspaces;
+ GList *tmp_list;
+ unsigned long *data, *tmp;
+ MetaRectangle area;
+
+ num_workspaces = meta_screen_get_n_workspaces (screen);
+ data = g_new (unsigned long, num_workspaces * 4);
+ tmp_list = screen->workspaces;
+ tmp = data;
+
+ while (tmp_list != NULL)
+ {
+ MetaWorkspace *workspace = tmp_list->data;
+
+ if (workspace->screen == screen)
+ {
+ meta_workspace_get_work_area_all_xineramas (workspace, &area);
+ tmp[0] = area.x;
+ tmp[1] = area.y;
+ tmp[2] = area.width;
+ tmp[3] = area.height;
+
+ tmp += 4;
+ }
+
+ tmp_list = tmp_list->next;
+ }
+
+ meta_error_trap_push (screen->display);
+ XChangeProperty (screen->display->xdisplay, screen->xroot,
+ screen->display->atom__NET_WORKAREA,
+ XA_CARDINAL, 32, PropModeReplace,
+ (guchar*) data, num_workspaces*4);
+ g_free (data);
+ meta_error_trap_pop (screen->display, FALSE);
+}
+
+static gboolean
+set_work_area_idle_func (MetaScreen *screen)
+{
+ meta_topic (META_DEBUG_WORKAREA,
+ "Running work area idle function\n");
+
+ screen->work_area_idle = 0;
+
+ set_work_area_hint (screen);
+
+ return FALSE;
+}
+
+void
+meta_screen_queue_workarea_recalc (MetaScreen *screen)
+{
+ /* Recompute work area in an idle */
+ if (screen->work_area_idle == 0)
+ {
+ meta_topic (META_DEBUG_WORKAREA,
+ "Adding work area hint idle function\n");
+ screen->work_area_idle =
+ g_idle_add_full (META_PRIORITY_WORK_AREA_HINT,
+ (GSourceFunc) set_work_area_idle_func,
+ screen,
+ NULL);
+ }
+}
+
+
+#ifdef WITH_VERBOSE_MODE
+static char *
+meta_screen_corner_to_string (MetaScreenCorner corner)
+{
+ switch (corner)
+ {
+ case META_SCREEN_TOPLEFT:
+ return "TopLeft";
+ case META_SCREEN_TOPRIGHT:
+ return "TopRight";
+ case META_SCREEN_BOTTOMLEFT:
+ return "BottomLeft";
+ case META_SCREEN_BOTTOMRIGHT:
+ return "BottomRight";
+ }
+
+ return "Unknown";
+}
+#endif /* WITH_VERBOSE_MODE */
+
+void
+meta_screen_calc_workspace_layout (MetaScreen *screen,
+ int num_workspaces,
+ int current_space,
+ MetaWorkspaceLayout *layout)
+{
+ int rows, cols;
+ int grid_area;
+ int *grid;
+ int i, r, c;
+ int current_row, current_col;
+
+ rows = screen->rows_of_workspaces;
+ cols = screen->columns_of_workspaces;
+ if (rows <= 0 && cols <= 0)
+ cols = num_workspaces;
+
+ if (rows <= 0)
+ rows = num_workspaces / cols + ((num_workspaces % cols) > 0 ? 1 : 0);
+ if (cols <= 0)
+ cols = num_workspaces / rows + ((num_workspaces % rows) > 0 ? 1 : 0);
+
+ /* paranoia */
+ if (rows < 1)
+ rows = 1;
+ if (cols < 1)
+ cols = 1;
+
+ g_assert (rows != 0 && cols != 0);
+
+ grid_area = rows * cols;
+
+ meta_verbose ("Getting layout rows = %d cols = %d current = %d "
+ "num_spaces = %d vertical = %s corner = %s\n",
+ rows, cols, current_space, num_workspaces,
+ screen->vertical_workspaces ? "(true)" : "(false)",
+ meta_screen_corner_to_string (screen->starting_corner));
+
+ /* ok, we want to setup the distances in the workspace array to go
+ * in each direction. Remember, there are many ways that a workspace
+ * array can be setup.
+ * see http://www.freedesktop.org/standards/wm-spec/1.2/html/x109.html
+ * and look at the _NET_DESKTOP_LAYOUT section for details.
+ * For instance:
+ */
+ /* starting_corner = META_SCREEN_TOPLEFT
+ * vertical_workspaces = 0 vertical_workspaces=1
+ * 1234 1357
+ * 5678 2468
+ *
+ * starting_corner = META_SCREEN_TOPRIGHT
+ * vertical_workspaces = 0 vertical_workspaces=1
+ * 4321 7531
+ * 8765 8642
+ *
+ * starting_corner = META_SCREEN_BOTTOMLEFT
+ * vertical_workspaces = 0 vertical_workspaces=1
+ * 5678 2468
+ * 1234 1357
+ *
+ * starting_corner = META_SCREEN_BOTTOMRIGHT
+ * vertical_workspaces = 0 vertical_workspaces=1
+ * 8765 8642
+ * 4321 7531
+ *
+ */
+ /* keep in mind that we could have a ragged layout, e.g. the "8"
+ * in the above grids could be missing
+ */
+
+
+ grid = g_new (int, grid_area);
+
+ current_row = -1;
+ current_col = -1;
+ i = 0;
+
+ switch (screen->starting_corner)
+ {
+ case META_SCREEN_TOPLEFT:
+ if (screen->vertical_workspaces)
+ {
+ c = 0;
+ while (c < cols)
+ {
+ r = 0;
+ while (r < rows)
+ {
+ grid[r*cols+c] = i;
+ ++i;
+ ++r;
+ }
+ ++c;
+ }
+ }
+ else
+ {
+ r = 0;
+ while (r < rows)
+ {
+ c = 0;
+ while (c < cols)
+ {
+ grid[r*cols+c] = i;
+ ++i;
+ ++c;
+ }
+ ++r;
+ }
+ }
+ break;
+ case META_SCREEN_TOPRIGHT:
+ if (screen->vertical_workspaces)
+ {
+ c = cols - 1;
+ while (c >= 0)
+ {
+ r = 0;
+ while (r < rows)
+ {
+ grid[r*cols+c] = i;
+ ++i;
+ ++r;
+ }
+ --c;
+ }
+ }
+ else
+ {
+ r = 0;
+ while (r < rows)
+ {
+ c = cols - 1;
+ while (c >= 0)
+ {
+ grid[r*cols+c] = i;
+ ++i;
+ --c;
+ }
+ ++r;
+ }
+ }
+ break;
+ case META_SCREEN_BOTTOMLEFT:
+ if (screen->vertical_workspaces)
+ {
+ c = 0;
+ while (c < cols)
+ {
+ r = rows - 1;
+ while (r >= 0)
+ {
+ grid[r*cols+c] = i;
+ ++i;
+ --r;
+ }
+ ++c;
+ }
+ }
+ else
+ {
+ r = rows - 1;
+ while (r >= 0)
+ {
+ c = 0;
+ while (c < cols)
+ {
+ grid[r*cols+c] = i;
+ ++i;
+ ++c;
+ }
+ --r;
+ }
+ }
+ break;
+ case META_SCREEN_BOTTOMRIGHT:
+ if (screen->vertical_workspaces)
+ {
+ c = cols - 1;
+ while (c >= 0)
+ {
+ r = rows - 1;
+ while (r >= 0)
+ {
+ grid[r*cols+c] = i;
+ ++i;
+ --r;
+ }
+ --c;
+ }
+ }
+ else
+ {
+ r = rows - 1;
+ while (r >= 0)
+ {
+ c = cols - 1;
+ while (c >= 0)
+ {
+ grid[r*cols+c] = i;
+ ++i;
+ --c;
+ }
+ --r;
+ }
+ }
+ break;
+ }
+
+ if (i != grid_area)
+ meta_bug ("did not fill in the whole workspace grid in %s (%d filled)\n",
+ G_STRFUNC, i);
+
+ current_row = 0;
+ current_col = 0;
+ r = 0;
+ while (r < rows)
+ {
+ c = 0;
+ while (c < cols)
+ {
+ if (grid[r*cols+c] == current_space)
+ {
+ current_row = r;
+ current_col = c;
+ }
+ else if (grid[r*cols+c] >= num_workspaces)
+ {
+ /* flag nonexistent spaces with -1 */
+ grid[r*cols+c] = -1;
+ }
+ ++c;
+ }
+ ++r;
+ }
+
+ layout->rows = rows;
+ layout->cols = cols;
+ layout->grid = grid;
+ layout->grid_area = grid_area;
+ layout->current_row = current_row;
+ layout->current_col = current_col;
+
+#ifdef WITH_VERBOSE_MODE
+ if (meta_is_verbose ())
+ {
+ r = 0;
+ while (r < layout->rows)
+ {
+ meta_verbose (" ");
+ meta_push_no_msg_prefix ();
+ c = 0;
+ while (c < layout->cols)
+ {
+ if (r == layout->current_row &&
+ c == layout->current_col)
+ meta_verbose ("*%2d ", layout->grid[r*layout->cols+c]);
+ else
+ meta_verbose ("%3d ", layout->grid[r*layout->cols+c]);
+ ++c;
+ }
+ meta_verbose ("\n");
+ meta_pop_no_msg_prefix ();
+ ++r;
+ }
+ }
+#endif /* WITH_VERBOSE_MODE */
+}
+
+void
+meta_screen_free_workspace_layout (MetaWorkspaceLayout *layout)
+{
+ g_free (layout->grid);
+}
+
+static void
+meta_screen_resize_func (MetaScreen *screen,
+ MetaWindow *window,
+ void *user_data)
+{
+ if (window->struts)
+ {
+ meta_window_update_struts (window);
+ }
+ meta_window_queue (window, META_QUEUE_MOVE_RESIZE);
+
+ meta_window_recalc_features (window);
+}
+
+void
+meta_screen_resize (MetaScreen *screen,
+ int width,
+ int height)
+{
+ screen->rect.width = width;
+ screen->rect.height = height;
+
+ reload_xinerama_infos (screen);
+ set_desktop_geometry_hint (screen);
+
+ /* Queue a resize on all the windows */
+ meta_screen_foreach_window (screen, meta_screen_resize_func, 0);
+}
+
+void
+meta_screen_update_showing_desktop_hint (MetaScreen *screen)
+{
+ unsigned long data[1];
+
+ data[0] = screen->active_workspace->showing_desktop ? 1 : 0;
+
+ meta_error_trap_push (screen->display);
+ XChangeProperty (screen->display->xdisplay, screen->xroot,
+ screen->display->atom__NET_SHOWING_DESKTOP,
+ XA_CARDINAL,
+ 32, PropModeReplace, (guchar*) data, 1);
+ meta_error_trap_pop (screen->display, FALSE);
+}
+
+static void
+queue_windows_showing (MetaScreen *screen)
+{
+ GSList *windows;
+ GSList *tmp;
+
+ /* Must operate on all windows on display instead of just on the
+ * active_workspace's window list, because the active_workspace's
+ * window list may not contain the on_all_workspace windows.
+ */
+ windows = meta_display_list_windows (screen->display);
+
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+
+ if (w->screen == screen)
+ meta_window_queue (w, META_QUEUE_CALC_SHOWING);
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (windows);
+}
+
+void
+meta_screen_minimize_all_on_active_workspace_except (MetaScreen *screen,
+ MetaWindow *keep)
+{
+ GList *windows;
+ GList *tmp;
+
+ windows = screen->active_workspace->windows;
+
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+
+ if (w->screen == screen &&
+ w->has_minimize_func &&
+ w != keep)
+ meta_window_minimize (w);
+
+ tmp = tmp->next;
+ }
+}
+
+void
+meta_screen_show_desktop (MetaScreen *screen,
+ guint32 timestamp)
+{
+ GList *windows;
+
+ if (screen->active_workspace->showing_desktop)
+ return;
+
+ screen->active_workspace->showing_desktop = TRUE;
+
+ queue_windows_showing (screen);
+
+ /* Focus the most recently used META_WINDOW_DESKTOP window, if there is one;
+ * see bug 159257.
+ */
+ windows = screen->active_workspace->mru_list;
+ while (windows != NULL)
+ {
+ MetaWindow *w = windows->data;
+
+ if (w->screen == screen &&
+ w->type == META_WINDOW_DESKTOP)
+ {
+ meta_window_focus (w, timestamp);
+ break;
+ }
+
+ windows = windows->next;
+ }
+
+
+ meta_screen_update_showing_desktop_hint (screen);
+}
+
+void
+meta_screen_unshow_desktop (MetaScreen *screen)
+{
+ if (!screen->active_workspace->showing_desktop)
+ return;
+
+ screen->active_workspace->showing_desktop = FALSE;
+
+ queue_windows_showing (screen);
+
+ meta_screen_update_showing_desktop_hint (screen);
+}
+
+
+#ifdef HAVE_STARTUP_NOTIFICATION
+static gboolean startup_sequence_timeout (void *data);
+
+static void
+update_startup_feedback (MetaScreen *screen)
+{
+ if (screen->startup_sequences != NULL)
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "Setting busy cursor\n");
+ meta_screen_set_cursor (screen, META_CURSOR_BUSY);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "Setting default cursor\n");
+ meta_screen_set_cursor (screen, META_CURSOR_DEFAULT);
+ }
+}
+
+static void
+add_sequence (MetaScreen *screen,
+ SnStartupSequence *sequence)
+{
+ meta_topic (META_DEBUG_STARTUP,
+ "Adding sequence %s\n",
+ sn_startup_sequence_get_id (sequence));
+ sn_startup_sequence_ref (sequence);
+ screen->startup_sequences = g_slist_prepend (screen->startup_sequences,
+ sequence);
+
+ /* our timeout just polls every second, instead of bothering
+ * to compute exactly when we may next time out
+ */
+ if (screen->startup_sequence_timeout == 0)
+ screen->startup_sequence_timeout = g_timeout_add (1000,
+ startup_sequence_timeout,
+ screen);
+
+ update_startup_feedback (screen);
+}
+
+static void
+remove_sequence (MetaScreen *screen,
+ SnStartupSequence *sequence)
+{
+ meta_topic (META_DEBUG_STARTUP,
+ "Removing sequence %s\n",
+ sn_startup_sequence_get_id (sequence));
+
+ screen->startup_sequences = g_slist_remove (screen->startup_sequences,
+ sequence);
+ sn_startup_sequence_unref (sequence);
+
+ if (screen->startup_sequences == NULL &&
+ screen->startup_sequence_timeout != 0)
+ {
+ g_source_remove (screen->startup_sequence_timeout);
+ screen->startup_sequence_timeout = 0;
+ }
+
+ update_startup_feedback (screen);
+}
+
+typedef struct
+{
+ GSList *list;
+ GTimeVal now;
+} CollectTimedOutData;
+
+/* This should be fairly long, as it should never be required unless
+ * apps or .desktop files are buggy, and it's confusing if
+ * OpenOffice or whatever seems to stop launching - people
+ * might decide they need to launch it again.
+ */
+#define STARTUP_TIMEOUT 15000
+
+static void
+collect_timed_out_foreach (void *element,
+ void *data)
+{
+ CollectTimedOutData *ctod = data;
+ SnStartupSequence *sequence = element;
+ long tv_sec, tv_usec;
+ double elapsed;
+
+ sn_startup_sequence_get_last_active_time (sequence, &tv_sec, &tv_usec);
+
+ elapsed =
+ ((((double)ctod->now.tv_sec - tv_sec) * G_USEC_PER_SEC +
+ (ctod->now.tv_usec - tv_usec))) / 1000.0;
+
+ meta_topic (META_DEBUG_STARTUP,
+ "Sequence used %g seconds vs. %g max: %s\n",
+ elapsed, (double) STARTUP_TIMEOUT,
+ sn_startup_sequence_get_id (sequence));
+
+ if (elapsed > STARTUP_TIMEOUT)
+ ctod->list = g_slist_prepend (ctod->list, sequence);
+}
+
+static gboolean
+startup_sequence_timeout (void *data)
+{
+ MetaScreen *screen = data;
+ CollectTimedOutData ctod;
+ GSList *tmp;
+
+ ctod.list = NULL;
+ g_get_current_time (&ctod.now);
+ g_slist_foreach (screen->startup_sequences,
+ collect_timed_out_foreach,
+ &ctod);
+
+ tmp = ctod.list;
+ while (tmp != NULL)
+ {
+ SnStartupSequence *sequence = tmp->data;
+
+ meta_topic (META_DEBUG_STARTUP,
+ "Timed out sequence %s\n",
+ sn_startup_sequence_get_id (sequence));
+
+ sn_startup_sequence_complete (sequence);
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (ctod.list);
+
+ if (screen->startup_sequences != NULL)
+ {
+ return TRUE;
+ }
+ else
+ {
+ /* remove */
+ screen->startup_sequence_timeout = 0;
+ return FALSE;
+ }
+}
+
+static void
+meta_screen_sn_event (SnMonitorEvent *event,
+ void *user_data)
+{
+ MetaScreen *screen;
+ SnStartupSequence *sequence;
+
+ screen = user_data;
+
+ sequence = sn_monitor_event_get_startup_sequence (event);
+
+ switch (sn_monitor_event_get_type (event))
+ {
+ case SN_MONITOR_EVENT_INITIATED:
+ {
+ const char *wmclass;
+
+ wmclass = sn_startup_sequence_get_wmclass (sequence);
+
+ meta_topic (META_DEBUG_STARTUP,
+ "Received startup initiated for %s wmclass %s\n",
+ sn_startup_sequence_get_id (sequence),
+ wmclass ? wmclass : "(unset)");
+ add_sequence (screen, sequence);
+ }
+ break;
+
+ case SN_MONITOR_EVENT_COMPLETED:
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "Received startup completed for %s\n",
+ sn_startup_sequence_get_id (sequence));
+ remove_sequence (screen,
+ sn_monitor_event_get_startup_sequence (event));
+ }
+ break;
+
+ case SN_MONITOR_EVENT_CHANGED:
+ meta_topic (META_DEBUG_STARTUP,
+ "Received startup changed for %s\n",
+ sn_startup_sequence_get_id (sequence));
+ break;
+
+ case SN_MONITOR_EVENT_CANCELED:
+ meta_topic (META_DEBUG_STARTUP,
+ "Received startup canceled for %s\n",
+ sn_startup_sequence_get_id (sequence));
+ break;
+ }
+}
+#endif
+
+/* Sets the initial_timestamp and initial_workspace properties
+ * of a window according to information given us by the
+ * startup-notification library.
+ *
+ * Returns TRUE if startup properties have been applied, and
+ * FALSE if they have not (for example, if they had already
+ * been applied.)
+ */
+gboolean
+meta_screen_apply_startup_properties (MetaScreen *screen,
+ MetaWindow *window)
+{
+#ifdef HAVE_STARTUP_NOTIFICATION
+ const char *startup_id;
+ GSList *tmp;
+ SnStartupSequence *sequence;
+
+ /* Does the window have a startup ID stored? */
+ startup_id = meta_window_get_startup_id (window);
+
+ meta_topic (META_DEBUG_STARTUP,
+ "Applying startup props to %s id \"%s\"\n",
+ window->desc,
+ startup_id ? startup_id : "(none)");
+
+ sequence = NULL;
+ if (startup_id == NULL)
+ {
+ /* No startup ID stored for the window. Let's ask the
+ * startup-notification library whether there's anything
+ * stored for the resource name or resource class hints.
+ */
+ tmp = screen->startup_sequences;
+ while (tmp != NULL)
+ {
+ const char *wmclass;
+
+ wmclass = sn_startup_sequence_get_wmclass (tmp->data);
+
+ if (wmclass != NULL &&
+ ((window->res_class &&
+ strcmp (wmclass, window->res_class) == 0) ||
+ (window->res_name &&
+ strcmp (wmclass, window->res_name) == 0)))
+ {
+ sequence = tmp->data;
+
+ g_assert (window->startup_id == NULL);
+ window->startup_id = g_strdup (sn_startup_sequence_get_id (sequence));
+ startup_id = window->startup_id;
+
+ meta_topic (META_DEBUG_STARTUP,
+ "Ending legacy sequence %s due to window %s\n",
+ sn_startup_sequence_get_id (sequence),
+ window->desc);
+
+ sn_startup_sequence_complete (sequence);
+ break;
+ }
+
+ tmp = tmp->next;
+ }
+ }
+
+ /* Still no startup ID? Bail. */
+ if (startup_id == NULL)
+ return FALSE;
+
+ /* We might get this far and not know the sequence ID (if the window
+ * already had a startup ID stored), so let's look for one if we don't
+ * already know it.
+ */
+ if (sequence == NULL)
+ {
+ tmp = screen->startup_sequences;
+ while (tmp != NULL)
+ {
+ const char *id;
+
+ id = sn_startup_sequence_get_id (tmp->data);
+
+ if (strcmp (id, startup_id) == 0)
+ {
+ sequence = tmp->data;
+ break;
+ }
+
+ tmp = tmp->next;
+ }
+ }
+
+ if (sequence != NULL)
+ {
+ gboolean changed_something = FALSE;
+
+ meta_topic (META_DEBUG_STARTUP,
+ "Found startup sequence for window %s ID \"%s\"\n",
+ window->desc, startup_id);
+
+ if (!window->initial_workspace_set)
+ {
+ int space = sn_startup_sequence_get_workspace (sequence);
+ if (space >= 0)
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "Setting initial window workspace to %d based on startup info\n",
+ space);
+
+ window->initial_workspace_set = TRUE;
+ window->initial_workspace = space;
+ changed_something = TRUE;
+ }
+ }
+
+ if (!window->initial_timestamp_set)
+ {
+ guint32 timestamp = sn_startup_sequence_get_timestamp (sequence);
+ meta_topic (META_DEBUG_STARTUP,
+ "Setting initial window timestamp to %u based on startup info\n",
+ timestamp);
+
+ window->initial_timestamp_set = TRUE;
+ window->initial_timestamp = timestamp;
+ changed_something = TRUE;
+ }
+
+ return changed_something;
+ }
+ else
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "Did not find startup sequence for window %s ID \"%s\"\n",
+ window->desc, startup_id);
+ }
+
+#endif /* HAVE_STARTUP_NOTIFICATION */
+
+ return FALSE;
+}
+
+int
+meta_screen_get_screen_number (MetaScreen *screen)
+{
+ return screen->number;
+}
+
+MetaDisplay *
+meta_screen_get_display (MetaScreen *screen)
+{
+ return screen->display;
+}
+
+Window
+meta_screen_get_xroot (MetaScreen *screen)
+{
+ return screen->xroot;
+}
+
+void
+meta_screen_get_size (MetaScreen *screen,
+ int *width,
+ int *height)
+{
+ *width = screen->rect.width;
+ *height = screen->rect.height;
+}
+
+gpointer
+meta_screen_get_compositor_data (MetaScreen *screen)
+{
+ return screen->compositor_data;
+}
+
+void
+meta_screen_set_compositor_data (MetaScreen *screen,
+ gpointer compositor)
+{
+ screen->compositor_data = compositor;
+}
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+void
+meta_screen_set_cm_selection (MetaScreen *screen)
+{
+ char selection[32];
+ Atom a;
+
+ screen->wm_cm_timestamp = meta_display_get_current_time_roundtrip (
+ screen->display);
+
+ g_snprintf (selection, sizeof(selection), "_NET_WM_CM_S%d", screen->number);
+ meta_verbose ("Setting selection: %s\n", selection);
+ a = XInternAtom (screen->display->xdisplay, selection, FALSE);
+ XSetSelectionOwner (screen->display->xdisplay, a,
+ screen->wm_cm_selection_window, screen->wm_cm_timestamp);
+}
+
+void
+meta_screen_unset_cm_selection (MetaScreen *screen)
+{
+ char selection[32];
+ Atom a;
+
+ g_snprintf (selection, sizeof(selection), "_NET_WM_CM_S%d", screen->number);
+ a = XInternAtom (screen->display->xdisplay, selection, FALSE);
+ XSetSelectionOwner (screen->display->xdisplay, a,
+ None, screen->wm_cm_timestamp);
+}
+#endif /* HAVE_COMPOSITE_EXTENSIONS */
diff --git a/src/core/session.c b/src/core/session.c
new file mode 100644
index 00000000..80d22365
--- /dev/null
+++ b/src/core/session.c
@@ -0,0 +1,1831 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco Session Management */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington (some code in here from
+ * libmateui, (C) Tom Tromey, Carsten Schaar)
+ * Copyright (C) 2004, 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+
+#include "session.h"
+#include <X11/Xatom.h>
+
+#include <time.h>
+#include <sys/wait.h>
+
+#ifndef HAVE_SM
+void
+meta_session_init (const char *client_id,
+ const char *save_file)
+{
+ meta_topic (META_DEBUG_SM, "Compiled without session management support\n");
+}
+
+void
+meta_session_shutdown (void)
+{
+ /* nothing */
+}
+
+const MetaWindowSessionInfo*
+meta_window_lookup_saved_state (MetaWindow *window)
+{
+ return NULL;
+}
+
+void
+meta_window_release_saved_state (const MetaWindowSessionInfo *info)
+{
+ ;
+}
+#else /* HAVE_SM */
+
+#include <X11/ICE/ICElib.h>
+#include <X11/SM/SMlib.h>
+#include <unistd.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <fcntl.h>
+#include <errno.h>
+#include <glib.h>
+#include <string.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include "main.h"
+#include "util.h"
+#include "display-private.h"
+#include "workspace.h"
+
+static void ice_io_error_handler (IceConn connection);
+
+static void new_ice_connection (IceConn connection, IcePointer client_data,
+ Bool opening, IcePointer *watch_data);
+
+static void save_state (void);
+static char* load_state (const char *previous_save_file);
+static void regenerate_save_file (void);
+static const char* full_save_file (void);
+static void warn_about_lame_clients_and_finish_interact (gboolean shutdown);
+static void disconnect (void);
+
+/* This is called when data is available on an ICE connection. */
+static gboolean
+process_ice_messages (GIOChannel *channel,
+ GIOCondition condition,
+ gpointer client_data)
+{
+ IceConn connection = (IceConn) client_data;
+ IceProcessMessagesStatus status;
+
+ /* This blocks infinitely sometimes. I don't know what
+ * to do about it. Checking "condition" just breaks
+ * session management.
+ */
+ status = IceProcessMessages (connection, NULL, NULL);
+
+ if (status == IceProcessMessagesIOError)
+ {
+#if 0
+ IcePointer context = IceGetConnectionContext (connection);
+#endif
+
+ /* We were disconnected; close our connection to the
+ * session manager, this will result in the ICE connection
+ * being cleaned up, since it is owned by libSM.
+ */
+ disconnect ();
+ meta_quit (META_EXIT_SUCCESS);
+
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+/* This is called when a new ICE connection is made. It arranges for
+ the ICE connection to be handled via the event loop. */
+static void
+new_ice_connection (IceConn connection, IcePointer client_data, Bool opening,
+ IcePointer *watch_data)
+{
+ guint input_id;
+
+ if (opening)
+ {
+ /* Make sure we don't pass on these file descriptors to any
+ * exec'ed children
+ */
+ GIOChannel *channel;
+
+ fcntl (IceConnectionNumber (connection), F_SETFD,
+ fcntl (IceConnectionNumber (connection), F_GETFD, 0) | FD_CLOEXEC);
+
+ channel = g_io_channel_unix_new (IceConnectionNumber (connection));
+
+ input_id = g_io_add_watch (channel,
+ G_IO_IN | G_IO_ERR,
+ process_ice_messages,
+ connection);
+
+ g_io_channel_unref (channel);
+
+ *watch_data = (IcePointer) GUINT_TO_POINTER (input_id);
+ }
+ else
+ {
+ input_id = GPOINTER_TO_UINT ((gpointer) *watch_data);
+
+ g_source_remove (input_id);
+ }
+}
+
+static IceIOErrorHandler ice_installed_handler;
+
+/* We call any handler installed before (or after) mate_ice_init but
+ avoid calling the default libICE handler which does an exit() */
+static void
+ice_io_error_handler (IceConn connection)
+{
+ if (ice_installed_handler)
+ (*ice_installed_handler) (connection);
+}
+
+static void
+ice_init (void)
+{
+ static gboolean ice_initted = FALSE;
+
+ if (! ice_initted)
+ {
+ IceIOErrorHandler default_handler;
+
+ ice_installed_handler = IceSetIOErrorHandler (NULL);
+ default_handler = IceSetIOErrorHandler (ice_io_error_handler);
+
+ if (ice_installed_handler == default_handler)
+ ice_installed_handler = NULL;
+
+ IceAddConnectionWatch (new_ice_connection, NULL);
+
+ ice_initted = TRUE;
+ }
+}
+
+typedef enum
+{
+ STATE_DISCONNECTED,
+ STATE_IDLE,
+ STATE_SAVING_PHASE_1,
+ STATE_WAITING_FOR_PHASE_2,
+ STATE_SAVING_PHASE_2,
+ STATE_WAITING_FOR_INTERACT,
+ STATE_DONE_WITH_INTERACT,
+ STATE_SKIPPING_GLOBAL_SAVE,
+ STATE_FROZEN,
+ STATE_REGISTERING
+} ClientState;
+
+static void save_phase_2_callback (SmcConn smc_conn,
+ SmPointer client_data);
+static void interact_callback (SmcConn smc_conn,
+ SmPointer client_data);
+static void shutdown_cancelled_callback (SmcConn smc_conn,
+ SmPointer client_data);
+static void save_complete_callback (SmcConn smc_conn,
+ SmPointer client_data);
+static void die_callback (SmcConn smc_conn,
+ SmPointer client_data);
+static void save_yourself_callback (SmcConn smc_conn,
+ SmPointer client_data,
+ int save_style,
+ Bool shutdown,
+ int interact_style,
+ Bool fast);
+static void set_clone_restart_commands (void);
+
+static char *client_id = NULL;
+static gpointer session_connection = NULL;
+static ClientState current_state = STATE_DISCONNECTED;
+static gboolean interaction_allowed = FALSE;
+
+void
+meta_session_init (const char *previous_client_id,
+ const char *previous_save_file)
+{
+ /* Some code here from twm */
+ char buf[256];
+ unsigned long mask;
+ SmcCallbacks callbacks;
+ char *saved_client_id;
+
+ meta_topic (META_DEBUG_SM, "Initializing session with save file '%s'\n",
+ previous_save_file ? previous_save_file : "(none)");
+
+ if (previous_save_file)
+ {
+ saved_client_id = load_state (previous_save_file);
+ previous_client_id = saved_client_id;
+ }
+ else if (previous_client_id)
+ {
+ char *save_file = g_strconcat (previous_client_id, ".ms", NULL);
+ saved_client_id = load_state (save_file);
+ g_free (save_file);
+ }
+ else
+ {
+ saved_client_id = NULL;
+ }
+
+ ice_init ();
+
+ mask = SmcSaveYourselfProcMask | SmcDieProcMask |
+ SmcSaveCompleteProcMask | SmcShutdownCancelledProcMask;
+
+ callbacks.save_yourself.callback = save_yourself_callback;
+ callbacks.save_yourself.client_data = NULL;
+
+ callbacks.die.callback = die_callback;
+ callbacks.die.client_data = NULL;
+
+ callbacks.save_complete.callback = save_complete_callback;
+ callbacks.save_complete.client_data = NULL;
+
+ callbacks.shutdown_cancelled.callback = shutdown_cancelled_callback;
+ callbacks.shutdown_cancelled.client_data = NULL;
+
+ session_connection =
+ SmcOpenConnection (NULL, /* use SESSION_MANAGER env */
+ NULL, /* means use existing ICE connection */
+ SmProtoMajor,
+ SmProtoMinor,
+ mask,
+ &callbacks,
+ (char*) previous_client_id,
+ &client_id,
+ 255, buf);
+
+ if (session_connection == NULL)
+ {
+ meta_topic (META_DEBUG_SM,
+ "Failed to a open connection to a session manager, so window positions will not be saved: %s\n",
+ buf);
+
+ goto out;
+ }
+ else
+ {
+ if (client_id == NULL)
+ meta_bug ("Session manager gave us a NULL client ID?");
+ meta_topic (META_DEBUG_SM, "Obtained session ID '%s'\n", client_id);
+ }
+
+ if (previous_client_id && strcmp (previous_client_id, client_id) == 0)
+ current_state = STATE_IDLE;
+ else
+ current_state = STATE_REGISTERING;
+
+ {
+ SmProp prop1, prop2, prop3, prop4, prop5, prop6, *props[6];
+ SmPropValue prop1val, prop2val, prop3val, prop4val, prop5val, prop6val;
+ char pid[32];
+ char hint = SmRestartImmediately;
+ char priority = 20; /* low to run before other apps */
+
+ prop1.name = SmProgram;
+ prop1.type = SmARRAY8;
+ prop1.num_vals = 1;
+ prop1.vals = &prop1val;
+ prop1val.value = "marco";
+ prop1val.length = strlen ("marco");
+
+ /* twm sets getuid() for this, but the SM spec plainly
+ * says pw_name, twm is on crack
+ */
+ prop2.name = SmUserID;
+ prop2.type = SmARRAY8;
+ prop2.num_vals = 1;
+ prop2.vals = &prop2val;
+ prop2val.value = (char*) g_get_user_name ();
+ prop2val.length = strlen (prop2val.value);
+
+ prop3.name = SmRestartStyleHint;
+ prop3.type = SmCARD8;
+ prop3.num_vals = 1;
+ prop3.vals = &prop3val;
+ prop3val.value = &hint;
+ prop3val.length = 1;
+
+ sprintf (pid, "%d", getpid ());
+ prop4.name = SmProcessID;
+ prop4.type = SmARRAY8;
+ prop4.num_vals = 1;
+ prop4.vals = &prop4val;
+ prop4val.value = pid;
+ prop4val.length = strlen (prop4val.value);
+
+ /* Always start in home directory */
+ prop5.name = SmCurrentDirectory;
+ prop5.type = SmARRAY8;
+ prop5.num_vals = 1;
+ prop5.vals = &prop5val;
+ prop5val.value = (char*) g_get_home_dir ();
+ prop5val.length = strlen (prop5val.value);
+
+ prop6.name = "_GSM_Priority";
+ prop6.type = SmCARD8;
+ prop6.num_vals = 1;
+ prop6.vals = &prop6val;
+ prop6val.value = &priority;
+ prop6val.length = 1;
+
+ props[0] = &prop1;
+ props[1] = &prop2;
+ props[2] = &prop3;
+ props[3] = &prop4;
+ props[4] = &prop5;
+ props[5] = &prop6;
+
+ SmcSetProperties (session_connection, 6, props);
+ }
+
+ out:
+ g_free (saved_client_id);
+}
+
+void
+meta_session_shutdown (void)
+{
+ /* Change our restart mode to IfRunning */
+
+ SmProp prop1;
+ SmPropValue prop1val;
+ SmProp *props[1];
+ char hint = SmRestartIfRunning;
+
+ if (!meta_get_display ())
+ {
+ meta_verbose ("Cannot close session because there is no display");
+ return;
+ }
+
+ warn_about_lame_clients_and_finish_interact (FALSE);
+
+ if (session_connection == NULL)
+ return;
+
+ prop1.name = SmRestartStyleHint;
+ prop1.type = SmCARD8;
+ prop1.num_vals = 1;
+ prop1.vals = &prop1val;
+ prop1val.value = &hint;
+ prop1val.length = 1;
+
+ props[0] = &prop1;
+
+ SmcSetProperties (session_connection, 1, props);
+}
+
+static void
+disconnect (void)
+{
+ SmcCloseConnection (session_connection, 0, NULL);
+ session_connection = NULL;
+ current_state = STATE_DISCONNECTED;
+}
+
+static void
+save_yourself_possibly_done (gboolean shutdown,
+ gboolean successful)
+{
+ meta_topic (META_DEBUG_SM,
+ "save possibly done shutdown = %d success = %d\n",
+ shutdown, successful);
+
+ if (current_state == STATE_SAVING_PHASE_1)
+ {
+ Status status;
+
+ status = SmcRequestSaveYourselfPhase2 (session_connection,
+ save_phase_2_callback,
+ GINT_TO_POINTER (shutdown));
+
+ if (status)
+ current_state = STATE_WAITING_FOR_PHASE_2;
+
+ meta_topic (META_DEBUG_SM,
+ "Requested phase 2, status = %d\n", status);
+ }
+
+ if (current_state == STATE_SAVING_PHASE_2 &&
+ interaction_allowed)
+ {
+ Status status;
+
+ status = SmcInteractRequest (session_connection,
+ /* ignore this feature of the protocol by always
+ * claiming normal
+ */
+ SmDialogNormal,
+ interact_callback,
+ GINT_TO_POINTER (shutdown));
+
+ if (status)
+ current_state = STATE_WAITING_FOR_INTERACT;
+
+ meta_topic (META_DEBUG_SM,
+ "Requested interact, status = %d\n", status);
+ }
+
+ if (current_state == STATE_SAVING_PHASE_1 ||
+ current_state == STATE_SAVING_PHASE_2 ||
+ current_state == STATE_DONE_WITH_INTERACT ||
+ current_state == STATE_SKIPPING_GLOBAL_SAVE)
+ {
+ meta_topic (META_DEBUG_SM, "Sending SaveYourselfDone\n");
+
+ SmcSaveYourselfDone (session_connection,
+ successful);
+
+ if (shutdown)
+ current_state = STATE_FROZEN;
+ else
+ current_state = STATE_IDLE;
+ }
+}
+
+static void
+save_phase_2_callback (SmcConn smc_conn, SmPointer client_data)
+{
+ gboolean shutdown;
+
+ meta_topic (META_DEBUG_SM, "Phase 2 save");
+
+ shutdown = GPOINTER_TO_INT (client_data);
+
+ current_state = STATE_SAVING_PHASE_2;
+
+ save_state ();
+
+ save_yourself_possibly_done (shutdown, TRUE);
+}
+
+static void
+save_yourself_callback (SmcConn smc_conn,
+ SmPointer client_data,
+ int save_style,
+ Bool shutdown,
+ int interact_style,
+ Bool fast)
+{
+ gboolean successful;
+
+ meta_topic (META_DEBUG_SM, "SaveYourself received");
+
+ successful = TRUE;
+
+ /* The first SaveYourself after registering for the first time
+ * is a special case (SM specs 7.2).
+ */
+
+#if 0 /* I think the MateClient rationale for this doesn't apply */
+ if (current_state == STATE_REGISTERING)
+ {
+ current_state = STATE_IDLE;
+ /* Double check that this is a section 7.2 SaveYourself: */
+
+ if (save_style == SmSaveLocal &&
+ interact_style == SmInteractStyleNone &&
+ !shutdown && !fast)
+ {
+ /* The protocol requires this even if xsm ignores it. */
+ SmcSaveYourselfDone (session_connection, successful);
+ return;
+ }
+ }
+#endif
+
+ /* ignore Global style saves
+ *
+ * This interpretaion of the Local/Global/Both styles
+ * was discussed extensively on the xdg-list. See:
+ *
+ * https://listman.redhat.com/pipermail/xdg-list/2002-July/000615.html
+ */
+ if (save_style == SmSaveGlobal)
+ {
+ current_state = STATE_SKIPPING_GLOBAL_SAVE;
+ save_yourself_possibly_done (shutdown, successful);
+ return;
+ }
+
+ interaction_allowed = interact_style != SmInteractStyleNone;
+
+ current_state = STATE_SAVING_PHASE_1;
+
+ regenerate_save_file ();
+
+ set_clone_restart_commands ();
+
+ save_yourself_possibly_done (shutdown, successful);
+}
+
+
+static void
+die_callback (SmcConn smc_conn, SmPointer client_data)
+{
+ meta_topic (META_DEBUG_SM, "Exiting at request of session manager\n");
+ disconnect ();
+ meta_quit (META_EXIT_SUCCESS);
+}
+
+static void
+save_complete_callback (SmcConn smc_conn, SmPointer client_data)
+{
+ /* nothing */
+ meta_topic (META_DEBUG_SM, "SaveComplete received\n");
+}
+
+static void
+shutdown_cancelled_callback (SmcConn smc_conn, SmPointer client_data)
+{
+ meta_topic (META_DEBUG_SM, "Shutdown cancelled received\n");
+
+ if (session_connection != NULL &&
+ (current_state != STATE_IDLE && current_state != STATE_FROZEN))
+ {
+ SmcSaveYourselfDone (session_connection, True);
+ current_state = STATE_IDLE;
+ }
+}
+
+static void
+interact_callback (SmcConn smc_conn, SmPointer client_data)
+{
+ /* nothing */
+ gboolean shutdown;
+
+ meta_topic (META_DEBUG_SM, "Interaction permission received\n");
+
+ shutdown = GPOINTER_TO_INT (client_data);
+
+ current_state = STATE_DONE_WITH_INTERACT;
+
+ warn_about_lame_clients_and_finish_interact (shutdown);
+}
+
+static void
+set_clone_restart_commands (void)
+{
+ char *restartv[10];
+ char *clonev[10];
+ char *discardv[10];
+ int i;
+ SmProp prop1, prop2, prop3, *props[3];
+
+ /* Restart (use same client ID) */
+
+ prop1.name = SmRestartCommand;
+ prop1.type = SmLISTofARRAY8;
+
+ g_return_if_fail (client_id);
+
+ i = 0;
+ restartv[i] = "marco";
+ ++i;
+ restartv[i] = "--sm-client-id";
+ ++i;
+ restartv[i] = client_id;
+ ++i;
+ restartv[i] = NULL;
+
+ prop1.vals = g_new (SmPropValue, i);
+ i = 0;
+ while (restartv[i])
+ {
+ prop1.vals[i].value = restartv[i];
+ prop1.vals[i].length = strlen (restartv[i]);
+ ++i;
+ }
+ prop1.num_vals = i;
+
+ /* Clone (no client ID) */
+
+ i = 0;
+ clonev[i] = "marco";
+ ++i;
+ clonev[i] = NULL;
+
+ prop2.name = SmCloneCommand;
+ prop2.type = SmLISTofARRAY8;
+
+ prop2.vals = g_new (SmPropValue, i);
+ i = 0;
+ while (clonev[i])
+ {
+ prop2.vals[i].value = clonev[i];
+ prop2.vals[i].length = strlen (clonev[i]);
+ ++i;
+ }
+ prop2.num_vals = i;
+
+ /* Discard */
+
+ i = 0;
+ discardv[i] = "rm";
+ ++i;
+ discardv[i] = "-f";
+ ++i;
+ discardv[i] = (char*) full_save_file ();
+ ++i;
+ discardv[i] = NULL;
+
+ prop3.name = SmDiscardCommand;
+ prop3.type = SmLISTofARRAY8;
+
+ prop3.vals = g_new (SmPropValue, i);
+ i = 0;
+ while (discardv[i])
+ {
+ prop3.vals[i].value = discardv[i];
+ prop3.vals[i].length = strlen (discardv[i]);
+ ++i;
+ }
+ prop3.num_vals = i;
+
+
+ props[0] = &prop1;
+ props[1] = &prop2;
+ props[2] = &prop3;
+
+ SmcSetProperties (session_connection, 3, props);
+
+ g_free (prop1.vals);
+ g_free (prop2.vals);
+ g_free (prop3.vals);
+}
+
+/* The remaining code in this file actually loads/saves the session,
+ * while the code above this comment handles chatting with the
+ * session manager.
+ */
+
+static const char*
+window_type_to_string (MetaWindowType type)
+{
+ switch (type)
+ {
+ case META_WINDOW_NORMAL:
+ return "normal";
+ case META_WINDOW_DESKTOP:
+ return "desktop";
+ case META_WINDOW_DOCK:
+ return "dock";
+ case META_WINDOW_DIALOG:
+ return "dialog";
+ case META_WINDOW_MODAL_DIALOG:
+ return "modal_dialog";
+ case META_WINDOW_TOOLBAR:
+ return "toolbar";
+ case META_WINDOW_MENU:
+ return "menu";
+ case META_WINDOW_SPLASHSCREEN:
+ return "splashscreen";
+ case META_WINDOW_UTILITY:
+ return "utility";
+ }
+
+ return "";
+}
+
+static MetaWindowType
+window_type_from_string (const char *str)
+{
+ if (strcmp (str, "normal") == 0)
+ return META_WINDOW_NORMAL;
+ else if (strcmp (str, "desktop") == 0)
+ return META_WINDOW_DESKTOP;
+ else if (strcmp (str, "dock") == 0)
+ return META_WINDOW_DOCK;
+ else if (strcmp (str, "dialog") == 0)
+ return META_WINDOW_DIALOG;
+ else if (strcmp (str, "modal_dialog") == 0)
+ return META_WINDOW_MODAL_DIALOG;
+ else if (strcmp (str, "toolbar") == 0)
+ return META_WINDOW_TOOLBAR;
+ else if (strcmp (str, "menu") == 0)
+ return META_WINDOW_MENU;
+ else if (strcmp (str, "utility") == 0)
+ return META_WINDOW_UTILITY;
+ else if (strcmp (str, "splashscreen") == 0)
+ return META_WINDOW_SPLASHSCREEN;
+ else
+ return META_WINDOW_NORMAL;
+}
+
+static int
+window_gravity_from_string (const char *str)
+{
+ if (strcmp (str, "NorthWestGravity") == 0)
+ return NorthWestGravity;
+ else if (strcmp (str, "NorthGravity") == 0)
+ return NorthGravity;
+ else if (strcmp (str, "NorthEastGravity") == 0)
+ return NorthEastGravity;
+ else if (strcmp (str, "WestGravity") == 0)
+ return WestGravity;
+ else if (strcmp (str, "CenterGravity") == 0)
+ return CenterGravity;
+ else if (strcmp (str, "EastGravity") == 0)
+ return EastGravity;
+ else if (strcmp (str, "SouthWestGravity") == 0)
+ return SouthWestGravity;
+ else if (strcmp (str, "SouthGravity") == 0)
+ return SouthGravity;
+ else if (strcmp (str, "SouthEastGravity") == 0)
+ return SouthEastGravity;
+ else if (strcmp (str, "StaticGravity") == 0)
+ return StaticGravity;
+ else
+ return NorthWestGravity;
+}
+
+static char*
+encode_text_as_utf8_markup (const char *text)
+{
+ /* text can be any encoding, and is nul-terminated.
+ * we pretend it's Latin-1 and encode as UTF-8
+ */
+ GString *str;
+ const char *p;
+ char *escaped;
+
+ str = g_string_new ("");
+
+ p = text;
+ while (*p)
+ {
+ g_string_append_unichar (str, *p);
+ ++p;
+ }
+
+ escaped = g_markup_escape_text (str->str, str->len);
+ g_string_free (str, TRUE);
+
+ return escaped;
+}
+
+static char*
+decode_text_from_utf8 (const char *text)
+{
+ /* Convert back from the encoded (but not escaped) UTF-8 */
+ GString *str;
+ const char *p;
+
+ str = g_string_new ("");
+
+ p = text;
+ while (*p)
+ {
+ /* obviously this barfs if the UTF-8 contains chars > 255 */
+ g_string_append_c (str, g_utf8_get_char (p));
+
+ p = g_utf8_next_char (p);
+ }
+
+ return g_string_free (str, FALSE);
+}
+
+static void
+save_state (void)
+{
+ char *marco_dir;
+ char *session_dir;
+ FILE *outfile;
+ GSList *windows;
+ GSList *tmp;
+ int stack_position;
+
+ g_assert (client_id);
+
+ outfile = NULL;
+
+ /*
+ * g_get_user_config_dir() is guaranteed to return an existing directory.
+ * Eventually, if SM stays with the WM, I'd like to make this
+ * something like <config>/window_placement in a standard format.
+ * Future optimisers should note also that by the time we get here
+ * we probably already have full_save_path figured out and therefore
+ * can just use the directory name from that.
+ */
+ marco_dir = g_strconcat (g_get_user_config_dir (),
+ G_DIR_SEPARATOR_S "marco",
+ NULL);
+
+ session_dir = g_strconcat (marco_dir,
+ G_DIR_SEPARATOR_S "sessions",
+ NULL);
+
+ if (mkdir (marco_dir, 0700) < 0 &&
+ errno != EEXIST)
+ {
+ meta_warning (_("Could not create directory '%s': %s\n"),
+ marco_dir, g_strerror (errno));
+ }
+
+ if (mkdir (session_dir, 0700) < 0 &&
+ errno != EEXIST)
+ {
+ meta_warning (_("Could not create directory '%s': %s\n"),
+ session_dir, g_strerror (errno));
+ }
+
+ meta_topic (META_DEBUG_SM, "Saving session to '%s'\n", full_save_file ());
+
+ outfile = fopen (full_save_file (), "w");
+
+ if (outfile == NULL)
+ {
+ meta_warning (_("Could not open session file '%s' for writing: %s\n"),
+ full_save_file (), g_strerror (errno));
+ goto out;
+ }
+
+ /* The file format is:
+ * <marco_session id="foo">
+ * <window id="bar" class="XTerm" name="xterm" title="/foo/bar" role="blah" type="normal" stacking="5">
+ * <workspace index="2"/>
+ * <workspace index="4"/>
+ * <sticky/> <minimized/> <maximized/>
+ * <geometry x="100" y="100" width="200" height="200" gravity="northwest"/>
+ * </window>
+ * </marco_session>
+ *
+ * Note that attributes on <window> are the match info we use to
+ * see if the saved state applies to a restored window, and
+ * child elements are the saved state to be applied.
+ *
+ */
+
+ fprintf (outfile, "<marco_session id=\"%s\">\n",
+ client_id);
+
+ windows = meta_display_list_windows (meta_get_display ());
+ stack_position = 0;
+
+ windows = g_slist_sort (windows, meta_display_stack_cmp);
+ tmp = windows;
+ stack_position = 0;
+
+ while (tmp != NULL)
+ {
+ MetaWindow *window;
+
+ window = tmp->data;
+
+ if (window->sm_client_id)
+ {
+ char *sm_client_id;
+ char *res_class;
+ char *res_name;
+ char *role;
+ char *title;
+
+ /* client id, class, name, role are not expected to be
+ * in UTF-8 (I think they are in XPCS which is Latin-1?
+ * in practice they are always ascii though.)
+ */
+
+ sm_client_id = encode_text_as_utf8_markup (window->sm_client_id);
+ res_class = window->res_class ?
+ encode_text_as_utf8_markup (window->res_class) : NULL;
+ res_name = window->res_name ?
+ encode_text_as_utf8_markup (window->res_name) : NULL;
+ role = window->role ?
+ encode_text_as_utf8_markup (window->role) : NULL;
+ if (window->title)
+ title = g_markup_escape_text (window->title, -1);
+ else
+ title = NULL;
+
+ meta_topic (META_DEBUG_SM, "Saving session managed window %s, client ID '%s'\n",
+ window->desc, window->sm_client_id);
+
+ fprintf (outfile,
+ " <window id=\"%s\" class=\"%s\" name=\"%s\" title=\"%s\" role=\"%s\" type=\"%s\" stacking=\"%d\">\n",
+ sm_client_id,
+ res_class ? res_class : "",
+ res_name ? res_name : "",
+ title ? title : "",
+ role ? role : "",
+ window_type_to_string (window->type),
+ stack_position);
+
+ g_free (sm_client_id);
+ g_free (res_class);
+ g_free (res_name);
+ g_free (role);
+ g_free (title);
+
+ /* Sticky */
+ if (window->on_all_workspaces)
+ fputs (" <sticky/>\n", outfile);
+
+ /* Minimized */
+ if (window->minimized)
+ fputs (" <minimized/>\n", outfile);
+
+ /* Maximized */
+ if (META_WINDOW_MAXIMIZED (window))
+ {
+ fprintf (outfile,
+ " <maximized saved_x=\"%d\" saved_y=\"%d\" saved_width=\"%d\" saved_height=\"%d\"/>\n",
+ window->saved_rect.x,
+ window->saved_rect.y,
+ window->saved_rect.width,
+ window->saved_rect.height);
+ }
+
+ /* Workspaces we're on */
+ {
+ int n;
+ n = meta_workspace_index (window->workspace);
+ fprintf (outfile,
+ " <workspace index=\"%d\"/>\n", n);
+ }
+
+ /* Gravity */
+ {
+ int x, y, w, h;
+ meta_window_get_geometry (window, &x, &y, &w, &h);
+
+ fprintf (outfile,
+ " <geometry x=\"%d\" y=\"%d\" width=\"%d\" height=\"%d\" gravity=\"%s\"/>\n",
+ x, y, w, h,
+ meta_gravity_to_string (window->size_hints.win_gravity));
+ }
+
+ fputs (" </window>\n", outfile);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_SM, "Not saving window '%s', not session managed\n",
+ window->desc);
+ }
+
+ tmp = tmp->next;
+ ++stack_position;
+ }
+
+ g_slist_free (windows);
+
+ fputs ("</marco_session>\n", outfile);
+
+ out:
+ if (outfile)
+ {
+ /* FIXME need a dialog for this */
+ if (ferror (outfile))
+ {
+ meta_warning (_("Error writing session file '%s': %s\n"),
+ full_save_file (), g_strerror (errno));
+ }
+ if (fclose (outfile))
+ {
+ meta_warning (_("Error closing session file '%s': %s\n"),
+ full_save_file (), g_strerror (errno));
+ }
+ }
+
+ g_free (marco_dir);
+ g_free (session_dir);
+}
+
+typedef enum
+{
+ WINDOW_TAG_NONE,
+ WINDOW_TAG_DESKTOP,
+ WINDOW_TAG_STICKY,
+ WINDOW_TAG_MINIMIZED,
+ WINDOW_TAG_MAXIMIZED,
+ WINDOW_TAG_GEOMETRY
+} WindowTag;
+
+typedef struct
+{
+ MetaWindowSessionInfo *info;
+ char *previous_id;
+} ParseData;
+
+static void session_info_free (MetaWindowSessionInfo *info);
+static MetaWindowSessionInfo* session_info_new (void);
+
+static void start_element_handler (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ gpointer user_data,
+ GError **error);
+static void end_element_handler (GMarkupParseContext *context,
+ const gchar *element_name,
+ gpointer user_data,
+ GError **error);
+static void text_handler (GMarkupParseContext *context,
+ const gchar *text,
+ gsize text_len,
+ gpointer user_data,
+ GError **error);
+
+static GMarkupParser marco_session_parser = {
+ start_element_handler,
+ end_element_handler,
+ text_handler,
+ NULL,
+ NULL
+};
+
+static GSList *window_info_list = NULL;
+
+static char*
+load_state (const char *previous_save_file)
+{
+ GMarkupParseContext *context;
+ GError *error;
+ ParseData parse_data;
+ char *text;
+ gsize length;
+ char *session_file;
+
+ session_file = g_strconcat (g_get_user_config_dir (),
+ G_DIR_SEPARATOR_S "marco"
+ G_DIR_SEPARATOR_S "sessions" G_DIR_SEPARATOR_S,
+ previous_save_file,
+ NULL);
+
+ error = NULL;
+ if (!g_file_get_contents (session_file,
+ &text,
+ &length,
+ &error))
+ {
+ char *canonical_session_file = session_file;
+
+ /* Maybe they were doing it the old way, with ~/.marco */
+ session_file = g_strconcat (g_get_home_dir (),
+ G_DIR_SEPARATOR_S ".marco"
+ G_DIR_SEPARATOR_S "sessions"
+ G_DIR_SEPARATOR_S,
+ previous_save_file,
+ NULL);
+
+ if (!g_file_get_contents (session_file,
+ &text,
+ &length,
+ NULL))
+ {
+ /* oh, just give up */
+
+ g_error_free (error);
+ g_free (session_file);
+ g_free (canonical_session_file);
+ return NULL;
+ }
+
+ g_free (canonical_session_file);
+ }
+
+ meta_topic (META_DEBUG_SM, "Parsing saved session file %s\n", session_file);
+ g_free (session_file);
+ session_file = NULL;
+
+ parse_data.info = NULL;
+ parse_data.previous_id = NULL;
+
+ context = g_markup_parse_context_new (&marco_session_parser,
+ 0, &parse_data, NULL);
+
+ error = NULL;
+ if (!g_markup_parse_context_parse (context,
+ text,
+ length,
+ &error))
+ goto error;
+
+
+ error = NULL;
+ if (!g_markup_parse_context_end_parse (context, &error))
+ goto error;
+
+ g_markup_parse_context_free (context);
+
+ goto out;
+
+ error:
+
+ meta_warning (_("Failed to parse saved session file: %s\n"),
+ error->message);
+ g_error_free (error);
+
+ if (parse_data.info)
+ session_info_free (parse_data.info);
+
+ g_free (parse_data.previous_id);
+ parse_data.previous_id = NULL;
+
+ out:
+
+ g_free (text);
+
+ return parse_data.previous_id;
+}
+
+/* FIXME this isn't very robust against bogus session files */
+static void
+start_element_handler (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ gpointer user_data,
+ GError **error)
+{
+ ParseData *pd;
+
+ pd = user_data;
+
+ if (strcmp (element_name, "marco_session") == 0)
+ {
+ /* Get previous ID */
+ int i;
+
+ i = 0;
+ while (attribute_names[i])
+ {
+ const char *name;
+ const char *val;
+
+ name = attribute_names[i];
+ val = attribute_values[i];
+
+ if (pd->previous_id)
+ {
+ g_set_error (error,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("<marco_session> attribute seen but we already have the session ID"));
+ return;
+ }
+
+ if (strcmp (name, "id") == 0)
+ {
+ pd->previous_id = decode_text_from_utf8 (val);
+ }
+ else
+ {
+ g_set_error (error,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE,
+ _("Unknown attribute %s on <%s> element"),
+ name, "marco_session");
+ return;
+ }
+
+ ++i;
+ }
+ }
+ else if (strcmp (element_name, "window") == 0)
+ {
+ int i;
+
+ if (pd->info)
+ {
+ g_set_error (error,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("nested <window> tag"));
+ return;
+ }
+
+ pd->info = session_info_new ();
+
+ i = 0;
+ while (attribute_names[i])
+ {
+ const char *name;
+ const char *val;
+
+ name = attribute_names[i];
+ val = attribute_values[i];
+
+ if (strcmp (name, "id") == 0)
+ {
+ if (*val)
+ pd->info->id = decode_text_from_utf8 (val);
+ }
+ else if (strcmp (name, "class") == 0)
+ {
+ if (*val)
+ pd->info->res_class = decode_text_from_utf8 (val);
+ }
+ else if (strcmp (name, "name") == 0)
+ {
+ if (*val)
+ pd->info->res_name = decode_text_from_utf8 (val);
+ }
+ else if (strcmp (name, "title") == 0)
+ {
+ if (*val)
+ pd->info->title = g_strdup (val);
+ }
+ else if (strcmp (name, "role") == 0)
+ {
+ if (*val)
+ pd->info->role = decode_text_from_utf8 (val);
+ }
+ else if (strcmp (name, "type") == 0)
+ {
+ if (*val)
+ pd->info->type = window_type_from_string (val);
+ }
+ else if (strcmp (name, "stacking") == 0)
+ {
+ if (*val)
+ {
+ pd->info->stack_position = atoi (val);
+ pd->info->stack_position_set = TRUE;
+ }
+ }
+ else
+ {
+ g_set_error (error,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE,
+ _("Unknown attribute %s on <%s> element"),
+ name, "window");
+ session_info_free (pd->info);
+ pd->info = NULL;
+ return;
+ }
+
+ ++i;
+ }
+ }
+ else if (strcmp (element_name, "workspace") == 0)
+ {
+ int i;
+
+ i = 0;
+ while (attribute_names[i])
+ {
+ const char *name;
+
+ name = attribute_names[i];
+
+ if (strcmp (name, "index") == 0)
+ {
+ pd->info->workspace_indices =
+ g_slist_prepend (pd->info->workspace_indices,
+ GINT_TO_POINTER (atoi (attribute_values[i])));
+ }
+ else
+ {
+ g_set_error (error,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE,
+ _("Unknown attribute %s on <%s> element"),
+ name, "window");
+ session_info_free (pd->info);
+ pd->info = NULL;
+ return;
+ }
+
+ ++i;
+ }
+ }
+ else if (strcmp (element_name, "sticky") == 0)
+ {
+ pd->info->on_all_workspaces = TRUE;
+ pd->info->on_all_workspaces_set = TRUE;
+ }
+ else if (strcmp (element_name, "minimized") == 0)
+ {
+ pd->info->minimized = TRUE;
+ pd->info->minimized_set = TRUE;
+ }
+ else if (strcmp (element_name, "maximized") == 0)
+ {
+ int i;
+
+ i = 0;
+ pd->info->maximized = TRUE;
+ pd->info->maximized_set = TRUE;
+ while (attribute_names[i])
+ {
+ const char *name;
+ const char *val;
+
+ name = attribute_names[i];
+ val = attribute_values[i];
+
+ if (strcmp (name, "saved_x") == 0)
+ {
+ if (*val)
+ {
+ pd->info->saved_rect.x = atoi (val);
+ pd->info->saved_rect_set = TRUE;
+ }
+ }
+ else if (strcmp (name, "saved_y") == 0)
+ {
+ if (*val)
+ {
+ pd->info->saved_rect.y = atoi (val);
+ pd->info->saved_rect_set = TRUE;
+ }
+ }
+ else if (strcmp (name, "saved_width") == 0)
+ {
+ if (*val)
+ {
+ pd->info->saved_rect.width = atoi (val);
+ pd->info->saved_rect_set = TRUE;
+ }
+ }
+ else if (strcmp (name, "saved_height") == 0)
+ {
+ if (*val)
+ {
+ pd->info->saved_rect.height = atoi (val);
+ pd->info->saved_rect_set = TRUE;
+ }
+ }
+ else
+ {
+ g_set_error (error,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE,
+ _("Unknown attribute %s on <%s> element"),
+ name, "maximized");
+ return;
+ }
+
+ ++i;
+ }
+
+ if (pd->info->saved_rect_set)
+ meta_topic (META_DEBUG_SM, "Saved unmaximized size %d,%d %dx%d \n",
+ pd->info->saved_rect.x,
+ pd->info->saved_rect.y,
+ pd->info->saved_rect.width,
+ pd->info->saved_rect.height);
+ }
+ else if (strcmp (element_name, "geometry") == 0)
+ {
+ int i;
+
+ pd->info->geometry_set = TRUE;
+
+ i = 0;
+ while (attribute_names[i])
+ {
+ const char *name;
+ const char *val;
+
+ name = attribute_names[i];
+ val = attribute_values[i];
+
+ if (strcmp (name, "x") == 0)
+ {
+ if (*val)
+ pd->info->rect.x = atoi (val);
+ }
+ else if (strcmp (name, "y") == 0)
+ {
+ if (*val)
+ pd->info->rect.y = atoi (val);
+ }
+ else if (strcmp (name, "width") == 0)
+ {
+ if (*val)
+ pd->info->rect.width = atoi (val);
+ }
+ else if (strcmp (name, "height") == 0)
+ {
+ if (*val)
+ pd->info->rect.height = atoi (val);
+ }
+ else if (strcmp (name, "gravity") == 0)
+ {
+ if (*val)
+ pd->info->gravity = window_gravity_from_string (val);
+ }
+ else
+ {
+ g_set_error (error,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE,
+ _("Unknown attribute %s on <%s> element"),
+ name, "geometry");
+ return;
+ }
+
+ ++i;
+ }
+
+ meta_topic (META_DEBUG_SM, "Loaded geometry %d,%d %dx%d gravity %s\n",
+ pd->info->rect.x,
+ pd->info->rect.y,
+ pd->info->rect.width,
+ pd->info->rect.height,
+ meta_gravity_to_string (pd->info->gravity));
+ }
+ else
+ {
+ g_set_error (error,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_UNKNOWN_ELEMENT,
+ _("Unknown element %s"),
+ element_name);
+ return;
+ }
+}
+
+static void
+end_element_handler (GMarkupParseContext *context,
+ const gchar *element_name,
+ gpointer user_data,
+ GError **error)
+{
+ ParseData *pd;
+
+ pd = user_data;
+
+ if (strcmp (element_name, "window") == 0)
+ {
+ g_assert (pd->info);
+
+ window_info_list = g_slist_prepend (window_info_list,
+ pd->info);
+
+ meta_topic (META_DEBUG_SM, "Loaded window info from session with class: %s name: %s role: %s\n",
+ pd->info->res_class ? pd->info->res_class : "(none)",
+ pd->info->res_name ? pd->info->res_name : "(none)",
+ pd->info->role ? pd->info->role : "(none)");
+
+ pd->info = NULL;
+ }
+}
+
+static void
+text_handler (GMarkupParseContext *context,
+ const gchar *text,
+ gsize text_len,
+ gpointer user_data,
+ GError **error)
+{
+ /* Right now we don't have any elements where we care about their
+ * content
+ */
+}
+
+static gboolean
+both_null_or_matching (const char *a,
+ const char *b)
+{
+ if (a == NULL && b == NULL)
+ return TRUE;
+ else if (a && b && strcmp (a, b) == 0)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+static GSList*
+get_possible_matches (MetaWindow *window)
+{
+ /* Get all windows with this client ID */
+ GSList *retval;
+ GSList *tmp;
+ gboolean ignore_client_id;
+
+ retval = NULL;
+
+ ignore_client_id = g_getenv ("MARCO_DEBUG_SM") != NULL;
+
+ tmp = window_info_list;
+ while (tmp != NULL)
+ {
+ MetaWindowSessionInfo *info;
+
+ info = tmp->data;
+
+ if ((ignore_client_id ||
+ both_null_or_matching (info->id, window->sm_client_id)) &&
+ both_null_or_matching (info->res_class, window->res_class) &&
+ both_null_or_matching (info->res_name, window->res_name) &&
+ both_null_or_matching (info->role, window->role))
+ {
+ meta_topic (META_DEBUG_SM, "Window %s may match saved window with class: %s name: %s role: %s\n",
+ window->desc,
+ info->res_class ? info->res_class : "(none)",
+ info->res_name ? info->res_name : "(none)",
+ info->role ? info->role : "(none)");
+
+ retval = g_slist_prepend (retval, info);
+ }
+ else
+ {
+ if (meta_is_verbose ())
+ {
+ if (!both_null_or_matching (info->id, window->sm_client_id))
+ meta_topic (META_DEBUG_SM, "Window %s has SM client ID %s, saved state has %s, no match\n",
+ window->desc,
+ window->sm_client_id ? window->sm_client_id : "(none)",
+ info->id ? info->id : "(none)");
+ else if (!both_null_or_matching (info->res_class, window->res_class))
+ meta_topic (META_DEBUG_SM, "Window %s has class %s doesn't match saved class %s, no match\n",
+ window->desc,
+ window->res_class ? window->res_class : "(none)",
+ info->res_class ? info->res_class : "(none)");
+
+ else if (!both_null_or_matching (info->res_name, window->res_name))
+ meta_topic (META_DEBUG_SM, "Window %s has name %s doesn't match saved name %s, no match\n",
+ window->desc,
+ window->res_name ? window->res_name : "(none)",
+ info->res_name ? info->res_name : "(none)");
+ else if (!both_null_or_matching (info->role, window->role))
+ meta_topic (META_DEBUG_SM, "Window %s has role %s doesn't match saved role %s, no match\n",
+ window->desc,
+ window->role ? window->role : "(none)",
+ info->role ? info->role : "(none)");
+ else
+ meta_topic (META_DEBUG_SM, "???? should not happen - window %s doesn't match saved state %s for no good reason\n",
+ window->desc, info->id);
+ }
+ }
+
+ tmp = tmp->next;
+ }
+
+ return retval;
+}
+
+static const MetaWindowSessionInfo*
+find_best_match (GSList *infos,
+ MetaWindow *window)
+{
+ GSList *tmp;
+ const MetaWindowSessionInfo *matching_title;
+ const MetaWindowSessionInfo *matching_type;
+
+ matching_title = NULL;
+ matching_type = NULL;
+
+ tmp = infos;
+ while (tmp != NULL)
+ {
+ MetaWindowSessionInfo *info;
+
+ info = tmp->data;
+
+ if (matching_title == NULL &&
+ both_null_or_matching (info->title, window->title))
+ matching_title = info;
+
+ if (matching_type == NULL &&
+ info->type == window->type)
+ matching_type = info;
+
+ tmp = tmp->next;
+ }
+
+ /* Prefer same title, then same type of window, then
+ * just pick something. Eventually we could enhance this
+ * to e.g. break ties by geometry hint similarity,
+ * or other window features.
+ */
+
+ if (matching_title)
+ return matching_title;
+ else if (matching_type)
+ return matching_type;
+ else
+ return infos->data;
+}
+
+const MetaWindowSessionInfo*
+meta_window_lookup_saved_state (MetaWindow *window)
+{
+ GSList *possibles;
+ const MetaWindowSessionInfo *info;
+
+ /* Window is not session managed.
+ * I haven't yet figured out how to deal with these
+ * in a way that doesn't cause broken side effects in
+ * situations other than on session restore.
+ */
+ if (window->sm_client_id == NULL)
+ {
+ meta_topic (META_DEBUG_SM,
+ "Window %s is not session managed, not checking for saved state\n",
+ window->desc);
+ return NULL;
+ }
+
+ possibles = get_possible_matches (window);
+
+ if (possibles == NULL)
+ {
+ meta_topic (META_DEBUG_SM, "Window %s has no possible matches in the list of saved window states\n",
+ window->desc);
+ return NULL;
+ }
+
+ info = find_best_match (possibles, window);
+
+ g_slist_free (possibles);
+
+ return info;
+}
+
+void
+meta_window_release_saved_state (const MetaWindowSessionInfo *info)
+{
+ /* We don't want to use the same saved state again for another
+ * window.
+ */
+ window_info_list = g_slist_remove (window_info_list, info);
+
+ session_info_free ((MetaWindowSessionInfo*) info);
+}
+
+static void
+session_info_free (MetaWindowSessionInfo *info)
+{
+ g_free (info->id);
+ g_free (info->res_class);
+ g_free (info->res_name);
+ g_free (info->title);
+ g_free (info->role);
+
+ g_slist_free (info->workspace_indices);
+
+ g_free (info);
+}
+
+static MetaWindowSessionInfo*
+session_info_new (void)
+{
+ MetaWindowSessionInfo *info;
+
+ info = g_new0 (MetaWindowSessionInfo, 1);
+
+ info->type = META_WINDOW_NORMAL;
+ info->gravity = NorthWestGravity;
+
+ return info;
+}
+
+static char* full_save_path = NULL;
+
+static void
+regenerate_save_file (void)
+{
+ g_free (full_save_path);
+
+ if (client_id)
+ full_save_path = g_strconcat (g_get_user_config_dir (),
+ G_DIR_SEPARATOR_S "marco"
+ G_DIR_SEPARATOR_S "sessions" G_DIR_SEPARATOR_S,
+ client_id,
+ ".ms",
+ NULL);
+ else
+ full_save_path = NULL;
+}
+
+static const char*
+full_save_file (void)
+{
+ return full_save_path;
+}
+
+static int
+windows_cmp_by_title (MetaWindow *a,
+ MetaWindow *b)
+{
+ return g_utf8_collate (a->title, b->title);
+}
+
+static void
+finish_interact (gboolean shutdown)
+{
+ if (current_state == STATE_DONE_WITH_INTERACT) /* paranoia */
+ {
+ SmcInteractDone (session_connection, False /* don't cancel logout */);
+
+ save_yourself_possibly_done (shutdown, TRUE);
+ }
+}
+
+static void
+dialog_closed (GPid pid, int status, gpointer user_data)
+{
+ gboolean shutdown = GPOINTER_TO_INT (user_data);
+
+ if (WIFEXITED (status) && WEXITSTATUS (status) == 0) /* pressed "OK" */
+ {
+ finish_interact (shutdown);
+ }
+}
+
+static void
+warn_about_lame_clients_and_finish_interact (gboolean shutdown)
+{
+ GSList *lame = NULL;
+ GSList *windows;
+ GSList *lame_details = NULL;
+ GSList *tmp;
+ GSList *columns = NULL;
+ GPid pid;
+
+ windows = meta_display_list_windows (meta_get_display ());
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *window;
+
+ window = tmp->data;
+
+ /* only complain about normal windows, the others
+ * are kind of dumb to worry about
+ */
+ if (window->sm_client_id == NULL &&
+ window->type == META_WINDOW_NORMAL)
+ lame = g_slist_prepend (lame, window);
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (windows);
+
+ if (lame == NULL)
+ {
+ /* No lame apps. */
+ finish_interact (shutdown);
+ return;
+ }
+
+ columns = g_slist_prepend (columns, "Window");
+ columns = g_slist_prepend (columns, "Class");
+
+ lame = g_slist_sort (lame, (GCompareFunc) windows_cmp_by_title);
+
+ tmp = lame;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+
+ lame_details = g_slist_prepend (lame_details,
+ w->res_class ? w->res_class : "");
+ lame_details = g_slist_prepend (lame_details,
+ w->title);
+
+ tmp = tmp->next;
+ }
+ g_slist_free (lame);
+
+ pid = meta_show_dialog("--list",
+ _("These windows do not support &quot;save current setup&quot; "
+ "and will have to be restarted manually next time "
+ "you log in."),
+ "240",
+ meta_screen_get_screen_number (meta_get_display()->active_screen),
+ NULL, NULL,
+ None,
+ columns,
+ lame_details);
+
+ g_slist_free (lame_details);
+
+ g_child_watch_add (pid, dialog_closed, GINT_TO_POINTER (shutdown));
+}
+
+#endif /* HAVE_SM */
diff --git a/src/core/session.h b/src/core/session.h
new file mode 100644
index 00000000..62a9370d
--- /dev/null
+++ b/src/core/session.h
@@ -0,0 +1,91 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file session.h Session management
+ *
+ * Maps windows to information about their placing and state on startup.
+ * This is window matching, which we have a policy of leaving in general
+ * to programs such as Devil's Pie, but the session manager specification
+ * requires us to do it here.
+ */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_SESSION_H
+#define META_SESSION_H
+
+#include "window-private.h"
+
+typedef struct _MetaWindowSessionInfo MetaWindowSessionInfo;
+
+struct _MetaWindowSessionInfo
+{
+ /* Fields we use to match against */
+
+ char *id;
+ char *res_class;
+ char *res_name;
+ char *title;
+ char *role;
+ MetaWindowType type;
+
+ /* Information we restore */
+
+ GSList *workspace_indices;
+
+ int stack_position;
+
+ /* width/height should be multiplied by resize inc and
+ * added to base size; position should be interpreted in
+ * light of gravity. This preserves semantics of the
+ * window size/pos, even if fonts/themes change, etc.
+ */
+ int gravity;
+ MetaRectangle rect;
+ MetaRectangle saved_rect;
+ guint on_all_workspaces : 1;
+ guint minimized : 1;
+ guint maximized : 1;
+
+ guint stack_position_set : 1;
+ guint geometry_set : 1;
+ guint on_all_workspaces_set : 1;
+ guint minimized_set : 1;
+ guint maximized_set : 1;
+ guint saved_rect_set : 1;
+};
+
+/* If lookup_saved_state returns something, it should be used,
+ * and then released when you're done with it.
+ */
+const MetaWindowSessionInfo* meta_window_lookup_saved_state (MetaWindow *window);
+void meta_window_release_saved_state (const MetaWindowSessionInfo *info);
+
+void meta_session_init (const char *client_id,
+ const char *save_file);
+
+
+void meta_session_shutdown (void);
+
+#endif
+
+
+
+
diff --git a/src/core/stack.c b/src/core/stack.c
new file mode 100644
index 00000000..2e108d20
--- /dev/null
+++ b/src/core/stack.c
@@ -0,0 +1,1661 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file stack.c Which windows cover which other windows
+ */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2002, 2003 Red Hat, Inc.
+ * Copyright (C) 2004 Rob Adams
+ * Copyright (C) 2004, 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "stack.h"
+#include "window-private.h"
+#include "errors.h"
+#include "frame-private.h"
+#include "group.h"
+#include "prefs.h"
+#include "workspace.h"
+
+#include <X11/Xatom.h>
+
+#define WINDOW_HAS_TRANSIENT_TYPE(w) \
+ (w->type == META_WINDOW_DIALOG || \
+ w->type == META_WINDOW_MODAL_DIALOG || \
+ w->type == META_WINDOW_TOOLBAR || \
+ w->type == META_WINDOW_MENU || \
+ w->type == META_WINDOW_UTILITY)
+
+#define WINDOW_TRANSIENT_FOR_WHOLE_GROUP(w) \
+ ((w->xtransient_for == None || \
+ w->transient_parent_is_root_window) && \
+ WINDOW_HAS_TRANSIENT_TYPE (w))
+
+#define WINDOW_IN_STACK(w) (w->stack_position >= 0)
+
+static void stack_sync_to_server (MetaStack *stack);
+static void meta_window_set_stack_position_no_sync (MetaWindow *window,
+ int position);
+static void stack_do_window_deletions (MetaStack *stack);
+static void stack_do_window_additions (MetaStack *stack);
+static void stack_do_relayer (MetaStack *stack);
+static void stack_do_constrain (MetaStack *stack);
+static void stack_do_resort (MetaStack *stack);
+
+static void stack_ensure_sorted (MetaStack *stack);
+
+MetaStack*
+meta_stack_new (MetaScreen *screen)
+{
+ MetaStack *stack;
+
+ stack = g_new (MetaStack, 1);
+
+ stack->screen = screen;
+ stack->windows = g_array_new (FALSE, FALSE, sizeof (Window));
+
+ stack->sorted = NULL;
+ stack->added = NULL;
+ stack->removed = NULL;
+
+ stack->freeze_count = 0;
+ stack->last_root_children_stacked = NULL;
+
+ stack->n_positions = 0;
+
+ stack->need_resort = FALSE;
+ stack->need_relayer = FALSE;
+ stack->need_constrain = FALSE;
+
+ return stack;
+}
+
+void
+meta_stack_free (MetaStack *stack)
+{
+ g_array_free (stack->windows, TRUE);
+
+ g_list_free (stack->sorted);
+ g_list_free (stack->added);
+ g_list_free (stack->removed);
+
+ if (stack->last_root_children_stacked)
+ g_array_free (stack->last_root_children_stacked, TRUE);
+
+ g_free (stack);
+}
+
+void
+meta_stack_add (MetaStack *stack,
+ MetaWindow *window)
+{
+ meta_topic (META_DEBUG_STACK, "Adding window %s to the stack\n", window->desc);
+
+ if (window->stack_position >= 0)
+ meta_bug ("Window %s had stack position already\n", window->desc);
+
+ stack->added = g_list_prepend (stack->added, window);
+
+ window->stack_position = stack->n_positions;
+ stack->n_positions += 1;
+ meta_topic (META_DEBUG_STACK,
+ "Window %s has stack_position initialized to %d\n",
+ window->desc, window->stack_position);
+
+ stack_sync_to_server (stack);
+}
+
+void
+meta_stack_remove (MetaStack *stack,
+ MetaWindow *window)
+{
+ meta_topic (META_DEBUG_STACK, "Removing window %s from the stack\n", window->desc);
+
+ if (window->stack_position < 0)
+ meta_bug ("Window %s removed from stack but had no stack position\n",
+ window->desc);
+
+ /* Set window to top position, so removing it will not leave gaps
+ * in the set of positions
+ */
+ meta_window_set_stack_position_no_sync (window,
+ stack->n_positions - 1);
+ window->stack_position = -1;
+ stack->n_positions -= 1;
+
+ /* We don't know if it's been moved from "added" to "stack" yet */
+ stack->added = g_list_remove (stack->added, window);
+ stack->sorted = g_list_remove (stack->sorted, window);
+
+ /* Remember the window ID to remove it from the stack array.
+ * The macro is safe to use: Window is guaranteed to be 32 bits, and
+ * GUINT_TO_POINTER says it only works on 32 bits.
+ */
+ stack->removed = g_list_prepend (stack->removed,
+ GUINT_TO_POINTER (window->xwindow));
+ if (window->frame)
+ stack->removed = g_list_prepend (stack->removed,
+ GUINT_TO_POINTER (window->frame->xwindow));
+
+ stack_sync_to_server (stack);
+}
+
+void
+meta_stack_update_layer (MetaStack *stack,
+ MetaWindow *window)
+{
+ stack->need_relayer = TRUE;
+
+ stack_sync_to_server (stack);
+}
+
+void
+meta_stack_update_transient (MetaStack *stack,
+ MetaWindow *window)
+{
+ stack->need_constrain = TRUE;
+
+ stack_sync_to_server (stack);
+}
+
+/* raise/lower within a layer */
+void
+meta_stack_raise (MetaStack *stack,
+ MetaWindow *window)
+{
+ meta_window_set_stack_position_no_sync (window,
+ stack->n_positions - 1);
+
+ stack_sync_to_server (stack);
+}
+
+void
+meta_stack_lower (MetaStack *stack,
+ MetaWindow *window)
+{
+ meta_window_set_stack_position_no_sync (window, 0);
+
+ stack_sync_to_server (stack);
+}
+
+void
+meta_stack_freeze (MetaStack *stack)
+{
+ stack->freeze_count += 1;
+}
+
+void
+meta_stack_thaw (MetaStack *stack)
+{
+ g_return_if_fail (stack->freeze_count > 0);
+
+ stack->freeze_count -= 1;
+ stack_sync_to_server (stack);
+}
+
+static gboolean
+is_focused_foreach (MetaWindow *window,
+ void *data)
+{
+ if (window == window->display->expected_focus_window)
+ {
+ *((gboolean*) data) = TRUE;
+ return FALSE;
+ }
+ return TRUE;
+}
+
+static gboolean
+windows_on_different_xinerama (MetaWindow *a,
+ MetaWindow *b)
+{
+ if (a->screen != b->screen)
+ return TRUE;
+
+ return meta_screen_get_xinerama_for_window (a->screen, a) !=
+ meta_screen_get_xinerama_for_window (b->screen, b);
+}
+
+/* Get layer ignoring any transient or group relationships */
+static MetaStackLayer
+get_standalone_layer (MetaWindow *window)
+{
+ MetaStackLayer layer;
+ gboolean focused_transient = FALSE;
+
+ switch (window->type)
+ {
+ case META_WINDOW_DESKTOP:
+ layer = META_LAYER_DESKTOP;
+ break;
+
+ case META_WINDOW_DOCK:
+ /* still experimenting here */
+ if (window->wm_state_below)
+ layer = META_LAYER_BOTTOM;
+ else
+ layer = META_LAYER_DOCK;
+ break;
+
+ default:
+ meta_window_foreach_transient (window,
+ is_focused_foreach,
+ &focused_transient);
+
+ if (window->wm_state_below)
+ layer = META_LAYER_BOTTOM;
+ else if (window->fullscreen &&
+ (focused_transient ||
+ window == window->display->expected_focus_window ||
+ window->display->expected_focus_window == NULL ||
+ (window->display->expected_focus_window != NULL &&
+ windows_on_different_xinerama (window,
+ window->display->expected_focus_window))))
+ layer = META_LAYER_FULLSCREEN;
+ else if (window->wm_state_above)
+ layer = META_LAYER_TOP;
+ else
+ layer = META_LAYER_NORMAL;
+ break;
+ }
+
+ return layer;
+}
+
+/* Note that this function can never use window->layer only
+ * get_standalone_layer, or we'd have issues.
+ */
+static MetaStackLayer
+get_maximum_layer_in_group (MetaWindow *window)
+{
+ GSList *members;
+ MetaGroup *group;
+ GSList *tmp;
+ MetaStackLayer max;
+ MetaStackLayer layer;
+
+ max = META_LAYER_DESKTOP;
+
+ group = meta_window_get_group (window);
+
+ if (group != NULL)
+ members = meta_group_list_windows (group);
+ else
+ members = NULL;
+
+ tmp = members;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+
+ layer = get_standalone_layer (w);
+ if (layer > max)
+ max = layer;
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (members);
+
+ return max;
+}
+
+static void
+compute_layer (MetaWindow *window)
+{
+ window->layer = get_standalone_layer (window);
+
+ /* We can only do promotion-due-to-group for dialogs and other
+ * transients, or weird stuff happens like the desktop window and
+ * caja windows getting in the same layer, or all mate-terminal
+ * windows getting in fullscreen layer if any terminal is
+ * fullscreen.
+ */
+ if (WINDOW_HAS_TRANSIENT_TYPE(window) &&
+ (window->xtransient_for == None ||
+ window->transient_parent_is_root_window))
+ {
+ /* We only do the group thing if the dialog is NOT transient for
+ * a particular window. Imagine a group with a normal window, a dock,
+ * and a dialog transient for the normal window; you don't want the dialog
+ * above the dock if it wouldn't normally be.
+ */
+
+ MetaStackLayer group_max;
+
+ group_max = get_maximum_layer_in_group (window);
+
+ if (group_max > window->layer)
+ {
+ meta_topic (META_DEBUG_STACK,
+ "Promoting window %s from layer %u to %u due to group membership\n",
+ window->desc, window->layer, group_max);
+ window->layer = group_max;
+ }
+ }
+
+ meta_topic (META_DEBUG_STACK, "Window %s on layer %u type = %u has_focus = %d\n",
+ window->desc, window->layer,
+ window->type, window->has_focus);
+}
+
+/* Front of the layer list is the topmost window,
+ * so the lower stack position is later in the list
+ */
+static int
+compare_window_position (void *a,
+ void *b)
+{
+ MetaWindow *window_a = a;
+ MetaWindow *window_b = b;
+
+ /* Go by layer, then stack_position */
+ if (window_a->layer < window_b->layer)
+ return 1; /* move window_a later in list */
+ else if (window_a->layer > window_b->layer)
+ return -1;
+ else if (window_a->stack_position < window_b->stack_position)
+ return 1; /* move window_a later in list */
+ else if (window_a->stack_position > window_b->stack_position)
+ return -1;
+ else
+ return 0; /* not reached */
+}
+
+/*
+ * Stacking constraints
+ *
+ * Assume constraints of the form "AB" meaning "window A must be
+ * below window B"
+ *
+ * If we have windows stacked from bottom to top
+ * "ABC" then raise A we get "BCA". Say C is
+ * transient for B is transient for A. So
+ * we have constraints AB and BC.
+ *
+ * After raising A, we need to reapply the constraints.
+ * If we do this by raising one window at a time -
+ *
+ * start: BCA
+ * apply AB: CAB
+ * apply BC: ABC
+ *
+ * but apply constraints in the wrong order and it breaks:
+ *
+ * start: BCA
+ * apply BC: BCA
+ * apply AB: CAB
+ *
+ * We make a directed graph of the constraints by linking
+ * from "above windows" to "below windows as follows:
+ *
+ * AB -> BC -> CD
+ * \
+ * CE
+ *
+ * If we then walk that graph and apply the constraints in the order
+ * that they appear, we will apply them correctly. Note that the
+ * graph MAY have cycles, so we have to guard against that.
+ *
+ */
+
+typedef struct Constraint Constraint;
+
+struct Constraint
+{
+ MetaWindow *above;
+ MetaWindow *below;
+
+ /* used to keep the constraint in the
+ * list of constraints for window "below"
+ */
+ Constraint *next;
+
+ /* used to create the graph. */
+ GSList *next_nodes;
+
+ /* constraint has been applied, used
+ * to detect cycles.
+ */
+ unsigned int applied : 1;
+
+ /* constraint has a previous node in the graph,
+ * used to find places to start in the graph.
+ * (I think this also has the side effect
+ * of preventing cycles, since cycles will
+ * have no starting point - so maybe
+ * the "applied" flag isn't needed.)
+ */
+ unsigned int has_prev : 1;
+};
+
+/* We index the array of constraints by window
+ * stack positions, just because the stack
+ * positions are a convenient index.
+ */
+static void
+add_constraint (Constraint **constraints,
+ MetaWindow *above,
+ MetaWindow *below)
+{
+ Constraint *c;
+
+ g_assert (above->screen == below->screen);
+
+ /* check if constraint is a duplicate */
+ c = constraints[below->stack_position];
+ while (c != NULL)
+ {
+ if (c->above == above)
+ return;
+ c = c->next;
+ }
+
+ /* if not, add the constraint */
+ c = g_new (Constraint, 1);
+ c->above = above;
+ c->below = below;
+ c->next = constraints[below->stack_position];
+ c->next_nodes = NULL;
+ c->applied = FALSE;
+ c->has_prev = FALSE;
+
+ constraints[below->stack_position] = c;
+}
+
+static void
+create_constraints (Constraint **constraints,
+ GList *windows)
+{
+ GList *tmp;
+
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+
+ if (!WINDOW_IN_STACK (w))
+ {
+ meta_topic (META_DEBUG_STACK, "Window %s not in the stack, not constraining it\n",
+ w->desc);
+ tmp = tmp->next;
+ continue;
+ }
+
+ if (WINDOW_TRANSIENT_FOR_WHOLE_GROUP (w))
+ {
+ GSList *group_windows;
+ GSList *tmp2;
+ MetaGroup *group;
+
+ group = meta_window_get_group (w);
+
+ if (group != NULL)
+ group_windows = meta_group_list_windows (group);
+ else
+ group_windows = NULL;
+
+ tmp2 = group_windows;
+
+ while (tmp2 != NULL)
+ {
+ MetaWindow *group_window = tmp2->data;
+
+ if (!WINDOW_IN_STACK (group_window) ||
+ w->screen != group_window->screen)
+ {
+ tmp2 = tmp2->next;
+ continue;
+ }
+
+#if 0
+ /* old way of doing it */
+ if (!(meta_window_is_ancestor_of_transient (w, group_window)) &&
+ !WINDOW_TRANSIENT_FOR_WHOLE_GROUP (group_window)) /* note */;/*note*/
+#else
+ /* better way I think, so transient-for-group are constrained
+ * only above non-transient-type windows in their group
+ */
+ if (!WINDOW_HAS_TRANSIENT_TYPE (group_window))
+#endif
+ {
+ meta_topic (META_DEBUG_STACK, "Constraining %s above %s as it's transient for its group\n",
+ w->desc, group_window->desc);
+ add_constraint (constraints, w, group_window);
+ }
+
+ tmp2 = tmp2->next;
+ }
+
+ g_slist_free (group_windows);
+ }
+ else if (w->xtransient_for != None &&
+ !w->transient_parent_is_root_window)
+ {
+ MetaWindow *parent;
+
+ parent =
+ meta_display_lookup_x_window (w->display, w->xtransient_for);
+
+ if (parent && WINDOW_IN_STACK (parent) &&
+ parent->screen == w->screen)
+ {
+ meta_topic (META_DEBUG_STACK, "Constraining %s above %s due to transiency\n",
+ w->desc, parent->desc);
+ add_constraint (constraints, w, parent);
+ }
+ }
+
+ tmp = tmp->next;
+ }
+}
+
+static void
+graph_constraints (Constraint **constraints,
+ int n_constraints)
+{
+ int i;
+
+ i = 0;
+ while (i < n_constraints)
+ {
+ Constraint *c;
+
+ /* If we have "A below B" and "B below C" then AB -> BC so we
+ * add BC to next_nodes in AB.
+ */
+
+ c = constraints[i];
+ while (c != NULL)
+ {
+ Constraint *n;
+
+ g_assert (c->below->stack_position == i);
+
+ /* Constraints where ->above is below are our
+ * next_nodes and we are their previous
+ */
+ n = constraints[c->above->stack_position];
+ while (n != NULL)
+ {
+ c->next_nodes = g_slist_prepend (c->next_nodes,
+ n);
+ /* c is a previous node of n */
+ n->has_prev = TRUE;
+
+ n = n->next;
+ }
+
+ c = c->next;
+ }
+
+ ++i;
+ }
+}
+
+static void
+free_constraints (Constraint **constraints,
+ int n_constraints)
+{
+ int i;
+
+ i = 0;
+ while (i < n_constraints)
+ {
+ Constraint *c;
+
+ c = constraints[i];
+ while (c != NULL)
+ {
+ Constraint *next = c->next;
+
+ g_slist_free (c->next_nodes);
+
+ g_free (c);
+
+ c = next;
+ }
+
+ ++i;
+ }
+}
+
+static void
+ensure_above (MetaWindow *above,
+ MetaWindow *below)
+{
+ if (WINDOW_HAS_TRANSIENT_TYPE(above) &&
+ above->layer < below->layer)
+ {
+ meta_topic (META_DEBUG_STACK,
+ "Promoting window %s from layer %u to %u due to contraint\n",
+ above->desc, above->layer, below->layer);
+ above->layer = below->layer;
+ }
+
+ if (above->stack_position < below->stack_position)
+ {
+ /* move above to below->stack_position bumping below down the stack */
+ meta_window_set_stack_position_no_sync (above, below->stack_position);
+ g_assert (below->stack_position + 1 == above->stack_position);
+ }
+ meta_topic (META_DEBUG_STACK, "%s above at %d > %s below at %d\n",
+ above->desc, above->stack_position,
+ below->desc, below->stack_position);
+}
+
+static void
+traverse_constraint (Constraint *c)
+{
+ GSList *tmp;
+
+ if (c->applied)
+ return;
+
+ ensure_above (c->above, c->below);
+ c->applied = TRUE;
+
+ tmp = c->next_nodes;
+ while (tmp != NULL)
+ {
+ traverse_constraint (tmp->data);
+
+ tmp = tmp->next;
+ }
+}
+
+static void
+apply_constraints (Constraint **constraints,
+ int n_constraints)
+{
+ GSList *heads;
+ GSList *tmp;
+ int i;
+
+ /* List all heads in an ordered constraint chain */
+ heads = NULL;
+ i = 0;
+ while (i < n_constraints)
+ {
+ Constraint *c;
+
+ c = constraints[i];
+ while (c != NULL)
+ {
+ if (!c->has_prev)
+ heads = g_slist_prepend (heads, c);
+
+ c = c->next;
+ }
+
+ ++i;
+ }
+
+ /* Now traverse the chain and apply constraints */
+ tmp = heads;
+ while (tmp != NULL)
+ {
+ Constraint *c = tmp->data;
+
+ traverse_constraint (c);
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (heads);
+}
+
+/**
+ * Go through "deleted" and take the matching windows
+ * out of "windows".
+ */
+static void
+stack_do_window_deletions (MetaStack *stack)
+{
+ /* Do removals before adds, with paranoid idea that we might re-add
+ * the same window IDs.
+ */
+ GList *tmp;
+ int i;
+
+ tmp = stack->removed;
+ while (tmp != NULL)
+ {
+ Window xwindow;
+ xwindow = GPOINTER_TO_UINT (tmp->data);
+
+ /* We go from the end figuring removals are more
+ * likely to be recent.
+ */
+ i = stack->windows->len;
+ while (i > 0)
+ {
+ --i;
+
+ /* there's no guarantee we'll actually find windows to
+ * remove, e.g. the same xwindow could have been
+ * added/removed before we ever synced, and we put
+ * both the window->xwindow and window->frame->xwindow
+ * in the removal list.
+ */
+ if (xwindow == g_array_index (stack->windows, Window, i))
+ {
+ g_array_remove_index (stack->windows, i);
+ goto next;
+ }
+ }
+
+ next:
+ tmp = tmp->next;
+ }
+
+ g_list_free (stack->removed);
+ stack->removed = NULL;
+}
+
+static void
+stack_do_window_additions (MetaStack *stack)
+{
+ GList *tmp;
+ gint i, n_added;
+
+ n_added = g_list_length (stack->added);
+ if (n_added > 0)
+ {
+ Window *end;
+ int old_size;
+
+ meta_topic (META_DEBUG_STACK,
+ "Adding %d windows to sorted list\n",
+ n_added);
+
+ old_size = stack->windows->len;
+ g_array_set_size (stack->windows, old_size + n_added);
+
+ end = &g_array_index (stack->windows, Window, old_size);
+
+ /* stack->added has the most recent additions at the
+ * front of the list, so we need to reverse it
+ */
+ stack->added = g_list_reverse (stack->added);
+
+ i = 0;
+ tmp = stack->added;
+ while (tmp != NULL)
+ {
+ MetaWindow *w;
+
+ w = tmp->data;
+
+ end[i] = w->xwindow;
+
+ /* add to the main list */
+ stack->sorted = g_list_prepend (stack->sorted, w);
+
+ ++i;
+ tmp = tmp->next;
+ }
+
+ stack->need_resort = TRUE; /* may not be needed as we add to top */
+ stack->need_constrain = TRUE;
+ stack->need_relayer = TRUE;
+ }
+
+ g_list_free (stack->added);
+ stack->added = NULL;
+}
+
+/**
+ * Update the layers that windows are in
+ */
+static void
+stack_do_relayer (MetaStack *stack)
+{
+ GList *tmp;
+
+ if (!stack->need_relayer)
+ return;
+
+ meta_topic (META_DEBUG_STACK,
+ "Recomputing layers\n");
+
+ tmp = stack->sorted;
+
+ while (tmp != NULL)
+ {
+ MetaWindow *w;
+ MetaStackLayer old_layer;
+
+ w = tmp->data;
+ old_layer = w->layer;
+
+ compute_layer (w);
+
+ if (w->layer != old_layer)
+ {
+ meta_topic (META_DEBUG_STACK,
+ "Window %s moved from layer %u to %u\n",
+ w->desc, old_layer, w->layer);
+
+ stack->need_resort = TRUE;
+ stack->need_constrain = TRUE;
+ /* don't need to constrain as constraining
+ * purely operates in terms of stack_position
+ * not layer
+ */
+ }
+
+ tmp = tmp->next;
+ }
+
+ stack->need_relayer = FALSE;
+}
+
+/**
+ * Update stack_position and layer to reflect transiency
+ * constraints
+ */
+static void
+stack_do_constrain (MetaStack *stack)
+{
+ Constraint **constraints;
+
+ /* It'd be nice if this were all faster, probably */
+
+ if (!stack->need_constrain)
+ return;
+
+ meta_topic (META_DEBUG_STACK,
+ "Reapplying constraints\n");
+
+ constraints = g_new0 (Constraint*,
+ stack->n_positions);
+
+ create_constraints (constraints, stack->sorted);
+
+ graph_constraints (constraints, stack->n_positions);
+
+ apply_constraints (constraints, stack->n_positions);
+
+ free_constraints (constraints, stack->n_positions);
+ g_free (constraints);
+
+ stack->need_constrain = FALSE;
+}
+
+/**
+ * Sort stack->sorted with layers having priority over stack_position.
+ */
+static void
+stack_do_resort (MetaStack *stack)
+{
+ if (!stack->need_resort)
+ return;
+
+ meta_topic (META_DEBUG_STACK,
+ "Sorting stack list\n");
+
+ stack->sorted = g_list_sort (stack->sorted,
+ (GCompareFunc) compare_window_position);
+
+ stack->need_resort = FALSE;
+}
+
+/**
+ * Puts the stack into canonical form.
+ *
+ * Honour the removed and added lists of the stack, and then recalculate
+ * all the layers (if the flag is set), re-run all the constraint calculations
+ * (if the flag is set), and finally re-sort the stack (if the flag is set,
+ * and if it wasn't already it might have become so during all the previous
+ * activity).
+ */
+static void
+stack_ensure_sorted (MetaStack *stack)
+{
+ stack_do_window_deletions (stack);
+ stack_do_window_additions (stack);
+ stack_do_relayer (stack);
+ stack_do_constrain (stack);
+ stack_do_resort (stack);
+}
+
+/**
+ * This function is used to avoid raising a window above popup
+ * menus and other such things.
+ *
+ * FIXME This is sort of an expensive function, should probably
+ * do something to avoid it. One approach would be to reverse
+ * the stacking algorithm to work by placing each window above
+ * the others, and start by lowering a window to the bottom
+ * (instead of the current way, which works by placing each
+ * window below another and starting with a raise)
+ */
+static void
+raise_window_relative_to_managed_windows (MetaScreen *screen,
+ Window xwindow)
+{
+
+ Window ignored1, ignored2;
+ Window *children;
+ unsigned int n_children;
+ int i;
+
+ /* Normally XQueryTree() means "must grab server" but here
+ * we don't, since we know we won't manage any new windows
+ * or restack any windows before using the XQueryTree results.
+ */
+
+ meta_error_trap_push_with_return (screen->display);
+
+ XQueryTree (screen->display->xdisplay,
+ screen->xroot,
+ &ignored1, &ignored2, &children, &n_children);
+
+ if (meta_error_trap_pop_with_return (screen->display, TRUE) != Success)
+ {
+ meta_topic (META_DEBUG_STACK,
+ "Error querying root children to raise window 0x%lx\n",
+ xwindow);
+ return;
+ }
+
+ /* Children are in order from bottom to top. We want to
+ * find the topmost managed child, then configure
+ * our window to be above it.
+ */
+ i = n_children - 1;
+ while (i >= 0)
+ {
+ if (children[i] == xwindow)
+ {
+ /* Do nothing. This means we're already the topmost managed
+ * window, but it DOES NOT mean we are already just above
+ * the topmost managed window. This is important because if
+ * an override redirect window is up, and we map a new
+ * managed window, the new window is probably above the old
+ * popup by default, and we want to push it below that
+ * popup. So keep looking for a sibling managed window
+ * to be moved below.
+ */
+ }
+ else if (meta_display_lookup_x_window (screen->display,
+ children[i]) != NULL)
+ {
+ XWindowChanges changes;
+
+ /* children[i] is the topmost managed child */
+ meta_topic (META_DEBUG_STACK,
+ "Moving 0x%lx above topmost managed child window 0x%lx\n",
+ xwindow, children[i]);
+
+ changes.sibling = children[i];
+ changes.stack_mode = Above;
+
+ meta_error_trap_push (screen->display);
+ XConfigureWindow (screen->display->xdisplay,
+ xwindow,
+ CWSibling | CWStackMode,
+ &changes);
+ meta_error_trap_pop (screen->display, FALSE);
+
+ break;
+ }
+
+ --i;
+ }
+
+ if (i < 0)
+ {
+ /* No sibling to use, just lower ourselves to the bottom
+ * to be sure we're below any override redirect windows.
+ */
+ meta_error_trap_push (screen->display);
+ XLowerWindow (screen->display->xdisplay,
+ xwindow);
+ meta_error_trap_pop (screen->display, FALSE);
+ }
+
+ if (children)
+ XFree (children);
+}
+
+/**
+ * Order the windows on the X server to be the same as in our structure.
+ * We do this using XRestackWindows if we don't know the previous order,
+ * or XConfigureWindow on a few particular windows if we do and can figure
+ * out the minimum set of changes. After that, we set __NET_CLIENT_LIST
+ * and __NET_CLIENT_LIST_STACKING.
+ */
+static void
+stack_sync_to_server (MetaStack *stack)
+{
+ GArray *stacked;
+ GArray *root_children_stacked;
+ GList *tmp;
+
+ /* Bail out if frozen */
+ if (stack->freeze_count > 0)
+ return;
+
+ meta_topic (META_DEBUG_STACK, "Syncing window stack to server\n");
+
+ stack_ensure_sorted (stack);
+
+ /* Create stacked xwindow arrays.
+ * Painfully, "stacked" is in bottom-to-top order for the
+ * _NET hints, and "root_children_stacked" is in top-to-bottom
+ * order for XRestackWindows()
+ */
+ stacked = g_array_new (FALSE, FALSE, sizeof (Window));
+ root_children_stacked = g_array_new (FALSE, FALSE, sizeof (Window));
+
+ meta_topic (META_DEBUG_STACK, "Top to bottom: ");
+ meta_push_no_msg_prefix ();
+
+ tmp = stack->sorted;
+ while (tmp != NULL)
+ {
+ MetaWindow *w;
+
+ w = tmp->data;
+
+ /* remember, stacked is in reverse order (bottom to top) */
+ g_array_prepend_val (stacked, w->xwindow);
+
+ /* build XRestackWindows() array from top to bottom */
+ if (w->frame)
+ g_array_append_val (root_children_stacked, w->frame->xwindow);
+ else
+ g_array_append_val (root_children_stacked, w->xwindow);
+
+ meta_topic (META_DEBUG_STACK, "%u:%d - %s ", w->layer, w->stack_position, w->desc);
+
+ tmp = tmp->next;
+ }
+
+ meta_topic (META_DEBUG_STACK, "\n");
+ meta_pop_no_msg_prefix ();
+
+ /* All windows should be in some stacking order */
+ if (stacked->len != stack->windows->len)
+ meta_bug ("%u windows stacked, %u windows exist in stack\n",
+ stacked->len, stack->windows->len);
+
+ /* Sync to server */
+
+ meta_topic (META_DEBUG_STACK, "Restacking %u windows\n",
+ root_children_stacked->len);
+
+ meta_error_trap_push (stack->screen->display);
+
+ if (stack->last_root_children_stacked == NULL)
+ {
+ /* Just impose our stack, we don't know the previous state.
+ * This involves a ton of circulate requests and may flicker.
+ */
+ meta_topic (META_DEBUG_STACK, "Don't know last stack state, restacking everything\n");
+
+ if (root_children_stacked->len > 0)
+ XRestackWindows (stack->screen->display->xdisplay,
+ (Window *) root_children_stacked->data,
+ root_children_stacked->len);
+ }
+ else if (root_children_stacked->len > 0)
+ {
+ /* Try to do minimal window moves to get the stack in order */
+ /* A point of note: these arrays include frames not client windows,
+ * so if a client window has changed frame since last_root_children_stacked
+ * was saved, then we may have inefficiency, but I don't think things
+ * break...
+ */
+ const Window *old_stack = (Window *) stack->last_root_children_stacked->data;
+ const Window *new_stack = (Window *) root_children_stacked->data;
+ const int old_len = stack->last_root_children_stacked->len;
+ const int new_len = root_children_stacked->len;
+ const Window *oldp = old_stack;
+ const Window *newp = new_stack;
+ const Window *old_end = old_stack + old_len;
+ const Window *new_end = new_stack + new_len;
+ Window last_window = None;
+
+ while (oldp != old_end &&
+ newp != new_end)
+ {
+ if (*oldp == *newp)
+ {
+ /* Stacks are the same here, move on */
+ ++oldp;
+ last_window = *newp;
+ ++newp;
+ }
+ else if (meta_display_lookup_x_window (stack->screen->display,
+ *oldp) == NULL)
+ {
+ /* *oldp is no longer known to us (probably destroyed),
+ * so we can just skip it
+ */
+ ++oldp;
+ }
+ else
+ {
+ /* Move *newp below last_window */
+ if (last_window == None)
+ {
+ meta_topic (META_DEBUG_STACK, "Using window 0x%lx as topmost (but leaving it in-place)\n", *newp);
+
+ raise_window_relative_to_managed_windows (stack->screen,
+ *newp);
+ }
+ else
+ {
+ /* This means that if last_window is dead, but not
+ * *newp, then we fail to restack *newp; but on
+ * unmanaging last_window, we'll fix it up.
+ */
+
+ XWindowChanges changes;
+
+ changes.sibling = last_window;
+ changes.stack_mode = Below;
+
+ meta_topic (META_DEBUG_STACK, "Placing window 0x%lx below 0x%lx\n",
+ *newp, last_window);
+
+ XConfigureWindow (stack->screen->display->xdisplay,
+ *newp,
+ CWSibling | CWStackMode,
+ &changes);
+ }
+
+ last_window = *newp;
+ ++newp;
+ }
+ }
+
+ if (newp != new_end)
+ {
+ /* Restack remaining windows */
+ meta_topic (META_DEBUG_STACK, "Restacking remaining %d windows\n",
+ (int) (new_end - newp));
+ /* We need to include an already-stacked window
+ * in the restack call, so we get in the proper position
+ * with respect to it.
+ */
+ if (newp != new_stack)
+ --newp;
+ XRestackWindows (stack->screen->display->xdisplay,
+ (Window *) newp, new_end - newp);
+ }
+ }
+
+ meta_error_trap_pop (stack->screen->display, FALSE);
+ /* on error, a window was destroyed; it should eventually
+ * get removed from the stacking list when we unmanage it
+ * and we'll fix stacking at that time.
+ */
+
+ /* Sync _NET_CLIENT_LIST and _NET_CLIENT_LIST_STACKING */
+
+ XChangeProperty (stack->screen->display->xdisplay,
+ stack->screen->xroot,
+ stack->screen->display->atom__NET_CLIENT_LIST,
+ XA_WINDOW,
+ 32, PropModeReplace,
+ (unsigned char *)stack->windows->data,
+ stack->windows->len);
+ XChangeProperty (stack->screen->display->xdisplay,
+ stack->screen->xroot,
+ stack->screen->display->atom__NET_CLIENT_LIST_STACKING,
+ XA_WINDOW,
+ 32, PropModeReplace,
+ (unsigned char *)stacked->data,
+ stacked->len);
+
+ g_array_free (stacked, TRUE);
+
+ if (stack->last_root_children_stacked)
+ g_array_free (stack->last_root_children_stacked, TRUE);
+ stack->last_root_children_stacked = root_children_stacked;
+
+ /* That was scary... */
+}
+
+MetaWindow*
+meta_stack_get_top (MetaStack *stack)
+{
+ stack_ensure_sorted (stack);
+
+ if (stack->sorted)
+ return stack->sorted->data;
+ else
+ return NULL;
+}
+
+MetaWindow*
+meta_stack_get_bottom (MetaStack *stack)
+{
+ GList *link;
+
+ stack_ensure_sorted (stack);
+
+ link = g_list_last (stack->sorted);
+ if (link != NULL)
+ return link->data;
+ else
+ return NULL;
+}
+
+MetaWindow*
+meta_stack_get_above (MetaStack *stack,
+ MetaWindow *window,
+ gboolean only_within_layer)
+{
+ GList *link;
+ MetaWindow *above;
+
+ stack_ensure_sorted (stack);
+
+ link = g_list_find (stack->sorted, window);
+ if (link == NULL)
+ return NULL;
+ if (link->prev == NULL)
+ return NULL;
+
+ above = link->prev->data;
+
+ if (only_within_layer &&
+ above->layer != window->layer)
+ return NULL;
+ else
+ return above;
+}
+
+MetaWindow*
+meta_stack_get_below (MetaStack *stack,
+ MetaWindow *window,
+ gboolean only_within_layer)
+{
+ GList *link;
+ MetaWindow *below;
+
+ stack_ensure_sorted (stack);
+
+ link = g_list_find (stack->sorted, window);
+
+ if (link == NULL)
+ return NULL;
+ if (link->next == NULL)
+ return NULL;
+
+ below = link->next->data;
+
+ if (only_within_layer &&
+ below->layer != window->layer)
+ return NULL;
+ else
+ return below;
+}
+
+static gboolean
+window_contains_point (MetaWindow *window,
+ int root_x,
+ int root_y)
+{
+ MetaRectangle rect;
+
+ meta_window_get_outer_rect (window, &rect);
+
+ return POINT_IN_RECT (root_x, root_y, rect);
+}
+
+static MetaWindow*
+get_default_focus_window (MetaStack *stack,
+ MetaWorkspace *workspace,
+ MetaWindow *not_this_one,
+ gboolean must_be_at_point,
+ int root_x,
+ int root_y)
+{
+ /* Find the topmost, focusable, mapped, window.
+ * not_this_one is being unfocused or going away, so exclude it.
+ * Also, prefer to focus transient parent of not_this_one,
+ * or top window in same group as not_this_one.
+ */
+
+ MetaWindow *topmost_dock;
+ MetaWindow *transient_parent;
+ MetaWindow *topmost_in_group;
+ MetaWindow *topmost_overall;
+ MetaGroup *not_this_one_group;
+ GList *link;
+
+ topmost_dock = NULL;
+ transient_parent = NULL;
+ topmost_in_group = NULL;
+ topmost_overall = NULL;
+ if (not_this_one)
+ not_this_one_group = meta_window_get_group (not_this_one);
+ else
+ not_this_one_group = NULL;
+
+ stack_ensure_sorted (stack);
+
+ /* top of this layer is at the front of the list */
+ link = stack->sorted;
+
+ while (link)
+ {
+ MetaWindow *window = link->data;
+
+ if (window &&
+ window != not_this_one &&
+ (window->unmaps_pending == 0) &&
+ !window->minimized &&
+ (window->input || window->take_focus) &&
+ (workspace == NULL ||
+ meta_window_located_on_workspace (window, workspace)))
+ {
+ if (topmost_dock == NULL &&
+ window->type == META_WINDOW_DOCK)
+ topmost_dock = window;
+
+ if (not_this_one != NULL)
+ {
+ if (transient_parent == NULL &&
+ not_this_one->xtransient_for != None &&
+ not_this_one->xtransient_for == window->xwindow &&
+ (!must_be_at_point ||
+ window_contains_point (window, root_x, root_y)))
+ transient_parent = window;
+
+ if (topmost_in_group == NULL &&
+ not_this_one_group != NULL &&
+ not_this_one_group == meta_window_get_group (window) &&
+ (!must_be_at_point ||
+ window_contains_point (window, root_x, root_y)))
+ topmost_in_group = window;
+ }
+
+ /* Note that DESKTOP windows can be topmost_overall so
+ * we prefer focusing desktop or other windows over
+ * focusing dock, even though docks are stacked higher.
+ */
+ if (topmost_overall == NULL &&
+ window->type != META_WINDOW_DOCK &&
+ (!must_be_at_point ||
+ window_contains_point (window, root_x, root_y)))
+ topmost_overall = window;
+
+ /* We could try to bail out early here for efficiency in
+ * some cases, but it's just not worth the code.
+ */
+ }
+
+ link = link->next;
+ }
+
+ if (transient_parent)
+ return transient_parent;
+ else if (topmost_in_group)
+ return topmost_in_group;
+ else if (topmost_overall)
+ return topmost_overall;
+ else
+ return topmost_dock;
+}
+
+MetaWindow*
+meta_stack_get_default_focus_window_at_point (MetaStack *stack,
+ MetaWorkspace *workspace,
+ MetaWindow *not_this_one,
+ int root_x,
+ int root_y)
+{
+ return get_default_focus_window (stack, workspace, not_this_one,
+ TRUE, root_x, root_y);
+}
+
+MetaWindow*
+meta_stack_get_default_focus_window (MetaStack *stack,
+ MetaWorkspace *workspace,
+ MetaWindow *not_this_one)
+{
+ return get_default_focus_window (stack, workspace, not_this_one,
+ FALSE, 0, 0);
+}
+
+GList*
+meta_stack_list_windows (MetaStack *stack,
+ MetaWorkspace *workspace)
+{
+ GList *workspace_windows = NULL;
+ GList *link;
+
+ stack_ensure_sorted (stack); /* do adds/removes */
+
+ link = stack->sorted;
+
+ while (link)
+ {
+ MetaWindow *window = link->data;
+
+ if (window &&
+ (workspace == NULL || meta_window_located_on_workspace (window, workspace)))
+ {
+ workspace_windows = g_list_prepend (workspace_windows,
+ window);
+ }
+
+ link = link->next;
+ }
+
+ return workspace_windows;
+}
+
+int
+meta_stack_windows_cmp (MetaStack *stack,
+ MetaWindow *window_a,
+ MetaWindow *window_b)
+{
+ g_return_val_if_fail (window_a->screen == window_b->screen, 0);
+
+ /* -1 means a below b */
+
+ stack_ensure_sorted (stack); /* update constraints, layers */
+
+ if (window_a->layer < window_b->layer)
+ return -1;
+ else if (window_a->layer > window_b->layer)
+ return 1;
+ else if (window_a->stack_position < window_b->stack_position)
+ return -1;
+ else if (window_a->stack_position > window_b->stack_position)
+ return 1;
+ else
+ return 0; /* not reached */
+}
+
+static int
+compare_just_window_stack_position (void *a,
+ void *b)
+{
+ MetaWindow *window_a = a;
+ MetaWindow *window_b = b;
+
+ if (window_a->stack_position < window_b->stack_position)
+ return -1; /* move window_a earlier in list */
+ else if (window_a->stack_position > window_b->stack_position)
+ return 1;
+ else
+ return 0; /* not reached */
+}
+
+GList*
+meta_stack_get_positions (MetaStack *stack)
+{
+ GList *tmp;
+
+ /* Make sure to handle any adds or removes */
+ stack_ensure_sorted (stack);
+
+ tmp = g_list_copy (stack->sorted);
+ tmp = g_list_sort (tmp, (GCompareFunc) compare_just_window_stack_position);
+
+ return tmp;
+}
+
+static gint
+compare_pointers (gconstpointer a,
+ gconstpointer b)
+{
+ if (a > b)
+ return 1;
+ else if (a < b)
+ return -1;
+ else
+ return 0;
+}
+
+static gboolean
+lists_contain_same_windows (GList *a,
+ GList *b)
+{
+ GList *copy1, *copy2;
+ GList *tmp1, *tmp2;
+
+ if (g_list_length (a) != g_list_length (b))
+ return FALSE;
+
+ tmp1 = copy1 = g_list_sort (g_list_copy (a), compare_pointers);
+ tmp2 = copy2 = g_list_sort (g_list_copy (b), compare_pointers);
+
+ while (tmp1 && tmp1->data == tmp2->data) /* tmp2 is non-NULL if tmp1 is */
+ {
+ tmp1 = tmp1->next;
+ tmp2 = tmp2->next;
+ }
+
+ g_list_free (copy1);
+ g_list_free (copy2);
+
+ return (tmp1 == NULL); /* tmp2 is non-NULL if tmp1 is */
+}
+
+void
+meta_stack_set_positions (MetaStack *stack,
+ GList *windows)
+{
+ int i;
+ GList *tmp;
+
+ /* Make sure any adds or removes aren't in limbo -- is this needed? */
+ stack_ensure_sorted (stack);
+
+ if (!lists_contain_same_windows (windows, stack->sorted))
+ {
+ meta_warning ("This list of windows has somehow changed; not resetting "
+ "positions of the windows.\n");
+ return;
+ }
+
+ g_list_free (stack->sorted);
+ stack->sorted = g_list_copy (windows);
+
+ stack->need_resort = TRUE;
+ stack->need_constrain = TRUE;
+
+ i = 0;
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+ w->stack_position = i++;
+ tmp = tmp->next;
+ }
+
+ meta_topic (META_DEBUG_STACK,
+ "Reset the stack positions of (nearly) all windows\n");
+
+ stack_sync_to_server (stack);
+}
+
+void
+meta_window_set_stack_position_no_sync (MetaWindow *window,
+ int position)
+{
+ int low, high, delta;
+ GList *tmp;
+
+ g_return_if_fail (window->screen->stack != NULL);
+ g_return_if_fail (window->stack_position >= 0);
+ g_return_if_fail (position >= 0);
+ g_return_if_fail (position < window->screen->stack->n_positions);
+
+ if (position == window->stack_position)
+ {
+ meta_topic (META_DEBUG_STACK, "Window %s already has position %d\n",
+ window->desc, position);
+ return;
+ }
+
+ window->screen->stack->need_resort = TRUE;
+ window->screen->stack->need_constrain = TRUE;
+
+ if (position < window->stack_position)
+ {
+ low = position;
+ high = window->stack_position - 1;
+ delta = 1;
+ }
+ else
+ {
+ low = window->stack_position + 1;
+ high = position;
+ delta = -1;
+ }
+
+ tmp = window->screen->stack->sorted;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+
+ if (w->stack_position >= low &&
+ w->stack_position <= high)
+ w->stack_position += delta;
+
+ tmp = tmp->next;
+ }
+
+ window->stack_position = position;
+
+ meta_topic (META_DEBUG_STACK,
+ "Window %s had stack_position set to %d\n",
+ window->desc, window->stack_position);
+}
+
+void
+meta_window_set_stack_position (MetaWindow *window,
+ int position)
+{
+ meta_window_set_stack_position_no_sync (window, position);
+ stack_sync_to_server (window->screen->stack);
+}
diff --git a/src/core/stack.h b/src/core/stack.h
new file mode 100644
index 00000000..f9693897
--- /dev/null
+++ b/src/core/stack.h
@@ -0,0 +1,402 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file stack.h Which windows cover which other windows
+ *
+ * There are two factors that determine window position.
+ *
+ * One is window->stack_position, which is a unique integer
+ * indicating how windows are ordered with respect to one
+ * another. The ordering here transcends layers; it isn't changed
+ * as the window is moved among layers. This allows us to move several
+ * windows from one layer to another, while preserving the relative
+ * order of the moved windows. Also, it allows us to restore
+ * the stacking order from a saved session.
+ *
+ * However when actually stacking windows on the screen, the
+ * layer overrides the stack_position; windows are first sorted
+ * by layer, then by stack_position within each layer.
+ */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_STACK_H
+#define META_STACK_H
+
+#include "screen-private.h"
+
+/**
+ * Layers a window can be in.
+ * These MUST be in the order of stacking.
+ */
+typedef enum
+{
+ META_LAYER_DESKTOP = 0,
+ META_LAYER_BOTTOM = 1,
+ META_LAYER_NORMAL = 2,
+ META_LAYER_TOP = 4, /* Same as DOCK; see EWMH and bug 330717 */
+ META_LAYER_DOCK = 4,
+ META_LAYER_FULLSCREEN = 5,
+ META_LAYER_FOCUSED_WINDOW = 6,
+ META_LAYER_LAST = 7
+} MetaStackLayer;
+
+/**
+ * A sorted list of windows bearing some level of resemblance to the stack of
+ * windows on the X server.
+ *
+ * (This is only used as a field within a MetaScreen; we treat it as a separate
+ * class for simplicity.)
+ */
+struct _MetaStack
+{
+ /** The MetaScreen containing this stack. */
+ MetaScreen *screen;
+
+ /**
+ * A sequence of all the Windows (X handles, not MetaWindows) of the windows
+ * we manage, sorted in order. Suitable to be passed into _NET_CLIENT_LIST.
+ */
+ GArray *windows;
+
+ /** The MetaWindows of the windows we manage, sorted in order. */
+ GList *sorted;
+
+ /**
+ * MetaWindows waiting to be added to the "sorted" and "windows" list, after
+ * being added by meta_stack_add() and before being assimilated by
+ * stack_ensure_sorted().
+ *
+ * The order of the elements in this list is not important; what is important
+ * is the stack_position element of each window.
+ */
+ GList *added;
+
+ /**
+ * Windows (X handles, not MetaWindows) waiting to be removed from the
+ * "windows" list, after being removed by meta_stack_remove() and before
+ * being assimilated by stack_ensure_sorted(). (We already removed them
+ * from the "sorted" list.)
+ *
+ * The order of the elements in this list is not important.
+ */
+ GList *removed;
+
+ /**
+ * If this is zero, the local stack oughtn't to be brought up to date with
+ * the X server's stack, because it is in the middle of being updated.
+ * If it is positive, the local stack is said to be "frozen", and will need
+ * to be thawed that many times before the stack can be brought up to date
+ * again. You may freeze the stack with meta_stack_freeze() and thaw it
+ * with meta_stack_thaw().
+ */
+ int freeze_count;
+
+ /**
+ * The last-known stack of all windows, bottom to top. We cache it here
+ * so that subsequent times we'll be able to do incremental moves.
+ */
+ GArray *last_root_children_stacked;
+
+ /**
+ * Number of stack positions; same as the length of added, but
+ * kept for quick reference.
+ */
+ gint n_positions;
+
+ /** Is the stack in need of re-sorting? */
+ unsigned int need_resort : 1;
+
+ /**
+ * Are the windows in the stack in need of having their
+ * layers recalculated?
+ */
+ unsigned int need_relayer : 1;
+
+ /**
+ * Are the windows in the stack in need of having their positions
+ * recalculated with respect to transiency (parent and child windows)?
+ */
+ unsigned int need_constrain : 1;
+};
+
+/**
+ * Creates and initialises a MetaStack.
+ *
+ * \param screen The MetaScreen which will be the parent of this stack.
+ * \return The new screen.
+ */
+MetaStack *meta_stack_new (MetaScreen *screen);
+
+/**
+ * Destroys and frees a MetaStack.
+ *
+ * \param stack The stack to destroy.
+ */
+void meta_stack_free (MetaStack *stack);
+
+/**
+ * Adds a window to the local stack. It is a fatal error to call this
+ * function on a window which already exists on the stack of any screen.
+ *
+ * \param window The window to add
+ * \param stack The stack to add it to
+ */
+void meta_stack_add (MetaStack *stack,
+ MetaWindow *window);
+
+/**
+ * Removes a window from the local stack. It is a fatal error to call this
+ * function on a window which exists on the stack of any screen.
+ *
+ * \param window The window to remove
+ * \param stack The stack to remove it from
+ */
+void meta_stack_remove (MetaStack *stack,
+ MetaWindow *window);
+/**
+ * Recalculates the correct layer for all windows in the stack,
+ * and moves them about accordingly.
+ *
+ * \param window Dummy parameter
+ * \param stack The stack to recalculate
+ * \bug What's with the dummy parameter?
+ */
+void meta_stack_update_layer (MetaStack *stack,
+ MetaWindow *window);
+
+/**
+ * Recalculates the correct stacking order for all windows in the stack
+ * according to their transience, and moves them about accordingly.
+ *
+ * \param window Dummy parameter
+ * \param stack The stack to recalculate
+ * \bug What's with the dummy parameter?
+ */
+void meta_stack_update_transient (MetaStack *stack,
+ MetaWindow *window);
+
+/**
+ * Move a window to the top of its layer.
+ *
+ * \param stack The stack to modify.
+ * \param window The window that's making an ascension.
+ * (Amulet of Yendor not required.)
+ */
+void meta_stack_raise (MetaStack *stack,
+ MetaWindow *window);
+/**
+ * Move a window to the bottom of its layer.
+ *
+ * \param stack The stack to modify.
+ * \param window The window that's on the way downwards.
+ */
+void meta_stack_lower (MetaStack *stack,
+ MetaWindow *window);
+
+/**
+ * Prevent syncing to server until the next call of meta_stack_thaw(),
+ * so that we can carry out multiple operations in one go without having
+ * everything halfway reflected on the X server.
+ *
+ * (Calls to meta_stack_freeze() nest, so that multiple calls to
+ * meta_stack_freeze will require multiple calls to meta_stack_thaw().)
+ *
+ * \param stack The stack to freeze.
+ */
+void meta_stack_freeze (MetaStack *stack);
+
+/**
+ * Undoes a meta_stack_freeze(), and processes anything which has become
+ * necessary during the freeze. It is an error to call this function if
+ * the stack has not been frozen.
+ *
+ * \param stack The stack to thaw.
+ */
+void meta_stack_thaw (MetaStack *stack);
+
+/**
+ * Finds the top window on the stack.
+ *
+ * \param stack The stack to examine.
+ * \return The top window on the stack, or NULL in the vanishingly unlikely
+ * event that you have no windows on your screen whatsoever.
+ */
+MetaWindow* meta_stack_get_top (MetaStack *stack);
+
+/**
+ * Finds the window at the bottom of the stack. Since that's pretty much
+ * always the desktop, this isn't the most useful of functions, and nobody
+ * actually calls it. We should probably get rid of it.
+ *
+ * \param stack The stack to search
+ */
+MetaWindow* meta_stack_get_bottom (MetaStack *stack);
+
+/**
+ * Finds the window above a given window in the stack.
+ * It is not an error to pass in a window which does not exist in
+ * the stack; the function will merely return NULL.
+ *
+ * \param stack The stack to search.
+ * \param window The window to look above.
+ * \param only_within_layer If true, will return NULL if "window" is the
+ * top window in its layer.
+ * \return NULL if there is no such window;
+ * the window above "window" otherwise.
+ */
+MetaWindow* meta_stack_get_above (MetaStack *stack,
+ MetaWindow *window,
+ gboolean only_within_layer);
+
+/**
+ * Finds the window below a given window in the stack.
+ * It is not an error to pass in a window which does not exist in
+ * the stack; the function will merely return NULL.
+ *
+ * \param stack The stack to search.
+ * \param window The window to look below.
+ * \param only_within_layer If true, will return NULL if "window" is the
+ * bottom window in its layer.
+ * \return NULL if there is no such window;
+ * the window below "window" otherwise.
+ */
+MetaWindow* meta_stack_get_below (MetaStack *stack,
+ MetaWindow *window,
+ gboolean only_within_layer);
+
+/**
+ * Find the topmost, focusable, mapped, window in a stack. If you supply
+ * a window as "not_this_one", we won't return that one (presumably
+ * because it's going to be going away). But if you do supply "not_this_one"
+ * and we find its parent, we'll return that; and if "not_this_one" is in
+ * a group, we'll return the top window of that group.
+ *
+ * Also, we are prejudiced against dock windows. Every kind of window, even
+ * the desktop, will be returned in preference to a dock window.
+ *
+ * \param stack The stack to search.
+ * \param workspace NULL to search all workspaces; otherwise only windows
+ * from that workspace will be returned.
+ * \param not_this_one Window to ignore because it's being unfocussed or
+ * going away.
+ * \return The window matching all these constraints or NULL if none does.
+ *
+ * \bug Never called!
+ */
+MetaWindow* meta_stack_get_default_focus_window (MetaStack *stack,
+ MetaWorkspace *workspace,
+ MetaWindow *not_this_one);
+
+/**
+ * Find the topmost, focusable, mapped, window in a stack. If you supply
+ * a window as "not_this_one", we won't return that one (presumably
+ * because it's going to be going away). But if you do supply "not_this_one"
+ * and we find its parent, we'll return that; and if "not_this_one" is in
+ * a group, we'll return the top window of that group.
+ *
+ * Also, we are prejudiced against dock windows. Every kind of window, even
+ * the desktop, will be returned in preference to a dock window.
+ *
+ * \param stack The stack to search.
+ * \param workspace NULL to search all workspaces; otherwise only windows
+ * from that workspace will be returned.
+ * \param not_this_one Window to ignore because it's being unfocussed or
+ * going away.
+ * \param root_x The returned window must contain this point,
+ * unless it's a dock.
+ * \param root_y See root_x.
+ * \return The window matching all these constraints or NULL if none does.
+ */
+MetaWindow* meta_stack_get_default_focus_window_at_point (MetaStack *stack,
+ MetaWorkspace *workspace,
+ MetaWindow *not_this_one,
+ int root_x,
+ int root_y);
+
+/**
+ * Finds all the windows in the stack, in order.
+ *
+ * \param stack The stack to examine.
+ * \param workspace If non-NULL, only windows on this workspace will be
+ * returned; otherwise all windows in the stack will be
+ * returned.
+ * \return A list of windows, in stacking order, honouring layers.
+ */
+GList* meta_stack_list_windows (MetaStack *stack,
+ MetaWorkspace *workspace);
+
+/**
+ * Comparison function for windows within a stack. This is not directly
+ * suitable for use within a standard comparison routine, because it takes
+ * an extra parameter; you will need to wrap it.
+ *
+ * (FIXME: We could remove the stack parameter and use the stack of
+ * the screen of window A, and complain if the stack of the screen of
+ * window B differed; then this would be a usable general comparison function.)
+ *
+ * (FIXME: Apparently identical to compare_window_position(). Merge them.)
+ *
+ * \param stack A stack containing both window_a and window_b
+ * \param window_a A window
+ * \param window_b Another window
+ * \return -1 if window_a is below window_b, honouring layers; 1 if it's
+ * above it; 0 if you passed in the same window twice!
+ */
+int meta_stack_windows_cmp (MetaStack *stack,
+ MetaWindow *window_a,
+ MetaWindow *window_b);
+
+/**
+ * Sets the position of a window within the stack. This will only move it
+ * up or down within its layer. It is an error to attempt to move this
+ * below position zero or above the last position in the stack (however, since
+ * we don't provide a simple way to tell the number of windows in the stack,
+ * this requirement may not be easy to fulfil).
+ *
+ * \param window The window which is moving.
+ * \param position Where it should move to (0 is the bottom).
+ */
+void meta_window_set_stack_position (MetaWindow *window,
+ int position);
+
+/**
+ * Returns the current stack state, allowing rudimentary transactions.
+ *
+ * \param stack The stack to examine.
+ * \return An opaque GList representing the current stack sort order;
+ * it is the caller's responsibility to free it.
+ * Pass this to meta_stack_set_positions() later if you want to restore
+ * the state to where it was when you called this function.
+ */
+GList* meta_stack_get_positions (MetaStack *stack);
+
+/**
+ * Rolls back a transaction, given the list returned from
+ * meta_stack_get_positions().
+ *
+ * \param stack The stack to roll back.
+ * \param windows The list returned from meta_stack_get_positions().
+ */
+void meta_stack_set_positions (MetaStack *stack,
+ GList *windows);
+
+#endif
diff --git a/src/core/testasyncgetprop.c b/src/core/testasyncgetprop.c
new file mode 100644
index 00000000..ed044009
--- /dev/null
+++ b/src/core/testasyncgetprop.c
@@ -0,0 +1,497 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * Permission to use, copy, modify, distribute, and sell this software
+ * and its documentation for any purpose is hereby granted without
+ * fee, provided that the above copyright notice appear in all copies
+ * and that both that copyright notice and this permission notice
+ * appear in supporting documentation.
+ *
+ * The above copyright notice and this permission notice shall be
+ * included in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR
+ * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
+ * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+ * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ *
+ * Except as contained in this notice, the name of The Open Group shall not be
+ * used in advertising or otherwise to promote the sale, use or other dealings
+ * in this Software without prior written authorization from The Open Group.
+ */
+
+#include "async-getprop.h"
+
+#include <time.h>
+#include <sys/time.h>
+#include <sys/types.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <unistd.h>
+#include <string.h>
+#include <errno.h>
+#include <signal.h>
+#include <assert.h>
+
+#ifndef TRUE
+#define TRUE 1
+#endif
+
+#ifndef FALSE
+#define FALSE 0
+#endif
+
+#ifndef NULL
+#define NULL ((void*) 0)
+#endif
+
+#ifdef HAVE_BACKTRACE
+#include <execinfo.h>
+static void
+print_backtrace (void)
+{
+ void *bt[500];
+ int bt_size;
+ int i;
+ char **syms;
+
+ bt_size = backtrace (bt, 500);
+
+ syms = backtrace_symbols (bt, bt_size);
+
+ i = 0;
+ while (i < bt_size)
+ {
+ fprintf (stderr, " %s\n", syms[i]);
+ ++i;
+ }
+
+ free (syms);
+}
+#else
+static void
+print_backtrace (void)
+{
+ fprintf (stderr, "Not compiled with backtrace support\n");
+}
+#endif
+
+static int error_trap_depth = 0;
+
+static int
+x_error_handler (Display *xdisplay,
+ XErrorEvent *error)
+{
+ char buf[64];
+
+ XGetErrorText (xdisplay, error->error_code, buf, 63);
+
+ if (error_trap_depth == 0)
+ {
+ print_backtrace ();
+
+ fprintf (stderr, "Unexpected X error: %s serial %ld error_code %d request_code %d minor_code %d)\n",
+ buf,
+ error->serial,
+ error->error_code,
+ error->request_code,
+ error->minor_code);
+
+ exit (1);
+ }
+
+ return 1; /* return value is meaningless */
+}
+
+static void
+error_trap_push (Display *xdisplay)
+{
+ ++error_trap_depth;
+}
+
+static void
+error_trap_pop (Display *xdisplay)
+{
+ if (error_trap_depth == 0)
+ {
+ fprintf (stderr, "Error trap underflow!\n");
+ exit (1);
+ }
+
+ XSync (xdisplay, False); /* get all errors out of the queue */
+ --error_trap_depth;
+}
+
+static char*
+my_strdup (const char *str)
+{
+ char *s;
+
+ s = malloc (strlen (str) + 1);
+ if (s == NULL)
+ {
+ fprintf (stderr, "malloc failed\n");
+ exit (1);
+ }
+ strcpy (s, str);
+
+ return s;
+}
+
+static char*
+atom_name (Display *display,
+ Atom atom)
+{
+ if (atom == None)
+ {
+ return my_strdup ("None");
+ }
+ else
+ {
+ char *xname;
+ char *ret;
+
+ error_trap_push (display);
+ xname = XGetAtomName (display, atom);
+ error_trap_pop (display);
+ if (xname == NULL)
+ return my_strdup ("[unknown atom]");
+
+ ret = my_strdup (xname);
+ XFree (xname);
+
+ return ret;
+ }
+}
+
+
+#define ELAPSED(start_time, current_time) \
+ (((((double)current_time.tv_sec - start_time.tv_sec) * 1000000 + \
+ (current_time.tv_usec - start_time.tv_usec))) / 1000.0)
+
+static struct timeval program_start_time;
+
+static Bool
+try_get_reply (Display *xdisplay,
+ AgGetPropertyTask *task)
+{
+ if (ag_task_have_reply (task))
+ {
+ int result;
+ Atom actual_type;
+ int actual_format;
+ unsigned long n_items;
+ unsigned long bytes_after;
+ unsigned char *data;
+ char *name;
+ struct timeval current_time;
+
+ gettimeofday (&current_time, NULL);
+
+ printf (" %gms (we have a reply for property %ld)\n",
+ ELAPSED (program_start_time, current_time),
+ ag_task_get_property (task));
+
+ data = NULL;
+
+ name = atom_name (xdisplay,
+ ag_task_get_property (task));
+ printf (" %s on 0x%lx:\n", name,
+ ag_task_get_window (task));
+ free (name);
+
+ result = ag_task_get_reply_and_free (task,
+ &actual_type,
+ &actual_format,
+ &n_items,
+ &bytes_after,
+ &data);
+ task = NULL;
+
+ if (result != Success)
+ {
+ fprintf (stderr, " error code %d getting reply\n", result);
+ }
+ else
+ {
+ name = atom_name (xdisplay, actual_type);
+ printf (" actual_type = %s\n", name);
+ free (name);
+
+ printf (" actual_format = %d\n", actual_format);
+
+ printf (" n_items = %lu\n", n_items);
+ printf (" bytes_after = %lu\n", bytes_after);
+
+ printf (" data = \"%s\"\n", data ? (char*) data : "NULL");
+ }
+
+ return True;
+ }
+
+ return False;
+}
+
+static void run_speed_comparison (Display *xdisplay,
+ Window window);
+
+int
+main (int argc, char **argv)
+{
+ Display *xdisplay;
+ int i;
+ int n_left;
+ int n_props;
+ Window window;
+ const char *window_str;
+ char *end;
+ Atom *props;
+ struct timeval current_time;
+
+ if (argc < 2)
+ {
+ fprintf (stderr, "specify window ID\n");
+ return 1;
+ }
+
+ window_str = argv[1];
+
+ end = NULL;
+ window = strtoul (window_str, &end, 0);
+ if (end == NULL || *end != '\0')
+ {
+ fprintf (stderr, "\"%s\" does not parse as a window ID\n", window_str);
+ return 1;
+ }
+
+ xdisplay = XOpenDisplay (NULL);
+ if (xdisplay == NULL)
+ {
+ fprintf (stderr, "Could not open display\n");
+ return 1;
+ }
+
+ if (getenv ("MARCO_SYNC") != NULL)
+ XSynchronize (xdisplay, True);
+
+ XSetErrorHandler (x_error_handler);
+
+ n_props = 0;
+ props = XListProperties (xdisplay, window, &n_props);
+ if (n_props == 0 || props == NULL)
+ {
+ fprintf (stderr, "Window has no properties\n");
+ return 1;
+ }
+
+ gettimeofday (&program_start_time, NULL);
+
+ i = 0;
+ while (i < n_props)
+ {
+ gettimeofday (&current_time, NULL);
+ printf (" %gms (sending request for property %ld)\n",
+ ELAPSED (program_start_time, current_time),
+ props[i]);
+ if (ag_task_create (xdisplay,
+ window, props[i],
+ 0, 0xffffffff,
+ False,
+ AnyPropertyType) == NULL)
+ {
+ fprintf (stderr, "Failed to send request\n");
+ return 1;
+ }
+
+ ++i;
+ }
+
+ XFree (props);
+ props = NULL;
+
+ n_left = n_props;
+
+ while (TRUE)
+ {
+ XEvent xevent;
+ int connection;
+ fd_set set;
+ AgGetPropertyTask *task;
+
+ /* Mop up event queue */
+ while (XPending (xdisplay) > 0)
+ {
+ XNextEvent (xdisplay, &xevent);
+ gettimeofday (&current_time, NULL);
+ printf (" %gms (processing event type %d)\n",
+ ELAPSED (program_start_time, current_time),
+ xevent.xany.type);
+ }
+
+ while ((task = ag_get_next_completed_task (xdisplay)))
+ {
+ try_get_reply (xdisplay, task);
+ n_left -= 1;
+ }
+
+ if (n_left == 0)
+ {
+ printf ("All %d replies received.\n", n_props);
+ break;
+ }
+
+ /* Wake up if we may have a reply */
+ connection = ConnectionNumber (xdisplay);
+
+ FD_ZERO (&set);
+ FD_SET (connection, &set);
+
+ gettimeofday (&current_time, NULL);
+ printf (" %gms (blocking for data %d left)\n",
+ ELAPSED (program_start_time, current_time), n_left);
+ select (connection + 1, &set, NULL, NULL, NULL);
+ }
+
+ run_speed_comparison (xdisplay, window);
+
+ return 0;
+}
+
+/* This function doesn't have all the printf's
+ * and other noise, it just compares async to sync
+ */
+static void
+run_speed_comparison (Display *xdisplay,
+ Window window)
+{
+ int i;
+ int n_props;
+ struct timeval start, end;
+ int n_left;
+
+ /* We just use atom values (0 to n_props) % 200, many are probably
+ * BadAtom, that's fine, but the %200 keeps most of them valid. The
+ * async case is about twice as advantageous when using valid atoms
+ * (or the issue may be that it's more advantageous when the
+ * properties are present and data is transmitted).
+ */
+ n_props = 4000;
+ printf ("Timing with %d property requests\n", n_props);
+
+ gettimeofday (&start, NULL);
+
+ i = 0;
+ while (i < n_props)
+ {
+ if (ag_task_create (xdisplay,
+ window, (Atom) i % 200,
+ 0, 0xffffffff,
+ False,
+ AnyPropertyType) == NULL)
+ {
+ fprintf (stderr, "Failed to send request\n");
+ exit (1);
+ }
+
+ ++i;
+ }
+
+ n_left = n_props;
+
+ while (TRUE)
+ {
+ int connection;
+ fd_set set;
+ XEvent xevent;
+ AgGetPropertyTask *task;
+
+ /* Mop up event queue */
+ while (XPending (xdisplay) > 0)
+ XNextEvent (xdisplay, &xevent);
+
+ while ((task = ag_get_next_completed_task (xdisplay)))
+ {
+ int result;
+ Atom actual_type;
+ int actual_format;
+ unsigned long n_items;
+ unsigned long bytes_after;
+ unsigned char *data;
+
+ assert (ag_task_have_reply (task));
+
+ data = NULL;
+ result = ag_task_get_reply_and_free (task,
+ &actual_type,
+ &actual_format,
+ &n_items,
+ &bytes_after,
+ &data);
+
+ if (data)
+ XFree (data);
+
+ n_left -= 1;
+ }
+
+ if (n_left == 0)
+ break;
+
+ /* Wake up if we may have a reply */
+ connection = ConnectionNumber (xdisplay);
+
+ FD_ZERO (&set);
+ FD_SET (connection, &set);
+
+ select (connection + 1, &set, NULL, NULL, NULL);
+ }
+
+ gettimeofday (&end, NULL);
+
+ printf ("Async time: %gms\n",
+ ELAPSED (start, end));
+
+ gettimeofday (&start, NULL);
+
+ error_trap_push (xdisplay);
+
+ i = 0;
+ while (i < n_props)
+ {
+ Atom actual_type;
+ int actual_format;
+ unsigned long n_items;
+ unsigned long bytes_after;
+ unsigned char *data;
+
+ data = NULL;
+ if (XGetWindowProperty (xdisplay, window,
+ (Atom) i % 200,
+ 0, 0xffffffff,
+ False,
+ AnyPropertyType,
+ &actual_type,
+ &actual_format,
+ &n_items,
+ &bytes_after,
+ &data) == Success)
+ {
+ if (data)
+ XFree (data);
+ }
+
+ ++i;
+ }
+
+ error_trap_pop (xdisplay);
+
+ gettimeofday (&end, NULL);
+
+ printf ("Sync time: %gms\n",
+ ELAPSED (start, end));
+}
diff --git a/src/core/testboxes.c b/src/core/testboxes.c
new file mode 100644
index 00000000..fc81f064
--- /dev/null
+++ b/src/core/testboxes.c
@@ -0,0 +1,1416 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco box operation testing program */
+
+/*
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include "boxes.h"
+#include <glib.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <X11/Xutil.h> /* Just for the definition of the various gravities */
+#include <time.h> /* To initialize random seed */
+
+#define NUM_RANDOM_RUNS 10000
+
+static void
+init_random_ness ()
+{
+ srand(time(NULL));
+}
+
+static void
+get_random_rect (MetaRectangle *rect)
+{
+ rect->x = rand () % 1600;
+ rect->y = rand () % 1200;
+ rect->width = rand () % 1600 + 1;
+ rect->height = rand () % 1200 + 1;
+}
+
+static MetaRectangle*
+new_meta_rect (int x, int y, int width, int height)
+{
+ MetaRectangle* temporary;
+ temporary = g_new (MetaRectangle, 1);
+ temporary->x = x;
+ temporary->y = y;
+ temporary->width = width;
+ temporary->height = height;
+
+ return temporary;
+}
+
+static MetaStrut*
+new_meta_strut (int x, int y, int width, int height, int side)
+{
+ MetaStrut* temporary;
+ temporary = g_new (MetaStrut, 1);
+ temporary->rect = meta_rect(x, y, width, height);
+ temporary->side = side;
+
+ return temporary;
+}
+
+static MetaEdge*
+new_screen_edge (int x, int y, int width, int height, int side_type)
+{
+ MetaEdge* temporary;
+ temporary = g_new (MetaEdge, 1);
+ temporary->rect.x = x;
+ temporary->rect.y = y;
+ temporary->rect.width = width;
+ temporary->rect.height = height;
+ temporary->side_type = side_type;
+ temporary->edge_type = META_EDGE_SCREEN;
+
+ return temporary;
+}
+
+static MetaEdge*
+new_xinerama_edge (int x, int y, int width, int height, int side_type)
+{
+ MetaEdge* temporary;
+ temporary = g_new (MetaEdge, 1);
+ temporary->rect.x = x;
+ temporary->rect.y = y;
+ temporary->rect.width = width;
+ temporary->rect.height = height;
+ temporary->side_type = side_type;
+ temporary->edge_type = META_EDGE_XINERAMA;
+
+ return temporary;
+}
+
+static void
+test_area ()
+{
+ MetaRectangle temp;
+ int i;
+ for (i = 0; i < NUM_RANDOM_RUNS; i++)
+ {
+ get_random_rect (&temp);
+ g_assert (meta_rectangle_area (&temp) == temp.width * temp.height);
+ }
+
+ temp = meta_rect (0, 0, 5, 7);
+ g_assert (meta_rectangle_area (&temp) == 35);
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+test_intersect ()
+{
+ MetaRectangle a = {100, 200, 50, 40};
+ MetaRectangle b = { 0, 50, 110, 152};
+ MetaRectangle c = { 0, 0, 10, 10};
+ MetaRectangle d = {100, 100, 50, 50};
+ MetaRectangle b_intersect_d = {100, 100, 10, 50};
+ MetaRectangle temp;
+ MetaRectangle temp2;
+
+ meta_rectangle_intersect (&a, &b, &temp);
+ temp2 = meta_rect (100, 200, 10, 2);
+ g_assert (meta_rectangle_equal (&temp, &temp2));
+ g_assert (meta_rectangle_area (&temp) == 20);
+
+ meta_rectangle_intersect (&a, &c, &temp);
+ g_assert (meta_rectangle_area (&temp) == 0);
+
+ meta_rectangle_intersect (&a, &d, &temp);
+ g_assert (meta_rectangle_area (&temp) == 0);
+
+ meta_rectangle_intersect (&b, &d, &b);
+ g_assert (meta_rectangle_equal (&b, &b_intersect_d));
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+test_equal ()
+{
+ MetaRectangle a = {10, 12, 4, 18};
+ MetaRectangle b = a;
+ MetaRectangle c = {10, 12, 4, 19};
+ MetaRectangle d = {10, 12, 7, 18};
+ MetaRectangle e = {10, 62, 4, 18};
+ MetaRectangle f = {27, 12, 4, 18};
+
+ g_assert ( meta_rectangle_equal (&a, &b));
+ g_assert (!meta_rectangle_equal (&a, &c));
+ g_assert (!meta_rectangle_equal (&a, &d));
+ g_assert (!meta_rectangle_equal (&a, &e));
+ g_assert (!meta_rectangle_equal (&a, &f));
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+test_overlap_funcs ()
+{
+ MetaRectangle temp1, temp2;
+ int i;
+ for (i = 0; i < NUM_RANDOM_RUNS; i++)
+ {
+ get_random_rect (&temp1);
+ get_random_rect (&temp2);
+ g_assert (meta_rectangle_overlap (&temp1, &temp2) ==
+ (meta_rectangle_horiz_overlap (&temp1, &temp2) &&
+ meta_rectangle_vert_overlap (&temp1, &temp2)));
+ }
+
+ temp1 = meta_rect ( 0, 0, 10, 10);
+ temp2 = meta_rect (20, 0, 10, 5);
+ g_assert (!meta_rectangle_overlap (&temp1, &temp2));
+ g_assert (!meta_rectangle_horiz_overlap (&temp1, &temp2));
+ g_assert ( meta_rectangle_vert_overlap (&temp1, &temp2));
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+test_basic_fitting ()
+{
+ MetaRectangle temp1, temp2, temp3;
+ int i;
+ /* Four cases:
+ * case temp1 fits temp2 temp1 could fit temp2
+ * 1 Y Y
+ * 2 N Y
+ * 3 Y N
+ * 4 N N
+ * Of the four cases, case 3 is impossible. An alternate way of looking
+ * at this table is that either the middle column must be no, or the last
+ * column must be yes. So we test that. Also, we can repeat the test
+ * reversing temp1 and temp2.
+ */
+ for (i = 0; i < NUM_RANDOM_RUNS; i++)
+ {
+ get_random_rect (&temp1);
+ get_random_rect (&temp2);
+ g_assert (meta_rectangle_contains_rect (&temp1, &temp2) == FALSE ||
+ meta_rectangle_could_fit_rect (&temp1, &temp2) == TRUE);
+ g_assert (meta_rectangle_contains_rect (&temp2, &temp1) == FALSE ||
+ meta_rectangle_could_fit_rect (&temp2, &temp1) == TRUE);
+ }
+
+ temp1 = meta_rect ( 0, 0, 10, 10);
+ temp2 = meta_rect ( 5, 5, 5, 5);
+ temp3 = meta_rect ( 8, 2, 3, 7);
+ g_assert ( meta_rectangle_contains_rect (&temp1, &temp2));
+ g_assert (!meta_rectangle_contains_rect (&temp2, &temp1));
+ g_assert (!meta_rectangle_contains_rect (&temp1, &temp3));
+ g_assert ( meta_rectangle_could_fit_rect (&temp1, &temp3));
+ g_assert (!meta_rectangle_could_fit_rect (&temp3, &temp2));
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+free_strut_list (GSList *struts)
+{
+ GSList *tmp = struts;
+ while (tmp)
+ {
+ g_free (tmp->data);
+ tmp = tmp->next;
+ }
+ g_slist_free (struts);
+}
+
+static GSList*
+get_strut_list (int which)
+{
+ GSList *ans;
+ MetaDirection wc = 0; /* wc == who cares? ;-) */
+
+ ans = NULL;
+
+ g_assert (which >=0 && which <= 6);
+ switch (which)
+ {
+ case 0:
+ break;
+ case 1:
+ ans = g_slist_prepend (ans, new_meta_strut ( 0, 0, 1600, 20, wc));
+ ans = g_slist_prepend (ans, new_meta_strut ( 400, 1160, 1600, 40, wc));
+ break;
+ case 2:
+ ans = g_slist_prepend (ans, new_meta_strut ( 0, 0, 1600, 20, wc));
+ ans = g_slist_prepend (ans, new_meta_strut ( 800, 1100, 400, 100, wc));
+ ans = g_slist_prepend (ans, new_meta_strut ( 300, 1150, 150, 50, wc));
+ break;
+ case 3:
+ ans = g_slist_prepend (ans, new_meta_strut ( 0, 0, 1600, 20, wc));
+ ans = g_slist_prepend (ans, new_meta_strut ( 800, 1100, 400, 100, wc));
+ ans = g_slist_prepend (ans, new_meta_strut ( 300, 1150, 80, 50, wc));
+ ans = g_slist_prepend (ans, new_meta_strut ( 700, 525, 200, 150, wc));
+ break;
+ case 4:
+ ans = g_slist_prepend (ans, new_meta_strut ( 0, 0, 800, 1200, wc));
+ ans = g_slist_prepend (ans, new_meta_strut ( 800, 0, 1600, 20, wc));
+ break;
+ case 5:
+ ans = g_slist_prepend (ans, new_meta_strut ( 800, 0, 1600, 20, wc));
+ ans = g_slist_prepend (ans, new_meta_strut ( 0, 0, 800, 1200, wc));
+ ans = g_slist_prepend (ans, new_meta_strut ( 800, 10, 800, 1200, wc));
+ break;
+ case 6:
+ ans = g_slist_prepend (ans, new_meta_strut ( 0, 0, 1600, 40, wc));
+ ans = g_slist_prepend (ans, new_meta_strut ( 0, 0, 1600, 20, wc));
+ break;
+ }
+
+ return ans;
+}
+
+static GList*
+get_screen_region (int which)
+{
+ GList *ret;
+ GSList *struts;
+ MetaRectangle basic_rect;
+
+ basic_rect = meta_rect (0, 0, 1600, 1200);
+ ret = NULL;
+
+ struts = get_strut_list (which);
+ ret = meta_rectangle_get_minimal_spanning_set_for_region (&basic_rect, struts);
+ free_strut_list (struts);
+
+ return ret;
+}
+
+static GList*
+get_screen_edges (int which)
+{
+ GList *ret;
+ GSList *struts;
+ MetaRectangle basic_rect;
+
+ basic_rect = meta_rect (0, 0, 1600, 1200);
+ ret = NULL;
+
+ struts = get_strut_list (which);
+ ret = meta_rectangle_find_onscreen_edges (&basic_rect, struts);
+ free_strut_list (struts);
+
+ return ret;
+}
+
+static GList*
+get_xinerama_edges (int which_xinerama_set, int which_strut_set)
+{
+ GList *ret;
+ GSList *struts;
+ GList *xins;
+
+ xins = NULL;
+ g_assert (which_xinerama_set >=0 && which_xinerama_set <= 3);
+ switch (which_xinerama_set)
+ {
+ case 0:
+ xins = g_list_prepend (xins, new_meta_rect ( 0, 0, 1600, 1200));
+ break;
+ case 1:
+ xins = g_list_prepend (xins, new_meta_rect ( 0, 0, 800, 1200));
+ xins = g_list_prepend (xins, new_meta_rect (800, 0, 800, 1200));
+ break;
+ case 2:
+ xins = g_list_prepend (xins, new_meta_rect ( 0, 0, 1600, 600));
+ xins = g_list_prepend (xins, new_meta_rect ( 0, 600, 1600, 600));
+ break;
+ case 3:
+ xins = g_list_prepend (xins, new_meta_rect ( 0, 0, 1600, 600));
+ xins = g_list_prepend (xins, new_meta_rect ( 0, 600, 800, 600));
+ xins = g_list_prepend (xins, new_meta_rect (800, 600, 800, 600));
+ break;
+ }
+
+ ret = NULL;
+
+ struts = get_strut_list (which_strut_set);
+ ret = meta_rectangle_find_nonintersected_xinerama_edges (xins, struts);
+
+ free_strut_list (struts);
+ meta_rectangle_free_list_and_elements (xins);
+
+ return ret;
+}
+
+#if 0
+static void
+test_merge_regions ()
+{
+ /* logarithmically distributed random number of struts (range?)
+ * logarithmically distributed random size of struts (up to screen size???)
+ * uniformly distributed location of center of struts (within screen)
+ * merge all regions that are possible
+ * print stats on problem setup
+ * number of (non-completely-occluded?) struts
+ * percentage of screen covered
+ * length of resulting non-minimal spanning set
+ * length of resulting minimal spanning set
+ * print stats on merged regions:
+ * number boxes merged
+ * number of those merges that were of the form A contains B
+ * number of those merges that were of the form A partially contains B
+ * number of those merges that were of the form A is adjacent to B
+ */
+
+ GList* region;
+ GList* compare;
+ int num_contains, num_merged, num_part_contains, num_adjacent;
+
+ num_contains = num_merged = num_part_contains = num_adjacent = 0;
+ compare = region = get_screen_region (2);
+ g_assert (region);
+
+ printf ("Merging stats:\n");
+ printf (" Length of initial list: %d\n", g_list_length (region));
+#ifdef PRINT_DEBUG
+ char rect1[RECT_LENGTH], rect2[RECT_LENGTH];
+ char region_list[(RECT_LENGTH + 2) * g_list_length (region)];
+ meta_rectangle_region_to_string (region, ", ", region_list);
+ printf (" Initial rectangles: %s\n", region_list);
+#endif
+
+ while (compare && compare->next)
+ {
+ MetaRectangle *a = compare->data;
+ GList *other = compare->next;
+
+ g_assert (a->width > 0 && a->height > 0);
+
+ while (other)
+ {
+ MetaRectangle *b = other->data;
+ GList *delete_me = NULL;
+
+ g_assert (b->width > 0 && b->height > 0);
+
+#ifdef PRINT_DEBUG
+ printf (" -- Comparing %s to %s --\n",
+ meta_rectangle_to_string (a, rect1),
+ meta_rectangle_to_string (b, rect2));
+#endif
+
+ /* If a contains b, just remove b */
+ if (meta_rectangle_contains_rect (a, b))
+ {
+ delete_me = other;
+ num_contains++;
+ num_merged++;
+ }
+ /* If b contains a, just remove a */
+ else if (meta_rectangle_contains_rect (a, b))
+ {
+ delete_me = compare;
+ num_contains++;
+ num_merged++;
+ }
+ /* If a and b might be mergeable horizontally */
+ else if (a->y == b->y && a->height == b->height)
+ {
+ /* If a and b overlap */
+ if (meta_rectangle_overlap (a, b))
+ {
+ int new_x = MIN (a->x, b->x);
+ a->width = MAX (a->x + a->width, b->x + b->width) - new_x;
+ a->x = new_x;
+ delete_me = other;
+ num_part_contains++;
+ num_merged++;
+ }
+ /* If a and b are adjacent */
+ else if (a->x + a->width == b->x || a->x == b->x + b->width)
+ {
+ int new_x = MIN (a->x, b->x);
+ a->width = MAX (a->x + a->width, b->x + b->width) - new_x;
+ a->x = new_x;
+ delete_me = other;
+ num_adjacent++;
+ num_merged++;
+ }
+ }
+ /* If a and b might be mergeable vertically */
+ else if (a->x == b->x && a->width == b->width)
+ {
+ /* If a and b overlap */
+ if (meta_rectangle_overlap (a, b))
+ {
+ int new_y = MIN (a->y, b->y);
+ a->height = MAX (a->y + a->height, b->y + b->height) - new_y;
+ a->y = new_y;
+ delete_me = other;
+ num_part_contains++;
+ num_merged++;
+ }
+ /* If a and b are adjacent */
+ else if (a->y + a->height == b->y || a->y == b->y + b->height)
+ {
+ int new_y = MIN (a->y, b->y);
+ a->height = MAX (a->y + a->height, b->y + b->height) - new_y;
+ a->y = new_y;
+ delete_me = other;
+ num_adjacent++;
+ num_merged++;
+ }
+ }
+
+ other = other->next;
+
+ /* Delete any rectangle in the list that is no longer wanted */
+ if (delete_me != NULL)
+ {
+#ifdef PRINT_DEBUG
+ MetaRectangle *bla = delete_me->data;
+ printf (" Deleting rect %s\n",
+ meta_rectangle_to_string (bla, rect1));
+#endif
+
+ /* Deleting the rect we're compare others to is a little tricker */
+ if (compare == delete_me)
+ {
+ compare = compare->next;
+ other = compare->next;
+ a = compare->data;
+ }
+
+ /* Okay, we can free it now */
+ g_free (delete_me->data);
+ region = g_list_delete_link (region, delete_me);
+ }
+
+#ifdef PRINT_DEBUG
+ char region_list[(RECT_LENGTH + 2) * g_list_length (region)];
+ meta_rectangle_region_to_string (region, ", ", region_list);
+ printf (" After comparison, new list is: %s\n", region_list);
+#endif
+ }
+
+ compare = compare->next;
+ }
+
+ printf (" Num rectangles contained in others : %d\n",
+ num_contains);
+ printf (" Num rectangles partially contained in others: %d\n",
+ num_part_contains);
+ printf (" Num rectangles adjacent to others : %d\n",
+ num_adjacent);
+ printf (" Num rectangles merged with others : %d\n",
+ num_merged);
+#ifdef PRINT_DEBUG
+ char region_list2[(RECT_LENGTH + 2) * g_list_length (region)];
+ meta_rectangle_region_to_string (region, ", ", region_list2);
+ printf (" Final rectangles: %s\n", region_list2);
+#endif
+
+ meta_rectangle_free_spanning_set (region);
+ region = NULL;
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+#endif
+
+static void
+verify_lists_are_equal (GList *code, GList *answer)
+{
+ int which = 0;
+
+ while (code && answer)
+ {
+ MetaRectangle *a = code->data;
+ MetaRectangle *b = answer->data;
+
+ if (a->x != b->x ||
+ a->y != b->y ||
+ a->width != b->width ||
+ a->height != b->height)
+ {
+ g_error ("%dth item in code answer answer lists do not match; "
+ "code rect: %d,%d + %d,%d; answer rect: %d,%d + %d,%d\n",
+ which,
+ a->x, a->y, a->width, a->height,
+ b->x, b->y, b->width, b->height);
+ }
+
+ code = code->next;
+ answer = answer->next;
+
+ which++;
+ }
+
+ /* Ought to be at the end of both lists; check if we aren't */
+ if (code)
+ {
+ MetaRectangle *tmp = code->data;
+ g_error ("code list longer than answer list by %d items; "
+ "first extra item: %d,%d +%d,%d\n",
+ g_list_length (code),
+ tmp->x, tmp->y, tmp->width, tmp->height);
+ }
+
+ if (answer)
+ {
+ MetaRectangle *tmp = answer->data;
+ g_error ("answer list longer than code list by %d items; "
+ "first extra item: %d,%d +%d,%d\n",
+ g_list_length (answer),
+ tmp->x, tmp->y, tmp->width, tmp->height);
+ }
+}
+
+static void
+test_regions_okay ()
+{
+ GList* region;
+ GList* tmp;
+
+ /*************************************************************/
+ /* Make sure test region 0 has the right spanning rectangles */
+ /*************************************************************/
+ region = get_screen_region (0);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_meta_rect (0, 0, 1600, 1200));
+ verify_lists_are_equal (region, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (region);
+
+ /*************************************************************/
+ /* Make sure test region 1 has the right spanning rectangles */
+ /*************************************************************/
+ region = get_screen_region (1);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_meta_rect (0, 20, 400, 1180));
+ tmp = g_list_prepend (tmp, new_meta_rect (0, 20, 1600, 1140));
+ verify_lists_are_equal (region, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (region);
+
+ /*************************************************************/
+ /* Make sure test region 2 has the right spanning rectangles */
+ /*************************************************************/
+ region = get_screen_region (2);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_meta_rect ( 0, 20, 300, 1180));
+ tmp = g_list_prepend (tmp, new_meta_rect ( 450, 20, 350, 1180));
+ tmp = g_list_prepend (tmp, new_meta_rect (1200, 20, 400, 1180));
+ tmp = g_list_prepend (tmp, new_meta_rect ( 0, 20, 800, 1130));
+ tmp = g_list_prepend (tmp, new_meta_rect ( 0, 20, 1600, 1080));
+ verify_lists_are_equal (region, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (region);
+
+ /*************************************************************/
+ /* Make sure test region 3 has the right spanning rectangles */
+ /*************************************************************/
+ region = get_screen_region (3);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_meta_rect ( 380, 675, 420, 525)); /* 220500 */
+ tmp = g_list_prepend (tmp, new_meta_rect ( 0, 20, 300, 1180)); /* 354000 */
+ tmp = g_list_prepend (tmp, new_meta_rect ( 380, 20, 320, 1180)); /* 377600 */
+ tmp = g_list_prepend (tmp, new_meta_rect ( 0, 675, 800, 475)); /* 380000 */
+ tmp = g_list_prepend (tmp, new_meta_rect (1200, 20, 400, 1180)); /* 472000 */
+ tmp = g_list_prepend (tmp, new_meta_rect ( 0, 675, 1600, 425)); /* 680000 */
+ tmp = g_list_prepend (tmp, new_meta_rect ( 900, 20, 700, 1080)); /* 756000 */
+ tmp = g_list_prepend (tmp, new_meta_rect ( 0, 20, 700, 1130)); /* 791000 */
+ tmp = g_list_prepend (tmp, new_meta_rect ( 0, 20, 1600, 505)); /* 808000 */
+#if 0
+ printf ("Got to here...\n");
+ char region_list[(RECT_LENGTH+2) * g_list_length (region)];
+ char tmp_list[ (RECT_LENGTH+2) * g_list_length (tmp)];
+ meta_rectangle_region_to_string (region, ", ", region_list);
+ meta_rectangle_region_to_string (region, ", ", tmp_list);
+ printf ("%s vs. %s\n", region_list, tmp_list);
+#endif
+ verify_lists_are_equal (region, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (region);
+
+ /*************************************************************/
+ /* Make sure test region 4 has the right spanning rectangles */
+ /*************************************************************/
+ region = get_screen_region (4);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_meta_rect ( 800, 20, 800, 1180));
+ verify_lists_are_equal (region, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (region);
+
+ /*************************************************************/
+ /* Make sure test region 5 has the right spanning rectangles */
+ /*************************************************************/
+ printf ("The next test intentionally causes a warning, "
+ "but it can be ignored.\n");
+ region = get_screen_region (5);
+ verify_lists_are_equal (region, NULL);
+
+ /* FIXME: Still to do:
+ * - Create random struts and check the regions somehow
+ */
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+test_region_fitting ()
+{
+ GList* region;
+ MetaRectangle rect;
+
+ /* See test_basic_fitting() for how/why these automated random tests work */
+ int i;
+ region = get_screen_region (3);
+ for (i = 0; i < NUM_RANDOM_RUNS; i++)
+ {
+ get_random_rect (&rect);
+ g_assert (meta_rectangle_contained_in_region (region, &rect) == FALSE ||
+ meta_rectangle_could_fit_in_region (region, &rect) == TRUE);
+ }
+ meta_rectangle_free_list_and_elements (region);
+
+ /* Do some manual tests too */
+ region = get_screen_region (1);
+
+ rect = meta_rect (50, 50, 400, 400);
+ g_assert (meta_rectangle_could_fit_in_region (region, &rect));
+ g_assert (meta_rectangle_contained_in_region (region, &rect));
+
+ rect = meta_rect (250, 0, 500, 1150);
+ g_assert (!meta_rectangle_could_fit_in_region (region, &rect));
+ g_assert (!meta_rectangle_contained_in_region (region, &rect));
+
+ rect = meta_rect (250, 0, 400, 400);
+ g_assert (meta_rectangle_could_fit_in_region (region, &rect));
+ g_assert (!meta_rectangle_contained_in_region (region, &rect));
+
+ meta_rectangle_free_list_and_elements (region);
+
+ region = get_screen_region (2);
+ rect = meta_rect (1000, 50, 600, 1100);
+ g_assert (meta_rectangle_could_fit_in_region (region, &rect));
+ g_assert (!meta_rectangle_contained_in_region (region, &rect));
+
+ meta_rectangle_free_list_and_elements (region);
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+test_clamping_to_region ()
+{
+ GList* region;
+ MetaRectangle rect;
+ MetaRectangle min_size;
+ FixedDirections fixed_directions;
+ int i;
+
+ min_size.height = min_size.width = 1;
+ fixed_directions = 0;
+
+ region = get_screen_region (3);
+ for (i = 0; i < NUM_RANDOM_RUNS; i++)
+ {
+ MetaRectangle temp;
+ get_random_rect (&rect);
+ temp = rect;
+ meta_rectangle_clamp_to_fit_into_region (region,
+ fixed_directions,
+ &rect,
+ &min_size);
+ g_assert (meta_rectangle_could_fit_in_region (region, &rect) == TRUE);
+ g_assert (rect.x == temp.x && rect.y == temp.y);
+ }
+ meta_rectangle_free_list_and_elements (region);
+
+ /* Do some manual tests too */
+ region = get_screen_region (1);
+
+ rect = meta_rect (50, 50, 10000, 10000);
+ meta_rectangle_clamp_to_fit_into_region (region,
+ fixed_directions,
+ &rect,
+ &min_size);
+ g_assert (rect.width == 1600 && rect.height == 1140);
+
+ rect = meta_rect (275, -50, 410, 10000);
+ meta_rectangle_clamp_to_fit_into_region (region,
+ fixed_directions,
+ &rect,
+ &min_size);
+ g_assert (rect.width == 400 && rect.height == 1180);
+
+ rect = meta_rect (50, 50, 10000, 10000);
+ min_size.height = 1170;
+ meta_rectangle_clamp_to_fit_into_region (region,
+ fixed_directions,
+ &rect,
+ &min_size);
+ g_assert (rect.width == 400 && rect.height == 1180);
+
+ printf ("The next test intentionally causes a warning, "
+ "but it can be ignored.\n");
+ rect = meta_rect (50, 50, 10000, 10000);
+ min_size.width = 600; min_size.height = 1170;
+ meta_rectangle_clamp_to_fit_into_region (region,
+ fixed_directions,
+ &rect,
+ &min_size);
+ g_assert (rect.width == 600 && rect.height == 1170);
+
+ rect = meta_rect (350, 50, 100, 1100);
+ min_size.width = 1; min_size.height = 1;
+ fixed_directions = FIXED_DIRECTION_X;
+ meta_rectangle_clamp_to_fit_into_region (region,
+ fixed_directions,
+ &rect,
+ &min_size);
+ g_assert (rect.width == 100 && rect.height == 1100);
+
+ rect = meta_rect (300, 70, 500, 1100);
+ min_size.width = 1; min_size.height = 1;
+ fixed_directions = FIXED_DIRECTION_Y;
+ meta_rectangle_clamp_to_fit_into_region (region,
+ fixed_directions,
+ &rect,
+ &min_size);
+ g_assert (rect.width == 400 && rect.height == 1100);
+
+ printf ("The next test intentionally causes a warning, "
+ "but it can be ignored.\n");
+ rect = meta_rect (300, 70, 999999, 999999);
+ min_size.width = 100; min_size.height = 200;
+ fixed_directions = FIXED_DIRECTION_Y;
+ meta_rectangle_clamp_to_fit_into_region (region,
+ fixed_directions,
+ &rect,
+ &min_size);
+ g_assert (rect.width == 100 && rect.height == 999999);
+
+ meta_rectangle_free_list_and_elements (region);
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static gboolean
+rect_overlaps_region (const GList *spanning_rects,
+ const MetaRectangle *rect)
+{
+ /* FIXME: Should I move this to boxes.[ch]? */
+ const GList *temp;
+ gboolean overlaps;
+
+ temp = spanning_rects;
+ overlaps = FALSE;
+ while (!overlaps && temp != NULL)
+ {
+ overlaps = overlaps || meta_rectangle_overlap (temp->data, rect);
+ temp = temp->next;
+ }
+
+ return overlaps;
+}
+
+gboolean time_to_print = FALSE;
+
+static void
+test_clipping_to_region ()
+{
+ GList* region;
+ MetaRectangle rect, temp;
+ FixedDirections fixed_directions = 0;
+ int i;
+
+ region = get_screen_region (3);
+ for (i = 0; i < NUM_RANDOM_RUNS; i++)
+ {
+ get_random_rect (&rect);
+ if (rect_overlaps_region (region, &rect))
+ {
+ meta_rectangle_clip_to_region (region, 0, &rect);
+ g_assert (meta_rectangle_contained_in_region (region, &rect) == TRUE);
+ }
+ }
+ meta_rectangle_free_list_and_elements (region);
+
+ /* Do some manual tests too */
+ region = get_screen_region (2);
+
+ rect = meta_rect (-50, -10, 10000, 10000);
+ meta_rectangle_clip_to_region (region,
+ fixed_directions,
+ &rect);
+ g_assert (meta_rectangle_equal (region->data, &rect));
+
+ rect = meta_rect (300, 1000, 400, 200);
+ temp = meta_rect (300, 1000, 400, 150);
+ meta_rectangle_clip_to_region (region,
+ fixed_directions,
+ &rect);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect (400, 1000, 300, 200);
+ temp = meta_rect (450, 1000, 250, 200);
+ meta_rectangle_clip_to_region (region,
+ fixed_directions,
+ &rect);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect (400, 1000, 300, 200);
+ temp = meta_rect (400, 1000, 300, 150);
+ meta_rectangle_clip_to_region (region,
+ FIXED_DIRECTION_X,
+ &rect);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect (400, 1000, 300, 200);
+ temp = meta_rect (400, 1000, 300, 150);
+ meta_rectangle_clip_to_region (region,
+ FIXED_DIRECTION_X,
+ &rect);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ meta_rectangle_free_list_and_elements (region);
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+test_shoving_into_region ()
+{
+ GList* region;
+ MetaRectangle rect, temp;
+ FixedDirections fixed_directions = 0;
+ int i;
+
+ region = get_screen_region (3);
+ for (i = 0; i < NUM_RANDOM_RUNS; i++)
+ {
+ get_random_rect (&rect);
+ if (meta_rectangle_could_fit_in_region (region, &rect))
+ {
+ meta_rectangle_shove_into_region (region, 0, &rect);
+ g_assert (meta_rectangle_contained_in_region (region, &rect));
+ }
+ }
+ meta_rectangle_free_list_and_elements (region);
+
+ /* Do some manual tests too */
+ region = get_screen_region (2);
+
+ rect = meta_rect (300, 1000, 400, 200);
+ temp = meta_rect (300, 950, 400, 200);
+ meta_rectangle_shove_into_region (region,
+ fixed_directions,
+ &rect);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect (425, 1000, 300, 200);
+ temp = meta_rect (450, 1000, 300, 200);
+ meta_rectangle_shove_into_region (region,
+ fixed_directions,
+ &rect);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect (425, 1000, 300, 200);
+ temp = meta_rect (425, 950, 300, 200);
+ meta_rectangle_shove_into_region (region,
+ FIXED_DIRECTION_X,
+ &rect);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect ( 300, 1000, 400, 200);
+ temp = meta_rect (1200, 1000, 400, 200);
+ meta_rectangle_shove_into_region (region,
+ FIXED_DIRECTION_Y,
+ &rect);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect ( 800, 1150, 400, 50); /* Completely "offscreen" :) */
+ temp = meta_rect ( 800, 1050, 400, 50);
+ meta_rectangle_shove_into_region (region,
+ 0,
+ &rect);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect (-1000, 0, 400, 150); /* Offscreen in 2 directions */
+ temp = meta_rect ( 0, 20, 400, 150);
+ meta_rectangle_shove_into_region (region,
+ 0,
+ &rect);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ meta_rectangle_free_list_and_elements (region);
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+verify_edge_lists_are_equal (GList *code, GList *answer)
+{
+ int which = 0;
+
+ while (code && answer)
+ {
+ MetaEdge *a = code->data;
+ MetaEdge *b = answer->data;
+
+ if (!meta_rectangle_equal (&a->rect, &b->rect) ||
+ a->side_type != b->side_type ||
+ a->edge_type != b->edge_type)
+ {
+ g_error ("%dth item in code answer answer lists do not match; "
+ "code rect: %d,%d + %d,%d; answer rect: %d,%d + %d,%d\n",
+ which,
+ a->rect.x, a->rect.y, a->rect.width, a->rect.height,
+ b->rect.x, b->rect.y, b->rect.width, b->rect.height);
+ }
+
+ code = code->next;
+ answer = answer->next;
+
+ which++;
+ }
+
+ /* Ought to be at the end of both lists; check if we aren't */
+ if (code)
+ {
+ MetaEdge *tmp = code->data;
+ g_error ("code list longer than answer list by %d items; "
+ "first extra item rect: %d,%d +%d,%d\n",
+ g_list_length (code),
+ tmp->rect.x, tmp->rect.y, tmp->rect.width, tmp->rect.height);
+ }
+
+ if (answer)
+ {
+ MetaEdge *tmp = answer->data;
+ g_error ("answer list longer than code list by %d items; "
+ "first extra item rect: %d,%d +%d,%d\n",
+ g_list_length (answer),
+ tmp->rect.x, tmp->rect.y, tmp->rect.width, tmp->rect.height);
+ }
+}
+
+static void
+test_find_onscreen_edges ()
+{
+ GList* edges;
+ GList* tmp;
+
+ int left = META_DIRECTION_LEFT;
+ int right = META_DIRECTION_RIGHT;
+ int top = META_DIRECTION_TOP;
+ int bottom = META_DIRECTION_BOTTOM;
+
+ /*************************************************/
+ /* Make sure test region 0 has the correct edges */
+ /*************************************************/
+ edges = get_screen_edges (0);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 1200, 1600, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 0, 1600, 0, top));
+ tmp = g_list_prepend (tmp, new_screen_edge (1600, 0, 0, 1200, right));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 0, 0, 1200, left));
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ /*************************************************/
+ /* Make sure test region 1 has the correct edges */
+ /*************************************************/
+ edges = get_screen_edges (1);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 1200, 400, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 400, 1160, 1200, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 20, 1600, 0, top));
+ tmp = g_list_prepend (tmp, new_screen_edge (1600, 20, 0, 1140, right));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 400, 1160, 0, 40, right));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 20, 0, 1180, left));
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ /*************************************************/
+ /* Make sure test region 2 has the correct edges */
+ /*************************************************/
+ edges = get_screen_edges (2);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_screen_edge (1200, 1200, 400, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 450, 1200, 350, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 1200, 300, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 300, 1150, 150, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 800, 1100, 400, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 20, 1600, 0, top));
+ tmp = g_list_prepend (tmp, new_screen_edge (1600, 20, 0, 1180, right));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 800, 1100, 0, 100, right));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 300, 1150, 0, 50, right));
+ tmp = g_list_prepend (tmp, new_screen_edge (1200, 1100, 0, 100, left));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 450, 1150, 0, 50, left));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 20, 0, 1180, left));
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ /*************************************************/
+ /* Make sure test region 3 has the correct edges */
+ /*************************************************/
+ edges = get_screen_edges (3);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_screen_edge (1200, 1200, 400, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 380, 1200, 420, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 1200, 300, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 300, 1150, 80, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 800, 1100, 400, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 700, 525, 200, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 700, 675, 200, 0, top));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 20, 1600, 0, top));
+ tmp = g_list_prepend (tmp, new_screen_edge (1600, 20, 0, 1180, right));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 800, 1100, 0, 100, right));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 700, 525, 0, 150, right));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 300, 1150, 0, 50, right));
+ tmp = g_list_prepend (tmp, new_screen_edge (1200, 1100, 0, 100, left));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 900, 525, 0, 150, left));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 380, 1150, 0, 50, left));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 20, 0, 1180, left));
+
+#if 0
+ #define FUDGE 50 /* number of edges */
+ char big_buffer1[(EDGE_LENGTH+2)*FUDGE], big_buffer2[(EDGE_LENGTH+2)*FUDGE];
+ meta_rectangle_edge_list_to_string (edges, "\n ", big_buffer1);
+ meta_rectangle_edge_list_to_string (tmp, "\n ", big_buffer2);
+ printf("Generated edge list:\n %s\nComparison edges list:\n %s\n",
+ big_buffer1, big_buffer2);
+#endif
+
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ /*************************************************/
+ /* Make sure test region 4 has the correct edges */
+ /*************************************************/
+ edges = get_screen_edges (4);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_screen_edge ( 800, 1200, 800, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 800, 20, 800, 0, top));
+ tmp = g_list_prepend (tmp, new_screen_edge (1600, 20, 0, 1180, right));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 800, 20, 0, 1180, left));
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ /*************************************************/
+ /* Make sure test region 5 has the correct edges */
+ /*************************************************/
+ edges = get_screen_edges (5);
+ tmp = NULL;
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ /*************************************************/
+ /* Make sure test region 6 has the correct edges */
+ /*************************************************/
+ edges = get_screen_edges (6);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 1200, 1600, 0, bottom));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 40, 1600, 0, top));
+ tmp = g_list_prepend (tmp, new_screen_edge (1600, 40, 0, 1160, right));
+ tmp = g_list_prepend (tmp, new_screen_edge ( 0, 40, 0, 1160, left));
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+test_find_nonintersected_xinerama_edges ()
+{
+ GList* edges;
+ GList* tmp;
+
+ int left = META_DIRECTION_LEFT;
+ int right = META_DIRECTION_RIGHT;
+ int top = META_DIRECTION_TOP;
+ int bottom = META_DIRECTION_BOTTOM;
+
+ /*************************************************************************/
+ /* Make sure test xinerama set 0 for with region 0 has the correct edges */
+ /*************************************************************************/
+ edges = get_xinerama_edges (0, 0);
+ tmp = NULL;
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ /*************************************************************************/
+ /* Make sure test xinerama set 2 for with region 1 has the correct edges */
+ /*************************************************************************/
+ edges = get_xinerama_edges (2, 1);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 0, 600, 1600, 0, bottom));
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 0, 600, 1600, 0, top));
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ /*************************************************************************/
+ /* Make sure test xinerama set 1 for with region 2 has the correct edges */
+ /*************************************************************************/
+ edges = get_xinerama_edges (1, 2);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 800, 20, 0, 1080, right));
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 800, 20, 0, 1180, left));
+#if 0
+ #define FUDGE 50
+ char big_buffer1[(EDGE_LENGTH+2)*FUDGE], big_buffer2[(EDGE_LENGTH+2)*FUDGE];
+ meta_rectangle_edge_list_to_string (edges, "\n ", big_buffer1);
+ meta_rectangle_edge_list_to_string (tmp, "\n ", big_buffer2);
+ printf("Generated edge list:\n %s\nComparison edges list:\n %s\n",
+ big_buffer1, big_buffer2);
+#endif
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ /*************************************************************************/
+ /* Make sure test xinerama set 3 for with region 3 has the correct edges */
+ /*************************************************************************/
+ edges = get_xinerama_edges (3, 3);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 900, 600, 700, 0, bottom));
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 0, 600, 700, 0, bottom));
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 900, 600, 700, 0, top));
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 0, 600, 700, 0, top));
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 800, 675, 0, 425, right));
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 800, 675, 0, 525, left));
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ /*************************************************************************/
+ /* Make sure test xinerama set 3 for with region 4 has the correct edges */
+ /*************************************************************************/
+ edges = get_xinerama_edges (3, 4);
+ tmp = NULL;
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 800, 600, 800, 0, bottom));
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 800, 600, 800, 0, top));
+ tmp = g_list_prepend (tmp, new_xinerama_edge ( 800, 600, 0, 600, right));
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ /*************************************************************************/
+ /* Make sure test xinerama set 3 for with region 5has the correct edges */
+ /*************************************************************************/
+ edges = get_xinerama_edges (3, 5);
+ tmp = NULL;
+ verify_edge_lists_are_equal (edges, tmp);
+ meta_rectangle_free_list_and_elements (tmp);
+ meta_rectangle_free_list_and_elements (edges);
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+test_gravity_resize ()
+{
+ MetaRectangle oldrect, rect, temp;
+
+ rect.x = -500; /* Some random amount not equal to oldrect.x to ensure that
+ * the resize is done with respect to oldrect instead of rect
+ */
+ oldrect = meta_rect ( 50, 300, 250, 400);
+ temp = meta_rect ( 50, 300, 20, 5);
+ meta_rectangle_resize_with_gravity (&oldrect,
+ &rect,
+ NorthWestGravity,
+ 20,
+ 5);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect ( 50, 300, 250, 400);
+ temp = meta_rect (165, 300, 20, 5);
+ meta_rectangle_resize_with_gravity (&rect,
+ &rect,
+ NorthGravity,
+ 20,
+ 5);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect ( 50, 300, 250, 400);
+ temp = meta_rect (280, 300, 20, 5);
+ meta_rectangle_resize_with_gravity (&rect,
+ &rect,
+ NorthEastGravity,
+ 20,
+ 5);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect ( 50, 300, 250, 400);
+ temp = meta_rect ( 50, 695, 50, 5);
+ meta_rectangle_resize_with_gravity (&rect,
+ &rect,
+ SouthWestGravity,
+ 50,
+ 5);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect ( 50, 300, 250, 400);
+ temp = meta_rect (150, 695, 50, 5);
+ meta_rectangle_resize_with_gravity (&rect,
+ &rect,
+ SouthGravity,
+ 50,
+ 5);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect ( 50, 300, 250, 400);
+ temp = meta_rect (250, 695, 50, 5);
+ meta_rectangle_resize_with_gravity (&rect,
+ &rect,
+ SouthEastGravity,
+ 50,
+ 5);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect (167, 738, 237, 843);
+ temp = meta_rect (167, 1113, 832, 93);
+ meta_rectangle_resize_with_gravity (&rect,
+ &rect,
+ WestGravity,
+ 832,
+ 93);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect ( 167, 738, 237, 843);
+ temp = meta_rect (-131, 1113, 833, 93);
+ meta_rectangle_resize_with_gravity (&rect,
+ &rect,
+ CenterGravity,
+ 832,
+ 93);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect (300, 1000, 400, 200);
+ temp = meta_rect (270, 994, 430, 212);
+ meta_rectangle_resize_with_gravity (&rect,
+ &rect,
+ EastGravity,
+ 430,
+ 211);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ rect = meta_rect (300, 1000, 400, 200);
+ temp = meta_rect (300, 1000, 430, 211);
+ meta_rectangle_resize_with_gravity (&rect,
+ &rect,
+ StaticGravity,
+ 430,
+ 211);
+ g_assert (meta_rectangle_equal (&rect, &temp));
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+static void
+test_find_closest_point_to_line ()
+{
+ double x1, y1, x2, y2, px, py, rx, ry;
+ double answer_x, answer_y;
+
+ x1 = 3.0; y1 = 49.0;
+ x2 = 2.0; y2 = - 1.0;
+ px = -2.6; py = 19.1;
+ answer_x = 2.4; answer_y = 19;
+ meta_rectangle_find_linepoint_closest_to_point (x1, y1,
+ x2, y2,
+ px, py,
+ &rx, &ry);
+ g_assert (rx == answer_x && ry == answer_y);
+
+ /* Special test for x1 == x2, so that slop of line is infinite */
+ x1 = 3.0; y1 = 49.0;
+ x2 = 3.0; y2 = - 1.0;
+ px = -2.6; py = 19.1;
+ answer_x = 3.0; answer_y = 19.1;
+ meta_rectangle_find_linepoint_closest_to_point (x1, y1,
+ x2, y2,
+ px, py,
+ &rx, &ry);
+ g_assert (rx == answer_x && ry == answer_y);
+
+ /* Special test for y1 == y2, so perp line has slope of infinity */
+ x1 = 3.14; y1 = 7.0;
+ x2 = 2.718; y2 = 7.0;
+ px = -2.6; py = 19.1;
+ answer_x = -2.6; answer_y = 7;
+ meta_rectangle_find_linepoint_closest_to_point (x1, y1,
+ x2, y2,
+ px, py,
+ &rx, &ry);
+ g_assert (rx == answer_x && ry == answer_y);
+
+ /* Test when we the point we want to be closest to is actually on the line */
+ x1 = 3.0; y1 = 49.0;
+ x2 = 2.0; y2 = - 1.0;
+ px = 2.4; py = 19.0;
+ answer_x = 2.4; answer_y = 19;
+ meta_rectangle_find_linepoint_closest_to_point (x1, y1,
+ x2, y2,
+ px, py,
+ &rx, &ry);
+ g_assert (rx == answer_x && ry == answer_y);
+
+ printf ("%s passed.\n", G_STRFUNC);
+}
+
+int
+main()
+{
+ init_random_ness ();
+ test_area ();
+ test_intersect ();
+ test_equal ();
+ test_overlap_funcs ();
+ test_basic_fitting ();
+
+ test_regions_okay ();
+ test_region_fitting ();
+
+ test_clamping_to_region ();
+ test_clipping_to_region ();
+ test_shoving_into_region ();
+
+ /* And now the functions dealing with edges more than boxes */
+ test_find_onscreen_edges ();
+ test_find_nonintersected_xinerama_edges ();
+
+ /* And now the misfit functions that don't quite fit in anywhere else... */
+ test_gravity_resize ();
+ test_find_closest_point_to_line ();
+
+ printf ("All tests passed.\n");
+ return 0;
+}
diff --git a/src/core/util.c b/src/core/util.c
new file mode 100644
index 00000000..6dd27f8e
--- /dev/null
+++ b/src/core/util.c
@@ -0,0 +1,641 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco utilities */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#define _GNU_SOURCE
+#define _POSIX_C_SOURCE 200112L /* for fdopen() */
+
+#include <config.h>
+#include "util.h"
+#include "main.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <errno.h>
+#include <string.h>
+#include <X11/Xlib.h> /* must explicitly be included for Solaris; #326746 */
+#include <X11/Xutil.h> /* Just for the definition of the various gravities */
+
+#ifdef HAVE_BACKTRACE
+#include <execinfo.h>
+void
+meta_print_backtrace (void)
+{
+ void *bt[500];
+ int bt_size;
+ int i;
+ char **syms;
+
+ bt_size = backtrace (bt, 500);
+
+ syms = backtrace_symbols (bt, bt_size);
+
+ i = 0;
+ while (i < bt_size)
+ {
+ meta_verbose (" %s\n", syms[i]);
+ ++i;
+ }
+
+ free (syms);
+}
+#else
+void
+meta_print_backtrace (void)
+{
+ meta_verbose ("Not compiled with backtrace support\n");
+}
+#endif
+
+static gboolean is_verbose = FALSE;
+static gboolean is_debugging = FALSE;
+static gboolean replace_current = FALSE;
+static int no_prefix = 0;
+
+#ifdef WITH_VERBOSE_MODE
+static FILE* logfile = NULL;
+
+static void
+ensure_logfile (void)
+{
+ if (logfile == NULL && g_getenv ("MARCO_USE_LOGFILE"))
+ {
+ char *filename = NULL;
+ char *tmpl;
+ int fd;
+ GError *err;
+
+ tmpl = g_strdup_printf ("marco-%d-debug-log-XXXXXX",
+ (int) getpid ());
+
+ err = NULL;
+ fd = g_file_open_tmp (tmpl,
+ &filename,
+ &err);
+
+ g_free (tmpl);
+
+ if (err != NULL)
+ {
+ meta_warning (_("Failed to open debug log: %s\n"),
+ err->message);
+ g_error_free (err);
+ return;
+ }
+
+ logfile = fdopen (fd, "w");
+
+ if (logfile == NULL)
+ {
+ meta_warning (_("Failed to fdopen() log file %s: %s\n"),
+ filename, strerror (errno));
+ close (fd);
+ }
+ else
+ {
+ g_printerr (_("Opened log file %s\n"), filename);
+ }
+
+ g_free (filename);
+ }
+}
+#endif
+
+gboolean
+meta_is_verbose (void)
+{
+ return is_verbose;
+}
+
+void
+meta_set_verbose (gboolean setting)
+{
+#ifndef WITH_VERBOSE_MODE
+ if (setting)
+ meta_fatal (_("Marco was compiled without support for verbose mode\n"));
+#else
+ if (setting)
+ ensure_logfile ();
+#endif
+
+ is_verbose = setting;
+}
+
+gboolean
+meta_is_debugging (void)
+{
+ return is_debugging;
+}
+
+void
+meta_set_debugging (gboolean setting)
+{
+#ifdef WITH_VERBOSE_MODE
+ if (setting)
+ ensure_logfile ();
+#endif
+
+ is_debugging = setting;
+}
+
+gboolean
+meta_get_replace_current_wm (void)
+{
+ return replace_current;
+}
+
+void
+meta_set_replace_current_wm (gboolean setting)
+{
+ replace_current = setting;
+}
+
+char *
+meta_g_utf8_strndup (const gchar *src,
+ gsize n)
+{
+ const gchar *s = src;
+ while (n && *s)
+ {
+ s = g_utf8_next_char (s);
+ n--;
+ }
+
+ return g_strndup (src, s - src);
+}
+
+static int
+utf8_fputs (const char *str,
+ FILE *f)
+{
+ char *l;
+ int retval;
+
+ l = g_locale_from_utf8 (str, -1, NULL, NULL, NULL);
+
+ if (l == NULL)
+ retval = fputs (str, f); /* just print it anyway, better than nothing */
+ else
+ retval = fputs (l, f);
+
+ g_free (l);
+
+ return retval;
+}
+
+void
+meta_free_gslist_and_elements (GSList *list_to_deep_free)
+{
+ g_slist_foreach (list_to_deep_free,
+ (void (*)(gpointer,gpointer))&g_free, /* ew, for ugly */
+ NULL);
+ g_slist_free (list_to_deep_free);
+}
+
+#ifdef WITH_VERBOSE_MODE
+void
+meta_debug_spew_real (const char *format, ...)
+{
+ va_list args;
+ gchar *str;
+ FILE *out;
+
+ g_return_if_fail (format != NULL);
+
+ if (!is_debugging)
+ return;
+
+ va_start (args, format);
+ str = g_strdup_vprintf (format, args);
+ va_end (args);
+
+ out = logfile ? logfile : stderr;
+
+ if (no_prefix == 0)
+ utf8_fputs (_("Window manager: "), out);
+ utf8_fputs (str, out);
+
+ fflush (out);
+
+ g_free (str);
+}
+#endif /* WITH_VERBOSE_MODE */
+
+#ifdef WITH_VERBOSE_MODE
+void
+meta_verbose_real (const char *format, ...)
+{
+ va_list args;
+ gchar *str;
+ FILE *out;
+
+ g_return_if_fail (format != NULL);
+
+ if (!is_verbose)
+ return;
+
+ va_start (args, format);
+ str = g_strdup_vprintf (format, args);
+ va_end (args);
+
+ out = logfile ? logfile : stderr;
+
+ if (no_prefix == 0)
+ utf8_fputs ("Window manager: ", out);
+ utf8_fputs (str, out);
+
+ fflush (out);
+
+ g_free (str);
+}
+#endif /* WITH_VERBOSE_MODE */
+
+#ifdef WITH_VERBOSE_MODE
+static const char*
+topic_name (MetaDebugTopic topic)
+{
+ switch (topic)
+ {
+ case META_DEBUG_FOCUS:
+ return "FOCUS";
+ case META_DEBUG_WORKAREA:
+ return "WORKAREA";
+ case META_DEBUG_STACK:
+ return "STACK";
+ case META_DEBUG_THEMES:
+ return "THEMES";
+ case META_DEBUG_SM:
+ return "SM";
+ case META_DEBUG_EVENTS:
+ return "EVENTS";
+ case META_DEBUG_WINDOW_STATE:
+ return "WINDOW_STATE";
+ case META_DEBUG_WINDOW_OPS:
+ return "WINDOW_OPS";
+ case META_DEBUG_PLACEMENT:
+ return "PLACEMENT";
+ case META_DEBUG_GEOMETRY:
+ return "GEOMETRY";
+ case META_DEBUG_PING:
+ return "PING";
+ case META_DEBUG_XINERAMA:
+ return "XINERAMA";
+ case META_DEBUG_KEYBINDINGS:
+ return "KEYBINDINGS";
+ case META_DEBUG_SYNC:
+ return "SYNC";
+ case META_DEBUG_ERRORS:
+ return "ERRORS";
+ case META_DEBUG_STARTUP:
+ return "STARTUP";
+ case META_DEBUG_PREFS:
+ return "PREFS";
+ case META_DEBUG_GROUPS:
+ return "GROUPS";
+ case META_DEBUG_RESIZING:
+ return "RESIZING";
+ case META_DEBUG_SHAPES:
+ return "SHAPES";
+ case META_DEBUG_COMPOSITOR:
+ return "COMPOSITOR";
+ case META_DEBUG_EDGE_RESISTANCE:
+ return "EDGE_RESISTANCE";
+ }
+
+ return "WM";
+}
+
+static int sync_count = 0;
+
+void
+meta_topic_real (MetaDebugTopic topic,
+ const char *format,
+ ...)
+{
+ va_list args;
+ gchar *str;
+ FILE *out;
+
+ g_return_if_fail (format != NULL);
+
+ if (!is_verbose)
+ return;
+
+ va_start (args, format);
+ str = g_strdup_vprintf (format, args);
+ va_end (args);
+
+ out = logfile ? logfile : stderr;
+
+ if (no_prefix == 0)
+ fprintf (out, "%s: ", topic_name (topic));
+
+ if (topic == META_DEBUG_SYNC)
+ {
+ ++sync_count;
+ fprintf (out, "%d: ", sync_count);
+ }
+
+ utf8_fputs (str, out);
+
+ fflush (out);
+
+ g_free (str);
+}
+#endif /* WITH_VERBOSE_MODE */
+
+void
+meta_bug (const char *format, ...)
+{
+ va_list args;
+ gchar *str;
+ FILE *out;
+
+ g_return_if_fail (format != NULL);
+
+ va_start (args, format);
+ str = g_strdup_vprintf (format, args);
+ va_end (args);
+
+#ifdef WITH_VERBOSE_MODE
+ out = logfile ? logfile : stderr;
+#else
+ out = stderr;
+#endif
+
+ if (no_prefix == 0)
+ utf8_fputs (_("Bug in window manager: "), out);
+ utf8_fputs (str, out);
+
+ fflush (out);
+
+ g_free (str);
+
+ meta_print_backtrace ();
+
+ /* stop us in a debugger */
+ abort ();
+}
+
+void
+meta_warning (const char *format, ...)
+{
+ va_list args;
+ gchar *str;
+ FILE *out;
+
+ g_return_if_fail (format != NULL);
+
+ va_start (args, format);
+ str = g_strdup_vprintf (format, args);
+ va_end (args);
+
+#ifdef WITH_VERBOSE_MODE
+ out = logfile ? logfile : stderr;
+#else
+ out = stderr;
+#endif
+
+ if (no_prefix == 0)
+ utf8_fputs (_("Window manager warning: "), out);
+ utf8_fputs (str, out);
+
+ fflush (out);
+
+ g_free (str);
+}
+
+void
+meta_fatal (const char *format, ...)
+{
+ va_list args;
+ gchar *str;
+ FILE *out;
+
+ g_return_if_fail (format != NULL);
+
+ va_start (args, format);
+ str = g_strdup_vprintf (format, args);
+ va_end (args);
+
+#ifdef WITH_VERBOSE_MODE
+ out = logfile ? logfile : stderr;
+#else
+ out = stderr;
+#endif
+
+ if (no_prefix == 0)
+ utf8_fputs (_("Window manager error: "), out);
+ utf8_fputs (str, out);
+
+ fflush (out);
+
+ g_free (str);
+
+ meta_exit (META_EXIT_ERROR);
+}
+
+void
+meta_push_no_msg_prefix (void)
+{
+ ++no_prefix;
+}
+
+void
+meta_pop_no_msg_prefix (void)
+{
+ g_return_if_fail (no_prefix > 0);
+
+ --no_prefix;
+}
+
+void
+meta_exit (MetaExitCode code)
+{
+
+ exit (code);
+}
+
+gint
+meta_unsigned_long_equal (gconstpointer v1,
+ gconstpointer v2)
+{
+ return *((const gulong*) v1) == *((const gulong*) v2);
+}
+
+guint
+meta_unsigned_long_hash (gconstpointer v)
+{
+ gulong val = * (const gulong *) v;
+
+ /* I'm not sure this works so well. */
+#if GLIB_SIZEOF_LONG > 4
+ return (guint) (val ^ (val >> 32));
+#else
+ return val;
+#endif
+}
+
+const char*
+meta_gravity_to_string (int gravity)
+{
+ switch (gravity)
+ {
+ case NorthWestGravity:
+ return "NorthWestGravity";
+ break;
+ case NorthGravity:
+ return "NorthGravity";
+ break;
+ case NorthEastGravity:
+ return "NorthEastGravity";
+ break;
+ case WestGravity:
+ return "WestGravity";
+ break;
+ case CenterGravity:
+ return "CenterGravity";
+ break;
+ case EastGravity:
+ return "EastGravity";
+ break;
+ case SouthWestGravity:
+ return "SouthWestGravity";
+ break;
+ case SouthGravity:
+ return "SouthGravity";
+ break;
+ case SouthEastGravity:
+ return "SouthEastGravity";
+ break;
+ case StaticGravity:
+ return "StaticGravity";
+ break;
+ default:
+ return "NorthWestGravity";
+ break;
+ }
+}
+
+GPid
+meta_show_dialog (const char *type,
+ const char *message,
+ const char *timeout,
+ const gint screen_number,
+ const char *ok_text,
+ const char *cancel_text,
+ const int transient_for,
+ GSList *columns,
+ GSList *entries)
+{
+ GError *error = NULL;
+ char *screen_number_text = g_strdup_printf("%d", screen_number);
+ GSList *tmp;
+ int i=0;
+ GPid child_pid;
+ const char **argvl = g_malloc(sizeof (char*) *
+ (17 +
+ g_slist_length (columns)*2 +
+ g_slist_length (entries)));
+
+ argvl[i++] = "matedialog";
+ argvl[i++] = type;
+ argvl[i++] = "--screen";
+ argvl[i++] = screen_number_text;
+ argvl[i++] = "--class";
+ argvl[i++] = "marco-dialog";
+ argvl[i++] = "--title";
+ /* Translators: This is the title used on dialog boxes */
+ argvl[i++] = _("Marco");
+ argvl[i++] = "--text";
+ argvl[i++] = message;
+
+ if (timeout)
+ {
+ argvl[i++] = "--timeout";
+ argvl[i++] = timeout;
+ }
+
+ if (ok_text)
+ {
+ argvl[i++] = "--ok-label";
+ argvl[i++] = ok_text;
+ }
+
+ if (cancel_text)
+ {
+ argvl[i++] = "--cancel-label";
+ argvl[i++] = cancel_text;
+ }
+
+ tmp = columns;
+ while (tmp)
+ {
+ argvl[i++] = "--column";
+ argvl[i++] = tmp->data;
+ tmp = tmp->next;
+ }
+
+ tmp = entries;
+ while (tmp)
+ {
+ argvl[i++] = tmp->data;
+ tmp = tmp->next;
+ }
+
+ argvl[i] = NULL;
+
+ if (transient_for)
+ {
+ gchar *env = g_strdup_printf("%d", transient_for);
+ setenv ("WINDOWID", env, 1);
+ g_free (env);
+ }
+
+ g_spawn_async (
+ "/",
+ (gchar**) argvl, /* ugh */
+ NULL,
+ G_SPAWN_SEARCH_PATH | G_SPAWN_DO_NOT_REAP_CHILD,
+ NULL, NULL,
+ &child_pid,
+ &error
+ );
+
+ if (transient_for)
+ unsetenv ("WINDOWID");
+
+ g_free (argvl);
+ g_free (screen_number_text);
+
+ if (error)
+ {
+ meta_warning ("%s\n", error->message);
+ g_error_free (error);
+ }
+
+ return child_pid;
+}
+/* eof util.c */
+
diff --git a/src/core/window-private.h b/src/core/window-private.h
new file mode 100644
index 00000000..1a966275
--- /dev/null
+++ b/src/core/window-private.h
@@ -0,0 +1,640 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file window-private.h Windows which Marco manages
+ *
+ * Managing X windows.
+ * This file contains methods on this class which are available to
+ * routines in core but not outside it. (See window.h for the routines
+ * which the rest of the world is allowed to use.)
+ */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2002 Red Hat, Inc.
+ * Copyright (C) 2003, 2004 Rob Adams
+ * Copyright (C) 2004-2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_WINDOW_PRIVATE_H
+#define META_WINDOW_PRIVATE_H
+
+#include <config.h>
+#include "window.h"
+#include "screen-private.h"
+#include "util.h"
+#include "stack.h"
+#include "iconcache.h"
+#include <X11/Xutil.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+
+typedef struct _MetaGroup MetaGroup;
+typedef struct _MetaWindowQueue MetaWindowQueue;
+
+typedef gboolean (*MetaWindowForeachFunc) (MetaWindow *window,
+ void *data);
+
+typedef enum
+{
+ META_WINDOW_NORMAL,
+ META_WINDOW_DESKTOP,
+ META_WINDOW_DOCK,
+ META_WINDOW_DIALOG,
+ META_WINDOW_MODAL_DIALOG,
+ META_WINDOW_TOOLBAR,
+ META_WINDOW_MENU,
+ META_WINDOW_UTILITY,
+ META_WINDOW_SPLASHSCREEN
+} MetaWindowType;
+
+typedef enum
+{
+ META_MAXIMIZE_HORIZONTAL = 1 << 0,
+ META_MAXIMIZE_VERTICAL = 1 << 1
+} MetaMaximizeFlags;
+
+typedef enum {
+ META_CLIENT_TYPE_UNKNOWN = 0,
+ META_CLIENT_TYPE_APPLICATION = 1,
+ META_CLIENT_TYPE_PAGER = 2,
+ META_CLIENT_TYPE_MAX_RECOGNIZED = 2
+} MetaClientType;
+
+typedef enum {
+ META_QUEUE_CALC_SHOWING = 1 << 0,
+ META_QUEUE_MOVE_RESIZE = 1 << 1,
+ META_QUEUE_UPDATE_ICON = 1 << 2,
+} MetaQueueType;
+
+#define NUMBER_OF_QUEUES 3
+
+struct _MetaWindow
+{
+ MetaDisplay *display;
+ MetaScreen *screen;
+ MetaWorkspace *workspace;
+ Window xwindow;
+ /* may be NULL! not all windows get decorated */
+ MetaFrame *frame;
+ int depth;
+ Visual *xvisual;
+ Colormap colormap;
+ char *desc; /* used in debug spew */
+ char *title;
+
+ char *icon_name;
+ GdkPixbuf *icon;
+ GdkPixbuf *mini_icon;
+ MetaIconCache icon_cache;
+ Pixmap wm_hints_pixmap;
+ Pixmap wm_hints_mask;
+
+ MetaWindowType type;
+ Atom type_atom;
+
+ /* NOTE these five are not in UTF-8, we just treat them as random
+ * binary data
+ */
+ char *res_class;
+ char *res_name;
+ char *role;
+ char *sm_client_id;
+ char *wm_client_machine;
+ char *startup_id;
+
+ int net_wm_pid;
+
+ Window xtransient_for;
+ Window xgroup_leader;
+ Window xclient_leader;
+
+ /* Initial workspace property */
+ int initial_workspace;
+
+ /* Initial timestamp property */
+ guint32 initial_timestamp;
+
+ /* Whether we're maximized */
+ guint maximized_horizontally : 1;
+ guint maximized_vertically : 1;
+
+ /* Whether we have to maximize/minimize after placement */
+ guint maximize_horizontally_after_placement : 1;
+ guint maximize_vertically_after_placement : 1;
+ guint minimize_after_placement : 1;
+
+ /* Whether we're shaded */
+ guint shaded : 1;
+
+ /* Whether we're fullscreen */
+ guint fullscreen : 1;
+
+ /* Whether we have to fullscreen after placement */
+ guint fullscreen_after_placement : 1;
+
+ /* Area to cover when in fullscreen mode. If _NET_WM_FULLSCREEN_MONITORS has
+ * been overridden (via a client message), the window will cover the union of
+ * these monitors. If not, this is the single monitor which the window's
+ * origin is on. */
+ long fullscreen_monitors[4];
+
+ /* Whether we're trying to constrain the window to be fully onscreen */
+ guint require_fully_onscreen : 1;
+
+ /* Whether we're trying to constrain the window to be on a single xinerama */
+ guint require_on_single_xinerama : 1;
+
+ /* Whether we're trying to constrain the window's titlebar to be onscreen */
+ guint require_titlebar_visible : 1;
+
+ /* Whether we're sticky in the multi-workspace sense
+ * (vs. the not-scroll-with-viewport sense, we don't
+ * have no stupid viewports)
+ */
+ guint on_all_workspaces : 1;
+
+ /* Minimize is the state controlled by the minimize button */
+ guint minimized : 1;
+ guint was_minimized : 1;
+ guint tab_unminimized : 1;
+
+ /* Whether the window is mapped; actual server-side state
+ * see also unmaps_pending
+ */
+ guint mapped : 1;
+
+ /* Iconic is the state in WM_STATE; happens for workspaces/shading
+ * in addition to minimize
+ */
+ guint iconic : 1;
+ /* initially_iconic is the WM_HINTS setting when we first manage
+ * the window. It's taken to mean initially minimized.
+ */
+ guint initially_iconic : 1;
+
+ /* whether an initial workspace was explicitly set */
+ guint initial_workspace_set : 1;
+
+ /* whether an initial timestamp was explicitly set */
+ guint initial_timestamp_set : 1;
+
+ /* whether net_wm_user_time has been set yet */
+ guint net_wm_user_time_set : 1;
+
+ /* These are the flags from WM_PROTOCOLS */
+ guint take_focus : 1;
+ guint delete_window : 1;
+ guint net_wm_ping : 1;
+ /* Globally active / No input */
+ guint input : 1;
+
+ /* MWM hints about features of window */
+ guint mwm_decorated : 1;
+ guint mwm_border_only : 1;
+ guint mwm_has_close_func : 1;
+ guint mwm_has_minimize_func : 1;
+ guint mwm_has_maximize_func : 1;
+ guint mwm_has_move_func : 1;
+ guint mwm_has_resize_func : 1;
+
+ /* Computed features of window */
+ guint decorated : 1;
+ guint border_only : 1;
+ guint always_sticky : 1;
+ guint has_close_func : 1;
+ guint has_minimize_func : 1;
+ guint has_maximize_func : 1;
+ guint has_shade_func : 1;
+ guint has_move_func : 1;
+ guint has_resize_func : 1;
+ guint has_fullscreen_func : 1;
+
+ /* Weird "_NET_WM_STATE_MODAL" flag */
+ guint wm_state_modal : 1;
+
+ /* TRUE if the client forced these on */
+ guint wm_state_skip_taskbar : 1;
+ guint wm_state_skip_pager : 1;
+
+ /* Computed whether to skip taskbar or not */
+ guint skip_taskbar : 1;
+ guint skip_pager : 1;
+
+ /* TRUE if client set these */
+ guint wm_state_above : 1;
+ guint wm_state_below : 1;
+
+ /* EWHH demands attention flag */
+ guint wm_state_demands_attention : 1;
+
+ /* this flag tracks receipt of focus_in focus_out and
+ * determines whether we draw the focus
+ */
+ guint has_focus : 1;
+
+ /* Have we placed this window? */
+ guint placed : 1;
+
+ /* Must we force_save_user_window_placement? */
+ guint force_save_user_rect : 1;
+
+ /* Is this not a transient of the focus window which is being denied focus? */
+ guint denied_focus_and_not_transient : 1;
+
+ /* Has this window not ever been shown yet? */
+ guint showing_for_first_time : 1;
+
+ /* Are we in meta_window_free()? */
+ guint unmanaging : 1;
+
+ /* Are we in meta_window_new()? */
+ guint constructing : 1;
+
+ /* Are we in the various queues? (Bitfield: see META_WINDOW_IS_IN_QUEUE) */
+ guint is_in_queues : NUMBER_OF_QUEUES;
+
+ /* Used by keybindings.c */
+ guint keys_grabbed : 1; /* normal keybindings grabbed */
+ guint grab_on_frame : 1; /* grabs are on the frame */
+ guint all_keys_grabbed : 1; /* AnyKey grabbed */
+
+ /* Set if the reason for unmanaging the window is that
+ * it was withdrawn
+ */
+ guint withdrawn : 1;
+
+ /* TRUE if constrain_position should calc placement.
+ * only relevant if !window->placed
+ */
+ guint calc_placement : 1;
+
+ /* Transient parent is a root window */
+ guint transient_parent_is_root_window : 1;
+
+ /* Info on which props we got our attributes from */
+ guint using_net_wm_name : 1; /* vs. plain wm_name */
+ guint using_net_wm_visible_name : 1; /* tracked so we can clear it */
+ guint using_net_wm_icon_name : 1; /* vs. plain wm_icon_name */
+ guint using_net_wm_visible_icon_name : 1; /* tracked so we can clear it */
+
+ /* has a shape mask */
+ guint has_shape : 1;
+
+ /* icon props have changed */
+ guint need_reread_icon : 1;
+
+ /* if TRUE, window was maximized at start of current grab op */
+ guint shaken_loose : 1;
+
+ /* if TRUE we have a grab on the focus click buttons */
+ guint have_focus_click_grab : 1;
+
+ /* if TRUE, application is buggy and SYNC resizing is turned off */
+ guint disable_sync : 1;
+
+ /* Note: can be NULL */
+ GSList *struts;
+
+#ifdef HAVE_XSYNC
+ /* XSync update counter */
+ XSyncCounter sync_request_counter;
+ guint sync_request_serial;
+ GTimeVal sync_request_time;
+#endif
+
+ /* Number of UnmapNotify that are caused by us, if
+ * we get UnmapNotify with none pending then the client
+ * is withdrawing the window.
+ */
+ int unmaps_pending;
+
+ /* set to the most recent user-interaction event timestamp that we
+ know about for this window */
+ guint32 net_wm_user_time;
+
+ /* window that gets updated net_wm_user_time values */
+ Window user_time_window;
+
+ /* The size we set the window to last (i.e. what we believe
+ * to be its actual size on the server). The x, y are
+ * the actual server-side x,y so are relative to the frame
+ * (meaning that they just hold the frame width and height)
+ * or the root window (meaning they specify the location
+ * of the top left of the inner window) as appropriate.
+ */
+ MetaRectangle rect;
+
+ /* The geometry to restore when we unmaximize. The position is in
+ * root window coords, even if there's a frame, which contrasts with
+ * window->rect above. Note that this gives the position and size
+ * of the client window (i.e. ignoring the frame).
+ */
+ MetaRectangle saved_rect;
+
+ /* This is the geometry the window had after the last user-initiated
+ * move/resize operations. We use this whenever we are moving the
+ * implicitly (for example, if we move to avoid a panel, we can snap
+ * back to this position if the panel moves again). Note that this
+ * gives the position and size of the client window (i.e. ignoring
+ * the frame).
+ *
+ * Position valid if user_has_moved, size valid if user_has_resized
+ *
+ * Position always in root coords, unlike window->rect.
+ */
+ MetaRectangle user_rect;
+
+ /* Requested geometry */
+ int border_width;
+ /* x/y/w/h here get filled with ConfigureRequest values */
+ XSizeHints size_hints;
+
+ /* Managed by stack.c */
+ MetaStackLayer layer;
+ int stack_position; /* see comment in stack.h */
+
+ /* Current dialog open for this window */
+ int dialog_pid;
+
+ /* maintained by group.c */
+ MetaGroup *group;
+};
+
+/* These differ from window->has_foo_func in that they consider
+ * the dynamic window state such as "maximized", not just the
+ * window's type
+ */
+#define META_WINDOW_MAXIMIZED(w) ((w)->maximized_horizontally && \
+ (w)->maximized_vertically)
+#define META_WINDOW_MAXIMIZED_VERTICALLY(w) ((w)->maximized_vertically)
+#define META_WINDOW_MAXIMIZED_HORIZONTALLY(w) ((w)->maximized_horizontally)
+#define META_WINDOW_ALLOWS_MOVE(w) ((w)->has_move_func && !(w)->fullscreen)
+#define META_WINDOW_ALLOWS_RESIZE_EXCEPT_HINTS(w) ((w)->has_resize_func && !META_WINDOW_MAXIMIZED (w) && !(w)->fullscreen && !(w)->shaded)
+#define META_WINDOW_ALLOWS_RESIZE(w) (META_WINDOW_ALLOWS_RESIZE_EXCEPT_HINTS (w) && \
+ (((w)->size_hints.min_width < (w)->size_hints.max_width) || \
+ ((w)->size_hints.min_height < (w)->size_hints.max_height)))
+#define META_WINDOW_ALLOWS_HORIZONTAL_RESIZE(w) (META_WINDOW_ALLOWS_RESIZE_EXCEPT_HINTS (w) && (w)->size_hints.min_width < (w)->size_hints.max_width)
+#define META_WINDOW_ALLOWS_VERTICAL_RESIZE(w) (META_WINDOW_ALLOWS_RESIZE_EXCEPT_HINTS (w) && (w)->size_hints.min_height < (w)->size_hints.max_height)
+
+MetaWindow* meta_window_new (MetaDisplay *display,
+ Window xwindow,
+ gboolean must_be_viewable);
+MetaWindow* meta_window_new_with_attrs (MetaDisplay *display,
+ Window xwindow,
+ gboolean must_be_viewable,
+ XWindowAttributes *attrs);
+void meta_window_free (MetaWindow *window,
+ guint32 timestamp);
+void meta_window_calc_showing (MetaWindow *window);
+void meta_window_queue (MetaWindow *window,
+ guint queuebits);
+void meta_window_minimize (MetaWindow *window);
+void meta_window_unminimize (MetaWindow *window);
+void meta_window_maximize (MetaWindow *window,
+ MetaMaximizeFlags directions);
+void meta_window_maximize_internal (MetaWindow *window,
+ MetaMaximizeFlags directions,
+ MetaRectangle *saved_rect);
+void meta_window_unmaximize (MetaWindow *window,
+ MetaMaximizeFlags directions);
+void meta_window_make_above (MetaWindow *window);
+void meta_window_unmake_above (MetaWindow *window);
+void meta_window_shade (MetaWindow *window,
+ guint32 timestamp);
+void meta_window_unshade (MetaWindow *window,
+ guint32 timestamp);
+void meta_window_change_workspace (MetaWindow *window,
+ MetaWorkspace *workspace);
+void meta_window_stick (MetaWindow *window);
+void meta_window_unstick (MetaWindow *window);
+
+void meta_window_activate (MetaWindow *window,
+ guint32 current_time);
+void meta_window_activate_with_workspace (MetaWindow *window,
+ guint32 current_time,
+ MetaWorkspace *workspace);
+void meta_window_make_fullscreen_internal (MetaWindow *window);
+void meta_window_make_fullscreen (MetaWindow *window);
+void meta_window_unmake_fullscreen (MetaWindow *window);
+void meta_window_update_fullscreen_monitors (MetaWindow *window,
+ unsigned long top,
+ unsigned long bottom,
+ unsigned long left,
+ unsigned long right);
+
+/* args to move are window pos, not frame pos */
+void meta_window_move (MetaWindow *window,
+ gboolean user_op,
+ int root_x_nw,
+ int root_y_nw);
+void meta_window_resize (MetaWindow *window,
+ gboolean user_op,
+ int w,
+ int h);
+void meta_window_move_resize (MetaWindow *window,
+ gboolean user_op,
+ int root_x_nw,
+ int root_y_nw,
+ int w,
+ int h);
+void meta_window_resize_with_gravity (MetaWindow *window,
+ gboolean user_op,
+ int w,
+ int h,
+ int gravity);
+
+
+/* Return whether the window would be showing if we were on its workspace */
+gboolean meta_window_showing_on_its_workspace (MetaWindow *window);
+
+/* Return whether the window should be currently mapped */
+gboolean meta_window_should_be_showing (MetaWindow *window);
+
+/* See warning in window.c about this function */
+gboolean __window_is_terminal (MetaWindow *window);
+
+void meta_window_update_struts (MetaWindow *window);
+
+/* this gets root coords */
+void meta_window_get_position (MetaWindow *window,
+ int *x,
+ int *y);
+
+/* Gets root coords for x, y, width & height of client window; uses
+ * meta_window_get_position for x & y.
+ */
+void meta_window_get_client_root_coords (MetaWindow *window,
+ MetaRectangle *rect);
+
+/* gets position we need to set to stay in current position,
+ * assuming position will be gravity-compensated. i.e.
+ * this is the position a client would send in a configure
+ * request.
+ */
+void meta_window_get_gravity_position (MetaWindow *window,
+ int gravity,
+ int *x,
+ int *y);
+/* Get geometry for saving in the session; x/y are gravity
+ * position, and w/h are in resize inc above the base size.
+ */
+void meta_window_get_geometry (MetaWindow *window,
+ int *x,
+ int *y,
+ int *width,
+ int *height);
+void meta_window_get_outer_rect (const MetaWindow *window,
+ MetaRectangle *rect);
+void meta_window_get_xor_rect (MetaWindow *window,
+ const MetaRectangle *grab_wireframe_rect,
+ MetaRectangle *xor_rect);
+void meta_window_begin_wireframe (MetaWindow *window);
+void meta_window_update_wireframe (MetaWindow *window,
+ int x,
+ int y,
+ int width,
+ int height);
+void meta_window_end_wireframe (MetaWindow *window);
+
+void meta_window_delete (MetaWindow *window,
+ guint32 timestamp);
+void meta_window_kill (MetaWindow *window);
+void meta_window_focus (MetaWindow *window,
+ guint32 timestamp);
+void meta_window_raise (MetaWindow *window);
+void meta_window_lower (MetaWindow *window);
+
+void meta_window_update_unfocused_button_grabs (MetaWindow *window);
+
+/* Sends a client message */
+void meta_window_send_icccm_message (MetaWindow *window,
+ Atom atom,
+ guint32 timestamp);
+
+
+void meta_window_move_resize_request(MetaWindow *window,
+ guint value_mask,
+ int gravity,
+ int x,
+ int y,
+ int width,
+ int height);
+gboolean meta_window_configure_request (MetaWindow *window,
+ XEvent *event);
+gboolean meta_window_property_notify (MetaWindow *window,
+ XEvent *event);
+gboolean meta_window_client_message (MetaWindow *window,
+ XEvent *event);
+gboolean meta_window_notify_focus (MetaWindow *window,
+ XEvent *event);
+
+void meta_window_set_current_workspace_hint (MetaWindow *window);
+
+unsigned long meta_window_get_net_wm_desktop (MetaWindow *window);
+
+void meta_window_show_menu (MetaWindow *window,
+ int root_x,
+ int root_y,
+ int button,
+ guint32 timestamp);
+
+gboolean meta_window_titlebar_is_onscreen (MetaWindow *window);
+void meta_window_shove_titlebar_onscreen (MetaWindow *window);
+
+void meta_window_set_gravity (MetaWindow *window,
+ int gravity);
+
+void meta_window_handle_mouse_grab_op_event (MetaWindow *window,
+ XEvent *event);
+
+GList* meta_window_get_workspaces (MetaWindow *window);
+
+gboolean meta_window_located_on_workspace (MetaWindow *window,
+ MetaWorkspace *workspace);
+
+void meta_window_get_work_area_current_xinerama (MetaWindow *window,
+ MetaRectangle *area);
+void meta_window_get_work_area_for_xinerama (MetaWindow *window,
+ int which_xinerama,
+ MetaRectangle *area);
+void meta_window_get_work_area_all_xineramas (MetaWindow *window,
+ MetaRectangle *area);
+
+
+gboolean meta_window_same_application (MetaWindow *window,
+ MetaWindow *other_window);
+
+#define META_WINDOW_IN_NORMAL_TAB_CHAIN_TYPE(w) \
+ ((w)->type != META_WINDOW_DOCK && (w)->type != META_WINDOW_DESKTOP)
+#define META_WINDOW_IN_NORMAL_TAB_CHAIN(w) \
+ (((w)->input || (w)->take_focus ) && META_WINDOW_IN_NORMAL_TAB_CHAIN_TYPE (w) && (!(w)->skip_taskbar))
+#define META_WINDOW_IN_DOCK_TAB_CHAIN(w) \
+ (((w)->input || (w)->take_focus) && (! META_WINDOW_IN_NORMAL_TAB_CHAIN_TYPE (w) || (w)->skip_taskbar))
+#define META_WINDOW_IN_GROUP_TAB_CHAIN(w, g) \
+ (((w)->input || (w)->take_focus) && (!g || meta_window_get_group(w)==g))
+
+void meta_window_refresh_resize_popup (MetaWindow *window);
+
+void meta_window_free_delete_dialog (MetaWindow *window);
+
+void meta_window_foreach_transient (MetaWindow *window,
+ MetaWindowForeachFunc func,
+ void *data);
+gboolean meta_window_is_ancestor_of_transient (MetaWindow *window,
+ MetaWindow *transient);
+void meta_window_foreach_ancestor (MetaWindow *window,
+ MetaWindowForeachFunc func,
+ void *data);
+MetaWindow* meta_window_find_root_ancestor (MetaWindow *window);
+
+
+void meta_window_begin_grab_op (MetaWindow *window,
+ MetaGrabOp op,
+ gboolean frame_action,
+ guint32 timestamp);
+
+void meta_window_update_keyboard_resize (MetaWindow *window,
+ gboolean update_cursor);
+void meta_window_update_keyboard_move (MetaWindow *window);
+
+void meta_window_update_layer (MetaWindow *window);
+
+gboolean meta_window_get_icon_geometry (MetaWindow *window,
+ MetaRectangle *rect);
+
+const char* meta_window_get_startup_id (MetaWindow *window);
+
+void meta_window_recalc_features (MetaWindow *window);
+void meta_window_recalc_window_type (MetaWindow *window);
+
+void meta_window_stack_just_below (MetaWindow *window,
+ MetaWindow *below_this_one);
+
+void meta_window_set_user_time (MetaWindow *window,
+ guint32 timestamp);
+
+void meta_window_set_demands_attention (MetaWindow *window);
+
+void meta_window_unset_demands_attention (MetaWindow *window);
+
+void meta_window_update_icon_now (MetaWindow *window);
+
+void meta_window_update_role (MetaWindow *window);
+void meta_window_update_net_wm_type (MetaWindow *window);
+
+#endif
diff --git a/src/core/window-props.c b/src/core/window-props.c
new file mode 100644
index 00000000..b7b3e12d
--- /dev/null
+++ b/src/core/window-props.c
@@ -0,0 +1,1553 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file window-props.c MetaWindow property handling
+ *
+ * A system which can inspect sets of properties of given windows
+ * and take appropriate action given their values.
+ *
+ * Note that all the meta_window_reload_propert* functions require a
+ * round trip to the server.
+ *
+ * The guts of this system are in meta_display_init_window_prop_hooks().
+ * Reading this function will give you insight into how this all fits
+ * together.
+ */
+
+/*
+ * Copyright (C) 2001, 2002, 2003 Red Hat, Inc.
+ * Copyright (C) 2004, 2005 Elijah Newren
+ * Copyright (C) 2009 Thomas Thurman
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#define _GNU_SOURCE
+#define _SVID_SOURCE /* for gethostname() */
+
+#include <config.h>
+#include "window-props.h"
+#include "errors.h"
+#include "xprops.h"
+#include "frame-private.h"
+#include "group.h"
+#include <X11/Xatom.h>
+#include <unistd.h>
+#include <string.h>
+#include <errno.h>
+#include <sys/types.h>
+#include <pwd.h>
+
+#ifdef HAVE_GTOP
+#include <glibtop/procuid.h>
+#include <errno.h>
+#include <pwd.h>
+#endif /* HAVE_GTOP */
+
+#ifndef HOST_NAME_MAX
+/* Solaris headers apparently don't define this so do so manually; #326745 */
+#define HOST_NAME_MAX 255
+#endif
+
+typedef void (* ReloadValueFunc) (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial);
+
+typedef struct MetaWindowPropHooks
+{
+ Atom property;
+ MetaPropValueType type;
+ ReloadValueFunc reload_func;
+} MetaWindowPropHooks;
+
+static MetaWindowPropHooks* find_hooks (MetaDisplay *display,
+ Atom property);
+
+
+void
+meta_window_reload_property (MetaWindow *window,
+ Atom property,
+ gboolean initial)
+{
+ meta_window_reload_properties (window, &property, 1, initial);
+}
+
+void
+meta_window_reload_properties (MetaWindow *window,
+ const Atom *properties,
+ int n_properties,
+ gboolean initial)
+{
+ meta_window_reload_properties_from_xwindow (window,
+ window->xwindow,
+ properties,
+ n_properties,
+ initial);
+}
+
+void
+meta_window_reload_property_from_xwindow (MetaWindow *window,
+ Window xwindow,
+ Atom property,
+ gboolean initial)
+{
+ meta_window_reload_properties_from_xwindow (window, xwindow, &property, 1,
+ initial);
+}
+
+void
+meta_window_reload_properties_from_xwindow (MetaWindow *window,
+ Window xwindow,
+ const Atom *properties,
+ int n_properties,
+ gboolean initial)
+{
+ int i;
+ MetaPropValue *values;
+
+ g_return_if_fail (properties != NULL);
+ g_return_if_fail (n_properties > 0);
+
+ values = g_new0 (MetaPropValue, n_properties);
+
+ for (i=0; i<n_properties; i++)
+ {
+ MetaWindowPropHooks *hooks = find_hooks (window->display,
+ properties[i]);
+
+ if (!hooks || hooks->type == META_PROP_VALUE_INVALID)
+ {
+ values[i].type = META_PROP_VALUE_INVALID;
+ values[i].atom = None;
+ }
+ else
+ {
+ values[i].type = hooks->type;
+ values[i].atom = properties[i];
+ }
+ }
+
+ meta_prop_get_values (window->display, xwindow,
+ values, n_properties);
+
+ for (i=0; i<n_properties; i++)
+ {
+ MetaWindowPropHooks *hooks = find_hooks (window->display,
+ properties[i]);
+
+ if (hooks && hooks->reload_func != NULL)
+ (* hooks->reload_func) (window, &values[i], initial);
+ }
+
+ meta_prop_free_values (values, n_properties);
+
+ g_free (values);
+}
+
+static void
+reload_wm_client_machine (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ g_free (window->wm_client_machine);
+ window->wm_client_machine = NULL;
+
+ if (value->type != META_PROP_VALUE_INVALID)
+ window->wm_client_machine = g_strdup (value->v.str);
+
+ meta_verbose ("Window has client machine \"%s\"\n",
+ window->wm_client_machine ? window->wm_client_machine : "unset");
+}
+
+static void
+complain_about_broken_client (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ meta_warning ("Broken client! Window %s changed client leader window or SM client ID\n",
+ window->desc);
+}
+
+static void
+reload_net_wm_window_type (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ meta_window_update_net_wm_type (window);
+}
+
+static void
+reload_icon (MetaWindow *window,
+ Atom atom)
+{
+ meta_icon_cache_property_changed (&window->icon_cache,
+ window->display,
+ atom);
+ meta_window_queue(window, META_QUEUE_UPDATE_ICON);
+}
+
+static void
+reload_net_wm_icon (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ reload_icon (window, window->display->atom__NET_WM_ICON);
+}
+
+static void
+reload_kwm_win_icon (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ reload_icon (window, window->display->atom__KWM_WIN_ICON);
+}
+
+static void
+reload_struts (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ meta_window_update_struts (window);
+}
+
+static void
+reload_wm_window_role (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ meta_window_update_role (window);
+}
+
+static void
+reload_net_wm_pid (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+ gulong cardinal = (int) value->v.cardinal;
+
+ if (cardinal <= 0)
+ meta_warning (_("Application set a bogus _NET_WM_PID %lu\n"),
+ cardinal);
+ else
+ {
+ window->net_wm_pid = cardinal;
+ meta_verbose ("Window has _NET_WM_PID %d\n",
+ window->net_wm_pid);
+ }
+ }
+}
+
+static void
+reload_net_wm_user_time (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+ gulong cardinal = value->v.cardinal;
+ meta_window_set_user_time (window, cardinal);
+ }
+}
+
+static void
+reload_net_wm_user_time_window (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+ /* Unregister old NET_WM_USER_TIME_WINDOW */
+ if (window->user_time_window != None)
+ {
+ /* See the comment to the meta_display_register_x_window call below. */
+ meta_display_unregister_x_window (window->display,
+ window->user_time_window);
+ /* Don't get events on not-managed windows */
+ XSelectInput (window->display->xdisplay,
+ window->user_time_window,
+ NoEventMask);
+ }
+
+
+ /* Obtain the new NET_WM_USER_TIME_WINDOW and register it */
+ window->user_time_window = value->v.xwindow;
+ if (window->user_time_window != None)
+ {
+ /* Kind of a hack; display.c:event_callback() ignores events
+ * for unknown windows. We make window->user_time_window
+ * known by registering it with window (despite the fact
+ * that window->xwindow is already registered with window).
+ * This basically means that property notifies to either the
+ * window->user_time_window or window->xwindow will be
+ * treated identically and will result in functions for
+ * window being called to update it. Maybe we should ignore
+ * any property notifies to window->user_time_window other
+ * than atom__NET_WM_USER_TIME ones, but I just don't care
+ * and it's not specified in the spec anyway.
+ */
+ meta_display_register_x_window (window->display,
+ &window->user_time_window,
+ window);
+ /* Just listen for property notify events */
+ XSelectInput (window->display->xdisplay,
+ window->user_time_window,
+ PropertyChangeMask);
+
+ /* Manually load the _NET_WM_USER_TIME field from the given window
+ * at this time as well. If the user_time_window ever broadens in
+ * scope, we'll probably want to load all relevant properties here.
+ */
+ meta_window_reload_property_from_xwindow (
+ window,
+ window->user_time_window,
+ window->display->atom__NET_WM_USER_TIME,
+ initial);
+ }
+ }
+}
+
+/**
+ * Finds who owns a particular process, if we can.
+ *
+ * \param process The process's ID.
+ * \result Set to the ID of the user, if we returned true.
+ *
+ * \result True if we could tell.
+ */
+static gboolean
+owner_of_process (pid_t process, uid_t *result)
+{
+#ifdef HAVE_GTOP
+ glibtop_proc_uid process_details;
+
+ glibtop_get_proc_uid (&process_details, process);
+
+ *result = process_details.uid;
+ return TRUE;
+#else
+ /* I don't know, maybe we could do something hairy like see whether
+ * /proc/$PID exists and who owns it, in case they have procfs.
+ */
+ return FALSE;
+#endif /* HAVE_GTOP */
+}
+
+#define MAX_TITLE_LENGTH 512
+
+/**
+ * Called by set_window_title and set_icon_title to set the value of
+ * *target to title. It required and atom is set, it will update the
+ * appropriate property.
+ *
+ * Returns TRUE if a new title was set.
+ */
+static gboolean
+set_title_text (MetaWindow *window,
+ gboolean previous_was_modified,
+ const char *title,
+ Atom atom,
+ char **target)
+{
+ char hostname[HOST_NAME_MAX + 1];
+ gboolean modified = FALSE;
+
+ if (!target)
+ return FALSE;
+
+ g_free (*target);
+
+ if (!title)
+ *target = g_strdup ("");
+ else if (g_utf8_strlen (title, MAX_TITLE_LENGTH + 1) > MAX_TITLE_LENGTH)
+ {
+ *target = meta_g_utf8_strndup (title, MAX_TITLE_LENGTH);
+ modified = TRUE;
+ }
+ /* if WM_CLIENT_MACHINE indicates this machine is on a remote host
+ * let's place that hostname in the title */
+ else if (window->wm_client_machine &&
+ !gethostname (hostname, HOST_NAME_MAX + 1) &&
+ strcmp (hostname, window->wm_client_machine))
+ {
+ /* Translators: the title of a window from another machine */
+ *target = g_strdup_printf (_("%s (on %s)"),
+ title, window->wm_client_machine);
+ modified = TRUE;
+ }
+ else if (window->net_wm_pid != -1)
+ {
+ /* We know the process which owns this window; perhaps we can
+ * find out the name of its owner (if it's not us).
+ */
+
+ char *found_name = NULL;
+
+ uid_t window_owner = 0;
+ gboolean window_owner_known =
+ owner_of_process (window->net_wm_pid, &window_owner);
+
+ /* Assume a window with unknown ownership is ours (call it usufruct!) */
+ gboolean window_owner_is_us =
+ !window_owner_known || window_owner==getuid ();
+
+ if (window_owner_is_us)
+ {
+ /* we own it, so fall back to the simple case */
+ *target = g_strdup (title);
+ }
+ else
+ {
+ /* it belongs to window_owner. So what's their name? */
+
+ if (window_owner==0)
+ {
+ /* Simple case-- don't bother to look it up. It's root. */
+ *target = g_strdup_printf (_("%s (as superuser)"),
+ title);
+ }
+ else
+ {
+ /* Okay, let's look up the name. */
+ struct passwd *pwd;
+
+ errno = 0;
+ pwd = getpwuid (window_owner);
+ if (errno==0 && pwd!=NULL)
+ {
+ found_name = pwd->pw_name;
+ }
+
+ if (found_name)
+ /* Translators: the title of a window owned by another user
+ * on this machine */
+ *target = g_strdup_printf (_("%s (as %s)"),
+ title,
+ found_name);
+ else
+ /* Translators: the title of a window owned by another user
+ * on this machine, whose name we don't know */
+ *target = g_strdup_printf (_("%s (as another user)"),
+ title);
+ }
+ /* either way we changed it */
+ modified = TRUE;
+
+ }
+ }
+ else
+ *target = g_strdup (title);
+
+ if (modified && atom != None)
+ meta_prop_set_utf8_string_hint (window->display,
+ window->xwindow,
+ atom, *target);
+
+ /* Bug 330671 -- Don't forget to clear _NET_WM_VISIBLE_(ICON_)NAME */
+ if (!modified && previous_was_modified)
+ {
+ meta_error_trap_push (window->display);
+ XDeleteProperty (window->display->xdisplay,
+ window->xwindow,
+ atom);
+ meta_error_trap_pop (window->display, FALSE);
+ }
+
+ return modified;
+}
+
+static void
+set_window_title (MetaWindow *window,
+ const char *title)
+{
+ char *str;
+
+ gboolean modified =
+ set_title_text (window,
+ window->using_net_wm_visible_name,
+ title,
+ window->display->atom__NET_WM_VISIBLE_NAME,
+ &window->title);
+ window->using_net_wm_visible_name = modified;
+
+ /* strndup is a hack since GNU libc has broken %.10s */
+ str = g_strndup (window->title, 10);
+ g_free (window->desc);
+ window->desc = g_strdup_printf ("0x%lx (%s)", window->xwindow, str);
+ g_free (str);
+
+ if (window->frame)
+ meta_ui_set_frame_title (window->screen->ui,
+ window->frame->xwindow,
+ window->title);
+}
+
+static void
+reload_net_wm_name (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+ set_window_title (window, value->v.str);
+ window->using_net_wm_name = TRUE;
+
+ meta_verbose ("Using _NET_WM_NAME for new title of %s: \"%s\"\n",
+ window->desc, window->title);
+ }
+ else
+ {
+ set_window_title (window, NULL);
+ window->using_net_wm_name = FALSE;
+ if (!initial)
+ meta_window_reload_property (window, XA_WM_NAME, FALSE);
+ }
+}
+
+static void
+reload_wm_name (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ if (window->using_net_wm_name)
+ {
+ meta_verbose ("Ignoring WM_NAME \"%s\" as _NET_WM_NAME is set\n",
+ value->v.str);
+ return;
+ }
+
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+ set_window_title (window, value->v.str);
+
+ meta_verbose ("Using WM_NAME for new title of %s: \"%s\"\n",
+ window->desc, window->title);
+ }
+ else
+ {
+ set_window_title (window, NULL);
+ }
+}
+
+static void
+set_icon_title (MetaWindow *window,
+ const char *title)
+{
+ gboolean modified =
+ set_title_text (window,
+ window->using_net_wm_visible_icon_name,
+ title,
+ window->display->atom__NET_WM_VISIBLE_ICON_NAME,
+ &window->icon_name);
+ window->using_net_wm_visible_icon_name = modified;
+}
+
+static void
+reload_net_wm_icon_name (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+ set_icon_title (window, value->v.str);
+ window->using_net_wm_icon_name = TRUE;
+
+ meta_verbose ("Using _NET_WM_ICON_NAME for new title of %s: \"%s\"\n",
+ window->desc, window->title);
+ }
+ else
+ {
+ set_icon_title (window, NULL);
+ window->using_net_wm_icon_name = FALSE;
+ if (!initial)
+ meta_window_reload_property (window, XA_WM_ICON_NAME, FALSE);
+ }
+}
+
+static void
+reload_wm_icon_name (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ if (window->using_net_wm_icon_name)
+ {
+ meta_verbose ("Ignoring WM_ICON_NAME \"%s\" as _NET_WM_ICON_NAME is set\n",
+ value->v.str);
+ return;
+ }
+
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+ set_icon_title (window, value->v.str);
+
+ meta_verbose ("Using WM_ICON_NAME for new title of %s: \"%s\"\n",
+ window->desc, window->title);
+ }
+ else
+ {
+ set_icon_title (window, NULL);
+ }
+}
+
+static void
+reload_net_wm_state (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ int i;
+
+ /* We know this is only an initial window creation,
+ * clients don't change the property.
+ */
+
+ if (!initial) {
+ /* no, they DON'T change the property */
+ meta_verbose ("Ignoring _NET_WM_STATE: we should be the one who set "
+ "the property in the first place\n");
+ return;
+ }
+
+ window->shaded = FALSE;
+ window->maximized_horizontally = FALSE;
+ window->maximized_vertically = FALSE;
+ window->fullscreen = FALSE;
+ window->wm_state_modal = FALSE;
+ window->wm_state_skip_taskbar = FALSE;
+ window->wm_state_skip_pager = FALSE;
+ window->wm_state_above = FALSE;
+ window->wm_state_below = FALSE;
+ window->wm_state_demands_attention = FALSE;
+
+ if (value->type == META_PROP_VALUE_INVALID)
+ return;
+
+ i = 0;
+ while (i < value->v.atom_list.n_atoms)
+ {
+ if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_SHADED)
+ window->shaded = TRUE;
+ else if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_MAXIMIZED_HORZ)
+ window->maximize_horizontally_after_placement = TRUE;
+ else if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_MAXIMIZED_VERT)
+ window->maximize_vertically_after_placement = TRUE;
+ else if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_HIDDEN)
+ window->minimize_after_placement = TRUE;
+ else if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_MODAL)
+ window->wm_state_modal = TRUE;
+ else if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_SKIP_TASKBAR)
+ window->wm_state_skip_taskbar = TRUE;
+ else if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_SKIP_PAGER)
+ window->wm_state_skip_pager = TRUE;
+ else if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_FULLSCREEN)
+ window->fullscreen_after_placement = TRUE;
+ else if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_ABOVE)
+ window->wm_state_above = TRUE;
+ else if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_BELOW)
+ window->wm_state_below = TRUE;
+ else if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_DEMANDS_ATTENTION)
+ window->wm_state_demands_attention = TRUE;
+ else if (value->v.atom_list.atoms[i] == window->display->atom__NET_WM_STATE_STICKY)
+ window->on_all_workspaces = TRUE;
+
+ ++i;
+ }
+
+ meta_verbose ("Reloaded _NET_WM_STATE for %s\n",
+ window->desc);
+
+ meta_window_recalc_window_type (window);
+}
+
+static void
+reload_mwm_hints (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ MotifWmHints *hints;
+
+ window->mwm_decorated = TRUE;
+ window->mwm_border_only = FALSE;
+ window->mwm_has_close_func = TRUE;
+ window->mwm_has_minimize_func = TRUE;
+ window->mwm_has_maximize_func = TRUE;
+ window->mwm_has_move_func = TRUE;
+ window->mwm_has_resize_func = TRUE;
+
+ if (value->type == META_PROP_VALUE_INVALID)
+ {
+ meta_verbose ("Window %s has no MWM hints\n", window->desc);
+ meta_window_recalc_features (window);
+ return;
+ }
+
+ hints = value->v.motif_hints;
+
+ /* We support those MWM hints deemed non-stupid */
+
+ meta_verbose ("Window %s has MWM hints\n",
+ window->desc);
+
+ if (hints->flags & MWM_HINTS_DECORATIONS)
+ {
+ meta_verbose ("Window %s sets MWM_HINTS_DECORATIONS 0x%lx\n",
+ window->desc, hints->decorations);
+
+ if (hints->decorations == 0)
+ window->mwm_decorated = FALSE;
+ /* some input methods use this */
+ else if (hints->decorations == MWM_DECOR_BORDER)
+ window->mwm_border_only = TRUE;
+ }
+ else
+ meta_verbose ("Decorations flag unset\n");
+
+ if (hints->flags & MWM_HINTS_FUNCTIONS)
+ {
+ gboolean toggle_value;
+
+ meta_verbose ("Window %s sets MWM_HINTS_FUNCTIONS 0x%lx\n",
+ window->desc, hints->functions);
+
+ /* If _ALL is specified, then other flags indicate what to turn off;
+ * if ALL is not specified, flags are what to turn on.
+ * at least, I think so
+ */
+
+ if ((hints->functions & MWM_FUNC_ALL) == 0)
+ {
+ toggle_value = TRUE;
+
+ meta_verbose ("Window %s disables all funcs then reenables some\n",
+ window->desc);
+ window->mwm_has_close_func = FALSE;
+ window->mwm_has_minimize_func = FALSE;
+ window->mwm_has_maximize_func = FALSE;
+ window->mwm_has_move_func = FALSE;
+ window->mwm_has_resize_func = FALSE;
+ }
+ else
+ {
+ meta_verbose ("Window %s enables all funcs then disables some\n",
+ window->desc);
+ toggle_value = FALSE;
+ }
+
+ if ((hints->functions & MWM_FUNC_CLOSE) != 0)
+ {
+ meta_verbose ("Window %s toggles close via MWM hints\n",
+ window->desc);
+ window->mwm_has_close_func = toggle_value;
+ }
+ if ((hints->functions & MWM_FUNC_MINIMIZE) != 0)
+ {
+ meta_verbose ("Window %s toggles minimize via MWM hints\n",
+ window->desc);
+ window->mwm_has_minimize_func = toggle_value;
+ }
+ if ((hints->functions & MWM_FUNC_MAXIMIZE) != 0)
+ {
+ meta_verbose ("Window %s toggles maximize via MWM hints\n",
+ window->desc);
+ window->mwm_has_maximize_func = toggle_value;
+ }
+ if ((hints->functions & MWM_FUNC_MOVE) != 0)
+ {
+ meta_verbose ("Window %s toggles move via MWM hints\n",
+ window->desc);
+ window->mwm_has_move_func = toggle_value;
+ }
+ if ((hints->functions & MWM_FUNC_RESIZE) != 0)
+ {
+ meta_verbose ("Window %s toggles resize via MWM hints\n",
+ window->desc);
+ window->mwm_has_resize_func = toggle_value;
+ }
+ }
+ else
+ meta_verbose ("Functions flag unset\n");
+
+ meta_window_recalc_features (window);
+
+ /* We do all this anyhow at the end of meta_window_new() */
+ if (!window->constructing)
+ {
+ if (window->decorated)
+ meta_window_ensure_frame (window);
+ else
+ meta_window_destroy_frame (window);
+
+ meta_window_queue (window,
+ META_QUEUE_MOVE_RESIZE |
+ /* because ensure/destroy frame may unmap: */
+ META_QUEUE_CALC_SHOWING);
+ }
+}
+
+static void
+reload_wm_class (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ if (window->res_class)
+ g_free (window->res_class);
+ if (window->res_name)
+ g_free (window->res_name);
+
+ window->res_class = NULL;
+ window->res_name = NULL;
+
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+ if (value->v.class_hint.res_name)
+ window->res_name = g_strdup (value->v.class_hint.res_name);
+
+ if (value->v.class_hint.res_class)
+ window->res_class = g_strdup (value->v.class_hint.res_class);
+ }
+
+ meta_verbose ("Window %s class: '%s' name: '%s'\n",
+ window->desc,
+ window->res_class ? window->res_class : "none",
+ window->res_name ? window->res_name : "none");
+}
+
+static void
+reload_net_wm_desktop (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+ window->initial_workspace_set = TRUE;
+ window->initial_workspace = value->v.cardinal;
+ meta_topic (META_DEBUG_PLACEMENT,
+ "Read initial workspace prop %d for %s\n",
+ window->initial_workspace, window->desc);
+ }
+}
+
+static void
+reload_net_startup_id (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ guint32 timestamp = window->net_wm_user_time;
+ MetaWorkspace *workspace = NULL;
+
+ g_free (window->startup_id);
+
+ if (value->type != META_PROP_VALUE_INVALID)
+ window->startup_id = g_strdup (value->v.str);
+ else
+ window->startup_id = NULL;
+
+ /* Update timestamp and workspace on a running window */
+ if (!window->constructing)
+ {
+ window->initial_timestamp_set = 0;
+ window->initial_workspace_set = 0;
+
+ if (meta_screen_apply_startup_properties (window->screen, window))
+ {
+
+ if (window->initial_timestamp_set)
+ timestamp = window->initial_timestamp;
+ if (window->initial_workspace_set)
+ workspace = meta_screen_get_workspace_by_index (window->screen, window->initial_workspace);
+
+ meta_window_activate_with_workspace (window, timestamp, workspace);
+ }
+ }
+
+ meta_verbose ("New _NET_STARTUP_ID \"%s\" for %s\n",
+ window->startup_id ? window->startup_id : "unset",
+ window->desc);
+}
+
+static void
+reload_update_counter (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+#ifdef HAVE_XSYNC
+ XSyncCounter counter = value->v.xcounter;
+
+ window->sync_request_counter = counter;
+ meta_verbose ("Window has _NET_WM_SYNC_REQUEST_COUNTER 0x%lx\n",
+ window->sync_request_counter);
+#endif
+ }
+}
+
+#define FLAG_TOGGLED_ON(old,new,flag) \
+ (((old)->flags & (flag)) == 0 && \
+ ((new)->flags & (flag)) != 0)
+
+#define FLAG_TOGGLED_OFF(old,new,flag) \
+ (((old)->flags & (flag)) != 0 && \
+ ((new)->flags & (flag)) == 0)
+
+#define FLAG_CHANGED(old,new,flag) \
+ (FLAG_TOGGLED_ON(old,new,flag) || FLAG_TOGGLED_OFF(old,new,flag))
+
+static void
+spew_size_hints_differences (const XSizeHints *old,
+ const XSizeHints *new)
+{
+ if (FLAG_CHANGED (old, new, USPosition))
+ meta_topic (META_DEBUG_GEOMETRY, "XSizeHints: USPosition now %s\n",
+ FLAG_TOGGLED_ON (old, new, USPosition) ? "set" : "unset");
+ if (FLAG_CHANGED (old, new, USSize))
+ meta_topic (META_DEBUG_GEOMETRY, "XSizeHints: USSize now %s\n",
+ FLAG_TOGGLED_ON (old, new, USSize) ? "set" : "unset");
+ if (FLAG_CHANGED (old, new, PPosition))
+ meta_topic (META_DEBUG_GEOMETRY, "XSizeHints: PPosition now %s\n",
+ FLAG_TOGGLED_ON (old, new, PPosition) ? "set" : "unset");
+ if (FLAG_CHANGED (old, new, PSize))
+ meta_topic (META_DEBUG_GEOMETRY, "XSizeHints: PSize now %s\n",
+ FLAG_TOGGLED_ON (old, new, PSize) ? "set" : "unset");
+ if (FLAG_CHANGED (old, new, PMinSize))
+ meta_topic (META_DEBUG_GEOMETRY, "XSizeHints: PMinSize now %s (%d x %d -> %d x %d)\n",
+ FLAG_TOGGLED_ON (old, new, PMinSize) ? "set" : "unset",
+ old->min_width, old->min_height,
+ new->min_width, new->min_height);
+ if (FLAG_CHANGED (old, new, PMaxSize))
+ meta_topic (META_DEBUG_GEOMETRY, "XSizeHints: PMaxSize now %s (%d x %d -> %d x %d)\n",
+ FLAG_TOGGLED_ON (old, new, PMaxSize) ? "set" : "unset",
+ old->max_width, old->max_height,
+ new->max_width, new->max_height);
+ if (FLAG_CHANGED (old, new, PResizeInc))
+ meta_topic (META_DEBUG_GEOMETRY, "XSizeHints: PResizeInc now %s (width_inc %d -> %d height_inc %d -> %d)\n",
+ FLAG_TOGGLED_ON (old, new, PResizeInc) ? "set" : "unset",
+ old->width_inc, new->width_inc,
+ old->height_inc, new->height_inc);
+ if (FLAG_CHANGED (old, new, PAspect))
+ meta_topic (META_DEBUG_GEOMETRY, "XSizeHints: PAspect now %s (min %d/%d -> %d/%d max %d/%d -> %d/%d)\n",
+ FLAG_TOGGLED_ON (old, new, PAspect) ? "set" : "unset",
+ old->min_aspect.x, old->min_aspect.y,
+ new->min_aspect.x, new->min_aspect.y,
+ old->max_aspect.x, old->max_aspect.y,
+ new->max_aspect.x, new->max_aspect.y);
+ if (FLAG_CHANGED (old, new, PBaseSize))
+ meta_topic (META_DEBUG_GEOMETRY, "XSizeHints: PBaseSize now %s (%d x %d -> %d x %d)\n",
+ FLAG_TOGGLED_ON (old, new, PBaseSize) ? "set" : "unset",
+ old->base_width, old->base_height,
+ new->base_width, new->base_height);
+ if (FLAG_CHANGED (old, new, PWinGravity))
+ meta_topic (META_DEBUG_GEOMETRY, "XSizeHints: PWinGravity now %s (%d -> %d)\n",
+ FLAG_TOGGLED_ON (old, new, PWinGravity) ? "set" : "unset",
+ old->win_gravity, new->win_gravity);
+}
+
+void
+meta_set_normal_hints (MetaWindow *window,
+ XSizeHints *hints)
+{
+ int x, y, w, h;
+ double minr, maxr;
+ /* Some convenience vars */
+ int minw, minh, maxw, maxh; /* min/max width/height */
+ int basew, baseh, winc, hinc; /* base width/height, width/height increment */
+
+ /* Save the last ConfigureRequest, which we put here.
+ * Values here set in the hints are supposed to
+ * be ignored.
+ */
+ x = window->size_hints.x;
+ y = window->size_hints.y;
+ w = window->size_hints.width;
+ h = window->size_hints.height;
+
+ /* as far as I can tell, value->v.size_hints.flags is just to
+ * check whether we had old-style normal hints without gravity,
+ * base size as returned by XGetNormalHints(), so we don't
+ * really use it as we fixup window->size_hints to have those
+ * fields if they're missing.
+ */
+
+ /*
+ * When the window is first created, NULL hints will
+ * be passed in which will initialize all of the fields
+ * as if flags were zero
+ */
+ if (hints)
+ window->size_hints = *hints;
+ else
+ window->size_hints.flags = 0;
+
+ /* Put back saved ConfigureRequest. */
+ window->size_hints.x = x;
+ window->size_hints.y = y;
+ window->size_hints.width = w;
+ window->size_hints.height = h;
+
+ /* Get base size hints */
+ if (window->size_hints.flags & PBaseSize)
+ {
+ meta_topic (META_DEBUG_GEOMETRY, "Window %s sets base size %d x %d\n",
+ window->desc,
+ window->size_hints.base_width,
+ window->size_hints.base_height);
+ }
+ else if (window->size_hints.flags & PMinSize)
+ {
+ window->size_hints.base_width = window->size_hints.min_width;
+ window->size_hints.base_height = window->size_hints.min_height;
+ }
+ else
+ {
+ window->size_hints.base_width = 0;
+ window->size_hints.base_height = 0;
+ }
+ window->size_hints.flags |= PBaseSize;
+
+ /* Get min size hints */
+ if (window->size_hints.flags & PMinSize)
+ {
+ meta_topic (META_DEBUG_GEOMETRY, "Window %s sets min size %d x %d\n",
+ window->desc,
+ window->size_hints.min_width,
+ window->size_hints.min_height);
+ }
+ else if (window->size_hints.flags & PBaseSize)
+ {
+ window->size_hints.min_width = window->size_hints.base_width;
+ window->size_hints.min_height = window->size_hints.base_height;
+ }
+ else
+ {
+ window->size_hints.min_width = 0;
+ window->size_hints.min_height = 0;
+ }
+ window->size_hints.flags |= PMinSize;
+
+ /* Get max size hints */
+ if (window->size_hints.flags & PMaxSize)
+ {
+ meta_topic (META_DEBUG_GEOMETRY, "Window %s sets max size %d x %d\n",
+ window->desc,
+ window->size_hints.max_width,
+ window->size_hints.max_height);
+ }
+ else
+ {
+ window->size_hints.max_width = G_MAXINT;
+ window->size_hints.max_height = G_MAXINT;
+ window->size_hints.flags |= PMaxSize;
+ }
+
+ /* Get resize increment hints */
+ if (window->size_hints.flags & PResizeInc)
+ {
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s sets resize width inc: %d height inc: %d\n",
+ window->desc,
+ window->size_hints.width_inc,
+ window->size_hints.height_inc);
+ }
+ else
+ {
+ window->size_hints.width_inc = 1;
+ window->size_hints.height_inc = 1;
+ window->size_hints.flags |= PResizeInc;
+ }
+
+ /* Get aspect ratio hints */
+ if (window->size_hints.flags & PAspect)
+ {
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s sets min_aspect: %d/%d max_aspect: %d/%d\n",
+ window->desc,
+ window->size_hints.min_aspect.x,
+ window->size_hints.min_aspect.y,
+ window->size_hints.max_aspect.x,
+ window->size_hints.max_aspect.y);
+ }
+ else
+ {
+ window->size_hints.min_aspect.x = 1;
+ window->size_hints.min_aspect.y = G_MAXINT;
+ window->size_hints.max_aspect.x = G_MAXINT;
+ window->size_hints.max_aspect.y = 1;
+ window->size_hints.flags |= PAspect;
+ }
+
+ /* Get gravity hint */
+ if (window->size_hints.flags & PWinGravity)
+ {
+ meta_topic (META_DEBUG_GEOMETRY, "Window %s sets gravity %d\n",
+ window->desc,
+ window->size_hints.win_gravity);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s doesn't set gravity, using NW\n",
+ window->desc);
+ window->size_hints.win_gravity = NorthWestGravity;
+ window->size_hints.flags |= PWinGravity;
+ }
+
+ /*** Lots of sanity checking ***/
+
+ /* Verify all min & max hints are at least 1 pixel */
+ if (window->size_hints.min_width < 1)
+ {
+ /* someone is on crack */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s sets min width to 0, which makes no sense\n",
+ window->desc);
+ window->size_hints.min_width = 1;
+ }
+ if (window->size_hints.max_width < 1)
+ {
+ /* another cracksmoker */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s sets max width to 0, which makes no sense\n",
+ window->desc);
+ window->size_hints.max_width = 1;
+ }
+ if (window->size_hints.min_height < 1)
+ {
+ /* another cracksmoker */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s sets min height to 0, which makes no sense\n",
+ window->desc);
+ window->size_hints.min_height = 1;
+ }
+ if (window->size_hints.max_height < 1)
+ {
+ /* another cracksmoker */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s sets max height to 0, which makes no sense\n",
+ window->desc);
+ window->size_hints.max_height = 1;
+ }
+
+ /* Verify size increment hints are at least 1 pixel */
+ if (window->size_hints.width_inc < 1)
+ {
+ /* app authors find so many ways to smoke crack */
+ window->size_hints.width_inc = 1;
+ meta_topic (META_DEBUG_GEOMETRY, "Corrected 0 width_inc to 1\n");
+ }
+ if (window->size_hints.height_inc < 1)
+ {
+ /* another cracksmoker */
+ window->size_hints.height_inc = 1;
+ meta_topic (META_DEBUG_GEOMETRY, "Corrected 0 height_inc to 1\n");
+ }
+ /* divide by 0 cracksmokers; note that x & y in (min|max)_aspect are
+ * numerator & denominator
+ */
+ if (window->size_hints.min_aspect.y < 1)
+ window->size_hints.min_aspect.y = 1;
+ if (window->size_hints.max_aspect.y < 1)
+ window->size_hints.max_aspect.y = 1;
+
+ minw = window->size_hints.min_width; minh = window->size_hints.min_height;
+ maxw = window->size_hints.max_width; maxh = window->size_hints.max_height;
+ basew = window->size_hints.base_width; baseh = window->size_hints.base_height;
+ winc = window->size_hints.width_inc; hinc = window->size_hints.height_inc;
+
+ /* Make sure min and max size hints are consistent with the base + increment
+ * size hints. If they're not, it's not a real big deal, but it means the
+ * effective min and max size are more restrictive than the application
+ * specified values.
+ */
+ if ((minw - basew) % winc != 0)
+ {
+ /* Take advantage of integer division throwing away the remainder... */
+ window->size_hints.min_width = basew + ((minw - basew)/winc + 1)*winc;
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s has width_inc (%d) that does not evenly divide "
+ "min_width - base_width (%d - %d); thus effective "
+ "min_width is really %d\n",
+ window->desc,
+ winc, minw, basew, window->size_hints.min_width);
+ minw = window->size_hints.min_width;
+ }
+ if (maxw != G_MAXINT && (maxw - basew) % winc != 0)
+ {
+ /* Take advantage of integer division throwing away the remainder... */
+ window->size_hints.max_width = basew + ((maxw - basew)/winc)*winc;
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s has width_inc (%d) that does not evenly divide "
+ "max_width - base_width (%d - %d); thus effective "
+ "max_width is really %d\n",
+ window->desc,
+ winc, maxw, basew, window->size_hints.max_width);
+ maxw = window->size_hints.max_width;
+ }
+ if ((minh - baseh) % hinc != 0)
+ {
+ /* Take advantage of integer division throwing away the remainder... */
+ window->size_hints.min_height = baseh + ((minh - baseh)/hinc + 1)*hinc;
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s has height_inc (%d) that does not evenly divide "
+ "min_height - base_height (%d - %d); thus effective "
+ "min_height is really %d\n",
+ window->desc,
+ hinc, minh, baseh, window->size_hints.min_height);
+ minh = window->size_hints.min_height;
+ }
+ if (maxh != G_MAXINT && (maxh - baseh) % hinc != 0)
+ {
+ /* Take advantage of integer division throwing away the remainder... */
+ window->size_hints.max_height = baseh + ((maxh - baseh)/hinc)*hinc;
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s has height_inc (%d) that does not evenly divide "
+ "max_height - base_height (%d - %d); thus effective "
+ "max_height is really %d\n",
+ window->desc,
+ hinc, maxh, baseh, window->size_hints.max_height);
+ maxh = window->size_hints.max_height;
+ }
+
+ /* make sure maximum size hints are compatible with minimum size hints; min
+ * size hints take precedence.
+ */
+ if (window->size_hints.max_width < window->size_hints.min_width)
+ {
+ /* another cracksmoker */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s sets max width %d less than min width %d, "
+ "disabling resize\n",
+ window->desc,
+ window->size_hints.max_width,
+ window->size_hints.min_width);
+ maxw = window->size_hints.max_width = window->size_hints.min_width;
+ }
+ if (window->size_hints.max_height < window->size_hints.min_height)
+ {
+ /* another cracksmoker */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s sets max height %d less than min height %d, "
+ "disabling resize\n",
+ window->desc,
+ window->size_hints.max_height,
+ window->size_hints.min_height);
+ maxh = window->size_hints.max_height = window->size_hints.min_height;
+ }
+
+ /* Make sure the aspect ratio hints are sane. */
+ minr = window->size_hints.min_aspect.x /
+ (double)window->size_hints.min_aspect.y;
+ maxr = window->size_hints.max_aspect.x /
+ (double)window->size_hints.max_aspect.y;
+ if (minr > maxr)
+ {
+ /* another cracksmoker; not even minimally (self) consistent */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s sets min aspect ratio larger than max aspect "
+ "ratio; disabling aspect ratio constraints.\n",
+ window->desc);
+ window->size_hints.min_aspect.x = 1;
+ window->size_hints.min_aspect.y = G_MAXINT;
+ window->size_hints.max_aspect.x = G_MAXINT;
+ window->size_hints.max_aspect.y = 1;
+ }
+ else /* check consistency of aspect ratio hints with other hints */
+ {
+ if (minh > 0 && minr > (maxw / (double)minh))
+ {
+ /* another cracksmoker */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s sets min aspect ratio larger than largest "
+ "aspect ratio possible given min/max size constraints; "
+ "disabling min aspect ratio constraint.\n",
+ window->desc);
+ window->size_hints.min_aspect.x = 1;
+ window->size_hints.min_aspect.y = G_MAXINT;
+ }
+ if (maxr < (minw / (double)maxh))
+ {
+ /* another cracksmoker */
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Window %s sets max aspect ratio smaller than smallest "
+ "aspect ratio possible given min/max size constraints; "
+ "disabling max aspect ratio constraint.\n",
+ window->desc);
+ window->size_hints.max_aspect.x = G_MAXINT;
+ window->size_hints.max_aspect.y = 1;
+ }
+ /* FIXME: Would be nice to check that aspect ratios are
+ * consistent with base and size increment constraints.
+ */
+ }
+}
+
+static void
+reload_normal_hints (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+ XSizeHints old_hints;
+
+ meta_topic (META_DEBUG_GEOMETRY, "Updating WM_NORMAL_HINTS for %s\n", window->desc);
+
+ old_hints = window->size_hints;
+
+ meta_set_normal_hints (window, value->v.size_hints.hints);
+
+ spew_size_hints_differences (&old_hints, &window->size_hints);
+
+ meta_window_recalc_features (window);
+
+ if (!initial)
+ meta_window_queue(window, META_QUEUE_MOVE_RESIZE);
+ }
+}
+
+static void
+reload_wm_protocols (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ int i;
+
+ window->take_focus = FALSE;
+ window->delete_window = FALSE;
+ window->net_wm_ping = FALSE;
+
+ if (value->type == META_PROP_VALUE_INVALID)
+ return;
+
+ i = 0;
+ while (i < value->v.atom_list.n_atoms)
+ {
+ if (value->v.atom_list.atoms[i] ==
+ window->display->atom_WM_TAKE_FOCUS)
+ window->take_focus = TRUE;
+ else if (value->v.atom_list.atoms[i] ==
+ window->display->atom_WM_DELETE_WINDOW)
+ window->delete_window = TRUE;
+ else if (value->v.atom_list.atoms[i] ==
+ window->display->atom__NET_WM_PING)
+ window->net_wm_ping = TRUE;
+ ++i;
+ }
+
+ meta_verbose ("New _NET_STARTUP_ID \"%s\" for %s\n",
+ window->startup_id ? window->startup_id : "unset",
+ window->desc);
+}
+
+static void
+reload_wm_hints (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ Window old_group_leader;
+
+ old_group_leader = window->xgroup_leader;
+
+ /* Fill in defaults */
+ window->input = TRUE;
+ window->initially_iconic = FALSE;
+ window->xgroup_leader = None;
+ window->wm_hints_pixmap = None;
+ window->wm_hints_mask = None;
+
+ if (value->type != META_PROP_VALUE_INVALID)
+ {
+ const XWMHints *hints = value->v.wm_hints;
+
+ if (hints->flags & InputHint)
+ window->input = hints->input;
+
+ if (hints->flags & StateHint)
+ window->initially_iconic = (hints->initial_state == IconicState);
+
+ if (hints->flags & WindowGroupHint)
+ window->xgroup_leader = hints->window_group;
+
+ if (hints->flags & IconPixmapHint)
+ window->wm_hints_pixmap = hints->icon_pixmap;
+
+ if (hints->flags & IconMaskHint)
+ window->wm_hints_mask = hints->icon_mask;
+
+ meta_verbose ("Read WM_HINTS input: %d iconic: %d group leader: 0x%lx pixmap: 0x%lx mask: 0x%lx\n",
+ window->input, window->initially_iconic,
+ window->xgroup_leader,
+ window->wm_hints_pixmap,
+ window->wm_hints_mask);
+ }
+
+ if (window->xgroup_leader != old_group_leader)
+ {
+ meta_verbose ("Window %s changed its group leader to 0x%lx\n",
+ window->desc, window->xgroup_leader);
+
+ meta_window_group_leader_changed (window);
+ }
+
+ meta_icon_cache_property_changed (&window->icon_cache,
+ window->display,
+ XA_WM_HINTS);
+
+ meta_window_queue (window, META_QUEUE_UPDATE_ICON | META_QUEUE_MOVE_RESIZE);
+}
+
+static void
+reload_transient_for (MetaWindow *window,
+ MetaPropValue *value,
+ gboolean initial)
+{
+ window->xtransient_for = None;
+
+ if (value->type != META_PROP_VALUE_INVALID)
+ window->xtransient_for = value->v.xwindow;
+
+ /* Make sure transient_for is valid */
+ if (window->xtransient_for != None &&
+ meta_display_lookup_x_window (window->display,
+ window->xtransient_for) == NULL)
+ {
+ meta_warning (_("Invalid WM_TRANSIENT_FOR window 0x%lx specified "
+ "for %s.\n"),
+ window->xtransient_for, window->desc);
+ window->xtransient_for = None;
+ }
+
+ window->transient_parent_is_root_window =
+ window->xtransient_for == window->screen->xroot;
+
+ if (window->xtransient_for != None)
+ meta_verbose ("Window %s transient for 0x%lx (root = %d)\n", window->desc,
+ window->xtransient_for, window->transient_parent_is_root_window);
+ else
+ meta_verbose ("Window %s is not transient\n", window->desc);
+
+ /* may now be a dialog */
+ meta_window_recalc_window_type (window);
+
+ /* update stacking constraints */
+ meta_stack_update_transient (window->screen->stack, window);
+
+ /* possibly change its group. We treat being a window's transient as
+ * equivalent to making it your group leader, to work around shortcomings
+ * in programs such as xmms-- see #328211.
+ */
+ if (window->xtransient_for != None &&
+ window->xgroup_leader != None &&
+ window->xtransient_for != window->xgroup_leader)
+ meta_window_group_leader_changed (window);
+
+ if (!window->constructing)
+ meta_window_queue (window, META_QUEUE_MOVE_RESIZE);
+}
+
+/**
+ * Initialises the property hooks system. Each row in the table named "hooks"
+ * represents an action to take when a property is found on a newly-created
+ * window, or when a property changes its value.
+ *
+ * The first column shows which atom the row concerns.
+ * The second gives the type of the property data. The property will be
+ * queried for its new value, unless the type is given as
+ * META_PROP_VALUE_INVALID, in which case nothing will be queried.
+ * The third column gives the name of a callback which gets called with the
+ * new value. (If the new value was not retrieved because the second column
+ * was META_PROP_VALUE_INVALID, the callback still gets called anyway.)
+ * This value may be NULL, in which case no callback will be called.
+ */
+void
+meta_display_init_window_prop_hooks (MetaDisplay *display)
+{
+ MetaWindowPropHooks hooks[] = {
+ { display->atom_WM_STATE, META_PROP_VALUE_INVALID, NULL },
+ { display->atom_WM_CLIENT_MACHINE, META_PROP_VALUE_STRING, reload_wm_client_machine },
+ { display->atom__NET_WM_PID, META_PROP_VALUE_CARDINAL, reload_net_wm_pid },
+ { display->atom__NET_WM_USER_TIME, META_PROP_VALUE_CARDINAL, reload_net_wm_user_time },
+ { display->atom__NET_WM_NAME, META_PROP_VALUE_UTF8, reload_net_wm_name },
+ { XA_WM_NAME, META_PROP_VALUE_TEXT_PROPERTY, reload_wm_name },
+ { display->atom__NET_WM_ICON, META_PROP_VALUE_INVALID, reload_net_wm_icon },
+ { display->atom__KWM_WIN_ICON, META_PROP_VALUE_INVALID, reload_kwm_win_icon },
+ { display->atom__NET_WM_ICON_NAME, META_PROP_VALUE_UTF8, reload_net_wm_icon_name },
+ { XA_WM_ICON_NAME, META_PROP_VALUE_TEXT_PROPERTY, reload_wm_icon_name },
+ { display->atom__NET_WM_STATE, META_PROP_VALUE_ATOM_LIST, reload_net_wm_state },
+ { display->atom__MOTIF_WM_HINTS, META_PROP_VALUE_MOTIF_HINTS, reload_mwm_hints },
+ { display->atom__NET_WM_ICON_GEOMETRY, META_PROP_VALUE_INVALID, NULL },
+ { XA_WM_CLASS, META_PROP_VALUE_CLASS_HINT, reload_wm_class },
+ { display->atom_WM_CLIENT_LEADER, META_PROP_VALUE_INVALID, complain_about_broken_client },
+ { display->atom_SM_CLIENT_ID, META_PROP_VALUE_INVALID, complain_about_broken_client },
+ { display->atom_WM_WINDOW_ROLE, META_PROP_VALUE_INVALID, reload_wm_window_role },
+ { display->atom__NET_WM_WINDOW_TYPE, META_PROP_VALUE_INVALID, reload_net_wm_window_type },
+ { display->atom__NET_WM_DESKTOP, META_PROP_VALUE_CARDINAL, reload_net_wm_desktop },
+ { display->atom__NET_WM_STRUT, META_PROP_VALUE_INVALID, reload_struts },
+ { display->atom__NET_WM_STRUT_PARTIAL, META_PROP_VALUE_INVALID, reload_struts },
+ { display->atom__NET_STARTUP_ID, META_PROP_VALUE_UTF8, reload_net_startup_id },
+ { display->atom__NET_WM_SYNC_REQUEST_COUNTER, META_PROP_VALUE_SYNC_COUNTER, reload_update_counter },
+ { XA_WM_NORMAL_HINTS, META_PROP_VALUE_SIZE_HINTS, reload_normal_hints },
+ { display->atom_WM_PROTOCOLS, META_PROP_VALUE_ATOM_LIST, reload_wm_protocols },
+ { XA_WM_HINTS, META_PROP_VALUE_WM_HINTS, reload_wm_hints },
+ { XA_WM_TRANSIENT_FOR, META_PROP_VALUE_WINDOW, reload_transient_for },
+ { display->atom__NET_WM_USER_TIME_WINDOW, META_PROP_VALUE_WINDOW, reload_net_wm_user_time_window },
+ { 0 },
+ };
+
+ MetaWindowPropHooks *table = g_memdup (hooks, sizeof (hooks)),
+ *cursor = table;
+
+ g_assert (display->prop_hooks == NULL);
+
+ display->prop_hooks_table = (gpointer) table;
+ display->prop_hooks = g_hash_table_new (NULL, NULL);
+
+ while (cursor->property)
+ {
+ /* Atoms are safe to use with GINT_TO_POINTER because it's safe with
+ * anything 32 bits or less, and atoms are 32 bits with the top three
+ * bits clear. (Scheifler & Gettys, 2e, p372)
+ */
+ g_hash_table_insert (display->prop_hooks,
+ GINT_TO_POINTER (cursor->property),
+ cursor);
+ cursor++;
+ }
+}
+
+void
+meta_display_free_window_prop_hooks (MetaDisplay *display)
+{
+ g_hash_table_unref (display->prop_hooks);
+ display->prop_hooks = NULL;
+
+ g_free (display->prop_hooks_table);
+ display->prop_hooks_table = NULL;
+}
+
+/**
+ * Finds the hooks for a particular property.
+ */
+static MetaWindowPropHooks*
+find_hooks (MetaDisplay *display,
+ Atom property)
+{
+ return g_hash_table_lookup (display->prop_hooks,
+ GINT_TO_POINTER (property));
+}
diff --git a/src/core/window-props.h b/src/core/window-props.h
new file mode 100644
index 00000000..1e60eff0
--- /dev/null
+++ b/src/core/window-props.h
@@ -0,0 +1,129 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file window-props.h MetaWindow property handling
+ *
+ * A system which can inspect sets of properties of given windows
+ * and take appropriate action given their values.
+ *
+ * Note that all the meta_window_reload_propert* functions require a
+ * round trip to the server.
+ */
+
+/*
+ * Copyright (C) 2001, 2002 Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_WINDOW_PROPS_H
+#define META_WINDOW_PROPS_H
+
+#include "window-private.h"
+
+/**
+ * Requests the current values of a single property for a given
+ * window from the server, and deals with it appropriately.
+ * Does not return it to the caller (it's been dealt with!)
+ *
+ * \param window The window.
+ * \param property A single X atom.
+ */
+void meta_window_reload_property (MetaWindow *window,
+ Atom property,
+ gboolean initial);
+
+
+/**
+ * Requests the current values of a set of properties for a given
+ * window from the server, and deals with them appropriately.
+ * Does not return them to the caller (they've been dealt with!)
+ *
+ * \param window The window.
+ * \param properties A pointer to a list of X atoms, "n_properties" long.
+ * \param n_properties The length of the properties list.
+ */
+void meta_window_reload_properties (MetaWindow *window,
+ const Atom *properties,
+ int n_properties,
+ gboolean initial);
+
+/**
+ * Requests the current values of a single property for a given
+ * window from the server, and deals with it appropriately.
+ * Does not return it to the caller (it's been dealt with!)
+ *
+ * \param window A window on the same display as the one we're
+ * investigating (only used to find the display)
+ * \param xwindow The X handle for the window.
+ * \param property A single X atom.
+ */
+void meta_window_reload_property_from_xwindow
+ (MetaWindow *window,
+ Window xwindow,
+ Atom property,
+ gboolean initial);
+
+/**
+ * Requests the current values of a set of properties for a given
+ * window from the server, and deals with them appropriately.
+ * Does not return them to the caller (they've been dealt with!)
+ *
+ * \param window A window on the same display as the one we're
+ * investigating (only used to find the display)
+ * \param xwindow The X handle for the window.
+ * \param properties A pointer to a list of X atoms, "n_properties" long.
+ * \param n_properties The length of the properties list.
+ */
+void meta_window_reload_properties_from_xwindow
+ (MetaWindow *window,
+ Window xwindow,
+ const Atom *properties,
+ int n_properties,
+ gboolean initial);
+
+/**
+ * Initialises the hooks used for the reload_propert* functions
+ * on a particular display, and stores a pointer to them in the
+ * display.
+ *
+ * \param display The display.
+ */
+void meta_display_init_window_prop_hooks (MetaDisplay *display);
+
+/**
+ * Frees the hooks used for the reload_propert* functions
+ * for a particular display.
+ *
+ * \param display The display.
+ */
+void meta_display_free_window_prop_hooks (MetaDisplay *display);
+
+/**
+ * Sets the size hints for a window. This happens when a
+ * WM_NORMAL_HINTS property is set on a window, but it is public
+ * because the size hints are set to defaults when a window is
+ * created. See
+ * http://tronche.com/gui/x/icccm/sec-4.html#WM_NORMAL_HINTS
+ * for the X details.
+ *
+ * \param window The window to set the size hints on.
+ * \param hints Either some X size hints, or NULL for default.
+ */
+void meta_set_normal_hints (MetaWindow *window,
+ XSizeHints *hints);
+
+#endif /* META_WINDOW_PROPS_H */
diff --git a/src/core/window.c b/src/core/window.c
new file mode 100644
index 00000000..08ab9ec9
--- /dev/null
+++ b/src/core/window.c
@@ -0,0 +1,8178 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco X managed windows */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington, Anders Carlsson
+ * Copyright (C) 2002, 2003 Red Hat, Inc.
+ * Copyright (C) 2003 Rob Adams
+ * Copyright (C) 2004-2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "window-private.h"
+#include "edge-resistance.h"
+#include "util.h"
+#include "frame-private.h"
+#include "errors.h"
+#include "workspace.h"
+#include "stack.h"
+#include "keybindings.h"
+#include "ui.h"
+#include "place.h"
+#include "session.h"
+#include "effects.h"
+#include "prefs.h"
+#include "resizepopup.h"
+#include "xprops.h"
+#include "group.h"
+#include "window-props.h"
+#include "constraints.h"
+#include "compositor.h"
+#include "effects.h"
+
+#include <X11/Xatom.h>
+#include <string.h>
+
+#ifdef HAVE_SHAPE
+#include <X11/extensions/shape.h>
+#endif
+
+static int destroying_windows_disallowed = 0;
+
+
+static void update_sm_hints (MetaWindow *window);
+static void update_net_frame_extents (MetaWindow *window);
+static void recalc_window_type (MetaWindow *window);
+static void recalc_window_features (MetaWindow *window);
+static void invalidate_work_areas (MetaWindow *window);
+static void recalc_window_type (MetaWindow *window);
+static void set_wm_state (MetaWindow *window,
+ int state);
+static void set_net_wm_state (MetaWindow *window);
+
+static void send_configure_notify (MetaWindow *window);
+static gboolean process_property_notify (MetaWindow *window,
+ XPropertyEvent *event);
+static void meta_window_show (MetaWindow *window);
+static void meta_window_hide (MetaWindow *window);
+
+static void meta_window_save_rect (MetaWindow *window);
+static void save_user_window_placement (MetaWindow *window);
+static void force_save_user_window_placement (MetaWindow *window);
+
+static void meta_window_move_resize_internal (MetaWindow *window,
+ MetaMoveResizeFlags flags,
+ int resize_gravity,
+ int root_x_nw,
+ int root_y_nw,
+ int w,
+ int h);
+
+static void ensure_mru_position_after (MetaWindow *window,
+ MetaWindow *after_this_one);
+
+
+static void meta_window_move_resize_now (MetaWindow *window);
+
+static void meta_window_unqueue (MetaWindow *window, guint queuebits);
+
+static void update_move (MetaWindow *window,
+ gboolean snap,
+ int x,
+ int y);
+static gboolean update_move_timeout (gpointer data);
+static void update_resize (MetaWindow *window,
+ gboolean snap,
+ int x,
+ int y,
+ gboolean force);
+static gboolean update_resize_timeout (gpointer data);
+
+
+static void meta_window_flush_calc_showing (MetaWindow *window);
+
+static gboolean queue_calc_showing_func (MetaWindow *window,
+ void *data);
+
+static void meta_window_apply_session_info (MetaWindow *window,
+ const MetaWindowSessionInfo *info);
+
+static void unmaximize_window_before_freeing (MetaWindow *window);
+static void unminimize_window_and_all_transient_parents (MetaWindow *window);
+
+/* Idle handlers for the three queues. The "data" parameter in each case
+ * will be a GINT_TO_POINTER of the index into the queue arrays to use.
+ *
+ * TODO: Possibly there is still some code duplication among these, which we
+ * need to sort out at some point.
+ */
+static gboolean idle_calc_showing (gpointer data);
+static gboolean idle_move_resize (gpointer data);
+static gboolean idle_update_icon (gpointer data);
+
+#ifdef WITH_VERBOSE_MODE
+static const char*
+wm_state_to_string (int state)
+{
+ switch (state)
+ {
+ case NormalState:
+ return "NormalState";
+ case IconicState:
+ return "IconicState";
+ case WithdrawnState:
+ return "WithdrawnState";
+ }
+
+ return "Unknown";
+}
+#endif
+
+static gboolean
+is_desktop_or_dock_foreach (MetaWindow *window,
+ void *data)
+{
+ gboolean *result = data;
+
+ *result =
+ window->type == META_WINDOW_DESKTOP ||
+ window->type == META_WINDOW_DOCK;
+ if (*result)
+ return FALSE; /* stop as soon as we find one */
+ else
+ return TRUE;
+}
+
+/* window is the window that's newly mapped provoking
+ * the possible change
+ */
+static void
+maybe_leave_show_desktop_mode (MetaWindow *window)
+{
+ gboolean is_desktop_or_dock;
+
+ if (!window->screen->active_workspace->showing_desktop)
+ return;
+
+ /* If the window is a transient for the dock or desktop, don't
+ * leave show desktop mode when the window opens. That's
+ * so you can e.g. hide all windows, manipulate a file on
+ * the desktop via a dialog, then unshow windows again.
+ */
+ is_desktop_or_dock = FALSE;
+ is_desktop_or_dock_foreach (window,
+ &is_desktop_or_dock);
+
+ meta_window_foreach_ancestor (window, is_desktop_or_dock_foreach,
+ &is_desktop_or_dock);
+
+ if (!is_desktop_or_dock)
+ {
+ meta_screen_minimize_all_on_active_workspace_except (window->screen,
+ window);
+ meta_screen_unshow_desktop (window->screen);
+ }
+}
+
+MetaWindow*
+meta_window_new (MetaDisplay *display,
+ Window xwindow,
+ gboolean must_be_viewable)
+{
+ XWindowAttributes attrs;
+ MetaWindow *window;
+
+ meta_display_grab (display);
+ meta_error_trap_push (display); /* Push a trap over all of window
+ * creation, to reduce XSync() calls
+ */
+
+ meta_error_trap_push_with_return (display);
+
+ if (XGetWindowAttributes (display->xdisplay,xwindow, &attrs))
+ {
+ if(meta_error_trap_pop_with_return (display, TRUE) != Success)
+ {
+ meta_verbose ("Failed to get attributes for window 0x%lx\n",
+ xwindow);
+ meta_error_trap_pop (display, TRUE);
+ meta_display_ungrab (display);
+ return NULL;
+ }
+ window = meta_window_new_with_attrs (display, xwindow,
+ must_be_viewable, &attrs);
+ }
+ else
+ {
+ meta_error_trap_pop_with_return (display, TRUE);
+ meta_verbose ("Failed to get attributes for window 0x%lx\n",
+ xwindow);
+ meta_error_trap_pop (display, TRUE);
+ meta_display_ungrab (display);
+ return NULL;
+ }
+
+
+ meta_error_trap_pop (display, FALSE);
+ meta_display_ungrab (display);
+
+ return window;
+}
+
+MetaWindow*
+meta_window_new_with_attrs (MetaDisplay *display,
+ Window xwindow,
+ gboolean must_be_viewable,
+ XWindowAttributes *attrs)
+{
+ MetaWindow *window;
+ GSList *tmp;
+ MetaWorkspace *space;
+ gulong existing_wm_state;
+ gulong event_mask;
+ MetaMoveResizeFlags flags;
+#define N_INITIAL_PROPS 19
+ Atom initial_props[N_INITIAL_PROPS];
+ int i;
+ gboolean has_shape;
+
+ g_assert (attrs != NULL);
+ g_assert (N_INITIAL_PROPS == (int) G_N_ELEMENTS (initial_props));
+
+ meta_verbose ("Attempting to manage 0x%lx\n", xwindow);
+
+ if (meta_display_xwindow_is_a_no_focus_window (display, xwindow))
+ {
+ meta_verbose ("Not managing no_focus_window 0x%lx\n",
+ xwindow);
+ return NULL;
+ }
+
+ if (attrs->override_redirect)
+ {
+ meta_verbose ("Deciding not to manage override_redirect window 0x%lx\n", xwindow);
+ return NULL;
+ }
+
+ /* Grab server */
+ meta_display_grab (display);
+ meta_error_trap_push (display); /* Push a trap over all of window
+ * creation, to reduce XSync() calls
+ */
+
+ meta_verbose ("must_be_viewable = %d attrs->map_state = %d (%s)\n",
+ must_be_viewable,
+ attrs->map_state,
+ (attrs->map_state == IsUnmapped) ?
+ "IsUnmapped" :
+ (attrs->map_state == IsViewable) ?
+ "IsViewable" :
+ (attrs->map_state == IsUnviewable) ?
+ "IsUnviewable" :
+ "(unknown)");
+
+ existing_wm_state = WithdrawnState;
+ if (must_be_viewable && attrs->map_state != IsViewable)
+ {
+ /* Only manage if WM_STATE is IconicState or NormalState */
+ gulong state;
+
+ /* WM_STATE isn't a cardinal, it's type WM_STATE, but is an int */
+ if (!(meta_prop_get_cardinal_with_atom_type (display, xwindow,
+ display->atom_WM_STATE,
+ display->atom_WM_STATE,
+ &state) &&
+ (state == IconicState || state == NormalState)))
+ {
+ meta_verbose ("Deciding not to manage unmapped or unviewable window 0x%lx\n", xwindow);
+ meta_error_trap_pop (display, TRUE);
+ meta_display_ungrab (display);
+ return NULL;
+ }
+
+ existing_wm_state = state;
+ meta_verbose ("WM_STATE of %lx = %s\n", xwindow,
+ wm_state_to_string (existing_wm_state));
+ }
+
+ meta_error_trap_push_with_return (display);
+
+ XAddToSaveSet (display->xdisplay, xwindow);
+
+ event_mask =
+ PropertyChangeMask | EnterWindowMask | LeaveWindowMask |
+ FocusChangeMask | ColormapChangeMask;
+
+ XSelectInput (display->xdisplay, xwindow, event_mask);
+
+ has_shape = FALSE;
+#ifdef HAVE_SHAPE
+ if (META_DISPLAY_HAS_SHAPE (display))
+ {
+ int x_bounding, y_bounding, x_clip, y_clip;
+ unsigned w_bounding, h_bounding, w_clip, h_clip;
+ int bounding_shaped, clip_shaped;
+
+ XShapeSelectInput (display->xdisplay, xwindow, ShapeNotifyMask);
+
+ XShapeQueryExtents (display->xdisplay, xwindow,
+ &bounding_shaped, &x_bounding, &y_bounding,
+ &w_bounding, &h_bounding,
+ &clip_shaped, &x_clip, &y_clip,
+ &w_clip, &h_clip);
+
+ has_shape = bounding_shaped != FALSE;
+
+ meta_topic (META_DEBUG_SHAPES,
+ "Window has_shape = %d extents %d,%d %u x %u\n",
+ has_shape, x_bounding, y_bounding,
+ w_bounding, h_bounding);
+ }
+#endif
+
+ /* Get rid of any borders */
+ if (attrs->border_width != 0)
+ XSetWindowBorderWidth (display->xdisplay, xwindow, 0);
+
+ /* Get rid of weird gravities */
+ if (attrs->win_gravity != NorthWestGravity)
+ {
+ XSetWindowAttributes set_attrs;
+
+ set_attrs.win_gravity = NorthWestGravity;
+
+ XChangeWindowAttributes (display->xdisplay,
+ xwindow,
+ CWWinGravity,
+ &set_attrs);
+ }
+
+ if (meta_error_trap_pop_with_return (display, FALSE) != Success)
+ {
+ meta_verbose ("Window 0x%lx disappeared just as we tried to manage it\n",
+ xwindow);
+ meta_error_trap_pop (display, FALSE);
+ meta_display_ungrab (display);
+ return NULL;
+ }
+
+ g_assert (!attrs->override_redirect);
+
+ window = g_new (MetaWindow, 1);
+
+ window->constructing = TRUE;
+
+ window->dialog_pid = -1;
+
+ window->xwindow = xwindow;
+
+ /* this is in window->screen->display, but that's too annoying to
+ * type
+ */
+ window->display = display;
+ window->workspace = NULL;
+
+#ifdef HAVE_XSYNC
+ window->sync_request_counter = None;
+ window->sync_request_serial = 0;
+ window->sync_request_time.tv_sec = 0;
+ window->sync_request_time.tv_usec = 0;
+#endif
+
+ window->screen = NULL;
+ tmp = display->screens;
+ while (tmp != NULL)
+ {
+ MetaScreen *scr = tmp->data;
+
+ if (scr->xroot == attrs->root)
+ {
+ window->screen = tmp->data;
+ break;
+ }
+
+ tmp = tmp->next;
+ }
+
+ g_assert (window->screen);
+
+ window->desc = g_strdup_printf ("0x%lx", window->xwindow);
+
+ /* avoid tons of stack updates */
+ meta_stack_freeze (window->screen->stack);
+
+ window->has_shape = has_shape;
+
+ window->rect.x = attrs->x;
+ window->rect.y = attrs->y;
+ window->rect.width = attrs->width;
+ window->rect.height = attrs->height;
+
+ /* And border width, size_hints are the "request" */
+ window->border_width = attrs->border_width;
+ window->size_hints.x = attrs->x;
+ window->size_hints.y = attrs->y;
+ window->size_hints.width = attrs->width;
+ window->size_hints.height = attrs->height;
+ /* initialize the remaining size_hints as if size_hints.flags were zero */
+ meta_set_normal_hints (window, NULL);
+
+ /* And this is our unmaximized size */
+ window->saved_rect = window->rect;
+ window->user_rect = window->rect;
+
+ window->depth = attrs->depth;
+ window->xvisual = attrs->visual;
+ window->colormap = attrs->colormap;
+
+ window->title = NULL;
+ window->icon_name = NULL;
+ window->icon = NULL;
+ window->mini_icon = NULL;
+ meta_icon_cache_init (&window->icon_cache);
+ window->wm_hints_pixmap = None;
+ window->wm_hints_mask = None;
+
+ window->frame = NULL;
+ window->has_focus = FALSE;
+
+ window->maximized_horizontally = FALSE;
+ window->maximized_vertically = FALSE;
+ window->maximize_horizontally_after_placement = FALSE;
+ window->maximize_vertically_after_placement = FALSE;
+ window->minimize_after_placement = FALSE;
+ window->fullscreen_after_placement = FALSE;
+ window->fullscreen_monitors[0] = -1;
+ window->require_fully_onscreen = TRUE;
+ window->require_on_single_xinerama = TRUE;
+ window->require_titlebar_visible = TRUE;
+ window->on_all_workspaces = FALSE;
+ window->shaded = FALSE;
+ window->initially_iconic = FALSE;
+ window->minimized = FALSE;
+ window->was_minimized = FALSE;
+ window->tab_unminimized = FALSE;
+ window->iconic = FALSE;
+ window->mapped = attrs->map_state != IsUnmapped;
+ /* if already mapped, no need to worry about focus-on-first-time-showing */
+ window->showing_for_first_time = !window->mapped;
+ /* if already mapped we don't want to do the placement thing */
+ window->placed = window->mapped;
+ if (window->placed)
+ meta_topic (META_DEBUG_PLACEMENT,
+ "Not placing window 0x%lx since it's already mapped\n",
+ xwindow);
+ window->force_save_user_rect = TRUE;
+ window->denied_focus_and_not_transient = FALSE;
+ window->unmanaging = FALSE;
+ window->is_in_queues = 0;
+ window->keys_grabbed = FALSE;
+ window->grab_on_frame = FALSE;
+ window->all_keys_grabbed = FALSE;
+ window->withdrawn = FALSE;
+ window->initial_workspace_set = FALSE;
+ window->initial_timestamp_set = FALSE;
+ window->net_wm_user_time_set = FALSE;
+ window->user_time_window = None;
+ window->calc_placement = FALSE;
+ window->shaken_loose = FALSE;
+ window->have_focus_click_grab = FALSE;
+ window->disable_sync = FALSE;
+
+ window->unmaps_pending = 0;
+
+ window->mwm_decorated = TRUE;
+ window->mwm_border_only = FALSE;
+ window->mwm_has_close_func = TRUE;
+ window->mwm_has_minimize_func = TRUE;
+ window->mwm_has_maximize_func = TRUE;
+ window->mwm_has_move_func = TRUE;
+ window->mwm_has_resize_func = TRUE;
+
+ window->decorated = TRUE;
+ window->has_close_func = TRUE;
+ window->has_minimize_func = TRUE;
+ window->has_maximize_func = TRUE;
+ window->has_move_func = TRUE;
+ window->has_resize_func = TRUE;
+
+ window->has_shade_func = TRUE;
+
+ window->has_fullscreen_func = TRUE;
+
+ window->always_sticky = FALSE;
+
+ window->wm_state_modal = FALSE;
+ window->skip_taskbar = FALSE;
+ window->skip_pager = FALSE;
+ window->wm_state_skip_taskbar = FALSE;
+ window->wm_state_skip_pager = FALSE;
+ window->wm_state_above = FALSE;
+ window->wm_state_below = FALSE;
+ window->wm_state_demands_attention = FALSE;
+
+ window->res_class = NULL;
+ window->res_name = NULL;
+ window->role = NULL;
+ window->sm_client_id = NULL;
+ window->wm_client_machine = NULL;
+ window->startup_id = NULL;
+
+ window->net_wm_pid = -1;
+
+ window->xtransient_for = None;
+ window->xclient_leader = None;
+ window->transient_parent_is_root_window = FALSE;
+
+ window->type = META_WINDOW_NORMAL;
+ window->type_atom = None;
+
+ window->struts = NULL;
+
+ window->using_net_wm_name = FALSE;
+ window->using_net_wm_visible_name = FALSE;
+ window->using_net_wm_icon_name = FALSE;
+ window->using_net_wm_visible_icon_name = FALSE;
+
+ window->need_reread_icon = TRUE;
+
+ window->layer = META_LAYER_LAST; /* invalid value */
+ window->stack_position = -1;
+ window->initial_workspace = 0; /* not used */
+ window->initial_timestamp = 0; /* not used */
+
+ meta_display_register_x_window (display, &window->xwindow, window);
+
+
+ /* assign the window to its group, or create a new group if needed
+ */
+ window->group = NULL;
+ window->xgroup_leader = None;
+ meta_window_compute_group (window);
+
+ /* Fill these in the order we want them to be gotten. we want to
+ * get window name and class first so we can use them in error
+ * messages and such. However, name is modified depending on
+ * wm_client_machine, so push it slightly sooner.
+ */
+ i = 0;
+ initial_props[i++] = display->atom_WM_CLIENT_MACHINE;
+ initial_props[i++] = display->atom__NET_WM_PID;
+ initial_props[i++] = display->atom__NET_WM_NAME;
+ initial_props[i++] = XA_WM_CLASS;
+ initial_props[i++] = XA_WM_NAME;
+ initial_props[i++] = display->atom__NET_WM_ICON_NAME;
+ initial_props[i++] = XA_WM_ICON_NAME;
+ initial_props[i++] = display->atom__NET_WM_DESKTOP;
+ initial_props[i++] = display->atom__NET_STARTUP_ID;
+ initial_props[i++] = display->atom__NET_WM_SYNC_REQUEST_COUNTER;
+ initial_props[i++] = XA_WM_NORMAL_HINTS;
+ initial_props[i++] = display->atom_WM_PROTOCOLS;
+ initial_props[i++] = XA_WM_HINTS;
+ initial_props[i++] = display->atom__NET_WM_USER_TIME;
+ initial_props[i++] = display->atom__NET_WM_STATE;
+ initial_props[i++] = display->atom__MOTIF_WM_HINTS;
+ initial_props[i++] = XA_WM_TRANSIENT_FOR;
+ initial_props[i++] = display->atom__NET_WM_USER_TIME_WINDOW;
+ initial_props[i++] = display->atom__NET_WM_FULLSCREEN_MONITORS;
+ g_assert (N_INITIAL_PROPS == i);
+
+ meta_window_reload_properties (window, initial_props, N_INITIAL_PROPS, TRUE);
+
+ update_sm_hints (window); /* must come after transient_for */
+ meta_window_update_role (window);
+ meta_window_update_net_wm_type (window);
+ meta_window_update_icon_now (window);
+
+ if (window->initially_iconic)
+ {
+ /* WM_HINTS said minimized */
+ window->minimized = TRUE;
+ meta_verbose ("Window %s asked to start out minimized\n", window->desc);
+ }
+
+ if (existing_wm_state == IconicState)
+ {
+ /* WM_STATE said minimized */
+ window->minimized = TRUE;
+ meta_verbose ("Window %s had preexisting WM_STATE = IconicState, minimizing\n",
+ window->desc);
+
+ /* Assume window was previously placed, though perhaps it's
+ * been iconic its whole life, we have no way of knowing.
+ */
+ window->placed = TRUE;
+ }
+
+ /* Apply any window attributes such as initial workspace
+ * based on startup notification
+ */
+ meta_screen_apply_startup_properties (window->screen, window);
+
+ /* Try to get a "launch timestamp" for the window. If the window is
+ * a transient, we'd like to be able to get a last-usage timestamp
+ * from the parent window. If the window has no parent, there isn't
+ * much we can do...except record the current time so that any children
+ * can use this time as a fallback.
+ */
+ if (!window->net_wm_user_time_set) {
+ MetaWindow *parent = NULL;
+ if (window->xtransient_for)
+ parent = meta_display_lookup_x_window (window->display,
+ window->xtransient_for);
+
+ /* First, maybe the app was launched with startup notification using an
+ * obsolete version of the spec; use that timestamp if it exists.
+ */
+ if (window->initial_timestamp_set)
+ /* NOTE: Do NOT toggle net_wm_user_time_set to true; this is just
+ * being recorded as a fallback for potential transients
+ */
+ window->net_wm_user_time = window->initial_timestamp;
+ else if (parent != NULL)
+ meta_window_set_user_time(window, parent->net_wm_user_time);
+ else
+ /* NOTE: Do NOT toggle net_wm_user_time_set to true; this is just
+ * being recorded as a fallback for potential transients
+ */
+ window->net_wm_user_time =
+ meta_display_get_current_time_roundtrip (window->display);
+ }
+
+ if (window->decorated)
+ meta_window_ensure_frame (window);
+
+ meta_window_grab_keys (window);
+ if (window->type != META_WINDOW_DOCK)
+ {
+ meta_display_grab_window_buttons (window->display, window->xwindow);
+ meta_display_grab_focus_window_button (window->display, window);
+ }
+
+ if (window->type == META_WINDOW_DESKTOP ||
+ window->type == META_WINDOW_DOCK)
+ {
+ /* Change the default, but don't enforce this if the user
+ * focuses the dock/desktop and unsticks it using key shortcuts.
+ * Need to set this before adding to the workspaces so the MRU
+ * lists will be updated.
+ */
+ window->on_all_workspaces = TRUE;
+ }
+
+ /* For the workspace, first honor hints,
+ * if that fails put transients with parents,
+ * otherwise put window on active space
+ */
+
+ if (window->initial_workspace_set)
+ {
+ if (window->initial_workspace == (int) 0xFFFFFFFF)
+ {
+ meta_topic (META_DEBUG_PLACEMENT,
+ "Window %s is initially on all spaces\n",
+ window->desc);
+
+ /* need to set on_all_workspaces first so that it will be
+ * added to all the MRU lists
+ */
+ window->on_all_workspaces = TRUE;
+ meta_workspace_add_window (window->screen->active_workspace, window);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_PLACEMENT,
+ "Window %s is initially on space %d\n",
+ window->desc, window->initial_workspace);
+
+ space =
+ meta_screen_get_workspace_by_index (window->screen,
+ window->initial_workspace);
+
+ if (space)
+ meta_workspace_add_window (space, window);
+ }
+ }
+
+ if (window->workspace == NULL &&
+ window->xtransient_for != None)
+ {
+ /* Try putting dialog on parent's workspace */
+ MetaWindow *parent;
+
+ parent = meta_display_lookup_x_window (window->display,
+ window->xtransient_for);
+
+ if (parent && parent->workspace)
+ {
+ meta_topic (META_DEBUG_PLACEMENT,
+ "Putting window %s on same workspace as parent %s\n",
+ window->desc, parent->desc);
+
+ if (parent->on_all_workspaces)
+ window->on_all_workspaces = TRUE;
+
+ /* this will implicitly add to the appropriate MRU lists
+ */
+ meta_workspace_add_window (parent->workspace, window);
+ }
+ }
+
+ if (window->workspace == NULL)
+ {
+ meta_topic (META_DEBUG_PLACEMENT,
+ "Putting window %s on active workspace\n",
+ window->desc);
+
+ space = window->screen->active_workspace;
+
+ meta_workspace_add_window (space, window);
+ }
+
+ /* for the various on_all_workspaces = TRUE possible above */
+ meta_window_set_current_workspace_hint (window);
+
+ meta_window_update_struts (window);
+
+ /* Must add window to stack before doing move/resize, since the
+ * window might have fullscreen size (i.e. should have been
+ * fullscreen'd; acrobat is one such braindead case; it withdraws
+ * and remaps its window whenever trying to become fullscreen...)
+ * and thus constraints may try to auto-fullscreen it which also
+ * means restacking it.
+ */
+ meta_stack_add (window->screen->stack,
+ window);
+
+ /* Put our state back where it should be,
+ * passing TRUE for is_configure_request, ICCCM says
+ * initial map is handled same as configure request
+ */
+ flags =
+ META_IS_CONFIGURE_REQUEST | META_IS_MOVE_ACTION | META_IS_RESIZE_ACTION;
+ meta_window_move_resize_internal (window,
+ flags,
+ window->size_hints.win_gravity,
+ window->size_hints.x,
+ window->size_hints.y,
+ window->size_hints.width,
+ window->size_hints.height);
+
+ /* Now try applying saved stuff from the session */
+ {
+ const MetaWindowSessionInfo *info;
+
+ info = meta_window_lookup_saved_state (window);
+
+ if (info)
+ {
+ meta_window_apply_session_info (window, info);
+ meta_window_release_saved_state (info);
+ }
+ }
+
+ /* FIXME we have a tendency to set this then immediately
+ * change it again.
+ */
+ set_wm_state (window, window->iconic ? IconicState : NormalState);
+ set_net_wm_state (window);
+
+ /* Sync stack changes */
+ meta_stack_thaw (window->screen->stack);
+
+ /* disable show desktop mode unless we're a desktop component */
+ maybe_leave_show_desktop_mode (window);
+
+ meta_window_queue (window, META_QUEUE_CALC_SHOWING);
+ /* See bug 303284; a transient of the given window can already exist, in which
+ * case we think it should probably be shown.
+ */
+ meta_window_foreach_transient (window,
+ queue_calc_showing_func,
+ NULL);
+ /* See bug 334899; the window may have minimized ancestors
+ * which need to be shown.
+ *
+ * However, we shouldn't unminimize windows here when opening
+ * a new display because that breaks passing _NET_WM_STATE_HIDDEN
+ * between window managers when replacing them; see bug 358042.
+ *
+ * And we shouldn't unminimize windows if they were initially
+ * iconic.
+ */
+ if (!display->display_opening && !window->initially_iconic)
+ unminimize_window_and_all_transient_parents (window);
+
+ meta_error_trap_pop (display, FALSE); /* pop the XSync()-reducing trap */
+ meta_display_ungrab (display);
+
+ window->constructing = FALSE;
+
+ return window;
+}
+
+/* This function should only be called from the end of meta_window_new_with_attrs () */
+static void
+meta_window_apply_session_info (MetaWindow *window,
+ const MetaWindowSessionInfo *info)
+{
+ if (info->stack_position_set)
+ {
+ meta_topic (META_DEBUG_SM,
+ "Restoring stack position %d for window %s\n",
+ info->stack_position, window->desc);
+
+ /* FIXME well, I'm not sure how to do this. */
+ }
+
+ if (info->minimized_set)
+ {
+ meta_topic (META_DEBUG_SM,
+ "Restoring minimized state %d for window %s\n",
+ info->minimized, window->desc);
+
+ if (window->has_minimize_func && info->minimized)
+ meta_window_minimize (window);
+ }
+
+ if (info->maximized_set)
+ {
+ meta_topic (META_DEBUG_SM,
+ "Restoring maximized state %d for window %s\n",
+ info->maximized, window->desc);
+
+ if (window->has_maximize_func && info->maximized)
+ {
+ meta_window_maximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+
+ if (info->saved_rect_set)
+ {
+ meta_topic (META_DEBUG_SM,
+ "Restoring saved rect %d,%d %dx%d for window %s\n",
+ info->saved_rect.x,
+ info->saved_rect.y,
+ info->saved_rect.width,
+ info->saved_rect.height,
+ window->desc);
+
+ window->saved_rect.x = info->saved_rect.x;
+ window->saved_rect.y = info->saved_rect.y;
+ window->saved_rect.width = info->saved_rect.width;
+ window->saved_rect.height = info->saved_rect.height;
+ }
+ }
+ }
+
+ if (info->on_all_workspaces_set)
+ {
+ window->on_all_workspaces = info->on_all_workspaces;
+ meta_topic (META_DEBUG_SM,
+ "Restoring sticky state %d for window %s\n",
+ window->on_all_workspaces, window->desc);
+ }
+
+ if (info->workspace_indices)
+ {
+ GSList *tmp;
+ GSList *spaces;
+
+ spaces = NULL;
+
+ tmp = info->workspace_indices;
+ while (tmp != NULL)
+ {
+ MetaWorkspace *space;
+
+ space =
+ meta_screen_get_workspace_by_index (window->screen,
+ GPOINTER_TO_INT (tmp->data));
+
+ if (space)
+ spaces = g_slist_prepend (spaces, space);
+
+ tmp = tmp->next;
+ }
+
+ if (spaces)
+ {
+ /* This briefly breaks the invariant that we are supposed
+ * to always be on some workspace. But we paranoically
+ * ensured that one of the workspaces from the session was
+ * indeed valid, so we know we'll go right back to one.
+ */
+ if (window->workspace)
+ meta_workspace_remove_window (window->workspace, window);
+
+ /* Only restore to the first workspace if the window
+ * happened to be on more than one, since we have replaces
+ * window->workspaces with window->workspace
+ */
+ meta_workspace_add_window (spaces->data, window);
+
+ meta_topic (META_DEBUG_SM,
+ "Restoring saved window %s to workspace %d\n",
+ window->desc,
+ meta_workspace_index (spaces->data));
+
+ g_slist_free (spaces);
+ }
+ }
+
+ if (info->geometry_set)
+ {
+ int x, y, w, h;
+ MetaMoveResizeFlags flags;
+
+ window->placed = TRUE; /* don't do placement algorithms later */
+
+ x = info->rect.x;
+ y = info->rect.y;
+
+ w = window->size_hints.base_width +
+ info->rect.width * window->size_hints.width_inc;
+ h = window->size_hints.base_height +
+ info->rect.height * window->size_hints.height_inc;
+
+ /* Force old gravity, ignoring anything now set */
+ window->size_hints.win_gravity = info->gravity;
+
+ meta_topic (META_DEBUG_SM,
+ "Restoring pos %d,%d size %d x %d for %s\n",
+ x, y, w, h, window->desc);
+
+ flags = META_DO_GRAVITY_ADJUST | META_IS_MOVE_ACTION | META_IS_RESIZE_ACTION;
+ meta_window_move_resize_internal (window,
+ flags,
+ window->size_hints.win_gravity,
+ x, y, w, h);
+ }
+}
+
+void
+meta_window_free (MetaWindow *window,
+ guint32 timestamp)
+{
+ GList *tmp;
+
+ meta_verbose ("Unmanaging 0x%lx\n", window->xwindow);
+
+ if (window->display->compositor)
+ meta_compositor_free_window (window->display->compositor, window);
+
+ if (window->display->window_with_menu == window)
+ {
+ meta_ui_window_menu_free (window->display->window_menu);
+ window->display->window_menu = NULL;
+ window->display->window_with_menu = NULL;
+ }
+
+ if (destroying_windows_disallowed > 0)
+ meta_bug ("Tried to destroy window %s while destruction was not allowed\n",
+ window->desc);
+
+ window->unmanaging = TRUE;
+
+ if (window->fullscreen)
+ {
+ MetaGroup *group;
+
+ /* If the window is fullscreen, it may be forcing
+ * other windows in its group to a higher layer
+ */
+
+ meta_stack_freeze (window->screen->stack);
+ group = meta_window_get_group (window);
+ if (group)
+ meta_group_update_layers (group);
+ meta_stack_thaw (window->screen->stack);
+ }
+
+ meta_window_shutdown_group (window); /* safe to do this early as
+ * group.c won't re-add to the
+ * group if window->unmanaging
+ */
+
+ /* If we have the focus, focus some other window.
+ * This is done first, so that if the unmap causes
+ * an EnterNotify the EnterNotify will have final say
+ * on what gets focused, maintaining sloppy focus
+ * invariants.
+ */
+ if (window->has_focus)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing default window since we're unmanaging %s\n",
+ window->desc);
+ meta_workspace_focus_default_window (window->screen->active_workspace,
+ window,
+ timestamp);
+ }
+ else if (window->display->expected_focus_window == window)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing default window since expected focus window freed %s\n",
+ window->desc);
+ window->display->expected_focus_window = NULL;
+ meta_workspace_focus_default_window (window->screen->active_workspace,
+ window,
+ timestamp);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Unmanaging window %s which doesn't currently have focus\n",
+ window->desc);
+ }
+
+ if (window->struts)
+ {
+ meta_free_gslist_and_elements (window->struts);
+ window->struts = NULL;
+
+ meta_topic (META_DEBUG_WORKAREA,
+ "Unmanaging window %s which has struts, so invalidating work areas\n",
+ window->desc);
+ invalidate_work_areas (window);
+ }
+
+ if (window->display->grab_window == window)
+ meta_display_end_grab_op (window->display, timestamp);
+
+ g_assert (window->display->grab_window != window);
+
+ if (window->display->focus_window == window)
+ {
+ window->display->focus_window = NULL;
+ meta_compositor_set_active_window (window->display->compositor,
+ window->screen, NULL);
+ }
+
+ if (window->maximized_horizontally || window->maximized_vertically)
+ unmaximize_window_before_freeing (window);
+
+ /* The XReparentWindow call in meta_window_destroy_frame() moves the
+ * window so we need to send a configure notify; see bug 399552. (We
+ * also do this just in case a window got unmaximized.)
+ */
+ send_configure_notify (window);
+
+ meta_window_unqueue (window, META_QUEUE_CALC_SHOWING |
+ META_QUEUE_MOVE_RESIZE |
+ META_QUEUE_UPDATE_ICON);
+ meta_window_free_delete_dialog (window);
+
+ if (window->workspace)
+ meta_workspace_remove_window (window->workspace, window);
+
+ g_assert (window->workspace == NULL);
+
+#ifndef G_DISABLE_CHECKS
+ tmp = window->screen->workspaces;
+ while (tmp != NULL)
+ {
+ MetaWorkspace *workspace = tmp->data;
+
+ g_assert (g_list_find (workspace->windows, window) == NULL);
+ g_assert (g_list_find (workspace->mru_list, window) == NULL);
+
+ tmp = tmp->next;
+ }
+#endif
+
+ meta_stack_remove (window->screen->stack, window);
+
+ if (window->frame)
+ meta_window_destroy_frame (window);
+
+ if (window->withdrawn)
+ {
+ /* We need to clean off the window's state so it
+ * won't be restored if the app maps it again.
+ */
+ meta_error_trap_push (window->display);
+ meta_verbose ("Cleaning state from window %s\n", window->desc);
+ XDeleteProperty (window->display->xdisplay,
+ window->xwindow,
+ window->display->atom__NET_WM_DESKTOP);
+ XDeleteProperty (window->display->xdisplay,
+ window->xwindow,
+ window->display->atom__NET_WM_STATE);
+ XDeleteProperty (window->display->xdisplay,
+ window->xwindow,
+ window->display->atom__NET_WM_FULLSCREEN_MONITORS);
+ set_wm_state (window, WithdrawnState);
+ meta_error_trap_pop (window->display, FALSE);
+ }
+ else
+ {
+ /* We need to put WM_STATE so that others will understand it on
+ * restart.
+ */
+ if (!window->minimized)
+ {
+ meta_error_trap_push (window->display);
+ set_wm_state (window, NormalState);
+ meta_error_trap_pop (window->display, FALSE);
+ }
+
+ /* And we need to be sure the window is mapped so other WMs
+ * know that it isn't Withdrawn
+ */
+ meta_error_trap_push (window->display);
+ XMapWindow (window->display->xdisplay,
+ window->xwindow);
+ meta_error_trap_pop (window->display, FALSE);
+ }
+
+ meta_window_ungrab_keys (window);
+ meta_display_ungrab_window_buttons (window->display, window->xwindow);
+ meta_display_ungrab_focus_window_button (window->display, window);
+
+ meta_display_unregister_x_window (window->display, window->xwindow);
+
+
+ meta_error_trap_push (window->display);
+
+ /* Put back anything we messed up */
+ if (window->border_width != 0)
+ XSetWindowBorderWidth (window->display->xdisplay,
+ window->xwindow,
+ window->border_width);
+
+ /* No save set */
+ XRemoveFromSaveSet (window->display->xdisplay,
+ window->xwindow);
+
+ /* Don't get events on not-managed windows */
+ XSelectInput (window->display->xdisplay,
+ window->xwindow,
+ NoEventMask);
+
+ /* Stop getting events for the window's _NET_WM_USER_TIME_WINDOW too */
+ if (window->user_time_window != None)
+ {
+ meta_display_unregister_x_window (window->display,
+ window->user_time_window);
+ XSelectInput (window->display->xdisplay,
+ window->user_time_window,
+ NoEventMask);
+ window->user_time_window = None;
+ }
+
+#ifdef HAVE_SHAPE
+ if (META_DISPLAY_HAS_SHAPE (window->display))
+ XShapeSelectInput (window->display->xdisplay, window->xwindow, NoEventMask);
+#endif
+
+ meta_error_trap_pop (window->display, FALSE);
+
+ if (window->icon)
+ g_object_unref (G_OBJECT (window->icon));
+
+ if (window->mini_icon)
+ g_object_unref (G_OBJECT (window->mini_icon));
+
+ meta_icon_cache_free (&window->icon_cache);
+
+ g_free (window->sm_client_id);
+ g_free (window->wm_client_machine);
+ g_free (window->startup_id);
+ g_free (window->role);
+ g_free (window->res_class);
+ g_free (window->res_name);
+ g_free (window->title);
+ g_free (window->icon_name);
+ g_free (window->desc);
+ g_free (window);
+}
+
+static void
+set_wm_state (MetaWindow *window,
+ int state)
+{
+ unsigned long data[2];
+
+ meta_verbose ("Setting wm state %s on %s\n",
+ wm_state_to_string (state), window->desc);
+
+ /* Marco doesn't use icon windows, so data[1] should be None
+ * according to the ICCCM 2.0 Section 4.1.3.1.
+ */
+ data[0] = state;
+ data[1] = None;
+
+ meta_error_trap_push (window->display);
+ XChangeProperty (window->display->xdisplay, window->xwindow,
+ window->display->atom_WM_STATE,
+ window->display->atom_WM_STATE,
+ 32, PropModeReplace, (guchar*) data, 2);
+ meta_error_trap_pop (window->display, FALSE);
+}
+
+static void
+set_net_wm_state (MetaWindow *window)
+{
+ int i;
+ unsigned long data[12];
+
+ i = 0;
+ if (window->shaded)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_SHADED;
+ ++i;
+ }
+ if (window->wm_state_modal)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_MODAL;
+ ++i;
+ }
+ if (window->skip_pager)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_SKIP_PAGER;
+ ++i;
+ }
+ if (window->skip_taskbar)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_SKIP_TASKBAR;
+ ++i;
+ }
+ if (window->maximized_horizontally)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_MAXIMIZED_HORZ;
+ ++i;
+ }
+ if (window->maximized_vertically)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_MAXIMIZED_VERT;
+ ++i;
+ }
+ if (window->fullscreen)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_FULLSCREEN;
+ ++i;
+ }
+ if (!meta_window_showing_on_its_workspace (window) || window->shaded)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_HIDDEN;
+ ++i;
+ }
+ if (window->wm_state_above)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_ABOVE;
+ ++i;
+ }
+ if (window->wm_state_below)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_BELOW;
+ ++i;
+ }
+ if (window->wm_state_demands_attention)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_DEMANDS_ATTENTION;
+ ++i;
+ }
+ if (window->on_all_workspaces)
+ {
+ data[i] = window->display->atom__NET_WM_STATE_STICKY;
+ ++i;
+ }
+
+ meta_verbose ("Setting _NET_WM_STATE with %d atoms\n", i);
+
+ meta_error_trap_push (window->display);
+ XChangeProperty (window->display->xdisplay, window->xwindow,
+ window->display->atom__NET_WM_STATE,
+ XA_ATOM,
+ 32, PropModeReplace, (guchar*) data, i);
+ meta_error_trap_pop (window->display, FALSE);
+
+ if (window->fullscreen)
+ {
+ data[0] = window->fullscreen_monitors[0];
+ data[1] = window->fullscreen_monitors[1];
+ data[2] = window->fullscreen_monitors[2];
+ data[3] = window->fullscreen_monitors[3];
+
+ meta_verbose ("Setting _NET_WM_FULLSCREEN_MONITORS\n");
+ meta_error_trap_push (window->display);
+ XChangeProperty (window->display->xdisplay,
+ window->xwindow,
+ window->display->atom__NET_WM_FULLSCREEN_MONITORS,
+ XA_CARDINAL, 32, PropModeReplace,
+ (guchar*) data, 4);
+ meta_error_trap_pop (window->display, FALSE);
+ }
+}
+
+gboolean
+meta_window_located_on_workspace (MetaWindow *window,
+ MetaWorkspace *workspace)
+{
+ return (window->on_all_workspaces && window->screen == workspace->screen) ||
+ (window->workspace == workspace);
+}
+
+static gboolean
+is_minimized_foreach (MetaWindow *window,
+ void *data)
+{
+ gboolean *result = data;
+
+ *result = window->minimized;
+ if (*result)
+ return FALSE; /* stop as soon as we find one */
+ else
+ return TRUE;
+}
+
+static gboolean
+ancestor_is_minimized (MetaWindow *window)
+{
+ gboolean is_minimized;
+
+ is_minimized = FALSE;
+
+ meta_window_foreach_ancestor (window, is_minimized_foreach, &is_minimized);
+
+ return is_minimized;
+}
+
+gboolean
+meta_window_showing_on_its_workspace (MetaWindow *window)
+{
+ gboolean showing;
+ gboolean is_desktop_or_dock;
+ MetaWorkspace* workspace_of_window;
+
+ showing = TRUE;
+
+ /* 1. See if we're minimized */
+ if (window->minimized)
+ showing = FALSE;
+
+ /* 2. See if we're in "show desktop" mode */
+ is_desktop_or_dock = FALSE;
+ is_desktop_or_dock_foreach (window,
+ &is_desktop_or_dock);
+
+ meta_window_foreach_ancestor (window, is_desktop_or_dock_foreach,
+ &is_desktop_or_dock);
+
+ if (window->on_all_workspaces)
+ workspace_of_window = window->screen->active_workspace;
+ else if (window->workspace)
+ workspace_of_window = window->workspace;
+ else /* This only seems to be needed for startup */
+ workspace_of_window = NULL;
+
+ if (showing &&
+ workspace_of_window && workspace_of_window->showing_desktop &&
+ !is_desktop_or_dock)
+ {
+ meta_verbose ("We're showing the desktop on the workspace(s) that window %s is on\n",
+ window->desc);
+ showing = FALSE;
+ }
+
+ /* 3. See if an ancestor is minimized (note that
+ * ancestor's "mapped" field may not be up to date
+ * since it's being computed in this same idle queue)
+ */
+
+ if (showing)
+ {
+ if (ancestor_is_minimized (window))
+ showing = FALSE;
+ }
+
+#if 0
+ /* 4. See if we're drawing wireframe
+ */
+ if (window->display->grab_window == window &&
+ window->display->grab_wireframe_active)
+ showing = FALSE;
+#endif
+
+ return showing;
+}
+
+gboolean
+meta_window_should_be_showing (MetaWindow *window)
+{
+ gboolean on_workspace;
+
+ meta_verbose ("Should be showing for window %s\n", window->desc);
+
+ /* See if we're on the workspace */
+ on_workspace = meta_window_located_on_workspace (window,
+ window->screen->active_workspace);
+
+ if (!on_workspace)
+ meta_verbose ("Window %s is not on workspace %d\n",
+ window->desc,
+ meta_workspace_index (window->screen->active_workspace));
+ else
+ meta_verbose ("Window %s is on the active workspace %d\n",
+ window->desc,
+ meta_workspace_index (window->screen->active_workspace));
+
+ if (window->on_all_workspaces)
+ meta_verbose ("Window %s is on all workspaces\n", window->desc);
+
+ return on_workspace && meta_window_showing_on_its_workspace (window);
+}
+
+static void
+finish_minimize (gpointer data)
+{
+ MetaWindow *window = data;
+ /* FIXME: It really sucks to put timestamp pinging here; it'd
+ * probably make more sense in implement_showing() so that it's at
+ * least not duplicated in meta_window_show; but since
+ * finish_minimize is a callback making things just slightly icky, I
+ * haven't done that yet.
+ */
+ guint32 timestamp = meta_display_get_current_time_roundtrip (window->display);
+
+ meta_window_hide (window);
+ if (window->has_focus)
+ {
+ meta_workspace_focus_default_window (window->screen->active_workspace,
+ window,
+ timestamp);
+ }
+}
+
+static void
+implement_showing (MetaWindow *window,
+ gboolean showing)
+{
+ /* Actually show/hide the window */
+ meta_verbose ("Implement showing = %d for window %s\n",
+ showing, window->desc);
+
+ if (!showing)
+ {
+ gboolean on_workspace;
+
+ on_workspace = meta_window_located_on_workspace (window,
+ window->screen->active_workspace);
+
+ /* Really this effects code should probably
+ * be in meta_window_hide so the window->mapped
+ * test isn't duplicated here. Anyhow, we animate
+ * if we are mapped now, we are supposed to
+ * be minimized, and we are on the current workspace.
+ */
+ if (on_workspace && window->minimized && window->mapped &&
+ !meta_prefs_get_reduced_resources ())
+ {
+ MetaRectangle icon_rect, window_rect;
+ gboolean result;
+
+ /* Check if the window has an icon geometry */
+ result = meta_window_get_icon_geometry (window, &icon_rect);
+
+ if (!result)
+ {
+ /* just animate into the corner somehow - maybe
+ * not a good idea...
+ */
+ icon_rect.x = window->screen->rect.width;
+ icon_rect.y = window->screen->rect.height;
+ icon_rect.width = 1;
+ icon_rect.height = 1;
+ }
+
+ meta_window_get_outer_rect (window, &window_rect);
+
+ meta_effect_run_minimize (window,
+ &window_rect,
+ &icon_rect,
+ finish_minimize,
+ window);
+ }
+ else
+ {
+ finish_minimize (window);
+ }
+ }
+ else
+ {
+ meta_window_show (window);
+ }
+}
+
+void
+meta_window_calc_showing (MetaWindow *window)
+{
+ implement_showing (window, meta_window_should_be_showing (window));
+}
+
+static guint queue_idle[NUMBER_OF_QUEUES] = {0, 0, 0};
+static GSList *queue_pending[NUMBER_OF_QUEUES] = {NULL, NULL, NULL};
+
+static int
+stackcmp (gconstpointer a, gconstpointer b)
+{
+ MetaWindow *aw = (gpointer) a;
+ MetaWindow *bw = (gpointer) b;
+
+ if (aw->screen != bw->screen)
+ return 0; /* don't care how they sort with respect to each other */
+ else
+ return meta_stack_windows_cmp (aw->screen->stack,
+ aw, bw);
+}
+
+static gboolean
+idle_calc_showing (gpointer data)
+{
+ GSList *tmp;
+ GSList *copy;
+ GSList *should_show;
+ GSList *should_hide;
+ GSList *unplaced;
+ GSList *displays;
+ MetaWindow *first_window;
+ guint queue_index = GPOINTER_TO_INT (data);
+
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Clearing the calc_showing queue\n");
+
+ /* Work with a copy, for reentrancy. The allowed reentrancy isn't
+ * complete; destroying a window while we're in here would result in
+ * badness. But it's OK to queue/unqueue calc_showings.
+ */
+ copy = g_slist_copy (queue_pending[queue_index]);
+ g_slist_free (queue_pending[queue_index]);
+ queue_pending[queue_index] = NULL;
+ queue_idle[queue_index] = 0;
+
+ destroying_windows_disallowed += 1;
+
+ /* We map windows from top to bottom and unmap from bottom to
+ * top, to avoid extra expose events. The exception is
+ * for unplaced windows, which have to be mapped from bottom to
+ * top so placement works.
+ */
+ should_show = NULL;
+ should_hide = NULL;
+ unplaced = NULL;
+ displays = NULL;
+
+ tmp = copy;
+ while (tmp != NULL)
+ {
+ MetaWindow *window;
+
+ window = tmp->data;
+
+ if (!window->placed)
+ unplaced = g_slist_prepend (unplaced, window);
+ else if (meta_window_should_be_showing (window))
+ should_show = g_slist_prepend (should_show, window);
+ else
+ should_hide = g_slist_prepend (should_hide, window);
+
+ tmp = tmp->next;
+ }
+
+ /* bottom to top */
+ unplaced = g_slist_sort (unplaced, stackcmp);
+ should_hide = g_slist_sort (should_hide, stackcmp);
+ /* top to bottom */
+ should_show = g_slist_sort (should_show, stackcmp);
+ should_show = g_slist_reverse (should_show);
+
+ first_window = copy->data;
+
+ meta_display_grab (first_window->display);
+
+ tmp = unplaced;
+ while (tmp != NULL)
+ {
+ MetaWindow *window;
+
+ window = tmp->data;
+
+ meta_window_calc_showing (window);
+
+ tmp = tmp->next;
+ }
+
+ tmp = should_show;
+ while (tmp != NULL)
+ {
+ MetaWindow *window;
+
+ window = tmp->data;
+
+ implement_showing (window, TRUE);
+
+ tmp = tmp->next;
+ }
+
+ tmp = should_hide;
+ while (tmp != NULL)
+ {
+ MetaWindow *window;
+
+ window = tmp->data;
+
+ implement_showing (window, FALSE);
+
+ tmp = tmp->next;
+ }
+
+ tmp = copy;
+ while (tmp != NULL)
+ {
+ MetaWindow *window;
+
+ window = tmp->data;
+
+ /* important to set this here for reentrancy -
+ * if we queue a window again while it's in "copy",
+ * then queue_calc_showing will just return since
+ * we are still in the calc_showing queue
+ */
+ window->is_in_queues &= ~META_QUEUE_CALC_SHOWING;
+
+ tmp = tmp->next;
+ }
+
+ if (meta_prefs_get_focus_mode () != META_FOCUS_MODE_CLICK)
+ {
+ /* When display->mouse_mode is false, we want to ignore
+ * EnterNotify events unless they come from mouse motion. To do
+ * that, we set a sentinel property on the root window if we're
+ * not in mouse_mode.
+ */
+ tmp = should_show;
+ while (tmp != NULL)
+ {
+ MetaWindow *window = tmp->data;
+
+ if (!window->display->mouse_mode)
+ meta_display_increment_focus_sentinel (window->display);
+
+ tmp = tmp->next;
+ }
+ }
+
+ meta_display_ungrab (first_window->display);
+
+ g_slist_free (copy);
+
+ g_slist_free (unplaced);
+ g_slist_free (should_show);
+ g_slist_free (should_hide);
+ g_slist_free (displays);
+
+ destroying_windows_disallowed -= 1;
+
+ return FALSE;
+}
+
+#ifdef WITH_VERBOSE_MODE
+static const gchar* meta_window_queue_names[NUMBER_OF_QUEUES] =
+ {"calc_showing", "move_resize", "update_icon"};
+#endif
+
+static void
+meta_window_unqueue (MetaWindow *window, guint queuebits)
+{
+ gint queuenum;
+
+ for (queuenum=0; queuenum<NUMBER_OF_QUEUES; queuenum++)
+ {
+ if ((queuebits & 1<<queuenum) /* they have asked to unqueue */
+ &&
+ (window->is_in_queues & 1<<queuenum)) /* it's in the queue */
+ {
+
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Removing %s from the %s queue\n",
+ window->desc,
+ meta_window_queue_names[queuenum]);
+
+ /* Note that window may not actually be in the queue
+ * because it may have been in "copy" inside the idle handler
+ */
+ queue_pending[queuenum] = g_slist_remove (queue_pending[queuenum], window);
+ window->is_in_queues &= ~(1<<queuenum);
+
+ /* Okay, so maybe we've used up all the entries in the queue.
+ * In that case, we should kill the function that deals with
+ * the queue, because there's nothing left for it to do.
+ */
+ if (queue_pending[queuenum] == NULL && queue_idle[queuenum] != 0)
+ {
+ g_source_remove (queue_idle[queuenum]);
+ queue_idle[queuenum] = 0;
+ }
+ }
+ }
+}
+
+static void
+meta_window_flush_calc_showing (MetaWindow *window)
+{
+ if (window->is_in_queues & META_QUEUE_CALC_SHOWING)
+ {
+ meta_window_unqueue (window, META_QUEUE_CALC_SHOWING);
+ meta_window_calc_showing (window);
+ }
+}
+
+void
+meta_window_queue (MetaWindow *window, guint queuebits)
+{
+ guint queuenum;
+
+ for (queuenum=0; queuenum<NUMBER_OF_QUEUES; queuenum++)
+ {
+ if (queuebits & 1<<queuenum)
+ {
+ /* Data which varies between queues.
+ * Yes, these do look a lot like associative arrays:
+ * I seem to be turning into a Perl programmer.
+ */
+
+ const gint window_queue_idle_priority[NUMBER_OF_QUEUES] =
+ {
+ G_PRIORITY_DEFAULT_IDLE, /* CALC_SHOWING */
+ META_PRIORITY_RESIZE, /* MOVE_RESIZE */
+ G_PRIORITY_DEFAULT_IDLE /* UPDATE_ICON */
+ };
+
+ const GSourceFunc window_queue_idle_handler[NUMBER_OF_QUEUES] =
+ {
+ idle_calc_showing,
+ idle_move_resize,
+ idle_update_icon,
+ };
+
+ /* If we're about to drop the window, there's no point in putting
+ * it on a queue.
+ */
+ if (window->unmanaging)
+ break;
+
+ /* If the window already claims to be in that queue, there's no
+ * point putting it in the queue.
+ */
+ if (window->is_in_queues & 1<<queuenum)
+ break;
+
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Putting %s in the %s queue\n",
+ window->desc,
+ meta_window_queue_names[queuenum]);
+
+ /* So, mark it as being in this queue. */
+ window->is_in_queues |= 1<<queuenum;
+
+ /* There's not a lot of point putting things into a queue if
+ * nobody's on the other end pulling them out. Therefore,
+ * let's check to see whether an idle handler exists to do
+ * that. If not, we'll create one.
+ */
+
+ if (queue_idle[queuenum] == 0)
+ queue_idle[queuenum] = g_idle_add_full
+ (
+ window_queue_idle_priority[queuenum],
+ window_queue_idle_handler[queuenum],
+ GUINT_TO_POINTER(queuenum),
+ NULL
+ );
+
+ /* And now we actually put it on the queue. */
+ queue_pending[queuenum] = g_slist_prepend (queue_pending[queuenum],
+ window);
+ }
+ }
+}
+
+static gboolean
+intervening_user_event_occurred (MetaWindow *window)
+{
+ guint32 compare;
+ MetaWindow *focus_window;
+
+ focus_window = window->display->focus_window;
+
+ meta_topic (META_DEBUG_STARTUP,
+ "COMPARISON:\n"
+ " net_wm_user_time_set : %d\n"
+ " net_wm_user_time : %u\n"
+ " initial_timestamp_set: %d\n"
+ " initial_timestamp : %u\n",
+ window->net_wm_user_time_set,
+ window->net_wm_user_time,
+ window->initial_timestamp_set,
+ window->initial_timestamp);
+ if (focus_window != NULL)
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "COMPARISON (continued):\n"
+ " focus_window : %s\n"
+ " fw->net_wm_user_time_set : %d\n"
+ " fw->net_wm_user_time : %u\n",
+ focus_window->desc,
+ focus_window->net_wm_user_time_set,
+ focus_window->net_wm_user_time);
+ }
+
+ /* We expect the most common case for not focusing a new window
+ * to be when a hint to not focus it has been set. Since we can
+ * deal with that case rapidly, we use special case it--this is
+ * merely a preliminary optimization. :)
+ */
+ if ( ((window->net_wm_user_time_set == TRUE) &&
+ (window->net_wm_user_time == 0))
+ ||
+ ((window->initial_timestamp_set == TRUE) &&
+ (window->initial_timestamp == 0)))
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "window %s explicitly requested no focus\n",
+ window->desc);
+ return TRUE;
+ }
+
+ if (!(window->net_wm_user_time_set) && !(window->initial_timestamp_set))
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "no information about window %s found\n",
+ window->desc);
+ return FALSE;
+ }
+
+ if (focus_window != NULL &&
+ !focus_window->net_wm_user_time_set)
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "focus window, %s, doesn't have a user time set yet!\n",
+ window->desc);
+ return FALSE;
+ }
+
+ /* To determine the "launch" time of an application,
+ * startup-notification can set the TIMESTAMP and the
+ * application (usually via its toolkit such as gtk or qt) can
+ * set the _NET_WM_USER_TIME. If both are set, we need to be
+ * using the newer of the two values.
+ *
+ * See http://bugzilla.gnome.org/show_bug.cgi?id=573922
+ */
+ compare = 0;
+ if (window->net_wm_user_time_set &&
+ window->initial_timestamp_set)
+ compare =
+ XSERVER_TIME_IS_BEFORE (window->net_wm_user_time,
+ window->initial_timestamp) ?
+ window->initial_timestamp : window->net_wm_user_time;
+ else if (window->net_wm_user_time_set)
+ compare = window->net_wm_user_time;
+ else if (window->initial_timestamp_set)
+ compare = window->initial_timestamp;
+
+ if ((focus_window != NULL) &&
+ XSERVER_TIME_IS_BEFORE (compare, focus_window->net_wm_user_time))
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "window %s focus prevented by other activity; %u < %u\n",
+ window->desc,
+ compare,
+ focus_window->net_wm_user_time);
+ return TRUE;
+ }
+ else
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "new window %s with no intervening events\n",
+ window->desc);
+ return FALSE;
+ }
+}
+
+/* This function is an ugly hack. It's experimental in nature and ought to be
+ * replaced by a real hint from the app to the WM if we decide the experimental
+ * behavior is worthwhile. The basic idea is to get more feedback about how
+ * usage scenarios of "strict" focus users and what they expect. See #326159.
+ */
+gboolean
+__window_is_terminal (MetaWindow *window)
+{
+ if (window == NULL || window->res_class == NULL)
+ return FALSE;
+
+ /*
+ * Compare res_class, which is not user-settable, and thus theoretically
+ * a more-reliable indication of term-ness.
+ */
+
+ /* mate-terminal -- if you couldn't guess */
+ if (strcmp (window->res_class, "Mate-terminal") == 0)
+ return TRUE;
+ /* xterm, rxvt, aterm */
+ else if (strcmp (window->res_class, "XTerm") == 0)
+ return TRUE;
+ /* konsole, KDE's terminal program */
+ else if (strcmp (window->res_class, "Konsole") == 0)
+ return TRUE;
+ /* rxvt-unicode */
+ else if (strcmp (window->res_class, "URxvt") == 0)
+ return TRUE;
+ /* eterm */
+ else if (strcmp (window->res_class, "Eterm") == 0)
+ return TRUE;
+ /* KTerm -- some terminal not KDE based; so not like Konsole */
+ else if (strcmp (window->res_class, "KTerm") == 0)
+ return TRUE;
+ /* Multi-mate-terminal */
+ else if (strcmp (window->res_class, "Multi-mate-terminal") == 0)
+ return TRUE;
+ /* mlterm ("multi lingual terminal emulator on X") */
+ else if (strcmp (window->res_class, "mlterm") == 0)
+ return TRUE;
+ /* Terminal -- XFCE Terminal */
+ else if (strcmp (window->res_class, "Terminal") == 0)
+ return TRUE;
+
+ return FALSE;
+}
+
+/* This function determines what state the window should have assuming that it
+ * and the focus_window have no relation
+ */
+static void
+window_state_on_map (MetaWindow *window,
+ gboolean *takes_focus,
+ gboolean *places_on_top)
+{
+ gboolean intervening_events;
+
+ intervening_events = intervening_user_event_occurred (window);
+
+ *takes_focus = !intervening_events;
+ *places_on_top = *takes_focus;
+
+ /* don't initially focus windows that are intended to not accept
+ * focus
+ */
+ if (!(window->input || window->take_focus))
+ {
+ *takes_focus = FALSE;
+ return;
+ }
+
+ /* Terminal usage may be different; some users intend to launch
+ * many apps in quick succession or to just view things in the new
+ * window while still interacting with the terminal. In that case,
+ * apps launched from the terminal should not take focus. This
+ * isn't quite the same as not allowing focus to transfer from
+ * terminals due to new window map, but the latter is a much easier
+ * approximation to enforce so we do that.
+ */
+ if (*takes_focus &&
+ meta_prefs_get_focus_new_windows () == META_FOCUS_NEW_WINDOWS_STRICT &&
+ !window->display->allow_terminal_deactivation &&
+ __window_is_terminal (window->display->focus_window) &&
+ !meta_window_is_ancestor_of_transient (window->display->focus_window,
+ window))
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "focus_window is terminal; not focusing new window.\n");
+ *takes_focus = FALSE;
+ *places_on_top = FALSE;
+ }
+
+ switch (window->type)
+ {
+ case META_WINDOW_UTILITY:
+ case META_WINDOW_TOOLBAR:
+ *takes_focus = FALSE;
+ *places_on_top = FALSE;
+ break;
+ case META_WINDOW_DOCK:
+ case META_WINDOW_DESKTOP:
+ case META_WINDOW_SPLASHSCREEN:
+ case META_WINDOW_MENU:
+ /* don't focus any of these; places_on_top may be irrelevant for some of
+ * these (e.g. dock)--but you never know--the focus window might also be
+ * of the same type in some weird situation...
+ */
+ *takes_focus = FALSE;
+ break;
+ case META_WINDOW_NORMAL:
+ case META_WINDOW_DIALOG:
+ case META_WINDOW_MODAL_DIALOG:
+ /* The default is correct for these */
+ break;
+ }
+}
+
+static gboolean
+windows_overlap (const MetaWindow *w1, const MetaWindow *w2)
+{
+ MetaRectangle w1rect, w2rect;
+ meta_window_get_outer_rect (w1, &w1rect);
+ meta_window_get_outer_rect (w2, &w2rect);
+ return meta_rectangle_overlap (&w1rect, &w2rect);
+}
+
+/* Returns whether a new window would be covered by any
+ * existing window on the same workspace that is set
+ * to be "above" ("always on top"). A window that is not
+ * set "above" would be underneath the new window anyway.
+ *
+ * We take "covered" to mean even partially covered, but
+ * some people might prefer entirely covered. I think it
+ * is more useful to behave this way if any part of the
+ * window is covered, because a partial coverage could be
+ * (say) ninety per cent and almost indistinguishable from total.
+ */
+static gboolean
+window_would_be_covered (const MetaWindow *newbie)
+{
+ MetaWorkspace *workspace = newbie->workspace;
+ GList *tmp, *windows;
+
+ windows = meta_workspace_list_windows (workspace);
+
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+
+ if (w->wm_state_above && w != newbie)
+ {
+ /* We have found a window that is "above". Perhaps it overlaps. */
+ if (windows_overlap (w, newbie))
+ {
+ g_list_free (windows); /* clean up... */
+ return TRUE; /* yes, it does */
+ }
+ }
+
+ tmp = tmp->next;
+ }
+
+ g_list_free (windows);
+ return FALSE; /* none found */
+}
+
+/* XXX META_EFFECT_*_MAP */
+void
+meta_window_show (MetaWindow *window)
+{
+ gboolean did_show;
+ gboolean takes_focus_on_map;
+ gboolean place_on_top_on_map;
+ gboolean needs_stacking_adjustment;
+ MetaWindow *focus_window;
+ guint32 timestamp;
+
+ /* FIXME: It really sucks to put timestamp pinging here; it'd
+ * probably make more sense in implement_showing() so that it's at
+ * least not duplicated in finish_minimize. *shrug*
+ */
+ timestamp = meta_display_get_current_time_roundtrip (window->display);
+
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Showing window %s, shaded: %d iconic: %d placed: %d\n",
+ window->desc, window->shaded, window->iconic, window->placed);
+
+ focus_window = window->display->focus_window; /* May be NULL! */
+ did_show = FALSE;
+ window_state_on_map (window, &takes_focus_on_map, &place_on_top_on_map);
+ needs_stacking_adjustment = FALSE;
+
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Window %s %s focus on map, and %s place on top on map.\n",
+ window->desc,
+ takes_focus_on_map ? "does" : "does not",
+ place_on_top_on_map ? "does" : "does not");
+
+ /* Now, in some rare cases we should *not* put a new window on top.
+ * These cases include certain types of windows showing for the first
+ * time, and any window which would be covered because of another window
+ * being set "above" ("always on top").
+ *
+ * FIXME: Although "place_on_top_on_map" and "takes_focus_on_map" are
+ * generally based on the window type, there is a special case when the
+ * focus window is a terminal for them both to be false; this should
+ * probably rather be a term in the "if" condition below.
+ */
+
+ if ( focus_window != NULL && window->showing_for_first_time &&
+ ( (!place_on_top_on_map && !takes_focus_on_map) ||
+ window_would_be_covered (window) )
+ ) {
+ if (meta_window_is_ancestor_of_transient (focus_window, window))
+ {
+ /* This happens for error dialogs or alerts; these need to remain on
+ * top, but it would be confusing to have its ancestor remain
+ * focused.
+ */
+ meta_topic (META_DEBUG_STARTUP,
+ "The focus window %s is an ancestor of the newly mapped "
+ "window %s which isn't being focused. Unfocusing the "
+ "ancestor.\n",
+ focus_window->desc, window->desc);
+
+ meta_display_focus_the_no_focus_window (window->display,
+ window->screen,
+ timestamp);
+ }
+ else
+ {
+ needs_stacking_adjustment = TRUE;
+ if (!window->placed)
+ window->denied_focus_and_not_transient = TRUE;
+ }
+ }
+
+ if (!window->placed)
+ {
+ /* We have to recalc the placement here since other windows may
+ * have been mapped/placed since we last did constrain_position
+ */
+
+ /* calc_placement is an efficiency hack to avoid
+ * multiple placement calculations before we finally
+ * show the window.
+ */
+ window->calc_placement = TRUE;
+ meta_window_move_resize_now (window);
+ window->calc_placement = FALSE;
+
+ /* don't ever do the initial position constraint thing again.
+ * This is toggled here so that initially-iconified windows
+ * still get placed when they are ultimately shown.
+ */
+ window->placed = TRUE;
+
+ /* Don't want to accidentally reuse the fact that we had been denied
+ * focus in any future constraints unless we're denied focus again.
+ */
+ window->denied_focus_and_not_transient = FALSE;
+ }
+
+ if (needs_stacking_adjustment)
+ {
+ gboolean overlap;
+
+ /* This window isn't getting focus on map. We may need to do some
+ * special handing with it in regards to
+ * - the stacking of the window
+ * - the MRU position of the window
+ * - the demands attention setting of the window
+ *
+ * Firstly, set the flag so we don't give the window focus anyway
+ * and confuse people.
+ */
+
+ takes_focus_on_map = FALSE;
+
+ overlap = windows_overlap (window, focus_window);
+
+ /* We want alt tab to go to the denied-focus window */
+ ensure_mru_position_after (window, focus_window);
+
+ /* We don't want the denied-focus window to obscure the focus
+ * window, and if we're in both click-to-focus mode and
+ * raise-on-click mode then we want to maintain the invariant
+ * that MRU order == stacking order. The need for this if
+ * comes from the fact that in sloppy/mouse focus the focus
+ * window may not overlap other windows and also can be
+ * considered "below" them; this combination means that
+ * placing the denied-focus window "below" the focus window
+ * in the stack when it doesn't overlap it confusingly places
+ * that new window below a lot of other windows.
+ */
+ if (overlap ||
+ (meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK &&
+ meta_prefs_get_raise_on_click ()))
+ meta_window_stack_just_below (window, focus_window);
+
+ /* If the window will be obscured by the focus window, then the
+ * user might not notice the window appearing so set the
+ * demands attention hint.
+ *
+ * We set the hint ourselves rather than calling
+ * meta_window_set_demands_attention() because that would cause
+ * a recalculation of overlap, and a call to set_net_wm_state()
+ * which we are going to call ourselves here a few lines down.
+ */
+ if (overlap)
+ window->wm_state_demands_attention = TRUE;
+ }
+
+ /* Shaded means the frame is mapped but the window is not */
+
+ if (window->frame && !window->frame->mapped)
+ {
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Frame actually needs map\n");
+ window->frame->mapped = TRUE;
+ meta_ui_map_frame (window->screen->ui, window->frame->xwindow);
+ did_show = TRUE;
+ }
+
+ if (window->shaded)
+ {
+ if (window->mapped)
+ {
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "%s actually needs unmap (shaded)\n", window->desc);
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Incrementing unmaps_pending on %s for shade\n",
+ window->desc);
+ window->mapped = FALSE;
+ window->unmaps_pending += 1;
+ meta_error_trap_push (window->display);
+ XUnmapWindow (window->display->xdisplay, window->xwindow);
+ meta_error_trap_pop (window->display, FALSE);
+ }
+
+ if (!window->iconic)
+ {
+ window->iconic = TRUE;
+ set_wm_state (window, IconicState);
+ }
+ }
+ else
+ {
+ if (!window->mapped)
+ {
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "%s actually needs map\n", window->desc);
+ window->mapped = TRUE;
+ meta_error_trap_push (window->display);
+ XMapWindow (window->display->xdisplay, window->xwindow);
+ meta_error_trap_pop (window->display, FALSE);
+ did_show = TRUE;
+
+ if (window->was_minimized)
+ {
+ MetaRectangle window_rect;
+ MetaRectangle icon_rect;
+
+ window->was_minimized = FALSE;
+
+ if (meta_window_get_icon_geometry (window, &icon_rect))
+ {
+ meta_window_get_outer_rect (window, &window_rect);
+
+ meta_effect_run_unminimize (window,
+ &window_rect,
+ &icon_rect,
+ NULL, NULL);
+ }
+ }
+ }
+
+ if (window->iconic)
+ {
+ window->iconic = FALSE;
+ set_wm_state (window, NormalState);
+ }
+ }
+
+ /* We don't want to worry about all cases from inside
+ * implement_showing(); we only want to worry about focus if this
+ * window has not been shown before.
+ */
+ if (window->showing_for_first_time)
+ {
+ window->showing_for_first_time = FALSE;
+ if (takes_focus_on_map)
+ {
+ meta_window_focus (window, timestamp);
+ }
+ else
+ {
+ /* Prevent EnterNotify events in sloppy/mouse focus from
+ * erroneously focusing the window that had been denied
+ * focus. FIXME: This introduces a race; I have a couple
+ * ideas for a better way to accomplish the same thing, but
+ * they're more involved so do it this way for now.
+ */
+ meta_display_increment_focus_sentinel (window->display);
+ }
+ }
+
+ set_net_wm_state (window);
+
+ if (did_show && window->struts)
+ {
+ meta_topic (META_DEBUG_WORKAREA,
+ "Mapped window %s with struts, so invalidating work areas\n",
+ window->desc);
+ invalidate_work_areas (window);
+ }
+
+ /*
+ * Now that we have shown the window, we no longer want to consider the
+ * initial timestamp in any subsequent deliberations whether to focus this
+ * window or not, so clear the flag.
+ *
+ * See http://bugzilla.gnome.org/show_bug.cgi?id=573922
+ */
+ window->initial_timestamp_set = FALSE;
+}
+
+/* XXX META_EFFECT_*_UNMAP */
+static void
+meta_window_hide (MetaWindow *window)
+{
+ gboolean did_hide;
+
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Hiding window %s\n", window->desc);
+
+ did_hide = FALSE;
+
+ if (window->frame && window->frame->mapped)
+ {
+ meta_topic (META_DEBUG_WINDOW_STATE, "Frame actually needs unmap\n");
+ window->frame->mapped = FALSE;
+ meta_ui_unmap_frame (window->screen->ui, window->frame->xwindow);
+ did_hide = TRUE;
+ }
+
+ if (window->mapped)
+ {
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "%s actually needs unmap\n", window->desc);
+ meta_topic (META_DEBUG_WINDOW_STATE,
+ "Incrementing unmaps_pending on %s for hide\n",
+ window->desc);
+ window->mapped = FALSE;
+ window->unmaps_pending += 1;
+ meta_error_trap_push (window->display);
+ XUnmapWindow (window->display->xdisplay, window->xwindow);
+ meta_error_trap_pop (window->display, FALSE);
+ did_hide = TRUE;
+ }
+
+ if (!window->iconic)
+ {
+ window->iconic = TRUE;
+ set_wm_state (window, IconicState);
+ }
+
+ set_net_wm_state (window);
+
+ if (did_hide && window->struts)
+ {
+ meta_topic (META_DEBUG_WORKAREA,
+ "Unmapped window %s with struts, so invalidating work areas\n",
+ window->desc);
+ invalidate_work_areas (window);
+ }
+}
+
+static gboolean
+queue_calc_showing_func (MetaWindow *window,
+ void *data)
+{
+ meta_window_queue(window, META_QUEUE_CALC_SHOWING);
+ return TRUE;
+}
+
+void
+meta_window_minimize (MetaWindow *window)
+{
+ if (!window->minimized)
+ {
+ window->minimized = TRUE;
+ meta_window_queue(window, META_QUEUE_CALC_SHOWING);
+
+ meta_window_foreach_transient (window,
+ queue_calc_showing_func,
+ NULL);
+
+ if (window->has_focus)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing default window due to minimization of focus window %s\n",
+ window->desc);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Minimizing window %s which doesn't have the focus\n",
+ window->desc);
+ }
+ }
+}
+
+void
+meta_window_unminimize (MetaWindow *window)
+{
+ if (window->minimized)
+ {
+ window->minimized = FALSE;
+ window->was_minimized = TRUE;
+ meta_window_queue(window, META_QUEUE_CALC_SHOWING);
+
+ meta_window_foreach_transient (window,
+ queue_calc_showing_func,
+ NULL);
+ }
+}
+
+static void
+ensure_size_hints_satisfied (MetaRectangle *rect,
+ const XSizeHints *size_hints)
+{
+ int minw, minh, maxw, maxh; /* min/max width/height */
+ int basew, baseh, winc, hinc; /* base width/height, width/height increment */
+ int extra_width, extra_height;
+
+ minw = size_hints->min_width; minh = size_hints->min_height;
+ maxw = size_hints->max_width; maxh = size_hints->max_height;
+ basew = size_hints->base_width; baseh = size_hints->base_height;
+ winc = size_hints->width_inc; hinc = size_hints->height_inc;
+
+ /* First, enforce min/max size constraints */
+ rect->width = CLAMP (rect->width, minw, maxw);
+ rect->height = CLAMP (rect->height, minh, maxh);
+
+ /* Now, verify size increment constraints are satisfied, or make them be */
+ extra_width = (rect->width - basew) % winc;
+ extra_height = (rect->height - baseh) % hinc;
+
+ rect->width -= extra_width;
+ rect->height -= extra_height;
+
+ /* Adjusting width/height down, as done above, may violate minimum size
+ * constraints, so one last fix.
+ */
+ if (rect->width < minw)
+ rect->width += ((minw - rect->width)/winc + 1)*winc;
+ if (rect->height < minh)
+ rect->height += ((minh - rect->height)/hinc + 1)*hinc;
+}
+
+static void
+meta_window_save_rect (MetaWindow *window)
+{
+ if (!(META_WINDOW_MAXIMIZED (window) || window->fullscreen))
+ {
+ /* save size/pos as appropriate args for move_resize */
+ if (!window->maximized_horizontally)
+ {
+ window->saved_rect.x = window->rect.x;
+ window->saved_rect.width = window->rect.width;
+ if (window->frame)
+ window->saved_rect.x += window->frame->rect.x;
+ }
+ if (!window->maximized_vertically)
+ {
+ window->saved_rect.y = window->rect.y;
+ window->saved_rect.height = window->rect.height;
+ if (window->frame)
+ window->saved_rect.y += window->frame->rect.y;
+ }
+ }
+}
+
+/**
+ * Save the user_rect regardless of whether the window is maximized or
+ * fullscreen. See save_user_window_placement() for most uses.
+ *
+ * \param window Store current position of this window for future reference
+ */
+static void
+force_save_user_window_placement (MetaWindow *window)
+{
+ meta_window_get_client_root_coords (window, &window->user_rect);
+}
+
+/**
+ * Save the user_rect, but only if the window is neither maximized nor
+ * fullscreen, otherwise the window may snap back to those dimensions
+ * (bug #461927).
+ *
+ * \param window Store current position of this window for future reference
+ */
+static void
+save_user_window_placement (MetaWindow *window)
+{
+ if (!(META_WINDOW_MAXIMIZED (window) || window->fullscreen))
+ {
+ MetaRectangle user_rect;
+
+ meta_window_get_client_root_coords (window, &user_rect);
+
+ if (!window->maximized_horizontally)
+ {
+ window->user_rect.x = user_rect.x;
+ window->user_rect.width = user_rect.width;
+ }
+ if (!window->maximized_vertically)
+ {
+ window->user_rect.y = user_rect.y;
+ window->user_rect.height = user_rect.height;
+ }
+ }
+}
+
+void
+meta_window_maximize_internal (MetaWindow *window,
+ MetaMaximizeFlags directions,
+ MetaRectangle *saved_rect)
+{
+ /* At least one of the two directions ought to be set */
+ gboolean maximize_horizontally, maximize_vertically;
+ maximize_horizontally = directions & META_MAXIMIZE_HORIZONTAL;
+ maximize_vertically = directions & META_MAXIMIZE_VERTICAL;
+ g_assert (maximize_horizontally || maximize_vertically);
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Maximizing %s%s\n",
+ window->desc,
+ maximize_horizontally && maximize_vertically ? "" :
+ maximize_horizontally ? " horizontally" :
+ maximize_vertically ? " vertically" : "BUGGGGG");
+
+ if (saved_rect != NULL)
+ window->saved_rect = *saved_rect;
+ else
+ meta_window_save_rect (window);
+
+ window->maximized_horizontally =
+ window->maximized_horizontally || maximize_horizontally;
+ window->maximized_vertically =
+ window->maximized_vertically || maximize_vertically;
+ if (maximize_horizontally || maximize_vertically)
+ window->force_save_user_rect = FALSE;
+
+ /* Fix for #336850: If the frame shape isn't reapplied, it is
+ * possible that the frame will retains its rounded corners. That
+ * happens if the client's size when maximized equals the unmaximized
+ * size.
+ */
+ if (window->frame)
+ window->frame->need_reapply_frame_shape = TRUE;
+
+ recalc_window_features (window);
+ set_net_wm_state (window);
+}
+
+void
+meta_window_maximize (MetaWindow *window,
+ MetaMaximizeFlags directions)
+{
+ /* At least one of the two directions ought to be set */
+ gboolean maximize_horizontally, maximize_vertically;
+ maximize_horizontally = directions & META_MAXIMIZE_HORIZONTAL;
+ maximize_vertically = directions & META_MAXIMIZE_VERTICAL;
+ g_assert (maximize_horizontally || maximize_vertically);
+
+ /* Only do something if the window isn't already maximized in the
+ * given direction(s).
+ */
+ if ((maximize_horizontally && !window->maximized_horizontally) ||
+ (maximize_vertically && !window->maximized_vertically))
+ {
+ if (window->shaded && maximize_vertically)
+ {
+ /* Shading sucks anyway; I'm not adding a timestamp argument
+ * to this function just for this niche usage & corner case.
+ */
+ guint32 timestamp =
+ meta_display_get_current_time_roundtrip (window->display);
+ meta_window_unshade (window, timestamp);
+ }
+
+ /* if the window hasn't been placed yet, we'll maximize it then
+ */
+ if (!window->placed)
+ {
+ window->maximize_horizontally_after_placement =
+ window->maximize_horizontally_after_placement ||
+ maximize_horizontally;
+ window->maximize_vertically_after_placement =
+ window->maximize_vertically_after_placement ||
+ maximize_vertically;
+ return;
+ }
+
+ meta_window_maximize_internal (window,
+ directions,
+ NULL);
+
+ /* move_resize with new maximization constraints
+ */
+ meta_window_queue(window, META_QUEUE_MOVE_RESIZE);
+ }
+}
+
+static void
+unmaximize_window_before_freeing (MetaWindow *window)
+{
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Unmaximizing %s just before freeing\n",
+ window->desc);
+
+ window->maximized_horizontally = FALSE;
+ window->maximized_vertically = FALSE;
+
+ if (window->withdrawn) /* See bug #137185 */
+ {
+ window->rect = window->saved_rect;
+ set_net_wm_state (window);
+ }
+ else if (window->screen->closing) /* See bug #358042 */
+ {
+ /* Do NOT update net_wm_state: this screen is closing,
+ * it likely will be managed by another window manager
+ * that will need the current _NET_WM_STATE atoms.
+ * Moreover, it will need to know the unmaximized geometry,
+ * therefore move_resize the window to saved_rect here
+ * before closing it. */
+ meta_window_move_resize (window,
+ FALSE,
+ window->saved_rect.x,
+ window->saved_rect.y,
+ window->saved_rect.width,
+ window->saved_rect.height);
+ }
+}
+
+void
+meta_window_unmaximize (MetaWindow *window,
+ MetaMaximizeFlags directions)
+{
+ /* At least one of the two directions ought to be set */
+ gboolean unmaximize_horizontally, unmaximize_vertically;
+ unmaximize_horizontally = directions & META_MAXIMIZE_HORIZONTAL;
+ unmaximize_vertically = directions & META_MAXIMIZE_VERTICAL;
+ g_assert (unmaximize_horizontally || unmaximize_vertically);
+
+ /* Only do something if the window isn't already maximized in the
+ * given direction(s).
+ */
+ if ((unmaximize_horizontally && window->maximized_horizontally) ||
+ (unmaximize_vertically && window->maximized_vertically))
+ {
+ MetaRectangle target_rect;
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Unmaximizing %s%s\n",
+ window->desc,
+ unmaximize_horizontally && unmaximize_vertically ? "" :
+ unmaximize_horizontally ? " horizontally" :
+ unmaximize_vertically ? " vertically" : "BUGGGGG");
+
+ window->maximized_horizontally =
+ window->maximized_horizontally && !unmaximize_horizontally;
+ window->maximized_vertically =
+ window->maximized_vertically && !unmaximize_vertically;
+
+ /* Unmaximize to the saved_rect position in the direction(s)
+ * being unmaximized.
+ */
+ meta_window_get_client_root_coords (window, &target_rect);
+ if (unmaximize_horizontally)
+ {
+ target_rect.x = window->saved_rect.x;
+ target_rect.width = window->saved_rect.width;
+ }
+ if (unmaximize_vertically)
+ {
+ target_rect.y = window->saved_rect.y;
+ target_rect.height = window->saved_rect.height;
+ }
+
+ /* Window's size hints may have changed while maximized, making
+ * saved_rect invalid. #329152
+ */
+ ensure_size_hints_satisfied (&target_rect, &window->size_hints);
+
+ /* When we unmaximize, if we're doing a mouse move also we could
+ * get the window suddenly jumping to the upper left corner of
+ * the workspace, since that's where it was when the grab op
+ * started. So we need to update the grab state.
+ */
+ if (meta_grab_op_is_moving (window->display->grab_op) &&
+ window->display->grab_window == window)
+ {
+ window->display->grab_anchor_window_pos = target_rect;
+ }
+
+ meta_window_move_resize (window,
+ FALSE,
+ target_rect.x,
+ target_rect.y,
+ target_rect.width,
+ target_rect.height);
+
+ /* Make sure user_rect is current.
+ */
+ force_save_user_window_placement (window);
+
+ if (window->display->grab_wireframe_active)
+ {
+ window->display->grab_wireframe_rect = target_rect;
+ }
+
+ recalc_window_features (window);
+ set_net_wm_state (window);
+ }
+}
+
+void
+meta_window_make_above (MetaWindow *window)
+{
+ window->wm_state_above = TRUE;
+ meta_window_update_layer (window);
+ meta_window_raise (window);
+ set_net_wm_state (window);
+}
+
+void
+meta_window_unmake_above (MetaWindow *window)
+{
+ window->wm_state_above = FALSE;
+ meta_window_raise (window);
+ meta_window_update_layer (window);
+ set_net_wm_state (window);
+}
+
+void
+meta_window_make_fullscreen_internal (MetaWindow *window)
+{
+ if (!window->fullscreen)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Fullscreening %s\n", window->desc);
+
+ if (window->shaded)
+ {
+ /* Shading sucks anyway; I'm not adding a timestamp argument
+ * to this function just for this niche usage & corner case.
+ */
+ guint32 timestamp =
+ meta_display_get_current_time_roundtrip (window->display);
+ meta_window_unshade (window, timestamp);
+ }
+
+ meta_window_save_rect (window);
+
+ window->fullscreen = TRUE;
+ window->force_save_user_rect = FALSE;
+
+ meta_stack_freeze (window->screen->stack);
+ meta_window_update_layer (window);
+
+ meta_window_raise (window);
+ meta_stack_thaw (window->screen->stack);
+
+ recalc_window_features (window);
+ set_net_wm_state (window);
+ }
+}
+
+void
+meta_window_make_fullscreen (MetaWindow *window)
+{
+ if (!window->fullscreen)
+ {
+ meta_window_make_fullscreen_internal (window);
+ /* move_resize with new constraints
+ */
+ meta_window_queue(window, META_QUEUE_MOVE_RESIZE);
+ }
+}
+
+void
+meta_window_unmake_fullscreen (MetaWindow *window)
+{
+ if (window->fullscreen)
+ {
+ MetaRectangle target_rect;
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Unfullscreening %s\n", window->desc);
+
+ window->fullscreen = FALSE;
+ target_rect = window->saved_rect;
+
+ /* Window's size hints may have changed while maximized, making
+ * saved_rect invalid. #329152
+ */
+ ensure_size_hints_satisfied (&target_rect, &window->size_hints);
+
+ meta_window_move_resize (window,
+ FALSE,
+ target_rect.x,
+ target_rect.y,
+ target_rect.width,
+ target_rect.height);
+
+ /* Make sure user_rect is current.
+ */
+ force_save_user_window_placement (window);
+
+ meta_window_update_layer (window);
+
+ recalc_window_features (window);
+ set_net_wm_state (window);
+ }
+}
+
+void
+meta_window_update_fullscreen_monitors (MetaWindow *window,
+ unsigned long top,
+ unsigned long bottom,
+ unsigned long left,
+ unsigned long right)
+{
+ if ((int)top < window->screen->n_xinerama_infos &&
+ (int)bottom < window->screen->n_xinerama_infos &&
+ (int)left < window->screen->n_xinerama_infos &&
+ (int)right < window->screen->n_xinerama_infos)
+ {
+ window->fullscreen_monitors[0] = top;
+ window->fullscreen_monitors[1] = bottom;
+ window->fullscreen_monitors[2] = left;
+ window->fullscreen_monitors[3] = right;
+ }
+ else
+ {
+ window->fullscreen_monitors[0] = -1;
+ }
+
+ if (window->fullscreen)
+ {
+ meta_window_queue(window, META_QUEUE_MOVE_RESIZE);
+ }
+}
+
+void
+meta_window_shade (MetaWindow *window,
+ guint32 timestamp)
+{
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Shading %s\n", window->desc);
+ if (!window->shaded)
+ {
+ window->shaded = TRUE;
+
+ meta_window_queue(window, META_QUEUE_MOVE_RESIZE | META_QUEUE_CALC_SHOWING);
+
+ /* After queuing the calc showing, since _focus flushes it,
+ * and we need to focus the frame
+ */
+ meta_topic (META_DEBUG_FOCUS,
+ "Re-focusing window %s after shading it\n",
+ window->desc);
+ meta_window_focus (window, timestamp);
+
+ set_net_wm_state (window);
+ }
+}
+
+void
+meta_window_unshade (MetaWindow *window,
+ guint32 timestamp)
+{
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Unshading %s\n", window->desc);
+ if (window->shaded)
+ {
+ window->shaded = FALSE;
+ meta_window_queue(window, META_QUEUE_MOVE_RESIZE | META_QUEUE_CALC_SHOWING);
+
+ /* focus the window */
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing window %s after unshading it\n",
+ window->desc);
+ meta_window_focus (window, timestamp);
+
+ set_net_wm_state (window);
+ }
+}
+
+static gboolean
+unminimize_func (MetaWindow *window,
+ void *data)
+{
+ meta_window_unminimize (window);
+ return TRUE;
+}
+
+static void
+unminimize_window_and_all_transient_parents (MetaWindow *window)
+{
+ meta_window_unminimize (window);
+ meta_window_foreach_ancestor (window, unminimize_func, NULL);
+}
+
+static void
+window_activate (MetaWindow *window,
+ guint32 timestamp,
+ MetaClientType source_indication,
+ MetaWorkspace *workspace)
+{
+ gboolean can_ignore_outdated_timestamps;
+ meta_topic (META_DEBUG_FOCUS,
+ "_NET_ACTIVE_WINDOW message sent for %s at time %u "
+ "by client type %u.\n",
+ window->desc, timestamp, source_indication);
+
+ /* Older EWMH spec didn't specify a timestamp; we decide to honor these only
+ * if the app specifies that it is a pager.
+ *
+ * Update: Unconditionally honor 0 timestamps for now; we'll fight
+ * that battle later. Just remove the "FALSE &&" in order to only
+ * honor 0 timestamps for pagers.
+ */
+ can_ignore_outdated_timestamps =
+ (timestamp != 0 || (FALSE && source_indication != META_CLIENT_TYPE_PAGER));
+ if (XSERVER_TIME_IS_BEFORE (timestamp, window->display->last_user_time) &&
+ can_ignore_outdated_timestamps)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "last_user_time (%u) is more recent; ignoring "
+ " _NET_ACTIVE_WINDOW message.\n",
+ window->display->last_user_time);
+ meta_window_set_demands_attention(window);
+ return;
+ }
+
+ /* For those stupid pagers, get a valid timestamp and show a warning */
+ if (timestamp == 0)
+ {
+ meta_warning ("meta_window_activate called by a pager with a 0 timestamp; "
+ "the pager needs to be fixed.\n");
+ timestamp = meta_display_get_current_time_roundtrip (window->display);
+ }
+
+ meta_window_set_user_time (window, timestamp);
+
+ /* disable show desktop mode unless we're a desktop component */
+ maybe_leave_show_desktop_mode (window);
+
+ /* Get window on current or given workspace */
+ if (workspace == NULL)
+ workspace = window->screen->active_workspace;
+
+ /* For non-transient windows, we just set up a pulsing indicator,
+ rather than move windows or workspaces.
+ See http://bugzilla.gnome.org/show_bug.cgi?id=482354 */
+ if (window->xtransient_for == None &&
+ !meta_window_located_on_workspace (window, workspace))
+ {
+ meta_window_set_demands_attention (window);
+ /* We've marked it as demanding, don't need to do anything else. */
+ return;
+ }
+ else if (window->xtransient_for != None)
+ {
+ /* Move transients to current workspace - preference dialogs should appear over
+ the source window. */
+ meta_window_change_workspace (window, workspace);
+ }
+
+ if (window->shaded)
+ meta_window_unshade (window, timestamp);
+
+ unminimize_window_and_all_transient_parents (window);
+
+ if (meta_prefs_get_raise_on_click () ||
+ source_indication == META_CLIENT_TYPE_PAGER)
+ meta_window_raise (window);
+
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing window %s due to activation\n",
+ window->desc);
+ meta_window_focus (window, timestamp);
+}
+
+/* This function exists since most of the functionality in window_activate
+ * is useful for Marco, but Marco shouldn't need to specify a client
+ * type for itself. ;-)
+ */
+void
+meta_window_activate (MetaWindow *window,
+ guint32 timestamp)
+{
+ /* We're not really a pager, but the behavior we want is the same as if
+ * we were such. If we change the pager behavior later, we could revisit
+ * this and just add extra flags to window_activate.
+ */
+ window_activate (window, timestamp, META_CLIENT_TYPE_PAGER, NULL);
+}
+
+void
+meta_window_activate_with_workspace (MetaWindow *window,
+ guint32 timestamp,
+ MetaWorkspace *workspace)
+{
+ /* We're not really a pager, but the behavior we want is the same as if
+ * we were such. If we change the pager behavior later, we could revisit
+ * this and just add extra flags to window_activate.
+ */
+ window_activate (window, timestamp, META_CLIENT_TYPE_APPLICATION, workspace);
+}
+
+/* Manually fix all the weirdness explained in the big comment at the
+ * beginning of meta_window_move_resize_internal() giving positions
+ * expected by meta_window_constrain (i.e. positions & sizes of the
+ * internal or client window).
+ */
+static void
+adjust_for_gravity (MetaWindow *window,
+ MetaFrameGeometry *fgeom,
+ gboolean coords_assume_border,
+ int gravity,
+ MetaRectangle *rect)
+{
+ int ref_x, ref_y;
+ int bw;
+ int child_x, child_y;
+ int frame_width, frame_height;
+
+ if (coords_assume_border)
+ bw = window->border_width;
+ else
+ bw = 0;
+
+ if (fgeom)
+ {
+ child_x = fgeom->left_width;
+ child_y = fgeom->top_height;
+ frame_width = child_x + rect->width + fgeom->right_width;
+ frame_height = child_y + rect->height + fgeom->bottom_height;
+ }
+ else
+ {
+ child_x = 0;
+ child_y = 0;
+ frame_width = rect->width;
+ frame_height = rect->height;
+ }
+
+ /* We're computing position to pass to window_move, which is
+ * the position of the client window (StaticGravity basically)
+ *
+ * (see WM spec description of gravity computation, but note that
+ * their formulas assume we're honoring the border width, rather
+ * than compensating for having turned it off)
+ */
+ switch (gravity)
+ {
+ case NorthWestGravity:
+ ref_x = rect->x;
+ ref_y = rect->y;
+ break;
+ case NorthGravity:
+ ref_x = rect->x + rect->width / 2 + bw;
+ ref_y = rect->y;
+ break;
+ case NorthEastGravity:
+ ref_x = rect->x + rect->width + bw * 2;
+ ref_y = rect->y;
+ break;
+ case WestGravity:
+ ref_x = rect->x;
+ ref_y = rect->y + rect->height / 2 + bw;
+ break;
+ case CenterGravity:
+ ref_x = rect->x + rect->width / 2 + bw;
+ ref_y = rect->y + rect->height / 2 + bw;
+ break;
+ case EastGravity:
+ ref_x = rect->x + rect->width + bw * 2;
+ ref_y = rect->y + rect->height / 2 + bw;
+ break;
+ case SouthWestGravity:
+ ref_x = rect->x;
+ ref_y = rect->y + rect->height + bw * 2;
+ break;
+ case SouthGravity:
+ ref_x = rect->x + rect->width / 2 + bw;
+ ref_y = rect->y + rect->height + bw * 2;
+ break;
+ case SouthEastGravity:
+ ref_x = rect->x + rect->width + bw * 2;
+ ref_y = rect->y + rect->height + bw * 2;
+ break;
+ case StaticGravity:
+ default:
+ ref_x = rect->x;
+ ref_y = rect->y;
+ break;
+ }
+
+ switch (gravity)
+ {
+ case NorthWestGravity:
+ rect->x = ref_x + child_x;
+ rect->y = ref_y + child_y;
+ break;
+ case NorthGravity:
+ rect->x = ref_x - frame_width / 2 + child_x;
+ rect->y = ref_y + child_y;
+ break;
+ case NorthEastGravity:
+ rect->x = ref_x - frame_width + child_x;
+ rect->y = ref_y + child_y;
+ break;
+ case WestGravity:
+ rect->x = ref_x + child_x;
+ rect->y = ref_y - frame_height / 2 + child_y;
+ break;
+ case CenterGravity:
+ rect->x = ref_x - frame_width / 2 + child_x;
+ rect->y = ref_y - frame_height / 2 + child_y;
+ break;
+ case EastGravity:
+ rect->x = ref_x - frame_width + child_x;
+ rect->y = ref_y - frame_height / 2 + child_y;
+ break;
+ case SouthWestGravity:
+ rect->x = ref_x + child_x;
+ rect->y = ref_y - frame_height + child_y;
+ break;
+ case SouthGravity:
+ rect->x = ref_x - frame_width / 2 + child_x;
+ rect->y = ref_y - frame_height + child_y;
+ break;
+ case SouthEastGravity:
+ rect->x = ref_x - frame_width + child_x;
+ rect->y = ref_y - frame_height + child_y;
+ break;
+ case StaticGravity:
+ default:
+ rect->x = ref_x;
+ rect->y = ref_y;
+ break;
+ }
+}
+
+static gboolean
+static_gravity_works (MetaDisplay *display)
+{
+ return display->static_gravity_works;
+}
+
+#ifdef HAVE_XSYNC
+static void
+send_sync_request (MetaWindow *window)
+{
+ XSyncValue value;
+ XClientMessageEvent ev;
+
+ window->sync_request_serial++;
+
+ XSyncIntToValue (&value, window->sync_request_serial);
+
+ ev.type = ClientMessage;
+ ev.window = window->xwindow;
+ ev.message_type = window->display->atom_WM_PROTOCOLS;
+ ev.format = 32;
+ ev.data.l[0] = window->display->atom__NET_WM_SYNC_REQUEST;
+ /* FIXME: meta_display_get_current_time() is bad, but since calls
+ * come from meta_window_move_resize_internal (which in turn come
+ * from all over), I'm not sure what we can do to fix it. Do we
+ * want to use _roundtrip, though?
+ */
+ ev.data.l[1] = meta_display_get_current_time (window->display);
+ ev.data.l[2] = XSyncValueLow32 (value);
+ ev.data.l[3] = XSyncValueHigh32 (value);
+
+ /* We don't need to trap errors here as we are already
+ * inside an error_trap_push()/pop() pair.
+ */
+ XSendEvent (window->display->xdisplay,
+ window->xwindow, False, 0, (XEvent*) &ev);
+
+ g_get_current_time (&window->sync_request_time);
+}
+#endif
+
+static void
+meta_window_move_resize_internal (MetaWindow *window,
+ MetaMoveResizeFlags flags,
+ int gravity,
+ int root_x_nw,
+ int root_y_nw,
+ int w,
+ int h)
+{
+ /* meta_window_move_resize_internal gets called with very different
+ * meanings for root_x_nw and root_y_nw. w & h are always the area
+ * of the inner or client window (i.e. excluding the frame) and
+ * gravity is the relevant gravity associated with the request (note
+ * that gravity is ignored for move-only operations unless its
+ * e.g. a configure request). The location is different for
+ * different cases because of how this function gets called; note
+ * that in all cases what we want to find out is the upper left
+ * corner of the position of the inner window:
+ *
+ * Case | Called from (flags; gravity)
+ * -----+-----------------------------------------------
+ * 1 | A resize only ConfigureRequest
+ * 1 | meta_window_resize
+ * 1 | meta_window_resize_with_gravity
+ * 2 | New window
+ * 2 | Session restore
+ * 2 | A not-resize-only ConfigureRequest/net_moveresize_window request
+ * 3 | meta_window_move
+ * 3 | meta_window_move_resize
+ *
+ * For each of the cases, root_x_nw and root_y_nw must be treated as follows:
+ *
+ * (1) They should be entirely ignored; instead the previous position
+ * and size of the window should be resized according to the given
+ * gravity in order to determine the new position of the window.
+ * (2) Needs to be fixed up by adjust_for_gravity() as these
+ * coordinates are relative to some corner or side of the outer
+ * window (except for the case of StaticGravity) and we want to
+ * know the location of the upper left corner of the inner window.
+ * (3) These values are already the desired positon of the NW corner
+ * of the inner window
+ */
+ XWindowChanges values;
+ unsigned int mask;
+ gboolean need_configure_notify;
+ MetaFrameGeometry fgeom;
+ gboolean need_move_client = FALSE;
+ gboolean need_move_frame = FALSE;
+ gboolean need_resize_client = FALSE;
+ gboolean need_resize_frame = FALSE;
+ int frame_size_dx;
+ int frame_size_dy;
+ int size_dx;
+ int size_dy;
+ gboolean is_configure_request;
+ gboolean do_gravity_adjust;
+ gboolean is_user_action;
+ gboolean configure_frame_first;
+ gboolean use_static_gravity;
+ /* used for the configure request, but may not be final
+ * destination due to StaticGravity etc.
+ */
+ int client_move_x;
+ int client_move_y;
+ MetaRectangle new_rect;
+ MetaRectangle old_rect;
+
+ is_configure_request = (flags & META_IS_CONFIGURE_REQUEST) != 0;
+ do_gravity_adjust = (flags & META_DO_GRAVITY_ADJUST) != 0;
+ is_user_action = (flags & META_IS_USER_ACTION) != 0;
+
+ /* The action has to be a move or a resize or both... */
+ g_assert (flags & (META_IS_MOVE_ACTION | META_IS_RESIZE_ACTION));
+
+ /* We don't need it in the idle queue anymore. */
+ meta_window_unqueue (window, META_QUEUE_MOVE_RESIZE);
+
+ meta_window_get_client_root_coords (window, &old_rect);
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Move/resize %s to %d,%d %dx%d%s%s from %d,%d %dx%d\n",
+ window->desc, root_x_nw, root_y_nw, w, h,
+ is_configure_request ? " (configure request)" : "",
+ is_user_action ? " (user move/resize)" : "",
+ old_rect.x, old_rect.y, old_rect.width, old_rect.height);
+
+ if (window->frame)
+ meta_frame_calc_geometry (window->frame,
+ &fgeom);
+
+ new_rect.x = root_x_nw;
+ new_rect.y = root_y_nw;
+ new_rect.width = w;
+ new_rect.height = h;
+
+ /* If this is a resize only, the position should be ignored and
+ * instead obtained by resizing the old rectangle according to the
+ * relevant gravity.
+ */
+ if ((flags & (META_IS_MOVE_ACTION | META_IS_RESIZE_ACTION)) ==
+ META_IS_RESIZE_ACTION)
+ {
+ meta_rectangle_resize_with_gravity (&old_rect,
+ &new_rect,
+ gravity,
+ new_rect.width,
+ new_rect.height);
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Compensated for gravity in resize action; new pos %d,%d\n",
+ new_rect.x, new_rect.y);
+ }
+ else if (is_configure_request || do_gravity_adjust)
+ {
+ adjust_for_gravity (window,
+ window->frame ? &fgeom : NULL,
+ /* configure request coords assume
+ * the border width existed
+ */
+ is_configure_request,
+ gravity,
+ &new_rect);
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Compensated for configure_request/do_gravity_adjust needing "
+ "weird positioning; new pos %d,%d\n",
+ new_rect.x, new_rect.y);
+ }
+
+ meta_window_constrain (window,
+ window->frame ? &fgeom : NULL,
+ flags,
+ gravity,
+ &old_rect,
+ &new_rect);
+
+ w = new_rect.width;
+ h = new_rect.height;
+ root_x_nw = new_rect.x;
+ root_y_nw = new_rect.y;
+
+ if (w != window->rect.width ||
+ h != window->rect.height)
+ need_resize_client = TRUE;
+
+ window->rect.width = w;
+ window->rect.height = h;
+
+ if (window->frame)
+ {
+ int new_w, new_h;
+
+ new_w = window->rect.width + fgeom.left_width + fgeom.right_width;
+
+ if (window->shaded)
+ new_h = fgeom.top_height;
+ else
+ new_h = window->rect.height + fgeom.top_height + fgeom.bottom_height;
+
+ frame_size_dx = new_w - window->frame->rect.width;
+ frame_size_dy = new_h - window->frame->rect.height;
+
+ need_resize_frame = (frame_size_dx != 0 || frame_size_dy != 0);
+
+ window->frame->rect.width = new_w;
+ window->frame->rect.height = new_h;
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Calculated frame size %dx%d\n",
+ window->frame->rect.width,
+ window->frame->rect.height);
+ }
+ else
+ {
+ frame_size_dx = 0;
+ frame_size_dy = 0;
+ }
+
+ /* For nice effect, when growing the window we want to move/resize
+ * the frame first, when shrinking the window we want to move/resize
+ * the client first. If we grow one way and shrink the other,
+ * see which way we're moving "more"
+ *
+ * Mail from Owen subject "Suggestion: Gravity and resizing from the left"
+ * http://mail.gnome.org/archives/wm-spec-list/1999-November/msg00088.html
+ *
+ * An annoying fact you need to know in this code is that StaticGravity
+ * does nothing if you _only_ resize or _only_ move the frame;
+ * it must move _and_ resize, otherwise you get NorthWestGravity
+ * behavior. The move and resize must actually occur, it is not
+ * enough to set CWX | CWWidth but pass in the current size/pos.
+ */
+
+ if (window->frame)
+ {
+ int new_x, new_y;
+ int frame_pos_dx, frame_pos_dy;
+
+ /* Compute new frame coords */
+ new_x = root_x_nw - fgeom.left_width;
+ new_y = root_y_nw - fgeom.top_height;
+
+ frame_pos_dx = new_x - window->frame->rect.x;
+ frame_pos_dy = new_y - window->frame->rect.y;
+
+ need_move_frame = (frame_pos_dx != 0 || frame_pos_dy != 0);
+
+ window->frame->rect.x = new_x;
+ window->frame->rect.y = new_y;
+
+ /* If frame will both move and resize, then StaticGravity
+ * on the child window will kick in and implicitly move
+ * the child with respect to the frame. The implicit
+ * move will keep the child in the same place with
+ * respect to the root window. If frame only moves
+ * or only resizes, then the child will just move along
+ * with the frame.
+ */
+
+ /* window->rect.x, window->rect.y are relative to frame,
+ * remember they are the server coords
+ */
+
+ new_x = fgeom.left_width;
+ new_y = fgeom.top_height;
+
+ if (need_resize_frame && need_move_frame &&
+ static_gravity_works (window->display))
+ {
+ /* static gravity kicks in because frame
+ * is both moved and resized
+ */
+ /* when we move the frame by frame_pos_dx, frame_pos_dy the
+ * client will implicitly move relative to frame by the
+ * inverse delta.
+ *
+ * When moving client then frame, we move the client by the
+ * frame delta, to be canceled out by the implicit move by
+ * the inverse frame delta, resulting in a client at new_x,
+ * new_y.
+ *
+ * When moving frame then client, we move the client
+ * by the same delta as the frame, because the client
+ * was "left behind" by the frame - resulting in a client
+ * at new_x, new_y.
+ *
+ * In both cases we need to move the client window
+ * in all cases where we had to move the frame window.
+ */
+
+ client_move_x = new_x + frame_pos_dx;
+ client_move_y = new_y + frame_pos_dy;
+
+ if (need_move_frame)
+ need_move_client = TRUE;
+
+ use_static_gravity = TRUE;
+ }
+ else
+ {
+ client_move_x = new_x;
+ client_move_y = new_y;
+
+ if (client_move_x != window->rect.x ||
+ client_move_y != window->rect.y)
+ need_move_client = TRUE;
+
+ use_static_gravity = FALSE;
+ }
+
+ /* This is the final target position, but not necessarily what
+ * we pass to XConfigureWindow, due to StaticGravity implicit
+ * movement.
+ */
+ window->rect.x = new_x;
+ window->rect.y = new_y;
+ }
+ else
+ {
+ if (root_x_nw != window->rect.x ||
+ root_y_nw != window->rect.y)
+ need_move_client = TRUE;
+
+ window->rect.x = root_x_nw;
+ window->rect.y = root_y_nw;
+
+ client_move_x = window->rect.x;
+ client_move_y = window->rect.y;
+
+ use_static_gravity = FALSE;
+ }
+
+ /* If frame extents have changed, fill in other frame fields and
+ change frame's extents property. */
+ if (window->frame &&
+ (window->frame->child_x != fgeom.left_width ||
+ window->frame->child_y != fgeom.top_height ||
+ window->frame->right_width != fgeom.right_width ||
+ window->frame->bottom_height != fgeom.bottom_height))
+ {
+ window->frame->child_x = fgeom.left_width;
+ window->frame->child_y = fgeom.top_height;
+ window->frame->right_width = fgeom.right_width;
+ window->frame->bottom_height = fgeom.bottom_height;
+
+ update_net_frame_extents (window);
+ }
+
+ /* See ICCCM 4.1.5 for when to send ConfigureNotify */
+
+ need_configure_notify = FALSE;
+
+ /* If this is a configure request and we change nothing, then we
+ * must send configure notify.
+ */
+ if (is_configure_request &&
+ !(need_move_client || need_move_frame ||
+ need_resize_client || need_resize_frame ||
+ window->border_width != 0))
+ need_configure_notify = TRUE;
+
+ /* We must send configure notify if we move but don't resize, since
+ * the client window may not get a real event
+ */
+ if ((need_move_client || need_move_frame) &&
+ !(need_resize_client || need_resize_frame))
+ need_configure_notify = TRUE;
+
+ /* MapRequest events with a PPosition or UPosition hint with a frame
+ * are moved by marco without resizing; send a configure notify
+ * in such cases. See #322840. (Note that window->constructing is
+ * only true iff this call is due to a MapRequest, and when
+ * PPosition/UPosition hints aren't set, marco seems to send a
+ * ConfigureNotify anyway due to the above code.)
+ */
+ if (window->constructing && window->frame &&
+ ((window->size_hints.flags & PPosition) ||
+ (window->size_hints.flags & USPosition)))
+ need_configure_notify = TRUE;
+
+ /* The rest of this function syncs our new size/pos with X as
+ * efficiently as possible
+ */
+
+ /* configure frame first if we grow more than we shrink
+ */
+ size_dx = w - window->rect.width;
+ size_dy = h - window->rect.height;
+
+ configure_frame_first = (size_dx + size_dy >= 0);
+
+ if (use_static_gravity)
+ meta_window_set_gravity (window, StaticGravity);
+
+ if (configure_frame_first && window->frame)
+ meta_frame_sync_to_window (window->frame,
+ gravity,
+ need_move_frame, need_resize_frame);
+
+ values.border_width = 0;
+ values.x = client_move_x;
+ values.y = client_move_y;
+ values.width = window->rect.width;
+ values.height = window->rect.height;
+
+ mask = 0;
+ if (is_configure_request && window->border_width != 0)
+ mask |= CWBorderWidth; /* must force to 0 */
+ if (need_move_client)
+ mask |= (CWX | CWY);
+ if (need_resize_client)
+ mask |= (CWWidth | CWHeight);
+
+ if (mask != 0)
+ {
+ {
+ int newx, newy;
+ meta_window_get_position (window, &newx, &newy);
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Syncing new client geometry %d,%d %dx%d, border: %s pos: %s size: %s\n",
+ newx, newy,
+ window->rect.width, window->rect.height,
+ mask & CWBorderWidth ? "true" : "false",
+ need_move_client ? "true" : "false",
+ need_resize_client ? "true" : "false");
+ }
+
+ meta_error_trap_push (window->display);
+
+#ifdef HAVE_XSYNC
+ if (window->sync_request_counter != None &&
+ window->display->grab_sync_request_alarm != None &&
+ window->sync_request_time.tv_usec == 0 &&
+ window->sync_request_time.tv_sec == 0)
+ {
+ /* turn off updating */
+ if (window->display->compositor)
+ meta_compositor_set_updates (window->display->compositor, window, FALSE);
+
+ send_sync_request (window);
+ }
+#endif
+
+ XConfigureWindow (window->display->xdisplay,
+ window->xwindow,
+ mask,
+ &values);
+
+ meta_error_trap_pop (window->display, FALSE);
+ }
+
+ if (!configure_frame_first && window->frame)
+ meta_frame_sync_to_window (window->frame,
+ gravity,
+ need_move_frame, need_resize_frame);
+
+ /* Put gravity back to be nice to lesser window managers */
+ if (use_static_gravity)
+ meta_window_set_gravity (window, NorthWestGravity);
+
+ if (need_configure_notify)
+ send_configure_notify (window);
+
+ if (!window->placed && window->force_save_user_rect && !window->fullscreen)
+ force_save_user_window_placement (window);
+ else if (is_user_action)
+ save_user_window_placement (window);
+
+ if (need_move_frame || need_resize_frame ||
+ need_move_client || need_resize_client)
+ {
+ int newx, newy;
+ meta_window_get_position (window, &newx, &newy);
+ meta_topic (META_DEBUG_GEOMETRY,
+ "New size/position %d,%d %dx%d (user %d,%d %dx%d)\n",
+ newx, newy, window->rect.width, window->rect.height,
+ window->user_rect.x, window->user_rect.y,
+ window->user_rect.width, window->user_rect.height);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_GEOMETRY, "Size/position not modified\n");
+ }
+
+ if (window->display->grab_wireframe_active)
+ meta_window_update_wireframe (window, root_x_nw, root_y_nw, w, h);
+ else
+ meta_window_refresh_resize_popup (window);
+
+ /* Invariants leaving this function are:
+ * a) window->rect and frame->rect reflect the actual
+ * server-side size/pos of window->xwindow and frame->xwindow
+ * b) all constraints are obeyed by window->rect and frame->rect
+ */
+}
+
+void
+meta_window_resize (MetaWindow *window,
+ gboolean user_op,
+ int w,
+ int h)
+{
+ int x, y;
+ MetaMoveResizeFlags flags;
+
+ meta_window_get_position (window, &x, &y);
+
+ flags = (user_op ? META_IS_USER_ACTION : 0) | META_IS_RESIZE_ACTION;
+ meta_window_move_resize_internal (window,
+ flags,
+ NorthWestGravity,
+ x, y, w, h);
+}
+
+void
+meta_window_move (MetaWindow *window,
+ gboolean user_op,
+ int root_x_nw,
+ int root_y_nw)
+{
+ MetaMoveResizeFlags flags =
+ (user_op ? META_IS_USER_ACTION : 0) | META_IS_MOVE_ACTION;
+ meta_window_move_resize_internal (window,
+ flags,
+ NorthWestGravity,
+ root_x_nw, root_y_nw,
+ window->rect.width,
+ window->rect.height);
+}
+
+void
+meta_window_move_resize (MetaWindow *window,
+ gboolean user_op,
+ int root_x_nw,
+ int root_y_nw,
+ int w,
+ int h)
+{
+ MetaMoveResizeFlags flags =
+ (user_op ? META_IS_USER_ACTION : 0) |
+ META_IS_MOVE_ACTION | META_IS_RESIZE_ACTION;
+ meta_window_move_resize_internal (window,
+ flags,
+ NorthWestGravity,
+ root_x_nw, root_y_nw,
+ w, h);
+}
+
+void
+meta_window_resize_with_gravity (MetaWindow *window,
+ gboolean user_op,
+ int w,
+ int h,
+ int gravity)
+{
+ int x, y;
+ MetaMoveResizeFlags flags;
+
+ meta_window_get_position (window, &x, &y);
+
+ flags = (user_op ? META_IS_USER_ACTION : 0) | META_IS_RESIZE_ACTION;
+ meta_window_move_resize_internal (window,
+ flags,
+ gravity,
+ x, y, w, h);
+}
+
+static void
+meta_window_move_resize_now (MetaWindow *window)
+{
+ /* If constraints have changed then we want to snap back to wherever
+ * the user had the window. We use user_rect for this reason. See
+ * also bug 426519 comment 3.
+ */
+ meta_window_move_resize (window, FALSE,
+ window->user_rect.x,
+ window->user_rect.y,
+ window->user_rect.width,
+ window->user_rect.height);
+}
+
+static gboolean
+idle_move_resize (gpointer data)
+{
+ GSList *tmp;
+ GSList *copy;
+ guint queue_index = GPOINTER_TO_INT (data);
+
+ meta_topic (META_DEBUG_GEOMETRY, "Clearing the move_resize queue\n");
+
+ /* Work with a copy, for reentrancy. The allowed reentrancy isn't
+ * complete; destroying a window while we're in here would result in
+ * badness. But it's OK to queue/unqueue move_resizes.
+ */
+ copy = g_slist_copy (queue_pending[queue_index]);
+ g_slist_free (queue_pending[queue_index]);
+ queue_pending[queue_index] = NULL;
+ queue_idle[queue_index] = 0;
+
+ destroying_windows_disallowed += 1;
+
+ tmp = copy;
+ while (tmp != NULL)
+ {
+ MetaWindow *window;
+
+ window = tmp->data;
+
+ /* As a side effect, sets window->move_resize_queued = FALSE */
+ meta_window_move_resize_now (window);
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (copy);
+
+ destroying_windows_disallowed -= 1;
+
+ return FALSE;
+}
+
+void
+meta_window_get_position (MetaWindow *window,
+ int *x,
+ int *y)
+{
+ if (window->frame)
+ {
+ if (x)
+ *x = window->frame->rect.x + window->frame->child_x;
+ if (y)
+ *y = window->frame->rect.y + window->frame->child_y;
+ }
+ else
+ {
+ if (x)
+ *x = window->rect.x;
+ if (y)
+ *y = window->rect.y;
+ }
+}
+
+void
+meta_window_get_client_root_coords (MetaWindow *window,
+ MetaRectangle *rect)
+{
+ meta_window_get_position (window, &rect->x, &rect->y);
+ rect->width = window->rect.width;
+ rect->height = window->rect.height;
+}
+
+void
+meta_window_get_gravity_position (MetaWindow *window,
+ int gravity,
+ int *root_x,
+ int *root_y)
+{
+ MetaRectangle frame_extents;
+ int w, h;
+ int x, y;
+
+ w = window->rect.width;
+ h = window->rect.height;
+
+ if (gravity == StaticGravity)
+ {
+ frame_extents = window->rect;
+ if (window->frame)
+ {
+ frame_extents.x = window->frame->rect.x + window->frame->child_x;
+ frame_extents.y = window->frame->rect.y + window->frame->child_y;
+ }
+ }
+ else
+ {
+ if (window->frame == NULL)
+ frame_extents = window->rect;
+ else
+ frame_extents = window->frame->rect;
+ }
+
+ x = frame_extents.x;
+ y = frame_extents.y;
+
+ switch (gravity)
+ {
+ case NorthGravity:
+ case CenterGravity:
+ case SouthGravity:
+ /* Find center of frame. */
+ x += frame_extents.width / 2;
+ /* Center client window on that point. */
+ x -= w / 2;
+ break;
+
+ case SouthEastGravity:
+ case EastGravity:
+ case NorthEastGravity:
+ /* Find right edge of frame */
+ x += frame_extents.width;
+ /* Align left edge of client at that point. */
+ x -= w;
+ break;
+ default:
+ break;
+ }
+
+ switch (gravity)
+ {
+ case WestGravity:
+ case CenterGravity:
+ case EastGravity:
+ /* Find center of frame. */
+ y += frame_extents.height / 2;
+ /* Center client window there. */
+ y -= h / 2;
+ break;
+ case SouthWestGravity:
+ case SouthGravity:
+ case SouthEastGravity:
+ /* Find south edge of frame */
+ y += frame_extents.height;
+ /* Place bottom edge of client there */
+ y -= h;
+ break;
+ default:
+ break;
+ }
+
+ if (root_x)
+ *root_x = x;
+ if (root_y)
+ *root_y = y;
+}
+
+void
+meta_window_get_geometry (MetaWindow *window,
+ int *x,
+ int *y,
+ int *width,
+ int *height)
+{
+ meta_window_get_gravity_position (window,
+ window->size_hints.win_gravity,
+ x, y);
+
+ *width = (window->rect.width - window->size_hints.base_width) /
+ window->size_hints.width_inc;
+ *height = (window->rect.height - window->size_hints.base_height) /
+ window->size_hints.height_inc;
+}
+
+void
+meta_window_get_outer_rect (const MetaWindow *window,
+ MetaRectangle *rect)
+{
+ if (window->frame)
+ *rect = window->frame->rect;
+ else
+ *rect = window->rect;
+}
+
+void
+meta_window_get_xor_rect (MetaWindow *window,
+ const MetaRectangle *grab_wireframe_rect,
+ MetaRectangle *xor_rect)
+{
+ if (window->frame)
+ {
+ xor_rect->x = grab_wireframe_rect->x - window->frame->child_x;
+ xor_rect->y = grab_wireframe_rect->y - window->frame->child_y;
+ xor_rect->width = grab_wireframe_rect->width + window->frame->child_x + window->frame->right_width;
+
+ if (window->shaded)
+ xor_rect->height = window->frame->child_y;
+ else
+ xor_rect->height = grab_wireframe_rect->height + window->frame->child_y + window->frame->bottom_height;
+ }
+ else
+ *xor_rect = *grab_wireframe_rect;
+}
+
+/* Figure out the numbers that show up in the
+ * resize popup when in reduced resources mode.
+ */
+static void
+meta_window_get_wireframe_geometry (MetaWindow *window,
+ int *width,
+ int *height)
+{
+ if (!window->display->grab_wireframe_active)
+ return;
+
+ if ((width == NULL) || (height == NULL))
+ return;
+
+ if ((window->display->grab_window->size_hints.width_inc <= 1) ||
+ (window->display->grab_window->size_hints.height_inc <= 1))
+ {
+ *width = -1;
+ *height = -1;
+ return;
+ }
+
+ *width = window->display->grab_wireframe_rect.width -
+ window->display->grab_window->size_hints.base_width;
+ *width /= window->display->grab_window->size_hints.width_inc;
+
+ *height = window->display->grab_wireframe_rect.height -
+ window->display->grab_window->size_hints.base_height;
+ *height /= window->display->grab_window->size_hints.height_inc;
+}
+
+/* XXX META_EFFECT_ALT_TAB, well, this and others */
+void
+meta_window_begin_wireframe (MetaWindow *window)
+{
+
+ MetaRectangle new_xor;
+ int display_width, display_height;
+
+ meta_window_get_client_root_coords (window,
+ &window->display->grab_wireframe_rect);
+
+ meta_window_get_xor_rect (window, &window->display->grab_wireframe_rect,
+ &new_xor);
+ meta_window_get_wireframe_geometry (window, &display_width, &display_height);
+
+ meta_effects_begin_wireframe (window->screen,
+ &new_xor, display_width, display_height);
+
+ window->display->grab_wireframe_last_xor_rect = new_xor;
+ window->display->grab_wireframe_last_display_width = display_width;
+ window->display->grab_wireframe_last_display_height = display_height;
+}
+
+void
+meta_window_update_wireframe (MetaWindow *window,
+ int x,
+ int y,
+ int width,
+ int height)
+{
+
+ MetaRectangle new_xor;
+ int display_width, display_height;
+
+ window->display->grab_wireframe_rect.x = x;
+ window->display->grab_wireframe_rect.y = y;
+ window->display->grab_wireframe_rect.width = width;
+ window->display->grab_wireframe_rect.height = height;
+
+ meta_window_get_xor_rect (window, &window->display->grab_wireframe_rect,
+ &new_xor);
+ meta_window_get_wireframe_geometry (window, &display_width, &display_height);
+
+ meta_effects_update_wireframe (window->screen,
+ &window->display->grab_wireframe_last_xor_rect,
+ window->display->grab_wireframe_last_display_width,
+ window->display->grab_wireframe_last_display_height,
+ &new_xor, display_width, display_height);
+
+ window->display->grab_wireframe_last_xor_rect = new_xor;
+ window->display->grab_wireframe_last_display_width = display_width;
+ window->display->grab_wireframe_last_display_height = display_height;
+}
+
+void
+meta_window_end_wireframe (MetaWindow *window)
+{
+ meta_effects_end_wireframe (window->display->grab_window->screen,
+ &window->display->grab_wireframe_last_xor_rect,
+ window->display->grab_wireframe_last_display_width,
+ window->display->grab_wireframe_last_display_height);
+}
+
+const char*
+meta_window_get_startup_id (MetaWindow *window)
+{
+ if (window->startup_id == NULL)
+ {
+ MetaGroup *group;
+
+ group = meta_window_get_group (window);
+
+ if (group != NULL)
+ return meta_group_get_startup_id (group);
+ }
+
+ return window->startup_id;
+}
+
+static MetaWindow*
+get_modal_transient (MetaWindow *window)
+{
+ GSList *windows;
+ GSList *tmp;
+ MetaWindow *modal_transient;
+
+ /* A window can't be the transient of itself, but this is just for
+ * convenience in the loop below; we manually fix things up at the
+ * end if no real modal transient was found.
+ */
+ modal_transient = window;
+
+ windows = meta_display_list_windows (window->display);
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *transient = tmp->data;
+
+ if (transient->xtransient_for == modal_transient->xwindow &&
+ transient->wm_state_modal)
+ {
+ modal_transient = transient;
+ tmp = windows;
+ continue;
+ }
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (windows);
+
+ if (window == modal_transient)
+ modal_transient = NULL;
+
+ return modal_transient;
+}
+
+/* XXX META_EFFECT_FOCUS */
+void
+meta_window_focus (MetaWindow *window,
+ guint32 timestamp)
+{
+ MetaWindow *modal_transient;
+
+ meta_topic (META_DEBUG_FOCUS,
+ "Setting input focus to window %s, input: %d take_focus: %d\n",
+ window->desc, window->input, window->take_focus);
+
+ if (window->display->grab_window &&
+ window->display->grab_window->all_keys_grabbed)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Current focus window %s has global keygrab, not focusing window %s after all\n",
+ window->display->grab_window->desc, window->desc);
+ return;
+ }
+
+ modal_transient = get_modal_transient (window);
+ if (modal_transient != NULL &&
+ !modal_transient->unmanaging)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "%s has %s as a modal transient, so focusing it instead.\n",
+ window->desc, modal_transient->desc);
+ if (!modal_transient->on_all_workspaces &&
+ modal_transient->workspace != window->screen->active_workspace)
+ meta_window_change_workspace (modal_transient,
+ window->screen->active_workspace);
+ window = modal_transient;
+ }
+
+ meta_window_flush_calc_showing (window);
+
+ if (!window->mapped && !window->shaded)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Window %s is not showing, not focusing after all\n",
+ window->desc);
+ return;
+ }
+
+ /* For output-only or shaded windows, focus the frame.
+ * This seems to result in the client window getting key events
+ * though, so I don't know if it's icccm-compliant.
+ *
+ * Still, we have to do this or keynav breaks for these windows.
+ */
+ if (window->frame &&
+ (window->shaded ||
+ !(window->input || window->take_focus)))
+ {
+ if (window->frame)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing frame of %s\n", window->desc);
+ meta_display_set_input_focus_window (window->display,
+ window,
+ TRUE,
+ timestamp);
+ }
+ }
+ else
+ {
+ if (window->input)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Setting input focus on %s since input = true\n",
+ window->desc);
+ meta_display_set_input_focus_window (window->display,
+ window,
+ FALSE,
+ timestamp);
+ }
+
+ if (window->take_focus)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Sending WM_TAKE_FOCUS to %s since take_focus = true\n",
+ window->desc);
+ meta_window_send_icccm_message (window,
+ window->display->atom_WM_TAKE_FOCUS,
+ timestamp);
+ window->display->expected_focus_window = window;
+ }
+ }
+
+ if (window->wm_state_demands_attention)
+ meta_window_unset_demands_attention(window);
+
+ meta_effect_run_focus(window, NULL, NULL);
+}
+
+static void
+meta_window_change_workspace_without_transients (MetaWindow *window,
+ MetaWorkspace *workspace)
+{
+ meta_verbose ("Changing window %s to workspace %d\n",
+ window->desc, meta_workspace_index (workspace));
+
+ /* unstick if stuck. meta_window_unstick would call
+ * meta_window_change_workspace recursively if the window
+ * is not in the active workspace.
+ */
+ if (window->on_all_workspaces)
+ meta_window_unstick (window);
+
+ /* See if we're already on this space. If not, make sure we are */
+ if (window->workspace != workspace)
+ {
+ meta_workspace_remove_window (window->workspace, window);
+ meta_workspace_add_window (workspace, window);
+ }
+}
+
+static gboolean
+change_workspace_foreach (MetaWindow *window,
+ void *data)
+{
+ meta_window_change_workspace_without_transients (window, data);
+ return TRUE;
+}
+
+void
+meta_window_change_workspace (MetaWindow *window,
+ MetaWorkspace *workspace)
+{
+ meta_window_change_workspace_without_transients (window, workspace);
+
+ meta_window_foreach_transient (window, change_workspace_foreach,
+ workspace);
+ meta_window_foreach_ancestor (window, change_workspace_foreach,
+ workspace);
+}
+
+static void
+window_stick_impl (MetaWindow *window)
+{
+ GList *tmp;
+ MetaWorkspace *workspace;
+
+ meta_verbose ("Sticking window %s current on_all_workspaces = %d\n",
+ window->desc, window->on_all_workspaces);
+
+ if (window->on_all_workspaces)
+ return;
+
+ /* We don't change window->workspaces, because we revert
+ * to that original workspace list if on_all_workspaces is
+ * toggled back off.
+ */
+ window->on_all_workspaces = TRUE;
+
+ /* We do, however, change the MRU lists of all the workspaces
+ */
+ tmp = window->screen->workspaces;
+ while (tmp)
+ {
+ workspace = (MetaWorkspace *) tmp->data;
+ if (!g_list_find (workspace->mru_list, window))
+ workspace->mru_list = g_list_prepend (workspace->mru_list, window);
+
+ tmp = tmp->next;
+ }
+
+ meta_window_set_current_workspace_hint (window);
+
+ meta_window_queue(window, META_QUEUE_CALC_SHOWING);
+}
+
+static void
+window_unstick_impl (MetaWindow *window)
+{
+ GList *tmp;
+ MetaWorkspace *workspace;
+
+ if (!window->on_all_workspaces)
+ return;
+
+ /* Revert to window->workspaces */
+
+ window->on_all_workspaces = FALSE;
+
+ /* Remove window from MRU lists that it doesn't belong in */
+ tmp = window->screen->workspaces;
+ while (tmp)
+ {
+ workspace = (MetaWorkspace *) tmp->data;
+ if (window->workspace != workspace)
+ workspace->mru_list = g_list_remove (workspace->mru_list, window);
+ tmp = tmp->next;
+ }
+
+ /* We change ourselves to the active workspace, since otherwise you'd get
+ * a weird window-vaporization effect. Once we have UI for being
+ * on more than one workspace this should probably be add_workspace
+ * not change_workspace.
+ */
+ if (window->screen->active_workspace != window->workspace)
+ meta_window_change_workspace (window, window->screen->active_workspace);
+
+ meta_window_set_current_workspace_hint (window);
+
+ meta_window_queue(window, META_QUEUE_CALC_SHOWING);
+}
+
+static gboolean
+stick_foreach_func (MetaWindow *window,
+ void *data)
+{
+ gboolean stick;
+
+ stick = *(gboolean*)data;
+ if (stick)
+ window_stick_impl (window);
+ else
+ window_unstick_impl (window);
+ return TRUE;
+}
+
+void
+meta_window_stick (MetaWindow *window)
+{
+ gboolean stick = TRUE;
+ window_stick_impl (window);
+ meta_window_foreach_transient (window,
+ stick_foreach_func,
+ &stick);
+}
+
+void
+meta_window_unstick (MetaWindow *window)
+{
+ gboolean stick = FALSE;
+ window_unstick_impl (window);
+ meta_window_foreach_transient (window,
+ stick_foreach_func,
+ &stick);
+}
+
+unsigned long
+meta_window_get_net_wm_desktop (MetaWindow *window)
+{
+ if (window->on_all_workspaces)
+ return 0xFFFFFFFF;
+ else
+ return meta_workspace_index (window->workspace);
+}
+
+static void
+update_net_frame_extents (MetaWindow *window)
+{
+ unsigned long data[4] = { 0, 0, 0, 0 };
+
+ if (window->frame)
+ {
+ /* Left */
+ data[0] = window->frame->child_x;
+ /* Right */
+ data[1] = window->frame->right_width;
+ /* Top */
+ data[2] = window->frame->child_y;
+ /* Bottom */
+ data[3] = window->frame->bottom_height;
+ }
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Setting _NET_FRAME_EXTENTS on managed window 0x%lx "
+ "to left = %lu, right = %lu, top = %lu, bottom = %lu\n",
+ window->xwindow, data[0], data[1], data[2], data[3]);
+
+ meta_error_trap_push (window->display);
+ XChangeProperty (window->display->xdisplay, window->xwindow,
+ window->display->atom__NET_FRAME_EXTENTS,
+ XA_CARDINAL,
+ 32, PropModeReplace, (guchar*) data, 4);
+ meta_error_trap_pop (window->display, FALSE);
+}
+
+void
+meta_window_set_current_workspace_hint (MetaWindow *window)
+{
+ /* FIXME if on more than one workspace, we claim to be "sticky",
+ * the WM spec doesn't say what to do here.
+ */
+ unsigned long data[1];
+
+ if (window->workspace == NULL)
+ {
+ /* this happens when unmanaging windows */
+ return;
+ }
+
+ data[0] = meta_window_get_net_wm_desktop (window);
+
+ meta_verbose ("Setting _NET_WM_DESKTOP of %s to %lu\n",
+ window->desc, data[0]);
+
+ meta_error_trap_push (window->display);
+ XChangeProperty (window->display->xdisplay, window->xwindow,
+ window->display->atom__NET_WM_DESKTOP,
+ XA_CARDINAL,
+ 32, PropModeReplace, (guchar*) data, 1);
+ meta_error_trap_pop (window->display, FALSE);
+}
+
+static gboolean
+find_root_ancestor (MetaWindow *window,
+ void *data)
+{
+ MetaWindow **ancestor = data;
+
+ /* Overwrite the previously "most-root" ancestor with the new one found */
+ *ancestor = window;
+
+ /* We want this to continue until meta_window_foreach_ancestor quits because
+ * there are no more valid ancestors.
+ */
+ return TRUE;
+}
+
+MetaWindow *
+meta_window_find_root_ancestor (MetaWindow *window)
+{
+ MetaWindow *ancestor;
+ ancestor = window;
+ meta_window_foreach_ancestor (window, find_root_ancestor, &ancestor);
+ return ancestor;
+}
+
+void
+meta_window_raise (MetaWindow *window)
+{
+ MetaWindow *ancestor;
+ ancestor = meta_window_find_root_ancestor (window);
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Raising window %s, ancestor of %s\n",
+ ancestor->desc, window->desc);
+
+ /* Raise the ancestor of the window (if the window has no ancestor,
+ * then ancestor will be set to the window itself); do this because
+ * it's weird to see windows from other apps stacked between a child
+ * and parent window of the currently active app. The stacking
+ * constraints in stack.c then magically take care of raising all
+ * the child windows appropriately.
+ */
+ if (window->screen->stack == ancestor->screen->stack)
+ meta_stack_raise (window->screen->stack, ancestor);
+ else
+ {
+ meta_warning (
+ "Either stacks aren't per screen or some window has a weird "
+ "transient_for hint; window->screen->stack != "
+ "ancestor->screen->stack. window = %s, ancestor = %s.\n",
+ window->desc, ancestor->desc);
+ /* We could raise the window here, but don't want to do that twice and
+ * so we let the case below handle that.
+ */
+ }
+
+ /* Okay, so stacking constraints misses one case: If a window has
+ * two children and we want to raise one of those children, then
+ * raising the ancestor isn't enough; we need to also raise the
+ * correct child. See bug 307875.
+ */
+ if (window != ancestor)
+ meta_stack_raise (window->screen->stack, window);
+}
+
+void
+meta_window_lower (MetaWindow *window)
+{
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Lowering window %s\n", window->desc);
+
+ meta_stack_lower (window->screen->stack, window);
+}
+
+void
+meta_window_send_icccm_message (MetaWindow *window,
+ Atom atom,
+ guint32 timestamp)
+{
+ /* This comment and code are from twm, copyright
+ * Open Group, Evans & Sutherland, etc.
+ */
+
+ /*
+ * ICCCM Client Messages - Section 4.2.8 of the ICCCM dictates that all
+ * client messages will have the following form:
+ *
+ * event type ClientMessage
+ * message type _XA_WM_PROTOCOLS
+ * window tmp->w
+ * format 32
+ * data[0] message atom
+ * data[1] time stamp
+ */
+
+ XClientMessageEvent ev;
+
+ ev.type = ClientMessage;
+ ev.window = window->xwindow;
+ ev.message_type = window->display->atom_WM_PROTOCOLS;
+ ev.format = 32;
+ ev.data.l[0] = atom;
+ ev.data.l[1] = timestamp;
+
+ meta_error_trap_push (window->display);
+ XSendEvent (window->display->xdisplay,
+ window->xwindow, False, 0, (XEvent*) &ev);
+ meta_error_trap_pop (window->display, FALSE);
+}
+
+void
+meta_window_move_resize_request (MetaWindow *window,
+ guint value_mask,
+ int gravity,
+ int new_x,
+ int new_y,
+ int new_width,
+ int new_height)
+{
+ int x, y, width, height;
+ gboolean allow_position_change;
+ gboolean in_grab_op;
+ MetaMoveResizeFlags flags;
+
+ /* We ignore configure requests while the user is moving/resizing
+ * the window, since these represent the app sucking and fighting
+ * the user, most likely due to a bug in the app (e.g. pfaedit
+ * seemed to do this)
+ *
+ * Still have to do the ConfigureNotify and all, but pretend the
+ * app asked for the current size/position instead of the new one.
+ */
+ in_grab_op = FALSE;
+ if (window->display->grab_op != META_GRAB_OP_NONE &&
+ window == window->display->grab_window)
+ {
+ switch (window->display->grab_op)
+ {
+ case META_GRAB_OP_MOVING:
+ case META_GRAB_OP_RESIZING_SE:
+ case META_GRAB_OP_RESIZING_S:
+ case META_GRAB_OP_RESIZING_SW:
+ case META_GRAB_OP_RESIZING_N:
+ case META_GRAB_OP_RESIZING_NE:
+ case META_GRAB_OP_RESIZING_NW:
+ case META_GRAB_OP_RESIZING_W:
+ case META_GRAB_OP_RESIZING_E:
+ in_grab_op = TRUE;
+ break;
+ default:
+ break;
+ }
+ }
+
+ /* it's essential to use only the explicitly-set fields,
+ * and otherwise use our current up-to-date position.
+ *
+ * Otherwise you get spurious position changes when the app changes
+ * size, for example, if window->rect is not in sync with the
+ * server-side position in effect when the configure request was
+ * generated.
+ */
+ meta_window_get_gravity_position (window,
+ gravity,
+ &x, &y);
+
+ allow_position_change = FALSE;
+
+ if (meta_prefs_get_disable_workarounds ())
+ {
+ if (window->type == META_WINDOW_DIALOG ||
+ window->type == META_WINDOW_MODAL_DIALOG ||
+ window->type == META_WINDOW_SPLASHSCREEN)
+ ; /* No position change for these */
+ else if ((window->size_hints.flags & PPosition) ||
+ /* USPosition is just stale if window is placed;
+ * no --geometry involved here.
+ */
+ ((window->size_hints.flags & USPosition) &&
+ !window->placed))
+ allow_position_change = TRUE;
+ }
+ else
+ {
+ allow_position_change = TRUE;
+ }
+
+ if (in_grab_op)
+ allow_position_change = FALSE;
+
+ if (allow_position_change)
+ {
+ if (value_mask & CWX)
+ x = new_x;
+ if (value_mask & CWY)
+ y = new_y;
+ if (value_mask & (CWX | CWY))
+ {
+ /* Once manually positioned, windows shouldn't be placed
+ * by the window manager.
+ */
+ window->placed = TRUE;
+ }
+ }
+ else
+ {
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Not allowing position change for window %s PPosition 0x%lx USPosition 0x%lx type %u\n",
+ window->desc, window->size_hints.flags & PPosition,
+ window->size_hints.flags & USPosition,
+ window->type);
+ }
+
+ width = window->rect.width;
+ height = window->rect.height;
+ if (!in_grab_op)
+ {
+ if (value_mask & CWWidth)
+ width = new_width;
+
+ if (value_mask & CWHeight)
+ height = new_height;
+ }
+
+ /* ICCCM 4.1.5 */
+
+ /* We're ignoring the value_mask here, since sizes
+ * not in the mask will be the current window geometry.
+ */
+ window->size_hints.x = x;
+ window->size_hints.y = y;
+ window->size_hints.width = width;
+ window->size_hints.height = height;
+
+ /* NOTE: We consider ConfigureRequests to be "user" actions in one
+ * way, but not in another. Explanation of the two cases are in the
+ * next two big comments.
+ */
+
+ /* The constraints code allows user actions to move windows
+ * offscreen, etc., and configure request actions would often send
+ * windows offscreen when users don't want it if not constrained
+ * (e.g. hitting a dropdown triangle in a fileselector to show more
+ * options, which makes the window bigger). Thus we do not set
+ * META_IS_USER_ACTION in flags to the
+ * meta_window_move_resize_internal() call.
+ */
+ flags = META_IS_CONFIGURE_REQUEST;
+ if (value_mask & (CWX | CWY))
+ flags |= META_IS_MOVE_ACTION;
+ if (value_mask & (CWWidth | CWHeight))
+ flags |= META_IS_RESIZE_ACTION;
+
+ if (flags & (META_IS_MOVE_ACTION | META_IS_RESIZE_ACTION))
+ meta_window_move_resize_internal (window,
+ flags,
+ gravity,
+ x,
+ y,
+ width,
+ height);
+
+ /* window->user_rect exists to allow "snapping-back" the window if a
+ * new strut is set (causing the window to move) and then the strut
+ * is later removed without the user moving the window in the
+ * interim. We'd like to "snap-back" to the position specified by
+ * ConfigureRequest events (at least the constrained version of the
+ * ConfigureRequest, since that is guaranteed to be onscreen) so we
+ * set user_rect here.
+ *
+ * See also bug 426519.
+ */
+ save_user_window_placement (window);
+}
+
+gboolean
+meta_window_configure_request (MetaWindow *window,
+ XEvent *event)
+{
+ /* Note that x, y is the corner of the window border,
+ * and width, height is the size of the window inside
+ * its border, but that we always deny border requests
+ * and give windows a border of 0. But we save the
+ * requested border here.
+ */
+ if (event->xconfigurerequest.value_mask & CWBorderWidth)
+ window->border_width = event->xconfigurerequest.border_width;
+
+ meta_window_move_resize_request(window,
+ event->xconfigurerequest.value_mask,
+ window->size_hints.win_gravity,
+ event->xconfigurerequest.x,
+ event->xconfigurerequest.y,
+ event->xconfigurerequest.width,
+ event->xconfigurerequest.height);
+
+ /* Handle stacking. We only handle raises/lowers, mostly because
+ * stack.c really can't deal with anything else. I guess we'll fix
+ * that if a client turns up that really requires it. Only a very
+ * few clients even require the raise/lower (and in fact all client
+ * attempts to deal with stacking order are essentially broken,
+ * since they have no idea what other clients are involved or how
+ * the stack looks).
+ *
+ * I'm pretty sure no interesting client uses TopIf, BottomIf, or
+ * Opposite anyway, so the only possible missing thing is
+ * Above/Below with a sibling set. For now we just pretend there's
+ * never a sibling set and always do the full raise/lower instead of
+ * the raise-just-above/below-sibling.
+ */
+ if (event->xconfigurerequest.value_mask & CWStackMode)
+ {
+ MetaWindow *active_window;
+ active_window = window->display->expected_focus_window;
+ if (meta_prefs_get_disable_workarounds () ||
+ !meta_prefs_get_raise_on_click ())
+ {
+ meta_topic (META_DEBUG_STACK,
+ "%s sent an xconfigure stacking request; this is "
+ "broken behavior and the request is being ignored.\n",
+ window->desc);
+ }
+ else if (active_window &&
+ !meta_window_same_application (window, active_window) &&
+ XSERVER_TIME_IS_BEFORE (window->net_wm_user_time,
+ active_window->net_wm_user_time))
+ {
+ meta_topic (META_DEBUG_STACK,
+ "Ignoring xconfigure stacking request from %s (with "
+ "user_time %u); currently active application is %s (with "
+ "user_time %u).\n",
+ window->desc,
+ window->net_wm_user_time,
+ active_window->desc,
+ active_window->net_wm_user_time);
+ if (event->xconfigurerequest.detail == Above)
+ meta_window_set_demands_attention(window);
+ }
+ else
+ {
+ switch (event->xconfigurerequest.detail)
+ {
+ case Above:
+ meta_window_raise (window);
+ break;
+ case Below:
+ meta_window_lower (window);
+ break;
+ case TopIf:
+ case BottomIf:
+ case Opposite:
+ break;
+ }
+ }
+ }
+
+ return TRUE;
+}
+
+gboolean
+meta_window_property_notify (MetaWindow *window,
+ XEvent *event)
+{
+ return process_property_notify (window, &event->xproperty);
+}
+
+#define _NET_WM_MOVERESIZE_SIZE_TOPLEFT 0
+#define _NET_WM_MOVERESIZE_SIZE_TOP 1
+#define _NET_WM_MOVERESIZE_SIZE_TOPRIGHT 2
+#define _NET_WM_MOVERESIZE_SIZE_RIGHT 3
+#define _NET_WM_MOVERESIZE_SIZE_BOTTOMRIGHT 4
+#define _NET_WM_MOVERESIZE_SIZE_BOTTOM 5
+#define _NET_WM_MOVERESIZE_SIZE_BOTTOMLEFT 6
+#define _NET_WM_MOVERESIZE_SIZE_LEFT 7
+#define _NET_WM_MOVERESIZE_MOVE 8
+#define _NET_WM_MOVERESIZE_SIZE_KEYBOARD 9
+#define _NET_WM_MOVERESIZE_MOVE_KEYBOARD 10
+#define _NET_WM_MOVERESIZE_CANCEL 11
+
+gboolean
+meta_window_client_message (MetaWindow *window,
+ XEvent *event)
+{
+ MetaDisplay *display;
+
+ display = window->display;
+
+ if (event->xclient.message_type ==
+ display->atom__NET_CLOSE_WINDOW)
+ {
+ guint32 timestamp;
+
+ if (event->xclient.data.l[0] != 0)
+ timestamp = event->xclient.data.l[0];
+ else
+ {
+ meta_warning ("Receiving a NET_CLOSE_WINDOW message for %s without "
+ "a timestamp! This means some buggy (outdated) "
+ "application is on the loose!\n",
+ window->desc);
+ timestamp = meta_display_get_current_time (window->display);
+ }
+
+ meta_window_delete (window, timestamp);
+
+ return TRUE;
+ }
+ else if (event->xclient.message_type ==
+ display->atom__NET_WM_DESKTOP)
+ {
+ int space;
+ MetaWorkspace *workspace;
+
+ space = event->xclient.data.l[0];
+
+ meta_verbose ("Request to move %s to workspace %d\n",
+ window->desc, space);
+
+ workspace =
+ meta_screen_get_workspace_by_index (window->screen,
+ space);
+
+ if (workspace)
+ {
+ if (window->on_all_workspaces)
+ meta_window_unstick (window);
+ meta_window_change_workspace (window, workspace);
+ }
+ else if (space == (int) 0xFFFFFFFF)
+ {
+ meta_window_stick (window);
+ }
+ else
+ {
+ meta_verbose ("No such workspace %d for screen\n", space);
+ }
+
+ meta_verbose ("Window %s now on_all_workspaces = %d\n",
+ window->desc, window->on_all_workspaces);
+
+ return TRUE;
+ }
+ else if (event->xclient.message_type ==
+ display->atom__NET_WM_STATE)
+ {
+ gulong action;
+ Atom first;
+ Atom second;
+
+ action = event->xclient.data.l[0];
+ first = event->xclient.data.l[1];
+ second = event->xclient.data.l[2];
+
+ if (meta_is_verbose ())
+ {
+ char *str1;
+ char *str2;
+
+ meta_error_trap_push_with_return (display);
+ str1 = XGetAtomName (display->xdisplay, first);
+ if (meta_error_trap_pop_with_return (display, TRUE) != Success)
+ str1 = NULL;
+
+ meta_error_trap_push_with_return (display);
+ str2 = XGetAtomName (display->xdisplay, second);
+ if (meta_error_trap_pop_with_return (display, TRUE) != Success)
+ str2 = NULL;
+
+ meta_verbose ("Request to change _NET_WM_STATE action %lu atom1: %s atom2: %s\n",
+ action,
+ str1 ? str1 : "(unknown)",
+ str2 ? str2 : "(unknown)");
+
+ meta_XFree (str1);
+ meta_XFree (str2);
+ }
+
+ if (first == display->atom__NET_WM_STATE_SHADED ||
+ second == display->atom__NET_WM_STATE_SHADED)
+ {
+ gboolean shade;
+ guint32 timestamp;
+
+ /* Stupid protocol has no timestamp; of course, shading
+ * sucks anyway so who really cares that we're forced to do
+ * a roundtrip here?
+ */
+ timestamp = meta_display_get_current_time_roundtrip (window->display);
+
+ shade = (action == _NET_WM_STATE_ADD ||
+ (action == _NET_WM_STATE_TOGGLE && !window->shaded));
+ if (shade && window->has_shade_func)
+ meta_window_shade (window, timestamp);
+ else
+ meta_window_unshade (window, timestamp);
+ }
+
+ if (first == display->atom__NET_WM_STATE_FULLSCREEN ||
+ second == display->atom__NET_WM_STATE_FULLSCREEN)
+ {
+ gboolean make_fullscreen;
+
+ make_fullscreen = (action == _NET_WM_STATE_ADD ||
+ (action == _NET_WM_STATE_TOGGLE && !window->fullscreen));
+ if (make_fullscreen && window->has_fullscreen_func)
+ meta_window_make_fullscreen (window);
+ else
+ meta_window_unmake_fullscreen (window);
+ }
+
+ if (first == display->atom__NET_WM_STATE_MAXIMIZED_HORZ ||
+ second == display->atom__NET_WM_STATE_MAXIMIZED_HORZ)
+ {
+ gboolean max;
+
+ max = (action == _NET_WM_STATE_ADD ||
+ (action == _NET_WM_STATE_TOGGLE &&
+ !window->maximized_horizontally));
+ if (max && window->has_maximize_func)
+ {
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ meta_window_maximize (window, META_MAXIMIZE_HORIZONTAL);
+ }
+ else
+ {
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ meta_window_unmaximize (window, META_MAXIMIZE_HORIZONTAL);
+ }
+ }
+
+ if (first == display->atom__NET_WM_STATE_MAXIMIZED_VERT ||
+ second == display->atom__NET_WM_STATE_MAXIMIZED_VERT)
+ {
+ gboolean max;
+
+ max = (action == _NET_WM_STATE_ADD ||
+ (action == _NET_WM_STATE_TOGGLE &&
+ !window->maximized_vertically));
+ if (max && window->has_maximize_func)
+ {
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ meta_window_maximize (window, META_MAXIMIZE_VERTICAL);
+ }
+ else
+ {
+ if (meta_prefs_get_raise_on_click ())
+ meta_window_raise (window);
+ meta_window_unmaximize (window, META_MAXIMIZE_VERTICAL);
+ }
+ }
+
+ if (first == display->atom__NET_WM_STATE_MODAL ||
+ second == display->atom__NET_WM_STATE_MODAL)
+ {
+ window->wm_state_modal =
+ (action == _NET_WM_STATE_ADD) ||
+ (action == _NET_WM_STATE_TOGGLE && !window->wm_state_modal);
+
+ recalc_window_type (window);
+ meta_window_queue(window, META_QUEUE_MOVE_RESIZE);
+ }
+
+ if (first == display->atom__NET_WM_STATE_SKIP_PAGER ||
+ second == display->atom__NET_WM_STATE_SKIP_PAGER)
+ {
+ window->wm_state_skip_pager =
+ (action == _NET_WM_STATE_ADD) ||
+ (action == _NET_WM_STATE_TOGGLE && !window->skip_pager);
+
+ recalc_window_features (window);
+ set_net_wm_state (window);
+ }
+
+ if (first == display->atom__NET_WM_STATE_SKIP_TASKBAR ||
+ second == display->atom__NET_WM_STATE_SKIP_TASKBAR)
+ {
+ window->wm_state_skip_taskbar =
+ (action == _NET_WM_STATE_ADD) ||
+ (action == _NET_WM_STATE_TOGGLE && !window->skip_taskbar);
+
+ recalc_window_features (window);
+ set_net_wm_state (window);
+ }
+
+ if (first == display->atom__NET_WM_STATE_ABOVE ||
+ second == display->atom__NET_WM_STATE_ABOVE)
+ {
+ window->wm_state_above =
+ (action == _NET_WM_STATE_ADD) ||
+ (action == _NET_WM_STATE_TOGGLE && !window->wm_state_above);
+
+ meta_window_update_layer (window);
+ set_net_wm_state (window);
+ }
+
+ if (first == display->atom__NET_WM_STATE_BELOW ||
+ second == display->atom__NET_WM_STATE_BELOW)
+ {
+ window->wm_state_below =
+ (action == _NET_WM_STATE_ADD) ||
+ (action == _NET_WM_STATE_TOGGLE && !window->wm_state_below);
+
+ meta_window_update_layer (window);
+ set_net_wm_state (window);
+ }
+
+ if (first == display->atom__NET_WM_STATE_DEMANDS_ATTENTION ||
+ second == display->atom__NET_WM_STATE_DEMANDS_ATTENTION)
+ {
+ if ((action == _NET_WM_STATE_ADD) ||
+ (action == _NET_WM_STATE_TOGGLE && !window->wm_state_demands_attention))
+ meta_window_set_demands_attention (window);
+ else
+ meta_window_unset_demands_attention (window);
+ }
+
+ if (first == display->atom__NET_WM_STATE_STICKY ||
+ second == display->atom__NET_WM_STATE_STICKY)
+ {
+ if ((action == _NET_WM_STATE_ADD) ||
+ (action == _NET_WM_STATE_TOGGLE && !window->on_all_workspaces))
+ meta_window_stick (window);
+ else
+ meta_window_unstick (window);
+ }
+
+ return TRUE;
+ }
+ else if (event->xclient.message_type ==
+ display->atom_WM_CHANGE_STATE)
+ {
+ meta_verbose ("WM_CHANGE_STATE client message, state: %ld\n",
+ event->xclient.data.l[0]);
+ if (event->xclient.data.l[0] == IconicState &&
+ window->has_minimize_func)
+ meta_window_minimize (window);
+
+ return TRUE;
+ }
+ else if (event->xclient.message_type ==
+ display->atom__NET_WM_MOVERESIZE)
+ {
+ int x_root;
+ int y_root;
+ int action;
+ MetaGrabOp op;
+ int button;
+ guint32 timestamp;
+
+ /* _NET_WM_MOVERESIZE messages are almost certainly going to come from
+ * clients when users click on the fake "frame" that the client has,
+ * thus we should also treat such messages as though it were a
+ * "frame action".
+ */
+ gboolean const frame_action = TRUE;
+
+ x_root = event->xclient.data.l[0];
+ y_root = event->xclient.data.l[1];
+ action = event->xclient.data.l[2];
+ button = event->xclient.data.l[3];
+
+ /* FIXME: What a braindead protocol; no timestamp?!? */
+ timestamp = meta_display_get_current_time_roundtrip (display);
+ meta_warning ("Received a _NET_WM_MOVERESIZE message for %s; these "
+ "messages lack timestamps and therefore suck.\n",
+ window->desc);
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Received _NET_WM_MOVERESIZE message on %s, %d,%d action = %d, button %d\n",
+ window->desc,
+ x_root, y_root, action, button);
+
+ op = META_GRAB_OP_NONE;
+ switch (action)
+ {
+ case _NET_WM_MOVERESIZE_SIZE_TOPLEFT:
+ op = META_GRAB_OP_RESIZING_NW;
+ break;
+ case _NET_WM_MOVERESIZE_SIZE_TOP:
+ op = META_GRAB_OP_RESIZING_N;
+ break;
+ case _NET_WM_MOVERESIZE_SIZE_TOPRIGHT:
+ op = META_GRAB_OP_RESIZING_NE;
+ break;
+ case _NET_WM_MOVERESIZE_SIZE_RIGHT:
+ op = META_GRAB_OP_RESIZING_E;
+ break;
+ case _NET_WM_MOVERESIZE_SIZE_BOTTOMRIGHT:
+ op = META_GRAB_OP_RESIZING_SE;
+ break;
+ case _NET_WM_MOVERESIZE_SIZE_BOTTOM:
+ op = META_GRAB_OP_RESIZING_S;
+ break;
+ case _NET_WM_MOVERESIZE_SIZE_BOTTOMLEFT:
+ op = META_GRAB_OP_RESIZING_SW;
+ break;
+ case _NET_WM_MOVERESIZE_SIZE_LEFT:
+ op = META_GRAB_OP_RESIZING_W;
+ break;
+ case _NET_WM_MOVERESIZE_MOVE:
+ op = META_GRAB_OP_MOVING;
+ break;
+ case _NET_WM_MOVERESIZE_SIZE_KEYBOARD:
+ op = META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN;
+ break;
+ case _NET_WM_MOVERESIZE_MOVE_KEYBOARD:
+ op = META_GRAB_OP_KEYBOARD_MOVING;
+ break;
+ case _NET_WM_MOVERESIZE_CANCEL:
+ /* handled below */
+ break;
+ default:
+ break;
+ }
+
+ if (action == _NET_WM_MOVERESIZE_CANCEL)
+ {
+ meta_display_end_grab_op (window->display, timestamp);
+ }
+ else if (op != META_GRAB_OP_NONE &&
+ ((window->has_move_func && op == META_GRAB_OP_KEYBOARD_MOVING) ||
+ (window->has_resize_func && op == META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN)))
+ {
+ meta_window_begin_grab_op (window, op, frame_action, timestamp);
+ }
+ else if (op != META_GRAB_OP_NONE &&
+ ((window->has_move_func && op == META_GRAB_OP_MOVING) ||
+ (window->has_resize_func &&
+ (op != META_GRAB_OP_MOVING &&
+ op != META_GRAB_OP_KEYBOARD_MOVING))))
+ {
+ /*
+ * the button SHOULD already be included in the message
+ */
+ if (button == 0)
+ {
+ int x, y, query_root_x, query_root_y;
+ Window root, child;
+ guint mask;
+
+ /* The race conditions in this _NET_WM_MOVERESIZE thing
+ * are mind-boggling
+ */
+ mask = 0;
+ meta_error_trap_push (window->display);
+ XQueryPointer (window->display->xdisplay,
+ window->xwindow,
+ &root, &child,
+ &query_root_x, &query_root_y,
+ &x, &y,
+ &mask);
+ meta_error_trap_pop (window->display, TRUE);
+
+ if (mask & Button1Mask)
+ button = 1;
+ else if (mask & Button2Mask)
+ button = 2;
+ else if (mask & Button3Mask)
+ button = 3;
+ else
+ button = 0;
+ }
+
+ if (button != 0)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Beginning move/resize with button = %d\n", button);
+ meta_display_begin_grab_op (window->display,
+ window->screen,
+ window,
+ op,
+ FALSE,
+ frame_action,
+ button, 0,
+ timestamp,
+ x_root,
+ y_root);
+ }
+ }
+
+ return TRUE;
+ }
+ else if (event->xclient.message_type ==
+ display->atom__NET_MOVERESIZE_WINDOW)
+ {
+ int gravity, source;
+ guint value_mask;
+
+ gravity = (event->xclient.data.l[0] & 0xff);
+ value_mask = (event->xclient.data.l[0] & 0xf00) >> 8;
+ source = (event->xclient.data.l[0] & 0xf000) >> 12;
+
+ if (gravity == 0)
+ gravity = window->size_hints.win_gravity;
+
+ meta_window_move_resize_request(window,
+ value_mask,
+ gravity,
+ event->xclient.data.l[1], /* x */
+ event->xclient.data.l[2], /* y */
+ event->xclient.data.l[3], /* width */
+ event->xclient.data.l[4]); /* height */
+ }
+ else if (event->xclient.message_type ==
+ display->atom__NET_ACTIVE_WINDOW)
+ {
+ MetaClientType source_indication;
+ guint32 timestamp;
+
+ meta_verbose ("_NET_ACTIVE_WINDOW request for window '%s', activating\n",
+ window->desc);
+
+ source_indication = event->xclient.data.l[0];
+ timestamp = event->xclient.data.l[1];
+
+ if (source_indication > META_CLIENT_TYPE_MAX_RECOGNIZED)
+ source_indication = META_CLIENT_TYPE_UNKNOWN;
+
+ if (timestamp == 0)
+ {
+ /* Client using older EWMH _NET_ACTIVE_WINDOW without a timestamp */
+ meta_warning ("Buggy client sent a _NET_ACTIVE_WINDOW message with a "
+ "timestamp of 0 for %s\n",
+ window->desc);
+ timestamp = meta_display_get_current_time (display);
+ }
+
+ window_activate (window, timestamp, source_indication, NULL);
+ return TRUE;
+ }
+ else if (event->xclient.message_type ==
+ display->atom__NET_WM_FULLSCREEN_MONITORS)
+ {
+ MetaClientType source_indication;
+ gulong top, bottom, left, right;
+
+ meta_verbose ("_NET_WM_FULLSCREEN_MONITORS request for window '%s'\n",
+ window->desc);
+
+ top = event->xclient.data.l[0];
+ bottom = event->xclient.data.l[1];
+ left = event->xclient.data.l[2];
+ right = event->xclient.data.l[3];
+ source_indication = event->xclient.data.l[4];
+
+ meta_window_update_fullscreen_monitors (window, top, bottom, left, right);
+ }
+
+ return FALSE;
+}
+
+gboolean
+meta_window_notify_focus (MetaWindow *window,
+ XEvent *event)
+{
+ /* note the event can be on either the window or the frame,
+ * we focus the frame for shaded windows
+ */
+
+ /* The event can be FocusIn, FocusOut, or UnmapNotify.
+ * On UnmapNotify we have to pretend it's focus out,
+ * because we won't get a focus out if it occurs, apparently.
+ */
+
+ /* We ignore grabs, though this is questionable.
+ * It may be better to increase the intelligence of
+ * the focus window tracking.
+ *
+ * The problem is that keybindings for windows are done with
+ * XGrabKey, which means focus_window disappears and the front of
+ * the MRU list gets confused from what the user expects once a
+ * keybinding is used.
+ */
+ meta_topic (META_DEBUG_FOCUS,
+ "Focus %s event received on %s 0x%lx (%s) "
+ "mode %s detail %s\n",
+ event->type == FocusIn ? "in" :
+ event->type == FocusOut ? "out" :
+ event->type == UnmapNotify ? "unmap" :
+ "???",
+ window->desc, event->xany.window,
+ event->xany.window == window->xwindow ?
+ "client window" :
+ (window->frame && event->xany.window == window->frame->xwindow) ?
+ "frame window" :
+ "unknown window",
+ event->type != UnmapNotify ?
+ meta_event_mode_to_string (event->xfocus.mode) : "n/a",
+ event->type != UnmapNotify ?
+ meta_event_detail_to_string (event->xfocus.detail) : "n/a");
+
+ /* FIXME our pointer tracking is broken; see how
+ * gtk+/gdk/x11/gdkevents-x11.c or XFree86/xc/programs/xterm/misc.c
+ * handle it for the correct way. In brief you need to track
+ * pointer focus and regular focus, and handle EnterNotify in
+ * PointerRoot mode with no window manager. However as noted above,
+ * accurate focus tracking will break things because we want to keep
+ * windows "focused" when using keybindings on them, and also we
+ * sometimes "focus" a window by focusing its frame or
+ * no_focus_window; so this all needs rethinking massively.
+ *
+ * My suggestion is to change it so that we clearly separate
+ * actual keyboard focus tracking using the xterm algorithm,
+ * and marco's "pretend" focus window, and go through all
+ * the code and decide which one should be used in each place;
+ * a hard bit is deciding on a policy for that.
+ *
+ * http://bugzilla.gnome.org/show_bug.cgi?id=90382
+ */
+
+ if ((event->type == FocusIn ||
+ event->type == FocusOut) &&
+ (event->xfocus.mode == NotifyGrab ||
+ event->xfocus.mode == NotifyUngrab ||
+ /* From WindowMaker, ignore all funky pointer root events */
+ event->xfocus.detail > NotifyNonlinearVirtual))
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Ignoring focus event generated by a grab or other weirdness\n");
+ return TRUE;
+ }
+
+ if (event->type == FocusIn)
+ {
+ if (window != window->display->focus_window)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "* Focus --> %s\n", window->desc);
+ window->display->focus_window = window;
+ window->has_focus = TRUE;
+ meta_compositor_set_active_window (window->display->compositor,
+ window->screen, window);
+
+ /* Move to the front of the focusing workspace's MRU list.
+ * We should only be "removing" it from the MRU list if it's
+ * not already there. Note that it's possible that we might
+ * be processing this FocusIn after we've changed to a
+ * different workspace; we should therefore update the MRU
+ * list only if the window is actually on the active
+ * workspace.
+ */
+ if (window->screen->active_workspace &&
+ meta_window_located_on_workspace (window,
+ window->screen->active_workspace))
+ {
+ GList* link;
+ link = g_list_find (window->screen->active_workspace->mru_list,
+ window);
+ g_assert (link);
+
+ window->screen->active_workspace->mru_list =
+ g_list_remove_link (window->screen->active_workspace->mru_list,
+ link);
+ g_list_free (link);
+
+ window->screen->active_workspace->mru_list =
+ g_list_prepend (window->screen->active_workspace->mru_list,
+ window);
+ }
+
+ if (window->frame)
+ meta_frame_queue_draw (window->frame);
+
+ meta_error_trap_push (window->display);
+ XInstallColormap (window->display->xdisplay,
+ window->colormap);
+ meta_error_trap_pop (window->display, FALSE);
+
+ /* move into FOCUSED_WINDOW layer */
+ meta_window_update_layer (window);
+
+ /* Ungrab click to focus button since the sync grab can interfere
+ * with some things you might do inside the focused window, by
+ * causing the client to get funky enter/leave events.
+ *
+ * The reason we usually have a passive grab on the window is
+ * so that we can intercept clicks and raise the window in
+ * response. For click-to-focus we don't need that since the
+ * focused window is already raised. When raise_on_click is
+ * FALSE we also don't need that since we don't do anything
+ * when the window is clicked.
+ *
+ * There is dicussion in bugs 102209, 115072, and 461577
+ */
+ if (meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK ||
+ !meta_prefs_get_raise_on_click())
+ meta_display_ungrab_focus_window_button (window->display, window);
+ }
+ }
+ else if (event->type == FocusOut ||
+ event->type == UnmapNotify)
+ {
+ if (event->type == FocusOut &&
+ event->xfocus.detail == NotifyInferior)
+ {
+ /* This event means the client moved focus to a subwindow */
+ meta_topic (META_DEBUG_FOCUS,
+ "Ignoring focus out on %s with NotifyInferior\n",
+ window->desc);
+ return TRUE;
+ }
+
+ if (window == window->display->focus_window)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "%s is now the previous focus window due to being focused out or unmapped\n",
+ window->desc);
+
+ meta_topic (META_DEBUG_FOCUS,
+ "* Focus --> NULL (was %s)\n", window->desc);
+
+ window->display->focus_window = NULL;
+ window->has_focus = FALSE;
+ if (window->frame)
+ meta_frame_queue_draw (window->frame);
+
+ meta_compositor_set_active_window (window->display->compositor,
+ window->screen, NULL);
+
+ meta_error_trap_push (window->display);
+ XUninstallColormap (window->display->xdisplay,
+ window->colormap);
+ meta_error_trap_pop (window->display, FALSE);
+
+ /* move out of FOCUSED_WINDOW layer */
+ meta_window_update_layer (window);
+
+ /* Re-grab for click to focus and raise-on-click, if necessary */
+ if (meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK ||
+ !meta_prefs_get_raise_on_click ())
+ meta_display_grab_focus_window_button (window->display, window);
+ }
+ }
+
+ /* Now set _NET_ACTIVE_WINDOW hint */
+ meta_display_update_active_window_hint (window->display);
+
+ return FALSE;
+}
+
+static gboolean
+process_property_notify (MetaWindow *window,
+ XPropertyEvent *event)
+{
+ Window xid = window->xwindow;
+
+ if (meta_is_verbose ()) /* avoid looking up the name if we don't have to */
+ {
+ char *property_name = XGetAtomName (window->display->xdisplay,
+ event->atom);
+
+ meta_verbose ("Property notify on %s for %s\n",
+ window->desc, property_name);
+ XFree (property_name);
+ }
+
+ if (event->atom == window->display->atom__NET_WM_USER_TIME &&
+ window->user_time_window)
+ {
+ xid = window->user_time_window;
+ }
+
+ meta_window_reload_property (window, event->atom, FALSE);
+
+ return TRUE;
+}
+
+static void
+send_configure_notify (MetaWindow *window)
+{
+ XEvent event;
+
+ /* from twm */
+
+ event.type = ConfigureNotify;
+ event.xconfigure.display = window->display->xdisplay;
+ event.xconfigure.event = window->xwindow;
+ event.xconfigure.window = window->xwindow;
+ event.xconfigure.x = window->rect.x - window->border_width;
+ event.xconfigure.y = window->rect.y - window->border_width;
+ if (window->frame)
+ {
+ if (window->withdrawn)
+ {
+ /* WARNING: x & y need to be set to whatever the XReparentWindow
+ * call in meta_window_destroy_frame will use so that the window
+ * has the right coordinates. Currently, that means no change to
+ * x & y.
+ */
+ }
+ else
+ {
+ /* Need to be in root window coordinates */
+ event.xconfigure.x += window->frame->rect.x;
+ event.xconfigure.y += window->frame->rect.y;
+ }
+ }
+ event.xconfigure.width = window->rect.width;
+ event.xconfigure.height = window->rect.height;
+ event.xconfigure.border_width = window->border_width; /* requested not actual */
+ event.xconfigure.above = None; /* FIXME */
+ event.xconfigure.override_redirect = False;
+
+ meta_topic (META_DEBUG_GEOMETRY,
+ "Sending synthetic configure notify to %s with x: %d y: %d w: %d h: %d\n",
+ window->desc,
+ event.xconfigure.x, event.xconfigure.y,
+ event.xconfigure.width, event.xconfigure.height);
+
+ meta_error_trap_push (window->display);
+ XSendEvent (window->display->xdisplay,
+ window->xwindow,
+ False, StructureNotifyMask, &event);
+ meta_error_trap_pop (window->display, FALSE);
+}
+
+gboolean
+meta_window_get_icon_geometry (MetaWindow *window,
+ MetaRectangle *rect)
+{
+ gulong *geometry = NULL;
+ int nitems;
+
+ if (meta_prop_get_cardinal_list (window->display,
+ window->xwindow,
+ window->display->atom__NET_WM_ICON_GEOMETRY,
+ &geometry, &nitems))
+ {
+ if (nitems != 4)
+ {
+ meta_verbose ("_NET_WM_ICON_GEOMETRY on %s has %d values instead of 4\n",
+ window->desc, nitems);
+ meta_XFree (geometry);
+ return FALSE;
+ }
+
+ if (rect)
+ {
+ rect->x = geometry[0];
+ rect->y = geometry[1];
+ rect->width = geometry[2];
+ rect->height = geometry[3];
+ }
+
+ meta_XFree (geometry);
+
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+static Window
+read_client_leader (MetaDisplay *display,
+ Window xwindow)
+{
+ Window retval = None;
+
+ meta_prop_get_window (display, xwindow,
+ display->atom_WM_CLIENT_LEADER,
+ &retval);
+
+ return retval;
+}
+
+typedef struct
+{
+ Window leader;
+} ClientLeaderData;
+
+static gboolean
+find_client_leader_func (MetaWindow *ancestor,
+ void *data)
+{
+ ClientLeaderData *d;
+
+ d = data;
+
+ d->leader = read_client_leader (ancestor->display,
+ ancestor->xwindow);
+
+ /* keep going if no client leader found */
+ return d->leader == None;
+}
+
+static void
+update_sm_hints (MetaWindow *window)
+{
+ Window leader;
+
+ window->xclient_leader = None;
+ window->sm_client_id = NULL;
+
+ /* If not on the current window, we can get the client
+ * leader from transient parents. If we find a client
+ * leader, we read the SM_CLIENT_ID from it.
+ */
+ leader = read_client_leader (window->display, window->xwindow);
+ if (leader == None)
+ {
+ ClientLeaderData d;
+ d.leader = None;
+ meta_window_foreach_ancestor (window, find_client_leader_func,
+ &d);
+ leader = d.leader;
+ }
+
+ if (leader != None)
+ {
+ char *str;
+
+ window->xclient_leader = leader;
+
+ if (meta_prop_get_latin1_string (window->display, leader,
+ window->display->atom_SM_CLIENT_ID,
+ &str))
+ {
+ window->sm_client_id = g_strdup (str);
+ meta_XFree (str);
+ }
+ }
+ else
+ {
+ meta_verbose ("Didn't find a client leader for %s\n", window->desc);
+
+ if (!meta_prefs_get_disable_workarounds ())
+ {
+ /* Some broken apps (kdelibs fault?) set SM_CLIENT_ID on the app
+ * instead of the client leader
+ */
+ char *str;
+
+ str = NULL;
+ if (meta_prop_get_latin1_string (window->display, window->xwindow,
+ window->display->atom_SM_CLIENT_ID,
+ &str))
+ {
+ if (window->sm_client_id == NULL) /* first time through */
+ meta_warning (_("Window %s sets SM_CLIENT_ID on itself, instead of on the WM_CLIENT_LEADER window as specified in the ICCCM.\n"),
+ window->desc);
+
+ window->sm_client_id = g_strdup (str);
+ meta_XFree (str);
+ }
+ }
+ }
+
+ meta_verbose ("Window %s client leader: 0x%lx SM_CLIENT_ID: '%s'\n",
+ window->desc, window->xclient_leader,
+ window->sm_client_id ? window->sm_client_id : "none");
+}
+
+void
+meta_window_update_role (MetaWindow *window)
+{
+ char *str;
+
+ if (window->role)
+ g_free (window->role);
+ window->role = NULL;
+
+ if (meta_prop_get_latin1_string (window->display, window->xwindow,
+ window->display->atom_WM_WINDOW_ROLE,
+ &str))
+ {
+ window->role = g_strdup (str);
+ meta_XFree (str);
+ }
+
+ meta_verbose ("Updated role of %s to '%s'\n",
+ window->desc, window->role ? window->role : "null");
+}
+
+void
+meta_window_update_net_wm_type (MetaWindow *window)
+{
+ int n_atoms;
+ Atom *atoms;
+ int i;
+
+ window->type_atom = None;
+ n_atoms = 0;
+ atoms = NULL;
+
+ meta_prop_get_atom_list (window->display, window->xwindow,
+ window->display->atom__NET_WM_WINDOW_TYPE,
+ &atoms, &n_atoms);
+
+ i = 0;
+ while (i < n_atoms)
+ {
+ /* We break as soon as we find one we recognize,
+ * supposed to prefer those near the front of the list
+ */
+ if (atoms[i] == window->display->atom__NET_WM_WINDOW_TYPE_DESKTOP ||
+ atoms[i] == window->display->atom__NET_WM_WINDOW_TYPE_DOCK ||
+ atoms[i] == window->display->atom__NET_WM_WINDOW_TYPE_TOOLBAR ||
+ atoms[i] == window->display->atom__NET_WM_WINDOW_TYPE_MENU ||
+ atoms[i] == window->display->atom__NET_WM_WINDOW_TYPE_DIALOG ||
+ atoms[i] == window->display->atom__NET_WM_WINDOW_TYPE_NORMAL ||
+ atoms[i] == window->display->atom__NET_WM_WINDOW_TYPE_UTILITY ||
+ atoms[i] == window->display->atom__NET_WM_WINDOW_TYPE_SPLASH)
+ {
+ window->type_atom = atoms[i];
+ break;
+ }
+
+ ++i;
+ }
+
+ meta_XFree (atoms);
+
+ if (meta_is_verbose ())
+ {
+ char *str;
+
+ str = NULL;
+ if (window->type_atom != None)
+ {
+ meta_error_trap_push (window->display);
+ str = XGetAtomName (window->display->xdisplay, window->type_atom);
+ meta_error_trap_pop (window->display, TRUE);
+ }
+
+ meta_verbose ("Window %s type atom %s\n", window->desc,
+ str ? str : "(none)");
+
+ if (str)
+ meta_XFree (str);
+ }
+
+ meta_window_recalc_window_type (window);
+}
+
+static void
+redraw_icon (MetaWindow *window)
+{
+ /* We could probably be smart and just redraw the icon here,
+ * instead of the whole frame.
+ */
+ if (window->frame && (window->mapped || window->frame->mapped))
+ meta_ui_queue_frame_draw (window->screen->ui, window->frame->xwindow);
+}
+
+void
+meta_window_update_icon_now (MetaWindow *window)
+{
+ GdkPixbuf *icon;
+ GdkPixbuf *mini_icon;
+
+ icon = NULL;
+ mini_icon = NULL;
+
+ if (meta_read_icons (window->screen,
+ window->xwindow,
+ &window->icon_cache,
+ window->wm_hints_pixmap,
+ window->wm_hints_mask,
+ &icon,
+ META_ICON_WIDTH, META_ICON_HEIGHT,
+ &mini_icon,
+ META_MINI_ICON_WIDTH,
+ META_MINI_ICON_HEIGHT))
+ {
+ if (window->icon)
+ g_object_unref (G_OBJECT (window->icon));
+
+ if (window->mini_icon)
+ g_object_unref (G_OBJECT (window->mini_icon));
+
+ window->icon = icon;
+ window->mini_icon = mini_icon;
+
+ redraw_icon (window);
+ }
+
+ g_assert (window->icon);
+ g_assert (window->mini_icon);
+}
+
+static gboolean
+idle_update_icon (gpointer data)
+{
+ GSList *tmp;
+ GSList *copy;
+ guint queue_index = GPOINTER_TO_INT (data);
+
+ meta_topic (META_DEBUG_GEOMETRY, "Clearing the update_icon queue\n");
+
+ /* Work with a copy, for reentrancy. The allowed reentrancy isn't
+ * complete; destroying a window while we're in here would result in
+ * badness. But it's OK to queue/unqueue update_icons.
+ */
+ copy = g_slist_copy (queue_pending[queue_index]);
+ g_slist_free (queue_pending[queue_index]);
+ queue_pending[queue_index] = NULL;
+ queue_idle[queue_index] = 0;
+
+ destroying_windows_disallowed += 1;
+
+ tmp = copy;
+ while (tmp != NULL)
+ {
+ MetaWindow *window;
+
+ window = tmp->data;
+
+ meta_window_update_icon_now (window);
+ window->is_in_queues &= ~META_QUEUE_UPDATE_ICON;
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (copy);
+
+ destroying_windows_disallowed -= 1;
+
+ return FALSE;
+}
+
+GList*
+meta_window_get_workspaces (MetaWindow *window)
+{
+ if (window->on_all_workspaces)
+ return window->screen->workspaces;
+ else
+ return window->workspace->list_containing_self;
+}
+
+static void
+invalidate_work_areas (MetaWindow *window)
+{
+ GList *tmp;
+
+ tmp = meta_window_get_workspaces (window);
+
+ while (tmp != NULL)
+ {
+ meta_workspace_invalidate_work_area (tmp->data);
+ tmp = tmp->next;
+ }
+}
+
+void
+meta_window_update_struts (MetaWindow *window)
+{
+ GSList *old_struts;
+ GSList *new_struts;
+ GSList *old_iter, *new_iter;
+ gulong *struts = NULL;
+ int nitems;
+ gboolean changed;
+
+ meta_verbose ("Updating struts for %s\n", window->desc);
+
+ old_struts = window->struts;
+ new_struts = NULL;
+
+ if (meta_prop_get_cardinal_list (window->display,
+ window->xwindow,
+ window->display->atom__NET_WM_STRUT_PARTIAL,
+ &struts, &nitems))
+ {
+ if (nitems != 12)
+ meta_verbose ("_NET_WM_STRUT_PARTIAL on %s has %d values instead "
+ "of 12\n",
+ window->desc, nitems);
+ else
+ {
+ /* Pull out the strut info for each side in the hint */
+ int i;
+ for (i=0; i<4; i++)
+ {
+ MetaStrut *temp;
+ int thickness, strut_begin, strut_end;
+
+ thickness = struts[i];
+ if (thickness == 0)
+ continue;
+ strut_begin = struts[4+(i*2)];
+ strut_end = struts[4+(i*2)+1];
+
+ temp = g_new (MetaStrut, 1);
+ temp->side = 1 << i; /* See MetaSide def. Matches nicely, eh? */
+ temp->rect = window->screen->rect;
+ switch (temp->side)
+ {
+ case META_SIDE_RIGHT:
+ temp->rect.x = BOX_RIGHT(temp->rect) - thickness;
+ /* Intentionally fall through without breaking */
+ case META_SIDE_LEFT:
+ temp->rect.width = thickness;
+ temp->rect.y = strut_begin;
+ temp->rect.height = strut_end - strut_begin + 1;
+ break;
+ case META_SIDE_BOTTOM:
+ temp->rect.y = BOX_BOTTOM(temp->rect) - thickness;
+ /* Intentionally fall through without breaking */
+ case META_SIDE_TOP:
+ temp->rect.height = thickness;
+ temp->rect.x = strut_begin;
+ temp->rect.width = strut_end - strut_begin + 1;
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ new_struts = g_slist_prepend (new_struts, temp);
+ }
+
+ meta_verbose ("_NET_WM_STRUT_PARTIAL struts %lu %lu %lu %lu for "
+ "window %s\n",
+ struts[0], struts[1], struts[2], struts[3],
+ window->desc);
+ }
+ meta_XFree (struts);
+ }
+ else
+ {
+ meta_verbose ("No _NET_WM_STRUT property for %s\n",
+ window->desc);
+ }
+
+ if (!new_struts &&
+ meta_prop_get_cardinal_list (window->display,
+ window->xwindow,
+ window->display->atom__NET_WM_STRUT,
+ &struts, &nitems))
+ {
+ if (nitems != 4)
+ meta_verbose ("_NET_WM_STRUT on %s has %d values instead of 4\n",
+ window->desc, nitems);
+ else
+ {
+ /* Pull out the strut info for each side in the hint */
+ int i;
+ for (i=0; i<4; i++)
+ {
+ MetaStrut *temp;
+ int thickness;
+
+ thickness = struts[i];
+ if (thickness == 0)
+ continue;
+
+ temp = g_new (MetaStrut, 1);
+ temp->side = 1 << i;
+ temp->rect = window->screen->rect;
+ switch (temp->side)
+ {
+ case META_SIDE_RIGHT:
+ temp->rect.x = BOX_RIGHT(temp->rect) - thickness;
+ /* Intentionally fall through without breaking */
+ case META_SIDE_LEFT:
+ temp->rect.width = thickness;
+ break;
+ case META_SIDE_BOTTOM:
+ temp->rect.y = BOX_BOTTOM(temp->rect) - thickness;
+ /* Intentionally fall through without breaking */
+ case META_SIDE_TOP:
+ temp->rect.height = thickness;
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ new_struts = g_slist_prepend (new_struts, temp);
+ }
+
+ meta_verbose ("_NET_WM_STRUT struts %lu %lu %lu %lu for window %s\n",
+ struts[0], struts[1], struts[2], struts[3],
+ window->desc);
+ }
+ meta_XFree (struts);
+ }
+ else if (!new_struts)
+ {
+ meta_verbose ("No _NET_WM_STRUT property for %s\n",
+ window->desc);
+ }
+
+ /* Determine whether old_struts and new_struts are the same */
+ old_iter = old_struts;
+ new_iter = new_struts;
+ while (old_iter && new_iter)
+ {
+ MetaStrut *old_strut = (MetaStrut*) old_iter->data;
+ MetaStrut *new_strut = (MetaStrut*) new_iter->data;
+
+ if (old_strut->side != new_strut->side ||
+ !meta_rectangle_equal (&old_strut->rect, &new_strut->rect))
+ break;
+
+ old_iter = old_iter->next;
+ new_iter = new_iter->next;
+ }
+ changed = (old_iter != NULL || new_iter != NULL);
+
+ /* Update appropriately */
+ meta_free_gslist_and_elements (old_struts);
+ window->struts = new_struts;
+ if (changed)
+ {
+ meta_topic (META_DEBUG_WORKAREA,
+ "Invalidating work areas of window %s due to struts update\n",
+ window->desc);
+ invalidate_work_areas (window);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_WORKAREA,
+ "Struts on %s were unchanged\n", window->desc);
+ }
+}
+
+void
+meta_window_recalc_window_type (MetaWindow *window)
+{
+ recalc_window_type (window);
+}
+
+static void
+recalc_window_type (MetaWindow *window)
+{
+ MetaWindowType old_type;
+
+ old_type = window->type;
+
+ if (window->type_atom != None)
+ {
+ if (window->type_atom == window->display->atom__NET_WM_WINDOW_TYPE_DESKTOP)
+ window->type = META_WINDOW_DESKTOP;
+ else if (window->type_atom == window->display->atom__NET_WM_WINDOW_TYPE_DOCK)
+ window->type = META_WINDOW_DOCK;
+ else if (window->type_atom == window->display->atom__NET_WM_WINDOW_TYPE_TOOLBAR)
+ window->type = META_WINDOW_TOOLBAR;
+ else if (window->type_atom == window->display->atom__NET_WM_WINDOW_TYPE_MENU)
+ window->type = META_WINDOW_MENU;
+ else if (window->type_atom == window->display->atom__NET_WM_WINDOW_TYPE_DIALOG)
+ window->type = META_WINDOW_DIALOG;
+ else if (window->type_atom == window->display->atom__NET_WM_WINDOW_TYPE_NORMAL)
+ window->type = META_WINDOW_NORMAL;
+ else if (window->type_atom == window->display->atom__NET_WM_WINDOW_TYPE_UTILITY)
+ window->type = META_WINDOW_UTILITY;
+ else if (window->type_atom == window->display->atom__NET_WM_WINDOW_TYPE_SPLASH)
+ window->type = META_WINDOW_SPLASHSCREEN;
+ else
+ meta_bug ("Set a type atom for %s that wasn't handled in recalc_window_type\n",
+ window->desc);
+ }
+ else if (window->xtransient_for != None)
+ {
+ window->type = META_WINDOW_DIALOG;
+ }
+ else
+ {
+ window->type = META_WINDOW_NORMAL;
+ }
+
+ if (window->type == META_WINDOW_DIALOG &&
+ window->wm_state_modal)
+ window->type = META_WINDOW_MODAL_DIALOG;
+
+ meta_verbose ("Calculated type %u for %s, old type %u\n",
+ window->type, window->desc, old_type);
+
+ if (old_type != window->type)
+ {
+ recalc_window_features (window);
+
+ set_net_wm_state (window);
+
+ /* Update frame */
+ if (window->decorated)
+ meta_window_ensure_frame (window);
+ else
+ meta_window_destroy_frame (window);
+
+ /* update stacking constraints */
+ meta_window_update_layer (window);
+
+ meta_window_grab_keys (window);
+ }
+}
+
+static void
+set_allowed_actions_hint (MetaWindow *window)
+{
+#define MAX_N_ACTIONS 12
+ unsigned long data[MAX_N_ACTIONS];
+ int i;
+
+ i = 0;
+ if (window->has_move_func)
+ {
+ data[i] = window->display->atom__NET_WM_ACTION_MOVE;
+ ++i;
+ }
+ if (window->has_resize_func)
+ {
+ data[i] = window->display->atom__NET_WM_ACTION_RESIZE;
+ ++i;
+ }
+ if (window->has_fullscreen_func)
+ {
+ data[i] = window->display->atom__NET_WM_ACTION_FULLSCREEN;
+ ++i;
+ }
+ if (window->has_minimize_func)
+ {
+ data[i] = window->display->atom__NET_WM_ACTION_MINIMIZE;
+ ++i;
+ }
+ if (window->has_shade_func)
+ {
+ data[i] = window->display->atom__NET_WM_ACTION_SHADE;
+ ++i;
+ }
+ /* sticky according to EWMH is different from marco's sticky;
+ * marco doesn't support EWMH sticky
+ */
+ if (window->has_maximize_func)
+ {
+ data[i] = window->display->atom__NET_WM_ACTION_MAXIMIZE_HORZ;
+ ++i;
+ data[i] = window->display->atom__NET_WM_ACTION_MAXIMIZE_VERT;
+ ++i;
+ }
+ /* We always allow this */
+ data[i] = window->display->atom__NET_WM_ACTION_CHANGE_DESKTOP;
+ ++i;
+ if (window->has_close_func)
+ {
+ data[i] = window->display->atom__NET_WM_ACTION_CLOSE;
+ ++i;
+ }
+
+ /* I guess we always allow above/below operations */
+ data[i] = window->display->atom__NET_WM_ACTION_ABOVE;
+ ++i;
+ data[i] = window->display->atom__NET_WM_ACTION_BELOW;
+ ++i;
+
+ g_assert (i <= MAX_N_ACTIONS);
+
+ meta_verbose ("Setting _NET_WM_ALLOWED_ACTIONS with %d atoms\n", i);
+
+ meta_error_trap_push (window->display);
+ XChangeProperty (window->display->xdisplay, window->xwindow,
+ window->display->atom__NET_WM_ALLOWED_ACTIONS,
+ XA_ATOM,
+ 32, PropModeReplace, (guchar*) data, i);
+ meta_error_trap_pop (window->display, FALSE);
+#undef MAX_N_ACTIONS
+}
+
+void
+meta_window_recalc_features (MetaWindow *window)
+{
+ recalc_window_features (window);
+}
+
+static void
+recalc_window_features (MetaWindow *window)
+{
+ gboolean old_has_close_func;
+ gboolean old_has_minimize_func;
+ gboolean old_has_move_func;
+ gboolean old_has_resize_func;
+ gboolean old_has_shade_func;
+ gboolean old_always_sticky;
+
+ old_has_close_func = window->has_close_func;
+ old_has_minimize_func = window->has_minimize_func;
+ old_has_move_func = window->has_move_func;
+ old_has_resize_func = window->has_resize_func;
+ old_has_shade_func = window->has_shade_func;
+ old_always_sticky = window->always_sticky;
+
+ /* Use MWM hints initially */
+ window->decorated = window->mwm_decorated;
+ window->border_only = window->mwm_border_only;
+ window->has_close_func = window->mwm_has_close_func;
+ window->has_minimize_func = window->mwm_has_minimize_func;
+ window->has_maximize_func = window->mwm_has_maximize_func;
+ window->has_move_func = window->mwm_has_move_func;
+
+ window->has_resize_func = TRUE;
+
+ /* If min_size == max_size, then don't allow resize */
+ if (window->size_hints.min_width == window->size_hints.max_width &&
+ window->size_hints.min_height == window->size_hints.max_height)
+ window->has_resize_func = FALSE;
+ else if (!window->mwm_has_resize_func)
+ {
+ /* We ignore mwm_has_resize_func because WM_NORMAL_HINTS is the
+ * authoritative source for that info. Some apps such as mplayer or
+ * xine disable resize via MWM but not WM_NORMAL_HINTS, but that
+ * leads to e.g. us not fullscreening their windows. Apps that set
+ * MWM but not WM_NORMAL_HINTS are basically broken. We complain
+ * about these apps but make them work.
+ */
+
+ meta_warning (_("Window %s sets an MWM hint indicating it isn't resizable, but sets min size %d x %d and max size %d x %d; this doesn't make much sense.\n"),
+ window->desc,
+ window->size_hints.min_width,
+ window->size_hints.min_height,
+ window->size_hints.max_width,
+ window->size_hints.max_height);
+ }
+
+ window->has_shade_func = TRUE;
+ window->has_fullscreen_func = TRUE;
+
+ window->always_sticky = FALSE;
+
+ /* Semantic category overrides the MWM hints */
+ if (window->type == META_WINDOW_TOOLBAR)
+ window->decorated = FALSE;
+
+ if (window->type == META_WINDOW_DESKTOP ||
+ window->type == META_WINDOW_DOCK)
+ window->always_sticky = TRUE;
+
+ if (window->type == META_WINDOW_DESKTOP ||
+ window->type == META_WINDOW_DOCK ||
+ window->type == META_WINDOW_SPLASHSCREEN)
+ {
+ window->decorated = FALSE;
+ window->has_close_func = FALSE;
+ window->has_shade_func = FALSE;
+
+ /* FIXME this keeps panels and things from using
+ * NET_WM_MOVERESIZE; the problem is that some
+ * panels (edge panels) have fixed possible locations,
+ * and others ("floating panels") do not.
+ *
+ * Perhaps we should require edge panels to explicitly
+ * disable movement?
+ */
+ window->has_move_func = FALSE;
+ window->has_resize_func = FALSE;
+ }
+
+ if (window->type != META_WINDOW_NORMAL)
+ {
+ window->has_minimize_func = FALSE;
+ window->has_maximize_func = FALSE;
+ window->has_fullscreen_func = FALSE;
+ }
+
+ if (!window->has_resize_func)
+ {
+ window->has_maximize_func = FALSE;
+
+ /* don't allow fullscreen if we can't resize, unless the size
+ * is entire screen size (kind of broken, because we
+ * actually fullscreen to xinerama head size not screen size)
+ */
+ if (window->size_hints.min_width == window->screen->rect.width &&
+ window->size_hints.min_height == window->screen->rect.height)
+ ; /* leave fullscreen available */
+ else
+ window->has_fullscreen_func = FALSE;
+ }
+
+ /* We leave fullscreen windows decorated, just push the frame outside
+ * the screen. This avoids flickering to unparent them.
+ *
+ * Note that setting has_resize_func = FALSE here must come after the
+ * above code that may disable fullscreen, because if the window
+ * is not resizable purely due to fullscreen, we don't want to
+ * disable fullscreen mode.
+ */
+ if (window->fullscreen)
+ {
+ window->has_shade_func = FALSE;
+ window->has_move_func = FALSE;
+ window->has_resize_func = FALSE;
+ window->has_maximize_func = FALSE;
+ }
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Window %s fullscreen = %d not resizable, maximizable = %d fullscreenable = %d min size %dx%d max size %dx%d\n",
+ window->desc,
+ window->fullscreen,
+ window->has_maximize_func, window->has_fullscreen_func,
+ window->size_hints.min_width,
+ window->size_hints.min_height,
+ window->size_hints.max_width,
+ window->size_hints.max_height);
+
+ /* no shading if not decorated */
+ if (!window->decorated || window->border_only)
+ window->has_shade_func = FALSE;
+
+ window->skip_taskbar = FALSE;
+ window->skip_pager = FALSE;
+
+ if (window->wm_state_skip_taskbar)
+ window->skip_taskbar = TRUE;
+
+ if (window->wm_state_skip_pager)
+ window->skip_pager = TRUE;
+
+ switch (window->type)
+ {
+ /* Force skip taskbar/pager on these window types */
+ case META_WINDOW_DESKTOP:
+ case META_WINDOW_DOCK:
+ case META_WINDOW_TOOLBAR:
+ case META_WINDOW_MENU:
+ case META_WINDOW_UTILITY:
+ case META_WINDOW_SPLASHSCREEN:
+ window->skip_taskbar = TRUE;
+ window->skip_pager = TRUE;
+ break;
+
+ case META_WINDOW_DIALOG:
+ case META_WINDOW_MODAL_DIALOG:
+ /* only skip taskbar if we have a real transient parent */
+ if (window->xtransient_for != None &&
+ window->xtransient_for != window->screen->xroot)
+ window->skip_taskbar = TRUE;
+ break;
+
+ case META_WINDOW_NORMAL:
+ break;
+ }
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Window %s decorated = %d border_only = %d has_close = %d has_minimize = %d has_maximize = %d has_move = %d has_shade = %d skip_taskbar = %d skip_pager = %d\n",
+ window->desc,
+ window->decorated,
+ window->border_only,
+ window->has_close_func,
+ window->has_minimize_func,
+ window->has_maximize_func,
+ window->has_move_func,
+ window->has_shade_func,
+ window->skip_taskbar,
+ window->skip_pager);
+
+ /* FIXME:
+ * Lame workaround for recalc_window_features
+ * being used overzealously. The fix is to
+ * only recalc_window_features when something
+ * has actually changed.
+ */
+ if (window->constructing ||
+ old_has_close_func != window->has_close_func ||
+ old_has_minimize_func != window->has_minimize_func ||
+ old_has_move_func != window->has_move_func ||
+ old_has_resize_func != window->has_resize_func ||
+ old_has_shade_func != window->has_shade_func ||
+ old_always_sticky != window->always_sticky)
+ set_allowed_actions_hint (window);
+
+ /* FIXME perhaps should ensure if we don't have a shade func,
+ * we aren't shaded, etc.
+ */
+}
+
+static void
+menu_callback (MetaWindowMenu *menu,
+ Display *xdisplay,
+ Window client_xwindow,
+ guint32 timestamp,
+ MetaMenuOp op,
+ int workspace_index,
+ gpointer data)
+{
+ MetaDisplay *display;
+ MetaWindow *window;
+ MetaWorkspace *workspace;
+
+ display = meta_display_for_x_display (xdisplay);
+ window = meta_display_lookup_x_window (display, client_xwindow);
+ workspace = NULL;
+
+ if (window != NULL) /* window can be NULL */
+ {
+ meta_verbose ("Menu op %u on %s\n", op, window->desc);
+
+ switch (op)
+ {
+ case META_MENU_OP_NONE:
+ /* nothing */
+ break;
+
+ case META_MENU_OP_DELETE:
+ meta_window_delete (window, timestamp);
+ break;
+
+ case META_MENU_OP_MINIMIZE:
+ meta_window_minimize (window);
+ break;
+
+ case META_MENU_OP_UNMAXIMIZE:
+ meta_window_unmaximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+ break;
+
+ case META_MENU_OP_MAXIMIZE:
+ meta_window_maximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+ break;
+
+ case META_MENU_OP_UNSHADE:
+ meta_window_unshade (window, timestamp);
+ break;
+
+ case META_MENU_OP_SHADE:
+ meta_window_shade (window, timestamp);
+ break;
+
+ case META_MENU_OP_MOVE_LEFT:
+ workspace = meta_workspace_get_neighbor (window->screen->active_workspace,
+ META_MOTION_LEFT);
+ break;
+
+ case META_MENU_OP_MOVE_RIGHT:
+ workspace = meta_workspace_get_neighbor (window->screen->active_workspace,
+ META_MOTION_RIGHT);
+ break;
+
+ case META_MENU_OP_MOVE_UP:
+ workspace = meta_workspace_get_neighbor (window->screen->active_workspace,
+ META_MOTION_UP);
+ break;
+
+ case META_MENU_OP_MOVE_DOWN:
+ workspace = meta_workspace_get_neighbor (window->screen->active_workspace,
+ META_MOTION_DOWN);
+ break;
+
+ case META_MENU_OP_WORKSPACES:
+ workspace = meta_screen_get_workspace_by_index (window->screen,
+ workspace_index);
+ break;
+
+ case META_MENU_OP_STICK:
+ meta_window_stick (window);
+ break;
+
+ case META_MENU_OP_UNSTICK:
+ meta_window_unstick (window);
+ break;
+
+ case META_MENU_OP_ABOVE:
+ case META_MENU_OP_UNABOVE:
+ if (window->wm_state_above == FALSE)
+ meta_window_make_above (window);
+ else
+ meta_window_unmake_above (window);
+ break;
+
+ case META_MENU_OP_MOVE:
+ meta_window_begin_grab_op (window,
+ META_GRAB_OP_KEYBOARD_MOVING,
+ TRUE,
+ timestamp);
+ break;
+
+ case META_MENU_OP_RESIZE:
+ meta_window_begin_grab_op (window,
+ META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN,
+ TRUE,
+ timestamp);
+ break;
+
+ case META_MENU_OP_RECOVER:
+ meta_window_shove_titlebar_onscreen (window);
+ break;
+
+ default:
+ meta_warning (G_STRLOC": Unknown window op\n");
+ break;
+ }
+
+ if (workspace)
+ {
+ meta_window_change_workspace (window,
+ workspace);
+#if 0
+ meta_workspace_activate (workspace);
+ meta_window_raise (window);
+#endif
+ }
+ }
+ else
+ {
+ meta_verbose ("Menu callback on nonexistent window\n");
+ }
+
+ if (display->window_menu == menu)
+ {
+ display->window_menu = NULL;
+ display->window_with_menu = NULL;
+ }
+
+ meta_ui_window_menu_free (menu);
+}
+
+void
+meta_window_show_menu (MetaWindow *window,
+ int root_x,
+ int root_y,
+ int button,
+ guint32 timestamp)
+{
+ MetaMenuOp ops;
+ MetaMenuOp insensitive;
+ MetaWindowMenu *menu;
+ MetaWorkspaceLayout layout;
+ int n_workspaces;
+ gboolean ltr;
+
+ if (window->display->window_menu)
+ {
+ meta_ui_window_menu_free (window->display->window_menu);
+ window->display->window_menu = NULL;
+ window->display->window_with_menu = NULL;
+ }
+
+ ops = META_MENU_OP_NONE;
+ insensitive = META_MENU_OP_NONE;
+
+ ops |= (META_MENU_OP_DELETE | META_MENU_OP_MINIMIZE | META_MENU_OP_MOVE | META_MENU_OP_RESIZE);
+
+ if (!meta_window_titlebar_is_onscreen (window) &&
+ window->type != META_WINDOW_DOCK &&
+ window->type != META_WINDOW_DESKTOP)
+ ops |= META_MENU_OP_RECOVER;
+
+ n_workspaces = meta_screen_get_n_workspaces (window->screen);
+
+ if (n_workspaces > 1)
+ ops |= META_MENU_OP_WORKSPACES;
+
+ meta_screen_calc_workspace_layout (window->screen,
+ n_workspaces,
+ meta_workspace_index ( window->screen->active_workspace),
+ &layout);
+
+ if (!window->on_all_workspaces)
+ {
+ ltr = meta_ui_get_direction() == META_UI_DIRECTION_LTR;
+
+ if (layout.current_col > 0)
+ ops |= ltr ? META_MENU_OP_MOVE_LEFT : META_MENU_OP_MOVE_RIGHT;
+ if ((layout.current_col < layout.cols - 1) &&
+ (layout.current_row * layout.cols + (layout.current_col + 1) < n_workspaces))
+ ops |= ltr ? META_MENU_OP_MOVE_RIGHT : META_MENU_OP_MOVE_LEFT;
+ if (layout.current_row > 0)
+ ops |= META_MENU_OP_MOVE_UP;
+ if ((layout.current_row < layout.rows - 1) &&
+ ((layout.current_row + 1) * layout.cols + layout.current_col < n_workspaces))
+ ops |= META_MENU_OP_MOVE_DOWN;
+ }
+
+ meta_screen_free_workspace_layout (&layout);
+
+ if (META_WINDOW_MAXIMIZED (window))
+ ops |= META_MENU_OP_UNMAXIMIZE;
+ else
+ ops |= META_MENU_OP_MAXIMIZE;
+
+#if 0
+ if (window->shaded)
+ ops |= META_MENU_OP_UNSHADE;
+ else
+ ops |= META_MENU_OP_SHADE;
+#endif
+
+ ops |= META_MENU_OP_UNSTICK;
+ ops |= META_MENU_OP_STICK;
+
+ if (window->wm_state_above)
+ ops |= META_MENU_OP_UNABOVE;
+ else
+ ops |= META_MENU_OP_ABOVE;
+
+ if (!window->has_maximize_func)
+ insensitive |= META_MENU_OP_UNMAXIMIZE | META_MENU_OP_MAXIMIZE;
+
+ /*if (!window->has_minimize_func)
+ insensitive |= META_MENU_OP_MINIMIZE;*/
+
+ /*if (!window->has_close_func)
+ insensitive |= META_MENU_OP_DELETE;*/
+
+ if (!window->has_shade_func)
+ insensitive |= META_MENU_OP_SHADE | META_MENU_OP_UNSHADE;
+
+ if (!META_WINDOW_ALLOWS_MOVE (window))
+ insensitive |= META_MENU_OP_MOVE;
+
+ if (!META_WINDOW_ALLOWS_RESIZE (window))
+ insensitive |= META_MENU_OP_RESIZE;
+
+ if (window->always_sticky)
+ insensitive |= META_MENU_OP_STICK | META_MENU_OP_UNSTICK | META_MENU_OP_WORKSPACES;
+
+ if ((window->type == META_WINDOW_DESKTOP) ||
+ (window->type == META_WINDOW_DOCK) ||
+ (window->type == META_WINDOW_SPLASHSCREEN))
+ insensitive |= META_MENU_OP_ABOVE | META_MENU_OP_UNABOVE;
+
+ /* If all operations are disabled, just quit without showing the menu.
+ * This is the case, for example, with META_WINDOW_DESKTOP windows.
+ */
+ if ((ops & ~insensitive) == 0)
+ return;
+
+ menu =
+ meta_ui_window_menu_new (window->screen->ui,
+ window->xwindow,
+ ops,
+ insensitive,
+ meta_window_get_net_wm_desktop (window),
+ meta_screen_get_n_workspaces (window->screen),
+ menu_callback,
+ NULL);
+
+ window->display->window_menu = menu;
+ window->display->window_with_menu = window;
+
+ meta_verbose ("Popping up window menu for %s\n", window->desc);
+
+ meta_ui_window_menu_popup (menu, root_x, root_y, button, timestamp);
+}
+
+void
+meta_window_shove_titlebar_onscreen (MetaWindow *window)
+{
+ MetaRectangle outer_rect;
+ GList *onscreen_region;
+ int horiz_amount, vert_amount;
+ int newx, newy;
+
+ /* If there's no titlebar, don't bother */
+ if (!window->frame)
+ return;
+
+ /* Get the basic info we need */
+ meta_window_get_outer_rect (window, &outer_rect);
+ onscreen_region = window->screen->active_workspace->screen_region;
+
+ /* Extend the region (just in case the window is too big to fit on the
+ * screen), then shove the window on screen, then return the region to
+ * normal.
+ */
+ horiz_amount = outer_rect.width;
+ vert_amount = outer_rect.height;
+ meta_rectangle_expand_region (onscreen_region,
+ horiz_amount,
+ horiz_amount,
+ 0,
+ vert_amount);
+ meta_rectangle_shove_into_region(onscreen_region,
+ FIXED_DIRECTION_X,
+ &outer_rect);
+ meta_rectangle_expand_region (onscreen_region,
+ -horiz_amount,
+ -horiz_amount,
+ 0,
+ -vert_amount);
+
+ newx = outer_rect.x + window->frame->child_x;
+ newy = outer_rect.y + window->frame->child_y;
+ meta_window_move_resize (window,
+ FALSE,
+ newx,
+ newy,
+ window->rect.width,
+ window->rect.height);
+}
+
+gboolean
+meta_window_titlebar_is_onscreen (MetaWindow *window)
+{
+ MetaRectangle titlebar_rect;
+ GList *onscreen_region;
+ int titlebar_size;
+ gboolean is_onscreen;
+
+ const int min_height_needed = 8;
+ const int min_width_percent = 0.5;
+ const int min_width_absolute = 50;
+
+ /* Titlebar can't be offscreen if there is no titlebar... */
+ if (!window->frame)
+ return FALSE;
+
+ /* Get the rectangle corresponding to the titlebar */
+ meta_window_get_outer_rect (window, &titlebar_rect);
+ titlebar_rect.height = window->frame->child_y;
+ titlebar_size = meta_rectangle_area (&titlebar_rect);
+
+ /* Run through the spanning rectangles for the screen and see if one of
+ * them overlaps with the titlebar sufficiently to consider it onscreen.
+ */
+ is_onscreen = FALSE;
+ onscreen_region = window->screen->active_workspace->screen_region;
+ while (onscreen_region)
+ {
+ MetaRectangle *spanning_rect = onscreen_region->data;
+ MetaRectangle overlap;
+
+ meta_rectangle_intersect (&titlebar_rect, spanning_rect, &overlap);
+ if (overlap.height > MIN (titlebar_rect.height, min_height_needed) &&
+ overlap.width > MIN (titlebar_rect.width * min_width_percent,
+ min_width_absolute))
+ {
+ is_onscreen = TRUE;
+ break;
+ }
+
+ onscreen_region = onscreen_region->next;
+ }
+
+ return is_onscreen;
+}
+
+static double
+timeval_to_ms (const GTimeVal *timeval)
+{
+ return (timeval->tv_sec * G_USEC_PER_SEC + timeval->tv_usec) / 1000.0;
+}
+
+static double
+time_diff (const GTimeVal *first,
+ const GTimeVal *second)
+{
+ double first_ms = timeval_to_ms (first);
+ double second_ms = timeval_to_ms (second);
+
+ return first_ms - second_ms;
+}
+
+static gboolean
+check_moveresize_frequency (MetaWindow *window,
+ gdouble *remaining)
+{
+ GTimeVal current_time;
+
+ g_get_current_time (&current_time);
+
+#ifdef HAVE_XSYNC
+ if (!window->disable_sync &&
+ window->display->grab_sync_request_alarm != None)
+ {
+ if (window->sync_request_time.tv_sec != 0 ||
+ window->sync_request_time.tv_usec != 0)
+ {
+ double elapsed =
+ time_diff (&current_time, &window->sync_request_time);
+
+ if (elapsed < 1000.0)
+ {
+ /* We want to be sure that the timeout happens at
+ * a time where elapsed will definitely be
+ * greater than 1000, so we can disable sync
+ */
+ if (remaining)
+ *remaining = 1000.0 - elapsed + 100;
+
+ return FALSE;
+ }
+ else
+ {
+ /* We have now waited for more than a second for the
+ * application to respond to the sync request
+ */
+ window->disable_sync = TRUE;
+ return TRUE;
+ }
+ }
+ else
+ {
+ /* No outstanding sync requests. Go ahead and resize
+ */
+ return TRUE;
+ }
+ }
+ else
+#endif /* HAVE_XSYNC */
+ {
+ const double max_resizes_per_second = 25.0;
+ const double ms_between_resizes = 1000.0 / max_resizes_per_second;
+ double elapsed;
+
+ elapsed = time_diff (&current_time, &window->display->grab_last_moveresize_time);
+
+ if (elapsed >= 0.0 && elapsed < ms_between_resizes)
+ {
+ meta_topic (META_DEBUG_RESIZING,
+ "Delaying move/resize as only %g of %g ms elapsed\n",
+ elapsed, ms_between_resizes);
+
+ if (remaining)
+ *remaining = (ms_between_resizes - elapsed);
+
+ return FALSE;
+ }
+
+ meta_topic (META_DEBUG_RESIZING,
+ " Checked moveresize freq, allowing move/resize now (%g of %g seconds elapsed)\n",
+ elapsed / 1000.0, 1.0 / max_resizes_per_second);
+
+ return TRUE;
+ }
+}
+
+static gboolean
+update_move_timeout (gpointer data)
+{
+ MetaWindow *window = data;
+
+ update_move (window,
+ window->display->grab_last_user_action_was_snap,
+ window->display->grab_latest_motion_x,
+ window->display->grab_latest_motion_y);
+
+ return FALSE;
+}
+
+static void
+update_move (MetaWindow *window,
+ gboolean snap,
+ int x,
+ int y)
+{
+ int dx, dy;
+ int new_x, new_y;
+ MetaRectangle old;
+ int shake_threshold;
+ MetaDisplay *display = window->display;
+
+ display->grab_latest_motion_x = x;
+ display->grab_latest_motion_y = y;
+
+ dx = x - display->grab_anchor_root_x;
+ dy = y - display->grab_anchor_root_y;
+
+ new_x = display->grab_anchor_window_pos.x + dx;
+ new_y = display->grab_anchor_window_pos.y + dy;
+
+ meta_verbose ("x,y = %d,%d anchor ptr %d,%d anchor pos %d,%d dx,dy %d,%d\n",
+ x, y,
+ display->grab_anchor_root_x,
+ display->grab_anchor_root_y,
+ display->grab_anchor_window_pos.x,
+ display->grab_anchor_window_pos.y,
+ dx, dy);
+
+ /* Don't bother doing anything if no move has been specified. (This
+ * happens often, even in keyboard moving, due to the warping of the
+ * pointer.
+ */
+ if (dx == 0 && dy == 0)
+ return;
+
+ /* shake loose (unmaximize) maximized window if dragged beyond the threshold
+ * in the Y direction. You can't pull a window loose via X motion.
+ */
+
+#define DRAG_THRESHOLD_TO_SHAKE_THRESHOLD_FACTOR 6
+ shake_threshold = meta_ui_get_drag_threshold (window->screen->ui) *
+ DRAG_THRESHOLD_TO_SHAKE_THRESHOLD_FACTOR;
+
+ if (META_WINDOW_MAXIMIZED (window) && ABS (dy) >= shake_threshold)
+ {
+ double prop;
+
+ /* Shake loose */
+ window->shaken_loose = TRUE;
+
+ /* move the unmaximized window to the cursor */
+ prop =
+ ((double)(x - display->grab_initial_window_pos.x)) /
+ ((double)display->grab_initial_window_pos.width);
+
+ display->grab_initial_window_pos.x =
+ x - window->saved_rect.width * prop;
+ display->grab_initial_window_pos.y = y;
+
+ if (window->frame)
+ {
+ display->grab_initial_window_pos.y += window->frame->child_y / 2;
+ }
+
+ window->saved_rect.x = display->grab_initial_window_pos.x;
+ window->saved_rect.y = display->grab_initial_window_pos.y;
+ display->grab_anchor_root_x = x;
+ display->grab_anchor_root_y = y;
+
+ meta_window_unmaximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+
+ return;
+ }
+ /* remaximize window on an other xinerama monitor if window has
+ * been shaken loose or it is still maximized (then move straight)
+ */
+ else if (window->shaken_loose || META_WINDOW_MAXIMIZED (window))
+ {
+ const MetaXineramaScreenInfo *wxinerama;
+ MetaRectangle work_area;
+ int monitor;
+
+ wxinerama = meta_screen_get_xinerama_for_window (window->screen, window);
+
+ for (monitor = 0; monitor < window->screen->n_xinerama_infos; monitor++)
+ {
+ meta_window_get_work_area_for_xinerama (window, monitor, &work_area);
+
+ /* check if cursor is near the top of a xinerama work area */
+ if (x >= work_area.x &&
+ x < (work_area.x + work_area.width) &&
+ y >= work_area.y &&
+ y < (work_area.y + shake_threshold))
+ {
+ /* move the saved rect if window will become maximized on an
+ * other monitor so user isn't surprised on a later unmaximize
+ */
+ if (wxinerama->number != monitor)
+ {
+ window->saved_rect.x = work_area.x;
+ window->saved_rect.y = work_area.y;
+
+ if (window->frame)
+ {
+ window->saved_rect.x += window->frame->child_x;
+ window->saved_rect.y += window->frame->child_y;
+ }
+
+ window->user_rect.x = window->saved_rect.x;
+ window->user_rect.y = window->saved_rect.y;
+
+ meta_window_unmaximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+ }
+
+ display->grab_initial_window_pos = work_area;
+ display->grab_anchor_root_x = x;
+ display->grab_anchor_root_y = y;
+ window->shaken_loose = FALSE;
+
+ meta_window_maximize (window,
+ META_MAXIMIZE_HORIZONTAL |
+ META_MAXIMIZE_VERTICAL);
+
+ return;
+ }
+ }
+ }
+
+ if (display->grab_wireframe_active)
+ old = display->grab_wireframe_rect;
+ else
+ meta_window_get_client_root_coords (window, &old);
+
+ /* Don't allow movement in the maximized directions */
+ if (window->maximized_horizontally)
+ new_x = old.x;
+ if (window->maximized_vertically)
+ new_y = old.y;
+
+ /* Do any edge resistance/snapping */
+ meta_window_edge_resistance_for_move (window,
+ old.x,
+ old.y,
+ &new_x,
+ &new_y,
+ update_move_timeout,
+ snap,
+ FALSE);
+
+ if (display->compositor)
+ {
+ int root_x = new_x - display->grab_anchor_window_pos.x + display->grab_anchor_root_x;
+ int root_y = new_y - display->grab_anchor_window_pos.y + display->grab_anchor_root_y;
+
+ meta_compositor_update_move (display->compositor,
+ window, root_x, root_y);
+ }
+
+ if (display->grab_wireframe_active)
+ meta_window_update_wireframe (window, new_x, new_y,
+ display->grab_wireframe_rect.width,
+ display->grab_wireframe_rect.height);
+ else
+ meta_window_move (window, TRUE, new_x, new_y);
+}
+
+static gboolean
+update_resize_timeout (gpointer data)
+{
+ MetaWindow *window = data;
+
+ update_resize (window,
+ window->display->grab_last_user_action_was_snap,
+ window->display->grab_latest_motion_x,
+ window->display->grab_latest_motion_y,
+ TRUE);
+ return FALSE;
+}
+
+static void
+update_resize (MetaWindow *window,
+ gboolean snap,
+ int x, int y,
+ gboolean force)
+{
+ int dx, dy;
+ int new_w, new_h;
+ int gravity;
+ MetaRectangle old;
+ int new_x, new_y;
+ double remaining;
+
+ window->display->grab_latest_motion_x = x;
+ window->display->grab_latest_motion_y = y;
+
+ dx = x - window->display->grab_anchor_root_x;
+ dy = y - window->display->grab_anchor_root_y;
+
+ new_w = window->display->grab_anchor_window_pos.width;
+ new_h = window->display->grab_anchor_window_pos.height;
+
+ /* Don't bother doing anything if no move has been specified. (This
+ * happens often, even in keyboard resizing, due to the warping of the
+ * pointer.
+ */
+ if (dx == 0 && dy == 0)
+ return;
+
+ /* FIXME this is only used in wireframe mode */
+ new_x = window->display->grab_anchor_window_pos.x;
+ new_y = window->display->grab_anchor_window_pos.y;
+
+ if (window->display->grab_op == META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN)
+ {
+ if ((dx > 0) && (dy > 0))
+ {
+ window->display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_SE;
+ meta_window_update_keyboard_resize (window, TRUE);
+ }
+ else if ((dx < 0) && (dy > 0))
+ {
+ window->display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_SW;
+ meta_window_update_keyboard_resize (window, TRUE);
+ }
+ else if ((dx > 0) && (dy < 0))
+ {
+ window->display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_NE;
+ meta_window_update_keyboard_resize (window, TRUE);
+ }
+ else if ((dx < 0) && (dy < 0))
+ {
+ window->display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_NW;
+ meta_window_update_keyboard_resize (window, TRUE);
+ }
+ else if (dx < 0)
+ {
+ window->display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_W;
+ meta_window_update_keyboard_resize (window, TRUE);
+ }
+ else if (dx > 0)
+ {
+ window->display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_E;
+ meta_window_update_keyboard_resize (window, TRUE);
+ }
+ else if (dy > 0)
+ {
+ window->display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_S;
+ meta_window_update_keyboard_resize (window, TRUE);
+ }
+ else if (dy < 0)
+ {
+ window->display->grab_op = META_GRAB_OP_KEYBOARD_RESIZING_N;
+ meta_window_update_keyboard_resize (window, TRUE);
+ }
+ }
+
+ /* FIXME: This stupidity only needed because of wireframe mode and
+ * the fact that wireframe isn't making use of
+ * meta_rectangle_resize_with_gravity(). If we were to use that, we
+ * could just increment new_w and new_h by dx and dy in all cases.
+ */
+ switch (window->display->grab_op)
+ {
+ case META_GRAB_OP_RESIZING_SE:
+ case META_GRAB_OP_RESIZING_NE:
+ case META_GRAB_OP_RESIZING_E:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_E:
+ new_w += dx;
+ break;
+
+ case META_GRAB_OP_RESIZING_NW:
+ case META_GRAB_OP_RESIZING_SW:
+ case META_GRAB_OP_RESIZING_W:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_W:
+ new_w -= dx;
+ new_x += dx;
+ break;
+
+ default:
+ break;
+ }
+
+ switch (window->display->grab_op)
+ {
+ case META_GRAB_OP_RESIZING_SE:
+ case META_GRAB_OP_RESIZING_S:
+ case META_GRAB_OP_RESIZING_SW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_S:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ new_h += dy;
+ break;
+
+ case META_GRAB_OP_RESIZING_N:
+ case META_GRAB_OP_RESIZING_NE:
+ case META_GRAB_OP_RESIZING_NW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_N:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ new_h -= dy;
+ new_y += dy;
+ break;
+ default:
+ break;
+ }
+
+ if (!check_moveresize_frequency (window, &remaining) && !force)
+ {
+ /* we are ignoring an event here, so we schedule a
+ * compensation event when we would otherwise not ignore
+ * an event. Otherwise we can become stuck if the user never
+ * generates another event.
+ */
+ if (!window->display->grab_resize_timeout_id)
+ {
+ window->display->grab_resize_timeout_id =
+ g_timeout_add ((int)remaining, update_resize_timeout, window);
+ }
+
+ return;
+ }
+
+ /* If we get here, it means the client should have redrawn itself */
+ if (window->display->compositor)
+ meta_compositor_set_updates (window->display->compositor, window, TRUE);
+
+ /* Remove any scheduled compensation events */
+ if (window->display->grab_resize_timeout_id)
+ {
+ g_source_remove (window->display->grab_resize_timeout_id);
+ window->display->grab_resize_timeout_id = 0;
+ }
+
+ if (window->display->grab_wireframe_active)
+ old = window->display->grab_wireframe_rect;
+ else
+ old = window->rect; /* Don't actually care about x,y */
+
+ /* One sided resizing ought to actually be one-sided, despite the fact that
+ * aspect ratio windows don't interact nicely with the above stuff. So,
+ * to avoid some nasty flicker, we enforce that.
+ */
+ switch (window->display->grab_op)
+ {
+ case META_GRAB_OP_RESIZING_S:
+ case META_GRAB_OP_RESIZING_N:
+ new_w = old.width;
+ break;
+
+ case META_GRAB_OP_RESIZING_E:
+ case META_GRAB_OP_RESIZING_W:
+ new_h = old.height;
+ break;
+
+ default:
+ break;
+ }
+
+ /* compute gravity of client during operation */
+ gravity = meta_resize_gravity_from_grab_op (window->display->grab_op);
+ g_assert (gravity >= 0);
+
+ /* Do any edge resistance/snapping */
+ meta_window_edge_resistance_for_resize (window,
+ old.width,
+ old.height,
+ &new_w,
+ &new_h,
+ gravity,
+ update_resize_timeout,
+ snap,
+ FALSE);
+
+ if (window->display->grab_wireframe_active)
+ {
+ if ((new_x + new_w <= new_x) || (new_y + new_h <= new_y))
+ return;
+
+ /* FIXME This is crap. For example, the wireframe isn't
+ * constrained in the way that a real resize would be. An
+ * obvious elegant solution is to unmap the window during
+ * wireframe, but still resize it; however, that probably
+ * confuses broken clients that have problems with opaque
+ * resize, they probably don't track their visibility.
+ */
+ meta_window_update_wireframe (window, new_x, new_y, new_w, new_h);
+ }
+ else
+ {
+ /* We don't need to update unless the specified width and height
+ * are actually different from what we had before.
+ */
+ if (old.width != new_w || old.height != new_h)
+ meta_window_resize_with_gravity (window, TRUE, new_w, new_h, gravity);
+ }
+
+ /* Store the latest resize time, if we actually resized. */
+ if (window->rect.width != old.width || window->rect.height != old.height)
+ g_get_current_time (&window->display->grab_last_moveresize_time);
+}
+
+typedef struct
+{
+ const XEvent *current_event;
+ int count;
+ guint32 last_time;
+} EventScannerData;
+
+static Bool
+find_last_time_predicate (Display *display,
+ XEvent *xevent,
+ XPointer arg)
+{
+ EventScannerData *esd = (void*) arg;
+
+ if (esd->current_event->type == xevent->type &&
+ esd->current_event->xany.window == xevent->xany.window)
+ {
+ esd->count += 1;
+ esd->last_time = xevent->xmotion.time;
+ }
+
+ return False;
+}
+
+static gboolean
+check_use_this_motion_notify (MetaWindow *window,
+ XEvent *event)
+{
+ EventScannerData esd;
+ XEvent useless;
+
+ /* This code is copied from Owen's GDK code. */
+
+ if (window->display->grab_motion_notify_time != 0)
+ {
+ /* == is really the right test, but I'm all for paranoia */
+ if (window->display->grab_motion_notify_time <=
+ event->xmotion.time)
+ {
+ meta_topic (META_DEBUG_RESIZING,
+ "Arrived at event with time %u (waiting for %u), using it\n",
+ (unsigned int)event->xmotion.time,
+ window->display->grab_motion_notify_time);
+ window->display->grab_motion_notify_time = 0;
+ return TRUE;
+ }
+ else
+ return FALSE; /* haven't reached the saved timestamp yet */
+ }
+
+ esd.current_event = event;
+ esd.count = 0;
+ esd.last_time = 0;
+
+ /* "useless" isn't filled in because the predicate never returns True */
+ XCheckIfEvent (window->display->xdisplay,
+ &useless,
+ find_last_time_predicate,
+ (XPointer) &esd);
+
+ if (esd.count > 0)
+ meta_topic (META_DEBUG_RESIZING,
+ "Will skip %d motion events and use the event with time %u\n",
+ esd.count, (unsigned int) esd.last_time);
+
+ if (esd.last_time == 0)
+ return TRUE;
+ else
+ {
+ /* Save this timestamp, and ignore all motion notify
+ * until we get to the one with this stamp.
+ */
+ window->display->grab_motion_notify_time = esd.last_time;
+ return FALSE;
+ }
+}
+
+void
+meta_window_handle_mouse_grab_op_event (MetaWindow *window,
+ XEvent *event)
+{
+#ifdef HAVE_XSYNC
+ if (event->type == (window->display->xsync_event_base + XSyncAlarmNotify))
+ {
+ meta_topic (META_DEBUG_RESIZING,
+ "Alarm event received last motion x = %d y = %d\n",
+ window->display->grab_latest_motion_x,
+ window->display->grab_latest_motion_y);
+
+ /* If sync was previously disabled, turn it back on and hope
+ * the application has come to its senses (maybe it was just
+ * busy with a pagefault or a long computation).
+ */
+ window->disable_sync = FALSE;
+ window->sync_request_time.tv_sec = 0;
+ window->sync_request_time.tv_usec = 0;
+
+ /* This means we are ready for another configure. */
+ switch (window->display->grab_op)
+ {
+ case META_GRAB_OP_RESIZING_E:
+ case META_GRAB_OP_RESIZING_W:
+ case META_GRAB_OP_RESIZING_S:
+ case META_GRAB_OP_RESIZING_N:
+ case META_GRAB_OP_RESIZING_SE:
+ case META_GRAB_OP_RESIZING_SW:
+ case META_GRAB_OP_RESIZING_NE:
+ case META_GRAB_OP_RESIZING_NW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_S:
+ case META_GRAB_OP_KEYBOARD_RESIZING_N:
+ case META_GRAB_OP_KEYBOARD_RESIZING_W:
+ case META_GRAB_OP_KEYBOARD_RESIZING_E:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ /* no pointer round trip here, to keep in sync */
+ update_resize (window,
+ window->display->grab_last_user_action_was_snap,
+ window->display->grab_latest_motion_x,
+ window->display->grab_latest_motion_y,
+ TRUE);
+ break;
+
+ default:
+ break;
+ }
+ }
+#endif /* HAVE_XSYNC */
+
+ switch (event->type)
+ {
+ case ButtonRelease:
+ meta_display_check_threshold_reached (window->display,
+ event->xbutton.x_root,
+ event->xbutton.y_root);
+ /* If the user was snap moving then ignore the button release
+ * because they may have let go of shift before releasing the
+ * mouse button and they almost certainly do not want a
+ * non-snapped movement to occur from the button release.
+ */
+ if (!window->display->grab_last_user_action_was_snap)
+ {
+ if (meta_grab_op_is_moving (window->display->grab_op))
+ {
+ if (event->xbutton.root == window->screen->xroot)
+ update_move (window, event->xbutton.state & ShiftMask,
+ event->xbutton.x_root, event->xbutton.y_root);
+ }
+ else if (meta_grab_op_is_resizing (window->display->grab_op))
+ {
+ if (event->xbutton.root == window->screen->xroot)
+ update_resize (window,
+ event->xbutton.state & ShiftMask,
+ event->xbutton.x_root,
+ event->xbutton.y_root,
+ TRUE);
+ if (window->display->compositor)
+ meta_compositor_set_updates (window->display->compositor, window, TRUE);
+ }
+ }
+
+ meta_display_end_grab_op (window->display, event->xbutton.time);
+ break;
+
+ case MotionNotify:
+ meta_display_check_threshold_reached (window->display,
+ event->xmotion.x_root,
+ event->xmotion.y_root);
+ if (meta_grab_op_is_moving (window->display->grab_op))
+ {
+ if (event->xmotion.root == window->screen->xroot)
+ {
+ if (check_use_this_motion_notify (window,
+ event))
+ update_move (window,
+ event->xmotion.state & ShiftMask,
+ event->xmotion.x_root,
+ event->xmotion.y_root);
+ }
+ }
+ else if (meta_grab_op_is_resizing (window->display->grab_op))
+ {
+ if (event->xmotion.root == window->screen->xroot)
+ {
+ if (check_use_this_motion_notify (window,
+ event))
+ update_resize (window,
+ event->xmotion.state & ShiftMask,
+ event->xmotion.x_root,
+ event->xmotion.y_root,
+ FALSE);
+ }
+ }
+ break;
+
+ default:
+ break;
+ }
+}
+
+void
+meta_window_set_gravity (MetaWindow *window,
+ int gravity)
+{
+ XSetWindowAttributes attrs;
+
+ meta_verbose ("Setting gravity of %s to %d\n", window->desc, gravity);
+
+ attrs.win_gravity = gravity;
+
+ meta_error_trap_push (window->display);
+
+ XChangeWindowAttributes (window->display->xdisplay,
+ window->xwindow,
+ CWWinGravity,
+ &attrs);
+
+ meta_error_trap_pop (window->display, FALSE);
+}
+
+static void
+get_work_area_xinerama (MetaWindow *window,
+ MetaRectangle *area,
+ int which_xinerama)
+{
+ GList *tmp;
+
+ g_assert (which_xinerama >= 0);
+
+ /* Initialize to the whole xinerama */
+ *area = window->screen->xinerama_infos[which_xinerama].rect;
+
+ tmp = meta_window_get_workspaces (window);
+ while (tmp != NULL)
+ {
+ MetaRectangle workspace_work_area;
+ meta_workspace_get_work_area_for_xinerama (tmp->data,
+ which_xinerama,
+ &workspace_work_area);
+ meta_rectangle_intersect (area,
+ &workspace_work_area,
+ area);
+ tmp = tmp->next;
+ }
+
+ meta_topic (META_DEBUG_WORKAREA,
+ "Window %s xinerama %d has work area %d,%d %d x %d\n",
+ window->desc, which_xinerama,
+ area->x, area->y, area->width, area->height);
+}
+
+void
+meta_window_get_work_area_current_xinerama (MetaWindow *window,
+ MetaRectangle *area)
+{
+ const MetaXineramaScreenInfo *xinerama = NULL;
+ xinerama = meta_screen_get_xinerama_for_window (window->screen,
+ window);
+
+ meta_window_get_work_area_for_xinerama (window,
+ xinerama->number,
+ area);
+}
+
+void
+meta_window_get_work_area_for_xinerama (MetaWindow *window,
+ int which_xinerama,
+ MetaRectangle *area)
+{
+ g_return_if_fail (which_xinerama >= 0);
+
+ get_work_area_xinerama (window,
+ area,
+ which_xinerama);
+}
+
+void
+meta_window_get_work_area_all_xineramas (MetaWindow *window,
+ MetaRectangle *area)
+{
+ GList *tmp;
+
+ /* Initialize to the whole screen */
+ *area = window->screen->rect;
+
+ tmp = meta_window_get_workspaces (window);
+ while (tmp != NULL)
+ {
+ MetaRectangle workspace_work_area;
+ meta_workspace_get_work_area_all_xineramas (tmp->data,
+ &workspace_work_area);
+ meta_rectangle_intersect (area,
+ &workspace_work_area,
+ area);
+ tmp = tmp->next;
+ }
+
+ meta_topic (META_DEBUG_WORKAREA,
+ "Window %s has whole-screen work area %d,%d %d x %d\n",
+ window->desc, area->x, area->y, area->width, area->height);
+}
+
+
+gboolean
+meta_window_same_application (MetaWindow *window,
+ MetaWindow *other_window)
+{
+ MetaGroup *group = meta_window_get_group (window);
+ MetaGroup *other_group = meta_window_get_group (other_window);
+
+ return
+ group!=NULL &&
+ other_group!=NULL &&
+ group==other_group;
+}
+
+void
+meta_window_refresh_resize_popup (MetaWindow *window)
+{
+ if (window->display->grab_op == META_GRAB_OP_NONE)
+ return;
+
+ if (window->display->grab_window != window)
+ return;
+
+ /* We shouldn't ever get called when the wireframe is active
+ * because that's handled by a different code path in effects.c
+ */
+ if (window->display->grab_wireframe_active)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "refresh_resize_popup called when wireframe active\n");
+ return;
+ }
+
+ switch (window->display->grab_op)
+ {
+ case META_GRAB_OP_RESIZING_SE:
+ case META_GRAB_OP_RESIZING_S:
+ case META_GRAB_OP_RESIZING_SW:
+ case META_GRAB_OP_RESIZING_N:
+ case META_GRAB_OP_RESIZING_NE:
+ case META_GRAB_OP_RESIZING_NW:
+ case META_GRAB_OP_RESIZING_W:
+ case META_GRAB_OP_RESIZING_E:
+ case META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN:
+ case META_GRAB_OP_KEYBOARD_RESIZING_S:
+ case META_GRAB_OP_KEYBOARD_RESIZING_N:
+ case META_GRAB_OP_KEYBOARD_RESIZING_W:
+ case META_GRAB_OP_KEYBOARD_RESIZING_E:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ break;
+
+ default:
+ /* Not resizing */
+ return;
+ }
+
+ if (window->display->grab_resize_popup == NULL)
+ {
+ if (window->size_hints.width_inc > 1 ||
+ window->size_hints.height_inc > 1)
+ window->display->grab_resize_popup =
+ meta_ui_resize_popup_new (window->display->xdisplay,
+ window->screen->number);
+ }
+
+ if (window->display->grab_resize_popup != NULL)
+ {
+ MetaRectangle rect;
+
+ if (window->display->grab_wireframe_active)
+ rect = window->display->grab_wireframe_rect;
+ else
+ meta_window_get_client_root_coords (window, &rect);
+
+ meta_ui_resize_popup_set (window->display->grab_resize_popup,
+ rect,
+ window->size_hints.base_width,
+ window->size_hints.base_height,
+ window->size_hints.width_inc,
+ window->size_hints.height_inc);
+
+ meta_ui_resize_popup_set_showing (window->display->grab_resize_popup,
+ TRUE);
+ }
+}
+
+void
+meta_window_foreach_transient (MetaWindow *window,
+ MetaWindowForeachFunc func,
+ void *data)
+{
+ GSList *windows;
+ GSList *tmp;
+
+ windows = meta_display_list_windows (window->display);
+
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *transient = tmp->data;
+
+ if (meta_window_is_ancestor_of_transient (window, transient))
+ {
+ if (!(* func) (transient, data))
+ break;
+ }
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (windows);
+}
+
+void
+meta_window_foreach_ancestor (MetaWindow *window,
+ MetaWindowForeachFunc func,
+ void *data)
+{
+ MetaWindow *w;
+ MetaWindow *tortoise;
+
+ w = window;
+ tortoise = window;
+ while (TRUE)
+ {
+ if (w->xtransient_for == None ||
+ w->transient_parent_is_root_window)
+ break;
+
+ w = meta_display_lookup_x_window (w->display, w->xtransient_for);
+
+ if (w == NULL || w == tortoise)
+ break;
+
+ if (!(* func) (w, data))
+ break;
+
+ if (w->xtransient_for == None ||
+ w->transient_parent_is_root_window)
+ break;
+
+ w = meta_display_lookup_x_window (w->display, w->xtransient_for);
+
+ if (w == NULL || w == tortoise)
+ break;
+
+ if (!(* func) (w, data))
+ break;
+
+ tortoise = meta_display_lookup_x_window (tortoise->display,
+ tortoise->xtransient_for);
+
+ /* "w" should have already covered all ground covered by the
+ * tortoise, so the following must hold.
+ */
+ g_assert (tortoise != NULL);
+ g_assert (tortoise->xtransient_for != None);
+ g_assert (!tortoise->transient_parent_is_root_window);
+ }
+}
+
+typedef struct
+{
+ MetaWindow *ancestor;
+ gboolean found;
+} FindAncestorData;
+
+static gboolean
+find_ancestor_func (MetaWindow *window,
+ void *data)
+{
+ FindAncestorData *d = data;
+
+ if (window == d->ancestor)
+ {
+ d->found = TRUE;
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+gboolean
+meta_window_is_ancestor_of_transient (MetaWindow *window,
+ MetaWindow *transient)
+{
+ FindAncestorData d;
+
+ d.ancestor = window;
+ d.found = FALSE;
+
+ meta_window_foreach_ancestor (transient, find_ancestor_func, &d);
+
+ return d.found;
+}
+
+/* Warp pointer to location appropriate for grab,
+ * return root coordinates where pointer ended up.
+ */
+static gboolean
+warp_grab_pointer (MetaWindow *window,
+ MetaGrabOp grab_op,
+ int *x,
+ int *y)
+{
+ MetaRectangle rect;
+ MetaDisplay *display;
+
+ display = window->display;
+
+ /* We may not have done begin_grab_op yet, i.e. may not be in a grab
+ */
+
+ if (window == display->grab_window && display->grab_wireframe_active)
+ {
+ meta_window_get_xor_rect (window, &display->grab_wireframe_rect, &rect);
+ }
+ else
+ {
+ meta_window_get_outer_rect (window, &rect);
+ }
+
+ switch (grab_op)
+ {
+ case META_GRAB_OP_KEYBOARD_MOVING:
+ case META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN:
+ *x = rect.width / 2;
+ *y = rect.height / 2;
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_S:
+ *x = rect.width / 2;
+ *y = rect.height - 1;
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_N:
+ *x = rect.width / 2;
+ *y = 0;
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_W:
+ *x = 0;
+ *y = rect.height / 2;
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_E:
+ *x = rect.width - 1;
+ *y = rect.height / 2;
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_SE:
+ *x = rect.width - 1;
+ *y = rect.height - 1;
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_NE:
+ *x = rect.width - 1;
+ *y = 0;
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_SW:
+ *x = 0;
+ *y = rect.height - 1;
+ break;
+
+ case META_GRAB_OP_KEYBOARD_RESIZING_NW:
+ *x = 0;
+ *y = 0;
+ break;
+
+ default:
+ return FALSE;
+ }
+
+ *x += rect.x;
+ *y += rect.y;
+
+ /* Avoid weird bouncing at the screen edge; see bug 154706 */
+ *x = CLAMP (*x, 0, window->screen->rect.width-1);
+ *y = CLAMP (*y, 0, window->screen->rect.height-1);
+
+ meta_error_trap_push_with_return (display);
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Warping pointer to %d,%d with window at %d,%d\n",
+ *x, *y, rect.x, rect.y);
+
+ /* Need to update the grab positions so that the MotionNotify and other
+ * events generated by the XWarpPointer() call below don't cause complete
+ * funkiness. See bug 124582 and bug 122670.
+ */
+ display->grab_anchor_root_x = *x;
+ display->grab_anchor_root_y = *y;
+ display->grab_latest_motion_x = *x;
+ display->grab_latest_motion_y = *y;
+ if (display->grab_wireframe_active)
+ display->grab_anchor_window_pos = display->grab_wireframe_rect;
+ else
+ meta_window_get_client_root_coords (window,
+ &display->grab_anchor_window_pos);
+
+ XWarpPointer (display->xdisplay,
+ None,
+ window->screen->xroot,
+ 0, 0, 0, 0,
+ *x, *y);
+
+ if (meta_error_trap_pop_with_return (display, FALSE) != Success)
+ {
+ meta_verbose ("Failed to warp pointer for window %s\n",
+ window->desc);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+void
+meta_window_begin_grab_op (MetaWindow *window,
+ MetaGrabOp op,
+ gboolean frame_action,
+ guint32 timestamp)
+{
+ int x, y;
+
+ warp_grab_pointer (window,
+ op, &x, &y);
+
+ meta_display_begin_grab_op (window->display,
+ window->screen,
+ window,
+ op,
+ FALSE,
+ frame_action,
+ 0 /* button */,
+ 0,
+ timestamp,
+ x, y);
+}
+
+void
+meta_window_update_keyboard_resize (MetaWindow *window,
+ gboolean update_cursor)
+{
+ int x, y;
+
+ warp_grab_pointer (window,
+ window->display->grab_op,
+ &x, &y);
+
+ if (update_cursor)
+ {
+ guint32 timestamp;
+ /* FIXME: Using CurrentTime is really bad mojo */
+ timestamp = CurrentTime;
+ meta_display_set_grab_op_cursor (window->display,
+ NULL,
+ window->display->grab_op,
+ TRUE,
+ window->display->grab_xwindow,
+ timestamp);
+ }
+}
+
+void
+meta_window_update_keyboard_move (MetaWindow *window)
+{
+ int x, y;
+
+ warp_grab_pointer (window,
+ window->display->grab_op,
+ &x, &y);
+}
+
+void
+meta_window_update_layer (MetaWindow *window)
+{
+ MetaGroup *group;
+
+ meta_stack_freeze (window->screen->stack);
+ group = meta_window_get_group (window);
+ if (group)
+ meta_group_update_layers (group);
+ else
+ meta_stack_update_layer (window->screen->stack, window);
+ meta_stack_thaw (window->screen->stack);
+}
+
+/* ensure_mru_position_after ensures that window appears after
+ * below_this_one in the active_workspace's mru_list (i.e. it treats
+ * window as having been less recently used than below_this_one)
+ */
+static void
+ensure_mru_position_after (MetaWindow *window,
+ MetaWindow *after_this_one)
+{
+ /* This is sort of slow since it runs through the entire list more
+ * than once (especially considering the fact that we expect the
+ * windows of interest to be the first two elements in the list),
+ * but it doesn't matter while we're only using it on new window
+ * map.
+ */
+
+ GList* active_mru_list;
+ GList* window_position;
+ GList* after_this_one_position;
+
+ active_mru_list = window->screen->active_workspace->mru_list;
+ window_position = g_list_find (active_mru_list, window);
+ after_this_one_position = g_list_find (active_mru_list, after_this_one);
+
+ /* after_this_one_position is NULL when we switch workspaces, but in
+ * that case we don't need to do any MRU shuffling so we can simply
+ * return.
+ */
+ if (after_this_one_position == NULL)
+ return;
+
+ if (g_list_length (window_position) > g_list_length (after_this_one_position))
+ {
+ window->screen->active_workspace->mru_list =
+ g_list_delete_link (window->screen->active_workspace->mru_list,
+ window_position);
+
+ window->screen->active_workspace->mru_list =
+ g_list_insert_before (window->screen->active_workspace->mru_list,
+ after_this_one_position->next,
+ window);
+ }
+}
+
+void
+meta_window_stack_just_below (MetaWindow *window,
+ MetaWindow *below_this_one)
+{
+ g_return_if_fail (window != NULL);
+ g_return_if_fail (below_this_one != NULL);
+
+ if (window->stack_position > below_this_one->stack_position)
+ {
+ meta_topic (META_DEBUG_STACK,
+ "Setting stack position of window %s to %d (making it below window %s).\n",
+ window->desc,
+ below_this_one->stack_position,
+ below_this_one->desc);
+ meta_window_set_stack_position (window, below_this_one->stack_position);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_STACK,
+ "Window %s was already below window %s.\n",
+ window->desc, below_this_one->desc);
+ }
+}
+
+void
+meta_window_set_user_time (MetaWindow *window,
+ guint32 timestamp)
+{
+ /* FIXME: If Soeren's suggestion in bug 151984 is implemented, it will allow
+ * us to sanity check the timestamp here and ensure it doesn't correspond to
+ * a future time.
+ */
+
+ /* Only update the time if this timestamp is newer... */
+ if (window->net_wm_user_time_set &&
+ XSERVER_TIME_IS_BEFORE (timestamp, window->net_wm_user_time))
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "Window %s _NET_WM_USER_TIME not updated to %u, because it "
+ "is less than %u\n",
+ window->desc, timestamp, window->net_wm_user_time);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_STARTUP,
+ "Window %s has _NET_WM_USER_TIME of %u\n",
+ window->desc, timestamp);
+ window->net_wm_user_time_set = TRUE;
+ window->net_wm_user_time = timestamp;
+ if (XSERVER_TIME_IS_BEFORE (window->display->last_user_time, timestamp))
+ window->display->last_user_time = timestamp;
+
+ /* If this is a terminal, user interaction with it means the user likely
+ * doesn't want to have focus transferred for now due to new windows.
+ */
+ if (meta_prefs_get_focus_new_windows () ==
+ META_FOCUS_NEW_WINDOWS_STRICT &&
+ __window_is_terminal (window))
+ window->display->allow_terminal_deactivation = FALSE;
+ }
+}
+
+/* Sets the demands_attention hint on a window, but only
+ * if it's at least partially obscured (see #305882).
+ */
+void
+meta_window_set_demands_attention (MetaWindow *window)
+{
+ MetaRectangle candidate_rect, other_rect;
+ GList *stack = window->screen->stack->sorted;
+ MetaWindow *other_window;
+ gboolean obscured = FALSE;
+
+ MetaWorkspace *workspace = window->screen->active_workspace;
+ if (workspace!=window->workspace)
+ {
+ /* windows on other workspaces are necessarily obscured */
+ obscured = TRUE;
+ }
+ else if (window->minimized)
+ {
+ obscured = TRUE;
+ }
+ else
+ {
+ meta_window_get_outer_rect (window, &candidate_rect);
+
+ /* The stack is sorted with the top windows first. */
+
+ while (stack != NULL && stack->data != window)
+ {
+ other_window = stack->data;
+ stack = stack->next;
+
+ if (other_window->on_all_workspaces ||
+ window->on_all_workspaces ||
+ other_window->workspace == window->workspace)
+ {
+ meta_window_get_outer_rect (other_window, &other_rect);
+
+ if (meta_rectangle_overlap (&candidate_rect, &other_rect))
+ {
+ obscured = TRUE;
+ break;
+ }
+ }
+ }
+ }
+
+ if (obscured)
+ {
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Marking %s as needing attention\n",
+ window->desc);
+
+ window->wm_state_demands_attention = TRUE;
+ set_net_wm_state (window);
+ }
+ else
+ {
+ /* If the window's in full view, there's no point setting the flag. */
+
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Not marking %s as needing attention because "
+ "it's in full view\n",
+ window->desc);
+ }
+}
+
+void
+meta_window_unset_demands_attention (MetaWindow *window)
+{
+ meta_topic (META_DEBUG_WINDOW_OPS,
+ "Marking %s as not needing attention\n", window->desc);
+
+ window->wm_state_demands_attention = FALSE;
+ set_net_wm_state (window);
+}
+
+MetaFrame *
+meta_window_get_frame (MetaWindow *window)
+{
+ return window->frame;
+}
+
+gboolean
+meta_window_has_focus (MetaWindow *window)
+{
+ return window->has_focus;
+}
+
+gboolean
+meta_window_is_shaded (MetaWindow *window)
+{
+ return window->shaded;
+}
+
+MetaRectangle *
+meta_window_get_rect (MetaWindow *window)
+{
+ return &window->rect;
+}
+
+MetaScreen *
+meta_window_get_screen (MetaWindow *window)
+{
+ return window->screen;
+}
+
+MetaDisplay *
+meta_window_get_display (MetaWindow *window)
+{
+ return window->display;
+}
+
+Window
+meta_window_get_xwindow (MetaWindow *window)
+{
+ return window->xwindow;
+}
diff --git a/src/core/workspace.c b/src/core/workspace.c
new file mode 100644
index 00000000..2b28fe0b
--- /dev/null
+++ b/src/core/workspace.c
@@ -0,0 +1,1038 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco Workspaces */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2003 Rob Adams
+ * Copyright (C) 2004, 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "workspace.h"
+#include "errors.h"
+#include "prefs.h"
+#include <X11/Xatom.h>
+#include <string.h>
+#include <canberra-gtk.h>
+
+void meta_workspace_queue_calc_showing (MetaWorkspace *workspace);
+static void set_active_space_hint (MetaScreen *screen);
+static void focus_ancestor_or_mru_window (MetaWorkspace *workspace,
+ MetaWindow *not_this_one,
+ guint32 timestamp);
+static void free_this (gpointer candidate,
+ gpointer dummy);
+static void workspace_free_struts (MetaWorkspace *workspace);
+
+static void
+maybe_add_to_list (MetaScreen *screen, MetaWindow *window, gpointer data)
+{
+ GList **mru_list = data;
+
+ if (window->on_all_workspaces)
+ *mru_list = g_list_prepend (*mru_list, window);
+}
+
+MetaWorkspace*
+meta_workspace_new (MetaScreen *screen)
+{
+ MetaWorkspace *workspace;
+
+ workspace = g_new (MetaWorkspace, 1);
+
+ workspace->screen = screen;
+ workspace->screen->workspaces =
+ g_list_append (workspace->screen->workspaces, workspace);
+ workspace->windows = NULL;
+ workspace->mru_list = NULL;
+ meta_screen_foreach_window (screen, maybe_add_to_list, &workspace->mru_list);
+
+ workspace->work_areas_invalid = TRUE;
+ workspace->work_area_xinerama = NULL;
+ workspace->work_area_screen.x = 0;
+ workspace->work_area_screen.y = 0;
+ workspace->work_area_screen.width = 0;
+ workspace->work_area_screen.height = 0;
+
+ workspace->screen_region = NULL;
+ workspace->xinerama_region = NULL;
+ workspace->screen_edges = NULL;
+ workspace->xinerama_edges = NULL;
+ workspace->list_containing_self = g_list_prepend (NULL, workspace);
+
+ workspace->all_struts = NULL;
+
+ workspace->showing_desktop = FALSE;
+
+ return workspace;
+}
+
+/** Foreach function for workspace_free_struts() */
+static void
+free_this (gpointer candidate, gpointer dummy)
+{
+ g_free (candidate);
+}
+
+/**
+ * Frees the struts list of a workspace.
+ *
+ * \param workspace The workspace.
+ */
+static void
+workspace_free_struts (MetaWorkspace *workspace)
+{
+ if (workspace->all_struts == NULL)
+ return;
+
+ g_slist_foreach (workspace->all_struts, free_this, NULL);
+ g_slist_free (workspace->all_struts);
+ workspace->all_struts = NULL;
+}
+
+void
+meta_workspace_free (MetaWorkspace *workspace)
+{
+ GList *tmp;
+ MetaScreen *screen;
+ int i;
+
+ g_return_if_fail (workspace != workspace->screen->active_workspace);
+
+ /* Here we assume all the windows are already on another workspace
+ * as well, so they won't be "orphaned"
+ */
+
+ tmp = workspace->windows;
+ while (tmp != NULL)
+ {
+ GList *next;
+ MetaWindow *window = tmp->data;
+ next = tmp->next;
+
+ /* pop front of list we're iterating over */
+ meta_workspace_remove_window (workspace, window);
+ g_assert (window->workspace != NULL);
+
+ tmp = next;
+ }
+
+ g_assert (workspace->windows == NULL);
+
+ screen = workspace->screen;
+
+ workspace->screen->workspaces =
+ g_list_remove (workspace->screen->workspaces, workspace);
+
+ g_free (workspace->work_area_xinerama);
+
+ g_list_free (workspace->mru_list);
+ g_list_free (workspace->list_containing_self);
+
+ /* screen.c:update_num_workspaces(), which calls us, removes windows from
+ * workspaces first, which can cause the workareas on the workspace to be
+ * invalidated (and hence for struts/regions/edges to be freed).
+ * So, no point trying to double free it; that causes a crash
+ * anyway. #361804.
+ */
+
+ if (!workspace->work_areas_invalid)
+ {
+ workspace_free_struts (workspace);
+ for (i = 0; i < screen->n_xinerama_infos; i++)
+ meta_rectangle_free_list_and_elements (workspace->xinerama_region[i]);
+ g_free (workspace->xinerama_region);
+ meta_rectangle_free_list_and_elements (workspace->screen_region);
+ meta_rectangle_free_list_and_elements (workspace->screen_edges);
+ meta_rectangle_free_list_and_elements (workspace->xinerama_edges);
+ }
+
+ g_free (workspace);
+
+ /* don't bother to reset names, pagers can just ignore
+ * extra ones
+ */
+}
+
+void
+meta_workspace_add_window (MetaWorkspace *workspace,
+ MetaWindow *window)
+{
+ g_return_if_fail (window->workspace == NULL);
+
+ /* If the window is on all workspaces, we want to add it to all mru
+ * lists, otherwise just add it to this workspaces mru list
+ */
+ if (window->on_all_workspaces)
+ {
+ if (window->workspace == NULL)
+ {
+ GList* tmp = window->screen->workspaces;
+ while (tmp)
+ {
+ MetaWorkspace* work = (MetaWorkspace*) tmp->data;
+ if (!g_list_find (work->mru_list, window))
+ work->mru_list = g_list_prepend (work->mru_list, window);
+
+ tmp = tmp->next;
+ }
+ }
+ }
+ else
+ {
+ g_assert (g_list_find (workspace->mru_list, window) == NULL);
+ workspace->mru_list = g_list_prepend (workspace->mru_list, window);
+ }
+
+ workspace->windows = g_list_prepend (workspace->windows, window);
+ window->workspace = workspace;
+
+ meta_window_set_current_workspace_hint (window);
+
+ if (window->struts)
+ {
+ meta_topic (META_DEBUG_WORKAREA,
+ "Invalidating work area of workspace %d since we're adding window %s to it\n",
+ meta_workspace_index (workspace), window->desc);
+ meta_workspace_invalidate_work_area (workspace);
+ }
+
+ /* queue a move_resize since changing workspaces may change
+ * the relevant struts
+ */
+ meta_window_queue (window, META_QUEUE_CALC_SHOWING|META_QUEUE_MOVE_RESIZE);
+}
+
+void
+meta_workspace_remove_window (MetaWorkspace *workspace,
+ MetaWindow *window)
+{
+ g_return_if_fail (window->workspace == workspace);
+
+ workspace->windows = g_list_remove (workspace->windows, window);
+ window->workspace = NULL;
+
+ /* If the window is on all workspaces, we don't want to remove it
+ * from the MRU list unless this causes it to be removed from all
+ * workspaces
+ */
+ if (window->on_all_workspaces)
+ {
+ GList* tmp = window->screen->workspaces;
+ while (tmp)
+ {
+ MetaWorkspace* work = (MetaWorkspace*) tmp->data;
+ work->mru_list = g_list_remove (work->mru_list, window);
+
+ tmp = tmp->next;
+ }
+ }
+ else
+ {
+ workspace->mru_list = g_list_remove (workspace->mru_list, window);
+ g_assert (g_list_find (workspace->mru_list, window) == NULL);
+ }
+
+ meta_window_set_current_workspace_hint (window);
+
+ if (window->struts)
+ {
+ meta_topic (META_DEBUG_WORKAREA,
+ "Invalidating work area of workspace %d since we're removing window %s from it\n",
+ meta_workspace_index (workspace), window->desc);
+ meta_workspace_invalidate_work_area (workspace);
+ }
+
+ /* queue a move_resize since changing workspaces may change
+ * the relevant struts
+ */
+ meta_window_queue (window, META_QUEUE_CALC_SHOWING|META_QUEUE_MOVE_RESIZE);
+}
+
+void
+meta_workspace_relocate_windows (MetaWorkspace *workspace,
+ MetaWorkspace *new_home)
+{
+ GList *tmp;
+ GList *copy;
+
+ g_return_if_fail (workspace != new_home);
+
+ /* can't modify list we're iterating over */
+ copy = g_list_copy (workspace->windows);
+
+ tmp = copy;
+ while (tmp != NULL)
+ {
+ MetaWindow *window = tmp->data;
+
+ meta_workspace_remove_window (workspace, window);
+ meta_workspace_add_window (new_home, window);
+
+ tmp = tmp->next;
+ }
+
+ g_list_free (copy);
+
+ g_assert (workspace->windows == NULL);
+}
+
+void
+meta_workspace_queue_calc_showing (MetaWorkspace *workspace)
+{
+ GList *tmp;
+
+ tmp = workspace->windows;
+ while (tmp != NULL)
+ {
+ meta_window_queue (tmp->data, META_QUEUE_CALC_SHOWING);
+
+ tmp = tmp->next;
+ }
+}
+
+static void workspace_switch_sound(MetaWorkspace *from,
+ MetaWorkspace *to) {
+
+ MetaWorkspaceLayout layout;
+ int i, nw, x, y, fi, ti;
+ const char *e;
+
+ nw = meta_screen_get_n_workspaces(from->screen);
+ fi = meta_workspace_index(from);
+ ti = meta_workspace_index(to);
+
+ meta_screen_calc_workspace_layout(from->screen,
+ nw,
+ fi,
+ &layout);
+
+ for (i = 0; i < nw; i++)
+ if (layout.grid[i] == ti)
+ break;
+
+ if (i >= nw) {
+ meta_bug("Failed to find destination workspace in layout\n");
+ goto finish;
+ }
+
+ y = i / layout.cols;
+ x = i % layout.cols;
+
+ /* We priorize horizontal over vertical movements here. The
+ rationale for this is that horizontal movements are probably more
+ interesting for sound effects because speakers are usually
+ positioned on a horizontal and not a vertical axis. i.e. your
+ spatial "Woosh!" effects will easily be able to encode horizontal
+ movement but not such much vertical movement. */
+
+ if (x < layout.current_col)
+ e = "desktop-switch-left";
+ else if (x > layout.current_col)
+ e = "desktop-switch-right";
+ else if (y < layout.current_row)
+ e = "desktop-switch-up";
+ else if (y > layout.current_row)
+ e = "desktop-switch-down";
+ else {
+ meta_bug("Uh, origin and destination workspace at same logic position!\n");
+ goto finish;
+ }
+
+ ca_context_play(ca_gtk_context_get(), 1,
+ CA_PROP_EVENT_ID, e,
+ CA_PROP_EVENT_DESCRIPTION, "Desktop switched",
+ CA_PROP_CANBERRA_CACHE_CONTROL, "permanent",
+ NULL);
+
+ finish:
+ meta_screen_free_workspace_layout (&layout);
+}
+
+void
+meta_workspace_activate_with_focus (MetaWorkspace *workspace,
+ MetaWindow *focus_this,
+ guint32 timestamp)
+{
+ MetaWorkspace *old;
+ MetaWindow *move_window;
+
+ meta_verbose ("Activating workspace %d\n",
+ meta_workspace_index (workspace));
+
+ if (workspace->screen->active_workspace == workspace)
+ return;
+
+ if (workspace->screen->active_workspace)
+ workspace_switch_sound(workspace->screen->active_workspace, workspace);
+
+ /* Note that old can be NULL; e.g. when starting up */
+ old = workspace->screen->active_workspace;
+
+ workspace->screen->active_workspace = workspace;
+
+ set_active_space_hint (workspace->screen);
+
+ /* If the "show desktop" mode is active for either the old workspace
+ * or the new one *but not both*, then update the
+ * _net_showing_desktop hint
+ */
+ if (old && (old->showing_desktop ^ workspace->showing_desktop))
+ meta_screen_update_showing_desktop_hint (workspace->screen);
+
+ if (old == NULL)
+ return;
+
+ move_window = NULL;
+ if (workspace->screen->display->grab_op == META_GRAB_OP_MOVING ||
+ workspace->screen->display->grab_op == META_GRAB_OP_KEYBOARD_MOVING)
+ move_window = workspace->screen->display->grab_window;
+
+ if (move_window != NULL)
+ {
+ if (move_window->on_all_workspaces)
+ move_window = NULL; /* don't move it after all */
+
+ /* We put the window on the new workspace, flip spaces,
+ * then remove from old workspace, so the window
+ * never gets unmapped and we maintain the button grab
+ * on it.
+ *
+ * \bug This comment appears to be the reverse of what happens
+ */
+ if (move_window && (move_window->workspace != workspace))
+ {
+ meta_workspace_remove_window (old, move_window);
+ meta_workspace_add_window (workspace, move_window);
+ }
+ }
+
+ meta_workspace_queue_calc_showing (old);
+ meta_workspace_queue_calc_showing (workspace);
+
+ /* FIXME: Why do we need this?!? Isn't it handled in the lines above? */
+ if (move_window)
+ /* Removes window from other spaces */
+ meta_window_change_workspace (move_window, workspace);
+
+ if (focus_this)
+ {
+ meta_window_focus (focus_this, timestamp);
+ meta_window_raise (focus_this);
+ }
+ else if (move_window)
+ {
+ meta_window_raise (move_window);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_FOCUS, "Focusing default window on new workspace\n");
+ meta_workspace_focus_default_window (workspace, NULL, timestamp);
+ }
+}
+
+void
+meta_workspace_activate (MetaWorkspace *workspace,
+ guint32 timestamp)
+{
+ meta_workspace_activate_with_focus (workspace, NULL, timestamp);
+}
+
+int
+meta_workspace_index (MetaWorkspace *workspace)
+{
+ int ret;
+
+ ret = g_list_index (workspace->screen->workspaces, workspace);
+
+ if (ret < 0)
+ meta_bug ("Workspace does not exist to index!\n");
+
+ return ret;
+}
+
+/* get windows contained on workspace, including workspace->windows
+ * and also sticky windows.
+ */
+GList*
+meta_workspace_list_windows (MetaWorkspace *workspace)
+{
+ GSList *display_windows;
+ GSList *tmp;
+ GList *workspace_windows;
+
+ display_windows = meta_display_list_windows (workspace->screen->display);
+
+ workspace_windows = NULL;
+ tmp = display_windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *window = tmp->data;
+
+ if (meta_window_located_on_workspace (window, workspace))
+ workspace_windows = g_list_prepend (workspace_windows,
+ window);
+
+ tmp = tmp->next;
+ }
+
+ g_slist_free (display_windows);
+
+ return workspace_windows;
+}
+
+static void
+set_active_space_hint (MetaScreen *screen)
+{
+ unsigned long data[1];
+
+ /* this is because we destroy the spaces in order,
+ * so we always end up setting a current desktop of
+ * 0 when closing a screen, so lose the current desktop
+ * on restart. By doing this we keep the current
+ * desktop on restart.
+ */
+ if (screen->closing > 0)
+ return;
+
+ data[0] = meta_workspace_index (screen->active_workspace);
+
+ meta_verbose ("Setting _NET_CURRENT_DESKTOP to %lu\n", data[0]);
+
+ meta_error_trap_push (screen->display);
+ XChangeProperty (screen->display->xdisplay, screen->xroot,
+ screen->display->atom__NET_CURRENT_DESKTOP,
+ XA_CARDINAL,
+ 32, PropModeReplace, (guchar*) data, 1);
+ meta_error_trap_pop (screen->display, FALSE);
+}
+
+void
+meta_workspace_invalidate_work_area (MetaWorkspace *workspace)
+{
+ GList *tmp;
+ GList *windows;
+ int i;
+
+ if (workspace->work_areas_invalid)
+ {
+ meta_topic (META_DEBUG_WORKAREA,
+ "Work area for workspace %d is already invalid\n",
+ meta_workspace_index (workspace));
+ return;
+ }
+
+ meta_topic (META_DEBUG_WORKAREA,
+ "Invalidating work area for workspace %d\n",
+ meta_workspace_index (workspace));
+
+ g_free (workspace->work_area_xinerama);
+ workspace->work_area_xinerama = NULL;
+
+ workspace_free_struts (workspace);
+
+ for (i = 0; i < workspace->screen->n_xinerama_infos; i++)
+ meta_rectangle_free_list_and_elements (workspace->xinerama_region[i]);
+ g_free (workspace->xinerama_region);
+ meta_rectangle_free_list_and_elements (workspace->screen_region);
+ meta_rectangle_free_list_and_elements (workspace->screen_edges);
+ meta_rectangle_free_list_and_elements (workspace->xinerama_edges);
+ workspace->xinerama_region = NULL;
+ workspace->screen_region = NULL;
+ workspace->screen_edges = NULL;
+ workspace->xinerama_edges = NULL;
+
+ workspace->work_areas_invalid = TRUE;
+
+ /* redo the size/position constraints on all windows */
+ windows = meta_workspace_list_windows (workspace);
+ tmp = windows;
+ while (tmp != NULL)
+ {
+ MetaWindow *w = tmp->data;
+
+ meta_window_queue (w, META_QUEUE_MOVE_RESIZE);
+
+ tmp = tmp->next;
+ }
+
+ g_list_free (windows);
+
+ meta_screen_queue_workarea_recalc (workspace->screen);
+}
+
+static void
+ensure_work_areas_validated (MetaWorkspace *workspace)
+{
+ GList *windows;
+ GList *tmp;
+ MetaRectangle work_area;
+ int i; /* C89 absolutely sucks... */
+
+ if (!workspace->work_areas_invalid)
+ return;
+
+ g_assert (workspace->all_struts == NULL);
+ g_assert (workspace->xinerama_region == NULL);
+ g_assert (workspace->screen_region == NULL);
+ g_assert (workspace->screen_edges == NULL);
+ g_assert (workspace->xinerama_edges == NULL);
+
+ /* STEP 1: Get the list of struts */
+ windows = meta_workspace_list_windows (workspace);
+ for (tmp = windows; tmp != NULL; tmp = tmp->next)
+ {
+ MetaWindow *win = tmp->data;
+ GSList *s_iter;
+
+ for (s_iter = win->struts; s_iter != NULL; s_iter = s_iter->next) {
+ MetaStrut *cpy = g_new (MetaStrut, 1);
+ *cpy = *((MetaStrut *)s_iter->data);
+ workspace->all_struts = g_slist_prepend (workspace->all_struts,
+ cpy);
+ }
+ }
+ g_list_free (windows);
+
+ /* STEP 2: Get the maximal/spanning rects for the onscreen and
+ * on-single-xinerama regions
+ */
+ g_assert (workspace->xinerama_region == NULL);
+ g_assert (workspace->screen_region == NULL);
+
+ workspace->xinerama_region = g_new (GList*,
+ workspace->screen->n_xinerama_infos);
+ for (i = 0; i < workspace->screen->n_xinerama_infos; i++)
+ {
+ workspace->xinerama_region[i] =
+ meta_rectangle_get_minimal_spanning_set_for_region (
+ &workspace->screen->xinerama_infos[i].rect,
+ workspace->all_struts);
+ }
+ workspace->screen_region =
+ meta_rectangle_get_minimal_spanning_set_for_region (
+ &workspace->screen->rect,
+ workspace->all_struts);
+
+ /* STEP 3: Get the work areas (region-to-maximize-to) for the screen and
+ * xineramas.
+ */
+ work_area = workspace->screen->rect; /* start with the screen */
+ if (workspace->screen_region == NULL)
+ work_area = meta_rect (0, 0, -1, -1);
+ else
+ meta_rectangle_clip_to_region (workspace->screen_region,
+ FIXED_DIRECTION_NONE,
+ &work_area);
+
+ /* Lots of paranoia checks, forcing work_area_screen to be sane */
+#define MIN_SANE_AREA 100
+ if (work_area.width < MIN_SANE_AREA)
+ {
+ meta_warning ("struts occupy an unusually large percentage of the screen; "
+ "available remaining width = %d < %d",
+ work_area.width, MIN_SANE_AREA);
+ if (work_area.width < 1)
+ {
+ work_area.x = (workspace->screen->rect.width - MIN_SANE_AREA)/2;
+ work_area.width = MIN_SANE_AREA;
+ }
+ else
+ {
+ int amount = (MIN_SANE_AREA - work_area.width)/2;
+ work_area.x -= amount;
+ work_area.width += 2*amount;
+ }
+ }
+ if (work_area.height < MIN_SANE_AREA)
+ {
+ meta_warning ("struts occupy an unusually large percentage of the screen; "
+ "available remaining height = %d < %d",
+ work_area.height, MIN_SANE_AREA);
+ if (work_area.height < 1)
+ {
+ work_area.y = (workspace->screen->rect.height - MIN_SANE_AREA)/2;
+ work_area.height = MIN_SANE_AREA;
+ }
+ else
+ {
+ int amount = (MIN_SANE_AREA - work_area.height)/2;
+ work_area.y -= amount;
+ work_area.height += 2*amount;
+ }
+ }
+ workspace->work_area_screen = work_area;
+ meta_topic (META_DEBUG_WORKAREA,
+ "Computed work area for workspace %d: %d,%d %d x %d\n",
+ meta_workspace_index (workspace),
+ workspace->work_area_screen.x,
+ workspace->work_area_screen.y,
+ workspace->work_area_screen.width,
+ workspace->work_area_screen.height);
+
+ /* Now find the work areas for each xinerama */
+ g_free (workspace->work_area_xinerama);
+ workspace->work_area_xinerama = g_new (MetaRectangle,
+ workspace->screen->n_xinerama_infos);
+
+ for (i = 0; i < workspace->screen->n_xinerama_infos; i++)
+ {
+ work_area = workspace->screen->xinerama_infos[i].rect;
+
+ if (workspace->xinerama_region[i] == NULL)
+ /* FIXME: constraints.c untested with this, but it might be nice for
+ * a screen reader or magnifier.
+ */
+ work_area = meta_rect (work_area.x, work_area.y, -1, -1);
+ else
+ meta_rectangle_clip_to_region (workspace->xinerama_region[i],
+ FIXED_DIRECTION_NONE,
+ &work_area);
+
+ workspace->work_area_xinerama[i] = work_area;
+ meta_topic (META_DEBUG_WORKAREA,
+ "Computed work area for workspace %d "
+ "xinerama %d: %d,%d %d x %d\n",
+ meta_workspace_index (workspace),
+ i,
+ workspace->work_area_xinerama[i].x,
+ workspace->work_area_xinerama[i].y,
+ workspace->work_area_xinerama[i].width,
+ workspace->work_area_xinerama[i].height);
+ }
+
+ /* STEP 4: Make sure the screen_region is nonempty (separate from step 2
+ * since it relies on step 3).
+ */
+ if (workspace->screen_region == NULL)
+ {
+ MetaRectangle *nonempty_region;
+ nonempty_region = g_new (MetaRectangle, 1);
+ *nonempty_region = workspace->work_area_screen;
+ workspace->screen_region = g_list_prepend (NULL, nonempty_region);
+ }
+
+ /* STEP 5: Cache screen and xinerama edges for edge resistance and snapping */
+ g_assert (workspace->screen_edges == NULL);
+ g_assert (workspace->xinerama_edges == NULL);
+ workspace->screen_edges =
+ meta_rectangle_find_onscreen_edges (&workspace->screen->rect,
+ workspace->all_struts);
+ tmp = NULL;
+ for (i = 0; i < workspace->screen->n_xinerama_infos; i++)
+ tmp = g_list_prepend (tmp, &workspace->screen->xinerama_infos[i].rect);
+ workspace->xinerama_edges =
+ meta_rectangle_find_nonintersected_xinerama_edges (tmp,
+ workspace->all_struts);
+ g_list_free (tmp);
+
+ /* We're all done, YAAY! Record that everything has been validated. */
+ workspace->work_areas_invalid = FALSE;
+}
+
+void
+meta_workspace_get_work_area_for_xinerama (MetaWorkspace *workspace,
+ int which_xinerama,
+ MetaRectangle *area)
+{
+ g_assert (which_xinerama >= 0);
+
+ ensure_work_areas_validated (workspace);
+ g_assert (which_xinerama < workspace->screen->n_xinerama_infos);
+
+ *area = workspace->work_area_xinerama[which_xinerama];
+}
+
+void
+meta_workspace_get_work_area_all_xineramas (MetaWorkspace *workspace,
+ MetaRectangle *area)
+{
+ ensure_work_areas_validated (workspace);
+
+ *area = workspace->work_area_screen;
+}
+
+GList*
+meta_workspace_get_onscreen_region (MetaWorkspace *workspace)
+{
+ ensure_work_areas_validated (workspace);
+
+ return workspace->screen_region;
+}
+
+GList*
+meta_workspace_get_onxinerama_region (MetaWorkspace *workspace,
+ int which_xinerama)
+{
+ ensure_work_areas_validated (workspace);
+
+ return workspace->xinerama_region[which_xinerama];
+}
+
+#ifdef WITH_VERBOSE_MODE
+static char *
+meta_motion_direction_to_string (MetaMotionDirection direction)
+{
+ switch (direction)
+ {
+ case META_MOTION_UP:
+ return "Up";
+ case META_MOTION_DOWN:
+ return "Down";
+ case META_MOTION_LEFT:
+ return "Left";
+ case META_MOTION_RIGHT:
+ return "Right";
+ }
+
+ return "Unknown";
+}
+#endif /* WITH_VERBOSE_MODE */
+
+MetaWorkspace*
+meta_workspace_get_neighbor (MetaWorkspace *workspace,
+ MetaMotionDirection direction)
+{
+ MetaWorkspaceLayout layout;
+ int i, current_space, num_workspaces;
+ gboolean ltr;
+
+ current_space = meta_workspace_index (workspace);
+ num_workspaces = meta_screen_get_n_workspaces (workspace->screen);
+ meta_screen_calc_workspace_layout (workspace->screen, num_workspaces,
+ current_space, &layout);
+
+ meta_verbose ("Getting neighbor of %d in direction %s\n",
+ current_space, meta_motion_direction_to_string (direction));
+
+ ltr = meta_ui_get_direction() == META_UI_DIRECTION_LTR;
+
+ switch (direction)
+ {
+ case META_MOTION_LEFT:
+ layout.current_col -= ltr ? 1 : -1;
+ break;
+ case META_MOTION_RIGHT:
+ layout.current_col += ltr ? 1 : -1;
+ break;
+ case META_MOTION_UP:
+ layout.current_row -= 1;
+ break;
+ case META_MOTION_DOWN:
+ layout.current_row += 1;
+ break;
+ }
+
+ if (layout.current_col < 0)
+ layout.current_col = 0;
+ if (layout.current_col >= layout.cols)
+ layout.current_col = layout.cols - 1;
+ if (layout.current_row < 0)
+ layout.current_row = 0;
+ if (layout.current_row >= layout.rows)
+ layout.current_row = layout.rows - 1;
+
+ i = layout.grid[layout.current_row * layout.cols + layout.current_col];
+
+ if (i < 0)
+ i = current_space;
+
+ if (i >= num_workspaces)
+ meta_bug ("calc_workspace_layout left an invalid (too-high) workspace number %d in the grid\n",
+ i);
+
+ meta_verbose ("Neighbor workspace is %d at row %d col %d\n",
+ i, layout.current_row, layout.current_col);
+
+ meta_screen_free_workspace_layout (&layout);
+
+ return meta_screen_get_workspace_by_index (workspace->screen, i);
+}
+
+const char*
+meta_workspace_get_name (MetaWorkspace *workspace)
+{
+ return meta_prefs_get_workspace_name (meta_workspace_index (workspace));
+}
+
+void
+meta_workspace_focus_default_window (MetaWorkspace *workspace,
+ MetaWindow *not_this_one,
+ guint32 timestamp)
+{
+ if (timestamp == CurrentTime)
+ {
+ meta_warning ("CurrentTime used to choose focus window; "
+ "focus window may not be correct.\n");
+ }
+
+
+ if (meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK ||
+ !workspace->screen->display->mouse_mode)
+ focus_ancestor_or_mru_window (workspace, not_this_one, timestamp);
+ else
+ {
+ MetaWindow * window;
+ window = meta_screen_get_mouse_window (workspace->screen, not_this_one);
+ if (window &&
+ window->type != META_WINDOW_DOCK &&
+ window->type != META_WINDOW_DESKTOP)
+ {
+ if (timestamp == CurrentTime)
+ {
+
+ /* We would like for this to never happen. However, if
+ * it does happen then we kludge since using CurrentTime
+ * can mean ugly race conditions--and we can avoid these
+ * by allowing EnterNotify events (which come with
+ * timestamps) to handle focus.
+ */
+
+ meta_topic (META_DEBUG_FOCUS,
+ "Not focusing mouse window %s because EnterNotify events should handle that\n", window->desc);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing mouse window %s\n", window->desc);
+ meta_window_focus (window, timestamp);
+ }
+
+ if (workspace->screen->display->autoraise_window != window &&
+ meta_prefs_get_auto_raise ())
+ {
+ meta_display_queue_autoraise_callback (workspace->screen->display,
+ window);
+ }
+ }
+ else if (meta_prefs_get_focus_mode () == META_FOCUS_MODE_SLOPPY)
+ focus_ancestor_or_mru_window (workspace, not_this_one, timestamp);
+ else if (meta_prefs_get_focus_mode () == META_FOCUS_MODE_MOUSE)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Setting focus to no_focus_window, since no valid "
+ "window to focus found.\n");
+ meta_display_focus_the_no_focus_window (workspace->screen->display,
+ workspace->screen,
+ timestamp);
+ }
+ }
+}
+
+static gboolean
+record_ancestor (MetaWindow *window,
+ void *data)
+{
+ MetaWindow **result = data;
+
+ *result = window;
+ return FALSE; /* quit with the first ancestor we find */
+}
+
+/* Focus ancestor of not_this_one if there is one, otherwise focus the MRU
+ * window on active workspace
+ */
+static void
+focus_ancestor_or_mru_window (MetaWorkspace *workspace,
+ MetaWindow *not_this_one,
+ guint32 timestamp)
+{
+ MetaWindow *window = NULL;
+ MetaWindow *desktop_window = NULL;
+ GList *tmp;
+
+ if (not_this_one)
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing MRU window excluding %s\n", not_this_one->desc);
+ else
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing MRU window\n");
+
+ /* First, check to see if we need to focus an ancestor of a window */
+ if (not_this_one)
+ {
+ MetaWindow *ancestor;
+ ancestor = NULL;
+ meta_window_foreach_ancestor (not_this_one, record_ancestor, &ancestor);
+ if (ancestor != NULL)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing %s, ancestor of %s\n",
+ ancestor->desc, not_this_one->desc);
+
+ meta_window_focus (ancestor, timestamp);
+
+ /* Also raise the window if in click-to-focus */
+ if (meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK)
+ meta_window_raise (ancestor);
+
+ return;
+ }
+ }
+
+ /* No ancestor, look for the MRU window */
+ tmp = workspace->mru_list;
+
+ while (tmp)
+ {
+ MetaWindow* tmp_window;
+ tmp_window = ((MetaWindow*) tmp->data);
+ if (tmp_window != not_this_one &&
+ meta_window_showing_on_its_workspace (tmp_window) &&
+ tmp_window->type != META_WINDOW_DOCK &&
+ tmp_window->type != META_WINDOW_DESKTOP)
+ {
+ window = tmp->data;
+ break;
+ }
+ else if (tmp_window != not_this_one &&
+ desktop_window == NULL &&
+ meta_window_showing_on_its_workspace (tmp_window) &&
+ tmp_window->type == META_WINDOW_DESKTOP)
+ {
+ /* Found the most recently used desktop window */
+ desktop_window = tmp_window;
+ }
+
+ tmp = tmp->next;
+ }
+
+ /* If no window was found, default to the MRU desktop-window */
+ if (window == NULL)
+ window = desktop_window;
+
+ if (window)
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing workspace MRU window %s\n", window->desc);
+
+ meta_window_focus (window, timestamp);
+
+ /* Also raise the window if in click-to-focus */
+ if (meta_prefs_get_focus_mode () == META_FOCUS_MODE_CLICK)
+ meta_window_raise (window);
+ }
+ else
+ {
+ meta_topic (META_DEBUG_FOCUS, "No MRU window to focus found; focusing no_focus_window.\n");
+ meta_display_focus_the_no_focus_window (workspace->screen->display,
+ workspace->screen,
+ timestamp);
+ }
+}
diff --git a/src/core/workspace.h b/src/core/workspace.h
new file mode 100644
index 00000000..f4079ebb
--- /dev/null
+++ b/src/core/workspace.h
@@ -0,0 +1,113 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/**
+ * \file workspace.h Workspaces
+ *
+ * A workspace is a set of windows which all live on the same
+ * screen. (You may also see the name "desktop" around the place,
+ * which is the EWMH's name for the same thing.) Only one workspace
+ * of a screen may be active at once; all windows on all other workspaces
+ * are unmapped.
+ */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2004, 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_WORKSPACE_H
+#define META_WORKSPACE_H
+
+#include "window-private.h"
+
+/* Negative to avoid conflicting with real workspace
+ * numbers
+ */
+typedef enum
+{
+ META_MOTION_UP = -1,
+ META_MOTION_DOWN = -2,
+ META_MOTION_LEFT = -3,
+ META_MOTION_RIGHT = -4
+} MetaMotionDirection;
+
+struct _MetaWorkspace
+{
+ MetaScreen *screen;
+
+ GList *windows;
+ GList *mru_list;
+
+ GList *list_containing_self;
+
+ MetaRectangle work_area_screen;
+ MetaRectangle *work_area_xinerama;
+ GList *screen_region;
+ GList **xinerama_region;
+ GList *screen_edges;
+ GList *xinerama_edges;
+ GSList *all_struts;
+ guint work_areas_invalid : 1;
+
+ guint showing_desktop : 1;
+};
+
+MetaWorkspace* meta_workspace_new (MetaScreen *screen);
+void meta_workspace_free (MetaWorkspace *workspace);
+void meta_workspace_add_window (MetaWorkspace *workspace,
+ MetaWindow *window);
+void meta_workspace_remove_window (MetaWorkspace *workspace,
+ MetaWindow *window);
+void meta_workspace_relocate_windows (MetaWorkspace *workspace,
+ MetaWorkspace *new_home);
+void meta_workspace_activate_with_focus (MetaWorkspace *workspace,
+ MetaWindow *focus_this,
+ guint32 timestamp);
+void meta_workspace_activate (MetaWorkspace *workspace,
+ guint32 timestamp);
+int meta_workspace_index (MetaWorkspace *workspace);
+GList* meta_workspace_list_windows (MetaWorkspace *workspace);
+
+void meta_workspace_invalidate_work_area (MetaWorkspace *workspace);
+
+
+void meta_workspace_get_work_area_for_xinerama (MetaWorkspace *workspace,
+ int which_xinerama,
+ MetaRectangle *area);
+void meta_workspace_get_work_area_all_xineramas (MetaWorkspace *workspace,
+ MetaRectangle *area);
+GList* meta_workspace_get_onscreen_region (MetaWorkspace *workspace);
+GList* meta_workspace_get_onxinerama_region (MetaWorkspace *workspace,
+ int which_xinerama);
+void meta_workspace_get_work_area_all_xineramas (MetaWorkspace *workspace,
+ MetaRectangle *area);
+
+void meta_workspace_focus_default_window (MetaWorkspace *workspace,
+ MetaWindow *not_this_one,
+ guint32 timestamp);
+
+MetaWorkspace* meta_workspace_get_neighbor (MetaWorkspace *workspace,
+ MetaMotionDirection direction);
+
+const char* meta_workspace_get_name (MetaWorkspace *workspace);
+
+#endif
+
+
+
+
diff --git a/src/core/xprops.c b/src/core/xprops.c
new file mode 100644
index 00000000..71e9eeae
--- /dev/null
+++ b/src/core/xprops.c
@@ -0,0 +1,1238 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco X property convenience routines */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2002 Red Hat Inc.
+ *
+ * Some trivial property-unpacking code from Xlib:
+ * Copyright 1987, 1988, 1998 The Open Group
+ * Copyright 1988 by Wyse Technology, Inc., San Jose, Ca,
+ * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts,
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+/***********************************************************
+Copyright 1988 by Wyse Technology, Inc., San Jose, Ca,
+Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts,
+
+ All Rights Reserved
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+provided that the above copyright notice appear in all copies and that
+both that copyright notice and this permission notice appear in
+supporting documentation, and that the name Digital not be
+used in advertising or publicity pertaining to distribution of the
+software without specific, written prior permission.
+
+DIGITAL AND WYSE DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+EVENT SHALL DIGITAL OR WYSE BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
+USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
+OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THIS SOFTWARE.
+
+******************************************************************/
+
+/*
+
+Copyright 1987, 1988, 1998 The Open Group
+
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that
+the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of The Open Group shall
+not be used in advertising or otherwise to promote the sale, use or
+other dealings in this Software without prior written authorization
+from The Open Group.
+
+*/
+
+
+#include <config.h>
+#include "xprops.h"
+#include "errors.h"
+#include "util.h"
+#include "async-getprop.h"
+#include "ui.h"
+#include "marco-Xatomtype.h"
+#include <X11/Xatom.h>
+#include <string.h>
+#include "window-private.h"
+
+typedef struct
+{
+ MetaDisplay *display;
+ Window xwindow;
+ Atom xatom;
+ Atom type;
+ int format;
+ unsigned long n_items;
+ unsigned long bytes_after;
+ unsigned char *prop;
+} GetPropertyResults;
+
+static gboolean
+validate_or_free_results (GetPropertyResults *results,
+ int expected_format,
+ Atom expected_type,
+ gboolean must_have_items)
+{
+ char *type_name;
+ char *expected_name;
+ char *prop_name;
+ const char *title;
+ const char *res_class;
+ const char *res_name;
+ MetaWindow *w;
+
+ if (expected_format == results->format &&
+ expected_type == results->type &&
+ (!must_have_items || results->n_items > 0))
+ return TRUE;
+
+ meta_error_trap_push (results->display);
+ type_name = XGetAtomName (results->display->xdisplay, results->type);
+ expected_name = XGetAtomName (results->display->xdisplay, expected_type);
+ prop_name = XGetAtomName (results->display->xdisplay, results->xatom);
+ meta_error_trap_pop (results->display, TRUE);
+
+ w = meta_display_lookup_x_window (results->display, results->xwindow);
+
+ if (w != NULL)
+ {
+ title = w->title;
+ res_class = w->res_class;
+ res_name = w->res_name;
+ }
+ else
+ {
+ title = NULL;
+ res_class = NULL;
+ res_name = NULL;
+ }
+
+ if (title == NULL)
+ title = "unknown";
+
+ if (res_class == NULL)
+ res_class = "unknown";
+
+ if (res_name == NULL)
+ res_name = "unknown";
+
+ meta_warning (_("Window 0x%lx has property %s\nthat was expected to have type %s format %d\nand actually has type %s format %d n_items %d.\nThis is most likely an application bug, not a window manager bug.\nThe window has title=\"%s\" class=\"%s\" name=\"%s\"\n"),
+ results->xwindow,
+ prop_name ? prop_name : "(bad atom)",
+ expected_name ? expected_name : "(bad atom)",
+ expected_format,
+ type_name ? type_name : "(bad atom)",
+ results->format, (int) results->n_items,
+ title, res_class, res_name);
+
+ if (type_name)
+ XFree (type_name);
+ if (expected_name)
+ XFree (expected_name);
+ if (prop_name)
+ XFree (prop_name);
+
+ if (results->prop)
+ {
+ XFree (results->prop);
+ results->prop = NULL;
+ }
+
+ return FALSE;
+}
+
+static gboolean
+get_property (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ Atom req_type,
+ GetPropertyResults *results)
+{
+ results->display = display;
+ results->xwindow = xwindow;
+ results->xatom = xatom;
+ results->prop = NULL;
+ results->n_items = 0;
+ results->type = None;
+ results->bytes_after = 0;
+ results->format = 0;
+
+ meta_error_trap_push_with_return (display);
+ if (XGetWindowProperty (display->xdisplay, xwindow, xatom,
+ 0, G_MAXLONG,
+ False, req_type, &results->type, &results->format,
+ &results->n_items,
+ &results->bytes_after,
+ &results->prop) != Success ||
+ results->type == None)
+ {
+ if (results->prop)
+ XFree (results->prop);
+ meta_error_trap_pop_with_return (display, TRUE);
+ return FALSE;
+ }
+
+ if (meta_error_trap_pop_with_return (display, TRUE) != Success)
+ {
+ if (results->prop)
+ XFree (results->prop);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+static gboolean
+atom_list_from_results (GetPropertyResults *results,
+ Atom **atoms_p,
+ int *n_atoms_p)
+{
+ if (!validate_or_free_results (results, 32, XA_ATOM, FALSE))
+ return FALSE;
+
+ *atoms_p = (Atom*) results->prop;
+ *n_atoms_p = results->n_items;
+ results->prop = NULL;
+
+ return TRUE;
+}
+
+gboolean
+meta_prop_get_atom_list (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ Atom **atoms_p,
+ int *n_atoms_p)
+{
+ GetPropertyResults results;
+
+ *atoms_p = NULL;
+ *n_atoms_p = 0;
+
+ if (!get_property (display, xwindow, xatom, XA_ATOM,
+ &results))
+ return FALSE;
+
+ return atom_list_from_results (&results, atoms_p, n_atoms_p);
+}
+
+static gboolean
+cardinal_list_from_results (GetPropertyResults *results,
+ gulong **cardinals_p,
+ int *n_cardinals_p)
+{
+ if (!validate_or_free_results (results, 32, XA_CARDINAL, FALSE))
+ return FALSE;
+
+ *cardinals_p = (gulong*) results->prop;
+ *n_cardinals_p = results->n_items;
+ results->prop = NULL;
+
+ return TRUE;
+}
+
+gboolean
+meta_prop_get_cardinal_list (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ gulong **cardinals_p,
+ int *n_cardinals_p)
+{
+ GetPropertyResults results;
+
+ *cardinals_p = NULL;
+ *n_cardinals_p = 0;
+
+ if (!get_property (display, xwindow, xatom, XA_CARDINAL,
+ &results))
+ return FALSE;
+
+ return cardinal_list_from_results (&results, cardinals_p, n_cardinals_p);
+}
+
+static gboolean
+motif_hints_from_results (GetPropertyResults *results,
+ MotifWmHints **hints_p)
+{
+ int real_size, max_size;
+#define MAX_ITEMS sizeof (MotifWmHints)/sizeof (gulong)
+
+ *hints_p = NULL;
+
+ if (results->type == None || results->n_items <= 0)
+ {
+ meta_verbose ("Motif hints had unexpected type or n_items\n");
+ if (results->prop)
+ {
+ XFree (results->prop);
+ results->prop = NULL;
+ }
+ return FALSE;
+ }
+
+ /* The issue here is that some old crufty code will set a smaller
+ * MotifWmHints than the one we expect, apparently. I'm not sure of
+ * the history behind it. See bug #89841 for example.
+ */
+ *hints_p = ag_Xmalloc (sizeof (MotifWmHints));
+ if (*hints_p == NULL)
+ {
+ if (results->prop)
+ {
+ XFree (results->prop);
+ results->prop = NULL;
+ }
+ return FALSE;
+ }
+ real_size = results->n_items * sizeof (gulong);
+ max_size = MAX_ITEMS * sizeof (gulong);
+ memcpy (*hints_p, results->prop, MIN (real_size, max_size));
+
+ if (results->prop)
+ {
+ XFree (results->prop);
+ results->prop = NULL;
+ }
+
+ return TRUE;
+}
+
+gboolean
+meta_prop_get_motif_hints (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ MotifWmHints **hints_p)
+{
+ GetPropertyResults results;
+
+ *hints_p = NULL;
+
+ if (!get_property (display, xwindow, xatom, AnyPropertyType,
+ &results))
+ return FALSE;
+
+ return motif_hints_from_results (&results, hints_p);
+}
+
+static gboolean
+latin1_string_from_results (GetPropertyResults *results,
+ char **str_p)
+{
+ *str_p = NULL;
+
+ if (!validate_or_free_results (results, 8, XA_STRING, FALSE))
+ return FALSE;
+
+ *str_p = (char*) results->prop;
+ results->prop = NULL;
+
+ return TRUE;
+}
+
+gboolean
+meta_prop_get_latin1_string (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ char **str_p)
+{
+ GetPropertyResults results;
+
+ *str_p = NULL;
+
+ if (!get_property (display, xwindow, xatom, XA_STRING,
+ &results))
+ return FALSE;
+
+ return latin1_string_from_results (&results, str_p);
+}
+
+static gboolean
+utf8_string_from_results (GetPropertyResults *results,
+ char **str_p)
+{
+ *str_p = NULL;
+
+ if (!validate_or_free_results (results, 8,
+ results->display->atom_UTF8_STRING, FALSE))
+ return FALSE;
+
+ if (results->n_items > 0 &&
+ !g_utf8_validate ((gchar *)results->prop, results->n_items, NULL))
+ {
+ char *name;
+
+ name = XGetAtomName (results->display->xdisplay, results->xatom);
+ meta_warning (_("Property %s on window 0x%lx contained invalid UTF-8\n"),
+ name, results->xwindow);
+ meta_XFree (name);
+ XFree (results->prop);
+ results->prop = NULL;
+
+ return FALSE;
+ }
+
+ *str_p = (char*) results->prop;
+ results->prop = NULL;
+
+ return TRUE;
+}
+
+gboolean
+meta_prop_get_utf8_string (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ char **str_p)
+{
+ GetPropertyResults results;
+
+ *str_p = NULL;
+
+ if (!get_property (display, xwindow, xatom,
+ display->atom_UTF8_STRING,
+ &results))
+ return FALSE;
+
+ return utf8_string_from_results (&results, str_p);
+}
+
+/* this one freakishly returns g_malloc memory */
+static gboolean
+utf8_list_from_results (GetPropertyResults *results,
+ char ***str_p,
+ int *n_str_p)
+{
+ int i;
+ int n_strings;
+ char **retval;
+ const char *p;
+
+ *str_p = NULL;
+ *n_str_p = 0;
+
+ if (!validate_or_free_results (results, 8,
+ results->display->atom_UTF8_STRING, FALSE))
+ return FALSE;
+
+ /* I'm not sure this is right, but I'm guessing the
+ * property is nul-separated
+ */
+ i = 0;
+ n_strings = 0;
+ while (i < (int) results->n_items)
+ {
+ if (results->prop[i] == '\0')
+ ++n_strings;
+ ++i;
+ }
+
+ if (results->prop[results->n_items - 1] != '\0')
+ ++n_strings;
+
+ /* we're guaranteed that results->prop has a nul on the end
+ * by XGetWindowProperty
+ */
+
+ retval = g_new0 (char*, n_strings + 1);
+
+ p = (char *)results->prop;
+ i = 0;
+ while (i < n_strings)
+ {
+ if (!g_utf8_validate (p, -1, NULL))
+ {
+ char *name;
+
+ meta_error_trap_push (results->display);
+ name = XGetAtomName (results->display->xdisplay, results->xatom);
+ meta_error_trap_pop (results->display, TRUE);
+ meta_warning (_("Property %s on window 0x%lx contained invalid UTF-8 for item %d in the list\n"),
+ name, results->xwindow, i);
+ meta_XFree (name);
+ meta_XFree (results->prop);
+ results->prop = NULL;
+
+ g_strfreev (retval);
+ return FALSE;
+ }
+
+ retval[i] = g_strdup (p);
+
+ p = p + strlen (p) + 1;
+ ++i;
+ }
+
+ *str_p = retval;
+ *n_str_p = i;
+
+ meta_XFree (results->prop);
+ results->prop = NULL;
+
+ return TRUE;
+}
+
+/* returns g_malloc not Xmalloc memory */
+gboolean
+meta_prop_get_utf8_list (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ char ***str_p,
+ int *n_str_p)
+{
+ GetPropertyResults results;
+
+ *str_p = NULL;
+
+ if (!get_property (display, xwindow, xatom,
+ display->atom_UTF8_STRING,
+ &results))
+ return FALSE;
+
+ return utf8_list_from_results (&results, str_p, n_str_p);
+}
+
+void
+meta_prop_set_utf8_string_hint (MetaDisplay *display,
+ Window xwindow,
+ Atom atom,
+ const char *val)
+{
+ meta_error_trap_push (display);
+ XChangeProperty (display->xdisplay,
+ xwindow, atom,
+ display->atom_UTF8_STRING,
+ 8, PropModeReplace, (guchar*) val, strlen (val));
+ meta_error_trap_pop (display, FALSE);
+}
+
+static gboolean
+window_from_results (GetPropertyResults *results,
+ Window *window_p)
+{
+ if (!validate_or_free_results (results, 32, XA_WINDOW, TRUE))
+ return FALSE;
+
+ *window_p = *(Window*) results->prop;
+ XFree (results->prop);
+ results->prop = NULL;
+
+ return TRUE;
+}
+
+#ifdef HAVE_XSYNC
+static gboolean
+counter_from_results (GetPropertyResults *results,
+ XSyncCounter *counter_p)
+{
+ if (!validate_or_free_results (results, 32,
+ XA_CARDINAL,
+ TRUE))
+ return FALSE;
+
+ *counter_p = *(XSyncCounter*) results->prop;
+ XFree (results->prop);
+ results->prop = NULL;
+
+ return TRUE;
+}
+#endif
+
+gboolean
+meta_prop_get_window (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ Window *window_p)
+{
+ GetPropertyResults results;
+
+ *window_p = None;
+
+ if (!get_property (display, xwindow, xatom, XA_WINDOW,
+ &results))
+ return FALSE;
+
+ return window_from_results (&results, window_p);
+}
+
+gboolean
+meta_prop_get_cardinal (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ gulong *cardinal_p)
+{
+ return meta_prop_get_cardinal_with_atom_type (display, xwindow, xatom,
+ XA_CARDINAL, cardinal_p);
+}
+
+static gboolean
+cardinal_with_atom_type_from_results (GetPropertyResults *results,
+ Atom prop_type,
+ gulong *cardinal_p)
+{
+ if (!validate_or_free_results (results, 32, prop_type, TRUE))
+ return FALSE;
+
+ *cardinal_p = *(gulong*) results->prop;
+ XFree (results->prop);
+ results->prop = NULL;
+
+ return TRUE;
+}
+
+gboolean
+meta_prop_get_cardinal_with_atom_type (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ Atom prop_type,
+ gulong *cardinal_p)
+{
+ GetPropertyResults results;
+
+ *cardinal_p = 0;
+
+ if (!get_property (display, xwindow, xatom, prop_type,
+ &results))
+ return FALSE;
+
+ return cardinal_with_atom_type_from_results (&results, prop_type, cardinal_p);
+}
+
+static gboolean
+text_property_from_results (GetPropertyResults *results,
+ char **utf8_str_p)
+{
+ XTextProperty tp;
+
+ *utf8_str_p = NULL;
+
+ tp.value = results->prop;
+ results->prop = NULL;
+ tp.encoding = results->type;
+ tp.format = results->format;
+ tp.nitems = results->n_items;
+
+ *utf8_str_p = meta_text_property_to_utf8 (results->display->xdisplay,
+ &tp);
+
+ if (tp.value != NULL)
+ XFree (tp.value);
+
+ return *utf8_str_p != NULL;
+}
+
+gboolean
+meta_prop_get_text_property (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ char **utf8_str_p)
+{
+ GetPropertyResults results;
+
+ if (!get_property (display, xwindow, xatom, AnyPropertyType,
+ &results))
+ return FALSE;
+
+ return text_property_from_results (&results, utf8_str_p);
+}
+
+/* From Xmd.h */
+#ifndef cvtINT32toInt
+#if SIZEOF_VOID_P == 8
+#define cvtINT8toInt(val) ((((unsigned int)val) & 0x00000080) ? (((unsigned int)val) | 0xffffffffffffff00) : ((unsigned int)val))
+#define cvtINT16toInt(val) ((((unsigned int)val) & 0x00008000) ? (((unsigned int)val) | 0xffffffffffff0000) : ((unsigned int)val))
+#define cvtINT32toInt(val) ((((unsigned int)val) & 0x80000000) ? (((unsigned int)val) | 0xffffffff00000000) : ((unsigned int)val))
+#define cvtINT8toShort(val) cvtINT8toInt(val)
+#define cvtINT16toShort(val) cvtINT16toInt(val)
+#define cvtINT32toShort(val) cvtINT32toInt(val)
+#define cvtINT8toLong(val) cvtINT8toInt(val)
+#define cvtINT16toLong(val) cvtINT16toInt(val)
+#define cvtINT32toLong(val) cvtINT32toInt(val)
+#else
+#define cvtINT8toInt(val) (val)
+#define cvtINT16toInt(val) (val)
+#define cvtINT32toInt(val) (val)
+#define cvtINT8toShort(val) (val)
+#define cvtINT16toShort(val) (val)
+#define cvtINT32toShort(val) (val)
+#define cvtINT8toLong(val) (val)
+#define cvtINT16toLong(val) (val)
+#define cvtINT32toLong(val) (val)
+#endif /* SIZEOF_VOID_P == 8 */
+#endif /* cvtINT32toInt() */
+
+static gboolean
+wm_hints_from_results (GetPropertyResults *results,
+ XWMHints **hints_p)
+{
+ XWMHints *hints;
+ xPropWMHints *raw;
+
+ *hints_p = NULL;
+
+ if (!validate_or_free_results (results, 32, XA_WM_HINTS, TRUE))
+ return FALSE;
+
+ /* pre-R3 bogusly truncated window_group, don't fail on them */
+ if (results->n_items < (NumPropWMHintsElements - 1))
+ {
+ meta_verbose ("WM_HINTS property too short: %d should be %d\n",
+ (int) results->n_items, NumPropWMHintsElements - 1);
+ if (results->prop)
+ {
+ XFree (results->prop);
+ results->prop = NULL;
+ }
+ return FALSE;
+ }
+
+ hints = ag_Xmalloc0 (sizeof (XWMHints));
+
+ raw = (xPropWMHints*) results->prop;
+
+ hints->flags = raw->flags;
+ hints->input = (raw->input ? True : False);
+ hints->initial_state = cvtINT32toInt (raw->initialState);
+ hints->icon_pixmap = raw->iconPixmap;
+ hints->icon_window = raw->iconWindow;
+ hints->icon_x = cvtINT32toInt (raw->iconX);
+ hints->icon_y = cvtINT32toInt (raw->iconY);
+ hints->icon_mask = raw->iconMask;
+ if (results->n_items >= NumPropWMHintsElements)
+ hints->window_group = raw->windowGroup;
+ else
+ hints->window_group = 0;
+
+ if (results->prop)
+ {
+ XFree (results->prop);
+ results->prop = NULL;
+ }
+
+ *hints_p = hints;
+
+ return TRUE;
+}
+
+gboolean
+meta_prop_get_wm_hints (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ XWMHints **hints_p)
+{
+ GetPropertyResults results;
+
+ *hints_p = NULL;
+
+ if (!get_property (display, xwindow, xatom, XA_WM_HINTS,
+ &results))
+ return FALSE;
+
+ return wm_hints_from_results (&results, hints_p);
+}
+
+static gboolean
+class_hint_from_results (GetPropertyResults *results,
+ XClassHint *class_hint)
+{
+ int len_name, len_class;
+
+ class_hint->res_class = NULL;
+ class_hint->res_name = NULL;
+
+ if (!validate_or_free_results (results, 8, XA_STRING, FALSE))
+ return FALSE;
+
+ len_name = strlen ((char *) results->prop);
+ if (! (class_hint->res_name = ag_Xmalloc (len_name+1)))
+ {
+ XFree (results->prop);
+ results->prop = NULL;
+ return FALSE;
+ }
+
+ strcpy (class_hint->res_name, (char *)results->prop);
+
+ if (len_name == (int) results->n_items)
+ len_name--;
+
+ len_class = strlen ((char *)results->prop + len_name + 1);
+
+ if (! (class_hint->res_class = ag_Xmalloc(len_class+1)))
+ {
+ XFree(class_hint->res_name);
+ class_hint->res_name = NULL;
+ XFree (results->prop);
+ results->prop = NULL;
+ return FALSE;
+ }
+
+ strcpy (class_hint->res_class, (char *)results->prop + len_name + 1);
+
+ XFree (results->prop);
+ results->prop = NULL;
+
+ return TRUE;
+}
+
+gboolean
+meta_prop_get_class_hint (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ XClassHint *class_hint)
+{
+ GetPropertyResults results;
+
+ class_hint->res_class = NULL;
+ class_hint->res_name = NULL;
+
+ if (!get_property (display, xwindow, xatom, XA_STRING,
+ &results))
+ return FALSE;
+
+ return class_hint_from_results (&results, class_hint);
+}
+
+static gboolean
+size_hints_from_results (GetPropertyResults *results,
+ XSizeHints **hints_p,
+ gulong *flags_p)
+{
+ xPropSizeHints *raw;
+ XSizeHints *hints;
+
+ *hints_p = NULL;
+ *flags_p = 0;
+
+ if (!validate_or_free_results (results, 32, XA_WM_SIZE_HINTS, FALSE))
+ return FALSE;
+
+ if (results->n_items < OldNumPropSizeElements)
+ return FALSE;
+
+ raw = (xPropSizeHints*) results->prop;
+
+ hints = ag_Xmalloc (sizeof (XSizeHints));
+
+ /* XSizeHints misdeclares these as int instead of long */
+ hints->flags = raw->flags;
+ hints->x = cvtINT32toInt (raw->x);
+ hints->y = cvtINT32toInt (raw->y);
+ hints->width = cvtINT32toInt (raw->width);
+ hints->height = cvtINT32toInt (raw->height);
+ hints->min_width = cvtINT32toInt (raw->minWidth);
+ hints->min_height = cvtINT32toInt (raw->minHeight);
+ hints->max_width = cvtINT32toInt (raw->maxWidth);
+ hints->max_height = cvtINT32toInt (raw->maxHeight);
+ hints->width_inc = cvtINT32toInt (raw->widthInc);
+ hints->height_inc = cvtINT32toInt (raw->heightInc);
+ hints->min_aspect.x = cvtINT32toInt (raw->minAspectX);
+ hints->min_aspect.y = cvtINT32toInt (raw->minAspectY);
+ hints->max_aspect.x = cvtINT32toInt (raw->maxAspectX);
+ hints->max_aspect.y = cvtINT32toInt (raw->maxAspectY);
+
+ *flags_p = (USPosition | USSize | PAllHints);
+ if (results->n_items >= NumPropSizeElements)
+ {
+ hints->base_width= cvtINT32toInt (raw->baseWidth);
+ hints->base_height= cvtINT32toInt (raw->baseHeight);
+ hints->win_gravity= cvtINT32toInt (raw->winGravity);
+ *flags_p |= (PBaseSize | PWinGravity);
+ }
+
+ hints->flags &= (*flags_p); /* get rid of unwanted bits */
+
+ XFree (results->prop);
+ results->prop = NULL;
+
+ *hints_p = hints;
+
+ return TRUE;
+}
+
+gboolean
+meta_prop_get_size_hints (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ XSizeHints **hints_p,
+ gulong *flags_p)
+{
+ GetPropertyResults results;
+
+ *hints_p = NULL;
+ *flags_p = 0;
+
+ if (!get_property (display, xwindow, xatom, XA_WM_SIZE_HINTS,
+ &results))
+ return FALSE;
+
+ return size_hints_from_results (&results, hints_p, flags_p);
+}
+
+static AgGetPropertyTask*
+get_task (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ Atom req_type)
+{
+ return ag_task_create (display->xdisplay,
+ xwindow,
+ xatom, 0, G_MAXLONG,
+ False, req_type);
+}
+
+static char*
+latin1_to_utf8 (const char *text)
+{
+ GString *str;
+ const char *p;
+
+ str = g_string_new ("");
+
+ p = text;
+ while (*p)
+ {
+ g_string_append_unichar (str, *p);
+ ++p;
+ }
+
+ return g_string_free (str, FALSE);
+}
+
+void
+meta_prop_get_values (MetaDisplay *display,
+ Window xwindow,
+ MetaPropValue *values,
+ int n_values)
+{
+ int i;
+ AgGetPropertyTask **tasks;
+
+ meta_verbose ("Requesting %d properties of 0x%lx at once\n",
+ n_values, xwindow);
+
+ if (n_values == 0)
+ return;
+
+ tasks = g_new0 (AgGetPropertyTask*, n_values);
+
+ /* Start up tasks. The "values" array can have values
+ * with atom == None, which means to ignore that element.
+ */
+ i = 0;
+ while (i < n_values)
+ {
+ if (values[i].required_type == None)
+ {
+ switch (values[i].type)
+ {
+ case META_PROP_VALUE_INVALID:
+ /* This means we don't really want a value, e.g. got
+ * property notify on an atom we don't care about.
+ */
+ if (values[i].atom != None)
+ meta_bug ("META_PROP_VALUE_INVALID requested in %s\n", G_STRFUNC);
+ break;
+ case META_PROP_VALUE_UTF8_LIST:
+ case META_PROP_VALUE_UTF8:
+ values[i].required_type = display->atom_UTF8_STRING;
+ break;
+ case META_PROP_VALUE_STRING:
+ case META_PROP_VALUE_STRING_AS_UTF8:
+ values[i].required_type = XA_STRING;
+ break;
+ case META_PROP_VALUE_MOTIF_HINTS:
+ values[i].required_type = AnyPropertyType;
+ break;
+ case META_PROP_VALUE_CARDINAL_LIST:
+ case META_PROP_VALUE_CARDINAL:
+ values[i].required_type = XA_CARDINAL;
+ break;
+ case META_PROP_VALUE_WINDOW:
+ values[i].required_type = XA_WINDOW;
+ break;
+ case META_PROP_VALUE_ATOM_LIST:
+ values[i].required_type = XA_ATOM;
+ break;
+ case META_PROP_VALUE_TEXT_PROPERTY:
+ values[i].required_type = AnyPropertyType;
+ break;
+ case META_PROP_VALUE_WM_HINTS:
+ values[i].required_type = XA_WM_HINTS;
+ break;
+ case META_PROP_VALUE_CLASS_HINT:
+ values[i].required_type = XA_STRING;
+ break;
+ case META_PROP_VALUE_SIZE_HINTS:
+ values[i].required_type = XA_WM_SIZE_HINTS;
+ break;
+ case META_PROP_VALUE_SYNC_COUNTER:
+ values[i].required_type = XA_CARDINAL;
+ break;
+ }
+ }
+
+ if (values[i].atom != None)
+ tasks[i] = get_task (display, xwindow,
+ values[i].atom, values[i].required_type);
+
+ ++i;
+ }
+
+ /* Get replies for all our tasks */
+ meta_topic (META_DEBUG_SYNC, "Syncing to get %d GetProperty replies in %s\n",
+ n_values, G_STRFUNC);
+ XSync (display->xdisplay, False);
+
+ /* Collect results, should arrive in order requested */
+ i = 0;
+ while (i < n_values)
+ {
+ AgGetPropertyTask *task;
+ GetPropertyResults results;
+
+ if (tasks[i] == NULL)
+ {
+ /* Probably values[i].type was None, or ag_task_create()
+ * returned NULL.
+ */
+ values[i].type = META_PROP_VALUE_INVALID;
+ goto next;
+ }
+
+ task = ag_get_next_completed_task (display->xdisplay);
+ g_assert (task != NULL);
+ g_assert (ag_task_have_reply (task));
+
+ results.display = display;
+ results.xwindow = xwindow;
+ results.xatom = values[i].atom;
+ results.prop = NULL;
+ results.n_items = 0;
+ results.type = None;
+ results.bytes_after = 0;
+ results.format = 0;
+
+ if (ag_task_get_reply_and_free (task,
+ &results.type, &results.format,
+ &results.n_items,
+ &results.bytes_after,
+ &results.prop) != Success ||
+ results.type == None)
+ {
+ values[i].type = META_PROP_VALUE_INVALID;
+ if (results.prop)
+ {
+ XFree (results.prop);
+ results.prop = NULL;
+ }
+ goto next;
+ }
+
+ switch (values[i].type)
+ {
+ case META_PROP_VALUE_INVALID:
+ g_assert_not_reached ();
+ break;
+ case META_PROP_VALUE_UTF8_LIST:
+ if (!utf8_list_from_results (&results,
+ &values[i].v.string_list.strings,
+ &values[i].v.string_list.n_strings))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_UTF8:
+ if (!utf8_string_from_results (&results,
+ &values[i].v.str))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_STRING:
+ if (!latin1_string_from_results (&results,
+ &values[i].v.str))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_STRING_AS_UTF8:
+ if (!latin1_string_from_results (&results,
+ &values[i].v.str))
+ values[i].type = META_PROP_VALUE_INVALID;
+ else
+ {
+ char *new_str;
+ char *xmalloc_new_str;
+
+ new_str = latin1_to_utf8 (values[i].v.str);
+ xmalloc_new_str = ag_Xmalloc (strlen (new_str) + 1);
+ if (xmalloc_new_str != NULL)
+ {
+ strcpy (xmalloc_new_str, new_str);
+ meta_XFree (values[i].v.str);
+ values[i].v.str = xmalloc_new_str;
+ }
+
+ g_free (new_str);
+ }
+ break;
+ case META_PROP_VALUE_MOTIF_HINTS:
+ if (!motif_hints_from_results (&results,
+ &values[i].v.motif_hints))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_CARDINAL_LIST:
+ if (!cardinal_list_from_results (&results,
+ &values[i].v.cardinal_list.cardinals,
+ &values[i].v.cardinal_list.n_cardinals))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_CARDINAL:
+ if (!cardinal_with_atom_type_from_results (&results,
+ values[i].required_type,
+ &values[i].v.cardinal))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_WINDOW:
+ if (!window_from_results (&results,
+ &values[i].v.xwindow))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_ATOM_LIST:
+ if (!atom_list_from_results (&results,
+ &values[i].v.atom_list.atoms,
+ &values[i].v.atom_list.n_atoms))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_TEXT_PROPERTY:
+ if (!text_property_from_results (&results, &values[i].v.str))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_WM_HINTS:
+ if (!wm_hints_from_results (&results, &values[i].v.wm_hints))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_CLASS_HINT:
+ if (!class_hint_from_results (&results, &values[i].v.class_hint))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_SIZE_HINTS:
+ if (!size_hints_from_results (&results,
+ &values[i].v.size_hints.hints,
+ &values[i].v.size_hints.flags))
+ values[i].type = META_PROP_VALUE_INVALID;
+ break;
+ case META_PROP_VALUE_SYNC_COUNTER:
+#ifdef HAVE_XSYNC
+ if (!counter_from_results (&results,
+ &values[i].v.xcounter))
+ values[i].type = META_PROP_VALUE_INVALID;
+#else
+ values[i].type = META_PROP_VALUE_INVALID;
+ if (results.prop)
+ {
+ XFree (results.prop);
+ results.prop = NULL;
+ }
+#endif
+ break;
+ }
+
+ next:
+ ++i;
+ }
+
+ g_free (tasks);
+}
+
+static void
+free_value (MetaPropValue *value)
+{
+ switch (value->type)
+ {
+ case META_PROP_VALUE_INVALID:
+ break;
+ case META_PROP_VALUE_UTF8:
+ case META_PROP_VALUE_STRING:
+ case META_PROP_VALUE_STRING_AS_UTF8:
+ meta_XFree (value->v.str);
+ break;
+ case META_PROP_VALUE_MOTIF_HINTS:
+ meta_XFree (value->v.motif_hints);
+ break;
+ case META_PROP_VALUE_CARDINAL:
+ break;
+ case META_PROP_VALUE_WINDOW:
+ break;
+ case META_PROP_VALUE_ATOM_LIST:
+ meta_XFree (value->v.atom_list.atoms);
+ break;
+ case META_PROP_VALUE_TEXT_PROPERTY:
+ meta_XFree (value->v.str);
+ break;
+ case META_PROP_VALUE_WM_HINTS:
+ meta_XFree (value->v.wm_hints);
+ break;
+ case META_PROP_VALUE_CLASS_HINT:
+ meta_XFree (value->v.class_hint.res_class);
+ meta_XFree (value->v.class_hint.res_name);
+ break;
+ case META_PROP_VALUE_SIZE_HINTS:
+ meta_XFree (value->v.size_hints.hints);
+ break;
+ case META_PROP_VALUE_UTF8_LIST:
+ g_strfreev (value->v.string_list.strings);
+ break;
+ case META_PROP_VALUE_CARDINAL_LIST:
+ meta_XFree (value->v.cardinal_list.cardinals);
+ break;
+ case META_PROP_VALUE_SYNC_COUNTER:
+ break;
+ }
+}
+
+void
+meta_prop_free_values (MetaPropValue *values,
+ int n_values)
+{
+ int i;
+
+ i = 0;
+ while (i < n_values)
+ {
+ free_value (&values[i]);
+ ++i;
+ }
+
+ /* Zero the whole thing to quickly detect breakage */
+ memset (values, '\0', sizeof (MetaPropValue) * n_values);
+}
diff --git a/src/include/all-keybindings.h b/src/include/all-keybindings.h
new file mode 100644
index 00000000..ee9b5d37
--- /dev/null
+++ b/src/include/all-keybindings.h
@@ -0,0 +1,386 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2008 Thomas Thurman
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+/**
+ * A list of screen keybinding information.
+ *
+ * Each action which can have a keystroke bound to it is listed below.
+ * To use this file, define keybind() to be a seven-argument macro (you can
+ * throw any of the arguments you please away), include this file,
+ * and then undefine the macro again.
+ *
+ * (If you aren't familiar with this technique, sometimes called "x-macros",
+ * see DDJ of May 2001: <http://www.ddj.com/cpp/184401387>.)
+ *
+ * This makes it possible to keep all information about all the keybindings
+ * in the same place. The only exception is the code to run when an action
+ * is actually invoked; while we *could* have put that in this file, it would
+ * have made debugging ridiculously difficult. Instead, each action should
+ * have a corresponding static function named handle_<name>() in
+ * keybindings.c.
+ *
+ * The arguments to keybind() are:
+ * 1) the name of the binding; a bareword identifier
+ * (it's fine if it happens to clash with a C reserved word)
+ * 2) the name of the function which implements it.
+ * Clearly we could have guessed this from the binding very often,
+ * but we choose to write it in full for the benefit of grep.
+ * 3) an integer parameter to pass to the handler
+ * 4) a set of boolean flags, ORed together:
+ * BINDING_PER_WINDOW - this is a window-based binding.
+ * It is only valid if there is a
+ * current window, and will operate in
+ * some way on that window.
+ * BINDING_REVERSES - the binding can reverse if you hold down Shift
+ * BINDING_IS_REVERSED - the same, but the senses are reversed from the
+ * handler's point of view (let me know if I should
+ * explain this better)
+ * or 0 if no flag applies.
+ *
+ * 5) a string representing the default binding.
+ * If this is NULL, the action is unbound by default.
+ * Please use NULL and not "disabled".
+ * 6) a short description.
+ * It must be marked translatable (i.e. inside "_(...)").
+ *
+ * Don't try to do XML entity escaping anywhere in the strings.
+ */
+
+#ifndef keybind
+#error "keybind () must be defined when you include screen-bindings.h"
+#endif
+
+/***********************************/
+
+#ifndef _BINDINGS_DEFINED_CONSTANTS
+#define _BINDINGS_DEFINED_CONSTANTS 1
+
+#define BINDING_PER_WINDOW 0x01
+#define BINDING_REVERSES 0x02
+#define BINDING_IS_REVERSED 0x04
+
+#endif /* _BINDINGS_DEFINED_CONSTANTS */
+
+/***********************************/
+
+/* convenience, since in this file they must always be set together */
+#define REVERSES_AND_REVERSED (BINDING_REVERSES | BINDING_IS_REVERSED)
+
+keybind (switch_to_workspace_1, handle_switch_to_workspace, 0, 0, NULL,
+ _("Switch to workspace 1"))
+keybind (switch_to_workspace_2, handle_switch_to_workspace, 1, 0, NULL,
+ _("Switch to workspace 2"))
+keybind (switch_to_workspace_3, handle_switch_to_workspace, 2, 0, NULL,
+ _("Switch to workspace 3"))
+keybind (switch_to_workspace_4, handle_switch_to_workspace, 3, 0, NULL,
+ _("Switch to workspace 4"))
+keybind (switch_to_workspace_5, handle_switch_to_workspace, 4, 0, NULL,
+ _("Switch to workspace 5"))
+keybind (switch_to_workspace_6, handle_switch_to_workspace, 5, 0, NULL,
+ _("Switch to workspace 6"))
+keybind (switch_to_workspace_7, handle_switch_to_workspace, 6, 0, NULL,
+ _("Switch to workspace 7"))
+keybind (switch_to_workspace_8, handle_switch_to_workspace, 7, 0, NULL,
+ _("Switch to workspace 8"))
+keybind (switch_to_workspace_9, handle_switch_to_workspace, 8, 0, NULL,
+ _("Switch to workspace 9"))
+keybind (switch_to_workspace_10, handle_switch_to_workspace, 9, 0, NULL,
+ _("Switch to workspace 10"))
+keybind (switch_to_workspace_11, handle_switch_to_workspace, 10, 0, NULL,
+ _("Switch to workspace 11"))
+keybind (switch_to_workspace_12, handle_switch_to_workspace, 11, 0, NULL,
+ _("Switch to workspace 12"))
+
+/* META_MOTION_* are negative, and so distinct from workspace numbers,
+ * which are always zero or positive.
+ * If you make use of these constants, you will need to include workspace.h
+ * (which you're probably using already for other reasons anyway).
+ * If your definition of keybind() throws them away, you don't need to include
+ * workspace.h, of course.
+ */
+
+keybind (switch_to_workspace_left, handle_switch_to_workspace,
+ META_MOTION_LEFT, 0, "<Control><Alt>Left",
+ _("Switch to workspace on the left of the current workspace"))
+
+keybind (switch_to_workspace_right, handle_switch_to_workspace,
+ META_MOTION_RIGHT, 0, "<Control><Alt>Right",
+ _("Switch to workspace on the right of the current workspace"))
+
+keybind (switch_to_workspace_up, handle_switch_to_workspace,
+ META_MOTION_UP, 0, "<Control><Alt>Up",
+ _("Switch to workspace above the current workspace"))
+
+keybind (switch_to_workspace_down, handle_switch_to_workspace,
+ META_MOTION_DOWN, 0, "<Control><Alt>Down",
+ _("Switch to workspace below the current workspace"))
+
+/***********************************/
+
+/* The ones which have inverses. These can't be bound to any keystroke
+ * containing Shift because Shift will invert their "backward" state.
+ *
+ * TODO: "NORMAL" and "DOCKS" should be renamed to the same name as their
+ * action, for obviousness.
+ *
+ * TODO: handle_switch and handle_cycle should probably really be the
+ * same function checking a bit in the parameter for difference.
+ */
+
+keybind (switch_group, handle_switch, META_TAB_LIST_GROUP,
+ BINDING_REVERSES, NULL,
+ _("Move between windows of an application, using a popup window"))
+keybind (switch_group_backward, handle_switch, META_TAB_LIST_GROUP,
+ REVERSES_AND_REVERSED, NULL,
+ _("Move backward between windows of an application, "
+ "using a popup window"))
+keybind (switch_windows, handle_switch, META_TAB_LIST_NORMAL,
+ BINDING_REVERSES, "<Alt>Tab",
+ _("Move between windows, using a popup window"))
+keybind (switch_windows_backward, handle_switch, META_TAB_LIST_NORMAL,
+ REVERSES_AND_REVERSED, NULL,
+ _("Move backward between windows, using a popup window"))
+keybind (switch_panels, handle_switch, META_TAB_LIST_DOCKS,
+ BINDING_REVERSES, "<Control><Alt>Tab",
+ _("Move between panels and the desktop, using a popup window"))
+keybind (switch_panels_backward, handle_switch, META_TAB_LIST_DOCKS,
+ REVERSES_AND_REVERSED, NULL,
+ _("Move backward between panels and the desktop, "
+ "using a popup window"))
+
+keybind (cycle_group, handle_cycle, META_TAB_LIST_GROUP,
+ BINDING_REVERSES, "<Alt>F6",
+ _("Move between windows of an application immediately"))
+keybind (cycle_group_backward, handle_cycle, META_TAB_LIST_GROUP,
+ REVERSES_AND_REVERSED, NULL,
+ _("Move backward between windows of an application immediately"))
+keybind (cycle_windows, handle_cycle, META_TAB_LIST_NORMAL,
+ BINDING_REVERSES, "<Alt>Escape",
+ _("Move between windows immediately"))
+keybind (cycle_windows_backward, handle_cycle, META_TAB_LIST_NORMAL,
+ REVERSES_AND_REVERSED, NULL,
+ _("Move backward between windows immediately"))
+keybind (cycle_panels, handle_cycle, META_TAB_LIST_DOCKS,
+ BINDING_REVERSES, "<Control><Alt>Escape",
+ _("Move between panels and the desktop immediately"))
+keybind (cycle_panels_backward, handle_cycle, META_TAB_LIST_DOCKS,
+ REVERSES_AND_REVERSED, NULL,
+ _("Move backward between panels and the desktop immediately"))
+
+/***********************************/
+
+keybind (show_desktop, handle_show_desktop, 0, 0, "<Control><Alt>d",
+ _("Hide all normal windows and set focus to the desktop"))
+keybind (panel_main_menu, handle_panel,
+ META_KEYBINDING_ACTION_PANEL_MAIN_MENU, 0, "<Alt>F1",
+ _("Show the panel's main menu"))
+keybind (panel_run_dialog, handle_panel,
+ META_KEYBINDING_ACTION_PANEL_RUN_DIALOG, 0, "<Alt>F2",
+ _("Show the panel's \"Run Application\" dialog box"))
+
+/* Yes, the param is offset by one. Historical reasons. (Maybe worth fixing
+ * at some point.) The description is NULL here because the stanza is
+ * irregularly shaped in marco.schemas.in. This will probably be fixed
+ * as well.
+ */
+keybind (run_command_1, handle_run_command, 0, 0, NULL, NULL)
+keybind (run_command_2, handle_run_command, 1, 0, NULL, NULL)
+keybind (run_command_3, handle_run_command, 2, 0, NULL, NULL)
+keybind (run_command_4, handle_run_command, 3, 0, NULL, NULL)
+keybind (run_command_5, handle_run_command, 4, 0, NULL, NULL)
+keybind (run_command_6, handle_run_command, 5, 0, NULL, NULL)
+keybind (run_command_7, handle_run_command, 6, 0, NULL, NULL)
+keybind (run_command_8, handle_run_command, 7, 0, NULL, NULL)
+keybind (run_command_9, handle_run_command, 8, 0, NULL, NULL)
+keybind (run_command_10, handle_run_command, 9, 0, NULL, NULL)
+keybind (run_command_11, handle_run_command, 10, 0, NULL, NULL)
+keybind (run_command_12, handle_run_command, 11, 0, NULL, NULL)
+keybind (run_command_13, handle_run_command, 12, 0, NULL, NULL)
+keybind (run_command_14, handle_run_command, 13, 0, NULL, NULL)
+keybind (run_command_15, handle_run_command, 14, 0, NULL, NULL)
+keybind (run_command_16, handle_run_command, 15, 0, NULL, NULL)
+keybind (run_command_17, handle_run_command, 16, 0, NULL, NULL)
+keybind (run_command_18, handle_run_command, 17, 0, NULL, NULL)
+keybind (run_command_19, handle_run_command, 18, 0, NULL, NULL)
+keybind (run_command_20, handle_run_command, 19, 0, NULL, NULL)
+keybind (run_command_21, handle_run_command, 20, 0, NULL, NULL)
+keybind (run_command_22, handle_run_command, 21, 0, NULL, NULL)
+keybind (run_command_23, handle_run_command, 22, 0, NULL, NULL)
+keybind (run_command_24, handle_run_command, 23, 0, NULL, NULL)
+keybind (run_command_25, handle_run_command, 24, 0, NULL, NULL)
+keybind (run_command_26, handle_run_command, 25, 0, NULL, NULL)
+keybind (run_command_27, handle_run_command, 26, 0, NULL, NULL)
+keybind (run_command_28, handle_run_command, 27, 0, NULL, NULL)
+keybind (run_command_29, handle_run_command, 28, 0, NULL, NULL)
+keybind (run_command_30, handle_run_command, 29, 0, NULL, NULL)
+keybind (run_command_31, handle_run_command, 30, 0, NULL, NULL)
+keybind (run_command_32, handle_run_command, 31, 0, NULL, NULL)
+
+keybind (run_command_screenshot, handle_run_command, 32, 0, "Print",
+ _("Take a screenshot"))
+keybind (run_command_window_screenshot, handle_run_command, 33, 0,"<Alt>Print",
+ _("Take a screenshot of a window"))
+
+keybind (run_command_terminal, handle_run_terminal, 0, 0, NULL, _("Run a terminal"))
+
+/* No description because this is undocumented */
+keybind (set_spew_mark, handle_set_spew_mark, 0, 0, NULL, NULL)
+
+#undef REVERSES_AND_REVERSED
+
+/************************ PER WINDOW BINDINGS ************************/
+
+/* These take a window as an extra parameter; they have no effect
+ * if no window is active.
+ */
+
+keybind (activate_window_menu, handle_activate_window_menu, 0,
+ BINDING_PER_WINDOW, "<Alt>space",
+ _("Activate the window menu"))
+keybind (toggle_fullscreen, handle_toggle_fullscreen, 0, BINDING_PER_WINDOW,
+ NULL,
+ _("Toggle fullscreen mode"))
+keybind (toggle_maximized, handle_toggle_maximized, 0, BINDING_PER_WINDOW, "<Alt>F10",
+ _("Toggle maximization state"))
+keybind (toggle_above, handle_toggle_above, 0, BINDING_PER_WINDOW, NULL,
+ _("Toggle whether a window will always be visible over other windows"))
+keybind (maximize, handle_maximize, 0, BINDING_PER_WINDOW, NULL,
+ _("Maximize window"))
+keybind (unmaximize, handle_unmaximize, 0, BINDING_PER_WINDOW, "<Alt>F5",
+ _("Restore window"))
+keybind (toggle_shaded, handle_toggle_shaded, 0, BINDING_PER_WINDOW, NULL,
+ _("Toggle shaded state"))
+keybind (minimize, handle_minimize, 0, BINDING_PER_WINDOW, "<Alt>F9",
+ _("Minimize window"))
+keybind (close, handle_close, 0, BINDING_PER_WINDOW, "<Alt>F4",
+ _("Close window"))
+keybind (begin_move, handle_begin_move, 0, BINDING_PER_WINDOW, "<Alt>F7",
+ _("Move window"))
+keybind (begin_resize, handle_begin_resize, 0, BINDING_PER_WINDOW, "<Alt>F8",
+ _("Resize window"))
+keybind (toggle_on_all_workspaces, handle_toggle_on_all_workspaces, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Toggle whether window is on all workspaces or just one"))
+
+keybind (move_to_workspace_1, handle_move_to_workspace, 0, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 1"))
+keybind (move_to_workspace_2, handle_move_to_workspace, 1, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 2"))
+keybind (move_to_workspace_3, handle_move_to_workspace, 2, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 3"))
+keybind (move_to_workspace_4, handle_move_to_workspace, 3, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 4"))
+keybind (move_to_workspace_5, handle_move_to_workspace, 4, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 5"))
+keybind (move_to_workspace_6, handle_move_to_workspace, 5, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 6"))
+keybind (move_to_workspace_7, handle_move_to_workspace, 6, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 7"))
+keybind (move_to_workspace_8, handle_move_to_workspace, 7, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 8"))
+keybind (move_to_workspace_9, handle_move_to_workspace, 8, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 9"))
+keybind (move_to_workspace_10, handle_move_to_workspace, 9, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 10"))
+keybind (move_to_workspace_11, handle_move_to_workspace, 10, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 11"))
+keybind (move_to_workspace_12, handle_move_to_workspace, 11, BINDING_PER_WINDOW,
+ NULL,
+ _("Move window to workspace 12"))
+
+/* META_MOTION_* are negative, and so distinct from workspace numbers,
+ * which are always zero or positive.
+ * If you make use of these constants, you will need to include workspace.h
+ * (which you're probably using already for other reasons anyway).
+ * If your definition of keybind() throws them away, you don't need to include
+ * workspace.h, of course.
+ */
+
+keybind (move_to_workspace_left, handle_move_to_workspace,
+ META_MOTION_LEFT, BINDING_PER_WINDOW, "<Control><Shift><Alt>Left",
+ _("Move window one workspace to the left"))
+keybind (move_to_workspace_right, handle_move_to_workspace,
+ META_MOTION_RIGHT, BINDING_PER_WINDOW, "<Control><Shift><Alt>Right",
+ _("Move window one workspace to the right"))
+keybind (move_to_workspace_up, handle_move_to_workspace,
+ META_MOTION_UP, BINDING_PER_WINDOW, "<Control><Shift><Alt>Up",
+ _("Move window one workspace up"))
+keybind (move_to_workspace_down, handle_move_to_workspace,
+ META_MOTION_DOWN, BINDING_PER_WINDOW, "<Control><Shift><Alt>Down",
+ _("Move window one workspace down"))
+
+keybind (raise_or_lower, handle_raise_or_lower, 0, BINDING_PER_WINDOW, NULL,
+ _("Raise window if it's covered by another window, otherwise lower it"))
+keybind (raise, handle_raise, 0, BINDING_PER_WINDOW, NULL,
+ _("Raise window above other windows"))
+keybind (lower, handle_lower, 0, BINDING_PER_WINDOW, NULL,
+ _("Lower window below other windows"))
+
+keybind (maximize_vertically, handle_maximize_vertically, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Maximize window vertically"))
+
+keybind (maximize_horizontally, handle_maximize_horizontally, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Maximize window horizontally"))
+
+keybind (move_to_corner_nw, handle_move_to_corner_nw, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Move window to north-west (top left) corner"))
+keybind (move_to_corner_ne, handle_move_to_corner_ne, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Move window to north-east (top right) corner"))
+keybind (move_to_corner_sw, handle_move_to_corner_sw, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Move window to south-west (bottom left) corner"))
+keybind (move_to_corner_se, handle_move_to_corner_se, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Move window to south-east (bottom right) corner"))
+
+keybind (move_to_side_n, handle_move_to_side_n, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Move window to north (top) side of screen"))
+keybind (move_to_side_s, handle_move_to_side_s, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Move window to south (bottom) side of screen"))
+keybind (move_to_side_e, handle_move_to_side_e, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Move window to east (right) side of screen"))
+keybind (move_to_side_w, handle_move_to_side_w, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Move window to west (left) side of screen"))
+keybind (move_to_center, handle_move_to_center, 0,
+ BINDING_PER_WINDOW, NULL,
+ _("Move window to center of screen"))
+
+/* eof all-keybindings.h */
+
diff --git a/src/include/boxes.h b/src/include/boxes.h
new file mode 100644
index 00000000..5c76ed6b
--- /dev/null
+++ b/src/include/boxes.h
@@ -0,0 +1,290 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Simple box operations */
+
+/*
+ * Copyright (C) 2005, 2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_BOXES_H
+#define META_BOXES_H
+
+#include <glib.h>
+#include "common.h"
+
+typedef struct _MetaRectangle MetaRectangle;
+struct _MetaRectangle
+{
+ int x;
+ int y;
+ int width;
+ int height;
+};
+
+typedef struct _MetaStrut MetaStrut;
+struct _MetaStrut
+{
+ MetaRectangle rect;
+ MetaSide side;
+};
+
+#define BOX_LEFT(box) ((box).x) /* Leftmost pixel of rect */
+#define BOX_RIGHT(box) ((box).x + (box).width) /* One pixel past right */
+#define BOX_TOP(box) ((box).y) /* Topmost pixel of rect */
+#define BOX_BOTTOM(box) ((box).y + (box).height) /* One pixel past bottom */
+
+typedef enum
+{
+ FIXED_DIRECTION_NONE = 0,
+ FIXED_DIRECTION_X = 1 << 0,
+ FIXED_DIRECTION_Y = 1 << 1,
+} FixedDirections;
+
+typedef enum
+{
+ META_EDGE_WINDOW,
+ META_EDGE_XINERAMA,
+ META_EDGE_SCREEN
+} MetaEdgeType;
+
+typedef struct _MetaEdge MetaEdge;
+struct _MetaEdge
+{
+ MetaRectangle rect; /* width or height should be 1 */
+ MetaSide side_type;
+ MetaEdgeType edge_type;
+};
+
+/* Output functions -- note that the output buffer had better be big enough:
+ * rect_to_string: RECT_LENGTH
+ * region_to_string: (RECT_LENGTH+strlen(separator_string)) *
+ * g_list_length (region)
+ * edge_to_string: EDGE_LENGTH
+ * edge_list_to_...: (EDGE_LENGTH+strlen(separator_string)) *
+ * g_list_length (edge_list)
+ */
+#define RECT_LENGTH 27
+#define EDGE_LENGTH 37
+char* meta_rectangle_to_string (const MetaRectangle *rect,
+ char *output);
+char* meta_rectangle_region_to_string (GList *region,
+ const char *separator_string,
+ char *output);
+char* meta_rectangle_edge_to_string (const MetaEdge *edge,
+ char *output);
+char* meta_rectangle_edge_list_to_string (
+ GList *edge_list,
+ const char *separator_string,
+ char *output);
+
+/* Function to make initializing a rect with a single line of code easy */
+MetaRectangle meta_rect (int x, int y, int width, int height);
+
+/* Basic comparison functions */
+int meta_rectangle_area (const MetaRectangle *rect);
+gboolean meta_rectangle_intersect (const MetaRectangle *src1,
+ const MetaRectangle *src2,
+ MetaRectangle *dest);
+gboolean meta_rectangle_equal (const MetaRectangle *src1,
+ const MetaRectangle *src2);
+
+/* Find the bounding box of the union of two rectangles */
+void meta_rectangle_union (const MetaRectangle *rect1,
+ const MetaRectangle *rect2,
+ MetaRectangle *dest);
+
+/* overlap is similar to intersect but doesn't provide location of
+ * intersection information.
+ */
+gboolean meta_rectangle_overlap (const MetaRectangle *rect1,
+ const MetaRectangle *rect2);
+
+/* vert_overlap means ignore the horizontal location and ask if the
+ * vertical parts overlap. An alternate way to think of it is "Does there
+ * exist a way to shift either rect horizontally so that the two rects
+ * overlap?" horiz_overlap is similar.
+ */
+gboolean meta_rectangle_vert_overlap (const MetaRectangle *rect1,
+ const MetaRectangle *rect2);
+gboolean meta_rectangle_horiz_overlap (const MetaRectangle *rect1,
+ const MetaRectangle *rect2);
+
+/* could_fit_rect determines whether "outer_rect" is big enough to contain
+ * inner_rect. contains_rect checks whether it actually contains it.
+ */
+gboolean meta_rectangle_could_fit_rect (const MetaRectangle *outer_rect,
+ const MetaRectangle *inner_rect);
+gboolean meta_rectangle_contains_rect (const MetaRectangle *outer_rect,
+ const MetaRectangle *inner_rect);
+
+/* Resize old_rect to the given new_width and new_height, but store the
+ * result in rect. NOTE THAT THIS IS RESIZE ONLY SO IT CANNOT BE USED FOR
+ * A MOVERESIZE OPERATION (that simplies the routine a little bit as it
+ * means there's no difference between NorthWestGravity and StaticGravity.
+ * Also, I lied a little bit--technically, you could use it in a MoveResize
+ * operation if you muck with old_rect just right).
+ */
+void meta_rectangle_resize_with_gravity (const MetaRectangle *old_rect,
+ MetaRectangle *rect,
+ int gravity,
+ int new_width,
+ int new_height);
+
+/* find a list of rectangles with the property that a window is contained
+ * in the given region if and only if it is contained in one of the
+ * rectangles in the list.
+ *
+ * In this case, the region is given by taking basic_rect, removing from
+ * it the intersections with all the rectangles in the all_struts list,
+ * then expanding all the rectangles in the resulting list by the given
+ * amounts on each side.
+ *
+ * See boxes.c for more details.
+ */
+GList* meta_rectangle_get_minimal_spanning_set_for_region (
+ const MetaRectangle *basic_rect,
+ const GSList *all_struts);
+
+/* Expand all rectangles in region by the given amount on each side */
+GList* meta_rectangle_expand_region (GList *region,
+ const int left_expand,
+ const int right_expand,
+ const int top_expand,
+ const int bottom_expand);
+/* Same as for meta_rectangle_expand_region except that rectangles not at
+ * least min_x or min_y in size are not expanded in that direction
+ */
+GList* meta_rectangle_expand_region_conditionally (
+ GList *region,
+ const int left_expand,
+ const int right_expand,
+ const int top_expand,
+ const int bottom_expand,
+ const int min_x,
+ const int min_y);
+
+/* Expand rect in direction to the size of expand_to, and then clip out any
+ * overlapping struts oriented orthognal to the expansion direction. (Think
+ * horizontal or vertical maximization)
+ */
+void meta_rectangle_expand_to_avoiding_struts (
+ MetaRectangle *rect,
+ const MetaRectangle *expand_to,
+ const MetaDirection direction,
+ const GSList *all_struts);
+
+/* Free the list created by
+ * meta_rectangle_get_minimal_spanning_set_for_region()
+ * or
+ * meta_rectangle_find_onscreen_edges ()
+ * or
+ * meta_rectangle_find_nonintersected_xinerama_edges()
+ */
+void meta_rectangle_free_list_and_elements (GList *filled_list);
+
+/* could_fit_in_region determines whether one of the spanning_rects is
+ * big enough to contain rect. contained_in_region checks whether one
+ * actually contains it.
+ */
+gboolean meta_rectangle_could_fit_in_region (
+ const GList *spanning_rects,
+ const MetaRectangle *rect);
+gboolean meta_rectangle_contained_in_region (
+ const GList *spanning_rects,
+ const MetaRectangle *rect);
+gboolean meta_rectangle_overlaps_with_region (
+ const GList *spanning_rects,
+ const MetaRectangle *rect);
+
+/* Make the rectangle small enough to fit into one of the spanning_rects,
+ * but make it no smaller than min_size.
+ */
+void meta_rectangle_clamp_to_fit_into_region (
+ const GList *spanning_rects,
+ FixedDirections fixed_directions,
+ MetaRectangle *rect,
+ const MetaRectangle *min_size);
+
+/* Clip the rectangle so that it fits into one of the spanning_rects, assuming
+ * it overlaps with at least one of them
+ */
+void meta_rectangle_clip_to_region (const GList *spanning_rects,
+ FixedDirections fixed_directions,
+ MetaRectangle *rect);
+
+/* Shove the rectangle into one of the spanning_rects, assuming it fits in
+ * one of them.
+ */
+void meta_rectangle_shove_into_region(
+ const GList *spanning_rects,
+ FixedDirections fixed_directions,
+ MetaRectangle *rect);
+
+/* Finds the point on the line connecting (x1,y1) to (x2,y2) which is closest
+ * to (px, py). Useful for finding an optimal rectangle size when given a
+ * range between two sizes that are all candidates.
+ */
+void meta_rectangle_find_linepoint_closest_to_point (double x1, double y1,
+ double x2, double y2,
+ double px, double py,
+ double *valx, double *valy);
+
+/***************************************************************************/
+/* */
+/* Switching gears to code for edges instead of just rectangles */
+/* */
+/***************************************************************************/
+
+/* Return whether an edge overlaps or is adjacent to the rectangle in the
+ * nonzero-width dimension of the edge.
+ */
+gboolean meta_rectangle_edge_aligns (const MetaRectangle *rect,
+ const MetaEdge *edge);
+
+/* Compare two edges, so that sorting functions can put a list of edges in
+ * canonical order.
+ */
+gint meta_rectangle_edge_cmp (gconstpointer a, gconstpointer b);
+
+/* Compare two edges, so that sorting functions can put a list of edges in
+ * order. This function doesn't separate left edges first, then right edges,
+ * etc., but rather compares only upon location.
+ */
+gint meta_rectangle_edge_cmp_ignore_type (gconstpointer a, gconstpointer b);
+
+/* Removes an parts of edges in the given list that intersect any box in the
+ * given rectangle list. Returns the result.
+ */
+GList* meta_rectangle_remove_intersections_with_boxes_from_edges (
+ GList *edges,
+ const GSList *rectangles);
+
+/* Finds all the edges of an onscreen region, returning a GList* of
+ * MetaEdgeRect's.
+ */
+GList* meta_rectangle_find_onscreen_edges (const MetaRectangle *basic_rect,
+ const GSList *all_struts);
+
+/* Finds edges between adjacent xineramas which are not covered by the given
+ * struts.
+ */
+GList* meta_rectangle_find_nonintersected_xinerama_edges (
+ const GList *xinerama_rects,
+ const GSList *all_struts);
+
+#endif /* META_BOXES_H */
diff --git a/src/include/common.h b/src/include/common.h
new file mode 100644
index 00000000..ccb592f6
--- /dev/null
+++ b/src/include/common.h
@@ -0,0 +1,300 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco common types shared by core.h and ui.h */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_COMMON_H
+#define META_COMMON_H
+
+/* Don't include GTK or core headers here */
+#include <X11/Xlib.h>
+#include <glib.h>
+
+typedef struct _MetaResizePopup MetaResizePopup;
+
+typedef enum
+{
+ META_FRAME_ALLOWS_DELETE = 1 << 0,
+ META_FRAME_ALLOWS_MENU = 1 << 1,
+ META_FRAME_ALLOWS_MINIMIZE = 1 << 2,
+ META_FRAME_ALLOWS_MAXIMIZE = 1 << 3,
+ META_FRAME_ALLOWS_VERTICAL_RESIZE = 1 << 4,
+ META_FRAME_ALLOWS_HORIZONTAL_RESIZE = 1 << 5,
+ META_FRAME_HAS_FOCUS = 1 << 6,
+ META_FRAME_SHADED = 1 << 7,
+ META_FRAME_STUCK = 1 << 8,
+ META_FRAME_MAXIMIZED = 1 << 9,
+ META_FRAME_ALLOWS_SHADE = 1 << 10,
+ META_FRAME_ALLOWS_MOVE = 1 << 11,
+ META_FRAME_FULLSCREEN = 1 << 12,
+ META_FRAME_IS_FLASHING = 1 << 13,
+ META_FRAME_ABOVE = 1 << 14
+} MetaFrameFlags;
+
+typedef enum
+{
+ META_MENU_OP_NONE = 0,
+ META_MENU_OP_DELETE = 1 << 0,
+ META_MENU_OP_MINIMIZE = 1 << 1,
+ META_MENU_OP_UNMAXIMIZE = 1 << 2,
+ META_MENU_OP_MAXIMIZE = 1 << 3,
+ META_MENU_OP_UNSHADE = 1 << 4,
+ META_MENU_OP_SHADE = 1 << 5,
+ META_MENU_OP_UNSTICK = 1 << 6,
+ META_MENU_OP_STICK = 1 << 7,
+ META_MENU_OP_WORKSPACES = 1 << 8,
+ META_MENU_OP_MOVE = 1 << 9,
+ META_MENU_OP_RESIZE = 1 << 10,
+ META_MENU_OP_ABOVE = 1 << 11,
+ META_MENU_OP_UNABOVE = 1 << 12,
+ META_MENU_OP_MOVE_LEFT = 1 << 13,
+ META_MENU_OP_MOVE_RIGHT = 1 << 14,
+ META_MENU_OP_MOVE_UP = 1 << 15,
+ META_MENU_OP_MOVE_DOWN = 1 << 16,
+ META_MENU_OP_RECOVER = 1 << 17
+} MetaMenuOp;
+
+typedef struct _MetaWindowMenu MetaWindowMenu;
+
+typedef void (* MetaWindowMenuFunc) (MetaWindowMenu *menu,
+ Display *xdisplay,
+ Window client_xwindow,
+ guint32 timestamp,
+ MetaMenuOp op,
+ int workspace,
+ gpointer data);
+
+/* when changing this enum, there are various switch statements
+ * you have to update
+ */
+typedef enum
+{
+ META_GRAB_OP_NONE,
+
+ /* Mouse ops */
+ META_GRAB_OP_MOVING,
+ META_GRAB_OP_RESIZING_SE,
+ META_GRAB_OP_RESIZING_S,
+ META_GRAB_OP_RESIZING_SW,
+ META_GRAB_OP_RESIZING_N,
+ META_GRAB_OP_RESIZING_NE,
+ META_GRAB_OP_RESIZING_NW,
+ META_GRAB_OP_RESIZING_W,
+ META_GRAB_OP_RESIZING_E,
+
+ /* Keyboard ops */
+ META_GRAB_OP_KEYBOARD_MOVING,
+ META_GRAB_OP_KEYBOARD_RESIZING_UNKNOWN,
+ META_GRAB_OP_KEYBOARD_RESIZING_S,
+ META_GRAB_OP_KEYBOARD_RESIZING_N,
+ META_GRAB_OP_KEYBOARD_RESIZING_W,
+ META_GRAB_OP_KEYBOARD_RESIZING_E,
+ META_GRAB_OP_KEYBOARD_RESIZING_SE,
+ META_GRAB_OP_KEYBOARD_RESIZING_NE,
+ META_GRAB_OP_KEYBOARD_RESIZING_SW,
+ META_GRAB_OP_KEYBOARD_RESIZING_NW,
+
+ /* Alt+Tab */
+ META_GRAB_OP_KEYBOARD_TABBING_NORMAL,
+ META_GRAB_OP_KEYBOARD_TABBING_DOCK,
+
+ /* Alt+Esc */
+ META_GRAB_OP_KEYBOARD_ESCAPING_NORMAL,
+ META_GRAB_OP_KEYBOARD_ESCAPING_DOCK,
+
+ META_GRAB_OP_KEYBOARD_ESCAPING_GROUP,
+
+ /* Alt+F6 */
+ META_GRAB_OP_KEYBOARD_TABBING_GROUP,
+
+ META_GRAB_OP_KEYBOARD_WORKSPACE_SWITCHING,
+
+ /* Frame button ops */
+ META_GRAB_OP_CLICKING_MINIMIZE,
+ META_GRAB_OP_CLICKING_MAXIMIZE,
+ META_GRAB_OP_CLICKING_UNMAXIMIZE,
+ META_GRAB_OP_CLICKING_DELETE,
+ META_GRAB_OP_CLICKING_MENU,
+ META_GRAB_OP_CLICKING_SHADE,
+ META_GRAB_OP_CLICKING_UNSHADE,
+ META_GRAB_OP_CLICKING_ABOVE,
+ META_GRAB_OP_CLICKING_UNABOVE,
+ META_GRAB_OP_CLICKING_STICK,
+ META_GRAB_OP_CLICKING_UNSTICK
+} MetaGrabOp;
+
+typedef enum
+{
+ META_CURSOR_DEFAULT,
+ META_CURSOR_NORTH_RESIZE,
+ META_CURSOR_SOUTH_RESIZE,
+ META_CURSOR_WEST_RESIZE,
+ META_CURSOR_EAST_RESIZE,
+ META_CURSOR_SE_RESIZE,
+ META_CURSOR_SW_RESIZE,
+ META_CURSOR_NE_RESIZE,
+ META_CURSOR_NW_RESIZE,
+ META_CURSOR_MOVE_OR_RESIZE_WINDOW,
+ META_CURSOR_BUSY
+
+} MetaCursor;
+
+typedef enum
+{
+ META_FOCUS_MODE_CLICK,
+ META_FOCUS_MODE_SLOPPY,
+ META_FOCUS_MODE_MOUSE
+} MetaFocusMode;
+
+typedef enum
+{
+ META_FOCUS_NEW_WINDOWS_SMART,
+ META_FOCUS_NEW_WINDOWS_STRICT
+} MetaFocusNewWindows;
+
+typedef enum
+{
+ META_ACTION_TITLEBAR_TOGGLE_SHADE,
+ META_ACTION_TITLEBAR_TOGGLE_MAXIMIZE,
+ META_ACTION_TITLEBAR_TOGGLE_MAXIMIZE_HORIZONTALLY,
+ META_ACTION_TITLEBAR_TOGGLE_MAXIMIZE_VERTICALLY,
+ META_ACTION_TITLEBAR_MINIMIZE,
+ META_ACTION_TITLEBAR_NONE,
+ META_ACTION_TITLEBAR_LOWER,
+ META_ACTION_TITLEBAR_MENU,
+ META_ACTION_TITLEBAR_LAST
+} MetaActionTitlebar;
+
+typedef enum
+{
+ META_FRAME_TYPE_NORMAL,
+ META_FRAME_TYPE_DIALOG,
+ META_FRAME_TYPE_MODAL_DIALOG,
+ META_FRAME_TYPE_UTILITY,
+ META_FRAME_TYPE_MENU,
+ META_FRAME_TYPE_BORDER,
+ META_FRAME_TYPE_LAST
+} MetaFrameType;
+
+typedef enum
+{
+ /* Create gratuitous divergence from regular
+ * X mod bits, to be sure we find bugs
+ */
+ META_VIRTUAL_SHIFT_MASK = 1 << 5,
+ META_VIRTUAL_CONTROL_MASK = 1 << 6,
+ META_VIRTUAL_ALT_MASK = 1 << 7,
+ META_VIRTUAL_META_MASK = 1 << 8,
+ META_VIRTUAL_SUPER_MASK = 1 << 9,
+ META_VIRTUAL_HYPER_MASK = 1 << 10,
+ META_VIRTUAL_MOD2_MASK = 1 << 11,
+ META_VIRTUAL_MOD3_MASK = 1 << 12,
+ META_VIRTUAL_MOD4_MASK = 1 << 13,
+ META_VIRTUAL_MOD5_MASK = 1 << 14
+} MetaVirtualModifier;
+
+/* Relative directions or sides seem to come up all over the place... */
+/* FIXME: Replace
+ * screen.[ch]:MetaScreenDirection,
+ * workspace.[ch]:MetaMotionDirection,
+ * with the use of MetaDirection.
+ */
+typedef enum
+{
+ META_DIRECTION_LEFT = 1 << 0,
+ META_DIRECTION_RIGHT = 1 << 1,
+ META_DIRECTION_TOP = 1 << 2,
+ META_DIRECTION_BOTTOM = 1 << 3,
+
+ /* Some aliases for making code more readable for various circumstances. */
+ META_DIRECTION_UP = META_DIRECTION_TOP,
+ META_DIRECTION_DOWN = META_DIRECTION_BOTTOM,
+
+ /* A few more definitions using aliases */
+ META_DIRECTION_HORIZONTAL = META_DIRECTION_LEFT | META_DIRECTION_RIGHT,
+ META_DIRECTION_VERTICAL = META_DIRECTION_UP | META_DIRECTION_DOWN,
+} MetaDirection;
+
+/* Sometimes we want to talk about sides instead of directions; note
+ * that the values must be as follows or meta_window_update_struts()
+ * won't work. Using these values also is a safety blanket since
+ * MetaDirection used to be used as a side.
+ */
+typedef enum
+{
+ META_SIDE_LEFT = META_DIRECTION_LEFT,
+ META_SIDE_RIGHT = META_DIRECTION_RIGHT,
+ META_SIDE_TOP = META_DIRECTION_TOP,
+ META_SIDE_BOTTOM = META_DIRECTION_BOTTOM
+} MetaSide;
+
+/* Function a window button can have. Note, you can't add stuff here
+ * without extending the theme format to draw a new function and
+ * breaking all existing themes.
+ */
+typedef enum
+{
+ META_BUTTON_FUNCTION_MENU,
+ META_BUTTON_FUNCTION_MINIMIZE,
+ META_BUTTON_FUNCTION_MAXIMIZE,
+ META_BUTTON_FUNCTION_CLOSE,
+ META_BUTTON_FUNCTION_SHADE,
+ META_BUTTON_FUNCTION_ABOVE,
+ META_BUTTON_FUNCTION_STICK,
+ META_BUTTON_FUNCTION_UNSHADE,
+ META_BUTTON_FUNCTION_UNABOVE,
+ META_BUTTON_FUNCTION_UNSTICK,
+ META_BUTTON_FUNCTION_LAST
+} MetaButtonFunction;
+
+#define MAX_BUTTONS_PER_CORNER META_BUTTON_FUNCTION_LAST
+
+typedef struct _MetaButtonLayout MetaButtonLayout;
+struct _MetaButtonLayout
+{
+ /* buttons in the group on the left side */
+ MetaButtonFunction left_buttons[MAX_BUTTONS_PER_CORNER];
+ gboolean left_buttons_has_spacer[MAX_BUTTONS_PER_CORNER];
+
+ /* buttons in the group on the right side */
+ MetaButtonFunction right_buttons[MAX_BUTTONS_PER_CORNER];
+ gboolean right_buttons_has_spacer[MAX_BUTTONS_PER_CORNER];
+};
+
+/* should investigate changing these to whatever most apps use */
+#define META_ICON_WIDTH 32
+#define META_ICON_HEIGHT 32
+#define META_MINI_ICON_WIDTH 16
+#define META_MINI_ICON_HEIGHT 16
+
+#define META_DEFAULT_ICON_NAME "window"
+
+#define META_PRIORITY_PREFS_NOTIFY (G_PRIORITY_DEFAULT_IDLE + 10)
+#define META_PRIORITY_WORK_AREA_HINT (G_PRIORITY_DEFAULT_IDLE + 15)
+
+#define POINT_IN_RECT(xcoord, ycoord, rect) \
+ ((xcoord) >= (rect).x && \
+ (xcoord) < ((rect).x + (rect).width) && \
+ (ycoord) >= (rect).y && \
+ (ycoord) < ((rect).y + (rect).height))
+
+#endif
diff --git a/src/include/compositor.h b/src/include/compositor.h
new file mode 100644
index 00000000..a7f9bf1f
--- /dev/null
+++ b/src/include/compositor.h
@@ -0,0 +1,76 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2008 Iain Holmes
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_COMPOSITOR_H
+#define META_COMPOSITOR_H
+
+#include <glib.h>
+#include <X11/Xlib.h>
+
+#include "types.h"
+#include "boxes.h"
+
+MetaCompositor *meta_compositor_new (MetaDisplay *display);
+void meta_compositor_destroy (MetaCompositor *compositor);
+
+void meta_compositor_manage_screen (MetaCompositor *compositor,
+ MetaScreen *screen);
+void meta_compositor_unmanage_screen (MetaCompositor *compositor,
+ MetaScreen *screen);
+
+void meta_compositor_add_window (MetaCompositor *compositor,
+ MetaWindow *window,
+ Window xwindow,
+ XWindowAttributes *attrs);
+void meta_compositor_remove_window (MetaCompositor *compositor,
+ Window xwindow);
+
+void meta_compositor_set_updates (MetaCompositor *compositor,
+ MetaWindow *window,
+ gboolean updates);
+
+void meta_compositor_process_event (MetaCompositor *compositor,
+ XEvent *event,
+ MetaWindow *window);
+Pixmap meta_compositor_get_window_pixmap (MetaCompositor *compositor,
+ MetaWindow *window);
+void meta_compositor_set_active_window (MetaCompositor *compositor,
+ MetaScreen *screen,
+ MetaWindow *window);
+
+void meta_compositor_begin_move (MetaCompositor *compositor,
+ MetaWindow *window,
+ MetaRectangle *initial,
+ int grab_x, int grab_y);
+void meta_compositor_update_move (MetaCompositor *compositor,
+ MetaWindow *window,
+ int x, int y);
+void meta_compositor_end_move (MetaCompositor *compositor,
+ MetaWindow *window);
+void meta_compositor_free_window (MetaCompositor *compositor,
+ MetaWindow *window);
+
+#endif
+
+
+
+
+
diff --git a/src/include/core.h b/src/include/core.h
new file mode 100644
index 00000000..ded94c4e
--- /dev/null
+++ b/src/include/core.h
@@ -0,0 +1,208 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco interface used by GTK+ UI to talk to core */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_CORE_H
+#define META_CORE_H
+
+/* Don't include core headers here */
+#include <gdk/gdkx.h>
+#include "common.h"
+
+typedef enum
+{
+ META_CORE_GET_END = 0,
+ META_CORE_WINDOW_HAS_FRAME,
+ META_CORE_GET_CLIENT_WIDTH,
+ META_CORE_GET_CLIENT_HEIGHT,
+ META_CORE_IS_TITLEBAR_ONSCREEN,
+ META_CORE_GET_CLIENT_XWINDOW,
+ META_CORE_GET_FRAME_FLAGS,
+ META_CORE_GET_FRAME_TYPE,
+ META_CORE_GET_MINI_ICON,
+ META_CORE_GET_ICON,
+ META_CORE_GET_X,
+ META_CORE_GET_Y,
+ META_CORE_GET_FRAME_WORKSPACE,
+ META_CORE_GET_FRAME_X,
+ META_CORE_GET_FRAME_Y,
+ META_CORE_GET_FRAME_WIDTH,
+ META_CORE_GET_FRAME_HEIGHT,
+ META_CORE_GET_SCREEN_WIDTH,
+ META_CORE_GET_SCREEN_HEIGHT,
+} MetaCoreGetType;
+
+/* General information function about the given window. Pass in a sequence of
+ * pairs of MetaCoreGetTypes and pointers to variables; the variables will be
+ * filled with the requested values. End the list with META_CORE_GET_END.
+ * For example:
+ *
+ * meta_core_get (my_display, my_window,
+ * META_CORE_GET_X, &x,
+ * META_CORE_GET_Y, &y,
+ * META_CORE_GET_END);
+ *
+ * If the window doesn't have a frame, this will raise a meta_bug. To suppress
+ * this behaviour, ask META_CORE_WINDOW_HAS_FRAME as the *first* question in
+ * the list. If the window has no frame, the answer to this question will be
+ * False, and anything else you asked will be undefined. Otherwise, the answer
+ * will be True. The answer will necessarily be True if you ask the question
+ * in any other position. The positions of all other questions don't matter.
+ *
+ * The reason for this function is that some parts of the program don't know
+ * about MetaWindows. But they *can* see core.h. So we used to have a whole
+ * load of functions which took a display and an X window, looked up the
+ * relevant MetaWindow, and returned information about it. The trouble with
+ * that is that looking up the MetaWindow is a nontrivial operation, and
+ * consolidating the calls in this way makes (for example) frame exposes
+ * 33% faster, according to valgrind.
+ *
+ * This function would perhaps be slightly better if the questions were
+ * represented by pointers, perhaps gchar*s, because then we could take
+ * advantage of gcc's automatic sentinel checking. On the other hand, this
+ * immediately suggests string comparison, and that's slow.
+ *
+ * Another possible improvement is that core.h still has a bunch of
+ * functions which can't be described by the formula "give a display and
+ * an X window, get a single value" (meta_core_user_move, for example), but
+ * which could theoretically be handled by this function if we relaxed the
+ * requirement that all questions should have exactly one argument.
+ */
+void meta_core_get (Display *xdisplay,
+ Window window,
+ ...);
+
+void meta_core_queue_frame_resize (Display *xdisplay,
+ Window frame_xwindow);
+
+/* Move as a result of user operation */
+void meta_core_user_move (Display *xdisplay,
+ Window frame_xwindow,
+ int x,
+ int y);
+void meta_core_user_resize (Display *xdisplay,
+ Window frame_xwindow,
+ int gravity,
+ int width,
+ int height);
+
+void meta_core_user_raise (Display *xdisplay,
+ Window frame_xwindow);
+void meta_core_user_lower_and_unfocus (Display *xdisplay,
+ Window frame_xwindow,
+ guint32 timestamp);
+
+void meta_core_user_focus (Display *xdisplay,
+ Window frame_xwindow,
+ guint32 timestamp);
+
+void meta_core_minimize (Display *xdisplay,
+ Window frame_xwindow);
+void meta_core_toggle_maximize (Display *xdisplay,
+ Window frame_xwindow);
+void meta_core_toggle_maximize_horizontally (Display *xdisplay,
+ Window frame_xwindow);
+void meta_core_toggle_maximize_vertically (Display *xdisplay,
+ Window frame_xwindow);
+void meta_core_unmaximize (Display *xdisplay,
+ Window frame_xwindow);
+void meta_core_maximize (Display *xdisplay,
+ Window frame_xwindow);
+void meta_core_delete (Display *xdisplay,
+ Window frame_xwindow,
+ guint32 timestamp);
+void meta_core_unshade (Display *xdisplay,
+ Window frame_xwindow,
+ guint32 timestamp);
+void meta_core_shade (Display *xdisplay,
+ Window frame_xwindow,
+ guint32 timestamp);
+void meta_core_unstick (Display *xdisplay,
+ Window frame_xwindow);
+void meta_core_stick (Display *xdisplay,
+ Window frame_xwindow);
+void meta_core_unmake_above (Display *xdisplay,
+ Window frame_xwindow);
+void meta_core_make_above (Display *xdisplay,
+ Window frame_xwindow);
+void meta_core_change_workspace (Display *xdisplay,
+ Window frame_xwindow,
+ int new_workspace);
+
+int meta_core_get_num_workspaces (Screen *xscreen);
+int meta_core_get_active_workspace (Screen *xscreen);
+int meta_core_get_frame_workspace (Display *xdisplay,
+ Window frame_xwindow);
+const char* meta_core_get_workspace_name_with_index (Display *xdisplay,
+ Window xroot,
+ int index);
+
+void meta_core_show_window_menu (Display *xdisplay,
+ Window frame_xwindow,
+ int root_x,
+ int root_y,
+ int button,
+ guint32 timestamp);
+
+void meta_core_get_menu_accelerator (MetaMenuOp menu_op,
+ int workspace,
+ unsigned int *keysym,
+ MetaVirtualModifier *modifiers);
+
+gboolean meta_core_begin_grab_op (Display *xdisplay,
+ Window frame_xwindow,
+ MetaGrabOp op,
+ gboolean pointer_already_grabbed,
+ gboolean frame_action,
+ int button,
+ gulong modmask,
+ guint32 timestamp,
+ int root_x,
+ int root_y);
+void meta_core_end_grab_op (Display *xdisplay,
+ guint32 timestamp);
+MetaGrabOp meta_core_get_grab_op (Display *xdisplay);
+Window meta_core_get_grab_frame (Display *xdisplay);
+int meta_core_get_grab_button (Display *xdisplay);
+
+
+void meta_core_grab_buttons (Display *xdisplay,
+ Window frame_xwindow);
+
+void meta_core_set_screen_cursor (Display *xdisplay,
+ Window frame_on_screen,
+ MetaCursor cursor);
+
+/* Used because we ignore EnterNotify when a window is unmapped that
+ * really shouldn't cause focus changes, by comparing the event serial
+ * of the EnterNotify and the UnmapNotify.
+ */
+void meta_core_increment_event_serial (Display *display);
+
+void meta_invalidate_default_icons (void);
+
+#endif
+
+
+
+
diff --git a/src/include/display.h b/src/include/display.h
new file mode 100644
index 00000000..53dd9d75
--- /dev/null
+++ b/src/include/display.h
@@ -0,0 +1,48 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2008 Iain Holmes
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_DISPLAY_H
+#define META_DISPLAY_H
+
+#include <glib.h>
+#include <X11/Xlib.h>
+
+#include "types.h"
+
+#define meta_XFree(p) do { if ((p)) XFree ((p)); } while (0)
+
+void meta_display_get_compositor_version (MetaDisplay *display,
+ int *major,
+ int *minor);
+Display *meta_display_get_xdisplay (MetaDisplay *display);
+MetaCompositor *meta_display_get_compositor (MetaDisplay *display);
+GSList *meta_display_get_screens (MetaDisplay *display);
+
+gboolean meta_display_has_shape (MetaDisplay *display);
+
+MetaScreen *meta_display_screen_for_root (MetaDisplay *display,
+ Window xroot);
+MetaWindow *meta_display_get_focus_window (MetaDisplay *display);
+
+int meta_display_get_damage_event_base (MetaDisplay *display);
+int meta_display_get_shape_event_base (MetaDisplay *display);
+
+#endif
diff --git a/src/include/errors.h b/src/include/errors.h
new file mode 100644
index 00000000..d3fa5a96
--- /dev/null
+++ b/src/include/errors.h
@@ -0,0 +1,51 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco X error handling */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_ERRORS_H
+#define META_ERRORS_H
+
+#include <X11/Xlib.h>
+
+#include "util.h"
+#include "display.h"
+
+typedef void (* ErrorHandler) (Display *dpy,
+ XErrorEvent *error,
+ gpointer data);
+
+void meta_errors_init (void);
+void meta_errors_register_foreign_display (Display *foreign_dpy,
+ ErrorHandler handler,
+ gpointer data);
+
+void meta_error_trap_push (MetaDisplay *display);
+void meta_error_trap_pop (MetaDisplay *display,
+ gboolean last_request_was_roundtrip);
+
+void meta_error_trap_push_with_return (MetaDisplay *display);
+/* returns X error code, or 0 for no error */
+int meta_error_trap_pop_with_return (MetaDisplay *display,
+ gboolean last_request_was_roundtrip);
+
+
+#endif
diff --git a/src/include/frame.h b/src/include/frame.h
new file mode 100644
index 00000000..eeb57263
--- /dev/null
+++ b/src/include/frame.h
@@ -0,0 +1,31 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2008 Iain Holmes
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_FRAME_H
+#define META_FRAME_H
+
+#include <X11/Xlib.h>
+
+#include "types.h"
+
+Window meta_frame_get_xwindow (MetaFrame *frame);
+
+#endif
diff --git a/src/include/main.h b/src/include/main.h
new file mode 100644
index 00000000..d5789696
--- /dev/null
+++ b/src/include/main.h
@@ -0,0 +1,43 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco main */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_MAIN_H
+#define META_MAIN_H
+
+#include <glib.h>
+
+typedef enum
+{
+ META_EXIT_SUCCESS,
+ META_EXIT_ERROR
+} MetaExitCode;
+
+/* exit immediately */
+void meta_exit (MetaExitCode code);
+
+/* g_main_loop_quit() then fall out of main() */
+void meta_quit (MetaExitCode code);
+
+void meta_restart (void);
+
+#endif
diff --git a/src/include/prefs.h b/src/include/prefs.h
new file mode 100644
index 00000000..39597f9f
--- /dev/null
+++ b/src/include/prefs.h
@@ -0,0 +1,233 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco preferences */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_PREFS_H
+#define META_PREFS_H
+
+/* This header is a "common" one between the UI and core side */
+#include "common.h"
+#include <pango/pango-font.h>
+
+typedef enum
+{
+ META_PREF_MOUSE_BUTTON_MODS,
+ META_PREF_FOCUS_MODE,
+ META_PREF_FOCUS_NEW_WINDOWS,
+ META_PREF_RAISE_ON_CLICK,
+ META_PREF_ACTION_DOUBLE_CLICK_TITLEBAR,
+ META_PREF_ACTION_MIDDLE_CLICK_TITLEBAR,
+ META_PREF_ACTION_RIGHT_CLICK_TITLEBAR,
+ META_PREF_AUTO_RAISE,
+ META_PREF_AUTO_RAISE_DELAY,
+ META_PREF_THEME,
+ META_PREF_TITLEBAR_FONT,
+ META_PREF_NUM_WORKSPACES,
+ META_PREF_APPLICATION_BASED,
+ META_PREF_KEYBINDINGS,
+ META_PREF_DISABLE_WORKAROUNDS,
+ META_PREF_COMMANDS,
+ META_PREF_TERMINAL_COMMAND,
+ META_PREF_BUTTON_LAYOUT,
+ META_PREF_WORKSPACE_NAMES,
+ META_PREF_VISUAL_BELL,
+ META_PREF_AUDIBLE_BELL,
+ META_PREF_VISUAL_BELL_TYPE,
+ META_PREF_REDUCED_RESOURCES,
+ META_PREF_MATE_ACCESSIBILITY,
+ META_PREF_MATE_ANIMATIONS,
+ META_PREF_CURSOR_THEME,
+ META_PREF_CURSOR_SIZE,
+ META_PREF_COMPOSITING_MANAGER,
+ META_PREF_RESIZE_WITH_RIGHT_BUTTON,
+ META_PREF_FORCE_FULLSCREEN
+} MetaPreference;
+
+typedef void (* MetaPrefsChangedFunc) (MetaPreference pref,
+ gpointer data);
+
+void meta_prefs_add_listener (MetaPrefsChangedFunc func,
+ gpointer data);
+void meta_prefs_remove_listener (MetaPrefsChangedFunc func,
+ gpointer data);
+
+void meta_prefs_init (void);
+const char* meta_preference_to_string (MetaPreference pref);
+
+MetaVirtualModifier meta_prefs_get_mouse_button_mods (void);
+guint meta_prefs_get_mouse_button_resize (void);
+guint meta_prefs_get_mouse_button_menu (void);
+MetaFocusMode meta_prefs_get_focus_mode (void);
+MetaFocusNewWindows meta_prefs_get_focus_new_windows (void);
+gboolean meta_prefs_get_raise_on_click (void);
+const char* meta_prefs_get_theme (void);
+/* returns NULL if GTK default should be used */
+const PangoFontDescription* meta_prefs_get_titlebar_font (void);
+int meta_prefs_get_num_workspaces (void);
+gboolean meta_prefs_get_application_based (void);
+gboolean meta_prefs_get_disable_workarounds (void);
+gboolean meta_prefs_get_auto_raise (void);
+int meta_prefs_get_auto_raise_delay (void);
+gboolean meta_prefs_get_reduced_resources (void);
+gboolean meta_prefs_get_mate_accessibility (void);
+gboolean meta_prefs_get_mate_animations (void);
+
+const char* meta_prefs_get_command (int i);
+
+char* meta_prefs_get_mateconf_key_for_command (int i);
+
+const char* meta_prefs_get_terminal_command (void);
+const char* meta_prefs_get_mateconf_key_for_terminal_command (void);
+
+void meta_prefs_get_button_layout (MetaButtonLayout *button_layout);
+
+/* Double, right, middle click can be configured to any titlebar meta-action */
+MetaActionTitlebar meta_prefs_get_action_double_click_titlebar (void);
+MetaActionTitlebar meta_prefs_get_action_middle_click_titlebar (void);
+MetaActionTitlebar meta_prefs_get_action_right_click_titlebar (void);
+
+void meta_prefs_set_num_workspaces (int n_workspaces);
+
+const char* meta_prefs_get_workspace_name (int i);
+void meta_prefs_change_workspace_name (int i,
+ const char *name);
+
+const char* meta_prefs_get_cursor_theme (void);
+int meta_prefs_get_cursor_size (void);
+gboolean meta_prefs_get_compositing_manager (void);
+gboolean meta_prefs_get_force_fullscreen (void);
+
+/**
+ * Sets whether the compositor is turned on.
+ *
+ * \param whether TRUE to turn on, FALSE to turn off
+ */
+void meta_prefs_set_compositing_manager (gboolean whether);
+
+void meta_prefs_set_force_fullscreen (gboolean whether);
+
+/* XXX FIXME This should be x-macroed, but isn't yet because it would be
+ * difficult (or perhaps impossible) to add the suffixes using the current
+ * system. It needs some more thought, perhaps after the current system
+ * evolves a little.
+ */
+typedef enum _MetaKeyBindingAction
+{
+ META_KEYBINDING_ACTION_NONE = -1,
+ META_KEYBINDING_ACTION_WORKSPACE_1,
+ META_KEYBINDING_ACTION_WORKSPACE_2,
+ META_KEYBINDING_ACTION_WORKSPACE_3,
+ META_KEYBINDING_ACTION_WORKSPACE_4,
+ META_KEYBINDING_ACTION_WORKSPACE_5,
+ META_KEYBINDING_ACTION_WORKSPACE_6,
+ META_KEYBINDING_ACTION_WORKSPACE_7,
+ META_KEYBINDING_ACTION_WORKSPACE_8,
+ META_KEYBINDING_ACTION_WORKSPACE_9,
+ META_KEYBINDING_ACTION_WORKSPACE_10,
+ META_KEYBINDING_ACTION_WORKSPACE_11,
+ META_KEYBINDING_ACTION_WORKSPACE_12,
+ META_KEYBINDING_ACTION_WORKSPACE_LEFT,
+ META_KEYBINDING_ACTION_WORKSPACE_RIGHT,
+ META_KEYBINDING_ACTION_WORKSPACE_UP,
+ META_KEYBINDING_ACTION_WORKSPACE_DOWN,
+ META_KEYBINDING_ACTION_SWITCH_GROUP,
+ META_KEYBINDING_ACTION_SWITCH_GROUP_BACKWARD,
+ META_KEYBINDING_ACTION_SWITCH_WINDOWS,
+ META_KEYBINDING_ACTION_SWITCH_WINDOWS_BACKWARD,
+ META_KEYBINDING_ACTION_SWITCH_PANELS,
+ META_KEYBINDING_ACTION_SWITCH_PANELS_BACKWARD,
+ META_KEYBINDING_ACTION_CYCLE_GROUP,
+ META_KEYBINDING_ACTION_CYCLE_GROUP_BACKWARD,
+ META_KEYBINDING_ACTION_CYCLE_WINDOWS,
+ META_KEYBINDING_ACTION_CYCLE_WINDOWS_BACKWARD,
+ META_KEYBINDING_ACTION_CYCLE_PANELS,
+ META_KEYBINDING_ACTION_CYCLE_PANELS_BACKWARD,
+ META_KEYBINDING_ACTION_SHOW_DESKTOP,
+ META_KEYBINDING_ACTION_PANEL_MAIN_MENU,
+ META_KEYBINDING_ACTION_PANEL_RUN_DIALOG,
+ META_KEYBINDING_ACTION_COMMAND_1,
+ META_KEYBINDING_ACTION_COMMAND_2,
+ META_KEYBINDING_ACTION_COMMAND_3,
+ META_KEYBINDING_ACTION_COMMAND_4,
+ META_KEYBINDING_ACTION_COMMAND_5,
+ META_KEYBINDING_ACTION_COMMAND_6,
+ META_KEYBINDING_ACTION_COMMAND_7,
+ META_KEYBINDING_ACTION_COMMAND_8,
+ META_KEYBINDING_ACTION_COMMAND_9,
+ META_KEYBINDING_ACTION_COMMAND_10,
+ META_KEYBINDING_ACTION_COMMAND_11,
+ META_KEYBINDING_ACTION_COMMAND_12
+} MetaKeyBindingAction;
+
+typedef struct
+{
+ unsigned int keysym;
+ unsigned int keycode;
+ MetaVirtualModifier modifiers;
+} MetaKeyCombo;
+
+typedef struct
+{
+ const char *name;
+ /**
+ * A list of MetaKeyCombos. Each of them is bound to
+ * this keypref. If one has keysym==modifiers==0, it is
+ * ignored. For historical reasons, the first entry is
+ * governed by the pref FOO and the remainder are
+ * governed by the pref FOO_list.
+ */
+ GSList *bindings;
+
+ /** for keybindings that can have shift or not like Alt+Tab */
+ gboolean add_shift:1;
+
+ /** for keybindings that apply only to a window */
+ gboolean per_window:1;
+} MetaKeyPref;
+
+void meta_prefs_get_key_bindings (const MetaKeyPref **bindings,
+ int *n_bindings);
+
+MetaKeyBindingAction meta_prefs_get_keybinding_action (const char *name);
+
+void meta_prefs_get_window_binding (const char *name,
+ unsigned int *keysym,
+ MetaVirtualModifier *modifiers);
+
+typedef enum
+{
+ META_VISUAL_BELL_INVALID = 0,
+ META_VISUAL_BELL_FULLSCREEN_FLASH,
+ META_VISUAL_BELL_FRAME_FLASH
+
+} MetaVisualBellType;
+
+gboolean meta_prefs_get_visual_bell (void);
+gboolean meta_prefs_bell_is_audible (void);
+MetaVisualBellType meta_prefs_get_visual_bell_type (void);
+
+#endif
+
+
+
+
diff --git a/src/include/resizepopup.h b/src/include/resizepopup.h
new file mode 100644
index 00000000..4e03d5d3
--- /dev/null
+++ b/src/include/resizepopup.h
@@ -0,0 +1,47 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco resizing-terminal-window feedback */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_RESIZEPOPUP_H
+#define META_RESIZEPOPUP_H
+
+/* Don't include gtk.h or gdk.h here */
+#include "boxes.h"
+#include "common.h"
+#include <X11/Xlib.h>
+#include <glib.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+
+MetaResizePopup* meta_ui_resize_popup_new (Display *display,
+ int screen_number);
+void meta_ui_resize_popup_free (MetaResizePopup *popup);
+void meta_ui_resize_popup_set (MetaResizePopup *popup,
+ MetaRectangle rect,
+ int base_width,
+ int base_height,
+ int width_inc,
+ int height_inc);
+void meta_ui_resize_popup_set_showing (MetaResizePopup *popup,
+ gboolean showing);
+
+#endif
+
diff --git a/src/include/screen.h b/src/include/screen.h
new file mode 100644
index 00000000..9f842317
--- /dev/null
+++ b/src/include/screen.h
@@ -0,0 +1,48 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2008 Iain Holmes
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_SCREEN_H
+#define META_SCREEN_H
+
+#include <X11/Xlib.h>
+#include <glib.h>
+#include "types.h"
+
+int meta_screen_get_screen_number (MetaScreen *screen);
+MetaDisplay *meta_screen_get_display (MetaScreen *screen);
+
+Window meta_screen_get_xroot (MetaScreen *screen);
+void meta_screen_get_size (MetaScreen *screen,
+ int *width,
+ int *height);
+
+gpointer meta_screen_get_compositor_data (MetaScreen *screen);
+void meta_screen_set_compositor_data (MetaScreen *screen,
+ gpointer info);
+
+MetaScreen *meta_screen_for_x_screen (Screen *xscreen);
+
+#ifdef HAVE_COMPOSITE_EXTENSIONS
+void meta_screen_set_cm_selection (MetaScreen *screen);
+void meta_screen_unset_cm_selection (MetaScreen *screen);
+#endif
+
+#endif
diff --git a/src/include/tabpopup.h b/src/include/tabpopup.h
new file mode 100644
index 00000000..2bee506e
--- /dev/null
+++ b/src/include/tabpopup.h
@@ -0,0 +1,67 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco tab popup window */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_TABPOPUP_H
+#define META_TABPOPUP_H
+
+/* Don't include gtk.h or gdk.h here */
+#include "common.h"
+#include "boxes.h"
+#include <X11/Xlib.h>
+#include <glib.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+
+typedef struct _MetaTabEntry MetaTabEntry;
+typedef struct _MetaTabPopup MetaTabPopup;
+typedef void *MetaTabEntryKey;
+
+struct _MetaTabEntry
+{
+ MetaTabEntryKey key;
+ const char *title;
+ GdkPixbuf *icon;
+ MetaRectangle rect;
+ MetaRectangle inner_rect;
+ guint blank : 1;
+ guint hidden : 1;
+ guint demands_attention : 1;
+};
+
+MetaTabPopup* meta_ui_tab_popup_new (const MetaTabEntry *entries,
+ int screen_number,
+ int entry_count,
+ int width,
+ gboolean outline);
+void meta_ui_tab_popup_free (MetaTabPopup *popup);
+void meta_ui_tab_popup_set_showing (MetaTabPopup *popup,
+ gboolean showing);
+void meta_ui_tab_popup_forward (MetaTabPopup *popup);
+void meta_ui_tab_popup_backward (MetaTabPopup *popup);
+MetaTabEntryKey meta_ui_tab_popup_get_selected (MetaTabPopup *popup);
+void meta_ui_tab_popup_select (MetaTabPopup *popup,
+ MetaTabEntryKey key);
+
+
+#endif
+
diff --git a/src/include/types.h b/src/include/types.h
new file mode 100644
index 00000000..045b102f
--- /dev/null
+++ b/src/include/types.h
@@ -0,0 +1,31 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2008 Iain Holmes
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_TYPES_H
+#define META_TYPES_H
+
+typedef struct _MetaCompositor MetaCompositor;
+typedef struct _MetaDisplay MetaDisplay;
+typedef struct _MetaFrame MetaFrame;
+typedef struct _MetaScreen MetaScreen;
+typedef struct _MetaWindow MetaWindow;
+
+#endif
diff --git a/src/include/ui.h b/src/include/ui.h
new file mode 100644
index 00000000..1fce402c
--- /dev/null
+++ b/src/include/ui.h
@@ -0,0 +1,209 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco interface for talking to GTK+ UI module */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_UI_H
+#define META_UI_H
+
+/* Don't include gtk.h or gdk.h here */
+#include "common.h"
+#include <X11/Xlib.h>
+#include <X11/Xutil.h>
+#include <glib.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+
+/* This is between GTK_PRIORITY_RESIZE (+10) and GDK_PRIORITY_REDRAW (+20) */
+#define META_PRIORITY_RESIZE (G_PRIORITY_HIGH_IDLE + 15)
+
+typedef struct _MetaUI MetaUI;
+
+typedef struct _MetaImageWindow MetaImageWindow;
+
+typedef gboolean (* MetaEventFunc) (XEvent *xevent, gpointer data);
+
+typedef enum
+{
+ META_UI_DIRECTION_LTR,
+ META_UI_DIRECTION_RTL
+} MetaUIDirection;
+
+void meta_ui_init (int *argc, char ***argv);
+
+Display* meta_ui_get_display (void);
+
+void meta_ui_add_event_func (Display *xdisplay,
+ MetaEventFunc func,
+ gpointer data);
+void meta_ui_remove_event_func (Display *xdisplay,
+ MetaEventFunc func,
+ gpointer data);
+
+MetaUI* meta_ui_new (Display *xdisplay,
+ Screen *screen);
+void meta_ui_free (MetaUI *ui);
+
+void meta_ui_theme_get_frame_borders (MetaUI *ui,
+ MetaFrameType type,
+ MetaFrameFlags flags,
+ int *top_height,
+ int *bottom_height,
+ int *left_width,
+ int *right_width);
+void meta_ui_get_frame_geometry (MetaUI *ui,
+ Window frame_xwindow,
+ int *top_height, int *bottom_height,
+ int *left_width, int *right_width);
+Window meta_ui_create_frame_window (MetaUI *ui,
+ Display *xdisplay,
+ Visual *xvisual,
+ gint x,
+ gint y,
+ gint width,
+ gint height,
+ gint screen_no);
+void meta_ui_destroy_frame_window (MetaUI *ui,
+ Window xwindow);
+void meta_ui_move_resize_frame (MetaUI *ui,
+ Window frame,
+ int x,
+ int y,
+ int width,
+ int height);
+
+/* GDK insists on tracking map/unmap */
+void meta_ui_map_frame (MetaUI *ui,
+ Window xwindow);
+void meta_ui_unmap_frame (MetaUI *ui,
+ Window xwindow);
+
+void meta_ui_unflicker_frame_bg (MetaUI *ui,
+ Window xwindow,
+ int target_width,
+ int target_height);
+void meta_ui_reset_frame_bg (MetaUI *ui,
+ Window xwindow);
+
+void meta_ui_apply_frame_shape (MetaUI *ui,
+ Window xwindow,
+ int new_window_width,
+ int new_window_height,
+ gboolean window_has_shape);
+
+void meta_ui_queue_frame_draw (MetaUI *ui,
+ Window xwindow);
+
+void meta_ui_set_frame_title (MetaUI *ui,
+ Window xwindow,
+ const char *title);
+
+void meta_ui_repaint_frame (MetaUI *ui,
+ Window xwindow);
+
+MetaWindowMenu* meta_ui_window_menu_new (MetaUI *ui,
+ Window client_xwindow,
+ MetaMenuOp ops,
+ MetaMenuOp insensitive,
+ unsigned long active_workspace,
+ int n_workspaces,
+ MetaWindowMenuFunc func,
+ gpointer data);
+void meta_ui_window_menu_popup (MetaWindowMenu *menu,
+ int root_x,
+ int root_y,
+ int button,
+ guint32 timestamp);
+void meta_ui_window_menu_free (MetaWindowMenu *menu);
+
+
+MetaImageWindow* meta_image_window_new (Display *xdisplay,
+ int screen_number,
+ int max_width,
+ int max_height);
+void meta_image_window_free (MetaImageWindow *iw);
+void meta_image_window_set_showing (MetaImageWindow *iw,
+ gboolean showing);
+void meta_image_window_set (MetaImageWindow *iw,
+ GdkPixbuf *pixbuf,
+ int x,
+ int y);
+
+/* FIXME these lack a display arg */
+GdkPixbuf* meta_gdk_pixbuf_get_from_window (GdkPixbuf *dest,
+ Window xwindow,
+ int src_x,
+ int src_y,
+ int dest_x,
+ int dest_y,
+ int width,
+ int height);
+
+GdkPixbuf* meta_gdk_pixbuf_get_from_pixmap (GdkPixbuf *dest,
+ Pixmap xpixmap,
+ int src_x,
+ int src_y,
+ int dest_x,
+ int dest_y,
+ int width,
+ int height);
+
+/* Used when we have a server grab and draw all over everything,
+ * then we need to handle exposes after doing that, instead of
+ * during it
+ */
+void meta_ui_push_delay_exposes (MetaUI *ui);
+void meta_ui_pop_delay_exposes (MetaUI *ui);
+
+GdkPixbuf* meta_ui_get_default_window_icon (MetaUI *ui);
+GdkPixbuf* meta_ui_get_default_mini_icon (MetaUI *ui);
+
+gboolean meta_ui_window_should_not_cause_focus (Display *xdisplay,
+ Window xwindow);
+
+char* meta_text_property_to_utf8 (Display *xdisplay,
+ const XTextProperty *prop);
+
+void meta_ui_set_current_theme (const char *name,
+ gboolean force_reload);
+gboolean meta_ui_have_a_theme (void);
+
+gboolean meta_ui_parse_accelerator (const char *accel,
+ unsigned int *keysym,
+ unsigned int *keycode,
+ MetaVirtualModifier *mask);
+gboolean meta_ui_parse_modifier (const char *accel,
+ MetaVirtualModifier *mask);
+
+/* Caller responsible for freeing return string of meta_ui_accelerator_name! */
+gchar* meta_ui_accelerator_name (unsigned int keysym,
+ MetaVirtualModifier mask);
+gboolean meta_ui_window_is_widget (MetaUI *ui,
+ Window xwindow);
+
+int meta_ui_get_drag_threshold (MetaUI *ui);
+
+MetaUIDirection meta_ui_get_direction (void);
+
+GdkPixbuf *meta_ui_get_pixbuf_from_pixmap (Pixmap pmap);
+
+#include "tabpopup.h"
+
+#endif
diff --git a/src/include/util.h b/src/include/util.h
new file mode 100644
index 00000000..0607c568
--- /dev/null
+++ b/src/include/util.h
@@ -0,0 +1,136 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco utilities */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_UTIL_H
+#define META_UTIL_H
+
+#include <glib.h>
+#include <glib-object.h>
+
+gboolean meta_is_verbose (void);
+void meta_set_verbose (gboolean setting);
+gboolean meta_is_debugging (void);
+void meta_set_debugging (gboolean setting);
+gboolean meta_is_syncing (void);
+void meta_set_syncing (gboolean setting);
+gboolean meta_get_replace_current_wm (void);
+void meta_set_replace_current_wm (gboolean setting);
+
+void meta_debug_spew_real (const char *format,
+ ...) G_GNUC_PRINTF (1, 2);
+void meta_verbose_real (const char *format,
+ ...) G_GNUC_PRINTF (1, 2);
+
+void meta_bug (const char *format,
+ ...) G_GNUC_PRINTF (1, 2);
+void meta_warning (const char *format,
+ ...) G_GNUC_PRINTF (1, 2);
+void meta_fatal (const char *format,
+ ...) G_GNUC_PRINTF (1, 2);
+
+typedef enum
+{
+ META_DEBUG_FOCUS = 1 << 0,
+ META_DEBUG_WORKAREA = 1 << 1,
+ META_DEBUG_STACK = 1 << 2,
+ META_DEBUG_THEMES = 1 << 3,
+ META_DEBUG_SM = 1 << 4,
+ META_DEBUG_EVENTS = 1 << 5,
+ META_DEBUG_WINDOW_STATE = 1 << 6,
+ META_DEBUG_WINDOW_OPS = 1 << 7,
+ META_DEBUG_GEOMETRY = 1 << 8,
+ META_DEBUG_PLACEMENT = 1 << 9,
+ META_DEBUG_PING = 1 << 10,
+ META_DEBUG_XINERAMA = 1 << 11,
+ META_DEBUG_KEYBINDINGS = 1 << 12,
+ META_DEBUG_SYNC = 1 << 13,
+ META_DEBUG_ERRORS = 1 << 14,
+ META_DEBUG_STARTUP = 1 << 15,
+ META_DEBUG_PREFS = 1 << 16,
+ META_DEBUG_GROUPS = 1 << 17,
+ META_DEBUG_RESIZING = 1 << 18,
+ META_DEBUG_SHAPES = 1 << 19,
+ META_DEBUG_COMPOSITOR = 1 << 20,
+ META_DEBUG_EDGE_RESISTANCE = 1 << 21
+} MetaDebugTopic;
+
+void meta_topic_real (MetaDebugTopic topic,
+ const char *format,
+ ...) G_GNUC_PRINTF (2, 3);
+
+void meta_push_no_msg_prefix (void);
+void meta_pop_no_msg_prefix (void);
+
+gint meta_unsigned_long_equal (gconstpointer v1,
+ gconstpointer v2);
+guint meta_unsigned_long_hash (gconstpointer v);
+
+void meta_print_backtrace (void);
+
+const char* meta_gravity_to_string (int gravity);
+
+#include <libintl.h>
+#define _(x) dgettext (GETTEXT_PACKAGE, x)
+#define N_(x) x
+
+char* meta_g_utf8_strndup (const gchar *src, gsize n);
+
+void meta_free_gslist_and_elements (GSList *list_to_deep_free);
+
+GPid meta_show_dialog (const char *type,
+ const char *title,
+ const char *message,
+ gint timeout,
+ const char *ok_text,
+ const char *cancel_text,
+ const int transient_for,
+ GSList *columns,
+ GSList *entries);
+
+/* To disable verbose mode, we make these functions into no-ops */
+#ifdef WITH_VERBOSE_MODE
+
+#define meta_debug_spew meta_debug_spew_real
+#define meta_verbose meta_verbose_real
+#define meta_topic meta_topic_real
+
+#else
+
+# ifdef G_HAVE_ISO_VARARGS
+# define meta_debug_spew(...)
+# define meta_verbose(...)
+# define meta_topic(...)
+# elif defined(G_HAVE_GNUC_VARARGS)
+# define meta_debug_spew(format...)
+# define meta_verbose(format...)
+# define meta_topic(format...)
+# else
+# error "This compiler does not support varargs macros and thus verbose mode can't be disabled meaningfully"
+# endif
+
+#endif /* !WITH_VERBOSE_MODE */
+
+#endif /* META_UTIL_H */
+
+
diff --git a/src/include/window.h b/src/include/window.h
new file mode 100644
index 00000000..8a338660
--- /dev/null
+++ b/src/include/window.h
@@ -0,0 +1,39 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2008 Iain Holmes
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_WINDOW_H
+#define META_WINDOW_H
+
+#include <glib.h>
+#include <X11/Xlib.h>
+
+#include "boxes.h"
+#include "types.h"
+
+MetaFrame *meta_window_get_frame (MetaWindow *window);
+gboolean meta_window_has_focus (MetaWindow *window);
+gboolean meta_window_is_shaded (MetaWindow *window);
+MetaRectangle *meta_window_get_rect (MetaWindow *window);
+MetaScreen *meta_window_get_screen (MetaWindow *window);
+MetaDisplay *meta_window_get_display (MetaWindow *window);
+Window meta_window_get_xwindow (MetaWindow *window);
+
+#endif
diff --git a/src/include/xprops.h b/src/include/xprops.h
new file mode 100644
index 00000000..58ad22c7
--- /dev/null
+++ b/src/include/xprops.h
@@ -0,0 +1,227 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco X property convenience routines */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_XPROPS_H
+#define META_XPROPS_H
+
+#include <config.h>
+
+#include "display.h"
+#include <X11/Xutil.h>
+
+#ifdef HAVE_XSYNC
+#include <X11/extensions/sync.h>
+#endif
+
+/* Copied from Lesstif by way of GTK. Rudimentary docs can be
+ * found in some Motif reference guides online.
+ */
+typedef struct {
+ unsigned long flags;
+ unsigned long functions;
+ unsigned long decorations;
+ long input_mode;
+ unsigned long status;
+} MotifWmHints, MwmHints;
+
+#define MWM_HINTS_FUNCTIONS (1L << 0)
+#define MWM_HINTS_DECORATIONS (1L << 1)
+#define MWM_HINTS_INPUT_MODE (1L << 2)
+#define MWM_HINTS_STATUS (1L << 3)
+
+#define MWM_FUNC_ALL (1L << 0)
+#define MWM_FUNC_RESIZE (1L << 1)
+#define MWM_FUNC_MOVE (1L << 2)
+#define MWM_FUNC_MINIMIZE (1L << 3)
+#define MWM_FUNC_MAXIMIZE (1L << 4)
+#define MWM_FUNC_CLOSE (1L << 5)
+
+#define MWM_DECOR_ALL (1L << 0)
+#define MWM_DECOR_BORDER (1L << 1)
+#define MWM_DECOR_RESIZEH (1L << 2)
+#define MWM_DECOR_TITLE (1L << 3)
+#define MWM_DECOR_MENU (1L << 4)
+#define MWM_DECOR_MINIMIZE (1L << 5)
+#define MWM_DECOR_MAXIMIZE (1L << 6)
+
+#define MWM_INPUT_MODELESS 0
+#define MWM_INPUT_PRIMARY_APPLICATION_MODAL 1
+#define MWM_INPUT_SYSTEM_MODAL 2
+#define MWM_INPUT_FULL_APPLICATION_MODAL 3
+#define MWM_INPUT_APPLICATION_MODAL MWM_INPUT_PRIMARY_APPLICATION_MODAL
+
+#define MWM_TEAROFF_WINDOW (1L<<0)
+
+/* These all return the memory from Xlib, so require an XFree()
+ * when they return TRUE. They return TRUE on success.
+ */
+gboolean meta_prop_get_atom_list (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ Atom **atoms_p,
+ int *n_atoms_p);
+gboolean meta_prop_get_motif_hints (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ MotifWmHints **hints_p);
+gboolean meta_prop_get_cardinal_list (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ gulong **cardinals_p,
+ int *n_cardinals_p);
+gboolean meta_prop_get_latin1_string (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ char **str_p);
+gboolean meta_prop_get_utf8_string (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ char **str_p);
+gboolean meta_prop_get_utf8_list (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ char ***str_p,
+ int *n_str_p);
+void meta_prop_set_utf8_string_hint
+ (MetaDisplay *display,
+ Window xwindow,
+ Atom atom,
+ const char *val);
+gboolean meta_prop_get_window (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ Window *window_p);
+gboolean meta_prop_get_cardinal (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ gulong *cardinal_p);
+gboolean meta_prop_get_cardinal_with_atom_type (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ Atom prop_type,
+ gulong *cardinal_p);
+gboolean meta_prop_get_text_property (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ char **utf8_str_p);
+
+gboolean meta_prop_get_wm_hints (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ XWMHints **hints_p);
+
+gboolean meta_prop_get_class_hint (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ XClassHint *class_hint);
+
+gboolean meta_prop_get_size_hints (MetaDisplay *display,
+ Window xwindow,
+ Atom xatom,
+ XSizeHints **hints_p,
+ gulong *flags_p);
+
+typedef enum
+{
+ META_PROP_VALUE_INVALID,
+ META_PROP_VALUE_UTF8,
+ META_PROP_VALUE_STRING,
+ META_PROP_VALUE_STRING_AS_UTF8,
+ META_PROP_VALUE_MOTIF_HINTS,
+ META_PROP_VALUE_CARDINAL,
+ META_PROP_VALUE_WINDOW,
+ META_PROP_VALUE_CARDINAL_LIST,
+ META_PROP_VALUE_UTF8_LIST,
+ META_PROP_VALUE_ATOM_LIST,
+ META_PROP_VALUE_TEXT_PROPERTY, /* comes back as UTF-8 string */
+ META_PROP_VALUE_WM_HINTS,
+ META_PROP_VALUE_CLASS_HINT,
+ META_PROP_VALUE_SIZE_HINTS,
+ META_PROP_VALUE_SYNC_COUNTER /* comes back as CARDINAL */
+} MetaPropValueType;
+
+/* used to request/return/store property values */
+typedef struct
+{
+ MetaPropValueType type;
+ Atom atom;
+ Atom required_type; /* autofilled if None */
+
+ union
+ {
+ char *str;
+ MotifWmHints *motif_hints;
+ Window xwindow;
+ gulong cardinal;
+ XWMHints *wm_hints;
+ XClassHint class_hint;
+#ifdef HAVE_XSYNC
+ XSyncCounter xcounter;
+#endif
+
+ struct
+ {
+ XSizeHints *hints;
+ unsigned long flags;
+ } size_hints;
+
+ struct
+ {
+ gulong *cardinals;
+ int n_cardinals;
+ } cardinal_list;
+
+ struct
+ {
+ char **strings;
+ int n_strings;
+ } string_list;
+
+ struct
+ {
+ Atom *atoms;
+ int n_atoms;
+ } atom_list;
+
+ } v;
+
+} MetaPropValue;
+
+/* Each value has type and atom initialized. If there's an error,
+ * or property is unset, type comes back as INVALID;
+ * else type comes back as it originated, and the data
+ * is filled in.
+ */
+void meta_prop_get_values (MetaDisplay *display,
+ Window xwindow,
+ MetaPropValue *values,
+ int n_values);
+
+void meta_prop_free_values (MetaPropValue *values,
+ int n_values);
+
+#endif
+
+
+
+
diff --git a/src/libmarco-private.pc.in b/src/libmarco-private.pc.in
new file mode 100644
index 00000000..8b0a5c83
--- /dev/null
+++ b/src/libmarco-private.pc.in
@@ -0,0 +1,12 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+libmate_serverdir=@libexecdir@
+
+Name: libmarco-private
+Description: Marco internals shared
+Requires: gtk+-2.0
+Version: @VERSION@
+Libs: -L${libdir} -lmarco-private
+Cflags: -I${includedir}/marco-1
diff --git a/src/marco-wm.desktop.in b/src/marco-wm.desktop.in
new file mode 100644
index 00000000..e1e06575
--- /dev/null
+++ b/src/marco-wm.desktop.in
@@ -0,0 +1,20 @@
+[Desktop Entry]
+Type=Application
+_Name=Marco
+Exec=marco
+# name of loadable control center module
+X-MATE-WMSettingsModule=marco
+# name we put on the WM spec check window
+X-MATE-WMName=Marco
+# back compat only
+X-MateWMSettingsLibrary=marco
+X-MATE-Bugzilla-Bugzilla=MATE
+X-MATE-Bugzilla-Product=marco
+X-MATE-Bugzilla-Component=general
+X-MATE-Autostart-Phase=WindowManager
+X-MATE-Provides=windowmanager
+X-MATE-Autostart-Notify=true
+
+[Window Manager]
+SessionManaged=true
+
diff --git a/src/marco.desktop.in b/src/marco.desktop.in
new file mode 100644
index 00000000..4167dadf
--- /dev/null
+++ b/src/marco.desktop.in
@@ -0,0 +1,17 @@
+[Desktop Entry]
+Type=Application
+_Name=Marco
+Exec=marco
+NoDisplay=true
+# name of loadable control center module
+X-MATE-WMSettingsModule=marco
+# name we put on the WM spec check window
+X-MATE-WMName=Marco
+# back compat only
+X-MateWMSettingsLibrary=marco
+X-MATE-Bugzilla-Bugzilla=MATE
+X-MATE-Bugzilla-Product=marco
+X-MATE-Bugzilla-Component=general
+X-MATE-Autostart-Phase=WindowManager
+X-MATE-Provides=windowmanager
+X-MATE-Autostart-Notify=true
diff --git a/src/marco.schemas.in.in b/src/marco.schemas.in.in
new file mode 100644
index 00000000..acd342b4
--- /dev/null
+++ b/src/marco.schemas.in.in
@@ -0,0 +1,573 @@
+<mateconfschemafile>
+ <schemalist>
+
+ <!-- General preferences -->
+
+ <schema>
+ <key>/schemas/apps/marco/general/mouse_button_modifier</key>
+ <applyto>/apps/marco/general/mouse_button_modifier</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>&lt;Alt&gt;</default>
+ <locale name="C">
+ <short>Modifier to use for modified window click actions</short>
+ <long>
+ Clicking a window while holding down this modifier key
+ will move the window (left click), resize the window
+ (middle click), or show the window menu (right click).
+ The middle and right click operations may be swapped
+ using the "resize_with_right_button" key.
+ Modifier is expressed as "&lt;Alt&gt;" or "&lt;Super&gt;"
+ for example.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/resize_with_right_button</key>
+ <applyto>/apps/marco/general/resize_with_right_button</applyto>
+ <owner>marco</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Whether to resize with the right button</short>
+ <long>
+ Set this to true to resize with the right button and show a menu
+ with the middle button while holding down the key given in
+ "mouse_button_modifier"; set it to false to make it work the
+ opposite way around.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/button_layout</key>
+ <applyto>/apps/marco/general/button_layout</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>menu:minimize,maximize,close</default>
+ <locale name="C">
+ <short>Arrangement of buttons on the titlebar</short>
+ <long>
+ Arrangement of buttons on the titlebar. The
+ value should be a string, such as
+ "menu:minimize,maximize,spacer,close"; the colon separates the
+ left corner of the window from the right corner, and
+ the button names are comma-separated. Duplicate buttons
+ are not allowed. Unknown button names are silently ignored
+ so that buttons can be added in future marco versions
+ without breaking older versions.
+ A special spacer tag can be used to insert some space between
+ two adjacent buttons.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/focus_mode</key>
+ <applyto>/apps/marco/general/focus_mode</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>click</default>
+ <locale name="C">
+ <short>Window focus mode</short>
+ <long>
+ The window focus mode indicates how windows are activated.
+ It has three possible values; "click" means windows must
+ be clicked in order to focus them, "sloppy" means windows
+ are focused when the mouse enters the window, and "mouse" means
+ windows are focused when the mouse enters the window and
+ unfocused when the mouse leaves the window.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/focus_new_windows</key>
+ <applyto>/apps/marco/general/focus_new_windows</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>smart</default>
+ <locale name="C">
+ <short>Control how new windows get focus</short>
+ <long>
+ This option provides additional control over how newly created
+ windows get focus. It has two possible values; "smart" applies
+ the user's normal focus mode, and "strict" results in windows
+ started from a terminal not being given focus.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/raise_on_click</key>
+ <applyto>/apps/marco/general/raise_on_click</applyto>
+ <owner>marco</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Whether raising should be a side-effect of other user
+ interactions</short>
+ <long>
+ Setting this option to false can lead to buggy behavior, so
+ users are strongly discouraged from changing it from the default
+ of true.
+
+ Many actions (e.g. clicking in the client area, moving or resizing the window)
+ normally raise the window as a side-effect. Setting this option to false, which
+ is strongly discouraged, will decouple raising from other user actions, and
+ ignore raise requests generated by applications. See
+ http://bugzilla.gnome.org/show_bug.cgi?id=445447#c6.
+ Even when this option is false, windows can
+ still be raised by an alt-left-click anywhere on the window, a
+ normal click on the window decorations, or by special messages
+ from pagers, such as activation requests from tasklist applets.
+ This option is currently disabled in click-to-focus mode.
+
+ Note that the list of ways to raise windows when raise_on_click
+ is false does not include programmatic requests from
+ applications to raise windows; such requests will be ignored
+ regardless of the reason for the request. If you are an
+ application developer and have a user complaining that your
+ application does not work with this setting disabled, tell them
+ it is _their_ fault for breaking their window manager and that
+ they need to change this option back to true or live with the
+ "bug" they requested.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/action_double_click_titlebar</key>
+ <applyto>/apps/marco/general/action_double_click_titlebar</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>toggle_maximize</default>
+ <locale name="C">
+ <short>Action on title bar double-click</short>
+ <long>
+ This option determines the effects of double-clicking on the
+ title bar. Current valid options are
+ 'toggle_shade', which will shade/unshade the window,
+ 'toggle_maximize' which will maximize/unmaximize the window,
+ 'toggle_maximize_horizontally' and 'toggle_maximize_vertically'
+ which will maximize/unmaximize the window in that direction only,
+ 'minimize' which will minimize the window,
+ 'shade' which will roll the window up,
+ 'menu' which will display the window menu,
+ 'lower' which will put the window behind all the others,
+ and 'none' which will not do anything.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/action_middle_click_titlebar</key>
+ <applyto>/apps/marco/general/action_middle_click_titlebar</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>lower</default>
+ <locale name="C">
+ <short>Action on title bar middle-click</short>
+ <long>
+ This option determines the effects of middle-clicking on the
+ title bar. Current valid options are
+ 'toggle_shade', which will shade/unshade the window,
+ 'toggle_maximize' which will maximize/unmaximize the window,
+ 'toggle_maximize_horizontally' and 'toggle_maximize_vertically'
+ which will maximize/unmaximize the window in that direction only,
+ 'minimize' which will minimize the window,
+ 'shade' which will roll the window up,
+ 'menu' which will display the window menu,
+ 'lower' which will put the window behind all the others,
+ and 'none' which will not do anything.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/action_right_click_titlebar</key>
+ <applyto>/apps/marco/general/action_right_click_titlebar</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>menu</default>
+ <locale name="C">
+ <short>Action on title bar right-click</short>
+ <long>
+ This option determines the effects of right-clicking on the
+ title bar. Current valid options are
+ 'toggle_shade', which will shade/unshade the window,
+ 'toggle_maximize' which will maximize/unmaximize the window,
+ 'toggle_maximize_horizontally' and 'toggle_maximize_vertically'
+ which will maximize/unmaximize the window in that direction only,
+ 'minimize' which will minimize the window,
+ 'shade' which will roll the window up,
+ 'menu' which will display the window menu,
+ 'lower' which will put the window behind all the others,
+ and 'none' which will not do anything.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/auto_raise</key>
+ <applyto>/apps/marco/general/auto_raise</applyto>
+ <owner>marco</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Automatically raises the focused window</short>
+ <long>
+ If set to true, and the focus mode is either "sloppy" or "mouse"
+ then the focused window will be automatically raised after a
+ delay specified by the auto_raise_delay key. This is not related
+ to clicking on a window to raise it, nor to entering a window
+ during drag-and-drop.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/auto_raise_delay</key>
+ <applyto>/apps/marco/general/auto_raise_delay</applyto>
+ <owner>marco</owner>
+ <type>int</type>
+ <default>500</default>
+ <locale name="C">
+ <short>Delay in milliseconds for the auto raise option</short>
+ <long>
+ The time delay before raising a window if auto_raise is set to
+ true. The delay is given in thousandths of a second.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/theme</key>
+ <applyto>/apps/marco/general/theme</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>Spidey-Left</default>
+ <locale name="C">
+ <short>Current theme</short>
+ <long>
+ The theme determines the appearance of window borders,
+ titlebar, and so forth.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/titlebar_uses_system_font</key>
+ <applyto>/apps/marco/general/titlebar_uses_system_font</applyto>
+ <owner>marco</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Use standard system font in window titles</short>
+ <long>
+ If true, ignore the titlebar_font
+ option, and use the standard application font for window
+ titles.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/titlebar_font</key>
+ <applyto>/apps/marco/general/titlebar_font</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>Sans Bold 10</default>
+ <locale name="C">
+ <short>Window title font</short>
+ <long>
+ A font description string describing a font for window
+ titlebars. The size from the description will only be used if the
+ titlebar_font_size option is set to 0. Also, this option is
+ disabled if the titlebar_uses_desktop_font option is set to true.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/num_workspaces</key>
+ <applyto>/apps/marco/general/num_workspaces</applyto>
+ <owner>marco</owner>
+ <type>int</type>
+ <default>4</default>
+ <locale name="C">
+ <short>Number of workspaces</short>
+ <long>
+ Number of workspaces. Must be more than zero, and has a fixed
+ maximum to prevent making the desktop unusable by accidentally
+ asking for too many workspaces.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/visual_bell</key>
+ <applyto>/apps/marco/general/visual_bell</applyto>
+ <owner>marco</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Enable Visual Bell</short>
+ <long>
+ Turns on a visual indication when an application or the system
+ issues a 'bell' or 'beep'; useful for the hard-of-hearing and for
+ use in noisy environments.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/audible_bell</key>
+ <applyto>/apps/marco/general/audible_bell</applyto>
+ <owner>marco</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>System Bell is Audible</short>
+ <long>
+ Determines whether applications or the system can generate
+ audible 'beeps'; may be used in conjunction with 'visual bell' to
+ allow silent 'beeps'.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/visual_bell_type</key>
+ <applyto>/apps/marco/general/visual_bell_type</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>fullscreen</default>
+ <locale name="C">
+ <short>Visual Bell Type</short>
+ <long>
+ Tells Marco how to implement the visual indication that the
+ system bell or another application 'bell' indicator has been
+ rung. Currently there are two valid values, "fullscreen", which
+ causes a fullscreen white-black flash, and "frame_flash" which
+ causes the titlebar of the application which sent the bell signal
+ to flash. If the application which sent the bell is unknown (as
+ is usually the case for the default "system beep"), the currently
+ focused window's titlebar is flashed.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/compositing_manager</key>
+ <applyto>/apps/marco/general/compositing_manager</applyto>
+ <owner>marco</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Compositing Manager</short>
+ <long>
+ Determines whether Marco is a compositing manager.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/workspace_names/name</key>
+ <applyto>/apps/marco/workspace_names/name_1</applyto>
+ <applyto>/apps/marco/workspace_names/name_2</applyto>
+ <applyto>/apps/marco/workspace_names/name_3</applyto>
+ <applyto>/apps/marco/workspace_names/name_4</applyto>
+ <applyto>/apps/marco/workspace_names/name_5</applyto>
+ <applyto>/apps/marco/workspace_names/name_6</applyto>
+ <applyto>/apps/marco/workspace_names/name_7</applyto>
+ <applyto>/apps/marco/workspace_names/name_8</applyto>
+ <applyto>/apps/marco/workspace_names/name_9</applyto>
+ <applyto>/apps/marco/workspace_names/name_10</applyto>
+ <applyto>/apps/marco/workspace_names/name_11</applyto>
+ <applyto>/apps/marco/workspace_names/name_12</applyto>
+ <applyto>/apps/marco/workspace_names/name_13</applyto>
+ <applyto>/apps/marco/workspace_names/name_14</applyto>
+ <applyto>/apps/marco/workspace_names/name_15</applyto>
+ <applyto>/apps/marco/workspace_names/name_16</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default></default>
+ <locale name="C">
+ <short>Name of workspace</short>
+ <long>
+ The name of a workspace.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/reduced_resources</key>
+ <applyto>/apps/marco/general/reduced_resources</applyto>
+ <owner>marco</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>If true, trade off usability for less resource usage</short>
+ <long>
+ If true, marco will give the user less feedback by using
+ wireframes, avoiding animations, or other means. This is a
+ significant reduction in usability for many users, but may allow
+ legacy applications to continue working, and may also be a
+ useful tradeoff for terminal servers. However, the wireframe
+ feature is disabled when accessibility is on.
+ </long>
+ </locale>
+ </schema>
+
+ <!-- Keybindings -->
+
+ <schema>
+ <key>/schemas/apps/marco/global_keybindings/run_command</key>
+ <applyto>/apps/marco/global_keybindings/run_command_1</applyto>
+ <applyto>/apps/marco/global_keybindings/run_command_2</applyto>
+ <applyto>/apps/marco/global_keybindings/run_command_3</applyto>
+ <applyto>/apps/marco/global_keybindings/run_command_4</applyto>
+ <applyto>/apps/marco/global_keybindings/run_command_5</applyto>
+ <applyto>/apps/marco/global_keybindings/run_command_6</applyto>
+ <applyto>/apps/marco/global_keybindings/run_command_7</applyto>
+ <applyto>/apps/marco/global_keybindings/run_command_8</applyto>
+ <applyto>/apps/marco/global_keybindings/run_command_9</applyto>
+ <applyto>/apps/marco/global_keybindings/run_command_10</applyto>
+ <applyto>/apps/marco/global_keybindings/run_command_11</applyto>
+ <applyto>/apps/marco/global_keybindings/run_command_12</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>disabled</default>
+ <locale name="C">
+ <short>Run a defined command</short>
+ <long>
+ The keybinding that runs the correspondingly-numbered
+ command in /apps/marco/keybinding_commands
+
+ The format looks like "&lt;Control&gt;a" or
+ "&lt;Shift&gt;&lt;Alt&gt;F1".
+
+ The parser is fairly liberal and allows lower or upper case,
+ and also abbreviations such as "&lt;Ctl&gt;" and
+ "&lt;Ctrl&gt;". If you set the option to the special string
+ "disabled", then there will be no keybinding for this
+ action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/keybinding_commands/command</key>
+ <applyto>/apps/marco/keybinding_commands/command_1</applyto>
+ <applyto>/apps/marco/keybinding_commands/command_2</applyto>
+ <applyto>/apps/marco/keybinding_commands/command_3</applyto>
+ <applyto>/apps/marco/keybinding_commands/command_4</applyto>
+ <applyto>/apps/marco/keybinding_commands/command_5</applyto>
+ <applyto>/apps/marco/keybinding_commands/command_6</applyto>
+ <applyto>/apps/marco/keybinding_commands/command_7</applyto>
+ <applyto>/apps/marco/keybinding_commands/command_8</applyto>
+ <applyto>/apps/marco/keybinding_commands/command_9</applyto>
+ <applyto>/apps/marco/keybinding_commands/command_10</applyto>
+ <applyto>/apps/marco/keybinding_commands/command_11</applyto>
+ <applyto>/apps/marco/keybinding_commands/command_12</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default> </default>
+ <locale name="C">
+ <short>Commands to run in response to keybindings</short>
+ <long>
+ The /apps/marco/global_keybindings/run_command_N
+ keys define keybindings that correspond to these commands.
+ Pressing the keybinding for run_command_N will
+ execute command_N.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/keybinding_commands/command_screenshot</key>
+ <applyto>/apps/marco/keybinding_commands/command_screenshot</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>mate-screenshot</default>
+ <locale name="C">
+ <short>The screenshot command</short>
+ <long>
+ The /apps/marco/global_keybindings/run_command_screenshot
+ key defines a keybinding which causes the command specified
+ by this setting to be invoked.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/keybinding_commands/command_window_screenshot</key>
+ <applyto>/apps/marco/keybinding_commands/command_window_screenshot</applyto>
+ <owner>marco</owner>
+ <type>string</type>
+ <default>mate-screenshot --window</default>
+ <locale name="C">
+ <short>The window screenshot command</short>
+ <long>
+ The /apps/marco/global_keybindings/run_command_window_screenshot
+ key defines a keybinding which causes the command specified
+ by this setting to be invoked.
+ </long>
+ </locale>
+ </schema>
+
+ <!-- Schemas below are generated by schema-bindings.c when this file
+ becomes marco.schemas.in
+ -->
+ <!-- GENERATED -->
+
+ <!-- Not used and/or crackrock -->
+
+ <schema>
+ <key>/schemas/apps/marco/general/application_based</key>
+ <applyto>/apps/marco/general/application_based</applyto>
+ <owner>marco</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>(Not implemented) Navigation works in terms of applications not windows</short>
+ <long>
+ If true, then Marco works in terms of applications rather than
+ windows. The concept is a bit abstract, but in general an
+ application-based setup is more like the Mac and less like
+ Windows. When you focus a window in application-based mode, all
+ the windows in the application will be raised. Also, in
+ application-based mode, focus clicks are not passed through to
+ windows in other applications. Application-based mode is,
+ however, largely unimplemented at the moment.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/marco/general/disable_workarounds</key>
+ <applyto>/apps/marco/general/disable_workarounds</applyto>
+ <owner>marco</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Disable misfeatures that are required by old or broken
+ applications</short>
+ <long>
+ Some applications disregard specifications in ways that result in
+ window manager misfeatures. This option puts Marco in a
+ rigorously correct mode, which gives a more consistent user
+ interface, provided one does not need to run any misbehaving
+ applications.
+ </long>
+ </locale>
+ </schema>
+
+ </schemalist>
+</mateconfschemafile>
+
+
+
+
diff --git a/src/themes/ClearlooksRe/metacity-theme-1.xml b/src/themes/ClearlooksRe/metacity-theme-1.xml
new file mode 100644
index 00000000..fbc5a174
--- /dev/null
+++ b/src/themes/ClearlooksRe/metacity-theme-1.xml
@@ -0,0 +1,1013 @@
+<?xml version="1.0"?>
+<!-- $Id$ -->
+<metacity_theme>
+<info>
+ <name>ClearlooksRe</name>
+ <author>Daniel Borgmann &lt;[email protected]&gt;, Andrea Cimitan &lt;[email protected]&gt;, Germán Augusto Perugorria &lt;[email protected]&gt;</author>
+ <copyright>&#194; 2005-2007 Daniel Borgmann, Andrea Cimitan. 2010 Perberos</copyright>
+ <date>December, 2010</date>
+ <description>The Clearlooks "Gummy" Metacity Theme</description>
+</info>
+
+<!-- ::: GEOMETRY ::: -->
+<frame_geometry name="normal" rounded_top_left="true" rounded_top_right="true" rounded_bottom_left="false" rounded_bottom_right="false">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="4"/>
+ <distance name="right_titlebar_edge" value="4"/>
+ <aspect_ratio name="button" value="1.0"/>
+ <distance name="title_vertical_pad" value="0"/>
+ <border name="title_border" left="2" right="2" top="4" bottom="3"/>
+ <border name="button_border" left="1" right="1" top="2" bottom="2"/>
+</frame_geometry>
+
+<frame_geometry name="shaded" parent="normal" rounded_top_left="true" rounded_top_right="true" rounded_bottom_left="true" rounded_bottom_right="true"/>
+
+<frame_geometry name="normal_maximized" parent="normal" rounded_top_left="false" rounded_top_right="false" rounded_bottom_left="false" rounded_bottom_right="false">
+ <!-- strip frame spacing off the normal geometry when maximised -->
+ <distance name="left_width" value="0"/>
+ <distance name="right_width" value="0"/>
+ <distance name="bottom_height" value="1"/>
+ <distance name="left_titlebar_edge" value="1"/>
+ <distance name="right_titlebar_edge" value="1"/>
+</frame_geometry>
+
+<frame_geometry name="utility" title_scale="small" rounded_top_left="false" rounded_top_right="false" rounded_bottom_left="false" rounded_bottom_right="false">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="4"/>
+ <distance name="right_titlebar_edge" value="4"/>
+ <distance name="title_vertical_pad" value="0"/>
+ <border name="title_border" left="2" right="2" top="4" bottom="3"/>
+ <border name="button_border" left="0" right="0" top="2" bottom="2"/>
+ <aspect_ratio name="button" value="1"/>
+</frame_geometry>
+
+<frame_geometry name="border" has_title="false">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="0"/>
+ <distance name="right_titlebar_edge" value="0"/>
+ <distance name="button_width" value="0"/>
+ <distance name="button_height" value="0"/>
+ <distance name="title_vertical_pad" value="4"/>
+ <border name="title_border" left="0" right="0" top="0" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="0" bottom="0"/>
+</frame_geometry>
+
+<!-- button minimum size -->
+<constant name="Bmin" value="7"/>
+<!-- button inside padding -->
+<constant name="Bpad" value="6"/>
+
+<!-- ::: CORNERS ::: -->
+<draw_ops name="corners_outline_selected_top">
+ <!-- top left -->
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="1" y1="3" x2="1" y2="3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.73" x1="1" y1="4" x2="1" y2="4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="2" y1="2" x2="2" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="3" y1="1" x2="3" y2="1"/>
+ <line color="shade/gtk:bg[SELECTED]/0.73" x1="4" y1="1" x2="4" y2="1"/>
+
+ <!-- top right -->
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="width-2" y1="3" x2="width-2" y2="3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.73" x1="width-2" y1="4" x2="width-2" y2="4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="width-3" y1="2" x2="width-3" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="width-4" y1="1" x2="width-4" y2="1"/>
+ <line color="shade/gtk:bg[SELECTED]/0.73" x1="width-5" y1="1" x2="width-5" y2="1"/>
+</draw_ops>
+
+<draw_ops name="corners_outline_top">
+ <!-- top left -->
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="1" y1="3" x2="1" y2="3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.68" x1="1" y1="4" x2="1" y2="4"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="2" y1="2" x2="2" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="3" y1="1" x2="3" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.68" x1="4" y1="1" x2="4" y2="1"/>
+
+ <!-- top right -->
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="width-2" y1="3" x2="width-2" y2="3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.68" x1="width-2" y1="4" x2="width-2" y2="4"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="width-3" y1="2" x2="width-3" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="width-4" y1="1" x2="width-4" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.68" x1="width-5" y1="1" x2="width-5" y2="1"/>
+</draw_ops>
+
+<draw_ops name="corners_outline_selected_bottom">
+ <!-- bottom left -->
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="1" y1="height-4" x2="1" y2="height-5"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="2" y1="height-3" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="2" y1="height-2" x2="4" y2="height-2"/>
+
+ <!-- bottom right -->
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="width-2" y1="height-4" x2="width-2" y2="height-5"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="width-3" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="width-4" y1="height-2" x2="width-5" y2="height-2"/>
+</draw_ops>
+
+<draw_ops name="corners_outline_bottom">
+ <!-- bottom left -->
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="1" y1="height-4" x2="1" y2="height-5"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="2" y1="height-3" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="2" y1="height-2" x2="4" y2="height-2"/>
+
+ <!-- bottom right -->
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="width-2" y1="height-4" x2="width-2" y2="height-5"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="width-3" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="width-4" y1="height-2" x2="width-5" y2="height-2"/>
+</draw_ops>
+
+<draw_ops name="corners_highlight">
+ <!-- ** corner highlight for left top ** -->
+ <line color="shade/gtk:bg[SELECTED]/1.18" x1="2" y1="3" x2="2" y2="4"/>
+ <line color="shade/gtk:bg[SELECTED]/1.18" x1="3" y1="2" x2="4" y2="2"/>
+
+ <!-- ** corner highlight for right top ** -->
+ <line color="shade/gtk:bg[SELECTED]/0.98" x1="width-3" y1="3" x2="width-3" y2="4"/>
+ <line color="shade/gtk:bg[SELECTED]/1.16" x1="width-5" y1="2" x2="width-4" y2="2"/>
+
+ <!-- ** corner highlight for left bottom ** -->
+ <!--<line color="shade/gtk:bg[NORMAL]/1.3" x1="2" y1="height-4" x2="2" y2="height-5"/>
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="3" y1="height-3" x2="4" y2="height-3"/>-->
+
+ <!-- ** corner highlight for right bottom ** -->
+ <!--<line color="shade/gtk:bg[NORMAL]/0.88" x1="width-3" y1="height-4" x2="width-3" y2="height-5"/>
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="width-4" y1="height-3" x2="width-5" y2="height-3"/>-->
+</draw_ops>
+
+<draw_ops name="corners_highlight_unfocused">
+ <!-- ** corner highlight for left top ** -->
+ <line color="shade/gtk:bg[NORMAL]/1.05" x1="2" y1="3" x2="2" y2="4"/>
+ <line color="shade/gtk:bg[NORMAL]/1.05" x1="3" y1="2" x2="4" y2="2"/>
+
+ <!-- ** corner highlight for right top ** -->
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="width-3" y1="3" x2="width-3" y2="4"/>
+ <line color="shade/gtk:bg[NORMAL]/1.04" x1="width-5" y1="2" x2="width-4" y2="2"/>
+
+ <!-- ** corner highlight for left bottom ** -->
+ <!--<line color="shade/gtk:bg[NORMAL]/1.3" x1="2" y1="height-4" x2="2" y2="height-5"/>
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="3" y1="height-3" x2="4" y2="height-3"/>-->
+
+ <!-- ** corner highlight for right bottom ** -->
+ <!--<line color="shade/gtk:bg[NORMAL]/0.88" x1="width-3" y1="height-4" x2="width-3" y2="height-5"/>
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="width-4" y1="height-3" x2="width-5" y2="height-3"/>-->
+</draw_ops>
+
+<draw_ops name="corners_highlight_shaded">
+ <!-- ** corner highlight for left top ** -->
+ <line color="shade/gtk:bg[SELECTED]/1.18" x1="2" y1="3" x2="2" y2="4"/>
+ <line color="shade/gtk:bg[SELECTED]/1.18" x1="3" y1="2" x2="4" y2="2"/>
+
+ <!-- ** corner highlight for right top ** -->
+ <line color="shade/gtk:bg[SELECTED]/0.98" x1="width-3" y1="3" x2="width-3" y2="4"/>
+ <line color="shade/gtk:bg[SELECTED]/1.16" x1="width-5" y1="2" x2="width-4" y2="2"/>
+
+ <!-- ** corner highlight for left bottom ** -->
+ <line color="shade/gtk:bg[SELECTED]/1.08" x1="2" y1="height-4" x2="2" y2="height-5"/>
+ <line color="shade/gtk:bg[SELECTED]/0.98" x1="3" y1="height-3" x2="4" y2="height-3"/>
+
+ <!-- ** corner highlight for right bottom ** -->
+ <line color="shade/gtk:bg[SELECTED]/0.98" x1="width-3" y1="height-4" x2="width-3" y2="height-5"/>
+ <line color="shade/gtk:bg[SELECTED]/0.98" x1="width-4" y1="height-3" x2="width-5" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="corners_highlight_shaded_unfocused">
+ <!-- ** corner highlight for left top ** -->
+ <line color="shade/gtk:bg[NORMAL]/1.05" x1="2" y1="3" x2="2" y2="4"/>
+ <line color="shade/gtk:bg[NORMAL]/1.05" x1="3" y1="2" x2="4" y2="2"/>
+
+ <!-- ** corner highlight for right top ** -->
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="width-3" y1="3" x2="width-3" y2="4"/>
+ <line color="shade/gtk:bg[NORMAL]/1.04" x1="width-5" y1="2" x2="width-4" y2="2"/>
+
+ <!-- ** corner highlight for left bottom ** -->
+ <line color="shade/gtk:bg[NORMAL]/1.02" x1="2" y1="height-4" x2="2" y2="height-5"/>
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="3" y1="height-3" x2="4" y2="height-3"/>
+
+ <!-- ** corner highlight for right bottom ** -->
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="width-3" y1="height-4" x2="width-3" y2="height-5"/>
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="width-4" y1="height-3" x2="width-5" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="window_bg">
+ <rectangle color="gtk:bg[NORMAL]" filled="true" x="0" y="0" width="width" height="height"/>
+</draw_ops>
+
+<!-- ::: BEVEL FOCUSED ::: -->
+<draw_ops name="bevel">
+ <include name="window_bg"/>
+ <!-- ** titlebar outline ** -->
+ <rectangle color="shade/gtk:bg[SELECTED]/0.55" filled="false" x="0" y="0" width="width - 1" height="((title_height + 6) `max` (top_height - 2))"/>
+
+ <!-- ** 3d beveled frame ** -->
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="1" y1="height - 2" x2="width - 2" y2="height - 2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="width - 2" y1="3" x2="width - 2" y2="height - 2"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="3" y1="1" x2="width - 4" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="1" y1="3" x2="1" y2="height - 2"/>
+
+ <line color="shade/gtk:bg[SELECTED]/0.94" x1="2" y1="((title_height + 5) `max` (top_height - 3))" x2="width - 3" y2="((title_height + 5) `max` (top_height - 3))"/>
+ <line color="shade/gtk:bg[SELECTED]/0.95" x1="width - 2" y1="2" x2="width - 2" y2="((title_height + 6) `max` (top_height - 2))"/>
+ <line color="shade/gtk:bg[SELECTED]/1.18" x1="1" y1="1" x2="width - 2" y2="1"/>
+ <line color="shade/gtk:bg[SELECTED]/1.1" x1="1" y1="2" x2="1" y2="((title_height + 5) `max` (top_height - 3))"/>
+
+ <!-- ** fancy gradient ** -->
+ <gradient type="vertical" x="2" y="top_height/2" width="width-4" height="top_height/2-1">
+ <color value="shade/gtk:bg[SELECTED]/1.0"/>
+ <color value="shade/gtk:bg[SELECTED]/0.94"/>
+ </gradient>
+ <gradient type="vertical" x="2" y="2" width="width-4" height="top_height/2-2">
+ <color value="shade/gtk:bg[SELECTED]/1.08"/>
+ <color value="shade/gtk:bg[SELECTED]/1.02"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="((title_height + 6) `max` (top_height - 2))" x2="width - 2" y2="((title_height + 6) `max` (top_height - 2))"/>
+
+ <!-- ** border outline ** -->
+ <line color="shade/gtk:bg[NORMAL]/0.45" x1="0" y1="((title_height + 6) `max` (top_height - 2))" x2="0" y2="height"/>
+ <line color="shade/gtk:bg[NORMAL]/0.45" x1="width - 1" y1="((title_height + 6) `max` (top_height - 2))" x2="width - 1" y2="height"/>
+ <line color="shade/gtk:bg[NORMAL]/0.45" x1="1" y1="height - 1" x2="width - 2" y2="height - 1"/>
+</draw_ops>
+
+<draw_ops name="bevel_maximized">
+ <!-- ** 3d beveled frame ** -->
+ <line color="shade/gtk:bg[SELECTED]/0.55" x1="0" y1="0" x2="width" y2="0"/>
+ <line color="shade/gtk:bg[SELECTED]/1.18" x1="0" y1="1" x2="width" y2="1"/>
+ <line color="shade/gtk:bg[SELECTED]/0.94" x1="0" y1="((title_height + 5) `max` (top_height - 3))" x2="width" y2="((title_height + 5) `max` (top_height - 3))"/>
+
+ <!-- ** fancy gradient ** -->
+ <gradient type="vertical" x="0" y="top_height/2" width="width" height="top_height/2-1">
+ <color value="shade/gtk:bg[SELECTED]/1.0"/>
+ <color value="shade/gtk:bg[SELECTED]/0.94"/>
+ </gradient>
+ <gradient type="vertical" x="0" y="1" width="width" height="top_height/2-1">
+ <color value="shade/gtk:bg[SELECTED]/1.08"/>
+ <color value="shade/gtk:bg[SELECTED]/1.02"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="0" y1="((title_height + 6) `max` (top_height - 2))" x2="width" y2="((title_height + 6) `max` (top_height - 2))"/>
+ <line color="shade/gtk:bg[SELECTED]/0.55" x1="0" y1="height-1" x2="width" y2="height-1"/>
+</draw_ops>
+
+<draw_ops name="round_bevel">
+ <include name="bevel"/>
+ <include name="corners_outline_selected_top"/>
+ <!--<include name="corners_outline_bottom"/>-->
+ <include name="corners_highlight"/>
+</draw_ops>
+
+<draw_ops name="bevel_shaded">
+ <include name="bevel"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="0" y1="height-1" x2="width" y2="height-1"/>
+</draw_ops>
+
+<draw_ops name="round_bevel_shaded">
+ <include name="bevel"/>
+ <include name="corners_outline_selected_top"/>
+ <include name="corners_outline_selected_bottom"/>
+ <include name="corners_highlight_shaded"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="5" y1="height-1" x2="width-6" y2="height-1"/>
+</draw_ops>
+
+<!-- ::: BEVEL UNFOCUSED ::: -->
+<draw_ops name="bevel_unfocused">
+ <include name="window_bg"/>
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="1" y1="height - 2" x2="width - 2" y2="height - 2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="width - 2" y1="2" x2="width - 2" y2="height - 2"/>
+ <line color="shade/gtk:bg[NORMAL]/1.05" x1="1" y1="1" x2="width - 2" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/1.03" x1="1" y1="2" x2="1" y2="height - 2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.89" x1="2" y1="((title_height + 5) `max` (top_height - 3))" x2="width - 3" y2="((title_height + 5) `max` (top_height - 3))"/>
+
+ <!-- ** fancy gradient ** -->
+ <gradient type="vertical" x="2" y="top_height/2" width="width-4" height="top_height/2-1">
+ <color value="shade/gtk:bg[NORMAL]/0.93"/>
+ <color value="shade/gtk:bg[NORMAL]/0.89"/>
+ </gradient>
+ <gradient type="vertical" x="2" y="2" width="width-4" height="top_height/2-2">
+ <color value="shade/gtk:bg[NORMAL]/0.99"/>
+ <color value="shade/gtk:bg[NORMAL]/0.95"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/0.65" x1="1" y1="((title_height + 6) `max` (top_height - 2))" x2="width - 2" y2="((title_height + 6) `max` (top_height - 2))"/>
+ <rectangle color="shade/gtk:bg[NORMAL]/0.55" filled="false" x="0" y="0" width="width - 1" height="height - 1"/>
+</draw_ops>
+
+<draw_ops name="bevel_maximized_unfocused">
+ <!-- ** 3d beveled frame ** -->
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="0" y1="0" x2="width" y2="0"/>
+ <line color="shade/gtk:bg[NORMAL]/1.05" x1="0" y1="1" x2="width" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.89" x1="0" y1="((title_height + 5) `max` (top_height - 3))" x2="width" y2="((title_height + 5) `max` (top_height - 3))"/>
+
+ <!-- ** fancy gradient ** -->
+ <gradient type="vertical" x="0" y="top_height/2" width="width" height="top_height/2-1">
+ <color value="shade/gtk:bg[NORMAL]/0.93"/>
+ <color value="shade/gtk:bg[NORMAL]/0.89"/>
+ </gradient>
+ <gradient type="vertical" x="0" y="2" width="width" height="top_height/2-2">
+ <color value="shade/gtk:bg[NORMAL]/0.99"/>
+ <color value="shade/gtk:bg[NORMAL]/0.95"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/0.65" x1="0" y1="((title_height + 6) `max` (top_height - 2))" x2="width" y2="((title_height + 6) `max` (top_height - 2))"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="0" y1="height-1" x2="width" y2="height-1"/>
+</draw_ops>
+
+<draw_ops name="round_bevel_unfocused">
+ <include name="bevel_unfocused"/>
+ <include name="corners_outline_top"/>
+ <!--<include name="corners_outline_bottom"/>-->
+ <include name="corners_highlight_unfocused"/>
+</draw_ops>
+
+<draw_ops name="round_bevel_unfocused_shaded">
+ <include name="bevel_unfocused"/>
+ <include name="corners_outline_top"/>
+ <include name="corners_outline_bottom"/>
+ <include name="corners_highlight_shaded_unfocused"/>
+</draw_ops>
+
+<!-- ::: BORDER ::: -->
+<draw_ops name="border">
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="1" y1="height - 2" x2="width - 2" y2="height - 2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="width - 2" y1="1" x2="width - 2" y2="height - 2"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="1" y1="1" x2="width - 2" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="1" y1="1" x2="1" y2="height - 2"/>
+
+ <rectangle color="shade/gtk:bg[NORMAL]/0.55" filled="false" x="0" y="0" width="width - 1" height="height - 1"/>
+</draw_ops>
+
+<!-- ::: TITLES ::: -->
+<draw_ops name="title_text">
+ <title color="shade/gtk:bg[SELECTED]/0.7" x="((3 `max` (width-title_width)) / 2)" y="(((height - title_height) / 2) `max` 0) + 1"/>
+ <title color="shade/gtk:bg[SELECTED]/0.7" x="((3 `max` (width-title_width)) / 2)+1" y="(((height - title_height) / 2) `max` 0)"/>
+ <title color="shade/gtk:bg[SELECTED]/0.7" x="((3 `max` (width-title_width)) / 2)-1" y="(((height - title_height) / 2) `max` 0)"/>
+ <title color="shade/gtk:bg[SELECTED]/0.7" x="((3 `max` (width-title_width)) / 2)" y="(((height - title_height) / 2) `max` 0)-1"/>
+ <title color="#FFFFFF" x="(3 `max` (width-title_width)) / 2" y="(((height - title_height) / 2) `max` 0)"/>
+</draw_ops>
+
+<draw_ops name="title_text_unfocused">
+ <!--<title color="shade/gtk:bg[NORMAL]/1.07" x="5 `max` (width-title_width)/2+1" y="1 `max` ((height-title_height)/2)+1"/>-->
+ <title color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" x="4 `max` (width-title_width)/2" y="0 `max` ((height-title_height)/2)"/>
+</draw_ops>
+
+<draw_ops name="title">
+ <include name="title_text"/>
+</draw_ops>
+
+<draw_ops name="title_unfocused">
+ <include name="title_text_unfocused"/>
+</draw_ops>
+
+<!-- ::: BUTTONS ::: -->
+<draw_ops name="button_bg">
+ <!-- inset -->
+ <gradient type="vertical" x="0" y="3" width="width" height="height-6">
+ <color value="shade/gtk:bg[SELECTED]/0.96"/>
+ <color value="shade/gtk:bg[SELECTED]/1.05"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[SELECTED]/1.00" x1="2" y1="0" x2="width-3" y2="0"/>
+ <line color="shade/gtk:bg[SELECTED]/0.99" x1="1" y1="1" x2="width-2" y2="1"/>
+ <line color="shade/gtk:bg[SELECTED]/0.99" x1="0" y1="2" x2="width-1" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.98" x1="3" y1="0" x2="width-4" y2="0"/>
+
+ <line color="shade/gtk:bg[SELECTED]/0.91" x1="2" y1="1" x2="width-3" y2="1"/>
+ <line color="shade/gtk:bg[SELECTED]/0.90" x1="1" y1="2" x2="width-2" y2="2"/>
+
+ <line color="shade/gtk:bg[SELECTED]/1.03" x1="2" y1="height-1" x2="width-3" y2="height-1"/>
+ <line color="shade/gtk:bg[SELECTED]/1.00" x1="1" y1="height-2" x2="width-2" y2="height-2"/>
+ <line color="shade/gtk:bg[SELECTED]/1.01" x1="0" y1="height-3" x2="width-1" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/1.06" x1="3" y1="height-1" x2="width-4" y2="height-1"/>
+
+ <line color="shade/gtk:bg[SELECTED]/1.02" x1="2" y1="height-2" x2="width-3" y2="height-2"/>
+ <line color="shade/gtk:bg[SELECTED]/1.03" x1="1" y1="height-3" x2="width-2" y2="height-3"/>
+
+ <!-- border outline -->
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="3" y1="1" x2="width-4" y2="1"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="3" y1="height-2" x2="width-4" y2="height-2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="1" y1="3" x2="1" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="width-2" y1="3" x2="width-2" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="2" y1="2" x2="width-3" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+
+ <!-- border smooth effect -->
+ <line color="shade/gtk:bg[SELECTED]/1.02" x1="3" y1="2" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/1.00" x1="2" y1="3" x2="2" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.90" x1="width-3" y1="3" x2="width-3" y2="height-4"/>
+
+ <!-- inside highlight -->
+ <line color="shade/gtk:bg[SELECTED]/1.18" x1="4" y1="2" x2="width-5" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/1.1" x1="2" y1="4" x2="2" y2="height-5"/>
+ <!-- inside shadow -->
+ <line color="shade/gtk:bg[SELECTED]/1.0" x1="width-3" y1="4" x2="width-3" y2="height-5"/>
+
+ <!-- fill gradient -->
+ <gradient type="vertical" x="3" y="3" width="width-6" height="(height)/2-1">
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ <color value="shade/gtk:bg[SELECTED]/1.02"/>
+ </gradient>
+ <gradient type="vertical" x="3" y="(height)/2" width="width-6" height="(height)/2-2">
+ <color value="shade/gtk:bg[SELECTED]/1.0"/>
+ <color value="shade/gtk:bg[SELECTED]/0.92"/>
+ </gradient>
+
+ <!-- bottom border smooth effect -->
+ <line color="shade/gtk:bg[SELECTED]/0.84" x1="3" y1="height-3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.92" x1="4" y1="height-3" x2="width-5" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="button_bg_unfocused">
+ <!-- inset -->
+ <gradient type="vertical" x="0" y="3" width="width" height="height-6">
+ <color value="shade/gtk:bg[NORMAL]/0.92"/>
+ <color value="shade/gtk:bg[NORMAL]/0.96"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/0.93" x1="2" y1="0" x2="width-3" y2="0"/>
+ <line color="shade/gtk:bg[NORMAL]/0.92" x1="1" y1="1" x2="width-2" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.92" x1="0" y1="2" x2="width-1" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.91" x1="3" y1="0" x2="width-4" y2="0"/>
+
+ <line color="shade/gtk:bg[NORMAL]/0.87" x1="2" y1="1" x2="width-3" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.86" x1="1" y1="2" x2="width-2" y2="2"/>
+
+ <line color="shade/gtk:bg[NORMAL]/0.945" x1="2" y1="height-1" x2="width-3" y2="height-1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.93" x1="1" y1="height-2" x2="width-2" y2="height-2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.935" x1="0" y1="height-3" x2="width-1" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.96" x1="3" y1="height-1" x2="width-4" y2="height-1"/>
+
+ <line color="shade/gtk:bg[NORMAL]/0.94" x1="2" y1="height-2" x2="width-3" y2="height-2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.95" x1="1" y1="height-3" x2="width-2" y2="height-3"/>
+
+ <!-- border outline -->
+ <line color="shade/gtk:bg[NORMAL]/0.6" x1="3" y1="1" x2="width-4" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.6" x1="3" y1="height-2" x2="width-4" y2="height-2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.6" x1="1" y1="3" x2="1" y2="height-4"/>
+ <line color="shade/gtk:bg[NORMAL]/0.6" x1="width-2" y1="3" x2="width-2" y2="height-4"/>
+
+ <line color="shade/gtk:bg[NORMAL]/0.6" x1="2" y1="2" x2="width-3" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.6" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+
+ <!-- border smooth effect -->
+ <line color="shade/gtk:bg[NORMAL]/1.02" x1="3" y1="2" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/1.00" x1="2" y1="3" x2="2" y2="height-4"/>
+ <line color="shade/gtk:bg[NORMAL]/0.95" x1="width-3" y1="3" x2="width-3" y2="height-4"/>
+
+ <!-- inside highlight -->
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="4" y1="2" x2="width-5" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/1.1" x1="2" y1="4" x2="2" y2="height-5"/>
+ <!-- inside shadow -->
+ <line color="shade/gtk:bg[NORMAL]/1.05" x1="width-3" y1="4" x2="width-3" y2="height-5"/>
+
+ <!-- fill gradient -->
+ <gradient type="vertical" x="3" y="3" width="width-6" height="(height)/2-1">
+ <color value="shade/gtk:bg[NORMAL]/1.15"/>
+ <color value="shade/gtk:bg[NORMAL]/1.07"/>
+ </gradient>
+ <gradient type="vertical" x="3" y="(height)/2" width="width-6" height="(height)/2-2">
+ <color value="shade/gtk:bg[NORMAL]/1.05"/>
+ <color value="shade/gtk:bg[NORMAL]/0.97"/>
+ </gradient>
+
+ <!-- bottom border smooth effect -->
+ <line color="shade/gtk:bg[NORMAL]/0.89" x1="3" y1="height-3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.97" x1="4" y1="height-3" x2="width-5" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="button_bg_prelight">
+ <include name="button_bg"/>
+ <tint color="shade/gtk:bg[SELECTED]/1.5" alpha="0.2" x="3" y="3" width="width-5" height="height-5"/>
+ <line color="shade/gtk:bg[SELECTED]/0.6" x1="width-3" y1="height-3" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="button_bg_pressed">
+ <!-- outside highlight -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="height-4">
+ <color value="shade/gtk:bg[SELECTED]/1.2"/>
+ <color value="shade/gtk:bg[SELECTED]/1.0"/>
+ </gradient>
+ <gradient type="vertical" x="width-1" y="3" width="1" height="height-6">
+ <color value="shade/gtk:bg[SELECTED]/1.2"/>
+ <color value="shade/gtk:bg[SELECTED]/1.0"/>
+ </gradient>
+ <line color="shade/gtk:bg[SELECTED]/1.0" x1="2" y1="height-2" x2="width-3" y2="height-2"/>
+ <line color="shade/gtk:bg[SELECTED]/1.0" x1="3" y1="height-1" x2="width-4" y2="height-1"/>
+
+ <!-- border outline -->
+ <line color="shade/gtk:bg[SELECTED]/0.55" x1="3" y1="1" x2="width-4" y2="1"/>
+ <line color="shade/gtk:bg[SELECTED]/0.55" x1="3" y1="height-2" x2="width-4" y2="height-2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.55" x1="1" y1="3" x2="1" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.55" x1="width-2" y1="3" x2="width-2" y2="height-4"/>
+
+ <line color="shade/gtk:bg[SELECTED]/0.55" x1="2" y1="2" x2="width-3" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.55" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+
+ <!-- inside shadow -->
+ <line color="shade/gtk:bg[SELECTED]/0.9" x1="3" y1="2" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="3" x2="2" y2="height-4"/>
+
+ <!-- fill gradient -->
+ <gradient type="vertical" x="3" y="3" width="width-5" height="height-6">
+ <color value="shade/gtk:bg[SELECTED]/0.95"/>
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[SELECTED]/0.9" x1="3" y1="height-3" x2="width-4" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="button_bg_unfocused_prelight">
+ <include name="button_bg_unfocused"/>
+ <tint color="shade/gtk:bg[NORMAL]/1.5" alpha="0.3" x="3" y="3" width="width-5" height="height-5"/>
+ <line color="shade/gtk:bg[NORMAL]/0.6" x1="width-3" y1="height-3" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="button_bg_unfocused_pressed">
+ <!-- outside highlight -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="height-4">
+ <color value="shade/gtk:bg[NORMAL]/1.25"/>
+ <color value="shade/gtk:bg[NORMAL]/1.05"/>
+ </gradient>
+ <gradient type="vertical" x="width-1" y="3" width="1" height="height-6">
+ <color value="shade/gtk:bg[NORMAL]/1.25"/>
+ <color value="shade/gtk:bg[NORMAL]/1.05"/>
+ </gradient>
+ <line color="shade/gtk:bg[NORMAL]/1.05" x1="2" y1="height-2" x2="width-3" y2="height-2"/>
+ <line color="shade/gtk:bg[NORMAL]/1.05" x1="3" y1="height-1" x2="width-4" y2="height-1"/>
+
+ <!-- border outline -->
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="3" y1="1" x2="width-4" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="3" y1="height-2" x2="width-4" y2="height-2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="1" y1="3" x2="1" y2="height-4"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="width-2" y1="3" x2="width-2" y2="height-4"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="2" y1="2" x2="width-3" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.55" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+
+ <!-- inside shadow -->
+ <line color="shade/gtk:bg[NORMAL]/0.8" x1="3" y1="2" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.75" x1="2" y1="3" x2="2" y2="height-4"/>
+
+ <!-- fill gradient -->
+ <gradient type="vertical" x="3" y="3" width="width-5" height="height-6">
+ <color value="shade/gtk:bg[NORMAL]/0.9"/>
+ <color value="shade/gtk:bg[NORMAL]/0.85"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/0.85" x1="3" y1="height-3" x2="width-4" y2="height-3"/>
+</draw_ops>
+
+<!-- ::: ICONS ::: -->
+<!--
+ using a minimum icon size until there is a proper way to specify relative sizes
+ unfortunately it's logically impossible to always center the icons on non-square
+ buttons (utility windows) without distortion.
+
+ icon_size = (Bmin`max`height-Bpad*2)
+ hpadding = (width - icon_size) / 2 = ((width-(Bmin`max`height-Bpad*2))/2)
+ vpadding = (height - icon_size) / 2 = ((height-(Bmin`max`height-Bpad*2))/2)
+-->
+
+<!-- menu icon -->
+<draw_ops name="menu_button_icon">
+ <!--<icon x="0" y="0" width="width" height="height"/>-->
+ <icon x="(width-mini_icon_width)/2" y="(height-mini_icon_height)/2" width="mini_icon_width" height="mini_icon_height"/>
+</draw_ops>
+
+<draw_ops name="menu_button_icon_unfocused">
+ <!--<icon x="0" y="0" width="width" height="height" alpha="0.5"/>-->
+ <icon x="(width-mini_icon_width)/2" y="(height-mini_icon_height)/2" width="mini_icon_width" height="mini_icon_height"/>
+</draw_ops>
+
+<draw_ops name="menu_button_normal">
+ <include name="menu_button_icon"/>
+</draw_ops>
+<draw_ops name="menu_button_pressed">
+ <include name="menu_button_icon"/>
+</draw_ops>
+<draw_ops name="menu_button_unfocused">
+ <include name="menu_button_icon_unfocused"/>
+</draw_ops>
+
+<!-- close icon -->
+<draw_ops name="close_button_icon">
+ <!-- outside border -->
+
+ <!-- main cross -->
+ <line color="shade/gtk:bg[SELECTED]/0.7" width="4"
+ x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="((height-(Bmin`max`height-Bpad*2))/2)"
+ x2="width - ((width-(Bmin`max`height-Bpad*2))/2) - 1" y2="height - ((height-(Bmin`max`height-Bpad*2))/2) - 1"/>
+ <line color="shade/gtk:bg[SELECTED]/0.7" width="4"
+ x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="height - ((height-(Bmin`max`height-Bpad*2))/2) - 1"
+ x2="width - ((width-(Bmin`max`height-Bpad*2))/2) - 1" y2="((height-(Bmin`max`height-Bpad*2))/2)"/>
+ <!-- top-left -->
+ <tint color="shade/gtk:bg[SELECTED]/0.7" alpha="1.0"
+ x="((width-(Bmin`max`height-Bpad*2))/2)" y="((height-(Bmin`max`height-Bpad*2))/2)-1"
+ width="2" height="1"/>
+ <tint color="shade/gtk:bg[SELECTED]/0.7" alpha="1.0"
+ x="((width-(Bmin`max`height-Bpad*2))/2)-1" y="((height-(Bmin`max`height-Bpad*2))/2)/1"
+ width="1" height="2"/>
+ <!-- top-right -->
+ <tint color="shade/gtk:bg[SELECTED]/0.7" alpha="1.0"
+ x="width - ((width-(Bmin`max`height-Bpad*2))/2) -2" y="((height-(Bmin`max`height-Bpad*2))/2)-1"
+ width="2" height="1"/>
+ <tint color="shade/gtk:bg[SELECTED]/0.7" alpha="1.0"
+ x="width - ((width-(Bmin`max`height-Bpad*2))/2)" y="((height-(Bmin`max`height-Bpad*2))/2)"
+ width="1" height="2"/>
+ <!-- bottom-left -->
+ <tint color="shade/gtk:bg[SELECTED]/0.7" alpha="1.0"
+ x="((width-(Bmin`max`height-Bpad*2))/2)" y="height - ((height-(Bmin`max`height-Bpad*2))/2)"
+ width="2" height="1"/>
+ <tint color="shade/gtk:bg[SELECTED]/0.7" alpha="1.0"
+ x="((width-(Bmin`max`height-Bpad*2))/2)-1" y="height - ((height-(Bmin`max`height-Bpad*2))/2)-2"
+ width="1" height="2"/>
+ <!-- bottom-right -->
+ <tint color="shade/gtk:bg[SELECTED]/0.7" alpha="1.0"
+ x="width - ((width-(Bmin`max`height-Bpad*2))/2) -2" y="height - ((height-(Bmin`max`height-Bpad*2))/2)"
+ width="2" height="1"/>
+ <tint color="shade/gtk:bg[SELECTED]/0.7" alpha="1.0"
+ x="width - ((width-(Bmin`max`height-Bpad*2))/2)" y="height - ((height-(Bmin`max`height-Bpad*2))/2)-2"
+ width="1" height="2"/>
+
+ <!-- icon -->
+ <line color="blend/gtk:bg[SELECTED]/#FFFFFF/0.75" width="2"
+ x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="((height-(Bmin`max`height-Bpad*2))/2)"
+ x2="width - ((width-(Bmin`max`height-Bpad*2))/2) - 1" y2="height - ((height-(Bmin`max`height-Bpad*2))/2) - 1"/>
+ <line color="blend/gtk:bg[SELECTED]/#FFFFFF/0.75" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="((height-(Bmin`max`height-Bpad*2))/2)"
+ x2="width- ((width-(Bmin`max`height-Bpad*2))/2)" y2="height - ((height-(Bmin`max`height-Bpad*2))/2)"/>
+ <line color="blend/gtk:bg[SELECTED]/#FFFFFF/0.75" width="2"
+ x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="height - ((height-(Bmin`max`height-Bpad*2))/2) - 1"
+ x2="width - ((width-(Bmin`max`height-Bpad*2))/2) - 1" y2="((height-(Bmin`max`height-Bpad*2))/2)"/>
+ <line color="blend/gtk:bg[SELECTED]/#FFFFFF/0.75" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="height - ((height-(Bmin`max`height-Bpad*2))/2) - 1"
+ x2="width - ((width-(Bmin`max`height-Bpad*2))/2)" y2="((height-(Bmin`max`height-Bpad*2))/2) - 1"/>
+</draw_ops>
+
+<draw_ops name="close_button_icon_unfocused">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" width="2"
+ x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="((height-(Bmin`max`height-Bpad*2))/2)"
+ x2="width-((width-(Bmin`max`height-Bpad*2))/2)-1" y2="height - ((height-(Bmin`max`height-Bpad*2))/2)-1"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="((height-(Bmin`max`height-Bpad*2))/2)"
+ x2="width-((width-(Bmin`max`height-Bpad*2))/2)" y2="height - ((height-(Bmin`max`height-Bpad*2))/2)"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" width="2"
+ x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="height - ((height-(Bmin`max`height-Bpad*2))/2)-1"
+ x2="width-((width-(Bmin`max`height-Bpad*2))/2)-1" y2="((height-(Bmin`max`height-Bpad*2))/2)"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2)" y1="height - ((height-(Bmin`max`height-Bpad*2))/2)-1"
+ x2="width-((width-(Bmin`max`height-Bpad*2))/2)" y2="((height-(Bmin`max`height-Bpad*2))/2) - 1"/>
+</draw_ops>
+
+<draw_ops name="close_button_normal">
+ <include name="button_bg"/>
+ <include name="close_button_icon"/>
+</draw_ops>
+<draw_ops name="close_button_prelight">
+ <include name="button_bg_prelight"/>
+ <include name="close_button_icon"/>
+</draw_ops>
+<draw_ops name="close_button_pressed">
+ <include name="button_bg_pressed"/>
+ <include name="close_button_icon"/>
+</draw_ops>
+<draw_ops name="close_button_unfocused">
+ <include name="button_bg_unfocused"/>
+ <include name="close_button_icon_unfocused"/>
+</draw_ops>
+<draw_ops name="close_button_unfocused_prelight">
+ <include name="button_bg_unfocused_prelight"/>
+ <include name="close_button_icon_unfocused"/>
+</draw_ops>
+<draw_ops name="close_button_unfocused_pressed">
+ <include name="button_bg_unfocused_pressed"/>
+ <include name="close_button_icon_unfocused"/>
+</draw_ops>
+
+<!-- maximize icon -->
+<draw_ops name="maximize_button_icon">
+ <!-- outside border -->
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2)-1" y="((height-(Bmin`max`height-Bpad*2))/2)-1"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2+1" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2+1"/>
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2)+1" y="((height-(Bmin`max`height-Bpad*2))/2)+2"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-3" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-4"/>
+
+ <!-- icon -->
+ <rectangle color="blend/gtk:bg[SELECTED]/#FFFFFF/0.75" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2)" y="((height-(Bmin`max`height-Bpad*2))/2)"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-1" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-1"/>
+ <line color="blend/gtk:bg[SELECTED]/#FFFFFF/0.75" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2) + 1" y1="((height-(Bmin`max`height-Bpad*2))/2) + 1"
+ x2="width-((width-(Bmin`max`height-Bpad*2))/2)" y2="((height-(Bmin`max`height-Bpad*2))/2) + 1"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_icon_unfocused">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2)" y="((height-(Bmin`max`height-Bpad*2))/2)"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-1" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-1"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2) + 1" y1="((height-(Bmin`max`height-Bpad*2))/2) + 1"
+ x2="width-((width-(Bmin`max`height-Bpad*2))/2)" y2="((height-(Bmin`max`height-Bpad*2))/2) + 1"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_normal">
+ <include name="button_bg"/>
+ <include name="maximize_button_icon"/>
+</draw_ops>
+<draw_ops name="maximize_button_prelight">
+ <include name="button_bg_prelight"/>
+ <include name="maximize_button_icon"/>
+</draw_ops>
+<draw_ops name="maximize_button_pressed">
+ <include name="button_bg_pressed"/>
+ <include name="maximize_button_icon"/>
+</draw_ops>
+<draw_ops name="maximize_button_unfocused">
+ <include name="button_bg_unfocused"/>
+ <include name="maximize_button_icon_unfocused"/>
+</draw_ops>
+<draw_ops name="maximize_button_unfocused_prelight">
+ <include name="button_bg_unfocused_prelight"/>
+ <include name="maximize_button_icon_unfocused"/>
+</draw_ops>
+<draw_ops name="maximize_button_unfocused_pressed">
+ <include name="button_bg_unfocused_pressed"/>
+ <include name="maximize_button_icon_unfocused"/>
+</draw_ops>
+
+<!-- restore icon -->
+<draw_ops name="restore_button_icon">
+ <!-- outside border -->
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2)-1" y="((height-(Bmin`max`height-Bpad*2))/2)-1"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-1" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-1"/>
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2)+2-1" y="((height-(Bmin`max`height-Bpad*2))/2)+3-1"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-5" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-6"/>
+
+
+ <!-- icon -->
+ <rectangle color="blend/gtk:bg[SELECTED]/#FFFFFF/0.75" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2) + 1" y="((height-(Bmin`max`height-Bpad*2))/2) + 1"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-3" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-3"/>
+ <line color="blend/gtk:bg[SELECTED]/#FFFFFF/0.75" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2) + 2" y1="((height-(Bmin`max`height-Bpad*2))/2) + 2"
+ x2="width-((width-(Bmin`max`height-Bpad*2))/2) - 2" y2="((height-(Bmin`max`height-Bpad*2))/2) + 2"/>
+
+
+ <!-- second window (perberos was here!) -->
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2) +1"
+ y="((height-(Bmin`max`height-Bpad*2))/2) +1"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-1"
+ height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-1"/>
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2)+2+1"
+ y="((height-(Bmin`max`height-Bpad*2))/2)+3+1"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-5"
+ height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-6"/>
+ <rectangle color="blend/gtk:bg[SELECTED]/#FFFFFF/0.75" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2) + 1+1"
+ y="((height-(Bmin`max`height-Bpad*2))/2) + 1+1"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-3"
+ height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-3"/>
+ <line color="blend/gtk:bg[SELECTED]/#FFFFFF/0.75" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2) + 2+1"
+ y1="((height-(Bmin`max`height-Bpad*2))/2) + 2+1"
+ x2="width-((width-(Bmin`max`height-Bpad*2))/2) - 2+1"
+ y2="((height-(Bmin`max`height-Bpad*2))/2) + 2+1"/>
+ <!-- / second window at the icon button (perberos was here!) -->
+</draw_ops>
+
+<draw_ops name="restore_button_icon_unfocused">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2) + 1+1" y="((height-(Bmin`max`height-Bpad*2))/2) + 1+1"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2-3" height="height-((height-(Bmin`max`height-Bpad*2))/2)*2-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2) + 2+1" y1="((height-(Bmin`max`height-Bpad*2))/2) + 2+1"
+ x2="width-((width-(Bmin`max`height-Bpad*2))/2) - 2+1" y2="((height-(Bmin`max`height-Bpad*2))/2) + 2+1"/>
+
+ <!-- second window at the icon button (perberos was here!) -->
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2) + 1 - 1"
+ y1="((height-(Bmin`max`height-Bpad*2))/2) +1 - 1"
+ x2="((width-(Bmin`max`height-Bpad*2))/2) + 1 - 1 +
+ width-((width-(Bmin`max`height-Bpad*2))/2)*2-3"
+ y2="((height-(Bmin`max`height-Bpad*2))/2) +1 - 1"/>
+
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2) + 1 - 1 +
+ width-((width-(Bmin`max`height-Bpad*2))/2)*2-3"
+ y1="((height-(Bmin`max`height-Bpad*2))/2) +1- 1"
+ x2="((width-(Bmin`max`height-Bpad*2))/2) + 1 - 1 +
+ width-((width-(Bmin`max`height-Bpad*2))/2)*2-3"
+ y2="((height-(Bmin`max`height-Bpad*2))/2) +1- 1 +
+ (height-((height-(Bmin`max`height-Bpad*2))/2)*2-3) / 2"/>
+
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2) + 1- 1"
+ y1="((height-(Bmin`max`height-Bpad*2))/2) +1 - 1"
+ x2="((width-(Bmin`max`height-Bpad*2))/2) + 1 - 1"
+ y2="((height-(Bmin`max`height-Bpad*2))/2) +1 - 1 +
+ height-((height-(Bmin`max`height-Bpad*2))/2)*2-3"/>
+
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" width="1"
+ x1="((width-(Bmin`max`height-Bpad*2))/2) + 1 - 1"
+ y1="((height-(Bmin`max`height-Bpad*2))/2) +1 - 1 +
+ height-((height-(Bmin`max`height-Bpad*2))/2)*2-3"
+ x2="((width-(Bmin`max`height-Bpad*2))/2) + 1 - 1 +
+ (width-((width-(Bmin`max`height-Bpad*2))/2)*2-3) / 2"
+ y2="((height-(Bmin`max`height-Bpad*2))/2) +1 - 1 +
+ height-((height-(Bmin`max`height-Bpad*2))/2)*2-3"/>
+ <!-- / second window at the icon button (perberos was here!) -->
+</draw_ops>
+
+<draw_ops name="restore_button_normal">
+ <include name="button_bg"/>
+ <include name="restore_button_icon"/>
+</draw_ops>
+<draw_ops name="restore_button_prelight">
+ <include name="button_bg_prelight"/>
+ <include name="restore_button_icon"/>
+</draw_ops>
+<draw_ops name="restore_button_pressed">
+ <include name="button_bg_pressed"/>
+ <include name="restore_button_icon"/>
+</draw_ops>
+<draw_ops name="restore_button_unfocused">
+ <include name="button_bg_unfocused"/>
+ <include name="restore_button_icon_unfocused"/>
+</draw_ops>
+<draw_ops name="restore_button_unfocused_prelight">
+ <include name="button_bg_unfocused_prelight"/>
+ <include name="restore_button_icon_unfocused"/>
+</draw_ops>
+<draw_ops name="restore_button_unfocused_pressed">
+ <include name="button_bg_unfocused_pressed"/>
+ <include name="restore_button_icon_unfocused"/>
+</draw_ops>
+
+<!-- minimize icon -->
+<draw_ops name="minimize_button_icon">
+ <!-- outside border -->
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" filled="false"
+ x="((width-(Bmin`max`height-Bpad*2))/2)-1" y="height - ((height-(Bmin`max`height-Bpad*2))/2) - 3"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2+1" height="3"/>
+ <!-- icon -->
+ <rectangle color="blend/gtk:bg[SELECTED]/#FFFFFF/0.75" filled="true"
+ x="((width-(Bmin`max`height-Bpad*2))/2)" y="height - ((height-(Bmin`max`height-Bpad*2))/2) - 2"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2" height="2"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_icon_unfocused">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.45" filled="true"
+ x="((width-(Bmin`max`height-Bpad*2))/2)" y="height - ((height-(Bmin`max`height-Bpad*2))/2) - 2"
+ width="width-((width-(Bmin`max`height-Bpad*2))/2)*2" height="2"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_normal">
+ <include name="button_bg"/>
+ <include name="minimize_button_icon"/>
+</draw_ops>
+<draw_ops name="minimize_button_prelight">
+ <include name="button_bg_prelight"/>
+ <include name="minimize_button_icon"/>
+</draw_ops>
+<draw_ops name="minimize_button_pressed">
+ <include name="button_bg_pressed"/>
+ <include name="minimize_button_icon"/>
+</draw_ops>
+<draw_ops name="minimize_button_unfocused">
+ <include name="button_bg_unfocused"/>
+ <include name="minimize_button_icon_unfocused"/>
+</draw_ops>
+<draw_ops name="minimize_button_unfocused_prelight">
+ <include name="button_bg_unfocused_prelight"/>
+ <include name="minimize_button_icon_unfocused"/>
+</draw_ops>
+<draw_ops name="minimize_button_unfocused_pressed">
+ <include name="button_bg_unfocused_pressed"/>
+ <include name="minimize_button_icon_unfocused"/>
+</draw_ops>
+
+<draw_ops name="blank">
+<!-- nothing -->
+</draw_ops>
+
+<!-- ::: FRAME STYLES ::: -->
+<frame_style name="normal" geometry="normal">
+ <piece position="entire_background" draw_ops="round_bevel_unfocused"/>
+ <piece position="title" draw_ops="title_unfocused"/>
+ <button function="close" state="normal" draw_ops="close_button_unfocused"/>
+ <button function="close" state="pressed" draw_ops="close_button_unfocused_pressed"/>
+ <button function="close" state="prelight" draw_ops="close_button_unfocused_prelight"/>
+ <button function="maximize" state="normal" draw_ops="maximize_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_unfocused_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="maximize_button_unfocused_prelight"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button_unfocused"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_unfocused_pressed"/>
+ <button function="minimize" state="prelight" draw_ops="minimize_button_unfocused_prelight"/>
+ <button function="menu" state="normal" draw_ops="menu_button_normal"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_pressed"/>
+</frame_style>
+
+<frame_style name="normal_shaded" geometry="shaded" parent="normal">
+ <piece position="entire_background" draw_ops="round_bevel_unfocused_shaded"/>
+</frame_style>
+
+<frame_style name="focused" geometry="normal" parent="normal">
+ <piece position="entire_background" draw_ops="round_bevel"/>
+ <piece position="title" draw_ops="title"/>
+ <button function="close" state="normal" draw_ops="close_button_normal"/>
+ <button function="close" state="pressed" draw_ops="close_button_pressed"/>
+ <button function="close" state="prelight" draw_ops="close_button_prelight"/>
+ <button function="maximize" state="normal" draw_ops="maximize_button_normal"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="maximize_button_prelight"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button_normal"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_pressed"/>
+ <button function="minimize" state="prelight" draw_ops="minimize_button_prelight"/>
+</frame_style>
+
+<frame_style name="focused_shaded" geometry="shaded" parent="focused">
+ <piece position="entire_background" draw_ops="round_bevel_shaded"/>
+</frame_style>
+
+<frame_style name="normal_maximized" geometry="normal_maximized" parent="normal">
+ <piece position="entire_background" draw_ops="bevel_maximized_unfocused"/>
+ <button function="maximize" state="normal" draw_ops="restore_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_unfocused_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="restore_button_unfocused_prelight"/>
+</frame_style>
+
+<frame_style name="focused_maximized" geometry="normal_maximized" parent="focused">
+ <piece position="entire_background" draw_ops="bevel_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button_normal"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="restore_button_prelight"/>
+</frame_style>
+
+<frame_style name="border" geometry="border" parent="normal">
+ <piece position="entire_background" draw_ops="border"/>
+ <piece position="title" draw_ops="blank"/>
+</frame_style>
+
+<frame_style name="utility_normal" geometry="utility" parent="normal">
+ <piece position="entire_background" draw_ops="bevel_unfocused"/>
+</frame_style>
+<frame_style name="utility_focused" geometry="utility" parent="focused">
+ <piece position="entire_background" draw_ops="bevel"/>
+</frame_style>
+<frame_style name="utility_focused_shaded" geometry="utility" parent="focused_shaded">
+ <piece position="entire_background" draw_ops="bevel_shaded"/>
+</frame_style>
+
+<frame_style_set name="normal">
+ <frame focus="yes" state="normal" resize="both" style="focused"/>
+ <frame focus="no" state="normal" resize="both" style="normal"/>
+ <frame focus="yes" state="maximized" style="focused_maximized"/>
+ <frame focus="no" state="maximized" style="normal_maximized"/>
+ <frame focus="yes" state="shaded" style="focused_shaded"/>
+ <frame focus="no" state="shaded" style="normal_shaded"/>
+ <frame focus="yes" state="maximized_and_shaded" style="focused_maximized"/>
+ <frame focus="no" state="maximized_and_shaded" style="normal_maximized"/>
+</frame_style_set>
+
+<frame_style_set name="utility" parent="normal">
+ <frame focus="yes" state="normal" resize="both" style="utility_focused"/>
+ <frame focus="no" state="normal" resize="both" style="utility_normal"/>
+ <!-- this is a bunch of crack since utility windows shouldn't be maximized -->
+ <frame focus="yes" state="maximized" style="focused"/>
+ <frame focus="no" state="maximized" style="normal"/>
+ <frame focus="yes" state="shaded" style="utility_focused_shaded"/>
+ <frame focus="no" state="shaded" style="utility_normal"/>
+ <frame focus="yes" state="maximized_and_shaded" style="focused_shaded"/>
+ <frame focus="no" state="maximized_and_shaded" style="normal"/>
+</frame_style_set>
+
+<frame_style_set name="border">
+ <frame focus="yes" state="normal" resize="both" style="border"/>
+ <frame focus="no" state="normal" resize="both" style="border"/>
+ <frame focus="yes" state="maximized" style="border"/>
+ <frame focus="no" state="maximized" style="border"/>
+ <frame focus="yes" state="shaded" style="border"/>
+ <frame focus="no" state="shaded" style="border"/>
+ <frame focus="yes" state="maximized_and_shaded" style="border"/>
+ <frame focus="no" state="maximized_and_shaded" style="border"/>
+</frame_style_set>
+
+<window type="normal" style_set="normal"/>
+<window type="dialog" style_set="normal"/>
+<window type="modal_dialog" style_set="normal"/>
+<window type="menu" style_set="normal"/>
+<window type="utility" style_set="utility"/>
+<window type="border" style_set="border"/>
+
+<menu_icon function="close" state="normal" draw_ops="close_button_icon_unfocused"/>
+<menu_icon function="maximize" state="normal" draw_ops="maximize_button_icon_unfocused"/>
+<menu_icon function="unmaximize" state="normal" draw_ops="restore_button_icon_unfocused"/>
+<menu_icon function="minimize" state="normal" draw_ops="minimize_button_icon_unfocused"/>
+
+</metacity_theme>
diff --git a/src/themes/Dopple-Left/metacity-theme-1.xml b/src/themes/Dopple-Left/metacity-theme-1.xml
new file mode 100644
index 00000000..ec933ca9
--- /dev/null
+++ b/src/themes/Dopple-Left/metacity-theme-1.xml
@@ -0,0 +1,1135 @@
+<?xml version="1.0"?>
+<metacity_theme>
+
+<info>
+ <name>Dopple</name>
+ <author>Brandon Wright</author>
+ <copyright>2009</copyright>
+ <date>January 21, 2009</date>
+ <description>A Clearlooks-styled theme with Tango basics.</description>
+</info>
+
+<frame_geometry name="normal" rounded_top_left="true" rounded_top_right="true">
+ <distance name="left_width" value="3"/>
+ <distance name="right_width" value="3"/>
+ <distance name="bottom_height" value="3"/>
+ <distance name="left_titlebar_edge" value="4"/>
+ <distance name="right_titlebar_edge" value="4"/>
+ <aspect_ratio name="button" value="1"/>
+ <distance name="title_vertical_pad" value="2"/>
+ <border name="title_border" left="3" right="4" top="2" bottom="2"/>
+ <border name="button_border" left="1" right="1" top="3" bottom="3"/>
+</frame_geometry>
+
+<frame_geometry name="normal_small_borders" parent="normal" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_titlebar_edge" value="1" />
+ <distance name="right_titlebar_edge" value="1" />
+ <distance name="left_width" value="0" />
+ <distance name="right_width" value="0" />
+ <distance name="bottom_height" value="0" />
+</frame_geometry>
+
+<frame_geometry name="utility" parent="normal">
+</frame_geometry>
+
+<frame_geometry name="border" has_title="false" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="0"/>
+ <distance name="right_titlebar_edge" value="0"/>
+ <distance name="button_width" value="0"/>
+ <distance name="button_height" value="0"/>
+ <distance name="title_vertical_pad" value="4"/>
+ <border name="title_border" left="0" right="0" top="0" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="0" bottom="0"/>
+</frame_geometry>
+
+<!-- Buttons -->
+<draw_ops name="button_bg_unfocused">
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[NORMAL]/0.8" />
+ <color value="shade/gtk:bg[NORMAL]/0.675" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width - 1" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[NORMAL]/0.8" />
+ <color value="shade/gtk:bg[NORMAL]/0.675" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.90"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ <color value="shade/gtk:bg[NORMAL]/0.90" />
+ </gradient>
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[NORMAL]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ <color value="shade/gtk:bg[NORMAL]/0.90" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.1"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.1"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/0.9"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/0.9"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="button_bg_prelight_unfocused">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/1.15" />
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[NORMAL]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+
+</draw_ops>
+
+<draw_ops name="button_pressed_bg_unfocused">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" /> -->
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+<!-- <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient> -->
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[NORMAL]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.00" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<!-- Buttons -->
+<draw_ops name="button_bg">
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="0" y1="2"
+ x2="0" y2="height-3" /> -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/0.8" />
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ </gradient>
+
+ <!-- Right line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" /> -->
+
+ <gradient type="vertical" x="width-1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/0.8" />
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/1.22"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.07"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.22" />
+ <color value="shade/gtk:bg[SELECTED]/1.07" />
+ </gradient>
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[SELECTED]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.22" />
+ <color value="shade/gtk:bg[SELECTED]/1.07" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/0.975"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/0.975"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="button_bg_prelight">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[SELECTED]/1.15" />
+ <color value="shade/gtk:bg[SELECTED]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.25" />
+ <color value="shade/gtk:bg[SELECTED]/1.05" />
+ </gradient>
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[SELECTED]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.25" />
+ <color value="shade/gtk:bg[SELECTED]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+
+</draw_ops>
+
+<draw_ops name="button_pressed_bg">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[SELECTED]/0.95" />
+ <color value="shade/gtk:bg[SELECTED]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" /> -->
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+<!-- <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.25" />
+ <color value="shade/gtk:bg[SELECTED]/1.05" />
+ </gradient> -->
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[SELECTED]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.00" />
+ <color value="shade/gtk:bg[SELECTED]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="menu_glyph">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" />
+</draw_ops>
+
+<draw_ops name="menu_glyph_unfocused">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" alpha="0.5"/>
+</draw_ops>
+
+<draw_ops name="close_glyph">
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="white" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="white" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_shadow">
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_shadow_dark">
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused_lighter">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph">
+ <rectangle color="white" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="white" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="white" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="white" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+<draw_ops name="maximize_glyph_shadow">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.85" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_shadow_dark">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.8" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+<draw_ops name="maximize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+
+
+</draw_ops>
+
+<draw_ops name="minimize_glyph">
+ <rectangle color="white" x="2" y="height * 2 / 3" width="width-4" height="height - height * 2 / 3 - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_shadow">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.85" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_shadow_dark">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.8" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="menu_button">
+ <include name="menu_glyph" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="menu_button_unfocused">
+ <include name="menu_glyph_unfocused" x="0" y="0" />
+</draw_ops>
+
+<draw_ops name="menu_button_pressed">
+ <include name="menu_glyph_unfocused" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="minimize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_shadow" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4" />
+</draw_ops>
+
+<draw_ops name="minimize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="minimize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+
+<draw_ops name="maximize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="maximize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="mini_window_icon">
+ <rectangle color="gtk:bg[NORMAL]" filled="true"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <rectangle color="gtk:fg[NORMAL]" filled="false"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <line color="gtk:fg[NORMAL]" width="2"
+ x1="0" y1="1" x2="width" y2="1"/>
+</draw_ops>
+
+<draw_ops name="restore_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow" x="3" y="5" width="width-6" height="height-6" />
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_prelight">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow_dark" x="3" y="5" width="width-6" height="height-6"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_unfocused_lighter" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="maximize_glyph_unfocused_lighter" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="close_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_shadow" x="2" y="4" width="width-4" height="height-4" />
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="close_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.5"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel_unfocused">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="title_background">
+
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+<!--
+ <rectangle color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x="1" y="1" width="width-3" height="height-3"/>
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-2" y1="1" x2="width-2" y2="height-2"/>
+-->
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="1" y="1" width="width-3" height="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-2" y1="1" x2="width-2" y2="height-2"/>
+
+ <gradient type="vertical" x="2" y="2" width="width-4" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="3" y1="height-1"
+ x2="width-4" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.975"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="4" y1="1" x2="4" y2="1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+<!--
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="2" y1="3" x2="2" y2="4" />
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="3" y1="2" x2="4" y2="2" />
+
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-5" y1="2" x2="width-4" y2="2" />
+-->
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="3" y1="2" x2="4" y2="2" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+ <!-- <gradient type="vertical" x="1" y="5" width="1" height="height-6">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient>
+
+ <gradient type="vertical" x="width-2" y="5" width="1" height="height-6">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient> -->
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="1" y1="height-1" x2="1" y2="height-1" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-2" y1="height-1" x2="width-2" y2="height-1" />
+</draw_ops>
+
+<draw_ops name="title_background_maximized">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="0" y="1" width="width-2" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-1" y1="1" x2="width-1" y2="height-2"/>
+
+ <gradient type="vertical" x="1" y="2" width="width-2" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ </gradient>
+
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="0" y="1" width="width-1" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="0" y1="height-1"
+ x2="width-1" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.95"
+ x1="0" y1="height-2"
+ x2="width-1" y2="height-2" />
+
+<!-- <gradient type="vertical" x="0" y="1" width="1" height="height-2">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient>
+
+ <gradient type="vertical" x="width-1" y="1" width="1" height="height-2">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient> -->
+</draw_ops>
+
+<draw_ops name="title_unfocused_background">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.05"/>
+ <color value="shade/gtk:bg[NORMAL]/0.85"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/0.945" x1="1" y1="height-2" x2="width-3" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="0" y1="height-1" x2="width-1" y2="height-1" />
+
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="1" y1="1" x2="width-2" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="1" y1="1" x2="1" y2="height-1"/>
+
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-2" y1="1" x2="width-2" y2="height" />
+
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="4" y1="1" x2="4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="3" y1="2" x2="4" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+
+</draw_ops>
+
+<draw_ops name="title_unfocused_background_maximized">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="0" y="1" width="width" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.05"/>
+ <color value="shade/gtk:bg[NORMAL]/0.85"/>
+ </gradient>
+ <line color="shade/gtk:bg[NORMAL]/0.945" x1="0" y1="height-2" x2="width-1" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="0" y1="height-1" x2="width-1" y2="height-1" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="0" y1="1" x2="width-1" y2="1"/>
+
+</draw_ops>
+
+<draw_ops name="blank">
+<!-- nothing -->
+</draw_ops>
+
+<draw_ops name="focus_outline">
+ <rectangle x="0" y="0" width="width-1" height="height-1" color="shade/gtk:bg[SELECTED]/0.7" />
+ <rectangle x="1" y="1" width="width-3" height="height-3" color="shade/gtk:bg[SELECTED]/1.2" />
+ <rectangle x="2" y="2" width="width-5" height="height-5" color="shade/gtk:bg[SELECTED]/0.7" />
+</draw_ops>
+
+<draw_ops name="unfocus_outline">
+ <rectangle x="0" y="0" width="width-1" height="height-1" color="shade/gtk:bg[NORMAL]/0.7" />
+ <rectangle x="1" y="1" width="width-3" height="height-3" color="shade/gtk:bg[NORMAL]/1.2" />
+ <rectangle x="2" y="2" width="width-5" height="height-5" color="shade/gtk:bg[NORMAL]/0.7" />
+</draw_ops>
+
+<draw_ops name="focus_background">
+ <include name="focus_outline"/>
+</draw_ops>
+
+<draw_ops name="unfocus_background">
+ <include name="unfocus_outline" />
+</draw_ops>
+
+<draw_ops name="title_text_focused_with_icon">
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) - 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) - 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) + 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) + 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+ <title color="#ffffff"
+ x="0"
+ y="(((height - title_height) / 2) `max` 0)"/>
+
+</draw_ops>
+
+<draw_ops name="title_text_with_icon">
+ <title color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.4"
+ x="(0)"
+ y="((height - title_height) / 2) `max` 0"/>
+</draw_ops>
+
+<draw_ops name="title_normal">
+ <include name="title_text_with_icon"/>
+</draw_ops>
+
+<draw_ops name="title_focused">
+ <include name="title_text_focused_with_icon"/>
+</draw_ops>
+
+<frame_style name="normal_unfocused" geometry="normal">
+ <piece position="entire_background" draw_ops="unfocus_background"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background"/>
+ <piece position="title" draw_ops="title_normal"/>
+
+ <button function="close" state="normal" draw_ops="close_button_unfocused"/>
+ <button function="close" state="pressed" draw_ops="close_button_unfocused_pressed"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button_unfocused"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_unfocused_pressed"/>
+ <button function="maximize" state="normal" draw_ops="maximize_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_unfocused_pressed"/>
+ <button function="menu" state="normal" draw_ops="menu_button_unfocused"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_unfocused"/>
+</frame_style>
+
+<frame_style name="normal_focused" geometry="normal">
+ <piece position="entire_background" draw_ops="focus_background"/>
+ <piece position="titlebar" draw_ops="title_background"/>
+ <piece position="title" draw_ops="title_focused"/>
+ <button function="close" state="normal" draw_ops="close_button"/>
+ <button function="close" state="pressed" draw_ops="close_button_pressed"/>
+ <button function="close" state="prelight" draw_ops="close_button_focus"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_pressed"/>
+ <button function="minimize" state="prelight" draw_ops="minimize_button_focus" />
+ <button function="maximize" state="normal" draw_ops="maximize_button"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="maximize_button_focus"/>
+ <button function="menu" state="normal" draw_ops="menu_button"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_pressed"/>
+
+</frame_style>
+
+<frame_style name="maximized_unfocused" geometry="normal_small_borders" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="blank"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_unfocused_pressed"/>
+</frame_style>
+
+<frame_style name="maximized_focused" geometry="normal_small_borders" parent="normal_focused">
+ <piece position="entire_background" draw_ops="focus_outline"/>
+ <piece position="titlebar" draw_ops="title_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="restore_button_prelight" />
+</frame_style>
+
+<frame_style name="border" geometry="border" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="outer_bevel"/>
+ <piece position="titlebar" draw_ops="blank"/>
+ <piece position="title" draw_ops="blank"/>
+</frame_style>
+
+<frame_style_set name="normal">
+<frame focus="yes" state="normal" resize="both" style="normal_focused"/>
+<frame focus="no" state="normal" resize="both" style="normal_unfocused"/>
+<frame focus="yes" state="maximized" style="maximized_focused"/>
+<frame focus="no" state="maximized" style="maximized_unfocused"/>
+<frame focus="yes" state="shaded" style="normal_focused"/>
+<frame focus="no" state="shaded" style="normal_unfocused"/>
+<frame focus="yes" state="maximized_and_shaded" style="maximized_focused"/>
+<frame focus="no" state="maximized_and_shaded" style="maximized_unfocused"/>
+</frame_style_set>
+
+<frame_style_set name="border">
+<frame focus="yes" state="normal" resize="both" style="border"/>
+<frame focus="no" state="normal" resize="both" style="border"/>
+<frame focus="yes" state="maximized" style="border"/>
+<frame focus="no" state="maximized" style="border"/>
+<frame focus="yes" state="shaded" style="border"/>
+<frame focus="no" state="shaded" style="border"/>
+<frame focus="yes" state="maximized_and_shaded" style="border"/>
+<frame focus="no" state="maximized_and_shaded" style="border"/>
+</frame_style_set>
+
+<window type="normal" style_set="normal"/>
+<window type="dialog" style_set="normal"/>
+<window type="modal_dialog" style_set="normal"/>
+<window type="menu" style_set="normal"/>
+<window type="utility" style_set="normal"/>
+<window type="border" style_set="normal"/>
+
+<menu_icon function="close" state="normal" draw_ops="close_button"/>
+<menu_icon function="maximize" state="normal" draw_ops="maximize_button"/>
+<menu_icon function="unmaximize" state="normal" draw_ops="restore_button"/>
+<menu_icon function="minimize" state="normal" draw_ops="minimize_button"/>
+
+</metacity_theme>
diff --git a/src/themes/Dopple/metacity-theme-1.xml b/src/themes/Dopple/metacity-theme-1.xml
new file mode 100644
index 00000000..ef3299ae
--- /dev/null
+++ b/src/themes/Dopple/metacity-theme-1.xml
@@ -0,0 +1,1135 @@
+<?xml version="1.0"?>
+<metacity_theme>
+
+<info>
+ <name>Dopple</name>
+ <author>Brandon Wright</author>
+ <copyright>2009</copyright>
+ <date>January 21, 2009</date>
+ <description>A Clearlooks-styled theme with Tango basics.</description>
+</info>
+
+<frame_geometry name="normal" rounded_top_left="true" rounded_top_right="true">
+ <distance name="left_width" value="3"/>
+ <distance name="right_width" value="3"/>
+ <distance name="bottom_height" value="3"/>
+ <distance name="left_titlebar_edge" value="4"/>
+ <distance name="right_titlebar_edge" value="4"/>
+ <aspect_ratio name="button" value="1"/>
+ <distance name="title_vertical_pad" value="2"/>
+ <border name="title_border" left="3" right="4" top="2" bottom="2"/>
+ <border name="button_border" left="1" right="1" top="3" bottom="3"/>
+</frame_geometry>
+
+<frame_geometry name="normal_small_borders" parent="normal" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_titlebar_edge" value="1" />
+ <distance name="right_titlebar_edge" value="1" />
+ <distance name="left_width" value="0" />
+ <distance name="right_width" value="0" />
+ <distance name="bottom_height" value="0" />
+</frame_geometry>
+
+<frame_geometry name="utility" parent="normal">
+</frame_geometry>
+
+<frame_geometry name="border" has_title="false" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="0"/>
+ <distance name="right_titlebar_edge" value="0"/>
+ <distance name="button_width" value="0"/>
+ <distance name="button_height" value="0"/>
+ <distance name="title_vertical_pad" value="4"/>
+ <border name="title_border" left="0" right="0" top="0" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="0" bottom="0"/>
+</frame_geometry>
+
+<!-- Buttons -->
+<draw_ops name="button_bg_unfocused">
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[NORMAL]/0.8" />
+ <color value="shade/gtk:bg[NORMAL]/0.675" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width - 1" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[NORMAL]/0.8" />
+ <color value="shade/gtk:bg[NORMAL]/0.675" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.90"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ <color value="shade/gtk:bg[NORMAL]/0.90" />
+ </gradient>
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[NORMAL]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ <color value="shade/gtk:bg[NORMAL]/0.90" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.1"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.1"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/0.9"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/0.9"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="button_bg_prelight_unfocused">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/1.15" />
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[NORMAL]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+
+</draw_ops>
+
+<draw_ops name="button_pressed_bg_unfocused">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" /> -->
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+<!-- <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient> -->
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[NORMAL]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.00" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<!-- Buttons -->
+<draw_ops name="button_bg">
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="0" y1="2"
+ x2="0" y2="height-3" /> -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/0.8" />
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ </gradient>
+
+ <!-- Right line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" /> -->
+
+ <gradient type="vertical" x="width-1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/0.8" />
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/1.22"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.07"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.22" />
+ <color value="shade/gtk:bg[SELECTED]/1.07" />
+ </gradient>
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[SELECTED]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.22" />
+ <color value="shade/gtk:bg[SELECTED]/1.07" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/0.975"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/0.975"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="button_bg_prelight">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[SELECTED]/1.15" />
+ <color value="shade/gtk:bg[SELECTED]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.25" />
+ <color value="shade/gtk:bg[SELECTED]/1.05" />
+ </gradient>
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[SELECTED]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.25" />
+ <color value="shade/gtk:bg[SELECTED]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+
+</draw_ops>
+
+<draw_ops name="button_pressed_bg">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[SELECTED]/0.95" />
+ <color value="shade/gtk:bg[SELECTED]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" /> -->
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[SELECTED]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+<!-- <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.25" />
+ <color value="shade/gtk:bg[SELECTED]/1.05" />
+ </gradient> -->
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[SELECTED]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[SELECTED]/1.00" />
+ <color value="shade/gtk:bg[SELECTED]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="menu_glyph">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" />
+</draw_ops>
+
+<draw_ops name="menu_glyph_unfocused">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" alpha="0.5"/>
+</draw_ops>
+
+<draw_ops name="close_glyph">
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="white" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="white" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_shadow">
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_shadow_dark">
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused_lighter">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph">
+ <rectangle color="white" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="white" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="white" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="white" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+<draw_ops name="maximize_glyph_shadow">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.85" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_shadow_dark">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.8" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+<draw_ops name="maximize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+
+
+</draw_ops>
+
+<draw_ops name="minimize_glyph">
+ <rectangle color="white" x="2" y="height * 2 / 3" width="width-4" height="height - height * 2 / 3 - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_shadow">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.85" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_shadow_dark">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.8" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="menu_button">
+ <include name="menu_glyph" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="menu_button_unfocused">
+ <include name="menu_glyph_unfocused" x="0" y="0" />
+</draw_ops>
+
+<draw_ops name="menu_button_pressed">
+ <include name="menu_glyph_unfocused" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="minimize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_shadow" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4" />
+</draw_ops>
+
+<draw_ops name="minimize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="minimize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+
+<draw_ops name="maximize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="maximize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="mini_window_icon">
+ <rectangle color="gtk:bg[NORMAL]" filled="true"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <rectangle color="gtk:fg[NORMAL]" filled="false"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <line color="gtk:fg[NORMAL]" width="2"
+ x1="0" y1="1" x2="width" y2="1"/>
+</draw_ops>
+
+<draw_ops name="restore_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow" x="3" y="5" width="width-6" height="height-6" />
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_prelight">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow_dark" x="3" y="5" width="width-6" height="height-6"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_unfocused_lighter" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="maximize_glyph_unfocused_lighter" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="close_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_shadow" x="2" y="4" width="width-4" height="height-4" />
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="close_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.5"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel_unfocused">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="title_background">
+
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+<!--
+ <rectangle color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x="1" y="1" width="width-3" height="height-3"/>
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-2" y1="1" x2="width-2" y2="height-2"/>
+-->
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="1" y="1" width="width-3" height="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-2" y1="1" x2="width-2" y2="height-2"/>
+
+ <gradient type="vertical" x="2" y="2" width="width-4" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="3" y1="height-1"
+ x2="width-4" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.975"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="4" y1="1" x2="4" y2="1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+<!--
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="2" y1="3" x2="2" y2="4" />
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="3" y1="2" x2="4" y2="2" />
+
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-5" y1="2" x2="width-4" y2="2" />
+-->
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="3" y1="2" x2="4" y2="2" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+ <!-- <gradient type="vertical" x="1" y="5" width="1" height="height-6">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient>
+
+ <gradient type="vertical" x="width-2" y="5" width="1" height="height-6">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient> -->
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="1" y1="height-1" x2="1" y2="height-1" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-2" y1="height-1" x2="width-2" y2="height-1" />
+</draw_ops>
+
+<draw_ops name="title_background_maximized">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="0" y="1" width="width-2" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-1" y1="1" x2="width-1" y2="height-2"/>
+
+ <gradient type="vertical" x="1" y="2" width="width-2" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ </gradient>
+
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="0" y="1" width="width-1" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="0" y1="height-1"
+ x2="width-1" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.95"
+ x1="0" y1="height-2"
+ x2="width-1" y2="height-2" />
+
+<!-- <gradient type="vertical" x="0" y="1" width="1" height="height-2">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient>
+
+ <gradient type="vertical" x="width-1" y="1" width="1" height="height-2">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient> -->
+</draw_ops>
+
+<draw_ops name="title_unfocused_background">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.05"/>
+ <color value="shade/gtk:bg[NORMAL]/0.85"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/0.945" x1="1" y1="height-2" x2="width-3" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="0" y1="height-1" x2="width-1" y2="height-1" />
+
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="1" y1="1" x2="width-2" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="1" y1="1" x2="1" y2="height-1"/>
+
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-2" y1="1" x2="width-2" y2="height" />
+
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="4" y1="1" x2="4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="3" y1="2" x2="4" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+
+</draw_ops>
+
+<draw_ops name="title_unfocused_background_maximized">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="0" y="1" width="width" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.05"/>
+ <color value="shade/gtk:bg[NORMAL]/0.85"/>
+ </gradient>
+ <line color="shade/gtk:bg[NORMAL]/0.945" x1="0" y1="height-2" x2="width-1" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="0" y1="height-1" x2="width-1" y2="height-1" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="0" y1="1" x2="width-1" y2="1"/>
+
+</draw_ops>
+
+<draw_ops name="blank">
+<!-- nothing -->
+</draw_ops>
+
+<draw_ops name="focus_outline">
+ <rectangle x="0" y="0" width="width-1" height="height-1" color="shade/gtk:bg[SELECTED]/0.7" />
+ <rectangle x="1" y="1" width="width-3" height="height-3" color="shade/gtk:bg[SELECTED]/1.2" />
+ <rectangle x="2" y="2" width="width-5" height="height-5" color="shade/gtk:bg[SELECTED]/0.7" />
+</draw_ops>
+
+<draw_ops name="unfocus_outline">
+ <rectangle x="0" y="0" width="width-1" height="height-1" color="shade/gtk:bg[NORMAL]/0.7" />
+ <rectangle x="1" y="1" width="width-3" height="height-3" color="shade/gtk:bg[NORMAL]/1.2" />
+ <rectangle x="2" y="2" width="width-5" height="height-5" color="shade/gtk:bg[NORMAL]/0.7" />
+</draw_ops>
+
+<draw_ops name="focus_background">
+ <include name="focus_outline"/>
+</draw_ops>
+
+<draw_ops name="unfocus_background">
+ <include name="unfocus_outline" />
+</draw_ops>
+
+<draw_ops name="title_text_focused_with_icon">
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) - 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) - 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) + 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) + 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+ <title color="#ffffff"
+ x="(((width - title_width) / 2) `max` 0)"
+ y="(((height - title_height) / 2) `max` 0)"/>
+
+</draw_ops>
+
+<draw_ops name="title_text_with_icon">
+ <title color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.4"
+ x="(((width - title_width) / 2) `max` 0)"
+ y="((height - title_height) / 2) `max` 0"/>
+</draw_ops>
+
+<draw_ops name="title_normal">
+ <include name="title_text_with_icon"/>
+</draw_ops>
+
+<draw_ops name="title_focused">
+ <include name="title_text_focused_with_icon"/>
+</draw_ops>
+
+<frame_style name="normal_unfocused" geometry="normal">
+ <piece position="entire_background" draw_ops="unfocus_background"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background"/>
+ <piece position="title" draw_ops="title_normal"/>
+
+ <button function="close" state="normal" draw_ops="close_button_unfocused"/>
+ <button function="close" state="pressed" draw_ops="close_button_unfocused_pressed"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button_unfocused"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_unfocused_pressed"/>
+ <button function="maximize" state="normal" draw_ops="maximize_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_unfocused_pressed"/>
+ <button function="menu" state="normal" draw_ops="menu_button_unfocused"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_unfocused"/>
+</frame_style>
+
+<frame_style name="normal_focused" geometry="normal">
+ <piece position="entire_background" draw_ops="focus_background"/>
+ <piece position="titlebar" draw_ops="title_background"/>
+ <piece position="title" draw_ops="title_focused"/>
+ <button function="close" state="normal" draw_ops="close_button"/>
+ <button function="close" state="pressed" draw_ops="close_button_pressed"/>
+ <button function="close" state="prelight" draw_ops="close_button_focus"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_pressed"/>
+ <button function="minimize" state="prelight" draw_ops="minimize_button_focus" />
+ <button function="maximize" state="normal" draw_ops="maximize_button"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="maximize_button_focus"/>
+ <button function="menu" state="normal" draw_ops="menu_button"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_pressed"/>
+
+</frame_style>
+
+<frame_style name="maximized_unfocused" geometry="normal_small_borders" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="blank"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_unfocused_pressed"/>
+</frame_style>
+
+<frame_style name="maximized_focused" geometry="normal_small_borders" parent="normal_focused">
+ <piece position="entire_background" draw_ops="focus_outline"/>
+ <piece position="titlebar" draw_ops="title_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="restore_button_prelight" />
+</frame_style>
+
+<frame_style name="border" geometry="border" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="outer_bevel"/>
+ <piece position="titlebar" draw_ops="blank"/>
+ <piece position="title" draw_ops="blank"/>
+</frame_style>
+
+<frame_style_set name="normal">
+<frame focus="yes" state="normal" resize="both" style="normal_focused"/>
+<frame focus="no" state="normal" resize="both" style="normal_unfocused"/>
+<frame focus="yes" state="maximized" style="maximized_focused"/>
+<frame focus="no" state="maximized" style="maximized_unfocused"/>
+<frame focus="yes" state="shaded" style="normal_focused"/>
+<frame focus="no" state="shaded" style="normal_unfocused"/>
+<frame focus="yes" state="maximized_and_shaded" style="maximized_focused"/>
+<frame focus="no" state="maximized_and_shaded" style="maximized_unfocused"/>
+</frame_style_set>
+
+<frame_style_set name="border">
+<frame focus="yes" state="normal" resize="both" style="border"/>
+<frame focus="no" state="normal" resize="both" style="border"/>
+<frame focus="yes" state="maximized" style="border"/>
+<frame focus="no" state="maximized" style="border"/>
+<frame focus="yes" state="shaded" style="border"/>
+<frame focus="no" state="shaded" style="border"/>
+<frame focus="yes" state="maximized_and_shaded" style="border"/>
+<frame focus="no" state="maximized_and_shaded" style="border"/>
+</frame_style_set>
+
+<window type="normal" style_set="normal"/>
+<window type="dialog" style_set="normal"/>
+<window type="modal_dialog" style_set="normal"/>
+<window type="menu" style_set="normal"/>
+<window type="utility" style_set="normal"/>
+<window type="border" style_set="normal"/>
+
+<menu_icon function="close" state="normal" draw_ops="close_button"/>
+<menu_icon function="maximize" state="normal" draw_ops="maximize_button"/>
+<menu_icon function="unmaximize" state="normal" draw_ops="restore_button"/>
+<menu_icon function="minimize" state="normal" draw_ops="minimize_button"/>
+
+</metacity_theme>
diff --git a/src/themes/DustBlue/button_close_normal.png b/src/themes/DustBlue/button_close_normal.png
new file mode 100644
index 00000000..3dbfb0e2
--- /dev/null
+++ b/src/themes/DustBlue/button_close_normal.png
Binary files differ
diff --git a/src/themes/DustBlue/button_close_prelight.png b/src/themes/DustBlue/button_close_prelight.png
new file mode 100644
index 00000000..704de834
--- /dev/null
+++ b/src/themes/DustBlue/button_close_prelight.png
Binary files differ
diff --git a/src/themes/DustBlue/button_close_pressed.png b/src/themes/DustBlue/button_close_pressed.png
new file mode 100644
index 00000000..4f2263fb
--- /dev/null
+++ b/src/themes/DustBlue/button_close_pressed.png
Binary files differ
diff --git a/src/themes/DustBlue/button_max_normal.png b/src/themes/DustBlue/button_max_normal.png
new file mode 100644
index 00000000..8bf2f347
--- /dev/null
+++ b/src/themes/DustBlue/button_max_normal.png
Binary files differ
diff --git a/src/themes/DustBlue/button_max_prelight.png b/src/themes/DustBlue/button_max_prelight.png
new file mode 100644
index 00000000..c549bb79
--- /dev/null
+++ b/src/themes/DustBlue/button_max_prelight.png
Binary files differ
diff --git a/src/themes/DustBlue/button_max_pressed.png b/src/themes/DustBlue/button_max_pressed.png
new file mode 100644
index 00000000..4fe6439c
--- /dev/null
+++ b/src/themes/DustBlue/button_max_pressed.png
Binary files differ
diff --git a/src/themes/DustBlue/button_menu_normal.png b/src/themes/DustBlue/button_menu_normal.png
new file mode 100644
index 00000000..28600199
--- /dev/null
+++ b/src/themes/DustBlue/button_menu_normal.png
Binary files differ
diff --git a/src/themes/DustBlue/button_menu_prelight.png b/src/themes/DustBlue/button_menu_prelight.png
new file mode 100644
index 00000000..d16d92dc
--- /dev/null
+++ b/src/themes/DustBlue/button_menu_prelight.png
Binary files differ
diff --git a/src/themes/DustBlue/button_menu_pressed.png b/src/themes/DustBlue/button_menu_pressed.png
new file mode 100644
index 00000000..e7dfc357
--- /dev/null
+++ b/src/themes/DustBlue/button_menu_pressed.png
Binary files differ
diff --git a/src/themes/DustBlue/button_min_normal.png b/src/themes/DustBlue/button_min_normal.png
new file mode 100644
index 00000000..114ed3a5
--- /dev/null
+++ b/src/themes/DustBlue/button_min_normal.png
Binary files differ
diff --git a/src/themes/DustBlue/button_min_prelight.png b/src/themes/DustBlue/button_min_prelight.png
new file mode 100644
index 00000000..be44d1a8
--- /dev/null
+++ b/src/themes/DustBlue/button_min_prelight.png
Binary files differ
diff --git a/src/themes/DustBlue/button_min_pressed.png b/src/themes/DustBlue/button_min_pressed.png
new file mode 100644
index 00000000..045ab77c
--- /dev/null
+++ b/src/themes/DustBlue/button_min_pressed.png
Binary files differ
diff --git a/src/themes/DustBlue/menu.png b/src/themes/DustBlue/menu.png
new file mode 100644
index 00000000..4610e233
--- /dev/null
+++ b/src/themes/DustBlue/menu.png
Binary files differ
diff --git a/src/themes/DustBlue/metacity-theme-1.xml b/src/themes/DustBlue/metacity-theme-1.xml
new file mode 100644
index 00000000..69ad46f4
--- /dev/null
+++ b/src/themes/DustBlue/metacity-theme-1.xml
@@ -0,0 +1,409 @@
+<?xml version="1.0"?>
+
+<metacity_theme>
+<info>
+ <name>Dust-Blue</name>
+ <author>Kido Mariano, Rico Sta. Cruz and Modded by DarkAenima</author>
+ <copyright>GPL</copyright>
+ <date>Jul 28, 2008</date>
+ <description>Metacity theme</description>
+ <!-- Based on the Elegant Brit theme (though now really far away from it :P) -->
+</info>
+
+
+<!--
+ General window layout (geometric stuff)
+-->
+<frame_geometry name="frame_geometry_normal" title_scale="medium" rounded_top_left="true" rounded_top_right="true">
+ <distance name="left_width" value="1"/>
+ <distance name="right_width" value="1"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="2"/>
+ <distance name="right_titlebar_edge" value="1"/>
+ <distance name="button_width" value="28"/>
+ <distance name="button_height" value="20"/>
+ <distance name="title_vertical_pad" value="1"/>
+ <border name="title_border" left="2" right="2" top="3" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="2" bottom="1"/>
+</frame_geometry>
+
+<frame_geometry name="frame_geometry_abnormal" title_scale="medium" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_width" value="0"/>
+ <distance name="right_width" value="0"/>
+ <distance name="bottom_height" value="0"/>
+ <distance name="left_titlebar_edge" value="1"/>
+ <distance name="right_titlebar_edge" value="2"/>
+ <distance name="button_width" value="28"/>
+ <distance name="button_height" value="20"/>
+ <distance name="title_vertical_pad" value="0"/>
+ <border name="title_border" left="0" right="0" top="3" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="2" bottom="1"/>
+</frame_geometry>
+
+
+
+<!--
+ Window Title
+-->
+
+<draw_ops name="draw_title_text_normal">
+ <title x="1" y="(height - title_height) / 2 + 1" color="#2F2E2B"/>
+ <title x="0" y="(height - title_height) / 2" color="#FFFFFF"/>
+</draw_ops>
+
+<draw_ops name="draw_title_text_inactive">
+ <title x="0" y="(height - title_height) / 2" color="#727262"/>
+</draw_ops>
+
+<!--
+ Construct titlebar from rectangles instead so we can pick up the GTK theme
+-->
+
+<draw_ops name="draw_title">
+ <!-- Background gradient -->
+ <gradient type="vertical" x="0" y="0" width="width+9" height="height">
+ <!--<color value="#80594D"/>-->
+ <color value="shade/gtk:bg[SELECTED]/0.6"/>
+ <color value="shade/gtk:bg[NORMAL]/0.29" />
+ <color value="shade/gtk:bg[NORMAL]/0.27" />
+ <color value="shade/gtk:bg[NORMAL]/0.25" />
+ <color value="shade/gtk:bg[NORMAL]/0.24" />
+ </gradient>
+
+ <!-- Topmost dark line -->
+ <line color="shade/gtk:bg[NORMAL]/0.30" x1="0" x2="width" y1="0" y2="0"/>
+
+ <!-- Darkening of the left arch -->
+ <line color="shade/gtk:bg[NORMAL]/0.30" x1="0" x2="4" y1="1" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.30" x1="0" x2="2" y1="2" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.30" x1="0" x2="1" y1="3" y2="3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.30" x1="0" x2="1" y1="4" y2="4"/>
+ <line color="shade/gtk:bg[NORMAL]/0.30" x1="0" x2="0" y1="5" y2="20"/>
+
+ <!-- Top highlight -->
+ <!-- This uses <tint> (which supports alpha) instead of <line> (which doesn't) -->
+ <tint color="#ffffff" alpha="0.35" x="5" y="1" width="width - 10" height="1"/>
+
+ <!-- Upper-left highlight -->
+ <!-- Draw each pixel one by one. Again, using <tint> for alpha support. -->
+ <tint color="#ffffff" alpha="0.30" x="3" y="2" width="2" height="1"/>
+ <tint color="#ffffff" alpha="0.27" x="2" y="3" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.24" x="2" y="4" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.21" x="1" y="5" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.18" x="1" y="6" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.15" x="1" y="7" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.12" x="1" y="8" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.09" x="1" y="9" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.06" x="1" y="10" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.03" x="1" y="11" width="1" height="1"/>
+
+ <!-- Upper-right highlight -->
+ <!-- Same as above. -->
+ <tint color="#ffffff" alpha="0.30" x="width-5" y="2" width="2" height="1"/>
+ <tint color="#ffffff" alpha="0.27" x="width-3" y="3" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.24" x="width-3" y="4" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.21" x="width-2" y="5" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.18" x="width-2" y="6" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.15" x="width-2" y="7" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.12" x="width-2" y="8" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.09" x="width-2" y="9" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.06" x="width-2" y="10" width="1" height="1"/>
+ <tint color="#ffffff" alpha="0.03" x="width-2" y="11" width="1" height="1"/>
+
+</draw_ops>
+
+<draw_ops name="draw_title_inactive">
+ <!-- Background gradient -->
+ <gradient type="vertical" x="0" y="0" width="width+9" height="height">
+ <color value="shade/gtk:bg[NORMAL]/0.27" />
+ <color value="shade/gtk:bg[NORMAL]/0.24" />
+ </gradient>
+
+ <!-- Topmost dark line -->
+ <line color="shade/gtk:bg[NORMAL]/0.25" x1="1" x2="width-2" y1="0" y2="0"/>
+ <!-- Top highlight -->
+ <tint color="#ffffff" alpha="0.2" x="5" y="1" width="width - 10" height="1"/>
+
+ <!-- Lower-left highlight -->
+ <line color="shade/gtk:bg[NORMAL]/0.33" x1="3" x2 ="4" y1="2" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/0.32" x1="2" x2 ="2" y1="3" y2="4" />
+
+ <!-- Lower-left higlight fade -->
+ <gradient type="vertical" x="1" y="5" width="1" height="title_height - 4">
+ <color value="shade/gtk:bg[NORMAL]/0.30"/>
+ <color value="shade/gtk:bg[NORMAL]/0.25"/>
+ </gradient>
+
+ <!-- Upper right highlight -->
+ <line color="shade/gtk:bg[NORMAL]/0.30" x1="width-5" x2 ="width-4" y1="2" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/0.30" x1="width-3" x2 ="width-3" y1="3" y2="4" />
+
+ <!-- Lower-left higlight fade -->
+ <gradient type="vertical" x="width-2" y="5" width="1" height="title_height - 4">
+ <color value="shade/gtk:bg[NORMAL]/0.30"/>
+ <color value="shade/gtk:bg[NORMAL]/0.25"/>
+ </gradient>
+</draw_ops>
+
+<draw_ops name="draw_title_maximized">
+ <!-- Background gradient -->
+ <gradient type="vertical" x="0" y="0" width="width+9" height="height">
+ <!--<color value="#80594D"/>-->
+ <color value="shade/gtk:bg[SELECTED]/0.6"/>
+ <color value="shade/gtk:bg[NORMAL]/0.29" />
+ <color value="shade/gtk:bg[NORMAL]/0.27" />
+ <color value="shade/gtk:bg[NORMAL]/0.25" />
+ <color value="shade/gtk:bg[NORMAL]/0.24" />
+ </gradient>
+
+ <!-- Topmost dark line -->
+ <line color="shade/gtk:bg[NORMAL]/0.30" x1="0" x2="width" y1="0" y2="0"/>
+
+ <!-- Top highlight -->
+ <!-- This uses <tint> (which supports alpha) instead of <line> (which doesn't) -->
+ <tint color="#ffffff" alpha="0.35" x="1" y="1" width="width - 2" height="1"/>
+
+</draw_ops>
+
+<draw_ops name="draw_title_maximized_inactive">
+ <!-- Background gradient -->
+ <gradient type="vertical" x="0" y="0" width="width+9" height="height">
+ <!--<color value="#80594D"/>-->
+ <color value="shade/gtk:bg[NORMAL]/0.27" />
+ <color value="shade/gtk:bg[NORMAL]/0.24" />
+ </gradient>
+
+ <!-- Topmost dark line -->
+ <line color="shade/gtk:bg[NORMAL]/0.30" x1="0" x2="width" y1="0" y2="0"/>
+
+ <!-- Top highlight -->
+ <!-- This uses <tint> (which supports alpha) instead of <line> (which doesn't) -->
+ <tint color="#ffffff" alpha="0.35" x="1" y="1" width="width - 2" height="1"/>
+
+</draw_ops>
+
+<!--
+ The frame around windows
+-->
+
+<draw_ops name="draw_frame">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.25" x="0" y="0" width="width" height="height" filled="true"/>
+ <!-- RSC: Subtle gradient on left/right edges to match the menubar -->
+ <gradient type="vertical" x="0" y="0" width="width" height="100">
+ <color value="shade/gtk:bg[NORMAL]/0.25"/>
+ <color value="shade/gtk:bg[NORMAL]/0.15"/>
+ <color value="shade/gtk:bg[NORMAL]/0.25"/>
+ </gradient>
+</draw_ops>
+
+<!--Borderless only: make bottom border less apparent. We can do this now since our statusbars are light.-->
+<draw_ops name="bottom_edge">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.25" x="0" y="0" width="width" height="height" filled="true"/>
+ <gradient type="vertical" x="1" y="height-6" width="width-2" height="5">
+ <color value="shade/gtk:bg[NORMAL]/0.85"/>
+ <color value="shade/gtk:bg[NORMAL]/0.5"/>
+ </gradient>
+</draw_ops>
+
+
+<!--
+ Buttons
+-->
+<!-- close button-->
+<draw_ops name="button_close_normal">
+ <image filename="button_close_normal.png" x="0" y="1" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_close_prelight">
+ <image filename="button_close_prelight.png" x="0" y="1" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_close_inactive_prelight">
+ <image filename="button_close_prelight.png" x="0" y="1" width="object_width" height="object_height" alpha="0.3"/>
+</draw_ops>
+<draw_ops name="button_close_pressed">
+ <image filename="button_close_pressed.png" x="0" y="1" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_close_inactive">
+ <image filename="button_close_normal.png" x="0" y="1" width="object_width" height="object_height" alpha="0.3"/>
+</draw_ops>
+
+<!-- maximize button-->
+<draw_ops name="button_max_normal">
+ <image filename="button_max_normal.png" x="0" y="1" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_max_prelight">
+ <image filename="button_max_prelight.png" x="0" y="1" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_max_inactive_prelight">
+ <image filename="button_max_prelight.png" x="0" y="1" width="object_width" height="object_height" alpha="0.3"/>
+</draw_ops>
+<draw_ops name="button_max_pressed">
+ <image filename="button_max_pressed.png" x="0" y="1" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_max_inactive">
+ <image filename="button_max_normal.png" x="0" y="1" width="object_width" height="object_height" alpha="0.3"/>
+</draw_ops>
+
+<!-- minimize button-->
+<draw_ops name="button_min_normal">
+ <image filename="button_min_normal.png" x="0" y="1" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_min_prelight">
+ <image filename="button_min_prelight.png" x="0" y="1" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_min_inactive_prelight">
+ <image filename="button_min_prelight.png" x="0" y="1" width="object_width" height="object_height" alpha="0.3"/>
+</draw_ops>
+<draw_ops name="button_min_pressed">
+ <image filename="button_min_pressed.png" x="0" y="1" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_min_inactive">
+ <image filename="button_min_normal.png" x="0" y="1" width="object_width" height="object_height" alpha="0.3"/>
+</draw_ops>
+
+<!-- menu button -->
+<!--
+<draw_ops name="button_menu_normal">
+<image filename="button_menu_normal.png" x="0" y="2" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_menu_prelight">
+<image filename="button_menu_prelight.png" x="0" y="2" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_menu_inactive_prelight">
+<image filename="button_menu_prelight.png" x="0" y="2" width="object_width" height="object_height" alpha="0.3"/>
+</draw_ops>
+<draw_ops name="button_menu_pressed">
+<image filename="button_menu_pressed.png" x="0" y="2" width="object_width" height="object_height"/>
+</draw_ops>
+<draw_ops name="button_menu_inactive">
+<image filename="button_menu_normal.png" x="0" y="2" width="object_width" height="object_height" alpha="0.3"/>
+</draw_ops>-->
+
+<!-- menu icon -->
+<draw_ops name="button_menu_normal">
+<icon x="6" y="2" width="mini_icon_width" height="mini_icon_height"/>
+</draw_ops>
+<draw_ops name="button_menu_prelight">
+<icon x="6" y="2" width="mini_icon_width" height="mini_icon_height"/>
+</draw_ops>
+<draw_ops name="button_menu_inactive_prelight">
+<icon x="6" y="2" width="mini_icon_width" height="mini_icon_height" alpha="0.3"/>
+</draw_ops>
+<draw_ops name="button_menu_pressed">
+<icon x="6" y="2" width="mini_icon_width" height="mini_icon_height"/>
+</draw_ops>
+<draw_ops name="button_menu_inactive">
+<icon x="6" y="2" width="mini_icon_width" height="mini_icon_height" alpha="0.3"/>
+</draw_ops>
+
+
+
+<!--
+ Frame styles
+-->
+
+<!-- normal -->
+<frame_style name="frame_style_normal_focused" geometry="frame_geometry_normal">
+ <piece position="title" draw_ops="draw_title_text_normal"/>
+ <piece position="titlebar" draw_ops="draw_title"/>
+ <piece position="left_edge" draw_ops="draw_frame"/>
+ <piece position="right_edge" draw_ops="draw_frame"/>
+ <piece position="bottom_edge" draw_ops="bottom_edge"/>
+ <button function="close" state="normal" draw_ops="button_close_normal"/>
+ <button function="close" state="prelight" draw_ops="button_close_prelight"/>
+ <button function="close" state="pressed" draw_ops="button_close_pressed"/>
+ <button function="minimize" state="normal" draw_ops="button_min_normal"/>
+ <button function="minimize" state="prelight" draw_ops="button_min_prelight"/>
+ <button function="minimize" state="pressed" draw_ops="button_min_pressed"/>
+ <button function="maximize" state="normal" draw_ops="button_max_normal"/>
+ <button function="maximize" state="prelight" draw_ops="button_max_prelight"/>
+ <button function="maximize" state="pressed" draw_ops="button_max_pressed"/>
+ <button function="menu" state="normal" draw_ops="button_menu_normal"/>
+ <button function="menu" state="prelight" draw_ops="button_menu_prelight"/>
+ <button function="menu" state="pressed" draw_ops="button_menu_pressed"/>
+</frame_style>
+
+<frame_style name="frame_style_normal_unfocused" geometry="frame_geometry_normal">
+ <piece position="title" draw_ops="draw_title_text_inactive"/>
+ <piece position="titlebar" draw_ops="draw_title_inactive"/>
+ <piece position="left_edge" draw_ops="draw_frame"/>
+ <piece position="right_edge" draw_ops="draw_frame"/>
+ <piece position="bottom_edge" draw_ops="bottom_edge"/>
+ <button function="close" state="normal" draw_ops="button_close_inactive"/>
+ <button function="close" state="prelight" draw_ops="button_close_inactive_prelight"/>
+ <button function="close" state="pressed" draw_ops="button_close_inactive"/>
+ <button function="minimize" state="normal" draw_ops="button_min_inactive"/>
+ <button function="minimize" state="prelight" draw_ops="button_min_inactive_prelight"/>
+ <button function="minimize" state="pressed" draw_ops="button_min_inactive"/>
+ <button function="maximize" state="normal" draw_ops="button_max_inactive"/>
+ <button function="maximize" state="prelight" draw_ops="button_max_inactive_prelight"/>
+ <button function="maximize" state="pressed" draw_ops="button_max_inactive"/>
+ <button function="menu" state="normal" draw_ops="button_menu_inactive"/>
+ <button function="menu" state="prelight" draw_ops="button_menu_inactive_prelight"/>
+ <button function="menu" state="pressed" draw_ops="button_menu_inactive"/>
+</frame_style>
+
+<frame_style name="frame_style_maximized_focused" geometry="frame_geometry_abnormal">
+ <piece position="title" draw_ops="draw_title_text_normal"/>
+ <piece position="titlebar" draw_ops="draw_title_maximized"/>
+ <piece position="left_edge" draw_ops="draw_frame"/>
+ <piece position="right_edge" draw_ops="draw_frame"/>
+ <piece position="bottom_edge" draw_ops="bottom_edge"/>
+ <button function="close" state="normal" draw_ops="button_close_normal"/>
+ <button function="close" state="prelight" draw_ops="button_close_prelight"/>
+ <button function="close" state="pressed" draw_ops="button_close_pressed"/>
+ <button function="minimize" state="normal" draw_ops="button_min_normal"/>
+ <button function="minimize" state="prelight" draw_ops="button_min_prelight"/>
+ <button function="minimize" state="pressed" draw_ops="button_min_pressed"/>
+ <button function="maximize" state="normal" draw_ops="button_max_normal"/>
+ <button function="maximize" state="prelight" draw_ops="button_max_prelight"/>
+ <button function="maximize" state="pressed" draw_ops="button_max_pressed"/>
+ <button function="menu" state="normal" draw_ops="button_menu_normal"/>
+ <button function="menu" state="prelight" draw_ops="button_menu_prelight"/>
+ <button function="menu" state="pressed" draw_ops="button_menu_normal"/>
+</frame_style>
+
+<frame_style name="frame_style_maximized_unfocused" geometry="frame_geometry_abnormal">
+ <piece position="title" draw_ops="draw_title_text_inactive"/>
+ <piece position="titlebar" draw_ops="draw_title_maximized_inactive"/>
+ <piece position="left_edge" draw_ops="draw_frame"/>
+ <piece position="right_edge" draw_ops="draw_frame"/>
+ <piece position="bottom_edge" draw_ops="bottom_edge"/>
+ <button function="close" state="normal" draw_ops="button_close_inactive"/>
+ <button function="close" state="prelight" draw_ops="button_close_prelight"/>
+ <button function="close" state="pressed" draw_ops="button_close_inactive"/>
+ <button function="minimize" state="normal" draw_ops="button_min_inactive"/>
+ <button function="minimize" state="prelight" draw_ops="button_min_prelight"/>
+ <button function="minimize" state="pressed" draw_ops="button_min_inactive"/>
+ <button function="maximize" state="normal" draw_ops="button_max_inactive"/>
+ <button function="maximize" state="prelight" draw_ops="button_max_prelight"/>
+ <button function="maximize" state="pressed" draw_ops="button_max_inactive"/>
+ <button function="menu" state="normal" draw_ops="button_menu_inactive"/>
+ <button function="menu" state="prelight" draw_ops="button_menu_inactive"/>
+ <button function="menu" state="pressed" draw_ops="button_menu_inactive"/>
+</frame_style>
+
+<frame_style_set name="frame_style_set_normal">
+ <frame focus="yes" state="normal" resize="both" style="frame_style_normal_focused"/>
+ <frame focus="no" state="normal" resize="both" style="frame_style_normal_unfocused"/>
+ <frame focus="yes" state="maximized" style="frame_style_maximized_focused"/>
+ <frame focus="no" state="maximized" style="frame_style_maximized_unfocused"/>
+ <frame focus="yes" state="shaded" style="frame_style_normal_focused"/>
+ <frame focus="no" state="shaded" style="frame_style_normal_unfocused"/>
+ <frame focus="yes" state="maximized_and_shaded" style="frame_style_maximized_focused"/>
+ <frame focus="no" state="maximized_and_shaded" style="frame_style_maximized_unfocused"/>
+</frame_style_set>
+
+<window type="normal" style_set="frame_style_set_normal"/>
+<window type="dialog" style_set="frame_style_set_normal"/>
+<window type="modal_dialog" style_set="frame_style_set_normal"/>
+<window type="menu" style_set="frame_style_set_normal"/>
+<window type="utility" style_set="frame_style_set_normal"/>
+<window type="border" style_set="frame_style_set_normal"/>
+
+<menu_icon function="close" state="normal" draw_ops="button_close_normal"/>
+<menu_icon function="maximize" state="normal" draw_ops="button_max_normal"/>
+<menu_icon function="unmaximize" state="normal" draw_ops="button_max_normal"/>
+<menu_icon function="minimize" state="normal" draw_ops="button_min_normal"/>
+
+
+</metacity_theme>
diff --git a/src/themes/Makefile.am b/src/themes/Makefile.am
new file mode 100644
index 00000000..a040a804
--- /dev/null
+++ b/src/themes/Makefile.am
@@ -0,0 +1,53 @@
+THEMES= \
+ ClearlooksRe \
+ eOS \
+ DustBlue \
+ WinMe \
+ Splint-Left \
+ Dopple \
+ Spidey-Left \
+ Splint \
+ Dopple-Left \
+ Spidey
+
+THEME_DIR=$(datadir)/themes
+THEME_SUBDIR=metacity-1
+
+install-data-local:
+ $(mkinstalldirs) $(DESTDIR)$(THEME_DIR); \
+ for THEME in $(THEMES); do \
+ echo '-- Installing theme '$$THEME; \
+ $(mkinstalldirs) $(DESTDIR)$(THEME_DIR)/$$THEME; \
+ $(mkinstalldirs) $(DESTDIR)$(THEME_DIR)/$$THEME/$(THEME_SUBDIR); \
+ (installfiles=`find $(srcdir)/$$THEME -name "*.png" -o -name "*.xml"`; \
+ for i in $$installfiles; do \
+ echo '-- Installing '$$i ; \
+ $(INSTALL_DATA) $$i $(DESTDIR)$(THEME_DIR)/$$THEME/$(THEME_SUBDIR) ; \
+ done) \
+ done
+
+uninstall-local:
+ for THEME in $(THEMES); do \
+ echo '-- Uninstalling theme '$$THEME; \
+ (uninstallfiles=`find $(srcdir)/$$THEME -name "*.png" -o -name "*.xml"`; \
+ for i in $$uninstallfiles; do \
+ i=`basename $$i`; \
+ echo '-- Removing '$$i ; \
+ rm -f $(DESTDIR)$(THEME_DIR)/$$THEME/$(THEME_SUBDIR)/$$i ; \
+ done); \
+ rmdir $(DESTDIR)$(THEME_DIR)/$$THEME/$(THEME_SUBDIR) || :; \
+ rmdir $(DESTDIR)$(THEME_DIR)/$$THEME || :; \
+ done
+ -rmdir $(DESTDIR)$(THEME_DIR)
+
+dist-hook:
+ mkdir $(distdir)/themes; \
+ for THEME in $(THEMES); do \
+ echo '-- Disting theme '$$THEME; \
+ mkdir $(distdir)/$$THEME; \
+ (installfiles=`find $(srcdir)/$$THEME -name "*.png" -o -name "*.xml"`; \
+ for i in $$installfiles; do \
+ echo '-- Disting '$$i ; \
+ cp $$i $(distdir)/$$THEME; \
+ done) \
+ done
diff --git a/src/themes/Spidey-Left/metacity-theme-1.xml b/src/themes/Spidey-Left/metacity-theme-1.xml
new file mode 100644
index 00000000..0244d458
--- /dev/null
+++ b/src/themes/Spidey-Left/metacity-theme-1.xml
@@ -0,0 +1,1086 @@
+<?xml version="1.0"?>
+<metacity_theme>
+
+<info>
+ <name>Spidey</name>
+ <author>Brandon Wright</author>
+ <copyright>2009</copyright>
+ <date>January 21, 2009</date>
+ <description>A Clearlooks-styled theme with Tango basics.</description>
+</info>
+
+<frame_geometry name="normal" rounded_top_left="true" rounded_top_right="true">
+ <distance name="left_width" value="3"/>
+ <distance name="right_width" value="3"/>
+ <distance name="bottom_height" value="3"/>
+ <distance name="left_titlebar_edge" value="4"/>
+ <distance name="right_titlebar_edge" value="4"/>
+ <aspect_ratio name="button" value="1"/>
+ <distance name="title_vertical_pad" value="2"/>
+ <border name="title_border" left="3" right="4" top="2" bottom="2"/>
+ <border name="button_border" left="1" right="1" top="3" bottom="3"/>
+</frame_geometry>
+
+<frame_geometry name="normal_small_borders" parent="normal" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_titlebar_edge" value="1" />
+ <distance name="right_titlebar_edge" value="1" />
+ <distance name="left_width" value="0" />
+ <distance name="right_width" value="0" />
+ <distance name="bottom_height" value="0" />
+</frame_geometry>
+
+<frame_geometry name="utility" parent="normal">
+</frame_geometry>
+
+<frame_geometry name="border" has_title="false" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="0"/>
+ <distance name="right_titlebar_edge" value="0"/>
+ <distance name="button_width" value="0"/>
+ <distance name="button_height" value="0"/>
+ <distance name="title_vertical_pad" value="4"/>
+ <border name="title_border" left="0" right="0" top="0" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="0" bottom="0"/>
+</frame_geometry>
+
+<!-- Buttons -->
+<draw_ops name="button_bg">
+
+<!-- Background -->
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ <color value="shade/gtk:bg[NORMAL]/0.8" />
+ </gradient>
+
+<!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width - 1" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="0" y1="1"
+ x2="1" y2="0" /> -->
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="width-1" y1="1"
+ x2="width-2" y2="0" /> -->
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="0" y1="height-2"
+ x2="1" y2="height-1" /> -->
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="width-1" y1="height-2"
+ x2="width-2" y2="height-1" /> -->
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.4"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.4" />
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.4" />
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ </gradient>
+
+</draw_ops>
+
+<draw_ops name="button_bg_prelight">
+
+<!-- Background -->
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/1.1" />
+ <color value="shade/gtk:bg[NORMAL]/0.9" />
+ </gradient>
+
+<!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width - 1" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="0" y1="1"
+ x2="1" y2="0" /> -->
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="width-1" y1="1"
+ x2="width-2" y2="0" /> -->
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="0" y1="height-2"
+ x2="1" y2="height-1" /> -->
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="width-1" y1="height-2"
+ x2="width-2" y2="height-1" /> -->
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.5"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.1"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.5" />
+ <color value="shade/gtk:bg[NORMAL]/1.1" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.5" />
+ <color value="shade/gtk:bg[NORMAL]/1.1" />
+ </gradient>
+
+</draw_ops>
+
+<draw_ops name="button_pressed_bg">
+
+<!-- Background -->
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/0.9" />
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ </gradient>
+
+<!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width - 1" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="0" y1="1"
+ x2="1" y2="0" /> -->
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="width-1" y1="1"
+ x2="width-2" y2="0" /> -->
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="0" y1="height-2"
+ x2="1" y2="height-1" /> -->
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="width-1" y1="height-2"
+ x2="width-2" y2="height-1" /> -->
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ </gradient>
+
+</draw_ops>
+<!-- Buttons -->
+<draw_ops name="button_bg_unfocused">
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[NORMAL]/0.8" />
+ <color value="shade/gtk:bg[NORMAL]/0.675" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width - 1" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[NORMAL]/0.8" />
+ <color value="shade/gtk:bg[NORMAL]/0.675" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.90"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ <color value="shade/gtk:bg[NORMAL]/0.90" />
+ </gradient>
+
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ <color value="shade/gtk:bg[NORMAL]/0.90" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.1"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.1"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/0.9"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/0.9"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="button_bg_prelight_unfocused">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/1.15" />
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+
+</draw_ops>
+
+<draw_ops name="button_pressed_bg_unfocused">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" /> -->
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+<!-- <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient> -->
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[NORMAL]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.00" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="menu_glyph">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" />
+</draw_ops>
+
+<draw_ops name="menu_glyph_unfocused">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" alpha="0.5"/>
+</draw_ops>
+
+<draw_ops name="close_glyph">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.1" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.1" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_lighter">
+ <line color="shade/gtk:bg[NORMAL]/1.1" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="shade/gtk:bg[NORMAL]/1.1" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/1.1" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/1.1" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused_lighter">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.2" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.2" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.2" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.2" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_lighter">
+ <rectangle color="shade/gtk:bg[NORMAL]/1.2" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+<draw_ops name="maximize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="minimize_glyph">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.2" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_lighter">
+ <rectangle color="shade/gtk:bg[NORMAL]/1.2" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="menu_button">
+ <include name="menu_glyph" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="menu_button_unfocused">
+ <include name="menu_glyph_unfocused" x="0" y="0" />
+</draw_ops>
+
+<draw_ops name="menu_button_pressed">
+ <include name="menu_glyph_unfocused" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="minimize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_lighter" x="2" y="3" width="width-4" height="height-4" />
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_lighter" x="2" y="3" width="width-4" height="height-4" />
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4" />
+</draw_ops>
+
+<draw_ops name="minimize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="minimize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+
+<draw_ops name="maximize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_lighter" x="2" y="3" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_lighter" x="2" y="3" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="maximize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="mini_window_icon">
+ <rectangle color="gtk:bg[NORMAL]" filled="true"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <rectangle color="gtk:fg[NORMAL]" filled="false"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <line color="gtk:fg[NORMAL]" width="2"
+ x1="0" y1="1" x2="width" y2="1"/>
+</draw_ops>
+
+<draw_ops name="restore_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_lighter" x="3" y="4" width="width-6" height="height-6"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_prelight">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_lighter" x="3" y="4" width="width-6" height="height-6"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_unfocused_lighter" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="maximize_glyph_unfocused_lighter" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="close_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_lighter" x="2" y="3" width="width-4" height="width-4"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_lighter" x="2" y="3" width="width-4" height="width-4"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="close_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.5"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel_unfocused">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="title_background">
+
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+<!--
+ <rectangle color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x="1" y="1" width="width-3" height="height-3"/>
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-2" y1="1" x2="width-2" y2="height-2"/>
+-->
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="1" y="1" width="width-3" height="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-2" y1="1" x2="width-2" y2="height-2"/>
+
+ <gradient type="vertical" x="2" y="2" width="width-4" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="3" y1="height-1"
+ x2="width-4" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.975"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="4" y1="1" x2="4" y2="1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+<!--
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="2" y1="3" x2="2" y2="4" />
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="3" y1="2" x2="4" y2="2" />
+
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-5" y1="2" x2="width-4" y2="2" />
+-->
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="3" y1="2" x2="4" y2="2" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+ <!-- <gradient type="vertical" x="1" y="5" width="1" height="height-6">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient>
+
+ <gradient type="vertical" x="width-2" y="5" width="1" height="height-6">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient> -->
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="1" y1="height-1" x2="1" y2="height-1" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-2" y1="height-1" x2="width-2" y2="height-1" />
+</draw_ops>
+
+<draw_ops name="title_background_maximized">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="0" y="1" width="width-2" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-1" y1="1" x2="width-1" y2="height-2"/>
+
+ <gradient type="vertical" x="1" y="2" width="width-2" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ </gradient>
+
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="0" y="1" width="width-1" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="0" y1="height-1"
+ x2="width-1" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.95"
+ x1="0" y1="height-2"
+ x2="width-1" y2="height-2" />
+
+<!-- <gradient type="vertical" x="0" y="1" width="1" height="height-2">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient>
+
+ <gradient type="vertical" x="width-1" y="1" width="1" height="height-2">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient> -->
+</draw_ops>
+
+<draw_ops name="title_unfocused_background">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.05"/>
+ <color value="shade/gtk:bg[NORMAL]/0.85"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/0.945" x1="1" y1="height-2" x2="width-3" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="0" y1="height-1" x2="width-1" y2="height-1" />
+
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="1" y1="1" x2="width-2" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="1" y1="1" x2="1" y2="height-1"/>
+
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-2" y1="1" x2="width-2" y2="height" />
+
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="4" y1="1" x2="4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="3" y1="2" x2="4" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+
+</draw_ops>
+
+<draw_ops name="title_unfocused_background_maximized">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="0" y="1" width="width" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.05"/>
+ <color value="shade/gtk:bg[NORMAL]/0.85"/>
+ </gradient>
+ <line color="shade/gtk:bg[NORMAL]/0.945" x1="0" y1="height-2" x2="width-1" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="0" y1="height-1" x2="width-1" y2="height-1" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="0" y1="1" x2="width-1" y2="1"/>
+
+</draw_ops>
+
+<draw_ops name="blank">
+<!-- nothing -->
+</draw_ops>
+
+<draw_ops name="focus_outline">
+ <rectangle x="0" y="0" width="width-1" height="height-1" color="shade/gtk:bg[SELECTED]/0.7" />
+ <rectangle x="1" y="1" width="width-3" height="height-3" color="shade/gtk:bg[SELECTED]/1.2" />
+ <rectangle x="2" y="2" width="width-5" height="height-5" color="shade/gtk:bg[SELECTED]/0.7" />
+</draw_ops>
+
+<draw_ops name="unfocus_outline">
+ <rectangle x="0" y="0" width="width-1" height="height-1" color="shade/gtk:bg[NORMAL]/0.7" />
+ <rectangle x="1" y="1" width="width-3" height="height-3" color="shade/gtk:bg[NORMAL]/1.2" />
+ <rectangle x="2" y="2" width="width-5" height="height-5" color="shade/gtk:bg[NORMAL]/0.7" />
+</draw_ops>
+
+<draw_ops name="focus_background">
+ <include name="focus_outline"/>
+</draw_ops>
+
+<draw_ops name="unfocus_background">
+ <include name="unfocus_outline" />
+</draw_ops>
+
+<draw_ops name="title_text_focused_with_icon">
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) - 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) - 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) + 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) + 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+ <title color="#ffffff"
+ x="(0)"
+ y="(((height - title_height) / 2) `max` 0)"/>
+
+</draw_ops>
+
+<draw_ops name="title_text_with_icon">
+ <title color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.4"
+ x="(0)"
+ y="((height - title_height) / 2) `max` 0"/>
+</draw_ops>
+
+<draw_ops name="title_normal">
+ <include name="title_text_with_icon"/>
+</draw_ops>
+
+<draw_ops name="title_focused">
+ <include name="title_text_focused_with_icon"/>
+</draw_ops>
+
+<frame_style name="normal_unfocused" geometry="normal">
+ <piece position="entire_background" draw_ops="unfocus_background"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background"/>
+ <piece position="title" draw_ops="title_normal"/>
+
+ <button function="close" state="normal" draw_ops="close_button_unfocused"/>
+ <button function="close" state="pressed" draw_ops="close_button_unfocused_pressed"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button_unfocused"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_unfocused_pressed"/>
+ <button function="maximize" state="normal" draw_ops="maximize_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_unfocused_pressed"/>
+ <button function="menu" state="normal" draw_ops="menu_button_unfocused"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_unfocused"/>
+</frame_style>
+
+<frame_style name="normal_focused" geometry="normal">
+ <piece position="entire_background" draw_ops="focus_background"/>
+ <piece position="titlebar" draw_ops="title_background"/>
+ <piece position="title" draw_ops="title_focused"/>
+ <button function="close" state="normal" draw_ops="close_button"/>
+ <button function="close" state="pressed" draw_ops="close_button_pressed"/>
+ <button function="close" state="prelight" draw_ops="close_button_focus"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_pressed"/>
+ <button function="minimize" state="prelight" draw_ops="minimize_button_focus" />
+ <button function="maximize" state="normal" draw_ops="maximize_button"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="maximize_button_focus"/>
+ <button function="menu" state="normal" draw_ops="menu_button"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_pressed"/>
+
+</frame_style>
+
+<frame_style name="maximized_unfocused" geometry="normal_small_borders" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="blank"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_unfocused_pressed"/>
+</frame_style>
+
+<frame_style name="maximized_focused" geometry="normal_small_borders" parent="normal_focused">
+ <piece position="entire_background" draw_ops="focus_outline"/>
+ <piece position="titlebar" draw_ops="title_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="restore_button_prelight" />
+</frame_style>
+
+<frame_style name="border" geometry="border" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="outer_bevel"/>
+ <piece position="titlebar" draw_ops="blank"/>
+ <piece position="title" draw_ops="blank"/>
+</frame_style>
+
+<frame_style_set name="normal">
+<frame focus="yes" state="normal" resize="both" style="normal_focused"/>
+<frame focus="no" state="normal" resize="both" style="normal_unfocused"/>
+<frame focus="yes" state="maximized" style="maximized_focused"/>
+<frame focus="no" state="maximized" style="maximized_unfocused"/>
+<frame focus="yes" state="shaded" style="normal_focused"/>
+<frame focus="no" state="shaded" style="normal_unfocused"/>
+<frame focus="yes" state="maximized_and_shaded" style="maximized_focused"/>
+<frame focus="no" state="maximized_and_shaded" style="maximized_unfocused"/>
+</frame_style_set>
+
+<frame_style_set name="border">
+<frame focus="yes" state="normal" resize="both" style="border"/>
+<frame focus="no" state="normal" resize="both" style="border"/>
+<frame focus="yes" state="maximized" style="border"/>
+<frame focus="no" state="maximized" style="border"/>
+<frame focus="yes" state="shaded" style="border"/>
+<frame focus="no" state="shaded" style="border"/>
+<frame focus="yes" state="maximized_and_shaded" style="border"/>
+<frame focus="no" state="maximized_and_shaded" style="border"/>
+</frame_style_set>
+
+<window type="normal" style_set="normal"/>
+<window type="dialog" style_set="normal"/>
+<window type="modal_dialog" style_set="normal"/>
+<window type="menu" style_set="normal"/>
+<window type="utility" style_set="normal"/>
+<window type="border" style_set="normal"/>
+
+<menu_icon function="close" state="normal" draw_ops="close_button"/>
+<menu_icon function="maximize" state="normal" draw_ops="maximize_button"/>
+<menu_icon function="unmaximize" state="normal" draw_ops="restore_button"/>
+<menu_icon function="minimize" state="normal" draw_ops="minimize_button"/>
+
+</metacity_theme>
diff --git a/src/themes/Spidey/metacity-theme-1.xml b/src/themes/Spidey/metacity-theme-1.xml
new file mode 100644
index 00000000..5472f9da
--- /dev/null
+++ b/src/themes/Spidey/metacity-theme-1.xml
@@ -0,0 +1,1086 @@
+<?xml version="1.0"?>
+<metacity_theme>
+
+<info>
+ <name>Spidey</name>
+ <author>Brandon Wright</author>
+ <copyright>2009</copyright>
+ <date>January 21, 2009</date>
+ <description>A Clearlooks-styled theme with Tango basics.</description>
+</info>
+
+<frame_geometry name="normal" rounded_top_left="true" rounded_top_right="true">
+ <distance name="left_width" value="3"/>
+ <distance name="right_width" value="3"/>
+ <distance name="bottom_height" value="3"/>
+ <distance name="left_titlebar_edge" value="4"/>
+ <distance name="right_titlebar_edge" value="4"/>
+ <aspect_ratio name="button" value="1"/>
+ <distance name="title_vertical_pad" value="2"/>
+ <border name="title_border" left="3" right="4" top="2" bottom="2"/>
+ <border name="button_border" left="1" right="1" top="3" bottom="3"/>
+</frame_geometry>
+
+<frame_geometry name="normal_small_borders" parent="normal" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_titlebar_edge" value="1" />
+ <distance name="right_titlebar_edge" value="1" />
+ <distance name="left_width" value="0" />
+ <distance name="right_width" value="0" />
+ <distance name="bottom_height" value="0" />
+</frame_geometry>
+
+<frame_geometry name="utility" parent="normal">
+</frame_geometry>
+
+<frame_geometry name="border" has_title="false" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="0"/>
+ <distance name="right_titlebar_edge" value="0"/>
+ <distance name="button_width" value="0"/>
+ <distance name="button_height" value="0"/>
+ <distance name="title_vertical_pad" value="4"/>
+ <border name="title_border" left="0" right="0" top="0" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="0" bottom="0"/>
+</frame_geometry>
+
+<!-- Buttons -->
+<draw_ops name="button_bg">
+
+<!-- Background -->
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ <color value="shade/gtk:bg[NORMAL]/0.8" />
+ </gradient>
+
+<!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width - 1" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="0" y1="1"
+ x2="1" y2="0" /> -->
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="width-1" y1="1"
+ x2="width-2" y2="0" /> -->
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="0" y1="height-2"
+ x2="1" y2="height-1" /> -->
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="width-1" y1="height-2"
+ x2="width-2" y2="height-1" /> -->
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.4"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.4" />
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.4" />
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ </gradient>
+
+</draw_ops>
+
+<draw_ops name="button_bg_prelight">
+
+<!-- Background -->
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/1.1" />
+ <color value="shade/gtk:bg[NORMAL]/0.9" />
+ </gradient>
+
+<!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width - 1" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="0" y1="1"
+ x2="1" y2="0" /> -->
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="width-1" y1="1"
+ x2="width-2" y2="0" /> -->
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="0" y1="height-2"
+ x2="1" y2="height-1" /> -->
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="width-1" y1="height-2"
+ x2="width-2" y2="height-1" /> -->
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.5"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.1"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.5" />
+ <color value="shade/gtk:bg[NORMAL]/1.1" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.5" />
+ <color value="shade/gtk:bg[NORMAL]/1.1" />
+ </gradient>
+
+</draw_ops>
+
+<draw_ops name="button_pressed_bg">
+
+<!-- Background -->
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/0.9" />
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ </gradient>
+
+<!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width - 1" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[SELECTED]/0.5" />
+ <color value="shade/gtk:bg[SELECTED]/0.7" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="0" y1="1"
+ x2="1" y2="0" /> -->
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.5"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.9"
+ x1="width-1" y1="1"
+ x2="width-2" y2="0" /> -->
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="0" y1="height-2"
+ x2="1" y2="height-1" /> -->
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+<!-- <line color="blend/gtk:bg[SELECTED]/gtk:bg[SELECTED]/0.95"
+ x1="width-1" y1="height-2"
+ x2="width-2" y2="height-1" /> -->
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.0" />
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ </gradient>
+
+</draw_ops>
+<!-- Buttons -->
+<draw_ops name="button_bg_unfocused">
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <gradient type="vertical" x="0" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[NORMAL]/0.8" />
+ <color value="shade/gtk:bg[NORMAL]/0.675" />
+ </gradient>
+
+ <!-- Right line -->
+ <gradient type="vertical" x="width - 1" y="2" width="1" height="(height-4)">
+ <color value="shade/gtk:bg[NORMAL]/0.8" />
+ <color value="shade/gtk:bg[NORMAL]/0.675" />
+ </gradient>
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.675"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.90"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ <color value="shade/gtk:bg[NORMAL]/0.90" />
+ </gradient>
+
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.2" />
+ <color value="shade/gtk:bg[NORMAL]/0.90" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.1"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.1"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/0.9"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/0.9"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="button_bg_prelight_unfocused">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/1.15" />
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.2"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+
+</draw_ops>
+
+<draw_ops name="button_pressed_bg_unfocused">
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ <color value="shade/gtk:bg[NORMAL]/0.95" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[NORMAL]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/1.25"
+ x1="2" y1="1"
+ x2="width-3" y2="1" /> -->
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[NORMAL]/1.05"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+<!-- <line color="shade/gtk:bg[NORMAL]/"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+<!-- <gradient type="vertical" x="1" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.25" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient> -->
+
+ <!-- Right line -->
+<!-- <line color="blend/gtk:bg[NORMAL]/#ffffff/0.18"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+ <gradient type="vertical" x="width-2" y="2" width="1" height="(height-3)-1">
+ <color value="shade/gtk:bg[NORMAL]/1.00" />
+ <color value="shade/gtk:bg[NORMAL]/1.05" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[NORMAL]/1.0"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="menu_glyph">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" />
+</draw_ops>
+
+<draw_ops name="menu_glyph_unfocused">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" alpha="0.5"/>
+</draw_ops>
+
+<draw_ops name="close_glyph">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.1" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.1" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_lighter">
+ <line color="shade/gtk:bg[NORMAL]/1.1" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="shade/gtk:bg[NORMAL]/1.1" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/1.1" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/1.1" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused_lighter">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.2" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.2" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.2" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.2" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_lighter">
+ <rectangle color="shade/gtk:bg[NORMAL]/1.2" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+<draw_ops name="maximize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="minimize_glyph">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.2" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_lighter">
+ <rectangle color="shade/gtk:bg[NORMAL]/1.2" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="menu_button">
+ <include name="menu_glyph" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="menu_button_unfocused">
+ <include name="menu_glyph_unfocused" x="0" y="0" />
+</draw_ops>
+
+<draw_ops name="menu_button_pressed">
+ <include name="menu_glyph_unfocused" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="minimize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_lighter" x="2" y="3" width="width-4" height="height-4" />
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_lighter" x="2" y="3" width="width-4" height="height-4" />
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4" />
+</draw_ops>
+
+<draw_ops name="minimize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="minimize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+
+<draw_ops name="maximize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_lighter" x="2" y="3" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_lighter" x="2" y="3" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="maximize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="mini_window_icon">
+ <rectangle color="gtk:bg[NORMAL]" filled="true"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <rectangle color="gtk:fg[NORMAL]" filled="false"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <line color="gtk:fg[NORMAL]" width="2"
+ x1="0" y1="1" x2="width" y2="1"/>
+</draw_ops>
+
+<draw_ops name="restore_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_lighter" x="3" y="4" width="width-6" height="height-6"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_prelight">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_lighter" x="3" y="4" width="width-6" height="height-6"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_unfocused_lighter" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="maximize_glyph_unfocused_lighter" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="close_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_lighter" x="2" y="3" width="width-4" height="width-4"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_lighter" x="2" y="3" width="width-4" height="width-4"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused">
+ <include name="button_bg_unfocused" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused_pressed">
+ <include name="button_pressed_bg_unfocused"/>
+ <include name="close_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.5"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel_unfocused">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="title_background">
+
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+<!--
+ <rectangle color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x="1" y="1" width="width-3" height="height-3"/>
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-2" y1="1" x2="width-2" y2="height-2"/>
+-->
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="1" y="1" width="width-3" height="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-2" y1="1" x2="width-2" y2="height-2"/>
+
+ <gradient type="vertical" x="2" y="2" width="width-4" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="3" y1="height-1"
+ x2="width-4" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.975"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="4" y1="1" x2="4" y2="1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+<!--
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="2" y1="3" x2="2" y2="4" />
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="3" y1="2" x2="4" y2="2" />
+
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="blend/gtk:bg[SELECTED]/#ffffff/0.27" x1="width-5" y1="2" x2="width-4" y2="2" />
+-->
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="3" y1="2" x2="4" y2="2" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+ <!-- <gradient type="vertical" x="1" y="5" width="1" height="height-6">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient>
+
+ <gradient type="vertical" x="width-2" y="5" width="1" height="height-6">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient> -->
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="1" y1="height-1" x2="1" y2="height-1" />
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-2" y1="height-1" x2="width-2" y2="height-1" />
+</draw_ops>
+
+<draw_ops name="title_background_maximized">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="0" y="1" width="width-2" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/1.2" x1="width-1" y1="1" x2="width-1" y2="height-2"/>
+
+ <gradient type="vertical" x="1" y="2" width="width-2" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ </gradient>
+
+ <rectangle color="shade/gtk:bg[SELECTED]/1.2" x="0" y="1" width="width-1" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/0.7"
+ x1="0" y1="height-1"
+ x2="width-1" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.95"
+ x1="0" y1="height-2"
+ x2="width-1" y2="height-2" />
+
+<!-- <gradient type="vertical" x="0" y="1" width="1" height="height-2">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient>
+
+ <gradient type="vertical" x="width-1" y="1" width="1" height="height-2">
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.27" />
+ <color value="blend/gtk:bg[SELECTED]/#ffffff/0.09" />
+ </gradient> -->
+</draw_ops>
+
+<draw_ops name="title_unfocused_background">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.05"/>
+ <color value="shade/gtk:bg[NORMAL]/0.85"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/0.945" x1="1" y1="height-2" x2="width-3" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="0" y1="height-1" x2="width-1" y2="height-1" />
+
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="1" y1="1" x2="width-2" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="1" y1="1" x2="1" y2="height-1"/>
+
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-2" y1="1" x2="width-2" y2="height" />
+
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="4" y1="1" x2="4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="3" y1="2" x2="4" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+
+</draw_ops>
+
+<draw_ops name="title_unfocused_background_maximized">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="0" y="1" width="width" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.05"/>
+ <color value="shade/gtk:bg[NORMAL]/0.85"/>
+ </gradient>
+ <line color="shade/gtk:bg[NORMAL]/0.945" x1="0" y1="height-2" x2="width-1" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="0" y1="height-1" x2="width-1" y2="height-1" />
+ <line color="shade/gtk:bg[NORMAL]/1.2" x1="0" y1="1" x2="width-1" y2="1"/>
+
+</draw_ops>
+
+<draw_ops name="blank">
+<!-- nothing -->
+</draw_ops>
+
+<draw_ops name="focus_outline">
+ <rectangle x="0" y="0" width="width-1" height="height-1" color="shade/gtk:bg[SELECTED]/0.7" />
+ <rectangle x="1" y="1" width="width-3" height="height-3" color="shade/gtk:bg[SELECTED]/1.2" />
+ <rectangle x="2" y="2" width="width-5" height="height-5" color="shade/gtk:bg[SELECTED]/0.7" />
+</draw_ops>
+
+<draw_ops name="unfocus_outline">
+ <rectangle x="0" y="0" width="width-1" height="height-1" color="shade/gtk:bg[NORMAL]/0.7" />
+ <rectangle x="1" y="1" width="width-3" height="height-3" color="shade/gtk:bg[NORMAL]/1.2" />
+ <rectangle x="2" y="2" width="width-5" height="height-5" color="shade/gtk:bg[NORMAL]/0.7" />
+</draw_ops>
+
+<draw_ops name="focus_background">
+ <include name="focus_outline"/>
+</draw_ops>
+
+<draw_ops name="unfocus_background">
+ <include name="unfocus_outline" />
+</draw_ops>
+
+<draw_ops name="title_text_focused_with_icon">
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) - 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) - 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) + 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) + 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+ <title color="#ffffff"
+ x="(((width - title_width) / 2) `max` 0)"
+ y="(((height - title_height) / 2) `max` 0)"/>
+
+</draw_ops>
+
+<draw_ops name="title_text_with_icon">
+ <title color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.4"
+ x="(((width - title_width) / 2) `max` 0)"
+ y="((height - title_height) / 2) `max` 0"/>
+</draw_ops>
+
+<draw_ops name="title_normal">
+ <include name="title_text_with_icon"/>
+</draw_ops>
+
+<draw_ops name="title_focused">
+ <include name="title_text_focused_with_icon"/>
+</draw_ops>
+
+<frame_style name="normal_unfocused" geometry="normal">
+ <piece position="entire_background" draw_ops="unfocus_background"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background"/>
+ <piece position="title" draw_ops="title_normal"/>
+
+ <button function="close" state="normal" draw_ops="close_button_unfocused"/>
+ <button function="close" state="pressed" draw_ops="close_button_unfocused_pressed"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button_unfocused"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_unfocused_pressed"/>
+ <button function="maximize" state="normal" draw_ops="maximize_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_unfocused_pressed"/>
+ <button function="menu" state="normal" draw_ops="menu_button_unfocused"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_unfocused"/>
+</frame_style>
+
+<frame_style name="normal_focused" geometry="normal">
+ <piece position="entire_background" draw_ops="focus_background"/>
+ <piece position="titlebar" draw_ops="title_background"/>
+ <piece position="title" draw_ops="title_focused"/>
+ <button function="close" state="normal" draw_ops="close_button"/>
+ <button function="close" state="pressed" draw_ops="close_button_pressed"/>
+ <button function="close" state="prelight" draw_ops="close_button_focus"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_pressed"/>
+ <button function="minimize" state="prelight" draw_ops="minimize_button_focus" />
+ <button function="maximize" state="normal" draw_ops="maximize_button"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="maximize_button_focus"/>
+ <button function="menu" state="normal" draw_ops="menu_button"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_pressed"/>
+
+</frame_style>
+
+<frame_style name="maximized_unfocused" geometry="normal_small_borders" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="blank"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_unfocused_pressed"/>
+</frame_style>
+
+<frame_style name="maximized_focused" geometry="normal_small_borders" parent="normal_focused">
+ <piece position="entire_background" draw_ops="focus_outline"/>
+ <piece position="titlebar" draw_ops="title_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="restore_button_prelight" />
+</frame_style>
+
+<frame_style name="border" geometry="border" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="outer_bevel"/>
+ <piece position="titlebar" draw_ops="blank"/>
+ <piece position="title" draw_ops="blank"/>
+</frame_style>
+
+<frame_style_set name="normal">
+<frame focus="yes" state="normal" resize="both" style="normal_focused"/>
+<frame focus="no" state="normal" resize="both" style="normal_unfocused"/>
+<frame focus="yes" state="maximized" style="maximized_focused"/>
+<frame focus="no" state="maximized" style="maximized_unfocused"/>
+<frame focus="yes" state="shaded" style="normal_focused"/>
+<frame focus="no" state="shaded" style="normal_unfocused"/>
+<frame focus="yes" state="maximized_and_shaded" style="maximized_focused"/>
+<frame focus="no" state="maximized_and_shaded" style="maximized_unfocused"/>
+</frame_style_set>
+
+<frame_style_set name="border">
+<frame focus="yes" state="normal" resize="both" style="border"/>
+<frame focus="no" state="normal" resize="both" style="border"/>
+<frame focus="yes" state="maximized" style="border"/>
+<frame focus="no" state="maximized" style="border"/>
+<frame focus="yes" state="shaded" style="border"/>
+<frame focus="no" state="shaded" style="border"/>
+<frame focus="yes" state="maximized_and_shaded" style="border"/>
+<frame focus="no" state="maximized_and_shaded" style="border"/>
+</frame_style_set>
+
+<window type="normal" style_set="normal"/>
+<window type="dialog" style_set="normal"/>
+<window type="modal_dialog" style_set="normal"/>
+<window type="menu" style_set="normal"/>
+<window type="utility" style_set="normal"/>
+<window type="border" style_set="normal"/>
+
+<menu_icon function="close" state="normal" draw_ops="close_button"/>
+<menu_icon function="maximize" state="normal" draw_ops="maximize_button"/>
+<menu_icon function="unmaximize" state="normal" draw_ops="restore_button"/>
+<menu_icon function="minimize" state="normal" draw_ops="minimize_button"/>
+
+</metacity_theme>
diff --git a/src/themes/Splint-Left/metacity-theme-1.xml b/src/themes/Splint-Left/metacity-theme-1.xml
new file mode 100644
index 00000000..f81ad5a3
--- /dev/null
+++ b/src/themes/Splint-Left/metacity-theme-1.xml
@@ -0,0 +1,802 @@
+<?xml version="1.0"?>
+<metacity_theme>
+
+<info>
+ <name>Splint-Left</name>
+ <author>Brandon Wright</author>
+ <copyright>2009</copyright>
+ <date>January 21, 2009</date>
+ <description>A theme designed around the Tango style.</description>
+</info>
+
+<frame_geometry name="normal" rounded_top_left="true" rounded_top_right="true">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="4"/>
+ <distance name="right_titlebar_edge" value="4"/>
+ <aspect_ratio name="button" value="1"/>
+ <distance name="title_vertical_pad" value="2"/>
+ <border name="title_border" left="3" right="4" top="2" bottom="2"/>
+ <border name="button_border" left="1" right="1" top="3" bottom="3"/>
+</frame_geometry>
+
+<frame_geometry name="normal_small_borders" parent="normal" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_titlebar_edge" value="1" />
+ <distance name="right_titlebar_edge" value="1" />
+ <distance name="left_width" value="0" />
+ <distance name="right_width" value="0" />
+ <distance name="bottom_height" value="0" />
+</frame_geometry>
+
+<frame_geometry name="utility" parent="normal">
+</frame_geometry>
+
+<frame_geometry name="border" has_title="false" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="0"/>
+ <distance name="right_titlebar_edge" value="0"/>
+ <distance name="button_width" value="0"/>
+ <distance name="button_height" value="0"/>
+ <distance name="title_vertical_pad" value="4"/>
+ <border name="title_border" left="0" right="0" top="0" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="0" bottom="0"/>
+</frame_geometry>
+
+<!-- Buttons -->
+<draw_ops name="button_bg">
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="1" y1="2"
+ x2="1" y2="height-3" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" />
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="button_bg_prelight">
+
+ <!-- Do a fill -->
+ <rectangle color="shade/gtk:bg[SELECTED]/1.0" x="1" y="1" width="width-2" height = "height-2" filled="true" />
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="1" y1="2"
+ x2="1" y2="height-3" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" />
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+
+</draw_ops>
+
+<draw_ops name="button_pressed_bg">
+
+ <!-- Do a fill -->
+<!-- <rectangle color="shade/gtk:bg[SELECTED]/0.8" x="1" y="1" width="width-2" height = "height-2" filled="true" /> -->
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[SELECTED]/0.9" />
+ <color value="shade/gtk:bg[SELECTED]/1.2" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <!-- <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+
+ <gradient type="vertical" x="1" y="2" width="1" height="height-4">
+ <color value="shade/gtk:bg[SELECTED]/1.1" />
+ <color value="shade/gtk:bg[SELECTED]/1.2" />
+ </gradient>
+
+ <!-- Left line -->
+ <!-- <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+
+
+ <gradient type="vertical" x="width-2" y="2" width="1" height="height-4">
+ <color value="shade/gtk:bg[SELECTED]/1.1" />
+ <color value="shade/gtk:bg[SELECTED]/1.2" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+
+</draw_ops>
+
+<draw_ops name="menu_glyph">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" />
+</draw_ops>
+
+<draw_ops name="menu_glyph_unfocused">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" alpha="0.5"/>
+</draw_ops>
+
+<draw_ops name="close_glyph">
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="white" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="white" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_shadow">
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_shadow_dark">
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused_lighter">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph">
+ <rectangle color="white" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="white" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="white" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="white" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+<draw_ops name="maximize_glyph_shadow">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.85" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_shadow_dark">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.8" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+<draw_ops name="maximize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+
+
+</draw_ops>
+
+<draw_ops name="minimize_glyph">
+ <rectangle color="white" x="2" y="height * 2 / 3" width="width-4" height="height - height * 2 / 3 - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_shadow">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.85" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_shadow_dark">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.8" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="menu_button">
+ <include name="menu_glyph" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="menu_button_unfocused">
+ <include name="menu_glyph_unfocused" x="0" y="0" />
+</draw_ops>
+
+<draw_ops name="menu_button_pressed">
+ <include name="menu_glyph_unfocused" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="minimize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_shadow" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused">
+ <include name="minimize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4" />
+</draw_ops>
+
+<draw_ops name="minimize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused_pressed">
+ <include name="minimize_glyph_unfocused" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+
+<draw_ops name="maximize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused">
+ <include name="maximize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused_pressed">
+ <include name="maximize_glyph_unfocused" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="mini_window_icon">
+ <rectangle color="gtk:bg[NORMAL]" filled="true"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <rectangle color="gtk:fg[NORMAL]" filled="false"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <line color="gtk:fg[NORMAL]" width="2"
+ x1="0" y1="1" x2="width" y2="1"/>
+</draw_ops>
+
+<draw_ops name="restore_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow" x="3" y="5" width="width-6" height="height-6" />
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_prelight">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow_dark" x="3" y="5" width="width-6" height="height-6"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused">
+ <include name="maximize_glyph_unfocused_lighter" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused_pressed">
+ <include name="maximize_glyph_unfocused" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="close_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_shadow" x="2" y="4" width="width-4" height="height-4" />
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused">
+ <include name="close_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused_pressed">
+ <include name="close_glyph_unfocused" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.5"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel_unfocused">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="title_background">
+
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+ <rectangle color="shade/gtk:bg[SELECTED]/1.3" x="1" y="1" width="width-3" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="width-2" y1="1" x2="width-2" y2="height-2"/>
+
+ <gradient type="vertical" x="2" y="2" width="width-4" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-1"
+ x2="width-2" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.25"
+ x1="1" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="4" y1="1" x2="4" y2="1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="3" y1="2" x2="4" y2="2" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+</draw_ops>
+
+<draw_ops name="title_background_maximized">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+ <rectangle color="shade/gtk:bg[SELECTED]/1.3" x="0" y="1" width="width-2" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="width-1" y1="1" x2="width-1" y2="height-2"/>
+
+ <gradient type="vertical" x="1" y="2" width="width-2" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ </gradient>
+
+ <rectangle color="shade/gtk:bg[SELECTED]/1.3" x="0" y="1" width="width-1" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="height-1"
+ x2="width-1" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.25"
+ x1="0" y1="height-2"
+ x2="width-1" y2="height-2" />
+</draw_ops>
+
+<draw_ops name="title_unfocused_background">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.0"/>
+ <color value="shade/gtk:bg[NORMAL]/1.0"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="1" y1="1" x2="width-2" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="1" y1="1" x2="1" y2="height-1"/>
+
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="width-2" y1="1" x2="width-2" y2="height" />
+
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="4" y1="1" x2="4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="3" y1="2" x2="4" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+</draw_ops>
+
+<draw_ops name="title_unfocused_background_maximized">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="0" y="1" width="width" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.0"/>
+ <color value="shade/gtk:bg[NORMAL]/1.0"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="0" y1="1" x2="width-1" y2="1"/>
+
+</draw_ops>
+
+<draw_ops name="blank">
+<!-- nothing -->
+</draw_ops>
+
+<draw_ops name="focus_outline">
+ <line color="shade/gtk:bg[NORMAL]/1.5"
+ x1="1" y1="title_height" x2="1" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/1.5"
+ x1="width-2" y1="title_height" x2="width-2" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/1.5"
+ x1="2" y1="height-2" x2="width-2" y2="height-2" />
+</draw_ops>
+
+<draw_ops name="focus_background">
+ <include name="outer_bevel"/>
+ <include name="focus_outline"/>
+</draw_ops>
+
+<draw_ops name="unfocus_background">
+ <include name="outer_bevel_unfocused" />
+ <include name="focus_outline" />
+</draw_ops>
+
+<draw_ops name="title_text_focused_with_icon">
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) - 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) - 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) + 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(0) + 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+ <title color="#ffffff"
+ x="(0)"
+ y="(((height - title_height) / 2) `max` 0)"/>
+
+</draw_ops>
+
+<draw_ops name="title_text_with_icon">
+ <title color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5"
+ x="(0)"
+ y="((height - title_height) / 2) `max` 0"/>
+</draw_ops>
+
+<draw_ops name="title_normal">
+ <include name="title_text_with_icon"/>
+</draw_ops>
+
+<draw_ops name="title_focused">
+ <include name="title_text_focused_with_icon"/>
+</draw_ops>
+
+<frame_style name="normal_unfocused" geometry="normal">
+ <piece position="entire_background" draw_ops="unfocus_background"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background"/>
+ <piece position="title" draw_ops="title_normal"/>
+
+ <button function="close" state="normal" draw_ops="close_button_unfocused"/>
+ <button function="close" state="pressed" draw_ops="close_button_unfocused_pressed"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button_unfocused"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_unfocused_pressed"/>
+ <button function="maximize" state="normal" draw_ops="maximize_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_unfocused_pressed"/>
+ <button function="menu" state="normal" draw_ops="menu_button_unfocused"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_unfocused"/>
+</frame_style>
+
+<frame_style name="normal_focused" geometry="normal">
+ <piece position="entire_background" draw_ops="focus_background"/>
+ <piece position="titlebar" draw_ops="title_background"/>
+ <piece position="title" draw_ops="title_focused"/>
+ <button function="close" state="normal" draw_ops="close_button"/>
+ <button function="close" state="pressed" draw_ops="close_button_pressed"/>
+ <button function="close" state="prelight" draw_ops="close_button_focus"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_pressed"/>
+ <button function="minimize" state="prelight" draw_ops="minimize_button_focus" />
+ <button function="maximize" state="normal" draw_ops="maximize_button"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="maximize_button_focus"/>
+ <button function="menu" state="normal" draw_ops="menu_button"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_pressed"/>
+
+</frame_style>
+
+<frame_style name="maximized_unfocused" geometry="normal_small_borders" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="blank"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_unfocused_pressed"/>
+</frame_style>
+
+<frame_style name="maximized_focused" geometry="normal_small_borders" parent="normal_focused">
+ <piece position="entire_background" draw_ops="focus_outline"/>
+ <piece position="titlebar" draw_ops="title_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="restore_button_prelight" />
+</frame_style>
+
+<frame_style name="border" geometry="border" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="outer_bevel"/>
+ <piece position="titlebar" draw_ops="blank"/>
+ <piece position="title" draw_ops="blank"/>
+</frame_style>
+
+<frame_style_set name="normal">
+<frame focus="yes" state="normal" resize="both" style="normal_focused"/>
+<frame focus="no" state="normal" resize="both" style="normal_unfocused"/>
+<frame focus="yes" state="maximized" style="maximized_focused"/>
+<frame focus="no" state="maximized" style="maximized_unfocused"/>
+<frame focus="yes" state="shaded" style="normal_focused"/>
+<frame focus="no" state="shaded" style="normal_unfocused"/>
+<frame focus="yes" state="maximized_and_shaded" style="maximized_focused"/>
+<frame focus="no" state="maximized_and_shaded" style="maximized_unfocused"/>
+</frame_style_set>
+
+<frame_style_set name="border">
+<frame focus="yes" state="normal" resize="both" style="border"/>
+<frame focus="no" state="normal" resize="both" style="border"/>
+<frame focus="yes" state="maximized" style="border"/>
+<frame focus="no" state="maximized" style="border"/>
+<frame focus="yes" state="shaded" style="border"/>
+<frame focus="no" state="shaded" style="border"/>
+<frame focus="yes" state="maximized_and_shaded" style="border"/>
+<frame focus="no" state="maximized_and_shaded" style="border"/>
+</frame_style_set>
+
+<window type="normal" style_set="normal"/>
+<window type="dialog" style_set="normal"/>
+<window type="modal_dialog" style_set="normal"/>
+<window type="menu" style_set="normal"/>
+<window type="utility" style_set="normal"/>
+<window type="border" style_set="normal"/>
+
+<menu_icon function="close" state="normal" draw_ops="close_button"/>
+<menu_icon function="maximize" state="normal" draw_ops="maximize_button"/>
+<menu_icon function="unmaximize" state="normal" draw_ops="restore_button"/>
+<menu_icon function="minimize" state="normal" draw_ops="minimize_button"/>
+
+</metacity_theme>
diff --git a/src/themes/Splint/metacity-theme-1.xml b/src/themes/Splint/metacity-theme-1.xml
new file mode 100644
index 00000000..d10865bb
--- /dev/null
+++ b/src/themes/Splint/metacity-theme-1.xml
@@ -0,0 +1,802 @@
+<?xml version="1.0"?>
+<metacity_theme>
+
+<info>
+ <name>Splint</name>
+ <author>Brandon Wright</author>
+ <copyright>2009</copyright>
+ <date>January 21, 2009</date>
+ <description>A theme designed around the Tango style.</description>
+</info>
+
+<frame_geometry name="normal" rounded_top_left="true" rounded_top_right="true">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="4"/>
+ <distance name="right_titlebar_edge" value="4"/>
+ <aspect_ratio name="button" value="1"/>
+ <distance name="title_vertical_pad" value="2"/>
+ <border name="title_border" left="3" right="4" top="2" bottom="2"/>
+ <border name="button_border" left="1" right="1" top="3" bottom="3"/>
+</frame_geometry>
+
+<frame_geometry name="normal_small_borders" parent="normal" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_titlebar_edge" value="1" />
+ <distance name="right_titlebar_edge" value="1" />
+ <distance name="left_width" value="0" />
+ <distance name="right_width" value="0" />
+ <distance name="bottom_height" value="0" />
+</frame_geometry>
+
+<frame_geometry name="utility" parent="normal">
+</frame_geometry>
+
+<frame_geometry name="border" has_title="false" rounded_top_left="false" rounded_top_right="false">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="0"/>
+ <distance name="right_titlebar_edge" value="0"/>
+ <distance name="button_width" value="0"/>
+ <distance name="button_height" value="0"/>
+ <distance name="title_vertical_pad" value="4"/>
+ <border name="title_border" left="0" right="0" top="0" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="0" bottom="0"/>
+</frame_geometry>
+
+<!-- Buttons -->
+<draw_ops name="button_bg">
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="1" y1="2"
+ x2="1" y2="height-3" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" />
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+</draw_ops>
+
+<draw_ops name="button_bg_prelight">
+
+ <!-- Do a fill -->
+ <rectangle color="shade/gtk:bg[SELECTED]/1.0" x="1" y="1" width="width-2" height = "height-2" filled="true" />
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="1" y1="2"
+ x2="1" y2="height-3" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" />
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+
+</draw_ops>
+
+<draw_ops name="button_pressed_bg">
+
+ <!-- Do a fill -->
+<!-- <rectangle color="shade/gtk:bg[SELECTED]/0.8" x="1" y="1" width="width-2" height = "height-2" filled="true" /> -->
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-2">
+ <color value="shade/gtk:bg[SELECTED]/0.9" />
+ <color value="shade/gtk:bg[SELECTED]/1.2" />
+ </gradient>
+
+ <!-- Dark lines -->
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="0"
+ x2="width-3" y2="0" />
+
+ <!-- Left line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="2"
+ x2="0" y2="height-3" />
+
+ <!-- Right line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-1" y1="2"
+ x2="width-1" y2="height-3" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="2" y1="height-1"
+ x2="width-3" y2="height-1" />
+
+ <!-- TL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="1"
+ x2="1" y2="1" />
+
+ <!-- TR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="1"
+ x2="width-2" y2="1" />
+
+ <!-- LL Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-2"
+ x2="1" y2="height-2" />
+
+ <!-- LR Corner -->
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="width-2" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <!-- Lighter Inside -->
+
+ <!-- Top line -->
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="1"
+ x2="width-3" y2="1" />
+
+ <!-- Bottom line -->
+ <line color="shade/gtk:bg[SELECTED]/1.2"
+ x1="2" y1="height-2"
+ x2="width-3" y2="height-2" />
+
+ <!-- Left line -->
+ <!-- <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="1" y1="2"
+ x2="1" y2="height-3" /> -->
+
+ <gradient type="vertical" x="1" y="2" width="1" height="height-4">
+ <color value="shade/gtk:bg[SELECTED]/1.1" />
+ <color value="shade/gtk:bg[SELECTED]/1.2" />
+ </gradient>
+
+ <!-- Left line -->
+ <!-- <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-2" y1="2"
+ x2="width-2" y2="height-3" /> -->
+
+
+ <gradient type="vertical" x="width-2" y="2" width="1" height="height-4">
+ <color value="shade/gtk:bg[SELECTED]/1.1" />
+ <color value="shade/gtk:bg[SELECTED]/1.2" />
+ </gradient>
+
+ <!-- Corners -->
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="2" y1="2"
+ x2="2" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.0"
+ x1="width-3" y1="2"
+ x2="width-3" y2="2" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="2" y1="height-3"
+ x2="2" y2="height-3" />
+ <line color="shade/gtk:bg[SELECTED]/1.1"
+ x1="width-3" y1="height-3"
+ x2="width-3" y2="height-3" />
+
+</draw_ops>
+
+<draw_ops name="menu_glyph">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" />
+</draw_ops>
+
+<draw_ops name="menu_glyph_unfocused">
+ <icon x="(width-mini_icon_width)/2"
+ y="(height-mini_icon_height)/2"
+ width="mini_icon_width" height="mini_icon_height" alpha="0.5"/>
+</draw_ops>
+
+<draw_ops name="close_glyph">
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/white/gtk:bg[SELECTED]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="white" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="white" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_shadow">
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_shadow_dark">
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="close_glyph_unfocused_lighter">
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="2" x2="width-3" y2="height-4"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="3" x2="width-4" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="2" y1="height-4" x2="width-4" y2="2"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.75" x1="3" y1="height-3" x2="width-3" y2="3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="2"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph">
+ <rectangle color="white" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="white" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="white" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="white" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+<draw_ops name="maximize_glyph_shadow">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.85" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.85" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_shadow_dark">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.8" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="shade/gtk:bg[SELECTED]/0.8" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+
+<draw_ops name="maximize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="gtk:fg[NORMAL]" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+</draw_ops>
+<draw_ops name="maximize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="2" width="width-4" height="height/4" filled="true"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="2" x2="2" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="2" y1="height-3" x2="width-3" y2="height-3"/>
+ <line color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x1="width-3" y1="2" x2="width-3" y2="height-3"/>
+
+
+</draw_ops>
+
+<draw_ops name="minimize_glyph">
+ <rectangle color="white" x="2" y="height * 2 / 3" width="width-4" height="height - height * 2 / 3 - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_shadow">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.85" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_shadow_dark">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.8" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused">
+ <rectangle color="gtk:fg[NORMAL]" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="minimize_glyph_unfocused_lighter">
+ <rectangle color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5" x="2" y="height * 2 / 3" width="width-4" height="height - (height * 2 / 3) - 2" filled="true" />
+</draw_ops>
+
+<draw_ops name="menu_button">
+ <include name="menu_glyph" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="menu_button_unfocused">
+ <include name="menu_glyph_unfocused" x="0" y="0" />
+</draw_ops>
+
+<draw_ops name="menu_button_pressed">
+ <include name="menu_glyph_unfocused" x="0" y="0"/>
+</draw_ops>
+
+<draw_ops name="minimize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_shadow" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="minimize_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused">
+ <include name="minimize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4" />
+</draw_ops>
+
+<draw_ops name="minimize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="minimize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="minimize_button_unfocused_pressed">
+ <include name="minimize_glyph_unfocused" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+
+<draw_ops name="maximize_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused">
+ <include name="maximize_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_unfocused_pressed">
+ <include name="maximize_glyph_unfocused" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="maximize_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="mini_window_icon">
+ <rectangle color="gtk:bg[NORMAL]" filled="true"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <rectangle color="gtk:fg[NORMAL]" filled="false"
+ x="0" y="0" width="width-1" height="height-1"/>
+ <line color="gtk:fg[NORMAL]" width="2"
+ x1="0" y1="1" x2="width" y2="1"/>
+</draw_ops>
+
+<draw_ops name="restore_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow" x="3" y="5" width="width-6" height="height-6" />
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_prelight">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="maximize_glyph_shadow_dark" x="3" y="5" width="width-6" height="height-6"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused">
+ <include name="maximize_glyph_unfocused_lighter" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="maximize_glyph" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="restore_button_unfocused_pressed">
+ <include name="maximize_glyph_unfocused" x="3" y="3" width="width-6" height="height-6"/>
+</draw_ops>
+
+<draw_ops name="close_button">
+ <include name="button_bg" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_shadow" x="2" y="4" width="width-4" height="height-4" />
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_focus">
+ <include name="button_bg_prelight" x="0" y="0" width="width" height="height" />
+ <include name="close_glyph_shadow_dark" x="2" y="4" width="width-4" height="height-4"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused">
+ <include name="close_glyph_unfocused_lighter" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_unfocused_pressed">
+ <include name="close_glyph_unfocused" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="close_button_pressed">
+ <include name="button_pressed_bg"/>
+ <include name="close_glyph" x="2" y="2" width="width-4" height="height-4"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.5"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="outer_bevel_unfocused">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7"
+ x="0" y="0" width="width-1" height="height-1"/>
+</draw_ops>
+
+<draw_ops name="title_background">
+
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+ <rectangle color="shade/gtk:bg[SELECTED]/1.3" x="1" y="1" width="width-3" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="width-2" y1="1" x2="width-2" y2="height-2"/>
+
+ <gradient type="vertical" x="2" y="2" width="width-4" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="1" y1="height-1"
+ x2="width-2" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.25"
+ x1="1" y1="height-2"
+ x2="width-2" y2="height-2" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="4" y1="1" x2="4" y2="1" />
+
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[SELECTED]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="3" y1="2" x2="4" y2="2" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+</draw_ops>
+
+<draw_ops name="title_background_maximized">
+ <rectangle color="shade/gtk:bg[SELECTED]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+ <rectangle color="shade/gtk:bg[SELECTED]/1.3" x="0" y="1" width="width-2" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/1.3" x1="width-1" y1="1" x2="width-1" y2="height-2"/>
+
+ <gradient type="vertical" x="1" y="2" width="width-2" height="height-3">
+ <color value="shade/gtk:bg[SELECTED]/0.9"/>
+ <color value="shade/gtk:bg[SELECTED]/1.1"/>
+ </gradient>
+
+ <rectangle color="shade/gtk:bg[SELECTED]/1.3" x="0" y="1" width="width-1" height="height-3"/>
+
+ <line color="shade/gtk:bg[SELECTED]/0.8"
+ x1="0" y1="height-1"
+ x2="width-1" y2="height-1" />
+
+ <line color="shade/gtk:bg[SELECTED]/1.25"
+ x1="0" y1="height-2"
+ x2="width-1" y2="height-2" />
+</draw_ops>
+
+<draw_ops name="title_unfocused_background">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="1" y="1" width="width-2" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.0"/>
+ <color value="shade/gtk:bg[NORMAL]/1.0"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="1" y1="1" x2="width-2" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="1" y1="1" x2="1" y2="height-1"/>
+
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="width-2" y1="1" x2="width-2" y2="height" />
+
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="3" x2="3" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="1" y1="4" x2="1" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="4" y1="1" x2="4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-4" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-5" y1="1" x2="width-5" y2="1" />
+ <line color="shade/gtk:bg[NORMAL]/0.7" x1="width-2" y1="3" x2="width-2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="2" y1="3" x2="2" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="3" y1="2" x2="4" y2="2" />
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="width-3" y1="3" x2="width-3" y2="4" />
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="width-5" y1="2" x2="width-4" y2="2" />
+
+</draw_ops>
+
+<draw_ops name="title_unfocused_background_maximized">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.7" x="0" y="0" width="width" height="height" filled="true"/>
+
+ <gradient type="vertical" x="0" y="1" width="width" height="height-1">
+ <color value="shade/gtk:bg[NORMAL]/1.0"/>
+ <color value="shade/gtk:bg[NORMAL]/1.0"/>
+ </gradient>
+
+ <line color="shade/gtk:bg[NORMAL]/1.5" x1="0" y1="1" x2="width-1" y2="1"/>
+
+</draw_ops>
+
+<draw_ops name="blank">
+<!-- nothing -->
+</draw_ops>
+
+<draw_ops name="focus_outline">
+ <line color="shade/gtk:bg[NORMAL]/1.5"
+ x1="1" y1="title_height" x2="1" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/1.5"
+ x1="width-2" y1="title_height" x2="width-2" y2="height-2" />
+ <line color="shade/gtk:bg[NORMAL]/1.5"
+ x1="2" y1="height-2" x2="width-2" y2="height-2" />
+</draw_ops>
+
+<draw_ops name="focus_background">
+ <include name="outer_bevel"/>
+ <include name="focus_outline"/>
+</draw_ops>
+
+<draw_ops name="unfocus_background">
+ <include name="outer_bevel_unfocused" />
+ <include name="focus_outline" />
+</draw_ops>
+
+<draw_ops name="title_text_focused_with_icon">
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) - 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) - 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) + 1"
+ y="(((height - title_height) / 2) `max` 0) + 1"/>
+
+ <title color="shade/gtk:bg[SELECTED]/0.8"
+ x="(((width - title_width) / 2) `max` 0) + 1"
+ y="(((height - title_height) / 2) `max` 0) - 1"/>
+
+ <title color="#ffffff"
+ x="(((width - title_width) / 2) `max` 0)"
+ y="(((height - title_height) / 2) `max` 0)"/>
+
+</draw_ops>
+
+<draw_ops name="title_text_with_icon">
+ <title color="blend/gtk:fg[NORMAL]/gtk:bg[NORMAL]/0.5"
+ x="(((width - title_width) / 2) `max` 0)"
+ y="((height - title_height) / 2) `max` 0"/>
+</draw_ops>
+
+<draw_ops name="title_normal">
+ <include name="title_text_with_icon"/>
+</draw_ops>
+
+<draw_ops name="title_focused">
+ <include name="title_text_focused_with_icon"/>
+</draw_ops>
+
+<frame_style name="normal_unfocused" geometry="normal">
+ <piece position="entire_background" draw_ops="unfocus_background"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background"/>
+ <piece position="title" draw_ops="title_normal"/>
+
+ <button function="close" state="normal" draw_ops="close_button_unfocused"/>
+ <button function="close" state="pressed" draw_ops="close_button_unfocused_pressed"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button_unfocused"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_unfocused_pressed"/>
+ <button function="maximize" state="normal" draw_ops="maximize_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_unfocused_pressed"/>
+ <button function="menu" state="normal" draw_ops="menu_button_unfocused"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_unfocused"/>
+</frame_style>
+
+<frame_style name="normal_focused" geometry="normal">
+ <piece position="entire_background" draw_ops="focus_background"/>
+ <piece position="titlebar" draw_ops="title_background"/>
+ <piece position="title" draw_ops="title_focused"/>
+ <button function="close" state="normal" draw_ops="close_button"/>
+ <button function="close" state="pressed" draw_ops="close_button_pressed"/>
+ <button function="close" state="prelight" draw_ops="close_button_focus"/>
+ <button function="minimize" state="normal" draw_ops="minimize_button"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_button_pressed"/>
+ <button function="minimize" state="prelight" draw_ops="minimize_button_focus" />
+ <button function="maximize" state="normal" draw_ops="maximize_button"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="maximize_button_focus"/>
+ <button function="menu" state="normal" draw_ops="menu_button"/>
+ <button function="menu" state="pressed" draw_ops="menu_button_pressed"/>
+
+</frame_style>
+
+<frame_style name="maximized_unfocused" geometry="normal_small_borders" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="blank"/>
+ <piece position="titlebar" draw_ops="title_unfocused_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button_unfocused"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_unfocused_pressed"/>
+</frame_style>
+
+<frame_style name="maximized_focused" geometry="normal_small_borders" parent="normal_focused">
+ <piece position="entire_background" draw_ops="focus_outline"/>
+ <piece position="titlebar" draw_ops="title_background_maximized"/>
+ <button function="maximize" state="normal" draw_ops="restore_button"/>
+ <button function="maximize" state="pressed" draw_ops="restore_button_pressed"/>
+ <button function="maximize" state="prelight" draw_ops="restore_button_prelight" />
+</frame_style>
+
+<frame_style name="border" geometry="border" parent="normal_unfocused">
+ <piece position="entire_background" draw_ops="outer_bevel"/>
+ <piece position="titlebar" draw_ops="blank"/>
+ <piece position="title" draw_ops="blank"/>
+</frame_style>
+
+<frame_style_set name="normal">
+<frame focus="yes" state="normal" resize="both" style="normal_focused"/>
+<frame focus="no" state="normal" resize="both" style="normal_unfocused"/>
+<frame focus="yes" state="maximized" style="maximized_focused"/>
+<frame focus="no" state="maximized" style="maximized_unfocused"/>
+<frame focus="yes" state="shaded" style="normal_focused"/>
+<frame focus="no" state="shaded" style="normal_unfocused"/>
+<frame focus="yes" state="maximized_and_shaded" style="maximized_focused"/>
+<frame focus="no" state="maximized_and_shaded" style="maximized_unfocused"/>
+</frame_style_set>
+
+<frame_style_set name="border">
+<frame focus="yes" state="normal" resize="both" style="border"/>
+<frame focus="no" state="normal" resize="both" style="border"/>
+<frame focus="yes" state="maximized" style="border"/>
+<frame focus="no" state="maximized" style="border"/>
+<frame focus="yes" state="shaded" style="border"/>
+<frame focus="no" state="shaded" style="border"/>
+<frame focus="yes" state="maximized_and_shaded" style="border"/>
+<frame focus="no" state="maximized_and_shaded" style="border"/>
+</frame_style_set>
+
+<window type="normal" style_set="normal"/>
+<window type="dialog" style_set="normal"/>
+<window type="modal_dialog" style_set="normal"/>
+<window type="menu" style_set="normal"/>
+<window type="utility" style_set="normal"/>
+<window type="border" style_set="normal"/>
+
+<menu_icon function="close" state="normal" draw_ops="close_button"/>
+<menu_icon function="maximize" state="normal" draw_ops="maximize_button"/>
+<menu_icon function="unmaximize" state="normal" draw_ops="restore_button"/>
+<menu_icon function="minimize" state="normal" draw_ops="minimize_button"/>
+
+</metacity_theme>
diff --git a/src/themes/WinMe/close_normal.png b/src/themes/WinMe/close_normal.png
new file mode 100644
index 00000000..644378f9
--- /dev/null
+++ b/src/themes/WinMe/close_normal.png
Binary files differ
diff --git a/src/themes/WinMe/close_normal_small.png b/src/themes/WinMe/close_normal_small.png
new file mode 100644
index 00000000..bd7495c8
--- /dev/null
+++ b/src/themes/WinMe/close_normal_small.png
Binary files differ
diff --git a/src/themes/WinMe/close_pressed.png b/src/themes/WinMe/close_pressed.png
new file mode 100644
index 00000000..42970c2d
--- /dev/null
+++ b/src/themes/WinMe/close_pressed.png
Binary files differ
diff --git a/src/themes/WinMe/close_pressed_small.png b/src/themes/WinMe/close_pressed_small.png
new file mode 100644
index 00000000..c7c98a1e
--- /dev/null
+++ b/src/themes/WinMe/close_pressed_small.png
Binary files differ
diff --git a/src/themes/WinMe/maximize_normal.png b/src/themes/WinMe/maximize_normal.png
new file mode 100644
index 00000000..41b7694a
--- /dev/null
+++ b/src/themes/WinMe/maximize_normal.png
Binary files differ
diff --git a/src/themes/WinMe/maximize_pressed.png b/src/themes/WinMe/maximize_pressed.png
new file mode 100644
index 00000000..68137306
--- /dev/null
+++ b/src/themes/WinMe/maximize_pressed.png
Binary files differ
diff --git a/src/themes/WinMe/metacity-theme-1.xml b/src/themes/WinMe/metacity-theme-1.xml
new file mode 100644
index 00000000..29d3aef0
--- /dev/null
+++ b/src/themes/WinMe/metacity-theme-1.xml
@@ -0,0 +1,375 @@
+<?xml version="1.0"?>
+<!--
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 2 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+Notes
+ #d4d0c8 was replaced with gtk:bg[NORMAL]
+
+-->
+<metacity_theme>
+ <info>
+ <name>WinMe</name>
+ <author>Perberos</author>
+ <copyright>&#194; 2007 Srivatsa Kanchi &lt;[email protected]&gt;, 2010 Perberos</copyright>
+ <date>April 22, 2010</date>
+ <description>Windows NT serie style theme</description>
+ </info>
+
+ <frame_geometry name="normal_geometry" has_title="true" rounded_top_left="false" rounded_top_right="false" title_scale="medium" rounded_bottom_left="false" rounded_bottom_right="false">
+ <distance name="left_width" value="4"/>
+ <distance name="right_width" value="4"/>
+ <distance name="bottom_height" value="4"/>
+ <distance name="left_titlebar_edge" value="5"/>
+ <distance name="right_titlebar_edge" value="6"/>
+ <distance name="title_vertical_pad" value="5"/>
+ <distance name="button_width" value="17"/>
+ <distance name="button_height" value="16"/>
+ <border name="title_border" left="0" right="0" top="4" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="3" bottom="0"/>
+ </frame_geometry>
+
+ <frame_geometry name="borderless_geometry" has_title="true" rounded_top_left="false" rounded_top_right="false" title_scale="medium" rounded_bottom_left="false" rounded_bottom_right="false">
+ <distance name="left_width" value="0"/>
+ <distance name="right_width" value="0"/>
+ <distance name="bottom_height" value="0"/>
+ <distance name="left_titlebar_edge" value="1"/>
+ <distance name="right_titlebar_edge" value="2"/>
+ <distance name="title_vertical_pad" value="2"/>
+ <distance name="button_width" value="17"/>
+ <distance name="button_height" value="16"/>
+ <border name="title_border" left="0" right="0" top="0" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="1" bottom="1"/>
+ </frame_geometry>
+
+ <frame_geometry name="utility_geometry" has_title="true" rounded_top_left="false" rounded_top_right="false" title_scale="small" rounded_bottom_left="false" rounded_bottom_right="false">
+ <distance name="left_width" value="3"/>
+ <distance name="right_width" value="3"/>
+ <distance name="bottom_height" value="3"/>
+ <distance name="left_titlebar_edge" value="4"/>
+ <distance name="right_titlebar_edge" value="4"/>
+ <distance name="title_vertical_pad" value="4"/>
+ <distance name="button_width" value="10"/>
+ <distance name="button_height" value="11"/>
+ <border name="title_border" left="0" right="0" top="4" bottom="2"/>
+ <border name="button_border" left="0" right="0" top="2" bottom="0"/>
+ </frame_geometry>
+
+ <frame_geometry name="border_geometry" has_title="false">
+ <distance name="left_width" value="0" />
+ <distance name="right_width" value="0" />
+ <distance name="bottom_height" value="0" />
+ <distance name="left_titlebar_edge" value="0" />
+ <distance name="right_titlebar_edge" value="0" />
+ <distance name="button_width" value="0"/>
+ <distance name="button_height" value="0"/>
+ <distance name="title_vertical_pad" value="0" />
+ <border name="title_border" left="0" right="0" top="0" bottom="0" />
+ <border name="button_border" left="0" right="0" top="0" bottom="0" />
+ </frame_geometry>
+
+ <frame_style name="normal_focused_style" geometry="normal_geometry">
+ <piece position="left_edge">
+ <draw_ops>
+ <rectangle color="gtk:bg[NORMAL]" x="0" y="0" width="width" height="height" filled="true"/>
+ <line color="#ffffff" x1="1" y1="0" x2="1" y2="height" width="1"/>
+ </draw_ops>
+ </piece>
+ <piece position="right_edge">
+ <draw_ops>
+ <rectangle color="gtk:bg[NORMAL]" x="0" y="0" width="width" height="height" filled="true"/>
+ <line color="#808080" x1="width-2" y1="0" x2="width-2" y2="height" width="1"/>
+ <line color="#404040" x1="width-1" y1="0" x2="width-1" y2="height" width="1"/>
+ </draw_ops>
+ </piece>
+ <piece position="bottom_edge">
+ <draw_ops>
+ <rectangle color="gtk:bg[NORMAL]" x="0" y="0" width="width" height="height" filled="true"/>
+ <line color="#808080" x1="1" y1="height-2" x2="width" y2="height-2" width="1"/>
+ <line color="#404040" x1="0" y1="height-1" x2="width" y2="height-1" width="1"/>
+ <line color="#ffffff" x1="1" y1="0" x2="1" y2="height-2" width="1"/>
+ <line color="#404040" x1="width-1" y1="0" x2="width-1" y2="height" width="1"/>
+ <line color="#808080" x1="width-2" y1="0" x2="width-2" y2="height-2" width="1"/>
+ </draw_ops>
+ </piece>
+ <piece position="titlebar">
+ <draw_ops>
+ <rectangle color="gtk:bg[NORMAL]" x="0" y="0" width="width" height="height" filled="true"/>
+ <line color="#ffffff" x1="1" y1="1" x2="1" y2="height" width="1"/>
+ <line color="#ffffff" x1="1" y1="1" x2="width-2" y2="1" width="1"/>
+ <line color="#404040" x1="width-1" y1="0" x2="width-1" y2="height" width="1"/>
+ <line color="#808080" x1="width-2" y1="1" x2="width-2" y2="height" width="1"/>
+ <gradient type="horizontal" x="4" y="4" width="width-8" height="height-5">
+ <color value="#0a246a"/> <!-- #0a246a (10, 36, 106)-->
+ <color value="#526bad"/> <!-- #526bad (82, 107, 173) is a cute color -->
+ <color value="#94b5dc"/> <!-- #94b5dc (148, 181, 220)-->
+ <color value="#a6caf0"/> <!-- #a6caf0 (166, 202, 240) -->
+ </gradient>
+ </draw_ops>
+ </piece>
+
+ <button function="close" state="normal">
+ <draw_ops>
+ <image filename="close_normal.png" x="0" y="0" width="object_width" height="height"/>
+ </draw_ops>
+ </button>
+ <button function="close" state="pressed">
+ <draw_ops>
+ <image filename="close_pressed.png" x="0" y="0" width="width" height="height"/>
+ </draw_ops>
+ </button>
+ <button function="maximize" state="normal">
+ <draw_ops>
+ <image filename="maximize_normal.png" x="0" y="0" width="width" height="height"/>
+ </draw_ops>
+ </button>
+ <button function="maximize" state="pressed">
+ <draw_ops>
+ <image filename="maximize_pressed.png" x="0" y="0" width="width" height="height"/>
+ </draw_ops>
+ </button>
+ <button function="minimize" state="normal">
+ <draw_ops>
+ <image filename="minimize_normal.png" x="0" y="0" width="width" height="height"/>
+ </draw_ops>
+ </button>
+ <button function="minimize" state="pressed">
+ <draw_ops>
+ <image filename="minimize_pressed.png" x="0" y="0" width="width" height="height"/>
+ </draw_ops>
+ </button>
+ <button function="menu" state="normal">
+ <draw_ops>
+ <icon x="1" y="0" width="16" height="16"/>
+ </draw_ops>
+ </button>
+ <button function="menu" state="pressed">
+ <draw_ops>
+ <icon x="1" y="0" width="16" height="16"/>
+ </draw_ops>
+ </button>
+ <piece position="title">
+ <draw_ops>
+ <title x="3" y="2" color="#ffffff"/>
+ </draw_ops>
+ </piece>
+ </frame_style>
+
+ <frame_style name="normal(maximized)_focused_style" geometry="borderless_geometry" parent="normal_focused_style">
+ <piece position="titlebar">
+ <draw_ops>
+ <gradient type="horizontal" x="0" y="0" width="width-0"
+ height="height-0">
+ <color value="#0a246a"/>
+ <color value="#526bad"/>
+ <color value="#94b5dc"/>
+ <color value="#a6caf0"/>
+ </gradient>
+ </draw_ops>
+ </piece>
+ <button function="maximize" state="normal">
+
+ <draw_ops>
+ <image filename="restore_normal.png" x="0" y="0" width="width" height="height"/>
+ </draw_ops>
+ </button>
+ <button function="maximize" state="pressed">
+ <draw_ops>
+ <image filename="restore_pressed.png" x="0" y="0" width="width" height="height"/>
+ </draw_ops>
+ </button>
+ </frame_style>
+
+ <frame_style name="normal_unfocused_style" geometry="normal_geometry" parent="normal_focused_style">
+ <piece position="titlebar">
+ <draw_ops>
+ <rectangle color="gtk:bg[NORMAL]" x="0" y="0" width="width" height="height" filled="true"/>
+ <line color="#ffffff" x1="1" y1="1" x2="1" y2="height" width="1"/>
+ <line color="#ffffff" x1="1" y1="1" x2="width-2" y2="1" width="1"/>
+ <line color="#404040" x1="width-1" y1="0" x2="width-1" y2="height" width="1"/>
+ <line color="#808080" x1="width-2" y1="1" x2="width-2" y2="height" width="1"/>
+ <gradient type="horizontal" x="4" y="4" width="width-8" height="height-5">
+ <color value="#808080"/>
+ <color value="#8c8c8c"/>
+ <color value="#a5a5a5"/>
+ <color value="#c6bdc6"/>
+ <color value="#c0c0c0"/>
+ </gradient>
+ </draw_ops>
+ </piece>
+ <piece position="title">
+ <draw_ops>
+ <title x="3" y="2" color="gtk:bg[NORMAL]"/>
+ </draw_ops>
+ </piece>
+ </frame_style>
+
+ <frame_style name="normal(maximized)_unfocused_style" geometry="borderless_geometry" parent="normal_unfocused_style">
+ <piece position="titlebar">
+ <draw_ops>
+ <gradient type="horizontal" x="0" y="0" width="width-0" height="height-0">
+ <color value="#808080"/>
+ <color value="#8c8c8c"/>
+ <color value="#a5a5a5"/>
+ <color value="#c6bdc6"/>
+ <color value="#c0c0c0"/>
+ </gradient>
+ </draw_ops>
+ </piece>
+ <button function="maximize" state="normal">
+ <draw_ops>
+ <image filename="restore_normal.png" x="0" y="0" width="width" height="height"/>
+ </draw_ops>
+ </button>
+ </frame_style>
+
+ <frame_style name="utility_focused_style" geometry="utility_geometry">
+ <piece position="entire_background">
+ <draw_ops>
+ <rectangle color="gtk:bg[NORMAL]" x="0" y="0" width="width" height="height" filled="true"/>
+ <rectangle color="#ffffff" x="1" y="1" width="width-3" height="height-3" filled="false"/>
+ <line color="#808080" x1="width-2" y1="1" x2="width-2" y2="height-3"/>
+ <line color="#808080" x1="1" y1="height-2" x2="width-2" y2="height-2"/>
+ <line color="#404040" x1="width-1" y1="0" x2="width-1" y2="height-1"/>
+ <line color="#404040" x1="0" y1="height-1" x2="width-1" y2="height-1"/>
+ </draw_ops>
+ </piece>
+
+ <piece position="titlebar">
+ <draw_ops>
+ <gradient type="horizontal" x="3" y="3" width="width-6" height="height-4">
+ <color value="#0a246a"/>
+ <color value="#526bad"/>
+ <color value="#94b5dc"/>
+ <color value="#a6caf0"/>
+ </gradient>
+ </draw_ops>
+ </piece>
+ <button function="menu" state="normal"><draw_ops/></button>
+ <button function="menu" state="pressed"><draw_ops/></button>
+
+ <piece position="title">
+ <draw_ops>
+ <title x="3" y="2" color="#ffffff"/>
+ </draw_ops>
+ </piece>
+
+ <button function="close" state="normal">
+ <draw_ops>
+ <image filename="close_normal_small.png" x="0" y="0" width="width" height="height"/>
+ </draw_ops>
+ </button>
+ <button function="close" state="pressed">
+ <draw_ops>
+ <image filename="close_pressed_small.png" x="0" y="0" width="width" height="height"/>
+ </draw_ops>
+ </button>
+ <button function="maximize" state="normal"><draw_ops/></button>
+ <button function="maximize" state="pressed"><draw_ops/></button>
+ <button function="minimize" state="normal"><draw_ops/></button>
+ <button function="minimize" state="pressed"><draw_ops/></button>
+ </frame_style>
+
+ <frame_style name="utility_unfocused_style" geometry="utility_geometry" parent="utility_focused_style">
+ <piece position="titlebar">
+ <draw_ops>
+ <gradient type="horizontal" x="3" y="3" width="width-6" height="height-4">
+ <color value="#808080"/>
+ <color value="#8c8c8c"/>
+ <color value="#a5a5a5"/>
+ <color value="#c6bdc6"/>
+ <color value="#c0c0c0"/>
+ </gradient>
+ </draw_ops>
+ </piece>
+ <piece position="title">
+ <draw_ops>
+ <title x="3" y="2" color="gtk:bg[NORMAL]"/>
+ </draw_ops>
+ </piece>
+ </frame_style>
+
+
+ <frame_style name="border_style" geometry="border_geometry">
+ <button function="close" state="normal"><draw_ops/></button>
+ <button function="close" state="pressed"><draw_ops/></button>
+ <button function="maximize" state="normal"><draw_ops/></button>
+ <button function="maximize" state="pressed"><draw_ops/></button>
+ <button function="minimize" state="normal"><draw_ops/></button>
+ <button function="minimize" state="pressed"><draw_ops/></button>
+ <button function="menu" state="normal"><draw_ops/></button>
+ <button function="menu" state="pressed"><draw_ops/></button>
+ </frame_style>
+
+ <!-- system menu icon : default drawn by metacity -->
+ <menu_icon function="close" state="normal">
+ <draw_ops/>
+ </menu_icon>
+
+ <menu_icon function="maximize" state="normal">
+ <draw_ops/>
+ </menu_icon>
+
+ <menu_icon function="minimize" state="normal">
+ <draw_ops/>
+ </menu_icon>
+
+ <menu_icon function="unmaximize" state="normal">
+ <draw_ops/>
+ </menu_icon>
+
+ <frame_style_set name="normal_set">
+ <frame focus="yes" state="normal" resize="both" style="normal_focused_style"/>
+ <frame focus="no" state="normal" resize="both" style="normal_unfocused_style"/>
+ <frame focus="yes" state="normal" resize="none" style="normal_focused_style"/>
+ <frame focus="no" state="normal" resize="none" style="normal_unfocused_style"/>
+ <frame focus="yes" state="maximized" style="normal(maximized)_focused_style"/>
+ <frame focus="no" state="maximized" style="normal(maximized)_unfocused_style"/>
+ <frame focus="yes" state="shaded" style="normal_focused_style"/>
+ <frame focus="no" state="shaded" style="normal_unfocused_style"/>
+ <frame focus="yes" state="maximized_and_shaded" style="normal(maximized)_focused_style"/>
+ <frame focus="no" state="maximized_and_shaded" style="normal_unfocused_style"/>
+ </frame_style_set>
+
+
+ <frame_style_set name="border_set">
+ <frame focus="yes" state="normal" resize="both" style="border_style" />
+ <frame focus="no" state="normal" resize="both" style="border_style" />
+ <frame focus="yes" state="normal" resize="none" style="border_style" />
+ <frame focus="no" state="normal" resize="none" style="border_style" />
+ <frame focus="yes" state="maximized" style="border_style" />
+ <frame focus="no" state="maximized" style="border_style" />
+ <frame focus="yes" state="shaded" style="border_style" />
+ <frame focus="no" state="shaded" style="border_style" />
+ <frame focus="yes" state="maximized_and_shaded" style="border_style" />
+ <frame focus="no" state="maximized_and_shaded" style="border_style" />
+ </frame_style_set>
+
+ <frame_style_set name="utility_set" parent="border_set">
+ <frame focus="yes" state="normal" resize="both" style="utility_focused_style" />
+ <frame focus="no" state="normal" resize="both" style="utility_unfocused_style" />
+ <frame focus="yes" state="normal" resize="none" style="utility_focused_style" />
+ <frame focus="no" state="normal" resize="none" style="utility_unfocused_style" />
+ </frame_style_set>
+
+
+ <window type="normal" style_set="normal_set"/>
+ <window type="dialog" style_set="normal_set"/>
+ <window type="modal_dialog" style_set="normal_set"/>
+ <window type="menu" style_set="utility_set"/>
+ <window type="utility" style_set="utility_set"/>
+ <window type="border" style_set="border_set"/>
+
+</metacity_theme>
diff --git a/src/themes/WinMe/minimize_normal.png b/src/themes/WinMe/minimize_normal.png
new file mode 100644
index 00000000..cfa36387
--- /dev/null
+++ b/src/themes/WinMe/minimize_normal.png
Binary files differ
diff --git a/src/themes/WinMe/minimize_pressed.png b/src/themes/WinMe/minimize_pressed.png
new file mode 100644
index 00000000..4b873d15
--- /dev/null
+++ b/src/themes/WinMe/minimize_pressed.png
Binary files differ
diff --git a/src/themes/WinMe/restore_normal.png b/src/themes/WinMe/restore_normal.png
new file mode 100644
index 00000000..95ab85ec
--- /dev/null
+++ b/src/themes/WinMe/restore_normal.png
Binary files differ
diff --git a/src/themes/WinMe/restore_pressed.png b/src/themes/WinMe/restore_pressed.png
new file mode 100644
index 00000000..2b117058
--- /dev/null
+++ b/src/themes/WinMe/restore_pressed.png
Binary files differ
diff --git a/src/themes/eOS/close.png b/src/themes/eOS/close.png
new file mode 100644
index 00000000..6ba9495e
--- /dev/null
+++ b/src/themes/eOS/close.png
Binary files differ
diff --git a/src/themes/eOS/close_unfocused.png b/src/themes/eOS/close_unfocused.png
new file mode 100644
index 00000000..bdff535c
--- /dev/null
+++ b/src/themes/eOS/close_unfocused.png
Binary files differ
diff --git a/src/themes/eOS/close_unfocused_over.png b/src/themes/eOS/close_unfocused_over.png
new file mode 100644
index 00000000..6ba9495e
--- /dev/null
+++ b/src/themes/eOS/close_unfocused_over.png
Binary files differ
diff --git a/src/themes/eOS/maximize.png b/src/themes/eOS/maximize.png
new file mode 100644
index 00000000..785aa133
--- /dev/null
+++ b/src/themes/eOS/maximize.png
Binary files differ
diff --git a/src/themes/eOS/maximize_unfocused.png b/src/themes/eOS/maximize_unfocused.png
new file mode 100644
index 00000000..4c76ed67
--- /dev/null
+++ b/src/themes/eOS/maximize_unfocused.png
Binary files differ
diff --git a/src/themes/eOS/maximize_unfocused_over.png b/src/themes/eOS/maximize_unfocused_over.png
new file mode 100644
index 00000000..785aa133
--- /dev/null
+++ b/src/themes/eOS/maximize_unfocused_over.png
Binary files differ
diff --git a/src/themes/eOS/menu.png b/src/themes/eOS/menu.png
new file mode 100644
index 00000000..1e02701c
--- /dev/null
+++ b/src/themes/eOS/menu.png
Binary files differ
diff --git a/src/themes/eOS/menu_prelight.png b/src/themes/eOS/menu_prelight.png
new file mode 100644
index 00000000..c7dbd0a2
--- /dev/null
+++ b/src/themes/eOS/menu_prelight.png
Binary files differ
diff --git a/src/themes/eOS/metacity-theme-1.xml b/src/themes/eOS/metacity-theme-1.xml
new file mode 100644
index 00000000..62463cc9
--- /dev/null
+++ b/src/themes/eOS/metacity-theme-1.xml
@@ -0,0 +1,537 @@
+<?xml version="1.0"?>
+
+<metacity_theme>
+<info>
+ <name>eOS based on radiance</name>
+ <author>original authors: Kenneth Wimer, James Schriver, edited by Uhave2pay4</author>
+ <copyright>Canonical Ltd.</copyright>
+ <date>Mar 19, 2010</date>
+ <description>Metacity theme</description>
+</info>
+
+<!-- General window layout -->
+<frame_geometry name="frame_geometry_normal" title_scale="medium" rounded_top_left="true" rounded_top_right="true" rounded_bottom_left="false" rounded_bottom_right="false">
+ <distance name="left_width" value="1"/>
+ <distance name="right_width" value="1"/>
+ <distance name="bottom_height" value="1"/>
+ <distance name="left_titlebar_edge" value="10"/>
+ <distance name="right_titlebar_edge" value="10"/>
+ <distance name="button_width" value="20"/>
+ <distance name="button_height" value="20"/>
+ <distance name="title_vertical_pad" value="8"/>
+ <border name="title_border" left="2" right="2" top="2" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="2" bottom="1"/>
+</frame_geometry>
+
+<frame_geometry name="geometry_maximized" rounded_top_left="false" rounded_top_right="false" rounded_bottom_left="false" rounded_bottom_right="false">
+ <distance name="left_width" value="0"/>
+ <distance name="right_width" value="0"/>
+ <distance name="bottom_height" value="0"/>
+ <distance name="left_titlebar_edge" value="10"/>
+ <distance name="right_titlebar_edge" value="10"/>
+ <distance name="button_width" value="20"/>
+ <distance name="button_height" value="20"/>
+ <distance name="title_vertical_pad" value="8"/>
+ <border name="title_border" left="2" right="2" top="2" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="2" bottom="1"/>
+</frame_geometry>
+
+<frame_geometry name="border" has_title="false">
+ <distance name="left_width" value="3"/>
+ <distance name="right_width" value="3"/>
+ <distance name="bottom_height" value="3"/>
+ <distance name="left_titlebar_edge" value="0"/>
+ <distance name="right_titlebar_edge" value="0"/>
+ <distance name="button_width" value="0"/>
+ <distance name="button_height" value="0"/>
+ <distance name="title_vertical_pad" value="3"/>
+ <border name="title_border" left="0" right="0" top="0" bottom="0"/>
+ <border name="button_border" left="0" right="0" top="0" bottom="0"/>
+</frame_geometry>
+
+<!-- Window Title -->
+
+<draw_ops name="draw_title_text_normal">
+ <title color="#f7f9fa"
+ x="((3 `max` (width-title_width)) / 2)"
+ y="(((height - title_height) / 2) `max` 0)+1"/>
+ <title color="#f7f9fa"
+ x="((3 `max` (width-title_width)) / 2)"
+ y="(((height - title_height) / 2) `max` 0)-1"/>
+ <title color="#f7f9fa"
+ x="((3 `max` (width-title_width)) / 2)-1"
+ y="(((height - title_height) / 2) `max` 0)"/>
+ <title color="#f7f9fa"
+ x="((3 `max` (width-title_width)) / 2)+1"
+ y="(((height - title_height) / 2) `max` 0)"/>
+ <title color="#3c3c3c"
+ x="((3 `max` (width-title_width)) / 2)"
+ y="(((height - title_height) / 2) `max` 0)"/>
+</draw_ops>
+
+<draw_ops name="draw_title_text_inactive">
+ <title color="#e8e5dd"
+ x="((3 `max` (width-title_width)) / 2)"
+ y="(((height - title_height) / 2) `max` 0)+1"/>
+ <title color="#e8e5dd"
+ x="((3 `max` (width-title_width)) / 2)"
+ y="(((height - title_height) / 2) `max` 0)-1"/>
+ <title color="#e8e5dd"
+ x="((3 `max` (width-title_width)) / 2)-1"
+ y="(((height - title_height) / 2) `max` 0)"/>
+ <title color="#e8e5dd"
+ x="((3 `max` (width-title_width)) / 2)+1"
+ y="(((height - title_height) / 2) `max` 0)"/>
+ <title color="#666"
+ x="((3 `max` (width-title_width)) / 2)"
+ y="(((height - title_height) / 2) `max` 0)"/>
+</draw_ops>
+
+<draw_ops name="draw_title">
+ <!-- Background gradient -->
+ <gradient type="vertical" x="0" y="0" width="width+9" height="height">
+ <color value="#f4f4f4" />
+ <color value="#d6d6d6" />
+ <color value="#d6d6d6" />
+ </gradient>
+
+ <!-- Topmost dark line -->
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="width" y1="0" y2="0"/>
+
+ <!-- Darkening of the left arch -->
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="4" y1="1" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="2" y1="2" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="1" y1="3" y2="3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="1" y1="4" y2="4"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="0" y1="5" y2="40"/>
+
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-5" x2="width" y1="1" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-3" x2="width" y1="2" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-2" x2="width" y1="3" y2="3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-2" x2="width" y1="4" y2="4"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-1" x2="width" y1="5" y2="90"/>
+
+ <!-- Top highlight -->
+ <!-- This uses <tint> (which supports alpha) instead of <line> (which doesn't) -->
+ <tint color="#ffffff" alpha="0.55" x="5" y="1" width="width - 10" height="1"/>
+ <tint color="#ffffff" alpha="0.15" x="5" y="2" width="width - 10" height="1"/>
+
+</draw_ops>
+
+<draw_ops name="draw_title_inactive">
+ <!-- Background gradient -->
+ <gradient type="vertical" x="0" y="0" width="width+9" height="height">
+ <color value="#f4f4f4" />
+ <color value="#d6d6d6" />
+ </gradient>
+
+ <!-- Topmost dark line -->
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="width" y1="0" y2="0"/>
+
+ <!-- Darkening of the left arch -->
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="4" y1="1" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="2" y1="2" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="1" y1="3" y2="3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="1" y1="4" y2="4"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="0" y1="5" y2="40"/>
+
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-5" x2="width" y1="1" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-3" x2="width" y1="2" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-2" x2="width" y1="3" y2="3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-2" x2="width" y1="4" y2="4"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-1" x2="width" y1="5" y2="90"/>
+
+ <!-- Top highlight -->
+ <tint color="#ffffff" alpha="0.55" x="5" y="1" width="width - 10" height="1"/>
+ <tint color="#ffffff" alpha="0.15" x="5" y="2" width="width - 10" height="1"/>
+</draw_ops>
+
+
+<draw_ops name="draw_title_maximized">
+ <!-- Background gradient -->
+ <gradient type="vertical" x="0" y="0" width="width+9" height="height">
+ <color value="#f4f4f4" />
+ <color value="#d6d6d6" />
+ <color value="#d6d6d6" />
+ </gradient>
+
+ <!-- Topmost dark line -->
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="width" y1="0" y2="0"/>
+
+ <!-- Top highlight -->
+ <tint color="#ffffff" alpha="0.55" x="0" y="1" width="width" height="1"/>
+ <tint color="#ffffff" alpha="0.15" x="0" y="2" width="width" height="1"/>
+</draw_ops>
+
+<draw_ops name="draw_title_maximized_inactive">
+ <include name="draw_title_maximized" />
+
+ <!-- Background gradient -->
+ <gradient type="vertical" x="0" y="0" width="width+9" height="height">
+ <color value="#f4f4f4" />
+ <color value="#d6d6d6" />
+ </gradient>
+</draw_ops>
+
+<!-- Window Frames -->
+
+<draw_ops name="draw_frame">
+ <rectangle color="shade/gtk:bg[NORMAL]/0.74" x="0" y="0" width="width" height="height" filled="true"/>
+</draw_ops>
+
+<!--bottom border-->
+<draw_ops name="bottom_edge">
+<line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="width" y1="height-1" y2="height-1"/>
+<!--bottom left rounding-->
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="1" y1="0" y2="0"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="1" y1="1" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="2" y1="2" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="4" y1="3" y2="3"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="0" x2="10" y1="4" y2="4"/>
+<!--bottom right rounding-->
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-2" x2="width-1" y1="0" y2="0"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-2" x2="width-1" y1="1" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-3" x2="width-2" y1="2" y2="2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.74" x1="width-5" x2="width-3" y1="3" y2="3"/>
+</draw_ops>
+
+<draw_ops name="border">
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="1" y1="height - 2" x2="width - 2" y2="height - 2"/>
+ <line color="shade/gtk:bg[NORMAL]/0.88" x1="width - 2" y1="1" x2="width - 2" y2="height - 2"/>
+ <line color="shade/gtk:bg[NORMAL]/1.4" x1="1" y1="1" x2="width - 2" y2="1"/>
+ <line color="shade/gtk:bg[NORMAL]/1.4" x1="1" y1="1" x2="1" y2="height - 2"/>
+
+ <rectangle color="shade/gtk:bg[NORMAL]/0.25" filled="false"
+ x="0" y="0"
+ width="width - 1"
+ height="height - 1"/>
+</draw_ops>
+
+<!-- BUTTONS -->
+
+<!-- Button trough -->
+ <draw_ops name="left_left_background_focused_normal">
+ <image filename="trough_left.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="left_left_background_focused_pressed">
+ <image filename="trough_left.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="left_middle_background_focused_normal">
+ <image filename="trough_middle.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="left_middle_background_focused_pressed">
+ <image filename="trough_middle.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="left_right_background_focused_normal">
+ <image filename="trough_right.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="left_right_background_focused_pressed">
+ <image filename="trough_right.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="left_left_background_unfocused_normal">
+ <image filename="trough_left_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="left_left_background_unfocused_pressed">
+ <image filename="trough_left_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="left_middle_background_unfocused_normal">
+ <image filename="trough_middle_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="left_middle_background_unfocused_pressed">
+ <image filename="trough_middle_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="left_right_background_unfocused_normal">
+ <image filename="trough_right_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="left_right_background_unfocused_pressed">
+ <image filename="trough_right_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+
+
+<!-- Button Trough Right -->
+ <draw_ops name="right_left_background_focused_normal">
+ <image filename="trough_left.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="right_left_background_focused_pressed">
+ <image filename="trough_left.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="right_middle_background_focused_normal">
+ <image filename="trough_middle.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="right_middle_background_focused_pressed">
+ <image filename="trough_middle.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="right_right_background_focused_normal">
+ <image filename="trough_right.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="right_right_background_focused_pressed">
+ <image filename="trough_right.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="right_left_background_unfocused_normal">
+ <image filename="trough_left_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="right_left_background_unfocused_pressed">
+ <image filename="trough_left_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="right_middle_background_unfocused_normal">
+ <image filename="trough_middle_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="right_middle_background_unfocused_pressed">
+ <image filename="trough_middle_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="right_right_background_unfocused_normal">
+ <image filename="trough_right_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="right_right_background_unfocused_pressed">
+ <image filename="trough_right_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+
+<!-- Button Overlays -->
+ <draw_ops name="menu_focused_normal">
+ <image filename="menu.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="menu_focused_prelight">
+ <image filename="menu_prelight.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="menu_unfocused_normal">
+ <image filename="menu.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="menu_unfocused_prelight">
+ <image filename="menu_prelight.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="minimize_focused_normal">
+ <image filename="minimize.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="minimize_focused_prelight">
+ <image filename="minimize.png" x="0" y="1" width="object_width" height="object_height" colorize="shade/gtk:bg[SELECTED]/.7"/>
+ </draw_ops>
+ <draw_ops name="minimize_focused_pressed">
+ <image filename="minimize.png" x="0" y="1" width="object_width" height="object_height" alpha=".2"/>
+ </draw_ops>
+ <draw_ops name="minimize_unfocused_normal">
+ <image filename="minimize_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="minimize_unfocused_prelight">
+ <image filename="minimize_unfocused_over.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="minimize_unfocused_pressed">
+ <image filename="minimize.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="maximize_focused_normal">
+ <image filename="maximize.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="maximize_focused_prelight">
+ <image filename="maximize.png" x="0" y="1" width="object_width" height="object_height" colorize="shade/gtk:bg[SELECTED]/.7"/>
+ </draw_ops>
+ <draw_ops name="maximize_focused_pressed">
+ <image filename="maximize.png" x="0" y="1" width="object_width" height="object_height" alpha=".2"/>
+ </draw_ops>
+ <draw_ops name="maximize_unfocused_normal">
+ <image filename="maximize_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="maximize_unfocused_prelight">
+ <image filename="maximize_unfocused_over.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="maximize_unfocused_pressed">
+ <image filename="maximize.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="unmaximize_focused_normal">
+ <image filename="unmaximize.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="unmaximize_focused_prelight">
+ <image filename="unmaximize.png" x="0" y="1" width="object_width" height="object_height" colorize="shade/gtk:bg[SELECTED]/.7"/>
+ </draw_ops>
+ <draw_ops name="unmaximize_focused_pressed">
+ <image filename="unmaximize.png" x="0" y="1" width="object_width" height="object_height" alpha=".2"/>
+ </draw_ops>
+ <draw_ops name="unmaximize_unfocused_normal">
+ <image filename="unmaximize_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="unmaximize_unfocused_prelight">
+ <image filename="unmaximize_unfocused_over.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="unmaximize_unfocused_pressed">
+ <image filename="unmaximize.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="close_focused_normal">
+ <image filename="close.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="close_focused_prelight">
+ <image filename="close.png" x="0" y="1" width="object_width" height="object_height" alpha=".7"/>
+ </draw_ops>
+ <draw_ops name="close_focused_pressed">
+ <image filename="close.png" x="0" y="1" width="object_width" height="object_height" alpha=".9"/>
+ </draw_ops>
+ <draw_ops name="close_unfocused_normal">
+ <image filename="close_unfocused.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="close_unfocused_prelight">
+ <image filename="close_unfocused_over.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+ <draw_ops name="close_unfocused_pressed">
+ <image filename="close.png" x="0" y="1" width="object_width" height="object_height"/>
+ </draw_ops>
+
+<!-- FRAME STYLE -->
+<frame_style name="normal_focused" geometry="frame_geometry_normal">
+ <piece position="title" draw_ops="draw_title_text_normal"/>
+ <piece position="titlebar" draw_ops="draw_title"/>
+ <piece position="left_edge" draw_ops="draw_frame"/>
+ <piece position="right_edge" draw_ops="draw_frame"/>
+ <piece position="bottom_edge" draw_ops="bottom_edge"/>
+ <button function="left_left_background" state="normal" draw_ops="left_left_background_focused_normal"/>
+ <button function="left_middle_background" state="normal" draw_ops="left_middle_background_focused_normal"/>
+ <button function="left_right_background" state="normal" draw_ops="left_right_background_focused_normal"/>
+ <button function="left_left_background" state="prelight" draw_ops="left_left_background_focused_normal"/>
+ <button function="left_middle_background" state="prelight" draw_ops="left_middle_background_focused_normal"/>
+ <button function="left_right_background" state="prelight" draw_ops="left_right_background_focused_normal"/>
+ <button function="left_left_background" state="pressed" draw_ops="left_left_background_focused_pressed"/>
+ <button function="left_middle_background" state="pressed" draw_ops="left_middle_background_focused_pressed"/>
+ <button function="left_right_background" state="pressed" draw_ops="left_right_background_focused_pressed"/>
+ <button function="right_left_background" state="normal" draw_ops="right_left_background_focused_normal"/>
+ <button function="right_middle_background" state="normal" draw_ops="right_middle_background_focused_normal"/>
+ <button function="right_right_background" state="normal" draw_ops="right_right_background_focused_normal"/>
+ <button function="right_left_background" state="prelight" draw_ops="right_left_background_focused_normal"/>
+ <button function="right_middle_background" state="prelight" draw_ops="right_middle_background_focused_normal"/>
+ <button function="right_right_background" state="prelight" draw_ops="right_right_background_focused_normal"/>
+ <button function="right_left_background" state="pressed" draw_ops="right_left_background_focused_pressed"/>
+ <button function="right_middle_background" state="pressed" draw_ops="right_middle_background_focused_pressed"/>
+ <button function="right_right_background" state="pressed" draw_ops="right_right_background_focused_pressed"/>
+ <button function="menu" state="normal" draw_ops="menu_focused_normal"/>
+ <button function="menu" state="prelight" draw_ops="menu_focused_prelight"/>
+ <button function="menu" state="pressed" draw_ops="menu_focused_normal"/>
+ <button function="minimize" state="normal" draw_ops="minimize_focused_normal"/>
+ <button function="minimize" state="prelight" draw_ops="minimize_focused_prelight"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_focused_pressed"/>
+ <button function="maximize" state="normal" draw_ops="maximize_focused_normal"/>
+ <button function="maximize" state="prelight" draw_ops="maximize_focused_prelight"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_focused_pressed"/>
+ <button function="close" state="normal" draw_ops="close_focused_normal"/>
+ <button function="close" state="prelight" draw_ops="close_focused_prelight"/>
+ <button function="close" state="pressed" draw_ops="close_focused_pressed"/>
+</frame_style>
+
+<frame_style name="normal_unfocused" geometry="frame_geometry_normal">
+ <piece position="title" draw_ops="draw_title_text_inactive"/>
+ <piece position="titlebar" draw_ops="draw_title_inactive"/>
+ <piece position="left_edge" draw_ops="draw_frame"/>
+ <piece position="right_edge" draw_ops="draw_frame"/>
+ <piece position="bottom_edge" draw_ops="bottom_edge"/>
+ <button function="left_left_background" state="normal" draw_ops="left_left_background_unfocused_normal"/>
+ <button function="left_middle_background" state="normal" draw_ops="left_middle_background_unfocused_normal"/>
+ <button function="left_right_background" state="normal" draw_ops="left_right_background_unfocused_normal"/>
+ <button function="left_left_background" state="prelight" draw_ops="left_left_background_unfocused_normal"/>
+ <button function="left_middle_background" state="prelight" draw_ops="left_middle_background_unfocused_normal"/>
+ <button function="left_right_background" state="prelight" draw_ops="left_right_background_unfocused_normal"/>
+ <button function="left_left_background" state="pressed" draw_ops="left_left_background_unfocused_pressed"/>
+ <button function="left_middle_background" state="pressed" draw_ops="left_middle_background_unfocused_pressed"/>
+ <button function="left_right_background" state="pressed" draw_ops="left_right_background_unfocused_pressed"/>
+ <button function="right_left_background" state="normal" draw_ops="right_left_background_unfocused_normal"/>
+ <button function="right_middle_background" state="normal" draw_ops="right_middle_background_unfocused_normal"/>
+ <button function="right_right_background" state="normal" draw_ops="right_right_background_unfocused_normal"/>
+ <button function="right_left_background" state="prelight" draw_ops="right_left_background_unfocused_normal"/>
+ <button function="right_middle_background" state="prelight" draw_ops="right_middle_background_unfocused_normal"/>
+ <button function="right_right_background" state="prelight" draw_ops="right_right_background_unfocused_normal"/>
+ <button function="right_left_background" state="pressed" draw_ops="right_left_background_unfocused_pressed"/>
+ <button function="right_middle_background" state="pressed" draw_ops="right_middle_background_unfocused_pressed"/>
+ <button function="right_right_background" state="pressed" draw_ops="right_right_background_unfocused_pressed"/>
+ <button function="menu" state="normal" draw_ops="menu_unfocused_normal"/>
+ <button function="menu" state="prelight" draw_ops="menu_unfocused_prelight"/>
+ <button function="menu" state="pressed" draw_ops="menu_focused_normal"/>
+ <button function="minimize" state="normal" draw_ops="minimize_unfocused_normal"/>
+ <button function="minimize" state="prelight" draw_ops="minimize_unfocused_prelight"/>
+ <button function="minimize" state="pressed" draw_ops="minimize_unfocused_pressed"/>
+ <button function="maximize" state="normal" draw_ops="maximize_unfocused_normal"/>
+ <button function="maximize" state="prelight" draw_ops="maximize_unfocused_prelight"/>
+ <button function="maximize" state="pressed" draw_ops="maximize_unfocused_pressed"/>
+ <button function="close" state="normal" draw_ops="close_unfocused_normal"/>
+ <button function="close" state="prelight" draw_ops="close_unfocused_prelight"/>
+ <button function="close" state="pressed" draw_ops="close_unfocused_pressed"/>
+</frame_style>
+
+<frame_style name="maximized_focused" geometry="geometry_maximized" parent="normal_focused">
+ <piece position="title" draw_ops="draw_title_text_normal"/>
+ <piece position="titlebar" draw_ops="draw_title_maximized"/>
+ <button function="maximize" state="normal" draw_ops="unmaximize_focused_normal"/>
+ <button function="maximize" state="prelight" draw_ops="unmaximize_focused_prelight"/>
+ <button function="maximize" state="pressed" draw_ops="unmaximize_focused_pressed"/>
+</frame_style>
+
+<frame_style name="maximized_unfocused" geometry="geometry_maximized" parent="normal_unfocused">
+ <piece position="title" draw_ops="draw_title_text_inactive"/>
+ <piece position="titlebar" draw_ops="draw_title_maximized_inactive"/>
+ <button function="maximize" state="normal" draw_ops="unmaximize_unfocused_normal"/>
+ <button function="maximize" state="prelight" draw_ops="unmaximize_unfocused_prelight"/>
+ <button function="maximize" state="pressed" draw_ops="unmaximize_unfocused_pressed"/>
+</frame_style>
+
+<frame_style name="utility_focused" parent="normal_focused">
+ <piece position="title" draw_ops="draw_title_text_normal"/>
+ <piece position="titlebar" draw_ops="draw_title"/>
+ <button function="menu" state="normal" draw_ops="menu_focused_normal"/>
+ <button function="menu" state="prelight" draw_ops="menu_focused_prelight"/>
+ <button function="menu" state="pressed" draw_ops="menu_focused_normal"/>
+ <button function="close" state="normal" draw_ops="close_focused_normal"/>
+ <button function="close" state="prelight" draw_ops="close_focused_prelight"/>
+ <button function="close" state="pressed" draw_ops="close_focused_pressed"/>
+</frame_style>
+
+<frame_style name="utility_unfocused" parent="normal_unfocused">
+ <piece position="title" draw_ops="draw_title_text_inactive"/>
+ <piece position="titlebar" draw_ops="draw_title_inactive"/>
+ <button function="menu" state="normal" draw_ops="menu_unfocused_normal"/>
+ <button function="menu" state="prelight" draw_ops="menu_unfocused_prelight"/>
+ <button function="menu" state="pressed" draw_ops="menu_focused_normal"/>
+ <button function="close" state="normal" draw_ops="close_unfocused_normal"/>
+ <button function="close" state="prelight" draw_ops="close_unfocused_prelight"/>
+ <button function="close" state="pressed" draw_ops="close_unfocused_pressed"/>
+</frame_style>
+
+<frame_style name="border" geometry="border" parent="normal_focused">
+ <piece position="title" draw_ops="draw_title"/>
+ <piece position="titlebar" draw_ops="draw_title_inactive"/>
+</frame_style>
+
+<!-- STYLE SET -->
+<frame_style_set name="normal">
+ <frame focus="yes" state="normal" resize="both" style="normal_focused"/>
+ <frame focus="no" state="normal" resize="both" style="normal_unfocused"/>
+ <frame focus="yes" state="maximized" style="maximized_focused"/>
+ <frame focus="no" state="maximized" style="maximized_unfocused"/>
+ <frame focus="yes" state="shaded" style="normal_focused"/><!-- todo -->
+ <frame focus="no" state="shaded" style="normal_unfocused"/><!-- todo -->
+ <frame focus="yes" state="maximized_and_shaded" style="maximized_focused"/><!-- todo -->
+ <frame focus="no" state="maximized_and_shaded" style="maximized_unfocused"/><!-- todo -->
+</frame_style_set>
+
+<frame_style_set name="utility">
+ <frame focus="yes" state="normal" resize="both" style="utility_focused"/>
+ <frame focus="no" state="normal" resize="both" style="utility_unfocused"/>
+ <frame focus="yes" state="maximized" style="maximized_focused"/>
+ <frame focus="no" state="maximized" style="normal_focused"/>
+ <frame focus="yes" state="shaded" style="normal_focused"/><!-- todo -->
+ <frame focus="no" state="shaded" style="normal_unfocused"/><!-- todo -->
+ <frame focus="yes" state="maximized_and_shaded" style="maximized_focused"/><!-- todo -->
+ <frame focus="no" state="maximized_and_shaded" style="maximized_unfocused"/><!-- todo -->
+</frame_style_set>
+
+<frame_style_set name="border">
+ <frame focus="yes" state="normal" resize="both" style="border"/>
+ <frame focus="no" state="normal" resize="both" style="border"/>
+ <frame focus="yes" state="maximized" style="maximized_focused"/>
+ <frame focus="no" state="maximized" style="normal_focused"/>
+ <frame focus="yes" state="shaded" style="normal_focused"/><!-- todo -->
+ <frame focus="no" state="shaded" style="normal_unfocused"/><!-- todo -->
+ <frame focus="yes" state="maximized_and_shaded" style="maximized_focused"/><!-- todo -->
+ <frame focus="no" state="maximized_and_shaded" style="maximized_unfocused"/><!-- todo -->
+</frame_style_set>
+
+<!-- WINDOW -->
+<window type="normal" style_set="normal"/>
+<window type="dialog" style_set="utility"/>
+<window type="modal_dialog" style_set="utility"/>
+<window type="menu" style_set="utility"/>
+<window type="utility" style_set="utility"/>
+<window type="border" style_set="border"/>
+
+</metacity_theme>
diff --git a/src/themes/eOS/minimize.png b/src/themes/eOS/minimize.png
new file mode 100644
index 00000000..5083d1e2
--- /dev/null
+++ b/src/themes/eOS/minimize.png
Binary files differ
diff --git a/src/themes/eOS/minimize_unfocused.png b/src/themes/eOS/minimize_unfocused.png
new file mode 100644
index 00000000..9bd4d273
--- /dev/null
+++ b/src/themes/eOS/minimize_unfocused.png
Binary files differ
diff --git a/src/themes/eOS/minimize_unfocused_over.png b/src/themes/eOS/minimize_unfocused_over.png
new file mode 100644
index 00000000..5083d1e2
--- /dev/null
+++ b/src/themes/eOS/minimize_unfocused_over.png
Binary files differ
diff --git a/src/themes/eOS/trough_left.png b/src/themes/eOS/trough_left.png
new file mode 100644
index 00000000..070d3da0
--- /dev/null
+++ b/src/themes/eOS/trough_left.png
Binary files differ
diff --git a/src/themes/eOS/trough_left_unfocused.png b/src/themes/eOS/trough_left_unfocused.png
new file mode 100644
index 00000000..51ed9ab1
--- /dev/null
+++ b/src/themes/eOS/trough_left_unfocused.png
Binary files differ
diff --git a/src/themes/eOS/trough_middle.png b/src/themes/eOS/trough_middle.png
new file mode 100644
index 00000000..28238835
--- /dev/null
+++ b/src/themes/eOS/trough_middle.png
Binary files differ
diff --git a/src/themes/eOS/trough_middle_unfocused.png b/src/themes/eOS/trough_middle_unfocused.png
new file mode 100644
index 00000000..961e4f48
--- /dev/null
+++ b/src/themes/eOS/trough_middle_unfocused.png
Binary files differ
diff --git a/src/themes/eOS/trough_right.png b/src/themes/eOS/trough_right.png
new file mode 100644
index 00000000..84bfad11
--- /dev/null
+++ b/src/themes/eOS/trough_right.png
Binary files differ
diff --git a/src/themes/eOS/trough_right_unfocused.png b/src/themes/eOS/trough_right_unfocused.png
new file mode 100644
index 00000000..acab4faf
--- /dev/null
+++ b/src/themes/eOS/trough_right_unfocused.png
Binary files differ
diff --git a/src/themes/eOS/unmaximize.png b/src/themes/eOS/unmaximize.png
new file mode 100644
index 00000000..785aa133
--- /dev/null
+++ b/src/themes/eOS/unmaximize.png
Binary files differ
diff --git a/src/themes/eOS/unmaximize_unfocused.png b/src/themes/eOS/unmaximize_unfocused.png
new file mode 100644
index 00000000..d7c35fc1
--- /dev/null
+++ b/src/themes/eOS/unmaximize_unfocused.png
Binary files differ
diff --git a/src/themes/eOS/unmaximize_unfocused_over.png b/src/themes/eOS/unmaximize_unfocused_over.png
new file mode 100644
index 00000000..785aa133
--- /dev/null
+++ b/src/themes/eOS/unmaximize_unfocused_over.png
Binary files differ
diff --git a/src/tools/Makefile.am b/src/tools/Makefile.am
new file mode 100644
index 00000000..031ef961
--- /dev/null
+++ b/src/tools/Makefile.am
@@ -0,0 +1,33 @@
+@INTLTOOL_DESKTOP_RULE@
+
+icondir=$(pkgdatadir)/icons
+icon_DATA=marco-window-demo.png
+
+INCLUDES=@MARCO_WINDOW_DEMO_CFLAGS@ @MARCO_MESSAGE_CFLAGS@ \
+ -DMARCO_ICON_DIR=\"$(pkgdatadir)/icons\" \
+ -DMARCO_LOCALEDIR=\"$(prefix)/@DATADIRNAME@/locale\"
+
+marco_message_SOURCES= \
+ marco-message.c
+
+marco_window_demo_SOURCES= \
+ marco-window-demo.c
+
+marco_mag_SOURCES= \
+ marco-mag.c
+
+marco_grayscale_SOURCES= \
+ marco-grayscale.c
+
+bin_PROGRAMS=marco-message marco-window-demo
+
+## cheesy hacks I use, don't really have any business existing. ;-)
+noinst_PROGRAMS=marco-mag marco-grayscale
+
+marco_message_LDADD= @MARCO_MESSAGE_LIBS@
+marco_window_demo_LDADD= @MARCO_WINDOW_DEMO_LIBS@
+marco_mag_LDADD= @MARCO_WINDOW_DEMO_LIBS@ -lm
+marco_grayscale_LDADD = @MARCO_WINDOW_DEMO_LIBS@
+
+EXTRA_DIST=$(icon_DATA)
+
diff --git a/src/tools/marco-grayscale.c b/src/tools/marco-grayscale.c
new file mode 100644
index 00000000..8d0cd68c
--- /dev/null
+++ b/src/tools/marco-grayscale.c
@@ -0,0 +1,109 @@
+/* Hack for grayscaling an image */
+
+/*
+ * Copyright (C) 2002 Red Hat Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <math.h>
+
+#define INTENSITY(r, g, b) ((r) * 0.30 + (g) * 0.59 + (b) * 0.11)
+
+static GdkPixbuf*
+grayscale_pixbuf (GdkPixbuf *pixbuf)
+{
+ GdkPixbuf *gray;
+ guchar *pixels;
+ int rowstride;
+ int pixstride;
+ int row;
+ int n_rows;
+ int width;
+
+ gray = gdk_pixbuf_copy (pixbuf);
+ rowstride = gdk_pixbuf_get_rowstride (gray);
+ pixstride = gdk_pixbuf_get_has_alpha (gray) ? 4 : 3;
+
+ pixels = gdk_pixbuf_get_pixels (gray);
+ n_rows = gdk_pixbuf_get_height (gray);
+ width = gdk_pixbuf_get_width (gray);
+
+ row = 0;
+ while (row < n_rows)
+ {
+ guchar *p = pixels + row * rowstride;
+ guchar *end = p + (pixstride * width);
+
+ while (p != end)
+ {
+ double v = INTENSITY (p[0], p[1], p[2]);
+
+ p[0] = (guchar) v;
+ p[1] = (guchar) v;
+ p[2] = (guchar) v;
+
+ p += pixstride;
+ }
+
+ ++row;
+ }
+
+ return gray;
+}
+
+int
+main (int argc, char **argv)
+{
+ GdkPixbuf *pixbuf;
+ GdkPixbuf *gray;
+ GError *err;
+
+ if (argc != 2)
+ {
+ g_printerr ("specify a single image on the command line\n");
+ return 1;
+ }
+
+ g_type_init ();
+
+ err = NULL;
+ pixbuf = gdk_pixbuf_new_from_file (argv[1], &err);
+ if (err != NULL)
+ {
+ g_printerr ("failed to load image: %s\n", err->message);
+ g_error_free (err);
+ return 1;
+ }
+
+ gray = grayscale_pixbuf (pixbuf);
+
+ err = NULL;
+ gdk_pixbuf_save (gray, "grayscale.png", "png", &err, NULL);
+ if (err != NULL)
+ {
+ g_printerr ("failed to save image: %s\n", err->message);
+ g_error_free (err);
+ return 1;
+ }
+
+ g_print ("wrote grayscale.png\n");
+
+ return 0;
+}
diff --git a/src/tools/marco-mag.c b/src/tools/marco-mag.c
new file mode 100644
index 00000000..22c7cc3d
--- /dev/null
+++ b/src/tools/marco-mag.c
@@ -0,0 +1,278 @@
+/* Hack for use instead of xmag */
+
+/*
+ * Copyright (C) 2002 Red Hat Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#define _GNU_SOURCE
+#define _XOPEN_SOURCE 600 /* C99 -- for rint() */
+
+#include <gtk/gtk.h>
+#include <gdk/gdkx.h>
+#include <gdk/gdkkeysyms.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <math.h>
+
+static GtkWidget *grab_widget = NULL;
+static GtkWidget *display_window = NULL;
+static int last_grab_x = 0;
+static int last_grab_y = 0;
+static int last_grab_width = 150;
+static int last_grab_height = 150;
+static GtkAllocation last_grab_allocation;
+static double width_factor = 4.0;
+static double height_factor = 4.0;
+static GdkInterpType interp_mode = GDK_INTERP_NEAREST;
+static guint regrab_idle_id = 0;
+
+static GdkPixbuf*
+get_pixbuf (void)
+{
+ GdkPixbuf *screenshot;
+ GdkPixbuf *magnified;
+
+#if 0
+ g_print ("Size %d x %d\n",
+ last_grab_width, last_grab_height);
+#endif
+
+ screenshot = gdk_pixbuf_get_from_drawable (NULL, gdk_get_default_root_window (),
+ NULL,
+ last_grab_x, last_grab_y, 0, 0,
+ last_grab_width, last_grab_height);
+
+ if (screenshot == NULL)
+ {
+ g_printerr ("Screenshot failed\n");
+ exit (1);
+ }
+
+ magnified = gdk_pixbuf_scale_simple (screenshot, last_grab_width * width_factor,
+ last_grab_height * height_factor,
+ interp_mode);
+
+
+ g_object_unref (G_OBJECT (screenshot));
+
+ return magnified;
+}
+
+static gboolean
+regrab_idle (GtkWidget *image)
+{
+ GdkPixbuf *magnified;
+ GtkAllocation allocation;
+
+ gtk_widget_get_allocation (image, &allocation);
+
+ if (allocation.width != last_grab_allocation.width ||
+ allocation.height != last_grab_allocation.height)
+ {
+ last_grab_width = rint (allocation.width / width_factor);
+ last_grab_height = rint (allocation.height / height_factor);
+ last_grab_allocation = allocation;
+
+ magnified = get_pixbuf ();
+
+ gtk_image_set_from_pixbuf (GTK_IMAGE (image), magnified);
+
+ g_object_unref (G_OBJECT (magnified));
+ }
+
+ regrab_idle_id = 0;
+
+ return FALSE;
+}
+
+static void
+image_resized (GtkWidget *image)
+{
+ if (regrab_idle_id == 0)
+ regrab_idle_id = g_idle_add_full (G_PRIORITY_LOW + 100, (GSourceFunc) regrab_idle,
+ image, NULL);
+}
+
+static void
+grab_area_at_mouse (GtkWidget *invisible,
+ int x_root,
+ int y_root)
+{
+ GdkPixbuf *magnified;
+ int width, height;
+ GtkWidget *widget;
+
+ width = last_grab_width;
+ height = last_grab_height;
+
+ last_grab_x = x_root;
+ last_grab_y = y_root;
+ last_grab_width = width;
+ last_grab_height = height;
+
+ magnified = get_pixbuf ();
+
+ display_window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_default_size (GTK_WINDOW (display_window),
+ last_grab_width, last_grab_height);
+ widget = gtk_image_new_from_pixbuf (magnified);
+ gtk_widget_set_size_request (widget, 40, 40);
+ gtk_container_add (GTK_CONTAINER (display_window), widget);
+ g_object_unref (G_OBJECT (magnified));
+
+ g_object_add_weak_pointer (G_OBJECT (display_window),
+ (gpointer) &display_window);
+
+ g_signal_connect (G_OBJECT (display_window), "destroy",
+ G_CALLBACK (gtk_main_quit), NULL);
+
+ g_signal_connect_after (G_OBJECT (widget), "size_allocate", G_CALLBACK (image_resized), NULL);
+
+ gtk_widget_show_all (display_window);
+}
+
+static void
+shutdown_grab (void)
+{
+ gdk_keyboard_ungrab (gtk_get_current_event_time ());
+ gdk_pointer_ungrab (gtk_get_current_event_time ());
+ gtk_grab_remove (grab_widget);
+}
+
+static void
+mouse_motion (GtkWidget *invisible,
+ GdkEventMotion *event,
+ gpointer data)
+{
+
+}
+
+static gboolean
+mouse_release (GtkWidget *invisible,
+ GdkEventButton *event,
+ gpointer data)
+{
+ if (event->button != 1)
+ return FALSE;
+
+ grab_area_at_mouse (invisible, event->x_root, event->y_root);
+
+ shutdown_grab ();
+
+ g_signal_handlers_disconnect_by_func (invisible, mouse_motion, NULL);
+ g_signal_handlers_disconnect_by_func (invisible, mouse_release, NULL);
+
+ return TRUE;
+}
+
+/* Helper Functions */
+
+static gboolean mouse_press (GtkWidget *invisible,
+ GdkEventButton *event,
+ gpointer data);
+
+static gboolean
+key_press (GtkWidget *invisible,
+ GdkEventKey *event,
+ gpointer data)
+{
+ if (event->keyval == GDK_Escape)
+ {
+ shutdown_grab ();
+
+ g_signal_handlers_disconnect_by_func (invisible, mouse_press, NULL);
+ g_signal_handlers_disconnect_by_func (invisible, key_press, NULL);
+
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+static gboolean
+mouse_press (GtkWidget *invisible,
+ GdkEventButton *event,
+ gpointer data)
+{
+ if (event->type == GDK_BUTTON_PRESS &&
+ event->button == 1)
+ {
+ g_signal_connect (invisible, "motion_notify_event",
+ G_CALLBACK (mouse_motion), NULL);
+ g_signal_connect (invisible, "button_release_event",
+ G_CALLBACK (mouse_release), NULL);
+ g_signal_handlers_disconnect_by_func (invisible, mouse_press, NULL);
+ g_signal_handlers_disconnect_by_func (invisible, key_press, NULL);
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+static void
+begin_area_grab (void)
+{
+ if (grab_widget == NULL)
+ {
+ grab_widget = gtk_invisible_new ();
+
+ gtk_widget_add_events (grab_widget,
+ GDK_BUTTON_RELEASE_MASK | GDK_BUTTON_PRESS_MASK | GDK_POINTER_MOTION_MASK);
+
+ gtk_widget_show (grab_widget);
+ }
+
+ if (gdk_keyboard_grab (gtk_widget_get_window (grab_widget),
+ FALSE,
+ gtk_get_current_event_time ()) != GDK_GRAB_SUCCESS)
+ {
+ g_warning ("Failed to grab keyboard to do eyedropper");
+ return;
+ }
+
+ if (gdk_pointer_grab (gtk_widget_get_window (grab_widget),
+ FALSE,
+ GDK_BUTTON_RELEASE_MASK | GDK_BUTTON_PRESS_MASK | GDK_POINTER_MOTION_MASK,
+ NULL,
+ NULL,
+ gtk_get_current_event_time ()) != GDK_GRAB_SUCCESS)
+ {
+ gdk_keyboard_ungrab (GDK_CURRENT_TIME);
+ g_warning ("Failed to grab pointer to do eyedropper");
+ return;
+ }
+
+ gtk_grab_add (grab_widget);
+
+ g_signal_connect (grab_widget, "button_press_event",
+ G_CALLBACK (mouse_press), NULL);
+ g_signal_connect (grab_widget, "key_press_event",
+ G_CALLBACK (key_press), NULL);
+}
+
+int
+main (int argc, char **argv)
+{
+ gtk_init (&argc, &argv);
+
+ begin_area_grab ();
+
+ gtk_main ();
+
+ return 0;
+}
diff --git a/src/tools/marco-message.c b/src/tools/marco-message.c
new file mode 100644
index 00000000..78bebeb2
--- /dev/null
+++ b/src/tools/marco-message.c
@@ -0,0 +1,187 @@
+/* Marco send-magic-messages app */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include <gtk/gtk.h>
+#include <gdk/gdkx.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <libintl.h>
+#define _(x) dgettext (GETTEXT_PACKAGE, x)
+#define N_(x) x
+
+
+static void
+send_restart (void)
+{
+ XEvent xev;
+
+ xev.xclient.type = ClientMessage;
+ xev.xclient.serial = 0;
+ xev.xclient.send_event = True;
+ xev.xclient.display = GDK_DISPLAY_XDISPLAY (gdk_display_get_default ());
+ xev.xclient.window = gdk_x11_get_default_root_xwindow ();
+ xev.xclient.message_type = XInternAtom (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ "_MARCO_RESTART_MESSAGE",
+ False);
+ xev.xclient.format = 32;
+ xev.xclient.data.l[0] = 0;
+ xev.xclient.data.l[1] = 0;
+ xev.xclient.data.l[2] = 0;
+
+ XSendEvent (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ gdk_x11_get_default_root_xwindow (),
+ False,
+ SubstructureRedirectMask | SubstructureNotifyMask,
+ &xev);
+
+ XFlush (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+ XSync (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), False);
+}
+
+static void
+send_reload_theme (void)
+{
+ XEvent xev;
+
+ xev.xclient.type = ClientMessage;
+ xev.xclient.serial = 0;
+ xev.xclient.send_event = True;
+ xev.xclient.display = GDK_DISPLAY_XDISPLAY (gdk_display_get_default ());
+ xev.xclient.window = gdk_x11_get_default_root_xwindow ();
+ xev.xclient.message_type = XInternAtom (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ "_MARCO_RELOAD_THEME_MESSAGE",
+ False);
+ xev.xclient.format = 32;
+ xev.xclient.data.l[0] = 0;
+ xev.xclient.data.l[1] = 0;
+ xev.xclient.data.l[2] = 0;
+
+ XSendEvent (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ gdk_x11_get_default_root_xwindow (),
+ False,
+ SubstructureRedirectMask | SubstructureNotifyMask,
+ &xev);
+
+ XFlush (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+ XSync (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), False);
+}
+
+static void
+send_set_keybindings (gboolean enabled)
+{
+ XEvent xev;
+
+ xev.xclient.type = ClientMessage;
+ xev.xclient.serial = 0;
+ xev.xclient.send_event = True;
+ xev.xclient.display = GDK_DISPLAY_XDISPLAY (gdk_display_get_default ());
+ xev.xclient.window = gdk_x11_get_default_root_xwindow ();
+ xev.xclient.message_type = XInternAtom (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ "_MARCO_SET_KEYBINDINGS_MESSAGE",
+ False);
+ xev.xclient.format = 32;
+ xev.xclient.data.l[0] = enabled;
+ xev.xclient.data.l[1] = 0;
+ xev.xclient.data.l[2] = 0;
+
+ XSendEvent (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ gdk_x11_get_default_root_xwindow (),
+ False,
+ SubstructureRedirectMask | SubstructureNotifyMask,
+ &xev);
+
+ XFlush (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+ XSync (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), False);
+}
+
+#ifdef WITH_VERBOSE_MODE
+static void
+send_toggle_verbose (void)
+{
+ XEvent xev;
+
+ xev.xclient.type = ClientMessage;
+ xev.xclient.serial = 0;
+ xev.xclient.send_event = True;
+ xev.xclient.display = GDK_DISPLAY_XDISPLAY (gdk_display_get_default ());
+ xev.xclient.window = gdk_x11_get_default_root_xwindow ();
+ xev.xclient.message_type = XInternAtom (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ "_MARCO_TOGGLE_VERBOSE",
+ False);
+ xev.xclient.format = 32;
+ xev.xclient.data.l[0] = 0;
+ xev.xclient.data.l[1] = 0;
+ xev.xclient.data.l[2] = 0;
+
+ XSendEvent (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ gdk_x11_get_default_root_xwindow (),
+ False,
+ SubstructureRedirectMask | SubstructureNotifyMask,
+ &xev);
+
+ XFlush (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+ XSync (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), False);
+}
+#endif
+
+static void
+usage (void)
+{
+ g_printerr (_("Usage: %s\n"),
+ "marco-message (restart|reload-theme|enable-keybindings|disable-keybindings|toggle-verbose)");
+ exit (1);
+}
+
+int
+main (int argc, char **argv)
+{
+ bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
+
+ gtk_init (&argc, &argv);
+
+ if (argc < 2)
+ usage ();
+
+ if (strcmp (argv[1], "restart") == 0)
+ send_restart ();
+ else if (strcmp (argv[1], "reload-theme") == 0)
+ send_reload_theme ();
+ else if (strcmp (argv[1], "enable-keybindings") == 0)
+ send_set_keybindings (TRUE);
+ else if (strcmp (argv[1], "disable-keybindings") == 0)
+ send_set_keybindings (FALSE);
+ else if (strcmp (argv[1], "toggle-verbose") == 0)
+ {
+#ifndef WITH_VERBOSE_MODE
+ g_printerr (_("Marco was compiled without support for verbose mode\n"));
+ return 1;
+#else
+ send_toggle_verbose ();
+#endif
+ }
+ else
+ usage ();
+
+ return 0;
+}
+
diff --git a/src/tools/marco-window-demo.c b/src/tools/marco-window-demo.c
new file mode 100644
index 00000000..876a2585
--- /dev/null
+++ b/src/tools/marco-window-demo.c
@@ -0,0 +1,1016 @@
+/* Marco window types/properties demo app */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <gdk/gdkx.h>
+#include <X11/Xatom.h>
+#include <unistd.h>
+
+static GtkWidget* do_appwindow (void);
+
+static gboolean aspect_on;
+
+static void
+set_gdk_window_struts (GdkWindow *window,
+ int left,
+ int right,
+ int top,
+ int bottom)
+{
+ long vals[12];
+
+ vals[0] = left;
+ vals[1] = right;
+ vals[2] = top;
+ vals[3] = bottom;
+ vals[4] = 000;
+ vals[5] = 400;
+ vals[6] = 200;
+ vals[7] = 600;
+ vals[8] = 76;
+ vals[9] = 676;
+ vals[10] = 200;
+ vals[11] = 800;
+
+ XChangeProperty (GDK_WINDOW_XDISPLAY (window),
+ GDK_WINDOW_XWINDOW (window),
+ XInternAtom (GDK_WINDOW_XDISPLAY (window),
+ "_NET_WM_STRUT_PARTIAL", False),
+ XA_CARDINAL, 32, PropModeReplace,
+ (guchar *)vals, 12);
+}
+
+static void
+on_realize_set_struts (GtkWindow *window,
+ gpointer data)
+{
+ int left;
+ int right;
+ int top;
+ int bottom;
+
+ g_return_if_fail (gtk_widget_get_realized (GTK_WIDGET (window)));
+
+ left = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (window), "meta-strut-left"));
+ right = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (window), "meta-strut-right"));
+ top = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (window), "meta-strut-top"));
+ bottom = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (window), "meta-strut-bottom"));
+
+ set_gdk_window_struts (gtk_widget_get_window (GTK_WIDGET (window)),
+ left, right, top, bottom);
+}
+
+static void
+set_gtk_window_struts (GtkWidget *window,
+ int left,
+ int right,
+ int top,
+ int bottom)
+{
+ g_object_set_data (G_OBJECT (window), "meta-strut-left",
+ GINT_TO_POINTER (left));
+ g_object_set_data (G_OBJECT (window), "meta-strut-right",
+ GINT_TO_POINTER (right));
+ g_object_set_data (G_OBJECT (window), "meta-strut-top",
+ GINT_TO_POINTER (top));
+ g_object_set_data (G_OBJECT (window), "meta-strut-bottom",
+ GINT_TO_POINTER (bottom));
+
+ g_signal_handlers_disconnect_by_func (G_OBJECT (window),
+ on_realize_set_struts,
+ NULL);
+
+ g_signal_connect_after (G_OBJECT (window),
+ "realize",
+ G_CALLBACK (on_realize_set_struts),
+ NULL);
+
+ if (gtk_widget_get_realized (GTK_WIDGET (window)))
+ set_gdk_window_struts (gtk_widget_get_window (GTK_WIDGET (window)),
+ left, right, top, bottom);
+}
+
+static void
+set_gdk_window_type (GdkWindow *window,
+ const char *type)
+{
+ Atom atoms[2] = { None, None };
+
+ atoms[0] = XInternAtom (GDK_WINDOW_XDISPLAY (window),
+ type, False);
+
+ XChangeProperty (GDK_WINDOW_XDISPLAY (window),
+ GDK_WINDOW_XWINDOW (window),
+ XInternAtom (GDK_WINDOW_XDISPLAY (window), "_NET_WM_WINDOW_TYPE", False),
+ XA_ATOM, 32, PropModeReplace,
+ (guchar *)atoms,
+ 1);
+}
+
+static void
+on_realize_set_type (GtkWindow *window,
+ gpointer data)
+{
+ const char *type;
+
+ g_return_if_fail (gtk_widget_get_realized (GTK_WIDGET (window)));
+
+ type = g_object_get_data (G_OBJECT (window), "meta-window-type");
+
+ g_return_if_fail (type != NULL);
+
+ set_gdk_window_type (gtk_widget_get_window (GTK_WIDGET (window)),
+ type);
+}
+
+static void
+set_gtk_window_type (GtkWindow *window,
+ const char *type)
+{
+ g_object_set_data (G_OBJECT (window), "meta-window-type", (char*) type);
+
+ g_signal_handlers_disconnect_by_func (G_OBJECT (window),
+ on_realize_set_type,
+ NULL);
+
+ g_signal_connect_after (G_OBJECT (window),
+ "realize",
+ G_CALLBACK (on_realize_set_type),
+ NULL);
+
+ if (gtk_widget_get_realized (GTK_WIDGET (window)))
+ set_gdk_window_type (gtk_widget_get_window (GTK_WIDGET (window)),
+ type);
+}
+
+static void
+set_gdk_window_border_only (GdkWindow *window)
+{
+ gdk_window_set_decorations (window, GDK_DECOR_BORDER);
+}
+
+static void
+on_realize_set_border_only (GtkWindow *window,
+ gpointer data)
+{
+ g_return_if_fail (gtk_widget_get_realized (GTK_WIDGET (window)));
+
+ set_gdk_window_border_only (gtk_widget_get_window (GTK_WIDGET (window)));
+}
+
+static void
+set_gtk_window_border_only (GtkWindow *window)
+{
+ g_signal_handlers_disconnect_by_func (G_OBJECT (window),
+ on_realize_set_border_only,
+ NULL);
+
+ g_signal_connect_after (G_OBJECT (window),
+ "realize",
+ G_CALLBACK (on_realize_set_border_only),
+ NULL);
+
+ if (gtk_widget_get_realized (GTK_WIDGET (window)))
+ set_gdk_window_border_only (gtk_widget_get_window (GTK_WIDGET (window)));
+}
+
+int
+main (int argc, char **argv)
+{
+ GList *list;
+ GdkPixbuf *pixbuf;
+ GError *err;
+
+ gtk_init (&argc, &argv);
+
+ err = NULL;
+ pixbuf = gdk_pixbuf_new_from_file (MARCO_ICON_DIR"/marco-window-demo.png",
+ &err);
+ if (pixbuf)
+ {
+ list = g_list_prepend (NULL, pixbuf);
+
+ gtk_window_set_default_icon_list (list);
+ g_list_free (list);
+ g_object_unref (G_OBJECT (pixbuf));
+ }
+ else
+ {
+ g_printerr ("Could not load icon: %s\n", err->message);
+ g_error_free (err);
+ }
+
+ do_appwindow ();
+
+ gtk_main ();
+
+ return 0;
+}
+
+static void
+response_cb (GtkDialog *dialog,
+ int response_id,
+ void *data);
+
+static void
+make_dialog (GtkWidget *parent,
+ int depth)
+{
+ GtkWidget *dialog;
+ char *str;
+
+ dialog = gtk_message_dialog_new (parent ? GTK_WINDOW (parent) : NULL,
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_INFO,
+ GTK_BUTTONS_CLOSE,
+ parent ? "Here is a dialog %d" :
+ "Here is a dialog %d with no transient parent",
+ depth);
+
+ str = g_strdup_printf ("%d dialog", depth);
+ gtk_window_set_title (GTK_WINDOW (dialog), str);
+ g_free (str);
+
+ gtk_dialog_add_button (GTK_DIALOG (dialog),
+ "Open child dialog",
+ GTK_RESPONSE_ACCEPT);
+
+ /* Close dialog on user response */
+ g_signal_connect (G_OBJECT (dialog),
+ "response",
+ G_CALLBACK (response_cb),
+ NULL);
+
+ g_object_set_data (G_OBJECT (dialog), "depth",
+ GINT_TO_POINTER (depth));
+
+ gtk_widget_show (dialog);
+}
+
+static void
+response_cb (GtkDialog *dialog,
+ int response_id,
+ void *data)
+{
+ switch (response_id)
+ {
+ case GTK_RESPONSE_ACCEPT:
+ make_dialog (GTK_WIDGET (dialog),
+ GPOINTER_TO_INT (g_object_get_data (G_OBJECT (dialog),
+ "depth")) + 1);
+ break;
+
+ default:
+ gtk_widget_destroy (GTK_WIDGET (dialog));
+ break;
+ }
+}
+
+static void
+dialog_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ make_dialog (GTK_WIDGET (callback_data), 1);
+}
+
+static void
+modal_dialog_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ GtkWidget *dialog;
+
+ dialog = gtk_message_dialog_new (GTK_WINDOW (callback_data),
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_INFO,
+ GTK_BUTTONS_CLOSE,
+ "Here is a MODAL dialog");
+
+ set_gtk_window_type (GTK_WINDOW (dialog), "_NET_WM_WINDOW_TYPE_MODAL_DIALOG");
+
+ gtk_dialog_run (GTK_DIALOG (dialog));
+
+ gtk_widget_destroy (dialog);
+}
+
+static void
+no_parent_dialog_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ make_dialog (NULL, 1);
+}
+
+static void
+utility_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ GtkWidget *window;
+ GtkWidget *vbox;
+ GtkWidget *button;
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ set_gtk_window_type (GTK_WINDOW (window), "_NET_WM_WINDOW_TYPE_UTILITY");
+ gtk_window_set_title (GTK_WINDOW (window), "Utility");
+
+ gtk_window_set_transient_for (GTK_WINDOW (window), GTK_WINDOW (callback_data));
+
+ vbox = gtk_vbox_new (FALSE, 0);
+
+ gtk_container_add (GTK_CONTAINER (window), vbox);
+
+ button = gtk_button_new_with_mnemonic ("_A button");
+ gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
+
+ button = gtk_button_new_with_mnemonic ("_B button");
+ gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
+
+ button = gtk_button_new_with_mnemonic ("_C button");
+ gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
+
+ button = gtk_button_new_with_mnemonic ("_D button");
+ gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
+
+ gtk_widget_show_all (window);
+}
+
+static void
+toolbar_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ GtkWidget *window;
+ GtkWidget *vbox;
+ GtkWidget *label;
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ set_gtk_window_type (GTK_WINDOW (window), "_NET_WM_WINDOW_TYPE_TOOLBAR");
+ gtk_window_set_title (GTK_WINDOW (window), "Toolbar");
+
+ gtk_window_set_transient_for (GTK_WINDOW (window), GTK_WINDOW (callback_data));
+
+ vbox = gtk_vbox_new (FALSE, 0);
+
+ gtk_container_add (GTK_CONTAINER (window), vbox);
+
+ label = gtk_label_new ("FIXME this needs a resize grip, etc.");
+ gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
+
+ gtk_widget_show_all (window);
+}
+
+static void
+menu_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ GtkWidget *window;
+ GtkWidget *vbox;
+ GtkWidget *label;
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ set_gtk_window_type (GTK_WINDOW (window), "_NET_WM_WINDOW_TYPE_MENU");
+ gtk_window_set_title (GTK_WINDOW (window), "Menu");
+
+ gtk_window_set_transient_for (GTK_WINDOW (window), GTK_WINDOW (callback_data));
+
+ vbox = gtk_vbox_new (FALSE, 0);
+
+ gtk_container_add (GTK_CONTAINER (window), vbox);
+
+ label = gtk_label_new ("FIXME this isn't a menu.");
+ gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
+
+ gtk_widget_show_all (window);
+}
+
+static void
+override_redirect_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ GtkWidget *window;
+ GtkWidget *vbox;
+ GtkWidget *label;
+
+ window = gtk_window_new (GTK_WINDOW_POPUP);
+ gtk_window_set_title (GTK_WINDOW (window), "Override Redirect");
+
+ vbox = gtk_vbox_new (FALSE, 0);
+
+ gtk_container_add (GTK_CONTAINER (window), vbox);
+
+ label = gtk_label_new ("This is an override\nredirect window\nand should not be managed");
+ gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
+
+ gtk_widget_show_all (window);
+}
+
+static void
+border_only_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ GtkWidget *window;
+ GtkWidget *vbox;
+ GtkWidget *label;
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ set_gtk_window_border_only (GTK_WINDOW (window));
+ gtk_window_set_title (GTK_WINDOW (window), "Border only");
+
+ gtk_window_set_transient_for (GTK_WINDOW (window), GTK_WINDOW (callback_data));
+
+ vbox = gtk_vbox_new (FALSE, 0);
+
+ gtk_container_add (GTK_CONTAINER (window), vbox);
+
+ label = gtk_label_new ("This window is supposed to have a border but no titlebar.");
+ gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
+
+ gtk_widget_show_all (window);
+}
+
+#if 0
+static void
+changing_icon_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ GtkWidget *window;
+ GtkWidget *vbox;
+ GtkWidget *label;
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_title (GTK_WINDOW (window), "Changing Icon");
+
+ vbox = gtk_vbox_new (FALSE, 0);
+
+ gtk_container_add (GTK_CONTAINER (window), vbox);
+
+ label = gtk_label_new ("This window has an icon that changes over time");
+ gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
+
+ gtk_widget_show_all (window);
+}
+#endif
+
+static gboolean
+focus_in_event_cb (GtkWidget *window,
+ GdkEvent *event,
+ gpointer data)
+{
+ GtkWidget *widget;
+
+ widget = GTK_WIDGET (data);
+
+ gtk_label_set_text (GTK_LABEL (widget), "Has focus");
+
+ return TRUE;
+}
+
+
+static gboolean
+focus_out_event_cb (GtkWidget *window,
+ GdkEvent *event,
+ gpointer data)
+{
+ GtkWidget *widget;
+
+ widget = GTK_WIDGET (data);
+
+ gtk_label_set_text (GTK_LABEL (widget), "Not focused");
+
+ return TRUE;
+}
+
+static GtkWidget*
+focus_label (GtkWidget *window)
+{
+ GtkWidget *label;
+
+ label = gtk_label_new ("Not focused");
+
+ g_signal_connect (G_OBJECT (window), "focus_in_event",
+ G_CALLBACK (focus_in_event_cb), label);
+
+ g_signal_connect (G_OBJECT (window), "focus_out_event",
+ G_CALLBACK (focus_out_event_cb), label);
+
+ return label;
+}
+
+static void
+splashscreen_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ GtkWidget *window;
+ GtkWidget *image;
+ GtkWidget *vbox;
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ set_gtk_window_type (GTK_WINDOW (window), "_NET_WM_WINDOW_TYPE_SPLASHSCREEN");
+ gtk_window_set_title (GTK_WINDOW (window), "Splashscreen");
+
+ vbox = gtk_vbox_new (FALSE, 0);
+
+ image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG);
+ gtk_box_pack_start (GTK_BOX (vbox), image, FALSE, FALSE, 0);
+
+ gtk_box_pack_start (GTK_BOX (vbox), focus_label (window), FALSE, FALSE, 0);
+
+ gtk_container_add (GTK_CONTAINER (window), vbox);
+
+ gtk_widget_show_all (window);
+}
+
+enum
+{
+ DOCK_TOP = 1,
+ DOCK_BOTTOM = 2,
+ DOCK_LEFT = 3,
+ DOCK_RIGHT = 4,
+ DOCK_ALL = 5
+};
+
+static void
+make_dock (int type)
+{
+ GtkWidget *window;
+ GtkWidget *image;
+ GtkWidget *box;
+ GtkWidget *button;
+
+ g_return_if_fail (type != DOCK_ALL);
+
+ box = NULL;
+ switch (type)
+ {
+ case DOCK_LEFT:
+ case DOCK_RIGHT:
+ box = gtk_vbox_new (FALSE, 0);
+ break;
+ case DOCK_TOP:
+ case DOCK_BOTTOM:
+ box = gtk_hbox_new (FALSE, 0);
+ break;
+ case DOCK_ALL:
+ break;
+ }
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ set_gtk_window_type (GTK_WINDOW (window), "_NET_WM_WINDOW_TYPE_DOCK");
+
+ image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG);
+ gtk_box_pack_start (GTK_BOX (box), image, FALSE, FALSE, 0);
+
+ gtk_box_pack_start (GTK_BOX (box), focus_label (window), FALSE, FALSE, 0);
+
+ button = gtk_button_new_with_label ("Close");
+ gtk_box_pack_start (GTK_BOX (box), button, FALSE, FALSE, 0);
+
+ g_signal_connect_swapped (G_OBJECT (button), "clicked",
+ G_CALLBACK (gtk_widget_destroy), window);
+
+ gtk_container_add (GTK_CONTAINER (window), box);
+
+#define DOCK_SIZE 48
+ switch (type)
+ {
+ case DOCK_LEFT:
+ gtk_widget_set_size_request (window, DOCK_SIZE, 400);
+ gtk_window_move (GTK_WINDOW (window), 0, 000);
+ set_gtk_window_struts (window, DOCK_SIZE, 0, 0, 0);
+ gtk_window_set_title (GTK_WINDOW (window), "LeftDock");
+ break;
+ case DOCK_RIGHT:
+ gtk_widget_set_size_request (window, DOCK_SIZE, 400);
+ gtk_window_move (GTK_WINDOW (window), gdk_screen_width () - DOCK_SIZE, 200);
+ set_gtk_window_struts (window, 0, DOCK_SIZE, 0, 0);
+ gtk_window_set_title (GTK_WINDOW (window), "RightDock");
+ break;
+ case DOCK_TOP:
+ gtk_widget_set_size_request (window, 600, DOCK_SIZE);
+ gtk_window_move (GTK_WINDOW (window), 76, 0);
+ set_gtk_window_struts (window, 0, 0, DOCK_SIZE, 0);
+ gtk_window_set_title (GTK_WINDOW (window), "TopDock");
+ break;
+ case DOCK_BOTTOM:
+ gtk_widget_set_size_request (window, 600, DOCK_SIZE);
+ gtk_window_move (GTK_WINDOW (window), 200, gdk_screen_height () - DOCK_SIZE);
+ set_gtk_window_struts (window, 0, 0, 0, DOCK_SIZE);
+ gtk_window_set_title (GTK_WINDOW (window), "BottomDock");
+ break;
+ case DOCK_ALL:
+ break;
+ }
+
+ gtk_widget_show_all (window);
+}
+
+static void
+dock_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ if (callback_action == DOCK_ALL)
+ {
+ make_dock (DOCK_TOP);
+ make_dock (DOCK_BOTTOM);
+ make_dock (DOCK_LEFT);
+ make_dock (DOCK_RIGHT);
+ }
+ else
+ {
+ make_dock (callback_action);
+ }
+}
+
+static void
+desktop_cb (gpointer callback_data,
+ guint callback_action,
+ GtkWidget *widget)
+{
+ GtkWidget *window;
+ GtkWidget *label;
+ GdkColor desktop_color;
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ set_gtk_window_type (GTK_WINDOW (window), "_NET_WM_WINDOW_TYPE_DESKTOP");
+ gtk_window_set_title (GTK_WINDOW (window), "Desktop");
+ gtk_widget_set_size_request (window,
+ gdk_screen_width (), gdk_screen_height ());
+ gtk_window_move (GTK_WINDOW (window), 0, 0);
+
+ desktop_color.red = 0x5144;
+ desktop_color.green = 0x75D6;
+ desktop_color.blue = 0xA699;
+
+ gtk_widget_modify_bg (window, GTK_STATE_NORMAL, &desktop_color);
+
+ label = focus_label (window);
+
+ gtk_container_add (GTK_CONTAINER (window), label);
+
+ gtk_widget_show_all (window);
+}
+
+static GtkItemFactoryEntry menu_items[] =
+{
+ { "/_Windows", NULL, NULL, 0, "<Branch>" },
+ { "/Windows/tearoff", NULL, NULL, 0, "<Tearoff>" },
+ { "/Windows/_Dialog", "<control>d", dialog_cb, 0, NULL },
+ { "/Windows/_Modal dialog", NULL, modal_dialog_cb, 0, NULL },
+ { "/Windows/_Parentless dialog", NULL, no_parent_dialog_cb, 0, NULL },
+ { "/Windows/_Utility", "<control>u", utility_cb, 0, NULL },
+ { "/Windows/_Splashscreen", "<control>s", splashscreen_cb, 0, NULL },
+ { "/Windows/_Top dock", NULL, dock_cb, DOCK_TOP, NULL },
+ { "/Windows/_Bottom dock", NULL, dock_cb, DOCK_BOTTOM, NULL },
+ { "/Windows/_Left dock", NULL, dock_cb, DOCK_LEFT, NULL },
+ { "/Windows/_Right dock", NULL, dock_cb, DOCK_RIGHT, NULL },
+ { "/Windows/_All docks", NULL, dock_cb, DOCK_ALL, NULL },
+ { "/Windows/Des_ktop", NULL, desktop_cb, 0, NULL },
+ { "/Windows/Me_nu", NULL, menu_cb, 0, NULL },
+ { "/Windows/Tool_bar", NULL, toolbar_cb, 0, NULL },
+ { "/Windows/Override Redirect", NULL, override_redirect_cb, 0, NULL },
+ { "/Windows/Border Only", NULL, border_only_cb, 0, NULL }
+};
+
+static void
+sleep_cb (GtkWidget *button,
+ gpointer data)
+{
+ sleep (1000);
+}
+
+static void
+toggle_aspect_ratio (GtkWidget *button,
+ gpointer data)
+{
+ GtkWidget *window;
+ GdkGeometry geom;
+
+ if (aspect_on)
+ {
+ geom.min_aspect = 0;
+ geom.max_aspect = 65535;
+ }
+ else
+ {
+ geom.min_aspect = 1.777778;
+ geom.max_aspect = 1.777778;
+ }
+
+ aspect_on = !aspect_on;
+
+ window = gtk_widget_get_ancestor (button, GTK_TYPE_WINDOW);
+ if (window)
+ gtk_window_set_geometry_hints (GTK_WINDOW (window),
+ GTK_WIDGET (data),
+ &geom,
+ GDK_HINT_ASPECT);
+
+}
+
+static void
+toggle_decorated_cb (GtkWidget *button,
+ gpointer data)
+{
+ GtkWidget *window;
+ window = gtk_widget_get_ancestor (button, GTK_TYPE_WINDOW);
+ if (window)
+ gtk_window_set_decorated (GTK_WINDOW (window),
+ !gtk_window_get_decorated (GTK_WINDOW (window)));
+}
+
+static void
+clicked_toolbar_cb (GtkWidget *button,
+ gpointer data)
+{
+ GtkWidget *dialog;
+
+ dialog = gtk_message_dialog_new (GTK_WINDOW (data),
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_INFO,
+ GTK_BUTTONS_CLOSE,
+ "Clicking the toolbar buttons doesn't do anything");
+
+ /* Close dialog on user response */
+ g_signal_connect (G_OBJECT (dialog),
+ "response",
+ G_CALLBACK (gtk_widget_destroy),
+ NULL);
+
+ gtk_widget_show (dialog);
+}
+
+static void
+update_statusbar (GtkTextBuffer *buffer,
+ GtkStatusbar *statusbar)
+{
+ gchar *msg;
+ gint row, col;
+ gint count;
+ GtkTextIter iter;
+
+ gtk_statusbar_pop (statusbar, 0); /* clear any previous message, underflow is allowed */
+
+ count = gtk_text_buffer_get_char_count (buffer);
+
+ gtk_text_buffer_get_iter_at_mark (buffer,
+ &iter,
+ gtk_text_buffer_get_insert (buffer));
+
+ row = gtk_text_iter_get_line (&iter);
+ col = gtk_text_iter_get_line_offset (&iter);
+
+ msg = g_strdup_printf ("Cursor at row %d column %d - %d chars in document",
+ row, col, count);
+
+ gtk_statusbar_push (statusbar, 0, msg);
+
+ g_free (msg);
+}
+
+static void
+mark_set_callback (GtkTextBuffer *buffer,
+ const GtkTextIter *new_location,
+ GtkTextMark *mark,
+ gpointer data)
+{
+ update_statusbar (buffer, GTK_STATUSBAR (data));
+}
+
+static int window_count = 0;
+
+static void
+destroy_cb (GtkWidget *w, gpointer data)
+{
+ --window_count;
+ if (window_count == 0)
+ gtk_main_quit ();
+}
+
+static GtkWidget *
+do_appwindow (void)
+{
+ GtkWidget *window;
+ GtkWidget *table;
+ GtkWidget *toolbar;
+ GtkWidget *handlebox;
+ GtkWidget *statusbar;
+ GtkWidget *contents;
+ GtkWidget *sw;
+ GtkTextBuffer *buffer;
+ GtkAccelGroup *accel_group;
+ GtkItemFactory *item_factory;
+
+
+ /* Create the toplevel window
+ */
+
+ ++window_count;
+
+ aspect_on = FALSE;
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_title (GTK_WINDOW (window), "Application Window");
+
+ g_signal_connect (G_OBJECT (window), "destroy",
+ G_CALLBACK (destroy_cb), NULL);
+
+ table = gtk_table_new (1, 4, FALSE);
+
+ gtk_container_add (GTK_CONTAINER (window), table);
+
+ /* Create the menubar
+ */
+
+ accel_group = gtk_accel_group_new ();
+ gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);
+ g_object_unref (accel_group);
+
+ item_factory = gtk_item_factory_new (GTK_TYPE_MENU_BAR, "<main>", accel_group);
+
+ /* Set up item factory to go away with the window */
+ g_object_ref (item_factory);
+ g_object_ref_sink (item_factory);
+ g_object_unref (item_factory);
+ g_object_set_data_full (G_OBJECT (window),
+ "<main>",
+ item_factory,
+ (GDestroyNotify) g_object_unref);
+
+ /* create menu items */
+ gtk_item_factory_create_items (item_factory, G_N_ELEMENTS (menu_items),
+ menu_items, window);
+
+ gtk_table_attach (GTK_TABLE (table),
+ gtk_item_factory_get_widget (item_factory, "<main>"),
+ /* X direction */ /* Y direction */
+ 0, 1, 0, 1,
+ GTK_EXPAND | GTK_FILL, 0,
+ 0, 0);
+
+ /* Create document
+ */
+
+ sw = gtk_scrolled_window_new (NULL, NULL);
+
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw),
+ GTK_SHADOW_IN);
+
+ gtk_table_attach (GTK_TABLE (table),
+ sw,
+ /* X direction */ /* Y direction */
+ 0, 1, 2, 3,
+ GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL,
+ 0, 0);
+
+ gtk_window_set_default_size (GTK_WINDOW (window),
+ 200, 200);
+
+ contents = gtk_text_view_new ();
+ gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (contents),
+ PANGO_WRAP_WORD);
+
+ gtk_container_add (GTK_CONTAINER (sw),
+ contents);
+
+ /* Create the toolbar
+ */
+ toolbar = gtk_toolbar_new ();
+
+ GtkToolItem *newButton = gtk_tool_button_new_from_stock(GTK_STOCK_NEW);
+ gtk_tool_item_set_tooltip_text(newButton,
+ "Open another one of these windows");
+ g_signal_connect(G_OBJECT(newButton),
+ "clicked",
+ G_CALLBACK(do_appwindow),
+ window);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
+ newButton,
+ -1); /*-1 means append to end of toolbar*/
+
+
+ GtkToolItem *lockButton = gtk_tool_button_new_from_stock(GTK_STOCK_OPEN);
+ gtk_tool_item_set_tooltip_text(lockButton,
+ "This is a demo button that locks up the demo");
+ g_signal_connect(G_OBJECT(lockButton),
+ "clicked",
+ G_CALLBACK(sleep_cb),
+ window);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
+ lockButton,
+ -1); /*-1 means append to end of toolbar*/
+
+
+ GtkToolItem *decoButton = gtk_tool_button_new_from_stock(GTK_STOCK_OPEN);
+ gtk_tool_item_set_tooltip_text(decoButton,
+ "This is a demo button that toggles window decorations");
+ g_signal_connect(G_OBJECT(decoButton),
+ "clicked",
+ G_CALLBACK(toggle_decorated_cb),
+ window);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
+ decoButton,
+ -1); /*-1 means append to end of toolbar*/
+
+ GtkToolItem *lockRatioButton = gtk_tool_button_new_from_stock(GTK_STOCK_OPEN);
+ gtk_tool_item_set_tooltip_text(lockRatioButton,
+ "This is a demo button that locks the aspect ratio using a hint");
+ g_signal_connect(G_OBJECT(lockRatioButton),
+ "clicked",
+ G_CALLBACK(toggle_aspect_ratio),
+ window);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
+ lockRatioButton,
+ -1); /*-1 means append to end of toolbar*/
+
+ GtkToolItem *quitButton = gtk_tool_button_new_from_stock(GTK_STOCK_QUIT);
+ gtk_tool_item_set_tooltip_text(quitButton,
+ "This is a demo button with a 'quit' icon");
+ g_signal_connect(G_OBJECT(quitButton),
+ "clicked",
+ G_CALLBACK(clicked_toolbar_cb),
+ window);
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
+ quitButton,
+ -1); /*-1 means append to end of toolbar*/
+
+ handlebox = gtk_handle_box_new ();
+
+ gtk_container_add (GTK_CONTAINER (handlebox), toolbar);
+
+ gtk_table_attach (GTK_TABLE (table),
+ handlebox,
+ /* X direction */ /* Y direction */
+ 0, 1, 1, 2,
+ GTK_EXPAND | GTK_FILL, 0,
+ 0, 0);
+
+ /* Create statusbar */
+
+ statusbar = gtk_statusbar_new ();
+ gtk_table_attach (GTK_TABLE (table),
+ statusbar,
+ /* X direction */ /* Y direction */
+ 0, 1, 3, 4,
+ GTK_EXPAND | GTK_FILL, 0,
+ 0, 0);
+
+ /* Show text widget info in the statusbar */
+ buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (contents));
+
+ gtk_text_buffer_set_text (buffer,
+ "This demo demonstrates various kinds of windows that "
+ "window managers and window manager themes should handle. "
+ "Be sure to tear off the menu and toolbar, those are also "
+ "a special kind of window.",
+ -1);
+
+ g_signal_connect_object (buffer,
+ "changed",
+ G_CALLBACK (update_statusbar),
+ statusbar,
+ 0);
+
+ g_signal_connect_object (buffer,
+ "mark_set", /* cursor moved */
+ G_CALLBACK (mark_set_callback),
+ statusbar,
+ 0);
+
+ update_statusbar (buffer, GTK_STATUSBAR (statusbar));
+
+ gtk_widget_show_all (window);
+
+ return window;
+}
+
+
diff --git a/src/tools/marco-window-demo.png b/src/tools/marco-window-demo.png
new file mode 100644
index 00000000..d87f8296
--- /dev/null
+++ b/src/tools/marco-window-demo.png
Binary files differ
diff --git a/src/ui/draw-workspace.c b/src/ui/draw-workspace.c
new file mode 100644
index 00000000..b1a7c733
--- /dev/null
+++ b/src/ui/draw-workspace.c
@@ -0,0 +1,229 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Draw a workspace */
+
+/* This file should not be modified to depend on other files in
+ * libwnck or marco, since it's used in both of them
+ */
+
+/*
+ * Copyright (C) 2002 Red Hat Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include "draw-workspace.h"
+
+
+static void
+get_window_rect (const WnckWindowDisplayInfo *win,
+ int screen_width,
+ int screen_height,
+ const GdkRectangle *workspace_rect,
+ GdkRectangle *rect)
+{
+ double width_ratio, height_ratio;
+ int x, y, width, height;
+
+ width_ratio = (double) workspace_rect->width / (double) screen_width;
+ height_ratio = (double) workspace_rect->height / (double) screen_height;
+
+ x = win->x;
+ y = win->y;
+ width = win->width;
+ height = win->height;
+
+ x *= width_ratio;
+ y *= height_ratio;
+ width *= width_ratio;
+ height *= height_ratio;
+
+ x += workspace_rect->x;
+ y += workspace_rect->y;
+
+ if (width < 3)
+ width = 3;
+ if (height < 3)
+ height = 3;
+
+ rect->x = x;
+ rect->y = y;
+ rect->width = width;
+ rect->height = height;
+}
+
+static void
+draw_window (GtkWidget *widget,
+ GdkDrawable *drawable,
+ const WnckWindowDisplayInfo *win,
+ const GdkRectangle *winrect,
+ GtkStateType state)
+{
+ cairo_t *cr;
+ GdkPixbuf *icon;
+ int icon_x, icon_y, icon_w, icon_h;
+ gboolean is_active;
+ GdkColor *color;
+ GtkStyle *style;
+
+ is_active = win->is_active;
+
+ cr = gdk_cairo_create (drawable);
+ cairo_rectangle (cr, winrect->x, winrect->y, winrect->width, winrect->height);
+ cairo_clip (cr);
+
+ style = gtk_widget_get_style (widget);
+ if (is_active)
+ color = &style->light[state];
+ else
+ color = &style->bg[state];
+ cairo_set_source_rgb (cr,
+ color->red / 65535.,
+ color->green / 65535.,
+ color->blue / 65535.);
+
+ cairo_rectangle (cr,
+ winrect->x + 1, winrect->y + 1,
+ MAX (0, winrect->width - 2), MAX (0, winrect->height - 2));
+ cairo_fill (cr);
+
+
+ icon = win->icon;
+
+ icon_w = icon_h = 0;
+
+ if (icon)
+ {
+ icon_w = gdk_pixbuf_get_width (icon);
+ icon_h = gdk_pixbuf_get_height (icon);
+
+ /* If the icon is too big, fall back to mini icon.
+ * We don't arbitrarily scale the icon, because it's
+ * just too slow on my Athlon 850.
+ */
+ if (icon_w > (winrect->width - 2) ||
+ icon_h > (winrect->height - 2))
+ {
+ icon = win->mini_icon;
+ if (icon)
+ {
+ icon_w = gdk_pixbuf_get_width (icon);
+ icon_h = gdk_pixbuf_get_height (icon);
+
+ /* Give up. */
+ if (icon_w > (winrect->width - 2) ||
+ icon_h > (winrect->height - 2))
+ icon = NULL;
+ }
+ }
+ }
+
+ if (icon)
+ {
+ icon_x = winrect->x + (winrect->width - icon_w) / 2;
+ icon_y = winrect->y + (winrect->height - icon_h) / 2;
+
+ cairo_save (cr);
+ gdk_cairo_set_source_pixbuf (cr, icon, icon_x, icon_y);
+ cairo_rectangle (cr, icon_x, icon_y, icon_w, icon_h);
+ cairo_clip (cr);
+ cairo_paint (cr);
+ cairo_restore (cr);
+ }
+
+ if (is_active)
+ color = &style->fg[state];
+ else
+ color = &style->fg[state];
+
+ cairo_set_source_rgb (cr,
+ color->red / 65535.,
+ color->green / 65535.,
+ color->blue / 65535.);
+ cairo_set_line_width (cr, 1.0);
+ cairo_rectangle (cr,
+ winrect->x + 0.5, winrect->y + 0.5,
+ MAX (0, winrect->width - 1), MAX (0, winrect->height - 1));
+ cairo_stroke (cr);
+
+ cairo_destroy (cr);
+}
+
+void
+wnck_draw_workspace (GtkWidget *widget,
+ GdkDrawable *drawable,
+ int x,
+ int y,
+ int width,
+ int height,
+ int screen_width,
+ int screen_height,
+ GdkPixbuf *workspace_background,
+ gboolean is_active,
+ const WnckWindowDisplayInfo *windows,
+ int n_windows)
+{
+ int i;
+ GdkRectangle workspace_rect;
+ GtkStateType state;
+ cairo_t *cr;
+
+ workspace_rect.x = x;
+ workspace_rect.y = y;
+ workspace_rect.width = width;
+ workspace_rect.height = height;
+
+ if (is_active)
+ state = GTK_STATE_SELECTED;
+ else if (workspace_background)
+ state = GTK_STATE_PRELIGHT;
+ else
+ state = GTK_STATE_NORMAL;
+
+ cr = gdk_cairo_create (drawable);
+
+ if (workspace_background)
+ {
+ gdk_cairo_set_source_pixbuf (cr, workspace_background, x, y);
+ cairo_paint (cr);
+ }
+ else
+ {
+ gdk_cairo_set_source_color (cr, &gtk_widget_get_style (widget)->dark[state]);
+ cairo_rectangle (cr, x, y, width, height);
+ cairo_fill (cr);
+ }
+
+ cairo_destroy (cr);
+
+ i = 0;
+ while (i < n_windows)
+ {
+ const WnckWindowDisplayInfo *win = &windows[i];
+ GdkRectangle winrect;
+
+ get_window_rect (win, screen_width,
+ screen_height, &workspace_rect, &winrect);
+
+ draw_window (widget,
+ drawable,
+ win,
+ &winrect,
+ state);
+
+ ++i;
+ }
+}
diff --git a/src/ui/draw-workspace.h b/src/ui/draw-workspace.h
new file mode 100644
index 00000000..a8b77cab
--- /dev/null
+++ b/src/ui/draw-workspace.h
@@ -0,0 +1,61 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Draw a workspace */
+
+/* This file should not be modified to depend on other files in
+ * libwnck or marco, since it's used in both of them
+ */
+
+/*
+ * Copyright (C) 2002 Red Hat Inc.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef WNCK_DRAW_WORKSPACE_H
+#define WNCK_DRAW_WORKSPACE_H
+
+#include <gdk/gdk.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#include <gtk/gtk.h>
+
+typedef struct
+{
+ GdkPixbuf *icon;
+ GdkPixbuf *mini_icon;
+ int x;
+ int y;
+ int width;
+ int height;
+
+ guint is_active : 1;
+
+} WnckWindowDisplayInfo;
+
+void wnck_draw_workspace (GtkWidget *widget,
+ GdkDrawable *drawable,
+ int x,
+ int y,
+ int width,
+ int height,
+ int screen_width,
+ int screen_height,
+ GdkPixbuf *workspace_background,
+ gboolean is_active,
+ const WnckWindowDisplayInfo *windows,
+ int n_windows);
+
+#endif
diff --git a/src/ui/fixedtip.c b/src/ui/fixedtip.c
new file mode 100644
index 00000000..93370636
--- /dev/null
+++ b/src/ui/fixedtip.c
@@ -0,0 +1,133 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco fixed tooltip routine */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "fixedtip.h"
+#include "ui.h"
+
+/**
+ * The floating rectangle. This is a GtkWindow, and it contains
+ * the "label" widget, below.
+ */
+static GtkWidget *tip = NULL;
+
+/**
+ * The actual text that gets displayed.
+ */
+static GtkWidget *label = NULL;
+/*
+ * X coordinate of the right-hand edge of the screen.
+ *
+ * \bug This appears to be a bug; screen_right_edge is calculated only when
+ * the window is redrawn. Actually we should never cache it because
+ * different windows are different sizes.
+ */
+static int screen_right_edge = 0;
+/*
+ * Y coordinate of the bottom edge of the screen.
+ *
+ * \bug As with screen_right_edge.
+ */
+static int screen_bottom_edge = 0;
+
+static gint
+expose_handler (GtkTooltips *tooltips)
+{
+ gtk_paint_flat_box (gtk_widget_get_style (tip), gtk_widget_get_window (tip),
+ GTK_STATE_NORMAL, GTK_SHADOW_OUT,
+ NULL, tip, "tooltip",
+ 0, 0, -1, -1);
+
+ return FALSE;
+}
+
+void
+meta_fixed_tip_show (Display *xdisplay, int screen_number,
+ int root_x, int root_y,
+ const char *markup_text)
+{
+ int w, h;
+
+ if (tip == NULL)
+ {
+ tip = gtk_window_new (GTK_WINDOW_POPUP);
+ gtk_window_set_type_hint (GTK_WINDOW(tip), GDK_WINDOW_TYPE_HINT_TOOLTIP);
+
+ {
+ GdkScreen *gdk_screen;
+ GdkRectangle monitor;
+ gint mon_num;
+
+ gdk_screen = gdk_display_get_screen (gdk_display_get_default (),
+ screen_number);
+ gtk_window_set_screen (GTK_WINDOW (tip),
+ gdk_screen);
+ mon_num = gdk_screen_get_monitor_at_point (gdk_screen, root_x, root_y);
+ gdk_screen_get_monitor_geometry (gdk_screen, mon_num, &monitor);
+ screen_right_edge = monitor.x + monitor.width;
+ screen_bottom_edge = monitor.y + monitor.height;
+ }
+
+ gtk_widget_set_app_paintable (tip, TRUE);
+ gtk_window_set_resizable (GTK_WINDOW (tip), FALSE);
+ gtk_widget_set_name (tip, "gtk-tooltips");
+ gtk_container_set_border_width (GTK_CONTAINER (tip), 4);
+
+ g_signal_connect_swapped (tip, "expose_event",
+ G_CALLBACK (expose_handler), NULL);
+
+ label = gtk_label_new (NULL);
+ gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
+ gtk_misc_set_alignment (GTK_MISC (label), 0.5, 0.5);
+ gtk_widget_show (label);
+
+ gtk_container_add (GTK_CONTAINER (tip), label);
+
+ g_signal_connect (tip, "destroy",
+ G_CALLBACK (gtk_widget_destroyed), &tip);
+ }
+
+ gtk_label_set_markup (GTK_LABEL (label), markup_text);
+
+ gtk_window_get_size (GTK_WINDOW (tip), &w, &h);
+
+ if (meta_ui_get_direction() == META_UI_DIRECTION_RTL)
+ root_x = MAX(0, root_x - w);
+
+ if ((root_x + w) > screen_right_edge)
+ root_x -= (root_x + w) - screen_right_edge;
+
+ gtk_window_move (GTK_WINDOW (tip), root_x, root_y);
+
+ gtk_widget_show (tip);
+}
+
+void
+meta_fixed_tip_hide (void)
+{
+ if (tip)
+ {
+ gtk_widget_destroy (tip);
+ tip = NULL;
+ }
+}
diff --git a/src/ui/fixedtip.h b/src/ui/fixedtip.h
new file mode 100644
index 00000000..28a618d9
--- /dev/null
+++ b/src/ui/fixedtip.h
@@ -0,0 +1,69 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+/**
+ * \file fixedtip.h Marco fixed tooltip routine
+ *
+ * Sometimes we want to display a small floating rectangle with helpful
+ * text near the pointer. For example, if the user holds the mouse over
+ * the maximise button, we can display a tooltip saying "Maximize".
+ * The text is localised, of course.
+ *
+ * This file contains the functions to create and delete these tooltips.
+ *
+ * \todo Since we now consider MetaDisplay a singleton, there can be
+ * only one tooltip per display; this might quite simply live in
+ * display.c. Alternatively, it could move to frames.c, which
+ * is the only place this business is called anyway.
+ *
+ * \todo Apparently some UI needs changing (check bugzilla)
+ */
+
+#ifndef META_FIXED_TIP_H
+#define META_FIXED_TIP_H
+
+#include <gtk/gtk.h>
+#include <gdk/gdkx.h>
+
+/**
+ * Displays a tooltip. There can be only one across the entire system.
+ * This function behaves identically whether or not a tooltip is already
+ * displayed, but if it is the window will be reused rather than destroyed
+ * and recreated.
+ *
+ * \param xdisplay An X display.
+ * \param screen_number The number of the screen.
+ * \param root_x The X coordinate where the tooltip should appear
+ * \param root_y The Y coordinate where the tooltip should appear
+ * \param markup_text Text to display in the tooltip; can contain markup
+ */
+void meta_fixed_tip_show (Display *xdisplay, int screen_number,
+ int root_x, int root_y,
+ const char *markup_text);
+
+/**
+ * Removes the tooltip that was created by meta_fixed_tip_show(). If there
+ * is no tooltip currently visible, this is a no-op.
+ */
+void meta_fixed_tip_hide (void);
+
+
+#endif
diff --git a/src/ui/frames.c b/src/ui/frames.c
new file mode 100644
index 00000000..bb4c863c
--- /dev/null
+++ b/src/ui/frames.c
@@ -0,0 +1,2940 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco window frame manager widget */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2003 Red Hat, Inc.
+ * Copyright (C) 2005, 2006 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include <math.h>
+#include "boxes.h"
+#include "frames.h"
+#include "util.h"
+#include "core.h"
+#include "menu.h"
+#include "fixedtip.h"
+#include "theme.h"
+#include "prefs.h"
+#include "ui.h"
+
+#ifdef HAVE_SHAPE
+#include <X11/extensions/shape.h>
+#endif
+
+#define DEFAULT_INNER_BUTTON_BORDER 3
+
+static void meta_frames_class_init (MetaFramesClass *klass);
+static void meta_frames_init (MetaFrames *frames);
+static void meta_frames_destroy (GtkObject *object);
+static void meta_frames_finalize (GObject *object);
+static void meta_frames_style_set (GtkWidget *widget,
+ GtkStyle *prev_style);
+static void meta_frames_realize (GtkWidget *widget);
+static void meta_frames_unrealize (GtkWidget *widget);
+
+static void meta_frames_update_prelit_control (MetaFrames *frames,
+ MetaUIFrame *frame,
+ MetaFrameControl control);
+static gboolean meta_frames_button_press_event (GtkWidget *widget,
+ GdkEventButton *event);
+static gboolean meta_frames_button_release_event (GtkWidget *widget,
+ GdkEventButton *event);
+static gboolean meta_frames_motion_notify_event (GtkWidget *widget,
+ GdkEventMotion *event);
+static gboolean meta_frames_destroy_event (GtkWidget *widget,
+ GdkEventAny *event);
+static gboolean meta_frames_expose_event (GtkWidget *widget,
+ GdkEventExpose *event);
+static gboolean meta_frames_enter_notify_event (GtkWidget *widget,
+ GdkEventCrossing *event);
+static gboolean meta_frames_leave_notify_event (GtkWidget *widget,
+ GdkEventCrossing *event);
+
+static void meta_frames_attach_style (MetaFrames *frames,
+ MetaUIFrame *frame);
+
+static void meta_frames_paint_to_drawable (MetaFrames *frames,
+ MetaUIFrame *frame,
+ GdkDrawable *drawable,
+ GdkRegion *region,
+ int x_offset,
+ int y_offset);
+
+static void meta_frames_set_window_background (MetaFrames *frames,
+ MetaUIFrame *frame);
+
+static void meta_frames_calc_geometry (MetaFrames *frames,
+ MetaUIFrame *frame,
+ MetaFrameGeometry *fgeom);
+
+static void meta_frames_ensure_layout (MetaFrames *frames,
+ MetaUIFrame *frame);
+
+static MetaUIFrame* meta_frames_lookup_window (MetaFrames *frames,
+ Window xwindow);
+
+static void meta_frames_font_changed (MetaFrames *frames);
+static void meta_frames_button_layout_changed (MetaFrames *frames);
+
+
+static GdkRectangle* control_rect (MetaFrameControl control,
+ MetaFrameGeometry *fgeom);
+static MetaFrameControl get_control (MetaFrames *frames,
+ MetaUIFrame *frame,
+ int x,
+ int y);
+static void clear_tip (MetaFrames *frames);
+static void invalidate_all_caches (MetaFrames *frames);
+static void invalidate_whole_window (MetaFrames *frames,
+ MetaUIFrame *frame);
+
+static GtkWidgetClass *parent_class = NULL;
+
+GType
+meta_frames_get_type (void)
+{
+ static GType frames_type = 0;
+
+ if (!frames_type)
+ {
+ static const GtkTypeInfo frames_info =
+ {
+ "MetaFrames",
+ sizeof (MetaFrames),
+ sizeof (MetaFramesClass),
+ (GtkClassInitFunc) meta_frames_class_init,
+ (GtkObjectInitFunc) meta_frames_init,
+ /* reserved_1 */ NULL,
+ /* reserved_2 */ NULL,
+ (GtkClassInitFunc) NULL,
+ };
+
+ frames_type = gtk_type_unique (GTK_TYPE_WINDOW, &frames_info);
+ }
+
+ return frames_type;
+}
+
+static void
+meta_frames_class_init (MetaFramesClass *class)
+{
+ GObjectClass *gobject_class;
+ GtkObjectClass *object_class;
+ GtkWidgetClass *widget_class;
+
+ gobject_class = G_OBJECT_CLASS (class);
+ object_class = (GtkObjectClass*) class;
+ widget_class = (GtkWidgetClass*) class;
+
+ parent_class = g_type_class_peek_parent (class);
+
+ gobject_class->finalize = meta_frames_finalize;
+ object_class->destroy = meta_frames_destroy;
+
+ widget_class->style_set = meta_frames_style_set;
+
+ widget_class->realize = meta_frames_realize;
+ widget_class->unrealize = meta_frames_unrealize;
+
+ widget_class->expose_event = meta_frames_expose_event;
+ widget_class->destroy_event = meta_frames_destroy_event;
+ widget_class->button_press_event = meta_frames_button_press_event;
+ widget_class->button_release_event = meta_frames_button_release_event;
+ widget_class->motion_notify_event = meta_frames_motion_notify_event;
+ widget_class->enter_notify_event = meta_frames_enter_notify_event;
+ widget_class->leave_notify_event = meta_frames_leave_notify_event;
+}
+
+static gint
+unsigned_long_equal (gconstpointer v1,
+ gconstpointer v2)
+{
+ return *((const gulong*) v1) == *((const gulong*) v2);
+}
+
+static guint
+unsigned_long_hash (gconstpointer v)
+{
+ gulong val = * (const gulong *) v;
+
+ /* I'm not sure this works so well. */
+#if GLIB_SIZEOF_LONG > 4
+ return (guint) (val ^ (val >> 32));
+#else
+ return val;
+#endif
+}
+
+static void
+prefs_changed_callback (MetaPreference pref,
+ void *data)
+{
+ switch (pref)
+ {
+ case META_PREF_TITLEBAR_FONT:
+ meta_frames_font_changed (META_FRAMES (data));
+ break;
+ case META_PREF_BUTTON_LAYOUT:
+ meta_frames_button_layout_changed (META_FRAMES (data));
+ break;
+ default:
+ break;
+ }
+}
+
+static void
+meta_frames_init (MetaFrames *frames)
+{
+ GTK_WINDOW (frames)->type = GTK_WINDOW_POPUP;
+
+ frames->text_heights = g_hash_table_new (NULL, NULL);
+
+ frames->frames = g_hash_table_new (unsigned_long_hash, unsigned_long_equal);
+
+ frames->tooltip_timeout = 0;
+
+ frames->expose_delay_count = 0;
+
+ frames->invalidate_cache_timeout_id = 0;
+ frames->invalidate_frames = NULL;
+ frames->cache = g_hash_table_new (g_direct_hash, g_direct_equal);
+
+ gtk_widget_set_double_buffered (GTK_WIDGET (frames), FALSE);
+
+ meta_prefs_add_listener (prefs_changed_callback, frames);
+}
+
+static void
+listify_func (gpointer key, gpointer value, gpointer data)
+{
+ GSList **listp;
+
+ listp = data;
+ *listp = g_slist_prepend (*listp, value);
+}
+
+static void
+meta_frames_destroy (GtkObject *object)
+{
+ GSList *winlist;
+ GSList *tmp;
+ MetaFrames *frames;
+
+ frames = META_FRAMES (object);
+
+ clear_tip (frames);
+
+ winlist = NULL;
+ g_hash_table_foreach (frames->frames, listify_func, &winlist);
+
+ /* Unmanage all frames */
+ for (tmp = winlist; tmp != NULL; tmp = tmp->next)
+ {
+ MetaUIFrame *frame;
+
+ frame = tmp->data;
+
+ meta_frames_unmanage_window (frames, frame->xwindow);
+ }
+ g_slist_free (winlist);
+
+ GTK_OBJECT_CLASS (parent_class)->destroy (object);
+}
+
+static void
+meta_frames_finalize (GObject *object)
+{
+ MetaFrames *frames;
+
+ frames = META_FRAMES (object);
+
+ meta_prefs_remove_listener (prefs_changed_callback, frames);
+
+ g_hash_table_destroy (frames->text_heights);
+
+ invalidate_all_caches (frames);
+ if (frames->invalidate_cache_timeout_id)
+ g_source_remove (frames->invalidate_cache_timeout_id);
+
+ g_assert (g_hash_table_size (frames->frames) == 0);
+ g_hash_table_destroy (frames->frames);
+ g_hash_table_destroy (frames->cache);
+
+ G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
+typedef struct
+{
+ MetaRectangle rect;
+ GdkPixmap *pixmap;
+} CachedFramePiece;
+
+typedef struct
+{
+ /* Caches of the four rendered sides in a MetaFrame.
+ * Order: top (titlebar), left, right, bottom.
+ */
+ CachedFramePiece piece[4];
+} CachedPixels;
+
+static CachedPixels *
+get_cache (MetaFrames *frames,
+ MetaUIFrame *frame)
+{
+ CachedPixels *pixels;
+
+ pixels = g_hash_table_lookup (frames->cache, frame);
+
+ if (!pixels)
+ {
+ pixels = g_new0 (CachedPixels, 1);
+ g_hash_table_insert (frames->cache, frame, pixels);
+ }
+
+ return pixels;
+}
+
+static void
+invalidate_cache (MetaFrames *frames,
+ MetaUIFrame *frame)
+{
+ CachedPixels *pixels = get_cache (frames, frame);
+ int i;
+
+ for (i = 0; i < 4; i++)
+ if (pixels->piece[i].pixmap)
+ g_object_unref (pixels->piece[i].pixmap);
+
+ g_free (pixels);
+ g_hash_table_remove (frames->cache, frame);
+}
+
+static void
+invalidate_all_caches (MetaFrames *frames)
+{
+ GList *l;
+
+ for (l = frames->invalidate_frames; l; l = l->next)
+ {
+ MetaUIFrame *frame = l->data;
+
+ invalidate_cache (frames, frame);
+ }
+
+ g_list_free (frames->invalidate_frames);
+ frames->invalidate_frames = NULL;
+}
+
+static gboolean
+invalidate_cache_timeout (gpointer data)
+{
+ MetaFrames *frames = data;
+
+ invalidate_all_caches (frames);
+ frames->invalidate_cache_timeout_id = 0;
+ return FALSE;
+}
+
+static void
+queue_recalc_func (gpointer key, gpointer value, gpointer data)
+{
+ MetaUIFrame *frame;
+ MetaFrames *frames;
+
+ frames = META_FRAMES (data);
+ frame = value;
+
+ /* If a resize occurs it will cause a redraw, but the
+ * resize may not actually be needed so we always redraw
+ * in case of color change.
+ */
+ meta_frames_set_window_background (frames, frame);
+
+ invalidate_whole_window (frames, frame);
+ meta_core_queue_frame_resize (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow);
+ if (frame->layout)
+ {
+ /* save title to recreate layout */
+ g_free (frame->title);
+
+ frame->title = g_strdup (pango_layout_get_text (frame->layout));
+
+ g_object_unref (G_OBJECT (frame->layout));
+ frame->layout = NULL;
+ }
+}
+
+static void
+meta_frames_font_changed (MetaFrames *frames)
+{
+ if (g_hash_table_size (frames->text_heights) > 0)
+ {
+ g_hash_table_destroy (frames->text_heights);
+ frames->text_heights = g_hash_table_new (NULL, NULL);
+ }
+
+ /* Queue a draw/resize on all frames */
+ g_hash_table_foreach (frames->frames,
+ queue_recalc_func, frames);
+
+}
+
+static void
+queue_draw_func (gpointer key, gpointer value, gpointer data)
+{
+ MetaUIFrame *frame;
+ MetaFrames *frames;
+
+ frames = META_FRAMES (data);
+ frame = value;
+
+ /* If a resize occurs it will cause a redraw, but the
+ * resize may not actually be needed so we always redraw
+ * in case of color change.
+ */
+ meta_frames_set_window_background (frames, frame);
+
+ invalidate_whole_window (frames, frame);
+}
+
+static void
+meta_frames_button_layout_changed (MetaFrames *frames)
+{
+ g_hash_table_foreach (frames->frames,
+ queue_draw_func, frames);
+}
+
+static void
+reattach_style_func (gpointer key, gpointer value, gpointer data)
+{
+ MetaUIFrame *frame;
+ MetaFrames *frames;
+
+ frames = META_FRAMES (data);
+ frame = value;
+
+ meta_frames_attach_style (frames, frame);
+}
+
+static void
+meta_frames_style_set (GtkWidget *widget,
+ GtkStyle *prev_style)
+{
+ MetaFrames *frames;
+
+ frames = META_FRAMES (widget);
+
+ meta_frames_font_changed (frames);
+
+ g_hash_table_foreach (frames->frames,
+ reattach_style_func, frames);
+
+ GTK_WIDGET_CLASS (parent_class)->style_set (widget, prev_style);
+}
+
+static void
+meta_frames_ensure_layout (MetaFrames *frames,
+ MetaUIFrame *frame)
+{
+ GtkWidget *widget;
+ MetaFrameFlags flags;
+ MetaFrameType type;
+ MetaFrameStyle *style;
+
+ g_return_if_fail (GTK_WIDGET_REALIZED (frames));
+
+ widget = GTK_WIDGET (frames);
+
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_FRAME_TYPE, &type,
+ META_CORE_GET_END);
+
+ style = meta_theme_get_frame_style (meta_theme_get_current (),
+ type, flags);
+
+ if (style != frame->cache_style)
+ {
+ if (frame->layout)
+ {
+ /* save title to recreate layout */
+ g_free (frame->title);
+
+ frame->title = g_strdup (pango_layout_get_text (frame->layout));
+
+ g_object_unref (G_OBJECT (frame->layout));
+ frame->layout = NULL;
+ }
+ }
+
+ frame->cache_style = style;
+
+ if (frame->layout == NULL)
+ {
+ gpointer key, value;
+ PangoFontDescription *font_desc;
+ double scale;
+ int size;
+
+ scale = meta_theme_get_title_scale (meta_theme_get_current (),
+ type,
+ flags);
+
+ frame->layout = gtk_widget_create_pango_layout (widget, frame->title);
+
+ pango_layout_set_auto_dir (frame->layout, FALSE);
+
+ font_desc = meta_gtk_widget_get_font_desc (widget, scale,
+ meta_prefs_get_titlebar_font ());
+
+ size = pango_font_description_get_size (font_desc);
+
+ if (g_hash_table_lookup_extended (frames->text_heights,
+ GINT_TO_POINTER (size),
+ &key, &value))
+ {
+ frame->text_height = GPOINTER_TO_INT (value);
+ }
+ else
+ {
+ frame->text_height =
+ meta_pango_font_desc_get_text_height (font_desc,
+ gtk_widget_get_pango_context (widget));
+
+ g_hash_table_replace (frames->text_heights,
+ GINT_TO_POINTER (size),
+ GINT_TO_POINTER (frame->text_height));
+ }
+
+ pango_layout_set_font_description (frame->layout,
+ font_desc);
+
+ pango_font_description_free (font_desc);
+
+ /* Save some RAM */
+ g_free (frame->title);
+ frame->title = NULL;
+ }
+}
+
+static void
+meta_frames_calc_geometry (MetaFrames *frames,
+ MetaUIFrame *frame,
+ MetaFrameGeometry *fgeom)
+{
+ int width, height;
+ MetaFrameFlags flags;
+ MetaFrameType type;
+ MetaButtonLayout button_layout;
+
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_CLIENT_WIDTH, &width,
+ META_CORE_GET_CLIENT_HEIGHT, &height,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_FRAME_TYPE, &type,
+ META_CORE_GET_END);
+
+ meta_frames_ensure_layout (frames, frame);
+
+ meta_prefs_get_button_layout (&button_layout);
+
+ meta_theme_calc_geometry (meta_theme_get_current (),
+ type,
+ frame->text_height,
+ flags,
+ width, height,
+ &button_layout,
+ fgeom);
+}
+
+MetaFrames*
+meta_frames_new (int screen_number)
+{
+ GdkScreen *screen;
+
+ screen = gdk_display_get_screen (gdk_display_get_default (),
+ screen_number);
+
+ return g_object_new (META_TYPE_FRAMES,
+ "screen", screen,
+ NULL);
+}
+
+/* In order to use a style with a window it has to be attached to that
+ * window. Actually, the colormaps just have to match, but since GTK+
+ * already takes care of making sure that its cheap to attach a style
+ * to multiple windows with the same colormap, we can just go ahead
+ * and attach separately for each window.
+ */
+static void
+meta_frames_attach_style (MetaFrames *frames,
+ MetaUIFrame *frame)
+{
+ if (frame->style != NULL)
+ gtk_style_detach (frame->style);
+
+ /* Weirdly, gtk_style_attach() steals a reference count from the style passed in */
+ g_object_ref (GTK_WIDGET (frames)->style);
+ frame->style = gtk_style_attach (GTK_WIDGET (frames)->style, frame->window);
+}
+
+void
+meta_frames_manage_window (MetaFrames *frames,
+ Window xwindow,
+ GdkWindow *window)
+{
+ MetaUIFrame *frame;
+
+ g_assert (window);
+
+ frame = g_new (MetaUIFrame, 1);
+
+ frame->window = window;
+
+ gdk_window_set_user_data (frame->window, frames);
+
+ frame->style = NULL;
+ meta_frames_attach_style (frames, frame);
+
+ /* Don't set event mask here, it's in frame.c */
+
+ frame->xwindow = xwindow;
+ frame->cache_style = NULL;
+ frame->layout = NULL;
+ frame->text_height = -1;
+ frame->title = NULL;
+ frame->expose_delayed = FALSE;
+ frame->shape_applied = FALSE;
+ frame->prelit_control = META_FRAME_CONTROL_NONE;
+
+ /* Don't set the window background yet; we need frame->xwindow to be
+ * registered with its MetaWindow, which happens after this function
+ * and meta_ui_create_frame_window() return to meta_window_ensure_frame().
+ */
+
+ meta_core_grab_buttons (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+
+ g_hash_table_replace (frames->frames, &frame->xwindow, frame);
+}
+
+void
+meta_frames_unmanage_window (MetaFrames *frames,
+ Window xwindow)
+{
+ MetaUIFrame *frame;
+
+ clear_tip (frames);
+
+ frame = g_hash_table_lookup (frames->frames, &xwindow);
+
+ if (frame)
+ {
+ /* invalidating all caches ensures the frame
+ * is not actually referenced anymore
+ */
+ invalidate_all_caches (frames);
+
+ /* restore the cursor */
+ meta_core_set_screen_cursor (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ META_CURSOR_DEFAULT);
+
+ gdk_window_set_user_data (frame->window, NULL);
+
+ if (frames->last_motion_frame == frame)
+ frames->last_motion_frame = NULL;
+
+ g_hash_table_remove (frames->frames, &frame->xwindow);
+
+ gtk_style_detach (frame->style);
+
+ gdk_window_destroy (frame->window);
+
+ if (frame->layout)
+ g_object_unref (G_OBJECT (frame->layout));
+
+ if (frame->title)
+ g_free (frame->title);
+
+ g_free (frame);
+ }
+ else
+ meta_warning ("Frame 0x%lx not managed, can't unmanage\n", xwindow);
+}
+
+static void
+meta_frames_realize (GtkWidget *widget)
+{
+ if (GTK_WIDGET_CLASS (parent_class)->realize)
+ GTK_WIDGET_CLASS (parent_class)->realize (widget);
+}
+
+static void
+meta_frames_unrealize (GtkWidget *widget)
+{
+ if (GTK_WIDGET_CLASS (parent_class)->unrealize)
+ GTK_WIDGET_CLASS (parent_class)->unrealize (widget);
+}
+
+static MetaUIFrame*
+meta_frames_lookup_window (MetaFrames *frames,
+ Window xwindow)
+{
+ MetaUIFrame *frame;
+
+ frame = g_hash_table_lookup (frames->frames, &xwindow);
+
+ return frame;
+}
+
+void
+meta_frames_get_geometry (MetaFrames *frames,
+ Window xwindow,
+ int *top_height, int *bottom_height,
+ int *left_width, int *right_width)
+{
+ MetaFrameFlags flags;
+ MetaUIFrame *frame;
+ MetaFrameType type;
+
+ frame = meta_frames_lookup_window (frames, xwindow);
+
+ if (frame == NULL)
+ meta_bug ("No such frame 0x%lx\n", xwindow);
+
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_FRAME_TYPE, &type,
+ META_CORE_GET_END);
+
+ g_return_if_fail (type < META_FRAME_TYPE_LAST);
+
+ meta_frames_ensure_layout (frames, frame);
+
+ /* We can't get the full geometry, because that depends on
+ * the client window size and probably we're being called
+ * by the core move/resize code to decide on the client
+ * window size
+ */
+ meta_theme_get_frame_borders (meta_theme_get_current (),
+ type,
+ frame->text_height,
+ flags,
+ top_height, bottom_height,
+ left_width, right_width);
+}
+
+void
+meta_frames_reset_bg (MetaFrames *frames,
+ Window xwindow)
+{
+ MetaUIFrame *frame;
+
+ frame = meta_frames_lookup_window (frames, xwindow);
+
+ meta_frames_set_window_background (frames, frame);
+}
+
+static void
+set_background_none (Display *xdisplay,
+ Window xwindow)
+{
+ XSetWindowAttributes attrs;
+
+ attrs.background_pixmap = None;
+ XChangeWindowAttributes (xdisplay, xwindow,
+ CWBackPixmap, &attrs);
+}
+
+void
+meta_frames_unflicker_bg (MetaFrames *frames,
+ Window xwindow,
+ int target_width,
+ int target_height)
+{
+ MetaUIFrame *frame;
+
+ frame = meta_frames_lookup_window (frames, xwindow);
+ g_return_if_fail (frame != NULL);
+
+#if 0
+ pixmap = gdk_pixmap_new (frame->window,
+ width, height,
+ -1);
+
+ /* Oops, no way to get the background here */
+
+ meta_frames_paint_to_drawable (frames, frame, pixmap);
+#endif
+
+ set_background_none (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+}
+
+void
+meta_frames_apply_shapes (MetaFrames *frames,
+ Window xwindow,
+ int new_window_width,
+ int new_window_height,
+ gboolean window_has_shape)
+{
+#ifdef HAVE_SHAPE
+ /* Apply shapes as if window had new_window_width, new_window_height */
+ MetaUIFrame *frame;
+ MetaFrameGeometry fgeom;
+ XRectangle xrect;
+ Region corners_xregion;
+ Region window_xregion;
+
+ frame = meta_frames_lookup_window (frames, xwindow);
+ g_return_if_fail (frame != NULL);
+
+ meta_frames_calc_geometry (frames, frame, &fgeom);
+
+ if (!(fgeom.top_left_corner_rounded_radius != 0 ||
+ fgeom.top_right_corner_rounded_radius != 0 ||
+ fgeom.bottom_left_corner_rounded_radius != 0 ||
+ fgeom.bottom_right_corner_rounded_radius != 0 ||
+ window_has_shape))
+ {
+ if (frame->shape_applied)
+ {
+ meta_topic (META_DEBUG_SHAPES,
+ "Unsetting shape mask on frame 0x%lx\n",
+ frame->xwindow);
+
+ XShapeCombineMask (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ ShapeBounding, 0, 0, None, ShapeSet);
+ frame->shape_applied = FALSE;
+ }
+ else
+ {
+ meta_topic (META_DEBUG_SHAPES,
+ "Frame 0x%lx still doesn't need a shape mask\n",
+ frame->xwindow);
+ }
+
+ return; /* nothing to do */
+ }
+
+ corners_xregion = XCreateRegion ();
+
+ if (fgeom.top_left_corner_rounded_radius != 0)
+ {
+ const int corner = fgeom.top_left_corner_rounded_radius;
+ const float radius = sqrt(corner) + corner;
+ int i;
+
+ for (i=0; i<corner; i++)
+ {
+ const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5))));
+ xrect.x = 0;
+ xrect.y = i;
+ xrect.width = width;
+ xrect.height = 1;
+
+ XUnionRectWithRegion (&xrect, corners_xregion, corners_xregion);
+ }
+ }
+
+ if (fgeom.top_right_corner_rounded_radius != 0)
+ {
+ const int corner = fgeom.top_right_corner_rounded_radius;
+ const float radius = sqrt(corner) + corner;
+ int i;
+
+ for (i=0; i<corner; i++)
+ {
+ const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5))));
+ xrect.x = new_window_width - width;
+ xrect.y = i;
+ xrect.width = width;
+ xrect.height = 1;
+
+ XUnionRectWithRegion (&xrect, corners_xregion, corners_xregion);
+ }
+ }
+
+ if (fgeom.bottom_left_corner_rounded_radius != 0)
+ {
+ const int corner = fgeom.bottom_left_corner_rounded_radius;
+ const float radius = sqrt(corner) + corner;
+ int i;
+
+ for (i=0; i<corner; i++)
+ {
+ const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5))));
+ xrect.x = 0;
+ xrect.y = new_window_height - i - 1;
+ xrect.width = width;
+ xrect.height = 1;
+
+ XUnionRectWithRegion (&xrect, corners_xregion, corners_xregion);
+ }
+ }
+
+ if (fgeom.bottom_right_corner_rounded_radius != 0)
+ {
+ const int corner = fgeom.bottom_right_corner_rounded_radius;
+ const float radius = sqrt(corner) + corner;
+ int i;
+
+ for (i=0; i<corner; i++)
+ {
+ const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5))));
+ xrect.x = new_window_width - width;
+ xrect.y = new_window_height - i - 1;
+ xrect.width = width;
+ xrect.height = 1;
+
+ XUnionRectWithRegion (&xrect, corners_xregion, corners_xregion);
+ }
+ }
+
+ window_xregion = XCreateRegion ();
+
+ xrect.x = 0;
+ xrect.y = 0;
+ xrect.width = new_window_width;
+ xrect.height = new_window_height;
+
+ XUnionRectWithRegion (&xrect, window_xregion, window_xregion);
+
+ XSubtractRegion (window_xregion, corners_xregion, window_xregion);
+
+ XDestroyRegion (corners_xregion);
+
+ if (window_has_shape)
+ {
+ /* The client window is oclock or something and has a shape
+ * mask. To avoid a round trip to get its shape region, we
+ * create a fake window that's never mapped, build up our shape
+ * on that, then combine. Wasting the window is assumed cheaper
+ * than a round trip, but who really knows for sure.
+ */
+ XSetWindowAttributes attrs;
+ Window shape_window;
+ Window client_window;
+ Region client_xregion;
+ GdkScreen *screen;
+ int screen_number;
+
+ meta_topic (META_DEBUG_SHAPES,
+ "Frame 0x%lx needs to incorporate client shape\n",
+ frame->xwindow);
+
+ screen = gtk_widget_get_screen (GTK_WIDGET (frames));
+ screen_number = gdk_x11_screen_get_screen_number (screen);
+
+ attrs.override_redirect = True;
+
+ shape_window = XCreateWindow (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ RootWindow (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), screen_number),
+ -5000, -5000,
+ new_window_width,
+ new_window_height,
+ 0,
+ CopyFromParent,
+ CopyFromParent,
+ (Visual *)CopyFromParent,
+ CWOverrideRedirect,
+ &attrs);
+
+ /* Copy the client's shape to the temporary shape_window */
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_CLIENT_XWINDOW, &client_window,
+ META_CORE_GET_END);
+
+ XShapeCombineShape (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), shape_window, ShapeBounding,
+ fgeom.left_width,
+ fgeom.top_height,
+ client_window,
+ ShapeBounding,
+ ShapeSet);
+
+ /* Punch the client area out of the normal frame shape,
+ * then union it with the shape_window's existing shape
+ */
+ client_xregion = XCreateRegion ();
+
+ xrect.x = fgeom.left_width;
+ xrect.y = fgeom.top_height;
+ xrect.width = new_window_width - fgeom.right_width - xrect.x;
+ xrect.height = new_window_height - fgeom.bottom_height - xrect.y;
+
+ XUnionRectWithRegion (&xrect, client_xregion, client_xregion);
+
+ XSubtractRegion (window_xregion, client_xregion, window_xregion);
+
+ XDestroyRegion (client_xregion);
+
+ XShapeCombineRegion (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), shape_window,
+ ShapeBounding, 0, 0, window_xregion, ShapeUnion);
+
+ /* Now copy shape_window shape to the real frame */
+ XShapeCombineShape (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow, ShapeBounding,
+ 0, 0,
+ shape_window,
+ ShapeBounding,
+ ShapeSet);
+
+ XDestroyWindow (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), shape_window);
+ }
+ else
+ {
+ /* No shape on the client, so just do simple stuff */
+
+ meta_topic (META_DEBUG_SHAPES,
+ "Frame 0x%lx has shaped corners\n",
+ frame->xwindow);
+
+ XShapeCombineRegion (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ ShapeBounding, 0, 0, window_xregion, ShapeSet);
+ }
+
+ frame->shape_applied = TRUE;
+
+ XDestroyRegion (window_xregion);
+#endif /* HAVE_SHAPE */
+}
+
+void
+meta_frames_move_resize_frame (MetaFrames *frames,
+ Window xwindow,
+ int x,
+ int y,
+ int width,
+ int height)
+{
+ MetaUIFrame *frame = meta_frames_lookup_window (frames, xwindow);
+ int old_x, old_y, old_width, old_height;
+
+ #if GTK_CHECK_VERSION(3, 0, 0)
+ old_width = gdk_window_get_width(GDK_WINDOW(frame->window));
+ old_height = gdk_window_get_height(GDK_WINDOW(frame->window));
+ #else
+ gdk_drawable_get_size(frame->window, &old_width, &old_height);
+ #endif
+
+ gdk_window_get_position (frame->window, &old_x, &old_y);
+
+ gdk_window_move_resize (frame->window, x, y, width, height);
+
+ if (old_width != width || old_height != height)
+ invalidate_whole_window (frames, frame);
+}
+
+void
+meta_frames_queue_draw (MetaFrames *frames,
+ Window xwindow)
+{
+ MetaUIFrame *frame;
+
+ frame = meta_frames_lookup_window (frames, xwindow);
+
+ invalidate_whole_window (frames, frame);
+}
+
+void
+meta_frames_set_title (MetaFrames *frames,
+ Window xwindow,
+ const char *title)
+{
+ MetaUIFrame *frame;
+
+ frame = meta_frames_lookup_window (frames, xwindow);
+
+ g_assert (frame);
+
+ g_free (frame->title);
+ frame->title = g_strdup (title);
+
+ if (frame->layout)
+ {
+ g_object_unref (frame->layout);
+ frame->layout = NULL;
+ }
+
+ invalidate_whole_window (frames, frame);
+}
+
+void
+meta_frames_repaint_frame (MetaFrames *frames,
+ Window xwindow)
+{
+ MetaUIFrame *frame;
+
+ frame = meta_frames_lookup_window (frames, xwindow);
+
+ g_assert (frame);
+
+ /* repaint everything, so the other frame don't
+ * lag behind if they are exposed
+ */
+ gdk_window_process_all_updates ();
+}
+
+static void
+show_tip_now (MetaFrames *frames)
+{
+ const char *tiptext;
+ MetaUIFrame *frame;
+ int x, y, root_x, root_y;
+ Window root, child;
+ guint mask;
+ MetaFrameControl control;
+
+ frame = frames->last_motion_frame;
+ if (frame == NULL)
+ return;
+
+ XQueryPointer (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ &root, &child,
+ &root_x, &root_y,
+ &x, &y,
+ &mask);
+
+ control = get_control (frames, frame, x, y);
+
+ tiptext = NULL;
+ switch (control)
+ {
+ case META_FRAME_CONTROL_TITLE:
+ break;
+ case META_FRAME_CONTROL_DELETE:
+ tiptext = _("Close Window");
+ break;
+ case META_FRAME_CONTROL_MENU:
+ tiptext = _("Window Menu");
+ break;
+ case META_FRAME_CONTROL_MINIMIZE:
+ tiptext = _("Minimize Window");
+ break;
+ case META_FRAME_CONTROL_MAXIMIZE:
+ tiptext = _("Maximize Window");
+ break;
+ case META_FRAME_CONTROL_UNMAXIMIZE:
+ tiptext = _("Restore Window");
+ break;
+ case META_FRAME_CONTROL_SHADE:
+ tiptext = _("Roll Up Window");
+ break;
+ case META_FRAME_CONTROL_UNSHADE:
+ tiptext = _("Unroll Window");
+ break;
+ case META_FRAME_CONTROL_ABOVE:
+ tiptext = _("Keep Window On Top");
+ break;
+ case META_FRAME_CONTROL_UNABOVE:
+ tiptext = _("Remove Window From Top");
+ break;
+ case META_FRAME_CONTROL_STICK:
+ tiptext = _("Always On Visible Workspace");
+ break;
+ case META_FRAME_CONTROL_UNSTICK:
+ tiptext = _("Put Window On Only One Workspace");
+ break;
+ case META_FRAME_CONTROL_RESIZE_SE:
+ break;
+ case META_FRAME_CONTROL_RESIZE_S:
+ break;
+ case META_FRAME_CONTROL_RESIZE_SW:
+ break;
+ case META_FRAME_CONTROL_RESIZE_N:
+ break;
+ case META_FRAME_CONTROL_RESIZE_NE:
+ break;
+ case META_FRAME_CONTROL_RESIZE_NW:
+ break;
+ case META_FRAME_CONTROL_RESIZE_W:
+ break;
+ case META_FRAME_CONTROL_RESIZE_E:
+ break;
+ case META_FRAME_CONTROL_NONE:
+ break;
+ case META_FRAME_CONTROL_CLIENT_AREA:
+ break;
+ }
+
+ if (tiptext)
+ {
+ MetaFrameGeometry fgeom;
+ GdkRectangle *rect;
+ int dx, dy;
+ int screen_number;
+
+ meta_frames_calc_geometry (frames, frame, &fgeom);
+
+ rect = control_rect (control, &fgeom);
+
+ /* get conversion delta for root-to-frame coords */
+ dx = root_x - x;
+ dy = root_y - y;
+
+ /* Align the tooltip to the button right end if RTL */
+ if (meta_ui_get_direction() == META_UI_DIRECTION_RTL)
+ dx += rect->width;
+
+ screen_number = gdk_screen_get_number (gtk_widget_get_screen (GTK_WIDGET (frames)));
+
+ meta_fixed_tip_show (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ screen_number,
+ rect->x + dx,
+ rect->y + rect->height + 2 + dy,
+ tiptext);
+ }
+}
+
+static gboolean
+tip_timeout_func (gpointer data)
+{
+ MetaFrames *frames;
+
+ frames = data;
+
+ show_tip_now (frames);
+
+ return FALSE;
+}
+
+#define TIP_DELAY 450
+static void
+queue_tip (MetaFrames *frames)
+{
+ clear_tip (frames);
+
+ frames->tooltip_timeout = g_timeout_add (TIP_DELAY,
+ tip_timeout_func,
+ frames);
+}
+
+static void
+clear_tip (MetaFrames *frames)
+{
+ if (frames->tooltip_timeout)
+ {
+ g_source_remove (frames->tooltip_timeout);
+ frames->tooltip_timeout = 0;
+ }
+ meta_fixed_tip_hide ();
+}
+
+static void
+redraw_control (MetaFrames *frames,
+ MetaUIFrame *frame,
+ MetaFrameControl control)
+{
+ MetaFrameGeometry fgeom;
+ GdkRectangle *rect;
+
+ meta_frames_calc_geometry (frames, frame, &fgeom);
+
+ rect = control_rect (control, &fgeom);
+
+ gdk_window_invalidate_rect (frame->window, rect, FALSE);
+ invalidate_cache (frames, frame);
+}
+
+static gboolean
+meta_frame_titlebar_event (MetaUIFrame *frame,
+ GdkEventButton *event,
+ int action)
+{
+ MetaFrameFlags flags;
+
+ switch (action)
+ {
+ case META_ACTION_TITLEBAR_TOGGLE_SHADE:
+ {
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_END);
+
+ if (flags & META_FRAME_ALLOWS_SHADE)
+ {
+ if (flags & META_FRAME_SHADED)
+ meta_core_unshade (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ event->time);
+ else
+ meta_core_shade (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ event->time);
+ }
+ }
+ break;
+
+ case META_ACTION_TITLEBAR_TOGGLE_MAXIMIZE:
+ {
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_END);
+
+ if (flags & META_FRAME_ALLOWS_MAXIMIZE)
+ {
+ meta_core_toggle_maximize (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+ }
+ }
+ break;
+
+ case META_ACTION_TITLEBAR_TOGGLE_MAXIMIZE_HORIZONTALLY:
+ {
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_END);
+
+ if (flags & META_FRAME_ALLOWS_MAXIMIZE)
+ {
+ meta_core_toggle_maximize_horizontally (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+ }
+ }
+ break;
+
+ case META_ACTION_TITLEBAR_TOGGLE_MAXIMIZE_VERTICALLY:
+ {
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_END);
+
+ if (flags & META_FRAME_ALLOWS_MAXIMIZE)
+ {
+ meta_core_toggle_maximize_vertically (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+ }
+ }
+ break;
+
+ case META_ACTION_TITLEBAR_MINIMIZE:
+ {
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_END);
+
+ if (flags & META_FRAME_ALLOWS_MINIMIZE)
+ {
+ meta_core_minimize (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+ }
+ }
+ break;
+
+ case META_ACTION_TITLEBAR_NONE:
+ /* Yaay, a sane user that doesn't use that other weird crap! */
+ break;
+
+ case META_ACTION_TITLEBAR_LOWER:
+ meta_core_user_lower_and_unfocus (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ event->time);
+ break;
+
+ case META_ACTION_TITLEBAR_MENU:
+ meta_core_show_window_menu (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ event->x_root,
+ event->y_root,
+ event->button,
+ event->time);
+ break;
+
+ case META_ACTION_TITLEBAR_LAST:
+ break;
+ }
+
+ return TRUE;
+}
+
+static gboolean
+meta_frame_double_click_event (MetaUIFrame *frame,
+ GdkEventButton *event)
+{
+ int action = meta_prefs_get_action_double_click_titlebar ();
+
+ return meta_frame_titlebar_event (frame, event, action);
+}
+
+static gboolean
+meta_frame_middle_click_event (MetaUIFrame *frame,
+ GdkEventButton *event)
+{
+ int action = meta_prefs_get_action_middle_click_titlebar();
+
+ return meta_frame_titlebar_event (frame, event, action);
+}
+
+static gboolean
+meta_frame_right_click_event(MetaUIFrame *frame,
+ GdkEventButton *event)
+{
+ int action = meta_prefs_get_action_right_click_titlebar();
+
+ return meta_frame_titlebar_event (frame, event, action);
+}
+
+static gboolean
+meta_frames_button_press_event (GtkWidget *widget,
+ GdkEventButton *event)
+{
+ MetaUIFrame *frame;
+ MetaFrames *frames;
+ MetaFrameControl control;
+
+ frames = META_FRAMES (widget);
+
+ /* Remember that the display may have already done something with this event.
+ * If so there's probably a GrabOp in effect.
+ */
+
+ frame = meta_frames_lookup_window (frames, GDK_WINDOW_XID (event->window));
+ if (frame == NULL)
+ return FALSE;
+
+ clear_tip (frames);
+
+ control = get_control (frames, frame, event->x, event->y);
+
+ /* focus on click, even if click was on client area */
+ if (event->button == 1 &&
+ !(control == META_FRAME_CONTROL_MINIMIZE ||
+ control == META_FRAME_CONTROL_DELETE ||
+ control == META_FRAME_CONTROL_MAXIMIZE))
+ {
+ meta_topic (META_DEBUG_FOCUS,
+ "Focusing window with frame 0x%lx due to button 1 press\n",
+ frame->xwindow);
+ meta_core_user_focus (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ event->time);
+ }
+
+ /* don't do the rest of this if on client area */
+ if (control == META_FRAME_CONTROL_CLIENT_AREA)
+ return FALSE; /* not on the frame, just passed through from client */
+
+ /* We want to shade even if we have a GrabOp, since we'll have a move grab
+ * if we double click the titlebar.
+ */
+ if (control == META_FRAME_CONTROL_TITLE &&
+ event->button == 1 &&
+ event->type == GDK_2BUTTON_PRESS)
+ {
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ return meta_frame_double_click_event (frame, event);
+ }
+
+ if (meta_core_get_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ())) !=
+ META_GRAB_OP_NONE)
+ return FALSE; /* already up to something */
+
+ if (event->button == 1 &&
+ (control == META_FRAME_CONTROL_MAXIMIZE ||
+ control == META_FRAME_CONTROL_UNMAXIMIZE ||
+ control == META_FRAME_CONTROL_MINIMIZE ||
+ control == META_FRAME_CONTROL_DELETE ||
+ control == META_FRAME_CONTROL_SHADE ||
+ control == META_FRAME_CONTROL_UNSHADE ||
+ control == META_FRAME_CONTROL_ABOVE ||
+ control == META_FRAME_CONTROL_UNABOVE ||
+ control == META_FRAME_CONTROL_STICK ||
+ control == META_FRAME_CONTROL_UNSTICK ||
+ control == META_FRAME_CONTROL_MENU))
+ {
+ MetaGrabOp op = META_GRAB_OP_NONE;
+
+ switch (control)
+ {
+ case META_FRAME_CONTROL_MINIMIZE:
+ op = META_GRAB_OP_CLICKING_MINIMIZE;
+ break;
+ case META_FRAME_CONTROL_MAXIMIZE:
+ op = META_GRAB_OP_CLICKING_MAXIMIZE;
+ break;
+ case META_FRAME_CONTROL_UNMAXIMIZE:
+ op = META_GRAB_OP_CLICKING_UNMAXIMIZE;
+ break;
+ case META_FRAME_CONTROL_DELETE:
+ op = META_GRAB_OP_CLICKING_DELETE;
+ break;
+ case META_FRAME_CONTROL_MENU:
+ op = META_GRAB_OP_CLICKING_MENU;
+ break;
+ case META_FRAME_CONTROL_SHADE:
+ op = META_GRAB_OP_CLICKING_SHADE;
+ break;
+ case META_FRAME_CONTROL_UNSHADE:
+ op = META_GRAB_OP_CLICKING_UNSHADE;
+ break;
+ case META_FRAME_CONTROL_ABOVE:
+ op = META_GRAB_OP_CLICKING_ABOVE;
+ break;
+ case META_FRAME_CONTROL_UNABOVE:
+ op = META_GRAB_OP_CLICKING_UNABOVE;
+ break;
+ case META_FRAME_CONTROL_STICK:
+ op = META_GRAB_OP_CLICKING_STICK;
+ break;
+ case META_FRAME_CONTROL_UNSTICK:
+ op = META_GRAB_OP_CLICKING_UNSTICK;
+ break;
+ default:
+ g_assert_not_reached ();
+ break;
+ }
+
+ meta_core_begin_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ op,
+ TRUE,
+ TRUE,
+ event->button,
+ 0,
+ event->time,
+ event->x_root,
+ event->y_root);
+
+ frame->prelit_control = control;
+ redraw_control (frames, frame, control);
+
+ if (op == META_GRAB_OP_CLICKING_MENU)
+ {
+ MetaFrameGeometry fgeom;
+ GdkRectangle *rect;
+ int dx, dy;
+
+ meta_frames_calc_geometry (frames, frame, &fgeom);
+
+ rect = control_rect (META_FRAME_CONTROL_MENU, &fgeom);
+
+ /* get delta to convert to root coords */
+ dx = event->x_root - event->x;
+ dy = event->y_root - event->y;
+
+ /* Align to the right end of the menu rectangle if RTL */
+ if (meta_ui_get_direction() == META_UI_DIRECTION_RTL)
+ dx += rect->width;
+
+ meta_core_show_window_menu (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ rect->x + dx,
+ rect->y + rect->height + dy,
+ event->button,
+ event->time);
+ }
+ }
+ else if (event->button == 1 &&
+ (control == META_FRAME_CONTROL_RESIZE_SE ||
+ control == META_FRAME_CONTROL_RESIZE_S ||
+ control == META_FRAME_CONTROL_RESIZE_SW ||
+ control == META_FRAME_CONTROL_RESIZE_NE ||
+ control == META_FRAME_CONTROL_RESIZE_N ||
+ control == META_FRAME_CONTROL_RESIZE_NW ||
+ control == META_FRAME_CONTROL_RESIZE_E ||
+ control == META_FRAME_CONTROL_RESIZE_W))
+ {
+ MetaGrabOp op;
+ gboolean titlebar_is_onscreen;
+
+ op = META_GRAB_OP_NONE;
+
+ switch (control)
+ {
+ case META_FRAME_CONTROL_RESIZE_SE:
+ op = META_GRAB_OP_RESIZING_SE;
+ break;
+ case META_FRAME_CONTROL_RESIZE_S:
+ op = META_GRAB_OP_RESIZING_S;
+ break;
+ case META_FRAME_CONTROL_RESIZE_SW:
+ op = META_GRAB_OP_RESIZING_SW;
+ break;
+ case META_FRAME_CONTROL_RESIZE_NE:
+ op = META_GRAB_OP_RESIZING_NE;
+ break;
+ case META_FRAME_CONTROL_RESIZE_N:
+ op = META_GRAB_OP_RESIZING_N;
+ break;
+ case META_FRAME_CONTROL_RESIZE_NW:
+ op = META_GRAB_OP_RESIZING_NW;
+ break;
+ case META_FRAME_CONTROL_RESIZE_E:
+ op = META_GRAB_OP_RESIZING_E;
+ break;
+ case META_FRAME_CONTROL_RESIZE_W:
+ op = META_GRAB_OP_RESIZING_W;
+ break;
+ default:
+ g_assert_not_reached ();
+ break;
+ }
+
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_IS_TITLEBAR_ONSCREEN, &titlebar_is_onscreen,
+ META_CORE_GET_END);
+
+ if (!titlebar_is_onscreen)
+ meta_core_show_window_menu (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ event->x_root,
+ event->y_root,
+ event->button,
+ event->time);
+ else
+ meta_core_begin_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ op,
+ TRUE,
+ TRUE,
+ event->button,
+ 0,
+ event->time,
+ event->x_root,
+ event->y_root);
+ }
+ else if (control == META_FRAME_CONTROL_TITLE &&
+ event->button == 1)
+ {
+ MetaFrameFlags flags;
+
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_END);
+
+ if (flags & META_FRAME_ALLOWS_MOVE)
+ {
+ meta_core_begin_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ META_GRAB_OP_MOVING,
+ TRUE,
+ TRUE,
+ event->button,
+ 0,
+ event->time,
+ event->x_root,
+ event->y_root);
+ }
+ }
+ else if (event->button == 2)
+ {
+ return meta_frame_middle_click_event (frame, event);
+ }
+ else if (event->button == 3)
+ {
+ return meta_frame_right_click_event (frame, event);
+ }
+
+ return TRUE;
+}
+
+void
+meta_frames_notify_menu_hide (MetaFrames *frames)
+{
+ if (meta_core_get_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ())) ==
+ META_GRAB_OP_CLICKING_MENU)
+ {
+ Window grab_frame;
+
+ grab_frame = meta_core_get_grab_frame (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+
+ if (grab_frame != None)
+ {
+ MetaUIFrame *frame;
+
+ frame = meta_frames_lookup_window (frames, grab_frame);
+
+ if (frame)
+ {
+ redraw_control (frames, frame,
+ META_FRAME_CONTROL_MENU);
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), CurrentTime);
+ }
+ }
+ }
+}
+
+static gboolean
+meta_frames_button_release_event (GtkWidget *widget,
+ GdkEventButton *event)
+{
+ MetaUIFrame *frame;
+ MetaFrames *frames;
+ MetaGrabOp op;
+
+ frames = META_FRAMES (widget);
+
+ frame = meta_frames_lookup_window (frames, GDK_WINDOW_XID (event->window));
+ if (frame == NULL)
+ return FALSE;
+
+ clear_tip (frames);
+
+ op = meta_core_get_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+
+ if (op == META_GRAB_OP_NONE)
+ return FALSE;
+
+ /* We only handle the releases we handled the presses for (things
+ * involving frame controls). Window ops that don't require a
+ * frame are handled in the Xlib part of the code, display.c/window.c
+ */
+ if (frame->xwindow == meta_core_get_grab_frame (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ())) &&
+ ((int) event->button) == meta_core_get_grab_button (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ())))
+ {
+ MetaFrameControl control;
+
+ control = get_control (frames, frame, event->x, event->y);
+
+ switch (op)
+ {
+ case META_GRAB_OP_CLICKING_MINIMIZE:
+ if (control == META_FRAME_CONTROL_MINIMIZE)
+ meta_core_minimize (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ break;
+
+ case META_GRAB_OP_CLICKING_MAXIMIZE:
+ if (control == META_FRAME_CONTROL_MAXIMIZE)
+ {
+ /* Focus the window on the maximize */
+ meta_core_user_focus (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ event->time);
+ meta_core_maximize (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+ }
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ break;
+
+ case META_GRAB_OP_CLICKING_UNMAXIMIZE:
+ if (control == META_FRAME_CONTROL_UNMAXIMIZE)
+ meta_core_unmaximize (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ break;
+
+ case META_GRAB_OP_CLICKING_DELETE:
+ if (control == META_FRAME_CONTROL_DELETE)
+ meta_core_delete (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow, event->time);
+
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ break;
+
+ case META_GRAB_OP_CLICKING_MENU:
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ break;
+
+ case META_GRAB_OP_CLICKING_SHADE:
+ if (control == META_FRAME_CONTROL_SHADE)
+ meta_core_shade (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow, event->time);
+
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ break;
+
+ case META_GRAB_OP_CLICKING_UNSHADE:
+ if (control == META_FRAME_CONTROL_UNSHADE)
+ meta_core_unshade (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow, event->time);
+
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ break;
+
+ case META_GRAB_OP_CLICKING_ABOVE:
+ if (control == META_FRAME_CONTROL_ABOVE)
+ meta_core_make_above (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ break;
+
+ case META_GRAB_OP_CLICKING_UNABOVE:
+ if (control == META_FRAME_CONTROL_UNABOVE)
+ meta_core_unmake_above (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ break;
+
+ case META_GRAB_OP_CLICKING_STICK:
+ if (control == META_FRAME_CONTROL_STICK)
+ meta_core_stick (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ break;
+
+ case META_GRAB_OP_CLICKING_UNSTICK:
+ if (control == META_FRAME_CONTROL_UNSTICK)
+ meta_core_unstick (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow);
+
+ meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event->time);
+ break;
+
+ default:
+ break;
+ }
+
+ /* Update the prelit control regardless of what button the mouse
+ * was released over; needed so that the new button can become
+ * prelit so to let the user know that it can now be pressed.
+ * :)
+ */
+ meta_frames_update_prelit_control (frames, frame, control);
+ }
+
+ return TRUE;
+}
+
+static void
+meta_frames_update_prelit_control (MetaFrames *frames,
+ MetaUIFrame *frame,
+ MetaFrameControl control)
+{
+ MetaFrameControl old_control;
+ MetaCursor cursor;
+
+
+ meta_verbose ("Updating prelit control from %u to %u\n",
+ frame->prelit_control, control);
+
+ cursor = META_CURSOR_DEFAULT;
+
+ switch (control)
+ {
+ case META_FRAME_CONTROL_CLIENT_AREA:
+ break;
+ case META_FRAME_CONTROL_NONE:
+ break;
+ case META_FRAME_CONTROL_TITLE:
+ break;
+ case META_FRAME_CONTROL_DELETE:
+ break;
+ case META_FRAME_CONTROL_MENU:
+ break;
+ case META_FRAME_CONTROL_MINIMIZE:
+ break;
+ case META_FRAME_CONTROL_MAXIMIZE:
+ break;
+ case META_FRAME_CONTROL_UNMAXIMIZE:
+ break;
+ case META_FRAME_CONTROL_SHADE:
+ break;
+ case META_FRAME_CONTROL_UNSHADE:
+ break;
+ case META_FRAME_CONTROL_ABOVE:
+ break;
+ case META_FRAME_CONTROL_UNABOVE:
+ break;
+ case META_FRAME_CONTROL_STICK:
+ break;
+ case META_FRAME_CONTROL_UNSTICK:
+ break;
+ case META_FRAME_CONTROL_RESIZE_SE:
+ cursor = META_CURSOR_SE_RESIZE;
+ break;
+ case META_FRAME_CONTROL_RESIZE_S:
+ cursor = META_CURSOR_SOUTH_RESIZE;
+ break;
+ case META_FRAME_CONTROL_RESIZE_SW:
+ cursor = META_CURSOR_SW_RESIZE;
+ break;
+ case META_FRAME_CONTROL_RESIZE_N:
+ cursor = META_CURSOR_NORTH_RESIZE;
+ break;
+ case META_FRAME_CONTROL_RESIZE_NE:
+ cursor = META_CURSOR_NE_RESIZE;
+ break;
+ case META_FRAME_CONTROL_RESIZE_NW:
+ cursor = META_CURSOR_NW_RESIZE;
+ break;
+ case META_FRAME_CONTROL_RESIZE_W:
+ cursor = META_CURSOR_WEST_RESIZE;
+ break;
+ case META_FRAME_CONTROL_RESIZE_E:
+ cursor = META_CURSOR_EAST_RESIZE;
+ break;
+ }
+
+ /* set/unset the prelight cursor */
+ meta_core_set_screen_cursor (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ frame->xwindow,
+ cursor);
+
+ switch (control)
+ {
+ case META_FRAME_CONTROL_MENU:
+ case META_FRAME_CONTROL_MINIMIZE:
+ case META_FRAME_CONTROL_MAXIMIZE:
+ case META_FRAME_CONTROL_DELETE:
+ case META_FRAME_CONTROL_SHADE:
+ case META_FRAME_CONTROL_UNSHADE:
+ case META_FRAME_CONTROL_ABOVE:
+ case META_FRAME_CONTROL_UNABOVE:
+ case META_FRAME_CONTROL_STICK:
+ case META_FRAME_CONTROL_UNSTICK:
+ case META_FRAME_CONTROL_UNMAXIMIZE:
+ /* leave control set */
+ break;
+ default:
+ /* Only prelight buttons */
+ control = META_FRAME_CONTROL_NONE;
+ break;
+ }
+
+ if (control == frame->prelit_control)
+ return;
+
+ /* Save the old control so we can unprelight it */
+ old_control = frame->prelit_control;
+
+ frame->prelit_control = control;
+
+ redraw_control (frames, frame, old_control);
+ redraw_control (frames, frame, control);
+}
+
+static gboolean
+meta_frames_motion_notify_event (GtkWidget *widget,
+ GdkEventMotion *event)
+{
+ MetaUIFrame *frame;
+ MetaFrames *frames;
+ MetaGrabOp grab_op;
+
+ frames = META_FRAMES (widget);
+
+ frame = meta_frames_lookup_window (frames, GDK_WINDOW_XID (event->window));
+ if (frame == NULL)
+ return FALSE;
+
+ clear_tip (frames);
+
+ frames->last_motion_frame = frame;
+
+ grab_op = meta_core_get_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+
+ switch (grab_op)
+ {
+ case META_GRAB_OP_CLICKING_MENU:
+ case META_GRAB_OP_CLICKING_DELETE:
+ case META_GRAB_OP_CLICKING_MINIMIZE:
+ case META_GRAB_OP_CLICKING_MAXIMIZE:
+ case META_GRAB_OP_CLICKING_UNMAXIMIZE:
+ case META_GRAB_OP_CLICKING_SHADE:
+ case META_GRAB_OP_CLICKING_UNSHADE:
+ case META_GRAB_OP_CLICKING_ABOVE:
+ case META_GRAB_OP_CLICKING_UNABOVE:
+ case META_GRAB_OP_CLICKING_STICK:
+ case META_GRAB_OP_CLICKING_UNSTICK:
+ {
+ MetaFrameControl control;
+ int x, y;
+
+ gdk_window_get_pointer (frame->window, &x, &y, NULL);
+
+ /* Control is set to none unless it matches
+ * the current grab
+ */
+ control = get_control (frames, frame, x, y);
+ if (! ((control == META_FRAME_CONTROL_MENU &&
+ grab_op == META_GRAB_OP_CLICKING_MENU) ||
+ (control == META_FRAME_CONTROL_DELETE &&
+ grab_op == META_GRAB_OP_CLICKING_DELETE) ||
+ (control == META_FRAME_CONTROL_MINIMIZE &&
+ grab_op == META_GRAB_OP_CLICKING_MINIMIZE) ||
+ ((control == META_FRAME_CONTROL_MAXIMIZE ||
+ control == META_FRAME_CONTROL_UNMAXIMIZE) &&
+ (grab_op == META_GRAB_OP_CLICKING_MAXIMIZE ||
+ grab_op == META_GRAB_OP_CLICKING_UNMAXIMIZE)) ||
+ (control == META_FRAME_CONTROL_SHADE &&
+ grab_op == META_GRAB_OP_CLICKING_SHADE) ||
+ (control == META_FRAME_CONTROL_UNSHADE &&
+ grab_op == META_GRAB_OP_CLICKING_UNSHADE) ||
+ (control == META_FRAME_CONTROL_ABOVE &&
+ grab_op == META_GRAB_OP_CLICKING_ABOVE) ||
+ (control == META_FRAME_CONTROL_UNABOVE &&
+ grab_op == META_GRAB_OP_CLICKING_UNABOVE) ||
+ (control == META_FRAME_CONTROL_STICK &&
+ grab_op == META_GRAB_OP_CLICKING_STICK) ||
+ (control == META_FRAME_CONTROL_UNSTICK &&
+ grab_op == META_GRAB_OP_CLICKING_UNSTICK)))
+ control = META_FRAME_CONTROL_NONE;
+
+ /* Update prelit control and cursor */
+ meta_frames_update_prelit_control (frames, frame, control);
+
+ /* No tooltip while in the process of clicking */
+ }
+ break;
+ case META_GRAB_OP_NONE:
+ {
+ MetaFrameControl control;
+ int x, y;
+
+ gdk_window_get_pointer (frame->window, &x, &y, NULL);
+
+ control = get_control (frames, frame, x, y);
+
+ /* Update prelit control and cursor */
+ meta_frames_update_prelit_control (frames, frame, control);
+
+ queue_tip (frames);
+ }
+ break;
+
+ default:
+ break;
+ }
+
+ return TRUE;
+}
+
+static gboolean
+meta_frames_destroy_event (GtkWidget *widget,
+ GdkEventAny *event)
+{
+ MetaUIFrame *frame;
+ MetaFrames *frames;
+
+ frames = META_FRAMES (widget);
+
+ frame = meta_frames_lookup_window (frames, GDK_WINDOW_XID (event->window));
+ if (frame == NULL)
+ return FALSE;
+
+ return TRUE;
+}
+
+#if !GTK_CHECK_VERSION(2,21,6)
+/* Copied from GDK */
+static cairo_surface_t *
+_gdk_drawable_ref_cairo_surface (GdkDrawable *drawable)
+{
+ g_return_val_if_fail (GDK_IS_DRAWABLE (drawable), NULL);
+
+ return GDK_DRAWABLE_GET_CLASS (drawable)->ref_cairo_surface (drawable);
+}
+
+static cairo_pattern_t *
+gdk_window_get_background_pattern (GdkWindow *window)
+{
+ GdkWindowObject *private = (GdkWindowObject *) window;
+ cairo_pattern_t *pattern;
+
+ g_return_val_if_fail (GDK_IS_WINDOW (window), NULL);
+
+ if (private->bg_pixmap == GDK_PARENT_RELATIVE_BG)
+ pattern = NULL;
+ else if (private->bg_pixmap != GDK_NO_BG &&
+ private->bg_pixmap != NULL)
+ {
+ static cairo_user_data_key_t key;
+ cairo_surface_t *surface;
+
+ surface = _gdk_drawable_ref_cairo_surface (private->bg_pixmap);
+ pattern = cairo_pattern_create_for_surface (surface);
+ cairo_surface_destroy (surface);
+
+ cairo_pattern_set_extend (pattern, CAIRO_EXTEND_REPEAT);
+ cairo_pattern_set_user_data (pattern,
+ &key,
+ g_object_ref (private->bg_pixmap),
+ g_object_unref);
+ }
+ else
+ {
+ pattern =
+ cairo_pattern_create_rgb (private->bg_color.red / 65535.,
+ private->bg_color.green / 65535.,
+ private->bg_color.blue / 65535.);
+ }
+
+ return pattern;
+}
+#endif
+
+static void
+setup_bg_cr (cairo_t *cr, GdkWindow *window, int x_offset, int y_offset)
+{
+ GdkWindow *parent = gdk_window_get_parent (window);
+ cairo_pattern_t *bg_pattern;
+
+ bg_pattern = gdk_window_get_background_pattern (window);
+ if (bg_pattern == NULL && parent)
+ {
+ gint window_x, window_y;
+
+ gdk_window_get_position (window, &window_x, &window_y);
+ setup_bg_cr (cr, parent, x_offset + window_x, y_offset + window_y);
+ }
+ else if (bg_pattern)
+ {
+ cairo_translate (cr, - x_offset, - y_offset);
+ cairo_set_source (cr, bg_pattern);
+ cairo_translate (cr, x_offset, y_offset);
+ }
+}
+
+static void
+clear_backing (GdkPixmap *pixmap,
+ GdkWindow *window,
+ int xoffset, int yoffset)
+{
+ int width, height;
+ cairo_t *cr = gdk_cairo_create (pixmap);
+
+ setup_bg_cr (cr, window, xoffset, yoffset);
+
+ #if GTK_CHECK_VERSION(3, 0, 0)
+ width = gdk_window_get_width(GDK_WINDOW(pixmap));
+ height = gdk_window_get_height(GDK_WINDOW(pixmap));
+ #else
+ gdk_drawable_get_size(GDK_DRAWABLE(pixmap), &width, &height);
+ #endif
+
+ cairo_rectangle (cr, 0, 0, width, height);
+ cairo_fill (cr);
+
+ cairo_destroy (cr);
+}
+
+/* Returns a pixmap with a piece of the windows frame painted on it.
+*/
+
+static GdkPixmap *
+generate_pixmap (MetaFrames *frames,
+ MetaUIFrame *frame,
+ MetaRectangle rect)
+{
+ GdkRectangle rectangle;
+ GdkRegion *region;
+ GdkPixmap *result;
+
+ rectangle.x = rect.x;
+ rectangle.y = rect.y;
+ rectangle.width = MAX (rect.width, 1);
+ rectangle.height = MAX (rect.height, 1);
+
+ result = gdk_pixmap_new (frame->window,
+ rectangle.width, rectangle.height, -1);
+
+ clear_backing (result, frame->window, rectangle.x, rectangle.y);
+
+ region = gdk_region_rectangle (&rectangle);
+
+ meta_frames_paint_to_drawable (frames, frame, result, region,
+ -rectangle.x, -rectangle.y);
+
+ gdk_region_destroy (region);
+
+ return result;
+}
+
+
+static void
+populate_cache (MetaFrames *frames,
+ MetaUIFrame *frame)
+{
+ int top, bottom, left, right;
+ int width, height;
+ int frame_width, frame_height, screen_width, screen_height;
+ CachedPixels *pixels;
+ MetaFrameType frame_type;
+ MetaFrameFlags frame_flags;
+ int i;
+
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_WIDTH, &frame_width,
+ META_CORE_GET_FRAME_HEIGHT, &frame_height,
+ META_CORE_GET_SCREEN_WIDTH, &screen_width,
+ META_CORE_GET_SCREEN_HEIGHT, &screen_height,
+ META_CORE_GET_CLIENT_WIDTH, &width,
+ META_CORE_GET_CLIENT_HEIGHT, &height,
+ META_CORE_GET_FRAME_TYPE, &frame_type,
+ META_CORE_GET_FRAME_FLAGS, &frame_flags,
+ META_CORE_GET_END);
+
+ /* don't cache extremely large windows */
+ if (frame_width > 2 * screen_width ||
+ frame_height > 2 * screen_height)
+ {
+ return;
+ }
+
+ meta_theme_get_frame_borders (meta_theme_get_current (),
+ frame_type,
+ frame->text_height,
+ frame_flags,
+ &top, &bottom, &left, &right);
+
+ pixels = get_cache (frames, frame);
+
+ /* Setup the rectangles for the four frame borders. First top, then
+ left, right and bottom. */
+ pixels->piece[0].rect.x = 0;
+ pixels->piece[0].rect.y = 0;
+ pixels->piece[0].rect.width = left + width + right;
+ pixels->piece[0].rect.height = top;
+
+ pixels->piece[1].rect.x = 0;
+ pixels->piece[1].rect.y = top;
+ pixels->piece[1].rect.width = left;
+ pixels->piece[1].rect.height = height;
+
+ pixels->piece[2].rect.x = left + width;
+ pixels->piece[2].rect.y = top;
+ pixels->piece[2].rect.width = right;
+ pixels->piece[2].rect.height = height;
+
+ pixels->piece[3].rect.x = 0;
+ pixels->piece[3].rect.y = top + height;
+ pixels->piece[3].rect.width = left + width + right;
+ pixels->piece[3].rect.height = bottom;
+
+ for (i = 0; i < 4; i++)
+ {
+ CachedFramePiece *piece = &pixels->piece[i];
+ if (!piece->pixmap)
+ piece->pixmap = generate_pixmap (frames, frame, piece->rect);
+ }
+
+ if (frames->invalidate_cache_timeout_id)
+ g_source_remove (frames->invalidate_cache_timeout_id);
+
+ frames->invalidate_cache_timeout_id = g_timeout_add (1000, invalidate_cache_timeout, frames);
+
+ if (!g_list_find (frames->invalidate_frames, frame))
+ frames->invalidate_frames =
+ g_list_prepend (frames->invalidate_frames, frame);
+}
+
+static void
+clip_to_screen (GdkRegion *region, MetaUIFrame *frame)
+{
+ GdkRectangle frame_area;
+ GdkRectangle screen_area = { 0, 0, 0, 0 };
+ GdkRegion *tmp_region;
+
+ /* Chop off stuff outside the screen; this optimization
+ * is crucial to handle huge client windows,
+ * like "xterm -geometry 1000x1000"
+ */
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_X, &frame_area.x,
+ META_CORE_GET_FRAME_Y, &frame_area.y,
+ META_CORE_GET_FRAME_WIDTH, &frame_area.width,
+ META_CORE_GET_FRAME_HEIGHT, &frame_area.height,
+ META_CORE_GET_SCREEN_WIDTH, &screen_area.height,
+ META_CORE_GET_SCREEN_HEIGHT, &screen_area.height,
+ META_CORE_GET_END);
+
+ gdk_region_offset (region, frame_area.x, frame_area.y);
+
+ tmp_region = gdk_region_rectangle (&frame_area);
+ gdk_region_intersect (region, tmp_region);
+ gdk_region_destroy (tmp_region);
+
+ gdk_region_offset (region, - frame_area.x, - frame_area.y);
+}
+
+static void
+subtract_from_region (GdkRegion *region, GdkDrawable *drawable,
+ gint x, gint y)
+{
+ GdkRectangle rect;
+ GdkRegion *reg_rect;
+
+ #if GTK_CHECK_VERSION(3, 0, 0)
+ rect.width = gdk_window_get_width(GDK_WINDOW(drawable));
+ rect.height = gdk_window_get_height(GDK_WINDOW(drawable));
+ #else
+ gdk_drawable_get_size (drawable, &rect.width, &rect.height);
+ #endif
+
+ rect.x = x;
+ rect.y = y;
+
+ reg_rect = gdk_region_rectangle (&rect);
+ gdk_region_subtract (region, reg_rect);
+ gdk_region_destroy (reg_rect);
+}
+
+static void
+cached_pixels_draw (CachedPixels *pixels,
+ GdkWindow *window,
+ GdkRegion *region)
+{
+ cairo_t *cr;
+ int i;
+
+ cr = gdk_cairo_create (window);
+
+ for (i = 0; i < 4; i++)
+ {
+ CachedFramePiece *piece;
+ piece = &pixels->piece[i];
+
+ if (piece->pixmap)
+ {
+ gdk_cairo_set_source_pixmap (cr, piece->pixmap,
+ piece->rect.x, piece->rect.y);
+ cairo_paint (cr);
+ subtract_from_region (region, piece->pixmap,
+ piece->rect.x, piece->rect.y);
+ }
+ }
+
+ cairo_destroy (cr);
+}
+
+static gboolean
+meta_frames_expose_event (GtkWidget *widget,
+ GdkEventExpose *event)
+{
+ MetaUIFrame *frame;
+ MetaFrames *frames;
+ GdkRegion *region;
+ CachedPixels *pixels;
+
+ frames = META_FRAMES (widget);
+
+ frame = meta_frames_lookup_window (frames, GDK_WINDOW_XID (event->window));
+ if (frame == NULL)
+ return FALSE;
+
+ if (frames->expose_delay_count > 0)
+ {
+ /* Redraw this entire frame later */
+ frame->expose_delayed = TRUE;
+ return TRUE;
+ }
+
+ populate_cache (frames, frame);
+
+ region = gdk_region_copy (event->region);
+
+ pixels = get_cache (frames, frame);
+
+ cached_pixels_draw (pixels, frame->window, region);
+
+ clip_to_screen (region, frame);
+ meta_frames_paint_to_drawable (frames, frame, frame->window, region, 0, 0);
+
+ gdk_region_destroy (region);
+
+ return TRUE;
+}
+
+/* How far off the screen edge the window decorations should
+ * be drawn. Used only in meta_frames_paint_to_drawable, below.
+ */
+#define DECORATING_BORDER 100
+
+static void
+meta_frames_paint_to_drawable (MetaFrames *frames,
+ MetaUIFrame *frame,
+ GdkDrawable *drawable,
+ GdkRegion *region,
+ int x_offset,
+ int y_offset)
+{
+ GtkWidget *widget;
+ MetaFrameFlags flags;
+ MetaFrameType type;
+ GdkPixbuf *mini_icon;
+ GdkPixbuf *icon;
+ int w, h;
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST];
+ Window grab_frame;
+ int i;
+ MetaButtonLayout button_layout;
+ MetaGrabOp grab_op;
+
+ widget = GTK_WIDGET (frames);
+
+ for (i = 0; i < META_BUTTON_TYPE_LAST; i++)
+ button_states[i] = META_BUTTON_STATE_NORMAL;
+
+ grab_frame = meta_core_get_grab_frame (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+ grab_op = meta_core_get_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+ if (grab_frame != frame->xwindow)
+ grab_op = META_GRAB_OP_NONE;
+
+ /* Set prelight state */
+ switch (frame->prelit_control)
+ {
+ case META_FRAME_CONTROL_MENU:
+ if (grab_op == META_GRAB_OP_CLICKING_MENU)
+ button_states[META_BUTTON_TYPE_MENU] = META_BUTTON_STATE_PRESSED;
+ else
+ button_states[META_BUTTON_TYPE_MENU] = META_BUTTON_STATE_PRELIGHT;
+ break;
+ case META_FRAME_CONTROL_MINIMIZE:
+ if (grab_op == META_GRAB_OP_CLICKING_MINIMIZE)
+ button_states[META_BUTTON_TYPE_MINIMIZE] = META_BUTTON_STATE_PRESSED;
+ else
+ button_states[META_BUTTON_TYPE_MINIMIZE] = META_BUTTON_STATE_PRELIGHT;
+ break;
+ case META_FRAME_CONTROL_MAXIMIZE:
+ if (grab_op == META_GRAB_OP_CLICKING_MAXIMIZE)
+ button_states[META_BUTTON_TYPE_MAXIMIZE] = META_BUTTON_STATE_PRESSED;
+ else
+ button_states[META_BUTTON_TYPE_MAXIMIZE] = META_BUTTON_STATE_PRELIGHT;
+ break;
+ case META_FRAME_CONTROL_UNMAXIMIZE:
+ if (grab_op == META_GRAB_OP_CLICKING_UNMAXIMIZE)
+ button_states[META_BUTTON_TYPE_MAXIMIZE] = META_BUTTON_STATE_PRESSED;
+ else
+ button_states[META_BUTTON_TYPE_MAXIMIZE] = META_BUTTON_STATE_PRELIGHT;
+ break;
+ case META_FRAME_CONTROL_SHADE:
+ if (grab_op == META_GRAB_OP_CLICKING_SHADE)
+ button_states[META_BUTTON_TYPE_SHADE] = META_BUTTON_STATE_PRESSED;
+ else
+ button_states[META_BUTTON_TYPE_SHADE] = META_BUTTON_STATE_PRELIGHT;
+ break;
+ case META_FRAME_CONTROL_UNSHADE:
+ if (grab_op == META_GRAB_OP_CLICKING_UNSHADE)
+ button_states[META_BUTTON_TYPE_UNSHADE] = META_BUTTON_STATE_PRESSED;
+ else
+ button_states[META_BUTTON_TYPE_UNSHADE] = META_BUTTON_STATE_PRELIGHT;
+ break;
+ case META_FRAME_CONTROL_ABOVE:
+ if (grab_op == META_GRAB_OP_CLICKING_ABOVE)
+ button_states[META_BUTTON_TYPE_ABOVE] = META_BUTTON_STATE_PRESSED;
+ else
+ button_states[META_BUTTON_TYPE_ABOVE] = META_BUTTON_STATE_PRELIGHT;
+ break;
+ case META_FRAME_CONTROL_UNABOVE:
+ if (grab_op == META_GRAB_OP_CLICKING_UNABOVE)
+ button_states[META_BUTTON_TYPE_UNABOVE] = META_BUTTON_STATE_PRESSED;
+ else
+ button_states[META_BUTTON_TYPE_UNABOVE] = META_BUTTON_STATE_PRELIGHT;
+ break;
+ case META_FRAME_CONTROL_STICK:
+ if (grab_op == META_GRAB_OP_CLICKING_STICK)
+ button_states[META_BUTTON_TYPE_STICK] = META_BUTTON_STATE_PRESSED;
+ else
+ button_states[META_BUTTON_TYPE_STICK] = META_BUTTON_STATE_PRELIGHT;
+ break;
+ case META_FRAME_CONTROL_UNSTICK:
+ if (grab_op == META_GRAB_OP_CLICKING_UNSTICK)
+ button_states[META_BUTTON_TYPE_UNSTICK] = META_BUTTON_STATE_PRESSED;
+ else
+ button_states[META_BUTTON_TYPE_UNSTICK] = META_BUTTON_STATE_PRELIGHT;
+ break;
+ case META_FRAME_CONTROL_DELETE:
+ if (grab_op == META_GRAB_OP_CLICKING_DELETE)
+ button_states[META_BUTTON_TYPE_CLOSE] = META_BUTTON_STATE_PRESSED;
+ else
+ button_states[META_BUTTON_TYPE_CLOSE] = META_BUTTON_STATE_PRELIGHT;
+ break;
+ default:
+ break;
+ }
+
+ /* Map button function states to button position states */
+ button_states[META_BUTTON_TYPE_LEFT_LEFT_BACKGROUND] =
+ button_states[META_BUTTON_TYPE_MENU];
+ button_states[META_BUTTON_TYPE_LEFT_MIDDLE_BACKGROUND] =
+ META_BUTTON_STATE_NORMAL;
+ button_states[META_BUTTON_TYPE_LEFT_RIGHT_BACKGROUND] =
+ META_BUTTON_STATE_NORMAL;
+ button_states[META_BUTTON_TYPE_RIGHT_LEFT_BACKGROUND] =
+ button_states[META_BUTTON_TYPE_MINIMIZE];
+ button_states[META_BUTTON_TYPE_RIGHT_MIDDLE_BACKGROUND] =
+ button_states[META_BUTTON_TYPE_MAXIMIZE];
+ button_states[META_BUTTON_TYPE_RIGHT_RIGHT_BACKGROUND] =
+ button_states[META_BUTTON_TYPE_CLOSE];
+
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_FRAME_TYPE, &type,
+ META_CORE_GET_MINI_ICON, &mini_icon,
+ META_CORE_GET_ICON, &icon,
+ META_CORE_GET_CLIENT_WIDTH, &w,
+ META_CORE_GET_CLIENT_HEIGHT, &h,
+ META_CORE_GET_END);
+
+ meta_frames_ensure_layout (frames, frame);
+
+ meta_prefs_get_button_layout (&button_layout);
+
+ if (G_LIKELY (GDK_IS_WINDOW (drawable)))
+ {
+ /* A window; happens about 2/3 of the time */
+
+ GdkRectangle area, *areas;
+ int n_areas;
+ int screen_width, screen_height;
+ GdkRegion *edges, *tmp_region;
+ int top, bottom, left, right;
+
+ /* Repaint each side of the frame */
+
+ meta_theme_get_frame_borders (meta_theme_get_current (),
+ type, frame->text_height, flags,
+ &top, &bottom, &left, &right);
+
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_SCREEN_WIDTH, &screen_width,
+ META_CORE_GET_SCREEN_HEIGHT, &screen_height,
+ META_CORE_GET_END);
+
+ edges = gdk_region_copy (region);
+
+ /* Punch out the client area */
+
+ area.x = left;
+ area.y = top;
+ area.width = w;
+ area.height = h;
+ tmp_region = gdk_region_rectangle (&area);
+ gdk_region_subtract (edges, tmp_region);
+ gdk_region_destroy (tmp_region);
+
+ /* Now draw remaining portion of region */
+
+ gdk_region_get_rectangles (edges, &areas, &n_areas);
+
+ for (i = 0; i < n_areas; i++)
+ {
+ /* Bug 399529: clamp areas[i] so that it doesn't go too far
+ * off the edge of the screen. This works around a GDK bug
+ * which makes gdk_window_begin_paint_rect cause an X error
+ * if the window is insanely huge. If the client is a GDK program
+ * and does this, it will still probably cause an X error in that
+ * program, but the last thing we want is for Marco to crash
+ * because it attempted to decorate the silly window.
+ */
+
+ areas[i].x = MAX (areas[i].x, -DECORATING_BORDER);
+ areas[i].y = MAX (areas[i].y, -DECORATING_BORDER);
+ if (areas[i].x+areas[i].width > screen_width + DECORATING_BORDER)
+ areas[i].width = MIN (0, screen_width - areas[i].x);
+ if (areas[i].y+areas[i].height > screen_height + DECORATING_BORDER)
+ areas[i].height = MIN (0, screen_height - areas[i].y);
+
+ /* Okay, so let's start painting. */
+
+ gdk_window_begin_paint_rect (drawable, &areas[i]);
+
+ meta_theme_draw_frame_with_style (meta_theme_get_current (),
+ frame->style,
+ widget,
+ drawable,
+ NULL, /* &areas[i], */
+ x_offset, y_offset,
+ type,
+ flags,
+ w, h,
+ frame->layout,
+ frame->text_height,
+ &button_layout,
+ button_states,
+ mini_icon, icon);
+
+ gdk_window_end_paint (drawable);
+ }
+
+ g_free (areas);
+ gdk_region_destroy (edges);
+
+ }
+ else
+ {
+ /* Not a window; happens about 1/3 of the time */
+
+ meta_theme_draw_frame_with_style (meta_theme_get_current (),
+ frame->style,
+ widget,
+ drawable,
+ NULL,
+ x_offset, y_offset,
+ type,
+ flags,
+ w, h,
+ frame->layout,
+ frame->text_height,
+ &button_layout,
+ button_states,
+ mini_icon, icon);
+ }
+
+}
+
+static void
+meta_frames_set_window_background (MetaFrames *frames,
+ MetaUIFrame *frame)
+{
+ MetaFrameFlags flags;
+ MetaFrameType type;
+ MetaFrameStyle *style;
+ gboolean frame_exists;
+
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_WINDOW_HAS_FRAME, &frame_exists,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_FRAME_TYPE, &type,
+ META_CORE_GET_END);
+
+ if (frame_exists)
+ {
+ style = meta_theme_get_frame_style (meta_theme_get_current (),
+ type, flags);
+ }
+
+ if (frame_exists && style->window_background_color != NULL)
+ {
+ GdkColor color;
+ GdkVisual *visual;
+
+ meta_color_spec_render (style->window_background_color,
+ GTK_WIDGET (frames),
+ &color);
+
+ /* Set A in ARGB to window_background_alpha, if we have ARGB */
+
+ visual = gtk_widget_get_visual (GTK_WIDGET (frames));
+ if (visual->depth == 32) /* we have ARGB */
+ {
+ color.pixel = (color.pixel & 0xffffff) &
+ style->window_background_alpha << 24;
+ }
+
+ gdk_window_set_background (frame->window, &color);
+ }
+ else
+ {
+ gtk_style_set_background (frame->style,
+ frame->window, GTK_STATE_NORMAL);
+ }
+ }
+
+static gboolean
+meta_frames_enter_notify_event (GtkWidget *widget,
+ GdkEventCrossing *event)
+{
+ MetaUIFrame *frame;
+ MetaFrames *frames;
+ MetaFrameControl control;
+
+ frames = META_FRAMES (widget);
+
+ frame = meta_frames_lookup_window (frames, GDK_WINDOW_XID (event->window));
+ if (frame == NULL)
+ return FALSE;
+
+ control = get_control (frames, frame, event->x, event->y);
+ meta_frames_update_prelit_control (frames, frame, control);
+
+ return TRUE;
+}
+
+static gboolean
+meta_frames_leave_notify_event (GtkWidget *widget,
+ GdkEventCrossing *event)
+{
+ MetaUIFrame *frame;
+ MetaFrames *frames;
+
+ frames = META_FRAMES (widget);
+
+ frame = meta_frames_lookup_window (frames, GDK_WINDOW_XID (event->window));
+ if (frame == NULL)
+ return FALSE;
+
+ meta_frames_update_prelit_control (frames, frame, META_FRAME_CONTROL_NONE);
+
+ clear_tip (frames);
+
+ return TRUE;
+}
+
+static GdkRectangle*
+control_rect (MetaFrameControl control,
+ MetaFrameGeometry *fgeom)
+{
+ GdkRectangle *rect;
+
+ rect = NULL;
+ switch (control)
+ {
+ case META_FRAME_CONTROL_TITLE:
+ rect = &fgeom->title_rect;
+ break;
+ case META_FRAME_CONTROL_DELETE:
+ rect = &fgeom->close_rect.visible;
+ break;
+ case META_FRAME_CONTROL_MENU:
+ rect = &fgeom->menu_rect.visible;
+ break;
+ case META_FRAME_CONTROL_MINIMIZE:
+ rect = &fgeom->min_rect.visible;
+ break;
+ case META_FRAME_CONTROL_MAXIMIZE:
+ case META_FRAME_CONTROL_UNMAXIMIZE:
+ rect = &fgeom->max_rect.visible;
+ break;
+ case META_FRAME_CONTROL_SHADE:
+ rect = &fgeom->shade_rect.visible;
+ break;
+ case META_FRAME_CONTROL_UNSHADE:
+ rect = &fgeom->unshade_rect.visible;
+ break;
+ case META_FRAME_CONTROL_ABOVE:
+ rect = &fgeom->above_rect.visible;
+ break;
+ case META_FRAME_CONTROL_UNABOVE:
+ rect = &fgeom->unabove_rect.visible;
+ break;
+ case META_FRAME_CONTROL_STICK:
+ rect = &fgeom->stick_rect.visible;
+ break;
+ case META_FRAME_CONTROL_UNSTICK:
+ rect = &fgeom->unstick_rect.visible;
+ break;
+ case META_FRAME_CONTROL_RESIZE_SE:
+ break;
+ case META_FRAME_CONTROL_RESIZE_S:
+ break;
+ case META_FRAME_CONTROL_RESIZE_SW:
+ break;
+ case META_FRAME_CONTROL_RESIZE_N:
+ break;
+ case META_FRAME_CONTROL_RESIZE_NE:
+ break;
+ case META_FRAME_CONTROL_RESIZE_NW:
+ break;
+ case META_FRAME_CONTROL_RESIZE_W:
+ break;
+ case META_FRAME_CONTROL_RESIZE_E:
+ break;
+ case META_FRAME_CONTROL_NONE:
+ break;
+ case META_FRAME_CONTROL_CLIENT_AREA:
+ break;
+ }
+
+ return rect;
+}
+
+#define RESIZE_EXTENDS 15
+#define TOP_RESIZE_HEIGHT 2
+static MetaFrameControl
+get_control (MetaFrames *frames,
+ MetaUIFrame *frame,
+ int x, int y)
+{
+ MetaFrameGeometry fgeom;
+ MetaFrameFlags flags;
+ gboolean has_vert, has_horiz;
+ GdkRectangle client;
+
+ meta_frames_calc_geometry (frames, frame, &fgeom);
+
+ client.x = fgeom.left_width;
+ client.y = fgeom.top_height;
+ client.width = fgeom.width - fgeom.left_width - fgeom.right_width;
+ client.height = fgeom.height - fgeom.top_height - fgeom.bottom_height;
+
+ if (POINT_IN_RECT (x, y, client))
+ return META_FRAME_CONTROL_CLIENT_AREA;
+
+ if (POINT_IN_RECT (x, y, fgeom.close_rect.clickable))
+ return META_FRAME_CONTROL_DELETE;
+
+ if (POINT_IN_RECT (x, y, fgeom.min_rect.clickable))
+ return META_FRAME_CONTROL_MINIMIZE;
+
+ if (POINT_IN_RECT (x, y, fgeom.menu_rect.clickable))
+ return META_FRAME_CONTROL_MENU;
+
+ meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow,
+ META_CORE_GET_FRAME_FLAGS, &flags,
+ META_CORE_GET_END);
+
+ has_vert = (flags & META_FRAME_ALLOWS_VERTICAL_RESIZE) != 0;
+ has_horiz = (flags & META_FRAME_ALLOWS_HORIZONTAL_RESIZE) != 0;
+
+ if (POINT_IN_RECT (x, y, fgeom.title_rect))
+ {
+ if (has_vert && y <= TOP_RESIZE_HEIGHT)
+ return META_FRAME_CONTROL_RESIZE_N;
+ else
+ return META_FRAME_CONTROL_TITLE;
+ }
+
+ if (POINT_IN_RECT (x, y, fgeom.max_rect.clickable))
+ {
+ if (flags & META_FRAME_MAXIMIZED)
+ return META_FRAME_CONTROL_UNMAXIMIZE;
+ else
+ return META_FRAME_CONTROL_MAXIMIZE;
+ }
+
+ if (POINT_IN_RECT (x, y, fgeom.shade_rect.clickable))
+ {
+ return META_FRAME_CONTROL_SHADE;
+ }
+
+ if (POINT_IN_RECT (x, y, fgeom.unshade_rect.clickable))
+ {
+ return META_FRAME_CONTROL_UNSHADE;
+ }
+
+ if (POINT_IN_RECT (x, y, fgeom.above_rect.clickable))
+ {
+ return META_FRAME_CONTROL_ABOVE;
+ }
+
+ if (POINT_IN_RECT (x, y, fgeom.unabove_rect.clickable))
+ {
+ return META_FRAME_CONTROL_UNABOVE;
+ }
+
+ if (POINT_IN_RECT (x, y, fgeom.stick_rect.clickable))
+ {
+ return META_FRAME_CONTROL_STICK;
+ }
+
+ if (POINT_IN_RECT (x, y, fgeom.unstick_rect.clickable))
+ {
+ return META_FRAME_CONTROL_UNSTICK;
+ }
+
+ /* South resize always has priority over north resize,
+ * in case of overlap.
+ */
+
+ if (y >= (fgeom.height - fgeom.bottom_height - RESIZE_EXTENDS) &&
+ x >= (fgeom.width - fgeom.right_width - RESIZE_EXTENDS))
+ {
+ if (has_vert && has_horiz)
+ return META_FRAME_CONTROL_RESIZE_SE;
+ else if (has_vert)
+ return META_FRAME_CONTROL_RESIZE_S;
+ else if (has_horiz)
+ return META_FRAME_CONTROL_RESIZE_E;
+ }
+ else if (y >= (fgeom.height - fgeom.bottom_height - RESIZE_EXTENDS) &&
+ x <= (fgeom.left_width + RESIZE_EXTENDS))
+ {
+ if (has_vert && has_horiz)
+ return META_FRAME_CONTROL_RESIZE_SW;
+ else if (has_vert)
+ return META_FRAME_CONTROL_RESIZE_S;
+ else if (has_horiz)
+ return META_FRAME_CONTROL_RESIZE_W;
+ }
+ else if (y < (fgeom.top_height + RESIZE_EXTENDS) &&
+ x < RESIZE_EXTENDS)
+ {
+ if (has_vert && has_horiz)
+ return META_FRAME_CONTROL_RESIZE_NW;
+ else if (has_vert)
+ return META_FRAME_CONTROL_RESIZE_N;
+ else if (has_horiz)
+ return META_FRAME_CONTROL_RESIZE_W;
+ }
+ else if (y < (fgeom.top_height + RESIZE_EXTENDS) &&
+ x >= (fgeom.width - RESIZE_EXTENDS))
+ {
+ if (has_vert && has_horiz)
+ return META_FRAME_CONTROL_RESIZE_NE;
+ else if (has_vert)
+ return META_FRAME_CONTROL_RESIZE_N;
+ else if (has_horiz)
+ return META_FRAME_CONTROL_RESIZE_E;
+ }
+ else if (y >= (fgeom.height - fgeom.bottom_height - RESIZE_EXTENDS))
+ {
+ if (has_vert)
+ return META_FRAME_CONTROL_RESIZE_S;
+ }
+ else if (y <= TOP_RESIZE_HEIGHT)
+ {
+ if (has_vert)
+ return META_FRAME_CONTROL_RESIZE_N;
+ else if (has_horiz)
+ return META_FRAME_CONTROL_TITLE;
+ }
+ else if (x <= fgeom.left_width)
+ {
+ if (has_horiz)
+ return META_FRAME_CONTROL_RESIZE_W;
+ }
+ else if (x >= (fgeom.width - fgeom.right_width))
+ {
+ if (has_horiz)
+ return META_FRAME_CONTROL_RESIZE_E;
+ }
+
+ if (y >= fgeom.top_height)
+ return META_FRAME_CONTROL_NONE;
+ else
+ return META_FRAME_CONTROL_TITLE;
+}
+
+void
+meta_frames_push_delay_exposes (MetaFrames *frames)
+{
+ if (frames->expose_delay_count == 0)
+ {
+ /* Make sure we've repainted things */
+ gdk_window_process_all_updates ();
+ XFlush (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+ }
+
+ frames->expose_delay_count += 1;
+}
+
+static void
+queue_pending_exposes_func (gpointer key, gpointer value, gpointer data)
+{
+ MetaUIFrame *frame;
+ MetaFrames *frames;
+
+ frames = META_FRAMES (data);
+ frame = value;
+
+ if (frame->expose_delayed)
+ {
+ invalidate_whole_window (frames, frame);
+ frame->expose_delayed = FALSE;
+ }
+}
+
+void
+meta_frames_pop_delay_exposes (MetaFrames *frames)
+{
+ g_return_if_fail (frames->expose_delay_count > 0);
+
+ frames->expose_delay_count -= 1;
+
+ if (frames->expose_delay_count == 0)
+ {
+ g_hash_table_foreach (frames->frames,
+ queue_pending_exposes_func,
+ frames);
+ }
+}
+
+static void
+invalidate_whole_window (MetaFrames *frames,
+ MetaUIFrame *frame)
+{
+ gdk_window_invalidate_rect (frame->window, NULL, FALSE);
+ invalidate_cache (frames, frame);
+}
diff --git a/src/ui/frames.h b/src/ui/frames.h
new file mode 100644
index 00000000..e9da4714
--- /dev/null
+++ b/src/ui/frames.h
@@ -0,0 +1,163 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco window frame manager widget */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_FRAMES_H
+#define META_FRAMES_H
+
+#include <gtk/gtk.h>
+#include <gdk/gdkx.h>
+#include "common.h"
+#include "theme.h"
+
+typedef enum
+{
+ META_FRAME_CONTROL_NONE,
+ META_FRAME_CONTROL_TITLE,
+ META_FRAME_CONTROL_DELETE,
+ META_FRAME_CONTROL_MENU,
+ META_FRAME_CONTROL_MINIMIZE,
+ META_FRAME_CONTROL_MAXIMIZE,
+ META_FRAME_CONTROL_UNMAXIMIZE,
+ META_FRAME_CONTROL_SHADE,
+ META_FRAME_CONTROL_UNSHADE,
+ META_FRAME_CONTROL_ABOVE,
+ META_FRAME_CONTROL_UNABOVE,
+ META_FRAME_CONTROL_STICK,
+ META_FRAME_CONTROL_UNSTICK,
+ META_FRAME_CONTROL_RESIZE_SE,
+ META_FRAME_CONTROL_RESIZE_S,
+ META_FRAME_CONTROL_RESIZE_SW,
+ META_FRAME_CONTROL_RESIZE_N,
+ META_FRAME_CONTROL_RESIZE_NE,
+ META_FRAME_CONTROL_RESIZE_NW,
+ META_FRAME_CONTROL_RESIZE_W,
+ META_FRAME_CONTROL_RESIZE_E,
+ META_FRAME_CONTROL_CLIENT_AREA
+} MetaFrameControl;
+
+/* This is one widget that manages all the window frames
+ * as subwindows.
+ */
+
+#define META_TYPE_FRAMES (meta_frames_get_type ())
+#define META_FRAMES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), META_TYPE_FRAMES, MetaFrames))
+#define META_FRAMES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), META_TYPE_FRAMES, MetaFramesClass))
+#define META_IS_FRAMES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), META_TYPE_FRAMES))
+#define META_IS_FRAMES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), META_TYPE_FRAMES))
+#define META_FRAMES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), META_TYPE_FRAMES, MetaFramesClass))
+
+typedef struct _MetaFrames MetaFrames;
+typedef struct _MetaFramesClass MetaFramesClass;
+
+typedef struct _MetaUIFrame MetaUIFrame;
+
+struct _MetaUIFrame
+{
+ Window xwindow;
+ GdkWindow *window;
+ GtkStyle *style;
+ MetaFrameStyle *cache_style;
+ PangoLayout *layout;
+ int text_height;
+ char *title; /* NULL once we have a layout */
+ guint expose_delayed : 1;
+ guint shape_applied : 1;
+
+ /* FIXME get rid of this, it can just be in the MetaFrames struct */
+ MetaFrameControl prelit_control;
+};
+
+struct _MetaFrames
+{
+ GtkWindow parent_instance;
+
+ GHashTable *text_heights;
+
+ GHashTable *frames;
+
+ guint tooltip_timeout;
+ MetaUIFrame *last_motion_frame;
+
+ int expose_delay_count;
+
+ int invalidate_cache_timeout_id;
+ GList *invalidate_frames;
+ GHashTable *cache;
+};
+
+struct _MetaFramesClass
+{
+ GtkWindowClass parent_class;
+
+};
+
+GType meta_frames_get_type (void) G_GNUC_CONST;
+
+MetaFrames *meta_frames_new (int screen_number);
+
+void meta_frames_manage_window (MetaFrames *frames,
+ Window xwindow,
+ GdkWindow *window);
+void meta_frames_unmanage_window (MetaFrames *frames,
+ Window xwindow);
+void meta_frames_set_title (MetaFrames *frames,
+ Window xwindow,
+ const char *title);
+
+void meta_frames_repaint_frame (MetaFrames *frames,
+ Window xwindow);
+
+void meta_frames_get_geometry (MetaFrames *frames,
+ Window xwindow,
+ int *top_height, int *bottom_height,
+ int *left_width, int *right_width);
+
+void meta_frames_reset_bg (MetaFrames *frames,
+ Window xwindow);
+void meta_frames_unflicker_bg (MetaFrames *frames,
+ Window xwindow,
+ int target_width,
+ int target_height);
+
+void meta_frames_apply_shapes (MetaFrames *frames,
+ Window xwindow,
+ int new_window_width,
+ int new_window_height,
+ gboolean window_has_shape);
+void meta_frames_move_resize_frame (MetaFrames *frames,
+ Window xwindow,
+ int x,
+ int y,
+ int width,
+ int height);
+void meta_frames_queue_draw (MetaFrames *frames,
+ Window xwindow);
+
+void meta_frames_notify_menu_hide (MetaFrames *frames);
+
+Window meta_frames_get_moving_frame (MetaFrames *frames);
+
+void meta_frames_push_delay_exposes (MetaFrames *frames);
+void meta_frames_pop_delay_exposes (MetaFrames *frames);
+
+#endif
diff --git a/src/ui/gradient.c b/src/ui/gradient.c
new file mode 100644
index 00000000..0e739817
--- /dev/null
+++ b/src/ui/gradient.c
@@ -0,0 +1,842 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco gradient rendering */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington, 99% copied from wrlib in
+ * WindowMaker, Copyright (C) 1997-2000 Dan Pascu and Alfredo Kojima
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA. */
+
+#include "gradient.h"
+#include "util.h"
+#include <string.h>
+
+/* This is all Alfredo's and Dan's usual very nice WindowMaker code,
+ * slightly GTK-ized
+ */
+static GdkPixbuf* meta_gradient_create_horizontal (int width,
+ int height,
+ const GdkColor *from,
+ const GdkColor *to);
+static GdkPixbuf* meta_gradient_create_vertical (int width,
+ int height,
+ const GdkColor *from,
+ const GdkColor *to);
+static GdkPixbuf* meta_gradient_create_diagonal (int width,
+ int height,
+ const GdkColor *from,
+ const GdkColor *to);
+static GdkPixbuf* meta_gradient_create_multi_horizontal (int width,
+ int height,
+ const GdkColor *colors,
+ int count);
+static GdkPixbuf* meta_gradient_create_multi_vertical (int width,
+ int height,
+ const GdkColor *colors,
+ int count);
+static GdkPixbuf* meta_gradient_create_multi_diagonal (int width,
+ int height,
+ const GdkColor *colors,
+ int count);
+
+
+/* Used as the destroy notification function for gdk_pixbuf_new() */
+static void
+free_buffer (guchar *pixels, gpointer data)
+{
+ g_free (pixels);
+}
+
+static GdkPixbuf*
+blank_pixbuf (int width, int height, gboolean no_padding)
+{
+ guchar *buf;
+ int rowstride;
+
+ g_return_val_if_fail (width > 0, NULL);
+ g_return_val_if_fail (height > 0, NULL);
+
+ if (no_padding)
+ rowstride = width * 3;
+ else
+ /* Always align rows to 32-bit boundaries */
+ rowstride = 4 * ((3 * width + 3) / 4);
+
+ buf = g_try_malloc (height * rowstride);
+ if (!buf)
+ return NULL;
+
+ return gdk_pixbuf_new_from_data (buf, GDK_COLORSPACE_RGB,
+ FALSE, 8,
+ width, height, rowstride,
+ free_buffer, NULL);
+}
+
+GdkPixbuf*
+meta_gradient_create_simple (int width,
+ int height,
+ const GdkColor *from,
+ const GdkColor *to,
+ MetaGradientType style)
+{
+ switch (style)
+ {
+ case META_GRADIENT_HORIZONTAL:
+ return meta_gradient_create_horizontal (width, height,
+ from, to);
+ case META_GRADIENT_VERTICAL:
+ return meta_gradient_create_vertical (width, height,
+ from, to);
+
+ case META_GRADIENT_DIAGONAL:
+ return meta_gradient_create_diagonal (width, height,
+ from, to);
+ case META_GRADIENT_LAST:
+ break;
+ }
+ g_assert_not_reached ();
+ return NULL;
+}
+
+GdkPixbuf*
+meta_gradient_create_multi (int width,
+ int height,
+ const GdkColor *colors,
+ int n_colors,
+ MetaGradientType style)
+{
+
+ if (n_colors > 2)
+ {
+ switch (style)
+ {
+ case META_GRADIENT_HORIZONTAL:
+ return meta_gradient_create_multi_horizontal (width, height, colors, n_colors);
+ case META_GRADIENT_VERTICAL:
+ return meta_gradient_create_multi_vertical (width, height, colors, n_colors);
+ case META_GRADIENT_DIAGONAL:
+ return meta_gradient_create_multi_diagonal (width, height, colors, n_colors);
+ case META_GRADIENT_LAST:
+ g_assert_not_reached ();
+ break;
+ }
+ }
+ else if (n_colors > 1)
+ {
+ return meta_gradient_create_simple (width, height, &colors[0], &colors[1],
+ style);
+ }
+ else if (n_colors > 0)
+ {
+ return meta_gradient_create_simple (width, height, &colors[0], &colors[0],
+ style);
+ }
+ g_assert_not_reached ();
+ return NULL;
+}
+
+/* Interwoven essentially means we have two vertical gradients,
+ * cut into horizontal strips of the given thickness, and then the strips
+ * are alternated. I'm not sure what it's good for, just copied since
+ * WindowMaker had it.
+ */
+GdkPixbuf*
+meta_gradient_create_interwoven (int width,
+ int height,
+ const GdkColor colors1[2],
+ int thickness1,
+ const GdkColor colors2[2],
+ int thickness2)
+{
+
+ int i, j, k, l, ll;
+ long r1, g1, b1, dr1, dg1, db1;
+ long r2, g2, b2, dr2, dg2, db2;
+ GdkPixbuf *pixbuf;
+ unsigned char *ptr;
+ unsigned char *pixels;
+ int rowstride;
+
+ pixbuf = blank_pixbuf (width, height, FALSE);
+ if (pixbuf == NULL)
+ return NULL;
+
+ pixels = gdk_pixbuf_get_pixels (pixbuf);
+ rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+
+ r1 = colors1[0].red<<8;
+ g1 = colors1[0].green<<8;
+ b1 = colors1[0].blue<<8;
+
+ r2 = colors2[0].red<<8;
+ g2 = colors2[0].green<<8;
+ b2 = colors2[0].blue<<8;
+
+ dr1 = ((colors1[1].red-colors1[0].red)<<8)/(int)height;
+ dg1 = ((colors1[1].green-colors1[0].green)<<8)/(int)height;
+ db1 = ((colors1[1].blue-colors1[0].blue)<<8)/(int)height;
+
+ dr2 = ((colors2[1].red-colors2[0].red)<<8)/(int)height;
+ dg2 = ((colors2[1].green-colors2[0].green)<<8)/(int)height;
+ db2 = ((colors2[1].blue-colors2[0].blue)<<8)/(int)height;
+
+ for (i=0,k=0,l=0,ll=thickness1; i<height; i++)
+ {
+ ptr = pixels + i * rowstride;
+
+ if (k == 0)
+ {
+ ptr[0] = (unsigned char) (r1>>16);
+ ptr[1] = (unsigned char) (g1>>16);
+ ptr[2] = (unsigned char) (b1>>16);
+ }
+ else
+ {
+ ptr[0] = (unsigned char) (r2>>16);
+ ptr[1] = (unsigned char) (g2>>16);
+ ptr[2] = (unsigned char) (b2>>16);
+ }
+
+ for (j=1; j <= width/2; j *= 2)
+ memcpy (&(ptr[j*3]), ptr, j*3);
+ memcpy (&(ptr[j*3]), ptr, (width - j)*3);
+
+ if (++l == ll)
+ {
+ if (k == 0)
+ {
+ k = 1;
+ ll = thickness2;
+ }
+ else
+ {
+ k = 0;
+ ll = thickness1;
+ }
+ l = 0;
+ }
+ r1+=dr1;
+ g1+=dg1;
+ b1+=db1;
+
+ r2+=dr2;
+ g2+=dg2;
+ b2+=db2;
+ }
+
+ return pixbuf;
+}
+
+/*
+ *----------------------------------------------------------------------
+ * meta_gradient_create_horizontal--
+ * Renders a horizontal linear gradient of the specified size in the
+ * GdkPixbuf format with a border of the specified type.
+ *
+ * Returns:
+ * A 24bit GdkPixbuf with the gradient (no alpha channel).
+ *
+ * Side effects:
+ * None
+ *----------------------------------------------------------------------
+ */
+static GdkPixbuf*
+meta_gradient_create_horizontal (int width, int height,
+ const GdkColor *from,
+ const GdkColor *to)
+{
+ int i;
+ long r, g, b, dr, dg, db;
+ GdkPixbuf *pixbuf;
+ unsigned char *ptr;
+ unsigned char *pixels;
+ int r0, g0, b0;
+ int rf, gf, bf;
+ int rowstride;
+
+ pixbuf = blank_pixbuf (width, height, FALSE);
+ if (pixbuf == NULL)
+ return NULL;
+
+ pixels = gdk_pixbuf_get_pixels (pixbuf);
+ ptr = pixels;
+ rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+
+ r0 = (guchar) (from->red / 256.0);
+ g0 = (guchar) (from->green / 256.0);
+ b0 = (guchar) (from->blue / 256.0);
+ rf = (guchar) (to->red / 256.0);
+ gf = (guchar) (to->green / 256.0);
+ bf = (guchar) (to->blue / 256.0);
+
+ r = r0 << 16;
+ g = g0 << 16;
+ b = b0 << 16;
+
+ dr = ((rf-r0)<<16)/(int)width;
+ dg = ((gf-g0)<<16)/(int)width;
+ db = ((bf-b0)<<16)/(int)width;
+ /* render the first line */
+ for (i=0; i<width; i++)
+ {
+ *(ptr++) = (unsigned char)(r>>16);
+ *(ptr++) = (unsigned char)(g>>16);
+ *(ptr++) = (unsigned char)(b>>16);
+ r += dr;
+ g += dg;
+ b += db;
+ }
+
+ /* copy the first line to the other lines */
+ for (i=1; i<height; i++)
+ {
+ memcpy (&(pixels[i*rowstride]), pixels, rowstride);
+ }
+ return pixbuf;
+}
+
+/*
+ *----------------------------------------------------------------------
+ * meta_gradient_create_vertical--
+ * Renders a vertical linear gradient of the specified size in the
+ * GdkPixbuf format with a border of the specified type.
+ *
+ * Returns:
+ * A 24bit GdkPixbuf with the gradient (no alpha channel).
+ *
+ * Side effects:
+ * None
+ *----------------------------------------------------------------------
+ */
+static GdkPixbuf*
+meta_gradient_create_vertical (int width, int height,
+ const GdkColor *from,
+ const GdkColor *to)
+{
+ int i, j;
+ long r, g, b, dr, dg, db;
+ GdkPixbuf *pixbuf;
+ unsigned char *ptr;
+ int r0, g0, b0;
+ int rf, gf, bf;
+ int rowstride;
+ unsigned char *pixels;
+
+ pixbuf = blank_pixbuf (width, height, FALSE);
+ if (pixbuf == NULL)
+ return NULL;
+
+ pixels = gdk_pixbuf_get_pixels (pixbuf);
+ rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+
+ r0 = (guchar) (from->red / 256.0);
+ g0 = (guchar) (from->green / 256.0);
+ b0 = (guchar) (from->blue / 256.0);
+ rf = (guchar) (to->red / 256.0);
+ gf = (guchar) (to->green / 256.0);
+ bf = (guchar) (to->blue / 256.0);
+
+ r = r0<<16;
+ g = g0<<16;
+ b = b0<<16;
+
+ dr = ((rf-r0)<<16)/(int)height;
+ dg = ((gf-g0)<<16)/(int)height;
+ db = ((bf-b0)<<16)/(int)height;
+
+ for (i=0; i<height; i++)
+ {
+ ptr = pixels + i * rowstride;
+
+ ptr[0] = (unsigned char)(r>>16);
+ ptr[1] = (unsigned char)(g>>16);
+ ptr[2] = (unsigned char)(b>>16);
+
+ for (j=1; j <= width/2; j *= 2)
+ memcpy (&(ptr[j*3]), ptr, j*3);
+ memcpy (&(ptr[j*3]), ptr, (width - j)*3);
+
+ r+=dr;
+ g+=dg;
+ b+=db;
+ }
+ return pixbuf;
+}
+
+
+/*
+ *----------------------------------------------------------------------
+ * meta_gradient_create_diagonal--
+ * Renders a diagonal linear gradient of the specified size in the
+ * GdkPixbuf format with a border of the specified type.
+ *
+ * Returns:
+ * A 24bit GdkPixbuf with the gradient (no alpha channel).
+ *
+ * Side effects:
+ * None
+ *----------------------------------------------------------------------
+ */
+
+
+static GdkPixbuf*
+meta_gradient_create_diagonal (int width, int height,
+ const GdkColor *from,
+ const GdkColor *to)
+{
+ GdkPixbuf *pixbuf, *tmp;
+ int j;
+ float a, offset;
+ unsigned char *ptr;
+ unsigned char *pixels;
+ int rowstride;
+
+ if (width == 1)
+ return meta_gradient_create_vertical (width, height, from, to);
+ else if (height == 1)
+ return meta_gradient_create_horizontal (width, height, from, to);
+
+ pixbuf = blank_pixbuf (width, height, FALSE);
+ if (pixbuf == NULL)
+ return NULL;
+
+ pixels = gdk_pixbuf_get_pixels (pixbuf);
+ rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+
+ tmp = meta_gradient_create_horizontal (2*width-1, 1, from, to);
+ if (!tmp)
+ {
+ g_object_unref (G_OBJECT (pixbuf));
+ return NULL;
+ }
+
+ ptr = gdk_pixbuf_get_pixels (tmp);
+
+ a = ((float)(width - 1))/((float)(height - 1));
+ width = width * 3;
+
+ /* copy the first line to the other lines with corresponding offset */
+ for (j=0, offset=0.0; j<rowstride*height; j += rowstride)
+ {
+ memcpy (&(pixels[j]), &ptr[3*(int)offset], width);
+ offset += a;
+ }
+
+ g_object_unref (G_OBJECT (tmp));
+ return pixbuf;
+}
+
+
+static GdkPixbuf*
+meta_gradient_create_multi_horizontal (int width, int height,
+ const GdkColor *colors,
+ int count)
+{
+ int i, j, k;
+ long r, g, b, dr, dg, db;
+ GdkPixbuf *pixbuf;
+ unsigned char *ptr;
+ unsigned char *pixels;
+ int width2;
+ int rowstride;
+
+ g_return_val_if_fail (count > 2, NULL);
+
+ pixbuf = blank_pixbuf (width, height, FALSE);
+ if (pixbuf == NULL)
+ return NULL;
+
+ pixels = gdk_pixbuf_get_pixels (pixbuf);
+ rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+ ptr = pixels;
+
+ if (count > width)
+ count = width;
+
+ if (count > 1)
+ width2 = width/(count-1);
+ else
+ width2 = width;
+
+ k = 0;
+
+ r = colors[0].red << 8;
+ g = colors[0].green << 8;
+ b = colors[0].blue << 8;
+
+ /* render the first line */
+ for (i=1; i<count; i++)
+ {
+ dr = ((int)(colors[i].red - colors[i-1].red) <<8)/(int)width2;
+ dg = ((int)(colors[i].green - colors[i-1].green)<<8)/(int)width2;
+ db = ((int)(colors[i].blue - colors[i-1].blue) <<8)/(int)width2;
+ for (j=0; j<width2; j++)
+ {
+ *ptr++ = (unsigned char)(r>>16);
+ *ptr++ = (unsigned char)(g>>16);
+ *ptr++ = (unsigned char)(b>>16);
+ r += dr;
+ g += dg;
+ b += db;
+ k++;
+ }
+ r = colors[i].red << 8;
+ g = colors[i].green << 8;
+ b = colors[i].blue << 8;
+ }
+ for (j=k; j<width; j++)
+ {
+ *ptr++ = (unsigned char)(r>>16);
+ *ptr++ = (unsigned char)(g>>16);
+ *ptr++ = (unsigned char)(b>>16);
+ }
+
+ /* copy the first line to the other lines */
+ for (i=1; i<height; i++)
+ {
+ memcpy (&(pixels[i*rowstride]), pixels, rowstride);
+ }
+ return pixbuf;
+}
+
+static GdkPixbuf*
+meta_gradient_create_multi_vertical (int width, int height,
+ const GdkColor *colors,
+ int count)
+{
+ int i, j, k;
+ long r, g, b, dr, dg, db;
+ GdkPixbuf *pixbuf;
+ unsigned char *ptr, *tmp, *pixels;
+ int height2;
+ int x;
+ int rowstride;
+
+ g_return_val_if_fail (count > 2, NULL);
+
+ pixbuf = blank_pixbuf (width, height, FALSE);
+ if (pixbuf == NULL)
+ return NULL;
+
+ pixels = gdk_pixbuf_get_pixels (pixbuf);
+ rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+ ptr = pixels;
+
+ if (count > height)
+ count = height;
+
+ if (count > 1)
+ height2 = height/(count-1);
+ else
+ height2 = height;
+
+ k = 0;
+
+ r = colors[0].red << 8;
+ g = colors[0].green << 8;
+ b = colors[0].blue << 8;
+
+ for (i=1; i<count; i++)
+ {
+ dr = ((int)(colors[i].red - colors[i-1].red) <<8)/(int)height2;
+ dg = ((int)(colors[i].green - colors[i-1].green)<<8)/(int)height2;
+ db = ((int)(colors[i].blue - colors[i-1].blue) <<8)/(int)height2;
+
+ for (j=0; j<height2; j++)
+ {
+ ptr[0] = (unsigned char)(r>>16);
+ ptr[1] = (unsigned char)(g>>16);
+ ptr[2] = (unsigned char)(b>>16);
+
+ for (x=1; x <= width/2; x *= 2)
+ memcpy (&(ptr[x*3]), ptr, x*3);
+ memcpy (&(ptr[x*3]), ptr, (width - x)*3);
+
+ ptr += rowstride;
+
+ r += dr;
+ g += dg;
+ b += db;
+ k++;
+ }
+ r = colors[i].red << 8;
+ g = colors[i].green << 8;
+ b = colors[i].blue << 8;
+ }
+
+ if (k<height)
+ {
+ tmp = ptr;
+
+ ptr[0] = (unsigned char) (r>>16);
+ ptr[1] = (unsigned char) (g>>16);
+ ptr[2] = (unsigned char) (b>>16);
+
+ for (x=1; x <= width/2; x *= 2)
+ memcpy (&(ptr[x*3]), ptr, x*3);
+ memcpy (&(ptr[x*3]), ptr, (width - x)*3);
+
+ ptr += rowstride;
+
+ for (j=k+1; j<height; j++)
+ {
+ memcpy (ptr, tmp, rowstride);
+ ptr += rowstride;
+ }
+ }
+
+ return pixbuf;
+}
+
+
+static GdkPixbuf*
+meta_gradient_create_multi_diagonal (int width, int height,
+ const GdkColor *colors,
+ int count)
+{
+ GdkPixbuf *pixbuf, *tmp;
+ float a, offset;
+ int j;
+ unsigned char *ptr;
+ unsigned char *pixels;
+ int rowstride;
+
+ g_return_val_if_fail (count > 2, NULL);
+
+ if (width == 1)
+ return meta_gradient_create_multi_vertical (width, height, colors, count);
+ else if (height == 1)
+ return meta_gradient_create_multi_horizontal (width, height, colors, count);
+
+ pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8,
+ width, height);
+ if (pixbuf == NULL)
+ return NULL;
+
+ pixels = gdk_pixbuf_get_pixels (pixbuf);
+ rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+
+ if (count > width)
+ count = width;
+ if (count > height)
+ count = height;
+
+ if (count > 2)
+ tmp = meta_gradient_create_multi_horizontal (2*width-1, 1, colors, count);
+ else
+ /* wrlib multiplies these colors by 256 before passing them in, but
+ * I think it's a bug in wrlib, so changed here. I could be wrong
+ * though, if we notice two-color multi diagonals not working.
+ */
+ tmp = meta_gradient_create_horizontal (2*width-1, 1,
+ &colors[0], &colors[1]);
+
+ if (!tmp)
+ {
+ g_object_unref (G_OBJECT (pixbuf));
+ return NULL;
+ }
+ ptr = gdk_pixbuf_get_pixels (tmp);
+
+ a = ((float)(width - 1))/((float)(height - 1));
+ width = width * 3;
+
+ /* copy the first line to the other lines with corresponding offset */
+ for (j=0, offset=0; j<rowstride*height; j += rowstride)
+ {
+ memcpy (&(pixels[j]), &ptr[3*(int)offset], width);
+ offset += a;
+ }
+
+ g_object_unref (G_OBJECT (tmp));
+ return pixbuf;
+}
+
+static void
+simple_multiply_alpha (GdkPixbuf *pixbuf,
+ guchar alpha)
+{
+ guchar *pixels;
+ int rowstride;
+ int height;
+ int row;
+
+ g_return_if_fail (GDK_IS_PIXBUF (pixbuf));
+
+ if (alpha == 255)
+ return;
+
+ g_assert (gdk_pixbuf_get_has_alpha (pixbuf));
+
+ pixels = gdk_pixbuf_get_pixels (pixbuf);
+ rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+ height = gdk_pixbuf_get_height (pixbuf);
+
+ row = 0;
+ while (row < height)
+ {
+ guchar *p;
+ guchar *end;
+
+ p = pixels + row * rowstride;
+ end = p + rowstride;
+
+ while (p != end)
+ {
+ p += 3; /* skip RGB */
+
+ /* multiply the two alpha channels. not sure this is right.
+ * but some end cases are that if the pixbuf contains 255,
+ * then it should be modified to contain "alpha"; if the
+ * pixbuf contains 0, it should remain 0.
+ */
+ /* ((*p / 255.0) * (alpha / 255.0)) * 255; */
+ *p = (guchar) (((int) *p * (int) alpha) / (int) 255);
+
+ ++p; /* skip A */
+ }
+
+ ++row;
+ }
+}
+
+static void
+meta_gradient_add_alpha_horizontal (GdkPixbuf *pixbuf,
+ const unsigned char *alphas,
+ int n_alphas)
+{
+ int i, j;
+ long a, da;
+ unsigned char *p;
+ unsigned char *pixels;
+ int width2;
+ int rowstride;
+ int width, height;
+ unsigned char *gradient;
+ unsigned char *gradient_p;
+ unsigned char *gradient_end;
+
+ g_return_if_fail (n_alphas > 0);
+
+ if (n_alphas == 1)
+ {
+ /* Optimize this */
+ simple_multiply_alpha (pixbuf, alphas[0]);
+ return;
+ }
+
+ width = gdk_pixbuf_get_width (pixbuf);
+ height = gdk_pixbuf_get_height (pixbuf);
+
+ gradient = g_new (unsigned char, width);
+ gradient_end = gradient + width;
+
+ if (n_alphas > width)
+ n_alphas = width;
+
+ if (n_alphas > 1)
+ width2 = width / (n_alphas - 1);
+ else
+ width2 = width;
+
+ a = alphas[0] << 8;
+ gradient_p = gradient;
+
+ /* render the gradient into an array */
+ for (i = 1; i < n_alphas; i++)
+ {
+ da = (((int)(alphas[i] - (int) alphas[i-1])) << 8) / (int) width2;
+
+ for (j = 0; j < width2; j++)
+ {
+ *gradient_p++ = (a >> 8);
+
+ a += da;
+ }
+
+ a = alphas[i] << 8;
+ }
+
+ /* get leftover pixels */
+ while (gradient_p != gradient_end)
+ {
+ *gradient_p++ = a >> 8;
+ }
+
+ /* Now for each line of the pixbuf, fill in with the gradient */
+ pixels = gdk_pixbuf_get_pixels (pixbuf);
+ rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+
+ p = pixels;
+ i = 0;
+ while (i < height)
+ {
+ unsigned char *row_end = p + rowstride;
+ gradient_p = gradient;
+
+ p += 3;
+ while (gradient_p != gradient_end)
+ {
+ /* multiply the two alpha channels. not sure this is right.
+ * but some end cases are that if the pixbuf contains 255,
+ * then it should be modified to contain "alpha"; if the
+ * pixbuf contains 0, it should remain 0.
+ */
+ /* ((*p / 255.0) * (alpha / 255.0)) * 255; */
+ *p = (guchar) (((int) *p * (int) *gradient_p) / (int) 255);
+
+ p += 4;
+ ++gradient_p;
+ }
+
+ p = row_end;
+ ++i;
+ }
+
+ g_free (gradient);
+}
+
+void
+meta_gradient_add_alpha (GdkPixbuf *pixbuf,
+ const guchar *alphas,
+ int n_alphas,
+ MetaGradientType type)
+{
+ g_return_if_fail (GDK_IS_PIXBUF (pixbuf));
+ g_return_if_fail (gdk_pixbuf_get_has_alpha (pixbuf));
+ g_return_if_fail (n_alphas > 0);
+
+ switch (type)
+ {
+ case META_GRADIENT_HORIZONTAL:
+ meta_gradient_add_alpha_horizontal (pixbuf, alphas, n_alphas);
+ break;
+
+ case META_GRADIENT_VERTICAL:
+ g_printerr ("marco: vertical alpha channel gradient not implemented yet\n");
+ break;
+
+ case META_GRADIENT_DIAGONAL:
+ g_printerr ("marco: diagonal alpha channel gradient not implemented yet\n");
+ break;
+
+ case META_GRADIENT_LAST:
+ g_assert_not_reached ();
+ break;
+ }
+}
diff --git a/src/ui/gradient.h b/src/ui/gradient.h
new file mode 100644
index 00000000..196fd6a0
--- /dev/null
+++ b/src/ui/gradient.h
@@ -0,0 +1,65 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco gradient rendering */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington, 99% copied from wrlib in
+ * WindowMaker, Copyright (C) 1997-2000 Dan Pascu and Alfredo Kojima
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA. */
+
+#ifndef META_GRADIENT_H
+#define META_GRADIENT_H
+
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#include <gdk/gdk.h>
+
+typedef enum
+{
+ META_GRADIENT_VERTICAL,
+ META_GRADIENT_HORIZONTAL,
+ META_GRADIENT_DIAGONAL,
+ META_GRADIENT_LAST
+} MetaGradientType;
+
+GdkPixbuf* meta_gradient_create_simple (int width,
+ int height,
+ const GdkColor *from,
+ const GdkColor *to,
+ MetaGradientType style);
+GdkPixbuf* meta_gradient_create_multi (int width,
+ int height,
+ const GdkColor *colors,
+ int n_colors,
+ MetaGradientType style);
+GdkPixbuf* meta_gradient_create_interwoven (int width,
+ int height,
+ const GdkColor colors1[2],
+ int thickness1,
+ const GdkColor colors2[2],
+ int thickness2);
+
+
+/* Generate an alpha gradient and multiply it with the existing alpha
+ * channel of the given pixbuf
+ */
+void meta_gradient_add_alpha (GdkPixbuf *pixbuf,
+ const guchar *alphas,
+ int n_alphas,
+ MetaGradientType type);
+
+
+#endif
diff --git a/src/ui/menu.c b/src/ui/menu.c
new file mode 100644
index 00000000..5207876f
--- /dev/null
+++ b/src/ui/menu.c
@@ -0,0 +1,509 @@
+/* Marco window menu */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2004 Rob Adams
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include <stdio.h>
+#include <string.h>
+#include "menu.h"
+#include "main.h"
+#include "util.h"
+#include "core.h"
+#include "themewidget.h"
+#include "metaaccellabel.h"
+#include "ui.h"
+
+typedef struct _MenuItem MenuItem;
+typedef struct _MenuData MenuData;
+
+typedef enum {
+ MENU_ITEM_SEPARATOR = 0,
+ MENU_ITEM_NORMAL,
+ MENU_ITEM_IMAGE,
+ MENU_ITEM_CHECKBOX,
+ MENU_ITEM_RADIOBUTTON,
+ MENU_ITEM_WORKSPACE_LIST,
+} MetaMenuItemType;
+
+struct _MenuItem {
+ MetaMenuOp op;
+ MetaMenuItemType type;
+ const char* stock_id;
+ const gboolean checked;
+ const char* label;
+};
+
+
+struct _MenuData {
+ MetaWindowMenu* menu;
+ MetaMenuOp op;
+};
+
+static void activate_cb(GtkWidget* menuitem, gpointer data);
+
+static MenuItem menuitems[] = {
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_MINIMIZE, MENU_ITEM_IMAGE, MARCO_STOCK_MINIMIZE, FALSE, N_("Mi_nimize")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_MAXIMIZE, MENU_ITEM_IMAGE, MARCO_STOCK_MAXIMIZE, FALSE, N_("Ma_ximize")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_UNMAXIMIZE, MENU_ITEM_IMAGE, MARCO_STOCK_RESTORE, FALSE, N_("Unma_ximize")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_SHADE, MENU_ITEM_NORMAL, NULL, FALSE, N_("Roll _Up")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_UNSHADE, MENU_ITEM_NORMAL, NULL, FALSE, N_("_Unroll")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_MOVE, MENU_ITEM_NORMAL, NULL, FALSE, N_("_Move") },
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_RESIZE, MENU_ITEM_NORMAL, NULL, FALSE, N_("_Resize")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_RECOVER, MENU_ITEM_NORMAL, NULL, FALSE, N_("Move Titlebar On_screen")},
+ {META_MENU_OP_WORKSPACES, MENU_ITEM_SEPARATOR, NULL, FALSE, NULL}, /* separator */
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_ABOVE, MENU_ITEM_CHECKBOX, NULL, FALSE, N_("Always on _Top")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_UNABOVE, MENU_ITEM_CHECKBOX, NULL, TRUE, N_("Always on _Top")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_STICK, MENU_ITEM_RADIOBUTTON, NULL, FALSE, N_("_Always on Visible Workspace")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_UNSTICK, MENU_ITEM_RADIOBUTTON, NULL, FALSE, N_("_Only on This Workspace")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_MOVE_LEFT, MENU_ITEM_NORMAL, NULL, FALSE, N_("Move to Workspace _Left")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_MOVE_RIGHT, MENU_ITEM_NORMAL, NULL, FALSE, N_("Move to Workspace R_ight")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_MOVE_UP, MENU_ITEM_NORMAL, NULL, FALSE, N_("Move to Workspace _Up")},
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_MOVE_DOWN, MENU_ITEM_NORMAL, NULL, FALSE, N_("Move to Workspace _Down")},
+ {0, MENU_ITEM_WORKSPACE_LIST, NULL, FALSE, NULL},
+ {0, MENU_ITEM_SEPARATOR, NULL, FALSE, NULL}, /* separator */
+ /* Translators: Translate this string the same way as you do in libwnck! */
+ {META_MENU_OP_DELETE, MENU_ITEM_IMAGE, MARCO_STOCK_DELETE, FALSE, N_("_Close")}
+};
+
+static void popup_position_func(GtkMenu* menu, gint* x, gint* y, gboolean* push_in, gpointer user_data)
+{
+ GtkRequisition req;
+ GdkPoint* pos;
+
+ pos = user_data;
+
+ gtk_widget_size_request(GTK_WIDGET(menu), &req);
+
+ *x = pos->x;
+ *y = pos->y;
+
+ if (meta_ui_get_direction() == META_UI_DIRECTION_RTL)
+ {
+ *x = MAX (0, *x - req.width);
+ }
+
+ /* Ensure onscreen */
+ *x = CLAMP (*x, 0, MAX(0, gdk_screen_width() - req.width));
+ *y = CLAMP (*y, 0, MAX(0, gdk_screen_height() - req.height));
+}
+
+static void menu_closed(GtkMenu* widget, gpointer data)
+{
+ MetaWindowMenu *menu;
+
+ menu = data;
+
+ meta_frames_notify_menu_hide (menu->frames);
+
+ (*menu->func)(
+ menu,
+ GDK_DISPLAY_XDISPLAY(gdk_display_get_default()),
+ menu->client_xwindow,
+ gtk_get_current_event_time (),
+ 0, 0,
+ menu->data);
+
+ /* menu may now be freed */
+}
+
+static void activate_cb(GtkWidget* menuitem, gpointer data)
+{
+ MenuData* md;
+
+ g_return_if_fail (GTK_IS_WIDGET (menuitem));
+
+ md = data;
+
+ meta_frames_notify_menu_hide(md->menu->frames);
+
+ (*md->menu->func)(
+ md->menu,
+ GDK_DISPLAY_XDISPLAY (gdk_display_get_default()),
+ md->menu->client_xwindow,
+ gtk_get_current_event_time(),
+ md->op,
+ GPOINTER_TO_INT(g_object_get_data(G_OBJECT(menuitem), "workspace")),
+ md->menu->data);
+
+ /* menu may now be freed */
+}
+
+/*
+ * Given a Display and an index, get the workspace name and add any
+ * accelerators. At the moment this means adding a _ if the name is of
+ * the form "Workspace n" where n is less than 10, and escaping any
+ * other '_'s so they do not create inadvertant accelerators.
+ *
+ * The calling code owns the string, and is reponsible to free the
+ * memory after use.
+ *
+ * See also http://mail.gnome.org/archives/mate-i18n/2008-March/msg00380.html
+ * which discusses possible i18n concerns.
+ */
+static char*
+get_workspace_name_with_accel (Display *display,
+ Window xroot,
+ int index)
+{
+ const char *name;
+ int number;
+ int charcount=0;
+
+ name = meta_core_get_workspace_name_with_index (display, xroot, index);
+
+ g_assert (name != NULL);
+
+ /*
+ * If the name is of the form "Workspace x" where x is an unsigned
+ * integer, insert a '_' before the number if it is less than 10 and
+ * return it
+ */
+ number = 0;
+ if (sscanf (name, _("Workspace %d%n"), &number, &charcount) != 0 &&
+ *(name + charcount)=='\0')
+ {
+ char *new_name;
+
+ /*
+ * Above name is a pointer into the Workspace struct. Here we make
+ * a copy copy so we can have our wicked way with it.
+ */
+ if (number == 10)
+ new_name = g_strdup_printf (_("Workspace 1_0"));
+ else
+ new_name = g_strdup_printf (_("Workspace %s%d"),
+ number < 10 ? "_" : "",
+ number);
+ return new_name;
+ }
+ else
+ {
+ /*
+ * Otherwise this is just a normal name. Escape any _ characters so that
+ * the user's workspace names do not get mangled. If the number is less
+ * than 10 we provide an accelerator.
+ */
+ char *new_name;
+ const char *source;
+ char *dest;
+
+ /*
+ * Assume the worst case, that every character is a _. We also
+ * provide memory for " (_#)"
+ */
+ new_name = g_malloc0 (strlen (name) * 2 + 6 + 1);
+
+ /*
+ * Now iterate down the strings, adding '_' to escape as we go
+ */
+ dest = new_name;
+ source = name;
+ while (*source != '\0')
+ {
+ if (*source == '_')
+ *dest++ = '_';
+ *dest++ = *source++;
+ }
+
+ /* People don't start at workspace 0, but workspace 1 */
+ if (index < 9)
+ {
+ g_snprintf (dest, 6, " (_%d)", index + 1);
+ }
+ else if (index == 9)
+ {
+ g_snprintf (dest, 6, " (_0)");
+ }
+
+ return new_name;
+ }
+}
+
+static GtkWidget* menu_item_new(MenuItem* menuitem, int workspace_id)
+{
+ unsigned int key;
+ MetaVirtualModifier mods;
+ const char* i18n_label;
+ GtkWidget* mi;
+ GtkWidget* accel_label;
+
+ if (menuitem->type == MENU_ITEM_NORMAL)
+ {
+ mi = gtk_menu_item_new ();
+ }
+ else if (menuitem->type == MENU_ITEM_IMAGE)
+ {
+ GtkWidget* image = gtk_image_new_from_icon_name(menuitem->stock_id, GTK_ICON_SIZE_MENU);
+
+ mi = gtk_image_menu_item_new();
+
+ gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(mi), image);
+ gtk_widget_show(image);
+ }
+ else if (menuitem->type == MENU_ITEM_CHECKBOX)
+ {
+ mi = gtk_check_menu_item_new ();
+
+ gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(mi), menuitem->checked);
+ }
+ else if (menuitem->type == MENU_ITEM_RADIOBUTTON)
+ {
+ mi = gtk_check_menu_item_new ();
+
+ gtk_check_menu_item_set_draw_as_radio (GTK_CHECK_MENU_ITEM (mi), TRUE);
+ gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi), menuitem->checked);
+ }
+ else if (menuitem->type == MENU_ITEM_WORKSPACE_LIST)
+ {
+ return NULL;
+ }
+ else
+ {
+ return gtk_separator_menu_item_new();
+ }
+
+ i18n_label = _(menuitem->label);
+ meta_core_get_menu_accelerator (menuitem->op, workspace_id, &key, &mods);
+
+ accel_label = meta_accel_label_new_with_mnemonic (i18n_label);
+ gtk_misc_set_alignment (GTK_MISC (accel_label), 0.0, 0.5);
+
+ gtk_container_add (GTK_CONTAINER (mi), accel_label);
+ gtk_widget_show (accel_label);
+
+ meta_accel_label_set_accelerator (META_ACCEL_LABEL (accel_label), key, mods);
+
+ return mi;
+}
+
+MetaWindowMenu*
+meta_window_menu_new (MetaFrames *frames,
+ MetaMenuOp ops,
+ MetaMenuOp insensitive,
+ Window client_xwindow,
+ unsigned long active_workspace,
+ int n_workspaces,
+ MetaWindowMenuFunc func,
+ gpointer data)
+{
+ int i;
+ MetaWindowMenu *menu;
+
+ /* FIXME: Modifications to 'ops' should happen in meta_window_show_menu */
+ if (n_workspaces < 2)
+ ops &= ~(META_MENU_OP_STICK | META_MENU_OP_UNSTICK | META_MENU_OP_WORKSPACES);
+ else if (n_workspaces == 2)
+ /* #151183: If we only have two workspaces, disable the menu listing them. */
+ ops &= ~(META_MENU_OP_WORKSPACES);
+
+ menu = g_new (MetaWindowMenu, 1);
+ menu->frames = frames;
+ menu->client_xwindow = client_xwindow;
+ menu->func = func;
+ menu->data = data;
+ menu->ops = ops;
+ menu->insensitive = insensitive;
+
+ menu->menu = gtk_menu_new ();
+
+ gtk_menu_set_screen (GTK_MENU (menu->menu),
+ gtk_widget_get_screen (GTK_WIDGET (frames)));
+
+ for (i = 0; i < (int) G_N_ELEMENTS (menuitems); i++)
+ {
+ MenuItem menuitem = menuitems[i];
+ if (ops & menuitem.op || menuitem.op == 0)
+ {
+ GtkWidget *mi;
+ MenuData *md;
+ unsigned int key;
+ MetaVirtualModifier mods;
+
+ mi = menu_item_new (&menuitem, -1);
+
+ /* Set the activeness of radiobuttons. */
+ switch (menuitem.op)
+ {
+ case META_MENU_OP_STICK:
+ gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi),
+ active_workspace == 0xFFFFFFFF);
+ break;
+ case META_MENU_OP_UNSTICK:
+ gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (mi),
+ active_workspace != 0xFFFFFFFF);
+ break;
+ default:
+ break;
+ }
+
+ if (menuitem.type == MENU_ITEM_WORKSPACE_LIST)
+ {
+ if (ops & META_MENU_OP_WORKSPACES)
+ {
+ Display *display;
+ Window xroot;
+ GdkScreen *screen;
+ GtkWidget *submenu;
+ int j;
+
+ MenuItem to_another_workspace = {
+ 0, MENU_ITEM_NORMAL,
+ NULL, FALSE,
+ N_("Move to Another _Workspace")
+ };
+
+ meta_verbose ("Creating %d-workspace menu current space %lu\n",
+ n_workspaces, active_workspace);
+
+ display = gdk_x11_drawable_get_xdisplay (GTK_WIDGET (frames)->window);
+
+ screen = gdk_drawable_get_screen (GTK_WIDGET (frames)->window);
+ xroot = GDK_DRAWABLE_XID (gdk_screen_get_root_window (screen));
+
+ submenu = gtk_menu_new ();
+
+ g_assert (mi==NULL);
+ mi = menu_item_new (&to_another_workspace, -1);
+ gtk_menu_item_set_submenu (GTK_MENU_ITEM (mi), submenu);
+
+ for (j = 0; j < n_workspaces; j++)
+ {
+ char *label;
+ MenuData *md;
+ unsigned int key;
+ MetaVirtualModifier mods;
+ MenuItem moveitem;
+ GtkWidget *submi;
+
+ meta_core_get_menu_accelerator (META_MENU_OP_WORKSPACES,
+ j + 1,
+ &key, &mods);
+
+ label = get_workspace_name_with_accel (display, xroot, j);
+
+ moveitem.type = MENU_ITEM_NORMAL;
+ moveitem.op = META_MENU_OP_WORKSPACES;
+ moveitem.label = label;
+ submi = menu_item_new (&moveitem, j + 1);
+
+ g_free (label);
+
+ if ((active_workspace == (unsigned)j) && (ops & META_MENU_OP_UNSTICK))
+ gtk_widget_set_sensitive (submi, FALSE);
+
+ md = g_new (MenuData, 1);
+
+ md->menu = menu;
+ md->op = META_MENU_OP_WORKSPACES;
+
+ g_object_set_data (G_OBJECT (submi),
+ "workspace",
+ GINT_TO_POINTER (j));
+
+ gtk_signal_connect_full (GTK_OBJECT (submi),
+ "activate",
+ G_CALLBACK (activate_cb),
+ NULL,
+ md,
+ g_free, FALSE, FALSE);
+
+ gtk_menu_shell_append (GTK_MENU_SHELL (submenu), submi);
+
+ gtk_widget_show (submi);
+ }
+ }
+ else
+ meta_verbose ("not creating workspace menu\n");
+ }
+ else if (menuitem.type != MENU_ITEM_SEPARATOR)
+ {
+ meta_core_get_menu_accelerator (menuitems[i].op, -1,
+ &key, &mods);
+
+ if (insensitive & menuitem.op)
+ gtk_widget_set_sensitive (mi, FALSE);
+
+ md = g_new (MenuData, 1);
+
+ md->menu = menu;
+ md->op = menuitem.op;
+
+ gtk_signal_connect_full (GTK_OBJECT (mi),
+ "activate",
+ G_CALLBACK (activate_cb),
+ NULL,
+ md,
+ g_free, FALSE, FALSE);
+ }
+
+ if (mi)
+ {
+ gtk_menu_shell_append (GTK_MENU_SHELL (menu->menu), mi);
+
+ gtk_widget_show (mi);
+ }
+ }
+ }
+
+ g_signal_connect (menu->menu, "selection_done", G_CALLBACK(menu_closed), menu);
+
+ return menu;
+}
+
+void meta_window_menu_popup(MetaWindowMenu* menu, int root_x, int root_y, int button, guint32 timestamp)
+{
+ GdkPoint* pt = g_new(GdkPoint, 1);
+
+ g_object_set_data_full(G_OBJECT(menu->menu), "destroy-point", pt, g_free);
+
+ pt->x = root_x;
+ pt->y = root_y;
+
+ gtk_menu_popup(GTK_MENU (menu->menu), NULL, NULL, popup_position_func, pt, button, timestamp);
+
+ if (!GTK_MENU_SHELL(menu->menu)->have_xgrab)
+ {
+ meta_warning("GtkMenu failed to grab the pointer\n");
+ }
+}
+
+void meta_window_menu_free(MetaWindowMenu* menu)
+{
+ gtk_widget_destroy(menu->menu);
+ g_free(menu);
+}
diff --git a/src/ui/menu.h b/src/ui/menu.h
new file mode 100644
index 00000000..29e85a5b
--- /dev/null
+++ b/src/ui/menu.h
@@ -0,0 +1,51 @@
+/* Marco window menu */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_MENU_H
+#define META_MENU_H
+
+#include <gtk/gtk.h>
+#include "frames.h"
+
+/* Stock icons */
+#define MARCO_STOCK_DELETE "window-close"
+#define MARCO_STOCK_RESTORE "view-restore"
+#define MARCO_STOCK_MINIMIZE "go-down"
+#define MARCO_STOCK_MAXIMIZE "view-fullscreen"
+
+
+
+struct _MetaWindowMenu {
+ MetaFrames* frames;
+ Window client_xwindow;
+ GtkWidget* menu;
+ MetaWindowMenuFunc func;
+ gpointer data;
+ MetaMenuOp ops;
+ MetaMenuOp insensitive;
+};
+
+MetaWindowMenu* meta_window_menu_new(MetaFrames* frames, MetaMenuOp ops, MetaMenuOp insensitive, Window client_xwindow, unsigned long active_workspace, int n_workspaces, MetaWindowMenuFunc func, gpointer data);
+void meta_window_menu_popup(MetaWindowMenu* menu, int root_x, int root_y, int button, guint32 timestamp);
+void meta_window_menu_free(MetaWindowMenu* menu);
+
+
+#endif
diff --git a/src/ui/metaaccellabel.c b/src/ui/metaaccellabel.c
new file mode 100644
index 00000000..5efd7d2e
--- /dev/null
+++ b/src/ui/metaaccellabel.c
@@ -0,0 +1,456 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco hacked-up GtkAccelLabel */
+/* Copyright (C) 2002 Red Hat, Inc. */
+/* GTK - The GIMP Toolkit
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * MetaAccelLabel: GtkLabel with accelerator monitoring facilities.
+ * Copyright (C) 1998 Tim Janik
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GTK+ Team and others 1997-2001. See the AUTHORS
+ * file for a list of people on the GTK+ Team. See the ChangeLog
+ * files for a list of changes. These files are distributed with
+ * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
+#include <config.h>
+#include "metaaccellabel.h"
+#include <gtk/gtk.h>
+#include <string.h>
+#include "util.h"
+
+static void meta_accel_label_class_init (MetaAccelLabelClass *klass);
+static void meta_accel_label_init (MetaAccelLabel *accel_label);
+static void meta_accel_label_destroy (GtkObject *object);
+static void meta_accel_label_finalize (GObject *object);
+static void meta_accel_label_size_request (GtkWidget *widget,
+ GtkRequisition *requisition);
+static gboolean meta_accel_label_expose_event (GtkWidget *widget,
+ GdkEventExpose *event);
+
+static void meta_accel_label_update (MetaAccelLabel *accel_label);
+static int meta_accel_label_get_accel_width (MetaAccelLabel *accel_label);
+
+
+static GtkLabelClass *parent_class = NULL;
+
+
+GType
+meta_accel_label_get_type (void)
+{
+ static GType accel_label_type = 0;
+
+ if (!accel_label_type)
+ {
+ static const GtkTypeInfo accel_label_info =
+ {
+ "MetaAccelLabel",
+ sizeof (MetaAccelLabel),
+ sizeof (MetaAccelLabelClass),
+ (GtkClassInitFunc) meta_accel_label_class_init,
+ (GtkObjectInitFunc) meta_accel_label_init,
+ /* reserved_1 */ NULL,
+ /* reserved_2 */ NULL,
+ (GtkClassInitFunc) NULL,
+ };
+
+ accel_label_type = gtk_type_unique (GTK_TYPE_LABEL, &accel_label_info);
+ }
+
+ return accel_label_type;
+}
+
+static void
+meta_accel_label_class_init (MetaAccelLabelClass *class)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (class);
+ GtkObjectClass *object_class = GTK_OBJECT_CLASS (class);
+ GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (class);
+
+ parent_class = g_type_class_peek_parent (class);
+
+ gobject_class->finalize = meta_accel_label_finalize;
+
+ object_class->destroy = meta_accel_label_destroy;
+
+ widget_class->size_request = meta_accel_label_size_request;
+ widget_class->expose_event = meta_accel_label_expose_event;
+
+ class->signal_quote1 = g_strdup ("<:");
+ class->signal_quote2 = g_strdup (":>");
+ /* This is the text that should appear next to menu accelerators
+ * that use the shift key. If the text on this key isn't typically
+ * translated on keyboards used for your language, don't translate
+ * this.
+ */
+ class->mod_name_shift = g_strdup (_("Shift"));
+ /* This is the text that should appear next to menu accelerators
+ * that use the control key. If the text on this key isn't typically
+ * translated on keyboards used for your language, don't translate
+ * this.
+ */
+ class->mod_name_control = g_strdup (_("Ctrl"));
+ /* This is the text that should appear next to menu accelerators
+ * that use the alt key. If the text on this key isn't typically
+ * translated on keyboards used for your language, don't translate
+ * this.
+ */
+ class->mod_name_alt = g_strdup (_("Alt"));
+ /* This is the text that should appear next to menu accelerators
+ * that use the meta key. If the text on this key isn't typically
+ * translated on keyboards used for your language, don't translate
+ * this.
+ */
+ class->mod_name_meta = g_strdup (_("Meta"));
+ /* This is the text that should appear next to menu accelerators
+ * that use the super key. If the text on this key isn't typically
+ * translated on keyboards used for your language, don't translate
+ * this.
+ */
+ class->mod_name_super = g_strdup (_("Super"));
+ /* This is the text that should appear next to menu accelerators
+ * that use the hyper key. If the text on this key isn't typically
+ * translated on keyboards used for your language, don't translate
+ * this.
+ */
+ class->mod_name_hyper = g_strdup (_("Hyper"));
+ /* This is the text that should appear next to menu accelerators
+ * that use the mod2 key. If the text on this key isn't typically
+ * translated on keyboards used for your language, don't translate
+ * this.
+ */
+ class->mod_name_mod2 = g_strdup (_("Mod2"));
+ /* This is the text that should appear next to menu accelerators
+ * that use the mod3 key. If the text on this key isn't typically
+ * translated on keyboards used for your language, don't translate
+ * this.
+ */
+ class->mod_name_mod3 = g_strdup (_("Mod3"));
+ /* This is the text that should appear next to menu accelerators
+ * that use the mod4 key. If the text on this key isn't typically
+ * translated on keyboards used for your language, don't translate
+ * this.
+ */
+ class->mod_name_mod4 = g_strdup (_("Mod4"));
+ /* This is the text that should appear next to menu accelerators
+ * that use the mod5 key. If the text on this key isn't typically
+ * translated on keyboards used for your language, don't translate
+ * this.
+ */
+ class->mod_name_mod5 = g_strdup (_("Mod5"));
+
+ class->mod_separator = g_strdup ("+");
+ class->accel_seperator = g_strdup (" / ");
+ class->latin1_to_char = TRUE;
+}
+
+static void
+meta_accel_label_init (MetaAccelLabel *accel_label)
+{
+ accel_label->accel_padding = 3;
+ accel_label->accel_string = NULL;
+
+ meta_accel_label_update (accel_label);
+}
+
+GtkWidget*
+meta_accel_label_new_with_mnemonic (const gchar *string)
+{
+ MetaAccelLabel *accel_label;
+
+ g_return_val_if_fail (string != NULL, NULL);
+
+ accel_label = g_object_new (META_TYPE_ACCEL_LABEL, NULL);
+
+ gtk_label_set_text_with_mnemonic (GTK_LABEL (accel_label), string);
+
+ return GTK_WIDGET (accel_label);
+}
+
+static void
+meta_accel_label_destroy (GtkObject *object)
+{
+ MetaAccelLabel *accel_label = META_ACCEL_LABEL (object);
+
+
+ g_free (accel_label->accel_string);
+ accel_label->accel_string = NULL;
+
+ accel_label->accel_mods = 0;
+ accel_label->accel_key = 0;
+
+ GTK_OBJECT_CLASS (parent_class)->destroy (object);
+}
+
+static void
+meta_accel_label_finalize (GObject *object)
+{
+ MetaAccelLabel *accel_label = META_ACCEL_LABEL (object);
+
+ g_free (accel_label->accel_string);
+
+ G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
+void
+meta_accel_label_set_accelerator (MetaAccelLabel *accel_label,
+ guint accelerator_key,
+ MetaVirtualModifier accelerator_mods)
+{
+ g_return_if_fail (META_IS_ACCEL_LABEL (accel_label));
+
+ if (accelerator_key != accel_label->accel_key ||
+ accelerator_mods != accel_label->accel_mods)
+ {
+ accel_label->accel_mods = accelerator_mods;
+ accel_label->accel_key = accelerator_key;
+
+ meta_accel_label_update (accel_label);
+ }
+}
+
+static int
+meta_accel_label_get_accel_width (MetaAccelLabel *accel_label)
+{
+ g_return_val_if_fail (META_IS_ACCEL_LABEL (accel_label), 0);
+
+ return (accel_label->accel_string_width +
+ (accel_label->accel_string_width ? accel_label->accel_padding : 0));
+}
+
+static void
+meta_accel_label_size_request (GtkWidget *widget,
+ GtkRequisition *requisition)
+{
+ MetaAccelLabel *accel_label = META_ACCEL_LABEL (widget);
+ PangoLayout *layout;
+ gint width;
+
+ if (GTK_WIDGET_CLASS (parent_class)->size_request)
+ GTK_WIDGET_CLASS (parent_class)->size_request (widget, requisition);
+
+ layout = gtk_widget_create_pango_layout (widget, accel_label->accel_string);
+ pango_layout_get_pixel_size (layout, &width, NULL);
+ accel_label->accel_string_width = width;
+
+ g_object_unref (G_OBJECT (layout));
+}
+
+static gboolean
+meta_accel_label_expose_event (GtkWidget *widget,
+ GdkEventExpose *event)
+{
+ MetaAccelLabel *accel_label = META_ACCEL_LABEL (widget);
+ GtkMisc *misc = GTK_MISC (accel_label);
+ PangoLayout *layout;
+
+ if (GTK_WIDGET_DRAWABLE (accel_label))
+ {
+ int ac_width;
+
+ ac_width = meta_accel_label_get_accel_width (accel_label);
+
+ if (widget->allocation.width >= widget->requisition.width + ac_width)
+ {
+ GtkTextDirection direction = gtk_widget_get_direction (widget);
+ gint x;
+ gint y;
+
+ if (direction == GTK_TEXT_DIR_RTL)
+ {
+ widget->allocation.x += ac_width;
+ }
+ widget->allocation.width -= ac_width;
+
+ if (GTK_WIDGET_CLASS (parent_class)->expose_event)
+ GTK_WIDGET_CLASS (parent_class)->expose_event (widget, event);
+
+ if (direction == GTK_TEXT_DIR_RTL)
+ {
+ widget->allocation.x -= ac_width;
+ }
+ widget->allocation.width += ac_width;
+
+ if (direction == GTK_TEXT_DIR_RTL)
+ {
+ x = widget->allocation.x + misc->xpad;
+ }
+ else
+ {
+ x = widget->allocation.x + widget->allocation.width - misc->xpad - ac_width;
+ }
+
+ y = (widget->allocation.y * (1.0 - misc->yalign) +
+ (widget->allocation.y + widget->allocation.height -
+ (widget->requisition.height - misc->ypad * 2)) *
+ misc->yalign) + 1.5;
+
+ layout = gtk_widget_create_pango_layout (widget, accel_label->accel_string);
+
+ gtk_paint_layout (widget->style,
+ widget->window,
+ GTK_WIDGET_STATE (widget),
+ FALSE,
+ &event->area,
+ widget,
+ "accellabel",
+ x, y,
+ layout);
+
+ g_object_unref (G_OBJECT (layout));
+ }
+ else
+ {
+ if (GTK_WIDGET_CLASS (parent_class)->expose_event)
+ GTK_WIDGET_CLASS (parent_class)->expose_event (widget, event);
+ }
+ }
+
+ return FALSE;
+}
+
+static void
+meta_accel_label_update (MetaAccelLabel *accel_label)
+{
+ MetaAccelLabelClass *class;
+ GString *gstring;
+ gboolean seen_mod = FALSE;
+ gunichar ch;
+
+ g_return_if_fail (META_IS_ACCEL_LABEL (accel_label));
+
+ class = META_ACCEL_LABEL_GET_CLASS (accel_label);
+
+ g_free (accel_label->accel_string);
+ accel_label->accel_string = NULL;
+
+ gstring = g_string_new (accel_label->accel_string);
+ g_string_append (gstring, gstring->len ? class->accel_seperator : " ");
+
+ if (accel_label->accel_mods & META_VIRTUAL_SHIFT_MASK)
+ {
+ g_string_append (gstring, class->mod_name_shift);
+ seen_mod = TRUE;
+ }
+ if (accel_label->accel_mods & META_VIRTUAL_CONTROL_MASK)
+ {
+ if (seen_mod)
+ g_string_append (gstring, class->mod_separator);
+ g_string_append (gstring, class->mod_name_control);
+ seen_mod = TRUE;
+ }
+ if (accel_label->accel_mods & META_VIRTUAL_ALT_MASK)
+ {
+ if (seen_mod)
+ g_string_append (gstring, class->mod_separator);
+ g_string_append (gstring, class->mod_name_alt);
+ seen_mod = TRUE;
+ }
+ if (accel_label->accel_mods & META_VIRTUAL_META_MASK)
+ {
+ if (seen_mod)
+ g_string_append (gstring, class->mod_separator);
+ g_string_append (gstring, class->mod_name_meta);
+ seen_mod = TRUE;
+ }
+ if (accel_label->accel_mods & META_VIRTUAL_SUPER_MASK)
+ {
+ if (seen_mod)
+ g_string_append (gstring, class->mod_separator);
+ g_string_append (gstring, class->mod_name_super);
+ seen_mod = TRUE;
+ }
+ if (accel_label->accel_mods & META_VIRTUAL_HYPER_MASK)
+ {
+ if (seen_mod)
+ g_string_append (gstring, class->mod_separator);
+ g_string_append (gstring, class->mod_name_hyper);
+ seen_mod = TRUE;
+ }
+ if (accel_label->accel_mods & META_VIRTUAL_MOD2_MASK)
+ {
+ if (seen_mod)
+ g_string_append (gstring, class->mod_separator);
+ g_string_append (gstring, class->mod_name_mod2);
+ seen_mod = TRUE;
+ }
+ if (accel_label->accel_mods & META_VIRTUAL_MOD3_MASK)
+ {
+ if (seen_mod)
+ g_string_append (gstring, class->mod_separator);
+ g_string_append (gstring, class->mod_name_mod3);
+ seen_mod = TRUE;
+ }
+ if (accel_label->accel_mods & META_VIRTUAL_MOD4_MASK)
+ {
+ if (seen_mod)
+ g_string_append (gstring, class->mod_separator);
+ g_string_append (gstring, class->mod_name_mod4);
+ seen_mod = TRUE;
+ }
+ if (accel_label->accel_mods & META_VIRTUAL_MOD5_MASK)
+ {
+ if (seen_mod)
+ g_string_append (gstring, class->mod_separator);
+ g_string_append (gstring, class->mod_name_mod5);
+ seen_mod = TRUE;
+ }
+
+ if (seen_mod)
+ g_string_append (gstring, class->mod_separator);
+
+ ch = gdk_keyval_to_unicode (accel_label->accel_key);
+ if (ch && (g_unichar_isgraph (ch) || ch == ' ') &&
+ (ch < 0x80 || class->latin1_to_char))
+ {
+ switch (ch)
+ {
+ case ' ':
+ g_string_append (gstring, "Space");
+ break;
+ case '\\':
+ g_string_append (gstring, "Backslash");
+ break;
+ default:
+ g_string_append_unichar (gstring, g_unichar_toupper (ch));
+ break;
+ }
+ }
+ else
+ {
+ gchar *tmp;
+
+ tmp = gtk_accelerator_name (accel_label->accel_key, 0);
+ if (tmp[0] != 0 && tmp[1] == 0)
+ tmp[0] = g_ascii_toupper (tmp[0]);
+ g_string_append (gstring, tmp);
+ g_free (tmp);
+ }
+
+ g_free (accel_label->accel_string);
+ accel_label->accel_string = gstring->str;
+ g_string_free (gstring, FALSE);
+
+ g_assert (accel_label->accel_string);
+ /* accel_label->accel_string = g_strdup ("-/-"); */
+
+ gtk_widget_queue_resize (GTK_WIDGET (accel_label));
+}
diff --git a/src/ui/metaaccellabel.h b/src/ui/metaaccellabel.h
new file mode 100644
index 00000000..34914c92
--- /dev/null
+++ b/src/ui/metaaccellabel.h
@@ -0,0 +1,106 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco hacked-up GtkAccelLabel */
+/* Copyright (C) 2002 Red Hat, Inc. */
+/* GTK - The GIMP Toolkit
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
+ *
+ * MetaAccelLabel: GtkLabel with accelerator monitoring facilities.
+ * Copyright (C) 1998 Tim Janik
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+/*
+ * Modified by the GTK+ Team and others 1997-2001. See the AUTHORS
+ * file for a list of people on the GTK+ Team. See the ChangeLog
+ * files for a list of changes. These files are distributed with
+ * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
+ */
+
+#ifndef __META_ACCEL_LABEL_H__
+#define __META_ACCEL_LABEL_H__
+
+#include <gtk/gtk.h>
+#include "common.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+
+#define META_TYPE_ACCEL_LABEL (meta_accel_label_get_type ())
+#define META_ACCEL_LABEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), META_TYPE_ACCEL_LABEL, MetaAccelLabel))
+#define META_ACCEL_LABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), META_TYPE_ACCEL_LABEL, MetaAccelLabelClass))
+#define META_IS_ACCEL_LABEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), META_TYPE_ACCEL_LABEL))
+#define META_IS_ACCEL_LABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), META_TYPE_ACCEL_LABEL))
+#define META_ACCEL_LABEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), META_TYPE_ACCEL_LABEL, MetaAccelLabelClass))
+
+
+typedef struct _MetaAccelLabel MetaAccelLabel;
+typedef struct _MetaAccelLabelClass MetaAccelLabelClass;
+
+struct _MetaAccelLabel
+{
+ GtkLabel label;
+
+ MetaVirtualModifier accel_mods;
+ guint accel_key;
+ guint accel_padding;
+ gchar *accel_string;
+ guint16 accel_string_width;
+};
+
+struct _MetaAccelLabelClass
+{
+ GtkLabelClass parent_class;
+
+ gchar *signal_quote1;
+ gchar *signal_quote2;
+ gchar *mod_name_shift;
+ gchar *mod_name_control;
+ gchar *mod_name_alt;
+ gchar *mod_name_meta;
+ gchar *mod_name_super;
+ gchar *mod_name_hyper;
+ gchar *mod_name_mod2;
+ gchar *mod_name_mod3;
+ gchar *mod_name_mod4;
+ gchar *mod_name_mod5;
+ gchar *mod_separator;
+ gchar *accel_seperator;
+ guint latin1_to_char : 1;
+
+ /* Padding for future expansion */
+ void (*_gtk_reserved1) (void);
+ void (*_gtk_reserved2) (void);
+ void (*_gtk_reserved3) (void);
+ void (*_gtk_reserved4) (void);
+};
+
+GType meta_accel_label_get_type (void) G_GNUC_CONST;
+GtkWidget* meta_accel_label_new_with_mnemonic (const gchar *string);
+void meta_accel_label_set_accelerator (MetaAccelLabel *accel_label,
+ guint accelerator_key,
+ MetaVirtualModifier accelerator_mods);
+
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+
+#endif /* __META_ACCEL_LABEL_H__ */
diff --git a/src/ui/preview-widget.c b/src/ui/preview-widget.c
new file mode 100644
index 00000000..8fcd2517
--- /dev/null
+++ b/src/ui/preview-widget.c
@@ -0,0 +1,601 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco theme preview widget */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#define _GNU_SOURCE
+#define _XOPEN_SOURCE 600 /* for the maths routines over floats */
+
+#include <math.h>
+#include <gtk/gtk.h>
+#include "preview-widget.h"
+
+static void meta_preview_class_init (MetaPreviewClass *klass);
+static void meta_preview_init (MetaPreview *preview);
+static void meta_preview_size_request (GtkWidget *widget,
+ GtkRequisition *req);
+static void meta_preview_size_allocate (GtkWidget *widget,
+ GtkAllocation *allocation);
+static gboolean meta_preview_expose (GtkWidget *widget,
+ GdkEventExpose *event);
+static void meta_preview_finalize (GObject *object);
+
+static GtkWidgetClass *parent_class;
+
+GType
+meta_preview_get_type (void)
+{
+ static GType preview_type = 0;
+
+ if (!preview_type)
+ {
+ static const GtkTypeInfo preview_info =
+ {
+ "MetaPreview",
+ sizeof (MetaPreview),
+ sizeof (MetaPreviewClass),
+ (GtkClassInitFunc) meta_preview_class_init,
+ (GtkObjectInitFunc) meta_preview_init,
+ /* reserved_1 */ NULL,
+ /* reserved_2 */ NULL,
+ (GtkClassInitFunc) NULL,
+ };
+
+ preview_type = gtk_type_unique (GTK_TYPE_BIN, &preview_info);
+ }
+
+ return preview_type;
+}
+
+static void
+meta_preview_class_init (MetaPreviewClass *class)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (class);
+ GtkWidgetClass *widget_class;
+
+ widget_class = (GtkWidgetClass*) class;
+ parent_class = g_type_class_peek (GTK_TYPE_BIN);
+
+ gobject_class->finalize = meta_preview_finalize;
+
+ widget_class->expose_event = meta_preview_expose;
+ widget_class->size_request = meta_preview_size_request;
+ widget_class->size_allocate = meta_preview_size_allocate;
+}
+
+static void
+meta_preview_init (MetaPreview *preview)
+{
+ int i;
+
+ gtk_widget_set_has_window (GTK_WIDGET (preview), FALSE);
+
+ i = 0;
+ while (i < MAX_BUTTONS_PER_CORNER)
+ {
+ preview->button_layout.left_buttons[i] = META_BUTTON_FUNCTION_LAST;
+ preview->button_layout.right_buttons[i] = META_BUTTON_FUNCTION_LAST;
+ ++i;
+ }
+
+ preview->button_layout.left_buttons[0] = META_BUTTON_FUNCTION_MENU;
+
+ preview->button_layout.right_buttons[0] = META_BUTTON_FUNCTION_MINIMIZE;
+ preview->button_layout.right_buttons[1] = META_BUTTON_FUNCTION_MAXIMIZE;
+ preview->button_layout.right_buttons[2] = META_BUTTON_FUNCTION_CLOSE;
+
+ preview->type = META_FRAME_TYPE_NORMAL;
+ preview->flags =
+ META_FRAME_ALLOWS_DELETE |
+ META_FRAME_ALLOWS_MENU |
+ META_FRAME_ALLOWS_MINIMIZE |
+ META_FRAME_ALLOWS_MAXIMIZE |
+ META_FRAME_ALLOWS_VERTICAL_RESIZE |
+ META_FRAME_ALLOWS_HORIZONTAL_RESIZE |
+ META_FRAME_HAS_FOCUS |
+ META_FRAME_ALLOWS_SHADE |
+ META_FRAME_ALLOWS_MOVE;
+
+ preview->left_width = -1;
+ preview->right_width = -1;
+ preview->top_height = -1;
+ preview->bottom_height = -1;
+}
+
+GtkWidget*
+meta_preview_new (void)
+{
+ MetaPreview *preview;
+
+ preview = gtk_type_new (META_TYPE_PREVIEW);
+
+ return GTK_WIDGET (preview);
+}
+
+static void
+meta_preview_finalize (GObject *object)
+{
+ MetaPreview *preview;
+
+ preview = META_PREVIEW (object);
+
+ g_free (preview->title);
+ preview->title = NULL;
+
+ G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
+static void
+ensure_info (MetaPreview *preview)
+{
+ GtkWidget *widget;
+
+ widget = GTK_WIDGET (preview);
+
+ if (preview->layout == NULL)
+ {
+ PangoFontDescription *font_desc;
+ double scale;
+ PangoAttrList *attrs;
+ PangoAttribute *attr;
+
+ if (preview->theme)
+ scale = meta_theme_get_title_scale (preview->theme,
+ preview->type,
+ preview->flags);
+ else
+ scale = 1.0;
+
+ preview->layout = gtk_widget_create_pango_layout (widget,
+ preview->title);
+
+ font_desc = meta_gtk_widget_get_font_desc (widget, scale, NULL);
+
+ preview->text_height =
+ meta_pango_font_desc_get_text_height (font_desc,
+ gtk_widget_get_pango_context (widget));
+
+ attrs = pango_attr_list_new ();
+
+ attr = pango_attr_size_new (pango_font_description_get_size (font_desc));
+ attr->start_index = 0;
+ attr->end_index = G_MAXINT;
+
+ pango_attr_list_insert (attrs, attr);
+
+ pango_layout_set_attributes (preview->layout, attrs);
+
+ pango_attr_list_unref (attrs);
+
+ pango_font_description_free (font_desc);
+ }
+
+ if (preview->top_height < 0)
+ {
+ if (preview->theme)
+ {
+ meta_theme_get_frame_borders (preview->theme,
+ preview->type,
+ preview->text_height,
+ preview->flags,
+ &preview->top_height,
+ &preview->bottom_height,
+ &preview->left_width,
+ &preview->right_width);
+ }
+ else
+ {
+ preview->top_height = 0;
+ preview->bottom_height = 0;
+ preview->left_width = 0;
+ preview->right_width = 0;
+ }
+ }
+}
+
+static gboolean
+meta_preview_expose (GtkWidget *widget,
+ GdkEventExpose *event)
+{
+ MetaPreview *preview;
+ GtkAllocation allocation;
+ int border_width;
+ int client_width;
+ int client_height;
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST] =
+ {
+ META_BUTTON_STATE_NORMAL,
+ META_BUTTON_STATE_NORMAL,
+ META_BUTTON_STATE_NORMAL,
+ META_BUTTON_STATE_NORMAL
+ };
+
+ g_return_val_if_fail (META_IS_PREVIEW (widget), FALSE);
+ g_return_val_if_fail (event != NULL, FALSE);
+
+ preview = META_PREVIEW (widget);
+
+ ensure_info (preview);
+
+ border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
+
+ gtk_widget_get_allocation (widget, &allocation);
+ client_width = allocation.width - preview->left_width - preview->right_width - border_width * 2;
+ client_height = allocation.height - preview->top_height - preview->bottom_height - border_width * 2;
+
+ if (client_width < 0)
+ client_width = 1;
+ if (client_height < 0)
+ client_height = 1;
+
+ if (preview->theme)
+ {
+ border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
+
+ meta_theme_draw_frame (preview->theme,
+ widget,
+ gtk_widget_get_window (widget),
+ &event->area,
+ allocation.x + border_width,
+ allocation.y + border_width,
+ preview->type,
+ preview->flags,
+ client_width, client_height,
+ preview->layout,
+ preview->text_height,
+ &preview->button_layout,
+ button_states,
+ meta_preview_get_mini_icon (),
+ meta_preview_get_icon ());
+ }
+
+ /* draw child */
+ return GTK_WIDGET_CLASS (parent_class)->expose_event (widget, event);
+}
+
+static void
+meta_preview_size_request (GtkWidget *widget,
+ GtkRequisition *req)
+{
+ MetaPreview *preview;
+ GtkWidget *child;
+ guint border_width;
+
+ preview = META_PREVIEW (widget);
+
+ ensure_info (preview);
+
+ req->width = preview->left_width + preview->right_width;
+ req->height = preview->top_height + preview->bottom_height;
+
+ child = gtk_bin_get_child (GTK_BIN (preview));
+ if (child &&
+ gtk_widget_get_visible (child))
+ {
+ GtkRequisition child_requisition;
+
+ gtk_widget_size_request (child, &child_requisition);
+
+ req->width += child_requisition.width;
+ req->height += child_requisition.height;
+ }
+ else
+ {
+#define NO_CHILD_WIDTH 80
+#define NO_CHILD_HEIGHT 20
+ req->width += NO_CHILD_WIDTH;
+ req->height += NO_CHILD_HEIGHT;
+ }
+
+ border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
+ req->width += border_width * 2;
+ req->height += border_width * 2;
+}
+
+static void
+meta_preview_size_allocate (GtkWidget *widget,
+ GtkAllocation *allocation)
+{
+ MetaPreview *preview;
+ int border_width;
+ GtkAllocation child_allocation;
+ GtkWidget *child;
+
+ preview = META_PREVIEW (widget);
+
+ ensure_info (preview);
+
+ widget->allocation = *allocation;
+
+ border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
+
+ child = gtk_bin_get_child (GTK_BIN (widget));
+ if (child &&
+ gtk_widget_get_visible (child))
+ {
+ child_allocation.x = widget->allocation.x + border_width + preview->left_width;
+ child_allocation.y = widget->allocation.y + border_width + preview->top_height;
+
+ child_allocation.width = MAX (1, widget->allocation.width - border_width * 2 - preview->left_width - preview->right_width);
+ child_allocation.height = MAX (1, widget->allocation.height - border_width * 2 - preview->top_height - preview->bottom_height);
+
+ gtk_widget_size_allocate (gtk_bin_get_child (GTK_BIN (widget)), &child_allocation);
+ }
+}
+
+static void
+clear_cache (MetaPreview *preview)
+{
+ if (preview->layout)
+ {
+ g_object_unref (G_OBJECT (preview->layout));
+ preview->layout = NULL;
+ }
+
+ preview->left_width = -1;
+ preview->right_width = -1;
+ preview->top_height = -1;
+ preview->bottom_height = -1;
+}
+
+void
+meta_preview_set_theme (MetaPreview *preview,
+ MetaTheme *theme)
+{
+ g_return_if_fail (META_IS_PREVIEW (preview));
+
+ preview->theme = theme;
+
+ clear_cache (preview);
+
+ gtk_widget_queue_resize (GTK_WIDGET (preview));
+}
+
+void
+meta_preview_set_title (MetaPreview *preview,
+ const char *title)
+{
+ g_return_if_fail (META_IS_PREVIEW (preview));
+
+ g_free (preview->title);
+ preview->title = g_strdup (title);
+
+ clear_cache (preview);
+
+ gtk_widget_queue_resize (GTK_WIDGET (preview));
+}
+
+void
+meta_preview_set_frame_type (MetaPreview *preview,
+ MetaFrameType type)
+{
+ g_return_if_fail (META_IS_PREVIEW (preview));
+
+ preview->type = type;
+
+ clear_cache (preview);
+
+ gtk_widget_queue_resize (GTK_WIDGET (preview));
+}
+
+void
+meta_preview_set_frame_flags (MetaPreview *preview,
+ MetaFrameFlags flags)
+{
+ g_return_if_fail (META_IS_PREVIEW (preview));
+
+ preview->flags = flags;
+
+ clear_cache (preview);
+
+ gtk_widget_queue_resize (GTK_WIDGET (preview));
+}
+
+void
+meta_preview_set_button_layout (MetaPreview *preview,
+ const MetaButtonLayout *button_layout)
+{
+ g_return_if_fail (META_IS_PREVIEW (preview));
+
+ preview->button_layout = *button_layout;
+
+ gtk_widget_queue_draw (GTK_WIDGET (preview));
+}
+
+GdkPixbuf*
+meta_preview_get_icon (void)
+{
+ static GdkPixbuf *default_icon = NULL;
+
+ if (default_icon == NULL)
+ {
+ GtkIconTheme *theme;
+ gboolean icon_exists;
+
+ theme = gtk_icon_theme_get_default ();
+
+ icon_exists = gtk_icon_theme_has_icon (theme, META_DEFAULT_ICON_NAME);
+
+ if (icon_exists)
+ default_icon = gtk_icon_theme_load_icon (theme,
+ META_DEFAULT_ICON_NAME,
+ META_ICON_WIDTH,
+ 0,
+ NULL);
+ else
+ default_icon = gtk_icon_theme_load_icon (theme,
+ "gtk-missing-image",
+ META_ICON_WIDTH,
+ 0,
+ NULL);
+
+ g_assert (default_icon);
+ }
+
+ return default_icon;
+}
+
+GdkPixbuf*
+meta_preview_get_mini_icon (void)
+{
+ static GdkPixbuf *default_icon = NULL;
+
+ if (default_icon == NULL)
+ {
+ GtkIconTheme *theme;
+ gboolean icon_exists;
+
+ theme = gtk_icon_theme_get_default ();
+
+ icon_exists = gtk_icon_theme_has_icon (theme, META_DEFAULT_ICON_NAME);
+
+ if (icon_exists)
+ default_icon = gtk_icon_theme_load_icon (theme,
+ META_DEFAULT_ICON_NAME,
+ META_MINI_ICON_WIDTH,
+ 0,
+ NULL);
+ else
+ default_icon = gtk_icon_theme_load_icon (theme,
+ "gtk-missing-image",
+ META_MINI_ICON_WIDTH,
+ 0,
+ NULL);
+
+ g_assert (default_icon);
+ }
+
+ return default_icon;
+}
+
+GdkRegion *
+meta_preview_get_clip_region (MetaPreview *preview, gint new_window_width, gint new_window_height)
+{
+ GdkRectangle xrect;
+ GdkRegion *corners_xregion, *window_xregion;
+ gint flags;
+ MetaFrameLayout *fgeom;
+ MetaFrameStyle *frame_style;
+
+ g_return_val_if_fail (META_IS_PREVIEW (preview), NULL);
+
+ flags = (META_PREVIEW (preview)->flags);
+
+ window_xregion = gdk_region_new ();
+
+ xrect.x = 0;
+ xrect.y = 0;
+ xrect.width = new_window_width;
+ xrect.height = new_window_height;
+
+ gdk_region_union_with_rect (window_xregion, &xrect);
+
+ if (preview->theme == NULL)
+ return window_xregion;
+
+ /* Otherwise, we do have a theme, so calculate the corners */
+ frame_style = meta_theme_get_frame_style (preview->theme,
+ META_FRAME_TYPE_NORMAL, flags);
+
+ fgeom = frame_style->layout;
+
+ corners_xregion = gdk_region_new ();
+
+ if (fgeom->top_left_corner_rounded_radius != 0)
+ {
+ const int corner = fgeom->top_left_corner_rounded_radius;
+ const float radius = sqrt(corner) + corner;
+ int i;
+
+ for (i=0; i<corner; i++)
+ {
+
+ const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5))));
+ xrect.x = 0;
+ xrect.y = i;
+ xrect.width = width;
+ xrect.height = 1;
+
+ gdk_region_union_with_rect (corners_xregion, &xrect);
+ }
+ }
+
+ if (fgeom->top_right_corner_rounded_radius != 0)
+ {
+ const int corner = fgeom->top_right_corner_rounded_radius;
+ const float radius = sqrt(corner) + corner;
+ int i;
+
+ for (i=0; i<corner; i++)
+ {
+ const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5))));
+ xrect.x = new_window_width - width;
+ xrect.y = i;
+ xrect.width = width;
+ xrect.height = 1;
+
+ gdk_region_union_with_rect (corners_xregion, &xrect);
+ }
+ }
+
+ if (fgeom->bottom_left_corner_rounded_radius != 0)
+ {
+ const int corner = fgeom->bottom_left_corner_rounded_radius;
+ const float radius = sqrt(corner) + corner;
+ int i;
+
+ for (i=0; i<corner; i++)
+ {
+ const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5))));
+ xrect.x = 0;
+ xrect.y = new_window_height - i - 1;
+ xrect.width = width;
+ xrect.height = 1;
+
+ gdk_region_union_with_rect (corners_xregion, &xrect);
+ }
+ }
+
+ if (fgeom->bottom_right_corner_rounded_radius != 0)
+ {
+ const int corner = fgeom->bottom_right_corner_rounded_radius;
+ const float radius = sqrt(corner) + corner;
+ int i;
+
+ for (i=0; i<corner; i++)
+ {
+ const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5))));
+ xrect.x = new_window_width - width;
+ xrect.y = new_window_height - i - 1;
+ xrect.width = width;
+ xrect.height = 1;
+
+ gdk_region_union_with_rect (corners_xregion, &xrect);
+ }
+ }
+
+ gdk_region_subtract (window_xregion, corners_xregion);
+ gdk_region_destroy (corners_xregion);
+
+ return window_xregion;
+}
+
+
diff --git a/src/ui/preview-widget.h b/src/ui/preview-widget.h
new file mode 100644
index 00000000..4b213714
--- /dev/null
+++ b/src/ui/preview-widget.h
@@ -0,0 +1,87 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco theme preview widget */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include "theme.h"
+#include <gtk/gtk.h>
+
+#ifndef META_PREVIEW_WIDGET_H
+#define META_PREVIEW_WIDGET_H
+
+#define META_TYPE_PREVIEW (meta_preview_get_type ())
+#define META_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), META_TYPE_PREVIEW, MetaPreview))
+#define META_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), META_TYPE_PREVIEW, MetaPreviewClass))
+#define META_IS_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), META_TYPE_PREVIEW))
+#define META_IS_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), META_TYPE_PREVIEW))
+#define META_PREVIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), META_TYPE_PREVIEW, MetaPreviewClass))
+
+typedef struct _MetaPreview MetaPreview;
+typedef struct _MetaPreviewClass MetaPreviewClass;
+
+struct _MetaPreview
+{
+ GtkBin bin;
+
+ MetaTheme *theme;
+ char *title;
+ MetaFrameType type;
+ MetaFrameFlags flags;
+
+ PangoLayout *layout;
+ int text_height;
+
+ int left_width;
+ int right_width;
+ int top_height;
+ int bottom_height;
+
+ MetaButtonLayout button_layout;
+};
+
+struct _MetaPreviewClass
+{
+ GtkBinClass parent_class;
+};
+
+
+GType meta_preview_get_type (void) G_GNUC_CONST;
+GtkWidget* meta_preview_new (void);
+
+void meta_preview_set_theme (MetaPreview *preview,
+ MetaTheme *theme);
+void meta_preview_set_title (MetaPreview *preview,
+ const char *title);
+void meta_preview_set_frame_type (MetaPreview *preview,
+ MetaFrameType type);
+void meta_preview_set_frame_flags (MetaPreview *preview,
+ MetaFrameFlags flags);
+void meta_preview_set_button_layout (MetaPreview *preview,
+ const MetaButtonLayout *button_layout);
+
+GdkRegion * meta_preview_get_clip_region (MetaPreview *preview,
+ gint new_window_width,
+ gint new_window_height);
+
+GdkPixbuf* meta_preview_get_icon (void);
+GdkPixbuf* meta_preview_get_mini_icon (void);
+
+#endif
diff --git a/src/ui/resizepopup.c b/src/ui/resizepopup.c
new file mode 100644
index 00000000..67f39505
--- /dev/null
+++ b/src/ui/resizepopup.c
@@ -0,0 +1,217 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco resizing-terminal-window feedback */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "resizepopup.h"
+#include "util.h"
+#include <gtk/gtk.h>
+#include <gdk/gdkx.h>
+
+struct _MetaResizePopup
+{
+ GtkWidget *size_window;
+ GtkWidget *size_label;
+ Display *display;
+ int screen_number;
+
+ int vertical_size;
+ int horizontal_size;
+
+ gboolean showing;
+
+ MetaRectangle rect;
+};
+
+MetaResizePopup*
+meta_ui_resize_popup_new (Display *display,
+ int screen_number)
+{
+ MetaResizePopup *popup;
+
+ popup = g_new0 (MetaResizePopup, 1);
+
+ popup->display = display;
+ popup->screen_number = screen_number;
+
+ return popup;
+}
+
+void
+meta_ui_resize_popup_free (MetaResizePopup *popup)
+{
+ g_return_if_fail (popup != NULL);
+
+ if (popup->size_window)
+ gtk_widget_destroy (popup->size_window);
+
+ g_free (popup);
+}
+
+static void
+ensure_size_window (MetaResizePopup *popup)
+{
+ GtkWidget *frame;
+
+ if (popup->size_window)
+ return;
+
+ popup->size_window = gtk_window_new (GTK_WINDOW_POPUP);
+
+ gtk_window_set_screen (GTK_WINDOW (popup->size_window),
+ gdk_display_get_screen (gdk_x11_lookup_xdisplay (popup->display),
+ popup->screen_number));
+
+ /* never shrink the size window */
+ gtk_window_set_resizable (GTK_WINDOW (popup->size_window),
+ TRUE);
+
+ frame = gtk_frame_new (NULL);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_OUT);
+
+ gtk_container_add (GTK_CONTAINER (popup->size_window), frame);
+
+ popup->size_label = gtk_label_new ("");
+ gtk_misc_set_padding (GTK_MISC (popup->size_label), 3, 3);
+
+ gtk_container_add (GTK_CONTAINER (frame), popup->size_label);
+
+ gtk_widget_show_all (frame);
+}
+
+static void
+update_size_window (MetaResizePopup *popup)
+{
+ char *str;
+ int x, y;
+ int width, height;
+
+ g_return_if_fail (popup->size_window != NULL);
+
+ /* Translators: This represents the size of a window. The first number is
+ * the width of the window and the second is the height.
+ */
+ str = g_strdup_printf (_("%d x %d"),
+ popup->horizontal_size,
+ popup->vertical_size);
+
+ gtk_label_set_text (GTK_LABEL (popup->size_label), str);
+
+ g_free (str);
+
+ gtk_window_get_size (GTK_WINDOW (popup->size_window), &width, &height);
+
+ x = popup->rect.x + (popup->rect.width - width) / 2;
+ y = popup->rect.y + (popup->rect.height - height) / 2;
+
+ if (GTK_WIDGET_REALIZED (popup->size_window))
+ {
+ /* using move_resize to avoid jumpiness */
+ gdk_window_move_resize (popup->size_window->window,
+ x, y,
+ width, height);
+ }
+ else
+ {
+ gtk_window_move (GTK_WINDOW (popup->size_window),
+ x, y);
+ }
+}
+
+static void
+sync_showing (MetaResizePopup *popup)
+{
+ if (popup->showing)
+ {
+ if (popup->size_window)
+ gtk_widget_show (popup->size_window);
+
+ if (popup->size_window && GTK_WIDGET_REALIZED (popup->size_window))
+ gdk_window_raise (popup->size_window->window);
+ }
+ else
+ {
+ if (popup->size_window)
+ gtk_widget_hide (popup->size_window);
+ }
+}
+
+void
+meta_ui_resize_popup_set (MetaResizePopup *popup,
+ MetaRectangle rect,
+ int base_width,
+ int base_height,
+ int width_inc,
+ int height_inc)
+{
+ gboolean need_update_size;
+ int display_w, display_h;
+
+ g_return_if_fail (popup != NULL);
+
+ need_update_size = FALSE;
+
+ display_w = rect.width - base_width;
+ if (width_inc > 0)
+ display_w /= width_inc;
+
+ display_h = rect.height - base_height;
+ if (height_inc > 0)
+ display_h /= height_inc;
+
+ if (!meta_rectangle_equal(&popup->rect, &rect) ||
+ display_w != popup->horizontal_size ||
+ display_h != popup->vertical_size)
+ need_update_size = TRUE;
+
+ popup->rect = rect;
+ popup->vertical_size = display_h;
+ popup->horizontal_size = display_w;
+
+ if (need_update_size)
+ {
+ ensure_size_window (popup);
+ update_size_window (popup);
+ }
+
+ sync_showing (popup);
+}
+
+void
+meta_ui_resize_popup_set_showing (MetaResizePopup *popup,
+ gboolean showing)
+{
+ g_return_if_fail (popup != NULL);
+
+ if (showing == popup->showing)
+ return;
+
+ popup->showing = !!showing;
+
+ if (popup->showing)
+ {
+ ensure_size_window (popup);
+ update_size_window (popup);
+ }
+
+ sync_showing (popup);
+}
diff --git a/src/ui/tabpopup.c b/src/ui/tabpopup.c
new file mode 100644
index 00000000..e0a55447
--- /dev/null
+++ b/src/ui/tabpopup.c
@@ -0,0 +1,967 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco popup window thing showing windows you can tab to */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ * Copyright (C) 2002 Red Hat, Inc.
+ * Copyright (C) 2005 Elijah Newren
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+
+#include "util.h"
+#include "core.h"
+#include "tabpopup.h"
+/* FIXME these two includes are 100% broken ...
+ */
+#include "../core/workspace.h"
+#include "../core/frame-private.h"
+#include "draw-workspace.h"
+#include <gtk/gtk.h>
+#include <math.h>
+
+#define OUTSIDE_SELECT_RECT 2
+#define INSIDE_SELECT_RECT 2
+
+typedef struct _TabEntry TabEntry;
+
+struct _TabEntry
+{
+ MetaTabEntryKey key;
+ char *title;
+ GdkPixbuf *icon, *dimmed_icon;
+ GtkWidget *widget;
+ GdkRectangle rect;
+ GdkRectangle inner_rect;
+ guint blank : 1;
+};
+
+struct _MetaTabPopup
+{
+ GtkWidget *window;
+ GtkWidget *label;
+ GList *current;
+ GList *entries;
+ TabEntry *current_selected_entry;
+ GtkWidget *outline_window;
+ gboolean outline;
+};
+
+static GtkWidget* selectable_image_new (GdkPixbuf *pixbuf);
+static void select_image (GtkWidget *widget);
+static void unselect_image (GtkWidget *widget);
+
+static GtkWidget* selectable_workspace_new (MetaWorkspace *workspace);
+static void select_workspace (GtkWidget *widget);
+static void unselect_workspace (GtkWidget *widget);
+
+static gboolean
+outline_window_expose (GtkWidget *widget,
+ GdkEventExpose *event,
+ gpointer data)
+{
+ MetaTabPopup *popup;
+ TabEntry *te;
+ GtkStyle *style;
+ GdkWindow *window;
+ cairo_t *cr;
+
+ popup = data;
+
+ if (!popup->outline || popup->current_selected_entry == NULL)
+ return FALSE;
+
+ te = popup->current_selected_entry;
+ window = gtk_widget_get_window (widget);
+ style = gtk_widget_get_style (widget);
+ cr = gdk_cairo_create (window);
+
+ cairo_set_line_width (cr, 1.0);
+ gdk_cairo_set_source_color (cr, &style->white);
+
+ cairo_rectangle (cr,
+ 0.5, 0.5,
+ te->rect.width - 1,
+ te->rect.height - 1);
+ cairo_stroke (cr);
+
+ cairo_rectangle (cr,
+ te->inner_rect.x - 0.5, te->inner_rect.y - 0.5,
+ te->inner_rect.width + 1,
+ te->inner_rect.height + 1);
+ cairo_stroke (cr);
+
+ cairo_destroy (cr);
+
+ return FALSE;
+}
+
+static GdkPixbuf*
+dimm_icon (GdkPixbuf *pixbuf)
+{
+ int x, y, pixel_stride, row_stride;
+ guchar *row, *pixels;
+ int w, h;
+ GdkPixbuf *dimmed_pixbuf;
+
+ if (gdk_pixbuf_get_has_alpha (pixbuf))
+ {
+ dimmed_pixbuf = gdk_pixbuf_copy (pixbuf);
+ }
+ else
+ {
+ dimmed_pixbuf = gdk_pixbuf_add_alpha (pixbuf, FALSE, 0, 0, 0);
+ }
+
+ w = gdk_pixbuf_get_width (dimmed_pixbuf);
+ h = gdk_pixbuf_get_height (dimmed_pixbuf);
+
+ pixel_stride = 4;
+
+ row = gdk_pixbuf_get_pixels (dimmed_pixbuf);
+ row_stride = gdk_pixbuf_get_rowstride (dimmed_pixbuf);
+
+ for (y = 0; y < h; y++)
+ {
+ pixels = row;
+ for (x = 0; x < w; x++)
+ {
+ pixels[3] /= 2;
+ pixels += pixel_stride;
+ }
+ row += row_stride;
+ }
+ return dimmed_pixbuf;
+}
+
+static TabEntry*
+tab_entry_new (const MetaTabEntry *entry,
+ gint screen_width,
+ gboolean outline)
+{
+ TabEntry *te;
+
+ te = g_new (TabEntry, 1);
+ te->key = entry->key;
+ te->title = NULL;
+ if (entry->title)
+ {
+ gchar *str;
+ gchar *tmp;
+ gchar *formatter = "%s";
+
+ str = meta_g_utf8_strndup (entry->title, 4096);
+
+ if (entry->hidden)
+ {
+ formatter = "[%s]";
+ }
+
+ tmp = g_markup_printf_escaped (formatter, str);
+ g_free (str);
+ str = tmp;
+
+ if (entry->demands_attention)
+ {
+ /* Escape the whole line of text then markup the text and
+ * copy it back into the original buffer.
+ */
+ tmp = g_strdup_printf ("<b>%s</b>", str);
+ g_free (str);
+ str = tmp;
+ }
+
+ te->title=g_strdup(str);
+
+ g_free (str);
+ }
+ te->widget = NULL;
+ te->icon = entry->icon;
+ te->blank = entry->blank;
+ te->dimmed_icon = NULL;
+ if (te->icon)
+ {
+ g_object_ref (G_OBJECT (te->icon));
+ if (entry->hidden)
+ te->dimmed_icon = dimm_icon (entry->icon);
+ }
+
+ if (outline)
+ {
+ te->rect.x = entry->rect.x;
+ te->rect.y = entry->rect.y;
+ te->rect.width = entry->rect.width;
+ te->rect.height = entry->rect.height;
+
+ te->inner_rect.x = entry->inner_rect.x;
+ te->inner_rect.y = entry->inner_rect.y;
+ te->inner_rect.width = entry->inner_rect.width;
+ te->inner_rect.height = entry->inner_rect.height;
+ }
+ return te;
+}
+
+MetaTabPopup*
+meta_ui_tab_popup_new (const MetaTabEntry *entries,
+ int screen_number,
+ int entry_count,
+ int width,
+ gboolean outline)
+{
+ MetaTabPopup *popup;
+ int i, left, right, top, bottom;
+ int height;
+ GtkWidget *table;
+ GtkWidget *vbox;
+ GtkWidget *align;
+ GList *tmp;
+ GtkWidget *frame;
+ int max_label_width; /* the actual max width of the labels we create */
+ AtkObject *obj;
+ GdkScreen *screen;
+ int screen_width;
+
+ popup = g_new (MetaTabPopup, 1);
+
+ popup->outline_window = gtk_window_new (GTK_WINDOW_POPUP);
+
+ screen = gdk_display_get_screen (gdk_display_get_default (),
+ screen_number);
+ gtk_window_set_screen (GTK_WINDOW (popup->outline_window),
+ screen);
+
+ gtk_widget_set_app_paintable (popup->outline_window, TRUE);
+ gtk_widget_realize (popup->outline_window);
+
+ g_signal_connect (G_OBJECT (popup->outline_window), "expose_event",
+ G_CALLBACK (outline_window_expose), popup);
+
+ popup->window = gtk_window_new (GTK_WINDOW_POPUP);
+
+ gtk_window_set_screen (GTK_WINDOW (popup->window),
+ screen);
+
+ gtk_window_set_position (GTK_WINDOW (popup->window),
+ GTK_WIN_POS_CENTER_ALWAYS);
+ /* enable resizing, to get never-shrink behavior */
+ gtk_window_set_resizable (GTK_WINDOW (popup->window),
+ TRUE);
+ popup->current = NULL;
+ popup->entries = NULL;
+ popup->current_selected_entry = NULL;
+ popup->outline = outline;
+
+ screen_width = gdk_screen_get_width (screen);
+ for (i = 0; i < entry_count; ++i)
+ {
+ TabEntry* new_entry = tab_entry_new (&entries[i], screen_width, outline);
+ popup->entries = g_list_prepend (popup->entries, new_entry);
+ }
+
+ popup->entries = g_list_reverse (popup->entries);
+
+ g_assert (width > 0);
+ height = i / width;
+ if (i % width)
+ height += 1;
+
+ table = gtk_table_new (height, width, FALSE);
+ vbox = gtk_vbox_new (FALSE, 0);
+
+ frame = gtk_frame_new (NULL);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_OUT);
+ gtk_container_set_border_width (GTK_CONTAINER (table), 1);
+ gtk_container_add (GTK_CONTAINER (popup->window),
+ frame);
+ gtk_container_add (GTK_CONTAINER (frame),
+ vbox);
+
+ align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);
+
+ gtk_box_pack_start (GTK_BOX (vbox), align, TRUE, TRUE, 0);
+
+ gtk_container_add (GTK_CONTAINER (align),
+ table);
+
+ popup->label = gtk_label_new ("");
+
+ /* Set the accessible role of the label to a status bar so it
+ * will emit name changed events that can be used by screen
+ * readers.
+ */
+ obj = gtk_widget_get_accessible (popup->label);
+ atk_object_set_role (obj, ATK_ROLE_STATUSBAR);
+
+ gtk_misc_set_padding (GTK_MISC (popup->label), 3, 3);
+
+ gtk_box_pack_end (GTK_BOX (vbox), popup->label, FALSE, FALSE, 0);
+
+ max_label_width = 0;
+ top = 0;
+ bottom = 1;
+ tmp = popup->entries;
+
+ while (tmp && top < height)
+ {
+ left = 0;
+ right = 1;
+
+ while (tmp && left < width)
+ {
+ GtkWidget *image;
+ GtkRequisition req;
+
+ TabEntry *te;
+
+ te = tmp->data;
+
+ if (te->blank)
+ {
+ /* just stick a widget here to avoid special cases */
+ image = gtk_alignment_new (0.0, 0.0, 0.0, 0.0);
+ }
+ else if (outline)
+ {
+ if (te->dimmed_icon)
+ {
+ image = selectable_image_new (te->dimmed_icon);
+ }
+ else
+ {
+ image = selectable_image_new (te->icon);
+ }
+
+ gtk_misc_set_padding (GTK_MISC (image),
+ INSIDE_SELECT_RECT + OUTSIDE_SELECT_RECT + 1,
+ INSIDE_SELECT_RECT + OUTSIDE_SELECT_RECT + 1);
+ gtk_misc_set_alignment (GTK_MISC (image), 0.5, 0.5);
+ }
+ else
+ {
+ image = selectable_workspace_new ((MetaWorkspace *) te->key);
+ }
+
+ te->widget = image;
+
+ gtk_table_attach (GTK_TABLE (table),
+ te->widget,
+ left, right, top, bottom,
+ 0, 0,
+ 0, 0);
+
+ /* Efficiency rules! */
+ gtk_label_set_markup (GTK_LABEL (popup->label),
+ te->title);
+ gtk_widget_size_request (popup->label, &req);
+ max_label_width = MAX (max_label_width, req.width);
+
+ tmp = tmp->next;
+
+ ++left;
+ ++right;
+ }
+
+ ++top;
+ ++bottom;
+ }
+
+ /* remove all the temporary text */
+ gtk_label_set_text (GTK_LABEL (popup->label), "");
+ /* Make it so that we ellipsize if the text is too long */
+ gtk_label_set_ellipsize (GTK_LABEL (popup->label), PANGO_ELLIPSIZE_END);
+
+ /* Limit the window size to no bigger than screen_width/4 */
+ if (max_label_width>(screen_width/4))
+ {
+ max_label_width = screen_width/4;
+ }
+
+ max_label_width += 20; /* add random padding */
+
+ gtk_window_set_default_size (GTK_WINDOW (popup->window),
+ max_label_width,
+ -1);
+
+ return popup;
+}
+
+static void
+free_tab_entry (gpointer data, gpointer user_data)
+{
+ TabEntry *te;
+
+ te = data;
+
+ g_free (te->title);
+ if (te->icon)
+ g_object_unref (G_OBJECT (te->icon));
+ if (te->dimmed_icon)
+ g_object_unref (G_OBJECT (te->dimmed_icon));
+
+ g_free (te);
+}
+
+void
+meta_ui_tab_popup_free (MetaTabPopup *popup)
+{
+ meta_verbose ("Destroying tab popup window\n");
+
+ gtk_widget_destroy (popup->outline_window);
+ gtk_widget_destroy (popup->window);
+
+ g_list_foreach (popup->entries, free_tab_entry, NULL);
+
+ g_list_free (popup->entries);
+
+ g_free (popup);
+}
+
+void
+meta_ui_tab_popup_set_showing (MetaTabPopup *popup,
+ gboolean showing)
+{
+ if (showing)
+ {
+ gtk_widget_show_all (popup->window);
+ }
+ else
+ {
+ if (GTK_WIDGET_VISIBLE (popup->window))
+ {
+ meta_verbose ("Hiding tab popup window\n");
+ gtk_widget_hide (popup->window);
+ meta_core_increment_event_serial (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+ }
+ }
+}
+
+static void
+display_entry (MetaTabPopup *popup,
+ TabEntry *te)
+{
+ GdkRectangle rect;
+ GdkRegion *region;
+ GdkRegion *inner_region;
+
+
+ if (popup->current_selected_entry)
+ {
+ if (popup->outline)
+ unselect_image (popup->current_selected_entry->widget);
+ else
+ unselect_workspace (popup->current_selected_entry->widget);
+ }
+
+ gtk_label_set_markup (GTK_LABEL (popup->label), te->title);
+
+ if (popup->outline)
+ select_image (te->widget);
+ else
+ select_workspace (te->widget);
+
+ if (popup->outline)
+ {
+ /* Do stuff behind gtk's back */
+ gdk_window_hide (popup->outline_window->window);
+ meta_core_increment_event_serial (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+
+ rect = te->rect;
+ rect.x = 0;
+ rect.y = 0;
+
+ gdk_window_move_resize (popup->outline_window->window,
+ te->rect.x, te->rect.y,
+ te->rect.width, te->rect.height);
+
+ gdk_window_set_background (popup->outline_window->window,
+ &popup->outline_window->style->black);
+
+ region = gdk_region_rectangle (&rect);
+ inner_region = gdk_region_rectangle (&te->inner_rect);
+ gdk_region_subtract (region, inner_region);
+ gdk_region_destroy (inner_region);
+
+ gdk_window_shape_combine_region (popup->outline_window->window,
+ region,
+ 0, 0);
+
+ gdk_region_destroy (region);
+
+ /* This should piss off gtk a bit, but we don't want to raise
+ * above the tab popup. So, instead of calling gtk_widget_show,
+ * we manually set the window as mapped and then manually map it
+ * with gdk functions.
+ */
+ GTK_WIDGET_SET_FLAGS (popup->outline_window, GTK_MAPPED);
+ gdk_window_show_unraised (popup->outline_window->window);
+ }
+
+ /* Must be before we handle an expose for the outline window */
+ popup->current_selected_entry = te;
+}
+
+void
+meta_ui_tab_popup_forward (MetaTabPopup *popup)
+{
+ if (popup->current != NULL)
+ popup->current = popup->current->next;
+
+ if (popup->current == NULL)
+ popup->current = popup->entries;
+
+ if (popup->current != NULL)
+ {
+ TabEntry *te;
+
+ te = popup->current->data;
+
+ display_entry (popup, te);
+ }
+}
+
+void
+meta_ui_tab_popup_backward (MetaTabPopup *popup)
+{
+ if (popup->current != NULL)
+ popup->current = popup->current->prev;
+
+ if (popup->current == NULL)
+ popup->current = g_list_last (popup->entries);
+
+ if (popup->current != NULL)
+ {
+ TabEntry *te;
+
+ te = popup->current->data;
+
+ display_entry (popup, te);
+ }
+}
+
+MetaTabEntryKey
+meta_ui_tab_popup_get_selected (MetaTabPopup *popup)
+{
+ if (popup->current)
+ {
+ TabEntry *te;
+
+ te = popup->current->data;
+
+ return te->key;
+ }
+ else
+ return (MetaTabEntryKey)None;
+}
+
+void
+meta_ui_tab_popup_select (MetaTabPopup *popup,
+ MetaTabEntryKey key)
+{
+ GList *tmp;
+
+ /* Note, "key" may not be in the list of entries; other code assumes
+ * it's OK to pass in a key that isn't.
+ */
+
+ tmp = popup->entries;
+ while (tmp != NULL)
+ {
+ TabEntry *te;
+
+ te = tmp->data;
+
+ if (te->key == key)
+ {
+ popup->current = tmp;
+
+ display_entry (popup, te);
+
+ return;
+ }
+
+ tmp = tmp->next;
+ }
+}
+
+#define META_TYPE_SELECT_IMAGE (meta_select_image_get_type ())
+#define META_SELECT_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), META_TYPE_SELECT_IMAGE, MetaSelectImage))
+
+typedef struct _MetaSelectImage MetaSelectImage;
+typedef struct _MetaSelectImageClass MetaSelectImageClass;
+
+struct _MetaSelectImage
+{
+ GtkImage parent_instance;
+ guint selected : 1;
+};
+
+struct _MetaSelectImageClass
+{
+ GtkImageClass parent_class;
+};
+
+
+static GType meta_select_image_get_type (void) G_GNUC_CONST;
+
+static GtkWidget*
+selectable_image_new (GdkPixbuf *pixbuf)
+{
+ GtkWidget *w;
+
+ w = g_object_new (meta_select_image_get_type (), NULL);
+ gtk_image_set_from_pixbuf (GTK_IMAGE (w), pixbuf);
+
+ return w;
+}
+
+static void
+select_image (GtkWidget *widget)
+{
+ META_SELECT_IMAGE (widget)->selected = TRUE;
+ gtk_widget_queue_draw (widget);
+}
+
+static void
+unselect_image (GtkWidget *widget)
+{
+ META_SELECT_IMAGE (widget)->selected = FALSE;
+ gtk_widget_queue_draw (widget);
+}
+
+static void meta_select_image_class_init (MetaSelectImageClass *klass);
+static gboolean meta_select_image_expose_event (GtkWidget *widget,
+ GdkEventExpose *event);
+
+static GtkImageClass *parent_class;
+
+GType
+meta_select_image_get_type (void)
+{
+ static GType image_type = 0;
+
+ if (!image_type)
+ {
+ static const GTypeInfo image_info =
+ {
+ sizeof (MetaSelectImageClass),
+ NULL, /* base_init */
+ NULL, /* base_finalize */
+ (GClassInitFunc) meta_select_image_class_init,
+ NULL, /* class_finalize */
+ NULL, /* class_data */
+ sizeof (MetaSelectImage),
+ 16, /* n_preallocs */
+ (GInstanceInitFunc) NULL,
+ };
+
+ image_type = g_type_register_static (GTK_TYPE_IMAGE, "MetaSelectImage", &image_info, 0);
+ }
+
+ return image_type;
+}
+
+static void
+meta_select_image_class_init (MetaSelectImageClass *klass)
+{
+ GtkWidgetClass *widget_class;
+
+ parent_class = g_type_class_peek (gtk_image_get_type ());
+
+ widget_class = GTK_WIDGET_CLASS (klass);
+
+ widget_class->expose_event = meta_select_image_expose_event;
+}
+
+static gboolean
+meta_select_image_expose_event (GtkWidget *widget,
+ GdkEventExpose *event)
+{
+ if (META_SELECT_IMAGE (widget)->selected)
+ {
+ int x, y, w, h;
+ GtkMisc *misc;
+ GtkStyle *style;
+ GtkStateType state;
+ cairo_t *cr;
+
+ misc = GTK_MISC (widget);
+
+ x = (widget->allocation.x * (1.0 - misc->xalign) +
+ (widget->allocation.x + widget->allocation.width
+ - (widget->requisition.width - misc->xpad * 2)) *
+ misc->xalign) + 0.5;
+ y = (widget->allocation.y * (1.0 - misc->yalign) +
+ (widget->allocation.y + widget->allocation.height
+ - (widget->requisition.height - misc->ypad * 2)) *
+ misc->yalign) + 0.5;
+
+ x -= INSIDE_SELECT_RECT + 1;
+ y -= INSIDE_SELECT_RECT + 1;
+
+ w = widget->requisition.width - OUTSIDE_SELECT_RECT * 2 - 1;
+ h = widget->requisition.height - OUTSIDE_SELECT_RECT * 2 - 1;
+
+ style = gtk_widget_get_style (widget);
+ state = gtk_widget_get_state (widget);
+ cr = gdk_cairo_create (widget->window);
+
+ cairo_set_line_width (cr, 2.0);
+ gdk_cairo_set_source_color (cr, &style->fg[state]);
+
+ cairo_rectangle (cr, x, y, w + 1, h + 1);
+ cairo_stroke (cr);
+
+ cairo_set_line_width (cr, 1.0);
+#if 0
+ gdk_cairo_set_source_color (cr, &style->bg[GTK_STATE_SELECTED]);
+ cairo_rectangle (cr, x, y, w, h);
+ cairo_fill (cr);
+#endif
+
+#if 0
+ gtk_paint_focus (widget->style, widget->window,
+ &event->area, widget, "meta-tab-image",
+ x, y, w, h);
+#endif
+
+ cairo_destroy (cr);
+ }
+
+ return GTK_WIDGET_CLASS (parent_class)->expose_event (widget, event);
+}
+
+#define META_TYPE_SELECT_WORKSPACE (meta_select_workspace_get_type ())
+#define META_SELECT_WORKSPACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), META_TYPE_SELECT_WORKSPACE, MetaSelectWorkspace))
+
+typedef struct _MetaSelectWorkspace MetaSelectWorkspace;
+typedef struct _MetaSelectWorkspaceClass MetaSelectWorkspaceClass;
+
+struct _MetaSelectWorkspace
+{
+ GtkDrawingArea parent_instance;
+ MetaWorkspace *workspace;
+ guint selected : 1;
+};
+
+struct _MetaSelectWorkspaceClass
+{
+ GtkDrawingAreaClass parent_class;
+};
+
+
+static GType meta_select_workspace_get_type (void) G_GNUC_CONST;
+
+#define SELECT_OUTLINE_WIDTH 2
+#define MINI_WORKSPACE_WIDTH 48
+
+static GtkWidget*
+selectable_workspace_new (MetaWorkspace *workspace)
+{
+ GtkWidget *widget;
+ double screen_aspect;
+
+ widget = g_object_new (meta_select_workspace_get_type (), NULL);
+
+ screen_aspect = (double) workspace->screen->rect.height /
+ (double) workspace->screen->rect.width;
+
+ /* account for select rect */
+ gtk_widget_set_size_request (widget,
+ MINI_WORKSPACE_WIDTH + SELECT_OUTLINE_WIDTH * 2,
+ MINI_WORKSPACE_WIDTH * screen_aspect + SELECT_OUTLINE_WIDTH * 2);
+
+ META_SELECT_WORKSPACE (widget)->workspace = workspace;
+
+ return widget;
+}
+
+static void
+select_workspace (GtkWidget *widget)
+{
+ META_SELECT_WORKSPACE(widget)->selected = TRUE;
+ gtk_widget_queue_draw (widget);
+}
+
+static void
+unselect_workspace (GtkWidget *widget)
+{
+ META_SELECT_WORKSPACE (widget)->selected = FALSE;
+ gtk_widget_queue_draw (widget);
+}
+
+static void meta_select_workspace_class_init (MetaSelectWorkspaceClass *klass);
+
+static gboolean meta_select_workspace_expose_event (GtkWidget *widget,
+ GdkEventExpose *event);
+
+GType
+meta_select_workspace_get_type (void)
+{
+ static GType workspace_type = 0;
+
+ if (!workspace_type)
+ {
+ static const GTypeInfo workspace_info =
+ {
+ sizeof (MetaSelectWorkspaceClass),
+ NULL, /* base_init */
+ NULL, /* base_finalize */
+ (GClassInitFunc) meta_select_workspace_class_init,
+ NULL, /* class_finalize */
+ NULL, /* class_data */
+ sizeof (MetaSelectWorkspace),
+ 16, /* n_preallocs */
+ (GInstanceInitFunc) NULL,
+ };
+
+ workspace_type = g_type_register_static (GTK_TYPE_DRAWING_AREA,
+ "MetaSelectWorkspace",
+ &workspace_info,
+ 0);
+ }
+
+ return workspace_type;
+}
+
+static void
+meta_select_workspace_class_init (MetaSelectWorkspaceClass *klass)
+{
+ GtkWidgetClass *widget_class;
+
+ widget_class = GTK_WIDGET_CLASS (klass);
+
+ widget_class->expose_event = meta_select_workspace_expose_event;
+}
+
+/**
+ * meta_convert_meta_to_wnck() converts a MetaWindow to a
+ * WnckWindowDisplayInfo window that is used to build a thumbnail of a
+ * workspace.
+ **/
+static WnckWindowDisplayInfo
+meta_convert_meta_to_wnck (MetaWindow *window, MetaScreen *screen)
+{
+ WnckWindowDisplayInfo wnck_window;
+ wnck_window.icon = window->icon;
+ wnck_window.mini_icon = window->mini_icon;
+
+ wnck_window.is_active = FALSE;
+ if (window == window->display->expected_focus_window)
+ wnck_window.is_active = TRUE;
+
+ if (window->frame)
+ {
+ wnck_window.x = window->frame->rect.x;
+ wnck_window.y = window->frame->rect.y;
+ wnck_window.width = window->frame->rect.width;
+ wnck_window.height = window->frame->rect.height;
+ }
+ else
+ {
+ wnck_window.x = window->rect.x;
+ wnck_window.y = window->rect.y;
+ wnck_window.width = window->rect.width;
+ wnck_window.height = window->rect.height;
+ }
+ return wnck_window;
+}
+
+
+static gboolean
+meta_select_workspace_expose_event (GtkWidget *widget,
+ GdkEventExpose *event)
+{
+ MetaWorkspace *workspace;
+ WnckWindowDisplayInfo *windows;
+ GtkStyle *style;
+ cairo_t *cr;
+ int i, n_windows;
+ GList *tmp, *list;
+
+ workspace = META_SELECT_WORKSPACE (widget)->workspace;
+
+ list = meta_stack_list_windows (workspace->screen->stack, workspace);
+ n_windows = g_list_length (list);
+ windows = g_new (WnckWindowDisplayInfo, n_windows);
+
+ tmp = list;
+ i = 0;
+ while (tmp != NULL)
+ {
+ MetaWindow *window;
+ gboolean ignoreable_sticky;
+
+ window = tmp->data;
+
+ ignoreable_sticky = window->on_all_workspaces &&
+ workspace != workspace->screen->active_workspace;
+
+ if (window->skip_pager ||
+ !meta_window_showing_on_its_workspace (window) ||
+ window->unmaps_pending ||
+ ignoreable_sticky)
+ {
+ --n_windows;
+ }
+ else
+ {
+ windows[i] = meta_convert_meta_to_wnck (window, workspace->screen);
+ i++;
+ }
+ tmp = tmp->next;
+ }
+
+ g_list_free (list);
+
+ wnck_draw_workspace (widget,
+ widget->window,
+ SELECT_OUTLINE_WIDTH,
+ SELECT_OUTLINE_WIDTH,
+ widget->allocation.width - SELECT_OUTLINE_WIDTH * 2,
+ widget->allocation.height - SELECT_OUTLINE_WIDTH * 2,
+ workspace->screen->rect.width,
+ workspace->screen->rect.height,
+ NULL,
+ (workspace->screen->active_workspace == workspace),
+ windows,
+ n_windows);
+
+ g_free (windows);
+
+ if (META_SELECT_WORKSPACE (widget)->selected)
+ {
+ style = gtk_widget_get_style (widget);
+ cr = gdk_cairo_create (widget->window);
+
+ gdk_cairo_set_source_color (cr,
+ &style->fg[gtk_widget_get_state (widget)]);
+ cairo_set_line_width (cr, SELECT_OUTLINE_WIDTH);
+
+ cairo_rectangle (cr,
+ SELECT_OUTLINE_WIDTH / 2.0, SELECT_OUTLINE_WIDTH / 2.0,
+ widget->allocation.width - SELECT_OUTLINE_WIDTH,
+ widget->allocation.height - SELECT_OUTLINE_WIDTH);
+ cairo_stroke (cr);
+
+ cairo_destroy (cr);
+ }
+
+ return TRUE;
+}
+
diff --git a/src/ui/testgradient.c b/src/ui/testgradient.c
new file mode 100644
index 00000000..fd1b09c7
--- /dev/null
+++ b/src/ui/testgradient.c
@@ -0,0 +1,336 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco gradient test program */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA. */
+
+#include "gradient.h"
+#include <gtk/gtk.h>
+
+typedef void (* RenderGradientFunc) (GdkDrawable *drawable,
+ cairo_t *cr,
+ int width,
+ int height);
+
+static void
+draw_checkerboard (GdkDrawable *drawable,
+ int width,
+ int height)
+{
+ gint i, j, xcount, ycount;
+ GdkColor color1, color2;
+ cairo_t *cr;
+
+#define CHECK_SIZE 10
+#define SPACING 2
+
+ color1.red = 30000;
+ color1.green = 30000;
+ color1.blue = 30000;
+
+ color2.red = 50000;
+ color2.green = 50000;
+ color2.blue = 50000;
+
+ cr = gdk_cairo_create (drawable);
+
+ xcount = 0;
+ i = SPACING;
+ while (i < width)
+ {
+ j = SPACING;
+ ycount = xcount % 2; /* start with even/odd depending on row */
+ while (j < height)
+ {
+ if (ycount % 2)
+ gdk_cairo_set_source_color (cr, &color1);
+ else
+ gdk_cairo_set_source_color (cr, &color2);
+
+ /* If we're outside event->area, this will do nothing.
+ * It might be mildly more efficient if we handled
+ * the clipping ourselves, but again we're feeling lazy.
+ */
+ cairo_rectangle (cr, i, j, CHECK_SIZE, CHECK_SIZE);
+ cairo_fill (cr);
+
+ j += CHECK_SIZE + SPACING;
+ ++ycount;
+ }
+
+ i += CHECK_SIZE + SPACING;
+ ++xcount;
+ }
+
+ cairo_destroy (cr);
+}
+
+static void
+render_simple (GdkDrawable *drawable,
+ cairo_t *cr,
+ int width, int height,
+ MetaGradientType type,
+ gboolean with_alpha)
+{
+ GdkPixbuf *pixbuf;
+ GdkColor from, to;
+
+ gdk_color_parse ("blue", &from);
+ gdk_color_parse ("green", &to);
+
+ pixbuf = meta_gradient_create_simple (width, height,
+ &from, &to,
+ type);
+
+ if (with_alpha)
+ {
+ const unsigned char alphas[] = { 0xff, 0xaa, 0x2f, 0x0, 0xcc, 0xff, 0xff };
+
+ if (!gdk_pixbuf_get_has_alpha (pixbuf))
+ {
+ GdkPixbuf *new_pixbuf;
+
+ new_pixbuf = gdk_pixbuf_add_alpha (pixbuf, FALSE, 0, 0, 0);
+ g_object_unref (G_OBJECT (pixbuf));
+ pixbuf = new_pixbuf;
+ }
+
+ meta_gradient_add_alpha (pixbuf,
+ alphas, G_N_ELEMENTS (alphas),
+ META_GRADIENT_HORIZONTAL);
+
+ draw_checkerboard (drawable, width, height);
+ }
+
+ gdk_cairo_set_source_pixbuf (cr, pixbuf, 0, 0);
+ cairo_rectangle (cr, 0, 0, width, height);
+ cairo_fill (cr);
+
+ g_object_unref (G_OBJECT (pixbuf));
+}
+
+static void
+render_vertical_func (GdkDrawable *drawable,
+ cairo_t *cr,
+ int width, int height)
+{
+ render_simple (drawable, cr, width, height, META_GRADIENT_VERTICAL, FALSE);
+}
+
+static void
+render_horizontal_func (GdkDrawable *drawable,
+ cairo_t *cr,
+ int width, int height)
+{
+ render_simple (drawable, cr, width, height, META_GRADIENT_HORIZONTAL, FALSE);
+}
+
+static void
+render_diagonal_func (GdkDrawable *drawable,
+ cairo_t *cr,
+ int width, int height)
+{
+ render_simple (drawable, cr, width, height, META_GRADIENT_DIAGONAL, FALSE);
+}
+
+static void
+render_diagonal_alpha_func (GdkDrawable *drawable,
+ cairo_t *cr,
+ int width, int height)
+{
+ render_simple (drawable, cr, width, height, META_GRADIENT_DIAGONAL, TRUE);
+}
+
+static void
+render_multi (GdkDrawable *drawable,
+ cairo_t *cr,
+ int width, int height,
+ MetaGradientType type)
+{
+ GdkPixbuf *pixbuf;
+#define N_COLORS 5
+ GdkColor colors[N_COLORS];
+
+ gdk_color_parse ("red", &colors[0]);
+ gdk_color_parse ("blue", &colors[1]);
+ gdk_color_parse ("orange", &colors[2]);
+ gdk_color_parse ("pink", &colors[3]);
+ gdk_color_parse ("green", &colors[4]);
+
+ pixbuf = meta_gradient_create_multi (width, height,
+ colors, N_COLORS,
+ type);
+
+ gdk_cairo_set_source_pixbuf (cr, pixbuf, 0, 0);
+ cairo_rectangle (cr, 0, 0, width, height);
+ cairo_fill (cr);
+
+ g_object_unref (G_OBJECT (pixbuf));
+#undef N_COLORS
+}
+
+static void
+render_vertical_multi_func (GdkDrawable *drawable,
+ cairo_t *cr,
+ int width, int height)
+{
+ render_multi (drawable, cr, width, height, META_GRADIENT_VERTICAL);
+}
+
+static void
+render_horizontal_multi_func (GdkDrawable *drawable,
+ cairo_t *cr,
+ int width, int height)
+{
+ render_multi (drawable, cr, width, height, META_GRADIENT_HORIZONTAL);
+}
+
+static void
+render_diagonal_multi_func (GdkDrawable *drawable,
+ cairo_t *cr,
+ int width, int height)
+{
+ render_multi (drawable, cr, width, height, META_GRADIENT_DIAGONAL);
+}
+
+static void
+render_interwoven_func (GdkDrawable *drawable,
+ cairo_t *cr,
+ int width, int height)
+{
+ GdkPixbuf *pixbuf;
+#define N_COLORS 4
+ GdkColor colors[N_COLORS];
+
+ gdk_color_parse ("red", &colors[0]);
+ gdk_color_parse ("blue", &colors[1]);
+ gdk_color_parse ("pink", &colors[2]);
+ gdk_color_parse ("green", &colors[3]);
+
+ pixbuf = meta_gradient_create_interwoven (width, height,
+ colors, height / 10,
+ colors + 2, height / 14);
+
+ gdk_cairo_set_source_pixbuf (cr, pixbuf, 0, 0);
+ cairo_rectangle (cr, 0, 0, width, height);
+ cairo_fill (cr);
+
+ g_object_unref (G_OBJECT (pixbuf));
+}
+
+static gboolean
+expose_callback (GtkWidget *widget,
+ GdkEventExpose *event,
+ gpointer data)
+{
+ RenderGradientFunc func = data;
+ GdkWindow *window;
+ GtkAllocation allocation;
+ GtkStyle *style;
+ cairo_t *cr;
+
+ style = gtk_widget_get_style (widget);
+ gtk_widget_get_allocation (widget, &allocation);
+
+ window = gtk_widget_get_window (widget);
+ cr = gdk_cairo_create (window);
+ gdk_cairo_set_source_color (cr, &style->fg[gtk_widget_get_state (widget)]);
+
+ (* func) (window,
+ cr,
+ allocation.width,
+ allocation.height);
+
+ cairo_destroy (cr);
+
+ return TRUE;
+}
+
+static GtkWidget*
+create_gradient_window (const char *title,
+ RenderGradientFunc func)
+{
+ GtkWidget *window;
+ GtkWidget *drawing_area;
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+
+ gtk_window_set_title (GTK_WINDOW (window), title);
+
+ drawing_area = gtk_drawing_area_new ();
+
+ gtk_widget_set_size_request (drawing_area, 1, 1);
+
+ gtk_window_set_default_size (GTK_WINDOW (window), 175, 175);
+
+ g_signal_connect (G_OBJECT (drawing_area),
+ "expose_event",
+ G_CALLBACK (expose_callback),
+ func);
+
+ gtk_container_add (GTK_CONTAINER (window), drawing_area);
+
+ gtk_widget_show_all (window);
+
+ return window;
+}
+
+static void
+meta_gradient_test (void)
+{
+ GtkWidget *window;
+
+ window = create_gradient_window ("Simple vertical",
+ render_vertical_func);
+
+ window = create_gradient_window ("Simple horizontal",
+ render_horizontal_func);
+
+ window = create_gradient_window ("Simple diagonal",
+ render_diagonal_func);
+
+ window = create_gradient_window ("Multi vertical",
+ render_vertical_multi_func);
+
+ window = create_gradient_window ("Multi horizontal",
+ render_horizontal_multi_func);
+
+ window = create_gradient_window ("Multi diagonal",
+ render_diagonal_multi_func);
+
+ window = create_gradient_window ("Interwoven",
+ render_interwoven_func);
+
+ window = create_gradient_window ("Simple diagonal with horizontal multi alpha",
+ render_diagonal_alpha_func);
+
+}
+
+int
+main (int argc, char **argv)
+{
+ gtk_init (&argc, &argv);
+
+ meta_gradient_test ();
+
+ gtk_main ();
+
+ return 0;
+}
+
diff --git a/src/ui/theme-parser.c b/src/ui/theme-parser.c
new file mode 100644
index 00000000..12f01061
--- /dev/null
+++ b/src/ui/theme-parser.c
@@ -0,0 +1,4212 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco theme parsing */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "theme-parser.h"
+#include "util.h"
+#include <string.h>
+#include <stdlib.h>
+
+/* This is a hack for Ubuntu's metacity themes
+ * Its safe for unable or not.
+ * I am using this define to know what code was added */
+#define USE_UBUNTU_CODE 1
+
+typedef enum
+{
+ STATE_START,
+ STATE_THEME,
+ /* info section */
+ STATE_INFO,
+ STATE_NAME,
+ STATE_AUTHOR,
+ STATE_COPYRIGHT,
+ STATE_DATE,
+ STATE_DESCRIPTION,
+ /* constants */
+ STATE_CONSTANT,
+ /* geometry */
+ STATE_FRAME_GEOMETRY,
+ STATE_DISTANCE,
+ STATE_BORDER,
+ STATE_ASPECT_RATIO,
+ /* draw ops */
+ STATE_DRAW_OPS,
+ STATE_LINE,
+ STATE_RECTANGLE,
+ STATE_ARC,
+ STATE_CLIP,
+ STATE_TINT,
+ STATE_GRADIENT,
+ STATE_IMAGE,
+ STATE_GTK_ARROW,
+ STATE_GTK_BOX,
+ STATE_GTK_VLINE,
+ STATE_ICON,
+ STATE_TITLE,
+ STATE_INCLUDE, /* include another draw op list */
+ STATE_TILE, /* tile another draw op list */
+ /* sub-parts of gradient */
+ STATE_COLOR,
+ /* frame style */
+ STATE_FRAME_STYLE,
+ STATE_PIECE,
+ STATE_BUTTON,
+#ifdef USE_UBUNTU_CODE
+ STATE_SHADOW,
+ STATE_PADDING,
+#endif
+ /* style set */
+ STATE_FRAME_STYLE_SET,
+ STATE_FRAME,
+ /* assigning style sets to windows */
+ STATE_WINDOW,
+ /* things we don't use any more but we can still parse: */
+ STATE_MENU_ICON,
+ STATE_FALLBACK
+} ParseState;
+
+typedef struct
+{
+ GSList *states;
+
+ const char *theme_name; /* name of theme (directory it's in) */
+ char *theme_file; /* theme filename */
+ char *theme_dir; /* dir the theme is inside */
+ MetaTheme *theme; /* theme being parsed */
+ guint format_version; /* version of format of theme file */
+ char *name; /* name of named thing being parsed */
+ MetaFrameLayout *layout; /* layout being parsed if any */
+ MetaDrawOpList *op_list; /* op list being parsed if any */
+ MetaDrawOp *op; /* op being parsed if any */
+ MetaFrameStyle *style; /* frame style being parsed if any */
+ MetaFrameStyleSet *style_set; /* frame style set being parsed if any */
+ MetaFramePiece piece; /* position of piece being parsed */
+ MetaButtonType button_type; /* type of button/menuitem being parsed */
+ MetaButtonState button_state; /* state of button being parsed */
+} ParseInfo;
+
+static void set_error (GError **err,
+ GMarkupParseContext *context,
+ int error_domain,
+ int error_code,
+ const char *format,
+ ...) G_GNUC_PRINTF (5, 6);
+
+static void add_context_to_error (GError **err,
+ GMarkupParseContext *context);
+
+static void parse_info_init (ParseInfo *info);
+static void parse_info_free (ParseInfo *info);
+
+static void push_state (ParseInfo *info,
+ ParseState state);
+static void pop_state (ParseInfo *info);
+static ParseState peek_state (ParseInfo *info);
+
+
+static void parse_toplevel_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+static void parse_info_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+static void parse_geometry_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+static void parse_draw_op_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+static void parse_gradient_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+static void parse_style_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+static void parse_style_set_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+
+static void parse_piece_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+
+static void parse_button_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+
+#ifdef USE_UBUNTU_CODE
+static void parse_shadow_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+
+static void parse_padding_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+#endif
+static void parse_menu_icon_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error);
+
+static void start_element_handler (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ gpointer user_data,
+ GError **error);
+static void end_element_handler (GMarkupParseContext *context,
+ const gchar *element_name,
+ gpointer user_data,
+ GError **error);
+static void text_handler (GMarkupParseContext *context,
+ const gchar *text,
+ gsize text_len,
+ gpointer user_data,
+ GError **error);
+
+/* Translators: This means that an attribute which should have been found
+ * on an XML element was not in fact found.
+ */
+#define ATTRIBUTE_NOT_FOUND _("No \"%s\" attribute on element <%s>")
+
+static GMarkupParser marco_theme_parser = {
+ start_element_handler,
+ end_element_handler,
+ text_handler,
+ NULL,
+ NULL
+};
+
+static void
+set_error (GError **err,
+ GMarkupParseContext *context,
+ int error_domain,
+ int error_code,
+ const char *format,
+ ...)
+{
+ int line, ch;
+ va_list args;
+ char *str;
+
+ g_markup_parse_context_get_position (context, &line, &ch);
+
+ va_start (args, format);
+ str = g_strdup_vprintf (format, args);
+ va_end (args);
+
+ g_set_error (err, error_domain, error_code,
+ _("Line %d character %d: %s"),
+ line, ch, str);
+
+ g_free (str);
+}
+
+static void
+add_context_to_error (GError **err,
+ GMarkupParseContext *context)
+{
+ int line, ch;
+ char *str;
+
+ if (err == NULL || *err == NULL)
+ return;
+
+ g_markup_parse_context_get_position (context, &line, &ch);
+
+ str = g_strdup_printf (_("Line %d character %d: %s"),
+ line, ch, (*err)->message);
+ g_free ((*err)->message);
+ (*err)->message = str;
+}
+
+static void
+parse_info_init (ParseInfo *info)
+{
+ info->theme_file = NULL;
+ info->states = g_slist_prepend (NULL, GINT_TO_POINTER (STATE_START));
+ info->theme = NULL;
+ info->name = NULL;
+ info->layout = NULL;
+ info->op_list = NULL;
+ info->op = NULL;
+ info->style = NULL;
+ info->style_set = NULL;
+ info->piece = META_FRAME_PIECE_LAST;
+ info->button_type = META_BUTTON_TYPE_LAST;
+ info->button_state = META_BUTTON_STATE_LAST;
+}
+
+static void
+parse_info_free (ParseInfo *info)
+{
+ g_free (info->theme_file);
+ g_free (info->theme_dir);
+
+ g_slist_free (info->states);
+
+ if (info->theme)
+ meta_theme_free (info->theme);
+
+ if (info->layout)
+ meta_frame_layout_unref (info->layout);
+
+ if (info->op_list)
+ meta_draw_op_list_unref (info->op_list);
+
+ if (info->op)
+ meta_draw_op_free (info->op);
+
+ if (info->style)
+ meta_frame_style_unref (info->style);
+
+ if (info->style_set)
+ meta_frame_style_set_unref (info->style_set);
+}
+
+static void
+push_state (ParseInfo *info,
+ ParseState state)
+{
+ info->states = g_slist_prepend (info->states, GINT_TO_POINTER (state));
+}
+
+static void
+pop_state (ParseInfo *info)
+{
+ g_return_if_fail (info->states != NULL);
+
+ info->states = g_slist_remove (info->states, info->states->data);
+}
+
+static ParseState
+peek_state (ParseInfo *info)
+{
+ g_return_val_if_fail (info->states != NULL, STATE_START);
+
+ return GPOINTER_TO_INT (info->states->data);
+}
+
+#define ELEMENT_IS(name) (strcmp (element_name, (name)) == 0)
+
+typedef struct
+{
+ const char *name;
+ const char **retloc;
+ gboolean required;
+} LocateAttr;
+
+/* Attribute names can have a leading '!' to indicate that they are
+ * required.
+ */
+static gboolean
+locate_attributes (GMarkupParseContext *context,
+ const char *element_name,
+ const char **attribute_names,
+ const char **attribute_values,
+ GError **error,
+ const char *first_attribute_name,
+ const char **first_attribute_retloc,
+ ...)
+{
+ va_list args;
+ const char *name;
+ const char **retloc;
+ int n_attrs;
+#define MAX_ATTRS 24
+ LocateAttr attrs[MAX_ATTRS];
+ gboolean retval;
+ int i;
+
+ g_return_val_if_fail (first_attribute_name != NULL, FALSE);
+ g_return_val_if_fail (first_attribute_retloc != NULL, FALSE);
+
+ retval = TRUE;
+
+ /* FIXME: duplicated code; refactor loop */
+ n_attrs = 1;
+ attrs[0].name = first_attribute_name;
+ attrs[0].retloc = first_attribute_retloc;
+ attrs[0].required = attrs[0].name[0]=='!';
+ if (attrs[0].required)
+ attrs[0].name++; /* skip past it */
+ *first_attribute_retloc = NULL;
+
+ va_start (args, first_attribute_retloc);
+
+ name = va_arg (args, const char*);
+ retloc = va_arg (args, const char**);
+
+ while (name != NULL)
+ {
+ g_return_val_if_fail (retloc != NULL, FALSE);
+
+ g_assert (n_attrs < MAX_ATTRS);
+
+ attrs[n_attrs].name = name;
+ attrs[n_attrs].retloc = retloc;
+ attrs[n_attrs].required = attrs[n_attrs].name[0]=='!';
+ if (attrs[n_attrs].required)
+ attrs[n_attrs].name++; /* skip past it */
+
+ n_attrs += 1;
+ *retloc = NULL;
+
+ name = va_arg (args, const char*);
+ retloc = va_arg (args, const char**);
+ }
+
+ va_end (args);
+
+ i = 0;
+ while (attribute_names[i])
+ {
+ int j;
+ gboolean found;
+
+ found = FALSE;
+ j = 0;
+ while (j < n_attrs)
+ {
+ if (strcmp (attrs[j].name, attribute_names[i]) == 0)
+ {
+ retloc = attrs[j].retloc;
+
+ if (*retloc != NULL)
+ {
+
+ set_error (error, context,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Attribute \"%s\" repeated twice on the same <%s> element"),
+ attrs[j].name, element_name);
+ retval = FALSE;
+ goto out;
+ }
+
+ *retloc = attribute_values[i];
+ found = TRUE;
+ }
+
+ ++j;
+ }
+
+ if (!found)
+ {
+ j = 0;
+ while (j < n_attrs)
+ {
+ g_warning ("It could have been %s.\n", attrs[j++].name);
+ }
+
+ set_error (error, context,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Attribute \"%s\" is invalid on <%s> element in this context"),
+ attribute_names[i], element_name);
+ retval = FALSE;
+ goto out;
+ }
+
+ ++i;
+ }
+
+ /* Did we catch them all? */
+ i = 0;
+ while (i < n_attrs)
+ {
+ if (attrs[i].required && *(attrs[i].retloc)==NULL)
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ ATTRIBUTE_NOT_FOUND,
+ attrs[i].name, element_name);
+ retval = FALSE;
+ goto out;
+ }
+
+ ++i;
+ }
+
+ out:
+ return retval;
+}
+
+static gboolean
+check_no_attributes (GMarkupParseContext *context,
+ const char *element_name,
+ const char **attribute_names,
+ const char **attribute_values,
+ GError **error)
+{
+ if (attribute_names[0] != NULL)
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Attribute \"%s\" is invalid on <%s> element in this context"),
+ attribute_names[0], element_name);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+#define MAX_REASONABLE 4096
+static gboolean
+parse_positive_integer (const char *str,
+ int *val,
+ GMarkupParseContext *context,
+ MetaTheme *theme,
+ GError **error)
+{
+ char *end;
+ long l;
+ int j;
+
+ *val = 0;
+
+ end = NULL;
+
+ /* Is str a constant? */
+
+ if (META_THEME_ALLOWS (theme, META_THEME_UBIQUITOUS_CONSTANTS) &&
+ meta_theme_lookup_int_constant (theme, str, &j))
+ {
+ /* Yes. */
+ l = j;
+ }
+ else
+ {
+ /* No. Let's try parsing it instead. */
+
+ l = strtol (str, &end, 10);
+
+ if (end == NULL || end == str)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Could not parse \"%s\" as an integer"),
+ str);
+ return FALSE;
+ }
+
+ if (*end != '\0')
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Did not understand trailing characters \"%s\" in string \"%s\""),
+ end, str);
+ return FALSE;
+ }
+ }
+
+ if (l < 0)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Integer %ld must be positive"), l);
+ return FALSE;
+ }
+
+ if (l > MAX_REASONABLE)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Integer %ld is too large, current max is %d"),
+ l, MAX_REASONABLE);
+ return FALSE;
+ }
+
+ *val = (int) l;
+
+ return TRUE;
+}
+
+static gboolean
+parse_double (const char *str,
+ double *val,
+ GMarkupParseContext *context,
+ GError **error)
+{
+ char *end;
+
+ *val = 0;
+
+ end = NULL;
+
+ *val = g_ascii_strtod (str, &end);
+
+ if (end == NULL || end == str)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Could not parse \"%s\" as a floating point number"),
+ str);
+ return FALSE;
+ }
+
+ if (*end != '\0')
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Did not understand trailing characters \"%s\" in string \"%s\""),
+ end, str);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+static gboolean
+parse_boolean (const char *str,
+ gboolean *val,
+ GMarkupParseContext *context,
+ GError **error)
+{
+ if (strcmp ("true", str) == 0)
+ *val = TRUE;
+ else if (strcmp ("false", str) == 0)
+ *val = FALSE;
+ else
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Boolean values must be \"true\" or \"false\" not \"%s\""),
+ str);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+static gboolean
+parse_rounding (const char *str,
+ guint *val,
+ GMarkupParseContext *context,
+ MetaTheme *theme,
+ GError **error)
+{
+ if (strcmp ("true", str) == 0)
+ *val = 5; /* historical "true" value */
+ else if (strcmp ("false", str) == 0)
+ *val = 0;
+ else
+ {
+ int tmp;
+ gboolean result;
+ if (!META_THEME_ALLOWS (theme, META_THEME_VARIED_ROUND_CORNERS))
+ {
+ /* Not known in this version, so bail. */
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Boolean values must be \"true\" or \"false\" not \"%s\""),
+ str);
+ return FALSE;
+ }
+
+ result = parse_positive_integer (str, &tmp, context, theme, error);
+
+ *val = tmp;
+
+ return result;
+ }
+
+ return TRUE;
+}
+
+static gboolean
+parse_angle (const char *str,
+ double *val,
+ GMarkupParseContext *context,
+ GError **error)
+{
+ if (!parse_double (str, val, context, error))
+ return FALSE;
+
+ if (*val < (0.0 - 1e6) || *val > (360.0 + 1e6))
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Angle must be between 0.0 and 360.0, was %g\n"),
+ *val);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+static gboolean
+parse_alpha (const char *str,
+ MetaAlphaGradientSpec **spec_ret,
+ GMarkupParseContext *context,
+ GError **error)
+{
+ char **split;
+ int i;
+ int n_alphas;
+ MetaAlphaGradientSpec *spec;
+
+ *spec_ret = NULL;
+
+ split = g_strsplit (str, ":", -1);
+
+ i = 0;
+ while (split[i])
+ ++i;
+
+ if (i == 0)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Could not parse \"%s\" as a floating point number"),
+ str);
+
+ g_strfreev (split);
+
+ return FALSE;
+ }
+
+ n_alphas = i;
+
+ /* FIXME allow specifying horizontal/vertical/diagonal in theme format,
+ * once we implement vertical/diagonal in gradient.c
+ */
+ spec = meta_alpha_gradient_spec_new (META_GRADIENT_HORIZONTAL,
+ n_alphas);
+
+ i = 0;
+ while (i < n_alphas)
+ {
+ double v;
+
+ if (!parse_double (split[i], &v, context, error))
+ {
+ /* clear up, but don't set error: it was set by parse_double */
+ g_strfreev (split);
+ meta_alpha_gradient_spec_free (spec);
+
+ return FALSE;
+ }
+
+ if (v < (0.0 - 1e-6) || v > (1.0 + 1e-6))
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Alpha must be between 0.0 (invisible) and 1.0 (fully opaque), was %g\n"),
+ v);
+
+ g_strfreev (split);
+ meta_alpha_gradient_spec_free (spec);
+
+ return FALSE;
+ }
+
+ spec->alphas[i] = (unsigned char) (v * 255);
+
+ ++i;
+ }
+
+ g_strfreev (split);
+
+ *spec_ret = spec;
+
+ return TRUE;
+}
+
+static MetaColorSpec*
+parse_color (MetaTheme *theme,
+ const char *str,
+ GError **err)
+{
+ char* referent;
+
+ if (META_THEME_ALLOWS (theme, META_THEME_COLOR_CONSTANTS) &&
+ meta_theme_lookup_color_constant (theme, str, &referent))
+ {
+ if (referent)
+ return meta_color_spec_new_from_string (referent, err);
+
+ /* no need to free referent: it's a pointer into the actual hash table */
+ }
+
+ return meta_color_spec_new_from_string (str, err);
+}
+
+static gboolean
+parse_title_scale (const char *str,
+ double *val,
+ GMarkupParseContext *context,
+ GError **error)
+{
+ double factor;
+
+ if (strcmp (str, "xx-small") == 0)
+ factor = PANGO_SCALE_XX_SMALL;
+ else if (strcmp (str, "x-small") == 0)
+ factor = PANGO_SCALE_X_SMALL;
+ else if (strcmp (str, "small") == 0)
+ factor = PANGO_SCALE_SMALL;
+ else if (strcmp (str, "medium") == 0)
+ factor = PANGO_SCALE_MEDIUM;
+ else if (strcmp (str, "large") == 0)
+ factor = PANGO_SCALE_LARGE;
+ else if (strcmp (str, "x-large") == 0)
+ factor = PANGO_SCALE_X_LARGE;
+ else if (strcmp (str, "xx-large") == 0)
+ factor = PANGO_SCALE_XX_LARGE;
+ else
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Invalid title scale \"%s\" (must be one of xx-small,x-small,small,medium,large,x-large,xx-large)\n"),
+ str);
+ return FALSE;
+ }
+
+ *val = factor;
+
+ return TRUE;
+}
+
+static void
+parse_toplevel_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_THEME);
+
+ if (ELEMENT_IS ("info"))
+ {
+ if (!check_no_attributes (context, element_name,
+ attribute_names, attribute_values,
+ error))
+ return;
+
+ push_state (info, STATE_INFO);
+ }
+ else if (ELEMENT_IS ("constant"))
+ {
+ const char *name;
+ const char *value;
+ int ival = 0;
+ double dval = 0.0;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!name", &name, "!value", &value,
+ NULL))
+ return;
+
+ /* We don't know how a a constant is going to be used, so we have guess its
+ * type from its contents:
+ *
+ * - Starts like a number and contains a '.': float constant
+ * - Starts like a number and doesn't contain a '.': int constant
+ * - Starts with anything else: a color constant.
+ * (colors always start with # or a letter)
+ */
+ if (value[0] == '.' || value[0] == '+' || value[0] == '-' || (value[0] >= '0' && value[0] <= '9'))
+ {
+ if (strchr (value, '.'))
+ {
+ if (!parse_double (value, &dval, context, error))
+ return;
+
+ if (!meta_theme_define_float_constant (info->theme,
+ name,
+ dval,
+ error))
+ {
+ add_context_to_error (error, context);
+ return;
+ }
+ }
+ else
+ {
+ if (!parse_positive_integer (value, &ival, context, info->theme, error))
+ return;
+
+ if (!meta_theme_define_int_constant (info->theme,
+ name,
+ ival,
+ error))
+ {
+ add_context_to_error (error, context);
+ return;
+ }
+ }
+ }
+ else
+ {
+ if (!meta_theme_define_color_constant (info->theme,
+ name,
+ value,
+ error))
+ {
+ add_context_to_error (error, context);
+ return;
+ }
+ }
+
+ push_state (info, STATE_CONSTANT);
+ }
+ else if (ELEMENT_IS ("frame_geometry"))
+ {
+ const char *name = NULL;
+ const char *parent = NULL;
+ const char *has_title = NULL;
+ const char *title_scale = NULL;
+ const char *rounded_top_left = NULL;
+ const char *rounded_top_right = NULL;
+ const char *rounded_bottom_left = NULL;
+ const char *rounded_bottom_right = NULL;
+ const char *hide_buttons = NULL;
+ gboolean has_title_val;
+ guint rounded_top_left_val;
+ guint rounded_top_right_val;
+ guint rounded_bottom_left_val;
+ guint rounded_bottom_right_val;
+ gboolean hide_buttons_val;
+ double title_scale_val;
+ MetaFrameLayout *parent_layout;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!name", &name, "parent", &parent,
+ "has_title", &has_title, "title_scale", &title_scale,
+ "rounded_top_left", &rounded_top_left,
+ "rounded_top_right", &rounded_top_right,
+ "rounded_bottom_left", &rounded_bottom_left,
+ "rounded_bottom_right", &rounded_bottom_right,
+ "hide_buttons", &hide_buttons,
+ NULL))
+ return;
+
+ has_title_val = TRUE;
+ if (has_title && !parse_boolean (has_title, &has_title_val, context, error))
+ return;
+
+ hide_buttons_val = FALSE;
+ if (hide_buttons && !parse_boolean (hide_buttons, &hide_buttons_val, context, error))
+ return;
+
+ rounded_top_left_val = 0;
+ rounded_top_right_val = 0;
+ rounded_bottom_left_val = 0;
+ rounded_bottom_right_val = 0;
+
+ if (rounded_top_left && !parse_rounding (rounded_top_left, &rounded_top_left_val, context, info->theme, error))
+ return;
+ if (rounded_top_right && !parse_rounding (rounded_top_right, &rounded_top_right_val, context, info->theme, error))
+ return;
+ if (rounded_bottom_left && !parse_rounding (rounded_bottom_left, &rounded_bottom_left_val, context, info->theme, error))
+ return;
+ if (rounded_bottom_right && !parse_rounding (rounded_bottom_right, &rounded_bottom_right_val, context, info->theme, error))
+ return;
+
+ title_scale_val = 1.0;
+ if (title_scale && !parse_title_scale (title_scale, &title_scale_val, context, error))
+ return;
+
+ if (meta_theme_lookup_layout (info->theme, name))
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("<%s> name \"%s\" used a second time"),
+ element_name, name);
+ return;
+ }
+
+ parent_layout = NULL;
+ if (parent)
+ {
+ parent_layout = meta_theme_lookup_layout (info->theme, parent);
+ if (parent_layout == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("<%s> parent \"%s\" has not been defined"),
+ element_name, parent);
+ return;
+ }
+ }
+
+ g_assert (info->layout == NULL);
+
+ if (parent_layout)
+ info->layout = meta_frame_layout_copy (parent_layout);
+ else
+ info->layout = meta_frame_layout_new ();
+
+ if (has_title) /* only if explicit, otherwise inherit */
+ info->layout->has_title = has_title_val;
+
+ if (META_THEME_ALLOWS (info->theme, META_THEME_HIDDEN_BUTTONS) && hide_buttons_val)
+ info->layout->hide_buttons = hide_buttons_val;
+
+ if (title_scale)
+ info->layout->title_scale = title_scale_val;
+
+ if (rounded_top_left)
+ info->layout->top_left_corner_rounded_radius = rounded_top_left_val;
+
+ if (rounded_top_right)
+ info->layout->top_right_corner_rounded_radius = rounded_top_right_val;
+
+ if (rounded_bottom_left)
+ info->layout->bottom_left_corner_rounded_radius = rounded_bottom_left_val;
+
+ if (rounded_bottom_right)
+ info->layout->bottom_right_corner_rounded_radius = rounded_bottom_right_val;
+
+ meta_theme_insert_layout (info->theme, name, info->layout);
+
+ push_state (info, STATE_FRAME_GEOMETRY);
+ }
+ else if (ELEMENT_IS ("draw_ops"))
+ {
+ const char *name = NULL;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!name", &name,
+ NULL))
+ return;
+
+ if (meta_theme_lookup_draw_op_list (info->theme, name))
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("<%s> name \"%s\" used a second time"),
+ element_name, name);
+ return;
+ }
+
+ g_assert (info->op_list == NULL);
+ info->op_list = meta_draw_op_list_new (2);
+
+ meta_theme_insert_draw_op_list (info->theme, name, info->op_list);
+
+ push_state (info, STATE_DRAW_OPS);
+ }
+ else if (ELEMENT_IS ("frame_style"))
+ {
+ const char *name = NULL;
+ const char *parent = NULL;
+ const char *geometry = NULL;
+ const char *background = NULL;
+ const char *alpha = NULL;
+ MetaFrameStyle *parent_style;
+ MetaFrameLayout *layout;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!name", &name, "parent", &parent,
+ "geometry", &geometry,
+ "background", &background,
+ "alpha", &alpha,
+ NULL))
+ return;
+
+ if (meta_theme_lookup_style (info->theme, name))
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("<%s> name \"%s\" used a second time"),
+ element_name, name);
+ return;
+ }
+
+ parent_style = NULL;
+ if (parent)
+ {
+ parent_style = meta_theme_lookup_style (info->theme, parent);
+ if (parent_style == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("<%s> parent \"%s\" has not been defined"),
+ element_name, parent);
+ return;
+ }
+ }
+
+ layout = NULL;
+ if (geometry)
+ {
+ layout = meta_theme_lookup_layout (info->theme, geometry);
+ if (layout == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("<%s> geometry \"%s\" has not been defined"),
+ element_name, geometry);
+ return;
+ }
+ }
+ else if (parent_style)
+ {
+ layout = parent_style->layout;
+ }
+
+ if (layout == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("<%s> must specify either a geometry or a parent that has a geometry"),
+ element_name);
+ return;
+ }
+
+ g_assert (info->style == NULL);
+
+ info->style = meta_frame_style_new (parent_style);
+ g_assert (info->style->layout == NULL);
+ meta_frame_layout_ref (layout);
+ info->style->layout = layout;
+
+ if (background != NULL && META_THEME_ALLOWS (info->theme, META_THEME_FRAME_BACKGROUNDS))
+ {
+ info->style->window_background_color = meta_color_spec_new_from_string (background, error);
+ if (!info->style->window_background_color)
+ return;
+
+ if (alpha != NULL)
+ {
+
+ gboolean success;
+ MetaAlphaGradientSpec *alpha_vector;
+
+ g_clear_error (error);
+ /* fortunately, we already have a routine to parse alpha values,
+ * though it produces a vector of them, which is a superset of
+ * what we want.
+ */
+ success = parse_alpha (alpha, &alpha_vector, context, error);
+ if (!success)
+ return;
+
+ /* alpha_vector->alphas must contain at least one element */
+ info->style->window_background_alpha = alpha_vector->alphas[0];
+
+ meta_alpha_gradient_spec_free (alpha_vector);
+ }
+ }
+ else if (alpha != NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("You must specify a background for an alpha value to be meaningful"));
+ return;
+ }
+
+ meta_theme_insert_style (info->theme, name, info->style);
+
+ push_state (info, STATE_FRAME_STYLE);
+ }
+ else if (ELEMENT_IS ("frame_style_set"))
+ {
+ const char *name = NULL;
+ const char *parent = NULL;
+ MetaFrameStyleSet *parent_set;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!name", &name, "parent", &parent,
+ NULL))
+ return;
+
+ if (meta_theme_lookup_style_set (info->theme, name))
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("<%s> name \"%s\" used a second time"),
+ element_name, name);
+ return;
+ }
+
+ parent_set = NULL;
+ if (parent)
+ {
+ parent_set = meta_theme_lookup_style_set (info->theme, parent);
+ if (parent_set == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("<%s> parent \"%s\" has not been defined"),
+ element_name, parent);
+ return;
+ }
+ }
+
+ g_assert (info->style_set == NULL);
+
+ info->style_set = meta_frame_style_set_new (parent_set);
+
+ meta_theme_insert_style_set (info->theme, name, info->style_set);
+
+ push_state (info, STATE_FRAME_STYLE_SET);
+ }
+ else if (ELEMENT_IS ("window"))
+ {
+ const char *type_name = NULL;
+ const char *style_set_name = NULL;
+ MetaFrameStyleSet *style_set;
+ MetaFrameType type;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!type", &type_name, "!style_set", &style_set_name,
+ NULL))
+ return;
+
+ type = meta_frame_type_from_string (type_name);
+
+ if (type == META_FRAME_TYPE_LAST)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Unknown type \"%s\" on <%s> element"),
+ type_name, element_name);
+ return;
+ }
+
+ style_set = meta_theme_lookup_style_set (info->theme,
+ style_set_name);
+
+ if (style_set == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Unknown style_set \"%s\" on <%s> element"),
+ style_set_name, element_name);
+ return;
+ }
+
+ if (info->theme->style_sets_by_type[type] != NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Window type \"%s\" has already been assigned a style set"),
+ type_name);
+ return;
+ }
+
+ meta_frame_style_set_ref (style_set);
+ info->theme->style_sets_by_type[type] = style_set;
+
+ push_state (info, STATE_WINDOW);
+ }
+ else if (ELEMENT_IS ("menu_icon"))
+ {
+ /* Not supported any more, but we have to parse it if they include it,
+ * for backwards compatibility.
+ */
+ g_assert (info->op_list == NULL);
+
+ push_state (info, STATE_MENU_ICON);
+ }
+ else if (ELEMENT_IS ("fallback"))
+ {
+ /* Not supported any more, but we have to parse it if they include it,
+ * for backwards compatibility.
+ */
+ push_state (info, STATE_FALLBACK);
+ }
+ else
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "metacity_theme");
+ }
+}
+
+static void
+parse_info_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_INFO);
+
+ if (ELEMENT_IS ("name"))
+ {
+ if (!check_no_attributes (context, element_name,
+ attribute_names, attribute_values,
+ error))
+ return;
+
+ push_state (info, STATE_NAME);
+ }
+ else if (ELEMENT_IS ("author"))
+ {
+ if (!check_no_attributes (context, element_name,
+ attribute_names, attribute_values,
+ error))
+ return;
+
+ push_state (info, STATE_AUTHOR);
+ }
+ else if (ELEMENT_IS ("copyright"))
+ {
+ if (!check_no_attributes (context, element_name,
+ attribute_names, attribute_values,
+ error))
+ return;
+
+ push_state (info, STATE_COPYRIGHT);
+ }
+ else if (ELEMENT_IS ("description"))
+ {
+ if (!check_no_attributes (context, element_name,
+ attribute_names, attribute_values,
+ error))
+ return;
+
+ push_state (info, STATE_DESCRIPTION);
+ }
+ else if (ELEMENT_IS ("date"))
+ {
+ if (!check_no_attributes (context, element_name,
+ attribute_names, attribute_values,
+ error))
+ return;
+
+ push_state (info, STATE_DATE);
+ }
+ else
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "info");
+ }
+}
+
+static void
+parse_distance (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ const char *name;
+ const char *value;
+ int val;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!name", &name, "!value", &value,
+ NULL))
+ return;
+
+ val = 0;
+ if (!parse_positive_integer (value, &val, context, info->theme, error))
+ return;
+
+ g_assert (val >= 0); /* yeah, "non-negative" not "positive" get over it */
+ g_assert (info->layout);
+
+ if (strcmp (name, "left_width") == 0)
+ info->layout->left_width = val;
+ else if (strcmp (name, "right_width") == 0)
+ info->layout->right_width = val;
+ else if (strcmp (name, "bottom_height") == 0)
+ info->layout->bottom_height = val;
+ else if (strcmp (name, "title_vertical_pad") == 0)
+ info->layout->title_vertical_pad = val;
+ else if (strcmp (name, "right_titlebar_edge") == 0)
+ info->layout->right_titlebar_edge = val;
+ else if (strcmp (name, "left_titlebar_edge") == 0)
+ info->layout->left_titlebar_edge = val;
+ else if (strcmp (name, "button_width") == 0)
+ {
+ info->layout->button_width = val;
+
+ if (!(info->layout->button_sizing == META_BUTTON_SIZING_LAST ||
+ info->layout->button_sizing == META_BUTTON_SIZING_FIXED))
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" for buttons"));
+ return;
+ }
+
+ info->layout->button_sizing = META_BUTTON_SIZING_FIXED;
+ }
+ else if (strcmp (name, "button_height") == 0)
+ {
+ info->layout->button_height = val;
+
+ if (!(info->layout->button_sizing == META_BUTTON_SIZING_LAST ||
+ info->layout->button_sizing == META_BUTTON_SIZING_FIXED))
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" for buttons"));
+ return;
+ }
+
+ info->layout->button_sizing = META_BUTTON_SIZING_FIXED;
+ }
+ else
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Distance \"%s\" is unknown"), name);
+ return;
+ }
+}
+
+static void
+parse_aspect_ratio (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ const char *name;
+ const char *value;
+ double val;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!name", &name, "!value", &value,
+ NULL))
+ return;
+
+ val = 0;
+ if (!parse_double (value, &val, context, error))
+ return;
+
+ g_assert (info->layout);
+
+ if (strcmp (name, "button") == 0)
+ {
+ info->layout->button_aspect = val;
+
+ if (info->layout->button_sizing != META_BUTTON_SIZING_LAST)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Cannot specify both \"button_width\"/\"button_height\" and \"aspect_ratio\" for buttons"));
+ return;
+ }
+
+ info->layout->button_sizing = META_BUTTON_SIZING_ASPECT;
+ }
+ else
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Aspect ratio \"%s\" is unknown"), name);
+ return;
+ }
+}
+
+static void
+parse_border (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ const char *name;
+ const char *top;
+ const char *bottom;
+ const char *left;
+ const char *right;
+ int top_val;
+ int bottom_val;
+ int left_val;
+ int right_val;
+ GtkBorder *border;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!name", &name,
+ "!top", &top,
+ "!bottom", &bottom,
+ "!left", &left,
+ "!right", &right,
+ NULL))
+ return;
+
+ top_val = 0;
+ if (!parse_positive_integer (top, &top_val, context, info->theme, error))
+ return;
+
+ bottom_val = 0;
+ if (!parse_positive_integer (bottom, &bottom_val, context, info->theme, error))
+ return;
+
+ left_val = 0;
+ if (!parse_positive_integer (left, &left_val, context, info->theme, error))
+ return;
+
+ right_val = 0;
+ if (!parse_positive_integer (right, &right_val, context, info->theme, error))
+ return;
+
+ g_assert (info->layout);
+
+ border = NULL;
+
+ if (strcmp (name, "title_border") == 0)
+ border = &info->layout->title_border;
+ else if (strcmp (name, "button_border") == 0)
+ border = &info->layout->button_border;
+
+ if (border == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Border \"%s\" is unknown"), name);
+ return;
+ }
+
+ border->top = top_val;
+ border->bottom = bottom_val;
+ border->left = left_val;
+ border->right = right_val;
+}
+
+static void
+parse_geometry_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_FRAME_GEOMETRY);
+
+ if (ELEMENT_IS ("distance"))
+ {
+ parse_distance (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ push_state (info, STATE_DISTANCE);
+ }
+ else if (ELEMENT_IS ("border"))
+ {
+ parse_border (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ push_state (info, STATE_BORDER);
+ }
+ else if (ELEMENT_IS ("aspect_ratio"))
+ {
+ parse_aspect_ratio (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+
+ push_state (info, STATE_ASPECT_RATIO);
+ }
+ else
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "frame_geometry");
+ }
+}
+
+#if 0
+static gboolean
+check_expression (PosToken *tokens,
+ int n_tokens,
+ gboolean has_object,
+ MetaTheme *theme,
+ GMarkupParseContext *context,
+ GError **error)
+{
+ MetaPositionExprEnv env;
+ int x, y;
+
+ /* We set it all to 0 to try and catch divide-by-zero screwups.
+ * it's possible we should instead guarantee that widths and heights
+ * are at least 1.
+ */
+
+ env.rect = meta_rect (0, 0, 0, 0);
+ if (has_object)
+ {
+ env.object_width = 0;
+ env.object_height = 0;
+ }
+ else
+ {
+ env.object_width = -1;
+ env.object_height = -1;
+ }
+
+ env.left_width = 0;
+ env.right_width = 0;
+ env.top_height = 0;
+ env.bottom_height = 0;
+ env.title_width = 0;
+ env.title_height = 0;
+
+ env.icon_width = 0;
+ env.icon_height = 0;
+ env.mini_icon_width = 0;
+ env.mini_icon_height = 0;
+ env.theme = theme;
+
+ if (!meta_parse_position_expression (tokens, n_tokens,
+ &env,
+ &x, &y,
+ error))
+ {
+ add_context_to_error (error, context);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+#endif
+
+static void
+parse_draw_op_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_DRAW_OPS);
+
+ if (ELEMENT_IS ("line"))
+ {
+ MetaDrawOp *op;
+ const char *color;
+ const char *x1;
+ const char *y1;
+ const char *x2;
+ const char *y2;
+ const char *dash_on_length;
+ const char *dash_off_length;
+ const char *width;
+ MetaColorSpec *color_spec;
+ int dash_on_val;
+ int dash_off_val;
+ int width_val;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!color", &color,
+ "!x1", &x1, "!y1", &y1,
+ "!x2", &x2, "!y2", &y2,
+ "dash_on_length", &dash_on_length,
+ "dash_off_length", &dash_off_length,
+ "width", &width,
+ NULL))
+ return;
+
+#if 0
+ if (!check_expression (x1, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y1, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (x2, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y2, FALSE, info->theme, context, error))
+ return;
+#endif
+
+ dash_on_val = 0;
+ if (dash_on_length &&
+ !parse_positive_integer (dash_on_length, &dash_on_val, context, info->theme, error))
+ return;
+
+ dash_off_val = 0;
+ if (dash_off_length &&
+ !parse_positive_integer (dash_off_length, &dash_off_val, context, info->theme, error))
+ return;
+
+ width_val = 0;
+ if (width &&
+ !parse_positive_integer (width, &width_val, context, info->theme, error))
+ return;
+
+ /* Check last so we don't have to free it when other
+ * stuff fails
+ */
+ color_spec = parse_color (info->theme, color, error);
+ if (color_spec == NULL)
+ {
+ add_context_to_error (error, context);
+ return;
+ }
+
+ op = meta_draw_op_new (META_DRAW_LINE);
+
+ op->data.line.color_spec = color_spec;
+
+ op->data.line.x1 = meta_draw_spec_new (info->theme, x1, NULL);
+ op->data.line.y1 = meta_draw_spec_new (info->theme, y1, NULL);
+
+ if (strcmp(x1, x2)==0)
+ op->data.line.x2 = NULL;
+ else
+ op->data.line.x2 = meta_draw_spec_new (info->theme, x2, NULL);
+
+ if (strcmp(y1, y2)==0)
+ op->data.line.y2 = NULL;
+ else
+ op->data.line.y2 = meta_draw_spec_new (info->theme, y2, NULL);
+
+ op->data.line.width = width_val;
+ op->data.line.dash_on_length = dash_on_val;
+ op->data.line.dash_off_length = dash_off_val;
+
+ g_assert (info->op_list);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_LINE);
+ }
+ else if (ELEMENT_IS ("rectangle"))
+ {
+ MetaDrawOp *op;
+ const char *color;
+ const char *x;
+ const char *y;
+ const char *width;
+ const char *height;
+ const char *filled;
+ gboolean filled_val;
+ MetaColorSpec *color_spec;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!color", &color,
+ "!x", &x, "!y", &y,
+ "!width", &width, "!height", &height,
+ "filled", &filled,
+ NULL))
+ return;
+
+#if 0
+ if (!check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (width, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (height, FALSE, info->theme, context, error))
+ return;
+#endif
+
+ filled_val = FALSE;
+ if (filled && !parse_boolean (filled, &filled_val, context, error))
+ return;
+
+ /* Check last so we don't have to free it when other
+ * stuff fails
+ */
+ color_spec = parse_color (info->theme, color, error);
+ if (color_spec == NULL)
+ {
+ add_context_to_error (error, context);
+ return;
+ }
+
+ op = meta_draw_op_new (META_DRAW_RECTANGLE);
+
+ op->data.rectangle.color_spec = color_spec;
+ op->data.rectangle.x = meta_draw_spec_new (info->theme, x, NULL);
+ op->data.rectangle.y = meta_draw_spec_new (info->theme, y, NULL);
+ op->data.rectangle.width = meta_draw_spec_new (info->theme, width, NULL);
+ op->data.rectangle.height = meta_draw_spec_new (info->theme,
+ height, NULL);
+
+ op->data.rectangle.filled = filled_val;
+
+ g_assert (info->op_list);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_RECTANGLE);
+ }
+ else if (ELEMENT_IS ("arc"))
+ {
+ MetaDrawOp *op;
+ const char *color;
+ const char *x;
+ const char *y;
+ const char *width;
+ const char *height;
+ const char *filled;
+ const char *start_angle;
+ const char *extent_angle;
+ const char *from;
+ const char *to;
+ gboolean filled_val;
+ double start_angle_val;
+ double extent_angle_val;
+ MetaColorSpec *color_spec;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!color", &color,
+ "!x", &x, "!y", &y,
+ "!width", &width, "!height", &height,
+ "filled", &filled,
+ "start_angle", &start_angle,
+ "extent_angle", &extent_angle,
+ "from", &from,
+ "to", &to,
+ NULL))
+ return;
+
+ if (META_THEME_ALLOWS (info->theme, META_THEME_DEGREES_IN_ARCS) )
+ {
+ if (start_angle == NULL && from == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("No \"start_angle\" or \"from\" attribute on element <%s>"), element_name);
+ return;
+ }
+
+ if (extent_angle == NULL && to == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("No \"extent_angle\" or \"to\" attribute on element <%s>"), element_name);
+ return;
+ }
+ }
+ else
+ {
+ if (start_angle == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ ATTRIBUTE_NOT_FOUND, "start_angle", element_name);
+ return;
+ }
+
+ if (extent_angle == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ ATTRIBUTE_NOT_FOUND, "extent_angle", element_name);
+ return;
+ }
+ }
+
+#if 0
+ if (!check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (width, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (height, FALSE, info->theme, context, error))
+ return;
+#endif
+
+ if (start_angle == NULL)
+ {
+ if (!parse_angle (from, &start_angle_val, context, error))
+ return;
+
+ start_angle_val = (180-start_angle_val)/360.0;
+ }
+ else
+ {
+ if (!parse_angle (start_angle, &start_angle_val, context, error))
+ return;
+ }
+
+ if (extent_angle == NULL)
+ {
+ if (!parse_angle (to, &extent_angle_val, context, error))
+ return;
+
+ extent_angle_val = ((180-extent_angle_val)/360.0) - start_angle_val;
+ }
+ else
+ {
+ if (!parse_angle (extent_angle, &extent_angle_val, context, error))
+ return;
+ }
+
+ filled_val = FALSE;
+ if (filled && !parse_boolean (filled, &filled_val, context, error))
+ return;
+
+ /* Check last so we don't have to free it when other
+ * stuff fails
+ */
+ color_spec = parse_color (info->theme, color, error);
+ if (color_spec == NULL)
+ {
+ add_context_to_error (error, context);
+ return;
+ }
+
+ op = meta_draw_op_new (META_DRAW_ARC);
+
+ op->data.arc.color_spec = color_spec;
+
+ op->data.arc.x = meta_draw_spec_new (info->theme, x, NULL);
+ op->data.arc.y = meta_draw_spec_new (info->theme, y, NULL);
+ op->data.arc.width = meta_draw_spec_new (info->theme, width, NULL);
+ op->data.arc.height = meta_draw_spec_new (info->theme, height, NULL);
+
+ op->data.arc.filled = filled_val;
+ op->data.arc.start_angle = start_angle_val;
+ op->data.arc.extent_angle = extent_angle_val;
+
+ g_assert (info->op_list);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_ARC);
+ }
+ else if (ELEMENT_IS ("clip"))
+ {
+ MetaDrawOp *op;
+ const char *x;
+ const char *y;
+ const char *width;
+ const char *height;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!x", &x, "!y", &y,
+ "!width", &width, "!height", &height,
+ NULL))
+ return;
+
+#if 0
+ if (!check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (width, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (height, FALSE, info->theme, context, error))
+ return;
+#endif
+ op = meta_draw_op_new (META_DRAW_CLIP);
+
+ op->data.clip.x = meta_draw_spec_new (info->theme, x, NULL);
+ op->data.clip.y = meta_draw_spec_new (info->theme, y, NULL);
+ op->data.clip.width = meta_draw_spec_new (info->theme, width, NULL);
+ op->data.clip.height = meta_draw_spec_new (info->theme, height, NULL);
+
+ g_assert (info->op_list);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_CLIP);
+ }
+ else if (ELEMENT_IS ("tint"))
+ {
+ MetaDrawOp *op;
+ const char *color;
+ const char *x;
+ const char *y;
+ const char *width;
+ const char *height;
+ const char *alpha;
+ MetaAlphaGradientSpec *alpha_spec;
+ MetaColorSpec *color_spec;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!color", &color,
+ "!x", &x, "!y", &y,
+ "!width", &width, "!height", &height,
+ "!alpha", &alpha,
+ NULL))
+ return;
+
+#if 0
+ if (!check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (width, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (height, FALSE, info->theme, context, error))
+ return;
+#endif
+ alpha_spec = NULL;
+ if (!parse_alpha (alpha, &alpha_spec, context, error))
+ return;
+
+ /* Check last so we don't have to free it when other
+ * stuff fails
+ */
+ color_spec = parse_color (info->theme, color, error);
+ if (color_spec == NULL)
+ {
+ if (alpha_spec)
+ meta_alpha_gradient_spec_free (alpha_spec);
+
+ add_context_to_error (error, context);
+ return;
+ }
+
+ op = meta_draw_op_new (META_DRAW_TINT);
+
+ op->data.tint.color_spec = color_spec;
+ op->data.tint.alpha_spec = alpha_spec;
+
+ op->data.tint.x = meta_draw_spec_new (info->theme, x, NULL);
+ op->data.tint.y = meta_draw_spec_new (info->theme, y, NULL);
+ op->data.tint.width = meta_draw_spec_new (info->theme, width, NULL);
+ op->data.tint.height = meta_draw_spec_new (info->theme, height, NULL);
+
+ g_assert (info->op_list);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_TINT);
+ }
+ else if (ELEMENT_IS ("gradient"))
+ {
+ const char *x;
+ const char *y;
+ const char *width;
+ const char *height;
+ const char *type;
+ const char *alpha;
+ MetaAlphaGradientSpec *alpha_spec;
+ MetaGradientType type_val;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!type", &type,
+ "!x", &x, "!y", &y,
+ "!width", &width, "!height", &height,
+ "alpha", &alpha,
+ NULL))
+ return;
+
+#if 0
+ if (!check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (width, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (height, FALSE, info->theme, context, error))
+ return;
+#endif
+
+ type_val = meta_gradient_type_from_string (type);
+ if (type_val == META_GRADIENT_LAST)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Did not understand value \"%s\" for type of gradient"),
+ type);
+ return;
+ }
+
+ alpha_spec = NULL;
+ if (alpha && !parse_alpha (alpha, &alpha_spec, context, error))
+ return;
+
+ g_assert (info->op == NULL);
+ info->op = meta_draw_op_new (META_DRAW_GRADIENT);
+
+ info->op->data.gradient.x = meta_draw_spec_new (info->theme, x, NULL);
+ info->op->data.gradient.y = meta_draw_spec_new (info->theme, y, NULL);
+ info->op->data.gradient.width = meta_draw_spec_new (info->theme,
+ width, NULL);
+ info->op->data.gradient.height = meta_draw_spec_new (info->theme,
+ height, NULL);
+
+ info->op->data.gradient.gradient_spec = meta_gradient_spec_new (type_val);
+
+ info->op->data.gradient.alpha_spec = alpha_spec;
+
+ push_state (info, STATE_GRADIENT);
+
+ /* op gets appended on close tag */
+ }
+ else if (ELEMENT_IS ("image"))
+ {
+ MetaDrawOp *op;
+ const char *filename;
+ const char *x;
+ const char *y;
+ const char *width;
+ const char *height;
+ const char *alpha;
+ const char *colorize;
+ const char *fill_type;
+ MetaAlphaGradientSpec *alpha_spec;
+ GdkPixbuf *pixbuf;
+ MetaColorSpec *colorize_spec = NULL;
+ MetaImageFillType fill_type_val;
+ int h, w, c;
+ int pixbuf_width, pixbuf_height, pixbuf_n_channels, pixbuf_rowstride;
+ guchar *pixbuf_pixels;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!x", &x, "!y", &y,
+ "!width", &width, "!height", &height,
+ "alpha", &alpha, "!filename", &filename,
+ "colorize", &colorize,
+ "fill_type", &fill_type,
+ NULL))
+ return;
+
+#if 0
+ if (!check_expression (x, TRUE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y, TRUE, info->theme, context, error))
+ return;
+
+ if (!check_expression (width, TRUE, info->theme, context, error))
+ return;
+
+ if (!check_expression (height, TRUE, info->theme, context, error))
+ return;
+#endif
+ fill_type_val = META_IMAGE_FILL_SCALE;
+ if (fill_type)
+ {
+ fill_type_val = meta_image_fill_type_from_string (fill_type);
+
+ if (((int) fill_type_val) == -1)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Did not understand fill type \"%s\" for <%s> element"),
+ fill_type, element_name);
+ }
+ }
+
+ /* Check last so we don't have to free it when other
+ * stuff fails.
+ *
+ * If it's a theme image, ask for it at 64px, which is
+ * the largest possible. We scale it anyway.
+ */
+ pixbuf = meta_theme_load_image (info->theme, filename, 64, error);
+
+ if (pixbuf == NULL)
+ {
+ add_context_to_error (error, context);
+ return;
+ }
+
+ if (colorize)
+ {
+ colorize_spec = parse_color (info->theme, colorize, error);
+
+ if (colorize_spec == NULL)
+ {
+ add_context_to_error (error, context);
+ g_object_unref (G_OBJECT (pixbuf));
+ return;
+ }
+ }
+
+ alpha_spec = NULL;
+ if (alpha && !parse_alpha (alpha, &alpha_spec, context, error))
+ {
+ g_object_unref (G_OBJECT (pixbuf));
+ return;
+ }
+
+ op = meta_draw_op_new (META_DRAW_IMAGE);
+
+ op->data.image.pixbuf = pixbuf;
+ op->data.image.colorize_spec = colorize_spec;
+
+ op->data.image.x = meta_draw_spec_new (info->theme, x, NULL);
+ op->data.image.y = meta_draw_spec_new (info->theme, y, NULL);
+ op->data.image.width = meta_draw_spec_new (info->theme, width, NULL);
+ op->data.image.height = meta_draw_spec_new (info->theme, height, NULL);
+
+ op->data.image.alpha_spec = alpha_spec;
+ op->data.image.fill_type = fill_type_val;
+
+ /* Check for vertical & horizontal stripes */
+ pixbuf_n_channels = gdk_pixbuf_get_n_channels(pixbuf);
+ pixbuf_width = gdk_pixbuf_get_width(pixbuf);
+ pixbuf_height = gdk_pixbuf_get_height(pixbuf);
+ pixbuf_rowstride = gdk_pixbuf_get_rowstride(pixbuf);
+ pixbuf_pixels = gdk_pixbuf_get_pixels(pixbuf);
+
+ /* Check for horizontal stripes */
+ for (h = 0; h < pixbuf_height; h++)
+ {
+ for (w = 1; w < pixbuf_width; w++)
+ {
+ for (c = 0; c < pixbuf_n_channels; c++)
+ {
+ if (pixbuf_pixels[(h * pixbuf_rowstride) + c] !=
+ pixbuf_pixels[(h * pixbuf_rowstride) + w + c])
+ break;
+ }
+ if (c < pixbuf_n_channels)
+ break;
+ }
+ if (w < pixbuf_width)
+ break;
+ }
+
+ if (h >= pixbuf_height)
+ {
+ op->data.image.horizontal_stripes = TRUE;
+ }
+ else
+ {
+ op->data.image.horizontal_stripes = FALSE;
+ }
+
+ /* Check for vertical stripes */
+ for (w = 0; w < pixbuf_width; w++)
+ {
+ for (h = 1; h < pixbuf_height; h++)
+ {
+ for (c = 0; c < pixbuf_n_channels; c++)
+ {
+ if (pixbuf_pixels[w + c] !=
+ pixbuf_pixels[(h * pixbuf_rowstride) + w + c])
+ break;
+ }
+ if (c < pixbuf_n_channels)
+ break;
+ }
+ if (h < pixbuf_height)
+ break;
+ }
+
+ if (w >= pixbuf_width)
+ {
+ op->data.image.vertical_stripes = TRUE;
+ }
+ else
+ {
+ op->data.image.vertical_stripes = FALSE;
+ }
+
+ g_assert (info->op_list);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_IMAGE);
+ }
+ else if (ELEMENT_IS ("gtk_arrow"))
+ {
+ MetaDrawOp *op;
+ const char *state;
+ const char *shadow;
+ const char *arrow;
+ const char *x;
+ const char *y;
+ const char *width;
+ const char *height;
+ const char *filled;
+ gboolean filled_val;
+ GtkStateType state_val;
+ GtkShadowType shadow_val;
+ GtkArrowType arrow_val;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!state", &state,
+ "!shadow", &shadow,
+ "!arrow", &arrow,
+ "!x", &x, "!y", &y,
+ "!width", &width, "!height", &height,
+ "filled", &filled,
+ NULL))
+ return;
+
+#if 0
+ if (!check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (width, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (height, FALSE, info->theme, context, error))
+ return;
+#endif
+ filled_val = TRUE;
+ if (filled && !parse_boolean (filled, &filled_val, context, error))
+ return;
+
+ state_val = meta_gtk_state_from_string (state);
+ if (((int) state_val) == -1)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Did not understand state \"%s\" for <%s> element"),
+ state, element_name);
+ return;
+ }
+
+ shadow_val = meta_gtk_shadow_from_string (shadow);
+ if (((int) shadow_val) == -1)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Did not understand shadow \"%s\" for <%s> element"),
+ shadow, element_name);
+ return;
+ }
+
+ arrow_val = meta_gtk_arrow_from_string (arrow);
+ if (((int) arrow_val) == -1)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Did not understand arrow \"%s\" for <%s> element"),
+ arrow, element_name);
+ return;
+ }
+
+ op = meta_draw_op_new (META_DRAW_GTK_ARROW);
+
+ op->data.gtk_arrow.x = meta_draw_spec_new (info->theme, x, NULL);
+ op->data.gtk_arrow.y = meta_draw_spec_new (info->theme, y, NULL);
+ op->data.gtk_arrow.width = meta_draw_spec_new (info->theme, width, NULL);
+ op->data.gtk_arrow.height = meta_draw_spec_new (info->theme,
+ height, NULL);
+
+ op->data.gtk_arrow.filled = filled_val;
+ op->data.gtk_arrow.state = state_val;
+ op->data.gtk_arrow.shadow = shadow_val;
+ op->data.gtk_arrow.arrow = arrow_val;
+
+ g_assert (info->op_list);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_GTK_ARROW);
+ }
+ else if (ELEMENT_IS ("gtk_box"))
+ {
+ MetaDrawOp *op;
+ const char *state;
+ const char *shadow;
+ const char *x;
+ const char *y;
+ const char *width;
+ const char *height;
+ GtkStateType state_val;
+ GtkShadowType shadow_val;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!state", &state,
+ "!shadow", &shadow,
+ "!x", &x, "!y", &y,
+ "!width", &width, "!height", &height,
+ NULL))
+ return;
+
+#if 0
+ if (!check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (width, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (height, FALSE, info->theme, context, error))
+ return;
+#endif
+ state_val = meta_gtk_state_from_string (state);
+ if (((int) state_val) == -1)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Did not understand state \"%s\" for <%s> element"),
+ state, element_name);
+ return;
+ }
+
+ shadow_val = meta_gtk_shadow_from_string (shadow);
+ if (((int) shadow_val) == -1)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Did not understand shadow \"%s\" for <%s> element"),
+ shadow, element_name);
+ return;
+ }
+
+ op = meta_draw_op_new (META_DRAW_GTK_BOX);
+
+ op->data.gtk_box.x = meta_draw_spec_new (info->theme, x, NULL);
+ op->data.gtk_box.y = meta_draw_spec_new (info->theme, y, NULL);
+ op->data.gtk_box.width = meta_draw_spec_new (info->theme, width, NULL);
+ op->data.gtk_box.height = meta_draw_spec_new (info->theme, height, NULL);
+
+ op->data.gtk_box.state = state_val;
+ op->data.gtk_box.shadow = shadow_val;
+
+ g_assert (info->op_list);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_GTK_BOX);
+ }
+ else if (ELEMENT_IS ("gtk_vline"))
+ {
+ MetaDrawOp *op;
+ const char *state;
+ const char *x;
+ const char *y1;
+ const char *y2;
+ GtkStateType state_val;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!state", &state,
+ "!x", &x, "!y1", &y1, "!y2", &y2,
+ NULL))
+ return;
+
+#if 0
+ if (!check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y1, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y2, FALSE, info->theme, context, error))
+ return;
+#endif
+
+ state_val = meta_gtk_state_from_string (state);
+ if (((int) state_val) == -1)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Did not understand state \"%s\" for <%s> element"),
+ state, element_name);
+ return;
+ }
+
+ op = meta_draw_op_new (META_DRAW_GTK_VLINE);
+
+ op->data.gtk_vline.x = meta_draw_spec_new (info->theme, x, NULL);
+ op->data.gtk_vline.y1 = meta_draw_spec_new (info->theme, y1, NULL);
+ op->data.gtk_vline.y2 = meta_draw_spec_new (info->theme, y2, NULL);
+
+ op->data.gtk_vline.state = state_val;
+
+ g_assert (info->op_list);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_GTK_VLINE);
+ }
+ else if (ELEMENT_IS ("icon"))
+ {
+ MetaDrawOp *op;
+ const char *x;
+ const char *y;
+ const char *width;
+ const char *height;
+ const char *alpha;
+ const char *fill_type;
+ MetaAlphaGradientSpec *alpha_spec;
+ MetaImageFillType fill_type_val;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!x", &x, "!y", &y,
+ "!width", &width, "!height", &height,
+ "alpha", &alpha,
+ "fill_type", &fill_type,
+ NULL))
+ return;
+
+#if 0
+ if (!check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (width, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (height, FALSE, info->theme, context, error))
+ return;
+#endif
+ fill_type_val = META_IMAGE_FILL_SCALE;
+ if (fill_type)
+ {
+ fill_type_val = meta_image_fill_type_from_string (fill_type);
+
+ if (((int) fill_type_val) == -1)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Did not understand fill type \"%s\" for <%s> element"),
+ fill_type, element_name);
+ }
+ }
+
+ alpha_spec = NULL;
+ if (alpha && !parse_alpha (alpha, &alpha_spec, context, error))
+ return;
+
+ op = meta_draw_op_new (META_DRAW_ICON);
+
+ op->data.icon.x = meta_draw_spec_new (info->theme, x, NULL);
+ op->data.icon.y = meta_draw_spec_new (info->theme, y, NULL);
+ op->data.icon.width = meta_draw_spec_new (info->theme, width, NULL);
+ op->data.icon.height = meta_draw_spec_new (info->theme, height, NULL);
+
+ op->data.icon.alpha_spec = alpha_spec;
+ op->data.icon.fill_type = fill_type_val;
+
+ g_assert (info->op_list);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_ICON);
+ }
+ else if (ELEMENT_IS ("title"))
+ {
+ MetaDrawOp *op;
+ const char *color;
+ const char *x;
+ const char *y;
+ MetaColorSpec *color_spec;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!color", &color,
+ "!x", &x, "!y", &y,
+ NULL))
+ return;
+
+#if 0
+ if (!check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (y, FALSE, info->theme, context, error))
+ return;
+#endif
+
+ /* Check last so we don't have to free it when other
+ * stuff fails
+ */
+ color_spec = parse_color (info->theme, color, error);
+ if (color_spec == NULL)
+ {
+ add_context_to_error (error, context);
+ return;
+ }
+
+ op = meta_draw_op_new (META_DRAW_TITLE);
+
+ op->data.title.color_spec = color_spec;
+
+ op->data.title.x = meta_draw_spec_new (info->theme, x, NULL);
+ op->data.title.y = meta_draw_spec_new (info->theme, y, NULL);
+
+ g_assert (info->op_list);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_TITLE);
+ }
+ else if (ELEMENT_IS ("include"))
+ {
+ MetaDrawOp *op;
+ const char *name;
+ const char *x;
+ const char *y;
+ const char *width;
+ const char *height;
+ MetaDrawOpList *op_list;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "x", &x, "y", &y,
+ "width", &width, "height", &height,
+ "!name", &name,
+ NULL))
+ return;
+
+ /* x/y/width/height default to 0,0,width,height - should
+ * probably do this for all the draw ops
+ */
+#if 0
+ if (x && !check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (y && !check_expression (y, FALSE, info->theme, context, error))
+ return;
+
+ if (width && !check_expression (width, FALSE, info->theme, context, error))
+ return;
+
+ if (height && !check_expression (height, FALSE, info->theme, context, error))
+ return;
+#endif
+
+ op_list = meta_theme_lookup_draw_op_list (info->theme,
+ name);
+ if (op_list == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("No <draw_ops> called \"%s\" has been defined"),
+ name);
+ return;
+ }
+
+ g_assert (info->op_list);
+
+ if (op_list == info->op_list ||
+ meta_draw_op_list_contains (op_list, info->op_list))
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Including draw_ops \"%s\" here would create a circular reference"),
+ name);
+ return;
+ }
+
+ op = meta_draw_op_new (META_DRAW_OP_LIST);
+
+ meta_draw_op_list_ref (op_list);
+ op->data.op_list.op_list = op_list;
+
+ op->data.op_list.x = meta_draw_spec_new (info->theme, x ? x : "0", NULL);
+ op->data.op_list.y = meta_draw_spec_new (info->theme, y ? y : "0", NULL);
+ op->data.op_list.width = meta_draw_spec_new (info->theme,
+ width ? width : "width",
+ NULL);
+ op->data.op_list.height = meta_draw_spec_new (info->theme,
+ height ? height : "height",
+ NULL);
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_INCLUDE);
+ }
+ else if (ELEMENT_IS ("tile"))
+ {
+ MetaDrawOp *op;
+ const char *name;
+ const char *x;
+ const char *y;
+ const char *width;
+ const char *height;
+ const char *tile_xoffset;
+ const char *tile_yoffset;
+ const char *tile_width;
+ const char *tile_height;
+ MetaDrawOpList *op_list;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "x", &x, "y", &y,
+ "width", &width, "height", &height,
+ "!name", &name,
+ "tile_xoffset", &tile_xoffset,
+ "tile_yoffset", &tile_yoffset,
+ "!tile_width", &tile_width,
+ "!tile_height", &tile_height,
+ NULL))
+ return;
+
+ /* These default to 0 */
+#if 0
+ if (tile_xoffset && !check_expression (tile_xoffset, FALSE, info->theme, context, error))
+ return;
+
+ if (tile_yoffset && !check_expression (tile_yoffset, FALSE, info->theme, context, error))
+ return;
+
+ /* x/y/width/height default to 0,0,width,height - should
+ * probably do this for all the draw ops
+ */
+ if (x && !check_expression (x, FALSE, info->theme, context, error))
+ return;
+
+ if (y && !check_expression (y, FALSE, info->theme, context, error))
+ return;
+
+ if (width && !check_expression (width, FALSE, info->theme, context, error))
+ return;
+
+ if (height && !check_expression (height, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (tile_width, FALSE, info->theme, context, error))
+ return;
+
+ if (!check_expression (tile_height, FALSE, info->theme, context, error))
+ return;
+#endif
+ op_list = meta_theme_lookup_draw_op_list (info->theme,
+ name);
+ if (op_list == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("No <draw_ops> called \"%s\" has been defined"),
+ name);
+ return;
+ }
+
+ g_assert (info->op_list);
+
+ if (op_list == info->op_list ||
+ meta_draw_op_list_contains (op_list, info->op_list))
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Including draw_ops \"%s\" here would create a circular reference"),
+ name);
+ return;
+ }
+
+ op = meta_draw_op_new (META_DRAW_TILE);
+
+ meta_draw_op_list_ref (op_list);
+
+ op->data.tile.x = meta_draw_spec_new (info->theme, x ? x : "0", NULL);
+ op->data.tile.y = meta_draw_spec_new (info->theme, y ? y : "0", NULL);
+ op->data.tile.width = meta_draw_spec_new (info->theme,
+ width ? width : "width",
+ NULL);
+ op->data.tile.height = meta_draw_spec_new (info->theme,
+ height ? height : "height",
+ NULL);
+ op->data.tile.tile_xoffset = meta_draw_spec_new (info->theme,
+ tile_xoffset ? tile_xoffset : "0",
+ NULL);
+ op->data.tile.tile_yoffset = meta_draw_spec_new (info->theme,
+ tile_yoffset ? tile_yoffset : "0",
+ NULL);
+ op->data.tile.tile_width = meta_draw_spec_new (info->theme, tile_width, NULL);
+ op->data.tile.tile_height = meta_draw_spec_new (info->theme, tile_height, NULL);
+
+ op->data.tile.op_list = op_list;
+
+ meta_draw_op_list_append (info->op_list, op);
+
+ push_state (info, STATE_TILE);
+ }
+ else
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "draw_ops");
+ }
+}
+
+static void
+parse_gradient_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_GRADIENT);
+
+ if (ELEMENT_IS ("color"))
+ {
+ const char *value = NULL;
+ MetaColorSpec *color_spec;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!value", &value,
+ NULL))
+ return;
+
+ color_spec = parse_color (info->theme, value, error);
+ if (color_spec == NULL)
+ {
+ add_context_to_error (error, context);
+ return;
+ }
+
+ g_assert (info->op);
+ g_assert (info->op->type == META_DRAW_GRADIENT);
+ g_assert (info->op->data.gradient.gradient_spec != NULL);
+ info->op->data.gradient.gradient_spec->color_specs =
+ g_slist_append (info->op->data.gradient.gradient_spec->color_specs,
+ color_spec);
+
+ push_state (info, STATE_COLOR);
+ }
+ else
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "gradient");
+ }
+}
+
+static void
+parse_style_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_FRAME_STYLE);
+
+ g_assert (info->style);
+
+ if (ELEMENT_IS ("piece"))
+ {
+ const char *position = NULL;
+ const char *draw_ops = NULL;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!position", &position,
+ "draw_ops", &draw_ops,
+ NULL))
+ return;
+
+ info->piece = meta_frame_piece_from_string (position);
+ if (info->piece == META_FRAME_PIECE_LAST)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Unknown position \"%s\" for frame piece"),
+ position);
+ return;
+ }
+
+ if (info->style->pieces[info->piece] != NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Frame style already has a piece at position %s"),
+ position);
+ return;
+ }
+
+ g_assert (info->op_list == NULL);
+
+ if (draw_ops)
+ {
+ MetaDrawOpList *op_list;
+
+ op_list = meta_theme_lookup_draw_op_list (info->theme,
+ draw_ops);
+
+ if (op_list == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("No <draw_ops> with the name \"%s\" has been defined"),
+ draw_ops);
+ return;
+ }
+
+ meta_draw_op_list_ref (op_list);
+ info->op_list = op_list;
+ }
+
+ push_state (info, STATE_PIECE);
+ }
+ else if (ELEMENT_IS ("button"))
+ {
+ const char *function = NULL;
+ const char *state = NULL;
+ const char *draw_ops = NULL;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!function", &function,
+ "!state", &state,
+ "draw_ops", &draw_ops,
+ NULL))
+ return;
+
+ info->button_type = meta_button_type_from_string (function, info->theme);
+ if (info->button_type == META_BUTTON_TYPE_LAST)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Unknown function \"%s\" for button"),
+ function);
+ return;
+ }
+
+ if (meta_theme_earliest_version_with_button (info->button_type) >
+ info->theme->format_version)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Button function \"%s\" does not exist in this version (%d, need %d)"),
+ function,
+ info->theme->format_version,
+ meta_theme_earliest_version_with_button (info->button_type)
+ );
+ return;
+ }
+
+ info->button_state = meta_button_state_from_string (state);
+ if (info->button_state == META_BUTTON_STATE_LAST)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Unknown state \"%s\" for button"),
+ state);
+ return;
+ }
+
+ if (info->style->buttons[info->button_type][info->button_state] != NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Frame style already has a button for function %s state %s"),
+ function, state);
+ return;
+ }
+
+ g_assert (info->op_list == NULL);
+
+ if (draw_ops)
+ {
+ MetaDrawOpList *op_list;
+
+ op_list = meta_theme_lookup_draw_op_list (info->theme,
+ draw_ops);
+
+ if (op_list == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("No <draw_ops> with the name \"%s\" has been defined"),
+ draw_ops);
+ return;
+ }
+
+ meta_draw_op_list_ref (op_list);
+ info->op_list = op_list;
+ }
+
+ push_state (info, STATE_BUTTON);
+ }
+#ifdef USE_UBUNTU_CODE
+ else if (ELEMENT_IS ("shadow"))
+ {
+ push_state (info, STATE_SHADOW);
+ }
+ else if (ELEMENT_IS ("padding"))
+ {
+ push_state (info, STATE_PADDING);
+ }
+#endif
+ else
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "frame_style");
+ }
+}
+
+static void
+parse_style_set_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_FRAME_STYLE_SET);
+
+ if (ELEMENT_IS ("frame"))
+ {
+ const char *focus = NULL;
+ const char *state = NULL;
+ const char *resize = NULL;
+ const char *style = NULL;
+ MetaFrameFocus frame_focus;
+ MetaFrameState frame_state;
+ MetaFrameResize frame_resize;
+ MetaFrameStyle *frame_style;
+
+ if (!locate_attributes (context, element_name, attribute_names, attribute_values,
+ error,
+ "!focus", &focus,
+ "!state", &state,
+ "resize", &resize,
+ "!style", &style,
+ NULL))
+ return;
+
+ frame_focus = meta_frame_focus_from_string (focus);
+ if (frame_focus == META_FRAME_FOCUS_LAST)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("\"%s\" is not a valid value for focus attribute"),
+ focus);
+ return;
+ }
+
+ frame_state = meta_frame_state_from_string (state);
+ if (frame_state == META_FRAME_STATE_LAST)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("\"%s\" is not a valid value for state attribute"),
+ focus);
+ return;
+ }
+
+ frame_style = meta_theme_lookup_style (info->theme, style);
+
+ if (frame_style == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("A style called \"%s\" has not been defined"),
+ style);
+ return;
+ }
+
+ switch (frame_state)
+ {
+ case META_FRAME_STATE_NORMAL:
+ if (resize == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ ATTRIBUTE_NOT_FOUND,
+ "resize", element_name);
+ return;
+ }
+
+
+ frame_resize = meta_frame_resize_from_string (resize);
+ if (frame_resize == META_FRAME_RESIZE_LAST)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("\"%s\" is not a valid value for resize attribute"),
+ focus);
+ return;
+ }
+
+ break;
+
+ case META_FRAME_STATE_SHADED:
+ if (META_THEME_ALLOWS (info->theme, META_THEME_UNRESIZABLE_SHADED_STYLES))
+ {
+ if (resize == NULL)
+ /* In state="normal" we would complain here. But instead we accept
+ * not having a resize attribute and default to resize="both", since
+ * that most closely mimics what we did in v1, and thus people can
+ * upgrade a theme to v2 without as much hassle.
+ */
+ frame_resize = META_FRAME_RESIZE_BOTH;
+ else
+ {
+ frame_resize = meta_frame_resize_from_string (resize);
+ if (frame_resize == META_FRAME_RESIZE_LAST)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("\"%s\" is not a valid value for resize attribute"),
+ focus);
+ return;
+ }
+ }
+ }
+ else /* v1 theme */
+ {
+ if (resize != NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Should not have \"resize\" attribute on <%s> element for maximized/shaded states"),
+ element_name);
+ return;
+ }
+
+ /* resize="both" is equivalent to the old behaviour */
+ frame_resize = META_FRAME_RESIZE_BOTH;
+ }
+ break;
+
+ default:
+ if (resize != NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Should not have \"resize\" attribute on <%s> element for maximized states"),
+ element_name);
+ return;
+ }
+
+ frame_resize = META_FRAME_RESIZE_LAST;
+ }
+
+ switch (frame_state)
+ {
+ case META_FRAME_STATE_NORMAL:
+ if (info->style_set->normal_styles[frame_resize][frame_focus])
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Style has already been specified for state %s resize %s focus %s"),
+ state, resize, focus);
+ return;
+ }
+ meta_frame_style_ref (frame_style);
+ info->style_set->normal_styles[frame_resize][frame_focus] = frame_style;
+ break;
+ case META_FRAME_STATE_MAXIMIZED:
+ if (info->style_set->maximized_styles[frame_focus])
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Style has already been specified for state %s focus %s"),
+ state, focus);
+ return;
+ }
+ meta_frame_style_ref (frame_style);
+ info->style_set->maximized_styles[frame_focus] = frame_style;
+ break;
+ case META_FRAME_STATE_SHADED:
+ if (info->style_set->shaded_styles[frame_resize][frame_focus])
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Style has already been specified for state %s resize %s focus %s"),
+ state, resize, focus);
+ return;
+ }
+ meta_frame_style_ref (frame_style);
+ info->style_set->shaded_styles[frame_resize][frame_focus] = frame_style;
+ break;
+ case META_FRAME_STATE_MAXIMIZED_AND_SHADED:
+ if (info->style_set->maximized_and_shaded_styles[frame_focus])
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Style has already been specified for state %s focus %s"),
+ state, focus);
+ return;
+ }
+ meta_frame_style_ref (frame_style);
+ info->style_set->maximized_and_shaded_styles[frame_focus] = frame_style;
+ break;
+ case META_FRAME_STATE_LAST:
+ g_assert_not_reached ();
+ break;
+ }
+
+ push_state (info, STATE_FRAME);
+ }
+ else
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "frame_style_set");
+ }
+}
+
+static void
+parse_piece_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_PIECE);
+
+ if (ELEMENT_IS ("draw_ops"))
+ {
+ if (info->op_list)
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Can't have a two draw_ops for a <piece> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"));
+ return;
+ }
+
+ if (!check_no_attributes (context, element_name, attribute_names, attribute_values,
+ error))
+ return;
+
+ g_assert (info->op_list == NULL);
+ info->op_list = meta_draw_op_list_new (2);
+
+ push_state (info, STATE_DRAW_OPS);
+ }
+ else
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "piece");
+ }
+}
+
+static void
+parse_button_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_BUTTON);
+
+ if (ELEMENT_IS ("draw_ops"))
+ {
+ if (info->op_list)
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Can't have a two draw_ops for a <button> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"));
+ return;
+ }
+
+ if (!check_no_attributes (context, element_name, attribute_names, attribute_values,
+ error))
+ return;
+
+ g_assert (info->op_list == NULL);
+ info->op_list = meta_draw_op_list_new (2);
+
+ push_state (info, STATE_DRAW_OPS);
+ }
+ else
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "button");
+ }
+}
+
+#ifdef USE_UBUNTU_CODE
+static void
+parse_shadow_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_SHADOW);
+
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "shadow");
+}
+
+static void
+parse_padding_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_PADDING);
+
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "padding");
+}
+#endif
+
+static void
+parse_menu_icon_element (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ ParseInfo *info,
+ GError **error)
+{
+ g_return_if_fail (peek_state (info) == STATE_MENU_ICON);
+
+ if (ELEMENT_IS ("draw_ops"))
+ {
+ if (info->op_list)
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Can't have a two draw_ops for a <menu_icon> element (theme specified a draw_ops attribute and also a <draw_ops> element, or specified two elements)"));
+ return;
+ }
+
+ if (!check_no_attributes (context, element_name, attribute_names, attribute_values,
+ error))
+ return;
+
+ g_assert (info->op_list == NULL);
+ info->op_list = meta_draw_op_list_new (2);
+
+ push_state (info, STATE_DRAW_OPS);
+ }
+ else
+ {
+ set_error (error, context,
+ G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed below <%s>"),
+ element_name, "menu_icon");
+ }
+}
+
+
+static void
+start_element_handler (GMarkupParseContext *context,
+ const gchar *element_name,
+ const gchar **attribute_names,
+ const gchar **attribute_values,
+ gpointer user_data,
+ GError **error)
+{
+ ParseInfo *info = user_data;
+
+ switch (peek_state (info))
+ {
+ case STATE_START:
+ if (strcmp (element_name, "metacity_theme") == 0)
+ {
+ info->theme = meta_theme_new ();
+ info->theme->name = g_strdup (info->theme_name);
+ info->theme->filename = g_strdup (info->theme_file);
+ info->theme->dirname = g_strdup (info->theme_dir);
+ info->theme->format_version = info->format_version;
+
+ push_state (info, STATE_THEME);
+ }
+ else
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Outermost element in theme must be <metacity_theme> not <%s>"),
+ element_name);
+ break;
+
+ case STATE_THEME:
+ parse_toplevel_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+ case STATE_INFO:
+ parse_info_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+ case STATE_NAME:
+ case STATE_AUTHOR:
+ case STATE_COPYRIGHT:
+ case STATE_DATE:
+ case STATE_DESCRIPTION:
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed inside a name/author/date/description element"),
+ element_name);
+ break;
+ case STATE_CONSTANT:
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed inside a <constant> element"),
+ element_name);
+ break;
+ case STATE_FRAME_GEOMETRY:
+ parse_geometry_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+ case STATE_DISTANCE:
+ case STATE_BORDER:
+ case STATE_ASPECT_RATIO:
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed inside a distance/border/aspect_ratio element"),
+ element_name);
+ break;
+ case STATE_DRAW_OPS:
+ parse_draw_op_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+ case STATE_LINE:
+ case STATE_RECTANGLE:
+ case STATE_ARC:
+ case STATE_CLIP:
+ case STATE_TINT:
+ case STATE_IMAGE:
+ case STATE_GTK_ARROW:
+ case STATE_GTK_BOX:
+ case STATE_GTK_VLINE:
+ case STATE_ICON:
+ case STATE_TITLE:
+ case STATE_INCLUDE:
+ case STATE_TILE:
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed inside a draw operation element"),
+ element_name);
+ break;
+ case STATE_GRADIENT:
+ parse_gradient_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+ case STATE_COLOR:
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed inside a <%s> element"),
+ element_name, "color");
+ break;
+ case STATE_FRAME_STYLE:
+ parse_style_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+ case STATE_PIECE:
+ parse_piece_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+ case STATE_BUTTON:
+ parse_button_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+#ifdef USE_UBUNTU_CODE
+ case STATE_SHADOW:
+ parse_shadow_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+ case STATE_PADDING:
+ parse_padding_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+#endif
+ case STATE_MENU_ICON:
+ parse_menu_icon_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+ case STATE_FRAME_STYLE_SET:
+ parse_style_set_element (context, element_name,
+ attribute_names, attribute_values,
+ info, error);
+ break;
+ case STATE_FRAME:
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed inside a <%s> element"),
+ element_name, "frame");
+ break;
+ case STATE_WINDOW:
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed inside a <%s> element"),
+ element_name, "window");
+ break;
+ case STATE_FALLBACK:
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Element <%s> is not allowed inside a <%s> element"),
+ element_name, "fallback");
+ break;
+ }
+}
+
+static void
+end_element_handler (GMarkupParseContext *context,
+ const gchar *element_name,
+ gpointer user_data,
+ GError **error)
+{
+ ParseInfo *info = user_data;
+
+ switch (peek_state (info))
+ {
+ case STATE_START:
+ break;
+ case STATE_THEME:
+ g_assert (info->theme);
+
+ if (!meta_theme_validate (info->theme, error))
+ {
+ add_context_to_error (error, context);
+ meta_theme_free (info->theme);
+ info->theme = NULL;
+ }
+
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_START);
+ break;
+ case STATE_INFO:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_THEME);
+ break;
+ case STATE_NAME:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_INFO);
+ break;
+ case STATE_AUTHOR:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_INFO);
+ break;
+ case STATE_COPYRIGHT:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_INFO);
+ break;
+ case STATE_DATE:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_INFO);
+ break;
+ case STATE_DESCRIPTION:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_INFO);
+ break;
+ case STATE_CONSTANT:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_THEME);
+ break;
+ case STATE_FRAME_GEOMETRY:
+ g_assert (info->layout);
+
+ if (!meta_frame_layout_validate (info->layout,
+ error))
+ {
+ add_context_to_error (error, context);
+ }
+
+ /* layout will already be stored in the theme under
+ * its name
+ */
+ meta_frame_layout_unref (info->layout);
+ info->layout = NULL;
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_THEME);
+ break;
+ case STATE_DISTANCE:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_FRAME_GEOMETRY);
+ break;
+ case STATE_BORDER:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_FRAME_GEOMETRY);
+ break;
+ case STATE_ASPECT_RATIO:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_FRAME_GEOMETRY);
+ break;
+ case STATE_DRAW_OPS:
+ {
+ g_assert (info->op_list);
+
+ if (!meta_draw_op_list_validate (info->op_list,
+ error))
+ {
+ add_context_to_error (error, context);
+ meta_draw_op_list_unref (info->op_list);
+ info->op_list = NULL;
+ }
+
+ pop_state (info);
+
+ switch (peek_state (info))
+ {
+ case STATE_BUTTON:
+ case STATE_PIECE:
+ case STATE_MENU_ICON:
+ /* Leave info->op_list to be picked up
+ * when these elements are closed
+ */
+ g_assert (info->op_list);
+ break;
+ case STATE_THEME:
+ g_assert (info->op_list);
+ meta_draw_op_list_unref (info->op_list);
+ info->op_list = NULL;
+ break;
+ default:
+ /* Op list can't occur in other contexts */
+ g_assert_not_reached ();
+ break;
+ }
+ }
+ break;
+ case STATE_LINE:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_RECTANGLE:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_ARC:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_CLIP:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_TINT:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_GRADIENT:
+ g_assert (info->op);
+ g_assert (info->op->type == META_DRAW_GRADIENT);
+ if (!meta_gradient_spec_validate (info->op->data.gradient.gradient_spec,
+ error))
+ {
+ add_context_to_error (error, context);
+ meta_draw_op_free (info->op);
+ info->op = NULL;
+ }
+ else
+ {
+ g_assert (info->op_list);
+ meta_draw_op_list_append (info->op_list, info->op);
+ info->op = NULL;
+ }
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_IMAGE:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_GTK_ARROW:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_GTK_BOX:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_GTK_VLINE:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_ICON:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_TITLE:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_INCLUDE:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_TILE:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_DRAW_OPS);
+ break;
+ case STATE_COLOR:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_GRADIENT);
+ break;
+ case STATE_FRAME_STYLE:
+ g_assert (info->style);
+
+ if (!meta_frame_style_validate (info->style,
+ info->theme->format_version,
+ error))
+ {
+ add_context_to_error (error, context);
+ }
+
+ /* Frame style is in the theme hash table and a ref
+ * is held there
+ */
+ meta_frame_style_unref (info->style);
+ info->style = NULL;
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_THEME);
+ break;
+ case STATE_PIECE:
+ g_assert (info->style);
+ if (info->op_list == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("No draw_ops provided for frame piece"));
+ }
+ else
+ {
+ info->style->pieces[info->piece] = info->op_list;
+ info->op_list = NULL;
+ }
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_FRAME_STYLE);
+ break;
+ case STATE_BUTTON:
+ g_assert (info->style);
+ if (info->op_list == NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("No draw_ops provided for button"));
+ }
+ else
+ {
+ info->style->buttons[info->button_type][info->button_state] =
+ info->op_list;
+ info->op_list = NULL;
+ }
+ pop_state (info);
+ break;
+#ifdef USE_UBUNTU_CODE
+ case STATE_SHADOW:
+ g_assert (info->style);
+ pop_state (info);
+ break;
+ case STATE_PADDING:
+ g_assert (info->style);
+ pop_state (info);
+ break;
+#endif
+ case STATE_MENU_ICON:
+ g_assert (info->theme);
+ if (info->op_list != NULL)
+ {
+ meta_draw_op_list_unref (info->op_list);
+ info->op_list = NULL;
+ }
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_THEME);
+ break;
+ case STATE_FRAME_STYLE_SET:
+ g_assert (info->style_set);
+
+ if (!meta_frame_style_set_validate (info->style_set,
+ error))
+ {
+ add_context_to_error (error, context);
+ }
+
+ /* Style set is in the theme hash table and a reference
+ * is held there.
+ */
+ meta_frame_style_set_unref (info->style_set);
+ info->style_set = NULL;
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_THEME);
+ break;
+ case STATE_FRAME:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_FRAME_STYLE_SET);
+ break;
+ case STATE_WINDOW:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_THEME);
+ break;
+ case STATE_FALLBACK:
+ pop_state (info);
+ g_assert (peek_state (info) == STATE_THEME);
+ break;
+ }
+}
+
+#define NO_TEXT(element_name) set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE, _("No text is allowed inside element <%s>"), element_name)
+
+static gboolean
+all_whitespace (const char *text,
+ int text_len)
+{
+ const char *p;
+ const char *end;
+
+ p = text;
+ end = text + text_len;
+
+ while (p != end)
+ {
+ if (!g_ascii_isspace (*p))
+ return FALSE;
+
+ p = g_utf8_next_char (p);
+ }
+
+ return TRUE;
+}
+
+static void
+text_handler (GMarkupParseContext *context,
+ const gchar *text,
+ gsize text_len,
+ gpointer user_data,
+ GError **error)
+{
+ ParseInfo *info = user_data;
+
+ if (all_whitespace (text, text_len))
+ return;
+
+ /* FIXME http://bugzilla.gnome.org/show_bug.cgi?id=70448 would
+ * allow a nice cleanup here.
+ */
+
+ switch (peek_state (info))
+ {
+ case STATE_START:
+ g_assert_not_reached (); /* gmarkup shouldn't do this */
+ break;
+ case STATE_THEME:
+ NO_TEXT ("metacity_theme");
+ break;
+ case STATE_INFO:
+ NO_TEXT ("info");
+ break;
+ case STATE_NAME:
+ if (info->theme->readable_name != NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("<%s> specified twice for this theme"),
+ "name");
+ return;
+ }
+
+ info->theme->readable_name = g_strndup (text, text_len);
+ break;
+ case STATE_AUTHOR:
+ if (info->theme->author != NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("<%s> specified twice for this theme"),
+ "author");
+ return;
+ }
+
+ info->theme->author = g_strndup (text, text_len);
+ break;
+ case STATE_COPYRIGHT:
+ if (info->theme->copyright != NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("<%s> specified twice for this theme"),
+ "copyright");
+ return;
+ }
+
+ info->theme->copyright = g_strndup (text, text_len);
+ break;
+ case STATE_DATE:
+ if (info->theme->date != NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("<%s> specified twice for this theme"),
+ "date");
+ return;
+ }
+
+ info->theme->date = g_strndup (text, text_len);
+ break;
+ case STATE_DESCRIPTION:
+ if (info->theme->description != NULL)
+ {
+ set_error (error, context, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("<%s> specified twice for this theme"),
+ "description");
+ return;
+ }
+
+ info->theme->description = g_strndup (text, text_len);
+ break;
+ case STATE_CONSTANT:
+ NO_TEXT ("constant");
+ break;
+ case STATE_FRAME_GEOMETRY:
+ NO_TEXT ("frame_geometry");
+ break;
+ case STATE_DISTANCE:
+ NO_TEXT ("distance");
+ break;
+ case STATE_BORDER:
+ NO_TEXT ("border");
+ break;
+ case STATE_ASPECT_RATIO:
+ NO_TEXT ("aspect_ratio");
+ break;
+ case STATE_DRAW_OPS:
+ NO_TEXT ("draw_ops");
+ break;
+ case STATE_LINE:
+ NO_TEXT ("line");
+ break;
+ case STATE_RECTANGLE:
+ NO_TEXT ("rectangle");
+ break;
+ case STATE_ARC:
+ NO_TEXT ("arc");
+ break;
+ case STATE_CLIP:
+ NO_TEXT ("clip");
+ break;
+ case STATE_TINT:
+ NO_TEXT ("tint");
+ break;
+ case STATE_GRADIENT:
+ NO_TEXT ("gradient");
+ break;
+ case STATE_IMAGE:
+ NO_TEXT ("image");
+ break;
+ case STATE_GTK_ARROW:
+ NO_TEXT ("gtk_arrow");
+ break;
+ case STATE_GTK_BOX:
+ NO_TEXT ("gtk_box");
+ break;
+ case STATE_GTK_VLINE:
+ NO_TEXT ("gtk_vline");
+ break;
+ case STATE_ICON:
+ NO_TEXT ("icon");
+ break;
+ case STATE_TITLE:
+ NO_TEXT ("title");
+ break;
+ case STATE_INCLUDE:
+ NO_TEXT ("include");
+ break;
+ case STATE_TILE:
+ NO_TEXT ("tile");
+ break;
+ case STATE_COLOR:
+ NO_TEXT ("color");
+ break;
+ case STATE_FRAME_STYLE:
+ NO_TEXT ("frame_style");
+ break;
+ case STATE_PIECE:
+ NO_TEXT ("piece");
+ break;
+ case STATE_BUTTON:
+ NO_TEXT ("button");
+ break;
+#ifdef USE_UBUNTU_CODE
+ case STATE_SHADOW:
+ NO_TEXT ("shadow");
+ break;
+ case STATE_PADDING:
+ NO_TEXT ("padding");
+ break;
+#endif
+ case STATE_MENU_ICON:
+ NO_TEXT ("menu_icon");
+ break;
+ case STATE_FRAME_STYLE_SET:
+ NO_TEXT ("frame_style_set");
+ break;
+ case STATE_FRAME:
+ NO_TEXT ("frame");
+ break;
+ case STATE_WINDOW:
+ NO_TEXT ("window");
+ break;
+ case STATE_FALLBACK:
+ NO_TEXT ("fallback");
+ break;
+ }
+}
+
+/* We were intending to put the version number
+ * in the subdirectory name, but we ended up
+ * using the filename instead. The "-1" survives
+ * as a fossil.
+ */
+#define THEME_SUBDIR "metacity-1"
+
+/* Highest version of the theme format to
+ * look out for.
+ */
+#define THEME_VERSION 2
+
+#define MARCO_THEME_FILENAME_FORMAT "metacity-theme-%d.xml"
+
+MetaTheme*
+meta_theme_load (const char *theme_name,
+ GError **err)
+{
+ GMarkupParseContext *context;
+ GError *error;
+ ParseInfo info;
+ char *text;
+ gsize length;
+ char *theme_file;
+ char *theme_dir;
+ MetaTheme *retval;
+ guint version;
+ const gchar* const* xdg_data_dirs;
+ int i;
+
+ text = NULL;
+ length = 0;
+ retval = NULL;
+ context = NULL;
+
+ theme_dir = NULL;
+ theme_file = NULL;
+
+ if (meta_is_debugging ())
+ {
+ gchar *theme_filename = g_strdup_printf (MARCO_THEME_FILENAME_FORMAT,
+ THEME_VERSION);
+
+ /* Try in themes in our source tree */
+ theme_dir = g_build_filename ("./themes", theme_name, NULL);
+
+ theme_file = g_build_filename (theme_dir,
+ theme_filename,
+ NULL);
+
+ error = NULL;
+ if (!g_file_get_contents (theme_file,
+ &text,
+ &length,
+ &error))
+ {
+ meta_topic (META_DEBUG_THEMES, "Failed to read theme from file %s: %s\n",
+ theme_file, error->message);
+ g_error_free (error);
+ g_free (theme_dir);
+ g_free (theme_file);
+ theme_file = NULL;
+ }
+ version = THEME_VERSION;
+
+ g_free (theme_filename);
+ }
+
+ /* We try all supported versions from current to oldest */
+ for (version = THEME_VERSION; (version > 0) && (text == NULL); version--)
+ {
+ gchar *theme_filename = g_strdup_printf (MARCO_THEME_FILENAME_FORMAT,
+ version);
+
+ /* We try first in home dir, XDG_DATA_DIRS, then system dir for themes */
+
+ /* Try home dir for themes */
+ theme_dir = g_build_filename (g_get_home_dir (),
+ ".themes",
+ theme_name,
+ THEME_SUBDIR,
+ NULL);
+
+ theme_file = g_build_filename (theme_dir,
+ theme_filename,
+ NULL);
+
+ error = NULL;
+ if (!g_file_get_contents (theme_file,
+ &text,
+ &length,
+ &error))
+ {
+ meta_topic (META_DEBUG_THEMES, "Failed to read theme from file %s: %s\n",
+ theme_file, error->message);
+ g_error_free (error);
+ g_free (theme_dir);
+ g_free (theme_file);
+ theme_file = NULL;
+ }
+
+ /* Try each XDG_DATA_DIRS for theme */
+ xdg_data_dirs = g_get_system_data_dirs();
+ for(i = 0; xdg_data_dirs[i] != NULL; i++)
+ {
+ if (text == NULL)
+ {
+ theme_dir = g_build_filename (xdg_data_dirs[i],
+ "themes",
+ theme_name,
+ THEME_SUBDIR,
+ NULL);
+
+ theme_file = g_build_filename (theme_dir,
+ theme_filename,
+ NULL);
+
+ error = NULL;
+ if (!g_file_get_contents (theme_file,
+ &text,
+ &length,
+ &error))
+ {
+ meta_topic (META_DEBUG_THEMES, "Failed to read theme from file %s: %s\n",
+ theme_file, error->message);
+ g_error_free (error);
+ g_free (theme_dir);
+ g_free (theme_file);
+ theme_file = NULL;
+ }
+ else
+ {
+ break;
+ }
+ }
+ }
+
+ /* Look for themes in MARCO_DATADIR */
+ if (text == NULL)
+ {
+ theme_dir = g_build_filename (MARCO_DATADIR,
+ "themes",
+ theme_name,
+ THEME_SUBDIR,
+ NULL);
+
+ theme_file = g_build_filename (theme_dir,
+ theme_filename,
+ NULL);
+
+ error = NULL;
+ if (!g_file_get_contents (theme_file,
+ &text,
+ &length,
+ &error))
+ {
+ meta_topic (META_DEBUG_THEMES, "Failed to read theme from file %s: %s\n",
+ theme_file, error->message);
+ g_error_free (error);
+ g_free (theme_dir);
+ g_free (theme_file);
+ theme_file = NULL;
+ }
+ }
+
+ g_free (theme_filename);
+ }
+
+ if (text == NULL)
+ {
+ g_set_error (err, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("Failed to find a valid file for theme %s\n"),
+ theme_name);
+
+ return NULL; /* all fallbacks failed */
+ }
+
+ meta_topic (META_DEBUG_THEMES, "Parsing theme file %s\n", theme_file);
+
+
+ parse_info_init (&info);
+ info.theme_name = theme_name;
+
+ /* pass ownership to info so we free it with the info */
+ info.theme_file = theme_file;
+ info.theme_dir = theme_dir;
+
+ info.format_version = version + 1;
+
+ context = g_markup_parse_context_new (&marco_theme_parser,
+ 0, &info, NULL);
+
+ error = NULL;
+ if (!g_markup_parse_context_parse (context,
+ text,
+ length,
+ &error))
+ goto out;
+
+ error = NULL;
+ if (!g_markup_parse_context_end_parse (context, &error))
+ goto out;
+
+ goto out;
+
+ out:
+
+ if (context)
+ g_markup_parse_context_free (context);
+ g_free (text);
+
+ if (info.theme)
+ info.theme->format_version = info.format_version;
+
+ if (error)
+ {
+ g_propagate_error (err, error);
+ }
+ else if (info.theme)
+ {
+ /* Steal theme from info */
+ retval = info.theme;
+ info.theme = NULL;
+ }
+ else
+ {
+ g_set_error (err, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
+ _("Theme file %s did not contain a root <metacity_theme> element"),
+ info.theme_file);
+ }
+
+ parse_info_free (&info);
+
+ return retval;
+}
diff --git a/src/ui/theme-parser.h b/src/ui/theme-parser.h
new file mode 100644
index 00000000..ff090ee9
--- /dev/null
+++ b/src/ui/theme-parser.h
@@ -0,0 +1,32 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco theme parsing */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include "theme.h"
+
+#ifndef META_THEME_PARSER_H
+#define META_THEME_PARSER_H
+
+MetaTheme* meta_theme_load (const char *theme_name,
+ GError **err);
+
+#endif
diff --git a/src/ui/theme-viewer.c b/src/ui/theme-viewer.c
new file mode 100644
index 00000000..c4a1fcd6
--- /dev/null
+++ b/src/ui/theme-viewer.c
@@ -0,0 +1,1338 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco theme viewer and test app main() */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <config.h>
+#include "util.h"
+#include "theme.h"
+#include "theme-parser.h"
+#include "preview-widget.h"
+#include <gtk/gtk.h>
+#include <time.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <libintl.h>
+#define _(x) dgettext (GETTEXT_PACKAGE, x)
+#define N_(x) x
+
+/* We need to compute all different button arrangements
+ * in terms of button location. We don't care about
+ * different arrangements in terms of button function.
+ *
+ * So if dups are allowed, from 0-4 buttons on the left, from 0-4 on
+ * the right, 5x5=25 combinations.
+ *
+ * If no dups, 0-4 on left determines the number on the right plus
+ * we have a special case for the "no buttons on either side" case.
+ */
+#ifndef ALLOW_DUPLICATE_BUTTONS
+#define BUTTON_LAYOUT_COMBINATIONS (MAX_BUTTONS_PER_CORNER + 1 + 1)
+#else
+#define BUTTON_LAYOUT_COMBINATIONS ((MAX_BUTTONS_PER_CORNER+1)*(MAX_BUTTONS_PER_CORNER+1))
+#endif
+
+enum
+{
+ FONT_SIZE_SMALL,
+ FONT_SIZE_NORMAL,
+ FONT_SIZE_LARGE,
+ FONT_SIZE_LAST
+};
+
+static MetaTheme *global_theme = NULL;
+static GtkWidget *previews[META_FRAME_TYPE_LAST*FONT_SIZE_LAST + BUTTON_LAYOUT_COMBINATIONS] = { NULL, };
+static double milliseconds_to_draw_frame = 0.0;
+
+static void run_position_expression_tests (void);
+#if 0
+static void run_position_expression_timings (void);
+#endif
+static void run_theme_benchmark (void);
+
+
+static GtkItemFactoryEntry menu_items[] =
+{
+ { N_("/_Windows"), NULL, NULL, 0, "<Branch>" },
+ { N_("/Windows/tearoff"), NULL, NULL, 0, "<Tearoff>" },
+ { N_("/Windows/_Dialog"), "<control>d", NULL, 0, NULL },
+ { N_("/Windows/_Modal dialog"), NULL, NULL, 0, NULL },
+ { N_("/Windows/_Utility"), "<control>u", NULL, 0, NULL },
+ { N_("/Windows/_Splashscreen"), "<control>s", NULL, 0, NULL },
+ { N_("/Windows/_Top dock"), NULL, NULL, 0, NULL },
+ { N_("/Windows/_Bottom dock"), NULL, NULL, 0, NULL },
+ { N_("/Windows/_Left dock"), NULL, NULL, 0, NULL },
+ { N_("/Windows/_Right dock"), NULL, NULL, 0, NULL },
+ { N_("/Windows/_All docks"), NULL, NULL, 0, NULL },
+ { N_("/Windows/Des_ktop"), NULL, NULL, 0, NULL }
+};
+
+static GtkWidget *
+normal_contents (void)
+{
+ GtkWidget *table;
+ GtkWidget *toolbar;
+ GtkWidget *handlebox;
+ GtkWidget *statusbar;
+ GtkWidget *contents;
+ GtkWidget *sw;
+ GtkItemFactory *item_factory;
+
+ table = gtk_table_new (1, 4, FALSE);
+
+ /* Create the menubar
+ */
+
+ item_factory = gtk_item_factory_new (GTK_TYPE_MENU_BAR, "<main>", NULL);
+
+ gtk_item_factory_set_translate_func(item_factory,
+ (GtkTranslateFunc)gettext, NULL, NULL);
+
+ /* Set up item factory to go away */
+ g_object_ref (item_factory);
+ g_object_ref_sink (item_factory);
+ g_object_unref (item_factory);
+ g_object_set_data_full (G_OBJECT (table),
+ "<main>",
+ item_factory,
+ (GDestroyNotify) g_object_unref);
+
+ /* create menu items */
+ gtk_item_factory_create_items (item_factory, G_N_ELEMENTS (menu_items),
+ menu_items, NULL);
+
+ gtk_table_attach (GTK_TABLE (table),
+ gtk_item_factory_get_widget (item_factory, "<main>"),
+ /* X direction */ /* Y direction */
+ 0, 1, 0, 1,
+ GTK_EXPAND | GTK_FILL, 0,
+ 0, 0);
+
+ /* Create the toolbar
+ */
+ toolbar = gtk_toolbar_new ();
+
+ GtkToolItem *newButton = gtk_tool_button_new_from_stock(GTK_STOCK_NEW);
+ gtk_tool_item_set_tooltip_text(newButton,
+ "Open another one of these windows");
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
+ newButton,
+ -1); /*-1 means append to end of toolbar*/
+
+ GtkToolItem *openButton = gtk_tool_button_new_from_stock(GTK_STOCK_OPEN);
+ gtk_tool_item_set_tooltip_text(openButton,
+ "This is a demo button with an \'open\' icon");
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
+ openButton,
+ -1); /*-1 means append to end of toolbar*/
+
+ GtkToolItem *quitButton = gtk_tool_button_new_from_stock(GTK_STOCK_QUIT);
+ gtk_tool_item_set_tooltip_text(quitButton,
+ "This is a demo button with a \'quit\' icon");
+ gtk_toolbar_insert(GTK_TOOLBAR(toolbar),
+ quitButton,
+ -1); /*-1 means append to end of toolbar*/
+
+
+ handlebox = gtk_handle_box_new ();
+
+ gtk_container_add (GTK_CONTAINER (handlebox), toolbar);
+
+ gtk_table_attach (GTK_TABLE (table),
+ handlebox,
+ /* X direction */ /* Y direction */
+ 0, 1, 1, 2,
+ GTK_EXPAND | GTK_FILL, 0,
+ 0, 0);
+
+ /* Create document
+ */
+
+ sw = gtk_scrolled_window_new (NULL, NULL);
+
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sw),
+ GTK_SHADOW_IN);
+
+ gtk_table_attach (GTK_TABLE (table),
+ sw,
+ /* X direction */ /* Y direction */
+ 0, 1, 2, 3,
+ GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL,
+ 0, 0);
+
+ contents = gtk_text_view_new ();
+ gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (contents),
+ PANGO_WRAP_WORD);
+
+ gtk_container_add (GTK_CONTAINER (sw),
+ contents);
+
+ /* Create statusbar */
+
+ statusbar = gtk_statusbar_new ();
+ gtk_table_attach (GTK_TABLE (table),
+ statusbar,
+ /* X direction */ /* Y direction */
+ 0, 1, 3, 4,
+ GTK_EXPAND | GTK_FILL, 0,
+ 0, 0);
+
+ gtk_widget_show_all (table);
+
+ return table;
+}
+
+static void
+update_spacings (GtkWidget *vbox,
+ GtkWidget *action_area)
+{
+ gtk_container_set_border_width (GTK_CONTAINER (vbox), 2);
+ gtk_box_set_spacing (GTK_BOX (action_area), 10);
+ gtk_container_set_border_width (GTK_CONTAINER (action_area), 5);
+}
+
+static GtkWidget*
+dialog_contents (void)
+{
+ GtkWidget *vbox;
+ GtkWidget *hbox;
+ GtkWidget *action_area;
+ GtkWidget *label;
+ GtkWidget *image;
+ GtkWidget *button;
+
+ vbox = gtk_vbox_new (FALSE, 0);
+
+ action_area = gtk_hbutton_box_new ();
+
+ gtk_button_box_set_layout (GTK_BUTTON_BOX (action_area),
+ GTK_BUTTONBOX_END);
+
+ button = gtk_button_new_from_stock (GTK_STOCK_OK);
+ gtk_box_pack_end (GTK_BOX (action_area),
+ button,
+ FALSE, TRUE, 0);
+
+ gtk_box_pack_end (GTK_BOX (vbox), action_area,
+ FALSE, TRUE, 0);
+
+ update_spacings (vbox, action_area);
+
+ label = gtk_label_new (_("This is a sample message in a sample dialog"));
+ image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_INFO,
+ GTK_ICON_SIZE_DIALOG);
+ gtk_misc_set_alignment (GTK_MISC (image), 0.5, 0.0);
+
+ gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
+ gtk_label_set_selectable (GTK_LABEL (label), TRUE);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ gtk_box_pack_start (GTK_BOX (hbox), image,
+ FALSE, FALSE, 0);
+
+ gtk_box_pack_start (GTK_BOX (hbox), label,
+ TRUE, TRUE, 0);
+
+ gtk_box_pack_start (GTK_BOX (vbox),
+ hbox,
+ FALSE, FALSE, 0);
+
+ gtk_widget_show_all (vbox);
+
+ return vbox;
+}
+
+static GtkWidget*
+utility_contents (void)
+{
+ GtkWidget *table;
+ GtkWidget *button;
+ int i, j;
+
+ table = gtk_table_new (3, 4, FALSE);
+
+ i = 0;
+ while (i < 3)
+ {
+ j = 0;
+ while (j < 4)
+ {
+ char *str;
+
+ str = g_strdup_printf ("_%c", (char) ('A' + 4*i + j));
+
+ button = gtk_button_new_with_mnemonic (str);
+
+ g_free (str);
+
+ gtk_table_attach (GTK_TABLE (table),
+ button,
+ /* X direction */ /* Y direction */
+ i, i+1, j, j+1,
+ GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL,
+ 0, 0);
+
+ ++j;
+ }
+
+ ++i;
+ }
+
+ gtk_widget_show_all (table);
+
+ return table;
+}
+
+static GtkWidget*
+menu_contents (void)
+{
+ GtkWidget *vbox;
+ GtkWidget *mi;
+ int i;
+ GtkWidget *frame;
+
+ frame = gtk_frame_new (NULL);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame),
+ GTK_SHADOW_OUT);
+
+ vbox = gtk_vbox_new (FALSE, 0);
+
+ i = 0;
+ while (i < 10)
+ {
+ char *str = g_strdup_printf (_("Fake menu item %d\n"), i + 1);
+ mi = gtk_label_new (str);
+ gtk_misc_set_alignment (GTK_MISC (mi), 0.0, 0.5);
+ g_free (str);
+ gtk_box_pack_start (GTK_BOX (vbox), mi, FALSE, FALSE, 0);
+
+ ++i;
+ }
+
+ gtk_container_add (GTK_CONTAINER (frame), vbox);
+
+ gtk_widget_show_all (frame);
+
+ return frame;
+}
+
+static GtkWidget*
+border_only_contents (void)
+{
+ GtkWidget *event_box;
+ GtkWidget *vbox;
+ GtkWidget *w;
+ GdkColor color;
+
+ event_box = gtk_event_box_new ();
+
+ color.red = 40000;
+ color.green = 0;
+ color.blue = 40000;
+ gtk_widget_modify_bg (event_box, GTK_STATE_NORMAL, &color);
+
+ vbox = gtk_vbox_new (FALSE, 0);
+ gtk_container_set_border_width (GTK_CONTAINER (vbox), 3);
+
+ w = gtk_label_new (_("Border-only window"));
+ gtk_box_pack_start (GTK_BOX (vbox), w, FALSE, FALSE, 0);
+ w = gtk_button_new_with_label (_("Bar"));
+ gtk_box_pack_start (GTK_BOX (vbox), w, FALSE, FALSE, 0);
+
+ gtk_container_add (GTK_CONTAINER (event_box), vbox);
+
+ gtk_widget_show_all (event_box);
+
+ return event_box;
+}
+
+static GtkWidget*
+get_window_contents (MetaFrameType type,
+ const char **title)
+{
+ switch (type)
+ {
+ case META_FRAME_TYPE_NORMAL:
+ *title = _("Normal Application Window");
+ return normal_contents ();
+
+ case META_FRAME_TYPE_DIALOG:
+ *title = _("Dialog Box");
+ return dialog_contents ();
+
+ case META_FRAME_TYPE_MODAL_DIALOG:
+ *title = _("Modal Dialog Box");
+ return dialog_contents ();
+
+ case META_FRAME_TYPE_UTILITY:
+ *title = _("Utility Palette");
+ return utility_contents ();
+
+ case META_FRAME_TYPE_MENU:
+ *title = _("Torn-off Menu");
+ return menu_contents ();
+
+ case META_FRAME_TYPE_BORDER:
+ *title = _("Border");
+ return border_only_contents ();
+
+ case META_FRAME_TYPE_LAST:
+ g_assert_not_reached ();
+ break;
+ }
+
+ return NULL;
+}
+
+static MetaFrameFlags
+get_window_flags (MetaFrameType type)
+{
+ MetaFrameFlags flags;
+
+ flags = META_FRAME_ALLOWS_DELETE |
+ META_FRAME_ALLOWS_MENU |
+ META_FRAME_ALLOWS_MINIMIZE |
+ META_FRAME_ALLOWS_MAXIMIZE |
+ META_FRAME_ALLOWS_VERTICAL_RESIZE |
+ META_FRAME_ALLOWS_HORIZONTAL_RESIZE |
+ META_FRAME_HAS_FOCUS |
+ META_FRAME_ALLOWS_SHADE |
+ META_FRAME_ALLOWS_MOVE;
+
+ switch (type)
+ {
+ case META_FRAME_TYPE_NORMAL:
+ break;
+
+ case META_FRAME_TYPE_DIALOG:
+ case META_FRAME_TYPE_MODAL_DIALOG:
+ flags &= ~(META_FRAME_ALLOWS_MINIMIZE |
+ META_FRAME_ALLOWS_MAXIMIZE);
+ break;
+
+ case META_FRAME_TYPE_UTILITY:
+ flags &= ~(META_FRAME_ALLOWS_MINIMIZE |
+ META_FRAME_ALLOWS_MAXIMIZE);
+ break;
+
+ case META_FRAME_TYPE_MENU:
+ flags &= ~(META_FRAME_ALLOWS_MINIMIZE |
+ META_FRAME_ALLOWS_MAXIMIZE);
+ break;
+
+ case META_FRAME_TYPE_BORDER:
+ break;
+
+ case META_FRAME_TYPE_LAST:
+ g_assert_not_reached ();
+ break;
+ }
+
+ return flags;
+}
+
+static GtkWidget*
+preview_collection (int font_size,
+ PangoFontDescription *base_desc)
+{
+ GtkWidget *box;
+ GtkWidget *sw;
+ GdkColor desktop_color;
+ int i;
+ GtkWidget *eventbox;
+
+ sw = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ box = gtk_vbox_new (FALSE, 0);
+ gtk_box_set_spacing (GTK_BOX (box), 20);
+ gtk_container_set_border_width (GTK_CONTAINER (box), 20);
+
+ eventbox = gtk_event_box_new ();
+ gtk_container_add (GTK_CONTAINER (eventbox), box);
+
+ gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (sw), eventbox);
+
+ desktop_color.red = 0x5144;
+ desktop_color.green = 0x75D6;
+ desktop_color.blue = 0xA699;
+
+ gtk_widget_modify_bg (eventbox, GTK_STATE_NORMAL, &desktop_color);
+
+ i = 0;
+ while (i < META_FRAME_TYPE_LAST)
+ {
+ const char *title = NULL;
+ GtkWidget *contents;
+ GtkWidget *align;
+ double xalign, yalign;
+ GtkWidget *eventbox2;
+ GtkWidget *preview;
+ PangoFontDescription *font_desc;
+ double scale;
+
+ eventbox2 = gtk_event_box_new ();
+
+ preview = meta_preview_new ();
+
+ gtk_container_add (GTK_CONTAINER (eventbox2), preview);
+
+ meta_preview_set_frame_type (META_PREVIEW (preview), i);
+ meta_preview_set_frame_flags (META_PREVIEW (preview),
+ get_window_flags (i));
+
+ meta_preview_set_theme (META_PREVIEW (preview), global_theme);
+
+ contents = get_window_contents (i, &title);
+
+ meta_preview_set_title (META_PREVIEW (preview), title);
+
+ gtk_container_add (GTK_CONTAINER (preview), contents);
+
+ if (i == META_FRAME_TYPE_MENU)
+ {
+ xalign = 0.0;
+ yalign = 0.0;
+ }
+ else
+ {
+ xalign = 0.5;
+ yalign = 0.5;
+ }
+
+ align = gtk_alignment_new (0.0, 0.0, xalign, yalign);
+ gtk_container_add (GTK_CONTAINER (align), eventbox2);
+
+ gtk_box_pack_start (GTK_BOX (box), align, TRUE, TRUE, 0);
+
+ switch (font_size)
+ {
+ case FONT_SIZE_SMALL:
+ scale = PANGO_SCALE_XX_SMALL;
+ break;
+ case FONT_SIZE_LARGE:
+ scale = PANGO_SCALE_XX_LARGE;
+ break;
+ default:
+ scale = 1.0;
+ break;
+ }
+
+ if (scale != 1.0)
+ {
+ font_desc = pango_font_description_new ();
+
+ pango_font_description_set_size (font_desc,
+ MAX (pango_font_description_get_size (base_desc) * scale, 1));
+
+ gtk_widget_modify_font (preview, font_desc);
+
+ pango_font_description_free (font_desc);
+ }
+
+ previews[font_size*META_FRAME_TYPE_LAST + i] = preview;
+
+ ++i;
+ }
+
+ return sw;
+}
+
+static MetaButtonLayout different_layouts[BUTTON_LAYOUT_COMBINATIONS];
+
+static void
+init_layouts (void)
+{
+ int i;
+
+ /* Blank out all the layouts */
+ i = 0;
+ while (i < (int) G_N_ELEMENTS (different_layouts))
+ {
+ int j;
+
+ j = 0;
+ while (j < MAX_BUTTONS_PER_CORNER)
+ {
+ different_layouts[i].left_buttons[j] = META_BUTTON_FUNCTION_LAST;
+ different_layouts[i].right_buttons[j] = META_BUTTON_FUNCTION_LAST;
+ ++j;
+ }
+ ++i;
+ }
+
+#ifndef ALLOW_DUPLICATE_BUTTONS
+ i = 0;
+ while (i <= MAX_BUTTONS_PER_CORNER)
+ {
+ int j;
+
+ j = 0;
+ while (j < i)
+ {
+ different_layouts[i].right_buttons[j] = (MetaButtonFunction) j;
+ ++j;
+ }
+ while (j < MAX_BUTTONS_PER_CORNER)
+ {
+ different_layouts[i].left_buttons[j-i] = (MetaButtonFunction) j;
+ ++j;
+ }
+
+ ++i;
+ }
+
+ /* Special extra case for no buttons on either side */
+ different_layouts[i].left_buttons[0] = META_BUTTON_FUNCTION_LAST;
+ different_layouts[i].right_buttons[0] = META_BUTTON_FUNCTION_LAST;
+
+#else
+ /* FIXME this code is if we allow duplicate buttons,
+ * which we currently do not
+ */
+ int left;
+ int i;
+
+ left = 0;
+ i = 0;
+
+ while (left < MAX_BUTTONS_PER_CORNER)
+ {
+ int right;
+
+ right = 0;
+
+ while (right < MAX_BUTTONS_PER_CORNER)
+ {
+ int j;
+
+ static MetaButtonFunction left_functions[MAX_BUTTONS_PER_CORNER] = {
+ META_BUTTON_FUNCTION_MENU,
+ META_BUTTON_FUNCTION_MINIMIZE,
+ META_BUTTON_FUNCTION_MAXIMIZE,
+ META_BUTTON_FUNCTION_CLOSE
+ };
+ static MetaButtonFunction right_functions[MAX_BUTTONS_PER_CORNER] = {
+ META_BUTTON_FUNCTION_MINIMIZE,
+ META_BUTTON_FUNCTION_MAXIMIZE,
+ META_BUTTON_FUNCTION_CLOSE,
+ META_BUTTON_FUNCTION_MENU
+ };
+
+ g_assert (i < BUTTON_LAYOUT_COMBINATIONS);
+
+ j = 0;
+ while (j <= left)
+ {
+ different_layouts[i].left_buttons[j] = left_functions[j];
+ ++j;
+ }
+
+ j = 0;
+ while (j <= right)
+ {
+ different_layouts[i].right_buttons[j] = right_functions[j];
+ ++j;
+ }
+
+ ++i;
+
+ ++right;
+ }
+
+ ++left;
+ }
+#endif
+}
+
+
+static GtkWidget*
+previews_of_button_layouts (void)
+{
+ static gboolean initted = FALSE;
+ GtkWidget *box;
+ GtkWidget *sw;
+ GdkColor desktop_color;
+ int i;
+ GtkWidget *eventbox;
+
+ if (!initted)
+ {
+ init_layouts ();
+ initted = TRUE;
+ }
+
+ sw = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ box = gtk_vbox_new (FALSE, 0);
+ gtk_box_set_spacing (GTK_BOX (box), 20);
+ gtk_container_set_border_width (GTK_CONTAINER (box), 20);
+
+ eventbox = gtk_event_box_new ();
+ gtk_container_add (GTK_CONTAINER (eventbox), box);
+
+ gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (sw), eventbox);
+
+ desktop_color.red = 0x5144;
+ desktop_color.green = 0x75D6;
+ desktop_color.blue = 0xA699;
+
+ gtk_widget_modify_bg (eventbox, GTK_STATE_NORMAL, &desktop_color);
+
+ i = 0;
+ while (i < BUTTON_LAYOUT_COMBINATIONS)
+ {
+ GtkWidget *align;
+ double xalign, yalign;
+ GtkWidget *eventbox2;
+ GtkWidget *preview;
+ char *title;
+
+ eventbox2 = gtk_event_box_new ();
+
+ preview = meta_preview_new ();
+
+ gtk_container_add (GTK_CONTAINER (eventbox2), preview);
+
+ meta_preview_set_theme (META_PREVIEW (preview), global_theme);
+
+ title = g_strdup_printf (_("Button layout test %d"), i+1);
+ meta_preview_set_title (META_PREVIEW (preview), title);
+ g_free (title);
+
+ meta_preview_set_button_layout (META_PREVIEW (preview),
+ &different_layouts[i]);
+
+ xalign = 0.5;
+ yalign = 0.5;
+
+ align = gtk_alignment_new (0.0, 0.0, xalign, yalign);
+ gtk_container_add (GTK_CONTAINER (align), eventbox2);
+
+ gtk_box_pack_start (GTK_BOX (box), align, TRUE, TRUE, 0);
+
+ previews[META_FRAME_TYPE_LAST*FONT_SIZE_LAST + i] = preview;
+
+ ++i;
+ }
+
+ return sw;
+}
+
+static GtkWidget*
+benchmark_summary (void)
+{
+ char *msg;
+ GtkWidget *label;
+
+ msg = g_strdup_printf (_("%g milliseconds to draw one window frame"),
+ milliseconds_to_draw_frame);
+ label = gtk_label_new (msg);
+ g_free (msg);
+
+ return label;
+}
+
+int
+main (int argc, char **argv)
+{
+ GtkWidget *window;
+ GtkWidget *collection;
+ GError *err;
+ clock_t start, end;
+ GtkWidget *notebook;
+ int i;
+
+ bindtextdomain (GETTEXT_PACKAGE, MARCO_LOCALEDIR);
+ textdomain(GETTEXT_PACKAGE);
+ bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8");
+
+ run_position_expression_tests ();
+#if 0
+ run_position_expression_timings ();
+#endif
+
+ gtk_init (&argc, &argv);
+
+ if (g_getenv ("MARCO_DEBUG") != NULL)
+ {
+ meta_set_debugging (TRUE);
+ meta_set_verbose (TRUE);
+ }
+
+ start = clock ();
+ err = NULL;
+ if (argc == 1)
+ global_theme = meta_theme_load ("ClearlooksRe", &err);
+ else if (argc == 2)
+ global_theme = meta_theme_load (argv[1], &err);
+ else
+ {
+ g_printerr (_("Usage: marco-theme-viewer [THEMENAME]\n"));
+ exit (1);
+ }
+ end = clock ();
+
+ if (global_theme == NULL)
+ {
+ g_printerr (_("Error loading theme: %s\n"),
+ err->message);
+ g_error_free (err);
+ exit (1);
+ }
+
+ g_print (_("Loaded theme \"%s\" in %g seconds\n"),
+ global_theme->name,
+ (end - start) / (double) CLOCKS_PER_SEC);
+
+ run_theme_benchmark ();
+
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_default_size (GTK_WINDOW (window), 350, 350);
+
+ if (strcmp (global_theme->name, global_theme->readable_name)==0)
+ gtk_window_set_title (GTK_WINDOW (window),
+ global_theme->readable_name);
+ else
+ {
+ /* The theme directory name is different from the name the theme
+ * gives itself within its file. Display both, directory name first.
+ */
+ gchar *title = g_strconcat (global_theme->name, " - ",
+ global_theme->readable_name,
+ NULL);
+
+ gtk_window_set_title (GTK_WINDOW (window),
+ title);
+
+ g_free (title);
+ }
+
+ g_signal_connect (G_OBJECT (window), "destroy",
+ G_CALLBACK (gtk_main_quit), NULL);
+
+ gtk_widget_realize (window);
+ g_assert (window->style);
+ g_assert (window->style->font_desc);
+
+ notebook = gtk_notebook_new ();
+ gtk_container_add (GTK_CONTAINER (window), notebook);
+
+ collection = preview_collection (FONT_SIZE_NORMAL,
+ window->style->font_desc);
+ gtk_notebook_append_page (GTK_NOTEBOOK (notebook),
+ collection,
+ gtk_label_new (_("Normal Title Font")));
+
+ collection = preview_collection (FONT_SIZE_SMALL,
+ window->style->font_desc);
+ gtk_notebook_append_page (GTK_NOTEBOOK (notebook),
+ collection,
+ gtk_label_new (_("Small Title Font")));
+
+ collection = preview_collection (FONT_SIZE_LARGE,
+ window->style->font_desc);
+ gtk_notebook_append_page (GTK_NOTEBOOK (notebook),
+ collection,
+ gtk_label_new (_("Large Title Font")));
+
+ collection = previews_of_button_layouts ();
+ gtk_notebook_append_page (GTK_NOTEBOOK (notebook),
+ collection,
+ gtk_label_new (_("Button Layouts")));
+
+ collection = benchmark_summary ();
+ gtk_notebook_append_page (GTK_NOTEBOOK (notebook),
+ collection,
+ gtk_label_new (_("Benchmark")));
+
+ i = 0;
+ while (i < (int) G_N_ELEMENTS (previews))
+ {
+ /* preview widget likes to be realized before its size request.
+ * it's lame that way.
+ */
+ gtk_widget_realize (previews[i]);
+
+ ++i;
+ }
+
+ gtk_widget_show_all (window);
+
+ gtk_main ();
+
+ return 0;
+}
+
+
+static MetaFrameFlags
+get_flags (GtkWidget *widget)
+{
+ return META_FRAME_ALLOWS_DELETE |
+ META_FRAME_ALLOWS_MENU |
+ META_FRAME_ALLOWS_MINIMIZE |
+ META_FRAME_ALLOWS_MAXIMIZE |
+ META_FRAME_ALLOWS_VERTICAL_RESIZE |
+ META_FRAME_ALLOWS_HORIZONTAL_RESIZE |
+ META_FRAME_HAS_FOCUS |
+ META_FRAME_ALLOWS_SHADE |
+ META_FRAME_ALLOWS_MOVE;
+}
+
+static int
+get_text_height (GtkWidget *widget)
+{
+ return meta_pango_font_desc_get_text_height (widget->style->font_desc,
+ gtk_widget_get_pango_context (widget));
+}
+
+static PangoLayout*
+create_title_layout (GtkWidget *widget)
+{
+ PangoLayout *layout;
+
+ layout = gtk_widget_create_pango_layout (widget, _("Window Title Goes Here"));
+
+ return layout;
+}
+
+static void
+run_theme_benchmark (void)
+{
+ GtkWidget* widget;
+ GdkPixmap *pixmap;
+ int top_height, bottom_height, left_width, right_width;
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST] =
+ {
+ META_BUTTON_STATE_NORMAL,
+ META_BUTTON_STATE_NORMAL,
+ META_BUTTON_STATE_NORMAL,
+ META_BUTTON_STATE_NORMAL
+ };
+ PangoLayout *layout;
+ clock_t start;
+ clock_t end;
+ GTimer *timer;
+ int i;
+ MetaButtonLayout button_layout;
+#define ITERATIONS 100
+ int client_width;
+ int client_height;
+ int inc;
+
+ widget = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ gtk_widget_realize (widget);
+
+ meta_theme_get_frame_borders (global_theme,
+ META_FRAME_TYPE_NORMAL,
+ get_text_height (widget),
+ get_flags (widget),
+ &top_height,
+ &bottom_height,
+ &left_width,
+ &right_width);
+
+ layout = create_title_layout (widget);
+
+ i = 0;
+ while (i < MAX_BUTTONS_PER_CORNER)
+ {
+ button_layout.left_buttons[i] = META_BUTTON_FUNCTION_LAST;
+ button_layout.right_buttons[i] = META_BUTTON_FUNCTION_LAST;
+ ++i;
+ }
+
+ button_layout.left_buttons[0] = META_BUTTON_FUNCTION_MENU;
+
+ button_layout.right_buttons[0] = META_BUTTON_FUNCTION_MINIMIZE;
+ button_layout.right_buttons[1] = META_BUTTON_FUNCTION_MAXIMIZE;
+ button_layout.right_buttons[2] = META_BUTTON_FUNCTION_CLOSE;
+
+ timer = g_timer_new ();
+ start = clock ();
+
+ client_width = 50;
+ client_height = 50;
+ inc = 1000 / ITERATIONS; /* Increment to grow width/height,
+ * eliminates caching effects.
+ */
+
+ i = 0;
+ while (i < ITERATIONS)
+ {
+ /* Creating the pixmap in the loop is right, since
+ * GDK does the same with its double buffering.
+ */
+ pixmap = gdk_pixmap_new (widget->window,
+ client_width + left_width + right_width,
+ client_height + top_height + bottom_height,
+ -1);
+
+ meta_theme_draw_frame (global_theme,
+ widget,
+ pixmap,
+ NULL,
+ 0, 0,
+ META_FRAME_TYPE_NORMAL,
+ get_flags (widget),
+ client_width, client_height,
+ layout,
+ get_text_height (widget),
+ &button_layout,
+ button_states,
+ meta_preview_get_mini_icon (),
+ meta_preview_get_icon ());
+
+ g_object_unref (G_OBJECT (pixmap));
+
+ ++i;
+ client_width += inc;
+ client_height += inc;
+ }
+
+ end = clock ();
+ g_timer_stop (timer);
+
+ milliseconds_to_draw_frame = (g_timer_elapsed (timer, NULL) / (double) ITERATIONS) * 1000;
+
+ g_print (_("Drew %d frames in %g client-side seconds (%g milliseconds per frame) and %g seconds wall clock time including X server resources (%g milliseconds per frame)\n"),
+ ITERATIONS,
+ ((double)end - (double)start) / CLOCKS_PER_SEC,
+ (((double)end - (double)start) / CLOCKS_PER_SEC / (double) ITERATIONS) * 1000,
+ g_timer_elapsed (timer, NULL),
+ milliseconds_to_draw_frame);
+
+ g_timer_destroy (timer);
+ g_object_unref (G_OBJECT (layout));
+ gtk_widget_destroy (widget);
+
+#undef ITERATIONS
+}
+
+typedef struct
+{
+ GdkRectangle rect;
+ const char *expr;
+ int expected_x;
+ int expected_y;
+ MetaThemeError expected_error;
+} PositionExpressionTest;
+
+#define NO_ERROR -1
+
+static const PositionExpressionTest position_expression_tests[] = {
+ /* Just numbers */
+ { { 10, 20, 40, 50 },
+ "10", 20, 30, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "14.37", 24, 34, NO_ERROR },
+ /* Binary expressions with 2 ints */
+ { { 10, 20, 40, 50 },
+ "14 * 10", 150, 160, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "14 + 10", 34, 44, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "14 - 10", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "8 / 2", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "8 % 3", 12, 22, NO_ERROR },
+ /* Binary expressions with floats and mixed float/ints */
+ { { 10, 20, 40, 50 },
+ "7.0 / 3.5", 12, 22, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "12.1 / 3", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "12 / 2.95", 14, 24, NO_ERROR },
+ /* Binary expressions without whitespace after first number */
+ { { 10, 20, 40, 50 },
+ "14* 10", 150, 160, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "14+ 10", 34, 44, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "14- 10", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "8/ 2", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "7.0/ 3.5", 12, 22, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "12.1/ 3", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "12/ 2.95", 14, 24, NO_ERROR },
+ /* Binary expressions without whitespace before second number */
+ { { 10, 20, 40, 50 },
+ "14 *10", 150, 160, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "14 +10", 34, 44, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "14 -10", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "8 /2", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "7.0 /3.5", 12, 22, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "12.1 /3", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "12 /2.95", 14, 24, NO_ERROR },
+ /* Binary expressions without any whitespace */
+ { { 10, 20, 40, 50 },
+ "14*10", 150, 160, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "14+10", 34, 44, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "14-10", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "8/2", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "7.0/3.5", 12, 22, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "12.1/3", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "12/2.95", 14, 24, NO_ERROR },
+ /* Binary expressions with parentheses */
+ { { 10, 20, 40, 50 },
+ "(14) * (10)", 150, 160, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "(14) + (10)", 34, 44, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "(14) - (10)", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "(8) / (2)", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "(7.0) / (3.5)", 12, 22, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "(12.1) / (3)", 14, 24, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "(12) / (2.95)", 14, 24, NO_ERROR },
+ /* Lots of extra parentheses */
+ { { 10, 20, 40, 50 },
+ "(((14)) * ((10)))", 150, 160, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "((((14)))) + ((((((((10))))))))", 34, 44, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "((((((((((14 - 10))))))))))", 14, 24, NO_ERROR },
+ /* Binary expressions with variables */
+ { { 10, 20, 40, 50 },
+ "2 * width", 90, 100, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "2 * height", 110, 120, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "width - 10", 40, 50, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "height / 2", 35, 45, NO_ERROR },
+ /* More than two operands */
+ { { 10, 20, 40, 50 },
+ "8 / 2 + 5", 19, 29, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "8 * 2 + 5", 31, 41, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "8 + 2 * 5", 28, 38, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "8 + 8 / 2", 22, 32, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "14 / (2 + 5)", 12, 22, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "8 * (2 + 5)", 66, 76, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "(8 + 2) * 5", 60, 70, NO_ERROR },
+ { { 10, 20, 40, 50 },
+ "(8 + 8) / 2", 18, 28, NO_ERROR },
+ /* Errors */
+ { { 10, 20, 40, 50 },
+ "2 * foo", 0, 0, META_THEME_ERROR_UNKNOWN_VARIABLE },
+ { { 10, 20, 40, 50 },
+ "2 *", 0, 0, META_THEME_ERROR_FAILED },
+ { { 10, 20, 40, 50 },
+ "- width", 0, 0, META_THEME_ERROR_FAILED },
+ { { 10, 20, 40, 50 },
+ "5 % 1.0", 0, 0, META_THEME_ERROR_MOD_ON_FLOAT },
+ { { 10, 20, 40, 50 },
+ "1.0 % 5", 0, 0, META_THEME_ERROR_MOD_ON_FLOAT },
+ { { 10, 20, 40, 50 },
+ "! * 2", 0, 0, META_THEME_ERROR_BAD_CHARACTER },
+ { { 10, 20, 40, 50 },
+ " ", 0, 0, META_THEME_ERROR_FAILED },
+ { { 10, 20, 40, 50 },
+ "() () (( ) ()) ((()))", 0, 0, META_THEME_ERROR_FAILED },
+ { { 10, 20, 40, 50 },
+ "(*) () ((/) ()) ((()))", 0, 0, META_THEME_ERROR_FAILED },
+ { { 10, 20, 40, 50 },
+ "2 * 5 /", 0, 0, META_THEME_ERROR_FAILED },
+ { { 10, 20, 40, 50 },
+ "+ 2 * 5", 0, 0, META_THEME_ERROR_FAILED },
+ { { 10, 20, 40, 50 },
+ "+ 2 * 5", 0, 0, META_THEME_ERROR_FAILED }
+};
+
+static void
+run_position_expression_tests (void)
+{
+#if 0
+ int i;
+ MetaPositionExprEnv env;
+
+ i = 0;
+ while (i < (int) G_N_ELEMENTS (position_expression_tests))
+ {
+ GError *err;
+ gboolean retval;
+ const PositionExpressionTest *test;
+ PosToken *tokens;
+ int n_tokens;
+ int x, y;
+
+ test = &position_expression_tests[i];
+
+ if (g_getenv ("META_PRINT_TESTS") != NULL)
+ g_print ("Test expression: \"%s\" expecting x = %d y = %d",
+ test->expr, test->expected_x, test->expected_y);
+
+ err = NULL;
+
+ env.rect = meta_rect (test->rect.x, test->rect.y,
+ test->rect.width, test->rect.height);
+ env.object_width = -1;
+ env.object_height = -1;
+ env.left_width = 0;
+ env.right_width = 0;
+ env.top_height = 0;
+ env.bottom_height = 0;
+ env.title_width = 5;
+ env.title_height = 5;
+ env.icon_width = 32;
+ env.icon_height = 32;
+ env.mini_icon_width = 16;
+ env.mini_icon_height = 16;
+ env.theme = NULL;
+
+ if (err == NULL)
+ {
+ retval = meta_parse_position_expression (tokens, n_tokens,
+ &env,
+ &x, &y,
+ &err);
+ }
+
+ if (retval && err)
+ g_error (_("position expression test returned TRUE but set error"));
+ if (!retval && err == NULL)
+ g_error (_("position expression test returned FALSE but didn't set error"));
+ if (((int) test->expected_error) != NO_ERROR)
+ {
+ if (err == NULL)
+ g_error (_("Error was expected but none given"));
+ if (err->code != (int) test->expected_error)
+ g_error (_("Error %d was expected but %d given"),
+ test->expected_error, err->code);
+ }
+ else
+ {
+ if (err)
+ g_error (_("Error not expected but one was returned: %s"),
+ err->message);
+
+ if (x != test->expected_x)
+ g_error (_("x value was %d, %d was expected"), x, test->expected_x);
+
+ if (y != test->expected_y)
+ g_error (_("y value was %d, %d was expected"), y, test->expected_y);
+ }
+
+ if (err)
+ g_error_free (err);
+
+ meta_pos_tokens_free (tokens, n_tokens);
+ ++i;
+ }
+#endif
+}
+
+#if 0
+static void
+run_position_expression_timings (void)
+{
+ int i;
+ int iters;
+ clock_t start;
+ clock_t end;
+ MetaPositionExprEnv env;
+
+#define ITERATIONS 100000
+
+ start = clock ();
+
+ iters = 0;
+ i = 0;
+ while (iters < ITERATIONS)
+ {
+ const PositionExpressionTest *test;
+ int x, y;
+
+ test = &position_expression_tests[i];
+
+ env.x = test->rect.x;
+ env.y = test->rect.y;
+ env.width = test->rect.width;
+ env.height = test->rect.height;
+ env.object_width = -1;
+ env.object_height = -1;
+ env.left_width = 0;
+ env.right_width = 0;
+ env.top_height = 0;
+ env.bottom_height = 0;
+ env.title_width = 5;
+ env.title_height = 5;
+ env.icon_width = 32;
+ env.icon_height = 32;
+ env.mini_icon_width = 16;
+ env.mini_icon_height = 16;
+ env.theme = NULL;
+
+ meta_parse_position_expression (test->expr,
+ &env,
+ &x, &y, NULL);
+
+ ++iters;
+ ++i;
+ if (i == G_N_ELEMENTS (position_expression_tests))
+ i = 0;
+ }
+
+ end = clock ();
+
+ g_print (_("%d coordinate expressions parsed in %g seconds (%g seconds average)\n"),
+ ITERATIONS,
+ ((double)end - (double)start) / CLOCKS_PER_SEC,
+ ((double)end - (double)start) / CLOCKS_PER_SEC / (double) ITERATIONS);
+
+}
+#endif
diff --git a/src/ui/theme.c b/src/ui/theme.c
new file mode 100644
index 00000000..63103960
--- /dev/null
+++ b/src/ui/theme.c
@@ -0,0 +1,6652 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco Theme Rendering */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+/**
+ * \file theme.c Making Marco look pretty
+ *
+ * The window decorations drawn by Marco are described by files on disk
+ * known internally as "themes" (externally as "window border themes" on
+ * http://art.gnome.org/themes/marco/ or "Marco themes"). This file
+ * contains most of the code necessary to support themes; it does not
+ * contain the XML parser, which is in theme-parser.c.
+ *
+ * \bug This is a big file with lots of different subsystems, which might
+ * be better split out into separate files.
+ */
+
+/**
+ * \defgroup tokenizer The theme expression tokenizer
+ *
+ * Themes can use a simple expression language to represent the values of
+ * things. This is the tokeniser used for that language.
+ *
+ * \bug We could remove almost all this code by using GScanner instead,
+ * but we would also have to find every expression in every existing theme
+ * we could and make sure the parse trees were the same.
+ */
+
+/**
+ * \defgroup parser The theme expression parser
+ *
+ * Themes can use a simple expression language to represent the values of
+ * things. This is the parser used for that language.
+ */
+
+#include <config.h>
+#include "theme.h"
+#include "theme-parser.h"
+#include "util.h"
+#include "gradient.h"
+#include <gtk/gtk.h>
+#include <string.h>
+#include <stdlib.h>
+#define __USE_XOPEN
+#include <math.h>
+
+#define GDK_COLOR_RGBA(color) \
+ ((guint32) (0xff | \
+ (((color).red / 256) << 24) | \
+ (((color).green / 256) << 16) | \
+ (((color).blue / 256) << 8)))
+
+#define GDK_COLOR_RGB(color) \
+ ((guint32) ((((color).red / 256) << 16) | \
+ (((color).green / 256) << 8) | \
+ (((color).blue / 256))))
+
+#define ALPHA_TO_UCHAR(d) ((unsigned char) ((d) * 255))
+
+#define DEBUG_FILL_STRUCT(s) memset ((s), 0xef, sizeof (*(s)))
+#define CLAMP_UCHAR(v) ((guchar) (CLAMP (((int)v), (int)0, (int)255)))
+#define INTENSITY(r, g, b) ((r) * 0.30 + (g) * 0.59 + (b) * 0.11)
+
+static void gtk_style_shade (GdkColor *a,
+ GdkColor *b,
+ gdouble k);
+static void rgb_to_hls (gdouble *r,
+ gdouble *g,
+ gdouble *b);
+static void hls_to_rgb (gdouble *h,
+ gdouble *l,
+ gdouble *s);
+
+/**
+ * The current theme. (Themes are singleton.)
+ */
+static MetaTheme *meta_current_theme = NULL;
+
+static GdkPixbuf *
+colorize_pixbuf (GdkPixbuf *orig,
+ GdkColor *new_color)
+{
+ GdkPixbuf *pixbuf;
+ double intensity;
+ int x, y;
+ const guchar *src;
+ guchar *dest;
+ int orig_rowstride;
+ int dest_rowstride;
+ int width, height;
+ gboolean has_alpha;
+ const guchar *src_pixels;
+ guchar *dest_pixels;
+
+ pixbuf = gdk_pixbuf_new (gdk_pixbuf_get_colorspace (orig), gdk_pixbuf_get_has_alpha (orig),
+ gdk_pixbuf_get_bits_per_sample (orig),
+ gdk_pixbuf_get_width (orig), gdk_pixbuf_get_height (orig));
+
+ if (pixbuf == NULL)
+ return NULL;
+
+ orig_rowstride = gdk_pixbuf_get_rowstride (orig);
+ dest_rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+ width = gdk_pixbuf_get_width (pixbuf);
+ height = gdk_pixbuf_get_height (pixbuf);
+ has_alpha = gdk_pixbuf_get_has_alpha (orig);
+ src_pixels = gdk_pixbuf_get_pixels (orig);
+ dest_pixels = gdk_pixbuf_get_pixels (pixbuf);
+
+ for (y = 0; y < height; y++)
+ {
+ src = src_pixels + y * orig_rowstride;
+ dest = dest_pixels + y * dest_rowstride;
+
+ for (x = 0; x < width; x++)
+ {
+ double dr, dg, db;
+
+ intensity = INTENSITY (src[0], src[1], src[2]) / 255.0;
+
+ if (intensity <= 0.5)
+ {
+ /* Go from black at intensity = 0.0 to new_color at intensity = 0.5 */
+ dr = (new_color->red * intensity * 2.0) / 65535.0;
+ dg = (new_color->green * intensity * 2.0) / 65535.0;
+ db = (new_color->blue * intensity * 2.0) / 65535.0;
+ }
+ else
+ {
+ /* Go from new_color at intensity = 0.5 to white at intensity = 1.0 */
+ dr = (new_color->red + (65535 - new_color->red) * (intensity - 0.5) * 2.0) / 65535.0;
+ dg = (new_color->green + (65535 - new_color->green) * (intensity - 0.5) * 2.0) / 65535.0;
+ db = (new_color->blue + (65535 - new_color->blue) * (intensity - 0.5) * 2.0) / 65535.0;
+ }
+
+ dest[0] = CLAMP_UCHAR (255 * dr);
+ dest[1] = CLAMP_UCHAR (255 * dg);
+ dest[2] = CLAMP_UCHAR (255 * db);
+
+ if (has_alpha)
+ {
+ dest[3] = src[3];
+ src += 4;
+ dest += 4;
+ }
+ else
+ {
+ src += 3;
+ dest += 3;
+ }
+ }
+ }
+
+ return pixbuf;
+}
+
+static void
+color_composite (const GdkColor *bg,
+ const GdkColor *fg,
+ double alpha_d,
+ GdkColor *color)
+{
+ guint16 alpha;
+
+ *color = *bg;
+ alpha = alpha_d * 0xffff;
+ color->red = color->red + (((fg->red - color->red) * alpha + 0x8000) >> 16);
+ color->green = color->green + (((fg->green - color->green) * alpha + 0x8000) >> 16);
+ color->blue = color->blue + (((fg->blue - color->blue) * alpha + 0x8000) >> 16);
+}
+
+/**
+ * Sets all the fields of a border to dummy values.
+ *
+ * \param border The border whose fields should be reset.
+ */
+static void
+init_border (GtkBorder *border)
+{
+ border->top = -1;
+ border->bottom = -1;
+ border->left = -1;
+ border->right = -1;
+}
+
+/**
+ * Creates a new, empty MetaFrameLayout. The fields will be set to dummy
+ * values.
+ *
+ * \return The newly created MetaFrameLayout.
+ */
+MetaFrameLayout*
+meta_frame_layout_new (void)
+{
+ MetaFrameLayout *layout;
+
+ layout = g_new0 (MetaFrameLayout, 1);
+
+ layout->refcount = 1;
+
+ /* Fill with -1 values to detect invalid themes */
+ layout->left_width = -1;
+ layout->right_width = -1;
+ layout->bottom_height = -1;
+
+ init_border (&layout->title_border);
+
+ layout->title_vertical_pad = -1;
+
+ layout->right_titlebar_edge = -1;
+ layout->left_titlebar_edge = -1;
+
+ layout->button_sizing = META_BUTTON_SIZING_LAST;
+ layout->button_aspect = 1.0;
+ layout->button_width = -1;
+ layout->button_height = -1;
+
+ layout->has_title = TRUE;
+ layout->title_scale = 1.0;
+
+ init_border (&layout->button_border);
+
+ return layout;
+}
+
+/**
+ *
+ */
+static gboolean
+validate_border (const GtkBorder *border,
+ const char **bad)
+{
+ *bad = NULL;
+
+ if (border->top < 0)
+ *bad = _("top");
+ else if (border->bottom < 0)
+ *bad = _("bottom");
+ else if (border->left < 0)
+ *bad = _("left");
+ else if (border->right < 0)
+ *bad = _("right");
+
+ return *bad == NULL;
+}
+
+/**
+ * Ensures that the theme supplied a particular dimension. When a
+ * MetaFrameLayout is created, all its integer fields are set to -1
+ * by meta_frame_layout_new(). After an instance of this type
+ * should have been initialised, this function checks that
+ * a given field is not still at -1. It is never called directly, but
+ * rather via the CHECK_GEOMETRY_VALUE and CHECK_GEOMETRY_BORDER
+ * macros.
+ *
+ * \param val The value to check
+ * \param name The name to use in the error message
+ * \param[out] error Set to an error if val was not initialised
+ */
+static gboolean
+validate_geometry_value (int val,
+ const char *name,
+ GError **error)
+{
+ if (val < 0)
+ {
+ g_set_error (error, META_THEME_ERROR,
+ META_THEME_ERROR_FRAME_GEOMETRY,
+ _("frame geometry does not specify \"%s\" dimension"),
+ name);
+ return FALSE;
+ }
+ else
+ return TRUE;
+}
+
+static gboolean
+validate_geometry_border (const GtkBorder *border,
+ const char *name,
+ GError **error)
+{
+ const char *bad;
+
+ if (!validate_border (border, &bad))
+ {
+ g_set_error (error, META_THEME_ERROR,
+ META_THEME_ERROR_FRAME_GEOMETRY,
+ _("frame geometry does not specify dimension \"%s\" for border \"%s\""),
+ bad, name);
+ return FALSE;
+ }
+ else
+ return TRUE;
+}
+
+gboolean
+meta_frame_layout_validate (const MetaFrameLayout *layout,
+ GError **error)
+{
+ g_return_val_if_fail (layout != NULL, FALSE);
+
+#define CHECK_GEOMETRY_VALUE(vname) if (!validate_geometry_value (layout->vname, #vname, error)) return FALSE
+
+#define CHECK_GEOMETRY_BORDER(bname) if (!validate_geometry_border (&layout->bname, #bname, error)) return FALSE
+
+ CHECK_GEOMETRY_VALUE (left_width);
+ CHECK_GEOMETRY_VALUE (right_width);
+ CHECK_GEOMETRY_VALUE (bottom_height);
+
+ CHECK_GEOMETRY_BORDER (title_border);
+
+ CHECK_GEOMETRY_VALUE (title_vertical_pad);
+
+ CHECK_GEOMETRY_VALUE (right_titlebar_edge);
+ CHECK_GEOMETRY_VALUE (left_titlebar_edge);
+
+ switch (layout->button_sizing)
+ {
+ case META_BUTTON_SIZING_ASPECT:
+ if (layout->button_aspect < (0.1) ||
+ layout->button_aspect > (15.0))
+ {
+ g_set_error (error, META_THEME_ERROR,
+ META_THEME_ERROR_FRAME_GEOMETRY,
+ _("Button aspect ratio %g is not reasonable"),
+ layout->button_aspect);
+ return FALSE;
+ }
+ break;
+ case META_BUTTON_SIZING_FIXED:
+ CHECK_GEOMETRY_VALUE (button_width);
+ CHECK_GEOMETRY_VALUE (button_height);
+ break;
+ case META_BUTTON_SIZING_LAST:
+ g_set_error (error, META_THEME_ERROR,
+ META_THEME_ERROR_FRAME_GEOMETRY,
+ _("Frame geometry does not specify size of buttons"));
+ return FALSE;
+ }
+
+ CHECK_GEOMETRY_BORDER (button_border);
+
+ return TRUE;
+}
+
+MetaFrameLayout*
+meta_frame_layout_copy (const MetaFrameLayout *src)
+{
+ MetaFrameLayout *layout;
+
+ layout = g_new0 (MetaFrameLayout, 1);
+
+ *layout = *src;
+
+ layout->refcount = 1;
+
+ return layout;
+}
+
+void
+meta_frame_layout_ref (MetaFrameLayout *layout)
+{
+ g_return_if_fail (layout != NULL);
+
+ layout->refcount += 1;
+}
+
+void
+meta_frame_layout_unref (MetaFrameLayout *layout)
+{
+ g_return_if_fail (layout != NULL);
+ g_return_if_fail (layout->refcount > 0);
+
+ layout->refcount -= 1;
+
+ if (layout->refcount == 0)
+ {
+ DEBUG_FILL_STRUCT (layout);
+ g_free (layout);
+ }
+}
+
+void
+meta_frame_layout_get_borders (const MetaFrameLayout *layout,
+ int text_height,
+ MetaFrameFlags flags,
+ int *top_height,
+ int *bottom_height,
+ int *left_width,
+ int *right_width)
+{
+ int buttons_height, title_height;
+
+ g_return_if_fail (top_height != NULL);
+ g_return_if_fail (bottom_height != NULL);
+ g_return_if_fail (left_width != NULL);
+ g_return_if_fail (right_width != NULL);
+
+ if (!layout->has_title)
+ text_height = 0;
+
+ buttons_height = layout->button_height +
+ layout->button_border.top + layout->button_border.bottom;
+ title_height = text_height +
+ layout->title_vertical_pad +
+ layout->title_border.top + layout->title_border.bottom;
+
+ if (top_height)
+ {
+ *top_height = MAX (buttons_height, title_height);
+ }
+
+ if (left_width)
+ *left_width = layout->left_width;
+ if (right_width)
+ *right_width = layout->right_width;
+
+ if (bottom_height)
+ {
+ if (flags & META_FRAME_SHADED)
+ *bottom_height = 0;
+ else
+ *bottom_height = layout->bottom_height;
+ }
+
+ if (flags & META_FRAME_FULLSCREEN)
+ {
+ if (top_height)
+ *top_height = 0;
+ if (bottom_height)
+ *bottom_height = 0;
+ if (left_width)
+ *left_width = 0;
+ if (right_width)
+ *right_width = 0;
+ }
+}
+
+static MetaButtonSpace*
+rect_for_function (MetaFrameGeometry *fgeom,
+ MetaFrameFlags flags,
+ MetaButtonFunction function,
+ MetaTheme *theme)
+{
+
+ /* Firstly, check version-specific things. */
+
+ if (META_THEME_ALLOWS(theme, META_THEME_SHADE_STICK_ABOVE_BUTTONS))
+ {
+ switch (function)
+ {
+ case META_BUTTON_FUNCTION_SHADE:
+ if ((flags & META_FRAME_ALLOWS_SHADE) && !(flags & META_FRAME_SHADED))
+ return &fgeom->shade_rect;
+ else
+ return NULL;
+ case META_BUTTON_FUNCTION_ABOVE:
+ if (!(flags & META_FRAME_ABOVE))
+ return &fgeom->above_rect;
+ else
+ return NULL;
+ case META_BUTTON_FUNCTION_STICK:
+ if (!(flags & META_FRAME_STUCK))
+ return &fgeom->stick_rect;
+ else
+ return NULL;
+ case META_BUTTON_FUNCTION_UNSHADE:
+ if ((flags & META_FRAME_ALLOWS_SHADE) && (flags & META_FRAME_SHADED))
+ return &fgeom->unshade_rect;
+ else
+ return NULL;
+ case META_BUTTON_FUNCTION_UNABOVE:
+ if (flags & META_FRAME_ABOVE)
+ return &fgeom->unabove_rect;
+ else
+ return NULL;
+ case META_BUTTON_FUNCTION_UNSTICK:
+ if (flags & META_FRAME_STUCK)
+ return &fgeom->unstick_rect;
+ default:
+ /* just go on to the next switch block */;
+ }
+ }
+
+ /* now consider the buttons which exist in all versions */
+
+ switch (function)
+ {
+ case META_BUTTON_FUNCTION_MENU:
+ if (flags & META_FRAME_ALLOWS_MENU)
+ return &fgeom->menu_rect;
+ else
+ return NULL;
+ case META_BUTTON_FUNCTION_MINIMIZE:
+ if (flags & META_FRAME_ALLOWS_MINIMIZE)
+ return &fgeom->min_rect;
+ else
+ return NULL;
+ case META_BUTTON_FUNCTION_MAXIMIZE:
+ if (flags & META_FRAME_ALLOWS_MAXIMIZE)
+ return &fgeom->max_rect;
+ else
+ return NULL;
+ case META_BUTTON_FUNCTION_CLOSE:
+ if (flags & META_FRAME_ALLOWS_DELETE)
+ return &fgeom->close_rect;
+ else
+ return NULL;
+ case META_BUTTON_FUNCTION_STICK:
+ case META_BUTTON_FUNCTION_SHADE:
+ case META_BUTTON_FUNCTION_ABOVE:
+ case META_BUTTON_FUNCTION_UNSTICK:
+ case META_BUTTON_FUNCTION_UNSHADE:
+ case META_BUTTON_FUNCTION_UNABOVE:
+ /* we are being asked for a >v1 button which hasn't been handled yet,
+ * so obviously we're not in a theme which supports that version.
+ * therefore, we don't show the button. return NULL and all will
+ * be well.
+ */
+ return NULL;
+
+ case META_BUTTON_FUNCTION_LAST:
+ return NULL;
+ }
+
+ return NULL;
+}
+
+static gboolean
+strip_button (MetaButtonSpace *func_rects[MAX_BUTTONS_PER_CORNER],
+ GdkRectangle *bg_rects[MAX_BUTTONS_PER_CORNER],
+ int *n_rects,
+ MetaButtonSpace *to_strip)
+{
+ int i;
+
+ i = 0;
+ while (i < *n_rects)
+ {
+ if (func_rects[i] == to_strip)
+ {
+ *n_rects -= 1;
+
+ /* shift the other rects back in the array */
+ while (i < *n_rects)
+ {
+ func_rects[i] = func_rects[i+1];
+ bg_rects[i] = bg_rects[i+1];
+
+ ++i;
+ }
+
+ func_rects[i] = NULL;
+ bg_rects[i] = NULL;
+
+ return TRUE;
+ }
+
+ ++i;
+ }
+
+ return FALSE; /* did not strip anything */
+}
+
+void
+meta_frame_layout_calc_geometry (const MetaFrameLayout *layout,
+ int text_height,
+ MetaFrameFlags flags,
+ int client_width,
+ int client_height,
+ const MetaButtonLayout *button_layout,
+ MetaFrameGeometry *fgeom,
+ MetaTheme *theme)
+{
+ int i, n_left, n_right, n_left_spacers, n_right_spacers;
+ int x;
+ int button_y;
+ int title_right_edge;
+ int width, height;
+ int button_width, button_height;
+ int min_size_for_rounding;
+
+ /* the left/right rects in order; the max # of rects
+ * is the number of button functions
+ */
+ MetaButtonSpace *left_func_rects[MAX_BUTTONS_PER_CORNER];
+ MetaButtonSpace *right_func_rects[MAX_BUTTONS_PER_CORNER];
+ GdkRectangle *left_bg_rects[MAX_BUTTONS_PER_CORNER];
+ gboolean left_buttons_has_spacer[MAX_BUTTONS_PER_CORNER];
+ GdkRectangle *right_bg_rects[MAX_BUTTONS_PER_CORNER];
+ gboolean right_buttons_has_spacer[MAX_BUTTONS_PER_CORNER];
+
+ meta_frame_layout_get_borders (layout, text_height,
+ flags,
+ &fgeom->top_height,
+ &fgeom->bottom_height,
+ &fgeom->left_width,
+ &fgeom->right_width);
+
+ width = client_width + fgeom->left_width + fgeom->right_width;
+
+ height = ((flags & META_FRAME_SHADED) ? 0: client_height) +
+ fgeom->top_height + fgeom->bottom_height;
+
+ fgeom->width = width;
+ fgeom->height = height;
+
+ fgeom->top_titlebar_edge = layout->title_border.top;
+ fgeom->bottom_titlebar_edge = layout->title_border.bottom;
+ fgeom->left_titlebar_edge = layout->left_titlebar_edge;
+ fgeom->right_titlebar_edge = layout->right_titlebar_edge;
+
+ /* gcc warnings */
+ button_width = -1;
+ button_height = -1;
+
+ switch (layout->button_sizing)
+ {
+ case META_BUTTON_SIZING_ASPECT:
+ button_height = fgeom->top_height - layout->button_border.top - layout->button_border.bottom;
+ button_width = button_height / layout->button_aspect;
+ break;
+ case META_BUTTON_SIZING_FIXED:
+ button_width = layout->button_width;
+ button_height = layout->button_height;
+ break;
+ case META_BUTTON_SIZING_LAST:
+ g_assert_not_reached ();
+ break;
+ }
+
+ /* FIXME all this code sort of pretends that duplicate buttons
+ * with the same function are allowed, but that breaks the
+ * code in frames.c, so isn't really allowed right now.
+ * Would need left_close_rect, right_close_rect, etc.
+ */
+
+ /* Init all button rects to 0, lame hack */
+ memset (ADDRESS_OF_BUTTON_RECTS (fgeom), '\0',
+ LENGTH_OF_BUTTON_RECTS);
+
+ n_left = 0;
+ n_right = 0;
+ n_left_spacers = 0;
+ n_right_spacers = 0;
+
+ if (!layout->hide_buttons)
+ {
+ /* Try to fill in rects */
+ for (i = 0; i < MAX_BUTTONS_PER_CORNER && button_layout->left_buttons[i] != META_BUTTON_FUNCTION_LAST; i++)
+ {
+ left_func_rects[n_left] = rect_for_function (fgeom, flags,
+ button_layout->left_buttons[i],
+ theme);
+ if (left_func_rects[n_left] != NULL)
+ {
+ left_buttons_has_spacer[n_left] = button_layout->left_buttons_has_spacer[i];
+ if (button_layout->left_buttons_has_spacer[i])
+ ++n_left_spacers;
+
+ ++n_left;
+ }
+ }
+
+ for (i = 0; i < MAX_BUTTONS_PER_CORNER && button_layout->right_buttons[i] != META_BUTTON_FUNCTION_LAST; i++)
+ {
+ right_func_rects[n_right] = rect_for_function (fgeom, flags,
+ button_layout->right_buttons[i],
+ theme);
+ if (right_func_rects[n_right] != NULL)
+ {
+ right_buttons_has_spacer[n_right] = button_layout->right_buttons_has_spacer[i];
+ if (button_layout->right_buttons_has_spacer[i])
+ ++n_right_spacers;
+
+ ++n_right;
+ }
+ }
+ }
+
+ for (i = 0; i < MAX_BUTTONS_PER_CORNER; i++)
+ {
+ left_bg_rects[i] = NULL;
+ right_bg_rects[i] = NULL;
+ }
+
+ for (i = 0; i < n_left; i++)
+ {
+ if (i == 0) /* prefer left background if only one button */
+ left_bg_rects[i] = &fgeom->left_left_background;
+ else if (i == (n_left - 1))
+ left_bg_rects[i] = &fgeom->left_right_background;
+ else
+ left_bg_rects[i] = &fgeom->left_middle_backgrounds[i - 1];
+ }
+
+ for (i = 0; i < n_right; i++)
+ {
+ /* prefer right background if only one button */
+ if (i == (n_right - 1))
+ right_bg_rects[i] = &fgeom->right_right_background;
+ else if (i == 0)
+ right_bg_rects[i] = &fgeom->right_left_background;
+ else
+ right_bg_rects[i] = &fgeom->right_middle_backgrounds[i - 1];
+ }
+
+ /* Be sure buttons fit */
+ while (n_left > 0 || n_right > 0)
+ {
+ int space_used_by_buttons;
+ int space_available;
+
+ space_available = fgeom->width - layout->left_titlebar_edge - layout->right_titlebar_edge;
+
+ space_used_by_buttons = 0;
+
+ space_used_by_buttons += button_width * n_left;
+ space_used_by_buttons += (button_width * 0.75) * n_left_spacers;
+ space_used_by_buttons += layout->button_border.left * n_left;
+ space_used_by_buttons += layout->button_border.right * n_left;
+
+ space_used_by_buttons += button_width * n_right;
+ space_used_by_buttons += (button_width * 0.75) * n_right_spacers;
+ space_used_by_buttons += layout->button_border.left * n_right;
+ space_used_by_buttons += layout->button_border.right * n_right;
+
+ if (space_used_by_buttons <= space_available)
+ break; /* Everything fits, bail out */
+
+ /* First try to remove separators */
+ if (n_left_spacers > 0)
+ {
+ left_buttons_has_spacer[--n_left_spacers] = FALSE;
+ continue;
+ }
+ else if (n_right_spacers > 0)
+ {
+ right_buttons_has_spacer[--n_right_spacers] = FALSE;
+ continue;
+ }
+
+ /* Otherwise we need to shave out a button. Shave
+ * above, stick, shade, min, max, close, then menu (menu is most useful);
+ * prefer the default button locations.
+ */
+ if (strip_button (left_func_rects, left_bg_rects,
+ &n_left, &fgeom->above_rect))
+ continue;
+ else if (strip_button (right_func_rects, right_bg_rects,
+ &n_right, &fgeom->above_rect))
+ continue;
+ else if (strip_button (left_func_rects, left_bg_rects,
+ &n_left, &fgeom->stick_rect))
+ continue;
+ else if (strip_button (right_func_rects, right_bg_rects,
+ &n_right, &fgeom->stick_rect))
+ continue;
+ else if (strip_button (left_func_rects, left_bg_rects,
+ &n_left, &fgeom->shade_rect))
+ continue;
+ else if (strip_button (right_func_rects, right_bg_rects,
+ &n_right, &fgeom->shade_rect))
+ continue;
+ else if (strip_button (left_func_rects, left_bg_rects,
+ &n_left, &fgeom->min_rect))
+ continue;
+ else if (strip_button (right_func_rects, right_bg_rects,
+ &n_right, &fgeom->min_rect))
+ continue;
+ else if (strip_button (left_func_rects, left_bg_rects,
+ &n_left, &fgeom->max_rect))
+ continue;
+ else if (strip_button (right_func_rects, right_bg_rects,
+ &n_right, &fgeom->max_rect))
+ continue;
+ else if (strip_button (left_func_rects, left_bg_rects,
+ &n_left, &fgeom->close_rect))
+ continue;
+ else if (strip_button (right_func_rects, right_bg_rects,
+ &n_right, &fgeom->close_rect))
+ continue;
+ else if (strip_button (right_func_rects, right_bg_rects,
+ &n_right, &fgeom->menu_rect))
+ continue;
+ else if (strip_button (left_func_rects, left_bg_rects,
+ &n_left, &fgeom->menu_rect))
+ continue;
+ else
+ {
+ meta_bug ("Could not find a button to strip. n_left = %d n_right = %d\n",
+ n_left, n_right);
+ }
+ }
+
+ /* center buttons vertically */
+ button_y = (fgeom->top_height -
+ (button_height + layout->button_border.top + layout->button_border.bottom)) / 2 + layout->button_border.top;
+
+ /* right edge of farthest-right button */
+ x = width - layout->right_titlebar_edge;
+
+ i = n_right - 1;
+ while (i >= 0)
+ {
+ MetaButtonSpace *rect;
+
+ if (x < 0) /* if we go negative, leave the buttons we don't get to as 0-width */
+ break;
+
+ rect = right_func_rects[i];
+ rect->visible.x = x - layout->button_border.right - button_width;
+ if (right_buttons_has_spacer[i])
+ rect->visible.x -= (button_width * 0.75);
+
+ rect->visible.y = button_y;
+ rect->visible.width = button_width;
+ rect->visible.height = button_height;
+
+ if (flags & META_FRAME_MAXIMIZED)
+ {
+ rect->clickable.x = rect->visible.x;
+ rect->clickable.y = 0;
+ rect->clickable.width = rect->visible.width;
+ rect->clickable.height = button_height + button_y;
+
+ if (i == n_right - 1)
+ rect->clickable.width += layout->right_titlebar_edge + layout->right_width + layout->button_border.right;
+
+ }
+ else
+ g_memmove (&(rect->clickable), &(rect->visible), sizeof(rect->clickable));
+
+ *(right_bg_rects[i]) = rect->visible;
+
+ x = rect->visible.x - layout->button_border.left;
+
+ --i;
+ }
+
+ /* save right edge of titlebar for later use */
+ title_right_edge = x - layout->title_border.right;
+
+ /* Now x changes to be position from the left and we go through
+ * the left-side buttons
+ */
+ x = layout->left_titlebar_edge;
+ for (i = 0; i < n_left; i++)
+ {
+ MetaButtonSpace *rect;
+
+ rect = left_func_rects[i];
+
+ rect->visible.x = x + layout->button_border.left;
+ rect->visible.y = button_y;
+ rect->visible.width = button_width;
+ rect->visible.height = button_height;
+
+ if (flags & META_FRAME_MAXIMIZED)
+ {
+ if (i==0)
+ {
+ rect->clickable.x = 0;
+ rect->clickable.width = button_width + x;
+ }
+ else
+ {
+ rect->clickable.x = rect->visible.x;
+ rect->clickable.width = button_width;
+ }
+
+ rect->clickable.y = 0;
+ rect->clickable.height = button_height + button_y;
+ }
+ else
+ g_memmove (&(rect->clickable), &(rect->visible), sizeof(rect->clickable));
+
+
+ x = rect->visible.x + rect->visible.width + layout->button_border.right;
+ if (left_buttons_has_spacer[i])
+ x += (button_width * 0.75);
+
+ *(left_bg_rects[i]) = rect->visible;
+ }
+
+ /* We always fill as much vertical space as possible with title rect,
+ * rather than centering it like the buttons
+ */
+ fgeom->title_rect.x = x + layout->title_border.left;
+ fgeom->title_rect.y = layout->title_border.top;
+ fgeom->title_rect.width = title_right_edge - fgeom->title_rect.x;
+ fgeom->title_rect.height = fgeom->top_height - layout->title_border.top - layout->title_border.bottom;
+
+ /* Nuke title if it won't fit */
+ if (fgeom->title_rect.width < 0 ||
+ fgeom->title_rect.height < 0)
+ {
+ fgeom->title_rect.width = 0;
+ fgeom->title_rect.height = 0;
+ }
+
+ if (flags & META_FRAME_SHADED)
+ min_size_for_rounding = 0;
+ else
+ min_size_for_rounding = 5;
+
+ fgeom->top_left_corner_rounded_radius = 0;
+ fgeom->top_right_corner_rounded_radius = 0;
+ fgeom->bottom_left_corner_rounded_radius = 0;
+ fgeom->bottom_right_corner_rounded_radius = 0;
+
+ if (fgeom->top_height + fgeom->left_width >= min_size_for_rounding)
+ fgeom->top_left_corner_rounded_radius = layout->top_left_corner_rounded_radius;
+ if (fgeom->top_height + fgeom->right_width >= min_size_for_rounding)
+ fgeom->top_right_corner_rounded_radius = layout->top_right_corner_rounded_radius;
+
+ if (fgeom->bottom_height + fgeom->left_width >= min_size_for_rounding)
+ fgeom->bottom_left_corner_rounded_radius = layout->bottom_left_corner_rounded_radius;
+ if (fgeom->bottom_height + fgeom->right_width >= min_size_for_rounding)
+ fgeom->bottom_right_corner_rounded_radius = layout->bottom_right_corner_rounded_radius;
+}
+
+MetaGradientSpec*
+meta_gradient_spec_new (MetaGradientType type)
+{
+ MetaGradientSpec *spec;
+
+ spec = g_new (MetaGradientSpec, 1);
+
+ spec->type = type;
+ spec->color_specs = NULL;
+
+ return spec;
+}
+
+static void
+free_color_spec (gpointer spec, gpointer user_data)
+{
+ meta_color_spec_free (spec);
+}
+
+void
+meta_gradient_spec_free (MetaGradientSpec *spec)
+{
+ g_return_if_fail (spec != NULL);
+
+ g_slist_foreach (spec->color_specs, free_color_spec, NULL);
+ g_slist_free (spec->color_specs);
+
+ DEBUG_FILL_STRUCT (spec);
+ g_free (spec);
+}
+
+GdkPixbuf*
+meta_gradient_spec_render (const MetaGradientSpec *spec,
+ GtkWidget *widget,
+ int width,
+ int height)
+{
+ int n_colors;
+ GdkColor *colors;
+ GSList *tmp;
+ int i;
+ GdkPixbuf *pixbuf;
+
+ n_colors = g_slist_length (spec->color_specs);
+
+ if (n_colors == 0)
+ return NULL;
+
+ colors = g_new (GdkColor, n_colors);
+
+ i = 0;
+ tmp = spec->color_specs;
+ while (tmp != NULL)
+ {
+ meta_color_spec_render (tmp->data, widget, &colors[i]);
+
+ tmp = tmp->next;
+ ++i;
+ }
+
+ pixbuf = meta_gradient_create_multi (width, height,
+ colors, n_colors,
+ spec->type);
+
+ g_free (colors);
+
+ return pixbuf;
+}
+
+gboolean
+meta_gradient_spec_validate (MetaGradientSpec *spec,
+ GError **error)
+{
+ g_return_val_if_fail (spec != NULL, FALSE);
+
+ if (g_slist_length (spec->color_specs) < 2)
+ {
+ g_set_error (error, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Gradients should have at least two colors"));
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+MetaAlphaGradientSpec*
+meta_alpha_gradient_spec_new (MetaGradientType type,
+ int n_alphas)
+{
+ MetaAlphaGradientSpec *spec;
+
+ g_return_val_if_fail (n_alphas > 0, NULL);
+
+ spec = g_new0 (MetaAlphaGradientSpec, 1);
+
+ spec->type = type;
+ spec->alphas = g_new0 (unsigned char, n_alphas);
+ spec->n_alphas = n_alphas;
+
+ return spec;
+}
+
+void
+meta_alpha_gradient_spec_free (MetaAlphaGradientSpec *spec)
+{
+ g_return_if_fail (spec != NULL);
+
+ g_free (spec->alphas);
+ g_free (spec);
+}
+
+MetaColorSpec*
+meta_color_spec_new (MetaColorSpecType type)
+{
+ MetaColorSpec *spec;
+ MetaColorSpec dummy;
+ int size;
+
+ size = G_STRUCT_OFFSET (MetaColorSpec, data);
+
+ switch (type)
+ {
+ case META_COLOR_SPEC_BASIC:
+ size += sizeof (dummy.data.basic);
+ break;
+
+ case META_COLOR_SPEC_GTK:
+ size += sizeof (dummy.data.gtk);
+ break;
+
+ case META_COLOR_SPEC_BLEND:
+ size += sizeof (dummy.data.blend);
+ break;
+
+ case META_COLOR_SPEC_SHADE:
+ size += sizeof (dummy.data.shade);
+ break;
+ }
+
+ spec = g_malloc0 (size);
+
+ spec->type = type;
+
+ return spec;
+}
+
+void
+meta_color_spec_free (MetaColorSpec *spec)
+{
+ g_return_if_fail (spec != NULL);
+
+ switch (spec->type)
+ {
+ case META_COLOR_SPEC_BASIC:
+ DEBUG_FILL_STRUCT (&spec->data.basic);
+ break;
+
+ case META_COLOR_SPEC_GTK:
+ DEBUG_FILL_STRUCT (&spec->data.gtk);
+ break;
+
+ case META_COLOR_SPEC_BLEND:
+ if (spec->data.blend.foreground)
+ meta_color_spec_free (spec->data.blend.foreground);
+ if (spec->data.blend.background)
+ meta_color_spec_free (spec->data.blend.background);
+ DEBUG_FILL_STRUCT (&spec->data.blend);
+ break;
+
+ case META_COLOR_SPEC_SHADE:
+ if (spec->data.shade.base)
+ meta_color_spec_free (spec->data.shade.base);
+ DEBUG_FILL_STRUCT (&spec->data.shade);
+ break;
+ }
+
+ g_free (spec);
+}
+
+MetaColorSpec*
+meta_color_spec_new_from_string (const char *str,
+ GError **err)
+{
+ MetaColorSpec *spec;
+
+ spec = NULL;
+
+ if (str[0] == 'g' && str[1] == 't' && str[2] == 'k' && str[3] == ':')
+ {
+ /* GTK color */
+ const char *bracket;
+ const char *end_bracket;
+ char *tmp;
+ GtkStateType state;
+ MetaGtkColorComponent component;
+
+ bracket = str;
+ while (*bracket && *bracket != '[')
+ ++bracket;
+
+ if (*bracket == '\0')
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("GTK color specification must have the state in brackets, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""),
+ str);
+ return NULL;
+ }
+
+ end_bracket = bracket;
+ ++end_bracket;
+ while (*end_bracket && *end_bracket != ']')
+ ++end_bracket;
+
+ if (*end_bracket == '\0')
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("GTK color specification must have a close bracket after the state, e.g. gtk:fg[NORMAL] where NORMAL is the state; could not parse \"%s\""),
+ str);
+ return NULL;
+ }
+
+ tmp = g_strndup (bracket + 1, end_bracket - bracket - 1);
+ state = meta_gtk_state_from_string (tmp);
+ if (((int) state) == -1)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Did not understand state \"%s\" in color specification"),
+ tmp);
+ g_free (tmp);
+ return NULL;
+ }
+ g_free (tmp);
+
+ tmp = g_strndup (str + 4, bracket - str - 4);
+ component = meta_color_component_from_string (tmp);
+ if (component == META_GTK_COLOR_LAST)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Did not understand color component \"%s\" in color specification"),
+ tmp);
+ g_free (tmp);
+ return NULL;
+ }
+ g_free (tmp);
+
+ spec = meta_color_spec_new (META_COLOR_SPEC_GTK);
+ spec->data.gtk.state = state;
+ spec->data.gtk.component = component;
+ g_assert (spec->data.gtk.state < N_GTK_STATES);
+ g_assert (spec->data.gtk.component < META_GTK_COLOR_LAST);
+ }
+ else if (str[0] == 'b' && str[1] == 'l' && str[2] == 'e' && str[3] == 'n' &&
+ str[4] == 'd' && str[5] == '/')
+ {
+ /* blend */
+ char **split;
+ double alpha;
+ char *end;
+ MetaColorSpec *fg;
+ MetaColorSpec *bg;
+
+ split = g_strsplit (str, "/", 4);
+
+ if (split[0] == NULL || split[1] == NULL ||
+ split[2] == NULL || split[3] == NULL)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Blend format is \"blend/bg_color/fg_color/alpha\", \"%s\" does not fit the format"),
+ str);
+ g_strfreev (split);
+ return NULL;
+ }
+
+ alpha = g_ascii_strtod (split[3], &end);
+ if (end == split[3])
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Could not parse alpha value \"%s\" in blended color"),
+ split[3]);
+ g_strfreev (split);
+ return NULL;
+ }
+
+ if (alpha < (0.0 - 1e6) || alpha > (1.0 + 1e6))
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Alpha value \"%s\" in blended color is not between 0.0 and 1.0"),
+ split[3]);
+ g_strfreev (split);
+ return NULL;
+ }
+
+ fg = NULL;
+ bg = NULL;
+
+ bg = meta_color_spec_new_from_string (split[1], err);
+ if (bg == NULL)
+ {
+ g_strfreev (split);
+ return NULL;
+ }
+
+ fg = meta_color_spec_new_from_string (split[2], err);
+ if (fg == NULL)
+ {
+ meta_color_spec_free (bg);
+ g_strfreev (split);
+ return NULL;
+ }
+
+ g_strfreev (split);
+
+ spec = meta_color_spec_new (META_COLOR_SPEC_BLEND);
+ spec->data.blend.alpha = alpha;
+ spec->data.blend.background = bg;
+ spec->data.blend.foreground = fg;
+ }
+ else if (str[0] == 's' && str[1] == 'h' && str[2] == 'a' && str[3] == 'd' &&
+ str[4] == 'e' && str[5] == '/')
+ {
+ /* shade */
+ char **split;
+ double factor;
+ char *end;
+ MetaColorSpec *base;
+
+ split = g_strsplit (str, "/", 3);
+
+ if (split[0] == NULL || split[1] == NULL ||
+ split[2] == NULL)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Shade format is \"shade/base_color/factor\", \"%s\" does not fit the format"),
+ str);
+ g_strfreev (split);
+ return NULL;
+ }
+
+ factor = g_ascii_strtod (split[2], &end);
+ if (end == split[2])
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Could not parse shade factor \"%s\" in shaded color"),
+ split[2]);
+ g_strfreev (split);
+ return NULL;
+ }
+
+ if (factor < (0.0 - 1e6))
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Shade factor \"%s\" in shaded color is negative"),
+ split[2]);
+ g_strfreev (split);
+ return NULL;
+ }
+
+ base = NULL;
+
+ base = meta_color_spec_new_from_string (split[1], err);
+ if (base == NULL)
+ {
+ g_strfreev (split);
+ return NULL;
+ }
+
+ g_strfreev (split);
+
+ spec = meta_color_spec_new (META_COLOR_SPEC_SHADE);
+ spec->data.shade.factor = factor;
+ spec->data.shade.base = base;
+ }
+ else
+ {
+ spec = meta_color_spec_new (META_COLOR_SPEC_BASIC);
+
+ if (!gdk_color_parse (str, &spec->data.basic.color))
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Could not parse color \"%s\""),
+ str);
+ meta_color_spec_free (spec);
+ return NULL;
+ }
+ }
+
+ g_assert (spec);
+
+ return spec;
+}
+
+MetaColorSpec*
+meta_color_spec_new_gtk (MetaGtkColorComponent component,
+ GtkStateType state)
+{
+ MetaColorSpec *spec;
+
+ spec = meta_color_spec_new (META_COLOR_SPEC_GTK);
+
+ spec->data.gtk.component = component;
+ spec->data.gtk.state = state;
+
+ return spec;
+}
+
+void
+meta_color_spec_render (MetaColorSpec *spec,
+ GtkWidget *widget,
+ GdkColor *color)
+{
+ GtkStyle *widget_style;
+
+ g_return_if_fail (spec != NULL);
+ g_return_if_fail (GTK_IS_WIDGET (widget));
+
+ widget_style = gtk_widget_get_style (widget);
+ g_return_if_fail (widget_style != NULL);
+
+ switch (spec->type)
+ {
+ case META_COLOR_SPEC_BASIC:
+ *color = spec->data.basic.color;
+ break;
+
+ case META_COLOR_SPEC_GTK:
+ switch (spec->data.gtk.component)
+ {
+ case META_GTK_COLOR_BG:
+ *color = widget_style->bg[spec->data.gtk.state];
+ break;
+ case META_GTK_COLOR_FG:
+ *color = widget_style->fg[spec->data.gtk.state];
+ break;
+ case META_GTK_COLOR_BASE:
+ *color = widget_style->base[spec->data.gtk.state];
+ break;
+ case META_GTK_COLOR_TEXT:
+ *color = widget_style->text[spec->data.gtk.state];
+ break;
+ case META_GTK_COLOR_LIGHT:
+ *color = widget_style->light[spec->data.gtk.state];
+ break;
+ case META_GTK_COLOR_DARK:
+ *color = widget_style->dark[spec->data.gtk.state];
+ break;
+ case META_GTK_COLOR_MID:
+ *color = widget_style->mid[spec->data.gtk.state];
+ break;
+ case META_GTK_COLOR_TEXT_AA:
+ *color = widget_style->text_aa[spec->data.gtk.state];
+ break;
+ case META_GTK_COLOR_LAST:
+ g_assert_not_reached ();
+ break;
+ }
+ break;
+
+ case META_COLOR_SPEC_BLEND:
+ {
+ GdkColor bg, fg;
+
+ meta_color_spec_render (spec->data.blend.background, widget, &bg);
+ meta_color_spec_render (spec->data.blend.foreground, widget, &fg);
+
+ color_composite (&bg, &fg, spec->data.blend.alpha,
+ &spec->data.blend.color);
+
+ *color = spec->data.blend.color;
+ }
+ break;
+
+ case META_COLOR_SPEC_SHADE:
+ {
+ meta_color_spec_render (spec->data.shade.base, widget,
+ &spec->data.shade.color);
+
+ gtk_style_shade (&spec->data.shade.color,
+ &spec->data.shade.color, spec->data.shade.factor);
+
+ *color = spec->data.shade.color;
+ }
+ break;
+ }
+}
+
+/**
+ * Represents an operation as a string.
+ *
+ * \param type an operation, such as addition
+ * \return a string, such as "+"
+ */
+static const char*
+op_name (PosOperatorType type)
+{
+ switch (type)
+ {
+ case POS_OP_ADD:
+ return "+";
+ case POS_OP_SUBTRACT:
+ return "-";
+ case POS_OP_MULTIPLY:
+ return "*";
+ case POS_OP_DIVIDE:
+ return "/";
+ case POS_OP_MOD:
+ return "%";
+ case POS_OP_MAX:
+ return "`max`";
+ case POS_OP_MIN:
+ return "`min`";
+ case POS_OP_NONE:
+ break;
+ }
+
+ return "<unknown>";
+}
+
+/**
+ * Parses a string and returns an operation.
+ *
+ * \param p a pointer into a string representing an operation; part of an
+ * expression somewhere, so not null-terminated
+ * \param len set to the length of the string found. Set to 0 if none is.
+ * \return the operation found. If none was, returns POS_OP_NONE.
+ */
+static PosOperatorType
+op_from_string (const char *p,
+ int *len)
+{
+ *len = 0;
+
+ switch (*p)
+ {
+ case '+':
+ *len = 1;
+ return POS_OP_ADD;
+ case '-':
+ *len = 1;
+ return POS_OP_SUBTRACT;
+ case '*':
+ *len = 1;
+ return POS_OP_MULTIPLY;
+ case '/':
+ *len = 1;
+ return POS_OP_DIVIDE;
+ case '%':
+ *len = 1;
+ return POS_OP_MOD;
+
+ case '`':
+ if (p[0] == '`' &&
+ p[1] == 'm' &&
+ p[2] == 'a' &&
+ p[3] == 'x' &&
+ p[4] == '`')
+ {
+ *len = 5;
+ return POS_OP_MAX;
+ }
+ else if (p[0] == '`' &&
+ p[1] == 'm' &&
+ p[2] == 'i' &&
+ p[3] == 'n' &&
+ p[4] == '`')
+ {
+ *len = 5;
+ return POS_OP_MIN;
+ }
+ }
+
+ return POS_OP_NONE;
+}
+
+/**
+ * Frees an array of tokens. All the tokens and their associated memory
+ * will be freed.
+ *
+ * \param tokens an array of tokens to be freed
+ * \param n_tokens how many tokens are in the array.
+ */
+static void
+free_tokens (PosToken *tokens,
+ int n_tokens)
+{
+ int i;
+
+ /* n_tokens can be 0 since tokens may have been allocated more than
+ * it was initialized
+ */
+
+ for (i = 0; i < n_tokens; i++)
+ if (tokens[i].type == POS_TOKEN_VARIABLE)
+ g_free (tokens[i].d.v.name);
+
+ g_free (tokens);
+}
+
+/**
+ * Tokenises a number in an expression.
+ *
+ * \param p a pointer into a string representing an operation; part of an
+ * expression somewhere, so not null-terminated
+ * \param end_return set to a pointer to the end of the number found; but
+ * not updated if no number was found at all
+ * \param next set to either an integer or a float token
+ * \param[out] err set to the problem if there was a problem
+ * \return TRUE if a valid number was found, FALSE otherwise (and "err" will
+ * have been set)
+ *
+ * \bug The "while (*start)..." part: what's wrong with strchr-ish things?
+ * \bug The name is wrong: it doesn't parse anything.
+ * \ingroup tokenizer
+ */
+static gboolean
+parse_number (const char *p,
+ const char **end_return,
+ PosToken *next,
+ GError **err)
+{
+ const char *start = p;
+ char *end;
+ gboolean is_float;
+ char *num_str;
+
+ while (*p && (*p == '.' || g_ascii_isdigit (*p)))
+ ++p;
+
+ if (p == start)
+ {
+ char buf[7] = { '\0' };
+ buf[g_unichar_to_utf8 (g_utf8_get_char (p), buf)] = '\0';
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_BAD_CHARACTER,
+ _("Coordinate expression contains character '%s' which is not allowed"),
+ buf);
+ return FALSE;
+ }
+
+ *end_return = p;
+
+ /* we need this to exclude floats like "1e6" */
+ num_str = g_strndup (start, p - start);
+ start = num_str;
+ is_float = FALSE;
+ while (*start)
+ {
+ if (*start == '.')
+ is_float = TRUE;
+ ++start;
+ }
+
+ if (is_float)
+ {
+ next->type = POS_TOKEN_DOUBLE;
+ next->d.d.val = g_ascii_strtod (num_str, &end);
+
+ if (end == num_str)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Coordinate expression contains floating point number '%s' which could not be parsed"),
+ num_str);
+ g_free (num_str);
+ return FALSE;
+ }
+ }
+ else
+ {
+ next->type = POS_TOKEN_INT;
+ next->d.i.val = strtol (num_str, &end, 10);
+ if (end == num_str)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Coordinate expression contains integer '%s' which could not be parsed"),
+ num_str);
+ g_free (num_str);
+ return FALSE;
+ }
+ }
+
+ g_free (num_str);
+
+ g_assert (next->type == POS_TOKEN_INT || next->type == POS_TOKEN_DOUBLE);
+
+ return TRUE;
+}
+
+/**
+ * Whether a variable can validly appear as part of the name of a variable.
+ */
+#define IS_VARIABLE_CHAR(c) (g_ascii_isalpha ((c)) || (c) == '_')
+
+#if 0
+static void
+debug_print_tokens (PosToken *tokens,
+ int n_tokens)
+{
+ int i;
+
+ for (i = 0; i < n_tokens; i++)
+ {
+ PosToken *t = &tokens[i];
+
+ g_print (" ");
+
+ switch (t->type)
+ {
+ case POS_TOKEN_INT:
+ g_print ("\"%d\"", t->d.i.val);
+ break;
+ case POS_TOKEN_DOUBLE:
+ g_print ("\"%g\"", t->d.d.val);
+ break;
+ case POS_TOKEN_OPEN_PAREN:
+ g_print ("\"(\"");
+ break;
+ case POS_TOKEN_CLOSE_PAREN:
+ g_print ("\")\"");
+ break;
+ case POS_TOKEN_VARIABLE:
+ g_print ("\"%s\"", t->d.v.name);
+ break;
+ case POS_TOKEN_OPERATOR:
+ g_print ("\"%s\"", op_name (t->d.o.op));
+ break;
+ }
+ }
+
+ g_print ("\n");
+}
+#endif
+
+/**
+ * Tokenises an expression.
+ *
+ * \param expr The expression
+ * \param[out] tokens_p The resulting tokens
+ * \param[out] n_tokens_p The number of resulting tokens
+ * \param[out] err set to the problem if there was a problem
+ *
+ * \return True if the expression was successfully tokenised; false otherwise.
+ *
+ * \ingroup tokenizer
+ */
+static gboolean
+pos_tokenize (const char *expr,
+ PosToken **tokens_p,
+ int *n_tokens_p,
+ GError **err)
+{
+ PosToken *tokens;
+ int n_tokens;
+ int allocated;
+ const char *p;
+
+ *tokens_p = NULL;
+ *n_tokens_p = 0;
+
+ allocated = 3;
+ n_tokens = 0;
+ tokens = g_new (PosToken, allocated);
+
+ p = expr;
+ while (*p)
+ {
+ PosToken *next;
+ int len;
+
+ if (n_tokens == allocated)
+ {
+ allocated *= 2;
+ tokens = g_renew (PosToken, tokens, allocated);
+ }
+
+ next = &tokens[n_tokens];
+
+ switch (*p)
+ {
+ case '*':
+ case '/':
+ case '+':
+ case '-': /* negative numbers aren't allowed so this is easy */
+ case '%':
+ case '`':
+ next->type = POS_TOKEN_OPERATOR;
+ next->d.o.op = op_from_string (p, &len);
+ if (next->d.o.op != POS_OP_NONE)
+ {
+ ++n_tokens;
+ p = p + (len - 1); /* -1 since we ++p later */
+ }
+ else
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Coordinate expression contained unknown operator at the start of this text: \"%s\""),
+ p);
+
+ goto error;
+ }
+ break;
+
+ case '(':
+ next->type = POS_TOKEN_OPEN_PAREN;
+ ++n_tokens;
+ break;
+
+ case ')':
+ next->type = POS_TOKEN_CLOSE_PAREN;
+ ++n_tokens;
+ break;
+
+ case ' ':
+ case '\t':
+ case '\n':
+ break;
+
+ default:
+ if (IS_VARIABLE_CHAR (*p))
+ {
+ /* Assume variable */
+ const char *start = p;
+ while (*p && IS_VARIABLE_CHAR (*p))
+ ++p;
+ g_assert (p != start);
+ next->type = POS_TOKEN_VARIABLE;
+ next->d.v.name = g_strndup (start, p - start);
+ ++n_tokens;
+ --p; /* since we ++p again at the end of while loop */
+ }
+ else
+ {
+ /* Assume number */
+ const char *end;
+
+ if (!parse_number (p, &end, next, err))
+ goto error;
+
+ ++n_tokens;
+ p = end - 1; /* -1 since we ++p again at the end of while loop */
+ }
+
+ break;
+ }
+
+ ++p;
+ }
+
+ if (n_tokens == 0)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Coordinate expression was empty or not understood"));
+
+ goto error;
+ }
+
+ *tokens_p = tokens;
+ *n_tokens_p = n_tokens;
+
+ return TRUE;
+
+ error:
+ g_assert (err == NULL || *err != NULL);
+
+ free_tokens (tokens, n_tokens);
+ return FALSE;
+}
+
+/**
+ * The type of a PosExpr: either integer, double, or an operation.
+ * \ingroup parser
+ */
+typedef enum
+{
+ POS_EXPR_INT,
+ POS_EXPR_DOUBLE,
+ POS_EXPR_OPERATOR
+} PosExprType;
+
+/**
+ * Type and value of an expression in a parsed sequence. We don't
+ * keep expressions in a tree; if this is of type POS_EXPR_OPERATOR,
+ * the arguments of the operator will be in the array positions
+ * immediately preceding and following this operator; they cannot
+ * themselves be operators.
+ *
+ * \bug operator is char; it should really be of PosOperatorType.
+ * \ingroup parser
+ */
+typedef struct
+{
+ PosExprType type;
+ union
+ {
+ double double_val;
+ int int_val;
+ char operator;
+ } d;
+} PosExpr;
+
+#if 0
+static void
+debug_print_exprs (PosExpr *exprs,
+ int n_exprs)
+{
+ int i;
+
+ for (i = 0; i < n_exprs; i++)
+ {
+ switch (exprs[i].type)
+ {
+ case POS_EXPR_INT:
+ g_print (" %d", exprs[i].d.int_val);
+ break;
+ case POS_EXPR_DOUBLE:
+ g_print (" %g", exprs[i].d.double_val);
+ break;
+ case POS_EXPR_OPERATOR:
+ g_print (" %s", op_name (exprs[i].d.operator));
+ break;
+ }
+ }
+ g_print ("\n");
+}
+#endif
+
+static gboolean
+do_operation (PosExpr *a,
+ PosExpr *b,
+ PosOperatorType op,
+ GError **err)
+{
+ /* Promote types to double if required */
+ if (a->type == POS_EXPR_DOUBLE ||
+ b->type == POS_EXPR_DOUBLE)
+ {
+ if (a->type != POS_EXPR_DOUBLE)
+ {
+ a->type = POS_EXPR_DOUBLE;
+ a->d.double_val = a->d.int_val;
+ }
+ if (b->type != POS_EXPR_DOUBLE)
+ {
+ b->type = POS_EXPR_DOUBLE;
+ b->d.double_val = b->d.int_val;
+ }
+ }
+
+ g_assert (a->type == b->type);
+
+ if (a->type == POS_EXPR_INT)
+ {
+ switch (op)
+ {
+ case POS_OP_MULTIPLY:
+ a->d.int_val = a->d.int_val * b->d.int_val;
+ break;
+ case POS_OP_DIVIDE:
+ if (b->d.int_val == 0)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_DIVIDE_BY_ZERO,
+ _("Coordinate expression results in division by zero"));
+ return FALSE;
+ }
+ a->d.int_val = a->d.int_val / b->d.int_val;
+ break;
+ case POS_OP_MOD:
+ if (b->d.int_val == 0)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_DIVIDE_BY_ZERO,
+ _("Coordinate expression results in division by zero"));
+ return FALSE;
+ }
+ a->d.int_val = a->d.int_val % b->d.int_val;
+ break;
+ case POS_OP_ADD:
+ a->d.int_val = a->d.int_val + b->d.int_val;
+ break;
+ case POS_OP_SUBTRACT:
+ a->d.int_val = a->d.int_val - b->d.int_val;
+ break;
+ case POS_OP_MAX:
+ a->d.int_val = MAX (a->d.int_val, b->d.int_val);
+ break;
+ case POS_OP_MIN:
+ a->d.int_val = MIN (a->d.int_val, b->d.int_val);
+ break;
+ case POS_OP_NONE:
+ g_assert_not_reached ();
+ break;
+ }
+ }
+ else if (a->type == POS_EXPR_DOUBLE)
+ {
+ switch (op)
+ {
+ case POS_OP_MULTIPLY:
+ a->d.double_val = a->d.double_val * b->d.double_val;
+ break;
+ case POS_OP_DIVIDE:
+ if (b->d.double_val == 0.0)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_DIVIDE_BY_ZERO,
+ _("Coordinate expression results in division by zero"));
+ return FALSE;
+ }
+ a->d.double_val = a->d.double_val / b->d.double_val;
+ break;
+ case POS_OP_MOD:
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_MOD_ON_FLOAT,
+ _("Coordinate expression tries to use mod operator on a floating-point number"));
+ return FALSE;
+ case POS_OP_ADD:
+ a->d.double_val = a->d.double_val + b->d.double_val;
+ break;
+ case POS_OP_SUBTRACT:
+ a->d.double_val = a->d.double_val - b->d.double_val;
+ break;
+ case POS_OP_MAX:
+ a->d.double_val = MAX (a->d.double_val, b->d.double_val);
+ break;
+ case POS_OP_MIN:
+ a->d.double_val = MIN (a->d.double_val, b->d.double_val);
+ break;
+ case POS_OP_NONE:
+ g_assert_not_reached ();
+ break;
+ }
+ }
+ else
+ g_assert_not_reached ();
+
+ return TRUE;
+}
+
+static gboolean
+do_operations (PosExpr *exprs,
+ int *n_exprs,
+ int precedence,
+ GError **err)
+{
+ int i;
+
+#if 0
+ g_print ("Doing prec %d ops on %d exprs\n", precedence, *n_exprs);
+ debug_print_exprs (exprs, *n_exprs);
+#endif
+
+ i = 1;
+ while (i < *n_exprs)
+ {
+ gboolean compress;
+
+ /* exprs[i-1] first operand
+ * exprs[i] operator
+ * exprs[i+1] second operand
+ *
+ * we replace first operand with result of mul/div/mod,
+ * or skip over operator and second operand if we have
+ * an add/subtract
+ */
+
+ if (exprs[i-1].type == POS_EXPR_OPERATOR)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Coordinate expression has an operator \"%s\" where an operand was expected"),
+ op_name (exprs[i-1].d.operator));
+ return FALSE;
+ }
+
+ if (exprs[i].type != POS_EXPR_OPERATOR)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Coordinate expression had an operand where an operator was expected"));
+ return FALSE;
+ }
+
+ if (i == (*n_exprs - 1))
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Coordinate expression ended with an operator instead of an operand"));
+ return FALSE;
+ }
+
+ g_assert ((i+1) < *n_exprs);
+
+ if (exprs[i+1].type == POS_EXPR_OPERATOR)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Coordinate expression has operator \"%c\" following operator \"%c\" with no operand in between"),
+ exprs[i+1].d.operator,
+ exprs[i].d.operator);
+ return FALSE;
+ }
+
+ compress = FALSE;
+
+ switch (precedence)
+ {
+ case 2:
+ switch (exprs[i].d.operator)
+ {
+ case POS_OP_DIVIDE:
+ case POS_OP_MOD:
+ case POS_OP_MULTIPLY:
+ compress = TRUE;
+ if (!do_operation (&exprs[i-1], &exprs[i+1],
+ exprs[i].d.operator,
+ err))
+ return FALSE;
+ break;
+ }
+ break;
+ case 1:
+ switch (exprs[i].d.operator)
+ {
+ case POS_OP_ADD:
+ case POS_OP_SUBTRACT:
+ compress = TRUE;
+ if (!do_operation (&exprs[i-1], &exprs[i+1],
+ exprs[i].d.operator,
+ err))
+ return FALSE;
+ break;
+ }
+ break;
+ /* I have no rationale at all for making these low-precedence */
+ case 0:
+ switch (exprs[i].d.operator)
+ {
+ case POS_OP_MAX:
+ case POS_OP_MIN:
+ compress = TRUE;
+ if (!do_operation (&exprs[i-1], &exprs[i+1],
+ exprs[i].d.operator,
+ err))
+ return FALSE;
+ break;
+ }
+ break;
+ }
+
+ if (compress)
+ {
+ /* exprs[i-1] first operand (now result)
+ * exprs[i] operator
+ * exprs[i+1] second operand
+ * exprs[i+2] new operator
+ *
+ * we move new operator just after first operand
+ */
+ if ((i+2) < *n_exprs)
+ {
+ g_memmove (&exprs[i], &exprs[i+2],
+ sizeof (PosExpr) * (*n_exprs - i - 2));
+ }
+
+ *n_exprs -= 2;
+ }
+ else
+ {
+ /* Skip operator and next operand */
+ i += 2;
+ }
+ }
+
+ return TRUE;
+}
+
+/**
+ * There is a predefined set of variables which can appear in an expression.
+ * Here we take a token representing a variable, and return the current value
+ * of that variable in a particular environment.
+ * (The value is always an integer.)
+ *
+ * There are supposedly some circumstances in which this function can be
+ * called from outside Marco, in which case env->theme will be NULL, and
+ * therefore we can't use it to find out quark values, so we do the comparison
+ * using strcmp, which is slower.
+ *
+ * \param t The token representing a variable
+ * \param[out] result The value of that variable; not set if the token did
+ * not represent a known variable
+ * \param env The environment within which t should be evaluated
+ * \param[out] err set to the problem if there was a problem
+ *
+ * \return true if we found the variable asked for, false if we didn't
+ *
+ * \bug shouldn't t be const?
+ * \bug we should perhaps consider some sort of lookup arrangement into an
+ * array; also, the duplication of code is unlovely; perhaps using glib
+ * string hashes instead of quarks would fix both problems?
+ * \ingroup parser
+ */
+static gboolean
+pos_eval_get_variable (PosToken *t,
+ int *result,
+ const MetaPositionExprEnv *env,
+ GError **err)
+{
+ if (env->theme)
+ {
+ if (t->d.v.name_quark == env->theme->quark_width)
+ *result = env->rect.width;
+ else if (t->d.v.name_quark == env->theme->quark_height)
+ *result = env->rect.height;
+ else if (env->object_width >= 0 &&
+ t->d.v.name_quark == env->theme->quark_object_width)
+ *result = env->object_width;
+ else if (env->object_height >= 0 &&
+ t->d.v.name_quark == env->theme->quark_object_height)
+ *result = env->object_height;
+ else if (t->d.v.name_quark == env->theme->quark_left_width)
+ *result = env->left_width;
+ else if (t->d.v.name_quark == env->theme->quark_right_width)
+ *result = env->right_width;
+ else if (t->d.v.name_quark == env->theme->quark_top_height)
+ *result = env->top_height;
+ else if (t->d.v.name_quark == env->theme->quark_bottom_height)
+ *result = env->bottom_height;
+ else if (t->d.v.name_quark == env->theme->quark_mini_icon_width)
+ *result = env->mini_icon_width;
+ else if (t->d.v.name_quark == env->theme->quark_mini_icon_height)
+ *result = env->mini_icon_height;
+ else if (t->d.v.name_quark == env->theme->quark_icon_width)
+ *result = env->icon_width;
+ else if (t->d.v.name_quark == env->theme->quark_icon_height)
+ *result = env->icon_height;
+ else if (t->d.v.name_quark == env->theme->quark_title_width)
+ *result = env->title_width;
+ else if (t->d.v.name_quark == env->theme->quark_title_height)
+ *result = env->title_height;
+ else
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_UNKNOWN_VARIABLE,
+ _("Coordinate expression had unknown variable or constant \"%s\""),
+ t->d.v.name);
+ return FALSE;
+ }
+ }
+ else
+ {
+ if (strcmp (t->d.v.name, "width") == 0)
+ *result = env->rect.width;
+ else if (strcmp (t->d.v.name, "height") == 0)
+ *result = env->rect.height;
+ else if (env->object_width >= 0 &&
+ strcmp (t->d.v.name, "object_width") == 0)
+ *result = env->object_width;
+ else if (env->object_height >= 0 &&
+ strcmp (t->d.v.name, "object_height") == 0)
+ *result = env->object_height;
+ else if (strcmp (t->d.v.name, "left_width") == 0)
+ *result = env->left_width;
+ else if (strcmp (t->d.v.name, "right_width") == 0)
+ *result = env->right_width;
+ else if (strcmp (t->d.v.name, "top_height") == 0)
+ *result = env->top_height;
+ else if (strcmp (t->d.v.name, "bottom_height") == 0)
+ *result = env->bottom_height;
+ else if (strcmp (t->d.v.name, "mini_icon_width") == 0)
+ *result = env->mini_icon_width;
+ else if (strcmp (t->d.v.name, "mini_icon_height") == 0)
+ *result = env->mini_icon_height;
+ else if (strcmp (t->d.v.name, "icon_width") == 0)
+ *result = env->icon_width;
+ else if (strcmp (t->d.v.name, "icon_height") == 0)
+ *result = env->icon_height;
+ else if (strcmp (t->d.v.name, "title_width") == 0)
+ *result = env->title_width;
+ else if (strcmp (t->d.v.name, "title_height") == 0)
+ *result = env->title_height;
+ else
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_UNKNOWN_VARIABLE,
+ _("Coordinate expression had unknown variable or constant \"%s\""),
+ t->d.v.name);
+ return FALSE;
+ }
+ }
+
+ return TRUE;
+}
+
+/**
+ * Evaluates a sequence of tokens within a particular environment context,
+ * and returns the current value. May recur if parantheses are found.
+ *
+ * \param tokens A list of tokens to evaluate.
+ * \param n_tokens How many tokens are in the list.
+ * \param env The environment context in which to evaluate the expression.
+ * \param[out] result The current value of the expression
+ *
+ * \bug Yes, we really do reparse the expression every time it's evaluated.
+ * We should keep the parse tree around all the time and just
+ * run the new values through it.
+ * \ingroup parser
+ */
+static gboolean
+pos_eval_helper (PosToken *tokens,
+ int n_tokens,
+ const MetaPositionExprEnv *env,
+ PosExpr *result,
+ GError **err)
+{
+ /* Lazy-ass hardcoded limit on number of terms in expression */
+#define MAX_EXPRS 32
+ int paren_level;
+ int first_paren;
+ int i;
+ PosExpr exprs[MAX_EXPRS];
+ int n_exprs;
+ int precedence;
+
+ /* Our first goal is to get a list of PosExpr, essentially
+ * substituting variables and handling parentheses.
+ */
+
+ first_paren = 0;
+ paren_level = 0;
+ n_exprs = 0;
+ for (i = 0; i < n_tokens; i++)
+ {
+ PosToken *t = &tokens[i];
+
+ if (n_exprs >= MAX_EXPRS)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Coordinate expression parser overflowed its buffer."));
+ return FALSE;
+ }
+
+ if (paren_level == 0)
+ {
+ switch (t->type)
+ {
+ case POS_TOKEN_INT:
+ exprs[n_exprs].type = POS_EXPR_INT;
+ exprs[n_exprs].d.int_val = t->d.i.val;
+ ++n_exprs;
+ break;
+
+ case POS_TOKEN_DOUBLE:
+ exprs[n_exprs].type = POS_EXPR_DOUBLE;
+ exprs[n_exprs].d.double_val = t->d.d.val;
+ ++n_exprs;
+ break;
+
+ case POS_TOKEN_OPEN_PAREN:
+ ++paren_level;
+ if (paren_level == 1)
+ first_paren = i;
+ break;
+
+ case POS_TOKEN_CLOSE_PAREN:
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_BAD_PARENS,
+ _("Coordinate expression had a close parenthesis with no open parenthesis"));
+ return FALSE;
+
+ case POS_TOKEN_VARIABLE:
+ exprs[n_exprs].type = POS_EXPR_INT;
+
+ /* FIXME we should just dump all this crap
+ * in a hash, maybe keep width/height out
+ * for optimization purposes
+ */
+ if (!pos_eval_get_variable (t, &exprs[n_exprs].d.int_val, env, err))
+ return FALSE;
+
+ ++n_exprs;
+ break;
+
+ case POS_TOKEN_OPERATOR:
+ exprs[n_exprs].type = POS_EXPR_OPERATOR;
+ exprs[n_exprs].d.operator = t->d.o.op;
+ ++n_exprs;
+ break;
+ }
+ }
+ else
+ {
+ g_assert (paren_level > 0);
+
+ switch (t->type)
+ {
+ case POS_TOKEN_INT:
+ case POS_TOKEN_DOUBLE:
+ case POS_TOKEN_VARIABLE:
+ case POS_TOKEN_OPERATOR:
+ break;
+
+ case POS_TOKEN_OPEN_PAREN:
+ ++paren_level;
+ break;
+
+ case POS_TOKEN_CLOSE_PAREN:
+ if (paren_level == 1)
+ {
+ /* We closed a toplevel paren group, so recurse */
+ if (!pos_eval_helper (&tokens[first_paren+1],
+ i - first_paren - 1,
+ env,
+ &exprs[n_exprs],
+ err))
+ return FALSE;
+
+ ++n_exprs;
+ }
+
+ --paren_level;
+ break;
+
+ }
+ }
+ }
+
+ if (paren_level > 0)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_BAD_PARENS,
+ _("Coordinate expression had an open parenthesis with no close parenthesis"));
+ return FALSE;
+ }
+
+ /* Now we have no parens and no vars; so we just do all the multiplies
+ * and divides, then all the add and subtract.
+ */
+ if (n_exprs == 0)
+ {
+ g_set_error (err, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Coordinate expression doesn't seem to have any operators or operands"));
+ return FALSE;
+ }
+
+ /* precedence 1 ops */
+ precedence = 2;
+ while (precedence >= 0)
+ {
+ if (!do_operations (exprs, &n_exprs, precedence, err))
+ return FALSE;
+ --precedence;
+ }
+
+ g_assert (n_exprs == 1);
+
+ *result = *exprs;
+
+ return TRUE;
+}
+
+/*
+ * expr = int | double | expr * expr | expr / expr |
+ * expr + expr | expr - expr | (expr)
+ *
+ * so very not worth fooling with bison, yet so very painful by hand.
+ */
+/**
+ * Evaluates an expression.
+ *
+ * \param spec The expression to evaluate.
+ * \param env The environment context to evaluate the expression in.
+ * \param[out] val_p The integer value of the expression; if the expression
+ * is of type float, this will be rounded. If we return
+ * FALSE because the expression is invalid, this will be
+ * zero.
+ * \param[out] err The error, if anything went wrong.
+ *
+ * \return True if we evaluated the expression successfully; false otherwise.
+ *
+ * \bug Shouldn't spec be const?
+ * \ingroup parser
+ */
+static gboolean
+pos_eval (MetaDrawSpec *spec,
+ const MetaPositionExprEnv *env,
+ int *val_p,
+ GError **err)
+{
+ PosExpr expr;
+
+ *val_p = 0;
+
+ if (pos_eval_helper (spec->tokens, spec->n_tokens, env, &expr, err))
+ {
+ switch (expr.type)
+ {
+ case POS_EXPR_INT:
+ *val_p = expr.d.int_val;
+ break;
+ case POS_EXPR_DOUBLE:
+ *val_p = expr.d.double_val;
+ break;
+ case POS_EXPR_OPERATOR:
+ g_assert_not_reached ();
+ break;
+ }
+ return TRUE;
+ }
+ else
+ {
+ return FALSE;
+ }
+}
+
+/* We always return both X and Y, but only one will be meaningful in
+ * most contexts.
+ */
+
+gboolean
+meta_parse_position_expression (MetaDrawSpec *spec,
+ const MetaPositionExprEnv *env,
+ int *x_return,
+ int *y_return,
+ GError **err)
+{
+ /* All positions are in a coordinate system with x, y at the origin.
+ * The expression can have -, +, *, / as operators, floating point
+ * or integer constants, and the variables "width" and "height" and
+ * optionally "object_width" and object_height". Negative numbers
+ * aren't allowed.
+ */
+ int val;
+
+ if (spec->constant)
+ val = spec->value;
+ else
+ {
+ if (pos_eval (spec, env, &spec->value, err) == FALSE)
+ {
+ g_assert (err == NULL || *err != NULL);
+ return FALSE;
+ }
+
+ val = spec->value;
+ }
+
+ if (x_return)
+ *x_return = env->rect.x + val;
+ if (y_return)
+ *y_return = env->rect.y + val;
+
+ return TRUE;
+}
+
+
+gboolean
+meta_parse_size_expression (MetaDrawSpec *spec,
+ const MetaPositionExprEnv *env,
+ int *val_return,
+ GError **err)
+{
+ int val;
+
+ if (spec->constant)
+ val = spec->value;
+ else
+ {
+ if (pos_eval (spec, env, &spec->value, err) == FALSE)
+ {
+ g_assert (err == NULL || *err != NULL);
+ return FALSE;
+ }
+
+ val = spec->value;
+ }
+
+ if (val_return)
+ *val_return = MAX (val, 1); /* require that sizes be at least 1x1 */
+
+ return TRUE;
+}
+
+/* To do this we tokenize, replace variable tokens
+ * that are constants, then reassemble. The purpose
+ * here is to optimize expressions so we don't do hash
+ * lookups to eval them. Obviously it's a tradeoff that
+ * slows down theme load times.
+ */
+gboolean
+meta_theme_replace_constants (MetaTheme *theme,
+ PosToken *tokens,
+ int n_tokens,
+ GError **err)
+{
+ int i;
+ double dval;
+ int ival;
+ gboolean is_constant = TRUE;
+
+ /* Loop through tokenized string looking for variables to replace */
+ for (i = 0; i < n_tokens; i++)
+ {
+ PosToken *t = &tokens[i];
+
+ if (t->type == POS_TOKEN_VARIABLE)
+ {
+ if (meta_theme_lookup_int_constant (theme, t->d.v.name, &ival))
+ {
+ g_free (t->d.v.name);
+ t->type = POS_TOKEN_INT;
+ t->d.i.val = ival;
+ }
+ else if (meta_theme_lookup_float_constant (theme, t->d.v.name, &dval))
+ {
+ g_free (t->d.v.name);
+ t->type = POS_TOKEN_DOUBLE;
+ t->d.d.val = dval;
+ }
+ else
+ {
+ /* If we've found a variable that cannot be replaced then the
+ expression is not a constant expression and we want to
+ replace it with a GQuark */
+
+ t->d.v.name_quark = g_quark_from_string (t->d.v.name);
+ is_constant = FALSE;
+ }
+ }
+ }
+
+ return is_constant;
+}
+
+static int
+parse_x_position_unchecked (MetaDrawSpec *spec,
+ const MetaPositionExprEnv *env)
+{
+ int retval;
+ GError *error;
+
+ retval = 0;
+ error = NULL;
+ if (!meta_parse_position_expression (spec, env, &retval, NULL, &error))
+ {
+ meta_warning (_("Theme contained an expression that resulted in an error: %s\n"),
+ error->message);
+
+ g_error_free (error);
+ }
+
+ return retval;
+}
+
+static int
+parse_y_position_unchecked (MetaDrawSpec *spec,
+ const MetaPositionExprEnv *env)
+{
+ int retval;
+ GError *error;
+
+ retval = 0;
+ error = NULL;
+ if (!meta_parse_position_expression (spec, env, NULL, &retval, &error))
+ {
+ meta_warning (_("Theme contained an expression that resulted in an error: %s\n"),
+ error->message);
+
+ g_error_free (error);
+ }
+
+ return retval;
+}
+
+static int
+parse_size_unchecked (MetaDrawSpec *spec,
+ MetaPositionExprEnv *env)
+{
+ int retval;
+ GError *error;
+
+ retval = 0;
+ error = NULL;
+ if (!meta_parse_size_expression (spec, env, &retval, &error))
+ {
+ meta_warning (_("Theme contained an expression that resulted in an error: %s\n"),
+ error->message);
+
+ g_error_free (error);
+ }
+
+ return retval;
+}
+
+void
+meta_draw_spec_free (MetaDrawSpec *spec)
+{
+ if (!spec) return;
+ free_tokens (spec->tokens, spec->n_tokens);
+ g_slice_free (MetaDrawSpec, spec);
+}
+
+MetaDrawSpec *
+meta_draw_spec_new (MetaTheme *theme,
+ const char *expr,
+ GError **error)
+{
+ MetaDrawSpec *spec;
+
+ spec = g_slice_new0 (MetaDrawSpec);
+
+ pos_tokenize (expr, &spec->tokens, &spec->n_tokens, NULL);
+
+ spec->constant = meta_theme_replace_constants (theme, spec->tokens,
+ spec->n_tokens, NULL);
+ if (spec->constant)
+ {
+ gboolean result;
+
+ result = pos_eval (spec, NULL, &spec->value, error);
+ if (result == FALSE)
+ {
+ meta_draw_spec_free (spec);
+ return NULL;
+ }
+ }
+
+ return spec;
+}
+
+MetaDrawOp*
+meta_draw_op_new (MetaDrawType type)
+{
+ MetaDrawOp *op;
+ MetaDrawOp dummy;
+ int size;
+
+ size = G_STRUCT_OFFSET (MetaDrawOp, data);
+
+ switch (type)
+ {
+ case META_DRAW_LINE:
+ size += sizeof (dummy.data.line);
+ break;
+
+ case META_DRAW_RECTANGLE:
+ size += sizeof (dummy.data.rectangle);
+ break;
+
+ case META_DRAW_ARC:
+ size += sizeof (dummy.data.arc);
+ break;
+
+ case META_DRAW_CLIP:
+ size += sizeof (dummy.data.clip);
+ break;
+
+ case META_DRAW_TINT:
+ size += sizeof (dummy.data.tint);
+ break;
+
+ case META_DRAW_GRADIENT:
+ size += sizeof (dummy.data.gradient);
+ break;
+
+ case META_DRAW_IMAGE:
+ size += sizeof (dummy.data.image);
+ break;
+
+ case META_DRAW_GTK_ARROW:
+ size += sizeof (dummy.data.gtk_arrow);
+ break;
+
+ case META_DRAW_GTK_BOX:
+ size += sizeof (dummy.data.gtk_box);
+ break;
+
+ case META_DRAW_GTK_VLINE:
+ size += sizeof (dummy.data.gtk_vline);
+ break;
+
+ case META_DRAW_ICON:
+ size += sizeof (dummy.data.icon);
+ break;
+
+ case META_DRAW_TITLE:
+ size += sizeof (dummy.data.title);
+ break;
+ case META_DRAW_OP_LIST:
+ size += sizeof (dummy.data.op_list);
+ break;
+ case META_DRAW_TILE:
+ size += sizeof (dummy.data.tile);
+ break;
+ }
+
+ op = g_malloc0 (size);
+
+ op->type = type;
+
+ return op;
+}
+
+void
+meta_draw_op_free (MetaDrawOp *op)
+{
+ g_return_if_fail (op != NULL);
+
+ switch (op->type)
+ {
+ case META_DRAW_LINE:
+ if (op->data.line.color_spec)
+ meta_color_spec_free (op->data.line.color_spec);
+
+ meta_draw_spec_free (op->data.line.x1);
+ meta_draw_spec_free (op->data.line.y1);
+ meta_draw_spec_free (op->data.line.x2);
+ meta_draw_spec_free (op->data.line.y2);
+ break;
+
+ case META_DRAW_RECTANGLE:
+ if (op->data.rectangle.color_spec)
+ g_free (op->data.rectangle.color_spec);
+
+ meta_draw_spec_free (op->data.rectangle.x);
+ meta_draw_spec_free (op->data.rectangle.y);
+ meta_draw_spec_free (op->data.rectangle.width);
+ meta_draw_spec_free (op->data.rectangle.height);
+ break;
+
+ case META_DRAW_ARC:
+ if (op->data.arc.color_spec)
+ g_free (op->data.arc.color_spec);
+
+ meta_draw_spec_free (op->data.arc.x);
+ meta_draw_spec_free (op->data.arc.y);
+ meta_draw_spec_free (op->data.arc.width);
+ meta_draw_spec_free (op->data.arc.height);
+ break;
+
+ case META_DRAW_CLIP:
+ meta_draw_spec_free (op->data.clip.x);
+ meta_draw_spec_free (op->data.clip.y);
+ meta_draw_spec_free (op->data.clip.width);
+ meta_draw_spec_free (op->data.clip.height);
+ break;
+
+ case META_DRAW_TINT:
+ if (op->data.tint.color_spec)
+ meta_color_spec_free (op->data.tint.color_spec);
+
+ if (op->data.tint.alpha_spec)
+ meta_alpha_gradient_spec_free (op->data.tint.alpha_spec);
+
+ meta_draw_spec_free (op->data.tint.x);
+ meta_draw_spec_free (op->data.tint.y);
+ meta_draw_spec_free (op->data.tint.width);
+ meta_draw_spec_free (op->data.tint.height);
+ break;
+
+ case META_DRAW_GRADIENT:
+ if (op->data.gradient.gradient_spec)
+ meta_gradient_spec_free (op->data.gradient.gradient_spec);
+
+ if (op->data.gradient.alpha_spec)
+ meta_alpha_gradient_spec_free (op->data.gradient.alpha_spec);
+
+ meta_draw_spec_free (op->data.gradient.x);
+ meta_draw_spec_free (op->data.gradient.y);
+ meta_draw_spec_free (op->data.gradient.width);
+ meta_draw_spec_free (op->data.gradient.height);
+ break;
+
+ case META_DRAW_IMAGE:
+ if (op->data.image.alpha_spec)
+ meta_alpha_gradient_spec_free (op->data.image.alpha_spec);
+
+ if (op->data.image.pixbuf)
+ g_object_unref (G_OBJECT (op->data.image.pixbuf));
+
+ if (op->data.image.colorize_spec)
+ meta_color_spec_free (op->data.image.colorize_spec);
+
+ if (op->data.image.colorize_cache_pixbuf)
+ g_object_unref (G_OBJECT (op->data.image.colorize_cache_pixbuf));
+
+ meta_draw_spec_free (op->data.image.x);
+ meta_draw_spec_free (op->data.image.y);
+ meta_draw_spec_free (op->data.image.width);
+ meta_draw_spec_free (op->data.image.height);
+ break;
+
+ case META_DRAW_GTK_ARROW:
+ meta_draw_spec_free (op->data.gtk_arrow.x);
+ meta_draw_spec_free (op->data.gtk_arrow.y);
+ meta_draw_spec_free (op->data.gtk_arrow.width);
+ meta_draw_spec_free (op->data.gtk_arrow.height);
+ break;
+
+ case META_DRAW_GTK_BOX:
+ meta_draw_spec_free (op->data.gtk_box.x);
+ meta_draw_spec_free (op->data.gtk_box.y);
+ meta_draw_spec_free (op->data.gtk_box.width);
+ meta_draw_spec_free (op->data.gtk_box.height);
+ break;
+
+ case META_DRAW_GTK_VLINE:
+ meta_draw_spec_free (op->data.gtk_vline.x);
+ meta_draw_spec_free (op->data.gtk_vline.y1);
+ meta_draw_spec_free (op->data.gtk_vline.y2);
+ break;
+
+ case META_DRAW_ICON:
+ if (op->data.icon.alpha_spec)
+ meta_alpha_gradient_spec_free (op->data.icon.alpha_spec);
+
+ meta_draw_spec_free (op->data.icon.x);
+ meta_draw_spec_free (op->data.icon.y);
+ meta_draw_spec_free (op->data.icon.width);
+ meta_draw_spec_free (op->data.icon.height);
+ break;
+
+ case META_DRAW_TITLE:
+ if (op->data.title.color_spec)
+ meta_color_spec_free (op->data.title.color_spec);
+
+ meta_draw_spec_free (op->data.title.x);
+ meta_draw_spec_free (op->data.title.y);
+ break;
+
+ case META_DRAW_OP_LIST:
+ if (op->data.op_list.op_list)
+ meta_draw_op_list_unref (op->data.op_list.op_list);
+
+ meta_draw_spec_free (op->data.op_list.x);
+ meta_draw_spec_free (op->data.op_list.y);
+ meta_draw_spec_free (op->data.op_list.width);
+ meta_draw_spec_free (op->data.op_list.height);
+ break;
+
+ case META_DRAW_TILE:
+ if (op->data.tile.op_list)
+ meta_draw_op_list_unref (op->data.tile.op_list);
+
+ meta_draw_spec_free (op->data.tile.x);
+ meta_draw_spec_free (op->data.tile.y);
+ meta_draw_spec_free (op->data.tile.width);
+ meta_draw_spec_free (op->data.tile.height);
+ meta_draw_spec_free (op->data.tile.tile_xoffset);
+ meta_draw_spec_free (op->data.tile.tile_yoffset);
+ meta_draw_spec_free (op->data.tile.tile_width);
+ meta_draw_spec_free (op->data.tile.tile_height);
+ break;
+ }
+
+ g_free (op);
+}
+
+static GdkPixbuf*
+apply_alpha (GdkPixbuf *pixbuf,
+ MetaAlphaGradientSpec *spec,
+ gboolean force_copy)
+{
+ GdkPixbuf *new_pixbuf;
+ gboolean needs_alpha;
+
+ g_return_val_if_fail (GDK_IS_PIXBUF (pixbuf), NULL);
+
+ needs_alpha = spec && (spec->n_alphas > 1 ||
+ spec->alphas[0] != 0xff);
+
+ if (!needs_alpha)
+ return pixbuf;
+
+ if (!gdk_pixbuf_get_has_alpha (pixbuf))
+ {
+ new_pixbuf = gdk_pixbuf_add_alpha (pixbuf, FALSE, 0, 0, 0);
+ g_object_unref (G_OBJECT (pixbuf));
+ pixbuf = new_pixbuf;
+ }
+ else if (force_copy)
+ {
+ new_pixbuf = gdk_pixbuf_copy (pixbuf);
+ g_object_unref (G_OBJECT (pixbuf));
+ pixbuf = new_pixbuf;
+ }
+
+ g_assert (gdk_pixbuf_get_has_alpha (pixbuf));
+
+ meta_gradient_add_alpha (pixbuf, spec->alphas, spec->n_alphas, spec->type);
+
+ return pixbuf;
+}
+
+static GdkPixbuf*
+pixbuf_tile (GdkPixbuf *tile,
+ int width,
+ int height)
+{
+ GdkPixbuf *pixbuf;
+ int tile_width;
+ int tile_height;
+ int i, j;
+
+ tile_width = gdk_pixbuf_get_width (tile);
+ tile_height = gdk_pixbuf_get_height (tile);
+
+ pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
+ gdk_pixbuf_get_has_alpha (tile),
+ 8, width, height);
+
+ i = 0;
+ while (i < width)
+ {
+ j = 0;
+ while (j < height)
+ {
+ int w, h;
+
+ w = MIN (tile_width, width - i);
+ h = MIN (tile_height, height - j);
+
+ gdk_pixbuf_copy_area (tile,
+ 0, 0,
+ w, h,
+ pixbuf,
+ i, j);
+
+ j += tile_height;
+ }
+
+ i += tile_width;
+ }
+
+ return pixbuf;
+}
+
+static GdkPixbuf *
+replicate_rows (GdkPixbuf *src,
+ int src_x,
+ int src_y,
+ int width,
+ int height)
+{
+ unsigned int n_channels = gdk_pixbuf_get_n_channels (src);
+ unsigned int src_rowstride = gdk_pixbuf_get_rowstride (src);
+ unsigned char *pixels = (gdk_pixbuf_get_pixels (src) + src_y * src_rowstride + src_x
+ * n_channels);
+ unsigned char *dest_pixels;
+ GdkPixbuf *result;
+ unsigned int dest_rowstride;
+ int i;
+
+ result = gdk_pixbuf_new (GDK_COLORSPACE_RGB, n_channels == 4, 8,
+ width, height);
+ dest_rowstride = gdk_pixbuf_get_rowstride (result);
+ dest_pixels = gdk_pixbuf_get_pixels (result);
+
+ for (i = 0; i < height; i++)
+ memcpy (dest_pixels + dest_rowstride * i, pixels, n_channels * width);
+
+ return result;
+}
+
+static GdkPixbuf *
+replicate_cols (GdkPixbuf *src,
+ int src_x,
+ int src_y,
+ int width,
+ int height)
+{
+ unsigned int n_channels = gdk_pixbuf_get_n_channels (src);
+ unsigned int src_rowstride = gdk_pixbuf_get_rowstride (src);
+ unsigned char *pixels = (gdk_pixbuf_get_pixels (src) + src_y * src_rowstride + src_x
+ * n_channels);
+ unsigned char *dest_pixels;
+ GdkPixbuf *result;
+ unsigned int dest_rowstride;
+ int i, j;
+
+ result = gdk_pixbuf_new (GDK_COLORSPACE_RGB, n_channels == 4, 8,
+ width, height);
+ dest_rowstride = gdk_pixbuf_get_rowstride (result);
+ dest_pixels = gdk_pixbuf_get_pixels (result);
+
+ for (i = 0; i < height; i++)
+ {
+ unsigned char *p = dest_pixels + dest_rowstride * i;
+ unsigned char *q = pixels + src_rowstride * i;
+
+ unsigned char r = *(q++);
+ unsigned char g = *(q++);
+ unsigned char b = *(q++);
+
+ if (n_channels == 4)
+ {
+ unsigned char a;
+
+ a = *(q++);
+
+ for (j = 0; j < width; j++)
+ {
+ *(p++) = r;
+ *(p++) = g;
+ *(p++) = b;
+ *(p++) = a;
+ }
+ }
+ else
+ {
+ for (j = 0; j < width; j++)
+ {
+ *(p++) = r;
+ *(p++) = g;
+ *(p++) = b;
+ }
+ }
+ }
+
+ return result;
+}
+
+static GdkPixbuf*
+scale_and_alpha_pixbuf (GdkPixbuf *src,
+ MetaAlphaGradientSpec *alpha_spec,
+ MetaImageFillType fill_type,
+ int width,
+ int height,
+ gboolean vertical_stripes,
+ gboolean horizontal_stripes)
+{
+ GdkPixbuf *pixbuf;
+ GdkPixbuf *temp_pixbuf;
+
+ pixbuf = NULL;
+
+ pixbuf = src;
+
+ if (gdk_pixbuf_get_width (pixbuf) == width &&
+ gdk_pixbuf_get_height (pixbuf) == height)
+ {
+ g_object_ref (G_OBJECT (pixbuf));
+ }
+ else
+ {
+ if (fill_type == META_IMAGE_FILL_TILE)
+ {
+ pixbuf = pixbuf_tile (pixbuf, width, height);
+ }
+ else
+ {
+ int src_h, src_w, dest_h, dest_w;
+ src_h = gdk_pixbuf_get_height (src);
+ src_w = gdk_pixbuf_get_width (src);
+
+ /* prefer to replicate_cols if possible, as that
+ * is faster (no memory reads)
+ */
+ if (horizontal_stripes)
+ {
+ dest_w = gdk_pixbuf_get_width (src);
+ dest_h = height;
+ }
+ else if (vertical_stripes)
+ {
+ dest_w = width;
+ dest_h = gdk_pixbuf_get_height (src);
+ }
+
+ else
+ {
+ dest_w = width;
+ dest_h = height;
+ }
+
+ if (dest_w == src_w && dest_h == src_h)
+ {
+ temp_pixbuf = src;
+ g_object_ref (G_OBJECT (temp_pixbuf));
+ }
+ else
+ {
+ temp_pixbuf = gdk_pixbuf_scale_simple (src,
+ dest_w, dest_h,
+ GDK_INTERP_BILINEAR);
+ }
+
+ /* prefer to replicate_cols if possible, as that
+ * is faster (no memory reads)
+ */
+ if (horizontal_stripes)
+ {
+ pixbuf = replicate_cols (temp_pixbuf, 0, 0, width, height);
+ g_object_unref (G_OBJECT (temp_pixbuf));
+ }
+ else if (vertical_stripes)
+ {
+ pixbuf = replicate_rows (temp_pixbuf, 0, 0, width, height);
+ g_object_unref (G_OBJECT (temp_pixbuf));
+ }
+ else
+ {
+ pixbuf = temp_pixbuf;
+ }
+ }
+ }
+
+ if (pixbuf)
+ pixbuf = apply_alpha (pixbuf, alpha_spec, pixbuf == src);
+
+ return pixbuf;
+}
+
+static GdkPixbuf*
+draw_op_as_pixbuf (const MetaDrawOp *op,
+ GtkWidget *widget,
+ const MetaDrawInfo *info,
+ int width,
+ int height)
+{
+ /* Try to get the op as a pixbuf, assuming w/h in the op
+ * matches the width/height passed in. return NULL
+ * if the op can't be converted to an equivalent pixbuf.
+ */
+ GdkPixbuf *pixbuf;
+
+ pixbuf = NULL;
+
+ switch (op->type)
+ {
+ case META_DRAW_LINE:
+ break;
+
+ case META_DRAW_RECTANGLE:
+ if (op->data.rectangle.filled)
+ {
+ GdkColor color;
+
+ meta_color_spec_render (op->data.rectangle.color_spec,
+ widget,
+ &color);
+
+ pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
+ FALSE,
+ 8, width, height);
+
+ gdk_pixbuf_fill (pixbuf, GDK_COLOR_RGBA (color));
+ }
+ break;
+
+ case META_DRAW_ARC:
+ break;
+
+ case META_DRAW_CLIP:
+ break;
+
+ case META_DRAW_TINT:
+ {
+ GdkColor color;
+ guint32 rgba;
+ gboolean has_alpha;
+
+ meta_color_spec_render (op->data.rectangle.color_spec,
+ widget,
+ &color);
+
+ has_alpha =
+ op->data.tint.alpha_spec &&
+ (op->data.tint.alpha_spec->n_alphas > 1 ||
+ op->data.tint.alpha_spec->alphas[0] != 0xff);
+
+ pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
+ has_alpha,
+ 8, width, height);
+
+ if (!has_alpha)
+ {
+ rgba = GDK_COLOR_RGBA (color);
+
+ gdk_pixbuf_fill (pixbuf, rgba);
+ }
+ else if (op->data.tint.alpha_spec->n_alphas == 1)
+ {
+ rgba = GDK_COLOR_RGBA (color);
+ rgba &= ~0xff;
+ rgba |= op->data.tint.alpha_spec->alphas[0];
+
+ gdk_pixbuf_fill (pixbuf, rgba);
+ }
+ else
+ {
+ rgba = GDK_COLOR_RGBA (color);
+
+ gdk_pixbuf_fill (pixbuf, rgba);
+
+ meta_gradient_add_alpha (pixbuf,
+ op->data.tint.alpha_spec->alphas,
+ op->data.tint.alpha_spec->n_alphas,
+ op->data.tint.alpha_spec->type);
+ }
+ }
+ break;
+
+ case META_DRAW_GRADIENT:
+ {
+ pixbuf = meta_gradient_spec_render (op->data.gradient.gradient_spec,
+ widget, width, height);
+
+ pixbuf = apply_alpha (pixbuf,
+ op->data.gradient.alpha_spec,
+ FALSE);
+ }
+ break;
+
+
+ case META_DRAW_IMAGE:
+ {
+ if (op->data.image.colorize_spec)
+ {
+ GdkColor color;
+
+ meta_color_spec_render (op->data.image.colorize_spec,
+ widget, &color);
+
+ if (op->data.image.colorize_cache_pixbuf == NULL ||
+ op->data.image.colorize_cache_pixel != GDK_COLOR_RGB (color))
+ {
+ if (op->data.image.colorize_cache_pixbuf)
+ g_object_unref (G_OBJECT (op->data.image.colorize_cache_pixbuf));
+
+ /* const cast here */
+ ((MetaDrawOp*)op)->data.image.colorize_cache_pixbuf =
+ colorize_pixbuf (op->data.image.pixbuf,
+ &color);
+ ((MetaDrawOp*)op)->data.image.colorize_cache_pixel =
+ GDK_COLOR_RGB (color);
+ }
+
+ if (op->data.image.colorize_cache_pixbuf)
+ {
+ pixbuf = scale_and_alpha_pixbuf (op->data.image.colorize_cache_pixbuf,
+ op->data.image.alpha_spec,
+ op->data.image.fill_type,
+ width, height,
+ op->data.image.vertical_stripes,
+ op->data.image.horizontal_stripes);
+ }
+ }
+ else
+ {
+ pixbuf = scale_and_alpha_pixbuf (op->data.image.pixbuf,
+ op->data.image.alpha_spec,
+ op->data.image.fill_type,
+ width, height,
+ op->data.image.vertical_stripes,
+ op->data.image.horizontal_stripes);
+ }
+ break;
+ }
+
+ case META_DRAW_GTK_ARROW:
+ case META_DRAW_GTK_BOX:
+ case META_DRAW_GTK_VLINE:
+ break;
+
+ case META_DRAW_ICON:
+ if (info->mini_icon &&
+ width <= gdk_pixbuf_get_width (info->mini_icon) &&
+ height <= gdk_pixbuf_get_height (info->mini_icon))
+ pixbuf = scale_and_alpha_pixbuf (info->mini_icon,
+ op->data.icon.alpha_spec,
+ op->data.icon.fill_type,
+ width, height,
+ FALSE, FALSE);
+ else if (info->icon)
+ pixbuf = scale_and_alpha_pixbuf (info->icon,
+ op->data.icon.alpha_spec,
+ op->data.icon.fill_type,
+ width, height,
+ FALSE, FALSE);
+ break;
+
+ case META_DRAW_TITLE:
+ break;
+
+ case META_DRAW_OP_LIST:
+ break;
+
+ case META_DRAW_TILE:
+ break;
+ }
+
+ return pixbuf;
+}
+
+static void
+fill_env (MetaPositionExprEnv *env,
+ const MetaDrawInfo *info,
+ MetaRectangle logical_region)
+{
+ /* FIXME this stuff could be raised into draw_op_list_draw() probably
+ */
+ env->rect = logical_region;
+ env->object_width = -1;
+ env->object_height = -1;
+ if (info->fgeom)
+ {
+ env->left_width = info->fgeom->left_width;
+ env->right_width = info->fgeom->right_width;
+ env->top_height = info->fgeom->top_height;
+ env->bottom_height = info->fgeom->bottom_height;
+ }
+ else
+ {
+ env->left_width = 0;
+ env->right_width = 0;
+ env->top_height = 0;
+ env->bottom_height = 0;
+ }
+
+ env->mini_icon_width = info->mini_icon ? gdk_pixbuf_get_width (info->mini_icon) : 0;
+ env->mini_icon_height = info->mini_icon ? gdk_pixbuf_get_height (info->mini_icon) : 0;
+ env->icon_width = info->icon ? gdk_pixbuf_get_width (info->icon) : 0;
+ env->icon_height = info->icon ? gdk_pixbuf_get_height (info->icon) : 0;
+
+ env->title_width = info->title_layout_width;
+ env->title_height = info->title_layout_height;
+ env->theme = meta_current_theme;
+}
+
+/* This code was originally rendering anti-aliased using X primitives, and
+ * now has been switched to draw anti-aliased using cairo. In general, the
+ * closest correspondence between X rendering and cairo rendering is given
+ * by offsetting the geometry by 0.5 pixels in both directions before rendering
+ * with cairo. This is because X samples at the upper left corner of the
+ * pixel while cairo averages over the entire pixel. However, in the cases
+ * where the X rendering was an exact rectangle with no "jaggies"
+ * we need to be a bit careful about applying the offset. We want to produce
+ * the exact same pixel-aligned rectangle, rather than a rectangle with
+ * fuzz around the edges.
+ */
+static void
+meta_draw_op_draw_with_env (const MetaDrawOp *op,
+ GtkStyle *style_gtk,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ const MetaDrawInfo *info,
+ MetaRectangle rect,
+ MetaPositionExprEnv *env)
+{
+ GdkColor color;
+ cairo_t *cr;
+
+ cr = gdk_cairo_create (drawable);
+
+ cairo_set_line_width (cr, 1.0);
+
+ if (clip)
+ {
+ gdk_cairo_rectangle (cr, clip);
+ cairo_clip (cr);
+ }
+
+ switch (op->type)
+ {
+ case META_DRAW_LINE:
+ {
+ int x1, x2, y1, y2;
+
+ meta_color_spec_render (op->data.line.color_spec, widget, &color);
+ gdk_cairo_set_source_color (cr, &color);
+
+ if (op->data.line.width > 0)
+ cairo_set_line_width (cr, op->data.line.width);
+
+ if (op->data.line.dash_on_length > 0 &&
+ op->data.line.dash_off_length > 0)
+ {
+ double dash_list[2];
+ dash_list[0] = op->data.line.dash_on_length;
+ dash_list[1] = op->data.line.dash_off_length;
+ cairo_set_dash (cr, dash_list, 2, 0);
+ }
+
+ x1 = parse_x_position_unchecked (op->data.line.x1, env);
+ y1 = parse_y_position_unchecked (op->data.line.y1, env);
+
+ if (!op->data.line.x2 &&
+ !op->data.line.y2 &&
+ op->data.line.width==0)
+ {
+ cairo_rectangle (cr, x1, y1, 1, 1);
+ cairo_fill (cr);
+ }
+ else
+ {
+ if (op->data.line.x2)
+ x2 = parse_x_position_unchecked (op->data.line.x2, env);
+ else
+ x2 = x1;
+
+ if (op->data.line.y2)
+ y2 = parse_y_position_unchecked (op->data.line.y2, env);
+ else
+ y2 = y1;
+
+ /* This is one of the cases where we are matching the exact
+ * pixel aligned rectangle produced by X.
+ */
+ if (y1 == y2 || x1 == x2)
+ {
+ double offset = (op->data.line.width == 0 ||
+ op->data.line.width % 2) ? .5 : 0;
+ /* X includes end points for lines of width 0 */
+ double line_extend = op->data.line.width == 0 ? 1. : 0.;
+
+ if (y1 == y2)
+ {
+ if (x2 < x1)
+ {
+ x1 ^= x2;
+ x2 ^= x1;
+ x1 ^= x2;
+ }
+ cairo_move_to (cr, x1, y1 + offset);
+ cairo_line_to (cr, x2 + line_extend, y2 + offset);
+ }
+ else
+ {
+ if (y2 < y1)
+ {
+ y1 ^= y2;
+ y2 ^= y1;
+ y1 ^= y2;
+ }
+ cairo_move_to (cr, x1 + offset, y1);
+ cairo_line_to (cr, x2 + offset, y2 + line_extend);
+ }
+ }
+ else
+ {
+ if (op->data.line.width <= 0)
+ {
+ cairo_set_line_cap (cr, CAIRO_LINE_CAP_SQUARE);
+ }
+ cairo_move_to (cr, x1 + .5, y1 + .5);
+ cairo_line_to (cr, x2 + .5, y2 + .5);
+ }
+ cairo_stroke (cr);
+ }
+ }
+ break;
+
+ case META_DRAW_RECTANGLE:
+ {
+ int rx, ry, rwidth, rheight;
+
+ meta_color_spec_render (op->data.rectangle.color_spec, widget, &color);
+ gdk_cairo_set_source_color (cr, &color);
+
+ rx = parse_x_position_unchecked (op->data.rectangle.x, env);
+ ry = parse_y_position_unchecked (op->data.rectangle.y, env);
+ rwidth = parse_size_unchecked (op->data.rectangle.width, env);
+ rheight = parse_size_unchecked (op->data.rectangle.height, env);
+
+ /* Filled and stroked rectangles are the other cases
+ * we pixel-align to X rasterization
+ */
+ if (op->data.rectangle.filled)
+ {
+ cairo_rectangle (cr, rx, ry, rwidth, rheight);
+ cairo_fill (cr);
+ }
+ else
+ {
+ cairo_rectangle (cr, rx + .5, ry + .5, rwidth, rheight);
+ cairo_stroke (cr);
+ }
+ }
+ break;
+
+ case META_DRAW_ARC:
+ {
+ int rx, ry, rwidth, rheight;
+ double start_angle, end_angle;
+ double center_x, center_y;
+
+ meta_color_spec_render (op->data.arc.color_spec, widget, &color);
+ gdk_cairo_set_source_color (cr, &color);
+
+ rx = parse_x_position_unchecked (op->data.arc.x, env);
+ ry = parse_y_position_unchecked (op->data.arc.y, env);
+ rwidth = parse_size_unchecked (op->data.arc.width, env);
+ rheight = parse_size_unchecked (op->data.arc.height, env);
+
+ start_angle = op->data.arc.start_angle * (M_PI / 180.)
+ - (.25 * M_PI); /* start at 12 instead of 3 oclock */
+ end_angle = start_angle + op->data.arc.extent_angle * (M_PI / 180.);
+ center_x = rx + (double)rwidth / 2. + .5;
+ center_y = ry + (double)rheight / 2. + .5;
+
+ cairo_save (cr);
+
+ cairo_translate (cr, center_x, center_y);
+ cairo_scale (cr, (double)rwidth / 2., (double)rheight / 2.);
+
+ if (op->data.arc.extent_angle >= 0)
+ cairo_arc (cr, 0, 0, 1, start_angle, end_angle);
+ else
+ cairo_arc_negative (cr, 0, 0, 1, start_angle, end_angle);
+
+ cairo_restore (cr);
+
+ if (op->data.arc.filled)
+ {
+ cairo_line_to (cr, center_x, center_y);
+ cairo_fill (cr);
+ }
+ else
+ cairo_stroke (cr);
+ }
+ break;
+
+ case META_DRAW_CLIP:
+ break;
+
+ case META_DRAW_TINT:
+ {
+ int rx, ry, rwidth, rheight;
+ gboolean needs_alpha;
+
+ needs_alpha = op->data.tint.alpha_spec &&
+ (op->data.tint.alpha_spec->n_alphas > 1 ||
+ op->data.tint.alpha_spec->alphas[0] != 0xff);
+
+ rx = parse_x_position_unchecked (op->data.tint.x, env);
+ ry = parse_y_position_unchecked (op->data.tint.y, env);
+ rwidth = parse_size_unchecked (op->data.tint.width, env);
+ rheight = parse_size_unchecked (op->data.tint.height, env);
+
+ if (!needs_alpha)
+ {
+ meta_color_spec_render (op->data.tint.color_spec, widget, &color);
+ gdk_cairo_set_source_color (cr, &color);
+
+ cairo_rectangle (cr, rx, ry, rwidth, rheight);
+ cairo_fill (cr);
+ }
+ else
+ {
+ GdkPixbuf *pixbuf;
+
+ pixbuf = draw_op_as_pixbuf (op, widget, info,
+ rwidth, rheight);
+
+ if (pixbuf)
+ {
+ gdk_cairo_set_source_pixbuf (cr, pixbuf, rx, ry);
+ cairo_paint (cr);
+
+ g_object_unref (G_OBJECT (pixbuf));
+ }
+ }
+ }
+ break;
+
+ case META_DRAW_GRADIENT:
+ {
+ int rx, ry, rwidth, rheight;
+ GdkPixbuf *pixbuf;
+
+ rx = parse_x_position_unchecked (op->data.gradient.x, env);
+ ry = parse_y_position_unchecked (op->data.gradient.y, env);
+ rwidth = parse_size_unchecked (op->data.gradient.width, env);
+ rheight = parse_size_unchecked (op->data.gradient.height, env);
+
+ pixbuf = draw_op_as_pixbuf (op, widget, info,
+ rwidth, rheight);
+
+ if (pixbuf)
+ {
+ gdk_cairo_set_source_pixbuf (cr, pixbuf, rx, ry);
+ cairo_paint (cr);
+
+ g_object_unref (G_OBJECT (pixbuf));
+ }
+ }
+ break;
+
+ case META_DRAW_IMAGE:
+ {
+ int rx, ry, rwidth, rheight;
+ GdkPixbuf *pixbuf;
+
+ if (op->data.image.pixbuf)
+ {
+ env->object_width = gdk_pixbuf_get_width (op->data.image.pixbuf);
+ env->object_height = gdk_pixbuf_get_height (op->data.image.pixbuf);
+ }
+
+ rwidth = parse_size_unchecked (op->data.image.width, env);
+ rheight = parse_size_unchecked (op->data.image.height, env);
+
+ pixbuf = draw_op_as_pixbuf (op, widget, info,
+ rwidth, rheight);
+
+ if (pixbuf)
+ {
+ rx = parse_x_position_unchecked (op->data.image.x, env);
+ ry = parse_y_position_unchecked (op->data.image.y, env);
+
+ gdk_cairo_set_source_pixbuf (cr, pixbuf, rx, ry);
+ cairo_paint (cr);
+
+ g_object_unref (G_OBJECT (pixbuf));
+ }
+ }
+ break;
+
+ case META_DRAW_GTK_ARROW:
+ {
+ int rx, ry, rwidth, rheight;
+
+ rx = parse_x_position_unchecked (op->data.gtk_arrow.x, env);
+ ry = parse_y_position_unchecked (op->data.gtk_arrow.y, env);
+ rwidth = parse_size_unchecked (op->data.gtk_arrow.width, env);
+ rheight = parse_size_unchecked (op->data.gtk_arrow.height, env);
+
+ gtk_paint_arrow (style_gtk,
+ drawable,
+ op->data.gtk_arrow.state,
+ op->data.gtk_arrow.shadow,
+ (GdkRectangle*) clip,
+ widget,
+ "marco",
+ op->data.gtk_arrow.arrow,
+ op->data.gtk_arrow.filled,
+ rx, ry, rwidth, rheight);
+ }
+ break;
+
+ case META_DRAW_GTK_BOX:
+ {
+ int rx, ry, rwidth, rheight;
+
+ rx = parse_x_position_unchecked (op->data.gtk_box.x, env);
+ ry = parse_y_position_unchecked (op->data.gtk_box.y, env);
+ rwidth = parse_size_unchecked (op->data.gtk_box.width, env);
+ rheight = parse_size_unchecked (op->data.gtk_box.height, env);
+
+ gtk_paint_box (style_gtk,
+ drawable,
+ op->data.gtk_box.state,
+ op->data.gtk_box.shadow,
+ (GdkRectangle*) clip,
+ widget,
+ "marco",
+ rx, ry, rwidth, rheight);
+ }
+ break;
+
+ case META_DRAW_GTK_VLINE:
+ {
+ int rx, ry1, ry2;
+
+ rx = parse_x_position_unchecked (op->data.gtk_vline.x, env);
+ ry1 = parse_y_position_unchecked (op->data.gtk_vline.y1, env);
+ ry2 = parse_y_position_unchecked (op->data.gtk_vline.y2, env);
+
+ gtk_paint_vline (style_gtk,
+ drawable,
+ op->data.gtk_vline.state,
+ (GdkRectangle*) clip,
+ widget,
+ "marco",
+ ry1, ry2, rx);
+ }
+ break;
+
+ case META_DRAW_ICON:
+ {
+ int rx, ry, rwidth, rheight;
+ GdkPixbuf *pixbuf;
+
+ rwidth = parse_size_unchecked (op->data.icon.width, env);
+ rheight = parse_size_unchecked (op->data.icon.height, env);
+
+ pixbuf = draw_op_as_pixbuf (op, widget, info,
+ rwidth, rheight);
+
+ if (pixbuf)
+ {
+ rx = parse_x_position_unchecked (op->data.icon.x, env);
+ ry = parse_y_position_unchecked (op->data.icon.y, env);
+
+ gdk_cairo_set_source_pixbuf (cr, pixbuf, rx, ry);
+ cairo_paint (cr);
+
+ g_object_unref (G_OBJECT (pixbuf));
+ }
+ }
+ break;
+
+ case META_DRAW_TITLE:
+ if (info->title_layout)
+ {
+ int rx, ry;
+
+ meta_color_spec_render (op->data.title.color_spec, widget, &color);
+ gdk_cairo_set_source_color (cr, &color);
+
+ rx = parse_x_position_unchecked (op->data.title.x, env);
+ ry = parse_y_position_unchecked (op->data.title.y, env);
+
+ cairo_move_to (cr, rx, ry);
+ pango_cairo_show_layout (cr, info->title_layout);
+ }
+ break;
+
+ case META_DRAW_OP_LIST:
+ {
+ MetaRectangle d_rect;
+
+ d_rect.x = parse_x_position_unchecked (op->data.op_list.x, env);
+ d_rect.y = parse_y_position_unchecked (op->data.op_list.y, env);
+ d_rect.width = parse_size_unchecked (op->data.op_list.width, env);
+ d_rect.height = parse_size_unchecked (op->data.op_list.height, env);
+
+ meta_draw_op_list_draw_with_style (op->data.op_list.op_list,
+ style_gtk, widget, drawable, clip, info,
+ d_rect);
+ }
+ break;
+
+ case META_DRAW_TILE:
+ {
+ int rx, ry, rwidth, rheight;
+ int tile_xoffset, tile_yoffset;
+ GdkRectangle new_clip;
+ MetaRectangle tile;
+
+ rx = parse_x_position_unchecked (op->data.tile.x, env);
+ ry = parse_y_position_unchecked (op->data.tile.y, env);
+ rwidth = parse_size_unchecked (op->data.tile.width, env);
+ rheight = parse_size_unchecked (op->data.tile.height, env);
+
+ new_clip.x = rx;
+ new_clip.y = ry;
+ new_clip.width = rwidth;
+ new_clip.height = rheight;
+
+ if (clip == NULL || gdk_rectangle_intersect ((GdkRectangle*)clip, &new_clip,
+ &new_clip))
+ {
+ tile_xoffset = parse_x_position_unchecked (op->data.tile.tile_xoffset, env);
+ tile_yoffset = parse_y_position_unchecked (op->data.tile.tile_yoffset, env);
+ /* tile offset should not include x/y */
+ tile_xoffset -= rect.x;
+ tile_yoffset -= rect.y;
+
+ tile.width = parse_size_unchecked (op->data.tile.tile_width, env);
+ tile.height = parse_size_unchecked (op->data.tile.tile_height, env);
+
+ tile.x = rx - tile_xoffset;
+
+ while (tile.x < (rx + rwidth))
+ {
+ tile.y = ry - tile_yoffset;
+ while (tile.y < (ry + rheight))
+ {
+ meta_draw_op_list_draw_with_style (op->data.tile.op_list,
+ style_gtk, widget, drawable, &new_clip, info,
+ tile);
+
+ tile.y += tile.height;
+ }
+
+ tile.x += tile.width;
+ }
+ }
+ }
+ break;
+ }
+
+ cairo_destroy (cr);
+}
+
+void
+meta_draw_op_draw_with_style (const MetaDrawOp *op,
+ GtkStyle *style_gtk,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ const MetaDrawInfo *info,
+ MetaRectangle logical_region)
+{
+ MetaPositionExprEnv env;
+
+ g_return_if_fail (style_gtk->colormap == gdk_drawable_get_colormap (drawable));
+
+ fill_env (&env, info, logical_region);
+
+ meta_draw_op_draw_with_env (op, style_gtk, widget, drawable, clip,
+ info, logical_region,
+ &env);
+
+}
+
+void
+meta_draw_op_draw (const MetaDrawOp *op,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ const MetaDrawInfo *info,
+ MetaRectangle logical_region)
+{
+ meta_draw_op_draw_with_style (op, gtk_widget_get_style (widget), widget,
+ drawable, clip, info, logical_region);
+}
+
+MetaDrawOpList*
+meta_draw_op_list_new (int n_preallocs)
+{
+ MetaDrawOpList *op_list;
+
+ g_return_val_if_fail (n_preallocs >= 0, NULL);
+
+ op_list = g_new (MetaDrawOpList, 1);
+
+ op_list->refcount = 1;
+ op_list->n_allocated = n_preallocs;
+ op_list->ops = g_new (MetaDrawOp*, op_list->n_allocated);
+ op_list->n_ops = 0;
+
+ return op_list;
+}
+
+void
+meta_draw_op_list_ref (MetaDrawOpList *op_list)
+{
+ g_return_if_fail (op_list != NULL);
+
+ op_list->refcount += 1;
+}
+
+void
+meta_draw_op_list_unref (MetaDrawOpList *op_list)
+{
+ g_return_if_fail (op_list != NULL);
+ g_return_if_fail (op_list->refcount > 0);
+
+ op_list->refcount -= 1;
+
+ if (op_list->refcount == 0)
+ {
+ int i;
+
+ for (i = 0; i < op_list->n_ops; i++)
+ meta_draw_op_free (op_list->ops[i]);
+
+ g_free (op_list->ops);
+
+ DEBUG_FILL_STRUCT (op_list);
+ g_free (op_list);
+ }
+}
+
+void
+meta_draw_op_list_draw_with_style (const MetaDrawOpList *op_list,
+ GtkStyle *style_gtk,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ const MetaDrawInfo *info,
+ MetaRectangle rect)
+{
+ int i;
+ GdkRectangle active_clip;
+ GdkRectangle orig_clip;
+ MetaPositionExprEnv env;
+
+ g_return_if_fail (style_gtk->colormap == gdk_drawable_get_colormap (drawable));
+
+ if (op_list->n_ops == 0)
+ return;
+
+ fill_env (&env, info, rect);
+
+ /* FIXME this can be optimized, potentially a lot, by
+ * compressing multiple ops when possible. For example,
+ * anything convertible to a pixbuf can be composited
+ * client-side, and putting a color tint over a pixbuf
+ * can be done without creating the solid-color pixbuf.
+ *
+ * To implement this my plan is to have the idea of a
+ * compiled draw op (with the string expressions already
+ * evaluated), we make an array of those, and then fold
+ * adjacent items when possible.
+ */
+ if (clip)
+ {
+ orig_clip = *clip;
+ }
+ else
+ {
+ orig_clip.x = rect.x;
+ orig_clip.y = rect.y;
+ orig_clip.width = rect.width;
+ orig_clip.height = rect.height;
+ }
+
+ active_clip = orig_clip;
+
+ for (i = 0; i < op_list->n_ops; i++)
+ {
+ MetaDrawOp *op = op_list->ops[i];
+
+ if (op->type == META_DRAW_CLIP)
+ {
+ active_clip.x = parse_x_position_unchecked (op->data.clip.x, &env);
+ active_clip.y = parse_y_position_unchecked (op->data.clip.y, &env);
+ active_clip.width = parse_size_unchecked (op->data.clip.width, &env);
+ active_clip.height = parse_size_unchecked (op->data.clip.height, &env);
+
+ gdk_rectangle_intersect (&orig_clip, &active_clip, &active_clip);
+ }
+ else if (active_clip.width > 0 &&
+ active_clip.height > 0)
+ {
+ meta_draw_op_draw_with_env (op,
+ style_gtk, widget, drawable, &active_clip, info,
+ rect,
+ &env);
+ }
+ }
+}
+
+void
+meta_draw_op_list_draw (const MetaDrawOpList *op_list,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ const MetaDrawInfo *info,
+ MetaRectangle rect)
+
+{
+ meta_draw_op_list_draw_with_style (op_list, gtk_widget_get_style (widget), widget,
+ drawable, clip, info, rect);
+}
+
+void
+meta_draw_op_list_append (MetaDrawOpList *op_list,
+ MetaDrawOp *op)
+{
+ if (op_list->n_ops == op_list->n_allocated)
+ {
+ op_list->n_allocated *= 2;
+ op_list->ops = g_renew (MetaDrawOp*, op_list->ops, op_list->n_allocated);
+ }
+
+ op_list->ops[op_list->n_ops] = op;
+ op_list->n_ops += 1;
+}
+
+gboolean
+meta_draw_op_list_validate (MetaDrawOpList *op_list,
+ GError **error)
+{
+ g_return_val_if_fail (op_list != NULL, FALSE);
+
+ /* empty lists are OK, nothing else to check really */
+
+ return TRUE;
+}
+
+/* This is not done in validate, since we wouldn't know the name
+ * of the list to report the error. It might be nice to
+ * store names inside the list sometime.
+ */
+gboolean
+meta_draw_op_list_contains (MetaDrawOpList *op_list,
+ MetaDrawOpList *child)
+{
+ int i;
+
+ /* mmm, huge tree recursion */
+
+ for (i = 0; i < op_list->n_ops; i++)
+ {
+ if (op_list->ops[i]->type == META_DRAW_OP_LIST)
+ {
+ if (op_list->ops[i]->data.op_list.op_list == child)
+ return TRUE;
+
+ if (meta_draw_op_list_contains (op_list->ops[i]->data.op_list.op_list,
+ child))
+ return TRUE;
+ }
+ else if (op_list->ops[i]->type == META_DRAW_TILE)
+ {
+ if (op_list->ops[i]->data.tile.op_list == child)
+ return TRUE;
+
+ if (meta_draw_op_list_contains (op_list->ops[i]->data.tile.op_list,
+ child))
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
+
+/**
+ * Constructor for a MetaFrameStyle.
+ *
+ * \param parent The parent style. Data not filled in here will be
+ * looked for in the parent style, and in its parent
+ * style, and so on.
+ *
+ * \return The newly-constructed style.
+ */
+MetaFrameStyle*
+meta_frame_style_new (MetaFrameStyle *parent)
+{
+ MetaFrameStyle *style;
+
+ style = g_new0 (MetaFrameStyle, 1);
+
+ style->refcount = 1;
+
+ /* Default alpha is fully opaque */
+ style->window_background_alpha = 255;
+
+ style->parent = parent;
+ if (parent)
+ meta_frame_style_ref (parent);
+
+ return style;
+}
+
+/**
+ * Increases the reference count of a frame style.
+ * If the style is NULL, this is a no-op.
+ *
+ * \param style The style.
+ */
+void
+meta_frame_style_ref (MetaFrameStyle *style)
+{
+ g_return_if_fail (style != NULL);
+
+ style->refcount += 1;
+}
+
+static void
+free_button_ops (MetaDrawOpList *op_lists[META_BUTTON_TYPE_LAST][META_BUTTON_STATE_LAST])
+{
+ int i, j;
+
+ for (i = 0; i < META_BUTTON_TYPE_LAST; i++)
+ for (j = 0; j < META_BUTTON_STATE_LAST; j++)
+ if (op_lists[i][j])
+ meta_draw_op_list_unref (op_lists[i][j]);
+}
+
+void
+meta_frame_style_unref (MetaFrameStyle *style)
+{
+ g_return_if_fail (style != NULL);
+ g_return_if_fail (style->refcount > 0);
+
+ style->refcount -= 1;
+
+ if (style->refcount == 0)
+ {
+ int i;
+
+ free_button_ops (style->buttons);
+
+ for (i = 0; i < META_FRAME_PIECE_LAST; i++)
+ if (style->pieces[i])
+ meta_draw_op_list_unref (style->pieces[i]);
+
+ if (style->layout)
+ meta_frame_layout_unref (style->layout);
+
+ if (style->window_background_color)
+ meta_color_spec_free (style->window_background_color);
+
+ /* we hold a reference to any parent style */
+ if (style->parent)
+ meta_frame_style_unref (style->parent);
+
+ DEBUG_FILL_STRUCT (style);
+ g_free (style);
+ }
+}
+
+static MetaDrawOpList*
+get_button (MetaFrameStyle *style,
+ MetaButtonType type,
+ MetaButtonState state)
+{
+ MetaDrawOpList *op_list;
+ MetaFrameStyle *parent;
+
+ parent = style;
+ op_list = NULL;
+ while (parent && op_list == NULL)
+ {
+ op_list = parent->buttons[type][state];
+ parent = parent->parent;
+ }
+
+ /* We fall back to middle button backgrounds if we don't
+ * have the ones on the sides
+ */
+
+ if (op_list == NULL &&
+ (type == META_BUTTON_TYPE_LEFT_LEFT_BACKGROUND ||
+ type == META_BUTTON_TYPE_LEFT_RIGHT_BACKGROUND))
+ return get_button (style, META_BUTTON_TYPE_LEFT_MIDDLE_BACKGROUND,
+ state);
+
+ if (op_list == NULL &&
+ (type == META_BUTTON_TYPE_RIGHT_LEFT_BACKGROUND ||
+ type == META_BUTTON_TYPE_RIGHT_RIGHT_BACKGROUND))
+ return get_button (style, META_BUTTON_TYPE_RIGHT_MIDDLE_BACKGROUND,
+ state);
+
+ /* We fall back to normal if no prelight */
+ if (op_list == NULL &&
+ state == META_BUTTON_STATE_PRELIGHT)
+ return get_button (style, type, META_BUTTON_STATE_NORMAL);
+
+ return op_list;
+}
+
+gboolean
+meta_frame_style_validate (MetaFrameStyle *style,
+ guint current_theme_version,
+ GError **error)
+{
+ int i, j;
+
+ g_return_val_if_fail (style != NULL, FALSE);
+ g_return_val_if_fail (style->layout != NULL, FALSE);
+
+ for (i = 0; i < META_BUTTON_TYPE_LAST; i++)
+ {
+ /* for now the "positional" buttons are optional */
+ if (i >= META_BUTTON_TYPE_CLOSE)
+ {
+ for (j = 0; j < META_BUTTON_STATE_LAST; j++)
+ {
+ if (get_button (style, i, j) == NULL &&
+ meta_theme_earliest_version_with_button (i) <= current_theme_version
+ )
+ {
+ g_set_error (error, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("<button function=\"%s\" state=\"%s\" draw_ops=\"whatever\"/> must be specified for this frame style"),
+ meta_button_type_to_string (i),
+ meta_button_state_to_string (j));
+ return FALSE;
+ }
+ }
+ }
+ }
+
+ return TRUE;
+}
+
+static void
+button_rect (MetaButtonType type,
+ const MetaFrameGeometry *fgeom,
+ int middle_background_offset,
+ GdkRectangle *rect)
+{
+ switch (type)
+ {
+ case META_BUTTON_TYPE_LEFT_LEFT_BACKGROUND:
+ *rect = fgeom->left_left_background;
+ break;
+
+ case META_BUTTON_TYPE_LEFT_MIDDLE_BACKGROUND:
+ *rect = fgeom->left_middle_backgrounds[middle_background_offset];
+ break;
+
+ case META_BUTTON_TYPE_LEFT_RIGHT_BACKGROUND:
+ *rect = fgeom->left_right_background;
+ break;
+
+ case META_BUTTON_TYPE_RIGHT_LEFT_BACKGROUND:
+ *rect = fgeom->right_left_background;
+ break;
+
+ case META_BUTTON_TYPE_RIGHT_MIDDLE_BACKGROUND:
+ *rect = fgeom->right_middle_backgrounds[middle_background_offset];
+ break;
+
+ case META_BUTTON_TYPE_RIGHT_RIGHT_BACKGROUND:
+ *rect = fgeom->right_right_background;
+ break;
+
+ case META_BUTTON_TYPE_CLOSE:
+ *rect = fgeom->close_rect.visible;
+ break;
+
+ case META_BUTTON_TYPE_SHADE:
+ *rect = fgeom->shade_rect.visible;
+ break;
+
+ case META_BUTTON_TYPE_UNSHADE:
+ *rect = fgeom->unshade_rect.visible;
+ break;
+
+ case META_BUTTON_TYPE_ABOVE:
+ *rect = fgeom->above_rect.visible;
+ break;
+
+ case META_BUTTON_TYPE_UNABOVE:
+ *rect = fgeom->unabove_rect.visible;
+ break;
+
+ case META_BUTTON_TYPE_STICK:
+ *rect = fgeom->stick_rect.visible;
+ break;
+
+ case META_BUTTON_TYPE_UNSTICK:
+ *rect = fgeom->unstick_rect.visible;
+ break;
+
+ case META_BUTTON_TYPE_MAXIMIZE:
+ *rect = fgeom->max_rect.visible;
+ break;
+
+ case META_BUTTON_TYPE_MINIMIZE:
+ *rect = fgeom->min_rect.visible;
+ break;
+
+ case META_BUTTON_TYPE_MENU:
+ *rect = fgeom->menu_rect.visible;
+ break;
+
+ case META_BUTTON_TYPE_LAST:
+ g_assert_not_reached ();
+ break;
+ }
+}
+
+void
+meta_frame_style_draw_with_style (MetaFrameStyle *style,
+ GtkStyle *style_gtk,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ int x_offset,
+ int y_offset,
+ const GdkRectangle *clip,
+ const MetaFrameGeometry *fgeom,
+ int client_width,
+ int client_height,
+ PangoLayout *title_layout,
+ int text_height,
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST],
+ GdkPixbuf *mini_icon,
+ GdkPixbuf *icon)
+{
+ int i, j;
+ GdkRectangle titlebar_rect;
+ GdkRectangle left_titlebar_edge;
+ GdkRectangle right_titlebar_edge;
+ GdkRectangle bottom_titlebar_edge;
+ GdkRectangle top_titlebar_edge;
+ GdkRectangle left_edge, right_edge, bottom_edge;
+ PangoRectangle extents;
+ MetaDrawInfo draw_info;
+
+ g_return_if_fail (style_gtk->colormap == gdk_drawable_get_colormap (drawable));
+
+ titlebar_rect.x = 0;
+ titlebar_rect.y = 0;
+ titlebar_rect.width = fgeom->width;
+ titlebar_rect.height = fgeom->top_height;
+
+ left_titlebar_edge.x = titlebar_rect.x;
+ left_titlebar_edge.y = titlebar_rect.y + fgeom->top_titlebar_edge;
+ left_titlebar_edge.width = fgeom->left_titlebar_edge;
+ left_titlebar_edge.height = titlebar_rect.height - fgeom->top_titlebar_edge - fgeom->bottom_titlebar_edge;
+
+ right_titlebar_edge.y = left_titlebar_edge.y;
+ right_titlebar_edge.height = left_titlebar_edge.height;
+ right_titlebar_edge.width = fgeom->right_titlebar_edge;
+ right_titlebar_edge.x = titlebar_rect.x + titlebar_rect.width - right_titlebar_edge.width;
+
+ top_titlebar_edge.x = titlebar_rect.x;
+ top_titlebar_edge.y = titlebar_rect.y;
+ top_titlebar_edge.width = titlebar_rect.width;
+ top_titlebar_edge.height = fgeom->top_titlebar_edge;
+
+ bottom_titlebar_edge.x = titlebar_rect.x;
+ bottom_titlebar_edge.width = titlebar_rect.width;
+ bottom_titlebar_edge.height = fgeom->bottom_titlebar_edge;
+ bottom_titlebar_edge.y = titlebar_rect.y + titlebar_rect.height - bottom_titlebar_edge.height;
+
+ left_edge.x = 0;
+ left_edge.y = fgeom->top_height;
+ left_edge.width = fgeom->left_width;
+ left_edge.height = fgeom->height - fgeom->top_height - fgeom->bottom_height;
+
+ right_edge.x = fgeom->width - fgeom->right_width;
+ right_edge.y = fgeom->top_height;
+ right_edge.width = fgeom->right_width;
+ right_edge.height = fgeom->height - fgeom->top_height - fgeom->bottom_height;
+
+ bottom_edge.x = 0;
+ bottom_edge.y = fgeom->height - fgeom->bottom_height;
+ bottom_edge.width = fgeom->width;
+ bottom_edge.height = fgeom->bottom_height;
+
+ if (title_layout)
+ pango_layout_get_pixel_extents (title_layout,
+ NULL, &extents);
+
+ draw_info.mini_icon = mini_icon;
+ draw_info.icon = icon;
+ draw_info.title_layout = title_layout;
+ draw_info.title_layout_width = title_layout ? extents.width : 0;
+ draw_info.title_layout_height = title_layout ? extents.height : 0;
+ draw_info.fgeom = fgeom;
+
+ /* The enum is in the order the pieces should be rendered. */
+ i = 0;
+ while (i < META_FRAME_PIECE_LAST)
+ {
+ GdkRectangle rect;
+ GdkRectangle combined_clip;
+
+ switch ((MetaFramePiece) i)
+ {
+ case META_FRAME_PIECE_ENTIRE_BACKGROUND:
+ rect.x = 0;
+ rect.y = 0;
+ rect.width = fgeom->width;
+ rect.height = fgeom->height;
+ break;
+
+ case META_FRAME_PIECE_TITLEBAR:
+ rect = titlebar_rect;
+ break;
+
+ case META_FRAME_PIECE_LEFT_TITLEBAR_EDGE:
+ rect = left_titlebar_edge;
+ break;
+
+ case META_FRAME_PIECE_RIGHT_TITLEBAR_EDGE:
+ rect = right_titlebar_edge;
+ break;
+
+ case META_FRAME_PIECE_TOP_TITLEBAR_EDGE:
+ rect = top_titlebar_edge;
+ break;
+
+ case META_FRAME_PIECE_BOTTOM_TITLEBAR_EDGE:
+ rect = bottom_titlebar_edge;
+ break;
+
+ case META_FRAME_PIECE_TITLEBAR_MIDDLE:
+ rect.x = left_titlebar_edge.x + left_titlebar_edge.width;
+ rect.y = top_titlebar_edge.y + top_titlebar_edge.height;
+ rect.width = titlebar_rect.width - left_titlebar_edge.width -
+ right_titlebar_edge.width;
+ rect.height = titlebar_rect.height - top_titlebar_edge.height - bottom_titlebar_edge.height;
+ break;
+
+ case META_FRAME_PIECE_TITLE:
+ rect = fgeom->title_rect;
+ break;
+
+ case META_FRAME_PIECE_LEFT_EDGE:
+ rect = left_edge;
+ break;
+
+ case META_FRAME_PIECE_RIGHT_EDGE:
+ rect = right_edge;
+ break;
+
+ case META_FRAME_PIECE_BOTTOM_EDGE:
+ rect = bottom_edge;
+ break;
+
+ case META_FRAME_PIECE_OVERLAY:
+ rect.x = 0;
+ rect.y = 0;
+ rect.width = fgeom->width;
+ rect.height = fgeom->height;
+ break;
+
+ case META_FRAME_PIECE_LAST:
+ g_assert_not_reached ();
+ break;
+ }
+
+ rect.x += x_offset;
+ rect.y += y_offset;
+
+ if (clip == NULL)
+ combined_clip = rect;
+ else
+ gdk_rectangle_intersect ((GdkRectangle*) clip, /* const cast */
+ &rect,
+ &combined_clip);
+
+ if (combined_clip.width > 0 && combined_clip.height > 0)
+ {
+ MetaDrawOpList *op_list;
+ MetaFrameStyle *parent;
+
+ parent = style;
+ op_list = NULL;
+ while (parent && op_list == NULL)
+ {
+ op_list = parent->pieces[i];
+ parent = parent->parent;
+ }
+
+ if (op_list)
+ {
+ MetaRectangle m_rect;
+ m_rect = meta_rect (rect.x, rect.y, rect.width, rect.height);
+ meta_draw_op_list_draw_with_style (op_list,
+ style_gtk,
+ widget,
+ drawable,
+ &combined_clip,
+ &draw_info,
+ m_rect);
+ }
+ }
+
+
+ /* Draw buttons just before overlay */
+ if ((i + 1) == META_FRAME_PIECE_OVERLAY)
+ {
+ int middle_bg_offset;
+
+ middle_bg_offset = 0;
+ j = 0;
+ while (j < META_BUTTON_TYPE_LAST)
+ {
+ button_rect (j, fgeom, middle_bg_offset, &rect);
+
+ rect.x += x_offset;
+ rect.y += y_offset;
+
+ if (clip == NULL)
+ combined_clip = rect;
+ else
+ gdk_rectangle_intersect ((GdkRectangle*) clip, /* const cast */
+ &rect,
+ &combined_clip);
+
+ if (combined_clip.width > 0 && combined_clip.height > 0)
+ {
+ MetaDrawOpList *op_list;
+
+ op_list = get_button (style, j, button_states[j]);
+
+ if (op_list)
+ {
+ MetaRectangle m_rect;
+ m_rect = meta_rect (rect.x, rect.y,
+ rect.width, rect.height);
+ meta_draw_op_list_draw_with_style (op_list,
+ style_gtk,
+ widget,
+ drawable,
+ &combined_clip,
+ &draw_info,
+ m_rect);
+ }
+ }
+
+ /* MIDDLE_BACKGROUND type may get drawn more than once */
+ if ((j == META_BUTTON_TYPE_RIGHT_MIDDLE_BACKGROUND ||
+ j == META_BUTTON_TYPE_LEFT_MIDDLE_BACKGROUND) &&
+ middle_bg_offset < MAX_MIDDLE_BACKGROUNDS)
+ {
+ ++middle_bg_offset;
+ }
+ else
+ {
+ middle_bg_offset = 0;
+ ++j;
+ }
+ }
+ }
+
+ ++i;
+ }
+}
+
+void
+meta_frame_style_draw (MetaFrameStyle *style,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ int x_offset,
+ int y_offset,
+ const GdkRectangle *clip,
+ const MetaFrameGeometry *fgeom,
+ int client_width,
+ int client_height,
+ PangoLayout *title_layout,
+ int text_height,
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST],
+ GdkPixbuf *mini_icon,
+ GdkPixbuf *icon)
+{
+ meta_frame_style_draw_with_style (style, gtk_widget_get_style (widget), widget,
+ drawable, x_offset, y_offset,
+ clip, fgeom, client_width, client_height,
+ title_layout, text_height,
+ button_states, mini_icon, icon);
+}
+
+MetaFrameStyleSet*
+meta_frame_style_set_new (MetaFrameStyleSet *parent)
+{
+ MetaFrameStyleSet *style_set;
+
+ style_set = g_new0 (MetaFrameStyleSet, 1);
+
+ style_set->parent = parent;
+ if (parent)
+ meta_frame_style_set_ref (parent);
+
+ style_set->refcount = 1;
+
+ return style_set;
+}
+
+static void
+free_focus_styles (MetaFrameStyle *focus_styles[META_FRAME_FOCUS_LAST])
+{
+ int i;
+
+ for (i = 0; i < META_FRAME_FOCUS_LAST; i++)
+ if (focus_styles[i])
+ meta_frame_style_unref (focus_styles[i]);
+}
+
+void
+meta_frame_style_set_ref (MetaFrameStyleSet *style_set)
+{
+ g_return_if_fail (style_set != NULL);
+
+ style_set->refcount += 1;
+}
+
+void
+meta_frame_style_set_unref (MetaFrameStyleSet *style_set)
+{
+ g_return_if_fail (style_set != NULL);
+ g_return_if_fail (style_set->refcount > 0);
+
+ style_set->refcount -= 1;
+
+ if (style_set->refcount == 0)
+ {
+ int i;
+
+ for (i = 0; i < META_FRAME_RESIZE_LAST; i++)
+ {
+ free_focus_styles (style_set->normal_styles[i]);
+ free_focus_styles (style_set->shaded_styles[i]);
+ }
+
+ free_focus_styles (style_set->maximized_styles);
+ free_focus_styles (style_set->maximized_and_shaded_styles);
+
+ if (style_set->parent)
+ meta_frame_style_set_unref (style_set->parent);
+
+ DEBUG_FILL_STRUCT (style_set);
+ g_free (style_set);
+ }
+}
+
+
+static MetaFrameStyle*
+get_style (MetaFrameStyleSet *style_set,
+ MetaFrameState state,
+ MetaFrameResize resize,
+ MetaFrameFocus focus)
+{
+ MetaFrameStyle *style;
+
+ style = NULL;
+
+ switch (state)
+ {
+ case META_FRAME_STATE_NORMAL:
+ case META_FRAME_STATE_SHADED:
+ {
+ if (state == META_FRAME_STATE_SHADED)
+ style = style_set->shaded_styles[resize][focus];
+ else
+ style = style_set->normal_styles[resize][focus];
+
+ /* Try parent if we failed here */
+ if (style == NULL && style_set->parent)
+ style = get_style (style_set->parent, state, resize, focus);
+
+ /* Allow people to omit the vert/horz/none resize modes */
+ if (style == NULL &&
+ resize != META_FRAME_RESIZE_BOTH)
+ style = get_style (style_set, state, META_FRAME_RESIZE_BOTH, focus);
+ }
+ break;
+ default:
+ {
+ MetaFrameStyle **styles;
+
+ styles = NULL;
+
+ switch (state)
+ {
+ case META_FRAME_STATE_MAXIMIZED:
+ styles = style_set->maximized_styles;
+ break;
+ case META_FRAME_STATE_MAXIMIZED_AND_SHADED:
+ styles = style_set->maximized_and_shaded_styles;
+ break;
+ case META_FRAME_STATE_NORMAL:
+ case META_FRAME_STATE_SHADED:
+ case META_FRAME_STATE_LAST:
+ g_assert_not_reached ();
+ break;
+ }
+
+ style = styles[focus];
+
+ /* Try parent if we failed here */
+ if (style == NULL && style_set->parent)
+ style = get_style (style_set->parent, state, resize, focus);
+ }
+ }
+
+ return style;
+}
+
+static gboolean
+check_state (MetaFrameStyleSet *style_set,
+ MetaFrameState state,
+ GError **error)
+{
+ int i;
+
+ for (i = 0; i < META_FRAME_FOCUS_LAST; i++)
+ {
+ if (get_style (style_set, state,
+ META_FRAME_RESIZE_NONE, i) == NULL)
+ {
+ /* Translators: This error occurs when a <frame> tag is missing
+ * in theme XML. The "<frame ...>" is intended as a noun phrase,
+ * and the "missing" qualifies it. You should translate "whatever".
+ */
+ g_set_error (error, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"),
+ meta_frame_state_to_string (state),
+ meta_frame_resize_to_string (META_FRAME_RESIZE_NONE),
+ meta_frame_focus_to_string (i));
+ return FALSE;
+ }
+ }
+
+ return TRUE;
+}
+
+gboolean
+meta_frame_style_set_validate (MetaFrameStyleSet *style_set,
+ GError **error)
+{
+ int i, j;
+
+ g_return_val_if_fail (style_set != NULL, FALSE);
+
+ for (i = 0; i < META_FRAME_RESIZE_LAST; i++)
+ for (j = 0; j < META_FRAME_FOCUS_LAST; j++)
+ if (get_style (style_set, META_FRAME_STATE_NORMAL, i, j) == NULL)
+ {
+ g_set_error (error, META_THEME_ERROR,
+ META_THEME_ERROR_FAILED,
+ _("Missing <frame state=\"%s\" resize=\"%s\" focus=\"%s\" style=\"whatever\"/>"),
+ meta_frame_state_to_string (META_FRAME_STATE_NORMAL),
+ meta_frame_resize_to_string (i),
+ meta_frame_focus_to_string (j));
+ return FALSE;
+ }
+
+ if (!check_state (style_set, META_FRAME_STATE_SHADED, error))
+ return FALSE;
+
+ if (!check_state (style_set, META_FRAME_STATE_MAXIMIZED, error))
+ return FALSE;
+
+ if (!check_state (style_set, META_FRAME_STATE_MAXIMIZED_AND_SHADED, error))
+ return FALSE;
+
+ return TRUE;
+}
+
+MetaTheme*
+meta_theme_get_current (void)
+{
+ return meta_current_theme;
+}
+
+void
+meta_theme_set_current (const char *name,
+ gboolean force_reload)
+{
+ MetaTheme *new_theme;
+ GError *err;
+
+ meta_topic (META_DEBUG_THEMES, "Setting current theme to \"%s\"\n", name);
+
+ if (!force_reload &&
+ meta_current_theme &&
+ strcmp (name, meta_current_theme->name) == 0)
+ return;
+
+ err = NULL;
+ new_theme = meta_theme_load (name, &err);
+
+ if (new_theme == NULL)
+ {
+ meta_warning (_("Failed to load theme \"%s\": %s\n"),
+ name, err->message);
+ g_error_free (err);
+ }
+ else
+ {
+ if (meta_current_theme)
+ meta_theme_free (meta_current_theme);
+
+ meta_current_theme = new_theme;
+
+ meta_topic (META_DEBUG_THEMES, "New theme is \"%s\"\n", meta_current_theme->name);
+ }
+}
+
+MetaTheme*
+meta_theme_new (void)
+{
+ MetaTheme *theme;
+
+ theme = g_new0 (MetaTheme, 1);
+
+ theme->images_by_filename =
+ g_hash_table_new_full (g_str_hash,
+ g_str_equal,
+ g_free,
+ (GDestroyNotify) g_object_unref);
+
+ theme->layouts_by_name =
+ g_hash_table_new_full (g_str_hash,
+ g_str_equal,
+ g_free,
+ (GDestroyNotify) meta_frame_layout_unref);
+
+ theme->draw_op_lists_by_name =
+ g_hash_table_new_full (g_str_hash,
+ g_str_equal,
+ g_free,
+ (GDestroyNotify) meta_draw_op_list_unref);
+
+ theme->styles_by_name =
+ g_hash_table_new_full (g_str_hash,
+ g_str_equal,
+ g_free,
+ (GDestroyNotify) meta_frame_style_unref);
+
+ theme->style_sets_by_name =
+ g_hash_table_new_full (g_str_hash,
+ g_str_equal,
+ g_free,
+ (GDestroyNotify) meta_frame_style_set_unref);
+
+ /* Create our variable quarks so we can look up variables without
+ having to strcmp for the names */
+ theme->quark_width = g_quark_from_static_string ("width");
+ theme->quark_height = g_quark_from_static_string ("height");
+ theme->quark_object_width = g_quark_from_static_string ("object_width");
+ theme->quark_object_height = g_quark_from_static_string ("object_height");
+ theme->quark_left_width = g_quark_from_static_string ("left_width");
+ theme->quark_right_width = g_quark_from_static_string ("right_width");
+ theme->quark_top_height = g_quark_from_static_string ("top_height");
+ theme->quark_bottom_height = g_quark_from_static_string ("bottom_height");
+ theme->quark_mini_icon_width = g_quark_from_static_string ("mini_icon_width");
+ theme->quark_mini_icon_height = g_quark_from_static_string ("mini_icon_height");
+ theme->quark_icon_width = g_quark_from_static_string ("icon_width");
+ theme->quark_icon_height = g_quark_from_static_string ("icon_height");
+ theme->quark_title_width = g_quark_from_static_string ("title_width");
+ theme->quark_title_height = g_quark_from_static_string ("title_height");
+ return theme;
+}
+
+
+void
+meta_theme_free (MetaTheme *theme)
+{
+ int i;
+
+ g_return_if_fail (theme != NULL);
+
+ g_free (theme->name);
+ g_free (theme->dirname);
+ g_free (theme->filename);
+ g_free (theme->readable_name);
+ g_free (theme->date);
+ g_free (theme->description);
+ g_free (theme->author);
+ g_free (theme->copyright);
+
+ /* be more careful when destroying the theme hash tables,
+ since they are only constructed as needed, and may be NULL. */
+ if (theme->integer_constants)
+ g_hash_table_destroy (theme->integer_constants);
+ if (theme->images_by_filename)
+ g_hash_table_destroy (theme->images_by_filename);
+ if (theme->layouts_by_name)
+ g_hash_table_destroy (theme->layouts_by_name);
+ if (theme->draw_op_lists_by_name)
+ g_hash_table_destroy (theme->draw_op_lists_by_name);
+ if (theme->styles_by_name)
+ g_hash_table_destroy (theme->styles_by_name);
+ if (theme->style_sets_by_name)
+ g_hash_table_destroy (theme->style_sets_by_name);
+
+ for (i = 0; i < META_FRAME_TYPE_LAST; i++)
+ if (theme->style_sets_by_type[i])
+ meta_frame_style_set_unref (theme->style_sets_by_type[i]);
+
+ DEBUG_FILL_STRUCT (theme);
+ g_free (theme);
+}
+
+gboolean
+meta_theme_validate (MetaTheme *theme,
+ GError **error)
+{
+ int i;
+
+ g_return_val_if_fail (theme != NULL, FALSE);
+
+ /* FIXME what else should be checked? */
+
+ g_assert (theme->name);
+
+ if (theme->readable_name == NULL)
+ {
+ /* Translators: This error means that a necessary XML tag (whose name
+ * is given in angle brackets) was not found in a given theme (whose
+ * name is given second, in quotation marks).
+ */
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("No <%s> set for theme \"%s\""), "name", theme->name);
+ return FALSE;
+ }
+
+ if (theme->author == NULL)
+ {
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("No <%s> set for theme \"%s\""), "author", theme->name);
+ return FALSE;
+ }
+
+ if (theme->date == NULL)
+ {
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("No <%s> set for theme \"%s\""), "date", theme->name);
+ return FALSE;
+ }
+
+ if (theme->description == NULL)
+ {
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("No <%s> set for theme \"%s\""), "description", theme->name);
+ return FALSE;
+ }
+
+ if (theme->copyright == NULL)
+ {
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("No <%s> set for theme \"%s\""), "copyright", theme->name);
+ return FALSE;
+ }
+
+ for (i = 0; i < (int)META_FRAME_TYPE_LAST; i++)
+ if (theme->style_sets_by_type[i] == NULL)
+ {
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("No frame style set for window type \"%s\" in theme \"%s\", add a <window type=\"%s\" style_set=\"whatever\"/> element"),
+ meta_frame_type_to_string (i),
+ theme->name,
+ meta_frame_type_to_string (i));
+
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+GdkPixbuf*
+meta_theme_load_image (MetaTheme *theme,
+ const char *filename,
+ guint size_of_theme_icons,
+ GError **error)
+{
+ GdkPixbuf *pixbuf;
+
+ pixbuf = g_hash_table_lookup (theme->images_by_filename,
+ filename);
+
+ if (pixbuf == NULL)
+ {
+
+ if (g_str_has_prefix (filename, "theme:") &&
+ META_THEME_ALLOWS (theme, META_THEME_IMAGES_FROM_ICON_THEMES))
+ {
+ pixbuf = gtk_icon_theme_load_icon (
+ gtk_icon_theme_get_default (),
+ filename+6,
+ size_of_theme_icons,
+ 0,
+ error);
+ if (pixbuf == NULL) return NULL;
+ }
+ else
+ {
+ char *full_path;
+ full_path = g_build_filename (theme->dirname, filename, NULL);
+
+ pixbuf = gdk_pixbuf_new_from_file (full_path, error);
+ if (pixbuf == NULL)
+ {
+ g_free (full_path);
+ return NULL;
+ }
+
+ g_free (full_path);
+ }
+ g_hash_table_replace (theme->images_by_filename,
+ g_strdup (filename),
+ pixbuf);
+ }
+
+ g_assert (pixbuf);
+
+ g_object_ref (G_OBJECT (pixbuf));
+
+ return pixbuf;
+}
+
+static MetaFrameStyle*
+theme_get_style (MetaTheme *theme,
+ MetaFrameType type,
+ MetaFrameFlags flags)
+{
+ MetaFrameState state;
+ MetaFrameResize resize;
+ MetaFrameFocus focus;
+ MetaFrameStyle *style;
+ MetaFrameStyleSet *style_set;
+
+ style_set = theme->style_sets_by_type[type];
+
+ /* Right now the parser forces a style set for all types,
+ * but this fallback code is here in case I take that out.
+ */
+ if (style_set == NULL)
+ style_set = theme->style_sets_by_type[META_FRAME_TYPE_NORMAL];
+ if (style_set == NULL)
+ return NULL;
+
+ switch (flags & (META_FRAME_MAXIMIZED | META_FRAME_SHADED))
+ {
+ case 0:
+ state = META_FRAME_STATE_NORMAL;
+ break;
+ case META_FRAME_MAXIMIZED:
+ state = META_FRAME_STATE_MAXIMIZED;
+ break;
+ case META_FRAME_SHADED:
+ state = META_FRAME_STATE_SHADED;
+ break;
+ case (META_FRAME_MAXIMIZED | META_FRAME_SHADED):
+ state = META_FRAME_STATE_MAXIMIZED_AND_SHADED;
+ break;
+ default:
+ g_assert_not_reached ();
+ state = META_FRAME_STATE_LAST; /* compiler */
+ break;
+ }
+
+ switch (flags & (META_FRAME_ALLOWS_VERTICAL_RESIZE | META_FRAME_ALLOWS_HORIZONTAL_RESIZE))
+ {
+ case 0:
+ resize = META_FRAME_RESIZE_NONE;
+ break;
+ case META_FRAME_ALLOWS_VERTICAL_RESIZE:
+ resize = META_FRAME_RESIZE_VERTICAL;
+ break;
+ case META_FRAME_ALLOWS_HORIZONTAL_RESIZE:
+ resize = META_FRAME_RESIZE_HORIZONTAL;
+ break;
+ case (META_FRAME_ALLOWS_VERTICAL_RESIZE | META_FRAME_ALLOWS_HORIZONTAL_RESIZE):
+ resize = META_FRAME_RESIZE_BOTH;
+ break;
+ default:
+ g_assert_not_reached ();
+ resize = META_FRAME_RESIZE_LAST; /* compiler */
+ break;
+ }
+
+ /* re invert the styles used for focus/unfocussed while flashing a frame */
+ if (((flags & META_FRAME_HAS_FOCUS) && !(flags & META_FRAME_IS_FLASHING))
+ || (!(flags & META_FRAME_HAS_FOCUS) && (flags & META_FRAME_IS_FLASHING)))
+ focus = META_FRAME_FOCUS_YES;
+ else
+ focus = META_FRAME_FOCUS_NO;
+
+ style = get_style (style_set, state, resize, focus);
+
+ return style;
+}
+
+MetaFrameStyle*
+meta_theme_get_frame_style (MetaTheme *theme,
+ MetaFrameType type,
+ MetaFrameFlags flags)
+{
+ MetaFrameStyle *style;
+
+ g_return_val_if_fail (type < META_FRAME_TYPE_LAST, NULL);
+
+ style = theme_get_style (theme, type, flags);
+
+ return style;
+}
+
+double
+meta_theme_get_title_scale (MetaTheme *theme,
+ MetaFrameType type,
+ MetaFrameFlags flags)
+{
+ MetaFrameStyle *style;
+
+ g_return_val_if_fail (type < META_FRAME_TYPE_LAST, 1.0);
+
+ style = theme_get_style (theme, type, flags);
+
+ /* Parser is not supposed to allow this currently */
+ if (style == NULL)
+ return 1.0;
+
+ return style->layout->title_scale;
+}
+
+void
+meta_theme_draw_frame_with_style (MetaTheme *theme,
+ GtkStyle *style_gtk,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ int x_offset,
+ int y_offset,
+ MetaFrameType type,
+ MetaFrameFlags flags,
+ int client_width,
+ int client_height,
+ PangoLayout *title_layout,
+ int text_height,
+ const MetaButtonLayout *button_layout,
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST],
+ GdkPixbuf *mini_icon,
+ GdkPixbuf *icon)
+{
+ MetaFrameGeometry fgeom;
+ MetaFrameStyle *style;
+
+ g_return_if_fail (type < META_FRAME_TYPE_LAST);
+
+ style = theme_get_style (theme, type, flags);
+
+ /* Parser is not supposed to allow this currently */
+ if (style == NULL)
+ return;
+
+ meta_frame_layout_calc_geometry (style->layout,
+ text_height,
+ flags,
+ client_width, client_height,
+ button_layout,
+ &fgeom,
+ theme);
+
+ meta_frame_style_draw_with_style (style,
+ style_gtk,
+ widget,
+ drawable,
+ x_offset, y_offset,
+ clip,
+ &fgeom,
+ client_width, client_height,
+ title_layout,
+ text_height,
+ button_states,
+ mini_icon, icon);
+}
+
+void
+meta_theme_draw_frame (MetaTheme *theme,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ int x_offset,
+ int y_offset,
+ MetaFrameType type,
+ MetaFrameFlags flags,
+ int client_width,
+ int client_height,
+ PangoLayout *title_layout,
+ int text_height,
+ const MetaButtonLayout *button_layout,
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST],
+ GdkPixbuf *mini_icon,
+ GdkPixbuf *icon)
+{
+ meta_theme_draw_frame_with_style (theme, gtk_widget_get_style (widget), widget,
+ drawable, clip, x_offset, y_offset, type,flags,
+ client_width, client_height,
+ title_layout, text_height,
+ button_layout, button_states,
+ mini_icon, icon);
+}
+
+void
+meta_theme_draw_frame_by_name (MetaTheme *theme,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ int x_offset,
+ int y_offset,
+ const gchar *style_name,
+ MetaFrameFlags flags,
+ int client_width,
+ int client_height,
+ PangoLayout *title_layout,
+ int text_height,
+ const MetaButtonLayout *button_layout,
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST],
+ GdkPixbuf *mini_icon,
+ GdkPixbuf *icon)
+{
+ MetaFrameGeometry fgeom;
+ MetaFrameStyle *style;
+
+ style = meta_theme_lookup_style (theme, style_name);
+
+ /* Parser is not supposed to allow this currently */
+ if (style == NULL)
+ return;
+
+ meta_frame_layout_calc_geometry (style->layout,
+ text_height,
+ flags,
+ client_width, client_height,
+ button_layout,
+ &fgeom,
+ theme);
+
+ meta_frame_style_draw (style,
+ widget,
+ drawable,
+ x_offset, y_offset,
+ clip,
+ &fgeom,
+ client_width, client_height,
+ title_layout,
+ text_height,
+ button_states,
+ mini_icon, icon);
+}
+
+void
+meta_theme_get_frame_borders (MetaTheme *theme,
+ MetaFrameType type,
+ int text_height,
+ MetaFrameFlags flags,
+ int *top_height,
+ int *bottom_height,
+ int *left_width,
+ int *right_width)
+{
+ MetaFrameStyle *style;
+
+ g_return_if_fail (type < META_FRAME_TYPE_LAST);
+
+ if (top_height)
+ *top_height = 0;
+ if (bottom_height)
+ *bottom_height = 0;
+ if (left_width)
+ *left_width = 0;
+ if (right_width)
+ *right_width = 0;
+
+ style = theme_get_style (theme, type, flags);
+
+ /* Parser is not supposed to allow this currently */
+ if (style == NULL)
+ return;
+
+ meta_frame_layout_get_borders (style->layout,
+ text_height,
+ flags,
+ top_height, bottom_height,
+ left_width, right_width);
+}
+
+void
+meta_theme_calc_geometry (MetaTheme *theme,
+ MetaFrameType type,
+ int text_height,
+ MetaFrameFlags flags,
+ int client_width,
+ int client_height,
+ const MetaButtonLayout *button_layout,
+ MetaFrameGeometry *fgeom)
+{
+ MetaFrameStyle *style;
+
+ g_return_if_fail (type < META_FRAME_TYPE_LAST);
+
+ style = theme_get_style (theme, type, flags);
+
+ /* Parser is not supposed to allow this currently */
+ if (style == NULL)
+ return;
+
+ meta_frame_layout_calc_geometry (style->layout,
+ text_height,
+ flags,
+ client_width, client_height,
+ button_layout,
+ fgeom,
+ theme);
+}
+
+MetaFrameLayout*
+meta_theme_lookup_layout (MetaTheme *theme,
+ const char *name)
+{
+ return g_hash_table_lookup (theme->layouts_by_name, name);
+}
+
+void
+meta_theme_insert_layout (MetaTheme *theme,
+ const char *name,
+ MetaFrameLayout *layout)
+{
+ meta_frame_layout_ref (layout);
+ g_hash_table_replace (theme->layouts_by_name, g_strdup (name), layout);
+}
+
+MetaDrawOpList*
+meta_theme_lookup_draw_op_list (MetaTheme *theme,
+ const char *name)
+{
+ return g_hash_table_lookup (theme->draw_op_lists_by_name, name);
+}
+
+void
+meta_theme_insert_draw_op_list (MetaTheme *theme,
+ const char *name,
+ MetaDrawOpList *op_list)
+{
+ meta_draw_op_list_ref (op_list);
+ g_hash_table_replace (theme->draw_op_lists_by_name, g_strdup (name), op_list);
+}
+
+MetaFrameStyle*
+meta_theme_lookup_style (MetaTheme *theme,
+ const char *name)
+{
+ return g_hash_table_lookup (theme->styles_by_name, name);
+}
+
+void
+meta_theme_insert_style (MetaTheme *theme,
+ const char *name,
+ MetaFrameStyle *style)
+{
+ meta_frame_style_ref (style);
+ g_hash_table_replace (theme->styles_by_name, g_strdup (name), style);
+}
+
+MetaFrameStyleSet*
+meta_theme_lookup_style_set (MetaTheme *theme,
+ const char *name)
+{
+ return g_hash_table_lookup (theme->style_sets_by_name, name);
+}
+
+void
+meta_theme_insert_style_set (MetaTheme *theme,
+ const char *name,
+ MetaFrameStyleSet *style_set)
+{
+ meta_frame_style_set_ref (style_set);
+ g_hash_table_replace (theme->style_sets_by_name, g_strdup (name), style_set);
+}
+
+static gboolean
+first_uppercase (const char *str)
+{
+ return g_ascii_isupper (*str);
+}
+
+gboolean
+meta_theme_define_int_constant (MetaTheme *theme,
+ const char *name,
+ int value,
+ GError **error)
+{
+ if (theme->integer_constants == NULL)
+ theme->integer_constants = g_hash_table_new_full (g_str_hash,
+ g_str_equal,
+ g_free,
+ NULL);
+
+ if (!first_uppercase (name))
+ {
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("User-defined constants must begin with a capital letter; \"%s\" does not"),
+ name);
+ return FALSE;
+ }
+
+ if (g_hash_table_lookup_extended (theme->integer_constants, name, NULL, NULL))
+ {
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("Constant \"%s\" has already been defined"),
+ name);
+
+ return FALSE;
+ }
+
+ g_hash_table_insert (theme->integer_constants,
+ g_strdup (name),
+ GINT_TO_POINTER (value));
+
+ return TRUE;
+}
+
+gboolean
+meta_theme_lookup_int_constant (MetaTheme *theme,
+ const char *name,
+ int *value)
+{
+ gpointer old_value;
+
+ *value = 0;
+
+ if (theme->integer_constants == NULL)
+ return FALSE;
+
+ if (g_hash_table_lookup_extended (theme->integer_constants,
+ name, NULL, &old_value))
+ {
+ *value = GPOINTER_TO_INT (old_value);
+ return TRUE;
+ }
+ else
+ {
+ return FALSE;
+ }
+}
+
+gboolean
+meta_theme_define_float_constant (MetaTheme *theme,
+ const char *name,
+ double value,
+ GError **error)
+{
+ double *d;
+
+ if (theme->float_constants == NULL)
+ theme->float_constants = g_hash_table_new_full (g_str_hash,
+ g_str_equal,
+ g_free,
+ g_free);
+
+ if (!first_uppercase (name))
+ {
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("User-defined constants must begin with a capital letter; \"%s\" does not"),
+ name);
+ return FALSE;
+ }
+
+ if (g_hash_table_lookup_extended (theme->float_constants, name, NULL, NULL))
+ {
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("Constant \"%s\" has already been defined"),
+ name);
+
+ return FALSE;
+ }
+
+ d = g_new (double, 1);
+ *d = value;
+
+ g_hash_table_insert (theme->float_constants,
+ g_strdup (name), d);
+
+ return TRUE;
+}
+
+gboolean
+meta_theme_lookup_float_constant (MetaTheme *theme,
+ const char *name,
+ double *value)
+{
+ double *d;
+
+ *value = 0.0;
+
+ if (theme->float_constants == NULL)
+ return FALSE;
+
+ d = g_hash_table_lookup (theme->float_constants, name);
+
+ if (d)
+ {
+ *value = *d;
+ return TRUE;
+ }
+ else
+ {
+ return FALSE;
+ }
+}
+
+gboolean
+meta_theme_define_color_constant (MetaTheme *theme,
+ const char *name,
+ const char *value,
+ GError **error)
+{
+ if (theme->color_constants == NULL)
+ theme->color_constants = g_hash_table_new_full (g_str_hash,
+ g_str_equal,
+ g_free,
+ NULL);
+
+ if (!first_uppercase (name))
+ {
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("User-defined constants must begin with a capital letter; \"%s\" does not"),
+ name);
+ return FALSE;
+ }
+
+ if (g_hash_table_lookup_extended (theme->color_constants, name, NULL, NULL))
+ {
+ g_set_error (error, META_THEME_ERROR, META_THEME_ERROR_FAILED,
+ _("Constant \"%s\" has already been defined"),
+ name);
+
+ return FALSE;
+ }
+
+ g_hash_table_insert (theme->color_constants,
+ g_strdup (name),
+ g_strdup (value));
+
+ return TRUE;
+}
+
+/**
+ * Looks up a colour constant.
+ *
+ * \param theme the theme containing the constant
+ * \param name the name of the constant
+ * \param value [out] the string representation of the colour, or NULL if it
+ * doesn't exist
+ * \return TRUE if it exists, FALSE otherwise
+ */
+gboolean
+meta_theme_lookup_color_constant (MetaTheme *theme,
+ const char *name,
+ char **value)
+{
+ char *result;
+
+ *value = NULL;
+
+ if (theme->color_constants == NULL)
+ return FALSE;
+
+ result = g_hash_table_lookup (theme->color_constants, name);
+
+ if (result)
+ {
+ *value = result;
+ return TRUE;
+ }
+ else
+ {
+ return FALSE;
+ }
+}
+
+
+PangoFontDescription*
+meta_gtk_widget_get_font_desc (GtkWidget *widget,
+ double scale,
+ const PangoFontDescription *override)
+{
+ PangoFontDescription *font_desc;
+
+ g_return_val_if_fail (gtk_widget_get_realized (widget), NULL);
+
+ font_desc = pango_font_description_copy (gtk_widget_get_style (widget)->font_desc);
+
+ if (override)
+ pango_font_description_merge (font_desc, override, TRUE);
+
+ pango_font_description_set_size (font_desc,
+ MAX (pango_font_description_get_size (font_desc) * scale, 1));
+
+ return font_desc;
+}
+
+/**
+ * Returns the height of the letters in a particular font.
+ *
+ * \param font_desc the font
+ * \param context the context of the font
+ * \return the height of the letters
+ */
+int
+meta_pango_font_desc_get_text_height (const PangoFontDescription *font_desc,
+ PangoContext *context)
+{
+ PangoFontMetrics *metrics;
+ PangoLanguage *lang;
+ int retval;
+
+ lang = pango_context_get_language (context);
+ metrics = pango_context_get_metrics (context, font_desc, lang);
+
+ retval = PANGO_PIXELS (pango_font_metrics_get_ascent (metrics) +
+ pango_font_metrics_get_descent (metrics));
+
+ pango_font_metrics_unref (metrics);
+
+ return retval;
+}
+
+MetaGtkColorComponent
+meta_color_component_from_string (const char *str)
+{
+ if (strcmp ("fg", str) == 0)
+ return META_GTK_COLOR_FG;
+ else if (strcmp ("bg", str) == 0)
+ return META_GTK_COLOR_BG;
+ else if (strcmp ("light", str) == 0)
+ return META_GTK_COLOR_LIGHT;
+ else if (strcmp ("dark", str) == 0)
+ return META_GTK_COLOR_DARK;
+ else if (strcmp ("mid", str) == 0)
+ return META_GTK_COLOR_MID;
+ else if (strcmp ("text", str) == 0)
+ return META_GTK_COLOR_TEXT;
+ else if (strcmp ("base", str) == 0)
+ return META_GTK_COLOR_BASE;
+ else if (strcmp ("text_aa", str) == 0)
+ return META_GTK_COLOR_TEXT_AA;
+ else
+ return META_GTK_COLOR_LAST;
+}
+
+const char*
+meta_color_component_to_string (MetaGtkColorComponent component)
+{
+ switch (component)
+ {
+ case META_GTK_COLOR_FG:
+ return "fg";
+ case META_GTK_COLOR_BG:
+ return "bg";
+ case META_GTK_COLOR_LIGHT:
+ return "light";
+ case META_GTK_COLOR_DARK:
+ return "dark";
+ case META_GTK_COLOR_MID:
+ return "mid";
+ case META_GTK_COLOR_TEXT:
+ return "text";
+ case META_GTK_COLOR_BASE:
+ return "base";
+ case META_GTK_COLOR_TEXT_AA:
+ return "text_aa";
+ case META_GTK_COLOR_LAST:
+ break;
+ }
+
+ return "<unknown>";
+}
+
+MetaButtonState
+meta_button_state_from_string (const char *str)
+{
+ if (strcmp ("normal", str) == 0)
+ return META_BUTTON_STATE_NORMAL;
+ else if (strcmp ("pressed", str) == 0)
+ return META_BUTTON_STATE_PRESSED;
+ else if (strcmp ("prelight", str) == 0)
+ return META_BUTTON_STATE_PRELIGHT;
+ else
+ return META_BUTTON_STATE_LAST;
+}
+
+const char*
+meta_button_state_to_string (MetaButtonState state)
+{
+ switch (state)
+ {
+ case META_BUTTON_STATE_NORMAL:
+ return "normal";
+ case META_BUTTON_STATE_PRESSED:
+ return "pressed";
+ case META_BUTTON_STATE_PRELIGHT:
+ return "prelight";
+ case META_BUTTON_STATE_LAST:
+ break;
+ }
+
+ return "<unknown>";
+}
+
+MetaButtonType
+meta_button_type_from_string (const char *str, MetaTheme *theme)
+{
+ if (META_THEME_ALLOWS(theme, META_THEME_SHADE_STICK_ABOVE_BUTTONS))
+ {
+ if (strcmp ("shade", str) == 0)
+ return META_BUTTON_TYPE_SHADE;
+ else if (strcmp ("above", str) == 0)
+ return META_BUTTON_TYPE_ABOVE;
+ else if (strcmp ("stick", str) == 0)
+ return META_BUTTON_TYPE_STICK;
+ else if (strcmp ("unshade", str) == 0)
+ return META_BUTTON_TYPE_UNSHADE;
+ else if (strcmp ("unabove", str) == 0)
+ return META_BUTTON_TYPE_UNABOVE;
+ else if (strcmp ("unstick", str) == 0)
+ return META_BUTTON_TYPE_UNSTICK;
+ }
+
+ if (strcmp ("close", str) == 0)
+ return META_BUTTON_TYPE_CLOSE;
+ else if (strcmp ("maximize", str) == 0)
+ return META_BUTTON_TYPE_MAXIMIZE;
+ else if (strcmp ("minimize", str) == 0)
+ return META_BUTTON_TYPE_MINIMIZE;
+ else if (strcmp ("menu", str) == 0)
+ return META_BUTTON_TYPE_MENU;
+ else if (strcmp ("left_left_background", str) == 0)
+ return META_BUTTON_TYPE_LEFT_LEFT_BACKGROUND;
+ else if (strcmp ("left_middle_background", str) == 0)
+ return META_BUTTON_TYPE_LEFT_MIDDLE_BACKGROUND;
+ else if (strcmp ("left_right_background", str) == 0)
+ return META_BUTTON_TYPE_LEFT_RIGHT_BACKGROUND;
+ else if (strcmp ("right_left_background", str) == 0)
+ return META_BUTTON_TYPE_RIGHT_LEFT_BACKGROUND;
+ else if (strcmp ("right_middle_background", str) == 0)
+ return META_BUTTON_TYPE_RIGHT_MIDDLE_BACKGROUND;
+ else if (strcmp ("right_right_background", str) == 0)
+ return META_BUTTON_TYPE_RIGHT_RIGHT_BACKGROUND;
+ else
+ return META_BUTTON_TYPE_LAST;
+}
+
+const char*
+meta_button_type_to_string (MetaButtonType type)
+{
+ switch (type)
+ {
+ case META_BUTTON_TYPE_CLOSE:
+ return "close";
+ case META_BUTTON_TYPE_MAXIMIZE:
+ return "maximize";
+ case META_BUTTON_TYPE_MINIMIZE:
+ return "minimize";
+ case META_BUTTON_TYPE_SHADE:
+ return "shade";
+ case META_BUTTON_TYPE_ABOVE:
+ return "above";
+ case META_BUTTON_TYPE_STICK:
+ return "stick";
+ case META_BUTTON_TYPE_UNSHADE:
+ return "unshade";
+ case META_BUTTON_TYPE_UNABOVE:
+ return "unabove";
+ case META_BUTTON_TYPE_UNSTICK:
+ return "unstick";
+ case META_BUTTON_TYPE_MENU:
+ return "menu";
+ case META_BUTTON_TYPE_LEFT_LEFT_BACKGROUND:
+ return "left_left_background";
+ case META_BUTTON_TYPE_LEFT_MIDDLE_BACKGROUND:
+ return "left_middle_background";
+ case META_BUTTON_TYPE_LEFT_RIGHT_BACKGROUND:
+ return "left_right_background";
+ case META_BUTTON_TYPE_RIGHT_LEFT_BACKGROUND:
+ return "right_left_background";
+ case META_BUTTON_TYPE_RIGHT_MIDDLE_BACKGROUND:
+ return "right_middle_background";
+ case META_BUTTON_TYPE_RIGHT_RIGHT_BACKGROUND:
+ return "right_right_background";
+ case META_BUTTON_TYPE_LAST:
+ break;
+ }
+
+ return "<unknown>";
+}
+
+MetaFramePiece
+meta_frame_piece_from_string (const char *str)
+{
+ if (strcmp ("entire_background", str) == 0)
+ return META_FRAME_PIECE_ENTIRE_BACKGROUND;
+ else if (strcmp ("titlebar", str) == 0)
+ return META_FRAME_PIECE_TITLEBAR;
+ else if (strcmp ("titlebar_middle", str) == 0)
+ return META_FRAME_PIECE_TITLEBAR_MIDDLE;
+ else if (strcmp ("left_titlebar_edge", str) == 0)
+ return META_FRAME_PIECE_LEFT_TITLEBAR_EDGE;
+ else if (strcmp ("right_titlebar_edge", str) == 0)
+ return META_FRAME_PIECE_RIGHT_TITLEBAR_EDGE;
+ else if (strcmp ("top_titlebar_edge", str) == 0)
+ return META_FRAME_PIECE_TOP_TITLEBAR_EDGE;
+ else if (strcmp ("bottom_titlebar_edge", str) == 0)
+ return META_FRAME_PIECE_BOTTOM_TITLEBAR_EDGE;
+ else if (strcmp ("title", str) == 0)
+ return META_FRAME_PIECE_TITLE;
+ else if (strcmp ("left_edge", str) == 0)
+ return META_FRAME_PIECE_LEFT_EDGE;
+ else if (strcmp ("right_edge", str) == 0)
+ return META_FRAME_PIECE_RIGHT_EDGE;
+ else if (strcmp ("bottom_edge", str) == 0)
+ return META_FRAME_PIECE_BOTTOM_EDGE;
+ else if (strcmp ("overlay", str) == 0)
+ return META_FRAME_PIECE_OVERLAY;
+ else
+ return META_FRAME_PIECE_LAST;
+}
+
+const char*
+meta_frame_piece_to_string (MetaFramePiece piece)
+{
+ switch (piece)
+ {
+ case META_FRAME_PIECE_ENTIRE_BACKGROUND:
+ return "entire_background";
+ case META_FRAME_PIECE_TITLEBAR:
+ return "titlebar";
+ case META_FRAME_PIECE_TITLEBAR_MIDDLE:
+ return "titlebar_middle";
+ case META_FRAME_PIECE_LEFT_TITLEBAR_EDGE:
+ return "left_titlebar_edge";
+ case META_FRAME_PIECE_RIGHT_TITLEBAR_EDGE:
+ return "right_titlebar_edge";
+ case META_FRAME_PIECE_TOP_TITLEBAR_EDGE:
+ return "top_titlebar_edge";
+ case META_FRAME_PIECE_BOTTOM_TITLEBAR_EDGE:
+ return "bottom_titlebar_edge";
+ case META_FRAME_PIECE_TITLE:
+ return "title";
+ case META_FRAME_PIECE_LEFT_EDGE:
+ return "left_edge";
+ case META_FRAME_PIECE_RIGHT_EDGE:
+ return "right_edge";
+ case META_FRAME_PIECE_BOTTOM_EDGE:
+ return "bottom_edge";
+ case META_FRAME_PIECE_OVERLAY:
+ return "overlay";
+ case META_FRAME_PIECE_LAST:
+ break;
+ }
+
+ return "<unknown>";
+}
+
+MetaFrameState
+meta_frame_state_from_string (const char *str)
+{
+ if (strcmp ("normal", str) == 0)
+ return META_FRAME_STATE_NORMAL;
+ else if (strcmp ("maximized", str) == 0)
+ return META_FRAME_STATE_MAXIMIZED;
+ else if (strcmp ("shaded", str) == 0)
+ return META_FRAME_STATE_SHADED;
+ else if (strcmp ("maximized_and_shaded", str) == 0)
+ return META_FRAME_STATE_MAXIMIZED_AND_SHADED;
+ else
+ return META_FRAME_STATE_LAST;
+}
+
+const char*
+meta_frame_state_to_string (MetaFrameState state)
+{
+ switch (state)
+ {
+ case META_FRAME_STATE_NORMAL:
+ return "normal";
+ case META_FRAME_STATE_MAXIMIZED:
+ return "maximized";
+ case META_FRAME_STATE_SHADED:
+ return "shaded";
+ case META_FRAME_STATE_MAXIMIZED_AND_SHADED:
+ return "maximized_and_shaded";
+ case META_FRAME_STATE_LAST:
+ break;
+ }
+
+ return "<unknown>";
+}
+
+MetaFrameResize
+meta_frame_resize_from_string (const char *str)
+{
+ if (strcmp ("none", str) == 0)
+ return META_FRAME_RESIZE_NONE;
+ else if (strcmp ("vertical", str) == 0)
+ return META_FRAME_RESIZE_VERTICAL;
+ else if (strcmp ("horizontal", str) == 0)
+ return META_FRAME_RESIZE_HORIZONTAL;
+ else if (strcmp ("both", str) == 0)
+ return META_FRAME_RESIZE_BOTH;
+ else
+ return META_FRAME_RESIZE_LAST;
+}
+
+const char*
+meta_frame_resize_to_string (MetaFrameResize resize)
+{
+ switch (resize)
+ {
+ case META_FRAME_RESIZE_NONE:
+ return "none";
+ case META_FRAME_RESIZE_VERTICAL:
+ return "vertical";
+ case META_FRAME_RESIZE_HORIZONTAL:
+ return "horizontal";
+ case META_FRAME_RESIZE_BOTH:
+ return "both";
+ case META_FRAME_RESIZE_LAST:
+ break;
+ }
+
+ return "<unknown>";
+}
+
+MetaFrameFocus
+meta_frame_focus_from_string (const char *str)
+{
+ if (strcmp ("no", str) == 0)
+ return META_FRAME_FOCUS_NO;
+ else if (strcmp ("yes", str) == 0)
+ return META_FRAME_FOCUS_YES;
+ else
+ return META_FRAME_FOCUS_LAST;
+}
+
+const char*
+meta_frame_focus_to_string (MetaFrameFocus focus)
+{
+ switch (focus)
+ {
+ case META_FRAME_FOCUS_NO:
+ return "no";
+ case META_FRAME_FOCUS_YES:
+ return "yes";
+ case META_FRAME_FOCUS_LAST:
+ break;
+ }
+
+ return "<unknown>";
+}
+
+MetaFrameType
+meta_frame_type_from_string (const char *str)
+{
+ if (strcmp ("normal", str) == 0)
+ return META_FRAME_TYPE_NORMAL;
+ else if (strcmp ("dialog", str) == 0)
+ return META_FRAME_TYPE_DIALOG;
+ else if (strcmp ("modal_dialog", str) == 0)
+ return META_FRAME_TYPE_MODAL_DIALOG;
+ else if (strcmp ("utility", str) == 0)
+ return META_FRAME_TYPE_UTILITY;
+ else if (strcmp ("menu", str) == 0)
+ return META_FRAME_TYPE_MENU;
+ else if (strcmp ("border", str) == 0)
+ return META_FRAME_TYPE_BORDER;
+#if 0
+ else if (strcmp ("toolbar", str) == 0)
+ return META_FRAME_TYPE_TOOLBAR;
+#endif
+ else
+ return META_FRAME_TYPE_LAST;
+}
+
+const char*
+meta_frame_type_to_string (MetaFrameType type)
+{
+ switch (type)
+ {
+ case META_FRAME_TYPE_NORMAL:
+ return "normal";
+ case META_FRAME_TYPE_DIALOG:
+ return "dialog";
+ case META_FRAME_TYPE_MODAL_DIALOG:
+ return "modal_dialog";
+ case META_FRAME_TYPE_UTILITY:
+ return "utility";
+ case META_FRAME_TYPE_MENU:
+ return "menu";
+ case META_FRAME_TYPE_BORDER:
+ return "border";
+#if 0
+ case META_FRAME_TYPE_TOOLBAR:
+ return "toolbar";
+#endif
+ case META_FRAME_TYPE_LAST:
+ break;
+ }
+
+ return "<unknown>";
+}
+
+MetaGradientType
+meta_gradient_type_from_string (const char *str)
+{
+ if (strcmp ("vertical", str) == 0)
+ return META_GRADIENT_VERTICAL;
+ else if (strcmp ("horizontal", str) == 0)
+ return META_GRADIENT_HORIZONTAL;
+ else if (strcmp ("diagonal", str) == 0)
+ return META_GRADIENT_DIAGONAL;
+ else
+ return META_GRADIENT_LAST;
+}
+
+const char*
+meta_gradient_type_to_string (MetaGradientType type)
+{
+ switch (type)
+ {
+ case META_GRADIENT_VERTICAL:
+ return "vertical";
+ case META_GRADIENT_HORIZONTAL:
+ return "horizontal";
+ case META_GRADIENT_DIAGONAL:
+ return "diagonal";
+ case META_GRADIENT_LAST:
+ break;
+ }
+
+ return "<unknown>";
+}
+
+GtkStateType
+meta_gtk_state_from_string (const char *str)
+{
+ if (strcmp ("normal", str) == 0 || strcmp ("NORMAL", str) == 0)
+ return GTK_STATE_NORMAL;
+ else if (strcmp ("prelight", str) == 0 || strcmp ("PRELIGHT", str) == 0)
+ return GTK_STATE_PRELIGHT;
+ else if (strcmp ("active", str) == 0 || strcmp ("ACTIVE", str) == 0)
+ return GTK_STATE_ACTIVE;
+ else if (strcmp ("selected", str) == 0 || strcmp ("SELECTED", str) == 0)
+ return GTK_STATE_SELECTED;
+ else if (strcmp ("insensitive", str) == 0 || strcmp ("INSENSITIVE", str) == 0)
+ return GTK_STATE_INSENSITIVE;
+ else
+ return -1; /* hack */
+}
+
+const char*
+meta_gtk_state_to_string (GtkStateType state)
+{
+ switch (state)
+ {
+ case GTK_STATE_NORMAL:
+ return "NORMAL";
+ case GTK_STATE_PRELIGHT:
+ return "PRELIGHT";
+ case GTK_STATE_ACTIVE:
+ return "ACTIVE";
+ case GTK_STATE_SELECTED:
+ return "SELECTED";
+ case GTK_STATE_INSENSITIVE:
+ return "INSENSITIVE";
+ }
+
+ return "<unknown>";
+}
+
+GtkShadowType
+meta_gtk_shadow_from_string (const char *str)
+{
+ if (strcmp ("none", str) == 0)
+ return GTK_SHADOW_NONE;
+ else if (strcmp ("in", str) == 0)
+ return GTK_SHADOW_IN;
+ else if (strcmp ("out", str) == 0)
+ return GTK_SHADOW_OUT;
+ else if (strcmp ("etched_in", str) == 0)
+ return GTK_SHADOW_ETCHED_IN;
+ else if (strcmp ("etched_out", str) == 0)
+ return GTK_SHADOW_ETCHED_OUT;
+ else
+ return -1;
+}
+
+const char*
+meta_gtk_shadow_to_string (GtkShadowType shadow)
+{
+ switch (shadow)
+ {
+ case GTK_SHADOW_NONE:
+ return "none";
+ case GTK_SHADOW_IN:
+ return "in";
+ case GTK_SHADOW_OUT:
+ return "out";
+ case GTK_SHADOW_ETCHED_IN:
+ return "etched_in";
+ case GTK_SHADOW_ETCHED_OUT:
+ return "etched_out";
+ }
+
+ return "<unknown>";
+}
+
+GtkArrowType
+meta_gtk_arrow_from_string (const char *str)
+{
+ if (strcmp ("up", str) == 0)
+ return GTK_ARROW_UP;
+ else if (strcmp ("down", str) == 0)
+ return GTK_ARROW_DOWN;
+ else if (strcmp ("left", str) == 0)
+ return GTK_ARROW_LEFT;
+ else if (strcmp ("right", str) == 0)
+ return GTK_ARROW_RIGHT;
+ else if (strcmp ("none", str) == 0)
+ return GTK_ARROW_NONE;
+ else
+ return -1;
+}
+
+const char*
+meta_gtk_arrow_to_string (GtkArrowType arrow)
+{
+ switch (arrow)
+ {
+ case GTK_ARROW_UP:
+ return "up";
+ case GTK_ARROW_DOWN:
+ return "down";
+ case GTK_ARROW_LEFT:
+ return "left";
+ case GTK_ARROW_RIGHT:
+ return "right";
+ case GTK_ARROW_NONE:
+ return "none";
+ }
+
+ return "<unknown>";
+}
+
+/**
+ * Returns a fill_type from a string. The inverse of
+ * meta_image_fill_type_to_string().
+ *
+ * \param str a string representing a fill_type
+ * \result the fill_type, or -1 if it represents no fill_type.
+ */
+MetaImageFillType
+meta_image_fill_type_from_string (const char *str)
+{
+ if (strcmp ("tile", str) == 0)
+ return META_IMAGE_FILL_TILE;
+ else if (strcmp ("scale", str) == 0)
+ return META_IMAGE_FILL_SCALE;
+ else
+ return -1;
+}
+
+/**
+ * Returns a string representation of a fill_type. The inverse of
+ * meta_image_fill_type_from_string().
+ *
+ * \param fill_type the fill type
+ * \result a string representing that type
+ */
+const char*
+meta_image_fill_type_to_string (MetaImageFillType fill_type)
+{
+ switch (fill_type)
+ {
+ case META_IMAGE_FILL_TILE:
+ return "tile";
+ case META_IMAGE_FILL_SCALE:
+ return "scale";
+ }
+
+ return "<unknown>";
+}
+
+/**
+ * Takes a colour "a", scales the lightness and saturation by a certain amount,
+ * and sets "b" to the resulting colour.
+ * gtkstyle.c cut-and-pastage.
+ *
+ * \param a the starting colour
+ * \param b [out] the resulting colour
+ * \param k amount to scale lightness and saturation by
+ */
+static void
+gtk_style_shade (GdkColor *a,
+ GdkColor *b,
+ gdouble k)
+{
+ gdouble red;
+ gdouble green;
+ gdouble blue;
+
+ red = (gdouble) a->red / 65535.0;
+ green = (gdouble) a->green / 65535.0;
+ blue = (gdouble) a->blue / 65535.0;
+
+ rgb_to_hls (&red, &green, &blue);
+
+ green *= k;
+ if (green > 1.0)
+ green = 1.0;
+ else if (green < 0.0)
+ green = 0.0;
+
+ blue *= k;
+ if (blue > 1.0)
+ blue = 1.0;
+ else if (blue < 0.0)
+ blue = 0.0;
+
+ hls_to_rgb (&red, &green, &blue);
+
+ b->red = red * 65535.0;
+ b->green = green * 65535.0;
+ b->blue = blue * 65535.0;
+}
+
+/**
+ * Converts a red/green/blue triplet to a hue/lightness/saturation triplet.
+ *
+ * \param r on input, red; on output, hue
+ * \param g on input, green; on output, lightness
+ * \param b on input, blue; on output, saturation
+ */
+static void
+rgb_to_hls (gdouble *r,
+ gdouble *g,
+ gdouble *b)
+{
+ gdouble min;
+ gdouble max;
+ gdouble red;
+ gdouble green;
+ gdouble blue;
+ gdouble h, l, s;
+ gdouble delta;
+
+ red = *r;
+ green = *g;
+ blue = *b;
+
+ if (red > green)
+ {
+ if (red > blue)
+ max = red;
+ else
+ max = blue;
+
+ if (green < blue)
+ min = green;
+ else
+ min = blue;
+ }
+ else
+ {
+ if (green > blue)
+ max = green;
+ else
+ max = blue;
+
+ if (red < blue)
+ min = red;
+ else
+ min = blue;
+ }
+
+ l = (max + min) / 2;
+ s = 0;
+ h = 0;
+
+ if (max != min)
+ {
+ if (l <= 0.5)
+ s = (max - min) / (max + min);
+ else
+ s = (max - min) / (2 - max - min);
+
+ delta = max -min;
+ if (red == max)
+ h = (green - blue) / delta;
+ else if (green == max)
+ h = 2 + (blue - red) / delta;
+ else if (blue == max)
+ h = 4 + (red - green) / delta;
+
+ h *= 60;
+ if (h < 0.0)
+ h += 360;
+ }
+
+ *r = h;
+ *g = l;
+ *b = s;
+}
+
+/**
+ * Converts a hue/lightness/saturation triplet to a red/green/blue triplet.
+ *
+ * \param h on input, hue; on output, red
+ * \param l on input, lightness; on output, green
+ * \param s on input, saturation; on output, blue
+ */
+static void
+hls_to_rgb (gdouble *h,
+ gdouble *l,
+ gdouble *s)
+{
+ gdouble hue;
+ gdouble lightness;
+ gdouble saturation;
+ gdouble m1, m2;
+ gdouble r, g, b;
+
+ lightness = *l;
+ saturation = *s;
+
+ if (lightness <= 0.5)
+ m2 = lightness * (1 + saturation);
+ else
+ m2 = lightness + saturation - lightness * saturation;
+ m1 = 2 * lightness - m2;
+
+ if (saturation == 0)
+ {
+ *h = lightness;
+ *l = lightness;
+ *s = lightness;
+ }
+ else
+ {
+ hue = *h + 120;
+ while (hue > 360)
+ hue -= 360;
+ while (hue < 0)
+ hue += 360;
+
+ if (hue < 60)
+ r = m1 + (m2 - m1) * hue / 60;
+ else if (hue < 180)
+ r = m2;
+ else if (hue < 240)
+ r = m1 + (m2 - m1) * (240 - hue) / 60;
+ else
+ r = m1;
+
+ hue = *h;
+ while (hue > 360)
+ hue -= 360;
+ while (hue < 0)
+ hue += 360;
+
+ if (hue < 60)
+ g = m1 + (m2 - m1) * hue / 60;
+ else if (hue < 180)
+ g = m2;
+ else if (hue < 240)
+ g = m1 + (m2 - m1) * (240 - hue) / 60;
+ else
+ g = m1;
+
+ hue = *h - 120;
+ while (hue > 360)
+ hue -= 360;
+ while (hue < 0)
+ hue += 360;
+
+ if (hue < 60)
+ b = m1 + (m2 - m1) * hue / 60;
+ else if (hue < 180)
+ b = m2;
+ else if (hue < 240)
+ b = m1 + (m2 - m1) * (240 - hue) / 60;
+ else
+ b = m1;
+
+ *h = r;
+ *l = g;
+ *s = b;
+ }
+}
+
+#if 0
+/* These are some functions I'm saving to use in optimizing
+ * MetaDrawOpList, namely to pre-composite pixbufs on client side
+ * prior to rendering to the server
+ */
+static void
+draw_bg_solid_composite (const MetaTextureSpec *bg,
+ const MetaTextureSpec *fg,
+ double alpha,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ MetaTextureDrawMode mode,
+ double xalign,
+ double yalign,
+ int x,
+ int y,
+ int width,
+ int height)
+{
+ GdkColor bg_color;
+
+ g_assert (bg->type == META_TEXTURE_SOLID);
+ g_assert (fg->type != META_TEXTURE_COMPOSITE);
+ g_assert (fg->type != META_TEXTURE_SHAPE_LIST);
+
+ meta_color_spec_render (bg->data.solid.color_spec,
+ widget,
+ &bg_color);
+
+ switch (fg->type)
+ {
+ case META_TEXTURE_SOLID:
+ {
+ GdkColor fg_color;
+
+ meta_color_spec_render (fg->data.solid.color_spec,
+ widget,
+ &fg_color);
+
+ color_composite (&bg_color, &fg_color,
+ alpha, &fg_color);
+
+ draw_color_rectangle (widget, drawable, &fg_color, clip,
+ x, y, width, height);
+ }
+ break;
+
+ case META_TEXTURE_GRADIENT:
+ /* FIXME I think we could just composite all the colors in
+ * the gradient prior to generating the gradient?
+ */
+ /* FALL THRU */
+ case META_TEXTURE_IMAGE:
+ {
+ GdkPixbuf *pixbuf;
+ GdkPixbuf *composited;
+
+ pixbuf = meta_texture_spec_render (fg, widget, mode, 255,
+ width, height);
+
+ if (pixbuf == NULL)
+ return;
+
+ composited = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
+ gdk_pixbuf_get_has_alpha (pixbuf), 8,
+ gdk_pixbuf_get_width (pixbuf),
+ gdk_pixbuf_get_height (pixbuf));
+
+ if (composited == NULL)
+ {
+ g_object_unref (G_OBJECT (pixbuf));
+ return;
+ }
+
+ gdk_pixbuf_composite_color (pixbuf,
+ composited,
+ 0, 0,
+ gdk_pixbuf_get_width (pixbuf),
+ gdk_pixbuf_get_height (pixbuf),
+ 0.0, 0.0, /* offsets */
+ 1.0, 1.0, /* scale */
+ GDK_INTERP_BILINEAR,
+ 255 * alpha,
+ 0, 0, /* check offsets */
+ 0, /* check size */
+ GDK_COLOR_RGB (bg_color),
+ GDK_COLOR_RGB (bg_color));
+
+ /* Need to draw background since pixbuf is not
+ * necessarily covering the whole thing
+ */
+ draw_color_rectangle (widget, drawable, &bg_color, clip,
+ x, y, width, height);
+
+ render_pixbuf_aligned (drawable, clip, composited,
+ xalign, yalign,
+ x, y, width, height);
+
+ g_object_unref (G_OBJECT (pixbuf));
+ g_object_unref (G_OBJECT (composited));
+ }
+ break;
+
+ case META_TEXTURE_BLANK:
+ case META_TEXTURE_COMPOSITE:
+ case META_TEXTURE_SHAPE_LIST:
+ g_assert_not_reached ();
+ break;
+ }
+}
+
+static void
+draw_bg_gradient_composite (const MetaTextureSpec *bg,
+ const MetaTextureSpec *fg,
+ double alpha,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ MetaTextureDrawMode mode,
+ double xalign,
+ double yalign,
+ int x,
+ int y,
+ int width,
+ int height)
+{
+ g_assert (bg->type == META_TEXTURE_GRADIENT);
+ g_assert (fg->type != META_TEXTURE_COMPOSITE);
+ g_assert (fg->type != META_TEXTURE_SHAPE_LIST);
+
+ switch (fg->type)
+ {
+ case META_TEXTURE_SOLID:
+ case META_TEXTURE_GRADIENT:
+ case META_TEXTURE_IMAGE:
+ {
+ GdkPixbuf *bg_pixbuf;
+ GdkPixbuf *fg_pixbuf;
+ GdkPixbuf *composited;
+ int fg_width, fg_height;
+
+ bg_pixbuf = meta_texture_spec_render (bg, widget, mode, 255,
+ width, height);
+
+ if (bg_pixbuf == NULL)
+ return;
+
+ fg_pixbuf = meta_texture_spec_render (fg, widget, mode, 255,
+ width, height);
+
+ if (fg_pixbuf == NULL)
+ {
+ g_object_unref (G_OBJECT (bg_pixbuf));
+ return;
+ }
+
+ /* gradients always fill the entire target area */
+ g_assert (gdk_pixbuf_get_width (bg_pixbuf) == width);
+ g_assert (gdk_pixbuf_get_height (bg_pixbuf) == height);
+
+ composited = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
+ gdk_pixbuf_get_has_alpha (bg_pixbuf), 8,
+ gdk_pixbuf_get_width (bg_pixbuf),
+ gdk_pixbuf_get_height (bg_pixbuf));
+
+ if (composited == NULL)
+ {
+ g_object_unref (G_OBJECT (bg_pixbuf));
+ g_object_unref (G_OBJECT (fg_pixbuf));
+ return;
+ }
+
+ fg_width = gdk_pixbuf_get_width (fg_pixbuf);
+ fg_height = gdk_pixbuf_get_height (fg_pixbuf);
+
+ /* If we wanted to be all cool we could deal with the
+ * offsets and try to composite only in the clip rectangle,
+ * but I just don't care enough to figure it out.
+ */
+
+ gdk_pixbuf_composite (fg_pixbuf,
+ composited,
+ x + (width - fg_width) * xalign,
+ y + (height - fg_height) * yalign,
+ gdk_pixbuf_get_width (fg_pixbuf),
+ gdk_pixbuf_get_height (fg_pixbuf),
+ 0.0, 0.0, /* offsets */
+ 1.0, 1.0, /* scale */
+ GDK_INTERP_BILINEAR,
+ 255 * alpha);
+
+ gdk_cairo_set_source_pixbuf (cr, composited, x, y);
+ cairo_paint (cr);
+
+ g_object_unref (G_OBJECT (bg_pixbuf));
+ g_object_unref (G_OBJECT (fg_pixbuf));
+ g_object_unref (G_OBJECT (composited));
+ }
+ break;
+
+ case META_TEXTURE_BLANK:
+ case META_TEXTURE_SHAPE_LIST:
+ case META_TEXTURE_COMPOSITE:
+ g_assert_not_reached ();
+ break;
+ }
+}
+#endif
+
+/**
+ * Returns the earliest version of the theme format which required support
+ * for a particular button. (For example, "shade" first appeared in v2, and
+ * "close" in v1.)
+ *
+ * \param type the button type
+ * \return the number of the theme format
+ */
+guint
+meta_theme_earliest_version_with_button (MetaButtonType type)
+{
+ switch (type)
+ {
+ case META_BUTTON_TYPE_CLOSE:
+ case META_BUTTON_TYPE_MAXIMIZE:
+ case META_BUTTON_TYPE_MINIMIZE:
+ case META_BUTTON_TYPE_MENU:
+ case META_BUTTON_TYPE_LEFT_LEFT_BACKGROUND:
+ case META_BUTTON_TYPE_LEFT_MIDDLE_BACKGROUND:
+ case META_BUTTON_TYPE_LEFT_RIGHT_BACKGROUND:
+ case META_BUTTON_TYPE_RIGHT_LEFT_BACKGROUND:
+ case META_BUTTON_TYPE_RIGHT_MIDDLE_BACKGROUND:
+ case META_BUTTON_TYPE_RIGHT_RIGHT_BACKGROUND:
+ return 1;
+
+ case META_BUTTON_TYPE_SHADE:
+ case META_BUTTON_TYPE_ABOVE:
+ case META_BUTTON_TYPE_STICK:
+ case META_BUTTON_TYPE_UNSHADE:
+ case META_BUTTON_TYPE_UNABOVE:
+ case META_BUTTON_TYPE_UNSTICK:
+ return 2;
+
+ default:
+ meta_warning("Unknown button %d\n", type);
+ return 1;
+ }
+}
diff --git a/src/ui/theme.h b/src/ui/theme.h
new file mode 100644
index 00000000..4df8b00e
--- /dev/null
+++ b/src/ui/theme.h
@@ -0,0 +1,1190 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco Theme Rendering */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#ifndef META_THEME_H
+#define META_THEME_H
+
+#include "boxes.h"
+#include "gradient.h"
+#include "common.h"
+#include <gtk/gtk.h>
+
+typedef struct _MetaFrameStyle MetaFrameStyle;
+typedef struct _MetaFrameStyleSet MetaFrameStyleSet;
+typedef struct _MetaDrawOp MetaDrawOp;
+typedef struct _MetaDrawOpList MetaDrawOpList;
+typedef struct _MetaGradientSpec MetaGradientSpec;
+typedef struct _MetaAlphaGradientSpec MetaAlphaGradientSpec;
+typedef struct _MetaColorSpec MetaColorSpec;
+typedef struct _MetaFrameLayout MetaFrameLayout;
+typedef struct _MetaButtonSpace MetaButtonSpace;
+typedef struct _MetaFrameGeometry MetaFrameGeometry;
+typedef struct _MetaTheme MetaTheme;
+typedef struct _MetaPositionExprEnv MetaPositionExprEnv;
+typedef struct _MetaDrawInfo MetaDrawInfo;
+
+#define META_THEME_ERROR (g_quark_from_static_string ("meta-theme-error"))
+
+typedef enum
+{
+ META_THEME_ERROR_FRAME_GEOMETRY,
+ META_THEME_ERROR_BAD_CHARACTER,
+ META_THEME_ERROR_BAD_PARENS,
+ META_THEME_ERROR_UNKNOWN_VARIABLE,
+ META_THEME_ERROR_DIVIDE_BY_ZERO,
+ META_THEME_ERROR_MOD_ON_FLOAT,
+ META_THEME_ERROR_FAILED
+} MetaThemeError;
+
+/**
+ * Whether a button's size is calculated from the area around it (aspect
+ * sizing) or is given as a fixed height and width in pixels (fixed sizing).
+ *
+ * \bug This could be done away with; see the comment at the top of
+ * MetaFrameLayout.
+ */
+typedef enum
+{
+ META_BUTTON_SIZING_ASPECT,
+ META_BUTTON_SIZING_FIXED,
+ META_BUTTON_SIZING_LAST
+} MetaButtonSizing;
+
+/**
+ * Various parameters used to calculate the geometry of a frame.
+ * They are used inside a MetaFrameStyle.
+ * This corresponds closely to the <frame_geometry> tag in a theme file.
+ *
+ * \bug button_sizing isn't really necessary, because we could easily say
+ * that if button_aspect is zero, the height and width are fixed values.
+ * This would also mean that MetaButtonSizing didn't need to exist, and
+ * save code.
+ **/
+struct _MetaFrameLayout
+{
+ /** Reference count. */
+ int refcount;
+
+ /** Size of left side */
+ int left_width;
+ /** Size of right side */
+ int right_width;
+ /** Size of bottom side */
+ int bottom_height;
+
+ /** Border of blue title region
+ * \bug (blue?!)
+ **/
+ GtkBorder title_border;
+
+ /** Extra height for inside of title region, above the font height */
+ int title_vertical_pad;
+
+ /** Right indent of buttons from edges of frame */
+ int right_titlebar_edge;
+ /** Left indent of buttons from edges of frame */
+ int left_titlebar_edge;
+
+ /**
+ * Sizing rule of buttons, either META_BUTTON_SIZING_ASPECT
+ * (in which case button_aspect will be honoured, and
+ * button_width and button_height set from it), or
+ * META_BUTTON_SIZING_FIXED (in which case we read the width
+ * and height directly).
+ */
+ MetaButtonSizing button_sizing;
+
+ /**
+ * Ratio of height/width. Honoured only if
+ * button_sizing==META_BUTTON_SIZING_ASPECT.
+ * Otherwise we figure out the height from the button_border.
+ */
+ double button_aspect;
+
+ /** Width of a button; set even when we are using aspect sizing */
+ int button_width;
+
+ /** Height of a button; set even when we are using aspect sizing */
+ int button_height;
+
+ /** Space around buttons */
+ GtkBorder button_border;
+
+ /** scale factor for title text */
+ double title_scale;
+
+ /** Whether title text will be displayed */
+ guint has_title : 1;
+
+ /** Whether we should hide the buttons */
+ guint hide_buttons : 1;
+
+ /** Radius of the top left-hand corner; 0 if not rounded */
+ guint top_left_corner_rounded_radius;
+ /** Radius of the top right-hand corner; 0 if not rounded */
+ guint top_right_corner_rounded_radius;
+ /** Radius of the bottom left-hand corner; 0 if not rounded */
+ guint bottom_left_corner_rounded_radius;
+ /** Radius of the bottom right-hand corner; 0 if not rounded */
+ guint bottom_right_corner_rounded_radius;
+};
+
+/**
+ * The computed size of a button (really just a way of tying its
+ * visible and clickable areas together).
+ * The reason for two different rectangles here is Fitts' law & maximized
+ * windows; see bug #97703 for more details.
+ */
+struct _MetaButtonSpace
+{
+ /** The screen area where the button's image is drawn */
+ GdkRectangle visible;
+ /** The screen area where the button can be activated by clicking */
+ GdkRectangle clickable;
+};
+
+/**
+ * Calculated actual geometry of the frame
+ */
+struct _MetaFrameGeometry
+{
+ int left_width;
+ int right_width;
+ int top_height;
+ int bottom_height;
+
+ int width;
+ int height;
+
+ GdkRectangle title_rect;
+
+ int left_titlebar_edge;
+ int right_titlebar_edge;
+ int top_titlebar_edge;
+ int bottom_titlebar_edge;
+
+ /* used for a memset hack */
+#define ADDRESS_OF_BUTTON_RECTS(fgeom) (((char*)(fgeom)) + G_STRUCT_OFFSET (MetaFrameGeometry, close_rect))
+#define LENGTH_OF_BUTTON_RECTS (G_STRUCT_OFFSET (MetaFrameGeometry, right_right_background) + sizeof (GdkRectangle) - G_STRUCT_OFFSET (MetaFrameGeometry, close_rect))
+
+ /* The button rects (if changed adjust memset hack) */
+ MetaButtonSpace close_rect;
+ MetaButtonSpace max_rect;
+ MetaButtonSpace min_rect;
+ MetaButtonSpace menu_rect;
+ MetaButtonSpace shade_rect;
+ MetaButtonSpace above_rect;
+ MetaButtonSpace stick_rect;
+ MetaButtonSpace unshade_rect;
+ MetaButtonSpace unabove_rect;
+ MetaButtonSpace unstick_rect;
+
+#define MAX_MIDDLE_BACKGROUNDS (MAX_BUTTONS_PER_CORNER - 2)
+ GdkRectangle left_left_background;
+ GdkRectangle left_middle_backgrounds[MAX_MIDDLE_BACKGROUNDS];
+ GdkRectangle left_right_background;
+ GdkRectangle right_left_background;
+ GdkRectangle right_middle_backgrounds[MAX_MIDDLE_BACKGROUNDS];
+ GdkRectangle right_right_background;
+ /* End of button rects (if changed adjust memset hack) */
+
+ /* Round corners */
+ guint top_left_corner_rounded_radius;
+ guint top_right_corner_rounded_radius;
+ guint bottom_left_corner_rounded_radius;
+ guint bottom_right_corner_rounded_radius;
+};
+
+typedef enum
+{
+ META_IMAGE_FILL_SCALE, /* default, needs to be all-bits-zero for g_new0 */
+ META_IMAGE_FILL_TILE
+} MetaImageFillType;
+
+typedef enum
+{
+ META_COLOR_SPEC_BASIC,
+ META_COLOR_SPEC_GTK,
+ META_COLOR_SPEC_BLEND,
+ META_COLOR_SPEC_SHADE
+} MetaColorSpecType;
+
+typedef enum
+{
+ META_GTK_COLOR_FG,
+ META_GTK_COLOR_BG,
+ META_GTK_COLOR_LIGHT,
+ META_GTK_COLOR_DARK,
+ META_GTK_COLOR_MID,
+ META_GTK_COLOR_TEXT,
+ META_GTK_COLOR_BASE,
+ META_GTK_COLOR_TEXT_AA,
+ META_GTK_COLOR_LAST
+} MetaGtkColorComponent;
+
+struct _MetaColorSpec
+{
+ MetaColorSpecType type;
+ union
+ {
+ struct {
+ GdkColor color;
+ } basic;
+ struct {
+ MetaGtkColorComponent component;
+ GtkStateType state;
+ } gtk;
+ struct {
+ MetaColorSpec *foreground;
+ MetaColorSpec *background;
+ double alpha;
+
+ GdkColor color;
+ } blend;
+ struct {
+ MetaColorSpec *base;
+ double factor;
+
+ GdkColor color;
+ } shade;
+ } data;
+};
+
+struct _MetaGradientSpec
+{
+ MetaGradientType type;
+ GSList *color_specs;
+};
+
+struct _MetaAlphaGradientSpec
+{
+ MetaGradientType type;
+ unsigned char *alphas;
+ int n_alphas;
+};
+
+struct _MetaDrawInfo
+{
+ GdkPixbuf *mini_icon;
+ GdkPixbuf *icon;
+ PangoLayout *title_layout;
+ int title_layout_width;
+ int title_layout_height;
+ const MetaFrameGeometry *fgeom;
+};
+
+/**
+ * A drawing operation in our simple vector drawing language.
+ */
+typedef enum
+{
+ /** Basic drawing-- line */
+ META_DRAW_LINE,
+ /** Basic drawing-- rectangle */
+ META_DRAW_RECTANGLE,
+ /** Basic drawing-- arc */
+ META_DRAW_ARC,
+
+ /** Clip to a rectangle */
+ META_DRAW_CLIP,
+
+ /* Texture thingies */
+
+ /** Just a filled rectangle with alpha */
+ META_DRAW_TINT,
+ META_DRAW_GRADIENT,
+ META_DRAW_IMAGE,
+
+ /** GTK theme engine stuff */
+ META_DRAW_GTK_ARROW,
+ META_DRAW_GTK_BOX,
+ META_DRAW_GTK_VLINE,
+
+ /** App's window icon */
+ META_DRAW_ICON,
+ /** App's window title */
+ META_DRAW_TITLE,
+ /** a draw op list */
+ META_DRAW_OP_LIST,
+ /** tiled draw op list */
+ META_DRAW_TILE
+} MetaDrawType;
+
+typedef enum
+{
+ POS_TOKEN_INT,
+ POS_TOKEN_DOUBLE,
+ POS_TOKEN_OPERATOR,
+ POS_TOKEN_VARIABLE,
+ POS_TOKEN_OPEN_PAREN,
+ POS_TOKEN_CLOSE_PAREN
+} PosTokenType;
+
+typedef enum
+{
+ POS_OP_NONE,
+ POS_OP_ADD,
+ POS_OP_SUBTRACT,
+ POS_OP_MULTIPLY,
+ POS_OP_DIVIDE,
+ POS_OP_MOD,
+ POS_OP_MAX,
+ POS_OP_MIN
+} PosOperatorType;
+
+/**
+ * A token, as output by the tokeniser.
+ *
+ * \ingroup tokenizer
+ */
+typedef struct
+{
+ PosTokenType type;
+
+ union
+ {
+ struct {
+ int val;
+ } i;
+
+ struct {
+ double val;
+ } d;
+
+ struct {
+ PosOperatorType op;
+ } o;
+
+ struct {
+ char *name;
+ GQuark name_quark;
+ } v;
+
+ } d;
+} PosToken;
+
+/**
+ * A computed expression in our simple vector drawing language.
+ * While it appears to take the form of a tree, this is actually
+ * merely a list; concerns such as precedence of operators are
+ * currently recomputed on every recalculation.
+ *
+ * Created by meta_draw_spec_new(), destroyed by meta_draw_spec_free().
+ * pos_eval() fills this with ...FIXME. Are tokens a tree or a list?
+ * \ingroup parser
+ */
+typedef struct _MetaDrawSpec
+{
+ /**
+ * If this spec is constant, this is the value of the constant;
+ * otherwise it is zero.
+ */
+ int value;
+
+ /** A list of tokens in the expression. */
+ PosToken *tokens;
+
+ /** How many tokens are in the tokens list. */
+ int n_tokens;
+
+ /** Does the expression contain any variables? */
+ gboolean constant : 1;
+} MetaDrawSpec;
+
+/**
+ * A single drawing operation in our simple vector drawing language.
+ */
+struct _MetaDrawOp
+{
+ MetaDrawType type;
+
+ /* Positions are strings because they can be expressions */
+ union
+ {
+ struct {
+ MetaColorSpec *color_spec;
+ int dash_on_length;
+ int dash_off_length;
+ int width;
+ MetaDrawSpec *x1;
+ MetaDrawSpec *y1;
+ MetaDrawSpec *x2;
+ MetaDrawSpec *y2;
+ } line;
+
+ struct {
+ MetaColorSpec *color_spec;
+ gboolean filled;
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ MetaDrawSpec *width;
+ MetaDrawSpec *height;
+ } rectangle;
+
+ struct {
+ MetaColorSpec *color_spec;
+ gboolean filled;
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ MetaDrawSpec *width;
+ MetaDrawSpec *height;
+ double start_angle;
+ double extent_angle;
+ } arc;
+
+ struct {
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ MetaDrawSpec *width;
+ MetaDrawSpec *height;
+ } clip;
+
+ struct {
+ MetaColorSpec *color_spec;
+ MetaAlphaGradientSpec *alpha_spec;
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ MetaDrawSpec *width;
+ MetaDrawSpec *height;
+ } tint;
+
+ struct {
+ MetaGradientSpec *gradient_spec;
+ MetaAlphaGradientSpec *alpha_spec;
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ MetaDrawSpec *width;
+ MetaDrawSpec *height;
+ } gradient;
+
+ struct {
+ MetaColorSpec *colorize_spec;
+ MetaAlphaGradientSpec *alpha_spec;
+ GdkPixbuf *pixbuf;
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ MetaDrawSpec *width;
+ MetaDrawSpec *height;
+
+ guint32 colorize_cache_pixel;
+ GdkPixbuf *colorize_cache_pixbuf;
+ MetaImageFillType fill_type;
+ unsigned int vertical_stripes : 1;
+ unsigned int horizontal_stripes : 1;
+ } image;
+
+ struct {
+ GtkStateType state;
+ GtkShadowType shadow;
+ GtkArrowType arrow;
+ gboolean filled;
+
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ MetaDrawSpec *width;
+ MetaDrawSpec *height;
+ } gtk_arrow;
+
+ struct {
+ GtkStateType state;
+ GtkShadowType shadow;
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ MetaDrawSpec *width;
+ MetaDrawSpec *height;
+ } gtk_box;
+
+ struct {
+ GtkStateType state;
+ MetaDrawSpec *x;
+ MetaDrawSpec *y1;
+ MetaDrawSpec *y2;
+ } gtk_vline;
+
+ struct {
+ MetaAlphaGradientSpec *alpha_spec;
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ MetaDrawSpec *width;
+ MetaDrawSpec *height;
+ MetaImageFillType fill_type;
+ } icon;
+
+ struct {
+ MetaColorSpec *color_spec;
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ } title;
+
+ struct {
+ MetaDrawOpList *op_list;
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ MetaDrawSpec *width;
+ MetaDrawSpec *height;
+ } op_list;
+
+ struct {
+ MetaDrawOpList *op_list;
+ MetaDrawSpec *x;
+ MetaDrawSpec *y;
+ MetaDrawSpec *width;
+ MetaDrawSpec *height;
+ MetaDrawSpec *tile_xoffset;
+ MetaDrawSpec *tile_yoffset;
+ MetaDrawSpec *tile_width;
+ MetaDrawSpec *tile_height;
+ } tile;
+
+ } data;
+};
+
+/**
+ * A list of MetaDrawOp objects. Maintains a reference count.
+ * Grows as necessary and allows the allocation of unused spaces
+ * to keep reallocations to a minimum.
+ *
+ * \bug Do we really win anything from not using the equivalent
+ * GLib structures?
+ */
+struct _MetaDrawOpList
+{
+ int refcount;
+ MetaDrawOp **ops;
+ int n_ops;
+ int n_allocated;
+};
+
+typedef enum
+{
+ META_BUTTON_STATE_NORMAL,
+ META_BUTTON_STATE_PRESSED,
+ META_BUTTON_STATE_PRELIGHT,
+ META_BUTTON_STATE_LAST
+} MetaButtonState;
+
+typedef enum
+{
+ /* Ordered so that background is drawn first */
+ META_BUTTON_TYPE_LEFT_LEFT_BACKGROUND,
+ META_BUTTON_TYPE_LEFT_MIDDLE_BACKGROUND,
+ META_BUTTON_TYPE_LEFT_RIGHT_BACKGROUND,
+ META_BUTTON_TYPE_RIGHT_LEFT_BACKGROUND,
+ META_BUTTON_TYPE_RIGHT_MIDDLE_BACKGROUND,
+ META_BUTTON_TYPE_RIGHT_RIGHT_BACKGROUND,
+ META_BUTTON_TYPE_CLOSE,
+ META_BUTTON_TYPE_MAXIMIZE,
+ META_BUTTON_TYPE_MINIMIZE,
+ META_BUTTON_TYPE_MENU,
+ META_BUTTON_TYPE_SHADE,
+ META_BUTTON_TYPE_ABOVE,
+ META_BUTTON_TYPE_STICK,
+ META_BUTTON_TYPE_UNSHADE,
+ META_BUTTON_TYPE_UNABOVE,
+ META_BUTTON_TYPE_UNSTICK,
+ META_BUTTON_TYPE_LAST
+} MetaButtonType;
+
+typedef enum
+{
+ META_MENU_ICON_TYPE_CLOSE,
+ META_MENU_ICON_TYPE_MAXIMIZE,
+ META_MENU_ICON_TYPE_UNMAXIMIZE,
+ META_MENU_ICON_TYPE_MINIMIZE,
+ META_MENU_ICON_TYPE_LAST
+} MetaMenuIconType;
+
+typedef enum
+{
+ /* Listed in the order in which the textures are drawn.
+ * (though this only matters for overlaps of course.)
+ * Buttons are drawn after the frame textures.
+ *
+ * On the corners, horizontal pieces are arbitrarily given the
+ * corner area:
+ *
+ * ===== |====
+ * | |
+ * | rather than |
+ *
+ */
+
+ /* entire frame */
+ META_FRAME_PIECE_ENTIRE_BACKGROUND,
+ /* entire titlebar background */
+ META_FRAME_PIECE_TITLEBAR,
+ /* portion of the titlebar background inside the titlebar
+ * background edges
+ */
+ META_FRAME_PIECE_TITLEBAR_MIDDLE,
+ /* left end of titlebar */
+ META_FRAME_PIECE_LEFT_TITLEBAR_EDGE,
+ /* right end of titlebar */
+ META_FRAME_PIECE_RIGHT_TITLEBAR_EDGE,
+ /* top edge of titlebar */
+ META_FRAME_PIECE_TOP_TITLEBAR_EDGE,
+ /* bottom edge of titlebar */
+ META_FRAME_PIECE_BOTTOM_TITLEBAR_EDGE,
+ /* render over title background (text area) */
+ META_FRAME_PIECE_TITLE,
+ /* left edge of the frame */
+ META_FRAME_PIECE_LEFT_EDGE,
+ /* right edge of the frame */
+ META_FRAME_PIECE_RIGHT_EDGE,
+ /* bottom edge of the frame */
+ META_FRAME_PIECE_BOTTOM_EDGE,
+ /* place over entire frame, after drawing everything else */
+ META_FRAME_PIECE_OVERLAY,
+ /* Used to get size of the enum */
+ META_FRAME_PIECE_LAST
+} MetaFramePiece;
+
+#define N_GTK_STATES 5
+
+/**
+ * How to draw a frame in a particular state (say, a focussed, non-maximised,
+ * resizable frame). This corresponds closely to the <frame_style> tag
+ * in a theme file.
+ */
+struct _MetaFrameStyle
+{
+ /** Reference count. */
+ int refcount;
+ /**
+ * Parent style.
+ * Settings which are unspecified here will be taken from there.
+ */
+ MetaFrameStyle *parent;
+ /** Operations for drawing each kind of button in each state. */
+ MetaDrawOpList *buttons[META_BUTTON_TYPE_LAST][META_BUTTON_STATE_LAST];
+ /** Operations for drawing each piece of the frame. */
+ MetaDrawOpList *pieces[META_FRAME_PIECE_LAST];
+ /**
+ * Details such as the height and width of each edge, the corner rounding,
+ * and the aspect ratio of the buttons.
+ */
+ MetaFrameLayout *layout;
+ /**
+ * Background colour of the window. Only present in theme formats
+ * 2 and above. Can be NULL to use the standard GTK theme engine.
+ */
+ MetaColorSpec *window_background_color;
+ /**
+ * Transparency of the window background. 0=transparent; 255=opaque.
+ */
+ guint8 window_background_alpha;
+};
+
+/* Kinds of frame...
+ *
+ * normal -> noresize / vert only / horz only / both
+ * focused / unfocused
+ * max -> focused / unfocused
+ * shaded -> focused / unfocused
+ * max/shaded -> focused / unfocused
+ *
+ * so 4 states with 8 sub-states in one, 2 sub-states in the other 3,
+ * meaning 14 total
+ *
+ * 14 window states times 7 or 8 window types. Except some
+ * window types never get a frame so that narrows it down a bit.
+ *
+ */
+typedef enum
+{
+ META_FRAME_STATE_NORMAL,
+ META_FRAME_STATE_MAXIMIZED,
+ META_FRAME_STATE_SHADED,
+ META_FRAME_STATE_MAXIMIZED_AND_SHADED,
+ META_FRAME_STATE_LAST
+} MetaFrameState;
+
+typedef enum
+{
+ META_FRAME_RESIZE_NONE,
+ META_FRAME_RESIZE_VERTICAL,
+ META_FRAME_RESIZE_HORIZONTAL,
+ META_FRAME_RESIZE_BOTH,
+ META_FRAME_RESIZE_LAST
+} MetaFrameResize;
+
+typedef enum
+{
+ META_FRAME_FOCUS_NO,
+ META_FRAME_FOCUS_YES,
+ META_FRAME_FOCUS_LAST
+} MetaFrameFocus;
+
+/**
+ * How to draw frames at different times: when it's maximised or not, shaded
+ * or not, when it's focussed or not, and (for non-maximised windows), when
+ * it can be horizontally or vertically resized, both, or neither.
+ * Not all window types actually get a frame.
+ *
+ * A theme contains one of these objects for each type of window (each
+ * MetaFrameType), that is, normal, dialogue (modal and non-modal), etc.
+ *
+ * This corresponds closely to the <frame_style_set> tag in a theme file.
+ */
+struct _MetaFrameStyleSet
+{
+ int refcount;
+ MetaFrameStyleSet *parent;
+ MetaFrameStyle *normal_styles[META_FRAME_RESIZE_LAST][META_FRAME_FOCUS_LAST];
+ MetaFrameStyle *maximized_styles[META_FRAME_FOCUS_LAST];
+ MetaFrameStyle *shaded_styles[META_FRAME_RESIZE_LAST][META_FRAME_FOCUS_LAST];
+ MetaFrameStyle *maximized_and_shaded_styles[META_FRAME_FOCUS_LAST];
+};
+
+/**
+ * A theme. This is a singleton class which groups all settings from a theme
+ * on disk together.
+ *
+ * \bug It is rather useless to keep the metadata fields in core, I think.
+ */
+struct _MetaTheme
+{
+ /** Name of the theme (on disk), e.g. "Crux" */
+ char *name;
+ /** Path to the files associated with the theme */
+ char *dirname;
+ /**
+ * Filename of the XML theme file.
+ * \bug Kept lying around for no discernable reason.
+ */
+ char *filename;
+ /** Metadata: Human-readable name of the theme. */
+ char *readable_name;
+ /** Metadata: Author of the theme. */
+ char *author;
+ /** Metadata: Copyright holder. */
+ char *copyright;
+ /** Metadata: Date of the theme. */
+ char *date;
+ /** Metadata: Description of the theme. */
+ char *description;
+ /** Version of the theme format. Older versions cannot use the features
+ * of newer versions even if they think they can (this is to allow forward
+ * and backward compatibility.
+ */
+ guint format_version;
+
+ /** Symbol table of integer constants. */
+ GHashTable *integer_constants;
+ /** Symbol table of float constants. */
+ GHashTable *float_constants;
+ /**
+ * Symbol table of colour constants (hex triples, and triples
+ * plus alpha).
+ * */
+ GHashTable *color_constants;
+ GHashTable *images_by_filename;
+ GHashTable *layouts_by_name;
+ GHashTable *draw_op_lists_by_name;
+ GHashTable *styles_by_name;
+ GHashTable *style_sets_by_name;
+ MetaFrameStyleSet *style_sets_by_type[META_FRAME_TYPE_LAST];
+
+ GQuark quark_width;
+ GQuark quark_height;
+ GQuark quark_object_width;
+ GQuark quark_object_height;
+ GQuark quark_left_width;
+ GQuark quark_right_width;
+ GQuark quark_top_height;
+ GQuark quark_bottom_height;
+ GQuark quark_mini_icon_width;
+ GQuark quark_mini_icon_height;
+ GQuark quark_icon_width;
+ GQuark quark_icon_height;
+ GQuark quark_title_width;
+ GQuark quark_title_height;
+};
+
+struct _MetaPositionExprEnv
+{
+ MetaRectangle rect;
+ /* size of an object being drawn, if it has a natural size */
+ int object_width;
+ int object_height;
+ /* global object sizes, always available */
+ int left_width;
+ int right_width;
+ int top_height;
+ int bottom_height;
+ int title_width;
+ int title_height;
+ int mini_icon_width;
+ int mini_icon_height;
+ int icon_width;
+ int icon_height;
+ /* Theme so we can look up constants */
+ MetaTheme *theme;
+};
+
+MetaFrameLayout* meta_frame_layout_new (void);
+MetaFrameLayout* meta_frame_layout_copy (const MetaFrameLayout *src);
+void meta_frame_layout_ref (MetaFrameLayout *layout);
+void meta_frame_layout_unref (MetaFrameLayout *layout);
+void meta_frame_layout_get_borders (const MetaFrameLayout *layout,
+ int text_height,
+ MetaFrameFlags flags,
+ int *top_height,
+ int *bottom_height,
+ int *left_width,
+ int *right_width);
+void meta_frame_layout_calc_geometry (const MetaFrameLayout *layout,
+ int text_height,
+ MetaFrameFlags flags,
+ int client_width,
+ int client_height,
+ const MetaButtonLayout *button_layout,
+ MetaFrameGeometry *fgeom,
+ MetaTheme *theme);
+
+gboolean meta_frame_layout_validate (const MetaFrameLayout *layout,
+ GError **error);
+
+gboolean meta_parse_position_expression (MetaDrawSpec *spec,
+ const MetaPositionExprEnv *env,
+ int *x_return,
+ int *y_return,
+ GError **err);
+gboolean meta_parse_size_expression (MetaDrawSpec *spec,
+ const MetaPositionExprEnv *env,
+ int *val_return,
+ GError **err);
+
+MetaDrawSpec* meta_draw_spec_new (MetaTheme *theme,
+ const char *expr,
+ GError **error);
+void meta_draw_spec_free (MetaDrawSpec *spec);
+
+MetaColorSpec* meta_color_spec_new (MetaColorSpecType type);
+MetaColorSpec* meta_color_spec_new_from_string (const char *str,
+ GError **err);
+MetaColorSpec* meta_color_spec_new_gtk (MetaGtkColorComponent component,
+ GtkStateType state);
+void meta_color_spec_free (MetaColorSpec *spec);
+void meta_color_spec_render (MetaColorSpec *spec,
+ GtkWidget *widget,
+ GdkColor *color);
+
+
+MetaDrawOp* meta_draw_op_new (MetaDrawType type);
+void meta_draw_op_free (MetaDrawOp *op);
+void meta_draw_op_draw (const MetaDrawOp *op,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ const MetaDrawInfo *info,
+ /* logical region being drawn */
+ MetaRectangle logical_region);
+
+void meta_draw_op_draw_with_style (const MetaDrawOp *op,
+ GtkStyle *style_gtk,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ const MetaDrawInfo *info,
+ /* logical region being drawn */
+ MetaRectangle logical_region);
+
+MetaDrawOpList* meta_draw_op_list_new (int n_preallocs);
+void meta_draw_op_list_ref (MetaDrawOpList *op_list);
+void meta_draw_op_list_unref (MetaDrawOpList *op_list);
+void meta_draw_op_list_draw (const MetaDrawOpList *op_list,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ const MetaDrawInfo *info,
+ MetaRectangle rect);
+void meta_draw_op_list_draw_with_style (const MetaDrawOpList *op_list,
+ GtkStyle *style_gtk,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ const MetaDrawInfo *info,
+ MetaRectangle rect);
+void meta_draw_op_list_append (MetaDrawOpList *op_list,
+ MetaDrawOp *op);
+gboolean meta_draw_op_list_validate (MetaDrawOpList *op_list,
+ GError **error);
+gboolean meta_draw_op_list_contains (MetaDrawOpList *op_list,
+ MetaDrawOpList *child);
+
+MetaGradientSpec* meta_gradient_spec_new (MetaGradientType type);
+void meta_gradient_spec_free (MetaGradientSpec *desc);
+GdkPixbuf* meta_gradient_spec_render (const MetaGradientSpec *desc,
+ GtkWidget *widget,
+ int width,
+ int height);
+gboolean meta_gradient_spec_validate (MetaGradientSpec *spec,
+ GError **error);
+
+MetaAlphaGradientSpec* meta_alpha_gradient_spec_new (MetaGradientType type,
+ int n_alphas);
+void meta_alpha_gradient_spec_free (MetaAlphaGradientSpec *spec);
+
+
+MetaFrameStyle* meta_frame_style_new (MetaFrameStyle *parent);
+void meta_frame_style_ref (MetaFrameStyle *style);
+void meta_frame_style_unref (MetaFrameStyle *style);
+
+void meta_frame_style_draw (MetaFrameStyle *style,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ int x_offset,
+ int y_offset,
+ const GdkRectangle *clip,
+ const MetaFrameGeometry *fgeom,
+ int client_width,
+ int client_height,
+ PangoLayout *title_layout,
+ int text_height,
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST],
+ GdkPixbuf *mini_icon,
+ GdkPixbuf *icon);
+
+
+void meta_frame_style_draw_with_style (MetaFrameStyle *style,
+ GtkStyle *style_gtk,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ int x_offset,
+ int y_offset,
+ const GdkRectangle *clip,
+ const MetaFrameGeometry *fgeom,
+ int client_width,
+ int client_height,
+ PangoLayout *title_layout,
+ int text_height,
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST],
+ GdkPixbuf *mini_icon,
+ GdkPixbuf *icon);
+
+
+gboolean meta_frame_style_validate (MetaFrameStyle *style,
+ guint current_theme_version,
+ GError **error);
+
+MetaFrameStyleSet* meta_frame_style_set_new (MetaFrameStyleSet *parent);
+void meta_frame_style_set_ref (MetaFrameStyleSet *style_set);
+void meta_frame_style_set_unref (MetaFrameStyleSet *style_set);
+
+gboolean meta_frame_style_set_validate (MetaFrameStyleSet *style_set,
+ GError **error);
+
+MetaTheme* meta_theme_get_current (void);
+void meta_theme_set_current (const char *name,
+ gboolean force_reload);
+
+MetaTheme* meta_theme_new (void);
+void meta_theme_free (MetaTheme *theme);
+gboolean meta_theme_validate (MetaTheme *theme,
+ GError **error);
+GdkPixbuf* meta_theme_load_image (MetaTheme *theme,
+ const char *filename,
+ guint size_of_theme_icons,
+ GError **error);
+
+MetaFrameStyle* meta_theme_get_frame_style (MetaTheme *theme,
+ MetaFrameType type,
+ MetaFrameFlags flags);
+
+double meta_theme_get_title_scale (MetaTheme *theme,
+ MetaFrameType type,
+ MetaFrameFlags flags);
+
+void meta_theme_draw_frame (MetaTheme *theme,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ int x_offset,
+ int y_offset,
+ MetaFrameType type,
+ MetaFrameFlags flags,
+ int client_width,
+ int client_height,
+ PangoLayout *title_layout,
+ int text_height,
+ const MetaButtonLayout *button_layout,
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST],
+ GdkPixbuf *mini_icon,
+ GdkPixbuf *icon);
+
+void meta_theme_draw_frame_by_name (MetaTheme *theme,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ int x_offset,
+ int y_offset,
+ const gchar *style_name,
+ MetaFrameFlags flags,
+ int client_width,
+ int client_height,
+ PangoLayout *title_layout,
+ int text_height,
+ const MetaButtonLayout *button_layout,
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST],
+ GdkPixbuf *mini_icon,
+ GdkPixbuf *icon);
+
+void meta_theme_draw_frame_with_style (MetaTheme *theme,
+ GtkStyle *style_gtk,
+ GtkWidget *widget,
+ GdkDrawable *drawable,
+ const GdkRectangle *clip,
+ int x_offset,
+ int y_offset,
+ MetaFrameType type,
+ MetaFrameFlags flags,
+ int client_width,
+ int client_height,
+ PangoLayout *title_layout,
+ int text_height,
+ const MetaButtonLayout *button_layout,
+ MetaButtonState button_states[META_BUTTON_TYPE_LAST],
+ GdkPixbuf *mini_icon,
+ GdkPixbuf *icon);
+
+void meta_theme_get_frame_borders (MetaTheme *theme,
+ MetaFrameType type,
+ int text_height,
+ MetaFrameFlags flags,
+ int *top_height,
+ int *bottom_height,
+ int *left_width,
+ int *right_width);
+void meta_theme_calc_geometry (MetaTheme *theme,
+ MetaFrameType type,
+ int text_height,
+ MetaFrameFlags flags,
+ int client_width,
+ int client_height,
+ const MetaButtonLayout *button_layout,
+ MetaFrameGeometry *fgeom);
+
+MetaFrameLayout* meta_theme_lookup_layout (MetaTheme *theme,
+ const char *name);
+void meta_theme_insert_layout (MetaTheme *theme,
+ const char *name,
+ MetaFrameLayout *layout);
+MetaDrawOpList* meta_theme_lookup_draw_op_list (MetaTheme *theme,
+ const char *name);
+void meta_theme_insert_draw_op_list (MetaTheme *theme,
+ const char *name,
+ MetaDrawOpList *op_list);
+MetaFrameStyle* meta_theme_lookup_style (MetaTheme *theme,
+ const char *name);
+void meta_theme_insert_style (MetaTheme *theme,
+ const char *name,
+ MetaFrameStyle *style);
+MetaFrameStyleSet* meta_theme_lookup_style_set (MetaTheme *theme,
+ const char *name);
+void meta_theme_insert_style_set (MetaTheme *theme,
+ const char *name,
+ MetaFrameStyleSet *style_set);
+gboolean meta_theme_define_int_constant (MetaTheme *theme,
+ const char *name,
+ int value,
+ GError **error);
+gboolean meta_theme_lookup_int_constant (MetaTheme *theme,
+ const char *name,
+ int *value);
+gboolean meta_theme_define_float_constant (MetaTheme *theme,
+ const char *name,
+ double value,
+ GError **error);
+gboolean meta_theme_lookup_float_constant (MetaTheme *theme,
+ const char *name,
+ double *value);
+
+gboolean meta_theme_define_color_constant (MetaTheme *theme,
+ const char *name,
+ const char *value,
+ GError **error);
+gboolean meta_theme_lookup_color_constant (MetaTheme *theme,
+ const char *name,
+ char **value);
+
+gboolean meta_theme_replace_constants (MetaTheme *theme,
+ PosToken *tokens,
+ int n_tokens,
+ GError **err);
+
+/* random stuff */
+
+PangoFontDescription* meta_gtk_widget_get_font_desc (GtkWidget *widget,
+ double scale,
+ const PangoFontDescription *override);
+int meta_pango_font_desc_get_text_height (const PangoFontDescription *font_desc,
+ PangoContext *context);
+
+
+/* Enum converters */
+MetaGtkColorComponent meta_color_component_from_string (const char *str);
+const char* meta_color_component_to_string (MetaGtkColorComponent component);
+MetaButtonState meta_button_state_from_string (const char *str);
+const char* meta_button_state_to_string (MetaButtonState state);
+MetaButtonType meta_button_type_from_string (const char *str,
+ MetaTheme *theme);
+const char* meta_button_type_to_string (MetaButtonType type);
+MetaFramePiece meta_frame_piece_from_string (const char *str);
+const char* meta_frame_piece_to_string (MetaFramePiece piece);
+MetaFrameState meta_frame_state_from_string (const char *str);
+const char* meta_frame_state_to_string (MetaFrameState state);
+MetaFrameResize meta_frame_resize_from_string (const char *str);
+const char* meta_frame_resize_to_string (MetaFrameResize resize);
+MetaFrameFocus meta_frame_focus_from_string (const char *str);
+const char* meta_frame_focus_to_string (MetaFrameFocus focus);
+MetaFrameType meta_frame_type_from_string (const char *str);
+const char* meta_frame_type_to_string (MetaFrameType type);
+MetaGradientType meta_gradient_type_from_string (const char *str);
+const char* meta_gradient_type_to_string (MetaGradientType type);
+GtkStateType meta_gtk_state_from_string (const char *str);
+const char* meta_gtk_state_to_string (GtkStateType state);
+GtkShadowType meta_gtk_shadow_from_string (const char *str);
+const char* meta_gtk_shadow_to_string (GtkShadowType shadow);
+GtkArrowType meta_gtk_arrow_from_string (const char *str);
+const char* meta_gtk_arrow_to_string (GtkArrowType arrow);
+MetaImageFillType meta_image_fill_type_from_string (const char *str);
+const char* meta_image_fill_type_to_string (MetaImageFillType fill_type);
+
+guint meta_theme_earliest_version_with_button (MetaButtonType type);
+
+
+#define META_THEME_ALLOWS(theme, feature) (theme->format_version >= feature)
+
+/* What version of the theme file format were various features introduced in? */
+#define META_THEME_SHADE_STICK_ABOVE_BUTTONS 2
+#define META_THEME_UBIQUITOUS_CONSTANTS 2
+#define META_THEME_VARIED_ROUND_CORNERS 2
+#define META_THEME_IMAGES_FROM_ICON_THEMES 2
+#define META_THEME_UNRESIZABLE_SHADED_STYLES 2
+#define META_THEME_DEGREES_IN_ARCS 2
+#define META_THEME_HIDDEN_BUTTONS 2
+#define META_THEME_COLOR_CONSTANTS 2
+#define META_THEME_FRAME_BACKGROUNDS 2
+
+#endif
diff --git a/src/ui/themewidget.c b/src/ui/themewidget.c
new file mode 100644
index 00000000..2d4e99fe
--- /dev/null
+++ b/src/ui/themewidget.c
@@ -0,0 +1,183 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco theme widget (displays themed draw operations) */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include "themewidget.h"
+#include <math.h>
+
+static void meta_area_class_init (MetaAreaClass *klass);
+static void meta_area_init (MetaArea *area);
+static void meta_area_size_request (GtkWidget *widget,
+ GtkRequisition *req);
+static gint meta_area_expose (GtkWidget *widget,
+ GdkEventExpose *event);
+static void meta_area_finalize (GObject *object);
+
+
+static GtkMiscClass *parent_class;
+
+GType
+meta_area_get_type (void)
+{
+ static GType area_type = 0;
+
+ if (!area_type)
+ {
+ static const GtkTypeInfo area_info =
+ {
+ "MetaArea",
+ sizeof (MetaArea),
+ sizeof (MetaAreaClass),
+ (GtkClassInitFunc) meta_area_class_init,
+ (GtkObjectInitFunc) meta_area_init,
+ /* reserved_1 */ NULL,
+ /* reserved_2 */ NULL,
+ (GtkClassInitFunc) NULL,
+ };
+
+ area_type = gtk_type_unique (GTK_TYPE_MISC, &area_info);
+ }
+
+ return area_type;
+}
+
+static void
+meta_area_class_init (MetaAreaClass *class)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (class);
+ GtkObjectClass *object_class;
+ GtkWidgetClass *widget_class;
+
+ object_class = (GtkObjectClass*) class;
+ widget_class = (GtkWidgetClass*) class;
+ parent_class = g_type_class_peek (gtk_misc_get_type ());
+
+ gobject_class->finalize = meta_area_finalize;
+
+ widget_class->expose_event = meta_area_expose;
+ widget_class->size_request = meta_area_size_request;
+}
+
+static void
+meta_area_init (MetaArea *area)
+{
+ GTK_WIDGET_SET_FLAGS (area, GTK_NO_WINDOW);
+}
+
+GtkWidget*
+meta_area_new (void)
+{
+ MetaArea *area;
+
+ area = gtk_type_new (META_TYPE_AREA);
+
+ return GTK_WIDGET (area);
+}
+
+static void
+meta_area_finalize (GObject *object)
+{
+ MetaArea *area;
+
+ area = META_AREA (object);
+
+ if (area->dnotify)
+ (* area->dnotify) (area->user_data);
+
+ G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
+static gint
+meta_area_expose (GtkWidget *widget,
+ GdkEventExpose *event)
+{
+ MetaArea *area;
+ GtkMisc *misc;
+ gint x, y;
+ gfloat xalign;
+
+ g_return_val_if_fail (META_IS_AREA (widget), FALSE);
+ g_return_val_if_fail (event != NULL, FALSE);
+
+ if (GTK_WIDGET_DRAWABLE (widget))
+ {
+ area = META_AREA (widget);
+ misc = GTK_MISC (widget);
+
+ if (gtk_widget_get_direction (widget) == GTK_TEXT_DIR_LTR)
+ xalign = misc->xalign;
+ else
+ xalign = 1.0 - misc->xalign;
+
+ x = floor (widget->allocation.x + misc->xpad
+ + ((widget->allocation.width - widget->requisition.width) * xalign)
+ + 0.5);
+ y = floor (widget->allocation.y + misc->ypad
+ + ((widget->allocation.height - widget->requisition.height) * misc->yalign)
+ + 0.5);
+
+ if (area->expose_func)
+ {
+ (* area->expose_func) (area, event, x, y,
+ area->user_data);
+ }
+ }
+
+ return FALSE;
+}
+
+static void
+meta_area_size_request (GtkWidget *widget,
+ GtkRequisition *req)
+{
+ MetaArea *area;
+
+ area = META_AREA (widget);
+
+ req->width = 0;
+ req->height = 0;
+
+ if (area->size_func)
+ {
+ (* area->size_func) (area, &req->width, &req->height,
+ area->user_data);
+ }
+}
+
+void
+meta_area_setup (MetaArea *area,
+ MetaAreaSizeFunc size_func,
+ MetaAreaExposeFunc expose_func,
+ void *user_data,
+ GDestroyNotify dnotify)
+{
+ if (area->dnotify)
+ (* area->dnotify) (area->user_data);
+
+ area->size_func = size_func;
+ area->expose_func = expose_func;
+ area->user_data = user_data;
+ area->dnotify = dnotify;
+
+ gtk_widget_queue_resize (GTK_WIDGET (area));
+}
+
diff --git a/src/ui/themewidget.h b/src/ui/themewidget.h
new file mode 100644
index 00000000..5679d7ab
--- /dev/null
+++ b/src/ui/themewidget.h
@@ -0,0 +1,78 @@
+/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+
+/* Marco theme widget (displays themed draw operations) */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include "theme.h"
+#include <gtk/gtk.h>
+
+#ifndef META_THEME_WIDGET_H
+#define META_THEME_WIDGET_H
+
+#define META_TYPE_AREA (meta_area_get_type ())
+#define META_AREA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), META_TYPE_AREA, MetaArea))
+#define META_AREA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), META_TYPE_AREA, MetaAreaClass))
+#define META_IS_AREA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), META_TYPE_AREA))
+#define META_IS_AREA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), META_TYPE_AREA))
+#define META_AREA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), META_TYPE_AREA, MetaAreaClass))
+
+typedef struct _MetaArea MetaArea;
+typedef struct _MetaAreaClass MetaAreaClass;
+
+
+typedef void (* MetaAreaSizeFunc) (MetaArea *area,
+ int *width,
+ int *height,
+ void *user_data);
+
+typedef void (* MetaAreaExposeFunc) (MetaArea *area,
+ GdkEventExpose *event,
+ int x_offset,
+ int y_offset,
+ void *user_data);
+
+struct _MetaArea
+{
+ GtkMisc misc;
+
+ MetaAreaSizeFunc size_func;
+ MetaAreaExposeFunc expose_func;
+ void *user_data;
+ GDestroyNotify dnotify;
+};
+
+struct _MetaAreaClass
+{
+ GtkMiscClass parent_class;
+};
+
+
+GType meta_area_get_type (void) G_GNUC_CONST;
+GtkWidget* meta_area_new (void);
+
+void meta_area_setup (MetaArea *area,
+ MetaAreaSizeFunc size_func,
+ MetaAreaExposeFunc expose_func,
+ void *user_data,
+ GDestroyNotify dnotify);
+
+
+#endif
diff --git a/src/ui/ui.c b/src/ui/ui.c
new file mode 100644
index 00000000..c41bc891
--- /dev/null
+++ b/src/ui/ui.c
@@ -0,0 +1,1117 @@
+/* Marco interface for talking to GTK+ UI module */
+
+/*
+ * Copyright (C) 2002 Havoc Pennington
+ * stock icon code Copyright (C) 2002 Jorn Baayen <[email protected]>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include "prefs.h"
+#include "ui.h"
+#include "frames.h"
+#include "util.h"
+#include "menu.h"
+#include "core.h"
+#include "theme.h"
+
+#include <string.h>
+#include <stdlib.h>
+
+static void meta_ui_accelerator_parse(const char* accel, guint* keysym, guint* keycode, GdkModifierType* keymask);
+
+struct _MetaUI {
+ Display* xdisplay;
+ Screen* xscreen;
+ MetaFrames* frames;
+
+ /* For double-click tracking */
+ guint button_click_number;
+ Window button_click_window;
+ int button_click_x;
+ int button_click_y;
+ guint32 button_click_time;
+};
+
+void meta_ui_init(int* argc, char*** argv)
+{
+ if (!gtk_init_check (argc, argv))
+ {
+ meta_fatal ("Unable to open X display %s\n", XDisplayName (NULL));
+ }
+}
+
+Display* meta_ui_get_display(void)
+{
+ return GDK_DISPLAY_XDISPLAY(gdk_display_get_default());
+}
+
+/* We do some of our event handling in frames.c, which expects
+ * GDK events delivered by GTK+. However, since the transition to
+ * client side windows, we can't let GDK see button events, since the
+ * client-side tracking of implicit and explicit grabs it does will
+ * get confused by our direct use of X grabs in the core code.
+ *
+ * So we do a very minimal GDK => GTK event conversion here and send on the
+ * events we care about, and then filter them out so they don't go
+ * through the normal GDK event handling.
+ *
+ * To reduce the amount of code, the only events fields filled out
+ * below are the ones that frames.c uses. If frames.c is modified to
+ * use more fields, more fields need to be filled out below.
+ */
+
+static gboolean
+maybe_redirect_mouse_event (XEvent *xevent)
+{
+ GdkDisplay *gdisplay;
+ MetaUI *ui;
+ GdkEvent gevent;
+ GdkWindow *gdk_window;
+ Window window;
+
+ switch (xevent->type)
+ {
+ case ButtonPress:
+ case ButtonRelease:
+ window = xevent->xbutton.window;
+ break;
+ case MotionNotify:
+ window = xevent->xmotion.window;
+ break;
+ case EnterNotify:
+ case LeaveNotify:
+ window = xevent->xcrossing.window;
+ break;
+ default:
+ return FALSE;
+ }
+
+ gdisplay = gdk_x11_lookup_xdisplay (xevent->xany.display);
+ ui = g_object_get_data (G_OBJECT (gdisplay), "meta-ui");
+ if (!ui)
+ return FALSE;
+
+ gdk_window = gdk_window_lookup_for_display (gdisplay, window);
+ if (gdk_window == NULL)
+ return FALSE;
+
+ /* If GDK already thinks it has a grab, we better let it see events; this
+ * is the menu-navigation case and events need to get sent to the appropriate
+ * (client-side) subwindow for individual menu items.
+ */
+ if (gdk_display_pointer_is_grabbed (gdisplay))
+ return FALSE;
+
+ memset (&gevent, 0, sizeof (gevent));
+
+ switch (xevent->type)
+ {
+ case ButtonPress:
+ case ButtonRelease:
+ if (xevent->type == ButtonPress)
+ {
+ GtkSettings *settings = gtk_settings_get_default ();
+ int double_click_time;
+ int double_click_distance;
+
+ g_object_get (settings,
+ "gtk-double-click-time", &double_click_time,
+ "gtk-double-click-distance", &double_click_distance,
+ NULL);
+
+ if (xevent->xbutton.button == ui->button_click_number &&
+ xevent->xbutton.window == ui->button_click_window &&
+ xevent->xbutton.time < ui->button_click_time + double_click_time &&
+ ABS (xevent->xbutton.x - ui->button_click_x) <= double_click_distance &&
+ ABS (xevent->xbutton.y - ui->button_click_y) <= double_click_distance)
+ {
+ gevent.button.type = GDK_2BUTTON_PRESS;
+
+ ui->button_click_number = 0;
+ }
+ else
+ {
+ gevent.button.type = GDK_BUTTON_PRESS;
+ ui->button_click_number = xevent->xbutton.button;
+ ui->button_click_window = xevent->xbutton.window;
+ ui->button_click_time = xevent->xbutton.time;
+ ui->button_click_x = xevent->xbutton.x;
+ ui->button_click_y = xevent->xbutton.y;
+ }
+ }
+ else
+ {
+ gevent.button.type = GDK_BUTTON_RELEASE;
+ }
+
+ gevent.button.window = gdk_window;
+ gevent.button.button = xevent->xbutton.button;
+ gevent.button.time = xevent->xbutton.time;
+ gevent.button.x = xevent->xbutton.x;
+ gevent.button.y = xevent->xbutton.y;
+ gevent.button.x_root = xevent->xbutton.x_root;
+ gevent.button.y_root = xevent->xbutton.y_root;
+
+ break;
+ case MotionNotify:
+ gevent.motion.type = GDK_MOTION_NOTIFY;
+ gevent.motion.window = gdk_window;
+ break;
+ case EnterNotify:
+ case LeaveNotify:
+ gevent.crossing.type = xevent->type == EnterNotify ? GDK_ENTER_NOTIFY : GDK_LEAVE_NOTIFY;
+ gevent.crossing.window = gdk_window;
+ gevent.crossing.x = xevent->xcrossing.x;
+ gevent.crossing.y = xevent->xcrossing.y;
+ break;
+ default:
+ g_assert_not_reached ();
+ break;
+ }
+
+ /* If we've gotten here, we've filled in the gdk_event and should send it on */
+ gtk_main_do_event (&gevent);
+
+ return TRUE;
+}
+
+typedef struct _EventFunc EventFunc;
+
+struct _EventFunc
+{
+ MetaEventFunc func;
+ gpointer data;
+};
+
+static EventFunc *ef = NULL;
+
+static GdkFilterReturn
+filter_func (GdkXEvent *xevent,
+ GdkEvent *event,
+ gpointer data)
+{
+ g_return_val_if_fail (ef != NULL, GDK_FILTER_CONTINUE);
+
+ if ((* ef->func) (xevent, ef->data) ||
+ maybe_redirect_mouse_event (xevent))
+ return GDK_FILTER_REMOVE;
+ else
+ return GDK_FILTER_CONTINUE;
+}
+
+void
+meta_ui_add_event_func (Display *xdisplay,
+ MetaEventFunc func,
+ gpointer data)
+{
+ g_return_if_fail (ef == NULL);
+
+ ef = g_new (EventFunc, 1);
+ ef->func = func;
+ ef->data = data;
+
+ gdk_window_add_filter (NULL, filter_func, ef);
+}
+
+/* removal is by data due to proxy function */
+void
+meta_ui_remove_event_func (Display *xdisplay,
+ MetaEventFunc func,
+ gpointer data)
+{
+ g_return_if_fail (ef != NULL);
+
+ gdk_window_remove_filter (NULL, filter_func, ef);
+
+ g_free (ef);
+ ef = NULL;
+}
+
+MetaUI*
+meta_ui_new (Display *xdisplay,
+ Screen *screen)
+{
+ GdkDisplay *gdisplay;
+ MetaUI *ui;
+
+ ui = g_new0 (MetaUI, 1);
+ ui->xdisplay = xdisplay;
+ ui->xscreen = screen;
+
+ gdisplay = gdk_x11_lookup_xdisplay (xdisplay);
+ g_assert (gdisplay == gdk_display_get_default ());
+
+ g_assert (xdisplay == GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+ ui->frames = meta_frames_new (XScreenNumberOfScreen (screen));
+ gtk_widget_realize (GTK_WIDGET (ui->frames));
+
+ g_object_set_data (G_OBJECT (gdisplay), "meta-ui", ui);
+
+ return ui;
+}
+
+void
+meta_ui_free (MetaUI *ui)
+{
+ GdkDisplay *gdisplay;
+
+ gtk_widget_destroy (GTK_WIDGET (ui->frames));
+
+ gdisplay = gdk_x11_lookup_xdisplay (ui->xdisplay);
+ g_object_set_data (G_OBJECT (gdisplay), "meta-ui", NULL);
+
+ g_free (ui);
+}
+
+void
+meta_ui_get_frame_geometry (MetaUI *ui,
+ Window frame_xwindow,
+ int *top_height, int *bottom_height,
+ int *left_width, int *right_width)
+{
+ meta_frames_get_geometry (ui->frames, frame_xwindow,
+ top_height, bottom_height,
+ left_width, right_width);
+}
+
+Window
+meta_ui_create_frame_window (MetaUI *ui,
+ Display *xdisplay,
+ Visual *xvisual,
+ gint x,
+ gint y,
+ gint width,
+ gint height,
+ gint screen_no)
+{
+ GdkDisplay *display = gdk_x11_lookup_xdisplay (xdisplay);
+ GdkScreen *screen = gdk_display_get_screen (display, screen_no);
+ GdkWindowAttr attrs;
+ gint attributes_mask;
+ GdkWindow *window;
+ GdkVisual *visual;
+ GdkColormap *cmap = gdk_screen_get_default_colormap (screen);
+
+ /* Default depth/visual handles clients with weird visuals; they can
+ * always be children of the root depth/visual obviously, but
+ * e.g. DRI games can't be children of a parent that has the same
+ * visual as the client.
+ */
+ if (!xvisual)
+ visual = gdk_screen_get_system_visual (screen);
+ else
+ {
+ visual = gdk_x11_screen_lookup_visual (screen,
+ XVisualIDFromVisual (xvisual));
+ cmap = gdk_colormap_new (visual, FALSE);
+ }
+
+ attrs.title = NULL;
+
+ /* frame.c is going to replace the event mask immediately, but
+ * we still have to set it here to let GDK know what it is.
+ */
+ attrs.event_mask =
+ GDK_EXPOSURE_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK |
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK |
+ GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK;
+ attrs.x = x;
+ attrs.y = y;
+ attrs.wclass = GDK_INPUT_OUTPUT;
+ attrs.visual = visual;
+ attrs.colormap = cmap;
+ attrs.window_type = GDK_WINDOW_CHILD;
+ attrs.cursor = NULL;
+ attrs.wmclass_name = NULL;
+ attrs.wmclass_class = NULL;
+ attrs.override_redirect = FALSE;
+
+ attrs.width = width;
+ attrs.height = height;
+
+ attributes_mask = GDK_WA_X | GDK_WA_Y | GDK_WA_VISUAL | GDK_WA_COLORMAP;
+
+ window =
+ gdk_window_new (gdk_screen_get_root_window(screen),
+ &attrs, attributes_mask);
+
+ gdk_window_resize (window, width, height);
+
+ meta_frames_manage_window (ui->frames, GDK_WINDOW_XID (window), window);
+
+ return GDK_WINDOW_XID (window);
+}
+
+void
+meta_ui_destroy_frame_window (MetaUI *ui,
+ Window xwindow)
+{
+ meta_frames_unmanage_window (ui->frames, xwindow);
+}
+
+void
+meta_ui_move_resize_frame (MetaUI *ui,
+ Window frame,
+ int x,
+ int y,
+ int width,
+ int height)
+{
+ meta_frames_move_resize_frame (ui->frames, frame, x, y, width, height);
+}
+
+void
+meta_ui_map_frame (MetaUI *ui,
+ Window xwindow)
+{
+ GdkWindow *window;
+
+ window = gdk_xid_table_lookup (xwindow);
+
+ if (window)
+ gdk_window_show_unraised (window);
+}
+
+void
+meta_ui_unmap_frame (MetaUI *ui,
+ Window xwindow)
+{
+ GdkWindow *window;
+
+ window = gdk_xid_table_lookup (xwindow);
+
+ if (window)
+ gdk_window_hide (window);
+}
+
+void
+meta_ui_unflicker_frame_bg (MetaUI *ui,
+ Window xwindow,
+ int target_width,
+ int target_height)
+{
+ meta_frames_unflicker_bg (ui->frames, xwindow,
+ target_width, target_height);
+}
+
+void
+meta_ui_repaint_frame (MetaUI *ui,
+ Window xwindow)
+{
+ meta_frames_repaint_frame (ui->frames, xwindow);
+}
+
+void
+meta_ui_reset_frame_bg (MetaUI *ui,
+ Window xwindow)
+{
+ meta_frames_reset_bg (ui->frames, xwindow);
+}
+
+void
+meta_ui_apply_frame_shape (MetaUI *ui,
+ Window xwindow,
+ int new_window_width,
+ int new_window_height,
+ gboolean window_has_shape)
+{
+ meta_frames_apply_shapes (ui->frames, xwindow,
+ new_window_width, new_window_height,
+ window_has_shape);
+}
+
+void
+meta_ui_queue_frame_draw (MetaUI *ui,
+ Window xwindow)
+{
+ meta_frames_queue_draw (ui->frames, xwindow);
+}
+
+
+void
+meta_ui_set_frame_title (MetaUI *ui,
+ Window xwindow,
+ const char *title)
+{
+ meta_frames_set_title (ui->frames, xwindow, title);
+}
+
+MetaWindowMenu*
+meta_ui_window_menu_new (MetaUI *ui,
+ Window client_xwindow,
+ MetaMenuOp ops,
+ MetaMenuOp insensitive,
+ unsigned long active_workspace,
+ int n_workspaces,
+ MetaWindowMenuFunc func,
+ gpointer data)
+{
+ return meta_window_menu_new (ui->frames,
+ ops, insensitive,
+ client_xwindow,
+ active_workspace,
+ n_workspaces,
+ func, data);
+}
+
+void
+meta_ui_window_menu_popup (MetaWindowMenu *menu,
+ int root_x,
+ int root_y,
+ int button,
+ guint32 timestamp)
+{
+ meta_window_menu_popup (menu, root_x, root_y, button, timestamp);
+}
+
+void
+meta_ui_window_menu_free (MetaWindowMenu *menu)
+{
+ meta_window_menu_free (menu);
+}
+
+struct _MetaImageWindow
+{
+ GtkWidget *window;
+ GdkPixmap *pixmap;
+};
+
+MetaImageWindow*
+meta_image_window_new (Display *xdisplay,
+ int screen_number,
+ int max_width,
+ int max_height)
+{
+ MetaImageWindow *iw;
+ GdkDisplay *gdisplay;
+ GdkScreen *gscreen;
+
+ iw = g_new (MetaImageWindow, 1);
+ iw->window = gtk_window_new (GTK_WINDOW_POPUP);
+
+ gdisplay = gdk_x11_lookup_xdisplay (xdisplay);
+ gscreen = gdk_display_get_screen (gdisplay, screen_number);
+
+ gtk_window_set_screen (GTK_WINDOW (iw->window), gscreen);
+
+ gtk_widget_realize (iw->window);
+ iw->pixmap = gdk_pixmap_new (iw->window->window,
+ max_width, max_height,
+ -1);
+
+ gtk_widget_set_size_request (iw->window, 1, 1);
+ gtk_widget_set_double_buffered (iw->window, FALSE);
+ gtk_widget_set_app_paintable (iw->window, TRUE);
+
+ return iw;
+}
+
+void
+meta_image_window_free (MetaImageWindow *iw)
+{
+ gtk_widget_destroy (iw->window);
+ g_object_unref (G_OBJECT (iw->pixmap));
+ g_free (iw);
+}
+
+void
+meta_image_window_set_showing (MetaImageWindow *iw,
+ gboolean showing)
+{
+ if (showing)
+ gtk_widget_show_all (iw->window);
+ else
+ {
+ gtk_widget_hide (iw->window);
+ meta_core_increment_event_serial (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()));
+ }
+}
+
+void
+meta_image_window_set (MetaImageWindow *iw,
+ GdkPixbuf *pixbuf,
+ int x,
+ int y)
+{
+ cairo_t *cr;
+
+ /* We use a back pixmap to avoid having to handle exposes, because
+ * it's really too slow for large clients being minimized, etc.
+ * and this way flicker is genuinely zero.
+ */
+
+ gdk_draw_pixbuf (iw->pixmap,
+ iw->window->style->black_gc,
+ pixbuf,
+ 0, 0,
+ 0, 0,
+ gdk_pixbuf_get_width (pixbuf),
+ gdk_pixbuf_get_height (pixbuf),
+ GDK_RGB_DITHER_NORMAL,
+ 0, 0);
+ cr = gdk_cairo_create (iw->pixmap);
+ gdk_cairo_set_source_pixbuf (cr, pixbuf, 0, 0);
+ cairo_paint (cr);
+ cairo_destroy (cr);
+
+ gdk_window_set_back_pixmap (iw->window->window,
+ iw->pixmap,
+ FALSE);
+
+ gdk_window_move_resize (iw->window->window,
+ x, y,
+ gdk_pixbuf_get_width (pixbuf),
+ gdk_pixbuf_get_height (pixbuf));
+
+ gdk_window_clear (iw->window->window);
+}
+
+static GdkColormap*
+get_cmap (GdkPixmap *pixmap)
+{
+ GdkColormap *cmap;
+
+ cmap = gdk_drawable_get_colormap (pixmap);
+ if (cmap)
+ g_object_ref (G_OBJECT (cmap));
+
+ if (cmap == NULL)
+ {
+ if (gdk_drawable_get_depth (pixmap) == 1)
+ {
+ meta_verbose ("Using NULL colormap for snapshotting bitmap\n");
+ cmap = NULL;
+ }
+ else
+ {
+ meta_verbose ("Using system cmap to snapshot pixmap\n");
+ cmap = gdk_screen_get_system_colormap (gdk_drawable_get_screen (pixmap));
+
+ g_object_ref (G_OBJECT (cmap));
+ }
+ }
+
+ /* Be sure we aren't going to blow up due to visual mismatch */
+ if (cmap &&
+ (gdk_colormap_get_visual (cmap)->depth !=
+ gdk_drawable_get_depth (pixmap)))
+ {
+ cmap = NULL;
+ meta_verbose ("Switching back to NULL cmap because of depth mismatch\n");
+ }
+
+ return cmap;
+}
+
+GdkPixbuf*
+meta_gdk_pixbuf_get_from_window (GdkPixbuf *dest,
+ Window xwindow,
+ int src_x,
+ int src_y,
+ int dest_x,
+ int dest_y,
+ int width,
+ int height)
+{
+ GdkDrawable *drawable;
+ GdkPixbuf *retval;
+ GdkColormap *cmap;
+
+ retval = NULL;
+
+ drawable = gdk_xid_table_lookup (xwindow);
+
+ if (drawable)
+ g_object_ref (G_OBJECT (drawable));
+ else
+ drawable = gdk_window_foreign_new (xwindow);
+
+ cmap = get_cmap (drawable);
+
+ retval = gdk_pixbuf_get_from_drawable (dest,
+ drawable,
+ cmap,
+ src_x, src_y,
+ dest_x, dest_y,
+ width, height);
+
+ if (cmap)
+ g_object_unref (G_OBJECT (cmap));
+ g_object_unref (G_OBJECT (drawable));
+
+ return retval;
+}
+
+GdkPixbuf*
+meta_gdk_pixbuf_get_from_pixmap (GdkPixbuf *dest,
+ Pixmap xpixmap,
+ int src_x,
+ int src_y,
+ int dest_x,
+ int dest_y,
+ int width,
+ int height)
+{
+ GdkDrawable *drawable;
+ GdkPixbuf *retval;
+ GdkColormap *cmap;
+
+ retval = NULL;
+ cmap = NULL;
+
+ drawable = gdk_xid_table_lookup (xpixmap);
+
+ if (drawable)
+ g_object_ref (G_OBJECT (drawable));
+ else
+ drawable = gdk_pixmap_foreign_new (xpixmap);
+
+ if (drawable)
+ {
+ cmap = get_cmap (drawable);
+
+ retval = gdk_pixbuf_get_from_drawable (dest,
+ drawable,
+ cmap,
+ src_x, src_y,
+ dest_x, dest_y,
+ width, height);
+ }
+ if (cmap)
+ g_object_unref (G_OBJECT (cmap));
+ if (drawable)
+ g_object_unref (G_OBJECT (drawable));
+
+ return retval;
+}
+
+void
+meta_ui_push_delay_exposes (MetaUI *ui)
+{
+ meta_frames_push_delay_exposes (ui->frames);
+}
+
+void
+meta_ui_pop_delay_exposes (MetaUI *ui)
+{
+ meta_frames_pop_delay_exposes (ui->frames);
+}
+
+GdkPixbuf*
+meta_ui_get_default_window_icon (MetaUI *ui)
+{
+ static GdkPixbuf *default_icon = NULL;
+
+ if (default_icon == NULL)
+ {
+ GtkIconTheme *theme;
+ gboolean icon_exists;
+
+ theme = gtk_icon_theme_get_default ();
+
+ icon_exists = gtk_icon_theme_has_icon (theme, META_DEFAULT_ICON_NAME);
+
+ if (icon_exists)
+ default_icon = gtk_icon_theme_load_icon (theme,
+ META_DEFAULT_ICON_NAME,
+ META_ICON_WIDTH,
+ 0,
+ NULL);
+ else
+ default_icon = gtk_icon_theme_load_icon (theme,
+ "gtk-missing-image",
+ META_ICON_WIDTH,
+ 0,
+ NULL);
+
+ g_assert (default_icon);
+ }
+
+ g_object_ref (G_OBJECT (default_icon));
+
+ return default_icon;
+}
+
+GdkPixbuf*
+meta_ui_get_default_mini_icon (MetaUI *ui)
+{
+ static GdkPixbuf *default_icon = NULL;
+
+ if (default_icon == NULL)
+ {
+ GtkIconTheme *theme;
+ gboolean icon_exists;
+
+ theme = gtk_icon_theme_get_default ();
+
+ icon_exists = gtk_icon_theme_has_icon (theme, META_DEFAULT_ICON_NAME);
+
+ if (icon_exists)
+ default_icon = gtk_icon_theme_load_icon (theme,
+ META_DEFAULT_ICON_NAME,
+ META_MINI_ICON_WIDTH,
+ 0,
+ NULL);
+ else
+ default_icon = gtk_icon_theme_load_icon (theme,
+ "gtk-missing-image",
+ META_MINI_ICON_WIDTH,
+ 0,
+ NULL);
+
+ g_assert (default_icon);
+ }
+
+ g_object_ref (G_OBJECT (default_icon));
+
+ return default_icon;
+}
+
+gboolean
+meta_ui_window_should_not_cause_focus (Display *xdisplay,
+ Window xwindow)
+{
+ GdkWindow *window;
+
+ window = gdk_xid_table_lookup (xwindow);
+
+ /* we shouldn't cause focus if we're an override redirect
+ * toplevel which is not foreign
+ */
+ if (window && gdk_window_get_window_type (window) == GDK_WINDOW_TEMP)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+char*
+meta_text_property_to_utf8 (Display *xdisplay,
+ const XTextProperty *prop)
+{
+ char **list;
+ int count;
+ char *retval;
+
+ list = NULL;
+
+ count = gdk_text_property_to_utf8_list (gdk_x11_xatom_to_atom (prop->encoding),
+ prop->format,
+ prop->value,
+ prop->nitems,
+ &list);
+
+ if (count == 0)
+ retval = NULL;
+ else
+ {
+ retval = list[0];
+ list[0] = g_strdup (""); /* something to free */
+ }
+
+ g_strfreev (list);
+
+ return retval;
+}
+
+void
+meta_ui_theme_get_frame_borders (MetaUI *ui,
+ MetaFrameType type,
+ MetaFrameFlags flags,
+ int *top_height,
+ int *bottom_height,
+ int *left_width,
+ int *right_width)
+{
+ int text_height;
+ PangoContext *context;
+ const PangoFontDescription *font_desc;
+ GtkStyle *default_style;
+
+ if (meta_ui_have_a_theme ())
+ {
+ context = gtk_widget_get_pango_context (GTK_WIDGET (ui->frames));
+ font_desc = meta_prefs_get_titlebar_font ();
+
+ if (!font_desc)
+ {
+ default_style = gtk_widget_get_default_style ();
+ font_desc = default_style->font_desc;
+ }
+
+ text_height = meta_pango_font_desc_get_text_height (font_desc, context);
+
+ meta_theme_get_frame_borders (meta_theme_get_current (),
+ type, text_height, flags,
+ top_height, bottom_height,
+ left_width, right_width);
+ }
+ else
+ {
+ *top_height = *bottom_height = *left_width = *right_width = 0;
+ }
+}
+
+void
+meta_ui_set_current_theme (const char *name,
+ gboolean force_reload)
+{
+ meta_theme_set_current (name, force_reload);
+ meta_invalidate_default_icons ();
+}
+
+gboolean
+meta_ui_have_a_theme (void)
+{
+ return meta_theme_get_current () != NULL;
+}
+
+static void
+meta_ui_accelerator_parse (const char *accel,
+ guint *keysym,
+ guint *keycode,
+ GdkModifierType *keymask)
+{
+ if (accel[0] == '0' && accel[1] == 'x')
+ {
+ *keysym = 0;
+ *keycode = (guint) strtoul (accel, NULL, 16);
+ *keymask = 0;
+ }
+ else
+ gtk_accelerator_parse (accel, keysym, keymask);
+}
+
+gboolean
+meta_ui_parse_accelerator (const char *accel,
+ unsigned int *keysym,
+ unsigned int *keycode,
+ MetaVirtualModifier *mask)
+{
+ GdkModifierType gdk_mask = 0;
+ guint gdk_sym = 0;
+ guint gdk_code = 0;
+
+ *keysym = 0;
+ *keycode = 0;
+ *mask = 0;
+
+ if (strcmp (accel, "disabled") == 0)
+ return TRUE;
+
+ meta_ui_accelerator_parse (accel, &gdk_sym, &gdk_code, &gdk_mask);
+ if (gdk_mask == 0 && gdk_sym == 0 && gdk_code == 0)
+ return FALSE;
+
+ if (gdk_sym == None && gdk_code == 0)
+ return FALSE;
+
+ if (gdk_mask & GDK_RELEASE_MASK) /* we don't allow this */
+ return FALSE;
+
+ *keysym = gdk_sym;
+ *keycode = gdk_code;
+
+ if (gdk_mask & GDK_SHIFT_MASK)
+ *mask |= META_VIRTUAL_SHIFT_MASK;
+ if (gdk_mask & GDK_CONTROL_MASK)
+ *mask |= META_VIRTUAL_CONTROL_MASK;
+ if (gdk_mask & GDK_MOD1_MASK)
+ *mask |= META_VIRTUAL_ALT_MASK;
+ if (gdk_mask & GDK_MOD2_MASK)
+ *mask |= META_VIRTUAL_MOD2_MASK;
+ if (gdk_mask & GDK_MOD3_MASK)
+ *mask |= META_VIRTUAL_MOD3_MASK;
+ if (gdk_mask & GDK_MOD4_MASK)
+ *mask |= META_VIRTUAL_MOD4_MASK;
+ if (gdk_mask & GDK_MOD5_MASK)
+ *mask |= META_VIRTUAL_MOD5_MASK;
+ if (gdk_mask & GDK_SUPER_MASK)
+ *mask |= META_VIRTUAL_SUPER_MASK;
+ if (gdk_mask & GDK_HYPER_MASK)
+ *mask |= META_VIRTUAL_HYPER_MASK;
+ if (gdk_mask & GDK_META_MASK)
+ *mask |= META_VIRTUAL_META_MASK;
+
+ return TRUE;
+}
+
+/* Caller responsible for freeing return string of meta_ui_accelerator_name! */
+gchar*
+meta_ui_accelerator_name (unsigned int keysym,
+ MetaVirtualModifier mask)
+{
+ GdkModifierType mods = 0;
+
+ if (keysym == 0 && mask == 0)
+ {
+ return g_strdup ("disabled");
+ }
+
+ if (mask & META_VIRTUAL_SHIFT_MASK)
+ mods |= GDK_SHIFT_MASK;
+ if (mask & META_VIRTUAL_CONTROL_MASK)
+ mods |= GDK_CONTROL_MASK;
+ if (mask & META_VIRTUAL_ALT_MASK)
+ mods |= GDK_MOD1_MASK;
+ if (mask & META_VIRTUAL_MOD2_MASK)
+ mods |= GDK_MOD2_MASK;
+ if (mask & META_VIRTUAL_MOD3_MASK)
+ mods |= GDK_MOD3_MASK;
+ if (mask & META_VIRTUAL_MOD4_MASK)
+ mods |= GDK_MOD4_MASK;
+ if (mask & META_VIRTUAL_MOD5_MASK)
+ mods |= GDK_MOD5_MASK;
+ if (mask & META_VIRTUAL_SUPER_MASK)
+ mods |= GDK_SUPER_MASK;
+ if (mask & META_VIRTUAL_HYPER_MASK)
+ mods |= GDK_HYPER_MASK;
+ if (mask & META_VIRTUAL_META_MASK)
+ mods |= GDK_META_MASK;
+
+ return gtk_accelerator_name (keysym, mods);
+
+}
+
+gboolean
+meta_ui_parse_modifier (const char *accel,
+ MetaVirtualModifier *mask)
+{
+ GdkModifierType gdk_mask = 0;
+ guint gdk_sym = 0;
+ guint gdk_code = 0;
+
+ *mask = 0;
+
+ if (accel == NULL || strcmp (accel, "disabled") == 0)
+ return TRUE;
+
+ meta_ui_accelerator_parse (accel, &gdk_sym, &gdk_code, &gdk_mask);
+ if (gdk_mask == 0 && gdk_sym == 0 && gdk_code == 0)
+ return FALSE;
+
+ if (gdk_sym != None || gdk_code != 0)
+ return FALSE;
+
+ if (gdk_mask & GDK_RELEASE_MASK) /* we don't allow this */
+ return FALSE;
+
+ if (gdk_mask & GDK_SHIFT_MASK)
+ *mask |= META_VIRTUAL_SHIFT_MASK;
+ if (gdk_mask & GDK_CONTROL_MASK)
+ *mask |= META_VIRTUAL_CONTROL_MASK;
+ if (gdk_mask & GDK_MOD1_MASK)
+ *mask |= META_VIRTUAL_ALT_MASK;
+ if (gdk_mask & GDK_MOD2_MASK)
+ *mask |= META_VIRTUAL_MOD2_MASK;
+ if (gdk_mask & GDK_MOD3_MASK)
+ *mask |= META_VIRTUAL_MOD3_MASK;
+ if (gdk_mask & GDK_MOD4_MASK)
+ *mask |= META_VIRTUAL_MOD4_MASK;
+ if (gdk_mask & GDK_MOD5_MASK)
+ *mask |= META_VIRTUAL_MOD5_MASK;
+ if (gdk_mask & GDK_SUPER_MASK)
+ *mask |= META_VIRTUAL_SUPER_MASK;
+ if (gdk_mask & GDK_HYPER_MASK)
+ *mask |= META_VIRTUAL_HYPER_MASK;
+ if (gdk_mask & GDK_META_MASK)
+ *mask |= META_VIRTUAL_META_MASK;
+
+ return TRUE;
+}
+
+gboolean
+meta_ui_window_is_widget (MetaUI *ui,
+ Window xwindow)
+{
+ GdkWindow *window;
+
+ window = gdk_xid_table_lookup (xwindow);
+
+ if (window)
+ {
+ void *user_data = NULL;
+ gdk_window_get_user_data (window, &user_data);
+ return user_data != NULL && user_data != ui->frames;
+ }
+ else
+ return FALSE;
+}
+
+/* stock icon code Copyright (C) 2002 Jorn Baayen <[email protected]> */
+
+typedef struct {
+ char* stock_id;
+ const guint8* icon_data;
+} MetaStockIcon;
+
+int meta_ui_get_drag_threshold(MetaUI* ui)
+{
+ int threshold = 8;
+ GtkSettings* settings = gtk_widget_get_settings(GTK_WIDGET(ui->frames));
+
+ g_object_get(G_OBJECT(settings), "gtk-dnd-drag-threshold", &threshold, NULL);
+
+ return threshold;
+}
+
+MetaUIDirection meta_ui_get_direction(void)
+{
+ if (gtk_widget_get_default_direction() == GTK_TEXT_DIR_RTL)
+ {
+ return META_UI_DIRECTION_RTL;
+ }
+
+ return META_UI_DIRECTION_LTR;
+}
+
+GdkPixbuf* meta_ui_get_pixbuf_from_pixmap(Pixmap pmap)
+{
+ GdkPixmap* gpmap;
+ GdkScreen* screen;
+ GdkPixbuf* pixbuf;
+ GdkColormap* cmap;
+ int width;
+ int height;
+ int depth;
+
+ gpmap = gdk_pixmap_foreign_new(pmap);
+ screen = gdk_drawable_get_screen(gpmap);
+
+ #if GTK_CHECK_VERSION(3, 0, 0)
+ width = gdk_window_get_width(GDK_WINDOW(gpmap));
+ height = gdk_window_get_height(GDK_WINDOW(gpmap));
+ #else
+ gdk_drawable_get_size(GDK_DRAWABLE(gpmap), &width, &height);
+ #endif
+
+ depth = gdk_drawable_get_depth(GDK_DRAWABLE(gpmap));
+
+ if (depth <= 24)
+ {
+ cmap = gdk_screen_get_system_colormap(screen);
+ }
+ else
+ {
+ cmap = gdk_screen_get_rgba_colormap(screen);
+ }
+
+ pixbuf = gdk_pixbuf_get_from_drawable(NULL, gpmap, cmap, 0, 0, 0, 0, width, height);
+
+ g_object_unref(gpmap);
+
+ return pixbuf;
+}
diff --git a/src/wm-tester/Makefile.am b/src/wm-tester/Makefile.am
new file mode 100644
index 00000000..3d35c741
--- /dev/null
+++ b/src/wm-tester/Makefile.am
@@ -0,0 +1,25 @@
+
+INCLUDES=@MARCO_CFLAGS@
+
+wm_tester_SOURCES= \
+ main.c
+
+test_gravity_SOURCES= \
+ test-gravity.c
+
+focus_window_SOURCES= \
+ focus-window.c
+
+test_resizing_SOURCES= \
+ test-resizing.c
+
+test_size_hints_SOURCES= \
+ test-size-hints.c
+
+noinst_PROGRAMS=wm-tester test-gravity test-resizing focus-window test-size-hints
+
+wm_tester_LDADD= @MARCO_LIBS@
+test_gravity_LDADD= @MARCO_LIBS@
+test_resizing_LDADD= @MARCO_LIBS@
+test_size_hints_LDADD= @MARCO_LIBS@
+focus_window_LDADD= @MARCO_LIBS@ \ No newline at end of file
diff --git a/src/wm-tester/Makefile.in b/src/wm-tester/Makefile.in
new file mode 100644
index 00000000..a23fe7f8
--- /dev/null
+++ b/src/wm-tester/Makefile.in
@@ -0,0 +1,574 @@
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+noinst_PROGRAMS = wm-tester$(EXEEXT) test-gravity$(EXEEXT) \
+ test-resizing$(EXEEXT) focus-window$(EXEEXT) \
+ test-size-hints$(EXEEXT)
+subdir = src/wm-tester
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.in
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+PROGRAMS = $(noinst_PROGRAMS)
+am_focus_window_OBJECTS = focus-window.$(OBJEXT)
+focus_window_OBJECTS = $(am_focus_window_OBJECTS)
+focus_window_DEPENDENCIES =
+am_test_gravity_OBJECTS = test-gravity.$(OBJEXT)
+test_gravity_OBJECTS = $(am_test_gravity_OBJECTS)
+test_gravity_DEPENDENCIES =
+am_test_resizing_OBJECTS = test-resizing.$(OBJEXT)
+test_resizing_OBJECTS = $(am_test_resizing_OBJECTS)
+test_resizing_DEPENDENCIES =
+am_test_size_hints_OBJECTS = test-size-hints.$(OBJEXT)
+test_size_hints_OBJECTS = $(am_test_size_hints_OBJECTS)
+test_size_hints_DEPENDENCIES =
+am_wm_tester_OBJECTS = main.$(OBJEXT)
+wm_tester_OBJECTS = $(am_wm_tester_OBJECTS)
+wm_tester_DEPENDENCIES =
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+SOURCES = $(focus_window_SOURCES) $(test_gravity_SOURCES) \
+ $(test_resizing_SOURCES) $(test_size_hints_SOURCES) \
+ $(wm_tester_SOURCES)
+DIST_SOURCES = $(focus_window_SOURCES) $(test_gravity_SOURCES) \
+ $(test_resizing_SOURCES) $(test_size_hints_SOURCES) \
+ $(wm_tester_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
+ALL_CFLAGS = @ALL_CFLAGS@
+ALL_LIBS = @ALL_LIBS@
+ALL_LINGUAS = @ALL_LINGUAS@
+AMTAR = @AMTAR@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATADIRNAME = @DATADIRNAME@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DISTCHECK_CONFIGURE_FLAGS = @DISTCHECK_CONFIGURE_FLAGS@
+DLLTOOL = @DLLTOOL@
+DOC_USER_FORMATS = @DOC_USER_FORMATS@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GDK_PIXBUF_CSOURCE = @GDK_PIXBUF_CSOURCE@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GREP = @GREP@
+GTK_API_VERSION = @GTK_API_VERSION@
+HELP_DIR = @HELP_DIR@
+HOST_ALIAS = @HOST_ALIAS@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INSTOBJEXT = @INSTOBJEXT@
+INTLLIBS = @INTLLIBS@
+INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
+INTLTOOL_MERGE = @INTLTOOL_MERGE@
+INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MARCO_CFLAGS = @MARCO_CFLAGS@
+MARCO_LIBS = @MARCO_LIBS@
+MARCO_MESSAGE_CFLAGS = @MARCO_MESSAGE_CFLAGS@
+MARCO_MESSAGE_LIBS = @MARCO_MESSAGE_LIBS@
+MARCO_WINDOW_DEMO_CFLAGS = @MARCO_WINDOW_DEMO_CFLAGS@
+MARCO_WINDOW_DEMO_LIBS = @MARCO_WINDOW_DEMO_LIBS@
+MATECONFTOOL = @MATECONFTOOL@
+MATECONF_SCHEMA_CONFIG_SOURCE = @MATECONF_SCHEMA_CONFIG_SOURCE@
+MATECONF_SCHEMA_FILE_DIR = @MATECONF_SCHEMA_FILE_DIR@
+MATEDIALOG = @MATEDIALOG@
+MATE_KEYBINDINGS_KEYSDIR = @MATE_KEYBINDINGS_KEYSDIR@
+MKDIR_P = @MKDIR_P@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+MSGFMT_OPTS = @MSGFMT_OPTS@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OMF_DIR = @OMF_DIR@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+POFILES = @POFILES@
+POSUB = @POSUB@
+PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
+PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+XMKMF = @XMKMF@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+INCLUDES = @MARCO_CFLAGS@
+wm_tester_SOURCES = \
+ main.c
+
+test_gravity_SOURCES = \
+ test-gravity.c
+
+focus_window_SOURCES = \
+ focus-window.c
+
+test_resizing_SOURCES = \
+ test-resizing.c
+
+test_size_hints_SOURCES = \
+ test-size-hints.c
+
+wm_tester_LDADD = @MARCO_LIBS@
+test_gravity_LDADD = @MARCO_LIBS@
+test_resizing_LDADD = @MARCO_LIBS@
+test_size_hints_LDADD = @MARCO_LIBS@
+focus_window_LDADD = @MARCO_LIBS@
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .lo .o .obj
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/wm-tester/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu src/wm-tester/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+clean-noinstPROGRAMS:
+ @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+ echo " rm -f" $$list; \
+ rm -f $$list || exit $$?; \
+ test -n "$(EXEEXT)" || exit 0; \
+ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f" $$list; \
+ rm -f $$list
+focus-window$(EXEEXT): $(focus_window_OBJECTS) $(focus_window_DEPENDENCIES)
+ @rm -f focus-window$(EXEEXT)
+ $(LINK) $(focus_window_OBJECTS) $(focus_window_LDADD) $(LIBS)
+test-gravity$(EXEEXT): $(test_gravity_OBJECTS) $(test_gravity_DEPENDENCIES)
+ @rm -f test-gravity$(EXEEXT)
+ $(LINK) $(test_gravity_OBJECTS) $(test_gravity_LDADD) $(LIBS)
+test-resizing$(EXEEXT): $(test_resizing_OBJECTS) $(test_resizing_DEPENDENCIES)
+ @rm -f test-resizing$(EXEEXT)
+ $(LINK) $(test_resizing_OBJECTS) $(test_resizing_LDADD) $(LIBS)
+test-size-hints$(EXEEXT): $(test_size_hints_OBJECTS) $(test_size_hints_DEPENDENCIES)
+ @rm -f test-size-hints$(EXEEXT)
+ $(LINK) $(test_size_hints_OBJECTS) $(test_size_hints_LDADD) $(LIBS)
+wm-tester$(EXEEXT): $(wm_tester_OBJECTS) $(wm_tester_DEPENDENCIES)
+ @rm -f wm-tester$(EXEEXT)
+ $(LINK) $(wm_tester_OBJECTS) $(wm_tester_LDADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/focus-window.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-gravity.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-resizing.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-size-hints.Po@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+
+.c.obj:
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(PROGRAMS)
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
+ mostlyclean-am
+
+distclean: distclean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+ clean-libtool clean-noinstPROGRAMS ctags distclean \
+ distclean-compile distclean-generic distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
+ pdf pdf-am ps ps-am tags uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/src/wm-tester/focus-window.c b/src/wm-tester/focus-window.c
new file mode 100644
index 00000000..dc33bd25
--- /dev/null
+++ b/src/wm-tester/focus-window.c
@@ -0,0 +1,37 @@
+#include <X11/Xlib.h>
+#include <X11/Xutil.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+int main (int argc, char **argv)
+{
+ Display *d;
+ Window w;
+ const char *w_str;
+ char *end;
+
+ if (argc != 2)
+ {
+ fprintf (stderr, "Usage: focus-window WINDOWID\n");
+ exit (1);
+ }
+
+ d = XOpenDisplay (NULL);
+
+ w_str = argv[1];
+ end = NULL;
+
+ w = strtoul (w_str, &end, 16);
+ if (end == w_str)
+ {
+ fprintf (stderr, "Usage: focus-window WINDOWID\n");
+ exit (1);
+ }
+
+ printf ("Setting input focus to 0x%lx\n", w);
+ XSetInputFocus (d, w, RevertToPointerRoot, CurrentTime);
+ XFlush (d);
+
+ return 0;
+}
+
diff --git a/src/wm-tester/main.c b/src/wm-tester/main.c
new file mode 100644
index 00000000..e56d6606
--- /dev/null
+++ b/src/wm-tester/main.c
@@ -0,0 +1,245 @@
+/* WM tester main() */
+
+/*
+ * Copyright (C) 2001 Havoc Pennington
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+ * 02111-1307, USA.
+ */
+
+#include <gtk/gtk.h>
+
+#include <stdlib.h>
+#include <sys/types.h>
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
+
+static void set_up_the_evil (void);
+static void set_up_icon_windows (void);
+
+static void
+usage (void)
+{
+ g_print ("wm-tester [--evil] [--icon-windows]\n");
+ exit (0);
+}
+
+int
+main (int argc, char **argv)
+{
+ int i;
+ gboolean do_evil;
+ gboolean do_icon_windows;
+
+ gtk_init (&argc, &argv);
+
+ do_evil = FALSE;
+ do_icon_windows = FALSE;
+
+ i = 1;
+ while (i < argc)
+ {
+ const char *arg = argv[i];
+
+ if (strcmp (arg, "--help") == 0 ||
+ strcmp (arg, "-h") == 0 ||
+ strcmp (arg, "-?") == 0)
+ usage ();
+ else if (strcmp (arg, "--evil") == 0)
+ do_evil = TRUE;
+ else if (strcmp (arg, "--icon-windows") == 0)
+ do_icon_windows = TRUE;
+ else
+ usage ();
+
+ ++i;
+ }
+
+ /* Be sure some option was provided */
+ if (! (do_evil || do_icon_windows))
+ return 1;
+
+ if (do_evil)
+ set_up_the_evil ();
+
+ if (do_icon_windows)
+ set_up_icon_windows ();
+
+ gtk_main ();
+
+ return 0;
+}
+
+static GSList *evil_windows = NULL;
+
+static gint
+evil_timeout (gpointer data)
+{
+ int i;
+ int n_windows;
+ int len;
+ int create_count;
+ int destroy_count;
+
+ len = g_slist_length (evil_windows);
+
+ if (len > 35)
+ {
+ create_count = 2;
+ destroy_count = 5;
+ }
+ else
+ {
+ create_count = 5;
+ destroy_count = 5;
+ }
+
+ /* Create some windows */
+ n_windows = g_random_int_range (0, create_count);
+
+ i = 0;
+ while (i < n_windows)
+ {
+ GtkWidget *w;
+ GtkWidget *c;
+ int t;
+ GtkWidget *parent;
+
+ w = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+
+ gtk_widget_set_uposition (w,
+ g_random_int_range (0,
+ gdk_screen_width ()),
+ g_random_int_range (0,
+ gdk_screen_height ()));
+
+ parent = NULL;
+
+ /* set transient for random window (may create all kinds of weird cycles) */
+ if (len > 0)
+ {
+ t = g_random_int_range (- (len / 3), len);
+ if (t >= 0)
+ {
+ parent = g_slist_nth_data (evil_windows, t);
+
+ if (parent != NULL)
+ gtk_window_set_transient_for (GTK_WINDOW (w), GTK_WINDOW (parent));
+ }
+ }
+
+ if (parent != NULL)
+ c = gtk_button_new_with_label ("Evil Transient!");
+ else
+ c = gtk_button_new_with_label ("Evil Window!");
+ gtk_container_add (GTK_CONTAINER (w), c);
+
+ gtk_widget_show_all (w);
+
+ evil_windows = g_slist_prepend (evil_windows, w);
+
+ ++i;
+ }
+
+ /* Destroy some windows */
+ if (len > destroy_count)
+ {
+ n_windows = g_random_int_range (0, destroy_count);
+ i = 0;
+ while (i < n_windows)
+ {
+ GtkWidget *w;
+
+ w = g_slist_nth_data (evil_windows,
+ g_random_int_range (0, len));
+ if (w)
+ {
+ --len;
+ evil_windows = g_slist_remove (evil_windows, w);
+ gtk_widget_destroy (w);
+ }
+
+ ++i;
+ }
+ }
+
+ return TRUE;
+}
+
+static void
+set_up_the_evil (void)
+{
+ g_timeout_add (400, evil_timeout, NULL);
+}
+
+static void
+set_up_icon_windows (void)
+{
+ int i;
+ int n_windows;
+
+ /* Create some windows */
+ n_windows = 9;
+
+ i = 0;
+ while (i < n_windows)
+ {
+ GtkWidget *w;
+ GtkWidget *c;
+ GList *icons;
+ GdkPixbuf *pix;
+
+ w = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ c = gtk_button_new_with_label ("Icon window");
+ gtk_container_add (GTK_CONTAINER (w), c);
+
+ icons = NULL;
+
+ pix = gtk_widget_render_icon (w,
+ GTK_STOCK_SAVE,
+ GTK_ICON_SIZE_LARGE_TOOLBAR,
+ NULL);
+
+ icons = g_list_append (icons, pix);
+
+ if (i % 2)
+ {
+ pix = gtk_widget_render_icon (w,
+ GTK_STOCK_SAVE,
+ GTK_ICON_SIZE_DIALOG,
+ NULL);
+ icons = g_list_append (icons, pix);
+ }
+
+ if (i % 3)
+ {
+ pix = gtk_widget_render_icon (w,
+ GTK_STOCK_SAVE,
+ GTK_ICON_SIZE_MENU,
+ NULL);
+ icons = g_list_append (icons, pix);
+ }
+
+ gtk_window_set_icon_list (GTK_WINDOW (w), icons);
+
+ g_list_foreach (icons, (GFunc) g_object_unref, NULL);
+ g_list_free (icons);
+
+ gtk_widget_show_all (w);
+
+ ++i;
+ }
+}
diff --git a/src/wm-tester/test-gravity.c b/src/wm-tester/test-gravity.c
new file mode 100644
index 00000000..8e5b581c
--- /dev/null
+++ b/src/wm-tester/test-gravity.c
@@ -0,0 +1,308 @@
+#include <X11/Xlib.h>
+#include <X11/Xutil.h>
+#include <stdio.h>
+#include <string.h>
+
+static int gravities[10] = {
+ NorthWestGravity,
+ NorthGravity,
+ NorthEastGravity,
+ WestGravity,
+ CenterGravity,
+ EastGravity,
+ SouthWestGravity,
+ SouthGravity,
+ SouthEastGravity,
+ StaticGravity
+};
+
+typedef struct
+{
+ int x, y, width, height;
+} Rectangle;
+
+static Window windows[10];
+static int doubled[10] = { 0, };
+static Rectangle window_rects[10];
+
+#define WINDOW_WIDTH 100
+#define WINDOW_HEIGHT 100
+
+static int x_offset[3] = { 0, - WINDOW_WIDTH/2, -WINDOW_WIDTH };
+static int y_offset[3] = { 0, - WINDOW_HEIGHT/2, -WINDOW_HEIGHT };
+static double screen_x_fraction[3] = { 0, 0.5, 1.0 };
+static double screen_y_fraction[3] = { 0, 0.5, 1.0 };
+static int screen_width;
+static int screen_height;
+
+static const char*
+window_gravity_to_string (int gravity)
+{
+ switch (gravity)
+ {
+ case NorthWestGravity:
+ return "NorthWestGravity";
+ case NorthGravity:
+ return "NorthGravity";
+ case NorthEastGravity:
+ return "NorthEastGravity";
+ case WestGravity:
+ return "WestGravity";
+ case CenterGravity:
+ return "CenterGravity";
+ case EastGravity:
+ return "EastGravity";
+ case SouthWestGravity:
+ return "SouthWestGravity";
+ case SouthGravity:
+ return "SouthGravity";
+ case SouthEastGravity:
+ return "SouthEastGravity";
+ case StaticGravity:
+ return "StaticGravity";
+ default:
+ return "NorthWestGravity";
+ }
+}
+
+static void
+calculate_position (int i, int doubled, int *x, int *y)
+{
+ if (i == 9)
+ {
+ *x = 150;
+ *y = 150;
+ }
+ else
+ {
+ int xoff = x_offset[i % 3];
+ int yoff = y_offset[i / 3];
+ if (doubled)
+ {
+ xoff *= 2;
+ yoff *= 2;
+ }
+
+ *x = screen_x_fraction[i % 3] * screen_width + xoff;
+ *y = screen_y_fraction[i / 3] * screen_height + yoff;
+ }
+}
+
+static int
+find_window (Window window)
+{
+ int i;
+ for (i=0; i<10; i++)
+ {
+ if (windows[i] == window)
+ return i;
+ }
+
+ return -1;
+}
+
+typedef struct {
+ unsigned long flags;
+ unsigned long functions;
+ unsigned long decorations;
+ long input_mode;
+ unsigned long status;
+} MotifWmHints, MwmHints;
+
+#define MWM_HINTS_FUNCTIONS (1L << 0)
+#define MWM_HINTS_DECORATIONS (1L << 1)
+#define MWM_HINTS_INPUT_MODE (1L << 2)
+#define MWM_HINTS_STATUS (1L << 3)
+
+int main (int argc, char **argv)
+{
+ Display *d;
+ Window w;
+ XSizeHints hints;
+ int i;
+ int screen;
+ XEvent ev;
+ int noframes;
+
+ if (argc > 1 && strcmp (argv[1], "--noframes") == 0)
+ noframes = 1;
+ else
+ noframes = 0;
+
+ d = XOpenDisplay (NULL);
+
+ screen = DefaultScreen (d);
+ screen_width = DisplayWidth (d, screen);
+ screen_height = DisplayHeight (d, screen);
+
+ for (i=0; i<10; i++)
+ {
+ int x, y;
+
+ calculate_position (i, doubled[i], &x, &y);
+
+ w = XCreateSimpleWindow (d, RootWindow (d, screen),
+ x, y, WINDOW_WIDTH, WINDOW_HEIGHT, 0,
+ WhitePixel (d, screen), WhitePixel (d, screen));
+
+ windows[i] = w;
+ window_rects[i].x = x;
+ window_rects[i].y = y;
+ window_rects[i].width = WINDOW_WIDTH;
+ window_rects[i].height = WINDOW_HEIGHT;
+
+ XSelectInput (d, w, ButtonPressMask | ExposureMask | StructureNotifyMask);
+
+ hints.flags = USPosition | PMinSize | PMaxSize | PWinGravity;
+
+ hints.min_width = WINDOW_WIDTH / 2;
+ hints.min_height = WINDOW_HEIGHT / 2;
+
+#if 1
+ /* we constrain max size below the "doubled" size so that
+ * the WM will have to deal with constraints
+ * at the same time it's dealing with configure request
+ */
+ hints.max_width = WINDOW_WIDTH * 2 - WINDOW_WIDTH / 2;
+ hints.max_height = WINDOW_HEIGHT * 2 - WINDOW_HEIGHT / 2;
+#else
+ hints.max_width = WINDOW_WIDTH * 2 + WINDOW_WIDTH / 2;
+ hints.max_height = WINDOW_HEIGHT * 2 + WINDOW_HEIGHT / 2;
+#endif
+ hints.win_gravity = gravities[i];
+
+ XSetWMNormalHints (d, w, &hints);
+
+ XStoreName (d, w, window_gravity_to_string (hints.win_gravity));
+
+ if (noframes)
+ {
+ MotifWmHints mwm;
+ Atom mwm_atom;
+
+ mwm.decorations = 0;
+ mwm.flags = MWM_HINTS_DECORATIONS;
+
+ mwm_atom = XInternAtom (d, "_MOTIF_WM_HINTS", False);
+
+ XChangeProperty (d, w, mwm_atom, mwm_atom,
+ 32, PropModeReplace,
+ (unsigned char *)&mwm,
+ sizeof (MotifWmHints)/sizeof (long));
+ }
+
+ XMapWindow (d, w);
+ }
+
+ while (1)
+ {
+ XNextEvent (d, &ev);
+
+ if (ev.xany.type == ConfigureNotify)
+ {
+ i = find_window (ev.xconfigure.window);
+
+ if (i >= 0)
+ {
+ Window ignored;
+
+ window_rects[i].width = ev.xconfigure.width;
+ window_rects[i].height = ev.xconfigure.height;
+
+ XClearArea (d, windows[i], 0, 0,
+ ev.xconfigure.width,
+ ev.xconfigure.height,
+ True);
+
+ if (!ev.xconfigure.send_event)
+ XTranslateCoordinates (d, windows[i], DefaultRootWindow (d),
+ 0, 0,
+ &window_rects[i].x, &window_rects[i].y,
+ &ignored);
+ else
+ {
+ window_rects[i].x = ev.xconfigure.x;
+ window_rects[i].y = ev.xconfigure.y;
+ }
+ }
+ }
+ else if (ev.xany.type == Expose)
+ {
+ i = find_window (ev.xexpose.window);
+
+ if (i >= 0)
+ {
+ GC gc;
+ XGCValues values;
+ char buf[256];
+
+ values.foreground = BlackPixel (d, screen);
+
+ gc = XCreateGC (d, windows[i],
+ GCForeground, &values);
+
+ sprintf (buf,
+ "%d,%d",
+ window_rects[i].x,
+ window_rects[i].y);
+
+ XDrawString (d, windows[i], gc, 10, 15,
+ buf, strlen (buf));
+
+ sprintf (buf,
+ "%dx%d",
+ window_rects[i].width,
+ window_rects[i].height);
+
+ XDrawString (d, windows[i], gc, 10, 35,
+ buf, strlen (buf));
+
+ XFreeGC (d, gc);
+ }
+ }
+ else if (ev.xany.type == ButtonPress)
+ {
+ i = find_window (ev.xbutton.window);
+
+ if (i >= 0)
+ {
+ /* Button 1 = move, 2 = resize, 3 = both at once */
+
+ if (ev.xbutton.button == Button1)
+ {
+ int x, y;
+
+ calculate_position (i, doubled[i], &x, &y);
+ XMoveWindow (d, windows[i], x, y);
+ }
+ else if (ev.xbutton.button == Button2)
+ {
+ if (doubled[i])
+ XResizeWindow (d, windows[i], WINDOW_WIDTH, WINDOW_HEIGHT);
+ else
+ XResizeWindow (d, windows[i], WINDOW_WIDTH*2, WINDOW_HEIGHT*2);
+
+ doubled[i] = !doubled[i];
+ }
+ else if (ev.xbutton.button == Button3)
+ {
+ int x, y;
+
+ calculate_position (i, !doubled[i], &x, &y);
+
+ if (doubled[i])
+ XMoveResizeWindow (d, windows[i], x, y, WINDOW_WIDTH, WINDOW_HEIGHT);
+ else
+ XMoveResizeWindow (d, windows[i], x, y, WINDOW_WIDTH*2, WINDOW_HEIGHT*2);
+
+ doubled[i] = !doubled[i];
+ }
+ }
+ }
+ }
+
+ /* This program has an infinite loop above so a return statement would
+ * just cause compiler warnings.
+ */
+}
+
diff --git a/src/wm-tester/test-resizing.c b/src/wm-tester/test-resizing.c
new file mode 100644
index 00000000..f9481004
--- /dev/null
+++ b/src/wm-tester/test-resizing.c
@@ -0,0 +1,257 @@
+#include <X11/Xlib.h>
+#include <X11/Xutil.h>
+#include <stdlib.h>
+#include <glib.h>
+
+static void
+calc_rects (XRectangle *rects, int width, int height)
+{
+ int w = (width - 21) / 3;
+ int h = (height - 21) / 3;
+ int i;
+
+ i = 0;
+ while (i < 9)
+ {
+ rects[i].width = w;
+ rects[i].height = h;
+ ++i;
+ }
+
+ /* NW */
+ rects[0].x = 0;
+ rects[0].y = 0;
+
+ /* N */
+ rects[1].x = width / 2 - w / 2;
+ rects[1].y = 0;
+
+ /* NE */
+ rects[2].x = width - w;
+ rects[2].y = 0;
+
+ /* E */
+ rects[3].x = width - w;
+ rects[3].y = height / 2 - h / 2;
+
+ /* SE */
+ rects[4].x = width - w;
+ rects[4].y = height - h;
+
+ /* S */
+ rects[5].x = width / 2 - w / 2;
+ rects[5].y = height - h;
+
+ /* SW */
+ rects[6].x = 0;
+ rects[6].y = height - h;
+
+ /* W */
+ rects[7].x = 0;
+ rects[7].y = height / 2 - h / 2;
+
+ /* Center */
+ rects[8].x = width / 2 - w / 2;
+ rects[8].y = height / 2 - h / 2;
+}
+
+static Bool
+all_events (Display *display,
+ XEvent *event,
+ XPointer arg)
+{
+ return True;
+}
+
+static void
+get_size (Display *d, Drawable draw,
+ int *xp, int *yp, int *widthp, int *heightp)
+{
+ int x, y;
+ unsigned int width=0, height=0, border=0, depth=0;
+ Window root;
+
+ XGetGeometry (d, draw, &root, &x, &y, &width, &height, &border, &depth);
+
+ if (xp)
+ *xp = x;
+ if (yp)
+ *yp = y;
+ if (widthp)
+ *widthp = width;
+ if (*heightp)
+ *heightp = height;
+}
+
+int
+main (int argc, char **argv)
+{
+ Display *d;
+ Window w, cw;
+ XSizeHints hints;
+ int screen;
+ XEvent ev;
+ int x, y, width, height;
+ Pixmap pix;
+ GC gc;
+ XGCValues gc_vals;
+ XSetWindowAttributes set_attrs;
+ XWindowChanges changes;
+ XRectangle rects[9];
+ gboolean redraw_pending;
+ unsigned int mask;
+
+ d = XOpenDisplay (NULL);
+
+ screen = DefaultScreen (d);
+
+ /* Print some debug spew to show how StaticGravity works */
+ w = XCreateSimpleWindow (d, RootWindow (d, screen),
+ 0, 0, 100, 100, 0,
+ WhitePixel (d, screen),
+ WhitePixel (d, screen));
+ cw = XCreateSimpleWindow (d, w,
+ 0, 0, 100, 100, 0,
+ WhitePixel (d, screen),
+ WhitePixel (d, screen));
+ set_attrs.win_gravity = StaticGravity;
+
+ XChangeWindowAttributes (d, cw,
+ CWWinGravity,
+ &set_attrs);
+
+ get_size (d, w, &x, &y, &width, &height);
+
+ g_print ("Parent is %d,%d %d x %d before configuring parent\n",
+ x, y, width, height);
+
+ get_size (d, cw, &x, &y, &width, &height);
+
+ g_print ("Child is %d,%d %d x %d before configuring parent\n",
+ x, y, width, height);
+
+ changes.x = 10;
+ changes.y = 10;
+ changes.width = 110;
+ changes.height = 110;
+ /* last mask wins */
+ mask = CWX | CWY;
+ mask = CWWidth | CWHeight;
+ mask = CWX | CWY | CWWidth | CWHeight;
+
+ XConfigureWindow (d, w, mask, &changes);
+ XSync (d, False);
+
+ get_size (d, w, &x, &y, &width, &height);
+
+ g_print ("Parent is %d,%d %d x %d after configuring parent\n",
+ x, y, width, height);
+
+ get_size (d, cw, &x, &y, &width, &height);
+
+ g_print ("Child is %d,%d %d x %d after configuring parent\n",
+ x, y, width, height);
+
+ XDestroyWindow (d, w);
+
+ /* The window that gets displayed */
+
+ x = 20;
+ y = 20;
+ width = 100;
+ height = 100;
+
+ calc_rects (rects, width, height);
+
+ w = XCreateSimpleWindow (d, RootWindow (d, screen),
+ x, y, width, height, 0,
+ WhitePixel (d, screen),
+ WhitePixel (d, screen));
+
+ set_attrs.bit_gravity = StaticGravity;
+
+ XChangeWindowAttributes (d, w,
+ CWBitGravity,
+ &set_attrs);
+
+ XSelectInput (d, w,
+ ButtonPressMask | ExposureMask | StructureNotifyMask);
+
+ hints.flags = PMinSize;
+
+ hints.min_width = 100;
+ hints.min_height = 100;
+
+ XSetWMNormalHints (d, w, &hints);
+ XMapWindow (d, w);
+
+ redraw_pending = FALSE;
+ while (1)
+ {
+ XNextEvent (d, &ev);
+
+ switch (ev.xany.type)
+ {
+ case ButtonPress:
+ if (ev.xbutton.button == 3)
+ {
+ g_print ("Exiting on button 3 press\n");
+ exit (0);
+ }
+ break;
+
+ case ConfigureNotify:
+ x = ev.xconfigure.x;
+ y = ev.xconfigure.y;
+ width = ev.xconfigure.width;
+ height = ev.xconfigure.height;
+
+ redraw_pending = TRUE;
+ break;
+
+ case Expose:
+ redraw_pending = TRUE;
+ break;
+
+ default:
+ break;
+ }
+
+ /* Primitive event compression */
+ if (XCheckIfEvent (d, &ev, all_events, NULL))
+ {
+ XPutBackEvent (d, &ev);
+ }
+ else if (redraw_pending)
+ {
+ calc_rects (rects, width, height);
+
+ pix = XCreatePixmap (d, w, width, height,
+ DefaultDepth (d, screen));
+
+ gc_vals.foreground = WhitePixel (d, screen);
+
+ gc = XCreateGC (d, pix, GCForeground, &gc_vals);
+
+ XFillRectangle (d, pix, gc, 0, 0, width, height);
+
+ /* Draw rectangles at each gravity point */
+ gc_vals.foreground = BlackPixel (d, screen);
+ XChangeGC (d, gc, GCForeground, &gc_vals);
+
+ XFillRectangles (d, pix, gc, rects, G_N_ELEMENTS (rects));
+
+ XCopyArea (d, pix, w, gc, 0, 0, width, height, 0, 0);
+
+ XFreePixmap (d, pix);
+ XFreeGC (d, gc);
+
+ redraw_pending = FALSE;
+ }
+ }
+
+ /* This program has an infinite loop above so a return statement would
+ * just cause compiler warnings.
+ */
+}
+
diff --git a/src/wm-tester/test-size-hints.c b/src/wm-tester/test-size-hints.c
new file mode 100644
index 00000000..72f1b486
--- /dev/null
+++ b/src/wm-tester/test-size-hints.c
@@ -0,0 +1,136 @@
+#include <X11/Xlib.h>
+#include <X11/Xutil.h>
+#include <stdlib.h>
+#include <glib.h>
+
+static Bool
+all_events (Display *display,
+ XEvent *event,
+ XPointer arg)
+{
+ return True;
+}
+
+#if 0
+static void
+get_size (Display *d, Drawable draw,
+ int *xp, int *yp, int *widthp, int *heightp)
+{
+ int x, y;
+ unsigned int width, height, border, depth;
+ Window root;
+
+ XGetGeometry (d, draw, &root, &x, &y, &width, &height, &border, &depth);
+
+ if (xp)
+ *xp = x;
+ if (yp)
+ *yp = y;
+ if (widthp)
+ *widthp = width;
+ if (*heightp)
+ *heightp = height;
+}
+#endif
+
+int
+main (int argc, char **argv)
+{
+ Display *d;
+ Window zero_min_size;
+ XSizeHints hints;
+ int screen;
+ XEvent ev;
+ int x, y, width, height;
+ Pixmap pix;
+ GC gc;
+ XGCValues gc_vals;
+ gboolean redraw_pending;
+
+ d = XOpenDisplay (NULL);
+
+ screen = DefaultScreen (d);
+
+ x = 0;
+ y = 0;
+ width = 100;
+ height = 100;
+
+ zero_min_size = XCreateSimpleWindow (d, RootWindow (d, screen),
+ x, y, width, height, 0,
+ WhitePixel (d, screen),
+ WhitePixel (d, screen));
+
+ XSelectInput (d, zero_min_size,
+ ButtonPressMask | ExposureMask | StructureNotifyMask);
+
+ hints.flags = PMinSize;
+
+ hints.min_width = 0;
+ hints.min_height = 0;
+
+ XSetWMNormalHints (d, zero_min_size, &hints);
+ XMapWindow (d, zero_min_size);
+
+ redraw_pending = FALSE;
+ while (1)
+ {
+ XNextEvent (d, &ev);
+
+ switch (ev.xany.type)
+ {
+ case ButtonPress:
+ if (ev.xbutton.button == 1)
+ {
+ g_print ("Exiting on button 1 press\n");
+ exit (0);
+ }
+ break;
+
+ case ConfigureNotify:
+ x = ev.xconfigure.x;
+ y = ev.xconfigure.y;
+ width = ev.xconfigure.width;
+ height = ev.xconfigure.height;
+
+ redraw_pending = TRUE;
+ break;
+
+ case Expose:
+ redraw_pending = TRUE;
+ break;
+
+ default:
+ break;
+ }
+
+ /* Primitive event compression */
+ if (XCheckIfEvent (d, &ev, all_events, NULL))
+ {
+ XPutBackEvent (d, &ev);
+ }
+ else if (redraw_pending)
+ {
+ pix = XCreatePixmap (d, zero_min_size, width, height,
+ DefaultDepth (d, screen));
+
+ gc_vals.foreground = WhitePixel (d, screen);
+
+ gc = XCreateGC (d, pix, GCForeground, &gc_vals);
+
+ XFillRectangle (d, pix, gc, 0, 0, width, height);
+
+ XCopyArea (d, pix, zero_min_size, gc, 0, 0, width, height, 0, 0);
+
+ XFreePixmap (d, pix);
+ XFreeGC (d, gc);
+
+ redraw_pending = FALSE;
+ }
+ }
+
+ /* This program has an infinite loop above so a return statement would
+ * just cause compiler warnings.
+ */
+}
+